:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f8fafc;--fg:#0f172a;--muted:#64748b;--card:#fff;--border:#e2e8f0;--accent:#0284c7;--error:#dc2626;--ok:#16a34a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f172a;--fg:#e2e8f0;--muted:#94a3b8;--card:#1e293b;--border:#334155;--accent:#38bdf8}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);-webkit-tap-highlight-color:transparent;margin:0}.app{flex-direction:column;min-height:100dvh;display:flex}.content{padding:8px 16px calc(80px + env(safe-area-inset-bottom));flex:1;width:100%;max-width:720px;margin:0 auto}h1{margin:0 0 12px;font-size:1.6rem}.muted{color:var(--muted)}.error{color:var(--error)}.ok{color:var(--ok)}.tabbar{background:var(--card);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.tab{color:var(--muted);flex-direction:column;align-items:center;gap:2px;padding:8px 0;font-size:.75rem;text-decoration:none;display:flex}.tab span:first-child{font-size:1.3rem}.tab.active{color:var(--accent)}.list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.card{border:1px solid var(--border);background:var(--card);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}button{font:inherit;background:var(--accent);color:#fff;border:0;border-radius:10px;min-height:44px;padding:10px 16px}button:disabled{opacity:.6}.topbar{padding:calc(env(safe-area-inset-top) + 8px) 16px 0;justify-content:space-between;align-items:center;width:100%;max-width:720px;margin:0 auto;display:flex}button.link{color:var(--accent);background:0 0;min-height:auto;padding:8px 0}.login{flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:100dvh;padding:24px 16px;display:flex}.login img{border-radius:16px}.form{gap:14px;width:100%;max-width:360px;margin-top:12px;display:grid}.form label{color:var(--muted);gap:6px;font-size:.9rem;display:grid}input{font:inherit;border:1px solid var(--border);background:var(--card);color:var(--fg);border-radius:10px;padding:12px;font-size:16px}h2{margin:24px 0 8px;font-size:1.1rem}.small{font-size:.8rem}.row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.card.col{flex-direction:column;align-items:stretch}.actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tag{color:#b45309;background:#f59e0b22;border-radius:999px;margin-top:4px;padding:2px 8px;font-size:.75rem;display:inline-block}.banner{color:#1c1917;text-align:center;padding:calc(env(safe-area-inset-top) + 4px) 8px 4px;background:#f59e0b;font-size:.85rem}.banner+.topbar{padding-top:8px}.list.compact{gap:4px}.event{grid-template-columns:20px auto 1fr;gap:10px;font-size:.9rem;display:grid}.check{align-items:center;gap:8px;color:var(--fg)!important;display:flex!important}.check input{width:20px;height:20px}select{font:inherit;border:1px solid var(--border);background:var(--card);color:var(--fg);border-radius:10px;padding:12px;font-size:16px}a.button,button.secondary{min-height:44px;color:var(--accent);border:1px solid var(--accent);font:inherit;background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:10px 16px;text-decoration:none;display:inline-flex}button.link.danger,.danger{color:var(--error)}label.link{color:var(--accent);cursor:pointer}.sim{gap:14px;display:grid}.sim-screen{color:#e2e8f0;text-align:center;background:#0b1220;border:6px solid #1e293b;border-radius:20px;padding:20px}.sim-clock{letter-spacing:1px;font-size:2.6rem;font-weight:600}.sim-name{color:#94a3b8;margin-bottom:12px}.sim-result{border-radius:12px;justify-content:center;align-items:center;min-height:56px;padding:14px;font-size:1.1rem;display:flex}.ok-bg{color:#fff;background:#16a34a}.error-bg{color:#fff;background:#dc2626}.sim-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px;display:grid}.sim-person{text-align:center;justify-items:center;gap:2px;display:grid}.sim-face{background:var(--card);border:1px solid var(--border);width:96px;height:128px;color:var(--muted);border-radius:14px;padding:0;overflow:hidden}.sim-face img{object-fit:cover;width:100%;height:100%;display:block}.sim-face.unknown span{font-size:2.5rem}.sim-person-name{font-size:.85rem;font-weight:600}label.button{min-height:44px;color:var(--accent);border:1px solid var(--accent);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:10px 16px;font-size:1rem;display:inline-flex}.search{width:100%;margin-bottom:12px}.grow{flex:1;min-width:0}.warn{color:#b45309}.card.person{text-align:left;width:100%;color:var(--fg);font:inherit;justify-content:flex-start;min-height:auto;padding:12px}.avatar{object-fit:cover;background:var(--border);color:var(--muted);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:flex}.form.wide{max-width:none}.photo-pick{text-align:center;justify-items:center;gap:10px;display:grid}.photo{object-fit:cover;border:1px solid var(--border);border-radius:16px;width:180px;height:240px}.photo.empty{color:var(--muted);background:var(--bg);justify-content:center;align-items:center;display:flex}.footer-actions{justify-content:space-between;margin-top:16px}.brand{font-weight:600}.card.attendance{padding:10px 14px}.times{font-variant-numeric:tabular-nums;white-space:nowrap;gap:6px;font-weight:600;display:flex}
