/* ========================================================================= CSO LA ENREDADERA DE TETUÁN Dibujo de línea sobre verde. Contorno rosa, nervios verdes, tallo marrón. De debajo del título salen varias raíces que se abren en columnas y de las que cuelgan las hojas. No hay barra lateral: el menú va siempre en bocadillo. 1. Tokens 2. Base 3. Menú de bocadillo 4. Cabecera 5. Enredadera 6. Fichas 7. Calendarios 8. Textos 9. Pantallas 10. Móvil y variantes de la enredadera 11. Las redes que brotan 12. Foco de teclado 13. Calendario en pantallas estrechas 14. Los brotes en móvil 15. El menú en pantallas bajas EL ORDEN IMPORTA, y no es cosmético. Varias reglas tienen la MISMA especificidad que otras y ganan solo por ir después: - "@media (max-width:1023px)" de los brotes (14) va al final a propósito: la definición base de .brotes está en (11) y un bloque de móvil puesto antes perdería. - ".brotes > li:nth-child(N) .hoja" empata (0,3,1) con ".enredadera > li:nth-child(12n+N) .hoja" y gana por orden. Si mueves uno de los dos, los brotes cogen el giro de la hoja madre. Comprobado que no sobra nada: de los 147 selectores del fichero, los únicos que hoy no casan con nada son los que ESPERAN hojas que aún no existen —la tercera fila y cinco de los seis remates de fila par—. No hay reglas muertas. Y no cambies un valor buscándolo por su número: hazlo por su selector. Un reemplazo global de "--giro" tocó sin querer la regla de móvil y dejó las hojas del revés. Está contado en ../BITACORA.md. ========================================================================= */ /* ============================ 1. TOKENS ============================ */ :root{ /* Verde: el lienzo */ --verde: #e9f2de; --verde-hondo: #dceace; --verde-humo: #f5faef; /* Los tres colores del dibujo */ --rosa: #ff00aa; /* contorno de la hoja y acentos */ --rosa-vivo: #ff5ec8; /* el núcleo encendido del neón */ } :root{ /* Hasta dónde se ensancha la enredadera. Estaba en 1680 y dejaba 550px de verde vacío a cada lado en una pantalla de 2560, y 240 hasta en una de 1920. Ojo: este número aparece DOS veces —el tope de la caja y el cálculo de --col— y tienen que ir juntos, o las hojas dejan de caber en su columna. Por eso es una variable. */ --ancho-max: 2300px; /* El sitio es claro siempre: no tiene variante oscura. Sin declararlo, un navegador en tema oscuro pinta EN OSCURO lo que no controla el CSS —barras de desplazamiento, controles de formulario, el lienzo antes de que cargue la hoja— sobre un diseño claro. Declararlo es decirle a qué atenerse. */ color-scheme: light; --rosa-encendido:#c20081; /* el rosa del ratón encima: mismo tono que --rosa pero legible (4.6:1 sobre el verde más oscuro, 5.5:1 sobre el más claro). Con --rosa daba 3.1 y el texto se leía PEOR al pasar el ratón que en reposo, que es justo al revés de lo que toca. */ --verde-vivo: #00d18e; /* nervios y zarcillos: verde chillón tirando a azul. Es adorno: sobre el fondo no llega a 3:1, así que la silueta la sostiene el contorno rosa, no él. */ --verde-hoja: #3a6b4d; /* el mismo verde, pero legible: 5.4:1 sobre el fondo, que es lo que pide AA para texto normal */ --negro: #14170f; /* la segunda hebra de la raíz */ --rosa-tenue: rgba(255,0,170,.28); --rosa-papel: rgba(255,0,170,.07); --rosa-legible:#a8006a; /* 6.3:1 sobre el verde: este sí vale para texto, y también como FONDO con texto claro encima (6.9:1); --rosa de fondo con texto claro da 3.4:1 y no vale */ --tinta: #1e2a17; --tinta-suave: #4d5b43; --pluma: 1.6px; --curva: 3px; /* Tipos: los mismos que tenía la web desde el principio */ --titular: 'Anton', Impact, Haettenschweiler, 'Arial Black', sans-serif; --mano: 'Rock Salt', cursive; --marca: 'Code462WPink', 'Anton', Impact, sans-serif; /* Para textos largos: la versión anterior declaraba Quicksand sin llegar a importarla, así que caía en la del sistema. Se conserva ese comportamiento, porque Rock Salt a dieciocho párrafos no hay quien la lea. */ --lectura: ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; } @font-face{ font-family:'Code462WPink'; src:url('/Code462WPink-Regular.ttf') format('truetype'); font-weight:normal; font-style:normal; font-display:swap; } /* Anton y Rock Salt, servidas desde aquí. Antes las traía cada página con un a fonts.googleapis.com: eso son dos conexiones más antes de pintar nada y, sobre todo, la IP de cada persona que entra en la web de un centro social okupado pasando por Google. Son los subconjuntos latinos, 77 KB entre las dos, los mismos ficheros que servía Google: se ve exactamente igual. */ @font-face{ font-family:'Anton'; src:url('/fuentes/anton-latin.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; } @font-face{ font-family:'Rock Salt'; src:url('/fuentes/rocksalt-latin.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; } /* ============================ 2. BASE ============================ */ *,*::before,*::after{ box-sizing:border-box; } html,body{ margin:0; padding:0; overflow-x:hidden; } body{ background:var(--verde); color:var(--tinta); font-family:var(--mano); font-size:clamp(.8rem,.74rem + .2vw,.92rem); line-height:2; -webkit-font-smoothing:antialiased; } body::before{ content:""; position:fixed; inset:0; z-index:-1; pointer-events:none; background: radial-gradient(ellipse 70% 50% at 15% -5%, #ffffff8c, transparent 70%), radial-gradient(ellipse 60% 50% at 95% 25%, var(--verde-hondo), transparent 65%), radial-gradient(ellipse 90% 45% at 50% 105%, var(--verde-hondo), transparent 70%); } a{ color:var(--rosa-legible); text-underline-offset:.2em; } a:hover, a:active{ color:var(--rosa-encendido); } :focus-visible{ outline:3px solid var(--tinta); outline-offset:3px; border-radius:2px; } /* Sobre la barra oscura del Tattoo Circus o cualquier fondo oscuro, la tinta no se vería: ahí el anillo va en crema. */ .sidebar :focus-visible{ outline-color:var(--tinta); } img{ max-width:100%; height:auto; display:block; } .sr-only{ position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; } .defs{ position:absolute; width:0; height:0; overflow:hidden; } .container{ display:block; } .main{ display:block; padding-bottom:0; } /* ==================== 3. MENÚ DE BOCADILLO ==================== El mismo en móvil y en ordenador. Al abrirlo la letra es grande, para que se lea de un vistazo en un portátil. */ .sb-toggle{ position:fixed; inset:20px auto auto 20px; z-index:1001; width:58px; height:58px; cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:0; color:transparent; background:var(--verde-humo); border:2px solid var(--rosa); border-radius:50%; transition:box-shadow .2s, transform .25s; } /* El botón del menú es un