:root{--bg:#0f172a;--surface:#1e293b;--text:#f8fafc;--muted:#94a3b8;--accent:#4f46e5;--border:#334155}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;touch-action:manipulation;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:inherit}.screen{flex-direction:column;gap:1rem;min-height:100dvh;padding:1rem;display:flex}.screen-header{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.screen-title{font-size:1.5rem;font-weight:700}.screen-sub{color:var(--muted);font-size:.95rem}.button-grid{flex:1;grid-template-columns:1fr;align-content:stretch;gap:1rem;display:grid}.big-button{color:#fff;background:var(--accent);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:1.25rem;justify-content:center;align-items:center;min-height:22vh;font-size:2rem;font-weight:800;text-decoration:none;transition:transform 60ms,filter 60ms;display:flex}.big-button:active{filter:brightness(1.25);transform:scale(.97)}.change-context{color:var(--muted);white-space:nowrap;font-size:1rem;text-decoration:underline}.toast{background:var(--surface);border:1px solid var(--border);z-index:20;white-space:nowrap;border-radius:999px;align-items:center;gap:1rem;padding:.75rem 1.25rem;font-size:1.05rem;display:flex;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000080}.toast button{color:#818cf8;cursor:pointer;background:0 0;border:none;padding:.25rem .5rem;font-size:1.05rem;font-weight:700}.sync-indicator{color:#fff;z-index:30;white-space:nowrap;background:#b45309;border-radius:999px;padding:.35rem .9rem;font-size:.85rem;font-weight:600;position:fixed;top:.75rem;left:50%;transform:translate(-50%)}.notice{background:#7f1d1d;border-radius:.75rem;padding:.9rem 1rem;font-size:.95rem;line-height:1.45}.notice code{font-size:.85em}.admin{flex-direction:column;gap:1.25rem;max-width:56rem;margin:0 auto;padding:1.25rem 1rem 3rem;display:flex}.admin-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin h1{font-size:1.4rem}.controls{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.field{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.field input,.field select{background:var(--surface);color:var(--text);border:1px solid var(--border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:.5rem;min-height:2.75rem;padding:.55rem .7rem;font-size:1rem}.btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:.5rem;min-height:2.75rem;padding:.65rem 1.1rem;font-size:1rem;font-weight:600}.btn.secondary{background:var(--surface);border:1px solid var(--border)}.btn:disabled{opacity:.5;cursor:default}.report-table{border-collapse:collapse;width:100%;font-size:.95rem}.report-table th,.report-table td{border:1px solid var(--border);text-align:right;padding:.5rem .65rem}.report-table th:first-child,.report-table td:first-child{text-align:left;white-space:nowrap}.report-table thead th{background:var(--surface)}.report-table tfoot td{background:var(--surface);font-weight:700}.table-wrap{overflow-x:auto}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;flex-direction:column;gap:1rem;max-width:24rem;margin:15vh auto 0;padding:1.5rem;display:flex}.login-card input{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:.5rem;padding:.65rem .75rem;font-size:1rem}.hint{color:var(--muted);font-size:.9rem;line-height:1.45}@media (min-width:640px){.button-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.big-button{min-height:30vh}}.center{justify-content:center;align-items:center}.session-banner{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;align-items:center;gap:.6rem;padding:.75rem 1rem;font-size:1rem;display:flex}.session-banner .btn{margin-left:auto}.status-dot{background:#22c55e;border-radius:50%;width:.6rem;height:.6rem;margin-right:.4rem;animation:2s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.4}}.elapsed{font-variant-numeric:tabular-nums}.log-screen{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.log-header{justify-content:space-between;align-items:center;gap:.75rem;font-size:1.05rem;display:flex}.log-header-actions{align-items:center;gap:.9rem;display:flex}.flex-spacer{flex:1}.thumb-stack{flex-direction:column;gap:.85rem;display:flex}.thumb-stack .big-button{min-height:19vh;font-size:1.9rem}.btn.small{min-height:0;padding:.4rem .8rem;font-size:.9rem}.btn.danger{background:#7f1d1d}.btn.google{color:#1f2937;background:#fff;justify-content:center;align-items:center;gap:.6rem;font-weight:700;display:flex}.linklike{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.95rem;text-decoration:underline}.email-fallback{flex-direction:column;gap:.6rem;display:flex}.toast.above-stack{top:4.5rem;bottom:auto}.sheet-backdrop{z-index:40;background:#0000008c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border:1px solid var(--border);width:100%;max-width:32rem;padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));border-radius:1.25rem 1.25rem 0 0;flex-direction:column;gap:.9rem;display:flex}.sheet h2{font-size:1.15rem}.sheet textarea{background:var(--bg);color:var(--text);border:1px solid var(--border);resize:vertical;border-radius:.6rem;padding:.7rem .8rem;font-family:inherit;font-size:1rem}.sheet-actions{flex-wrap:wrap;gap:.6rem;display:flex}.toggle-row{align-items:center;gap:.6rem;font-size:1rem;display:flex}.toggle-row input{width:1.25rem;height:1.25rem}.tabs{border-bottom:1px solid var(--border);gap:.4rem;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.6rem .9rem;font-size:1rem}.tab.active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.notes-cell{text-overflow:ellipsis;white-space:nowrap;max-width:16rem;overflow:hidden}.note-text{text-align:left;white-space:normal;overflow-wrap:break-word;max-width:24rem}.report-table select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:.4rem;padding:.3rem .4rem}
