:root{--color-scheme: light;--page-bg: #eef2f7;--text: #172033;--text-strong: #0f172a;--text-muted: #475569;--text-subtle: #64748b;--surface: rgba(255, 255, 255, .92);--surface-solid: #ffffff;--surface-muted: #f8fafc;--input-bg: #ffffff;--control-bg: #172033;--control-text: #ffffff;--border: #e2e8f0;--border-muted: #dbe3ef;--border-strong: #cbd5e1;--icon-bg: rgba(255, 255, 255, .82);--icon-hover-bg: #ffffff;--icon-border: rgba(148, 163, 184, .45);--shadow: 0 20px 45px rgba(15, 23, 42, .08);--shadow-hover: 0 12px 24px rgba(15, 23, 42, .1);--shadow-hover-strong: 0 24px 48px rgba(15, 23, 42, .12);--focus: rgba(37, 99, 235, .32);--segment-bg: #eef2f7;--success: #15803d;--success-strong: #16a34a;--success-bg: #dcfce7;--success-text: #166534;--warning: #f59e0b;--warning-bg: #fef3c7;--warning-text: #92400e;--error: #b91c1c;--error-strong: #dc2626;--error-bg: #fee2e2;--error-text: #991b1b;--decision: #2563eb;--decision-bg: #dbeafe;--decision-text: #1d4ed8;--neutral-bg: #e2e8f0;--code-bg: #0f172a;--code-text: #e2e8f0;color:var(--text);background:var(--page-bg);color-scheme:var(--color-scheme);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--color-scheme: dark;--page-bg: #101923;--text: #dcebf1;--text-strong: #f2fbff;--text-muted: #adc1cc;--text-subtle: #86a5b5;--surface: rgba(23, 40, 57, .96);--surface-solid: #172839;--surface-muted: #132331;--input-bg: #132331;--control-bg: #6fbfd3;--control-text: #06232d;--border: #29495a;--border-muted: #33586a;--border-strong: #477083;--icon-bg: rgba(23, 40, 57, .94);--icon-hover-bg: #20384b;--icon-border: rgba(111, 159, 177, .5);--shadow: 0 14px 32px rgba(3, 8, 13, .26);--shadow-hover: 0 10px 22px rgba(3, 8, 13, .22);--shadow-hover-strong: 0 18px 38px rgba(3, 8, 13, .3);--focus: rgba(111, 191, 211, .42);--segment-bg: #122637;--success: #86cfa8;--success-strong: #78c99d;--success-bg: rgba(134, 207, 168, .17);--success-text: #d4f5e0;--warning: #e5b768;--warning-bg: rgba(229, 183, 104, .16);--warning-text: #f4dca8;--error: #ef8989;--error-strong: #e97070;--error-bg: rgba(239, 137, 137, .16);--error-text: #ffd1d1;--decision: #79c7dc;--decision-bg: rgba(121, 199, 220, .18);--decision-text: #c9f1fb;--neutral-bg: #243f50;--code-bg: #0b1118;--code-text: #dbeafe}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-scheme: dark;--page-bg: #101923;--text: #dcebf1;--text-strong: #f2fbff;--text-muted: #adc1cc;--text-subtle: #86a5b5;--surface: rgba(23, 40, 57, .96);--surface-solid: #172839;--surface-muted: #132331;--input-bg: #132331;--control-bg: #6fbfd3;--control-text: #06232d;--border: #29495a;--border-muted: #33586a;--border-strong: #477083;--icon-bg: rgba(23, 40, 57, .94);--icon-hover-bg: #20384b;--icon-border: rgba(111, 159, 177, .5);--shadow: 0 14px 32px rgba(3, 8, 13, .26);--shadow-hover: 0 10px 22px rgba(3, 8, 13, .22);--shadow-hover-strong: 0 18px 38px rgba(3, 8, 13, .3);--focus: rgba(111, 191, 211, .42);--segment-bg: #122637;--success: #86cfa8;--success-strong: #78c99d;--success-bg: rgba(134, 207, 168, .17);--success-text: #d4f5e0;--warning: #e5b768;--warning-bg: rgba(229, 183, 104, .16);--warning-text: #f4dca8;--error: #ef8989;--error-strong: #e97070;--error-bg: rgba(239, 137, 137, .16);--error-text: #ffd1d1;--decision: #79c7dc;--decision-bg: rgba(121, 199, 220, .18);--decision-text: #c9f1fb;--neutral-bg: #243f50;--code-bg: #0b1118;--code-text: #dbeafe}}*{box-sizing:border-box}body{background:var(--page-bg);color:var(--text);margin:0}button,input{font:inherit}button:disabled{cursor:not-allowed;opacity:.65}button{border:0;border-radius:999px;background:var(--control-bg);color:var(--control-text);cursor:pointer;padding:.75rem 1.1rem}input{background:var(--input-bg);width:100%;border:1px solid var(--border-strong);border-radius:.9rem;color:var(--text);margin-top:.35rem;padding:.8rem .9rem}label{color:var(--text-muted);display:grid;font-size:.9rem;gap:.2rem}.auth-page{align-items:center;display:grid;min-height:100vh;padding:1rem}.auth-card{margin:0 auto;max-width:420px;width:100%}.app-shell{margin:0 auto;max-width:1320px;padding:1.25rem}.topbar{align-items:center;display:flex;gap:.85rem;justify-content:space-between;margin-bottom:.95rem}.topbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.48rem}.topbar-actions a{color:var(--text);font-weight:700;text-decoration:none}.icon-button{align-items:center;background:var(--icon-bg);border:1px solid var(--icon-border);border-radius:999px;color:var(--text);display:inline-flex;height:2.42rem;justify-content:center;padding:0;width:2.42rem}.icon-button:hover{background:var(--icon-hover-bg);box-shadow:var(--shadow-hover)}.icon-button svg{fill:currentColor;height:1.1rem;width:1.1rem}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.card{background:var(--surface);border:1px solid var(--icon-border);border-radius:.85rem;box-shadow:var(--shadow);padding:1rem}.summary-grid,.positions-grid{display:grid;gap:.72rem;margin-bottom:.72rem}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.positions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card strong{display:block;font-size:clamp(1.35rem,3vw,2.05rem);line-height:1.1}.metric-action{background:var(--surface);color:var(--text);display:block;text-align:left;width:100%}.metric-action:hover{border-color:var(--decision);box-shadow:var(--shadow-hover-strong);transform:translateY(-1px)}.metric-action:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.section-card,.trigger-card{margin-bottom:.72rem}.analysis-form{align-items:end;display:grid;gap:.72rem;grid-template-columns:1fr auto}.analysis-form button{align-items:center;display:inline-flex;gap:.45rem;justify-content:center}.analysis-loader{animation:spin .8s linear infinite;border:2px solid color-mix(in srgb,var(--control-text) 38%,transparent);border-radius:999px;border-top-color:var(--control-text);height:.95rem;width:.95rem}.stream-panel{background:var(--surface-muted);border:1px solid var(--border);border-radius:.75rem;margin-top:.72rem;padding:.72rem}.stream-heading{align-items:center;color:var(--text-muted);display:grid;font-size:.82rem;font-weight:700;gap:.58rem;grid-template-columns:1fr auto;margin-bottom:.48rem;text-transform:uppercase}.stream-panel ol{display:grid;gap:.36rem;list-style:none;margin:0;padding:0}.stream-panel li{color:var(--text);font-size:.9rem;line-height:1.4}.stream-event{background:var(--surface-solid);border:1px solid var(--border);border-left:4px solid var(--text-subtle);border-radius:.58rem;display:grid;gap:.2rem;padding:.54rem .62rem}.stream-event strong{color:var(--text-strong);font-size:.9rem}.stream-event span,.stream-event p{color:var(--text-muted);font-size:.86rem;line-height:1.45;margin:0}.stream-event.success{border-left-color:var(--success-strong)}.stream-event.warning{border-left-color:var(--warning)}.stream-event.error{border-left-color:var(--error-strong)}.stream-event.decision{border-left-color:var(--decision)}.stream-event .action-cell{margin-top:.25rem;min-width:0}.market-data-summary{background:var(--surface-muted);border:1px solid var(--border-muted);border-radius:.5rem;display:grid;gap:.28rem;margin-top:.25rem;padding:.42rem .5rem}.market-data-summary div{display:grid;gap:.12rem}.market-data-summary strong{color:var(--text);font-size:.82rem}.market-data-summary span{color:var(--text-muted);font-size:.8rem}.council-report{display:grid;gap:.34rem;margin-top:.24rem}.council-report h4,.council-report h5,.council-report p,.council-report ul{margin:0}.council-report h4,.council-report h5{color:var(--text);font-size:.88rem;line-height:1.35}.council-report p,.council-report li{color:var(--text-muted);font-size:.84rem;line-height:1.45}.council-report ul{display:grid;gap:.25rem;padding-left:1.1rem}.narrow-card{max-width:560px}.form-grid{display:grid;gap:.72rem}.section-heading{align-items:flex-start;display:flex;gap:.72rem;justify-content:space-between;margin-bottom:.68rem}.section-heading h2,.section-heading p{margin-top:0}.section-heading span{color:var(--text-subtle);font-size:.9rem}.suggestion-controls{align-items:flex-end;display:grid;gap:.34rem;justify-items:end}.symbol-filter{align-items:end;color:var(--text-subtle);display:grid;font-size:.76rem;font-weight:700;gap:.25rem;justify-items:end;text-transform:uppercase}.symbol-filter input{max-width:11rem;min-width:0;text-transform:uppercase}.segmented-control{background:var(--segment-bg);border:1px solid var(--border-muted);border-radius:999px;display:flex;flex-wrap:wrap;gap:.2rem;padding:.18rem}.segmented-control button{background:transparent;color:var(--text-muted);font-size:.78rem;font-weight:700;padding:.32rem .54rem}.segmented-control button.selected{background:var(--control-bg);color:var(--control-text)}.table-wrap{overflow-x:auto}.suggestions-table-wrap{overflow-x:visible}table{border-collapse:collapse;min-width:620px;width:100%}th,td{border-bottom:1px solid var(--border);padding:.64rem .58rem;text-align:left;vertical-align:top}th{color:var(--text-subtle);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--surface-muted)}.pill{border-radius:999px;background:var(--neutral-bg);color:var(--text);display:inline-flex;font-size:.8rem;font-weight:700;padding:.2rem .48rem}.pill.completed{background:var(--success-bg);color:var(--success-text)}.pill.failed,.pill.cancelled{background:var(--error-bg);color:var(--error-text)}.pill.running,.pill.queued{background:var(--decision-bg);color:var(--decision-text)}.pill.active{background:var(--success-bg);color:var(--success-text)}.pill.expired{background:var(--warning-bg);color:var(--warning-text)}.pill.archived{background:var(--neutral-bg);color:var(--text-muted)}.small-button{border-radius:999px;font-size:.82rem;padding:.38rem .64rem;white-space:nowrap}.action-cell{align-items:flex-start;display:grid;gap:.28rem;justify-items:start;min-width:10rem}.action-cell .error,.action-cell .success{font-size:.82rem}.subtle-line{color:var(--text-subtle);display:block;font-size:.78rem;margin-top:.2rem;white-space:nowrap}.source-links{display:grid;gap:.34rem;margin-top:.58rem}.source-links.compact{gap:.22rem;margin-top:.28rem}.source-links a{border:1px solid var(--border-muted);border-radius:.46rem;color:var(--text);display:grid;gap:.12rem;max-width:36rem;padding:.36rem .44rem;text-decoration:none}.source-links.compact a{max-width:14rem;padding:.26rem .36rem}.source-links a:hover{background:var(--surface-muted);border-color:var(--text-subtle)}.source-links span,.source-links small{color:var(--text-subtle);font-size:.69rem;line-height:1.3}.source-links strong{color:var(--text);font-size:.76rem;line-height:1.35}button.source-more{background:transparent;border:0;color:var(--text-subtle);cursor:pointer;font-size:.78rem;font-weight:700;justify-self:start;padding:0;text-align:left}button.source-more:hover{color:var(--decision-text);text-decoration:underline}button.source-more:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.source-more{color:var(--text-subtle);display:inline-flex;width:fit-content}.suggestions-table{min-width:0;table-layout:fixed}.suggestions-table th,.suggestions-table td{overflow-wrap:anywhere}.suggestions-table .symbol-column{width:23%}.suggestions-table .recommendation-column{overflow-wrap:normal;width:15%;word-break:normal}.suggestions-table .reason-column{width:16%}.suggestions-table .analysis-column{width:25%}.suggestions-table .market-data-column{width:13%}.suggestions-table .action-column{width:8%}.suggestions-table .subtle-line{white-space:normal}.suggestions-table .source-links.compact a{max-width:100%}.suggestions-table .action-cell{min-width:0}.suggestions-table .small-button{max-width:100%;white-space:normal}.suggestion-reason,.suggestion-analysis{max-width:none;min-width:0}.suggestion-reason p,.suggestion-analysis p{color:var(--text);font-size:.86rem;line-height:1.45;margin:0}.suggestion-analysis details{margin-top:.45rem}.suggestion-analysis summary{color:var(--decision-text);cursor:pointer;font-size:.8rem;font-weight:700}.report-full{background:var(--surface-muted);border:1px solid var(--border-muted);border-radius:.65rem;margin-top:.5rem;max-height:18rem;overflow:auto;padding:.6rem}.suggestion-recommendation strong{display:block;line-height:1.25;overflow-wrap:normal;word-break:normal}.suggestion-market-data{display:grid;gap:.35rem;margin:0}.suggestion-market-data div{display:grid;gap:.1rem}.suggestion-market-data dt{color:var(--text-subtle);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.suggestion-market-data dd{color:var(--text);font-size:.82rem;margin:0}.suggestion-page-controls{align-items:center;display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.suggestion-page-controls span{color:var(--text-muted);font-size:.86rem;font-weight:700}.empty-state{color:var(--text-subtle)}.detail-panel{margin-top:1rem}.timeline{display:grid;gap:.9rem;list-style:none;margin:0;padding:0}.timeline li{border-left:3px solid var(--border-strong);display:grid;gap:.35rem;padding-left:.8rem}.timeline li.stream-event{border-left-width:4px;padding:.65rem .75rem}.timeline span,.timeline code{color:var(--text-subtle);font-size:.82rem}pre{background:var(--code-bg);border-radius:.8rem;color:var(--code-text);margin:0;overflow-x:auto;padding:.8rem}.reasoning{color:var(--text);line-height:1.6}.detail-grid{display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr));margin:1rem 0 0}.detail-grid div{background:var(--surface-muted);border-radius:.9rem;padding:.8rem}.detail-grid dt{color:var(--text-subtle);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.detail-grid dd{margin:.25rem 0 0}.eyebrow{color:var(--text-subtle);font-size:.78rem;font-weight:700;letter-spacing:.08em;margin:0 0 .25rem;text-transform:uppercase}.error{color:var(--error)}.success{color:var(--success)}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 720px){.app-shell{padding:1rem}.analysis-form{align-items:stretch;grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.section-heading{flex-direction:column}.suggestion-controls{align-items:flex-start;justify-items:start;width:100%}.summary-grid,.positions-grid,.detail-grid{grid-template-columns:1fr}}
