:root{
  --bg: #f5fbff;
  --ink: #0b1220;
  --sub: #28405a;
  --accent: #2a66ff;
  --accent-2:#0ea5e9;
  --ok:#16a34a;
  --warn:#f59e0b;
  --bad:#dc2626;
  --chip:#e2e8f0;
  --amber:#fbbf24;
  --card: 18, 216, 255; /* aqua-ish */
}
*{box-sizing:border-box}
html,body{height:100%;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif}
.wrap{min-height:100%;display:grid;place-items:center;padding:24px}
.card{
  width:min(720px, 96vw);
  background: radial-gradient(1200px 600px at 10% 0%, rgba(var(--card),0.32), rgba(255,255,255,0)) , #fff;
  border: 3px solid var(--amber);
  border-radius: 22px;
  padding: 18px 18px 12px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.05);
}
.hero{display:grid;place-items:center;gap:4px;margin-top:6px}
h1{font-weight:800;letter-spacing:.5px;margin:0}
.sub{margin:0;color:var(--sub)}
.logo{margin:6px 0 12px;background:linear-gradient(180deg,#116688,#0b7c8e);border-radius:14px;color:#ffdb6e;padding:14px 18px;font-weight:700;letter-spacing:6px;border:3px solid #c27b0a;}

.mode{display:flex;gap:12px;margin:10px 0 8px}
.btn{
  border:2px solid #3266c5;background:#fff;color:#1e3a8a;
  padding:10px 16px;border-radius:14px;font-weight:600;cursor:pointer
}
.btn.alt{border-color:#1fa6e6;color:#0b5b71}
.btn.primary{background:linear-gradient(180deg,#2a66ff,#0ea5e9);color:#fff;border-color:#2a66ff}
.btn.small{padding:6px 10px;border-radius:8px;font-size:14px}
.btn:focus{outline:3px solid #93c5fd}
.btn[aria-pressed="true"]{box-shadow:0 0 0 3px #93c5fd inset}

.claim{
  width:100%;resize:vertical;border-radius:14px;border:2px solid #cbd5e1;background:#f8fafc;padding:14px 16px;
  font: 17px/1.6 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;color:#0f172a;
}
.actions{display:flex;gap:16px;align-items:center;justify-content:flex-start;margin:14px 0}
.ok{color:var(--ok);font-weight:700}

.panel{border:2px solid #e2e8f0;border-radius:14px;padding:14px;margin:6px 0 4px}
.panel.hidden{display:none}

.meter{margin:6px 0 10px}
.meter-labels{display:flex;justify-content:space-between;font-size:12px;color:#475569;margin-bottom:6px}
.meter-bar{position:relative;height:14px;border-radius:999px;overflow:hidden;
  background:linear-gradient(90deg,#ef4444 0%,#f59e0b 25%,#eab308 45%,#22c55e 75%,#16a34a 100%);}
.meter-bar i{position:absolute;top:-6px;width:2px;height:26px;background:#0b1220;left:0;transition:left .35s ease}

.badge-strip{display:flex;gap:10px;align-items:center;margin:10px 0}
.badge{background:#eab3081a;color:#854d0e;border:2px solid #eab308;padding:6px 10px;border-radius:10px;font-weight:700}
.chip{background:var(--chip);padding:6px 10px;border-radius:10px;color:#334155}

.explain .kicker{margin:6px 0 4px;color:#0b5b71}
.explain p{margin:.3rem 0}
.more summary{cursor:pointer;color:#1e40af;font-weight:600}

.sources h3{margin:12px 0 6px}
.sources ul{margin:0;padding-left:18px}
.linkish{background:none;border:none;color:#1e40af;font-weight:700;cursor:pointer;text-decoration:underline}

.foot{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.ver{color:#64748b}
.sr-only{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}

dialog{border:none;padding:0;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.25)}
.dlg{min-width:min(800px,92vw);background:#fff;border-radius:16px;padding:14px 14px 18px}
.dlg header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.dlg h4{margin:0}
.dlg-body{max-height:min(72vh,800px);overflow:auto}
.dlg-body h4{margin:12px 0 4px}
.dlg-body p{margin:.4rem 0}
.dlg-body code{background:#f1f5f9;padding:2px 6px;border-radius:6px}
