:root{--bg:#0f1115;--surface:#171a21;--surface-2:#1f232c;--border:#2a2f3a;--text:#e8eaf0;--muted:#8b92a3;--accent:#7c8cff;--accent-strong:#6474f5;--accent-soft:#7c8cff24;--danger:#ff6b6b;--danger-soft:#ff6b6b24;--ok:#4ade80;--warn:#fbbf24;--radius:14px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;min-height:100dvh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;font-size:16px;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}h1{letter-spacing:-.01em;margin:0;font-size:1.35rem;font-weight:650}.splash{min-height:100dvh}.muted{color:var(--muted)}.small{font-size:.85rem}.center{text-align:center}.nowrap{white-space:nowrap}.error{color:var(--danger);margin:.5rem 0 0;font-size:.9rem}.empty{padding:2rem 0}.row{align-items:center;gap:.5rem;display:flex}.row.between{justify-content:space-between}.row.end{justify-content:flex-end;margin-top:.75rem}.stack{flex-direction:column;gap:.9rem;display:flex}.app{max-width:640px;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);margin:0 auto}.topbar{z-index:5;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#0f1115d9;justify-content:space-between;align-items:center;padding:.9rem 16px;display:flex;position:sticky;top:0}.content{flex-direction:column;gap:1rem;padding:16px 16px 3rem;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.card-title{color:var(--accent);align-items:center;gap:.4rem;margin-bottom:.25rem;font-weight:600;display:flex}.quote{margin:0 0 .75rem;font-style:italic}.btn{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;min-height:42px;color:var(--text);border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1rem;font-weight:550;transition:background .15s,opacity .15s;display:inline-flex}.btn:hover:not(:disabled){background:#272c37}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#0b0d12}.btn.primary:hover:not(:disabled){background:var(--accent-strong)}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn.danger{background:var(--danger-soft);color:var(--danger);border-color:#0000}.btn.small{min-height:34px;padding:.35rem .75rem;font-size:.875rem}.btn.block{width:100%}.link{color:var(--accent);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0}.icon-btn{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:10px;place-items:center;display:grid}.icon-btn:hover,.icon-btn[aria-expanded=true]{background:var(--surface-2);color:var(--text)}.icon-btn.danger:hover,.icon-btn.danger[aria-expanded=true]{color:var(--danger)}.field{flex-direction:column;gap:.35rem;display:flex}.field>span{color:var(--muted);font-size:.85rem}.field em{font-style:normal}input,select,textarea{background:var(--bg);border:1px solid var(--border);border-radius:10px;outline:none;width:100%;padding:.65rem .8rem;font-size:16px;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}input[type=datetime-local]{min-height:44px}textarea{resize:vertical}.input-area{margin-top:.75rem}.segmented{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:3px;display:inline-flex}.segmented button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:.35rem;padding:.4rem .8rem;font-size:.9rem;font-weight:550;display:inline-flex}.segmented button.active{background:var(--surface-2);color:var(--text)}.segmented button:disabled{opacity:.4;cursor:not-allowed}.segmented.small button{padding:.3rem .6rem;font-size:.8rem}.mic-wrap{text-align:center;flex-direction:column;align-items:center;padding:1.25rem 0 .25rem;display:flex}.mic-wrap p{margin:.75rem 0 0}.mic{cursor:pointer;background:var(--accent);color:#0b0d12;border:none;border-radius:50%;place-items:center;width:84px;height:84px;transition:transform .15s;display:grid;box-shadow:0 6px 24px #7c8cff4d}.mic:active{transform:scale(.95)}.mic.listening{background:var(--danger);animation:1.4s infinite pulse;box-shadow:0 0 #ff6b6b99}@keyframes pulse{0%{box-shadow:0 0 #ff6b6b8c}70%{box-shadow:0 0 0 18px #ff6b6b00}to{box-shadow:0 0 #ff6b6b00}}.confirm{flex-direction:column;gap:.8rem;display:flex}.confirm .row.end{margin-top:0}.banner{background:var(--accent-soft);border-radius:var(--radius);color:var(--accent);border:1px solid #7c8cff4d;align-items:center;gap:.75rem;padding:.8rem 1rem;display:flex}.banner-body{color:var(--text);flex:1}.banner-body p{margin:.2rem 0 0}.push-ok{color:var(--ok);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.push-ok .link{color:var(--muted);margin-left:.5rem}.tabs{border-bottom:1px solid var(--border);gap:.25rem;display:flex}.tabs.scroll{scrollbar-width:none;overflow-x:auto}.tabs button{cursor:pointer;white-space:nowrap;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem .8rem;font-weight:550}.tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.count{background:var(--surface-2);border-radius:999px;min-width:1.4em;margin-left:.25rem;padding:0 .4em;font-size:.75rem;display:inline-block}.reminders,.admin-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.reminder{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem .5rem .75rem .9rem}.reminder.overdue{border-left:3px solid var(--warn)}.reminder-main{align-items:center;gap:.75rem;display:flex}.reminder-body{flex:1;min-width:0}.reminder-text{overflow-wrap:anywhere}.reminder-due{color:var(--muted);margin-top:.15rem;font-size:.8rem}.reminder.overdue .reminder-due{color:var(--warn)}.reminder.done .reminder-text{color:var(--muted);text-decoration:line-through}.reminder.done .reminder-due{color:var(--muted)}.reminder-actions{display:flex}.check{border:2px solid var(--border);cursor:pointer;color:#0b0d12;background:0 0;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;padding:0;display:grid}.check:hover{border-color:var(--accent)}.check.checked{background:var(--accent);border-color:var(--accent)}.panel{border-top:1px solid var(--border);margin:.75rem .4rem 0 0;padding-top:.75rem}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;border-radius:999px;padding:.35rem .8rem;font-size:.85rem}.chip:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.custom-snooze{margin-top:.6rem}.custom-snooze input{width:5rem;padding:.4rem .6rem}.custom-snooze select{width:auto;padding:.4rem .6rem}.auth{place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.auth-card{width:100%;max-width:380px}.auth-card h1{margin-top:1rem;font-size:1.6rem}.auth-card>p{margin:.25rem 0 1.5rem}.auth-logo{border-radius:14px;display:block}.auth-links{flex-direction:column;align-items:center;gap:.6rem;margin-top:1.5rem;font-size:.9rem;display:flex}.badge{background:var(--surface-2);color:var(--muted);text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:600}.badge.pending{color:var(--warn);background:#fbbf2426}.badge.approved,.badge.active{color:var(--ok);background:#4ade8024}.badge.rejected,.badge.revoked{background:var(--danger-soft);color:var(--danger)}.admin-list .card p{margin:.25rem 0 0}.reset-link{margin-top:.75rem}.reset-link .row{margin-top:.4rem}code{background:var(--bg);overflow-wrap:anywhere;border-radius:6px;flex:1;padding:.35rem .5rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.code-lg{font-size:1rem}.table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.875rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.6rem .75rem}th{color:var(--muted);background:var(--surface);font-weight:550}tr:last-child td{border-bottom:none}.hint{color:var(--warn);font-size:.85rem;font-style:normal}.voice-unsupported{background:var(--surface-2);color:var(--muted);border-radius:10px;align-items:flex-start;gap:.75rem;margin-top:.9rem;padding:.8rem;display:flex}.voice-unsupported strong{color:var(--text)}.voice-unsupported p{margin:.3rem 0 0}kbd{border:1px solid var(--border);background:var(--bg);color:var(--text);border-bottom-width:2px;border-radius:4px;padding:.05rem .35rem;font-family:inherit;font-size:.8em}.install{background:var(--surface);border-radius:var(--radius);border:1px solid #7c8cff59;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.8rem 1rem;display:flex}.install-icon{border-radius:10px;flex:none}.install-body{flex:1;min-width:180px}.install-body p{margin:.2rem 0 0}.install-actions{gap:.25rem;margin-left:auto;display:flex}.inline-icon{vertical-align:-2px}.auth-card .install{text-align:left;margin-bottom:1.25rem}
