:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#dce5f1;background:#080d16;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}.shell{display:flex;min-height:100vh}.sidebar{width:218px;background:#0b1220;border-right:1px solid #1c293b;padding:28px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;color:#9ab9d3;font-size:11px;letter-spacing:.19em;line-height:1.25;padding:0 8px 38px}.brand strong{font-size:15px;color:#f2f7fc;letter-spacing:.14em}.brand-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #277a8f;border-radius:11px;color:#64d9e8;font-size:25px;box-shadow:0 0 28px #1c74834d}.side-label,.eyebrow{font-size:10px;font-weight:700;color:#6e849e;letter-spacing:.2em}.side-label{padding:0 13px;margin-bottom:13px}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#8598b0;text-align:left;border-radius:9px;padding:12px 13px;font-size:13px;display:flex;align-items:center;gap:11px}.nav-item span{font-size:17px;width:20px}.nav-item:hover,.nav-item.active{background:#142337;color:#d9faff}.nav-item.active{box-shadow:inset 2px 0 #3ad6d6}.sidebar-bottom{margin-top:auto;border-top:1px solid #1e2a3d;padding:22px 11px 4px;color:#7ed4b7;font-size:10px;letter-spacing:.15em}.sidebar-bottom small{display:block;color:#657a93;letter-spacing:0;font-size:11px;margin:8px 0 0 17px}.side-dot,.pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#52d9a2;box-shadow:0 0 12px #4fdba5;margin-right:8px}.content{flex:1;min-width:0}.topbar{height:63px;border-bottom:1px solid #1b293b;display:flex;justify-content:space-between;align-items:center;padding:0 36px;background:#0b1220}.breadcrumb{font-size:10px;letter-spacing:.18em;color:#667e97;font-weight:700}.breadcrumb span{color:#c6d5e4}.top-right{display:flex;align-items:center;gap:17px;color:#91a5b9;font-size:11px}.top-divider{height:16px;width:1px;background:#26374c}.pill{display:inline-flex;align-items:center;border-radius:4px;padding:5px 8px;font-size:10px;font-weight:800;letter-spacing:.09em;border:1px solid}.pill.good{color:#72e4bb;border-color:#2c735f;background:#12372f}.pill.warn{color:#f2bf67;border-color:#75592e;background:#3b2d19}.pill.bad{color:#fb888f;border-color:#87434a;background:#3d2029}.pill.neutral{color:#8da7bd;border-color:#3b5268;background:#1b2a3a}main{max-width:1610px;margin:auto;padding:36px}.view{display:none}.view.active{display:block}.heading{display:flex;justify-content:space-between;gap:30px;margin-bottom:29px;align-items:end}.heading h1{font-size:30px;letter-spacing:-.035em;margin:8px 0;color:#f0f6fc;font-weight:650}.heading p{color:#7f94ab;font-size:13px;margin:0;line-height:1.5}.refresh-note{font-size:11px;color:#7f94ab;white-space:nowrap;padding-bottom:4px}.alert{border:1px solid #86594b;background:#311f23;color:#ffcfb4;border-radius:9px;padding:12px 16px;font-size:12px;margin:0 0 23px}.hidden{display:none!important}.platform-grid{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:13px}.platform-card{border:1px solid #25374d;background:linear-gradient(160deg,#111f30,#0e1928 75%);border-radius:12px;padding:17px;min-width:0}.platform-card:hover{border-color:#37667a}.platform-card-top{display:flex;justify-content:space-between;align-items:center;gap:7px}.platform-name{color:#eff7ff;font-size:16px;font-weight:650}.chain{font-size:10px;color:#7f96b0;margin:5px 0 20px}.metric-main{display:flex;align-items:baseline;gap:6px;margin-bottom:16px}.metric-main strong{font-size:25px;color:#f1f8ff;font-weight:650}.metric-main span{font-size:11px;color:#7188a2}.metric-row{border-top:1px solid #243348;padding:9px 0;display:flex;justify-content:space-between;gap:8px;font-size:11px;color:#8298af}.metric-row b{font-weight:600;color:#cfdeea;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric-row:last-child{padding-bottom:0}.card-warning{font-size:10px;color:#e1aa7c;margin-top:13px;line-height:1.4;min-height:27px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:43px 0 15px}.section-heading h2{margin:7px 0 0;font-size:20px;color:#e9f2fb}.text-button{background:none;color:#63cbdb;border:0;padding:0;font-size:12px;font-weight:600}.text-button:hover{text-decoration:underline}.table-card{border:1px solid #24364d;background:#0f1a2a;border-radius:11px;overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:1040px}.data-table th{text-align:left;color:#6d849d;font-size:10px;letter-spacing:.1em;font-weight:700;padding:13px 13px;background:#142235;border-bottom:1px solid #293c52;white-space:nowrap}.data-table td{padding:12px 13px;border-bottom:1px solid #1e2d41;color:#b5c7d8;font-size:11px;white-space:nowrap}.data-table tr:last-child td{border-bottom:0}.data-table tr:hover td{background:#16263b}.data-table td strong{color:#e2edf7}.data-table td small{display:block;color:#738aa3;margin-top:3px}.data-table .token-link{background:none;border:0;color:#77d9e6;padding:0;text-align:left;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.data-table .token-link:hover{text-decoration:underline}.null{color:#667d95!important}.signal-tags{display:flex;gap:3px}.signal-tag{font-size:9px;font-weight:700;border:1px solid #395569;border-radius:3px;padding:3px 4px;color:#8096aa}.signal-tag.hit{background:#153b38;color:#5fe3c6;border-color:#2b8177}.signal-tag.unknown{opacity:.45}.empty{padding:38px;text-align:center;color:#8298ae;font-size:13px}.empty strong{display:block;color:#d9e7f3;margin-bottom:8px}.filters{display:flex;align-items:end;gap:13px;margin:0 0 17px;flex-wrap:wrap}.filters label{display:grid;gap:7px;font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:#7890aa}.filters select,.filters input{background:#101e2e;color:#d2e3f2;border:1px solid #2b4157;border-radius:7px;height:35px;padding:0 11px;min-width:145px;font-size:12px;outline:none}.filters input:focus,.filters select:focus{border-color:#4eb8c8}.search-label{margin-left:auto}.search-label input{min-width:210px}.research-grid{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:13px}.research-card{background:#101d2d;border:1px solid #27384d;border-radius:11px;padding:19px}.research-card h2{font-size:16px;margin:0 0 6px;color:#eef6ff}.research-card .chain{margin:0 0 17px}.research-stat{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid #26364a;font-size:11px;color:#8ba1b6}.research-stat b{color:#d9e7f2}.note-box{display:flex;gap:14px;border:1px solid #2b4760;background:#122337;border-radius:10px;padding:17px 19px;color:#a2b8c9;font-size:12px;line-height:1.6;margin-top:24px}.note-box strong{color:#e3f3fb}.note-box p{margin:3px 0 0}.note-icon{flex:none;width:23px;height:23px;border-radius:50%;border:1px solid #4b94a8;color:#71c9dc;text-align:center;font-weight:700}.note-box code{color:#93dce0;font-size:11px}.back{margin-bottom:20px}.token-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.token-heading h1{font-size:25px;color:#eef7ff;overflow-wrap:anywhere}.token-id{font:11px ui-monospace,Consolas,monospace;color:#87a0b8;overflow-wrap:anywhere}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.detail-box{border:1px solid #293b50;background:#111f30;border-radius:9px;padding:16px;min-width:0}.detail-box span{font-size:10px;color:#7b94ad;display:block;margin-bottom:7px}.detail-box strong{font-size:12px;color:#dce9f5;overflow-wrap:anywhere}.detail-title{font-size:18px;color:#e6f2fb;margin:27px 0 13px}.timeline{display:flex;gap:10px;overflow:auto}.timeline-item{flex:1;min-width:160px;background:#132238;border:1px solid #2c425a;border-radius:9px;padding:15px}.timeline-item h3{color:#77d6dd;font-size:12px;margin:0 0 13px}.timeline-item p{display:flex;justify-content:space-between;gap:7px;font-size:11px;color:#87a0b6}.timeline-item b{color:#e1eefa}.mini-bars{display:flex;align-items:end;gap:4px;height:100px;padding:10px;background:#101c2b;border:1px solid #26384e;border-radius:8px}.mini-bars span{flex:1;background:linear-gradient(#59cbcf,#266078);min-height:2px;border-radius:3px 3px 0 0}footer{border-top:1px solid #1c2a3c;color:#5d748a;padding:20px 36px;font-size:10px;letter-spacing:.1em}footer span{padding:0 10px;color:#365269}@media(max-width:1300px){.platform-grid,.research-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){.shell{display:block}.sidebar{position:static;width:auto;height:auto;padding:12px 16px}.brand{padding:0 0 12px}.sidebar nav{display:flex;overflow:auto}.nav-item{white-space:nowrap}.side-label,.sidebar-bottom{display:none}.topbar{padding:0 18px}.top-right{gap:8px}.top-right #last-refresh,.top-divider{display:none}main{padding:24px 16px}.platform-grid,.research-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.platform-grid,.research-grid{grid-template-columns:1fr}.heading{display:block}.refresh-note{margin-top:15px}.search-label{margin-left:0}.search-label input{min-width:180px}.topbar{height:54px}.breadcrumb{font-size:9px}footer{padding:20px 16px}}
/*
 * Light dashboard palette.
 * Layout and breakpoints remain defined above; these rules only change
 * surfaces, typography, borders, focus treatment, and status colors.
 */
