:root{--papel:#0d1413;--superficie:#141e1d;--superficie-2:#1b2725;--tinta:#e4edec;--tinta-suave:#9badab;--borde:#263432;--acento:#5fbfbc;--acento-tenue:#17302f;--aviso:#d8a748;--aviso-tenue:#2c2415;--mal:#e58a76;--paso:ui-monospace,SFMono-Regular,Menlo,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--papel);color:var(--tinta);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}.envoltorio{max-width:44rem;margin:0 auto;padding:1.75rem 1.1rem 4rem;gap:2rem}.cabecera,.envoltorio{display:flex;flex-direction:column}.cabecera{gap:.4rem}.sello{font-family:var(--paso);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--acento)}.cabecera h1{margin:0;font-size:1.9rem;line-height:1.1;letter-spacing:-.02em}.cabecera .quien{margin:0;color:var(--tinta-suave);font-size:.9rem}.franja-aviso{background:var(--aviso-tenue);border:1px solid var(--aviso);border-radius:9px;padding:1rem 1.05rem;display:flex;flex-direction:column;gap:.45rem}.franja-aviso b{color:var(--aviso);font-size:.98rem}.franja-aviso p{margin:0;font-size:.89rem;color:var(--tinta-suave);line-height:1.55}section{display:flex;flex-direction:column;gap:.9rem}h2{margin:0;font-size:1.15rem;letter-spacing:-.01em;padding-bottom:.45rem;border-bottom:1px solid var(--borde)}.rejilla{display:grid;grid-template-columns:1fr;grid-gap:.6rem;gap:.6rem}@media (min-width:34rem){.rejilla{grid-template-columns:1fr 1fr}}.aparato{background:var(--superficie);border:1px solid var(--borde);border-radius:9px;padding:.85rem .9rem;display:flex;flex-direction:column;gap:.3rem}.aparato .fila{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem}.aparato b{font-size:.97rem;font-weight:600}.aparato .hace{font-size:.83rem;color:var(--tinta-suave);line-height:1.45}.aparato .nota{font-size:.78rem;color:var(--aviso);background:var(--aviso-tenue);border-radius:5px;padding:.25rem .45rem;margin-top:.15rem}.via{font-size:.7rem;color:var(--tinta-suave)}.pastilla,.via{font-family:var(--paso)}.pastilla{font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.16rem .5rem;white-space:nowrap;border:1px solid}.pastilla.sin{color:var(--tinta-suave)}.pastilla.ok{color:var(--acento)}.cantidad{font-family:var(--paso);font-size:.8rem;color:var(--tinta-suave)}.rutinas{display:flex;flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none}.rutinas li{display:flex;align-items:center;gap:.65rem;background:var(--superficie);border:1px solid var(--borde);border-left:3px solid var(--carril);border-radius:7px;padding:.6rem .75rem}.rutinas li.dia{--carril:var(--aviso)}.rutinas li.noche{--carril:#93a3ec}.rutinas li.voz{--carril:var(--acento)}.rutinas .num{font-family:var(--paso);font-size:.78rem;color:var(--tinta-suave)}.rutinas .nom{flex:1 1;font-size:.92rem}.rutinas .donde{font-family:var(--paso);font-size:.72rem;color:var(--tinta-suave);text-align:right}.entrar{min-height:82vh;display:flex;align-items:center;justify-content:center;padding:1.5rem 1.1rem}.caja-entrar{width:100%;max-width:20rem;background:var(--superficie);border:1px solid var(--borde);border-radius:12px;padding:1.75rem 1.4rem;display:flex;flex-direction:column;gap:1rem}.caja-entrar h1{margin:0;font-size:1.35rem;letter-spacing:-.01em}.caja-entrar p{margin:0;color:var(--tinta-suave);font-size:.87rem}.caja-entrar input{width:100%;background:var(--papel);border:1px solid var(--borde);border-radius:8px;color:var(--tinta);font-family:var(--paso);font-size:1.5rem;letter-spacing:.3em;text-align:center;padding:.7rem .5rem}.caja-entrar input:focus{outline:2px solid var(--acento);outline-offset:1px}.caja-entrar button{width:100%;background:var(--acento);color:#06100f;border:0;border-radius:8px;font-size:1rem;font-weight:600;padding:.75rem;cursor:pointer}.caja-entrar button:hover{filter:brightness(1.08)}.caja-entrar button:focus-visible{outline:2px solid var(--tinta);outline-offset:2px}.error{color:var(--mal);font-size:.85rem;margin:0}.pie{border-top:1px solid var(--borde);padding-top:1rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;font-size:.82rem;color:var(--tinta-suave)}.pie a{color:var(--acento);text-decoration:none}.pie a:hover{text-decoration:underline}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}