
:root{
  color-scheme: dark;
  --bg:#060b14;
  --bg2:#081522;
  --panel:#0c1728;
  --panel2:#101f34;
  --panel3:#13263f;
  --line:rgba(148,177,218,.18);
  --line2:rgba(148,177,218,.30);
  --text:#f3f7ff;
  --muted:#9fb0c8;
  --muted2:#7387a5;
  --green:#35e08a;
  --green2:#17bf70;
  --amber:#ffd166;
  --red:#ff6978;
  --blue:#72a7ff;
  --cyan:#55d7ff;
  --violet:#aa8cff;
  --orange:#ff9b54;
  --radius:22px;
  --radius2:30px;
  --shadow:0 28px 90px rgba(0,0,0,.42);
  --shadow2:0 14px 40px rgba(0,0,0,.30);
  --glow:0 0 0 1px rgba(255,255,255,.06),0 0 70px rgba(53,224,138,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;min-height:100%}
body{
  margin:0;
  min-height:100%;
  background:
    radial-gradient(circle at 10% -10%,rgba(53,224,138,.16),transparent 34%),
    radial-gradient(circle at 85% 8%,rgba(114,167,255,.16),transparent 30%),
    radial-gradient(circle at 50% 100%,rgba(170,140,255,.08),transparent 36%),
    linear-gradient(180deg,var(--bg),var(--bg2) 46%,#050914);
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.42;
  -webkit-font-smoothing:antialiased;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.65),rgba(0,0,0,.08));
}
a{color:inherit}
.app{max-width:1420px;margin:0 auto;padding:30px 28px 42px}.qa.app{max-width:1280px}
.topbar{
  display:flex;align-items:center;gap:18px;justify-content:space-between;
  position:sticky;top:0;z-index:40;margin:0 -10px 16px;padding:14px 10px 16px;
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  background:linear-gradient(180deg,rgba(6,11,20,.88),rgba(6,11,20,.58));
  border-bottom:1px solid rgba(255,255,255,.06);
}
.brand{display:flex;gap:16px;align-items:center;min-width:0}.logo{
  width:60px;height:60px;border-radius:20px;
  background:linear-gradient(145deg,var(--green),#a7ffcb 48%,var(--blue));
  color:#03100a;display:grid;place-items:center;font-weight:1000;font-size:29px;letter-spacing:-.04em;
  box-shadow:0 18px 45px rgba(53,224,138,.22),inset 0 -8px 18px rgba(0,0,0,.14);
  flex:0 0 auto;
}
.title{min-width:0}.title h1{margin:0;font-size:29px;letter-spacing:.05em;font-weight:1000;white-space:nowrap}.title p{margin:2px 0 0;color:var(--muted);font-size:14px;letter-spacing:.02em}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:var(--muted)}
.btn,.chiplink{
  border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035));
  color:var(--text);border-radius:16px;padding:11px 16px;font-weight:900;text-decoration:none;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
  min-height:42px;
}
.btn:hover,.chiplink:hover{transform:translateY(-1px);border-color:rgba(114,167,255,.58);box-shadow:0 10px 28px rgba(0,0,0,.22)}.btn.primary{background:linear-gradient(135deg,var(--green),#8dffc0);color:#04130b;border-color:transparent;box-shadow:0 16px 32px rgba(53,224,138,.18)}.btn.full{width:100%;margin-top:14px}
.nav{
  display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px;padding:7px;
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);border-radius:999px;
  box-shadow:0 16px 55px rgba(0,0,0,.18);
}
.nav a{position:relative;border:1px solid transparent;background:transparent;color:var(--muted);text-decoration:none;font-weight:900;border-radius:999px;padding:10px 14px;transition:.16s ease;white-space:nowrap}.nav a:hover{color:var(--text);background:rgba(255,255,255,.055)}.nav a.active{background:linear-gradient(135deg,rgba(53,224,138,.18),rgba(114,167,255,.11));color:var(--green);border-color:rgba(53,224,138,.28);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.page-head{
  display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin:14px 0 20px;
  padding:26px;border-radius:var(--radius2);border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(135deg,rgba(16,31,52,.92),rgba(10,20,35,.72) 60%,rgba(53,224,138,.075));
  box-shadow:var(--shadow2),var(--glow);overflow:hidden;position:relative;
}
.page-head:after{content:"";position:absolute;right:-80px;top:-130px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(114,167,255,.22),transparent 60%);pointer-events:none}.page-head h1{font-size:44px;line-height:1.02;margin:0;letter-spacing:-.045em}.page-head p{max-width:900px;margin:10px 0 0;color:var(--muted);font-size:17px}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.card{
  position:relative;background:linear-gradient(180deg,rgba(16,31,52,.82),rgba(11,22,38,.88));border:1px solid var(--line);
  border-radius:var(--radius);padding:22px;box-shadow:var(--shadow2);overflow:hidden;
}.card:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.07),transparent 32%);pointer-events:none;opacity:.62}.card>*{position:relative}.card:hover{border-color:rgba(148,177,218,.30)}.span12{grid-column:span 12}.span8{grid-column:span 8}.span7{grid-column:span 7}.span6{grid-column:span 6}.span5{grid-column:span 5}.span4{grid-column:span 4}.span3{grid-column:span 3}.eyebrow{color:var(--green);text-transform:uppercase;letter-spacing:.20em;font-weight:1000;font-size:11px}.card h2,.card h3{margin:.35rem 0 1rem;letter-spacing:-.015em}.muted{color:var(--muted)}.footer{color:var(--muted2);font-size:13px;margin:26px 0;text-align:center}.loading{opacity:.65}
.metric-row{display:flex;gap:12px;flex-wrap:wrap}.metric{background:rgba(255,255,255,.048);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:15px;min-width:145px;flex:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.metric b{display:block;font-size:25px;letter-spacing:-.04em}.metric small{color:var(--muted);display:block;margin-top:5px;font-weight:750}.metric:hover{border-color:rgba(53,224,138,.24)}
.tag,.source-badge,.score-badge{font-size:12px;font-weight:1000;border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;white-space:nowrap;border:1px solid rgba(255,255,255,.08)}.tag{background:rgba(255,255,255,.06);color:#c9d8ee}.tag.fast{color:var(--amber);background:rgba(255,209,102,.10);border-color:rgba(255,209,102,.22)}.tag.now{color:var(--green);background:rgba(53,224,138,.12);border-color:rgba(53,224,138,.25)}.tag.review{color:#a8c1ff;background:rgba(114,167,255,.12);border-color:rgba(114,167,255,.25)}.tag.risk{color:var(--red);background:rgba(255,105,120,.11);border-color:rgba(255,105,120,.28)}.source-badge{background:rgba(114,167,255,.14);color:#d3e1ff}.score-badge{min-width:44px;justify-content:center;background:rgba(53,224,138,.15);color:var(--green);border-color:rgba(53,224,138,.25)}.score-badge:before{content:"●";font-size:8px;margin-right:6px}.list{display:grid;gap:10px}.item{padding:13px;border-radius:17px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.075)}.item.clickable,.clickable{cursor:pointer}.item.clickable:hover,.clickable:hover{border-color:rgba(114,167,255,.55);background:rgba(255,255,255,.065)}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 16px}.filters input,.filters select,.search input{border:1px solid var(--line);border-radius:16px;background:rgba(7,16,28,.86);color:var(--text);font-size:16px;padding:12px 14px;min-width:220px;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.filters input:focus,.filters select:focus,.search input:focus{border-color:rgba(114,167,255,.62);box-shadow:0 0 0 4px rgba(114,167,255,.10)}.filters input{flex:1}.filters select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 18px,calc(100% - 13px) 18px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.lead-row,.candidate-row,.source-card{display:grid;gap:10px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:16px;text-decoration:none;color:var(--text);transition:.16s transform,.16s border-color,.16s background,.16s box-shadow}.lead-row:hover,.candidate-row:hover,.source-card:hover{transform:translateY(-2px);border-color:rgba(114,167,255,.58);background:rgba(255,255,255,.075);box-shadow:0 18px 45px rgba(0,0,0,.24)}.lead-row h3{font-size:18px;margin:4px 0;line-height:1.22}.lead-row p{margin:0;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lead-row-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.subline{font-size:13px;color:var(--muted)}.candidate-row{grid-template-columns:minmax(128px,.7fr) minmax(260px,1.75fr) auto auto;align-items:center}.ticker{font-weight:1000;color:#9cc3ff;letter-spacing:.04em}.score{font-size:28px;font-weight:1000;color:var(--green);text-shadow:0 0 26px rgba(53,224,138,.16)}.kv{display:grid;gap:8px}.kv div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:8px}.bigkv div{padding:10px 0}.detail-head{background:linear-gradient(135deg,rgba(20,39,65,.92),rgba(9,20,35,.78));border:1px solid rgba(255,255,255,.09);border-radius:var(--radius2);padding:26px;margin-bottom:18px;box-shadow:var(--shadow2);position:relative;overflow:hidden}.detail-head:after{content:"";position:absolute;right:-90px;top:-120px;width:330px;height:330px;background:radial-gradient(circle,rgba(53,224,138,.16),transparent 65%);pointer-events:none}.detail-head h1{font-size:42px;line-height:1.04;margin:13px 0 9px;letter-spacing:-.045em}.detail-head p{font-size:17px;color:var(--muted);max-width:940px}.detail-grid{align-items:start}.score-block{margin:15px 0}.score-block>div{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.bar{height:10px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.35)}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--cyan),var(--blue));border-radius:999px;box-shadow:0 0 20px rgba(85,215,255,.26)}.chiprow{display:flex;gap:8px;flex-wrap:wrap}.chiplink{border-radius:999px;padding:8px 12px}.source-card{grid-template-columns:1fr auto;align-items:center}.source-card p{margin:4px 0}.source-scores{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.source-scores span{border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.045);padding:5px 8px;color:var(--muted);font-size:12px;font-weight:900}.okText{color:var(--green)!important}.riskText{color:var(--red)!important}.warnText{color:var(--yellow)!important}.split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qa pre{white-space:pre-wrap;word-break:break-word;background:#050b14;border:1px solid var(--line);border-radius:18px;padding:15px;color:#cde0ff;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}.nav-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.nav-card{position:relative;padding:20px;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.032));border:1px solid rgba(255,255,255,.085);text-decoration:none;color:var(--text);overflow:hidden;box-shadow:var(--shadow2);transition:.16s ease}.nav-card:after{content:"→";position:absolute;right:18px;top:17px;color:var(--green);font-weight:1000;opacity:.75}.nav-card:hover{transform:translateY(-2px);border-color:rgba(53,224,138,.38);box-shadow:0 24px 60px rgba(0,0,0,.28)}.nav-card b{display:block;font-size:19px;letter-spacing:-.015em;padding-right:24px}.nav-card span{color:var(--muted);font-size:14px}.warning-box{border:1px solid rgba(255,209,102,.35);background:rgba(255,209,102,.08);border-radius:18px;padding:14px;color:#ffdf8a}.empty{border:1px dashed rgba(255,255,255,.12);border-radius:18px;padding:16px;color:var(--muted);background:rgba(255,255,255,.025)}
body[data-page="risk"] .page-head{background:linear-gradient(135deg,rgba(55,19,31,.78),rgba(12,22,38,.84));box-shadow:0 20px 80px rgba(255,105,120,.06)}body[data-page="leads"] .page-head{background:linear-gradient(135deg,rgba(15,39,30,.80),rgba(12,22,38,.84))}body[data-page="candidates"] .page-head{background:linear-gradient(135deg,rgba(15,28,54,.86),rgba(12,22,38,.84))}body[data-page="sources"] .page-head{background:linear-gradient(135deg,rgba(33,26,57,.78),rgba(12,22,38,.84))}
@media(min-width:1180px){.app:not(.qa){display:grid;grid-template-columns:232px minmax(0,1fr);grid-template-areas:"top top" "nav head" "nav cards" "nav grid" "nav foot";column-gap:22px;align-items:start}.topbar{grid-area:top}.nav{grid-area:nav;position:sticky;top:96px;align-self:start;display:grid;border-radius:26px;padding:10px;margin:0;background:rgba(8,18,31,.62);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.nav a{border-radius:18px;padding:13px 14px}.page-head{grid-area:head}.nav-cards{grid-area:cards}.grid{grid-area:grid}.footer{grid-area:foot}.qa .nav{border-radius:999px}}
@media(max-width:950px){.app{padding:20px 14px}.topbar{align-items:flex-start;flex-direction:column}.title h1{font-size:24px}.page-head{display:block;padding:22px}.page-head h1{font-size:32px}.span8,.span7,.span6,.span5,.span4,.span3{grid-column:span 12}.candidate-row{grid-template-columns:1fr auto}.candidate-row .tag{grid-column:1/3}.nav-cards{grid-template-columns:1fr 1fr}.source-card{grid-template-columns:1fr}.source-scores{justify-content:flex-start}.actions{width:100%}.btn{flex:1}.filters input,.filters select{min-width:100%}.split{grid-template-columns:1fr}.nav{border-radius:24px}.nav a{flex:1;text-align:center}.detail-head h1{font-size:32px}}
@media(max-width:560px){.logo{width:52px;height:52px;border-radius:17px}.nav-cards{grid-template-columns:1fr}.metric{min-width:100%}.candidate-row{grid-template-columns:1fr}.candidate-row .tag{grid-column:auto}.score{font-size:22px}.page-head h1{font-size:29px}.lead-row-top{display:grid;justify-content:start}.card{padding:18px}.nav{display:grid;grid-template-columns:1fr 1fr}.nav a{font-size:13px;padding:10px 8px}.title p{font-size:13px}.page-head p{font-size:15px}}


/* v2.5.3 inherits v2.5.2 mobile hardening plus decision polish */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:hidden;padding-bottom:calc(78px + env(safe-area-inset-bottom));}
/* Hard reset because iOS/Safari can show default blue links when old CSS is cached or partial. */
.app a,.app a:visited,.app a:hover,.app a:active{color:inherit!important;text-decoration:none!important;-webkit-text-decoration:none!important;}
.app a:focus-visible,.btn:focus-visible{outline:3px solid rgba(114,167,255,.72);outline-offset:3px}
.topbar,.nav,.page-head,.nav-cards,.card,.lead-row,.candidate-row,.source-card{isolation:isolate}
.nav a,.nav a:visited,.nav-card,.nav-card:visited,.lead-row,.lead-row:visited,.candidate-row,.candidate-row:visited,.source-card,.source-card:visited,.item.clickable,.item.clickable:visited{color:inherit!important;text-decoration:none!important;}
.lead-row h3,.candidate-row b,.source-card b,.item b{color:var(--text)!important;text-decoration:none!important;}
.lead-row p,.candidate-row .muted,.source-card p,.subline{color:var(--muted)!important;text-decoration:none!important;}
.subline{display:flex;gap:7px;align-items:center;flex-wrap:wrap;line-height:1.45}.subline>span{display:inline-flex;align-items:center}
.candidate-reason{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.28}.candidate-meta{font-size:13px;margin-top:5px}.lead-mini p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.lead-mini h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.source-badge,.score-badge,.tag{vertical-align:middle;text-decoration:none!important}.topbar .tag{letter-spacing:.06em}

@media(max-width:760px){
  body{background:linear-gradient(180deg,#050c16,#081724 52%,#050914);}
  .app{width:100%;max-width:none;padding:calc(18px + env(safe-area-inset-top)) 14px calc(100px + env(safe-area-inset-bottom));}
  .topbar{position:relative;top:auto;margin:0 0 12px;padding:0 0 12px;display:grid;grid-template-columns:1fr;gap:12px;background:transparent;border-bottom:0;backdrop-filter:none;-webkit-backdrop-filter:none;}
  .brand{gap:12px;align-items:center}.logo{width:52px;height:52px;border-radius:17px;font-size:26px}.title h1{font-size:24px;letter-spacing:.045em;white-space:normal;line-height:1}.title p{font-size:14px;max-width:270px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.actions .mono{grid-column:1/3;display:flex;gap:8px}.actions .btn{min-height:44px;border-radius:18px;padding:10px 12px;font-size:15px;width:100%}
  .nav{display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:8px;margin:0 -2px 16px;padding:6px;border-radius:18px;scrollbar-width:none;background:rgba(255,255,255,.04)}.nav::-webkit-scrollbar{display:none}.nav a{flex:0 0 auto;padding:9px 12px;border-radius:14px;font-size:14px;background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.06)}
  .page-head{margin:8px 0 14px;padding:18px;border-radius:24px}.page-head h1{font-size:34px;line-height:.98}.page-head p{font-size:16px;line-height:1.45}
  .nav-cards{grid-template-columns:1fr;gap:10px;margin-bottom:14px}.nav-card{padding:15px;border-radius:18px}.nav-card b{font-size:18px}.nav-card span{display:block;margin-top:3px;font-size:13px;line-height:1.35}
  .grid{gap:14px}.card{padding:18px;border-radius:22px}.card h2{font-size:25px;line-height:1.08}.eyebrow{font-size:11px;letter-spacing:.18em}.metric-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.metric{min-width:0;padding:14px;border-radius:17px}.metric b{font-size:25px}.metric span,.metric small{font-size:13px}.span8,.span7,.span6,.span5,.span4,.span3{grid-column:span 12}
  .lead-row,.candidate-row,.source-card{border-radius:18px;padding:14px;gap:9px}.lead-row-top{align-items:center}.lead-row h3{font-size:20px;line-height:1.16;margin:6px 0}.lead-row p{font-size:15px;line-height:1.42}.subline{font-size:12.5px}.tag,.source-badge,.score-badge{font-size:12px;padding:5px 9px}
  .candidate-row{grid-template-columns:1fr auto;align-items:start}.candidate-id{grid-column:1/2}.candidate-copy{grid-column:1/3;order:3}.candidate-row .score{grid-column:2/3;grid-row:1/2;text-align:right;font-size:28px}.candidate-row .tag{grid-column:1/3;justify-self:start;order:4}.candidate-meta{font-size:13px;line-height:1.35}.ticker{font-size:19px}.filters{gap:8px}.filters input,.filters select{min-width:100%;font-size:16px;padding:12px;border-radius:14px}.detail-head{padding:18px;border-radius:24px}.detail-head h1{font-size:31px;line-height:1.02}.detail-head p{font-size:15.5px}.kv div{display:grid;grid-template-columns:1fr;gap:3px}.source-scores{justify-content:flex-start}.btn.full{margin-top:12px}
}

@media(max-width:420px){
  .app{padding-left:12px;padding-right:12px}.title h1{font-size:22px}.logo{width:48px;height:48px}.page-head h1{font-size:31px}.page-head p{font-size:15px}.metric-row{grid-template-columns:1fr}.card{padding:16px}.lead-row h3{font-size:19px}.candidate-row{grid-template-columns:1fr}.candidate-row .score{grid-column:auto;grid-row:auto;text-align:left}.candidate-copy,.candidate-row .tag{grid-column:auto}.actions{grid-template-columns:1fr 1fr}.actions .mono{grid-column:1/3}.source-badge{max-width:100%;overflow:hidden;text-overflow:ellipsis}
}


/* v2.5.3 — Decision UI polish: make the data usable before it is pretty. */
.decision-card{display:grid;gap:12px;position:relative;overflow:hidden;border-radius:22px;padding:17px;background:linear-gradient(180deg,rgba(255,255,255,.068),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.09);box-shadow:0 14px 38px rgba(0,0,0,.22);transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.decision-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--blue),var(--green));opacity:.8}.decision-card:hover{transform:translateY(-2px);border-color:rgba(114,167,255,.55);background:rgba(255,255,255,.074);box-shadow:0 24px 60px rgba(0,0,0,.30)}
.decision-card h3{margin:0;font-size:20px;line-height:1.15;letter-spacing:-.02em}.decision-card .why{margin:0;color:var(--muted);font-size:14.5px;line-height:1.42;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.decision-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.decision-top>div:first-child{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.score-stack{min-width:52px;min-height:52px;display:grid;place-items:center;text-align:center;border-radius:17px;background:rgba(53,224,138,.10);border:1px solid rgba(53,224,138,.22);padding:5px 9px}.score-stack b{font-size:26px;line-height:.9;color:var(--green);letter-spacing:-.06em}.score-stack span{font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:1000}.score-stack.big b{font-size:31px}.decision-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.decision-grid>div{border:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.042);border-radius:15px;padding:10px;min-width:0}.decision-grid span{display:block;color:var(--muted2);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.decision-grid b{display:block;font-size:19px;color:var(--text);letter-spacing:-.03em}.decision-grid.mini{grid-template-columns:repeat(4,minmax(0,1fr))}.mini-chip{display:inline-flex;align-items:center;max-width:100%;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);border-radius:999px;padding:5px 9px;color:var(--muted);font-size:12px;font-weight:900;line-height:1.1}.ticker-chip{color:#bcd4ff;background:rgba(114,167,255,.10);border-color:rgba(114,167,255,.22)}.tone-edge:before{background:linear-gradient(180deg,var(--green),var(--cyan))}.tone-review:before{background:linear-gradient(180deg,var(--blue),var(--violet))}.tone-late:before{background:linear-gradient(180deg,var(--amber),var(--orange))}.tone-risk:before{background:linear-gradient(180deg,var(--red),#ff9aa5)}.tone-risk .score-stack{background:rgba(255,105,120,.10);border-color:rgba(255,105,120,.25)}.tone-risk .score-stack b{color:var(--red)}.tone-late .score-stack{background:rgba(255,209,102,.10);border-color:rgba(255,209,102,.24)}.tone-late .score-stack b{color:var(--amber)}.reason-chips{display:flex;flex-wrap:wrap;gap:7px}.ticker-big{font-weight:1000;color:#9cc3ff;letter-spacing:.03em}.candidate-card .note{margin:0;padding:10px 12px;border-radius:14px;background:rgba(114,167,255,.07);border:1px solid rgba(114,167,255,.14);color:var(--muted);font-size:13px}.verdict-box{border-radius:18px;padding:16px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);margin-bottom:14px}.verdict-box b{font-size:18px}.verdict-box p{margin:.45rem 0 0;color:var(--muted)}.verdict-box.tone-edge{border-color:rgba(53,224,138,.25);background:rgba(53,224,138,.075)}.verdict-box.tone-risk{border-color:rgba(255,105,120,.30);background:rgba(255,105,120,.075)}.verdict-box.tone-late{border-color:rgba(255,209,102,.28);background:rgba(255,209,102,.075)}
body[data-page="overview"] #topLeads,body[data-page="overview"] #candidatePreview{gap:12px}.page-head p strong{color:var(--text)}
@media(min-width:1180px){body[data-page="overview"] #candidatePreview{grid-template-columns:1fr}.decision-card.lead-card{min-height:0}}
@media(max-width:760px){.decision-card{border-radius:20px;padding:14px;gap:10px}.decision-card h3{font-size:19px}.decision-card .why{-webkit-line-clamp:2;font-size:14px}.score-stack{min-width:48px;min-height:48px;border-radius:15px}.score-stack b{font-size:24px}.decision-grid,.decision-grid.mini{grid-template-columns:1fr 1fr}.decision-grid>div{padding:9px}.decision-grid b{font-size:18px}.mini-chip{font-size:11.5px;padding:5px 8px}.candidate-card .note{font-size:12.5px}.detail-head.decision-detail h1{font-size:28px}}
@media(max-width:420px){.decision-top{gap:8px}.decision-top>div:first-child{gap:5px}.decision-card h3{font-size:18px}.score-stack{min-width:44px}.score-stack b{font-size:22px}.decision-grid span{font-size:10px}.decision-grid b{font-size:17px}.tag,.source-badge,.score-badge{font-size:11px}}

/* v2.6.3 — Case OS and Hot Geo Watch */
.case-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.case-board .decision-card{min-height:230px}.warning-box b{color:var(--text)}.warning-box{margin-top:12px;padding:13px 14px;border-radius:16px;background:rgba(255,209,102,.08);border:1px solid rgba(255,209,102,.18);color:var(--muted)}
body[data-page="exit"] .decision-card:before, body[data-page="events"] .tone-risk:before{width:5px}.nav a[data-page="cases"].active,.nav a[data-page="positions"].active,.nav a[data-page="exit"].active{background:linear-gradient(135deg,rgba(170,140,255,.18),rgba(53,224,138,.10));color:#d8ccff;border-color:rgba(170,140,255,.30)}
@media(max-width:1050px){.case-board{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.case-board{grid-template-columns:1fr}.case-board .decision-card{min-height:0}.nav a[data-page="cases"],.nav a[data-page="positions"],.nav a[data-page="exit"]{background:rgba(170,140,255,.07)}}

/* v2.6.4 Post Upload Pipeline Runner */
.pipeline-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 16px}
.pipeline-progress{height:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);border-radius:999px;overflow:hidden;margin:12px 0}
.pipeline-progress-bar{height:100%;width:0%;background:linear-gradient(90deg,#35d399,#65b7ff);transition:width .25s ease}
.pipeline-steps{display:grid;gap:10px;margin-top:14px}
.pipeline-step{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.035)}
.pipeline-step b{display:block;color:#f2f7ff;margin-bottom:4px}.pipeline-step p{margin:0;color:#9fb1c9;font-size:.93rem}.pipeline-step small{display:block;margin-top:6px;color:#71839c;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.pipeline-step>span{white-space:nowrap;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:6px 9px;background:rgba(255,255,255,.08);color:#cbd7e8}
.pipeline-step.running{border-color:rgba(101,183,255,.55);box-shadow:0 0 0 1px rgba(101,183,255,.10)}.pipeline-step.running>span{background:rgba(101,183,255,.18);color:#9fd0ff}
.pipeline-step.done{border-color:rgba(53,211,153,.45)}.pipeline-step.done>span{background:rgba(53,211,153,.18);color:#86efc0}
.pipeline-step.fail{border-color:rgba(255,92,122,.55)}.pipeline-step.fail>span{background:rgba(255,92,122,.18);color:#ff9aae}
.pipeline-counts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.pipeline-counts .metric{min-width:0}.pipeline-counts .metric b{font-size:1.05rem}.pipeline-log{display:grid;gap:10px}.pipeline-log details{margin-top:8px}.pipeline-log summary{cursor:pointer;color:#b8c9e2}.pipeline-log pre{white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto;background:rgba(0,0,0,.22);border-radius:12px;padding:12px;color:#d9e7fb}
@media(max-width:680px){.pipeline-step{padding:12px;display:block}.pipeline-step>span{display:inline-block;margin-top:10px}.pipeline-counts{grid-template-columns:1fr}.pipeline-actions .btn{width:100%;justify-content:center}}

/* v2.6.5 — Case Explainer & Buyability Gate */
.case-decision-hero{background:linear-gradient(135deg,rgba(18,36,60,.94),rgba(8,18,32,.88) 62%,rgba(53,224,138,.08))}
.gate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 10px}
.gate-grid>div,.path-grid>div{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);border-radius:17px;padding:13px;min-width:0}
.gate-grid span,.path-grid span{display:block;color:var(--muted);font-size:11px;font-weight:1000;text-transform:uppercase;letter-spacing:.12em;margin-bottom:7px}.gate-grid b{font-size:20px;line-height:1.15}.path-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.path-grid b{display:block;font-size:14px;line-height:1.35;color:var(--text)}.explainer-text{display:grid;gap:10px}.explainer-text p{margin:0;padding:12px 13px;border-radius:15px;border:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.035);color:#cfe0f7;line-height:1.45}.decision-detail.tone-edge{border-color:rgba(53,224,138,.24)}.decision-detail.tone-risk{border-color:rgba(255,105,120,.26)}.decision-detail.tone-late{border-color:rgba(255,209,102,.24)}
@media(max-width:1050px){.gate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.path-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.gate-grid,.path-grid{grid-template-columns:1fr}.gate-grid b{font-size:18px}}


/* v2.6.14 Deal Desk + Market Pricing */
.deal-desk-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.deal-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.deal-card{display:block;text-decoration:none;color:inherit;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border-radius:18px;padding:14px;margin-bottom:12px;box-shadow:0 12px 30px rgba(0,0,0,.18)}.deal-card:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.22)}.deal-rank{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}.deal-rank b{font-size:22px;letter-spacing:.02em}.deal-rank span{display:block;color:var(--muted);font-size:13px}.deal-score{text-align:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:7px 10px;min-width:58px}.deal-score b{font-size:22px}.deal-score span{text-transform:uppercase;font-size:10px;letter-spacing:.12em}.deal-main h3{font-size:15px;line-height:1.35;margin:10px 0 6px}.deal-main p{color:var(--muted);margin:0 0 10px;line-height:1.4}.deal-numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.deal-numbers div{background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:8px}.deal-numbers span,.deal-trigger span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.deal-numbers b{display:block;font-size:14px;margin-top:3px}.deal-trigger{background:rgba(255,255,255,.045);border-radius:12px;padding:9px;margin-top:8px}.deal-trigger b{font-size:13px;line-height:1.35}.deal-card.tone-edge{border-color:rgba(44,220,150,.33)}.deal-card.tone-risk{border-color:rgba(255,85,105,.36)}.deal-card.tone-review{border-color:rgba(255,196,87,.22)}.deal-hero{background:radial-gradient(circle at top left,rgba(39,153,255,.18),transparent 40%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:18px}.deal-hero h2{margin:0 0 6px}.deal-hero p{color:var(--muted);max-width:850px}.deal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.deal-list .deal-card{margin:0}.hot{border-color:rgba(39,153,255,.34)!important}@media(max-width:850px){.deal-list{grid-template-columns:1fr}.deal-kpis{grid-template-columns:repeat(2,1fr)}.deal-numbers{grid-template-columns:repeat(2,1fr)}.deal-rank b{font-size:19px}}

.token-input{background:#081728;border:1px solid rgba(148,163,184,.35);color:#e5eefb;border-radius:12px;padding:10px 12px;min-width:170px;max-width:260px;font:inherit;outline:none}.token-input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px rgba(56,189,248,.14)}@media(max-width:760px){.token-input{min-width:0;width:100%}.topbar .actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.topbar .actions .token-input{grid-column:1/-1}}

.diagnostic-strip{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid rgba(114,167,255,.14);background:rgba(114,167,255,.055);border-radius:15px;padding:9px 10px}.diagnostic-strip div span{display:block;color:var(--muted2);font-size:10px;font-weight:1000;text-transform:uppercase;letter-spacing:.1em}.diagnostic-strip div b{font-size:13px}.diagnostic-strip p{grid-column:1/3;margin:0;color:var(--muted);font-size:12.5px;line-height:1.25}.diagnostic-strip em{font-style:normal;color:var(--green);font-weight:1000;font-size:12px}.diagnostic-panel h3{margin:16px 0 8px}.diag-list{display:grid;gap:8px}.diag-list>div{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);border-radius:14px;padding:10px}.diag-list b{display:block;color:var(--text)}.diag-list span{display:block;color:var(--muted);font-size:13px;margin-top:3px}.check-grid{display:flex;gap:7px;flex-wrap:wrap}.check-grid span{border:1px solid rgba(255,255,255,.10);border-radius:999px;padding:7px 9px;font-size:12px;font-weight:900}.check-grid .ok{color:var(--green);background:rgba(53,224,138,.06);border-color:rgba(53,224,138,.18)}.check-grid .bad{color:var(--amber);background:rgba(255,209,102,.06);border-color:rgba(255,209,102,.18)}

/* v2.7.3 — Radar Coherence & Decision OS Cleanup */
.coherence-strip{border-color:rgba(53,224,138,.18);background:linear-gradient(180deg,rgba(53,224,138,.07),rgba(114,167,255,.045))}
.coherence-strip div b{color:#eafbf3}.coherence-strip em{color:var(--green)}
.case-decision-hero .gate-grid>div:nth-child(1){border-color:rgba(53,224,138,.22);background:rgba(53,224,138,.065)}
.case-decision-hero .gate-grid>div:nth-child(5){grid-column:span 2}
@media(max-width:680px){.case-decision-hero .gate-grid>div:nth-child(5){grid-column:auto}}


/* v2.7.3 Human Case OS */
.human-hero{background:radial-gradient(circle at top right,rgba(53,224,138,.18),transparent 42%),linear-gradient(135deg,rgba(18,36,60,.96),rgba(8,18,32,.90));}
.human-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.human-kpis>div,.scenario-grid>div,.plan-grid>div{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.05);border-radius:17px;padding:13px;min-width:0}.human-kpis span,.scenario-grid span,.plan-grid span{display:block;color:var(--muted2);font-size:11px;font-weight:1000;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}.human-kpis b,.scenario-grid b{font-size:23px;line-height:1.05;word-break:break-word}.human-kpis small{display:block;color:var(--muted);margin-top:4px}.human-blocker{margin:14px 0 0;padding:13px 14px;border-radius:16px;background:rgba(255,209,102,.075);border:1px solid rgba(255,209,102,.18);color:#d7e4f6}.human-card h2{letter-spacing:-.04em}.human-lead{color:#d7e4f6;font-size:17px;line-height:1.45}.timeline{display:grid;gap:12px}.timeline-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:start}.timeline-row i{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:rgba(53,224,138,.14);color:var(--green);font-style:normal;font-weight:1000;border:1px solid rgba(53,224,138,.28)}.timeline-row b{display:block;font-size:16px}.timeline-row span{display:block;color:var(--muted2);font-size:12px;margin:3px 0}.timeline-row p{margin:0;color:var(--muted);line-height:1.35}.scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.plan-grid b{display:block;font-size:15px;line-height:1.4;font-weight:750;color:#dbe8fb}.tech-details{padding:0}.tech-details>summary{cursor:pointer;padding:18px 20px;font-weight:1000;color:#cfe0f7;list-style:none}.tech-details>summary::-webkit-details-marker{display:none}.tech-details>summary:after{content:' visa';color:var(--green);font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-left:8px}.tech-details[open]>summary:after{content:' dölj'}.tech-grid{display:grid;gap:16px;padding:0 18px 18px}.gate-grid b,.decision-grid b,.kv b{overflow-wrap:anywhere;word-break:break-word;line-height:1.15}.ok-box{border:1px solid rgba(53,224,138,.25);background:rgba(53,224,138,.08);border-radius:18px;padding:14px;color:#bcf7d8}.case-decision-hero .decision-grid.mini{margin-top:10px}
@media(max-width:760px){.human-kpis{grid-template-columns:1fr 1fr}.scenario-grid{grid-template-columns:1fr}.plan-grid{grid-template-columns:1fr}.human-kpis b{font-size:20px}.human-lead{font-size:15px}.tech-details>summary{padding:16px}.tech-grid{padding:0 14px 14px}}



.market-clock-card .decision-grid b{font-size:16px}.market-clock-card .verdict-box{margin-top:12px}.market-clock-card .muted{font-size:13px;line-height:1.45}.timeline-row:first-child i{background:rgba(255,209,102,.14);border-color:rgba(255,209,102,.30);color:var(--amber)}
@media(max-width:760px){.market-clock-card .decision-grid.mini{grid-template-columns:1fr 1fr}.market-clock-card .decision-grid b{font-size:14px}.case-decision-hero .decision-grid.mini b{font-size:14px}.case-decision-hero{overflow:hidden}.case-decision-hero .decision-grid>div{overflow:hidden}.case-decision-hero .decision-grid b{overflow-wrap:anywhere;word-break:break-word;white-space:normal}}
/* v2.7.3 Nordic/EU evidence clock */
.evidence-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0;padding:10px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.035)}
.evidence-strip>div{min-width:0}.evidence-strip span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.evidence-strip b{display:block;font-size:13px;overflow-wrap:anywhere}.evidence-strip .evidence-tags{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
@media(max-width:760px){.evidence-strip{grid-template-columns:1fr}.evidence-strip .evidence-tags{grid-column:auto}}


/* v2.7.4f — classic mobile dropdown + no duplicate bottom menu */
.mobile-menu{display:none}.mobile-quick-nav{display:none!important}
.mobile-menu-button{border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045));color:var(--text);border-radius:15px;padding:9px 11px;font-weight:1000;display:flex;align-items:center;gap:8px;min-height:42px;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.mobile-menu-button span{font-size:18px;line-height:1}.mobile-menu-button b{font-size:13px;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-menu-panel{position:absolute;left:0;top:calc(100% + 9px);z-index:160;width:min(82vw,330px);display:grid;gap:7px;padding:10px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(5,12,22,.94);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 22px 70px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.06)}
.mobile-menu-panel[hidden]{display:none!important}.mobile-menu-panel a{display:flex;align-items:center;min-height:42px;border-radius:14px;padding:10px 12px;text-decoration:none;color:#d8e5f7;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.065);font-weight:950}.mobile-menu-panel a.active{color:#04130b;background:linear-gradient(135deg,var(--green),#9fffc7);border-color:transparent;box-shadow:0 12px 26px rgba(53,224,138,.18)}.mobile-menu-panel a[href*="pipeline"]{border-color:rgba(53,224,138,.22);color:var(--green);background:rgba(53,224,138,.08)}.mobile-menu-panel a[href*="pipeline"].active{color:#04130b;background:linear-gradient(135deg,var(--green),#9fffc7)}
@media(max-width:760px){
  .app{padding:18px 12px 32px}.mobile-menu{display:block;position:relative;flex:0 0 auto}.topbar{position:sticky;top:0;z-index:80;margin:0 -6px 12px;padding:10px 6px 12px;align-items:center;gap:10px}.brand{gap:10px;flex:1 1 auto;min-width:0}.logo{width:42px;height:42px;border-radius:14px;font-size:21px}.title h1{font-size:16px;letter-spacing:.035em;white-space:normal;line-height:1.05}.title p{font-size:11px;line-height:1.2}.topbar .actions{width:auto;display:flex;gap:7px;flex:0 0 auto}.topbar .actions .btn{padding:8px 10px;min-height:38px;border-radius:13px;font-size:12px}.topbar .actions .mono{display:none}.nav{display:none!important}.mobile-quick-nav{display:none!important}.page-head h1{font-size:31px}.page-head{padding:16px}.decision-card{padding:13px;border-radius:19px}.decision-card h3{font-size:18px;line-height:1.14}.score-stack.big b{font-size:27px}.score-stack span{letter-spacing:.10em}.decision-grid b{font-size:16px}.decision-grid span{font-size:10px}.evidence-strip b{font-size:12px}.tag,.source-badge,.score-badge{font-size:10.5px;padding:5px 8px}.card{padding:16px}.metric b{font-size:22px}
}
@media(max-width:390px){.mobile-menu-button b{max-width:86px}.topbar .actions .btn{padding:7px 8px;font-size:11.5px}.app{padding-bottom:30px}.page-head h1{font-size:28px}}

/* v2.7.7 — mobile header overlap repair: no floating overlay on pipeline/cards */
@media(max-width:760px){
  .topbar{position:relative!important;top:auto!important;z-index:20!important;margin:0 0 12px!important;padding:8px 0 10px!important;background:transparent!important;border-bottom:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
  .mobile-menu-panel{position:fixed;left:12px;top:64px;z-index:240;max-height:calc(100vh - 86px);overflow:auto;}
  .page-head,.nav-cards,.grid,.card{scroll-margin-top:12px;}
}
