/* Cocuyo CSS bundle v1: generated by scripts/build-css.mjs. */
/* cocuyo-css: assets/css/idioma.css */
/* Un solo selector: compacto en la cabecera, con nombres completos en Preferencias. */
.cocuyo-idioma{position:relative;display:block;flex-shrink:0;min-height:44px;padding:0;border:1px solid #ffffff1a;border-radius:10px;background:#181b18;color:#e4e8e1;font:500 12px/1.2 var(--fuente,sans-serif)}
.cocuyo-idioma>summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 11px;list-style:none;border-radius:inherit;cursor:pointer;user-select:none;white-space:nowrap}
.cocuyo-idioma>summary::-webkit-details-marker{display:none}
.cocuyo-idioma svg{width:16px;height:16px;flex-shrink:0}
.cocuyo-idioma>summary .cocuyo-idioma-chevron{width:12px;height:12px;opacity:.65}
.cocuyo-idioma[open]>summary .cocuyo-idioma-chevron{transform:rotate(180deg)}
.cocuyo-idioma>summary:hover,.cocuyo-idioma[open]>summary{color:#fff;background:#ffffff0b}
.cocuyo-idioma>summary:focus-visible,.cocuyo-idioma-menu>button:focus-visible{outline:2px solid var(--verde-cocuyo,#b4f64b);outline-offset:3px}
.cocuyo-idioma-menu{position:absolute;z-index:100;right:0;top:calc(100% + 8px);min-width:172px;padding:5px;background:#191d19;border:1px solid #ffffff1c;border-radius:12px;box-shadow:0 12px 36px #0007;font:500 13px/1.3 var(--fuente,sans-serif);letter-spacing:normal}
.cocuyo-idioma:not([open])>.cocuyo-idioma-menu{display:none}
.cocuyo-idioma-menu>button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:44px;padding:10px 12px;margin:0;color:#d9dfd5;border:0;border-radius:7px;background:transparent;font:inherit;text-align:left;cursor:pointer}
.cocuyo-idioma-menu>button:hover{background:#ffffff0b;color:#fff}
.cocuyo-idioma-menu>button[aria-checked="true"]{color:var(--verde-cocuyo,#b4f64b);background:#b4f64b0b}
.cocuyo-idioma-menu>button>svg{width:16px;height:16px;visibility:hidden}
.cocuyo-idioma-menu>button[aria-checked="true"]>svg{visibility:visible}
.cocuyo-idioma-arriba>.cocuyo-idioma-menu{top:auto;bottom:calc(100% + 8px)}
.cocuyo-idioma-derecha>.cocuyo-idioma-menu{right:auto;left:0}
.cocuyo-idioma.cocuyo-idioma-compacto{border-color:transparent;background:transparent;color:#d6dcd1;font-size:11px;letter-spacing:.04em}
.cocuyo-idioma-compacto>summary{gap:6px;padding-inline:9px}
.cabecera>.cocuyo-idioma{margin-left:auto}
/* El menú de cuenta puede desplazar su contenido: las opciones quedan dentro. */
body.studio-workbench #accmenu .acc-language{align-items:flex-start}
body.studio-workbench #accmenu .acc-language>span{padding-top:14px}
body.studio-workbench #accmenu .acc-language .cocuyo-idioma{padding:0;min-height:44px;max-width:none}
body.studio-workbench #accmenu .acc-language .cocuyo-idioma-menu{position:static;min-width:166px;margin:0 4px 4px;border:0;box-shadow:none;background:transparent}
@media(max-width:600px){.cocuyo-idioma-compacto>summary{width:44px;padding:0;gap:0}.cocuyo-idioma-compacto>summary [data-idioma-label],.cocuyo-idioma-compacto>summary .cocuyo-idioma-chevron{display:none}.cocuyo-idioma-compacto>summary>svg{width:17px;height:17px}}
@media(prefers-reduced-motion:no-preference){.cocuyo-idioma>summary,.cocuyo-idioma-menu>button{transition:color .15s,background .15s}.cocuyo-idioma[open]>.cocuyo-idioma-menu{animation:cocuyo-language-in .12s ease-out}@keyframes cocuyo-language-in{from{opacity:0}to{opacity:1}}}
.apoyo-idiomas{display:flex;gap:4px;padding:4px;border:1px solid var(--negro-borde);border-radius:10px;margin-left:auto}
.apoyo-idiomas a{padding:8px;color:var(--gris-niebla);font:500 12px/1.2 sans-serif;text-decoration:none;border-radius:6px}
.apoyo-idiomas a[aria-current]{background:var(--negro-elevado);color:var(--blanco-luz)}
.apoyo-idiomas a:focus-visible{outline:2px solid var(--verde-cocuyo);outline-offset:2px}
@media(max-width:480px){.apoyo-cabecera{gap:12px;flex-wrap:wrap}.apoyo-idiomas a{padding:6px}}


/* cocuyo-css: assets/css/estudio-derechos.css */
.derechos-imagen{box-sizing:border-box;width:min(500px,calc(100vw - 28px));max-height:calc(100dvh - 28px);margin:auto;padding:34px;border:1px solid var(--border2,#343434);border-radius:22px;background:var(--surface,#121212);color:var(--text,#f8fafc);font-family:var(--font,sans-serif);overflow:auto;box-shadow:0 24px 90px #0009}
.derechos-imagen::backdrop{background:#000b;backdrop-filter:blur(6px)}
.derechos-close{position:absolute;right:12px;top:10px;width:36px;height:36px;border:0;border-radius:50%;background:#ffffff08;color:inherit;font-size:24px;cursor:pointer}
.derechos-kicker{font-size:10px;letter-spacing:.13em;color:var(--studio-accent,#aff33e);margin:0 0 12px}
.derechos-imagen h2{font-size:27px;line-height:1.2;letter-spacing:-.7px;margin:0 0 13px;font-weight:600}
.derechos-imagen form>p:not(.derechos-kicker){font-size:13px;line-height:1.65;color:var(--muted2,#a8b0a9)}
.derechos-files{max-height:76px;overflow:auto;padding:10px 14px;margin:16px 0 22px;background:#ffffff04;border:1px solid var(--border,#262626);border-radius:10px;list-style:none;font-size:12px;line-height:1.8;color:var(--muted2,#a8b0a9)}
.derechos-files li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.derechos-check{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.6;cursor:pointer}
.derechos-imagen input{accent-color:var(--studio-accent,#aff33e);width:17px;height:17px;flex:none;margin:3px 0 0}
.derechos-imagen [hidden]{display:none!important}
.derechos-note a{color:var(--text,#f8fafc);text-underline-offset:3px}
.derechos-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}
.derechos-actions button{min-height:44px;padding:11px 18px;border:1px solid var(--border2,#343434);border-radius:10px;background:none;color:inherit;font:550 13px var(--font,sans-serif);cursor:pointer}
.derechos-actions [type=submit]{background:var(--studio-accent,#aff33e);border-color:transparent;color:#14200b}
.derechos-actions [type=submit]:disabled{opacity:.4;cursor:default}
.derechos-imagen :is(input,button,a):focus-visible{outline:2px solid var(--studio-accent,#aff33e);outline-offset:3px}
@media(max-width:520px){.derechos-imagen{padding:30px 22px 22px}.derechos-actions{flex-wrap:wrap}.derechos-actions button{flex:1;padding-inline:12px}}


/* cocuyo-css: assets/css/acceso-modal.css */
/* Acceso compacto y compartido: diálogo nativo, misma identidad de Cocuyo. */
html.acceso-modal-abierto { overflow: hidden; }
.acceso-modal { display: grid; grid-template-columns: minmax(0,1.12fr) minmax(360px,1fr); width: min(1000px,calc(100% - 40px)); max-width: none; max-height: calc(100dvh - 40px); margin: auto; padding: 0; border: 1px solid var(--escarcha-borde); border-radius: 24px; background: var(--negro-elevado); color: var(--blanco-luz); box-shadow: var(--sombra-3); font-family: var(--fuente); overflow: hidden; overscroll-behavior: contain; }
.acceso-modal-contenido { position: relative; min-width: 0; min-height: min(630px,calc(100dvh - 42px)); max-height: calc(100dvh - 42px); overflow-y: auto; overscroll-behavior: contain; padding: clamp(38px,6vh,60px) clamp(25px,3.4vw,45px) 30px; display: flex; flex-direction: column; justify-content: center; }
.acceso-modal-visual { position: relative; isolation: isolate; min-width: 0; overflow: hidden; background: var(--negro-abismo); }
.acceso-modal-visual::after { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg,color-mix(in srgb,var(--negro-abismo) 44%,transparent),transparent 34%,color-mix(in srgb,var(--negro-abismo) 88%,transparent)); pointer-events: none; }
.acceso-modal-visual video { position: absolute; z-index: -2; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 42%; filter: saturate(.55); }
.acceso-modal-visual-top { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 24px; }
.acceso-modal-visual-top > span { color: var(--blanco-luz); font-size: 10px; font-weight: 600; letter-spacing: .11em; text-transform: uppercase; }
.acceso-modal-visual-top button { display: grid; place-items: center; flex-shrink: 0; width: 38px; height: 38px; border: 1px solid var(--escarcha-borde); border-radius: 50%; background: color-mix(in srgb,var(--negro-abismo) 35%,transparent); color: var(--blanco-luz); backdrop-filter: blur(8px); }
.acceso-modal-visual-copy { position: absolute; inset: auto 35px 38px; }
.acceso-modal-visual-copy h3 { color: var(--blanco-luz); font-family: var(--fuente); font-size: clamp(34px,4vw,48px); font-weight: 550; line-height: 1.04; letter-spacing: -.06em; margin: 0; }
.acceso-modal-visual-copy h3 em { font-family: var(--fuente-display); font-weight: 450; font-style: italic; }
.acceso-modal-visual-copy p { margin: 20px 0 23px; color: var(--gris-niebla); font-size: 14px; line-height: 1.6; }
.acceso-modal-visual-copy > span { display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--escarcha-borde); border-radius: 100px; background: color-mix(in srgb,var(--negro-abismo) 35%,transparent); color: var(--gris-niebla); padding: 8px 11px; font-size: 10px; }
.acceso-modal-visual-copy > span::before { content: ''; width: 5px; height: 5px; background: var(--verde-cocuyo); border-radius: 50%; }
.acceso-modal::backdrop { background: color-mix(in srgb,var(--negro-abismo) 76%,transparent); backdrop-filter: blur(6px); }
.acceso-modal:not([open]) { display: none; }
.acceso-modal [hidden] { display: none !important; }
.acceso-modal button, .acceso-modal a, .acceso-modal input { -webkit-tap-highlight-color: transparent; }
.acceso-modal button { font-family: inherit; cursor: pointer; }
.acceso-modal button:disabled { opacity: .5; cursor: not-allowed; }
.acceso-modal-cerrar { position: absolute; inset: 13px 13px auto auto; display: grid; place-items: center; width: 40px; height: 40px; background: transparent; border: 0; border-radius: 50%; color: var(--gris-humo); }
.acceso-modal-cerrar:hover { color: var(--blanco-luz); background: var(--pizarra); }
.acceso-modal-luces { display: flex; justify-content: center; gap: 7px; margin: 3px auto 10px; }
.acceso-modal-luces i { display: block; width: 9px; height: 22px; border-radius: 10px; transform: rotate(18deg); background: var(--verde-cocuyo); box-shadow: var(--glow-suave); }
.acceso-modal .acceso-modal-marca { text-align: center; font-size: 14px; letter-spacing: -.04em; font-weight: 750; color: var(--blanco-luz); margin: 0 0 27px; }
.acceso-modal h2 { text-align: center; font-family: var(--fuente); font-weight: 650; font-size: clamp(25px,5.4vw,29px); letter-spacing: -.05em; line-height: 1.13; margin: 0; }
.acceso-modal .acceso-modal-descripcion { margin: 13px auto 26px; text-align: center; color: var(--gris-humo); font-size: 13px; line-height: 1.65; max-width: 335px; }
.acceso-modal form { display: flex; flex-direction: column; margin: 0; gap: 0; }
.acceso-modal .acceso-modal-label { margin: 0 0 8px; font-size: 12px; font-weight: 550; line-height: 1.5; color: var(--gris-niebla); }
.acceso-modal input:not([type="checkbox"]) { display: block; width: 100%; min-height: 50px; padding: 12px 14px; margin: 0; border: 1px solid var(--negro-borde); border-radius: 11px; background: var(--negro-abismo); color: var(--blanco-luz); font-family: inherit; font-size: 16px; line-height: 1.4; box-shadow: none; outline: none; }
.acceso-modal input::placeholder { color: var(--gris-humo); }
.acceso-modal input:not([type="checkbox"]):focus { border-color: var(--verde-cocuyo); box-shadow: 0 0 0 3px color-mix(in srgb,var(--verde-cocuyo) 10%,transparent); }
.acceso-modal input + .acceso-modal-label { margin-top: 18px; }
.acceso-modal input[aria-invalid="true"] { border-color: var(--peligro); }
.acceso-aceptacion { display: flex; align-items: flex-start; gap: 10px; color: var(--gris-niebla); font-family: var(--fuente); font-size: 12px; font-weight: 400; line-height: 1.65; text-align: left; cursor: pointer; margin: 18px 0 0; }
.acceso-aceptacion input[type="checkbox"] { flex: 0 0 18px; appearance: auto; -webkit-appearance: checkbox; width: 18px; height: 18px; min-width: 18px; min-height: 18px; margin: 2px 0 0; padding: 0; accent-color: var(--verde-cocuyo); cursor: pointer; }
.acceso-aceptacion a { color: var(--blanco-luz); text-decoration: underline; text-underline-offset: 3px; }
.acceso-aceptacion a:hover { color: var(--verde-cocuyo); }
.acceso-aceptacion[hidden] { display: none !important; }
.acceso-modal .acceso-modal-aviso { margin: 12px 0; color: var(--gris-niebla); font-size: 12px; line-height: 1.6; }
.acceso-modal .acceso-modal-aviso:empty { margin: 9px 0; }
.acceso-modal .acceso-modal-aviso.es-error { color: var(--peligro); }
.acceso-modal .acceso-modal-enviar { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; padding: 12px 18px; border: 1px solid var(--verde-cocuyo); border-radius: 11px; background: var(--verde-cocuyo); color: var(--tinta-sobre-verde); font-size: 13px; font-weight: 650; }
.acceso-modal .acceso-modal-enviar:hover:not(:disabled) { background: var(--lima-clara); border-color: var(--lima-clara); }
.acceso-modal-correo { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 12px; border: 1px solid var(--negro-borde); border-radius: 10px; margin-bottom: 22px; }
.acceso-modal-correo > span { min-width: 0; overflow-wrap: anywhere; font-size: 13px; line-height: 1.5; color: var(--gris-niebla); }
.acceso-modal-correo button { flex-shrink: 0; color: var(--verde-cocuyo); border: 0; background: none; padding: 6px 0; font-size: 11px; }
.acceso-modal input.acceso-modal-codigo { min-height: 66px; text-align: center; font-size: 28px; font-weight: 600; letter-spacing: .6em; padding-inline: calc(14px + .6em) 14px; font-variant-numeric: tabular-nums; }
.acceso-modal-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 12px; font-size: 11px; line-height: 1.5; color: var(--gris-humo); }
.acceso-modal-meta button { color: var(--gris-niebla); padding: 8px 0; background: transparent; border: 0; font-size: inherit; }
.acceso-modal .acceso-modal-alternativa, .acceso-modal .acceso-modal-recuperar { display: block; width: 100%; margin: 14px 0 0; padding: 8px; font-size: 12px; color: var(--gris-niebla); background: transparent; border: 0; text-align: center; }
.acceso-modal .acceso-modal-recuperar { margin-top: 0; color: var(--gris-humo); }
.acceso-modal .acceso-modal-cambio { margin: 25px 0 0; padding-top: 20px; border-top: 1px solid var(--negro-borde); font-size: 12px; line-height: 1.5; text-align: center; color: var(--gris-humo); }
.acceso-modal-cambio button { color: var(--blanco-luz); font-size: 12px; font-weight: 650; background: none; border: 0; padding: 8px 5px; }
.acceso-modal :is(button,a):focus-visible, .acceso-aceptacion input:focus-visible { outline: 2px solid var(--verde-cocuyo); outline-offset: 3px; }
.acceso-modal :is(.acceso-modal-alternativa,.acceso-modal-recuperar,.acceso-modal-cambio button,.acceso-modal-meta button):hover { color: var(--verde-cocuyo); }
.form-intro-correo .acceso-aceptacion { flex: 0 0 100%; grid-column: 1 / -1; width: 100%; margin-top: 15px; }
@media (max-width:740px) {
  .acceso-modal { grid-template-columns: 1fr; width: min(440px,calc(100% - 24px)); max-height: calc(100dvh - 24px); overflow-y: auto; border-radius: 20px; }
  .acceso-modal-visual { min-height: 140px; }
  .acceso-modal-visual-top { padding: 13px 15px; }
  .acceso-modal-visual-top > span { font-size: 8px; }
  .acceso-modal-visual-top button { width: 30px; height: 30px; }
  .acceso-modal-visual-copy { inset: auto 23px 16px; }
  .acceso-modal-visual-copy h3 { font-size: 25px; }
  .acceso-modal-visual-copy h3 br { display: none; }
  .acceso-modal-visual-copy h3 em::before { content: ' '; }
  .acceso-modal-visual-copy p, .acceso-modal-visual-copy > span { display: none; }
  .acceso-modal-contenido { min-height: 0; max-height: none; overflow: visible; padding: 28px 25px 24px; }
  .acceso-modal-cerrar { position: fixed; }
  .acceso-modal-contenido .acceso-modal-cerrar { position: absolute; top: 7px; right: 9px; }
  .acceso-modal-luces { display: none; }
  .acceso-modal[data-acceso-paso="codigo"] .acceso-modal-visual { display: none; }
  .acceso-modal .acceso-modal-marca { margin-bottom: 20px; }
}
@media (max-width:480px) {
  .acceso-modal .acceso-modal-marca { margin-bottom: 22px; }
  .acceso-modal .acceso-modal-descripcion { margin-bottom: 22px; }
}
@media (max-height:650px) {
  .acceso-modal-contenido { justify-content: flex-start; padding-top: 28px; }
  .acceso-modal-luces { display: none; }
  .acceso-modal .acceso-modal-marca { margin-bottom: 20px; }
  .acceso-modal .acceso-modal-descripcion { margin-bottom: 18px; }
}
@media (max-width:740px) and (max-height:720px) { .acceso-modal-visual { display: none; } }

