:root{--bg:#edf4ff;--panel:#fff;--text:#0f172a;--muted:#475569;--border:#d5e2f5;--brand:#0ea5e9;--brand-2:#0369a1;--ok:#166534;--error:#be123c;--mic:#e11d48;--mic-2:#9f1239;--input-bg:#fff;--overlay:rgba(15,23,42,.45)}[data-theme=dark]{--bg:#0f172a;--panel:#1e293b;--text:#f1f5f9;--muted:#94a3b8;--border:#334155;--brand:#38bdf8;--brand-2:#0ea5e9;--ok:#4ade80;--error:#f87171;--mic:#f43f5e;--mic-2:#e11d48;--input-bg:#1e293b;--overlay:rgba(0,0,0,.65)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;width:100%;overflow-x:hidden;overscroll-behavior-x:none;touch-action:pan-y}body{font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text);transition:background .2s,color .2s;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}[data-theme=light] body{background:radial-gradient(circle at top,#d8eafe 0,var(--bg) 55%)}button,input,textarea{font:inherit;color:var(--text)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:8px 4px 10px;border-bottom:1px solid var(--border);margin-bottom:4px}.app-name{gap:8px;font-weight:700;font-size:1.05rem;color:var(--brand-2);letter-spacing:.02em}.app-name,.app-rec-icon{display:inline-flex;align-items:center}.app-rec-icon{border:1px solid #fca5a5;border-radius:999px;padding:4px;background:#fff1f2;color:#b91c1c}.app-rec-mic{width:14px;height:14px;display:block}.dark-toggle{background:none;border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:16px;cursor:pointer;transition:background .15s}.dark-toggle:hover{background:var(--border)}.mobile-shell{max-width:720px;margin:0 auto;padding:calc(14px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom));display:grid;grid-gap:12px;gap:12px;width:100%;overflow-x:clip}.capture-card,.recent-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:0 8px 28px rgba(15,23,42,.07);transition:background .2s,border-color .2s;max-width:100%;overflow-x:hidden}.capture-card{box-shadow:0 12px 36px rgba(15,23,42,.11)}h1,h2{margin:0}.sub{margin:6px 0 0;color:var(--muted);font-size:.92rem}.onboarding-box{border:1px solid #bfdbfe;background:#eff6ff;border-radius:12px;padding:10px 12px;display:grid;grid-gap:8px;gap:8px}.onboarding-box ul{margin:6px 0 0 16px;padding:0;color:#1e3a8a;font-size:12px;line-height:1.4}.onboarding-close{justify-self:end;border:1px solid #93c5fd;background:#fff;color:#1d4ed8;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;cursor:pointer}.capture-status-row{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.status-pill--ok{background:#dcfce7;color:#166534}.status-pill--warn{background:#fee2e2;color:#991b1b}.status-pill--queue{background:#e0f2fe;color:#075985}.mode-tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:0;gap:0;margin-top:10px;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:color-mix(in srgb,var(--panel) 88%,var(--bg) 12%)}.mode-tab{padding:11px 10px;font-size:.95rem;font-weight:700;cursor:pointer;background:transparent;border:none;color:var(--muted);transition:background .15s,color .15s}.mode-tab:first-child{border-right:1px solid var(--border)}.mode-tab.active{background:rgba(14,165,233,.12);color:var(--brand-2)}.choice-box{margin-top:10px;border:1px solid var(--border);border-radius:14px;padding:10px;background:color-mix(in srgb,var(--panel) 88%,var(--bg) 12%)}.pill-group{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,1fr);margin-top:8px}.choice-box .pill-group:first-child{margin-top:0}.pill-group--two{grid-template-columns:repeat(2,1fr)}.pill{border:1px solid var(--border);background:var(--panel);border-radius:999px;padding:9px 10px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s}.pill.active{border-color:var(--brand);color:var(--brand-2);background:rgba(14,165,233,.12)}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.recent-collapsible{animation:slideDown .18s ease}.clear-btn{display:block;width:100%;margin-top:8px;border:1px dashed var(--border);background:transparent;color:var(--muted);border-radius:10px;padding:7px 12px;font-size:.82rem;cursor:pointer;transition:background .15s,color .15s;text-align:center}.clear-btn:hover{background:#fee2e2;color:var(--error);border-color:var(--error)}.day-nav-wrapper{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.today-btn{border:1px solid var(--brand);background:transparent;color:var(--brand-2);border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;cursor:pointer;transition:background .15s}.today-btn:hover{background:rgba(14,165,233,.1)}.day-label-btn--today{color:var(--brand-2);border-color:var(--brand);font-weight:700}.empty-state{margin:12px 0 4px;color:var(--muted);font-size:.92rem;display:flex;align-items:center;gap:8px}@keyframes mic-pulse{0%{box-shadow:0 0 0 0 rgba(225,29,72,.55)}70%{box-shadow:0 0 0 12px rgba(225,29,72,0)}to{box-shadow:0 0 0 0 rgba(225,29,72,0)}}.mic-icon{width:100px;height:100px;margin-top:0;border:none;border-radius:50%;padding:0;color:#fff;background:linear-gradient(135deg,var(--mic) 0,var(--mic-2) 100%);cursor:pointer;display:grid;align-items:center;justify-content:center;transition:opacity .15s,transform .15s;box-shadow:0 8px 22px rgba(225,29,72,.35)}.mic-icon:disabled{opacity:.55;cursor:not-allowed}.mic-icon svg{width:42px;height:42px;fill:currentColor}.mic-icon:hover{opacity:.95;transform:translateY(-1px)}.mic-icon.listening{background:linear-gradient(135deg,#dc2626,#991b1b);animation:mic-pulse 1.4s ease-in-out infinite}.mic-row{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:18px;margin-bottom:18px;gap:10px}.mic-status{margin:0;font-size:.86rem;color:var(--muted);font-weight:700}input:not([type=checkbox]),input[type=date],input[type=datetime-local],input[type=text],textarea{width:100%;margin-top:10px;border:1px solid var(--border);border-radius:12px;padding:10px;background:var(--input-bg);color:var(--text);transition:background .2s,border-color .2s;max-width:100%}textarea{resize:none;min-height:80px;overflow:hidden}input:focus,textarea:focus{outline:2px solid var(--brand);outline-offset:1px}.grid-two{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.checkbox-row{align-items:center;color:var(--muted);font-size:.95rem}.checkbox-row,.quick-chips{margin-top:10px;display:flex;gap:8px}.quick-chips{flex-wrap:wrap}.quick-chip{border:1px solid var(--border);background:transparent;color:var(--muted);border-radius:999px;min-height:36px;padding:6px 12px;font-size:.8rem;font-weight:700;cursor:pointer}.quick-chip:hover{background:var(--border)}.actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:10px}.sticky-actions{position:-webkit-sticky;position:sticky;bottom:calc(8px + env(safe-area-inset-bottom));z-index:25;background:var(--panel);border-top:1px solid var(--border);padding-top:10px;padding-bottom:4px}.actions button{border:none;border-radius:12px;padding:10px;color:#fff;background:linear-gradient(135deg,var(--brand) 0,var(--brand-2) 100%);font-weight:700;cursor:pointer;transition:opacity .15s}.actions button:hover:not(:disabled){opacity:.9}.actions .ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.actions .ai-btn{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff}.actions button:disabled{opacity:.5;cursor:not-allowed}.ok-msg{color:var(--ok)}.error-msg,.ok-msg{margin:10px 0 0;font-weight:600}.error-msg{color:var(--error)}.modal-overlay{position:fixed;inset:0;min-height:100vh;min-height:100svh;min-height:100dvh;background:var(--overlay);display:grid;place-items:center;z-index:1000;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.sheet-overlay{align-items:flex-end;padding:0 max(8px,env(safe-area-inset-right)) max(0px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.modal{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:20px;width:100%;max-width:min(480px,calc(100vw - 24px));max-height:min(86dvh,720px);margin:0 auto;box-shadow:0 20px 60px rgba(0,0,0,.2);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.sheet{width:100%;max-width:720px;max-height:min(88dvh,860px);border-radius:18px 18px 0 0;padding-top:10px;margin:0}.sheet-handle{width:44px;height:5px;border-radius:999px;margin:2px auto 12px;background:var(--border)}.modal h3{margin:0 0 14px;font-size:1.1rem}.preview-table{width:100%;border-collapse:collapse;font-size:.92rem;margin-bottom:16px;table-layout:fixed}.preview-table td{padding:5px 8px;border-bottom:1px solid var(--border);vertical-align:top;overflow-wrap:anywhere}.preview-table td:first-child{color:var(--muted);white-space:nowrap;width:80px}.modal-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.modal-actions--single{grid-template-columns:1fr}.modal-actions button{border:none;border-radius:12px;padding:10px;color:#fff;background:linear-gradient(135deg,var(--brand) 0,var(--brand-2) 100%);font-weight:700;cursor:pointer}.modal-actions .ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.modal-actions .ok-next-btn{background:#e2e8f0;color:#0f172a;border:1px solid #cbd5e1}.modal-actions .undo-ai-btn{background:linear-gradient(135deg,#fb923c,#ea580c);border:none;color:#fff}.recent-header{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.day-nav{display:inline-flex;align-items:center;gap:6px}.day-btn{border:1px solid var(--border);background:transparent;border-radius:999px;width:44px;height:44px;padding:0;display:grid;place-items:center;cursor:pointer}.day-btn svg{width:14px;height:14px;fill:currentColor}.day-label,.day-label-btn{font-size:.82rem;color:var(--muted);min-width:94px;text-align:center}.day-label-btn{border:1px solid var(--border);background:transparent;border-radius:999px;min-height:44px;padding:8px 14px;cursor:pointer}.sr-only-date-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.recent-count{margin-left:6px;font-size:.78rem;font-weight:400;color:var(--muted)}.recent-header-actions{display:flex;align-items:center;gap:8px}.collapse-btn{border:1px solid var(--border);background:transparent;border-radius:8px;padding:4px 10px;font-size:11px;color:var(--muted);cursor:pointer;transition:background .15s;line-height:1}.collapse-btn:hover{background:var(--border)}.csv-btn{border:1px solid var(--border);background:transparent;border-radius:8px;padding:4px 12px;font-size:12px;font-weight:700;color:var(--muted);cursor:pointer;transition:background .15s}.csv-btn:hover{background:var(--border)}.filter-group{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.filter-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border);background:transparent;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700;cursor:pointer;color:var(--muted);transition:background .15s,border-color .15s,color .15s}.filter-pill.active{background:var(--brand);border-color:var(--brand);color:#fff}.recent-list{margin-top:10px;display:grid;grid-gap:8px;gap:8px}.timeline-sections{margin-top:10px;display:grid;grid-gap:12px;gap:12px}.timeline-section{display:grid;grid-gap:8px;gap:8px}.timeline-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.recent-item{border:1px solid var(--border);border-radius:12px;padding:12px;display:grid;grid-gap:6px;gap:6px;transition:border-color .15s;max-width:100%;overflow-x:hidden}.recent-item:hover{border-color:var(--brand)}.recent-meta{display:flex;gap:6px;flex-wrap:wrap}.badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.03em}.badge-task{background:#dbeafe;color:#1d4ed8}.badge-note{background:#fef9c3;color:#854d0e}.badge-meeting{background:#dcfce7;color:#15803d}.badge-ctx{background:var(--border);color:var(--muted)}.badge-src{background:#e2e8f0;color:#0f172a;gap:6px}.badge-src,.source-icon{display:inline-flex;align-items:center}.source-icon{justify-content:center;line-height:0}.recent-body{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.recent-body strong{font-size:14px;color:var(--text);overflow-wrap:anywhere}.recent-body small{color:var(--muted);font-size:12px;white-space:nowrap}.recent-footer{display:flex;justify-content:space-between;align-items:center;margin-top:2px}.sync-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:700}.sync-badge-saved{background:#dcfce7;color:#166534}.sync-badge-queued{background:#fef3c7;color:#92400e}.sync-badge-syncing{background:#dbeafe;color:#1d4ed8}.sync-badge-error{background:#fee2e2;color:#b91c1c}.target-preview{display:flex;gap:8px;margin-top:10px}.target-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#f1f5f9;color:#0f172a}.open-btn,.target-chip{font-size:12px;font-weight:700}.open-btn{display:inline-block;padding:4px 12px;border-radius:8px;background:var(--brand);color:#fff;text-decoration:none;transition:opacity .15s}.open-btn:hover{opacity:.85}.delete-btn{background:none;border:none;color:var(--muted);font-size:13px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s,color .15s}.delete-btn:hover{background:#fee2e2;color:var(--error)}.login-shell{min-height:100svh;display:flex;align-items:center;justify-content:center;padding:16px}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:32px 24px;width:100%;max-width:360px;box-shadow:0 12px 40px rgba(15,23,42,.1);text-align:center}.login-card h1{font-size:1.5rem;margin-bottom:4px}.login-card form{margin-top:20px;display:grid;grid-gap:10px;gap:10px}.login-btn{width:100%;border:none;border-radius:12px;padding:12px;color:#fff;background:linear-gradient(135deg,var(--mic) 0,var(--mic-2) 100%);font-weight:700;font-size:1rem;cursor:pointer;transition:opacity .15s}.login-btn:disabled{opacity:.6;cursor:not-allowed}@media (min-width:700px){.mobile-shell{padding:20px}.grid-two{grid-template-columns:1fr 1fr}}