:root{--color-bg:#000;--color-panel:#121212d9;--color-elevated:#181818e6;--color-border:#2a2a2a;--color-text:#fff;--color-text-muted:#fff;--color-gold:#f5c044;--color-gold-2:#d4a017;--color-accent:var(--color-gold);--color-accent-2:var(--color-gold-2);--color-success:#2ecc71;--color-warning:#f1c40f;--color-danger:#e74c3c;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-1:8px;--radius-2:12px;--radius-round:999px;--font-sans:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--shadow-1:0 1px 2px #00000059,0 0 0 1px #ffffff05 inset;--shadow-2:0 12px 32px #00000073,0 1px 0 #ffffff08 inset;--anim-fast:160ms;--anim-std:220ms;--anim-slow:280ms;--z-topbar:50;--z-floating:60;--z-modal:100;--bg:#0b0c0e;--surface-1:#131417;--surface-2:#191b1f;--surface-3:#1f2329;--border-1:#2a2f36;--text-1:#eaecef;--text-2:#aeb6c2;--text-3:#7a8494;--brand:#5b8cff;--accent:#22c55e;--danger:#ef4444;--radius:14px;--shadow-1:0 2px 12px #00000059;--space-1:8px;--space-2:12px;--space-3:16px;--color-bg:var(--bg);--color-panel:var(--surface-2);--color-elevated:var(--surface-3);--color-border:var(--border-1);--color-text:var(--text-1);--color-text-muted:var(--text-2);--color-accent:var(--brand)}@media (prefers-color-scheme:light){:root{--bg:#f7f8fa;--surface-1:#fff;--surface-2:#f2f4f7;--surface-3:#e9edf3;--border-1:#d5d9e2;--text-1:#0b0c0e;--text-2:#263042;--text-3:#5a6576;--brand:#3b82f6;--accent:#16a34a;--danger:#dc2626;--shadow-1:0 2px 12px #00000014;--color-bg:var(--bg);--color-panel:var(--surface-2);--color-elevated:var(--surface-3);--color-border:var(--border-1);--color-text:var(--text-1);--color-text-muted:var(--text-2);--color-accent:var(--brand)}}*{box-sizing:border-box}#root,body,html{height:100%}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text-1);font-family:var(--font-sans);font-size:15px;line-height:1.5;margin:0}#root{display:flex;flex-direction:column;min-height:100vh}:root{--header-h:0px;--footer-h:0px}.app{display:grid;grid-template-rows:0 1fr;grid-template-rows:var(--header-h) 1fr;height:100vh;overflow:hidden}.app__header{height:0;height:var(--header-h)}.app__main{display:grid;grid-template-columns:320px minmax(0,1fr)}.app__main,.sidebar{height:100%;min-height:0}.sidebar{background:var(--surface-2);border-radius:0;border-right:1px solid var(--border-1);box-shadow:none;overflow-y:auto;padding:12px 8px;position:relative;top:0}.content{background:var(--bg);display:grid;grid-template-rows:1fr auto;height:100%}.content,.content__body{min-height:0;overflow:hidden}.content__scroll{height:100%;overflow-y:auto;padding:16px 16px 0}.content__composer{align-items:stretch;background:var(--bg);display:flex;margin:0;padding:0 0 env(safe-area-inset-bottom,0)}.content__composer>.inputbar{border-radius:0;width:100%}.mobile-history-toggle{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius-1);color:var(--text-1);display:none;margin:8px 12px;padding:8px 10px}@media (max-width:900px){.app__main{grid-template-columns:1fr}.content{height:100vh;height:calc(100vh - var(--header-h))}.content__scroll{padding:12px 12px 0}.content__composer{padding-bottom:env(safe-area-inset-bottom,0)}.mobile-history-toggle{align-items:center;display:inline-flex;gap:8px}.sidebar{background:var(--surface-2);border-right:none;border-top:1px solid var(--border-1);bottom:0;bottom:var(--footer-h);height:auto;left:0;opacity:0;overflow-y:auto;padding:12px 8px;pointer-events:none;position:fixed;right:0;top:0;top:var(--header-h);transform:translateX(-100%);transition:transform var(--anim-std) ease,opacity var(--anim-std) ease;z-index:var(--z-floating)}.app[data-history-open=true] .sidebar{opacity:1;pointer-events:auto;transform:translateX(0)}.app[data-history-open=true] .content{display:none}.app-backdrop{background:#0006;inset:0 0 0 0;inset:0 0 var(--footer-h) 0;opacity:0;pointer-events:none;position:fixed;top:0;top:var(--header-h);transition:opacity var(--anim-std) ease;z-index:var(--z-topbar)}.app[data-history-open=true] .app-backdrop{opacity:1;pointer-events:auto}}.border,.panel{border:1px solid var(--color-border)}.panel{-webkit-backdrop-filter:saturate(140%) blur(10px);backdrop-filter:saturate(140%) blur(10px);background:var(--color-panel);border-radius:var(--radius-2);box-shadow:var(--shadow-1)}.elevated{background:var(--color-elevated);box-shadow:var(--shadow-2)}.muted{color:var(--color-text-muted)}.row{align-items:center}.col,.row{display:flex;gap:var(--space-3)}.col{flex-direction:column}.btn{background:var(--surface-2);border:1px solid var(--border-1);border-radius:var(--radius-1);color:var(--text-1);padding:8px 12px;transition:background var(--anim-std) ease,border-color var(--anim-std) ease}.btn:hover{background:var(--surface-3);border-color:var(--border-1)}.btn.primary{background:var(--brand);border-color:#0000;color:var(--text-1);font-weight:600}.btn-secondary{background:var(--surface-1)}.btn-secondary:hover{background:var(--surface-2)}.btn-ghost{border:1px solid #0000}.btn-ghost.danger{color:var(--danger)}:where(button,[role=button],a,input,summary):focus-visible{outline:2px solid var(--brand);outline-offset:2px}.toasts{bottom:88px;display:flex;flex-direction:column;gap:8px;pointer-events:none;position:fixed;right:16px;z-index:var(--z-floating)}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}::selection{background:#5b8cff40;color:var(--color-text)}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-thumb{background:var(--surface-2);border:2px solid var(--bg);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--surface-3)}.top-spacer{height:0}.sidepanel{background:var(--surface-2);box-sizing:border-box;flex-direction:column;height:100%;overflow:hidden;padding:var(--space-4);padding-bottom:0;position:relative}.sidepanel,.sidepanel-body{display:flex;gap:var(--space-1)}.sidepanel-body{flex:1 1;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto}.sidepanel-top{background:var(--surface-2);display:flex;flex-direction:column;gap:var(--space-2);margin:0 calc(var(--space-4)*-1);padding:var(--space-4) var(--space-4) var(--space-2);position:-webkit-sticky;position:sticky;top:0;z-index:2}.sidepanel-header{font-weight:700;letter-spacing:.2px;margin:0;margin-top:calc(var(--space-3) - var(--space-1))}.sidepanel-actions{display:flex}.sidepanel-actions .new-chat,.sidepanel-controls{margin:0}.search{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius-1);color:var(--text-1);padding:var(--space-3) var(--space-3);width:100%}.filters{display:flex;gap:var(--space-2);margin:var(--space-3) 0}.filters.segmented{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius-1);gap:4px;padding:4px}.filter{background:#0000;border:1px solid #0000;border-radius:var(--radius-1);color:var(--text-2);cursor:pointer;padding:6px 10px;transition:background var(--anim-std) ease,color var(--anim-std) ease}.filter.active,.filter:hover{color:var(--text-1)}.filter.active{background:var(--surface-2);border-color:var(--border-1)}.thread-list{display:flex;flex-direction:column;gap:var(--space-1)}.thread-item{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius-1);color:var(--text-1);cursor:pointer;padding:0 var(--space-3);text-align:left;transition:background var(--anim-std) ease,border-color var(--anim-std) ease}.thread-item:hover{background:var(--surface-2);border-color:var(--border-1)}.thread-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.thread-title{font-size:var(--text-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-meta{color:var(--text-3);font-size:var(--text-xs);margin-top:-8px}.thread-preview{color:var(--text-3);font-size:var(--text-sm);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-chat{align-items:center;background:#0000;border:none;border-radius:var(--radius-1);color:var(--text-1);cursor:pointer;display:flex;gap:var(--space-2);justify-content:flex-start;padding:6px 0;text-align:left;transition:background var(--anim-std) ease;width:100%}.new-chat .icon{color:var(--text-2);display:inline-flex}.new-chat .label{color:var(--text-1);font-size:var(--text-md);font-weight:500}.new-chat:hover{background:var(--surface-3)}.search-row{align-items:center;border:1px solid #0000;border-radius:var(--radius-1);cursor:pointer;display:flex;gap:var(--space-2);padding:6px 0;transition:background var(--anim-std) ease,border-color var(--anim-std) ease}.search-row .icon{color:var(--text-2);display:inline-flex}.search-row .search{background:#0000;border:none;color:var(--text-1);font-size:var(--text-md);padding:0;width:100%}.search-row .search:focus{outline:none}.search-row:hover{background:var(--surface-3)}.search-row:focus-within{border-color:var(--border-2)}.search-row .search::placeholder{color:var(--text-1);opacity:1}.search-row .search::-webkit-input-placeholder{color:var(--text-1);opacity:1}.search-row .search::-moz-placeholder{color:var(--text-1);opacity:1}.search-row .search:-ms-input-placeholder{color:var(--text-1);opacity:1}.search-row .search:-moz-placeholder{color:var(--text-1);opacity:1}.user-drawer{background:var(--surface-2);margin-left:calc(var(--space-4)*-1);margin-right:calc(var(--space-4)*-1);margin-top:auto;padding:var(--space-3) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom, 0));position:relative}.user-trigger{align-items:center;background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius-1);color:var(--text-1);cursor:pointer;display:flex;gap:var(--space-2);justify-content:flex-start;padding:10px 12px;position:relative;width:100%;z-index:2}.user-trigger:hover{background:var(--surface-2)}.user-trigger .avatar{align-items:center;background:var(--surface-3);border-radius:50%;display:inline-flex;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.user-trigger .user-label{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-popover{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius-1);bottom:calc(100% + 8px);box-shadow:var(--shadow-2);display:flex;flex-direction:column;gap:8px;left:0;min-width:auto;padding:10px;position:absolute;right:0;z-index:9999}.user-popover-header{align-items:center;border-bottom:1px solid var(--border-1);display:flex;gap:10px;padding:6px 4px 8px}.user-popover-header .avatar{background:var(--surface-2)}.user-fullname{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-popover-actions{display:flex;flex-direction:column;gap:8px}.user-popover .user-menu-item{display:block;width:100%}.user-popover-actions .btn{justify-content:flex-start;text-align:left;width:100%}.user-popover-actions .btn+.btn{margin-top:8px}.user-popover-actions .btn.btn-secondary{background:var(--surface-1);border-color:var(--border-1);color:var(--text-1)}.user-popover-actions .btn.btn-secondary:hover{background:var(--surface-2)}.sidebar-close{align-items:center;background:var(--surface-1);border:1px solid var(--border-1);border-radius:6px;color:var(--text-1);cursor:pointer;display:none;font-size:20px;height:32px;justify-content:center;line-height:28px;position:absolute;right:8px;top:8px;width:32px;z-index:5}.sidebar-close:hover{background:var(--surface-2)}@media (max-width:900px){.user-popover{bottom:calc(100% + 8px);left:0;min-width:0;min-width:auto;right:0}.sidebar-close{display:inline-flex}.sidepanel{padding:calc(var(--space-4) + 8px) calc(var(--space-4) + 44px) var(--space-4) var(--space-4)}.sidepanel-actions,.sidepanel-controls{max-width:calc(100% - 44px)}.sidepanel-body{padding:0}.sidepanel-top{margin:0;padding:calc(var(--space-4) + 8px) calc(var(--space-4) + 44px) var(--space-2) var(--space-4)}}.empty-state{color:var(--color-text-muted);padding:40px 16px;text-align:center}.empty-state .title{font-weight:600;margin-bottom:6px}.empty-state .desc{font-size:var(--text-sm)}.authscreens{background:var(--page);color:var(--text-1);display:grid;min-height:100vh;padding:16px;place-items:center}.auth-card{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius);box-shadow:0 8px 24px #00000026;max-width:440px;padding:24px;width:100%}.auth-toggle{display:flex;gap:12px;justify-content:center;margin-bottom:16px}.auth-toggle .tab{background:var(--surface-1);border:1px solid var(--border-1);border-radius:999px;color:var(--text-1);cursor:pointer;flex:1 1;max-width:180px;padding:10px}.auth-toggle .tab.active{background:var(--surface-2)}.login-form{grid-gap:12px;display:grid;gap:12px}.login-form label{grid-gap:6px;display:grid;gap:6px}.login-form .error{color:var(--danger);font-size:14px}.form-actions{display:flex;justify-content:flex-end}.form-actions.left{justify-content:flex-start}.link{background:none;border:none;color:var(--brand);cursor:pointer;font-size:14px;padding:0}.link:hover{text-decoration:underline}.input{transition:border-color .16s ease,box-shadow .16s ease}.status{opacity:0;transform:translateY(-50%) scale(.9);transition:transform .16s ease,opacity .16s ease}.status.show{opacity:1;transform:translateY(-50%) scale(1)}.fp-overlay{background:#0009;display:grid;inset:0;place-items:center;position:fixed}.fp-modal{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius);color:var(--text-1);max-width:calc(100vw - 32px);padding:20px;width:420px}.fp-modal h3{margin:0 0 8px}.fp-modal p{color:var(--text-2);margin:0 0 16px}.fp-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.fp-input{background:var(--surface-1);border-radius:var(--radius);padding:10px;width:100%}.fp-input,.fp-success{border:1px solid var(--border-1);color:var(--text-1)}.fp-success{background:var(--surface-2);border-radius:var(--radius);padding:12px}.signup-form{grid-gap:12px;display:grid;gap:12px}.signup-form label{grid-gap:6px;display:grid;gap:6px}.name-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.signup-form .error{color:var(--danger);font-size:14px}.form-header{margin-bottom:4px;text-align:center}.form-header .logo{font-size:28px}.form-header h2{font-weight:700;margin:8px 0 2px}.form-header .subtitle{color:var(--text-2);margin:0}.or{color:var(--text-3);font-size:12px;text-align:center}.input{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius);color:var(--text-1);height:44px;padding:10px 12px;width:100%}.input.valid{border-color:#22c55e;border-color:var(--success,#22c55e)}.input.invalid{border-color:var(--danger)}.input-group{display:grid;position:relative}.input-group.has-icon .icon{color:var(--text-3);left:10px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-group.has-icon .input{padding-left:36px}.btn-eye{background:#0000;border:0;color:var(--text-2);cursor:pointer;right:8px}.btn-eye,.status{position:absolute;top:50%;transform:translateY(-50%)}.status{align-items:center;color:var(--text-3);display:inline-flex;right:34px}.status.ok{color:#22c55e;color:var(--success,#22c55e)}.status.no{color:var(--danger)}.status.with-eye{right:34px}.pw-policy{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius);color:var(--text-2);margin-top:6px;padding:12px}.pw-policy .pw-title{color:var(--text-2);font-size:13px;margin-bottom:8px}.pw-policy ul{grid-gap:4px;display:grid;gap:4px;margin:0;padding-left:18px}.pw-policy li.ok{color:#22c55e;color:var(--success,#22c55e)}.pw-policy li.no{color:var(--text-3)}.btn-primary{cursor:pointer;height:44px;width:100%}.form-footer{color:var(--text-2);font-size:14px;text-align:center}.form-footer .muted{color:var(--brand);cursor:default}.modal-overlay{background:#0009;display:grid;inset:0;place-items:center;position:fixed}.modal{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius);color:var(--text-1);padding:24px;width:360px}.modal h3{margin-top:0}.modal .actions{display:flex;gap:12px;justify-content:flex-end}.btn-secondary{border:1px solid var(--border-1);border-radius:var(--radius);padding:10px 12px}.btn-primary{border:1px solid #0000;border-radius:var(--radius);color:var(--text-1);font-weight:600;padding:10px 12px}.conversation{padding:var(--space-3)}.conversation,.messages{display:flex;flex-direction:column}.messages{gap:var(--space-2);margin:0 auto;max-width:720px;padding:16px}.messages>div{padding:8px 0}.messages .bubble-inner{margin-left:auto;margin-right:auto}.messages.quick-actions-only{align-items:center;display:flex;flex-direction:column;justify-content:flex-end;min-height:60vh}.messages.quick-actions-only>:not(.quick-actions):not(.quick-actions-hero){display:none}.quick-actions-hero{color:var(--text-1);margin-bottom:2px;text-align:center}.quick-actions-hero h2{font-size:30px;margin:0 0 4px}.quick-actions-hero p{color:var(--text-2);font-size:20px;margin:0}.bubble{align-items:stretch;display:flex}.bubble.user{justify-content:flex-end}.bubble.assistant{justify-content:flex-start}.bubble-inner{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius);box-shadow:var(--shadow-1);display:flow-root;height:auto;overflow:visible;padding:16px;width:min(720px,100%)}.bubble.user .bubble-inner{background:var(--brand);border-color:#0000;color:#fff}.bubble.assistant .bubble-inner{background:var(--surface-1);color:var(--text-1)}.meta{align-items:center;color:var(--text-3);display:flex;font-size:11px;gap:8px;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}.text{display:block;font-size:15px;height:auto;line-height:1.5;overflow:visible;overflow-wrap:anywhere;white-space:pre-wrap}.bubble .text{background:#0000;border:0;padding:0}.text :where(p){margin:0 0 8px}.text :where(ul){list-style:disc;margin:8px 0 0 20px}.bubble-actions{display:block;margin-top:8px;overflow:visible;text-align:right}.edit-area textarea{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius-1);color:var(--text-1);min-height:80px;padding:8px 10px;width:100%}.assistant-extras{margin-top:8px}.math{background:var(--surface-2);border:1px solid var(--border-1);border-radius:var(--radius-1);padding:8px;white-space:pre-wrap}.chart-card{border:1px solid var(--border-1);border-radius:var(--radius);box-shadow:var(--shadow-1);display:flex;flex-direction:column;gap:6px;height:auto;min-height:320px;min-height:var(--chart-plot-height,320px);overflow:visible;padding:8px 8px 0}.chart-card,.chart-plot{background:#fff;width:100%}.chart-plot{border-radius:8px;height:320px;height:var(--chart-plot-height,320px);position:relative}.chart-plot>div{height:100%!important;width:100%!important}.chart-title{color:var(--text-1);font-size:14px;font-weight:600;padding:6px 8px 0}.chart-tooltip{grid-gap:2px;display:grid;gap:2px}.chart-tooltip-label{color:var(--text-2);font-size:12px}.chart-tooltip-value{color:var(--text-1);font-size:13px;font-weight:600}.chart-card svg,.chart-card>div{height:100%;width:100%}.chart-card svg{overflow:visible}.chart-pie-row{align-items:center;display:flex;width:100%}.chart-legend.column{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:10px;justify-content:center;padding:0 24px}.chart-legend-item{align-items:center;color:var(--text-1);display:flex;font-size:13px;gap:8px}.chart-legend-swatch{border-radius:50%;height:10px;width:10px}.chart-legend.row{align-items:center;display:flex;flex:1 1;flex-direction:row;flex-wrap:wrap;gap:16px;justify-content:center;padding:12px 0 8px}.embed-stack{display:flex;flex-direction:column;gap:12px;margin-top:8px;width:100%}.embed-block{box-sizing:border-box;width:100%}.embed-fallback{border:1px dashed var(--border-1);border-radius:var(--radius);color:var(--text-2);padding:10px}.embed-card{background:var(--surface-2);border:1px solid var(--border-1);border-radius:var(--radius);box-shadow:var(--shadow-1);gap:10px;padding:12px}.embed-card,.embed-card-header{display:flex;flex-direction:column}.embed-card-header{gap:2px}.embed-card-title{color:var(--text-1);font-weight:700}.embed-card-subtitle{color:var(--text-2);font-size:13px}.embed-card-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.embed-card-stat .stat-label{color:var(--text-3);font-size:12px}.embed-card-stat .stat-value{color:var(--text-1);font-size:16px;font-weight:700}.stat-delta{color:var(--text-2);font-size:12px}.stat-delta.up{color:var(--accent)}.stat-delta.down{color:var(--danger)}.embed-card-actions{display:flex;flex-wrap:wrap;gap:8px}.embed-stat-card{background:var(--surface-2);border:1px solid var(--border-1);border-radius:var(--radius);box-shadow:var(--shadow-1);padding:12px}.embed-stat-card .stat-label{color:var(--text-3);font-size:12px}.embed-stat-card .stat-value{color:var(--text-1);font-size:18px;font-weight:700}.embed-action-btn{align-items:center;border:1px solid var(--border-1);border-radius:var(--radius);cursor:pointer;display:inline-flex;gap:8px;padding:10px 14px;transition:transform var(--anim-fast),box-shadow var(--anim-fast)}.embed-action-btn,.embed-action-btn.primary{background:var(--brand);color:#fff}.embed-action-btn.secondary{background:var(--surface-2);color:var(--text-1)}.embed-action-btn:hover{box-shadow:var(--shadow-1);transform:translateY(-1px)}.embed-action-icon{font-size:16px}.embed-table-wrap{background:var(--surface-2);border:1px solid var(--border-1);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.embed-table{border-collapse:collapse;min-width:320px;width:100%}.embed-table td,.embed-table th{border-bottom:1px solid var(--border-1);padding:10px;text-align:left}.embed-table th{color:var(--text-2);font-size:13px}.embed-table td{color:var(--text-1);font-size:14px}.embed-table tr:last-child td{border-bottom:none}.embed-table tr.clickable:hover{background:var(--surface-3);cursor:pointer}.markdown-content{line-height:1.6}.markdown-content h1,.markdown-content h2,.markdown-content h3{font-weight:600;margin:1em 0 .5em}.markdown-content h1{font-size:1.5em}.markdown-content h2{font-size:1.3em}.markdown-content h3{font-size:1.1em}.markdown-content ul{margin:.5em 0;padding-left:1.5em}.markdown-content li{margin:.25em 0}.markdown-content code.inline-code{background-color:#0000001a;border-radius:3px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em;padding:.2em .4em}.markdown-content a{color:#2563eb;text-decoration:underline}.markdown-content a:hover{color:#1d4ed8}.quick-actions{grid-gap:12px;align-items:stretch;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(180px,1fr));justify-items:stretch;width:min(720px,90vw)}.quick-action-card{background:var(--surface-2);border:1px solid var(--border-1);border-radius:var(--radius);box-shadow:var(--shadow-1);color:var(--text-1);cursor:pointer;padding:12px;text-align:left;transition:transform var(--anim-fast),border-color var(--anim-fast),box-shadow var(--anim-fast)}.quick-action-card:hover{border-color:var(--brand);box-shadow:0 8px 20px #0000002e;transform:translateY(-1px)}.quick-action-label{font-weight:700;margin-bottom:4px}.quick-action-text{color:var(--text-2);font-size:13px;line-height:1.4}@media (max-width:540px){.quick-actions{gap:8px;grid-template-columns:repeat(2,minmax(140px,1fr));width:100%}.quick-action-card{padding:10px}.quick-action-text{font-size:12px}}.inputbar{background:var(--surface-2);border-top:1px solid var(--border-1);display:flex;flex-direction:column;gap:8px;height:100%;justify-content:center;padding:12px;position:static}.quick-intents{display:none}.chip{background:var(--surface-3);border:1px solid var(--border-1);border-radius:var(--radius-1);color:var(--text-1);cursor:pointer;font-size:13px;padding:6px 8px;transition:background var(--anim-std) ease}.chip:hover{background:var(--surface-2)}.input-row{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:44px 1fr 90px}.mic{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius-round);color:var(--text-1);cursor:pointer;height:44px;transition:background var(--anim-std) ease;width:44px}.mic:hover{background:var(--surface-2)}.mic.on{outline:2px solid var(--danger)}.inputbar .text{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius);color:var(--text-1);flex:1 1;height:44px;min-width:0;padding:0 14px}.inputbar .text::placeholder{color:var(--text-3)}.send{background:var(--brand);border:1px solid #0000;border-radius:var(--radius);color:var(--text-1);cursor:pointer;font-weight:600;height:44px;transition:filter var(--anim-fast) ease}.send:hover{filter:brightness(1.03)}.send:active{transform:none}.send:disabled{background:var(--surface-3);color:var(--text-3);cursor:not-allowed}.mt-legal{color:var(--text-3);font-size:11px;margin-top:4px}@media (max-width:900px){.inputbar{padding:12px}.quick-intents{display:none}.input-row{grid-template-columns:44px 1fr 90px}}.modal-card{max-width:960px;width:min(960px,92vw)}.modal-header{align-items:baseline}.progress{color:var(--text-3);font-size:12px;margin-left:auto}.modal-body{padding:20px}.btn{height:40px}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.grid{grid-gap:18px 20px;align-items:start;gap:18px 20px}.grid.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.field-input input,.field-input select{background:var(--surface-2);border:1px solid var(--border-1);border-radius:10px;color:var(--text-1);height:42px;padding:8px 12px;width:100%}.field-input input:focus,.field-input select:focus{outline:2px solid var(--brand);outline-offset:0}.radio-row{color:var(--text-1);display:flex;flex-wrap:wrap;gap:14px}.radio-row label{align-items:center;background:var(--surface-2);border:1px solid var(--border-1);border-radius:999px;display:inline-flex;gap:8px;padding:6px 10px}.radio-row input[type=radio]{accent-color:var(--brand)}.tooltip{align-items:center;background:var(--surface-2);border-radius:50%;color:var(--text-2);cursor:help;display:inline-flex;height:18px;justify-content:center;width:18px}.error{font-size:14px;margin-top:8px}.error ul{margin:8px 0 0 20px}.error li{margin:4px 0}.field-error .field-input input,.field-error .field-input select{border-color:var(--danger)}.field-error-msg{color:var(--danger);font-size:12px;margin-top:-4px}.modal-backdrop{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal)}.modal-card{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--radius);box-shadow:var(--shadow-2);display:flex;flex-direction:column;max-height:90vh;max-width:1080px;min-width:360px;overflow:hidden;position:relative;width:min(1080px,96vw)}.modal-card.large{max-width:1180px}.modal-header{align-items:center;background:var(--surface-1);border-bottom:1px solid var(--border-1);display:flex;gap:12px;padding:16px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.modal-header h2{color:var(--text-1);font-size:20px;font-weight:700;margin:0}.icon-close{background:var(--surface-2);border:1px solid var(--border-1);border-radius:8px;color:var(--text-2);cursor:pointer;height:32px;margin-left:auto;width:32px}.icon-close:hover{filter:brightness(1.1)}.modal-body{flex:1 1;min-height:0;overflow:auto;padding:16px 20px 20px}.modal-body,.modal-footer{background:var(--surface-1)}.modal-footer{border-top:1px solid var(--border-1);bottom:0;display:flex;gap:10px;justify-content:flex-end;padding:14px 20px;position:-webkit-sticky;position:sticky;z-index:2}.btn{border:1px solid #0000;border-radius:10px;cursor:pointer;font-weight:600;height:36px;padding:0 14px;transition:transform var(--anim-fast) ease,background var(--anim-fast) ease,border-color var(--anim-fast) ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--brand);color:#fff}.btn-secondary{background:var(--surface-2);color:var(--text-1)}.btn-ghost,.btn-secondary{border-color:var(--border-1)}.btn-ghost{background:#0000;color:var(--text-2)}.tabs{background:var(--surface-1);border-bottom:1px solid var(--border-1);display:flex;gap:8px;padding:10px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:1}.tab{background:var(--surface-2);border:1px solid var(--border-1);border-radius:var(--radius-round);color:var(--text-1);cursor:pointer;padding:6px 12px}.tab.active{background:var(--brand);border-color:#0000;color:#fff}.toolbar{align-items:center;display:flex;gap:8px;margin:8px 0 12px}.data-table{background:var(--surface-1);border:1px solid var(--border-1);border-collapse:initial;border-radius:10px;border-spacing:0;overflow:hidden;width:100%}.data-table td,.data-table th{border-bottom:1px solid var(--border-1);padding:10px 12px;text-align:left}.data-table thead th{color:var(--text-2);font-weight:600}.data-table tbody tr:hover,.data-table thead th{background:var(--surface-2)}.data-table tbody tr:last-child td{border-bottom:none}.row-actions{display:flex;gap:8px}.danger{color:var(--danger)}.grid{grid-gap:16px 18px;display:grid;gap:16px 18px;grid-template-columns:repeat(2,minmax(0,1fr))}.field{flex-direction:column}.field,.field-label{display:flex;gap:8px}.field-label{align-items:center;color:var(--text-1);font-weight:600}.field-input input,.field-input select,textarea{background:var(--surface-2);border:1px solid var(--border-1);border-radius:10px;color:var(--text-1);min-height:40px;padding:10px 12px;width:100%}textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;min-height:120px}.error{color:var(--danger);margin:8px 0}.empty{color:var(--text-3);padding:12px}@media (max-width:920px){.grid{grid-template-columns:1fr}}.plaid-tab{display:flex;flex-direction:column;gap:16px}.plaid-tab-add{display:flex;justify-content:flex-end;margin-top:4px}.plaid-link-container{align-items:flex-start;display:flex;flex-direction:column;gap:8px;padding:0 0 16px}.plaid-link-button{align-items:center;background:#4f46e5;background:var(--brand,#4f46e5);border:none;border-radius:999px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:140px;padding:8px 16px;transition:all .2s ease}.plaid-link-actions{position:relative}.plaid-link-dropdown{background:#fff;background:var(--surface-1,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-1,#e0e0e0);border-radius:10px;box-shadow:0 8px 20px #0f172a1f;margin-top:8px;padding:4px;position:absolute;right:0;top:100%;width:260px;z-index:10}.plaid-link-option{align-items:flex-start;background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;font-size:13px;gap:2px;padding:8px 10px;text-align:left;width:100%}.plaid-link-option:hover{background-color:#f3f4f6;background-color:var(--surface-2,#f3f4f6)}.plaid-link-option-label{color:#1a1a1a;color:var(--text-primary,#1a1a1a);font-weight:500}.plaid-link-option-hint{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px}.plaid-link-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.plaid-link-button:active:not(:disabled){transform:translateY(0)}.plaid-link-button:disabled{cursor:not-allowed;opacity:.6}.plaid-link-button .icon{font-size:20px}.plaid-link-description{color:#666;color:var(--text-secondary,#666);font-size:14px;margin:0;max-width:300px;text-align:center}.plaid-link-error,.plaid-link-loading{align-items:center;display:flex;flex-direction:column;gap:16px;padding:24px}.spinner-small{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;width:16px}.error-message{margin:0}.plaid-accounts-list{display:flex;flex-direction:column;gap:12px;padding:0}.accounts-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.accounts-header h3{color:#1a1a1a;color:var(--text-primary,#1a1a1a);font-size:20px;font-weight:600;margin:0}.sync-all-button{background-color:initial;border:1px solid #667eea;border-radius:6px;color:#667eea;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.sync-all-button:hover:not(:disabled){background-color:#667eea;color:#fff}.sync-all-button:disabled{cursor:not-allowed;opacity:.5}.error-banner{background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:14px;padding:12px}.item-card{background:#fff;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:16px;box-shadow:0 8px 20px #0f172a14;color:#111827;color:var(--text-primary,#111827);padding:16px 18px}.item-main{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.item-left{display:flex;flex:1 1;flex-direction:column;gap:12px}.institution-row{align-items:center;display:flex;gap:12px}.item-actions-row{align-items:center;display:flex;gap:8px;margin-top:0}.institution-logo{align-items:center;background:#94a3b829;border-radius:12px;display:flex;font-size:22px;height:40px;justify-content:center;width:40px}.institution-text{display:flex;flex-direction:column;gap:2px}.institution-name{color:#111827;color:var(--text-primary,#111827);font-size:16px;font-weight:600;margin:0}.institution-subtitle{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px}.institution-balance{color:#2563eb;font-size:20px;font-weight:700}.status-badge{border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.08em;padding:4px 12px;text-transform:uppercase}.status-active{background-color:#22c55e;color:#052e16}.status-error{background-color:#f8d7da;color:#721c24}.status-warning{background-color:#fff3cd;color:#856404}.item-actions{display:flex;gap:8px}.item-right{align-items:flex-start;display:flex}.item-more-wrapper{position:relative}.item-more-menu{background:#020617;border:1px solid #94a3b866;border-radius:10px;box-shadow:0 10px 25px #0f172a99;margin-top:6px;min-width:150px;padding:4px;position:absolute;right:0;top:100%;z-index:20}.item-more-menu-item{background:#0000;border:none;border-radius:8px;color:#e5e7eb;cursor:pointer;font-size:13px;padding:6px 10px;text-align:left;width:100%}.item-more-menu-item:hover{background:#f871711f}.item-more-remove{color:#fecaca}.item-more,.item-refresh{align-items:center;background:#0000;border:none;color:#111827;color:var(--text-primary,#111827);cursor:pointer;display:flex;font-size:12px;gap:6px;padding:6px 10px}.item-more:hover:not(:disabled),.item-refresh:hover:not(:disabled){background-color:#f3f4f6;border-radius:999px;box-shadow:0 2px 6px #0f172a2e}.item-refresh .refresh-icon{font-size:14px}.item-more .more-icon{font-size:16px;line-height:1}.item-more:disabled,.item-refresh:disabled{cursor:not-allowed;opacity:.55}.item-meta{border-top:1px solid #94a3b859;color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;font-size:12px;gap:16px;margin-bottom:4px;margin-top:10px;padding-top:8px}.meta-item{align-items:center;display:flex;gap:4px}.item-accounts{gap:8px;margin-top:8px}.item-account,.item-accounts{display:flex;flex-direction:column}.item-account{font-size:12px;gap:2px}.item-account,.item-account-name{color:#111827;color:var(--text-primary,#111827)}.item-account-name{font-size:15px;font-weight:500}.item-account-mask{font-weight:400}.item-account-last-synced,.item-account-mask{color:#6b7280;color:var(--text-secondary,#6b7280)}.item-account-value{color:#2563eb;font-size:18px;font-weight:600}.accounts-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:8px}.account-card{background-color:initial;border:none;border-radius:0;display:flex;gap:10px;padding:8px 0;transition:background-color .15s ease}.account-card:hover{background-color:#f8f9fa;background-color:var(--bg-secondary,#f8f9fa);box-shadow:none}.account-icon{font-size:22px;line-height:1}.account-details{display:flex;flex:1 1;flex-direction:column;gap:4px}.account-name{color:#1a1a1a;color:var(--text-primary,#1a1a1a);font-size:14px;font-weight:600}.account-mask{font-weight:400}.account-mask,.account-type{color:#666;color:var(--text-secondary,#666)}.account-type{font-size:12px;text-transform:capitalize}.account-balance{color:#667eea;font-size:16px;font-weight:700;margin-top:4px}.plaid-accounts-empty,.plaid-accounts-error,.plaid-accounts-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:32px 16px;text-align:center}.spinner{animation:spin .8s linear infinite;border:4px solid #667eea33;border-radius:50%;border-top-color:#667eea;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.empty-icon{font-size:64px;margin:0 0 16px}.empty-message{color:#1a1a1a;color:var(--text-primary,#1a1a1a);font-size:18px;font-weight:600;margin:0 0 8px}.empty-description{color:#666;color:var(--text-secondary,#666);font-size:14px;margin:0;max-width:400px}.error-message{color:#e74c3c;color:var(--error-color,#e74c3c);font-size:14px;margin:0 0 16px}.retry-button{background-color:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s ease}.retry-button:hover{background-color:#5568d3}
/*# sourceMappingURL=main.0cb2da06.css.map*/