:root{--blue:#189CD8;--teal:#43BBC7;--dark:#243746;--blue20:#D1EBF7;--teal20:#D9F1F4;--line:#D3D7DA;--white:#FFFFFF;font-family:'Avenir Next','Segoe UI',sans-serif;color:var(--dark);background:var(--white)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer;min-height:44px}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}header{display:flex;align-items:center;gap:26px;padding:24px 4vw;border-bottom:1px solid var(--line)}header img{width:145px;display:block}.wordmark{font-weight:700;font-size:26px;text-decoration:none;border-left:1px solid var(--line);padding-left:24px}.wordmark span{font-size:16px;font-weight:400}.badge{margin-left:auto;font-size:11px;letter-spacing:1px}main{max-width:1600px;margin:auto;padding:40px 4vw}.intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px}.intro h1{font:clamp(32px,4vw,54px)/1.12 Georgia,serif;letter-spacing:-1.6px;margin:10px 0 15px}.intro p{line-height:1.6}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase}.workspace{display:grid;grid-template-columns:330px minmax(0,1fr);gap:28px;align-items:start}.assistant{background:var(--dark);color:var(--white);padding:26px;border-radius:16px;position:sticky;top:18px}.assistant h2{font:32px/1.18 Georgia,serif;margin:15px 0}.subtle{font-size:14px;line-height:1.6}.suggestions{display:grid;gap:8px;margin:24px 0}.suggestions button{background:transparent;border:1px solid var(--teal);color:var(--white);border-radius:7px;padding:10px 12px;text-align:left;font-size:13px}.suggestions button:hover{background:var(--teal);color:var(--dark)}label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}input,select,textarea{width:100%;background:var(--white);border:1px solid var(--line);border-radius:6px;padding:11px;min-height:44px}textarea{resize:vertical;color:var(--dark)}textarea::placeholder,input::placeholder{color:var(--dark);opacity:1}.primary{background:var(--dark);border:1px solid var(--dark);color:var(--white);padding:11px 17px;border-radius:7px;font-weight:600}.primary:hover{background:var(--teal);color:var(--dark)}.assistant .primary{background:var(--teal);color:var(--dark);width:100%;margin-top:10px}.voice-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.voice-actions button{background:var(--white);border:0;border-radius:6px;padding:10px 14px}.small{font-size:11px;line-height:1.6}.assistant #connection{font-size:12px;min-height:18px}.chat-log{max-height:340px;overflow-y:auto;scrollbar-width:thin}.chat-log p{font-size:14px;line-height:1.6;white-space:pre-wrap;border-left:2px solid var(--teal);padding-left:10px}.chat-log strong{display:block;font-size:11px;margin-bottom:4px}.filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:22px;background:var(--blue20);border-radius:14px;align-items:end}.filters .primary{height:46px}.filters [hidden]{display:none}.empty{padding:70px 30px;text-align:center;border:1px dashed var(--line);border-radius:12px}.empty h2{font:28px Georgia,serif}.report-heading{display:flex;align-items:start;justify-content:space-between;gap:18px;margin:28px 0 12px}.report-heading h2{font:28px/1.2 Georgia,serif;margin:0 0 8px}.report-heading p{font-size:12px;margin:0}.report-actions{display:flex;gap:7px}.report-actions button{padding:7px 12px;background:var(--white);border:1px solid var(--line);border-radius:6px;font-size:12px}.chart{border:1px solid var(--line);padding:20px;border-radius:12px;margin:20px 0}.chart-caption{font-size:12px;line-height:1.5;margin:0 0 18px}.bar-row{display:grid;grid-template-columns:minmax(130px,1fr) 2fr minmax(90px,1fr);gap:12px;align-items:center;margin:12px 0;font-size:12px}.bar-label{overflow-wrap:anywhere}.bar-track{display:flex;height:14px;position:relative;background:var(--blue20);border-radius:3px;overflow:hidden}.bar-track i{display:block;background:var(--blue);height:100%;width:var(--width)}.bar-track.negative i{background:var(--dark)}.bar-value{text-align:right;font-variant-numeric:tabular-nums}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;font-size:12px}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{background:var(--blue20);font-weight:600}.num{text-align:right;font-variant-numeric:tabular-nums}.warning{padding:14px 18px;background:var(--teal20);border-left:3px solid var(--teal);font-size:12px;line-height:1.6;margin:12px 0}details{margin:20px 0;border-top:1px solid var(--line);padding-top:16px}summary{cursor:pointer;min-height:44px;font-size:14px;font-weight:600}.sources li{font-size:12px;line-height:1.7;overflow-wrap:anywhere;margin-bottom:10px}.source-panel{margin-top:30px}.source-panel h3{font-size:14px}.source-panel li{font-size:12px;line-height:1.6}.source-panel p{font-size:12px}#report-status{font-size:14px}footer{border-top:1px solid var(--line);padding:24px 4vw;font-size:12px}button:disabled{opacity:.6;cursor:wait}@media(max-width:1050px){.workspace{grid-template-columns:280px minmax(0,1fr)}.filters{grid-template-columns:1fr 1fr}.bar-row{grid-template-columns:1fr 1fr}.bar-value{grid-column:2}}@media(max-width:760px){header{padding:18px;gap:14px}header img{width:100px}.wordmark{font-size:21px;padding-left:14px}.wordmark span{font-size:12px}.badge{display:none}main{padding:25px 18px}.intro{align-items:start}.intro>a{font-size:12px;white-space:nowrap;margin-top:10px}.workspace{display:flex;flex-direction:column}.assistant{position:static;width:100%}.analysis{width:100%}.suggestions{grid-template-columns:1fr 1fr}.filters{padding:16px;gap:10px}.report-heading{flex-direction:column}.bar-row{font-size:11px}.chart{padding:14px}.chat-log{max-height:240px}.intro h1{font-size:35px}}@media print{header,.intro,.assistant,.filters,.source-panel,.report-actions,footer,#report-status{display:none}main{padding:0}.workspace{display:block}.analysis{width:100%}.table-scroll{overflow:visible}table{font-size:9px}td,th{white-space:normal;padding:6px}.chart{break-inside:avoid}details{display:block}details>*{display:block}body{color:var(--dark)}}

.voice-actions button{color:var(--dark)}
