:root{color-scheme:dark;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;--bg: #090d10;--sidebar: #0c1115;--surface: #11171b;--surface-soft: #151c21;--surface-elevated: #182127;--surface-hover: #1b252b;--border: #263138;--border-soft: #1d272d;--text: #edf2f1;--text-soft: #b3bec1;--text-muted: #75848b;--green: #56d6b2;--green-strong: #32b98f;--green-soft: rgba(86, 214, 178, .11);--blue: #7da6ff;--red: #ee7c86;--red-soft: rgba(238, 124, 134, .1);--amber: #e7b86e;--purple: #c6a4ff;--chart-grid: rgba(124, 142, 150, .14);--shadow: 0 20px 50px rgba(0, 0, 0, .22)}@media(prefers-color-scheme:light){:root{color-scheme:light;--bg: #eef2f1;--sidebar: #f8faf9;--surface: #ffffff;--surface-soft: #f4f7f6;--surface-elevated: #ffffff;--surface-hover: #edf3f1;--border: #d7dfdc;--border-soft: #e5ebe9;--text: #17211f;--text-soft: #52615f;--text-muted: #81908d;--green: #168e6e;--green-strong: #087858;--green-soft: rgba(22, 142, 110, .09);--blue: #416fc6;--red: #c54d59;--red-soft: rgba(197, 77, 89, .08);--amber: #a86e17;--purple: #7651bd;--chart-grid: rgba(57, 83, 77, .11);--shadow: 0 18px 44px rgba(26, 50, 44, .09)}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button,a{color:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:248px;display:flex;flex-direction:column;padding:22px 16px;border-right:1px solid var(--border-soft);background:var(--sidebar)}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 8px 26px}.sidebar-brand>div:nth-child(2){display:grid;gap:2px}.sidebar-brand strong{font-size:16px;letter-spacing:-.025em}.sidebar-brand span{color:var(--text-muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.brand-mark{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:11px;color:#07110e;background:var(--green);box-shadow:0 8px 22px #56d6b226}.brand-mark.small{width:28px;height:28px;border-radius:8px}.nav-close{display:none!important;margin-left:auto}.sidebar nav{display:grid;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:12px;min-height:43px;padding:0 12px;border-radius:9px;color:var(--text-muted);text-decoration:none;font-size:13px;font-weight:550;transition:.16s ease}.sidebar nav a:hover{color:var(--text);background:var(--surface-soft)}.sidebar nav a.active{color:var(--green);background:var(--green-soft)}.sidebar-status{margin-top:auto;padding:14px;border:1px solid var(--border-soft);border-radius:11px;background:var(--surface)}.sidebar-status>div{display:flex;align-items:center;gap:8px;font-size:11px}.sidebar-status p{margin:14px 0 0;color:var(--text-muted);font-size:10px;line-height:1.6}.sidebar-status p strong{color:var(--text-soft);font-weight:500}.pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px var(--green-soft)}.sidebar-footer{display:grid;gap:14px;padding:18px 7px 0}.sidebar-footer button{display:flex;align-items:center;gap:9px;padding:0;color:var(--text-muted);border:0;background:transparent;cursor:pointer;font-size:12px}.sidebar-footer button:hover{color:var(--text)}.sidebar-footer span{color:var(--text-muted);font-size:9px;letter-spacing:.04em}main{min-height:100vh;margin-left:248px}.topbar{position:sticky;top:0;z-index:20;min-height:78px;display:flex;align-items:center;padding:0 34px;border-bottom:1px solid var(--border-soft);background:color-mix(in srgb,var(--bg) 87%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar h1{margin:2px 0 0;font-size:19px;letter-spacing:-.035em}.eyebrow{color:var(--text-muted);font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.topbar-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.paper-badge,.data-badge,.ai-mode{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--border);border-radius:7px;color:var(--text-muted);background:var(--surface);font-size:9px;font-weight:750;letter-spacing:.08em}.paper-badge{color:var(--green);border-color:color-mix(in srgb,var(--green) 30%,var(--border));background:var(--green-soft)}.primary-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border:0;border-radius:8px;color:#07110e;background:var(--green);font-size:12px;font-weight:750;cursor:pointer;transition:.16s ease}.primary-button:hover:not(:disabled){background:color-mix(in srgb,var(--green) 88%,white);transform:translateY(-1px)}.primary-button:disabled{opacity:.55;cursor:wait}.primary-button.wide{width:100%;min-height:46px}.icon-button{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer}.icon-button:hover{background:var(--surface-hover)}.menu-button{display:none;margin-right:12px}.content{width:min(1500px,100%);margin:0 auto;padding:26px 34px 50px}.simulation-banner{min-height:59px;display:flex;align-items:center;justify-content:space-between;margin-bottom:27px;padding:11px 15px;border:1px solid color-mix(in srgb,var(--green) 24%,var(--border));border-radius:10px;background:linear-gradient(90deg,var(--green-soft),transparent)}.simulation-banner>div{display:flex;align-items:center;gap:11px;color:var(--green)}.simulation-banner>div div{display:grid;gap:2px}.simulation-banner strong{color:var(--text);font-size:11px}.simulation-banner span{color:var(--text-muted);font-size:10px}.simulation-banner>span{padding:5px 8px;border-radius:6px;background:var(--surface);font-size:9px;font-weight:700}.error-banner{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:11px 13px;border:1px solid color-mix(in srgb,var(--red) 35%,var(--border));border-radius:9px;color:var(--red);background:var(--red-soft);font-size:12px}.error-banner button{display:grid;place-items:center;margin-left:auto;padding:0;border:0;background:none;cursor:pointer}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:0 0 13px}.section-heading h2{margin:3px 0 0;font-size:17px;letter-spacing:-.025em}.updated-at{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:10px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.metric-card{min-height:113px;display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--border-soft);border-radius:11px;background:var(--surface)}.metric-icon{width:33px;height:33px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;color:var(--text-soft);background:var(--surface-soft)}.metric-card.positive .metric-icon{color:var(--green);background:var(--green-soft)}.metric-card.negative .metric-icon{color:var(--red);background:var(--red-soft)}.metric-copy{min-width:0;display:grid;gap:5px}.metric-copy>span{color:var(--text-muted);font-size:10px}.metric-copy strong{overflow:hidden;font-size:clamp(17px,1.4vw,22px);letter-spacing:-.035em;text-overflow:ellipsis}.metric-copy small{color:var(--text-muted);font-size:9px}.metric-card.positive .metric-copy strong{color:var(--green)}.metric-card.negative .metric-copy strong{color:var(--red)}.dashboard-grid{display:grid;gap:12px;margin-top:12px}.primary-grid{grid-template-columns:minmax(0,2fr) minmax(260px,.9fr) minmax(300px,1.08fr)}.decision-grid{grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}.lower-grid{grid-template-columns:minmax(0,1.25fr) minmax(350px,.9fr);align-items:stretch}.panel{min-width:0;border:1px solid var(--border-soft);border-radius:12px;background:var(--surface)}.panel-header{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--border-soft)}.panel-header h3{margin:3px 0 0;font-size:14px;letter-spacing:-.02em}.panel-header>svg{color:var(--text-muted)}.chart-legend{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:9px}.chart-legend span{display:flex;align-items:center;gap:5px}.legend-dot{width:14px;height:2px;border-radius:2px}.legend-dot.portfolio{background:var(--green)}.legend-dot.benchmark{background:var(--blue)}.chart-wrap{height:260px;padding:14px 9px 4px 0}.chart-empty-note{display:flex;align-items:center;gap:7px;padding:9px 16px 12px;color:var(--text-muted);font-size:9px}.allocation-layout{padding:14px 15px 16px}.donut-wrap{position:relative;width:172px;height:154px;margin:0 auto 8px}.donut-center{position:absolute;inset:0;display:grid;place-content:center;text-align:center;pointer-events:none}.donut-center strong{font-size:18px}.donut-center span{color:var(--text-muted);font-size:9px}.allocation-list{display:grid;gap:9px}.allocation-row{display:grid;grid-template-columns:7px 1fr auto;align-items:center;gap:8px;font-size:10px}.allocation-row i{width:7px;height:7px;border-radius:2px}.allocation-row span{overflow:hidden;color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap}.allocation-row strong{font-size:10px}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:6px;font-size:8px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.status-pill.favorevole{color:var(--green);background:var(--green-soft)}.status-pill.neutrale{color:var(--blue);background:color-mix(in srgb,var(--blue) 11%,transparent)}.status-pill.difensivo{color:var(--amber);background:color-mix(in srgb,var(--amber) 11%,transparent)}.status-pill.stress{color:var(--red);background:var(--red-soft)}.status-pill.simulated{color:var(--purple);background:color-mix(in srgb,var(--purple) 11%,transparent)}.regime-summary{min-height:54px;margin:0;padding:14px 16px 7px;color:var(--text-soft);font-size:11px;line-height:1.55}.probability-list{display:grid;gap:10px;padding:8px 16px 14px}.probability-row>div:first-child{display:flex;justify-content:space-between;margin-bottom:5px;font-size:9px}.probability-row span{color:var(--text-muted)}.progress-track{height:4px;overflow:hidden;border-radius:3px;background:var(--surface-soft)}.progress-track i{display:block;height:100%;border-radius:inherit}.prob-riskOn{background:var(--green)}.prob-neutral{background:var(--blue)}.prob-inflation{background:var(--amber)}.prob-stress{background:var(--red)}.signal-details{border-top:1px solid var(--border-soft)}.signal-details summary{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;color:var(--text-muted);font-size:9px;cursor:pointer;list-style:none}.signal-details[open] summary svg{transform:rotate(90deg)}.signal-details ul{margin:0;padding:0 30px 14px;color:var(--text-muted);font-size:9px;line-height:1.5}.decision-panel{min-height:390px}.decision-list{padding:2px 16px 8px}.decision-card{display:grid;grid-template-columns:32px 1fr;gap:10px;padding:15px 0;border-bottom:1px solid var(--border-soft)}.decision-card:last-child{border-bottom:0}.decision-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;color:var(--blue);background:color-mix(in srgb,var(--blue) 10%,transparent)}.decision-icon.protezione{color:var(--red);background:var(--red-soft)}.decision-icon.attesa{color:var(--amber);background:color-mix(in srgb,var(--amber) 11%,transparent)}.decision-top{display:flex;justify-content:space-between;gap:12px}.decision-top span{color:var(--text-muted);font-size:8px;font-weight:700;letter-spacing:.08em}.decision-top h4{margin:3px 0 0;font-size:12px}.decision-top time{flex:0 0 auto;color:var(--text-muted);font-size:8px}.decision-body>p{margin:8px 0;color:var(--text-soft);font-size:10px;line-height:1.5}.trade-chips{display:flex;flex-wrap:wrap;gap:5px}.trade-chips span{display:inline-flex;align-items:center;gap:3px;padding:5px 6px;border-radius:5px;font-size:8px}.trade-chips .buy{color:var(--green);background:var(--green-soft)}.trade-chips .sell{color:var(--red);background:var(--red-soft)}.decision-news{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:8px;color:var(--text-muted);font-size:8px}.decision-news a{display:inline-flex;align-items:center;gap:3px;max-width:250px;overflow:hidden;color:var(--blue);text-overflow:ellipsis;white-space:nowrap;text-decoration:none}.decision-meta{display:flex;gap:14px;margin-top:9px;color:var(--text-muted);font-size:8px}.decision-meta b{color:var(--text-soft)}.risk-score-layout{display:flex;align-items:center;gap:18px;padding:18px 17px 13px}.risk-gauge{--risk: 120deg;position:relative;width:86px;height:86px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--green) var(--risk),var(--surface-soft) 0)}.risk-gauge.warning{background:conic-gradient(var(--amber) var(--risk),var(--surface-soft) 0)}.risk-gauge.danger{background:conic-gradient(var(--red) var(--risk),var(--surface-soft) 0)}.risk-gauge:before{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--surface)}.risk-gauge>div{position:relative;display:grid;text-align:center}.risk-gauge strong{font-size:22px}.risk-gauge span{color:var(--text-muted);font-size:8px}.risk-copy{display:grid;gap:3px}.risk-copy>span{color:var(--text-muted);font-size:9px}.risk-copy strong{font-size:18px}.risk-copy p{margin:2px 0 0;color:var(--text-muted);font-size:9px;line-height:1.45}.risk-panel .field-label{margin:4px 16px 6px}.risk-panel select{width:calc(100% - 32px);height:38px;margin:0 16px 14px;padding:0 10px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--surface-soft);font-size:10px}.guardrail-list{border-top:1px solid var(--border-soft)}.guardrail-list>div{min-height:38px;display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:7px;padding:0 16px;border-bottom:1px solid var(--border-soft);font-size:9px}.guardrail-list>div:last-child{border-bottom:0}.guardrail-list svg{color:var(--text-muted)}.guardrail-list span{color:var(--text-muted)}.guardrail-list b{font-size:9px}.market-panel,.trades-panel{margin-top:12px;scroll-margin-top:92px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:10px}th{padding:9px 15px;color:var(--text-muted);background:var(--surface-soft);font-size:8px;font-weight:650;letter-spacing:.05em;text-align:left;text-transform:uppercase}td{height:56px;padding:8px 15px;border-bottom:1px solid var(--border-soft);color:var(--text-soft)}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:color-mix(in srgb,var(--surface-hover) 55%,transparent)}.asset-cell{display:flex;align-items:center;gap:9px;min-width:180px}.asset-cell i{width:8px;height:28px;border-radius:3px}.asset-cell div{display:grid;gap:2px}.asset-cell strong{color:var(--text);font-size:10px}.asset-cell span{color:var(--text-muted);font-size:8px}.numeric{font-variant-numeric:tabular-nums;white-space:nowrap}.up{color:var(--green)}.down{color:var(--red)}.trend-pill,.side-pill{display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:5px;font-size:8px;text-transform:capitalize}.trend-pill.positivo,.side-pill.buy{color:var(--green);background:var(--green-soft)}.trend-pill.negativo,.side-pill.sell{color:var(--red);background:var(--red-soft)}.trend-pill.neutrale{color:var(--blue);background:color-mix(in srgb,var(--blue) 10%,transparent)}.provider-note{display:flex;align-items:center;gap:7px;padding:10px 15px;border-top:1px solid var(--border-soft);color:var(--text-muted);font-size:8px;line-height:1.45}.provider-note b{color:var(--text-soft)}.news-panel,.chat-panel,.risk-panel{scroll-margin-top:92px}.news-list{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border-soft)}.news-card{min-height:126px;display:flex;flex-direction:column;padding:13px 14px;background:var(--surface);text-decoration:none;transition:.15s ease}.news-card:hover{background:var(--surface-hover)}.news-top{display:flex;align-items:center;gap:5px;color:var(--text-muted);font-size:8px}.news-top time{margin-left:auto}.sentiment-dot{width:6px;height:6px;border-radius:50%;background:var(--blue)}.sentiment-dot.positivo{background:var(--green)}.sentiment-dot.negativo{background:var(--red)}.news-card h4{margin:10px 0;font-size:10px;line-height:1.45}.news-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto;color:var(--text-muted)}.news-bottom>div{display:flex;gap:4px}.news-bottom span{padding:3px 5px;border-radius:4px;background:var(--surface-soft);font-size:7px}.news-disclaimer{display:flex;align-items:center;gap:6px;padding:9px 14px;border-top:1px solid var(--border-soft);color:var(--text-muted);font-size:8px}.empty-state{min-height:260px;display:grid;place-content:center;justify-items:center;gap:7px;padding:25px;color:var(--text-muted);text-align:center}.empty-state strong{color:var(--text-soft);font-size:11px}.empty-state span{max-width:330px;font-size:9px;line-height:1.5}.empty-state.compact{min-height:160px}.chat-panel{display:flex;flex-direction:column;max-height:590px}.chat-heading{justify-content:flex-start}.assistant-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;color:var(--green);background:var(--green-soft)}.chat-heading .ai-mode{margin-left:auto}.ai-mode i{width:6px;height:6px;border-radius:50%;background:var(--green)}.chat-messages{min-height:360px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:9px;padding:14px}.chat-welcome{margin:auto;display:grid;justify-items:center;gap:7px;color:var(--text-muted);text-align:center}.chat-welcome>svg{color:var(--green)}.chat-welcome strong{color:var(--text);font-size:12px}.chat-welcome p{max-width:320px;margin:0;font-size:9px;line-height:1.55}.chat-welcome div{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin-top:7px}.chat-welcome button{padding:6px 8px;border:1px solid var(--border);border-radius:6px;color:var(--text-soft);background:var(--surface-soft);font-size:8px;cursor:pointer}.chat-welcome button:hover{border-color:var(--green)}.chat-bubble{max-width:88%;padding:9px 10px;border-radius:10px;font-size:10px;line-height:1.55}.chat-bubble p{margin:0;white-space:pre-wrap}.chat-bubble.user{align-self:flex-end;color:#06120e;background:var(--green);border-bottom-right-radius:3px}.chat-bubble.assistant{align-self:flex-start;color:var(--text-soft);background:var(--surface-soft);border-bottom-left-radius:3px}.chat-bubble small{display:block;margin-top:6px;color:var(--text-muted);font-size:7px}.typing{display:flex;gap:3px}.typing i{width:5px;height:5px;border-radius:50%;background:var(--text-muted);animation:bounce 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.chat-form{display:grid;grid-template-columns:1fr 34px;align-items:end;gap:7px;margin:0 12px 8px;padding:7px;border:1px solid var(--border);border-radius:9px;background:var(--surface-soft)}.chat-form textarea{min-height:36px;resize:none;border:0;outline:0;color:var(--text);background:transparent;font-size:10px;line-height:1.4}.chat-form textarea::placeholder{color:var(--text-muted)}.chat-form button{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:7px;color:#07110e;background:var(--green);cursor:pointer}.chat-form button:disabled{opacity:.35;cursor:default}.chat-foot{display:flex;align-items:center;justify-content:center;gap:5px;padding:0 12px 10px;color:var(--text-muted);font-size:7px}footer{display:flex;align-items:center;gap:11px;margin-top:25px;padding-top:23px;border-top:1px solid var(--border-soft);color:var(--text-muted);font-size:9px}footer p{margin:0;line-height:1.5}footer p strong{color:var(--text-soft)}footer>span{margin-left:auto}.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px;background:#020608c2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.setup-modal{width:min(640px,100%);max-height:calc(100vh - 32px);overflow-y:auto;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.modal-heading{display:flex;justify-content:space-between;padding:22px 24px 17px;border-bottom:1px solid var(--border-soft)}.modal-heading h2{margin:4px 0 5px;font-size:22px;letter-spacing:-.035em}.modal-heading p{margin:0;color:var(--text-muted);font-size:10px}.setup-modal form{padding:21px 24px 24px}.field-label{display:block;color:var(--text-muted);font-size:9px;font-weight:650;letter-spacing:.03em}.budget-input-wrap{display:grid;grid-template-columns:34px 1fr;align-items:center;margin:7px 0 19px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.budget-input-wrap>span{display:grid;place-items:center;height:50px;border-right:1px solid var(--border);color:var(--green);font-weight:700}.budget-input-wrap input{width:100%;height:50px;padding:0 14px;border:0;outline:0;color:var(--text);background:transparent;font-size:18px;font-weight:700}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:15px}.profile-option{position:relative;min-height:137px;display:flex;flex-direction:column;align-items:flex-start;padding:14px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--surface-soft);text-align:left;cursor:pointer}.profile-option:hover{border-color:color-mix(in srgb,var(--green) 35%,var(--border))}.profile-option.selected{border-color:var(--green);background:var(--green-soft)}.profile-option strong{margin:13px 0 6px;font-size:12px}.profile-option small{color:var(--text-muted);font-size:8px;line-height:1.45}.profile-option em{margin-top:auto;color:var(--green);font-size:8px;font-style:normal}.profile-check{position:absolute;top:11px;right:11px;width:17px;height:17px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%}.selected .profile-check{color:#07110e;border-color:var(--green);background:var(--green)}.modal-note{display:flex;align-items:flex-start;gap:9px;margin-bottom:15px;padding:10px 11px;border-radius:8px;color:var(--text-muted);background:var(--surface-soft);font-size:8px;line-height:1.45}.modal-note svg{flex:0 0 auto;color:var(--green)}.loading-screen,.fatal-error{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:13px;color:var(--text-muted);background:var(--bg)}.loading-screen p{margin:0;font-size:11px}.fatal-error h1{margin:6px 0 0;color:var(--text);font-size:21px}.fatal-error p{max-width:480px;margin:0 0 8px;text-align:center}.fatal-error>svg{color:var(--red)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-3px);opacity:1}}@media(max-width:1240px){.primary-grid{grid-template-columns:1.6fr 1fr}.regime-panel{grid-column:1 / -1}.regime-panel .probability-list{grid-template-columns:repeat(4,1fr)}.regime-summary{min-height:0}.signal-details{margin-top:2px}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:980px){.sidebar{transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow)}.sidebar.open{transform:translate(0)}.nav-close,.menu-button{display:grid!important}.mobile-scrim{position:fixed;inset:0;z-index:25;border:0;background:#00000080}main{margin-left:0}.topbar{padding:0 20px}.content{padding:24px 20px 45px}.decision-grid,.lower-grid{grid-template-columns:1fr}.chat-panel{max-height:650px}.lower-grid .chat-panel{min-height:560px}}@media(max-width:700px){.topbar{min-height:68px;padding:0 13px}.topbar h1{font-size:16px}.topbar .eyebrow,.paper-badge{display:none}.topbar-actions{gap:7px}.primary-button{padding:0 11px;font-size:10px}.content{padding:16px 12px 38px}.simulation-banner{align-items:flex-start}.simulation-banner>div{align-items:flex-start}.simulation-banner>span{display:none}.section-heading{align-items:flex-start}.updated-at{display:none}.metric-grid{grid-template-columns:1fr 1fr;gap:7px}.metric-card{min-height:105px;gap:9px;padding:12px}.metric-icon{width:29px;height:29px}.metric-copy strong{font-size:16px}.primary-grid{grid-template-columns:1fr}.regime-panel{grid-column:auto}.regime-panel .probability-list{grid-template-columns:1fr}.chart-legend{display:none}.chart-wrap{height:230px}.panel-header{min-height:59px;padding:12px}.news-list{grid-template-columns:1fr}.news-card{min-height:112px}.profile-grid{grid-template-columns:1fr}.profile-option{min-height:105px}.modal-heading,.setup-modal form{padding-left:17px;padding-right:17px}footer{align-items:flex-start}footer>span{display:none}}@media(max-width:430px){.metric-grid{grid-template-columns:1fr}.metric-card{min-height:88px}.metric-copy strong{font-size:19px}.metric-icon{width:34px;height:34px}.topbar-actions .primary-button{font-size:0;width:39px;padding:0}.topbar-actions .primary-button svg{width:17px}.risk-score-layout{gap:12px}.risk-gauge{width:76px;height:76px}.decision-top{display:grid}.decision-top time{order:-1}.chat-messages{min-height:330px}}
