:root { --ink:#20231e; --muted:#777a70; --line:#d9d8ce; --paper:#f4f2e9; --card:#fbfaf5; --acid:#dfff45; --purple:#6357f5; --red:#ba3d35; --green:#218f68; }
/* Topic comparisons share the competitive chart's filters. */
.topic-heading { gap:16px; flex-wrap:wrap; }
.topic-heading>span { font-size:.875rem; color:#5d6057; }
.topic-explainer,.topic-method { color:#5d6057; font-size:.875rem; line-height:1.6; max-width:920px; }
.topic-explainer { margin:-4px 0 24px; }
.topic-method { margin:20px 0 0; }
.topic-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
.topic-card { min-width:0; border:1px solid var(--line); border-radius:12px; background:var(--card); overflow:hidden; }
.topic-card>header { padding:24px; border-bottom:1px solid var(--line); }
.topic-group { color:var(--purple); font-size:.75rem; font-weight:700; }
.topic-card h3 { margin:7px 0 10px; font-size:1.3rem; letter-spacing:-.025em; overflow-wrap:anywhere; }
.topic-card>header p { margin:0; font-size:.875rem; color:#5d6057; line-height:1.5; }
.topic-fund-section,.topic-source-section { padding:22px 24px; }
.topic-source-section { border-top:1px solid var(--line); }
.topic-card h4 { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; margin:0 0 18px; font-size:.875rem; }
.topic-card h4>span { font-weight:400; color:#5d6057; }
.topic-funds,.topic-sources,.topic-source-pages { padding:0; margin:0; list-style:none; }
.topic-fund+.topic-fund { margin-top:19px; }
.topic-fund-name { display:flex; align-items:center; gap:9px; font-size:.875rem; }
.topic-fund-name img { object-fit:contain; flex:none; }
.topic-fund-name strong { min-width:0; overflow-wrap:anywhere; font-weight:600; }
.topic-fund.primary .topic-fund-name strong { color:var(--purple); }
.topic-fund-name b { margin-left:auto; font-variant-numeric:tabular-nums; }
.topic-fund-bar { height:5px; margin:9px 0 7px; background:#e7e5dc; border-radius:9px; overflow:hidden; }
.topic-fund-bar>span { display:block; height:100%; background:var(--fund-color); border-radius:inherit; }
.topic-fund-context { display:flex; justify-content:space-between; flex-wrap:wrap; gap:4px 12px; color:#5d6057; font-size:.75rem; line-height:1.5; }
.topic-more { margin-top:18px; }
.topic-more>summary { font-size:.875rem; font-weight:600; color:var(--purple); }
.topic-more[open]>summary { margin-bottom:18px; }
.topic-card summary { cursor:pointer; border-radius:3px; }
.topic-card summary:focus-visible,.topic-card a:focus-visible { outline:2px solid var(--purple); outline-offset:4px; }
.topic-source { border-bottom:1px solid var(--line); }
.topic-source:last-child { border-bottom:0; }
.topic-source summary { display:flex; align-items:baseline; gap:12px; padding:12px 0; font-size:.875rem; }
.topic-source summary::before { content:"+"; color:var(--purple); flex:none; }
.topic-source details[open]>summary::before { content:"−"; }
.topic-source summary>span { overflow-wrap:anywhere; min-width:0; }
.topic-source summary>b { margin-left:auto; flex:none; font-size:.75rem; font-weight:500; color:#5d6057; }
.topic-source details>p,.topic-source details>small { display:block; margin:0 0 12px; color:#5d6057; font-size:.75rem; }
.topic-source-pages li { padding:0 0 14px 20px; }
.topic-source-pages a { color:var(--purple); font-size:.875rem; line-height:1.5; overflow-wrap:anywhere; }
.topic-source-pages small { display:block; margin-top:4px; color:#5d6057; font-size:.75rem; }
.topic-coverage { margin:16px 0 0; color:#5d6057; font-size:.75rem; line-height:1.6; }
.topic-empty { padding:32px; border:1px solid var(--line); border-radius:12px; background:var(--card); }
.topic-empty p,.topic-empty-copy { font-size:.875rem; line-height:1.6; color:#5d6057; }
@media (max-width:900px) { .topic-grid { grid-template-columns:1fr; } }
@media (max-width:480px) { .topic-card>header,.topic-fund-section,.topic-source-section { padding:20px 16px; }.topic-source summary { gap:8px; }.topic-source summary>b { flex-shrink:1; text-align:right; } }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.auth-gate-error { min-height:100vh; display:grid; place-content:center; padding:30px; text-align:center; }
.auth-gate-error h1 { margin:0; font-size:clamp(28px,4vw,48px); letter-spacing:-.04em; }
.auth-gate-error p { margin:12px 0 0; color:var(--muted); }
button,input,textarea { font:inherit; color:inherit; } button { cursor:pointer; } a { color:inherit; }
.shell { max-width:1440px; min-height:100vh; margin:auto; border-inline:1px solid var(--line); }
.topbar { height:72px; display:flex; align-items:center; justify-content:space-between; padding:0 42px; border-bottom:1px solid var(--line); background:rgba(244,242,233,.94); position:sticky; top:0; z-index:10; backdrop-filter:blur(12px); }
.brand { color:var(--ink); text-decoration:none; display:flex; align-items:center; }
.brand img { display:block; width:auto; height:36px; }
.top-actions,.export-actions,.prompt-actions,.dialog-actions { display:flex; align-items:center; gap:12px; }
.timezone,.eyebrow,.metrics article>span,.prompt-results>div>span,.prompt-schedule>span,.details-meta small,.classification-grid small { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.timezone { font-size:11px; color:var(--muted); margin-right:8px; }
.top-nav-link { color:var(--muted); font-size:11px; font-weight:700; text-decoration:none; border-bottom:1px solid transparent; padding:8px 0; }
.top-nav-link:hover,.top-nav-link:focus-visible { color:var(--ink); border-color:var(--purple); outline:0; }
.icon-button,.ghost-button { border:1px solid var(--line); background:transparent; color:var(--ink); border-radius:8px; min-height:40px; padding:0 15px; text-decoration:none; display:inline-grid; place-items:center; }
.icon-button { width:40px; padding:0; }
.primary-button { border:1px solid var(--ink); border-radius:8px; background:var(--ink); color:white; min-height:41px; padding:0 18px; font-weight:700; display:inline-flex; align-items:center; justify-content:center; gap:9px; box-shadow:3px 3px 0 var(--acid); }
.primary-button span { color:var(--acid); font-size:20px; line-height:0; }
main { padding:44px 70px 90px; }
.hero { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(310px,.7fr); align-items:center; gap:54px; padding-bottom:48px; }
.eyebrow { margin:0 0 15px; font-size:11px; font-weight:600; letter-spacing:.12em; }
h1 { max-width:720px; margin:0; font-size:clamp(46px,4.65vw,64px); line-height:.96; letter-spacing:-.07em; font-weight:700; }
h1 em { color:var(--purple); font-style:normal; position:relative; } h1 em::after { content:""; position:absolute; height:9px; left:2px; right:-2px; bottom:-2px; background:var(--acid); z-index:-1; transform:rotate(-1deg); }
.snapshot-card { position:relative; overflow:hidden; min-height:224px; display:flex; flex-direction:column; padding:25px 26px 0; border:1px solid var(--ink); border-radius:12px; background:var(--card); box-shadow:4px 4px 0 rgba(32,35,30,.09); }
.snapshot-card::before { content:""; position:absolute; inset:0 0 auto; height:5px; background:linear-gradient(90deg,var(--ink) 0 78%,var(--acid) 78%); }
.snapshot-header { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.snapshot-kicker { margin:0; color:var(--ink); font:800 9px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.1em; }
.snapshot-header>span { color:var(--muted); font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; }
.snapshot-facts { min-height:108px; display:grid; padding-top:14px; }
.snapshot-fact { min-width:0; grid-area:1 / 1; visibility:hidden; pointer-events:none; }
.snapshot-fact.active { visibility:visible; pointer-events:auto; }
.snapshot-lead { display:block; max-width:410px; font-size:21px; line-height:1.15; letter-spacing:-.035em; }
.snapshot-detail { margin:8px 0 0; color:#5d6057; font-size:10px; line-height:1.45; }
.snapshot-next { align-self:flex-end; margin-top:auto; padding:4px 0; border:0; border-bottom:1px solid var(--ink); background:transparent; font-size:9px; font-weight:800; }
.snapshot-next:hover,.snapshot-next:focus-visible { color:var(--purple); border-color:var(--purple); outline:0; }
.snapshot-next span { display:inline; margin-left:5px; }
.status-panel { border:1px solid var(--line); background:var(--card); padding:22px; display:flex; gap:14px; align-items:flex-start; border-radius:12px; box-shadow:5px 5px 0 rgba(32,35,30,.08); }
.snapshot-card .status-panel { margin:13px -26px 0; padding:12px 26px 13px; border:0; border-top:1px solid var(--line); border-radius:0; background:#f1f0e9; box-shadow:none; }
.live-dot { width:10px; height:10px; flex:0 0 auto; border-radius:50%; margin-top:5px; background:#3fc888; box-shadow:0 0 0 5px rgba(63,200,136,.14); }
.status-panel.busy .live-dot { background:var(--purple); box-shadow:0 0 0 5px rgba(99,87,245,.14); animation:pulse 1.5s infinite; }
@keyframes pulse { 50% { opacity:.45; } }
.status-panel strong,.status-panel span { display:block; }.status-panel strong { font-size:14px; }.status-panel div span { margin-top:5px; color:var(--muted); font-size:12px; line-height:1.5; }
.snapshot-card .status-panel strong { font-size:12px; }.snapshot-card .status-panel div span { margin-top:3px; font-size:10px; }
.snapshot-heading { display:flex; align-items:end; justify-content:flex-start; gap:24px; margin-bottom:18px; }
.snapshot-heading .eyebrow { margin-bottom:6px; color:var(--muted); font-size:9px; }
.snapshot-heading>p { margin:0 0 3px; color:var(--muted); font-size:10px; }
.category-heading { margin-top:48px; margin-bottom:18px; }
.category-heading .eyebrow { color:var(--muted); margin-bottom:7px; }
.category-heading>p { max-width:360px; margin:0 0 4px; color:var(--muted); font-size:10px; text-align:right; }
.category-heading + .report-links { margin-top:0; }
.metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.metrics article { min-width:0; background:var(--card); }
.metric-visibility { grid-column:1 / -1; overflow:hidden; border:1px solid var(--ink); border-radius:12px; }
.metric-visibility>header { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 21px; border-bottom:1px solid var(--line); }
.metric-visibility>header span,.metric-card>span,.intent-metrics span { display:block; color:var(--muted); font:800 9px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; }
.metric-visibility>header strong { display:block; margin-top:4px; font-size:15px; letter-spacing:-.02em; }
.metric-visibility>header b { padding:5px 8px; border-radius:99px; background:var(--ink); color:white; font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; }
.intent-metrics { display:grid; grid-template-columns:1fr 1fr; }
.intent-metrics>div { min-height:128px; padding:22px 24px 20px; }
.intent-metrics>div:first-child { border-right:1px solid var(--line); box-shadow:inset 4px 0 0 var(--acid); }
.intent-metrics>div:last-child { box-shadow:inset 4px 0 0 var(--green); }
.intent-metrics strong { display:block; margin-top:10px; font-size:44px; line-height:1; letter-spacing:-.055em; }
.intent-metrics p,.metric-card p { margin:9px 0 0; color:var(--muted); font-size:10px; line-height:1.45; }
.metric-visibility>footer { padding:10px 21px; border-top:1px solid var(--line); background:#f1f0e9; color:var(--muted); font-size:9px; }
.metric-card { --metric-accent:var(--line); min-height:150px; padding:20px 21px; border:1px solid var(--line); border-top:3px solid var(--metric-accent); border-radius:10px; }
.metric-card.metric-sentiment { --metric-accent:var(--green); }.metric-card.metric-ads { --metric-accent:#d49517; }.metric-card.metric-sources { --metric-accent:var(--ink); }
.metric-card>strong { display:block; margin-top:17px; font-size:39px; line-height:1; letter-spacing:-.05em; }
.section-heading { margin:62px 0 22px; display:flex; justify-content:space-between; align-items:end; }.section-heading .eyebrow { color:var(--muted); margin-bottom:7px; }h2 { margin:0; font-size:30px; letter-spacing:-.04em; }.count-pill { font-family:ui-monospace,monospace; font-size:10px; border:1px solid var(--line); padding:8px 12px; border-radius:99px; }
.visibility-heading { align-items:flex-end; }.visibility-controls { display:flex; align-items:flex-end; gap:10px; }.visibility-controls label,.control-field { display:grid; gap:7px; }.visibility-controls label>span,.control-field>span { color:var(--muted); font:600 9px ui-monospace,monospace; letter-spacing:.08em; }.visibility-controls select { min-width:220px; height:39px; padding:0 34px 0 11px; border:1px solid var(--line); border-radius:8px; background:var(--card); font-size:12px; }.range-control { height:39px; display:flex; padding:3px; border:1px solid var(--line); border-radius:8px; background:var(--card); }.range-control button { min-width:46px; border:0; border-radius:5px; background:transparent; color:var(--muted); font:700 10px ui-monospace,monospace; }.range-control button.active { background:var(--ink); color:white; }
.metric-control { height:39px; display:flex; padding:3px; border:1px solid var(--line); border-radius:8px; background:var(--card); }.metric-control button { min-width:72px; border:0; border-radius:5px; background:transparent; color:var(--muted); font:700 9px ui-monospace,monospace; }.metric-control button.active { background:var(--purple); color:white; }
.visibility-card { min-height:460px; overflow:hidden; border:1px solid var(--ink); border-radius:13px; background:var(--card); box-shadow:4px 4px 0 rgba(32,35,30,.1); }.visibility-loading { min-height:458px; display:grid; place-content:center; color:var(--muted); font-size:12px; }.visibility-card-header { min-height:76px; padding:18px 23px; display:flex; align-items:center; justify-content:space-between; gap:30px; border-bottom:1px solid var(--line); }.visibility-card-header strong,.visibility-card-header span { display:block; }.visibility-card-header strong { font-size:14px; }.visibility-card-header span { margin-top:5px; color:var(--muted); font-size:10px; }.visibility-card-header p { max-width:510px; margin:0; color:var(--muted); font-size:11px; line-height:1.5; text-align:right; }.visibility-legend { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid var(--line); }.series-toggle { min-width:0; min-height:52px; display:grid; grid-template-columns:10px 1fr auto; align-items:center; gap:8px; padding:9px 13px; border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:white; text-align:left; }.series-toggle:nth-child(4n) { border-right:0; }.series-toggle:nth-last-child(-n+4) { border-bottom:0; }.series-toggle i { width:9px; height:9px; border-radius:50%; background:var(--series-color); }.series-toggle span { overflow:hidden; color:var(--ink); font-size:10px; white-space:nowrap; text-overflow:ellipsis; }.series-toggle strong { font-size:12px; }.series-toggle.off { opacity:.38; }.series-toggle.off i { background:transparent; border:2px solid var(--series-color); }.chart-shell { min-height:325px; position:relative; padding:10px 28px 4px; }.visibility-chart { display:block; width:100%; height:auto; max-height:350px; overflow:visible; }.chart-grid line { stroke:var(--line); stroke-width:1; }.chart-grid text { fill:var(--muted); font:9px ui-monospace,monospace; }.visibility-line { fill:none; stroke-width:2.1; stroke-linecap:round; stroke-linejoin:round; opacity:.82; vector-effect:non-scaling-stroke; }.visibility-line.primary { stroke-width:4; opacity:1; }.visibility-point { stroke:var(--card); stroke-width:1.5; vector-effect:non-scaling-stroke; }.visibility-point:focus { outline:none; stroke:var(--ink); stroke-width:3; }.chart-empty { position:absolute; inset:54px 30px 38px 68px; display:grid; place-content:center; text-align:center; background:rgba(251,250,245,.78); backdrop-filter:blur(2px); }.chart-empty strong,.chart-empty span { display:block; }.chart-empty strong { font-size:15px; }.chart-empty span { margin-top:7px; color:var(--muted); font-size:11px; }
.series-toggle { grid-template-columns:28px minmax(0,1fr) auto; box-shadow:inset 3px 0 0 var(--series-color); }.series-toggle img { width:28px; height:28px; object-fit:contain; border:1px solid var(--line); border-radius:7px; background:white; }.series-toggle.off img { filter:grayscale(1); }.series-toggle strong { max-width:70px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.visibility-legend { grid-template-columns:repeat(8,minmax(0,1fr)); gap:6px; padding:9px 12px; background:#f4f3ed; }.visibility-legend .series-toggle { min-height:38px; grid-template-columns:22px minmax(0,1fr) auto; gap:6px; padding:5px 7px; border:1px solid var(--line); border-radius:7px; background:rgba(255,255,255,.78); box-shadow:inset 2px 0 0 var(--series-color); }.visibility-legend .series-toggle:hover,.visibility-legend .series-toggle:focus-visible { border-color:var(--series-color); background:white; outline:0; }.visibility-legend .series-toggle img { width:22px; height:22px; border:0; border-radius:5px; }.visibility-legend .series-toggle span { font-size:9px; }.visibility-legend .series-toggle strong { max-width:52px; font-size:10px; }
.chart-marker { cursor:default; }.chart-marker rect { stroke-width:2; vector-effect:non-scaling-stroke; filter:drop-shadow(1px 1px 1px rgba(32,35,30,.18)); }.chart-marker.primary rect { stroke-width:3; }.chart-marker.historical rect { stroke-width:1.5; }.chart-marker image { pointer-events:none; }.chart-marker text { fill:var(--ink); font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace; paint-order:stroke; stroke:var(--card); stroke-width:3px; stroke-linejoin:round; }.chart-marker:focus { outline:none; }.chart-marker:focus rect { stroke:var(--ink); stroke-width:3; }
.citation-card { margin-top:22px; overflow:hidden; border:1px solid var(--ink); border-radius:13px; background:var(--card); box-shadow:4px 4px 0 rgba(32,35,30,.1); }.citation-loading { min-height:210px; display:grid; place-content:center; color:var(--muted); font-size:12px; }.citation-header { min-height:112px; display:flex; align-items:center; justify-content:space-between; gap:32px; padding:22px 25px; border-bottom:1px solid var(--line); }.citation-header .eyebrow { margin-bottom:6px; color:var(--muted); font-size:9px; }.citation-header h3 { margin:0; font-size:20px; letter-spacing:-.03em; }.citation-header>div>span { display:block; max-width:620px; margin-top:7px; color:var(--muted); font-size:11px; line-height:1.45; }.citation-summary { flex:0 0 auto; display:grid; grid-template-columns:repeat(3,auto); border:1px solid var(--line); border-radius:9px; background:white; }.citation-summary span { min-width:105px; padding:12px 14px; border-right:1px solid var(--line); color:var(--muted); font:9px ui-monospace,SFMono-Regular,Menlo,monospace; text-align:center; }.citation-summary span:last-child { border:0; }.citation-summary strong { display:block; margin-bottom:4px; color:var(--ink); font:800 20px ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }.citation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:18px; }.citation-site { min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:10px; background:white; }.citation-site>header { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:10px; padding:12px 14px; border-bottom:1px solid var(--line); background:#f1f0e9; }.citation-site>header>span { display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--purple); border-radius:50%; color:var(--purple); font:800 9px ui-monospace,SFMono-Regular,Menlo,monospace; }.citation-site>header strong,.citation-site>header small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.citation-site>header strong { font-size:12px; }.citation-site>header small { margin-top:4px; color:var(--muted); font-size:9px; }.citation-site>header b { padding:5px 7px; border-radius:6px; background:var(--acid); font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace; }.citation-site ol { margin:0; padding:0; list-style:none; }.citation-site li { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px; padding:11px 14px; border-bottom:1px solid var(--line); }.citation-site li:last-child { border:0; }.citation-site li a { display:block; overflow:hidden; font-size:11px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }.citation-site li a:hover,.citation-site li a:focus-visible { color:var(--purple); }.citation-site li small { display:block; overflow:hidden; margin-top:4px; color:var(--muted); font:8px ui-monospace,SFMono-Regular,Menlo,monospace; text-overflow:ellipsis; white-space:nowrap; }.citation-site li>strong { color:var(--muted); font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace; }.citation-empty { min-height:170px; display:grid; place-content:center; text-align:center; }.citation-empty strong,.citation-empty span { display:block; }.citation-empty span { margin-top:7px; color:var(--muted); font-size:11px; }.citation-card>div>footer,.citation-more { margin:0; padding:11px 18px; border-top:1px solid var(--line); color:var(--muted); font-size:9px; text-align:center; }.citation-more { border-top:0; padding-top:0; }
.empty-card,.loading-card { min-height:340px; border:1px dashed #aaa99f; border-radius:15px; background:rgba(251,250,245,.42); display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:40px; }.loading-card { min-height:180px; color:var(--muted); }
.empty-mark { display:block; width:64px; height:64px; margin-bottom:20px; border-radius:14px; box-shadow:3px 3px 0 rgba(32,35,30,.12); }.empty-card h3 { margin:0; font-size:22px; letter-spacing:-.03em; }.empty-card>p { max-width:490px; color:var(--muted); font-size:14px; line-height:1.6; }.primary-button.large { margin:9px 0 23px; min-height:47px; }.empty-card ul { display:flex; flex-wrap:wrap; gap:24px; list-style:none; padding:0; margin:0; color:var(--muted); font-size:11px; }.empty-card li::before { content:"✓"; color:var(--green); margin-right:6px; font-weight:700; }
.prompt-group + .prompt-group { margin-top:30px; }.prompt-group-header { min-height:40px; display:flex; align-items:center; justify-content:space-between; padding:0 5px 10px; }.prompt-group-header>div { display:flex; align-items:center; gap:9px; }.prompt-group-header strong { font-size:14px; }.prompt-group-header small { color:var(--muted); font:10px ui-monospace,monospace; }.group-mark { display:grid; place-items:center; width:23px; height:23px; border:1px solid var(--purple); border-radius:7px; color:var(--purple); font:700 11px ui-monospace,monospace; }.prompt-group.ungrouped .group-mark { border-color:var(--line); color:var(--muted); }.prompt-grid { display:grid; gap:14px; }.prompt-card { background:var(--card); border:1px solid var(--ink); border-radius:13px; overflow:hidden; box-shadow:4px 4px 0 rgba(32,35,30,.1); }.prompt-card.disabled { opacity:.62; border-color:var(--line); }.prompt-main { display:grid; grid-template-columns:1fr auto; gap:30px; padding:24px 27px; border-bottom:1px solid var(--line); }.prompt-title-row { display:flex; gap:19px; align-items:flex-start; min-width:0; }.prompt-title-row>div { min-width:0; }.prompt-index { font-family:ui-monospace,monospace; color:var(--purple); font-size:11px; border:1px solid var(--purple); padding:5px; border-radius:50%; }.prompt-heading-line { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:7px; }.prompt-card h3 { margin:0; font-size:19px; letter-spacing:-.03em; }.group-chip { display:inline-flex; align-items:center; width:max-content; min-height:23px; padding:3px 8px; border:1px solid rgba(99,87,245,.35); border-radius:99px; background:rgba(99,87,245,.08); color:#4d43c6; font:700 9px ui-monospace,monospace; }.prompt-card p { margin:0; color:var(--muted); font-size:13px; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; max-width:820px; }.prompt-schedule { text-align:right; border-left:1px solid var(--line); padding-left:27px; }.prompt-schedule>span,.prompt-schedule small { display:block; font-size:9px; color:var(--muted); }.prompt-schedule strong { font-size:22px; display:block; margin:3px 0; }.prompt-results { display:grid; grid-template-columns:1.4fr repeat(4,1fr); }.prompt-results>div { min-height:87px; padding:17px 25px; border-right:1px solid var(--line); }.prompt-results>div:last-child{border:0}.prompt-results>div>span { display:block; font-size:9px; color:var(--muted); margin-bottom:11px; letter-spacing:.06em; }.prompt-results strong { font-size:18px; }.prompt-results .previous { font-size:12px; }.no-data { font-size:12px!important;color:var(--muted);font-weight:500 }.badge { display:inline-flex!important; align-items:center; gap:7px; width:max-content; padding:5px 8px; border:1px solid var(--line); border-radius:99px; color:var(--ink)!important; font:600 10px Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important; letter-spacing:0!important; margin:0!important; background:white; }.badge i { width:7px;height:7px;border-radius:50%;background:#aaa }.badge.ranked i{background:var(--purple)}.badge.mentioned_unranked i{background:#f0a630}.badge.absent i{background:#888}.badge.blocked i,.badge.failed i{background:var(--red)}.badge.ambiguous i{background:#b875cf}.badge.favourable i{background:var(--green)}.badge.mixed i{background:#f0a630}.badge.unfavourable i{background:var(--red)}.badge.not_assessable i{background:#888}.prompt-footer { min-height:55px; padding:9px 16px 9px 27px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; }.last-run { color:var(--muted); text-transform:capitalize; font-size:10px; }.text-button { border:0;background:none;font-size:11px;color:var(--muted);padding:8px}.text-button.danger{color:var(--red)}.run-button { min-height:35px;border:1px solid var(--ink);background:var(--ink);color:white;border-radius:7px;padding:0 13px;font-size:11px;font-weight:700}.run-button span{color:var(--acid)}.run-button:disabled{opacity:.5;cursor:not-allowed}.mini-switch input,.switch-label input{position:absolute;opacity:0;pointer-events:none}.mini-switch span,.switch{display:block;width:34px;height:19px;border-radius:20px;background:#c8c7be;position:relative;cursor:pointer}.mini-switch span::after,.switch::after{content:"";position:absolute;width:13px;height:13px;background:white;border-radius:50%;left:3px;top:3px;transition:.18s}.mini-switch input:checked+span,.switch-label input:checked+.switch{background:var(--green)}.mini-switch input:checked+span::after,.switch-label input:checked+.switch::after{transform:translateX(15px)}
.history-heading { margin-top:58px; }.table-wrap { overflow:auto; border-block:1px solid var(--ink); }.history-placeholder { min-height:120px; display:grid; place-content:center; text-align:center; color:var(--muted); }.history-placeholder span { color:var(--ink); font-weight:700; }.history-placeholder p { font-size:12px; margin:6px; }table{width:100%;border-collapse:collapse;min-width:1080px}th{text-align:left;padding:13px 12px;border-bottom:1px solid var(--line)}td{padding:16px 12px;border-bottom:1px solid var(--line);font-size:12px;vertical-align:top}tbody tr:last-child td{border-bottom:0}td strong,td small,td time{display:block}td small{color:var(--muted);margin-top:5px;max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-group{display:inline-block;margin-top:5px;padding:2px 6px;border-radius:99px;background:rgba(99,87,245,.08);color:#4d43c6;font:700 8px ui-monospace,monospace}.sort-button{border:0;background:none;padding:0;font:600 9px ui-monospace,monospace;letter-spacing:.04em;color:var(--muted);text-transform:uppercase}.sort-button.active{color:var(--ink)}.job-status{text-transform:capitalize;font-size:10px;font-weight:700}.job-status.running,.job-status.queued{color:var(--purple)}.job-status.failed,.job-status.blocked,.job-status.canceled{color:var(--red)}.rank-cell{font-weight:800;font-size:17px}.preview{color:var(--muted);max-width:260px}.details-link{font-weight:700;font-size:10px;text-decoration:none;white-space:nowrap}
.history-load-more{display:flex;justify-content:center;padding:18px;border-top:1px solid var(--line)}
.badge.ad-present{background:#fff7df;border-color:#dfbd54}.badge.ad-present i{background:#d49517}.badge.ad-absent i{background:#888}
.position-tokens { display:flex; flex-wrap:wrap; gap:5px; min-width:270px; }.position-tokens>span { display:grid; grid-template-columns:18px auto auto; align-items:center; gap:5px; min-height:28px; padding:3px 7px 3px 4px; border:1px solid var(--line); border-radius:99px; background:white; }.position-tokens img { width:18px; height:18px; object-fit:contain; border-radius:4px; }.position-tokens em { max-width:90px; overflow:hidden; text-overflow:ellipsis; color:var(--muted); font-size:9px; font-style:normal; white-space:nowrap; }.position-tokens b { font-size:10px; }
dialog { width:min(560px,calc(100% - 32px)); max-height:calc(100vh - 32px); border:1px solid var(--ink); border-radius:15px; padding:0; background:var(--card); box-shadow:9px 9px 0 var(--ink); }dialog::backdrop { background:rgba(32,35,30,.4); backdrop-filter:blur(2px); }dialog form,.details-shell { padding:36px; position:relative; }.dialog-close { position:absolute; right:20px; top:16px; border:0; background:none; font-size:27px; z-index:2; }.dialog-close:hover{color:var(--purple)}dialog h2 { margin-bottom:26px; }dialog label { display:block; font-size:12px; font-weight:700; margin-top:18px; }dialog label small { font-weight:400; color:var(--muted); }dialog input,dialog textarea { display:block; width:100%; margin-top:8px; padding:12px; border:1px solid var(--line); border-radius:8px; background:white; resize:vertical; }dialog input:focus,dialog textarea:focus{outline:2px solid rgba(99,87,245,.25);border-color:var(--purple)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.switch-label{display:flex!important;align-items:center;gap:9px;margin-top:31px!important}.switch-label .switch{flex:0 0 auto}.switch-label.standalone{margin-top:23px!important}.form-note{font-size:10px;color:var(--muted);margin:16px 0 0}.dialog-actions { justify-content:flex-end; margin-top:28px; }.fixed-settings{margin-top:24px;padding:14px;border:1px solid var(--line);border-radius:9px;display:grid;gap:9px}.fixed-settings span{font-size:10px;color:var(--muted);display:grid;grid-template-columns:90px 1fr;gap:10px}.fixed-settings strong{font-weight:600;color:var(--ink);word-break:break-all}
.details-dialog{width:min(980px,calc(100% - 32px));}.details-shell{padding:40px 46px}.details-header{padding-right:40px}.details-header h2{margin-bottom:14px;font-size:35px}.details-header>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.rank-chip{background:var(--acid);border:1px solid var(--ink);border-radius:99px;padding:5px 9px;font-size:10px;font-weight:800}.details-meta{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin:26px 0}.details-meta span{padding:17px;border-right:1px solid var(--line);font-size:12px}.details-meta span:last-child{border:0}.details-meta small{display:block;color:var(--muted);font-size:8px;margin-bottom:7px}.detail-section{margin-top:30px}.detail-section h3{font-size:14px;margin:0 0 10px}.detail-section h3 small{font-weight:400;color:var(--muted)}.detail-section pre{white-space:pre-wrap;word-break:break-word;background:#eeece3;border:1px solid var(--line);border-radius:9px;padding:16px;font:11px/1.7 ui-monospace,monospace;max-height:420px;overflow:auto}.detail-section .response-text{background:white;font:13px/1.7 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}.detail-section.accent,.detail-section.retention-accent{background:#efeee7;border-left:4px solid var(--purple);padding:20px}.detail-section.retention-accent.favourable{border-left-color:var(--green)}.detail-section.retention-accent.mixed{border-left-color:#f0a630}.detail-section.retention-accent.unfavourable{border-left-color:var(--red)}.detail-section.retention-accent.not_assessable{border-left-color:#888}.classification-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.classification-grid span{font-weight:700}.classification-grid small{display:block;font-size:8px;color:var(--muted);margin-bottom:7px}.detail-section blockquote{margin:18px 0 0;font-size:12px;line-height:1.6;color:#55584f}.source-list{padding-left:20px}.source-list li{margin:13px 0;font-size:12px}.source-list a{font-weight:700}.source-list small{display:block;color:var(--muted);margin-top:3px;word-break:break-all}.screenshot{display:block;max-width:100%;max-height:580px;object-fit:contain;object-position:top;border:1px solid var(--line);border-radius:8px}.metadata-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.error-panel{border:1px solid #e5b1ae;background:#fff2f1;border-radius:9px;padding:16px}.error-panel p{margin:0;color:#7c2e29;font-size:12px}.muted{color:var(--muted);font-size:12px}.danger-border{border-color:var(--red);color:var(--red)}.details-loading{padding:100px 20px;text-align:center;color:var(--muted)}.error-text{color:var(--red)}
.detail-brand-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.detail-brand-grid article { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:10px; min-height:58px; padding:9px 12px; border:1px solid var(--line); border-left:4px solid var(--brand-color); border-radius:8px; background:white; }.detail-brand-grid img { width:32px; height:32px; object-fit:contain; border-radius:6px; }.detail-brand-grid strong,.detail-brand-grid span { display:block; }.detail-brand-grid strong { overflow:hidden; text-overflow:ellipsis; font-size:11px; white-space:nowrap; }.detail-brand-grid span { margin-top:4px; color:var(--muted); font-size:9px; }.detail-brand-grid article>b { font-size:17px; }
.ad-observation-list{display:grid;gap:12px}.ad-preview{max-width:620px;min-height:142px;display:grid;grid-template-columns:138px minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:14px;background:white;box-shadow:2px 2px 0 rgba(32,35,30,.07)}.ad-preview-media{display:grid;place-items:center;background:linear-gradient(145deg,#dfff45,#8fc8ff);color:var(--ink);font:900 34px ui-monospace,monospace;letter-spacing:-.08em}.ad-preview-media.has-image{overflow:hidden;background:#1558ff}.ad-preview-media img{display:block;width:100%;height:100%;object-fit:cover}.ad-preview-media.has-image:focus-visible{outline:3px solid var(--purple);outline-offset:-3px}.ad-preview-copy{min-width:0;padding:15px 17px}.ad-preview-copy header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px}.ad-preview-copy header strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.ad-preview-copy header span{padding:4px 7px;border-radius:99px;background:#efeee9;color:var(--muted);font:800 8px ui-monospace,monospace;text-transform:uppercase}.ad-preview-copy header b{color:var(--muted);font-size:10px;letter-spacing:1px}.ad-preview-copy h4{margin:13px 0 4px;font-size:16px;letter-spacing:-.02em}.ad-preview-copy p{margin:0;color:#55584f;font-size:12px;line-height:1.45}.ad-preview-cta{display:inline-block;margin-top:8px;color:var(--ink);font-size:11px;font-weight:800;text-decoration:none}.ad-preview-cta:not(.muted-cta):hover,.ad-preview-cta:not(.muted-cta):focus-visible{color:var(--purple)}.muted-cta{color:var(--muted)}.ad-destinations{margin:8px 0 0;padding-left:16px}.ad-destinations li{font-size:10px}.ad-preview-note{margin:9px 0 0;color:var(--muted);font:9px ui-monospace,monospace}
.ad-activity-heading{margin-top:62px}.ad-activity-card{overflow:hidden;border:1px solid var(--ink);border-radius:13px;background:var(--card);box-shadow:4px 4px 0 rgba(32,35,30,.1)}.ad-activity-loading{min-height:360px;display:grid;place-content:center;color:var(--muted);font-size:12px}.ad-activity-summary{min-height:102px;padding:21px 24px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.ad-activity-summary>div:first-child>span,.ad-timeline .eyebrow,.ad-history .eyebrow{display:block;margin-bottom:7px;color:var(--muted);font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.ad-activity-summary>div:first-child>strong{display:block;font-size:17px}.ad-activity-summary p{margin:5px 0 0;color:var(--muted);font-size:10px}.ad-summary-metrics{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));border:1px solid var(--line);border-radius:10px;background:white}.ad-summary-metrics span{min-width:108px;padding:11px 14px;border-right:1px solid var(--line);color:var(--muted);font-size:9px}.ad-summary-metrics span:last-child{border:0}.ad-summary-metrics strong{display:block;margin-bottom:3px;color:var(--ink);font-size:19px}.ad-timeline{padding:24px;border-bottom:1px solid var(--line);background:#f8f7f1}.ad-timeline>header,.ad-history>header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.ad-timeline h3,.ad-history h3{margin:0;font-size:16px}.ad-timeline-legend{display:flex;gap:16px;color:var(--muted);font-size:9px}.ad-timeline-legend span{display:flex;align-items:center;gap:6px}.ad-timeline-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.ad-timeline-legend i.present{background:#d49517;box-shadow:0 0 0 3px #fff2c9}.ad-timeline-legend i.absent{border:2px solid #9c9d95;background:white}.ad-timeline-rows{margin-top:19px;min-width:560px}.ad-timeline-row,.ad-timeline-axis{display:grid;grid-template-columns:175px minmax(0,1fr);align-items:center;gap:18px}.ad-timeline-row+.ad-timeline-row{margin-top:9px}.ad-timeline-label{min-width:0}.ad-timeline-label strong,.ad-timeline-label span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-timeline-label strong{font-size:10px}.ad-timeline-label span{margin-top:3px;color:var(--muted);font:8px ui-monospace,SFMono-Regular,Menlo,monospace}.ad-timeline-track{height:38px;position:relative;border-radius:8px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(217,216,206,.7) 25%)}.ad-timeline-track::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line)}.ad-timeline-marker{width:18px;height:18px;position:absolute;z-index:1;top:50%;display:grid;place-items:center;padding:0;border-radius:50%;transform:translate(-50%,-50%);font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace;transition:transform .16s ease,box-shadow .16s ease}.ad-timeline-marker.present{border:2px solid white;background:#d49517;color:white;box-shadow:0 0 0 4px #fff2c9,0 2px 5px rgba(32,35,30,.22)}.ad-timeline-marker.absent{border:2px solid #9c9d95;background:white;color:var(--muted)}.ad-timeline-marker:hover,.ad-timeline-marker:focus-visible{z-index:2;outline:0;transform:translate(-50%,-50%) scale(1.25);box-shadow:0 0 0 4px rgba(99,87,245,.18),0 2px 7px rgba(32,35,30,.2)}.ad-timeline-axis{margin-top:3px}.ad-timeline-axis>div{display:flex;justify-content:space-between;color:var(--muted);font:8px ui-monospace,SFMono-Regular,Menlo,monospace}.ad-advertiser-strip{min-height:58px;padding:10px 24px;display:flex;align-items:center;gap:8px;overflow-x:auto;border-bottom:1px solid var(--line);background:white}.ad-advertiser-strip>span:first-child{flex:0 0 auto;margin-right:5px;color:var(--muted);font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.ad-advertiser-strip>span:not(:first-child){min-height:32px;display:grid;grid-template-columns:23px auto 18px;align-items:center;gap:7px;padding:4px 7px 4px 4px;border:1px solid var(--line);border-radius:99px;font-size:9px;white-space:nowrap}.ad-advertiser-strip b{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#dfff45,#8fc8ff);font:900 8px ui-monospace,SFMono-Regular,Menlo,monospace}.ad-advertiser-strip em{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#efeee9;color:var(--muted);font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace;font-style:normal}.ad-history{padding:25px 24px 28px}.ad-history>header p{max-width:410px;margin:0;color:var(--muted);font-size:10px;text-align:right}.ad-history-day{margin-top:23px}.ad-history-day>header{min-height:29px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.ad-history-day>header time{font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase}.ad-history-day>header span{color:var(--muted);font-size:9px}.ad-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding-top:13px}.ad-history-item{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:white}.ad-history-context{padding:14px 15px 11px}.ad-history-context>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.ad-history-context time{color:var(--muted);font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace}.ad-history-context>strong,.ad-history-context>p{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-history-context>strong{font-size:12px}.ad-history-context>p{margin:4px 0 0;color:var(--muted);font-size:9px}.ad-history-item>.ad-preview{width:100%;max-width:none;min-height:132px;border-width:1px 0;border-radius:0;box-shadow:none;grid-template-columns:112px minmax(0,1fr)}.ad-history-item>.ad-preview .ad-preview-media{font-size:29px}.ad-history-item>footer{min-height:44px;padding:9px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.ad-history-item>footer span{overflow:hidden;color:var(--muted);font:8px ui-monospace,SFMono-Regular,Menlo,monospace;text-overflow:ellipsis;white-space:nowrap}.ad-history-item>footer a{flex:0 0 auto;font-size:9px;font-weight:800;text-decoration:none}.ad-activity-empty,.ad-history-empty{min-height:230px;display:grid;place-content:center;justify-items:center;padding:35px;text-align:center}.ad-empty-mark{width:54px;height:54px;display:grid;place-items:center;margin-bottom:14px;border-radius:14px;background:linear-gradient(145deg,#dfff45,#8fc8ff);font:900 16px ui-monospace,SFMono-Regular,Menlo,monospace;box-shadow:3px 3px 0 rgba(32,35,30,.12)}.ad-activity-empty strong,.ad-history-empty strong{font-size:15px}.ad-activity-empty p,.ad-history-empty span{max-width:430px;margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
#toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);background:var(--ink);color:white;padding:12px 18px;border-radius:8px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:100;box-shadow:3px 3px 0 var(--acid)}#toast.show{opacity:1;transform:translate(-50%,0)}#toast.error{background:var(--red);box-shadow:none}
@media (max-width:950px){.prompt-results{grid-template-columns:repeat(3,1fr)}.prompt-results>div:nth-child(3){border-right:0}.prompt-results>div:nth-child(-n+3){border-bottom:1px solid var(--line)}}
@media (max-width:850px) { .topbar{padding:0 20px}.timezone{display:none}main{padding:42px 24px 70px}.hero{grid-template-columns:1fr;gap:30px}.snapshot-card{min-height:0}.metrics{grid-template-columns:1fr 1fr}.metric-visibility,.metric-sources{grid-column:span 2}.visibility-heading{align-items:flex-start;gap:20px}.visibility-card-header{align-items:flex-start}.visibility-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.series-toggle:nth-child(4n){border-right:1px solid var(--line)}.series-toggle:nth-child(2n){border-right:0}.series-toggle:nth-last-child(-n+4){border-bottom:1px solid var(--line)}.series-toggle:nth-last-child(-n+2){border-bottom:0}.prompt-main{grid-template-columns:1fr}.prompt-schedule{text-align:left;border:0;padding:0}.prompt-footer{align-items:flex-start;gap:15px}.details-meta{grid-template-columns:1fr 1fr}.details-meta span:nth-child(2){border-right:0}.details-meta span:nth-child(-n+2){border-bottom:1px solid var(--line)} }
@media (max-width:600px) { .topbar .icon-button,.top-nav-link{display:none}.primary-button{padding:0 12px}h1{font-size:46px}.snapshot-heading{align-items:flex-start;flex-direction:column;gap:8px}.snapshot-heading>p{margin:0}.metrics{grid-template-columns:1fr}.metric-visibility,.metric-sources{grid-column:auto}.intent-metrics{grid-template-columns:1fr}.intent-metrics>div:first-child{border-right:0;border-bottom:1px solid var(--line)}.metric-card{min-height:140px}.visibility-heading{display:grid;align-items:start}.visibility-controls{width:100%;align-items:stretch;flex-direction:column}.visibility-controls label,.visibility-controls select{width:100%}.control-field,.range-control{width:max-content}.visibility-card-header{display:block}.visibility-card-header p{margin-top:12px;text-align:left}.visibility-legend{grid-template-columns:1fr 1fr}.series-toggle{padding-inline:9px}.chart-shell{padding-inline:4px;overflow-x:auto}.visibility-chart{min-width:650px}.chart-empty{min-width:540px}.empty-card{padding:35px 20px}.empty-card ul{display:grid;gap:8px}.section-heading{align-items:center}.prompt-results{grid-template-columns:1fr 1fr}.prompt-results>div{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}.prompt-results>div:nth-child(2n){border-right:0!important}.prompt-results>div:last-child{grid-column:span 2;border-bottom:0!important}.prompt-footer{display:block}.prompt-actions{margin-top:15px;flex-wrap:wrap}.form-row,.classification-grid,.metadata-grid{grid-template-columns:1fr}.switch-label{margin-top:12px!important}.details-shell{padding:34px 20px}.details-meta{grid-template-columns:1fr}.details-meta span{border-right:0!important;border-bottom:1px solid var(--line)!important}.details-meta span:last-child{border-bottom:0!important}.export-actions .ghost-button{padding:0 10px}.topbar{height:66px} }
@media (max-width:600px) { .metric-control,.range-control{width:max-content}.detail-brand-grid{grid-template-columns:1fr}.series-toggle{grid-template-columns:24px minmax(0,1fr) auto}.series-toggle img{width:24px;height:24px}.series-toggle span{font-size:9px}.series-toggle strong{max-width:54px;font-size:10px} }
@media (max-width:850px) { .citation-header{align-items:flex-start;flex-direction:column}.citation-summary{width:100%;grid-template-columns:repeat(3,1fr)}.citation-summary span{min-width:0}.citation-grid{grid-template-columns:1fr} }
@media (max-width:600px) { .citation-header{padding:19px}.citation-summary{grid-template-columns:1fr}.citation-summary span{border-right:0;border-bottom:1px solid var(--line)}.citation-summary span:last-child{border-bottom:0}.citation-grid{padding:10px}.citation-site>header{padding-inline:11px}.citation-site li{padding-inline:11px} }
@media (max-width:1100px) and (min-width:601px) { .visibility-legend{grid-template-columns:repeat(4,minmax(0,1fr))}.visibility-legend .series-toggle{border:1px solid var(--line)} }
@media (max-width:600px) { .visibility-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:8px}.visibility-legend .series-toggle{min-height:36px;padding:4px 6px;border:1px solid var(--line)}.visibility-legend .series-toggle img{width:22px;height:22px} }
@media (max-width:600px) { .ad-preview{grid-template-columns:82px minmax(0,1fr)}.ad-preview-media{font-size:25px}.ad-preview-copy{padding:13px}.ad-preview-copy header{grid-template-columns:minmax(0,1fr) auto}.ad-preview-copy header b{display:none}.ad-preview-copy h4{font-size:14px} }
.visibility-card-heading { max-width:650px; font-size:16px!important; line-height:1.35; }
.chart-shell { min-height:384px; display:grid; grid-template-columns:minmax(0,1fr); align-items:stretch; gap:22px; padding:34px 23px 38px; overflow:visible; }
.chart-plot { width:min(100%,1500px); min-width:0; position:relative; justify-self:center; padding-block:22px; }
.chart-plot>.visibility-chart { width:100%; max-height:none; }
.chart-scroll-window { min-width:0; position:relative; }
.chart-scroll-window>.visibility-chart { width:100%; max-height:none; }
.chart-shell>.visibility-legend { width:100%; display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); align-self:stretch; gap:8px; margin:0; padding:10px; border:1px solid var(--line); border-radius:12px; background:rgba(244,243,237,.92); }
.chart-shell>.visibility-legend .series-toggle { width:100%; min-height:46px; grid-template-columns:26px minmax(0,1fr) auto; gap:9px; padding:7px 9px; border:1px solid #e2e0d6; border-radius:9px; background:rgba(255,255,255,.86); box-shadow:inset 3px 0 0 var(--series-color); transition:border-color .16s ease,background-color .16s ease,opacity .16s ease; }
.chart-shell>.visibility-legend .series-toggle:hover,.chart-shell>.visibility-legend .series-toggle:focus-visible { border-color:var(--series-color); background:white; outline:0; }
.chart-shell>.visibility-legend .series-toggle img { width:26px; height:26px; object-fit:contain; border:0; border-radius:6px; background:white; }
.chart-shell>.visibility-legend .series-toggle span { min-width:0; max-width:none; display:block; overflow:hidden; color:var(--ink); font-size:10px; font-weight:600; white-space:nowrap; text-overflow:ellipsis; }
.chart-shell>.visibility-legend .series-toggle span small { display:inline-block; margin-left:6px; padding:2px 4px; border-radius:4px; background:#eeecff; color:var(--purple); font:800 7px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.06em; vertical-align:1px; }
.chart-shell>.visibility-legend .series-toggle strong { min-width:31px; max-width:none; padding:4px 6px; border-radius:6px; background:#f0efe9; font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace; text-align:center; }
.chart-shell>.visibility-legend .series-toggle.off { opacity:.48; }
.chart-shell>.visibility-legend .series-toggle.off img { filter:grayscale(1); }
.chart-plot>.chart-empty { inset:54px 30px 38px 68px; }
.chart-scroll-window>.chart-empty { inset:54px 30px 38px 68px; }
@media (max-width:1100px) { .chart-shell{min-height:0;grid-template-columns:1fr;gap:22px;padding:28px 23px 30px}.chart-plot{padding-block:18px}.chart-shell>.visibility-legend{max-width:none;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-inline:0} }
@media (max-width:850px) { .chart-shell>.visibility-legend{max-width:none;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))} }
@media (max-width:600px) { .chart-shell{display:block;padding:20px 4px 22px;overflow-x:auto}.chart-plot{min-width:650px;padding-block:16px}.chart-shell>.visibility-legend{width:calc(100% - 8px);max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));margin:10px 4px 0}.chart-shell>.visibility-legend .series-toggle{grid-template-columns:24px minmax(0,1fr) auto;gap:6px;padding-inline:7px}.chart-shell>.visibility-legend .series-toggle img{width:24px;height:24px}.chart-shell>.visibility-legend .series-toggle span{font-size:9px}.visibility-card-heading{font-size:14px!important} }
@media (max-width:850px) { .ad-activity-summary{align-items:flex-start;flex-direction:column}.ad-summary-metrics{width:100%}.ad-summary-metrics span{min-width:0}.ad-history-grid{grid-template-columns:1fr}.ad-history-item>.ad-preview{grid-template-columns:120px minmax(0,1fr)} }
@media (max-width:600px) { .ad-activity-heading{display:grid;align-items:start}.ad-activity-controls{width:100%}.ad-timeline{overflow-x:auto;padding:20px}.ad-timeline>header{min-width:560px}.ad-timeline-row,.ad-timeline-axis{grid-template-columns:135px minmax(0,1fr)}.ad-history{padding:21px 12px 24px}.ad-history>header{align-items:flex-start;flex-direction:column}.ad-history>header p{text-align:left}.ad-history-item>.ad-preview{grid-template-columns:82px minmax(0,1fr)}.ad-history-item>footer{align-items:flex-start;flex-direction:column}.ad-activity-summary{padding:18px}.ad-summary-metrics span{padding-inline:9px}.ad-summary-metrics strong{font-size:16px}.ad-advertiser-strip{padding-inline:14px} }

/* Application navigation and report pages */
.app-topbar { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:30px; }
.primary-nav { height:100%; display:flex; align-items:stretch; justify-self:end; gap:4px; }
.primary-nav :is(a,button) { position:relative; display:grid; place-items:center; border:0; padding:0 14px; background:transparent; color:var(--muted); font-size:12px; font-weight:700; text-decoration:none; white-space:nowrap; }
.primary-nav :is(a,button)::after { content:""; position:absolute; right:14px; bottom:-1px; left:14px; height:3px; border-radius:3px 3px 0 0; background:transparent; }
.primary-nav :is(a,button):hover,.primary-nav :is(a,button):focus-visible { color:var(--ink); outline:0; }
.primary-nav a[aria-current="page"] { color:var(--ink); }
.primary-nav a[aria-current="page"]::after { background:var(--purple); }

.report-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; margin-top:30px; }
.report-links a { min-width:0; min-height:178px; display:flex; flex-direction:column; padding:23px 25px; border:1px solid var(--line); border-radius:12px; background:var(--card); color:inherit; text-decoration:none; box-shadow:3px 3px 0 rgba(32,35,30,.07); transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.report-links a:hover,.report-links a:focus-visible { border-color:var(--ink); outline:0; transform:translateY(-2px); box-shadow:4px 5px 0 rgba(99,87,245,.14); }
.report-links span { color:var(--muted); font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.09em; }
.report-links strong { margin-top:13px; font-size:20px; letter-spacing:-.03em; }
.report-links p { margin:8px 0 18px; color:var(--muted); font-size:11px; line-height:1.5; }
.report-links b { margin-top:auto; color:var(--purple); font-size:10px; }

.report-main { padding-top:0; }
.page-hero { min-height:300px; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,.65fr); align-items:end; gap:70px; padding:68px 0 55px; border-bottom:1px solid var(--ink); }
.page-hero .eyebrow { color:var(--muted); }
.page-hero h1 { font-size:clamp(48px,5vw,72px); }
.page-hero>p { max-width:470px; margin:0 0 3px; color:#5d6057; font-size:15px; line-height:1.65; }
.prompts-hero-action { align-self:end; justify-self:end; margin-bottom:8px; }
.report-heading,.ad-activity-heading.report-heading,.history-heading.report-heading { margin-top:42px; }
.history-main .table-wrap { margin-inline:calc(70px - 70px); }
.prompts-main { padding-bottom:100px; }
.prompts-heading { margin-bottom:22px; }

@media (max-width:1180px) {
  .app-topbar { grid-template-columns:auto minmax(0,1fr) auto; gap:18px; padding-inline:28px; }
  .primary-nav :is(a,button) { padding-inline:10px; }
  .primary-nav :is(a,button)::after { right:10px; left:10px; }
}
@media (max-width:850px) {
  .app-topbar { height:auto; min-height:112px; grid-template-columns:auto 1fr; grid-template-rows:55px 46px; gap:0 18px; padding:0 24px; }
  .app-topbar .brand { grid-column:1; grid-row:1; }
  .app-topbar .top-actions { grid-column:2; grid-row:1; justify-self:end; }
  .app-topbar .primary-nav { width:100%; grid-column:1 / -1; grid-row:2; justify-self:stretch; overflow-x:auto; }
  .primary-nav :is(a,button) { min-width:max-content; flex:1 0 auto; padding-inline:14px; }
  .page-hero { min-height:0; grid-template-columns:1fr; gap:24px; padding:50px 0 40px; }
  .page-hero>p { max-width:650px; }
  .prompts-hero-action { justify-self:start; margin-bottom:0; }
  .report-links { grid-template-columns:1fr; }
  .report-links a { min-height:145px; }
}
@media (max-width:600px) {
  .app-topbar { height:auto; min-height:106px; grid-template-rows:55px 44px; padding-inline:16px; }
  .app-topbar .brand img { height:32px; }
  .app-topbar .top-actions { gap:8px; }
  .app-topbar .primary-button { min-height:37px; padding-inline:10px; font-size:11px; }
  .primary-nav { gap:0; }
  .primary-nav :is(a,button) { padding-inline:11px; font-size:11px; }
  .primary-nav :is(a,button)::after { right:11px; left:11px; }
  .report-main { padding-top:0; }
  .page-hero { padding:42px 0 34px; }
  .page-hero h1 { font-size:46px; }
  .report-heading { margin-top:34px!important; }
  .report-links { margin-top:20px; }
  .report-links a { min-height:138px; padding:20px; }
  .category-heading { align-items:flex-start; flex-direction:column; gap:8px; }
  .category-heading>p { margin:0; text-align:left; }
}

/* Brand sentiment */
dialog select { display:block; width:100%; margin-top:8px; padding:12px; border:1px solid var(--line); border-radius:8px; background:white; }
dialog select:focus { outline:2px solid rgba(99,87,245,.25); border-color:var(--purple); }
.report-links { grid-template-columns:repeat(5,minmax(0,1fr)); }
.analysis-chip { display:inline-flex; align-items:center; min-height:23px; padding:3px 8px; border:1px solid var(--line); border-radius:99px; background:white; color:var(--muted); font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.04em; text-transform:uppercase; }
.analysis-chip.brand_sentiment { border-color:rgba(33,143,104,.36); background:rgba(33,143,104,.08); color:#176b4e; }
.badge.positive i { background:var(--green); }
.badge.negative i { background:var(--red); }
.badge.neutral i,.badge.not_assessable i { background:#888; }
.recommendation-chip { display:inline-flex; align-items:center; min-height:25px; width:max-content; padding:4px 8px; border:1px solid var(--line); border-radius:99px; background:white; color:var(--muted); font-size:9px; font-weight:700; }
.recommendation-chip.recommended { border-color:rgba(33,143,104,.34); color:#176b4e; }
.recommendation-chip.not_recommended { border-color:rgba(186,61,53,.35); color:var(--red); }
.recommendation-chip.conditional { border-color:rgba(240,166,48,.5); color:#8b5d10; }
.history-analysis { display:flex; flex-wrap:wrap; gap:5px; align-items:center; }

.sentiment-main { padding-bottom:100px; }
.sentiment-controls { align-items:flex-end; }
.sentiment-loading { min-height:240px; display:grid; place-items:center; color:var(--muted); }
.sentiment-summary { display:grid; grid-template-columns:minmax(240px,.72fr) minmax(360px,1.25fr) minmax(250px,.9fr); border:1px solid var(--ink); border-radius:14px; overflow:hidden; background:var(--card); box-shadow:5px 5px 0 rgba(32,35,30,.08); }
.sentiment-summary>article,.sentiment-summary>div { padding:25px; border-right:1px solid var(--line); }
.sentiment-summary>div:last-child { border-right:0; }
.sentiment-headline>span,.recommendation-summary>span { color:var(--muted); font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; }
.sentiment-headline>strong { display:block; margin-top:8px; color:var(--green); font-size:48px; letter-spacing:-.06em; }
.sentiment-headline>p { margin:4px 0 0; color:var(--muted); font-size:10px; line-height:1.5; }
.sentiment-counts { display:grid; grid-template-columns:repeat(5,1fr); gap:6px; align-items:stretch; }
.sentiment-count { min-width:0; display:flex; flex-direction:column; justify-content:space-between; padding:12px 9px; border:1px solid var(--line); border-top:3px solid #888; border-radius:8px; background:white; }
.sentiment-count.positive { border-top-color:var(--green); }.sentiment-count.mixed { border-top-color:#f0a630; }.sentiment-count.negative { border-top-color:var(--red); }
.sentiment-count span { min-height:24px; color:var(--muted); font-size:8px; font-weight:700; text-transform:uppercase; }.sentiment-count strong { font-size:22px; }
.recommendation-summary>div { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:13px; }
.recommendation-summary b { display:flex; align-items:baseline; gap:6px; font-size:9px; font-weight:600; color:var(--muted); }.recommendation-summary b strong { color:var(--ink); font-size:17px; }
.sentiment-trend,.sentiment-aspects,.sentiment-evidence { margin-top:28px; border:1px solid var(--line); border-radius:14px; background:var(--card); overflow:hidden; }
.sentiment-trend>header,.sentiment-aspects>header,.sentiment-evidence>header { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; padding:22px 25px; border-bottom:1px solid var(--line); }
.sentiment-trend h3,.sentiment-aspects h3,.sentiment-evidence h3 { margin:0; font-size:19px; }.sentiment-trend .eyebrow,.sentiment-aspects .eyebrow,.sentiment-evidence .eyebrow { margin-bottom:7px; }
.sentiment-trend>header>p,.sentiment-aspects>header>p,.sentiment-evidence>header>p { max-width:470px; margin:0; color:var(--muted); font-size:10px; text-align:right; line-height:1.5; }
.sentiment-chart-wrap { position:relative; min-height:270px; padding:10px 18px 2px; background:white; }.sentiment-chart-wrap svg { display:block; width:100%; height:auto; }
.sentiment-grid line { stroke:#e0dfd6; stroke-width:1; }.sentiment-grid text { fill:var(--muted); font:9px ui-monospace,SFMono-Regular,Menlo,monospace; }.sentiment-line { fill:none; stroke:var(--purple); stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }.sentiment-chart-wrap circle { fill:white; stroke:var(--purple); stroke-width:3; }
.sentiment-empty { position:absolute; inset:0; display:grid; place-content:center; text-align:center; color:var(--muted); }.sentiment-empty strong,.sentiment-empty span { display:block; }.sentiment-empty strong { color:var(--ink); font-size:14px; }.sentiment-empty span { margin-top:6px; font-size:10px; }.sentiment-empty.inline { position:static; min-height:130px; }
.sentiment-aspects>div { display:grid; grid-template-columns:1fr 1fr; gap:0; }
.aspect-row { width:100%; min-width:0; margin:0; padding:20px 25px; border:0; border-bottom:1px solid var(--line); background:transparent; color:inherit; font:inherit; text-align:left; transition:background .16s ease,box-shadow .16s ease; }.aspect-row:nth-child(odd) { border-right:1px solid var(--line); }.aspect-row:nth-last-child(-n+2) { border-bottom:0; }.aspect-row:hover { background:white; }.aspect-row:focus-visible { position:relative; z-index:1; outline:0; box-shadow:inset 0 0 0 3px rgba(99,87,245,.35); }
.aspect-row header { display:flex; justify-content:space-between; gap:15px; align-items:baseline; }.aspect-row header strong { font-size:13px; }.aspect-row header span { color:var(--muted); font-size:9px; text-align:right; }
.aspect-bar { height:12px; display:flex; margin-top:13px; border-radius:99px; overflow:hidden; background:#ddd; }.aspect-bar span.positive { background:var(--green); }.aspect-bar span.mixed { background:#f0a630; }.aspect-bar span.negative { background:var(--red); }.aspect-bar span.neutral { background:#a8aaa2; }
.aspect-row footer { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:9px; color:var(--muted); font-size:8px; }.aspect-row footer b { margin-left:auto; color:var(--purple); font-size:9px; }.aspect-row footer b i { font-style:normal; transition:transform .16s ease; }.aspect-row:hover footer b i,.aspect-row:focus-visible footer b i { display:inline-block; transform:translateX(3px); }
.sentiment-evidence-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:18px; }
.sentiment-evidence-card { min-width:0; padding:18px; border:1px solid var(--line); border-radius:10px; background:white; }.sentiment-evidence-card>header { display:flex; justify-content:space-between; gap:12px; }.sentiment-evidence-card>header>div { display:flex; flex-wrap:wrap; gap:6px; }.sentiment-evidence-card time { color:var(--muted); font-size:9px; }.sentiment-evidence-card>strong { display:inline-block; margin:14px 8px 0 0; font-size:13px; }.sentiment-evidence-card blockquote { margin:14px 0; color:#55584f; font-size:11px; line-height:1.55; }.sentiment-evidence-card footer { display:flex; flex-wrap:wrap; align-items:center; gap:6px; }.sentiment-evidence-card footer span { padding:3px 6px; border-radius:5px; background:#f0efe9; color:var(--muted); font-size:8px; }.sentiment-evidence-card footer a { margin-left:auto; color:var(--purple); font-size:9px; font-weight:700; text-decoration:none; }
.detail-section.sentiment-accent { background:#efeee7; border-left:4px solid #888; padding:20px; }.detail-section.sentiment-accent.positive { border-left-color:var(--green); }.detail-section.sentiment-accent.mixed { border-left-color:#f0a630; }.detail-section.sentiment-accent.negative { border-left-color:var(--red); }
.sentiment-detail-aspects { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:20px; }.sentiment-detail-aspects article { padding:14px; border:1px solid var(--line); border-radius:8px; background:white; }.sentiment-detail-aspects header { display:flex; justify-content:space-between; gap:10px; align-items:center; }.sentiment-detail-aspects header strong { font-size:11px; }.sentiment-detail-aspects article>div { display:flex; gap:12px; margin-top:10px; color:var(--muted); font-size:8px; }.sentiment-detail-aspects blockquote { margin-top:10px; }
.aspect-dialog { width:min(1160px,calc(100% - 32px)); }.aspect-dialog-shell { position:relative; padding:38px 42px 44px; }.aspect-dialog-header { padding-right:42px; }.aspect-dialog-header .eyebrow { margin-bottom:7px; color:var(--muted); }.aspect-dialog-header h2 { margin:0; font-size:34px; }.aspect-dialog-header>p:last-of-type { margin:8px 0 0; color:var(--muted); font-size:11px; }.aspect-dialog-counts { display:flex; flex-wrap:wrap; gap:7px; margin-top:17px; }.aspect-dialog-counts>span { min-width:92px; display:flex; align-items:baseline; gap:6px; padding:8px 10px; border:1px solid var(--line); border-top:3px solid #a8aaa2; border-radius:8px; background:white; color:var(--muted); font-size:9px; }.aspect-dialog-counts>span.positive { border-top-color:var(--green); }.aspect-dialog-counts>span.mixed { border-top-color:#f0a630; }.aspect-dialog-counts>span.negative { border-top-color:var(--red); }.aspect-dialog-counts strong { color:var(--ink); font-size:17px; }.aspect-attribution-note { display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; margin:22px 0; padding:13px 15px; border:1px solid #c9c4ff; border-radius:9px; background:#efedff; }.aspect-attribution-note strong { color:#4d43c6; font-size:10px; }.aspect-attribution-note span { color:#55517c; font-size:10px; line-height:1.5; }.aspect-dialog-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(260px,.75fr); gap:22px; align-items:start; }.aspect-specifics>header { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:12px; }.aspect-specifics>header .eyebrow,.aspect-response-sources>.eyebrow { margin-bottom:6px; color:var(--muted); font-size:9px; }.aspect-specifics h3,.aspect-response-sources h3 { margin:0; font-size:18px; }.aspect-specifics>header>span { color:var(--muted); font:9px ui-monospace,SFMono-Regular,Menlo,monospace; }.aspect-evidence-group { overflow:hidden; margin-top:12px; border:1px solid var(--line); border-radius:11px; background:#f5f4ee; }.aspect-evidence-group>header { min-height:47px; display:flex; align-items:center; justify-content:space-between; padding:10px 14px; border-bottom:1px solid var(--line); border-left:4px solid #a8aaa2; background:white; }.aspect-evidence-group.positive>header { border-left-color:var(--green); }.aspect-evidence-group.mixed>header { border-left-color:#f0a630; }.aspect-evidence-group.negative>header { border-left-color:var(--red); }.aspect-evidence-group>header h3 { font-size:13px; }.aspect-evidence-group>header span { color:var(--muted); font-size:9px; }.aspect-evidence-group>div { display:grid; gap:9px; padding:9px; }.aspect-observation { min-width:0; padding:14px; border:1px solid var(--line); border-radius:9px; background:white; }.aspect-observation>header { display:flex; align-items:start; justify-content:space-between; gap:12px; }.aspect-observation>header>div { display:flex; flex-wrap:wrap; gap:6px; }.aspect-observation time { flex:0 0 auto; color:var(--muted); font-size:9px; }.aspect-observation>strong { display:block; margin-top:11px; font-size:12px; }.aspect-observation blockquote { margin:11px 0 0; padding-left:12px; border-left:3px solid var(--line); color:#55584f; font-size:11px; line-height:1.55; }.aspect-observation.positive blockquote { border-left-color:var(--green); }.aspect-observation.mixed blockquote { border-left-color:#f0a630; }.aspect-observation.negative blockquote { border-left-color:var(--red); }.aspect-observation-empty { margin:11px 0 0; color:var(--muted); font-size:10px; }.aspect-observation>footer { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:13px; padding-top:10px; border-top:1px solid var(--line); }.aspect-observation>footer span { color:var(--muted); font:8px ui-monospace,SFMono-Regular,Menlo,monospace; }.aspect-observation>footer a { flex:0 0 auto; color:var(--purple); font-size:9px; font-weight:800; text-decoration:none; }.aspect-response-sources { position:sticky; top:0; padding:18px; border:1px solid var(--line); border-radius:11px; background:white; }.aspect-response-sources>p:not(.eyebrow) { margin:8px 0 14px; color:var(--muted); font-size:10px; line-height:1.5; }.aspect-response-sources ol { margin:0; padding:0; list-style:none; }.aspect-response-sources li { display:grid; grid-template-columns:auto minmax(0,1fr); gap:4px 8px; padding:11px 0; border-top:1px solid var(--line); }.aspect-response-sources li>span { grid-row:span 2; align-self:start; padding:4px 6px; border-radius:5px; background:#efeee9; color:var(--muted); font:8px ui-monospace,SFMono-Regular,Menlo,monospace; }.aspect-response-sources li>a { overflow:hidden; font-size:11px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }.aspect-response-sources li>a:hover,.aspect-response-sources li>a:focus-visible { color:var(--purple); }.aspect-response-sources li>small { overflow:hidden; color:var(--muted); font-size:8px; text-overflow:ellipsis; white-space:nowrap; }.aspect-source-empty,.aspect-dialog-empty { min-height:120px; display:grid; place-content:center; padding:18px; border:1px dashed var(--line); border-radius:9px; text-align:center; }.aspect-source-empty strong,.aspect-source-empty span,.aspect-dialog-empty strong,.aspect-dialog-empty span { display:block; }.aspect-source-empty span,.aspect-dialog-empty span { max-width:330px; margin-top:6px; color:var(--muted); font-size:10px; line-height:1.5; }

@media (max-width:1180px) {
  .report-links { grid-template-columns:1fr 1fr; }
  .sentiment-summary { grid-template-columns:1fr 1.5fr; }.recommendation-summary { grid-column:1 / -1; border-top:1px solid var(--line); }.sentiment-summary>div:nth-child(2) { border-right:0; }
}
@media (max-width:850px) {
  .sentiment-summary { grid-template-columns:1fr; }.sentiment-summary>article,.sentiment-summary>div { border-right:0; border-bottom:1px solid var(--line); }.sentiment-summary>div:last-child { border-bottom:0; }.recommendation-summary { grid-column:auto; border-top:0; }
  .sentiment-aspects>div,.sentiment-evidence-grid { grid-template-columns:1fr; }.aspect-row:nth-child(odd) { border-right:0; }.aspect-row:nth-last-child(2) { border-bottom:1px solid var(--line); }
  .sentiment-detail-aspects { grid-template-columns:1fr; }
  .aspect-dialog-grid { grid-template-columns:1fr; }.aspect-response-sources { position:static; }
}
@media (max-width:600px) {
  .report-links { grid-template-columns:1fr; }
  .sentiment-counts { grid-template-columns:repeat(3,1fr); }.sentiment-trend>header,.sentiment-aspects>header,.sentiment-evidence>header { display:block; }.sentiment-trend>header>p,.sentiment-aspects>header>p,.sentiment-evidence>header>p { margin-top:10px; text-align:left; }
  .sentiment-chart-wrap { overflow-x:auto; }.sentiment-chart-wrap svg { min-width:620px; }
  .aspect-row footer b { width:100%; margin:3px 0 0; }.aspect-dialog-shell { padding:32px 18px 30px; }.aspect-dialog-header { padding-right:30px; }.aspect-dialog-header h2 { font-size:27px; }.aspect-dialog-counts { display:grid; grid-template-columns:1fr 1fr; }.aspect-dialog-counts>span { min-width:0; }.aspect-attribution-note { grid-template-columns:1fr; }.aspect-observation>header,.aspect-observation>footer { align-items:flex-start; flex-direction:column; }.aspect-observation>footer a { align-self:flex-end; }
}

/* Grounding capture and leaderboard */
.sources-main { padding-bottom:100px; }
.sources-hero h1 { max-width:820px; }
.grounding-heading { margin-bottom:22px; align-items:flex-end; }
.grounding-card { overflow:hidden; border:1px solid var(--ink); border-radius:13px; background:var(--card); box-shadow:4px 4px 0 rgba(32,35,30,.1); }
.grounding-loading { min-height:260px; display:grid; place-content:center; color:var(--muted); font-size:12px; }
.grounding-card-header { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:23px 25px; border-bottom:1px solid var(--line); }
.grounding-card-header .eyebrow { margin-bottom:6px; color:var(--muted); font-size:9px; }
.grounding-card-header h3 { margin:0; font-size:20px; letter-spacing:-.03em; }
.grounding-card-header>div>span { display:block; max-width:570px; margin-top:7px; color:var(--muted); font-size:10px; line-height:1.5; }
.grounding-summary { flex:0 0 auto; display:grid; grid-template-columns:repeat(5,minmax(86px,auto)); border:1px solid var(--line); border-radius:9px; overflow:hidden; background:white; }
.grounding-summary span { min-width:0; padding:11px 12px; border-right:1px solid var(--line); color:var(--muted); font:8px ui-monospace,SFMono-Regular,Menlo,monospace; text-align:center; white-space:nowrap; }
.grounding-summary span:last-child { border:0; }
.grounding-summary strong { display:block; margin-bottom:4px; color:var(--ink); font:800 19px ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.grounding-coverage-note { margin:15px 18px 0; padding:10px 12px; border:1px solid var(--line); border-left:4px solid var(--green); border-radius:7px; background:white; color:var(--muted); font-size:9px; line-height:1.5; }
.grounding-coverage-note.partial { border-left-color:#d49517; background:#fffbec; }.grounding-coverage-note.unchecked { border-left-color:#888; }
.grounding-coverage-note strong { color:var(--ink); }
.grounding-list { display:grid; gap:12px; padding:18px; }
.grounding-site { min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:11px; background:white; }
.grounding-site.top-source { border-color:#cbc7f5; box-shadow:inset 3px 0 0 rgba(99,87,245,.65); }
.grounding-site:first-child { border-color:var(--ink); box-shadow:inset 4px 0 0 var(--acid); }
.grounding-site>header { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:12px; padding:14px 16px; border-bottom:1px solid var(--line); background:#f1f0e9; }
.grounding-rank { width:35px; height:35px; display:grid; place-items:center; border:1px solid var(--purple); border-radius:50%; color:var(--purple); font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace; }
.grounding-site:first-child .grounding-rank { border-color:var(--ink); background:var(--acid); color:var(--ink); box-shadow:2px 2px 0 rgba(32,35,30,.15); }
.grounding-domain { min-width:0; }.grounding-domain>strong,.grounding-domain>small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.grounding-domain>strong { display:inline-block; margin-right:8px; font-size:13px; }.grounding-domain>small { margin-top:5px; color:var(--muted); font-size:9px; }
.fund-owned { display:inline-flex; align-items:center; gap:5px; padding:3px 7px 3px 4px; border:1px solid color-mix(in srgb,var(--fund-color) 45%,var(--line)); border-radius:99px; background:white; color:var(--ink); font-size:8px; font-weight:700; vertical-align:2px; }.fund-owned img { width:16px; height:16px; object-fit:contain; border-radius:4px; }
.grounding-conversion { min-width:120px; text-align:right; }.grounding-conversion strong,.grounding-conversion small { display:block; }.grounding-conversion strong { font-size:19px; }.grounding-conversion small { margin-top:3px; color:var(--muted); font-size:8px; }
.grounding-coverage { display:grid; grid-template-columns:minmax(130px,1fr) auto auto; align-items:center; gap:10px; padding:10px 16px; border-bottom:1px solid var(--line); }.grounding-coverage>div { height:7px; overflow:hidden; border-radius:99px; background:#e5e4dc; }.grounding-coverage>div>span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--purple),#948cff); }.grounding-coverage>strong { font:800 9px ui-monospace,SFMono-Regular,Menlo,monospace; }.grounding-coverage>small { color:var(--muted); font-size:8px; }
.grounding-site ol { margin:0; padding:0; list-style:none; }.grounding-site li { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:18px; padding:11px 16px; border-bottom:1px solid var(--line); }.grounding-site li:last-child { border:0; }.grounding-site li a { display:block; overflow:hidden; font-size:11px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }.grounding-site li a:hover,.grounding-site li a:focus-visible { color:var(--purple); }.grounding-site li small { display:block; overflow:hidden; margin-top:4px; color:var(--muted); font:8px ui-monospace,SFMono-Regular,Menlo,monospace; text-overflow:ellipsis; white-space:nowrap; }
.grounding-page-tags { max-width:340px; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:5px; }.grounding-page-tags span,.grounding-page-tags b { padding:4px 6px; border-radius:5px; font-size:7px; font-weight:800; white-space:nowrap; }.grounding-page-tags span { background:#eeecff; color:var(--purple); }.grounding-page-tags b { background:#efeee9; color:var(--muted); }.grounding-page-tags b.cited { background:#e5f6ed; color:#176b4e; }
.grounding-empty { min-height:180px; display:grid; place-content:center; padding:35px; text-align:center; }.grounding-empty strong,.grounding-empty span { display:block; }.grounding-empty span { max-width:510px; margin-top:7px; color:var(--muted); font-size:10px; line-height:1.5; }
.grounding-card>div>footer { padding:11px 18px; border-top:1px solid var(--line); color:var(--muted); font-size:9px; text-align:center; }
.grounding-detail { padding:20px; border:1px solid var(--line); border-left:4px solid #888; border-radius:9px; background:#f5f4ee; }.grounding-detail.checked { border-left-color:var(--green); }.grounding-detail.partial { border-left-color:#d49517; background:#fffbec; }
.grounding-detail>header { display:flex; align-items:center; justify-content:space-between; gap:12px; }.grounding-detail>header h3 { margin:0; }.grounding-detail>header>span { padding:4px 7px; border-radius:99px; background:white; color:var(--muted); font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace; text-transform:uppercase; }.grounding-detail>p { margin:10px 0 0; color:var(--muted); font-size:11px; line-height:1.5; }
.grounding-evidence-list { margin:16px 0 0; padding:0; list-style:none; }.grounding-evidence-list li { padding:12px 0; border-top:1px solid var(--line); }.grounding-evidence-list li>div { display:flex; align-items:center; gap:8px; }.grounding-evidence-list a { min-width:0; overflow:hidden; font-size:11px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }.grounding-evidence-list small,.grounding-query-block small,.grounding-method { display:block; margin-top:4px; color:var(--muted); font:8px ui-monospace,SFMono-Regular,Menlo,monospace; word-break:break-word; }.grounding-kind { flex:0 0 auto; padding:3px 5px; border-radius:4px; background:#eeecff; color:var(--purple); font:800 7px ui-monospace,SFMono-Regular,Menlo,monospace; text-transform:uppercase; }
.grounding-query-block { margin-top:17px; padding-top:14px; border-top:1px solid var(--line); }.grounding-query-block h4 { margin:0; font-size:11px; }.grounding-query-block ol { margin:9px 0 0; padding-left:20px; }.grounding-query-block li { margin-top:8px; font-size:10px; }.grounding-query-empty { margin-top:15px!important; }.grounding-method { margin-top:15px; }

@media (max-width:1180px) { .grounding-card-header{align-items:flex-start;flex-direction:column}.grounding-summary{width:100%;grid-template-columns:repeat(5,1fr)} }
@media (max-width:850px) { .grounding-heading{align-items:flex-start;gap:18px}.grounding-controls{align-items:stretch;flex-direction:column}.grounding-summary{grid-template-columns:repeat(3,1fr)}.grounding-summary span:nth-child(3){border-right:0}.grounding-summary span:nth-child(-n+3){border-bottom:1px solid var(--line)}.grounding-site li{grid-template-columns:1fr}.grounding-page-tags{max-width:none;justify-content:flex-start} }
@media (max-width:600px) { .grounding-heading{display:grid}.grounding-controls,.grounding-controls label,.grounding-controls select,.grounding-controls .control-field{width:100%}.grounding-controls .range-control{width:100%}.grounding-controls .range-control button{flex:1}.grounding-card-header{padding:19px}.grounding-summary{grid-template-columns:1fr 1fr}.grounding-summary span{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)}.grounding-summary span:nth-child(2n){border-right:0!important}.grounding-summary span:last-child{grid-column:1 / -1;border-bottom:0}.grounding-list{padding:10px}.grounding-site>header{grid-template-columns:35px minmax(0,1fr)}.grounding-conversion{grid-column:2;text-align:left}.grounding-coverage{grid-template-columns:1fr auto}.grounding-coverage>small{grid-column:1 / -1}.grounding-detail{padding:16px}.grounding-evidence-list li>div{align-items:flex-start;flex-direction:column} }

.auth-page { min-height:100vh; display:grid; place-items:center; background:var(--paper, #f4f2e9); }
.auth-shell { width:min(92vw, 560px); padding:48px 0; }
.auth-brand { display:block; width:250px; margin:0 auto 32px; }
.auth-brand img { display:block; width:100%; height:auto; }
.auth-card { background:#fff; border:1px solid rgba(32,42,35,.14); border-radius:24px; padding:clamp(28px, 6vw, 48px); box-shadow:0 24px 70px rgba(33,43,36,.1); }
.auth-card h1 { margin:8px 0 12px; font-size:clamp(2rem, 7vw, 3.25rem); line-height:1; letter-spacing:-.045em; }
.auth-card > p:not(.eyebrow):not(.auth-status) { color:#5f675f; line-height:1.55; margin:0 0 28px; }
.auth-card form { display:grid; gap:16px; }
.auth-card form[hidden] { display:none; }
.auth-card label { display:grid; gap:8px; color:#374039; font-size:.82rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.auth-card input { width:100%; box-sizing:border-box; border:1px solid #c9cdc7; border-radius:12px; padding:14px 16px; background:#fafaf7; color:#1f2a23; font:inherit; font-size:1rem; }
.auth-card button { border:0; border-radius:999px; padding:14px 20px; background:#1f5638; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.auth-card .auth-link-button { background:transparent; color:#1f5638; padding:4px; }
.auth-status { min-height:24px; margin:18px 0 0; color:#526057; font-size:.9rem; }
.auth-status.error { color:#a63131; }

/* Mobile navigation and scrollable report surfaces */
.mobile-nav-toggle { display:none; }
.ad-timeline-scroll { min-width:0; }
.chart-scroll-hint { display:none; }
.mobile-chart-toolbar,.mobile-chart-legend,.mobile-y-axis { display:none; }
.range-control button:disabled { opacity:.3; cursor:not-allowed; }

@media (max-width:600px) {
  .app-topbar { height:66px; min-height:66px; grid-template-columns:auto minmax(0,1fr) auto; grid-template-rows:66px; gap:0 10px; padding-inline:16px; }
  .app-topbar .brand { grid-column:1; grid-row:1; }
  .app-topbar .brand img { height:30px; }
  .app-topbar .top-actions { grid-column:2; grid-row:1; justify-self:end; }
  .mobile-nav-toggle { width:40px; height:40px; grid-column:3; grid-row:1; align-self:center; display:grid; place-items:center; padding:0; border:1px solid var(--line); border-radius:9px; background:var(--card); }
  .mobile-nav-toggle:focus-visible { border-color:var(--purple); outline:3px solid rgba(99,87,245,.18); }
  .mobile-nav-toggle>span,.mobile-nav-toggle>span::before,.mobile-nav-toggle>span::after { width:18px; height:2px; display:block; border-radius:2px; background:var(--ink); transition:transform .16s ease,background-color .16s ease; }
  .mobile-nav-toggle>span { position:relative; }
  .mobile-nav-toggle>span::before,.mobile-nav-toggle>span::after { content:""; position:absolute; left:0; }
  .mobile-nav-toggle>span::before { transform:translateY(-6px); }
  .mobile-nav-toggle>span::after { transform:translateY(6px); }
  .nav-open .mobile-nav-toggle>span { background:transparent; }
  .nav-open .mobile-nav-toggle>span::before { transform:rotate(45deg); }
  .nav-open .mobile-nav-toggle>span::after { transform:rotate(-45deg); }
  .app-topbar .primary-nav { width:auto; height:auto; max-height:calc(100vh - 66px); position:absolute; top:100%; right:-1px; left:-1px; grid-column:auto; grid-row:auto; display:none; align-items:stretch; overflow-y:auto; overflow-x:hidden; padding:8px 12px 12px; border:1px solid var(--line); border-top:0; background:rgba(251,250,245,.98); box-shadow:0 14px 25px rgba(32,35,30,.14); backdrop-filter:blur(14px); }
  .app-topbar.nav-open .primary-nav { display:flex; flex-direction:column; }
  .primary-nav :is(a,button) { width:100%; min-width:0; min-height:46px; flex:0 0 auto; justify-content:flex-start; padding-inline:12px; border-radius:7px; font-size:12px; }
  .primary-nav :is(a,button)::after { right:auto; bottom:8px; left:12px; width:24px; height:2px; }
  .primary-nav :is(a,button):hover,.primary-nav :is(a,button):focus-visible { background:#f0efe9; }

  body[data-page="search"] .visibility-heading .visibility-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  body[data-page="search"] .visibility-heading .visibility-controls>label { grid-column:1 / -1; }
  body[data-page="search"] .visibility-heading :is(.control-field,.metric-control,.range-control) { width:100%; min-width:0; }
  body[data-page="search"] .visibility-heading :is(.metric-control,.range-control)>button { min-width:0; flex:1 1 0; padding-inline:3px; }

  .chart-shell { display:block; padding:14px 4px 20px; overflow:hidden; }
  .mobile-chart-toolbar { display:grid; grid-template-columns:minmax(118px,.7fr) minmax(0,1.3fr); gap:8px; margin:0 8px 8px; padding:9px; border:1px solid var(--line); border-radius:11px; background:#f4f3ed; }
  .mobile-focus-series,.mobile-chart-toolbar>label { min-width:0; display:grid; gap:6px; }
  .mobile-focus-series>span,.mobile-chart-toolbar>label>span { color:var(--muted); font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; }
  .mobile-focus-series>div { min-width:0; height:39px; display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:7px; padding:4px 7px 4px 4px; border:1px solid var(--line); border-left:4px solid var(--series-color); border-radius:8px; background:white; }
  .mobile-focus-series img { width:28px; height:28px; object-fit:contain; border-radius:6px; }
  .mobile-focus-series strong { overflow:hidden; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
  .mobile-focus-series b { padding:4px 6px; border-radius:5px; background:#f0efe9; font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace; }
  .mobile-chart-toolbar select { width:100%; height:39px; min-width:0; padding:0 27px 0 9px; border:1px solid var(--line); border-radius:8px; background:white; font-size:10px; font-weight:700; }
  .mobile-chart-legend { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; margin:0 12px 18px; }
  .mobile-chart-legend>span { min-width:0; min-height:34px; display:grid; grid-template-columns:10px 18px minmax(0,1fr); align-items:center; gap:7px; padding:5px 8px; border:1px solid var(--line); border-left:3px solid var(--series-color); border-radius:7px; background:rgba(255,255,255,.78); }
  .mobile-chart-legend i { width:10px; height:2px; border-radius:2px; background:var(--series-color); }
  .mobile-chart-legend img { width:18px; height:18px; object-fit:contain; border-radius:4px; }
  .mobile-chart-legend b { overflow:hidden; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
  .chart-plot { min-width:0; display:grid; grid-template-columns:47px minmax(0,1fr); padding-block:10px 16px; outline:0; }
  .chart-scroll-window { width:100%; min-width:0; max-width:100%; grid-column:2; grid-row:1; overflow-x:auto; overflow-y:hidden; outline:0; overscroll-behavior-inline:contain; -webkit-overflow-scrolling:touch; }
  .chart-scroll-window:focus-visible { box-shadow:inset 0 0 0 3px rgba(99,87,245,.18); }
  .chart-scroll-window>.visibility-chart { width:var(--chart-width); min-width:var(--chart-width); }
  .chart-plot.compact .chart-scroll-window>.visibility-chart { width:100%; min-width:100%; }
  .chart-scroll-window>.chart-empty { min-width:540px; }
  .chart-plot.compact .chart-scroll-window>.chart-empty { min-width:0; }
  .chart-grid text { font-size:11px; }
  .visibility-chart .y-axis-label { display:none; }
  .visibility-line.competitor { stroke-width:1.6; opacity:.44; }
  .visibility-line.competitor.comparison { stroke-width:2.6; opacity:.84; }
  .visibility-line.primary { stroke-width:5; filter:drop-shadow(0 0 2px rgba(99,87,245,.25)); }
  .visibility-point.competitor { opacity:.36; }
  .visibility-point.competitor.comparison { opacity:.78; }
  .chart-marker.historical { display:none; }
  .chart-marker.competitor.latest text { display:none; }
  .mobile-y-axis { width:auto; height:auto; min-height:0; position:relative; grid-column:1; grid-row:1; z-index:3; display:block; margin:0; background:linear-gradient(90deg,var(--card) 0 33px,rgba(251,250,245,.9) 38px,transparent 47px); pointer-events:none; }
  .mobile-y-axis span { position:absolute; right:12px; transform:translateY(-50%); color:var(--muted); font:9px ui-monospace,SFMono-Regular,Menlo,monospace; }
  .chart-scroll-hint { width:max-content; position:relative; grid-column:2; grid-row:1; align-self:end; justify-self:start; z-index:2; display:block; margin:0 0 11px 12px; padding:7px 10px; border:1px solid rgba(32,35,30,.15); border-radius:99px; background:rgba(251,250,245,.92); color:var(--ink); font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.04em; pointer-events:none; box-shadow:0 2px 8px rgba(32,35,30,.1); transition:opacity .16s ease; }
  .chart-scroll-hint.hidden { opacity:0; }
  .chart-plot.compact .chart-scroll-hint { display:none; }
  .chart-shell>.visibility-legend { display:none; }

  .ad-timeline { overflow:visible; padding:20px; }
  .ad-timeline>header { min-width:0; display:block; }
  .ad-timeline-legend { flex-wrap:wrap; margin-top:14px; }
  .ad-timeline-scroll { overflow-x:auto; margin-inline:-20px; padding-inline:20px; overscroll-behavior-inline:contain; -webkit-overflow-scrolling:touch; }

  .table-wrap,.sentiment-chart-wrap { overscroll-behavior-inline:contain; -webkit-overflow-scrolling:touch; }
}

@media (max-width:390px) {
  .app-topbar .top-actions .primary-button { width:40px; padding:0; font-size:0; }
  .mobile-chart-toolbar { grid-template-columns:1fr; }
}