:root {
  color: #172436;
  background: #ffffff;
  color-scheme: light;
}
body { background: #ffffff; }
::selection { background: #b9edf0; color: #123142; }

/* Navigation and page chrome */
.sidebar {
  background: #f8fafc;
  border-right-color: #dce4ec;
}
.brand { color: #4b6379; }
.brand strong { color: #12243a; }
.brand-icon {
  border-color: #87cbd2;
  color: #0d7380;
  box-shadow: 0 0 0 4px #e5f6f8;
}
.side-label, .eyebrow, .breadcrumb { color: #52677d; }
.nav-item { color: #354b60; }
.nav-item:hover, .nav-item.active {
  background: #e4f4f6;
  color: #0d5864;
}
.nav-item.active { box-shadow: inset 3px 0 #0c8a99; }
.sidebar-bottom {
  border-top-color: #dce4ec;
  color: #18764f;
}
.sidebar-bottom small { color: #52677d; }
.side-dot, .pulse {
  background: #20a66a;
  box-shadow: 0 0 0 3px #d9f5e8;
}
.topbar {
  background: #ffffff;
  border-bottom-color: #dce4ec;
}
.breadcrumb span { color: #21364b; }
.top-right, .refresh-note { color: #52677d; }
.top-divider { background: #cfdae5; }
.heading h1 { color: #14263b; }
.heading p { color: #4b6075; }
.section-heading h2, .detail-title { color: #183047; }
.text-button { color: #0a6874; }
.text-button:hover { color: #084c56; }
.text-button:focus-visible,
.nav-item:focus-visible,
.token-link:focus-visible {
  outline: 2px solid #0b8391;
  outline-offset: 3px;
}

/* Evidence status colors retain their meaning on white. */
.pill.good {
  color: #166534;
  border-color: #a7dfba;
  background: #ebf9ef;
}
.pill.warn {
  color: #92400e;
  border-color: #f2d399;
  background: #fff7e8;
}
.pill.bad {
  color: #b4232d;
  border-color: #efb3b6;
  background: #fff0f0;
}
.pill.neutral {
  color: #465c72;
  border-color: #cfdae5;
  background: #f2f6f9;
}
.alert {
  border-color: #e6aaa8;
  background: #fff1f0;
  color: #9f2525;
}

/* Platform and research cards */
.platform-card, .research-card, .detail-box, .timeline-item {
  background: #ffffff;
  border-color: #dce4ec;
  box-shadow: 0 1px 3px #18283a0d;
}
.platform-card:hover { border-color: #86bac3; }
.platform-name, .research-card h2 { color: #183047; }
.chain { color: #52677d; }
.metric-main strong { color: #14263b; }
.metric-main span, .metric-row, .research-stat,
.detail-box span, .timeline-item p { color: #4b6075; }
.metric-row, .research-stat { border-top-color: #e4eaf0; }
.metric-row b, .research-stat b, .detail-box strong,
.timeline-item b { color: #20384f; }
.card-warning { color: #9a431b; }
.timeline-item h3 { color: #0a6874; }
.token-heading h1 { color: #14263b; }
.token-id { color: #4b6075; }

/* Data tables, filtering, and empty states */
.table-card {
  background: #ffffff;
  border-color: #dce4ec;
  box-shadow: 0 1px 3px #18283a0d;
}
.data-table th {
  color: #40566c;
  background: #f2f6fa;
  border-bottom-color: #dce4ec;
}
.data-table td {
  color: #334b61;
  border-bottom-color: #e4eaf0;
}
.data-table tr:hover td { background: #f0f8fa; }
.data-table td strong { color: #172f46; }
.data-table td small { color: #52677d; }
.data-table .token-link { color: #0a6874; }
.null { color: #596e82 !important; }
.signal-tag {
  border-color: #c8d7df;
  color: #40566c;
  background: #f5f8fa;
}
.signal-tag.hit {
  color: #136752;
  border-color: #9bd7c3;
  background: #eaf8f2;
}
.signal-tag.unknown { opacity: 1; color: #596e82; }
.empty { color: #4b6075; }
.empty strong { color: #20384f; }
.filters label { color: #40566c; }
.filters select, .filters input {
  background: #ffffff;
  color: #20384f;
  border-color: #b9c9d8;
}
.filters input::placeholder { color: #5c7185; }
.filters input:focus, .filters select:focus {
  border-color: #0b8391;
  outline: 2px solid #b9e8ed;
  outline-offset: 1px;
}

/* Explanatory panels, charts, and footer */
.note-box {
  border-color: #bdd9e2;
  background: #f1f9fc;
  color: #40596e;
}
.note-box strong { color: #18384d; }
.note-icon { border-color: #75afbd; color: #0a6874; }
.note-box code { color: #0a6874; }
.mini-bars {
  background: #f8fafc;
  border-color: #dce4ec;
}
.mini-bars span { background: linear-gradient(#39b8be, #0b6b80); }
footer {
  border-top-color: #dce4ec;
  color: #52677d;
}
footer span { color: #90a6b8; }

.candidate-data-note {
  padding: 11px 13px;
  border-bottom: 1px solid #dce4ec;
  color: #40596e;
  font-size: 11px;
  line-height: 1.5;
}
.signal-tags { align-items: center; }
.signal-state { color: #52677d; font-size: 10px; white-space: nowrap; }
