@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap);@import url(https://fonts.googleapis.com/css2?family=Literata:wght@400;500;600&family=Space+Grotesk:wght@400;500;600;700&display=swap);:root{--font-sans:"Inter","Avenir Next",Avenir,"Helvetica Neue",Helvetica,"Segoe UI",Arial,sans-serif;--color-bg:#13161f;--color-surface:#1b1f2d;--color-surface-subtle:#222638;--color-surface-hover:#2a2f42;--color-text:#e8ecf5;--color-muted:#8b96b0;--color-border:#363d54;--color-border-soft:#2b3044;--color-primary:#4f8ef7;--color-primary-hover:#3a79ee;--color-success:#34d399;--color-warning:#fb923c;--color-danger:#f87171;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-sm:0 2px 8px #0000004d,0 0 0 1px #ffffff08;--shadow-md:0 8px 24px #00000059,0 0 0 1px #ffffff08;--header-height:60px;--header-bg:#13161fe6;--content-max:1200px;--page-px:24px;--sidebar-width:220px;--color-primary-subtle:#4f8ef717}body[data-view-mode=light]{--color-bg:#f4f6fb;--color-surface:#fff;--color-surface-subtle:#f0f3fa;--color-surface-hover:#e6ebf5;--color-text:#111827;--color-muted:#4b5a72;--color-border:#c4cfe0;--color-border-soft:#dce4f0;--color-primary:#2563eb;--color-primary-hover:#1d56d8;--color-success:#16a34a;--color-warning:#d97706;--color-danger:#dc2626;--header-bg:#f4f6fbeb;--shadow-sm:0 2px 8px #101e3c14;--shadow-md:0 8px 24px #101e3c1f;--color-primary-subtle:#2563eb12}body[data-view-mode=developer]{--font-sans:"Cascadia Code","Consolas","Monaco","Courier New",monospace;--color-bg:#0b1012;--color-surface:#111a1d;--color-surface-subtle:#152024;--color-surface-hover:#1c2d32;--color-text:#b8f5d8;--color-muted:#6ba890;--color-border:#1f5040;--color-border-soft:#193d30;--color-primary:#00e09e;--color-primary-hover:#00c48a;--color-success:#00e09e;--color-warning:#f59e0b;--color-danger:#f87171;--header-bg:#0b1012eb;--shadow-sm:0 2px 8px #00000073;--shadow-md:0 8px 24px #0000008c;--color-primary-subtle:#00e09e14}*,:after,:before{box-sizing:border-box}#root,body,html{min-height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#13161f;background:var(--color-bg);color:#e8ecf5;color:var(--color-text);font-family:Inter,Avenir Next,Avenir,Helvetica Neue,Helvetica,Segoe UI,Arial,sans-serif;font-family:var(--font-sans);font-size:14px;line-height:1.55;margin:0}h1,h2,h3,h4{font-weight:700;letter-spacing:-.015em;line-height:1.25;margin:0 0 10px}h1{font-size:28px}h2{font-size:22px}h3{font-size:16px}h4{font-size:14px}p{margin:0}a{color:#4f8ef7;color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:Cascadia Code,SF Mono,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px}.page-section{margin:0 auto;max-width:1200px;max-width:var(--content-max)}.card{background:#1b1f2d;background:var(--color-surface);border:1px solid #2b3044;border:1px solid var(--color-border-soft);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000004d,0 0 0 1px #ffffff08;box-shadow:var(--shadow-sm);margin-bottom:20px;padding:20px}.card-title{font-size:16px;font-weight:600;margin-bottom:14px}.form-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-full{grid-column:1/-1}.stack-form{display:flex;flex-direction:column;gap:14px;max-width:560px}.form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}label{color:#8b96b0;color:var(--color-muted);display:block;font-size:12px;font-weight:600;letter-spacing:.04em;margin-bottom:5px;text-transform:uppercase}.input,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea{background:#1b1f2d;background:var(--color-surface);border:1px solid #363d54;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-sm);color:#e8ecf5;color:var(--color-text);font-family:inherit;font-size:14px;min-height:38px;outline:none;padding:8px 12px;transition:border-color .15s,box-shadow .15s;width:100%}textarea{min-height:90px;resize:vertical}.input:focus,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):focus,select:focus,textarea:focus{border-color:#4f8ef7;border-color:var(--color-primary);box-shadow:0 0 0 3px #4f8ef733}input::placeholder,textarea::placeholder{color:#8b96b0;color:var(--color-muted);opacity:.7}.btn,button{align-items:center;background:#222638;background:var(--color-surface-subtle);border:1px solid #363d54;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-sm);color:#e8ecf5;color:var(--color-text);cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;font-weight:500;gap:6px;justify-content:center;min-height:36px;padding:7px 14px;text-decoration:none;transition:background .12s,border-color .12s,box-shadow .12s;white-space:nowrap}.btn:hover:not(:disabled),button:hover:not(:disabled){background:#2a2f42;background:var(--color-surface-hover);border-color:#363d54;border-color:var(--color-border)}.btn:active:not(:disabled),button:active:not(:disabled){transform:translateY(1px)}.btn:disabled,button:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#4f8ef7;background:var(--color-primary);border-color:#4f8ef7;border-color:var(--color-primary);color:#fff;font-weight:600}.btn-primary:hover:not(:disabled){background:#3a79ee;background:var(--color-primary-hover);border-color:#3a79ee;border-color:var(--color-primary-hover)}.btn-danger{background:#f87171;background:var(--color-danger);border-color:#f87171;border-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.9)}.btn-ghost{background:#0000;border-color:#0000;color:#8b96b0;color:var(--color-muted)}.btn-ghost:hover:not(:disabled){background:#222638;background:var(--color-surface-subtle);border-color:#2b3044;border-color:var(--color-border-soft);color:#e8ecf5;color:var(--color-text)}.btn-sm{font-size:12px;min-height:28px;padding:4px 10px}.data-table-wrap{background:#1b1f2d;background:var(--color-surface);border:1px solid #2b3044;border:1px solid var(--color-border-soft);border-radius:12px;border-radius:var(--radius-md);overflow-x:auto}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid #2b3044;border-bottom:1px solid var(--color-border-soft);font-size:13px;padding:10px 12px;text-align:left}thead th{color:#8b96b0;color:var(--color-muted);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}tbody tr:last-child td{border-bottom:none}.tab-btn,tbody tr:hover{background:#222638;background:var(--color-surface-subtle)}.tab-btn.active{background:#4f8ef7;background:var(--color-primary);border-color:#4f8ef7;border-color:var(--color-primary);color:#fff}.inline-checkbox{align-items:center;cursor:pointer;display:inline-flex;gap:8px}mark{background:#ffdc5040;border-radius:3px;color:inherit;padding:0 2px}.section-label{color:#8b96b0;color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.06em;margin-bottom:10px;text-transform:uppercase}@media (max-width:768px){:root{--page-px:16px}.form-grid{grid-template-columns:1fr}.form-full{grid-column:auto}}.app-shell{display:flex;flex-direction:row;min-height:100vh}.app-content-area{display:flex;flex:1 1;flex-direction:column;margin-left:var(--sidebar-width);min-width:0;transition:margin-left .22s ease}.app-shell[data-authed=false] .app-content-area{margin-left:0}.app-main{flex:1 1;padding:32px var(--page-px) 48px}.app-shell[data-authed=false] .app-main{padding:0}.welcome-popup{animation:wfIn .2s ease-out,wfOut .4s ease-in 2.6s forwards;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);left:50%;padding:20px;position:fixed;text-align:center;top:50%;transform:translate(-50%,-50%);width:min(340px,calc(100vw - 32px));z-index:1100}.welcome-popup-title{font-size:17px;font-weight:700;margin-bottom:6px}.welcome-popup-text{color:var(--color-muted);font-size:14px}@keyframes wfIn{0%{opacity:0;transform:translate(-50%,-46%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes wfOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-54%) scale(.97)}}@media (max-width:900px){.app-content-area{margin-left:0!important}.app-main{padding:64px var(--page-px) 40px}.app-shell[data-authed=false] .app-main{padding:0}}.notification-panel{background:#0f172a;border:1px solid #1e293b;border-radius:14px;box-shadow:0 20px 50px #0f172a59;color:#e2e8f0;max-height:420px;overflow:hidden;position:absolute;right:24px;top:64px;width:360px;z-index:1200}.notification-panel-header{align-items:center;border-bottom:1px solid #1e293b;display:flex;justify-content:space-between;padding:12px 16px}.notification-title{font-weight:600}.notification-subtitle{color:#94a3b8;font-size:12px}.notification-actions{display:flex;gap:8px}.notification-btn{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:12px;padding:6px 10px}.notification-btn.ghost{background:#0000;border:1px solid #334155}.notification-list{max-height:340px;overflow:auto}.notification-empty{color:#94a3b8;font-size:13px;padding:20px;text-align:center}.notification-item{background:#0000;border:none;border-bottom:1px solid #1e293b;color:inherit;cursor:pointer;display:block;padding:12px 16px;text-align:left;width:100%}.notification-item.unread{background:#2563eb1f}.notification-item-title{font-weight:600;margin-bottom:4px}.notification-item-message{color:#cbd5f5;font-size:12px;margin-bottom:6px}.notification-item-meta{color:#94a3b8;font-size:11px}.notification-push-row{align-items:center;background:var(--color-surface-subtle);border-bottom:1px solid var(--color-border-soft);display:flex;gap:8px;padding:10px 16px}.notification-push-label{color:var(--color-muted);flex:1 1;font-size:12px}.notification-push-btn{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-size:11px;padding:3px 10px}.notification-push-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.notification-push-btn:disabled{cursor:not-allowed;opacity:.6}.notification-push-test{background:#0000;border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;font-size:11px;padding:3px 8px}.notification-push-error{background:var(--color-surface-subtle);color:var(--color-danger);font-size:11px;padding:4px 16px 8px}.app-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border-soft);bottom:0;display:flex;flex-direction:column;left:0;overflow-x:hidden;overflow-y:auto;position:fixed;scrollbar-color:var(--color-border-soft) #0000;scrollbar-width:thin;top:0;width:var(--sidebar-width);z-index:1000}.sidebar-brand{align-items:center;cursor:pointer;display:flex;flex-shrink:0;gap:10px;padding:18px 14px 14px;-webkit-user-select:none;user-select:none}.sidebar-brand:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--color-primary);outline-offset:2px}.sidebar-brand-icon{align-items:center;background:var(--color-primary);border-radius:7px;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:800;height:28px;justify-content:center;letter-spacing:-.01em;width:28px}.sidebar-brand-name{color:var(--color-text);font-size:15px;font-weight:800;letter-spacing:-.03em}.sidebar-section{display:flex;flex-direction:column;gap:1px;padding:4px 8px}.sidebar-section-label{color:var(--color-muted);font-size:10px;font-weight:700;letter-spacing:.07em;opacity:.65;padding:8px 8px 4px;text-transform:uppercase}.sidebar-nav-item{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;display:flex;font-family:inherit;font-size:13px;font-weight:500;gap:9px;padding:7px 8px;text-align:left;transition:background .1s,color .1s;white-space:nowrap;width:100%}.sidebar-nav-item:hover{background:var(--color-surface-subtle);color:var(--color-text)}.sidebar-nav-item.active{background:var(--color-primary-subtle);color:var(--color-primary);font-weight:600}.sidebar-nav-icon{flex-shrink:0;font-size:15px;opacity:.8}.sidebar-nav-item.active .sidebar-nav-icon,.sidebar-nav-item:hover .sidebar-nav-icon{opacity:1}.sidebar-nav-label{flex:1 1;overflow:hidden;text-overflow:ellipsis}.sidebar-divider{background:var(--color-border-soft);flex-shrink:0;height:1px;margin:6px 14px}.sidebar-spacer{flex:1 1;min-height:12px}.sidebar-badge{border-radius:999px;flex-shrink:0;font-size:10px;font-weight:700;line-height:1.6;min-width:18px;padding:1px 6px;text-align:center}.sidebar-badge-danger{background:var(--color-danger);color:#fff}.sidebar-badge-primary{background:var(--color-primary);color:#fff}.sidebar-badge-warning{background:var(--color-warning);color:#fff;margin-left:3px}.sidebar-review,.sidebar-review:hover{color:var(--color-primary)}.sidebar-review:hover{background:var(--color-primary-subtle)}.sidebar-bottom{border-top:1px solid var(--color-border-soft);display:flex;flex-direction:column;flex-shrink:0;gap:1px;padding:4px 8px 14px}.sidebar-user-row{align-items:center;border-radius:var(--radius-sm);display:flex;gap:8px;padding:8px}.sidebar-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary),#7c3aed);border-radius:999px;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:26px;justify-content:center;width:26px}.sidebar-user-name{color:var(--color-text);flex:1 1;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-logout{align-items:center;background:#0000;border:none;border-radius:var(--radius-xs);color:var(--color-muted);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;height:26px;justify-content:center;transition:background .1s,color .1s;width:26px}.sidebar-logout:hover{background:#ef44441a;color:var(--color-danger)}.sidebar-hamburger{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--color-text);cursor:pointer;display:none;font-size:17px;height:36px;justify-content:center;left:14px;position:fixed;top:14px;width:36px;z-index:1100}.sidebar-overlay{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:#00000059;display:none;inset:0;position:fixed;z-index:999}@media (max-width:900px){.sidebar-hamburger{display:flex}.app-sidebar{box-shadow:var(--shadow-md);transform:translateX(-100%);transition:transform .22s ease}.app-sidebar.sidebar-open{transform:translateX(0)}.sidebar-overlay{display:block}}.app-footer{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-left:auto;margin-right:auto;margin-top:28px;max-width:1200px;padding:18px 20px;width:100%}.app-footer-top{align-items:flex-start;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between}.app-footer-brand{font-size:16px;font-weight:600;margin-bottom:4px}.app-footer-text{color:var(--color-muted);max-width:520px}.app-footer-actions{display:flex;flex-wrap:wrap;gap:10px}.app-footer-actions .btn{align-items:center;display:inline-flex;text-decoration:none}.app-footer-bottom{align-items:center;border-top:1px solid var(--color-border-soft);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:16px;padding-top:12px}.app-footer-links{display:flex;flex-wrap:wrap;gap:14px}.app-footer-links a{color:var(--color-muted);font-size:14px;text-decoration:none}.app-footer-links a:hover{color:var(--color-text)}.app-footer-copy{color:var(--color-muted);font-size:13px}.today-page{margin:0 auto;max-width:1100px;padding-bottom:60px}.today-toast{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-size:13px;font-weight:600;margin-bottom:12px;padding:10px 16px;position:-webkit-sticky;position:sticky;top:8px;z-index:10}.today-toast-success{border-color:#22c55e66;color:#16a34a}.today-toast-error{border-color:#ef444466;color:#dc2626}.today-topbar{justify-content:space-between;margin-bottom:16px}.today-topbar,.today-topbar-left{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.today-title{font-size:26px;font-weight:800;letter-spacing:-.025em;margin:0}.today-range{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;display:inline-flex;gap:4px;padding:3px}.today-range-btn{background:#0000;border:1px solid #0000;border-radius:999px;color:var(--color-muted);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:4px 12px;transition:background .1s,color .1s}.today-range-btn.active{background:var(--color-surface);border-color:var(--color-border-soft);color:var(--color-text)}.today-view-switch{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;display:inline-flex;gap:3px;padding:3px}.today-view-btn{background:#0000;border:1px solid #0000;border-radius:999px;color:var(--color-muted);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;min-height:30px;padding:4px 10px;transition:background .1s,color .1s}.today-view-btn.active{background:var(--color-surface);border-color:var(--color-border-soft);color:var(--color-text)}.today-ai-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.today-ai-btn{background:linear-gradient(135deg,#4f46e5,#7c3aed);border:1px solid #0000;border-radius:999px;color:#fff;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:7px 16px;transition:opacity .12s}.today-ai-btn:disabled{cursor:not-allowed;opacity:.6}.today-ai-btn-ghost{background:var(--color-surface-subtle);border-color:var(--color-border-soft);color:var(--color-text)}.today-ai-btn-ghost:hover{background:var(--color-surface-hover)}.today-ai-result{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);margin-bottom:16px;padding:14px 40px 14px 16px;position:relative}.today-ai-text{font-family:inherit;font-size:13px;line-height:1.65;margin:0;white-space:pre-wrap}.today-ai-close{background:#0000;border:none;color:var(--color-muted);cursor:pointer;font-size:18px;line-height:1;position:absolute;right:12px;top:10px}.today-ai-close:hover{color:var(--color-text)}.today-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.today-card{background:var(--color-surface);border-radius:var(--radius-lg);border-top-width:1px;border:1px solid var(--color-border-soft);border-top:3px solid var(--color-border-soft);padding:18px}.today-card-red{border-top-color:#ef4444}.today-card-amber{border-top-color:#f59e0b}.today-card-green{border-top-color:#22c55e}.today-card-actions{border-top-color:var(--color-primary);grid-column:1/-1}.today-card-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.today-card-title{color:var(--color-muted);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.today-card-count{border-radius:999px;font-size:12px;font-weight:700;padding:2px 8px}.today-count-red{background:#ef44441f;color:#ef4444}.today-count-amber{background:#f59e0b1f;color:#d97706}.today-count-green{background:#22c55e1f;color:#16a34a}.today-muted{color:var(--color-muted);font-size:13px;margin:0}.today-error{color:var(--color-danger)}.today-empty{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:6px 0}.today-empty-msg{color:var(--color-muted);font-size:13px}.today-empty-btn{background:#0000;border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;font-family:inherit;font-size:11px;font-weight:600;padding:4px 10px;transition:border-color .1s,color .1s}.today-empty-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.today-items{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto;scrollbar-color:var(--color-border-soft) #0000;scrollbar-width:thin}.today-items-label{color:var(--color-muted);font-size:10px;font-weight:700;letter-spacing:.07em;opacity:.7;padding:4px 0 2px;text-transform:uppercase}.today-row{align-items:flex-start;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);display:flex;gap:10px;padding:10px 12px;transition:background .1s}.today-row:hover{background:var(--color-surface-hover)}.today-row-body{flex:1 1;min-width:0}.today-row-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:13px;font-weight:600;line-height:1.35;margin-bottom:4px;overflow:hidden}.today-row-meta{display:flex;flex-wrap:wrap;gap:4px}.today-row-tag{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);font-size:10px;padding:2px 7px;white-space:nowrap}.today-row-actions{display:flex;flex-direction:column;flex-shrink:0;gap:4px}.today-row-btn{border:1px solid;border-radius:var(--radius-xs);cursor:pointer;font-family:inherit;font-size:11px;font-weight:600;padding:3px 9px;transition:background .1s;white-space:nowrap}.today-row-btn:disabled{cursor:not-allowed;opacity:.5}.today-btn-done{background:#22c55e14;border-color:#22c55e66;color:#16a34a}.today-btn-done:hover:not(:disabled){background:#22c55e29}.today-btn-skip{background:#ef44440f;border-color:#ef44444d;color:#dc2626}.today-btn-skip:hover:not(:disabled){background:#ef44441f}.today-actions-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.today-action-btn{align-items:center;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:7px;padding:14px 8px;transition:background .12s,border-color .12s,transform .12s}.today-action-btn:hover{background:var(--color-surface-hover);border-color:var(--color-primary);transform:translateY(-1px)}.today-action-emoji{font-size:20px}.today-action-label{font-size:11px;font-weight:600}@media (max-width:900px){.today-grid{grid-template-columns:1fr 1fr}.today-card-actions{grid-column:1/-1}}@media (max-width:600px){.today-grid{grid-template-columns:1fr}.today-topbar,.today-topbar-left{align-items:flex-start}.today-topbar-left{flex-direction:column;gap:8px}.today-view-switch{order:-1}}.tag-list-table{margin-top:20px;width:100%}.tag-wrap{padding:30px}.expense-form-tags-wrap{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.expense-form-tag-pill{background:#f1f5f9;border-radius:6px;padding:6px 10px}.expense-form-save-wrap{margin-top:20px;text-align:right}.income-form-tags-wrap{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.income-form-tag-label{align-items:center;display:flex;gap:4px}.income-form-save-wrap{margin-top:20px;text-align:right}.transaction-list-wrap{margin:0 auto;padding:12px 0 30px}.transaction-list-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.transaction-list-title{font-size:26px;font-weight:700;margin-bottom:6px}.transaction-list-subtitle{color:var(--color-muted);font-size:13px}.transaction-list-reset-btn{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:10px;cursor:pointer;padding:10px 14px}.transaction-list-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:18px}.transaction-list-metric{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:14px;padding:14px 16px}.transaction-list-metric-label{color:var(--color-muted);font-size:12px;margin-bottom:8px}.transaction-list-metric-value{font-size:18px;font-weight:700}.transaction-list-metric-expense .transaction-list-metric-value{color:#dc2626}.transaction-list-metric-income .transaction-list-metric-value{color:#16a34a}.transaction-list-metric-transfer .transaction-list-metric-value{color:#0284c7}.transaction-list-filters{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:18px}.transaction-list-list{display:flex;flex-direction:column;gap:14px}.transaction-list-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:14px;box-shadow:0 6px 18px #0000000f;display:flex;justify-content:space-between;padding:16px 18px}.transaction-list-left{align-items:flex-start;display:flex;gap:14px}.transaction-list-main-info{display:flex;flex-direction:column;gap:4px;min-width:0}.transaction-list-badge{border-radius:10px;font-size:11px;font-weight:600;padding:6px 10px}.transaction-list-badge-expense{background:#fee2e2;color:#b91c1c}.transaction-list-badge-income{background:#dcfce7;color:#166534}.transaction-list-badge-transfer{background:#e0f2fe;color:#075985}.transaction-list-amount{font-size:18px;font-weight:700}.transaction-list-amount-expense{color:#dc2626}.transaction-list-amount-income{color:#16a34a}.transaction-list-amount-transfer{color:#0284c7}.transaction-list-meta,.transaction-list-sub{color:var(--color-muted);font-size:13px}.transaction-list-desc{color:#999;font-size:13px;margin-top:4px;overflow-wrap:anywhere}.transaction-list-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.transaction-list-action-btn,.transaction-list-del-btn{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:8px;cursor:pointer;padding:8px 12px}.transaction-list-del-btn{color:#b91c1c}.transaction-list-empty{border:1px dashed var(--color-border-soft);border-radius:14px;color:var(--color-muted);padding:24px;text-align:center}@media (max-width:720px){.transaction-list-card,.transaction-list-header{align-items:stretch;flex-direction:column}.transaction-list-left{width:100%}}.budget-dashboard{display:flex;flex-direction:column;gap:18px}.budget-dashboard-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.budget-dashboard-header h2{margin:0 0 6px}.budget-dashboard-header p{color:var(--color-muted);font-size:13px;margin:0}.budget-dashboard-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.budget-metric{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:14px;padding:14px 16px}.budget-metric-label{color:var(--color-muted);font-size:12px;margin-bottom:6px}.budget-metric-value{font-size:18px;font-weight:700}.budget-metric-negative .budget-metric-value{color:#b91c1c}.budget-metric-positive .budget-metric-value{color:#166534}.budget-dashboard-table{display:flex;flex-direction:column;gap:12px}.budget-row{grid-gap:16px;align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:14px;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 180px;padding:14px 16px}.budget-row-name{font-weight:700;margin-bottom:4px}.budget-row-meta{color:var(--color-muted);font-size:13px;margin-bottom:10px}.budget-row-bar{background:#edf2f7;border-radius:999px;height:10px;overflow:hidden}.budget-row-bar span{background:linear-gradient(90deg,#0f766e,#14b8a6);display:block;height:100%}.budget-row-input label{color:var(--color-muted);display:block;font-size:12px;margin-bottom:6px}@media (max-width:720px){.budget-dashboard-header,.budget-row{flex-direction:column;grid-template-columns:1fr}}.trend-dashboard{display:flex;flex-direction:column;gap:18px}.trend-dashboard-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.trend-dashboard-header h2{margin:0 0 6px}.trend-card p,.trend-dashboard-header p{color:var(--color-muted);font-size:13px;margin:0}.trend-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.trend-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:16px;padding:18px}.trend-card h3{margin:0 0 6px}.trend-list{display:flex;flex-direction:column;gap:12px;margin-top:14px}.trend-row-header{display:flex;font-size:14px;font-weight:600;gap:12px;justify-content:space-between}.trend-row-bar{background:#edf2f7;border-radius:999px;height:10px;margin:6px 0;overflow:hidden}.trend-row-bar span{background:linear-gradient(90deg,#2563eb,#38bdf8);display:block;height:100%}.trend-row-delta{font-size:12px}.trend-row-delta.up{color:#b91c1c}.trend-row-delta.down{color:#166534}.trend-empty{color:var(--color-muted);margin-top:14px}.split-transaction-form{display:flex;flex-direction:column;gap:16px}.split-transaction-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.split-transaction-header h2{margin:0 0 6px}.split-transaction-header p{color:var(--color-muted);font-size:13px;margin:0}.split-transaction-total{font-weight:700}.split-transaction-base,.split-transaction-line{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.split-transaction-lines{display:flex;flex-direction:column;gap:10px}.split-transaction-line{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:14px;padding:12px}.split-transaction-remove{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:10px;cursor:pointer;padding:10px 12px}.split-transaction-actions,.split-transaction-footer{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.split-transaction-diff{color:var(--color-muted);font-size:13px}.split-transaction-diff.invalid{color:#b91c1c}.transactions-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.transaction-field{display:flex;flex-direction:column;gap:6px}.transaction-input-error{border-color:#d03a3a;box-shadow:0 0 0 3px #d03a3a33}.transaction-error-text{color:#d03a3a;font-size:12px}.transactions-mode-banner{background:#dbeafeb3;border:1px solid #2563eb26;border-radius:12px;color:#1d4ed8;font-size:13px;font-weight:600;margin-bottom:16px;padding:10px 12px}.investment-list-table{border-collapse:collapse;width:100%}.investment-list-row{border-bottom:1px solid var(--color-border-soft)}.investments-wrap{padding:20px}.investments-actions{display:flex;gap:10px;margin-bottom:20px}.recurring-list-wrap{padding:20px}.recurring-list-add-btn{margin-bottom:14px}.recurring-list-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.recurring-list-card{background:var(--color-surface);border-radius:14px;box-shadow:0 8px 20px #00000014;padding:16px}.recurring-list-title{font-size:16px;font-weight:600}.recurring-list-actions{margin-top:10px}.recurring-form-wrap{background:var(--color-surface);border-radius:16px;box-shadow:0 10px 25px #00000014;display:flex;flex-direction:column;gap:12px;margin:0 auto;max-width:520px;padding:24px}.stocks-tabs{flex-wrap:wrap;gap:8px}.stocks-hero,.stocks-tabs{display:flex;margin-bottom:16px}.stocks-hero{align-items:center;background:linear-gradient(140deg,#22c55e2e,#0071e31f);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);gap:16px;justify-content:space-between;padding:14px 16px}.stocks-hero-title{font-size:18px;font-weight:700}.stocks-hero-sub{color:var(--color-muted);font-size:13px;margin-top:4px}.stocks-kpis{display:flex;flex-wrap:wrap;gap:8px}.stocks-kpi{background:var(--color-surface);border-radius:999px;font-size:12px;font-weight:600;padding:6px 10px}.stocks-tabs .tab-btn{font-size:12px;letter-spacing:.08em;text-transform:uppercase}.stocks-ticker{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;display:flex;font-size:12px;gap:10px;margin-bottom:12px;padding:8px 12px}.stocks-ticker-label{color:var(--color-muted);font-weight:700;letter-spacing:.12em;text-transform:uppercase}.stocks-ticker-items{color:var(--color-text);display:flex;flex-wrap:wrap;gap:12px}.stocks-ticker-item{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;padding:4px 8px}.stocks-ticker-up{color:#22c55e}.stocks-ticker-down{color:#ef4444}.stocks-section{grid-gap:16px;display:grid;gap:16px}.stocks-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:12px}.stocks-summary{display:flex;flex-wrap:wrap;gap:8px}.stocks-summary-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.stocks-alloc-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:1.2fr 1fr 70px;margin-bottom:10px}.stocks-alloc-label{display:flex;flex-direction:column;gap:2px}.stocks-alloc-name{font-size:13px;font-weight:700}.stocks-alloc-meta{color:var(--color-muted);font-size:11px}.stocks-alloc-bar{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;height:8px;overflow:hidden}.stocks-alloc-bar span{background:linear-gradient(90deg,#22c55e,#1f6feb);display:block;height:100%}.stocks-target-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:12px;min-height:34px;padding:6px 8px;width:70px}.stocks-target-meta{margin-bottom:10px}.stocks-empty,.stocks-target-meta{color:var(--color-muted);font-size:12px}.stocks-trigger-row{align-items:center;grid-template-columns:140px 1fr auto auto;margin-bottom:8px}.stocks-alert-list,.stocks-trigger-row{grid-gap:10px;display:grid;gap:10px}.stocks-alert-item{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:10px;padding:10px 12px}.stocks-alert-title{font-size:13px;font-weight:700}.stocks-alert-meta{margin-top:4px}.stocks-alert-meta,.stocks-muted{color:var(--color-muted);font-size:12px}.stocks-risk-list{grid-gap:10px;display:grid;gap:10px}.stocks-risk-item{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:10px;padding:10px 12px}.stocks-risk-title{font-size:13px;font-weight:700}.stocks-risk-meta{color:var(--color-muted);font-size:12px;margin-top:4px}.stocks-risk-high{border-color:#ef444499}.stocks-risk-medium{border-color:#fb923c99}.stocks-risk-low{border-color:#3b82f699}.stocks-analytics-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stocks-stat-card{grid-gap:6px;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;display:grid;gap:6px;padding:12px}.stocks-stat-label{color:var(--color-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.stocks-stat-value{font-size:18px;font-weight:700}.stocks-stat-sub{color:var(--color-muted);font-size:12px}.stocks-journal-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.stocks-journal-meta{color:var(--color-muted);font-size:12px;margin-top:8px}.stocks-journal-list{grid-gap:12px;display:grid;gap:12px}.stocks-journal-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;padding:14px}.stocks-journal-header{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.stocks-journal-title{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.stocks-journal-symbol{font-weight:700}.stocks-journal-name{color:var(--color-muted);font-size:12px}.stocks-journal-header-meta,.stocks-journal-stats{color:var(--color-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:12px}.stocks-journal-stats{margin-top:8px}.stocks-journal-note{margin-top:10px}.stocks-journal-note textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);font-size:12px;min-height:90px;padding:10px;width:100%}.stocks-journal-note-text{font-size:13px;white-space:pre-wrap}.stocks-journal-note-empty{color:var(--color-muted);font-size:12px;font-style:italic}@media (max-width:768px){.stocks-trigger-row{align-items:stretch;grid-template-columns:1fr}}.stocks-table thead th{color:var(--color-muted);font-weight:700}.stocks-badge,.stocks-table tbody tr:hover td,.stocks-table thead th{background:var(--color-surface-subtle)}.stocks-badge{align-items:center;border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-text);display:inline-flex;font-size:12px;gap:6px;padding:4px 10px}.stocks-good{border-color:#22c55e66;color:#22c55e}.stocks-bad{border-color:#ef444466;color:#ef4444}.stocks-alert-buy{border-color:#22c55e80;color:#22c55e}.stocks-alert-sell{border-color:#ef444480;color:#ef4444}.stocks-alert-ok{border-color:var(--color-border-soft);color:var(--color-muted)}.stocks-inline-form{background:var(--color-surface-subtle);border-radius:var(--radius-sm);max-width:900px;padding:12px}.stocks-totals-row td{font-weight:600}.stocks-pill,.stocks-totals-row td{background:var(--color-surface-subtle)}.stocks-pill{align-items:center;border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-text);display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.02em;padding:3px 10px;text-transform:uppercase}.stocks-pill-buy{border-color:#22c55e73;color:#22c55e}.stocks-pill-sell{border-color:#ef444473;color:#ef4444}.stocks-pill-open{border-color:#22c55e66;color:#22c55e}.stocks-pill-partial{border-color:#d9770680;color:#d97706}.stocks-pill-closed{border-color:#94a3b899;color:#94a3b8}@media (max-width:768px){.stocks-hero{align-items:flex-start;flex-direction:column}}.stocks-kpi{align-items:flex-start;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:2px;min-width:100px;padding:4px 10px}.stocks-kpi-label{color:var(--color-muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.stocks-kpi-value{color:var(--color-text);font-size:14px;font-weight:700}.stocks-kpi-green .stocks-kpi-value{color:#22c55e}.stocks-kpi-red .stocks-kpi-value{color:#ef4444}.stocks-kpi-ghost{animation:pulse 1.5s ease-in-out infinite;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);height:46px;min-width:100px}@keyframes pulse{0%,to{opacity:.6}50%{opacity:.3}}.stocks-trigger-help{align-items:center;color:var(--color-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:8px;margin-bottom:12px}.stocks-trigger-eg{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-xs);color:var(--color-text);font-family:monospace;font-size:11px;padding:2px 8px;white-space:nowrap}.stocks-alert-header{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;margin-bottom:4px}.stocks-alert-time{color:var(--color-muted);flex-shrink:0;font-size:11px;white-space:nowrap}.news-toolbar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.news-toolbar-right{align-items:center;display:flex;flex-shrink:0;gap:10px}.news-refresh-time{color:var(--color-muted);font-size:11px}.news-sym-row{display:flex;flex:1 1;flex-wrap:wrap;gap:6px}.news-sym-btn{align-items:center;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);cursor:pointer;display:inline-flex;font-family:inherit;font-size:12px;font-weight:600;gap:5px;padding:4px 12px;transition:all .12s}.news-sym-btn:hover{border-color:var(--color-border);color:var(--color-text)}.news-sym-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.news-sym-count{background:#ffffff40;border-radius:999px;font-size:10px;padding:0 6px}.news-sym-btn:not(.active) .news-sym-count{background:var(--color-border-soft);color:var(--color-muted)}.news-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.news-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);color:inherit;display:flex;flex-direction:column;gap:8px;padding:16px;text-decoration:none;transition:box-shadow .15s,transform .15s,border-color .15s}.news-card:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.news-card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.news-symbol-badge{background:var(--color-primary-subtle);border-radius:999px;color:var(--color-primary);font-size:11px;font-weight:700;padding:2px 8px}.news-date,.news-source{color:var(--color-muted);font-size:11px}.news-date{margin-left:auto}.news-card-title{color:var(--color-text);font-size:13px;font-weight:600;line-height:1.4}.news-card-snippet{color:var(--color-muted);font-size:12px;line-height:1.5}.news-card-cta{color:var(--color-primary);font-size:11px;font-weight:600;margin-top:auto}.news-loading{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.news-loading-item{align-items:center;display:flex;gap:10px}.news-loading-badge{color:var(--color-muted);font-size:11px;font-weight:700;min-width:60px}.news-loading-bar{animation:pulse 1.5s ease-in-out infinite;background:var(--color-surface-subtle);border-radius:999px;flex:1 1;height:6px}.news-empty{padding:48px 24px;text-align:center}.news-empty-icon{font-size:36px;margin-bottom:12px}.news-empty-title{font-size:16px;font-weight:600;margin-bottom:6px}.news-empty-sub{color:var(--color-muted);font-size:13px}.stocks-error{color:var(--color-danger);font-size:13px;padding:8px 0}.guide-snapshot{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.guide-snap-item{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);min-width:130px;padding:14px 18px}.guide-snap-label{color:var(--color-muted);font-size:10px;font-weight:700;letter-spacing:.07em;margin-bottom:4px;text-transform:uppercase}.guide-snap-value{color:var(--color-text);font-size:18px;font-weight:700}.guide-snap-pct{font-size:12px;font-weight:500;opacity:.75}.guide-snap-green .guide-snap-value{color:#22c55e}.guide-snap-red .guide-snap-value{color:#ef4444}.guide-advice{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);margin-bottom:20px;padding:18px}.guide-advice-title{font-size:14px;font-weight:700;margin-bottom:14px}.guide-alert{border-left:3px solid;border-radius:var(--radius-sm);margin-bottom:10px;padding:12px 14px}.guide-alert-buy{background:#22c55e0d;border-left-color:#22c55e}.guide-alert-sell{background:#ef44440d;border-left-color:#ef4444}.guide-alert-high{background:#f973160d;border-left-color:#f97316}.guide-alert-medium{background:#f59e0b0d;border-left-color:#f59e0b}.guide-alert-low{background:var(--color-surface-subtle);border-left-color:var(--color-border)}.guide-alert-head{font-size:13px;font-weight:700;margin-bottom:4px}.guide-alert-body{color:var(--color-muted);font-size:13px;line-height:1.5}.guide-onboard{border:1px dashed var(--color-border);border-radius:var(--radius-md);margin-bottom:20px;padding:32px 24px;text-align:center}.guide-onboard-icon{font-size:36px;margin-bottom:10px}.guide-onboard-title{font-size:15px;font-weight:700;margin-bottom:6px}.guide-onboard-sub{color:var(--color-muted);font-size:13px;line-height:1.55;margin:0 auto;max-width:400px}.guide-learn-head{align-items:center;display:flex;flex-wrap:wrap;font-size:14px;font-weight:700;gap:10px;justify-content:space-between;margin-bottom:12px}.guide-tag-row{display:flex;flex-wrap:wrap;gap:5px}.guide-tag-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);cursor:pointer;font-family:inherit;font-size:11px;font-weight:600;padding:3px 10px;transition:all .12s}.guide-tag-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.guide-tag-btn:hover:not(.active){border-color:var(--color-border);color:var(--color-text)}.guide-concepts{display:flex;flex-direction:column;gap:6px}.guide-concept{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);cursor:pointer;overflow:hidden;transition:border-color .12s}.guide-concept:hover{border-color:var(--color-border)}.guide-concept-open{border-color:var(--color-primary)}.guide-concept-head{align-items:center;display:flex;gap:10px;justify-content:space-between;padding:12px 14px}.guide-concept-title{color:var(--color-text);font-size:13px;font-weight:600}.guide-concept-right{align-items:center;display:flex;flex-shrink:0;gap:8px}.guide-concept-toggle{color:var(--color-muted);font-size:16px;font-weight:700;line-height:1}.guide-concept-body{border-top:1px solid var(--color-border-soft);color:var(--color-muted);font-size:13px;line-height:1.65;padding:12px 14px 14px}.guide-concept-tag{border-radius:999px;font-size:10px;font-weight:700;padding:2px 7px;text-transform:uppercase}.guide-ctag-blue{background:#3b82f61f;color:#3b82f6}.guide-ctag-green{background:#22c55e1f;color:#22c55e}.guide-ctag-indigo{background:#6366f11f;color:#818cf8}.guide-ctag-purple{background:#a855f71f;color:#a855f7}.guide-ctag-red{background:#ef44441f;color:#ef4444}.guide-ctag-orange{background:#f973161f;color:#f97316}.guide-ctag-teal{background:#14b8a61f;color:#14b8a6}.fp-panel{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;margin-bottom:20px;padding:18px}.fp-title{font-size:14px;font-weight:700;margin:0 0 14px}.fp-loading{color:var(--color-muted);font-size:13px;padding:8px 0}.fp-stats{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.fp-stat{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:8px;flex:1 1;min-width:100px;padding:10px 12px}.fp-stat-accent{border-color:#2563eb}.fp-stat-value{font-size:16px;font-weight:700}.fp-stat-accent .fp-stat-value{color:#2563eb}.fp-stat-label{color:var(--color-muted);font-size:11px;margin-top:2px;text-transform:uppercase}.fp-progress-wrap{margin-bottom:14px}.fp-progress-label{color:var(--color-muted);display:flex;font-size:11px;justify-content:space-between;margin-bottom:4px}.fp-progress-bar{background:var(--color-surface-subtle);border-radius:3px;height:6px;overflow:hidden}.fp-progress-fill{background:linear-gradient(90deg,#2563eb,#7c3aed);border-radius:3px;height:100%}.fp-upcoming-title{color:var(--color-muted);font-size:12px;font-weight:700;margin-bottom:8px;text-transform:uppercase}.fp-payment-row{align-items:center;border-top:1px solid var(--color-border-soft);display:flex;font-size:13px;gap:10px;padding:6px 0}.fp-payment-name{flex:1 1}.fp-payment-meta{color:var(--color-muted);font-size:12px}.fp-payment-amount{font-weight:600}.spending-page{padding:32px}.spending-header{align-items:baseline;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.spending-header select{border:1px solid #cbd5f5;border-radius:10px;padding:8px 12px}.spending-muted{color:#64748b}.spending-metrics{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:20px}.spending-metric{background:#0f172a;border-radius:14px;color:#fff;padding:16px}.spending-metric-label{font-size:.85rem;opacity:.8}.spending-metric-value{font-size:1.4rem;margin-top:6px}.spending-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.spending-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 12px 24px #0f172a0f;padding:18px}.category-chart{grid-gap:10px;display:grid;gap:10px}.category-row{grid-gap:10px;align-items:center;display:grid;font-size:.9rem;gap:10px;grid-template-columns:120px 1fr 80px}.category-bar{background:#e2e8f0;border-radius:999px;height:10px;overflow:hidden;position:relative}.category-bar span{background:#2563eb;inset:0;position:absolute}.category-value{text-align:right}.trend-chart{height:240px;width:100%}@media (max-width:720px){.category-row{grid-template-columns:1fr}.category-value{text-align:left}}.expense-tracker-loading{text-align:center}.expense-tracker-dashboard{padding:30px}.expense-tracker-balance-wrap{margin-bottom:20px;text-align:center}.expense-tracker-balance-label{color:var(--color-muted);font-size:14px}.expense-tracker-balance-value{font-size:36px;font-weight:700}.expense-tracker-error{color:#d97706;margin-bottom:15px;text-align:center}.expense-tracker-actions{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:600px}.expense-tracker-action-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;padding:15px}.planner-list-container{margin:auto;max-width:920px}.planner-list-add-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:8px;cursor:pointer;margin-right:8px;padding:6px 12px}.planner-list-next-day-btn{background:#0000}.planner-list-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.planner-list-search-wrapper{position:relative;width:260px}.planner-list-search-input{border:1px solid var(--color-border);border-radius:6px;box-sizing:border-box;font-size:14px;height:36px;padding:0 32px 0 12px;width:100%}.planner-list-clear-btn{background:#0000;border:none;color:var(--color-muted);cursor:pointer;position:absolute;right:6px;top:50%;transform:translateY(-50%)}.planner-list-select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-size:14px;height:36px;padding:0 8px;width:150px}.planner-list-table{border-collapse:collapse;font-size:14px;width:100%}.planner-list-load-more{color:var(--color-muted);font-size:13px;margin:16px 0 8px;text-align:center}.planner-list-header-row{color:var(--color-muted);font-size:12px;text-align:left;text-transform:uppercase}.planner-list-header-row,.planner-list-row{border-bottom:1px solid var(--color-border-soft)}.planner-list-row{height:44px}.planner-list-row-overdue{border-left:4px solid #ef4444}.planner-list-title-cell{font-weight:500}.planner-list-highlight{background:#fde68a;border-radius:2px;padding:0 2px}.planner-list-priority-badge{border-radius:6px;color:#fff;font-size:12px;font-weight:500;padding:3px 10px}.planner-list-priority-critical{background:#ef4444}.planner-list-priority-high{background:#f97316}.planner-list-priority-medium{background:#eab308}.planner-list-priority-low{background:var(--color-muted)}.planner-list-priority-someday{background:#94a3b8}.planner-form-wrap{background:var(--color-surface);border-radius:16px;box-shadow:0 10px 25px #00000014;display:flex;flex-direction:column;gap:14px;margin:0 auto;max-width:520px;padding:24px}.planner-form-field-wrap{display:flex;flex-direction:column;gap:4px}.planner-form-label{color:var(--color-muted);font-size:12px;font-weight:600}.next-day-wrap{margin:0 auto;max-width:1160px;padding:4px 6px 18px}.next-day-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.next-day-head h2{margin:0 0 4px}.next-day-head p{color:var(--color-muted);margin:0}.next-day-head-actions{display:flex;gap:10px}.next-day-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.next-day-panel{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:14px;padding:14px}.next-day-panel h3{margin:0 0 12px}.next-day-muted{color:var(--color-muted);font-size:13px;margin:0 0 10px}.next-day-section+.next-day-section{margin-top:14px}.next-day-section-title{color:var(--color-muted);font-size:13px;margin-bottom:8px}.next-day-chip{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:10px;padding:9px 10px}.next-day-chip+.next-day-chip{margin-top:8px}.next-day-chip-title{font-size:14px;font-weight:600}.next-day-chip-meta{color:var(--color-muted);font-size:12px;margin-top:4px}.next-day-toolbar{display:flex;gap:8px;margin-bottom:10px}.next-day-agenda-inputs{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 130px auto;margin-bottom:12px}.next-day-slot-select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);height:38px;padding:0 8px}.next-day-slot-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.next-day-slot-card{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:10px;min-height:96px;padding:10px}.next-day-slot-title{font-weight:600;margin-bottom:8px}.next-day-draft-item{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:8px;display:flex;font-size:13px;gap:8px;justify-content:space-between;padding:6px 8px}.next-day-draft-item+.next-day-draft-item{margin-top:6px}.next-day-draft-item button{background:#0000;border:1px solid var(--color-border-soft);border-radius:6px;cursor:pointer;height:24px;width:24px}.next-day-search{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);flex:1 1;height:38px;padding:0 10px}.next-day-list-summary{color:var(--color-muted);font-size:12px;margin-bottom:10px}.next-day-candidate-list{max-height:500px;overflow:auto}.next-day-candidate{align-items:flex-start;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:10px}.next-day-candidate+.next-day-candidate{margin-top:8px}.next-day-candidate.selected{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.next-day-candidate-content{min-width:0}.next-day-candidate-title{font-weight:600;margin-bottom:6px}.next-day-candidate-meta{display:flex;flex-wrap:wrap;gap:6px}.next-day-candidate-meta span{border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);font-size:11px;padding:2px 8px}.next-day-footer{margin-top:12px}.next-day-save-wrap{margin-top:14px}.next-day-planned-list{max-height:220px;overflow:auto}.next-day-planned-list .next-day-chip+.next-day-chip{margin-top:8px}.planned-section{margin-top:14px}.next-day-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:8px;color:var(--color-text);cursor:pointer;height:36px;padding:0 12px}.next-day-btn:disabled{cursor:not-allowed;opacity:.7}.next-day-btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:600;width:100%}.next-day-btn-secondary{background:#0f766e;border-color:#0f766e;color:#fff;font-weight:600;width:100%}.next-day-btn-ghost{background:#0000}.next-day-empty{color:var(--color-muted);font-size:13px;margin:0}.next-day-error{color:#ef4444;margin:0 0 10px}.next-day-success{color:#16a34a;margin:0 0 10px}@media (max-width:980px){.next-day-grid{grid-template-columns:1fr}.next-day-head{align-items:flex-start;flex-direction:column}.next-day-agenda-inputs,.next-day-slot-grid{grid-template-columns:1fr}}.payments-wrap{margin:0 auto;max-width:1180px}.payments-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.payments-head p{color:var(--color-muted);margin:0}.payments-head-actions{display:flex;gap:8px}.payments-filters{margin-bottom:12px}.payments-filters label{align-items:center;color:var(--color-muted);display:inline-flex;gap:8px}.payments-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.payments-panel{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;padding:12px}.payments-panel h3{margin:0 0 10px}.payment-card{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:10px;padding:10px}.payment-card+.payment-card{margin-top:8px}.payment-card.risk{border-color:#dc2626}.payment-card-top{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.payment-title{font-weight:600}.payment-meta{color:var(--color-muted);font-size:12px}.payment-risk-pill{background:#dc2626;border-radius:999px;color:#fff;font-size:11px;font-weight:700;padding:3px 8px}.payment-actions-grid{grid-gap:8px;display:grid;gap:8px;margin-top:10px}.payment-inline-edit{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr auto}.btn-paid{background:#166534;border-color:#166534;color:#fff}.payments-error{color:#dc2626}.payments-success{color:#16a34a}.payments-muted{color:var(--color-muted)}@media (max-width:980px){.payments-grid{grid-template-columns:1fr}.payments-head{flex-direction:column}}.ai-widget-root{bottom:16px;left:16px;position:fixed;z-index:1200}.ai-widget-fab{background:var(--color-primary);border:1px solid var(--color-border-soft);border-radius:999px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-weight:700;height:52px;width:52px}.ai-widget-panel{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:14px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:min(500px,calc(100vh - 130px));margin-bottom:10px;overflow:hidden;width:min(360px,calc(100vw - 26px))}.ai-widget-head{align-items:center;border-bottom:1px solid var(--color-border-soft);display:flex;height:44px;justify-content:space-between;padding:0 12px}.ai-widget-close{background:#0000;border:none;border-radius:999px;color:var(--color-muted);cursor:pointer;height:28px;min-height:auto;padding:0;width:28px}.ai-widget-body{background:var(--color-surface-subtle);display:flex;flex:1 1;flex-direction:column;gap:8px;overflow:auto;padding:10px}.ai-widget-empty{color:var(--color-muted);font-size:13px}.ai-widget-msg-ai,.ai-widget-msg-user{border-radius:10px;font-size:13px;max-width:84%;padding:8px 10px;white-space:pre-wrap;word-break:break-word}.ai-widget-msg-user{align-self:flex-end;background:var(--color-primary);color:#fff}.ai-widget-msg-ai{align-self:flex-start;background:var(--color-surface);border:1px solid var(--color-border-soft)}.ai-widget-input-wrap{grid-gap:8px;border-top:1px solid var(--color-border-soft);display:grid;gap:8px;grid-template-columns:1fr auto;padding:8px}.ai-widget-input{max-height:100px;min-height:38px;resize:vertical}.ai-widget-send{min-width:64px}@media (max-width:768px){.ai-widget-root{bottom:10px;left:10px}}.calendar-page{background:linear-gradient(180deg,#0f172aeb,#0f172afa),repeating-linear-gradient(180deg,#94a3b814,#94a3b814 1px,#0f172a00 0,#0f172a00 44px);min-height:100%;padding:28px}.calendar-title{color:#e2e8f0;font-size:24px;font-weight:700;margin:0}.calendar-input,.calendar-select{background:#0f172a8c;border:1px solid #94a3b84d;border-radius:10px;color:#e2e8f0;font-size:13px;padding:8px 10px}.calendar-btn{background:#1f2937;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:10px 14px}.calendar-muted{color:#94a3b8;font-size:13px}.calendar-main{background:#0f172ab3;border:1px solid #94a3b833;border-radius:16px;box-shadow:0 18px 32px #02061766;padding:14px}.calendar-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:8px 6px 16px}.calendar-form-inline{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));width:100%}.calendar-filters{border-top:1px solid #94a3b81f;margin-top:6px;padding:14px 6px 6px}.calendar-filter-grid{grid-gap:12px;align-items:end;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.calendar-select-multi{min-height:84px}.calendar-filter-hint{margin-top:8px}.calendar-conflict-hint{color:#fca5a5;margin-top:6px}.calendar-slot-hint{color:#a7f3d0;margin-top:6px}.calendar-event-conflict{box-shadow:inset 0 0 0 2px #f87171e6}.calendar-modal-backdrop{align-items:flex-start;background:#020617a6;display:flex;inset:0;justify-content:center;padding:32px 18px;position:fixed;z-index:50}.calendar-modal{background:#0f172afa;border:1px solid #94a3b833;border-radius:14px;box-shadow:0 18px 50px #02061799;overflow:hidden;width:min(920px,100%)}.calendar-modal-header{align-items:center;border-bottom:1px solid #94a3b81f;display:flex;justify-content:space-between;padding:12px 14px}.calendar-modal-title{color:#e2e8f0;font-weight:800}.calendar-icon-btn{background:#0f172a99;border:1px solid #94a3b833;border-radius:8px;color:#e2e8f0;cursor:pointer;font-size:20px;height:34px;line-height:1;width:34px}.calendar-modal-body{padding:14px}.calendar-modal-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-textarea{min-height:90px;resize:vertical}.calendar-modal-actions{border-top:1px solid #94a3b81f;display:flex;gap:10px;padding:14px}.calendar-btn-danger{background:#7f1d1d}.calendar-detail-row{border-bottom:1px dashed #94a3b826;color:#e2e8f0;display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:8px 0}.calendar-detail-k{color:#94a3b8;font-size:11px;font-weight:700;text-transform:uppercase}.calendar-field-span{grid-column:1/-1}.calendar-attendees{background:#0f172a66;border:1px dashed #94a3b84d;border-radius:10px;display:flex;flex-wrap:wrap;gap:10px;padding:10px}.calendar-attendee-item{align-items:center;color:#e2e8f0;display:inline-flex;font-size:12px;gap:6px}.calendar-btn-secondary{background:#0000;border:1px solid #94a3b84d;color:#e2e8f0}.calendar-file-input{display:none}.calendar-field{display:flex;flex-direction:column;gap:6px}.calendar-field-inline{align-items:flex-start}.calendar-field-action{align-self:flex-end}.calendar-label{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.calendar-label-empty{opacity:0}.calendar-inline-toggle{align-items:center;background:#0f172a80;border:1px solid #94a3b833;border-radius:999px;color:#cbd5f5;display:inline-flex;font-size:12px;gap:6px;padding:6px 10px}@media (max-width:960px){.calendar-form-inline{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.calendar-modal-grid{grid-template-columns:1fr}}.search-page{color:#0b1220;display:flex;flex-direction:column;font-family:Space Grotesk,Segoe UI,sans-serif;gap:32px}.search-hero{background:radial-gradient(circle at 20% 20%,#ffe8c6,#0000 45%),radial-gradient(circle at 80% 10%,#c2f0ff,#0000 35%),linear-gradient(120deg,#f7f2ea,#f2f9ff);border-radius:28px;box-shadow:0 30px 60px #0f172a1f;overflow:hidden;padding:48px 48px 56px;position:relative}.search-hero:after{border:1px dashed #14263c26;border-radius:24px;content:"";inset:18px;pointer-events:none;position:absolute}.search-hero-inner{max-width:760px;position:relative;z-index:1}.search-eyebrow{color:#455166;font-size:12px;font-weight:600;letter-spacing:.18em;margin-bottom:12px;text-transform:uppercase}.search-hero h1{font-size:clamp(32px,5vw,48px);margin-bottom:12px}.search-subtitle{color:#334155;font-size:16px;margin-bottom:28px}.search-bar{grid-gap:16px;align-items:center;background:#fff;border:1px solid #0f172a14;border-radius:999px;box-shadow:0 10px 28px #0f172a1f;display:grid;gap:16px;grid-template-columns:auto 1fr auto;padding:12px 16px}.search-dot{background:linear-gradient(135deg,#ffb347,#fc3);border-radius:50%;box-shadow:0 0 0 6px #ffb34733;height:12px;width:12px}.search-input{background:#0000;border:none;font-size:16px;outline:none}.search-btn{background:#0b1220;border:none;border-radius:999px;color:#f8fafc;cursor:pointer;font-weight:600;padding:10px 20px;transition:transform .15s ease,box-shadow .15s ease}.search-btn:disabled{cursor:not-allowed;opacity:.6}.search-btn:not(:disabled):hover{box-shadow:0 12px 20px #0f172a33;transform:translateY(-1px)}.search-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.search-mode{background:#f8fafc;border:1px solid #0f172a1f;border-radius:999px;display:flex;gap:8px;padding:6px}.search-mode-btn{background:#0000;border:none;border-radius:999px;color:#475569;cursor:pointer;font-weight:600;padding:6px 12px}.search-mode-btn.active{background:#0b1220;color:#f8fafc}.search-toggle{background:#fff;border:1px solid #0f172a33;border-radius:999px;cursor:pointer;font-weight:600;padding:8px 16px}.search-toggle.active{background:#0b1220;border-color:#0b1220;color:#fff}.search-toggle:disabled{cursor:not-allowed;opacity:.6}.assistant-panel{display:flex;flex-direction:column;gap:16px}.assistant-empty{background:#f8fafc;border-radius:12px;color:#475569;padding:12px 16px}.assistant-thread{display:flex;flex-direction:column;gap:10px}.assistant-msg{border-radius:14px;max-width:720px;padding:10px 14px}.assistant-msg-user{align-self:flex-end;background:#0b1220;color:#f8fafc}.assistant-msg-ai{align-self:flex-start;background:#eef2ff;color:#1f2937}.assistant-confirm,.assistant-form{background:#fff;border:1px solid #0f172a14;border-radius:16px;box-shadow:0 10px 24px #0f172a14;padding:16px}.assistant-confirm h3,.assistant-form h3{margin-bottom:12px}.assistant-preview{background:#f8fafc;border:1px solid #0f172a14;border-radius:12px;margin:12px 0 16px;padding:12px}.assistant-preview-title{font-weight:700;margin-bottom:8px}.assistant-preview-grid{grid-gap:6px;display:grid;gap:6px}.assistant-preview-row{color:#1f2937;display:flex;font-size:13px;gap:12px;justify-content:space-between}.assistant-field{display:flex;flex-direction:column;font-size:14px;gap:6px;margin-bottom:12px}.assistant-field input,.assistant-field select{border:1px solid #0f172a1f;border-radius:10px;padding:8px 10px}.assistant-actions{display:flex;gap:10px}.assistant-actions button{border:none;border-radius:999px;cursor:pointer;font-weight:600;padding:8px 16px}.assistant-confirm-btn{background:#0b1220;color:#f8fafc}.assistant-cancel-btn{background:#f1f5f9;color:#1f2937}.search-hint{color:#64748b;font-size:13px}.search-results{display:flex;flex-direction:column;gap:24px}.search-source-row{display:flex;flex-wrap:wrap;gap:10px}.search-source-pill{background:#f1f5f9;border-radius:999px;color:#1f2937;font-size:12px;font-weight:600;padding:6px 12px}.search-ai{background:#0b1220;border-radius:20px;box-shadow:0 20px 40px #0f172a33;color:#e2e8f0;padding:20px 24px}.search-ai h2{font-size:18px;margin-bottom:12px}.search-ai pre{font-family:IBM Plex Mono,Courier New,monospace;font-size:13px;line-height:1.6;margin:0;white-space:pre-wrap}.search-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.search-card{background:#fff;border:1px solid #0f172a14;border-radius:18px;box-shadow:0 12px 26px #0f172a14;display:flex;flex-direction:column;gap:8px;padding:16px}.search-card h3{font-size:16px;margin:0}.search-card p{color:#475569;font-size:14px;margin:0}.search-card-top{align-items:center;color:#64748b;display:flex;font-size:12px;justify-content:space-between}.search-card-source{font-weight:700;letter-spacing:.08em;text-transform:uppercase}.search-card-meta{color:#1f2937;display:flex;flex-wrap:wrap;font-size:12px;gap:6px}.search-card-meta span{background:#f8fafc;border-radius:8px;padding:4px 8px}.search-error{background:#fff1f2;border:1px solid #fecdd3;border-radius:12px;color:#9f1239;padding:12px 16px}.search-empty{color:#475569;padding:12px;text-align:center}@media (max-width:900px){.search-hero{padding:32px 24px 40px}.search-bar{border-radius:24px;gap:10px;grid-template-columns:1fr}.search-dot{display:none}.search-btn{width:100%}}.admin-page{background:linear-gradient(140deg,#0f172a,#111827 55%,#0b1220);color:#e2e8f0;min-height:100vh;padding:96px 24px 40px}.admin-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.admin-subtitle{color:#94a3b8;margin-top:6px}.admin-status{background:#1f2937;border:1px solid #334155;border-radius:999px;font-size:12px;padding:8px 16px}.admin-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.admin-card{background:#0f172acc;border:1px solid #1e293b;border-radius:16px;box-shadow:0 10px 30px #0f172a59;padding:16px}.admin-card h3{font-size:18px;margin:0 0 12px}.admin-row{align-items:center;display:flex;gap:8px;margin-bottom:12px}.admin-input{background:#0f172a;border:1px solid #1e293b;border-radius:8px;color:#e2e8f0;flex:1 1;padding:8px 10px}.admin-btn{background:#2563eb;border:1px solid #2563eb;border-radius:8px;color:#f8fafc;cursor:pointer;font-size:13px;padding:8px 12px}.admin-btn.warning{background:#b45309;border-color:#b45309}.admin-btn.danger{background:#dc2626;border-color:#dc2626}.admin-user-list{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow:auto}.admin-user-item{align-items:center;background:#0f172ae6;border:1px solid #0000;border-radius:12px;color:#e2e8f0;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px}.admin-user-item.active{background:#1e40af33;border-color:#3b82f6}.admin-user-name{font-weight:600}.admin-user-meta{color:#94a3b8;font-size:12px}.admin-user-role{background:#1e293b;border-radius:999px;font-size:12px;padding:4px 8px}.admin-user-detail{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.admin-user-flags{display:flex;gap:8px}.flag{border-radius:999px;font-size:11px;padding:4px 10px;text-transform:uppercase}.flag.ok{background:#10b98133;border:1px solid #10b98180;color:#34d399}.flag.warn{background:#f43f5e33;border:1px solid #f43f5e80;color:#fb7185}.admin-metrics{grid-gap:8px;display:grid;font-size:13px;gap:8px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:12px}.admin-actions{flex-wrap:wrap}.admin-role{margin-top:10px}.admin-role select{background:#0f172a;border:1px solid #1e293b;border-radius:8px;color:#e2e8f0;padding:6px 8px}.admin-reset{background:#0f172a;border:1px solid #1e293b;border-radius:10px;margin-top:12px;padding:10px}.admin-health{display:flex;flex-direction:column;gap:8px}.admin-health-item{align-items:center;background:#0f172a;border:1px solid #1e293b;border-radius:10px;display:flex;justify-content:space-between;padding:8px 10px}.admin-audit-list,.admin-job-list{display:flex;flex-direction:column;gap:8px}.admin-audit-item,.admin-job-item{align-items:center;background:#0f172a;border:1px solid #1e293b;border-radius:10px;display:flex;justify-content:space-between;padding:10px}.admin-job-actions{display:flex;gap:8px}.admin-job-error{color:#fca5a5;font-size:12px;margin-top:4px}.admin-audit-action{font-weight:600}.admin-audit-date,.admin-audit-meta{color:#94a3b8;font-size:12px}.admin-settings{display:flex;flex-direction:column;gap:10px}.admin-setting-item{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:1fr 2fr auto}.admin-setting-key{color:#cbd5f5;font-size:13px}.admin-setting-value{color:#e2e8f0;font-size:13px}.admin-roles{grid-gap:12px;display:grid;gap:12px}.admin-role-block{background:#0f172a;border:1px solid #1e293b;border-radius:12px;padding:10px}.admin-role-title{font-weight:600;margin-bottom:8px}.admin-role-perms{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.admin-perm{align-items:center;display:flex;font-size:12px;gap:6px}.admin-perm.disabled{opacity:.6}@media (max-width:768px){.admin-header{align-items:flex-start;flex-direction:column;gap:12px}.admin-setting-item{grid-template-columns:1fr}}.protected-route-loading{margin-top:50px;text-align:center}.login-page{align-items:center;display:flex;height:100vh;justify-content:center}.login-card{width:380px}.login-card-header{margin-bottom:15px;text-align:center}.login-subtitle{color:var(--color-muted)}.login-form-grid{grid-template-columns:1fr}.login-error{color:#ef4444;font-size:14px}.login-footer{margin-top:15px;text-align:center}.login-link{color:var(--color-primary);cursor:pointer;font-size:14px}.login-muted{color:var(--color-muted);font-size:14px}.signup-page{align-items:center;display:flex;height:100vh;justify-content:center}.signup-card{width:450px}.signup-card-header{margin-bottom:15px;text-align:center}.signup-subtitle{color:var(--color-muted)}.signup-submit-wrap{text-align:right}.signup-footer{font-size:14px;margin-top:10px;text-align:center}.signup-link{color:var(--color-primary);cursor:pointer}.signup-error{color:#fda4af;font-size:12px;margin-top:6px}.signup-input-error{border-color:#ef4444}.forgot-password-form{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px;margin:100px auto;max-width:380px;padding:24px}.forgot-password-btn,.forgot-password-input{width:100%}.reset-password-page{align-items:center;display:flex;height:100vh;justify-content:center}.reset-password-card{width:380px}.reset-password-header{margin-bottom:15px;text-align:center}.reset-password-subtitle{color:var(--color-muted)}.reset-password-form-grid{grid-template-columns:1fr}.nl-wrap{margin:0 auto;max-width:1100px;padding:0 0 48px}.nl-header{align-items:flex-start;border-bottom:1px solid var(--color-border-soft);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px;padding-bottom:20px}.nl-title{font-size:24px;font-weight:700;margin:0}.nl-count{color:var(--color-muted);display:block;font-size:12px;margin-top:3px}.nl-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.nl-toggle{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;display:flex;gap:4px;padding:4px}.nl-toggle-btn{background:#0000;border:none;border-radius:999px;color:var(--color-muted);cursor:pointer;font-size:12px;font-weight:600;padding:4px 12px}.nl-toggle-btn.active{background:var(--color-primary);color:#fff}.nl-journal-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-text);padding:7px 14px}.nl-journal-btn,.nl-new-btn{cursor:pointer;font-size:13px}.nl-new-btn{background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;font-weight:600;padding:7px 16px}.nl-quick-create{display:flex;gap:8px;margin-bottom:16px}.nl-quick-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);flex:1 1;font-family:inherit;font-size:14px;min-width:0;padding:8px 12px}.nl-quick-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #4f8ef733;outline:none}.nl-quick-btn{background:var(--color-surface-subtle);border:none;border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-size:13px;font-weight:600;padding:8px 18px;white-space:nowrap}.nl-quick-btn:hover{background:var(--color-surface-hover)}.nl-quick-btn:disabled{cursor:not-allowed;opacity:.5}.nl-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.nl-search{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);flex:1 1;font-family:inherit;font-size:13px;max-width:360px;min-width:180px;padding:7px 12px}.nl-search:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #4f8ef72e;outline:none}.nl-select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-family:inherit;font-size:13px;padding:7px 12px}.nl-tags-row{-webkit-overflow-scrolling:touch;display:flex;flex-wrap:nowrap;gap:6px;margin-bottom:18px;overflow-x:auto;padding-bottom:4px;scrollbar-color:var(--color-border-soft) #0000;scrollbar-width:thin}.nl-tags-row::-webkit-scrollbar{height:3px}.nl-tags-row::-webkit-scrollbar-track{background:#0000}.nl-tags-row::-webkit-scrollbar-thumb{background:var(--color-border-soft);border-radius:999px}.nl-tag{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);cursor:pointer;flex-shrink:0;font-family:inherit;font-size:11px;font-weight:600;padding:4px 11px;transition:all .12s;white-space:nowrap}.nl-tag.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.nl-tag:hover:not(.active){border-color:var(--color-border);color:var(--color-text)}.nl-grid{grid-gap:14px;align-items:start;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));min-width:0}.nl-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;gap:8px;min-width:0;overflow:hidden;padding:15px;transition:box-shadow .15s,transform .15s,border-color .15s;word-break:break-word}.nl-card:hover{border-color:var(--color-border);box-shadow:var(--shadow-md);transform:translateY(-1px)}.nl-card-pinned{border-color:var(--color-primary)}.nl-card-top{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;min-width:0}.nl-card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-text);display:-webkit-box;flex:1 1;font-size:14px;font-weight:600;line-height:1.4;min-width:0;overflow:hidden}.nl-card-badge{border-radius:999px;flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.05em;padding:2px 8px;text-transform:uppercase}.nl-card-flags{display:flex;flex-wrap:wrap;gap:4px}.nl-flag{font-size:12px;opacity:.85}.nl-card-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-muted);display:-webkit-box;font-size:12px;line-height:1.5;margin:0;max-height:40px;overflow:hidden}.nl-card-tags{display:flex;flex-wrap:wrap;gap:4px}.nl-card-tag{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);font-size:10px;max-width:110px;overflow:hidden;padding:2px 7px;text-overflow:ellipsis;white-space:nowrap}.nl-card-tag-more{opacity:.7}.nl-card-footer{align-items:center;border-top:1px solid var(--color-border-soft);display:flex;justify-content:space-between;margin-top:4px;padding-top:8px}.nl-card-date{color:var(--color-muted);font-size:11px}.nl-card-actions{align-items:center;display:flex;gap:4px;position:relative}.nl-card-edit-btn{background:#0000;border:1px solid var(--color-border-soft);border-radius:var(--radius-xs);color:var(--color-primary);cursor:pointer;font-size:11px;font-weight:600;padding:3px 9px}.nl-card-edit-btn:hover{background:var(--color-surface-subtle)}.nl-card-menu-btn{background:#0000;border:1px solid var(--color-border-soft);border-radius:var(--radius-xs);color:var(--color-muted);cursor:pointer;font-size:14px;line-height:1;padding:3px 7px}.nl-card-menu-btn:hover{background:var(--color-surface-subtle);color:var(--color-text)}.nl-card-menu{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);bottom:calc(100% + 4px);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:2px;min-width:130px;padding:5px;position:absolute;right:0;z-index:300}.nl-card-menu button{background:#0000;border:none;border-radius:var(--radius-xs);color:var(--color-text);cursor:pointer;display:block;font-size:13px;padding:6px 10px;text-align:left;width:100%}.nl-card-menu button:hover{background:var(--color-surface-subtle)}.nl-card-menu-danger{color:var(--color-danger)!important}.nl-footer{padding:28px 0 8px;text-align:center}.nl-loading{font-size:13px}.nl-end,.nl-loading{color:var(--color-muted)}.nl-end{font-size:12px}.nl-empty{align-items:center;color:var(--color-muted);display:flex;flex-direction:column;font-size:14px;gap:14px;padding:48px 0}@media (max-width:600px){.nl-grid{grid-template-columns:1fr}.nl-search{max-width:100%}}.nl-badge-info{background:#6366f126;color:#818cf8}.nl-badge-reminder{background:#fb923c26;color:#fb923c}.nl-badge-warning{background:#f8717126;color:#f87171}.nl-badge-template{background:#34d39926;color:#34d399}.nl-badge-default{background:var(--color-surface-subtle);color:var(--color-muted)}.note-editor{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);box-sizing:border-box;max-width:100%;min-width:0;overflow:hidden;width:100%}.note-editor-toolbar{background:var(--color-surface-subtle);border-bottom:1px solid var(--color-border-soft);display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px}.note-editor-group{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.note-editor-btn,.note-editor-select{border-radius:var(--radius-xs);font-family:inherit;font-size:12px}.note-editor-btn{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;font-weight:600;padding:5px 9px;transition:background .1s,border-color .1s}.note-editor-btn:hover{background:var(--color-surface-hover);border-color:var(--color-border)}.note-editor-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.note-editor-btn:disabled{cursor:not-allowed;opacity:.4}.note-editor-select{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;padding:5px 9px}.note-editor-surface{background:var(--color-surface);height:520px;overflow-x:hidden;overflow-y:auto;padding:18px 22px 24px;scrollbar-color:var(--color-border-soft) #0000;scrollbar-width:thin}.note-editor-surface,.note-editor-surface .ProseMirror,.note-editor-surface .tiptap,.note-editor-surface>*,.note-editor-surface>*>*{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.note-editor .ProseMirror{color:var(--color-text);font-family:Literata,serif;font-size:16px;line-height:1.75;min-height:100%;outline:none;overflow-wrap:break-word;word-break:break-word}.note-editor .ProseMirror p.is-editor-empty:first-child:before{color:var(--color-muted);content:attr(data-placeholder);float:left;height:0;pointer-events:none}.note-editor h1,.note-editor h2,.note-editor h3{color:var(--color-text);font-family:Space Grotesk,sans-serif;font-weight:700}.note-editor h1{font-size:28px}.note-editor h2{font-size:22px}.note-editor h3{font-size:18px}.note-editor blockquote{background:var(--color-primary-subtle);border-left:3px solid var(--color-primary);border-radius:0 var(--radius-xs) var(--radius-xs) 0;margin:14px 0;padding:8px 14px}.note-editor code{border:1px solid var(--color-border-soft);border-radius:4px;font-size:13px;padding:1px 5px}.note-editor code,.note-editor pre{background:var(--color-surface-subtle)}.note-editor pre{border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);overflow-x:auto;padding:12px 16px}.note-editor pre code{background:none;border:none;padding:0}.note-editor .tableWrapper{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;width:100%}.note-editor table{border-collapse:collapse;min-width:100%;table-layout:fixed;width:-webkit-max-content;width:max-content}.note-editor td,.note-editor th{border:1px solid var(--color-border-soft);color:var(--color-text);max-width:240px;min-width:140px;overflow-wrap:break-word;padding:8px 10px;text-align:left;white-space:normal;word-break:break-word}.note-editor th{background:var(--color-surface-subtle);font-weight:600}.note-editor ol,.note-editor ul{margin:8px 0;padding-left:22px}.note-editor li{margin:4px 0}.note-editor a{color:var(--color-primary);text-decoration:underline}@media (max-width:768px){.note-editor-surface{height:380px}.note-editor td,.note-editor th{min-width:120px}}.ngp-panel{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:10px;margin-top:16px;padding:14px}.ngp-title{color:var(--color-muted);font-size:12px;font-weight:700;margin:0 0 10px;text-transform:uppercase}.ngp-svg{display:block;margin:0 auto 12px;max-width:280px;width:100%}.ngp-section{margin-bottom:12px}.ngp-section-label{color:var(--color-muted);font-size:11px;font-weight:600;margin-bottom:6px;text-transform:uppercase}.ngp-link-row{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:4px 0}.ngp-link-title{background:#0000;border:none;color:#2563eb;color:var(--color-primary,#2563eb);cursor:pointer;font-size:13px;padding:0;text-align:left}.ngp-link-title:hover{text-decoration:underline}.ngp-remove{background:#0000;border:none;color:var(--color-muted);cursor:pointer;font-size:16px;padding:0}.ngp-add-row{margin-bottom:12px;position:relative}.ngp-search{border:1px solid var(--color-border);border-radius:6px;box-sizing:border-box;font-size:13px;padding:6px 10px;width:100%}.ngp-search,.ngp-suggestions{background:var(--color-surface)}.ngp-suggestions{border:1px solid var(--color-border-soft);border-radius:6px;box-shadow:0 4px 12px #0000001a;left:0;overflow:hidden;position:absolute;right:0;top:100%;z-index:200}.ngp-suggestion{background:#0000;border:none;cursor:pointer;display:block;font-size:13px;padding:8px 12px;text-align:left;width:100%}.ngp-suggestion:hover{background:var(--color-surface-subtle)}.nhp-panel{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);margin-top:16px;overflow:hidden}.nhp-title{background:var(--color-surface-subtle);border-bottom:1px solid var(--color-border-soft);color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.05em;padding:10px 14px;text-transform:uppercase}.nhp-empty,.nhp-loading{color:var(--color-muted);font-size:13px;padding:14px}.nhp-list{display:flex;flex-direction:column}.nhp-version{border-bottom:1px solid var(--color-border-soft)}.nhp-version:last-child{border-bottom:none}.nhp-version-header{align-items:center;background:var(--color-surface);cursor:pointer;display:flex;justify-content:space-between;padding:10px 14px;transition:background .12s}.nhp-version-header:hover{background:var(--color-surface-subtle)}.nhp-version-meta{align-items:center;display:flex;gap:10px}.nhp-version-num{color:var(--color-primary);font-size:12px;font-weight:700}.nhp-version-date{color:var(--color-muted);font-size:12px}.nhp-version-badge{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);font-size:10px;padding:2px 7px}.nhp-restore-btn{background:#0000;border:1px solid var(--color-border-soft);border-radius:var(--radius-xs);color:var(--color-primary);cursor:pointer;font-size:11px;font-weight:600;padding:3px 10px}.nhp-restore-btn:hover{background:var(--color-surface-subtle)}.nhp-restore-btn:disabled{cursor:not-allowed;opacity:.6}.nhp-version-preview{background:var(--color-surface-subtle);border-top:1px solid var(--color-border-soft);font-size:13px;padding:12px 14px}.nhp-version-content{color:var(--color-muted);margin-top:8px;max-height:200px;overflow-y:auto}.note-form-wrap{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);box-sizing:border-box;font-family:Space Grotesk,sans-serif;margin:20px auto 50px;max-width:940px;overflow:visible;padding:28px;position:relative;width:100%}.note-form-wrap h2{color:var(--color-text);font-size:26px;font-weight:800;letter-spacing:-.02em;margin:0 0 6px}.note-form-subtitle{color:var(--color-muted);font-size:13px;margin:0 0 20px}.note-form-grid{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:1fr}.note-form-main{display:flex;flex-direction:column;gap:14px}.note-form-main input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:inherit;font-size:15px;padding:10px 14px}.note-form-main input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #4f8ef72e;outline:none}.note-form-meta{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.note-form-card{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:10px;padding:14px}.note-form-wrap label{color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.07em;margin-bottom:4px;text-transform:uppercase}.note-form-wrap select,.note-form-wrap textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:Literata,serif;font-size:14px;padding:9px 12px}.note-form-wrap select:focus,.note-form-wrap textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #4f8ef72e;outline:none}.note-form-card textarea{min-height:100px}.note-form-toggle-row{display:flex;flex-wrap:wrap;gap:6px}.note-form-pill{background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:5px 11px;transition:background .1s,border-color .1s,color .1s}.note-form-pill:hover{background:var(--color-surface-hover)}.note-form-pill.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.note-form-priority-wrap{display:flex;flex-wrap:wrap;gap:6px}.note-form-priority-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:6px 12px;transition:background .1s,border-color .1s,color .1s}.note-form-priority-btn:hover{background:var(--color-surface-hover)}.note-form-priority-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.note-form-toggle{background:var(--color-border);border:none;border-radius:12px;cursor:pointer;flex-shrink:0;height:24px;position:relative;transition:background .2s;width:44px}.note-form-toggle.active{background:var(--color-primary)}.note-form-toggle-knob{background:#fff;border-radius:50%;box-shadow:0 1px 4px #00000040;height:20px;left:2px;position:absolute;top:2px;transition:left .2s;width:20px}.note-form-toggle-knob.active{left:22px}.note-form-link-hint,.note-form-link-muted{color:var(--color-muted);font-size:12px}.note-form-link-muted{opacity:.7}.note-form-link-list{display:flex;flex-wrap:wrap;gap:6px}.note-form-link-chip{background:var(--color-primary-subtle);border:1px solid var(--color-primary-subtle);border-radius:999px;color:var(--color-primary);cursor:pointer;font-family:inherit;font-size:12px;padding:3px 9px;transition:background .1s}.note-form-link-chip:hover{background:#4f8ef726}.note-form-tag-input{display:flex;gap:8px}.note-form-tag-input input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);flex:1 1;font-family:inherit;font-size:13px;padding:8px 10px}.note-form-tag-input input:focus{border-color:var(--color-primary);outline:none}.note-form-tag-input button{background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 14px}.note-form-tag-input button:hover{background:var(--color-primary-hover)}.note-form-tag-list{display:flex;flex-wrap:wrap;gap:6px}.note-form-tag-chip{align-items:center;background:var(--color-primary);border-radius:999px;color:#fff;display:inline-flex;font-size:12px;font-weight:500;gap:5px;padding:3px 10px}.note-form-tag-remove{align-items:center;background:#0000;border:none;color:#ffffffbf;cursor:pointer;display:flex;font-size:14px;line-height:1;padding:0}.note-form-tag-remove:hover{color:#fff}.note-form-attachment-input{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.note-form-attachment-input button{background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 14px;white-space:nowrap}.note-form-attachment-input button:hover{background:var(--color-primary-hover)}.note-form-attachment-list{display:flex;flex-direction:column;gap:8px}.note-form-attachment{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);display:flex;gap:10px;justify-content:space-between;padding:8px 12px}.note-form-attachment-info{display:flex;flex-direction:column;font-size:13px;gap:2px;min-width:0}.note-form-attachment-info small{color:var(--color-muted);font-size:11px}.note-form-attachment-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.note-form-attachment-actions button{background:var(--color-surface-subtle);border:none;border:1px solid var(--color-border-soft);border-radius:var(--radius-xs);color:var(--color-text);cursor:pointer;font-family:inherit;font-size:12px;font-weight:500;padding:5px 10px}.note-form-attachment-actions button:hover{background:var(--color-surface-hover)}.note-form-attachment-actions button:last-child{background:#ef444414;border-color:#ef444440;color:var(--color-danger)}.note-form-attachment-actions button:last-child:hover{background:#ef444426}.note-form-attachment-link{background:var(--color-primary-subtle)!important;border-color:var(--color-primary)!important;color:var(--color-primary)!important}.note-form-attachment-linker{display:flex;flex-direction:column;gap:8px;margin-top:6px}.note-form-attachment-search{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:inherit;font-size:13px;padding:8px 10px;width:100%}.note-form-attachment-search:focus{border-color:var(--color-primary);outline:none}.note-form-attachment-picker{grid-gap:5px;display:grid;gap:5px;max-height:200px;overflow-y:auto;padding-right:4px;scrollbar-width:thin}.note-form-attachment-option{align-items:center;border-radius:var(--radius-xs);color:var(--color-text);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:4px 6px}.note-form-attachment-option:hover{background:var(--color-surface-subtle)}.note-form-save-btn{background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;padding:11px 20px;transition:background .12s}.note-form-save-btn:hover{background:var(--color-primary-hover)}.note-form-email-btn{background:var(--color-primary-subtle);border:1px solid var(--color-primary-subtle);border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;padding:11px 20px}.note-form-email-btn:hover{background:#4f8ef726}.note-form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.note-form-template-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-family:inherit;font-size:13px;padding:6px 14px}.note-form-template-btn:hover{background:var(--color-surface-hover)}.note-template-picker{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);margin-top:10px;padding:14px}.note-template-picker-header{align-items:center;color:var(--color-text);display:flex;font-size:13px;font-weight:600;justify-content:space-between;margin-bottom:10px}.note-template-close{background:#0000;border:none;color:var(--color-muted);cursor:pointer;font-size:18px;line-height:1}.note-template-close:hover{color:var(--color-text)}.note-template-list{display:flex;flex-wrap:wrap;gap:8px}.note-template-item{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-text);cursor:pointer;font-family:inherit;font-size:13px;padding:6px 14px;transition:border-color .1s,background .1s}.note-template-item:hover{background:var(--color-primary-subtle);border-color:var(--color-primary);color:var(--color-primary)}@media (max-width:768px){.note-form-wrap{margin:12px auto 32px;padding:18px 16px}.note-form-meta{grid-template-columns:1fr}}.jrnl-wrap{margin:0 auto;max-width:860px;padding-bottom:48px}.jrnl-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.jrnl-title{font-size:24px;font-weight:700;margin:0 0 4px}.jrnl-subtitle{color:var(--color-muted);font-size:13px;margin:0}.jrnl-nav{flex-wrap:wrap;gap:6px}.jrnl-nav,.jrnl-nav-btn{align-items:center;display:flex}.jrnl-nav-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-size:16px;height:30px;justify-content:center;width:30px}.jrnl-nav-btn:disabled{cursor:not-allowed;opacity:.4}.jrnl-date-pick{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:inherit;font-size:13px;padding:5px 10px}.jrnl-today-btn{background:#0000;border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px}.jrnl-search-row{align-items:center;display:flex;gap:6px;margin-bottom:16px;position:relative}.jrnl-search{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);flex:1 1;font-family:inherit;font-size:14px;padding:8px 12px}.jrnl-search:focus{border-color:var(--color-primary);outline:none}.jrnl-search-clear{background:#0000;border:none;color:var(--color-muted);cursor:pointer;font-size:18px;padding:0 6px}.jrnl-search-results{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.jrnl-search-group{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);overflow:hidden}.jrnl-search-date{background:var(--color-surface-subtle);border:none;color:var(--color-primary);cursor:pointer;display:block;font-size:13px;font-weight:700;padding:8px 14px;text-align:left;width:100%}.jrnl-search-entry{border-top:1px solid var(--color-border-soft);display:flex;font-size:13px;gap:8px;padding:8px 14px}.jrnl-mood-row{align-items:center;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:12px 14px}.jrnl-mood-label{color:var(--color-muted);font-size:13px}.jrnl-mood-options{display:flex;gap:6px}.jrnl-mood-btn{background:#0000;border:2px solid #0000;border-radius:999px;cursor:pointer;font-size:20px;height:36px;transition:border-color .15s,transform .1s;width:36px}.jrnl-mood-btn.active{border-color:var(--color-primary);transform:scale(1.2)}.jrnl-mood-btn:disabled{cursor:not-allowed;opacity:.5}.jrnl-mood-chosen{color:var(--color-muted);font-size:13px;font-style:italic}.jrnl-prompt-row{align-items:center;background:#4f8ef714;border:1px solid #4f8ef733;border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:10px 14px}.jrnl-prompt-icon{font-size:16px}.jrnl-prompt-text{color:var(--color-text);flex:1 1;font-size:13px;font-style:italic}.jrnl-prompt-next,.jrnl-prompt-use{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-primary);cursor:pointer;font-size:11px;padding:3px 10px;white-space:nowrap}.jrnl-prompt-use{font-weight:700}.jrnl-form{margin-bottom:20px}.jrnl-type-row{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.jrnl-type-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);cursor:pointer;font-size:12px;padding:4px 10px}.jrnl-type-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.jrnl-input-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.jrnl-time-input{font-size:13px;padding:8px;width:100px}.jrnl-text-input,.jrnl-time-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:inherit}.jrnl-text-input{flex:1 1;font-size:14px;min-width:180px;padding:8px 12px}.jrnl-amount-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:inherit;font-size:13px;padding:8px;width:110px}.jrnl-add-btn{background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 18px;white-space:nowrap}.jrnl-add-btn:disabled{cursor:not-allowed;opacity:.5}.jrnl-entries{display:flex;flex-direction:column;gap:8px;margin-bottom:28px}.jrnl-entry{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);display:flex;gap:12px;justify-content:space-between;padding:12px 14px}.jrnl-entry-food{border-left:3px solid #f97316}.jrnl-entry-expense{border-left:3px solid #ef4444}.jrnl-entry-work{border-left:3px solid #3b82f6}.jrnl-entry-note{border-left:3px solid var(--color-border)}.jrnl-entry-mood{border-left:3px solid #a855f7}.jrnl-entry-health{border-left:3px solid #22c55e}.jrnl-entry-learn{border-left:3px solid #06b6d4}.jrnl-entry-gratitude{border-left:3px solid #f59e0b}.jrnl-entry-left{align-items:flex-start;display:flex;flex:1 1;gap:10px;min-width:0}.jrnl-entry-right{align-items:center;display:flex;flex-shrink:0;gap:8px}.jrnl-entry-icon{font-size:16px}.jrnl-entry-text{font-size:14px;line-height:1.5}.jrnl-entry-amount{color:#ef4444;font-size:12px;font-weight:600;margin-top:2px}.jrnl-entry-time{color:var(--color-muted);font-size:11px}.jrnl-entry-remove{background:#0000;border:none;color:var(--color-muted);cursor:pointer;font-size:18px;line-height:1;padding:0}.jrnl-entry-remove:hover{color:var(--color-danger)}.jrnl-muted{color:var(--color-muted);font-size:14px;padding:24px 0;text-align:center}.jrnl-history{border-top:1px solid var(--color-border-soft);padding-top:16px}.jrnl-history-title{color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.05em;margin-bottom:10px;text-transform:uppercase}.jrnl-history-list{display:flex;flex-wrap:wrap;gap:6px}.jrnl-history-btn{align-items:center;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);cursor:pointer;display:flex;font-size:12px;gap:4px;padding:4px 10px}.jrnl-history-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.file-vault-wrap{margin:0 auto;max-width:1100px;padding:24px}.file-vault-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.file-vault-actions-top{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.file-vault-toggle{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;display:inline-flex;gap:6px;padding:4px}.file-vault-toggle-btn{background:#0000;border:none;border-radius:999px;color:var(--color-text);cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px}.file-vault-toggle-btn.active{background:var(--color-primary);color:#fff}.file-vault-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:240px 1fr}.file-vault-sidebar{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:14px;height:-webkit-fit-content;height:fit-content;padding:14px}.file-vault-sidebar-section+.file-vault-sidebar-section{border-top:1px solid var(--color-border-soft);margin-top:16px;padding-top:12px}.file-vault-sidebar-title{color:var(--color-muted);font-size:12px;font-weight:700;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}.file-vault-folder-row-wrap{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.file-vault-folder-row{align-items:center;background:#0000;border:1px solid #0000;border-radius:10px;color:var(--color-text);cursor:pointer;display:flex;font:inherit;justify-content:space-between;padding:8px 10px;width:100%}.file-vault-folder-row.active,.file-vault-folder-row:hover{background:var(--color-surface-subtle)}.file-vault-folder-row.active{border-color:var(--color-border-soft)}.file-vault-folder-actions{display:flex;gap:6px;opacity:0;pointer-events:none;transition:opacity .15s ease}.file-vault-folder-row-wrap.active .file-vault-folder-actions,.file-vault-folder-row-wrap:focus-within .file-vault-folder-actions,.file-vault-folder-row-wrap:hover .file-vault-folder-actions{opacity:1;pointer-events:auto}.btn.btn-ghost{background:#0000;border:1px solid var(--color-border-soft);font-size:12px;min-height:28px;padding:4px 8px}.btn.btn-ghost.danger{border-color:#f5b6b6;color:#b31212}.file-vault-upload-box{align-items:center;background:var(--color-surface-subtle);border:1px dashed var(--color-border);border-radius:12px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:16px}.file-vault-filters{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:18px}.file-vault-filter-group{display:flex;flex-direction:column;gap:6px;min-width:200px}.file-vault-filter-group label{color:var(--color-muted);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.file-vault-search{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:13px;padding:6px 10px}.file-vault-list-wrap{display:flex;flex-direction:column;gap:10px}.file-vault-empty{color:var(--color-muted)}.file-vault-empty.muted{font-size:13px}.file-vault-count{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);font-size:11px;padding:2px 8px}.file-vault-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;box-shadow:0 4px 10px #0000000a;display:flex;justify-content:space-between;padding:12px 16px}.file-vault-meta{color:var(--color-muted);font-size:12px}.file-vault-name-editable{border-bottom:1px dashed var(--color-border-soft);cursor:pointer}.file-vault-name-editable:hover{color:#2563eb;color:var(--color-primary,#2563eb)}.file-vault-original-name{color:var(--color-muted);font-size:11px;font-style:italic}.file-vault-linked{color:var(--color-muted);font-size:12px;margin-top:4px}.file-vault-linked-row{align-items:center;display:flex;font-size:12px;gap:8px;margin-bottom:6px}.file-vault-linked-badge{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);font-size:11px;padding:2px 8px}.file-vault-linked-chips{display:flex;flex-wrap:wrap;gap:6px}.file-vault-note-chip{align-items:center;background:#eef2ff;border:1px solid #4f46e533;border-radius:999px;color:#3730a3;cursor:pointer;display:inline-flex;font-size:12px;gap:6px;padding:4px 8px}.file-vault-note-chip-text{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-vault-note-chip-unlink{align-items:center;background:#3730a326;border-radius:50%;color:#3730a3;display:inline-flex;font-size:12px;height:16px;justify-content:center;line-height:1;width:16px}.file-vault-note-more{background:#0000;border:1px dashed var(--color-border);border-radius:999px;color:var(--color-muted);cursor:pointer;font-size:12px;padding:4px 8px}.file-vault-download-btn{background:var(--color-primary);border-radius:8px;color:#fff;font-size:13px;font-weight:600;padding:8px 14px;text-decoration:none}.file-vault-actions{align-items:center;display:flex;gap:8px}.file-vault-actions .btn{min-height:34px;padding:6px 12px}.file-vault-select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-family:inherit;font-size:13px;height:32px;padding:0 8px}@media (max-width:900px){.file-vault-layout{grid-template-columns:1fr}.file-vault-sidebar{order:2}}.tasks-page{margin:0 auto;max-width:860px}.tasks-page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.tasks-page-header h2{margin:0}.tasks-page-new-btn{background:#2563eb;background:var(--color-primary,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.tasks-tab-bar{border-bottom:2px solid var(--color-border-soft);display:flex;gap:4px;margin-bottom:20px}.tasks-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-muted);cursor:pointer;display:inline-flex;font-size:14px;gap:6px;margin-bottom:-2px;padding:8px 16px}.tasks-tab-active{border-bottom-color:#2563eb;border-bottom-color:var(--color-primary,#2563eb);color:#111;color:var(--color-text,#111);font-weight:600}.tasks-tab-count{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:10px;font-size:12px;font-weight:600;padding:1px 7px}.tasks-empty,.tasks-loading{color:var(--color-muted);font-size:14px;padding:24px 0;text-align:center}.tasks-list{display:flex;flex-direction:column;gap:12px}.task-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:10px;padding:16px}.task-card-overdue{background:#fff9f9;border-color:#fca5a5}.task-card-top{display:flex;flex-direction:column;gap:6px}.task-card-title-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.task-card-title{font-size:15px;font-weight:600}.task-card-badges{display:flex;flex-shrink:0;gap:6px}.task-badge{border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.04em;padding:2px 9px;text-transform:uppercase}.priority-critical{background:#fee2e2;color:#991b1b}.priority-high{background:#ffedd5;color:#9a3412}.priority-medium{background:#fef9c3;color:#854d0e}.priority-low{background:#dcfce7;color:#166534}.priority-someday{background:#f3f4f6;color:#6b7280}.status-pending{background:#dbeafe;color:#1e40af}.status-in-progress{background:#ede9fe;color:#5b21b6}.status-done{background:#d1fae5;color:#065f46}.status-cancelled{background:#f3f4f6;color:#6b7280}.task-card-meta{color:var(--color-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:14px}.task-meta-overdue{color:#dc2626;font-weight:600}.task-card-assignees{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.task-assignee-chip{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:12px;font-size:12px;padding:2px 9px}.task-card-description{color:var(--color-muted);font-size:13px;line-height:1.5;margin-top:10px;white-space:pre-wrap}.task-card-followups{margin-top:10px}.task-card-toggle{background:#0000;border:none;color:#2563eb;color:var(--color-primary,#2563eb);cursor:pointer;font-size:13px;padding:0}.task-followup-list{color:var(--color-muted);font-size:13px;line-height:1.8;margin:8px 0 0 16px;padding:0}.task-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.task-card-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:6px;cursor:pointer;font-size:13px;padding:5px 14px}.task-card-btn-notify{border-color:#2563eb;border-color:var(--color-primary,#2563eb);color:#2563eb;color:var(--color-primary,#2563eb)}.task-card-btn-notify:disabled{cursor:not-allowed;opacity:.6}.task-card-btn-delete{border-color:#fca5a5;color:#dc2626;margin-left:auto}.task-form-wrap{margin:0 auto;max-width:680px;padding:8px 0 40px}.task-form-wrap h2{margin-bottom:24px}.task-form-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:14px;margin-bottom:16px;padding:10px 14px}.task-form-field{margin-bottom:18px}.task-form-label{color:var(--color-muted);display:block;font-size:13px;font-weight:600;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase}.task-form-field input:not([type=checkbox]),.task-form-field input[type=date],.task-form-field input[type=text],.task-form-field select,.task-form-field textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-sizing:border-box;font-size:14px;padding:8px 12px;width:100%}.task-form-field textarea{min-height:90px;resize:vertical}.task-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.task-form-tag-input-row{display:flex;gap:8px}.task-form-tag-input-row input{flex:1 1}.task-form-add-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:6px;cursor:pointer;font-size:13px;padding:0 14px;white-space:nowrap}.task-form-tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.task-form-tag{align-items:center;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:20px;display:inline-flex;font-size:13px;gap:4px;padding:3px 10px}.task-form-tag-remove{background:#0000;border:none;color:var(--color-muted);cursor:pointer;font-size:15px;line-height:1;padding:0 0 0 2px}.task-form-followup-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:8px 0 0;padding:0}.task-form-followup-item{align-items:center;display:flex;gap:8px}.task-form-followup-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;flex:1 1;font-size:14px;padding:6px 10px}.task-form-email-section{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:8px;display:flex;flex-direction:column;gap:10px;margin:20px 0;padding:14px}.task-form-checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px}.task-form-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.task-form-submit-btn{background:#2563eb;background:var(--color-primary,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px}.task-form-submit-btn:disabled{cursor:not-allowed;opacity:.6}.task-form-cancel-btn{background:#0000;border:1px solid var(--color-border);border-radius:8px}.task-form-cancel-btn,.task-form-notify-btn{cursor:pointer;font-size:14px;padding:9px 18px}.task-form-notify-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:8px;margin-left:auto}.task-form-notify-btn:disabled{cursor:not-allowed;opacity:.6}.habits-page{margin:0 auto;max-width:860px}.habits-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.habits-header h2{margin:0}.habits-new-btn{background:#2563eb;background:var(--color-primary,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.habits-empty,.habits-loading{color:var(--color-muted);font-size:14px;padding:32px 0;text-align:center}.habits-list{display:flex;flex-direction:column;gap:14px}.habit-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;padding:16px}.habit-card-inactive{opacity:.55}.habit-card-top{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:8px}.habit-name{font-size:15px;font-weight:700;margin-right:8px}.habit-cat-chip,.habit-freq-chip{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:10px;display:inline-block;font-size:11px;font-weight:600;margin-right:4px;padding:2px 8px}.habit-streak-box{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.habit-streak-cur{color:#2563eb;color:var(--color-primary,#2563eb);font-size:13px;font-weight:700}.habit-streak-best{color:var(--color-muted);font-size:11px}.habit-description{color:var(--color-muted);font-size:13px;margin-bottom:10px}.habit-heatmap{grid-gap:3px;display:grid;gap:3px;grid-template-columns:repeat(28,1fr);margin:10px 0}.habit-heatmap-cell{aspect-ratio:1;background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:2px}.habit-heatmap-done{background:#16a34a;border-color:#15803d}.habit-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.habit-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:6px;cursor:pointer;font-size:13px;padding:5px 14px}.habit-btn-checkin{background:#166534;border-color:#166534;color:#f0fdf4;font-weight:600}.habit-btn-uncheck{background:#0000;color:var(--color-muted)}.habit-btn-delete{border-color:#fca5a5;color:#dc2626;margin-left:auto}.habits-inactive-section{margin-top:28px}.habits-inactive-section summary{color:var(--color-muted);cursor:pointer;font-size:13px;font-weight:600;padding:4px 0}.habit-form{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;margin-bottom:20px;padding:20px}.habit-form h3{margin:0 0 16px}.habit-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:14px}.habit-form label{color:var(--color-muted);display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:5px}.habit-form input,.habit-form select,.habit-form textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-size:14px;padding:7px 10px}.habit-form textarea{margin-bottom:14px;resize:vertical}.habit-form-check{align-items:center;color:var(--color-text)!important;display:flex!important;flex-direction:row!important;font-size:14px!important;gap:8px;margin:8px 0 16px}.habit-form-actions{display:flex;gap:10px}.habit-form-save{background:#2563eb;background:var(--color-primary,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px}.habit-form-cancel{background:#0000;border:1px solid var(--color-border);border-radius:8px;cursor:pointer;font-size:14px;padding:8px 18px}.db-page{margin:0 auto;max-width:960px;padding-bottom:60px}.db-state{font-size:14px;padding:80px 0;text-align:center}.db-loading{color:var(--color-muted)}.db-error{color:var(--color-danger)}.db-hero{border-bottom:1px solid var(--color-border-soft);margin-bottom:32px;padding-bottom:28px}.db-date{color:var(--color-primary);font-size:11px;font-weight:700;letter-spacing:.09em;margin:0 0 10px;text-transform:uppercase}.db-greeting{font-size:30px;font-weight:800;letter-spacing:-.025em;line-height:1.15;margin:0 0 8px}.db-subline{color:var(--color-muted);font-size:14px;line-height:1.55;margin:0}.db-stat-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));margin-bottom:36px}.db-stat{background:var(--color-surface);border:1px solid var(--color-border-soft);border-left-width:3px;border-radius:var(--radius-md);padding:16px 16px 14px;position:relative}.db-stat-link{cursor:pointer;transition:transform .14s,box-shadow .14s}.db-stat-link:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.db-stat-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.db-stat-label{color:var(--color-muted);font-size:10px;font-weight:700;letter-spacing:.07em;margin-bottom:8px;text-transform:uppercase}.db-stat-value{font-size:32px;font-weight:800;line-height:1}.db-stat-denom{font-size:16px;font-weight:500;opacity:.45}.db-stat-bar{background:var(--color-border-soft);border-radius:999px;height:3px;margin-top:12px;overflow:hidden}.db-stat-bar-fill{background:currentColor;border-radius:999px;height:100%;opacity:.7;transition:width .5s ease}.db-stat-blue{border-left-color:#3b82f6}.db-stat-blue .db-stat-value{color:#3b82f6}.db-stat-indigo{border-left-color:#6366f1}.db-stat-indigo .db-stat-value{color:#6366f1}.db-stat-green{border-left-color:#22c55e}.db-stat-green .db-stat-value{color:#22c55e}.db-stat-red{border-left-color:#ef4444}.db-stat-red .db-stat-value{color:#ef4444}.db-stat-orange{border-left-color:#f97316}.db-stat-orange .db-stat-value{color:#f97316}.db-stat-purple{border-left-color:#a855f7}.db-stat-purple .db-stat-value{color:#a855f7}.db-section{margin-bottom:32px}.db-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.db-section-title{color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.db-section-action{background:#0000;border:none;color:var(--color-primary);cursor:pointer;font-family:inherit;font-size:12px;padding:0}.db-section-action:hover{text-decoration:underline}.db-section-body{display:flex;flex-direction:column;gap:6px}.db-item{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);display:flex;gap:12px;padding:10px 14px}.db-item-overdue{background:rgba(239,68,68,.025);border-left:3px solid #ef4444}.db-item-dot{background:var(--color-border);border-radius:999px;flex-shrink:0;height:6px;width:6px}.db-item-overdue .db-item-dot{background:#ef4444}.db-item-body{align-items:center;display:flex;flex:1 1;gap:10px;min-width:0}.db-item-title{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-item-cat{background:var(--color-surface-subtle);border-radius:999px;color:var(--color-muted);flex-shrink:0;font-size:11px;padding:2px 8px;white-space:nowrap}.db-item-meta{align-items:center;display:flex;flex-shrink:0;gap:8px}.db-item-date{color:var(--color-muted);font-size:11px}.db-item-pri{border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.03em;padding:2px 7px;text-transform:uppercase}.db-pri-critical{background:#ef44441f;color:#ef4444}.db-pri-high{background:#f973161f;color:#f97316}.db-pri-medium{background:#eab3081f;color:#ca8a04}.db-pri-low{background:#22c55e1a;color:#16a34a}.db-pri-someday{background:var(--color-surface-subtle);color:var(--color-muted)}.db-quick-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.db-quick-btn{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:8px;padding:16px 8px;transition:background .12s,border-color .12s,transform .12s}.db-quick-btn:hover{background:var(--color-surface-subtle);border-color:var(--color-border);transform:translateY(-1px)}.db-quick-icon{font-size:22px}.db-quick-label{font-size:11px;font-weight:600}@media (max-width:600px){.db-stat-grid{grid-template-columns:repeat(2,1fr)}.db-quick-grid{grid-template-columns:repeat(4,1fr)}.db-greeting{font-size:24px}}.wr-page{margin:0 auto;max-width:900px}.wr-title{margin-bottom:4px}.wr-subtitle{color:var(--color-muted);font-size:13px;margin-bottom:24px}.wr-error,.wr-loading{color:var(--color-muted);font-size:14px;padding:40px;text-align:center}.wr-error{color:#dc2626}.wr-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}@media (max-width:640px){.wr-grid{grid-template-columns:1fr}}.wr-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;padding:18px}.wr-card-title{color:var(--color-muted);font-size:13px;font-weight:700;margin:0 0 12px;text-transform:uppercase}.wr-stats-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.wr-stat{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:8px;min-width:72px;padding:8px 12px}.wr-stat-value{font-size:20px;font-weight:800;line-height:1}.wr-stat-label{color:var(--color-muted);font-size:11px;margin-top:3px}.wr-stat-green .wr-stat-value{color:#16a34a}.wr-stat-orange .wr-stat-value{color:#d97706}.wr-stat-blue .wr-stat-value{color:#2563eb}.wr-stat-red .wr-stat-value{color:#dc2626}.wr-done-list{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}.wr-done-item{color:var(--color-muted);font-size:13px}.wr-habit-table{border-collapse:collapse;font-size:13px;width:100%}.wr-habit-table th{color:var(--color-muted);font-size:11px;padding-bottom:6px;text-align:left;text-transform:uppercase}.wr-habit-table td{padding:4px 0}.wr-heat-bar{display:flex;gap:3px}.wr-heat-cell{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:2px;height:14px;width:14px}.wr-heat-done{background:#16a34a;border-color:#15803d}.sp-page{margin:0 auto;max-width:860px}.sp-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.sp-header h2{margin:0}.sp-header-actions{display:flex;gap:10px}.sp-btn-primary{background:#2563eb;background:var(--color-primary,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.sp-btn-outline{border:1px solid var(--color-border);border-radius:8px}.sp-btn-danger,.sp-btn-outline{background:#0000;cursor:pointer;font-size:14px;padding:8px 16px}.sp-btn-danger{border:1px solid #fca5a5;border-radius:8px;color:#dc2626}.sp-btn-xs{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:6px;cursor:pointer;font-size:12px;padding:3px 10px}.sp-empty{color:var(--color-muted);font-size:14px;padding:40px;text-align:center}.sp-empty-small{color:var(--color-muted);font-size:13px}.sp-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.sp-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;cursor:pointer;padding:16px}.sp-card:hover{border-color:#2563eb;border-color:var(--color-primary,#2563eb)}.sp-card-name{font-size:15px;font-weight:700;margin-bottom:4px}.sp-card-desc{color:var(--color-muted);font-size:13px;margin-bottom:8px}.sp-card-code{color:var(--color-muted);font-size:12px}.sp-card-code strong{color:var(--color-text)}.sp-form{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:12px;margin-bottom:24px;max-width:480px;padding:20px}.sp-form h3{margin:0 0 16px}.sp-form label{color:var(--color-muted);display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:5px;margin-bottom:14px}.sp-form input,.sp-form textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-size:14px;padding:8px 10px}.sp-form-actions{display:flex;gap:10px}.sp-back{background:#0000;border:none;color:#2563eb;color:var(--color-primary,#2563eb);cursor:pointer;font-size:13px;padding:0 0 12px}.sp-detail-desc{color:var(--color-muted);font-size:14px;margin-bottom:16px}.sp-invite-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.sp-invite-label{color:var(--color-muted);font-size:13px}.sp-invite-code{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:6px;font-size:18px;font-weight:700;letter-spacing:.1em;padding:4px 10px}.sp-members{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.sp-member-chip{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:20px;font-size:13px;padding:4px 12px}.sp-member-role{color:var(--color-muted);font-size:11px;margin-left:4px;text-transform:uppercase}.sp-items{font-size:14px;line-height:1.8;padding-left:18px}.sp-detail-actions{display:flex;gap:10px;margin-top:24px}.sp-items-list{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.sp-item-row{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);gap:10px;justify-content:space-between;padding:8px 12px}.sp-item-info,.sp-item-row{align-items:center;display:flex}.sp-item-info{flex:1 1;gap:8px;min-width:0}.sp-item-title{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-item-status{color:var(--color-muted);font-size:11px;white-space:nowrap}.sp-comments-panel{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);margin-bottom:20px;overflow:hidden}.sp-comments-title{align-items:center;background:var(--color-surface-subtle);border-bottom:1px solid var(--color-border-soft);display:flex;font-size:13px;font-weight:600;justify-content:space-between;padding:10px 14px}.sp-comments-close{background:#0000;border:none;color:var(--color-muted);cursor:pointer;font-size:18px;padding:0}.sp-comments-list{display:flex;flex-direction:column;gap:8px;max-height:240px;overflow-y:auto;padding:12px}.sp-comment{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);padding:8px 10px}.sp-comment-header{align-items:center;display:flex;gap:8px;margin-bottom:4px}.sp-comment-author{font-size:12px;font-weight:700}.sp-comment-date{color:var(--color-muted);flex:1 1;font-size:11px}.sp-comment-del{background:#0000;border:none;color:var(--color-muted);cursor:pointer;font-size:14px;padding:0}.sp-comment-del:hover{color:var(--color-danger)}.sp-comment-body{font-size:13px}.sp-comment-form{background:var(--color-surface-subtle);border-top:1px solid var(--color-border-soft);display:flex;gap:8px;padding:10px 12px}.sp-comment-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);flex:1 1;font-family:inherit;font-size:13px;padding:6px 10px}.sp-activity{margin-bottom:20px}.sp-activity h4{font-size:13px;font-weight:700;margin-bottom:8px}.sp-activity-list{display:flex;flex-direction:column;gap:4px}.sp-activity-item{align-items:center;background:var(--color-surface-subtle);border-radius:var(--radius-xs);display:flex;font-size:12px;gap:12px;justify-content:space-between;padding:6px 10px}.sp-activity-msg{color:var(--color-text);flex:1 1}.sp-activity-date{color:var(--color-muted);white-space:nowrap}.proj-page{margin:0 auto;max-width:1000px}.proj-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.proj-header h2{margin:0}.proj-filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.proj-filter-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-muted);cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px}.proj-filter-btn.active{border-color:var(--color-primary)}.proj-filter-btn.active,.proj-new-btn{background:var(--color-primary);color:#fff}.proj-new-btn{border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px}.proj-empty,.proj-loading{color:var(--color-muted);font-size:14px;padding:48px 0;text-align:center}.proj-grid{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.proj-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:10px;padding:16px}.proj-card-overdue{border-color:#ef44444d}.proj-card-top{cursor:pointer}.proj-card-name{font-size:15px;font-weight:700;margin-bottom:4px}.proj-card-meta{display:flex;flex-wrap:wrap;font-size:11px;gap:8px}.proj-overdue-badge{background:#ef444426;border-radius:999px;color:#ef4444;font-weight:700;padding:2px 8px}.proj-next-due{color:var(--color-muted)}.proj-progress-wrap{align-items:center;display:flex;gap:10px}.proj-progress-bar{background:var(--color-surface-subtle);border-radius:3px;flex:1 1;height:6px;overflow:hidden}.proj-progress-fill{background:var(--color-primary);border-radius:3px;height:100%;transition:width .3s}.proj-progress-label{color:var(--color-muted);font-size:11px;white-space:nowrap}.proj-priority-row{display:flex;flex-wrap:wrap;gap:5px}.proj-priority-pill{border-radius:999px;font-size:10px;font-weight:700;padding:2px 7px}.proj-card-actions{display:flex;gap:8px}.proj-action-btn{background:#0000;border:1px solid var(--color-border-soft);border-radius:var(--radius-xs);color:var(--color-primary);cursor:pointer;font-size:12px;padding:4px 10px}.proj-action-btn:hover{background:var(--color-surface-subtle)}.proj-item-list{border-top:1px solid var(--color-border-soft);display:flex;flex-direction:column;gap:4px;padding-top:10px}.proj-item{align-items:center;display:flex;font-size:12px;gap:8px;justify-content:space-between}.proj-item-done .proj-item-title{color:var(--color-muted);text-decoration:line-through}.proj-item-title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proj-item-status{color:var(--color-muted);font-size:10px;white-space:nowrap}.proj-item-more{color:var(--color-muted);font-size:11px;padding-top:4px;text-align:center}.incoming-review-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a10188c;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1200}.incoming-review-modal{background:#f9fafb;border:1px solid #e1e7ef;border-radius:16px;box-shadow:0 30px 70px #10182840;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:min(1100px,100%)}.incoming-review-header{align-items:center;background:linear-gradient(135deg,#fff,#f3f6ff);border-bottom:1px solid #e3e8ef;display:flex;gap:16px;justify-content:space-between;padding:20px 24px}.incoming-review-title{color:#0f172a;font-size:20px;font-weight:700}.incoming-review-subtitle{color:#475569;font-size:14px}.incoming-review-close{background:#fff;border:1px solid #d3dce8;border-radius:999px;color:#1f2937;cursor:pointer;font-size:13px;padding:8px 14px}.incoming-review-error{background:#fff1f1;color:#b42318;font-size:13px;padding:10px 16px}.incoming-review-body{grid-gap:0;display:grid;flex:1 1 auto;gap:0;grid-template-columns:320px 1fr;min-height:0}.incoming-review-list{background:#f8fafc;border-right:1px solid #e3e8ef;overflow-y:auto;padding:16px}.incoming-review-card{background:#fff;border:1px solid #e3e8ef;border-radius:12px;cursor:pointer;margin-bottom:12px;padding:12px;text-align:left;transition:border .12s ease,box-shadow .12s ease;width:100%}.incoming-review-card.active{border-color:#4f46e5;box-shadow:0 10px 20px #4f46e51f}.incoming-review-card-top{align-items:center;display:flex;gap:8px;justify-content:space-between}.incoming-review-card-merchant{color:#0f172a;font-weight:600}.incoming-review-badge{background:#e2e8f0;border-radius:999px;color:#1f2937;font-size:11px;letter-spacing:.4px;padding:4px 8px;text-transform:uppercase}.incoming-review-badge-hold{background:#fff4cc;color:#8a6100}.incoming-review-badge-pending_verification{background:#e0f2fe;color:#0369a1}.incoming-review-card-meta{color:#475569;display:flex;font-size:12px;gap:8px;margin-top:8px}.incoming-review-card-hold{color:#b45309;font-size:12px;margin-top:8px}.incoming-review-detail{overflow-y:auto;padding:20px 24px}.incoming-review-section{margin-bottom:16px}.incoming-review-section-title{color:#64748b;font-size:13px;letter-spacing:.4px;margin-bottom:8px;text-transform:uppercase}.incoming-review-snapshot{color:#1f2937;display:flex;flex-direction:column;font-size:14px;gap:6px}.incoming-review-hold{background:#fff4cc;border-radius:10px;color:#8a6100;font-size:13px;margin-top:12px;padding:10px 12px}.incoming-review-warning{align-items:center;background:#fff4f0;border:1px solid #ffd5c2;border-radius:12px;color:#9a3412;display:flex;font-size:13px;gap:12px;justify-content:space-between;margin-bottom:16px;padding:12px}.incoming-review-link{background:#9a3412;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:12px;padding:6px 10px}.incoming-review-form{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.incoming-review-form label{color:#64748b;display:flex;flex-direction:column;font-size:12px;gap:6px}.incoming-review-form input,.incoming-review-form select{background:#fff;border:1px solid #d3dce8;border-radius:10px;color:#0f172a;font-size:14px;padding:10px}.incoming-review-form .full{grid-column:1/-1}.incoming-review-form .error{border-color:#ef4444}.incoming-review-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.incoming-review-btn{border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px}.incoming-review-btn.reject{background:#f1f5f9;color:#0f172a}.incoming-review-btn.accept{background:#0f172a;color:#fff}.incoming-review-empty{color:#64748b;font-size:14px;padding:20px}@media (max-width:960px){.incoming-review-body{grid-template-columns:1fr}.incoming-review-list{border-bottom:1px solid #e3e8ef;border-right:none}.incoming-review-form{grid-template-columns:1fr}}.toast-container{bottom:24px;display:flex;flex-direction:column;gap:10px;pointer-events:none;position:fixed;right:24px;z-index:9000}.toast{align-items:center;animation:toastIn .18s ease-out;border-radius:10px;box-shadow:0 4px 16px #00000024;display:flex;font-size:14px;font-weight:500;gap:12px;justify-content:space-between;max-width:420px;min-width:260px;padding:12px 16px;pointer-events:all}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.toast-info{background:#1e293b;color:#f8fafc}.toast-success{background:#15803d;color:#f0fdf4}.toast-error{background:#b91c1c;color:#fef2f2}.toast-warn{background:#b45309;color:#fffbeb}.toast-close{background:#0000;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-size:18px;line-height:1;opacity:.7;padding:0}.toast-close:hover{opacity:1}.landing-page{align-items:center;background:var(--color-bg);display:flex;justify-content:center;min-height:100vh;padding:40px 24px}.landing-container{display:flex;flex-direction:column;gap:48px;width:min(640px,100%)}.landing-hero{text-align:center}.landing-brand{align-items:center;display:inline-flex;gap:10px;margin-bottom:32px}.landing-brand-icon{align-items:center;background:var(--color-primary);border-radius:10px;color:#fff;display:flex;font-size:18px;font-weight:800;height:36px;justify-content:center;width:36px}.landing-brand-name{color:var(--color-text);font-size:20px;font-weight:800;letter-spacing:-.03em}.landing-headline{font-size:42px;font-weight:800;letter-spacing:-.03em;line-height:1.1;margin:0 0 16px}.landing-sub{color:var(--color-muted);font-size:16px;line-height:1.6;margin:0 auto 32px;max-width:420px}.landing-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.landing-btn-primary{font-size:14px;min-height:42px;min-width:120px}.landing-btn-secondary{font-size:14px;min-height:42px;min-width:140px}.landing-features{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.landing-feature{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);display:flex;gap:14px;padding:16px}.landing-feature-icon{flex-shrink:0;font-size:22px;margin-top:1px}.landing-feature-label{font-size:13px;font-weight:700;margin-bottom:3px}.landing-feature-desc{color:var(--color-muted);font-size:12px;line-height:1.5}@media (max-width:480px){.landing-headline{font-size:30px}.landing-features{grid-template-columns:1fr}}
/*# sourceMappingURL=main.75714d60.css.map*/