:root{--navy: #10213F;--navy-2: #163258;--blue: #1268E8;--blue-soft: #EAF2FF;--orange: #F5A623;--bg: #F4F7FA;--panel: #FFFFFF;--text: #1F2D3D;--text-2: #344A64;--muted: #6F8198;--line: #D8E1EC;--line-2: #E7EDF4;--up: #0F8A5F;--down: #C0392B;--radius: 14px;--radius-s: 10px;--shadow: 0 6px 22px rgba(16, 33, 63, .08);--font: "Inter", "Segoe UI", Roboto, Arial, sans-serif;--sidebar-w: 272px;--dash-w: 46%}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--blue)}h1,h2,h3,h4{margin:0;color:var(--navy);line-height:1.25}ul{margin:0;padding:0;list-style:none}.app{display:grid;grid-template-columns:0 1fr;height:100%;width:100%;overflow:hidden;background:var(--bg)}.app.sidebar-open{grid-template-columns:var(--sidebar-w) 1fr}.main{grid-column:2;display:grid;grid-template-rows:56px 1fr;grid-template-columns:1fr;min-width:0;height:100%;overflow:hidden}.sidebar{grid-column:1}.app.dash-open .main{grid-template-columns:minmax(0,1fr) var(--dash-w)}.app.fullscreen.dash-open .main{grid-template-columns:minmax(0,1fr)}.app.fullscreen.dash-open .chat,.app.fullscreen .sidebar,.app.fullscreen .scrim{display:none}.app.fullscreen{grid-template-columns:0 1fr}.app.fullscreen .dash{border-left:0}.app.fullscreen .dash-card .chart{max-width:820px;margin:0 auto;display:block}.app.fullscreen .dash-head,.app.fullscreen .dash-tabs,.app.fullscreen .dash-body{max-width:1180px;width:100%;margin:0 auto;box-sizing:border-box}.main .topbar{grid-column:1 / -1}.topbar{display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:var(--panel);border-bottom:1px solid var(--line);gap:10px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:8px;min-width:0}.topbar-title{display:flex;align-items:center;gap:6px;font-weight:700;color:var(--navy);white-space:nowrap}.beta{font-size:10px;font-weight:700;letter-spacing:.04em;padding:2px 6px;border-radius:6px;background:#eef0ff;color:#5b5bd6;vertical-align:middle}.icon-btn{width:36px;height:36px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--navy);text-decoration:none}.icon-btn:hover{background:var(--blue-soft);border-color:#bfd4f5}.seg{display:inline-flex;border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:2px;gap:2px}.seg button{border:0;background:transparent;padding:6px 12px;border-radius:8px;color:var(--muted);font-weight:600;font-size:13px}.seg button.active{background:var(--blue);color:#fff}.seg.small button{padding:4px 10px;font-size:12px}.sidebar{display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--panel);border-right:1px solid var(--line);height:100%;overflow:hidden}.sidebar-top{display:flex;align-items:center;justify-content:space-between;height:32px}.brand{display:flex;align-items:center;gap:6px;font-weight:800;color:var(--navy)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:var(--radius-s);border:1px solid var(--line);background:var(--panel);font-weight:600;color:var(--navy)}.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn.primary:hover{background:#0f5bd0}.btn.ghost{background:transparent}.btn.danger{background:var(--down);border-color:var(--down);color:#fff}.btn.wide{width:100%}.btn:disabled{opacity:.5;cursor:default}.analysis-btn b{margin-left:auto;background:var(--navy);color:#fff;border-radius:999px;padding:0 8px;font-size:12px}.search-box{display:flex;align-items:center;gap:8px;padding:0 10px;height:38px;border:1px solid var(--line);border-radius:var(--radius-s);color:var(--muted)}.search-box input{flex:1;border:0;outline:0;background:transparent;min-width:0;color:var(--text)}.search-box button{border:0;background:transparent;color:var(--muted);display:grid;place-items:center}.sidebar-scroll{overflow:auto;flex:1;min-height:0}.list-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:10px 6px 6px}.dialogs{display:flex;flex-direction:column;gap:2px}.dialog{position:relative;border-radius:var(--radius-s)}.dialog:hover,.dialog.active{background:var(--blue-soft)}.dialog.active{box-shadow:inset 3px 0 0 var(--blue)}.dialog-open{display:block;width:100%;text-align:left;border:0;background:transparent;padding:8px 86px 8px 10px;border-radius:var(--radius-s)}.dialog-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;font-size:13.5px;line-height:1.3;color:var(--navy);overflow:hidden}.dialog-time,.dialog-snippet{display:block;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dialog-tools{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:none;gap:2px}.dialog:hover .dialog-tools,.dialog.active .dialog-tools{display:flex}.dialog-tools button{width:26px;height:26px;border:0;border-radius:7px;background:transparent;color:var(--muted);display:grid;place-items:center}.dialog-tools button:hover,.dialog-tools button.on{background:#fff;color:var(--blue)}.dialog-edit input{width:100%;padding:8px 10px;border:1px solid var(--blue);border-radius:var(--radius-s);outline:0}.empty{padding:14px 10px;color:var(--muted);font-size:13px}.scrim{position:fixed;inset:0;background:#10213f59;z-index:5}@media(max-width:1179px){.app.sidebar-open{grid-template-columns:0 1fr}.app.sidebar-open .sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-w);z-index:6;box-shadow:var(--shadow)}}.chat{display:grid;grid-template-rows:1fr auto;min-height:0;min-width:0}.chat-body{overflow:auto;padding:20px clamp(12px,3vw,40px)}.chat-footer{padding:10px clamp(12px,3vw,40px) 12px;background:linear-gradient(180deg,rgba(244,247,250,0),var(--bg) 30%)}.disclaimer{margin:8px 2px 0;font-size:11.5px;color:var(--muted)}.composer{display:flex;align-items:flex-end;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:8px 8px 8px 16px;box-shadow:var(--shadow);max-width:980px;margin:0 auto}.composer:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #1268e81f}.composer textarea{flex:1;border:0;outline:0;resize:none;background:transparent;padding:8px 0;max-height:160px;line-height:1.45;min-width:0;overflow-y:auto;min-height:38px;field-sizing:content}.composer.large{padding:10px 10px 10px 18px}.composer.large textarea{font-size:16px;padding:10px 0}.send{position:relative;width:44px;height:44px;border:0;border-radius:50%;color:#fff;display:grid;place-items:center;flex:none;cursor:pointer;background:linear-gradient(135deg,#2f7bff,#1268e8 55%,#0b4fc2);box-shadow:0 6px 16px #1268e859,inset 0 1px #ffffff40;transition:transform .15s ease,box-shadow .15s ease,background .2s ease,opacity .2s ease}.send svg{stroke-width:2.6;transition:transform .15s ease}.send:hover:not(:disabled){transform:translateY(-1px) scale(1.04);box-shadow:0 10px 22px #1268e86b,inset 0 1px #ffffff4d}.send:hover:not(:disabled) svg{transform:translateY(-1px)}.send:active:not(:disabled){transform:scale(.96);box-shadow:0 3px 8px #1268e84d}.send:disabled{background:#e3eaf4;color:#a3b2c7;box-shadow:none;cursor:default}.send.stop{background:linear-gradient(135deg,#2f7bff,#1268e8 55%,#0b4fc2);box-shadow:0 6px 16px #1268e859,inset 0 1px #ffffff40}.send.stop i{width:14px;height:14px;border-radius:3px;background:#fff;display:block}.send.stop .stop-ring{position:absolute;inset:-3px;border-radius:50%;border:2px solid rgba(18,104,232,.45);animation:stop-pulse 1.6s ease-out infinite}@keyframes stop-pulse{0%{transform:scale(.9);opacity:.9}to{transform:scale(1.35);opacity:0}}.send.stop:hover{background:#c62828;box-shadow:0 8px 18px #c6282859}.send.stop:hover .stop-ring{border-color:#c6282866}.start{max-width:980px;margin:0 auto;display:flex;flex-direction:column;gap:14px;padding-top:4vh}.start .composer{width:100%;max-width:none}.start-hero{display:flex;align-items:center;gap:16px}.start-hero h1{font-size:26px}.start-hero p{margin:4px 0 0;color:var(--text-2);max-width:720px}.start.compact .start-hero h1{font-size:21px}.start.compact .start-hero p{font-size:14px}.start-label{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:6px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:1px solid var(--line);background:var(--panel);font-weight:600;color:var(--navy)}.chip.active,.chip:hover{border-color:var(--blue);background:var(--blue-soft)}.chip-icon{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;color:#fff;background:var(--blue);flex:none}.chip-icon.ic-regions{background:linear-gradient(135deg,#1268e8,#4c8df5)}.chip-icon.ic-dynamics{background:linear-gradient(135deg,#1e8e5a,#3db37f)}.chip-icon.ic-compare{background:linear-gradient(135deg,#7b4dd6,#a07ce8)}.chip-icon.ic-report{background:linear-gradient(135deg,#d97a1a,#f5a623)}.chip{padding:7px 14px 7px 7px}.examples{display:grid;gap:6px}.examples button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:11px 14px;border:1px solid var(--line);background:var(--panel);border-radius:var(--radius-s);color:var(--text-2);transition:color .2s,opacity .2s,border-color .2s,background .2s,transform .2s,box-shadow .2s;animation:example-in .5s ease-out both}.examples li:nth-child(1) button{opacity:1;animation-delay:.05s}.examples li:nth-child(2) button{opacity:.94;animation-delay:.1s}.examples li:nth-child(3) button{opacity:.88;animation-delay:.15s}.examples li:nth-child(4) button{opacity:.82;animation-delay:.2s}.examples li:nth-child(5) button{opacity:.76;animation-delay:.25s}.examples li:nth-child(6) button{opacity:.7;animation-delay:.3s}.examples li:nth-child(7) button{opacity:.64;animation-delay:.35s}.examples li:nth-child(8) button{opacity:.58;animation-delay:.4s}.examples li:nth-child(9) button{opacity:.52;animation-delay:.45s}.examples li:nth-child(10) button{opacity:.46;animation-delay:.5s}.examples li button:hover{opacity:1!important;color:var(--text);border-color:var(--blue);background:var(--blue-soft);transform:translate(3px);box-shadow:0 4px 14px #1268e81f}@keyframes example-in{0%{opacity:0;transform:translateY(6px)}}.examples button span:first-child{flex:1}.examples svg{color:var(--muted);opacity:.6}.examples button:hover svg{opacity:1}.conversation{max-width:980px;margin:0 auto;display:flex;flex-direction:column;gap:18px}.turn{display:flex;flex-direction:column;gap:12px}.bubble.user{display:flex;justify-content:flex-end}.bubble.user>div{max-width:82%;background:var(--blue-soft);border:1px solid #CFE0FA;color:var(--navy);padding:12px 16px;border-radius:16px 16px 4px;white-space:pre-wrap}.bubble.assistant{display:flex;gap:12px;align-items:flex-start}.avatar{flex:none;margin-top:2px}.avatar .robot{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 3px 6px rgba(16,33,63,.22))}.card{flex:1;min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow)}.md p{margin:0 0 8px}.md h4{margin:10px 0 6px;font-size:15px}.md ul{padding-left:18px;margin:0 0 8px;list-style:disc}.md li{margin:3px 0}.chart-img{width:100%;height:auto;border:1px solid var(--line-2);border-radius:var(--radius-s);margin-top:8px}.progress{display:flex;align-items:center;gap:12px;color:var(--navy)}.progress span{display:block;font-size:13px;color:var(--muted)}.progress-line{font-size:12.5px;color:var(--muted);margin-top:6px}.dots{display:inline-flex;gap:4px}.dots b{width:7px;height:7px;border-radius:50%;background:var(--blue);animation:pulse 1.2s infinite ease-in-out}.dots b:nth-child(2){animation-delay:.2s}.dots b:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.error{margin-top:8px;padding:10px 12px;border-radius:var(--radius-s);background:#fdecec;color:var(--down);font-size:13.5px}.generated{display:flex;align-items:center;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line-2);font-size:12px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.actions button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--panel);font-weight:600;font-size:13px;color:var(--navy)}.actions button:hover,.actions button.on{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.findings{padding-left:18px;list-style:disc;display:grid;gap:6px;color:var(--text-2)}.findings.inline{margin-top:12px;padding:12px 12px 12px 30px;background:#fbf7ee;border:1px solid #F3E3BF;border-radius:var(--radius-s)}.clarify{margin-top:10px;padding:12px 14px;border:1px dashed #BFD4F5;border-radius:var(--radius-s);background:#f7faff}.clarify-q{display:flex;gap:8px;align-items:flex-start;font-weight:600;color:var(--navy)}.clarify-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.clarify-options button{padding:8px 14px;border:1px solid var(--blue);border-radius:999px;background:var(--panel);color:var(--blue);font-weight:600}.clarify-options button:hover{background:var(--blue);color:#fff}.clarify.answered{border-style:solid;background:#f3f7fc}.clarify-chosen{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:13px;color:var(--up);font-weight:600}.table-wrap{overflow:auto;margin-top:10px;border:1px solid var(--line);border-radius:var(--radius-s);max-height:460px}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th,.data-table td{padding:7px 10px;border-bottom:1px solid var(--line-2);text-align:left;white-space:nowrap}.data-table th{position:sticky;top:0;background:var(--blue-soft);color:var(--navy);font-weight:700;font-size:12px;z-index:1;white-space:normal;max-width:220px;vertical-align:bottom}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.data-table tbody tr:nth-child(2n){background:#f4f7fc}.data-table tr.national{background:#fff4df;font-weight:700}.data-table tr.national td{border-top:2px solid #F5A623;border-bottom:2px solid #F5A623}.data-table tr.selected{background:var(--blue-soft)}.data-table tbody tr{cursor:default}.note{padding:8px 10px;font-size:12px;color:var(--muted)}.downloads{margin-top:12px}.downloads strong{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.downloads-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;align-items:stretch}.dl{display:flex;flex-direction:column;gap:2px;padding:10px 14px;min-width:0;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--panel);text-decoration:none;color:var(--text)}.dl span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-pending,.dl-failed{grid-column:1 / -1}.dl:hover{border-color:var(--blue);background:var(--blue-soft)}.dl b{font-size:13px;letter-spacing:.04em}.dl span{font-size:12px;color:var(--muted)}.dl-pdf b{color:#d64545}.dl-docx b{color:#2b5fc7}.dl-pptx b{color:#d97a1a}.dl-xlsx b{color:#1e8e5a}.dl-pending{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.dl-failed{font-size:13px;color:var(--down)}.spinner{width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dash{display:grid;grid-template-rows:auto auto 1fr;min-height:0;min-width:0;background:var(--panel);border-left:1px solid var(--line)}.dash-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 18px 10px;border-bottom:1px solid var(--line-2)}.dash-kicker{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}.dash-head h2{font-size:19px;margin-top:2px}.dash-meta{font-size:12.5px;color:var(--muted);margin-top:2px}.dash-actions{display:flex;gap:6px;flex:none}.dash-tabs{display:flex;gap:4px;padding:8px 14px 0;overflow:auto;border-bottom:1px solid var(--line-2)}.dash-tabs button{border:0;background:transparent;padding:8px 10px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}.dash-tabs button.active{color:var(--blue);border-bottom-color:var(--blue)}.dash-body{overflow:auto;padding:14px 18px 18px;display:flex;flex-direction:column;gap:12px}.dash-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}.dash-filters label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);min-width:150px;flex:1}.dash-filters select,.dash-filters input{padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--panel);font-weight:600;color:var(--navy);text-transform:none;letter-spacing:0;font-size:14px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px}.kpi{padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,#fff,#f7faff);min-width:0}.kpi-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);line-height:1.3;min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kpi-value{font-size:22px;font-weight:400;color:var(--navy);margin-top:6px;line-height:1.15;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px}.kpi-value b{font-weight:800;letter-spacing:-.01em}.kpi-unit{font-size:13px;font-weight:500;color:var(--text-2)}.kpi-value.long{font-size:18px}.kpi-value.long .kpi-unit{font-size:12px}.kpi-value.tone-up{color:var(--up)}.kpi-value.tone-down{color:var(--down)}.kpi-sub{font-size:12px;font-weight:400;color:var(--muted);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-card{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:var(--panel)}.dash-card h3{font-size:14px;margin-bottom:8px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.card-head h3{margin:0}.chart{width:100%;height:auto;display:block;font-family:var(--font)}.chart .clickable{cursor:pointer}.chart-tip{display:inline-block;width:max-content;max-width:236px;background:#10213ff0;color:#fff;border-radius:8px;padding:6px 9px;font-size:11px;line-height:1.4;box-shadow:0 8px 20px #10213f40}.chart-tip b{display:block;margin-bottom:2px}.chart-tip .tip-row{display:flex;justify-content:space-between;gap:12px;white-space:nowrap}.chart-tip .tip-name{opacity:.85;overflow:hidden;text-overflow:ellipsis;max-width:150px}.chart-tip .tip-val{font-variant-numeric:tabular-nums;font-weight:600}svg.chart{overflow:visible}.bar-row.clickable:hover .bar-bg{fill:#f3f7fd}.legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;font-size:12px;color:var(--text-2)}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}.dash-source{font-size:11.5px;color:var(--muted)}.ask-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--blue);border-radius:var(--radius-s);background:var(--panel);color:var(--blue);font-weight:600;align-self:flex-start}.ask-btn:hover{background:var(--blue);color:#fff}.muted{color:var(--muted)}.modal-back{position:fixed;inset:0;background:#10213f73;display:grid;place-items:center;z-index:50;padding:16px}.modal{width:min(560px,100%);background:var(--panel);border-radius:18px;padding:22px 24px;box-shadow:0 24px 60px #10213f4d}.modal.wide{width:min(760px,100%);max-height:90vh;overflow:auto}.modal h3{font-size:18px;margin-bottom:8px}.modal p{margin:0 0 10px;color:var(--text-2)}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;flex-wrap:wrap}.basket{display:grid;gap:8px}.basket li{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-s)}.basket li>div{flex:1;min-width:0;display:grid;gap:2px}.basket strong{font-size:14px;color:var(--navy)}.basket span{font-size:12.5px;color:var(--muted)}@media(max-width:1179px){.app.dash-open .main{grid-template-columns:1fr}.dash{border-left:0}.kpi-value{font-size:19px}}@media(max-width:760px){.topbar{padding:0 8px}.topbar-title{display:none}.chat-body{padding:12px}.bubble.user>div{max-width:92%}.avatar{display:none}.card{padding:12px}.dash-body{padding:10px}.kpis{grid-template-columns:1fr 1fr}}.inline-chart{margin:12px 0 4px;padding:10px 12px 6px;border:1px solid var(--line-2);border-radius:var(--radius-s);background:#fbfcfe}.inline-chart figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;font-size:13px;font-weight:700;color:var(--navy)}.inline-chart figcaption button{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;cursor:pointer}.inline-chart figcaption button:hover{background:var(--blue-soft)}.inline-chart .chart{width:100%;height:auto}.basket-meta{display:block;font-style:normal;font-size:12px;color:var(--blue);margin:2px 0}.disclaimer strong{font-weight:600;color:var(--text-2)}.disclaimer a{color:var(--blue);text-decoration:none}.disclaimer a:hover{text-decoration:underline}.modal.intro{width:min(640px,100%);padding:0;overflow:hidden;display:grid;grid-template-columns:200px 1fr;animation:intro-in .5s cubic-bezier(.2,.8,.2,1) both}.modal-back:has(.modal.intro){animation:intro-back .35s ease-out both;backdrop-filter:blur(3px)}@keyframes intro-in{0%{opacity:0;transform:translateY(14px) scale(.96)}}@keyframes intro-back{0%{opacity:0}}.intro-title{display:flex;flex-wrap:wrap;font-size:21px;line-height:1.3;letter-spacing:-.01em}.intro-title span{display:inline-block;animation:intro-word .5s cubic-bezier(.2,.8,.2,1) both}@keyframes intro-word{0%{opacity:0;transform:translateY(8px)}}.intro-body .modal-actions{margin-top:18px}.btn.intro-go{padding:10px 22px;font-size:15px;transition:transform .2s,box-shadow .2s;box-shadow:0 8px 20px #1268e840}.btn.intro-go:hover{transform:translateY(-1px);box-shadow:0 12px 26px #1268e852}@media(prefers-reduced-motion:reduce){.modal.intro,.intro-title span,.modal-back:has(.modal.intro){animation:none}}.intro-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.intro-logo{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#10213f,#1268e8)}.intro-head .intro-brand{color:var(--navy);font-size:16px}.intro-head .intro-badge{color:#d97a1a;border-color:#d97a1a80}.intro-side{background:linear-gradient(160deg,#10213f,#1a3c7a,#1268e8 140%);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:26px 16px}.intro-side img{width:118px;height:118px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.35));transform-origin:50% 90%;animation:robot-wave 3.2s ease-in-out infinite}@keyframes robot-wave{0%,to{transform:translateY(0) rotate(0)}12%{transform:translateY(-4px) rotate(-7deg)}24%{transform:translateY(-2px) rotate(6deg)}36%{transform:translateY(-4px) rotate(-5deg)}48%{transform:translateY(0) rotate(0)}74%{transform:translateY(-6px) rotate(0)}}@media(prefers-reduced-motion:reduce){.intro-side img{animation:none}}.intro-brand{font-weight:800;font-size:17px;letter-spacing:.02em}.intro-badge{font-size:10.5px;font-weight:800;letter-spacing:.12em;color:#f5a623;border:1px solid rgba(245,166,35,.6);border-radius:999px;padding:2px 9px}.intro-body{padding:26px 28px 22px;display:flex;flex-direction:column;justify-content:center}.intro-body h3{font-size:20px;margin:0 0 10px;color:var(--navy)}.intro-body p{font-size:14px;line-height:1.5}.intro-list{list-style:none;margin:4px 0 12px;padding:0;display:grid;gap:6px}.intro-list li{display:flex;align-items:flex-start;gap:8px;font-size:13.5px;color:var(--text)}.intro-list li svg{flex:none;color:var(--up);margin-top:2px}.intro-note{display:flex;gap:8px;align-items:flex-start;font-size:13px;background:#fff7e6;border:1px solid #F5D9A6;color:#6b4e0f;border-radius:10px;padding:9px 11px}.intro-note svg{flex:none;color:#d97a1a;margin-top:1px}.actions button svg{color:var(--blue)}.actions button.on svg{color:var(--blue)}@media(max-width:760px){.dash-card,.inline-chart{overflow-x:auto;-webkit-overflow-scrolling:touch}.dash-card svg.chart,.inline-chart svg.chart{min-width:560px}.kpi-value{font-size:20px}.modal.intro{width:100%;grid-template-columns:1fr}.intro-side{padding:14px}.intro-side img{width:84px;height:84px}.intro-body{padding:18px 16px 16px}}.think{display:flex;flex-direction:column;gap:8px;padding:2px 0}.think-head{display:flex;align-items:center;gap:10px;min-height:22px}.think-mark{position:relative;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;flex:none;border:2px solid var(--line-2);color:var(--blue);box-sizing:border-box}.think-mark.done{border-color:var(--blue-soft);background:var(--blue-soft)}.think-mark.active:before{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid transparent;border-top-color:var(--blue);border-right-color:var(--blue);animation:spin .9s linear infinite}.think-mark.active i{width:6px;height:6px;border-radius:50%;background:var(--blue);animation:pulse 1.2s infinite ease-in-out}.think-label{font-size:14px;font-weight:600;background:linear-gradient(90deg,var(--navy) 0%,var(--blue) 45%,var(--navy) 90%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:think-shimmer 2s linear infinite}.think-dots i{font-style:normal;animation:think-dot 1.4s infinite}.think-dots i:nth-child(2){animation-delay:.2s}.think-dots i:nth-child(3){animation-delay:.4s}@keyframes think-shimmer{to{background-position:-200% 0}}@keyframes think-dot{0%,20%{opacity:0}40%,to{opacity:1}}.think-bar{height:3px;border-radius:3px;background:var(--line-2);overflow:hidden}.think-bar i{display:block;height:100%;width:40%;border-radius:3px;background:linear-gradient(90deg,rgba(18,104,232,0),var(--blue),rgba(18,104,232,0));animation:think-slide 1.4s ease-in-out infinite}@keyframes think-slide{0%{transform:translate(-100%)}to{transform:translate(260%)}}.think-step-line{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--muted);min-height:18px}.think-steps{display:inline-flex;gap:4px}.think-steps i{width:6px;height:6px;border-radius:50%;background:var(--line);transition:background .3s,transform .3s}.think-steps i.done{background:#bfd6f7}.think-steps i.active{background:var(--blue);transform:scale(1.25)}.think-stage{animation:think-fade .35s ease-out}@keyframes think-fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.progress-line{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-top:6px}.progress-line .think-mark{width:18px;height:18px}.progress-line .think-mark.active i{width:5px;height:5px}@media(prefers-reduced-motion:reduce){.think-bar i,.think-mark.active:before,.think-mark.active i,.think-label,.think-dots i,.think-stage{animation:none}.think-dots i{opacity:1}}.dash-card.drill{border-color:#bfd6f7;background:linear-gradient(180deg,#fff,#f7faff)}.link-btn{border:0;background:none;color:var(--blue);font-weight:600;font-size:13px;padding:4px 6px;border-radius:6px}.link-btn:hover{background:var(--blue-soft)}.data-table.compact td,.data-table.compact th{padding:5px 8px;font-size:12.5px}.drill .findings{margin-top:8px}.drill .ask-btn{margin-top:10px}.drill-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.drill-loading{display:flex;align-items:center;gap:8px;padding:6px 0}.methodology{display:flex;align-items:flex-start;gap:6px;margin-top:6px;font-size:12px;color:var(--muted);line-height:1.4}.methodology svg{flex:none;margin-top:2px}.methodology a{color:var(--blue);text-decoration:none}.methodology a:hover{text-decoration:underline}.chart-note{font-size:12px;margin:-2px 0 8px}.start-hero h1 .letters{display:inline-block;white-space:nowrap}.start-hero h1 .ch,.start-hero h1 .sp{display:inline-block}.start.intro-play .start-hero h1 .ch{opacity:0;transform:translateY(-28px) scale(1.15);animation:letter-drop .55s cubic-bezier(.22,1.4,.36,1) forwards}@keyframes letter-drop{0%{opacity:0;transform:translateY(-28px) scale(1.15)}60%{opacity:1;transform:translateY(3px) scale(.97)}80%{transform:translateY(-1.5px) scale(1.01)}to{opacity:1;transform:none}}.start.intro-play .start-hero .beta{opacity:0;animation:fade-up .5s ease-out .95s forwards}.start.intro-play .start-hero p{opacity:0;animation:fade-up .6s ease-out .75s forwards}.start.intro-play .hero-avatar{opacity:0;animation:avatar-in .7s cubic-bezier(.22,1.4,.36,1) .05s forwards}@keyframes avatar-in{0%{opacity:0;transform:scale(.4) rotate(-12deg)}to{opacity:1;transform:none}}.start.intro-play>.composer{opacity:0;animation:fade-up .6s ease-out .9s forwards,composer-glow 1.6s ease-out 1.1s}@keyframes composer-glow{0%{box-shadow:0 0 #1268e859}to{box-shadow:0 0 0 18px #1268e800}}.start.intro-play .start-label{opacity:0;animation:fade-up .5s ease-out 1.15s forwards}.start.intro-play .chips .chip{opacity:0;animation:chip-pop .45s cubic-bezier(.22,1.4,.36,1) forwards}.start.intro-play .chips .chip:nth-child(1){animation-delay:1.2s}.start.intro-play .chips .chip:nth-child(2){animation-delay:1.28s}.start.intro-play .chips .chip:nth-child(3){animation-delay:1.36s}.start.intro-play .chips .chip:nth-child(4){animation-delay:1.44s}@keyframes chip-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}.start.intro-play .examples li button{animation-delay:calc(1.45s + var(--i, 0) * .08s)!important}.start.intro-play .examples li:nth-child(1) button{--i: 0}.start.intro-play .examples li:nth-child(2) button{--i: 1}.start.intro-play .examples li:nth-child(3) button{--i: 2}.start.intro-play .examples li:nth-child(4) button{--i: 3}.start.intro-play .examples li:nth-child(5) button{--i: 4}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.hero-avatar{animation:avatar-float 4s ease-in-out 2s infinite}@keyframes avatar-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.start.intro-play *{animation:none!important;opacity:1!important;transform:none!important}.hero-avatar{animation:none}}.stopped-note{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.chat-title{position:relative;min-width:0}.chat-title-btn{display:inline-flex;align-items:center;gap:6px;max-width:min(52vw,560px);padding:6px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--navy);font-weight:700;font-size:15px;cursor:pointer}.chat-title-btn:hover,.chat-title-btn.open{background:var(--blue-soft);border-color:#dce6f7}.chat-title-btn:disabled{cursor:default;background:transparent;border-color:transparent}.chat-title-btn svg{color:var(--muted);flex:none}.chat-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:220px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 12px 32px #10213f24;animation:menu-in .15s ease-out}.chat-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:14px;text-align:left;cursor:pointer}.chat-menu button:hover{background:var(--blue-soft)}.chat-menu button.danger{color:#c62828}.chat-menu button.danger:hover{background:#fdecec}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}}.chat-title-edit input{font:inherit;font-weight:700;font-size:15px;color:var(--navy);padding:6px 10px;border:1px solid var(--blue);border-radius:10px;min-width:320px;max-width:52vw;outline:0;box-shadow:0 0 0 3px #1268e81f}.clarify{border:1px solid #D6E3F5;border-left:3px solid var(--blue);background:linear-gradient(180deg,#f8fbff,#f3f7fd);padding:14px 16px}.clarify-q{font-size:15px;line-height:1.4}.clarify-ico{flex:none;width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--blue-soft);color:var(--blue)}.clarify-options button{border-color:var(--line);color:var(--navy);background:#fff;font-weight:600}.clarify-options button:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-soft)}.clarify-options button.primary{background:var(--blue);border-color:var(--blue);color:#fff}.clarify-options button.primary:hover{filter:brightness(1.08);color:#fff}.clarify-filter{display:flex;align-items:center;gap:8px;margin-top:12px;padding:0 12px;height:38px;max-width:360px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted)}.clarify-filter input{flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:var(--navy)}.clarify-filter:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.clarify-list{display:flex;flex-direction:column;gap:4px;margin-top:10px;max-width:560px;max-height:268px;overflow-y:auto;padding:6px 10px 6px 2px;scroll-behavior:smooth;overscroll-behavior:contain;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14px,#000 calc(100% - 22px),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 14px,#000 calc(100% - 22px),transparent 100%);scrollbar-width:thin;scrollbar-color:#C8D6E8 transparent}.clarify-list::-webkit-scrollbar{width:6px}.clarify-list::-webkit-scrollbar-thumb{background:#c8d6e8;border-radius:6px}.clarify-list::-webkit-scrollbar-thumb:hover{background:var(--blue)}.clarify-list button{position:relative;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 14px;border:1px solid transparent;border-radius:10px;background:transparent;text-align:left;font-size:14.5px;font-weight:500;color:var(--navy);opacity:0;animation:opt-in .42s cubic-bezier(.22,1,.36,1) forwards;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}.clarify-list button:before{content:"";position:absolute;left:0;top:50%;width:3px;height:0;border-radius:3px;background:var(--blue);transform:translateY(-50%);transition:height .18s}.clarify-list button i{flex:none;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:11px;font-weight:700;background:#e9eff8;color:var(--muted);transition:background .15s,color .15s,transform .15s}.clarify-list button span{flex:1}.clarify-list button svg{flex:none;color:#c3cfdf;transform:rotate(-90deg) translate(0);opacity:0;transition:opacity .15s,transform .18s,color .15s}.clarify-list button:hover,.clarify-list button:focus-visible{background:#fff;border-color:#d6e3f5;box-shadow:0 6px 16px #2b5fc71f;transform:translate(4px);outline:0}.clarify-list button:hover:before,.clarify-list button:focus-visible:before{height:60%}.clarify-list button:hover i{background:var(--blue);color:#fff;transform:scale(1.08)}.clarify-list button:hover svg{opacity:1;color:var(--blue);transform:rotate(-90deg) translateY(3px)}.clarify-list button:active{transform:translate(4px) scale(.99)}.clarify-hint{margin-top:8px;font-size:12px;color:var(--muted)}@keyframes opt-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.clarify-list button{animation:none;opacity:1}}.clarify-all{display:flex;align-items:center;gap:12px;width:100%;max-width:560px;margin-top:12px;padding:11px 14px;border:1px solid #BFD4F5;border-radius:12px;background:linear-gradient(90deg,#eef4ff,#fff);text-align:left;font-size:14.5px;font-weight:600;color:var(--navy);opacity:0;animation:opt-in .42s cubic-bezier(.22,1,.36,1) forwards;transition:border-color .15s,box-shadow .15s,transform .15s}.clarify-all-ico{flex:none;width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--blue);color:#fff}.clarify-all>span:nth-child(2){flex:1}.clarify-all svg:last-child{color:#c3cfdf;transform:rotate(-90deg);transition:color .15s,transform .18s}.clarify-all:hover{border-color:var(--blue);box-shadow:0 6px 16px #2b5fc724;transform:translate(4px)}.clarify-all:hover svg:last-child{color:var(--blue);transform:rotate(-90deg) translateY(3px)}.table-filter{margin:0 0 10px;max-width:320px;height:34px}.table-filter .muted{font-size:12px;color:var(--muted)}.data-table td.group-cell{color:var(--muted);font-size:13px;white-space:nowrap}.catalog-title{font-weight:700;font-size:15px;color:var(--navy);margin-bottom:6px}.catalog-sub{margin-top:10px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.catalog-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.catalog-chips button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:12.5px;font-weight:600;color:var(--navy);transition:border-color .15s,background .15s,transform .15s}.catalog-chips button svg{color:var(--blue)}.catalog-chips button i{font-style:normal;font-size:11px;font-weight:700;color:var(--muted);background:#eef3fa;border-radius:999px;padding:1px 6px}.catalog-chips button:hover{border-color:var(--blue);background:var(--blue-soft);transform:translateY(-1px)}.clarify-list.catalog-list{max-height:420px;max-width:none}.clarify-list.catalog-list button{align-items:flex-start}.catalog-item{display:flex;flex-direction:column;gap:2px}.catalog-item b{font-weight:600}.catalog-item small{font-size:12px;color:var(--muted)}.dialog-state{display:inline-grid;place-items:center;width:14px;height:14px;margin-left:6px;vertical-align:-2px;border-radius:50%}.dialog-state.run{position:relative}.dialog-state.run i{display:block;width:10px;height:10px;border-radius:50%;border:2px solid var(--blue-soft);border-top-color:var(--blue);animation:spin .9s linear infinite}.dialog-state.done{background:#e3f6ec;color:#1e8e4e}.generated{flex-wrap:wrap}.gen-tools{margin-left:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px}.gen-btn{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);font-size:12px;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.gen-btn:hover,.gen-btn.on{color:var(--blue);border-color:var(--blue);background:var(--blue-soft)}.gen-btn:disabled{opacity:.5;cursor:default}.fb-done{display:inline-flex;align-items:center;gap:5px;color:var(--up);font-size:12px}.fb-form{display:flex;gap:6px;align-items:center;flex-basis:100%}.fb-form input{flex:1;height:28px;border:1px solid var(--line);border-radius:8px;padding:0 10px;font-size:13px}.bubble.assistant .card{position:relative}.copy-corner{position:absolute;top:10px;right:10px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);opacity:.55;cursor:pointer;transition:opacity .15s,color .15s,border-color .15s,background .15s}.bubble.assistant .card:hover .copy-corner,.copy-corner:focus-visible{opacity:1}.copy-corner:hover,.copy-corner.on{color:var(--blue);border-color:var(--blue);background:var(--blue-soft);opacity:1}.copy-corner:after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);right:0;white-space:nowrap;background:var(--navy);color:#fff;font-size:12px;line-height:1;padding:6px 8px;border-radius:6px;opacity:0;pointer-events:none;transform:translateY(-3px);transition:opacity .15s,transform .15s}.copy-corner:hover:after,.copy-corner.on:after{opacity:1;transform:none}.bubble.assistant .card>.copy-corner+*{padding-right:30px}.data-table td.wrap{white-space:normal;min-width:220px}

/* G30 — phones inside the Taldau frame: the grid tracks were minmax(auto, 1fr), so the topbar's min-content width
   (title, language switch, frame buttons) pushed the whole chat column to ~550 px on a 390 px screen and the right
   side was cut. Tracks are now minmax(0, 1fr) and the topbar shrinks instead of growing. */
.app { grid-template-columns: 0 minmax(0, 1fr); }
.app.sidebar-open { grid-template-columns: var(--sidebar-w) minmax(0, 1fr); }
.app.fullscreen { grid-template-columns: 0 minmax(0, 1fr); }
.main { grid-template-columns: minmax(0, 1fr); }
.app.dash-open .main { grid-template-columns: minmax(0, 1fr) var(--dash-w); }
@media (max-width: 1179px) { .app.dash-open .main { grid-template-columns: minmax(0, 1fr); } }   /* phones and tablets: one column, Chat/Dashboard tabs */
.app.fullscreen.dash-open .main { grid-template-columns: minmax(0, 1fr); }
.topbar { min-width: 0; }
.topbar-left { flex: 1 1 auto; min-width: 0; overflow: hidden; }
.topbar-right { flex: 0 0 auto; }
.chat-title, .chat-title > * { min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.chat, .chat-body, .conversation, .turn, .bubble, .card { max-width: 100%; }
@media (max-width: 760px) {
  .topbar { gap: 6px; padding: 0 8px; }
  .seg.small button { padding: 4px 7px; font-size: 11px; }
  .chat-title-edit input { min-width: 0; width: 100%; max-width: none; }
  .composer { max-width: 100%; }
}
/* the dashboard body scrolls; its cards must not shrink to fit the screen height (on phones overflow-x:auto made
   them shrinkable and they collapsed to their headers) */
.dash-body > * { flex-shrink: 0; }
/* phones: the history drawer lies over the chat (fixed), the chat keeps the full width underneath */
@media (max-width: 1179px) { .app.sidebar-open { grid-template-columns: 0 minmax(0, 1fr); } }
/* finger-sized switches (language, Chat/Dashboard, value/deviation) */
@media (max-width: 760px) { .seg button, .seg.small button { min-height: 32px; } }
