:root{--bg:#f4f6f9;--card:#fff;--line:#d8dee8;--text:#0f1b2d;--muted:#5b6b82;--brand:#0a466f;--brand-text:#fff;--ok:#1d7a46;--ok-bg:#e3f4ea;--err:#b3261e;--err-bg:#fbe9e7;--free:#2fbf71;--busy:#e5484d;--clean:#f5a524;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0b1220;--card:#131c30;--line:#26334f;--text:#f2f5fb;--muted:#97a6c2;--ok:#7fe0a8;--ok-bg:#12301f;--err:#ff9a92;--err-bg:#3a1714}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);margin:0;font:17px/1.4 system-ui,-apple-system,Segoe UI,sans-serif}h1{margin:.4rem 0 1rem;font-size:1.5rem}h2{margin:1.6rem 0 .6rem;font-size:1.1rem}a{color:var(--brand)}@media (prefers-color-scheme:dark){a{color:#8fc7ee}}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--muted);font-size:.9rem}.shell{flex-direction:column;min-height:100vh;display:flex}.top{z-index:5;padding:max(.6rem, env(safe-area-inset-top)) 1rem .6rem;background:var(--brand);color:var(--brand-text);grid-template-columns:1fr auto;align-items:center;gap:.2rem .8rem;display:grid;position:sticky;top:0}.top a.brand{color:var(--brand-text);font-size:1.1rem;font-weight:700;text-decoration:none}.top .who{flex-direction:column;grid-column:1/-1;gap:.15rem;display:flex}.top .who .muted{color:#cfe3f3}.top .who form{gap:.4rem;display:flex}.top select,.top button{font:inherit}.page{width:100%;max-width:40rem;padding:1rem 1rem calc(2rem + env(safe-area-inset-bottom));margin:0 auto}button,select,input[type=text],input[type=email]{font:inherit;color:var(--text);background:var(--card);border:1px solid var(--line);border-radius:.7rem;min-height:3rem;padding:.75rem .9rem}button{cursor:pointer}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--brand);color:var(--brand-text);border-color:var(--brand);font-weight:600}button.link{color:var(--brand-text);background:0 0;border:0;min-height:0;padding:.3rem;text-decoration:underline}label{margin:.9rem 0 .3rem;font-weight:600;display:block}.stack{flex-direction:column;display:flex}.stack>button{margin-top:1.2rem}.stack input,.stack select{width:100%}.banner{border-radius:.7rem;margin:0 0 1rem;padding:.8rem 1rem}.banner.ok{background:var(--ok-bg);color:var(--ok)}.banner.error{background:var(--err-bg);color:var(--err)}.tiles{grid-template-columns:1fr;gap:.8rem;display:grid}@media (min-width:30rem){.tiles{grid-template-columns:1fr 1fr}}.tile{background:var(--card);border:1px solid var(--line);min-height:6.5rem;color:var(--text);border-radius:1rem;flex-direction:column;gap:.15rem;padding:1.1rem;text-decoration:none;display:flex}.tile .icon{font-size:1.8rem}.tile strong{font-size:1.15rem}.list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.list>li{background:var(--card);border:1px solid var(--line);border-radius:.9rem;justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem 1rem;display:flex}.list>li>div{flex-direction:column;gap:.1rem;min-width:0;display:flex}.list li.screen{flex-direction:column;align-items:stretch}.list .actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.dot{border-radius:50%;width:.7rem;height:.7rem;display:inline-block}.dot.on{background:var(--free)}.dot.off{background:var(--busy)}.lockers{grid-template-columns:1fr;gap:.7rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:34rem){.lockers{grid-template-columns:1fr 1fr}}.locker{background:var(--card);border:1px solid var(--line);border-left-width:.5rem;border-radius:.9rem;padding:.8rem 1rem}.locker.free{border-left-color:var(--free)}.locker.occupied{border-left-color:var(--busy)}.locker.cleaning{border-left-color:var(--clean)}.locker .head{justify-content:space-between;margin-bottom:.6rem;display:flex}.seg{grid-template-columns:repeat(3,1fr);gap:.4rem;display:grid}.list .seg{grid-template-columns:repeat(2,1fr)}.seg button{padding:.6rem .2rem;font-size:.95rem}.seg button[aria-pressed=true],.seg button:disabled{background:var(--brand);color:var(--brand-text);border-color:var(--brand);opacity:1}.login{max-width:26rem;margin:0 auto;padding:3rem 1.2rem}.login input{width:100%}.login button{width:100%;margin-top:1.2rem}
