:root{
  --bg:#ffffff;
  --surface:#f9fafb;
  --text:#0f172a;
  --muted:#6b7280;
  --border:#e5e7eb;
  --accent:#CE6632;
  --accent-2:#732E0C;
  --shadow:0 2px 6px rgba(0,0,0,.08), 0 8px 24px rgba(0,0,0,.08);
  --shadow-sm:0 6px 16px rgba(0,0,0,.06);
  --radius:18px;
  --maxw:1180px;
  --grad-a:var(--accent);
  --grad-b:var(--accent-2);
  --ok:#10b981;
  --warn:#f59e0b;
  --bad:#ef4444;
}
*,*::before,*::after{box-sizing:border-box}
html,body{height:100%}
body{margin:0; font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji"; color:var(--text); background:var(--bg)}
a{color:inherit; text-decoration:none}
.container{max-width:var(--maxw); margin:0 auto; padding:0 20px}
.skip-link{position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden}
.skip-link:focus{left:16px; top:16px; width:auto; height:auto; background:#fff; color:#000; padding:8px 12px; border-radius:8px; box-shadow:var(--shadow)}
header{position:sticky; top:0; z-index:40; background:#fff; border-bottom:1px solid var(--border)}
@media (prefers-color-scheme: dark){header{background:linear-gradient(180deg, rgba(17,22,29,.7), rgba(17,22,29,.5))}}
.nav{display:flex; align-items:center; justify-content:space-between; padding:12px 0}
.masthead{line-height:0; border-bottom:1px solid var(--border); padding:0}
.masthead img{width:100%; height:clamp(220px,38vw,480px); object-fit:cover; object-position:top center; display:block}
.brand{display:flex; align-items:center; gap:12px; font-weight:800; letter-spacing:.3px}
.brand-badge{width:36px; height:36px; border-radius:12px; background:linear-gradient(135deg, var(--accent), var(--accent-2)); box-shadow:var(--shadow); display:grid; place-items:center}
.brand-badge svg{filter:drop-shadow(0 2px 6px rgba(0,0,0,.25))}
.nav a{padding:8px 12px; border-radius:10px}
.nav a[aria-current="page"], .nav a:hover{background:#f5f5f5}
/* Hero */
.hero{position:relative; padding:28px 0; overflow:hidden}
.hero-bg{display:none}
.hero-wrap{position:relative}
.eyebrow{display:inline-flex; align-items:center; gap:.5rem; font-size:.9rem; color:var(--muted); background:#f8fafc; padding:6px 10px; border-radius:999px; border:1px solid var(--border)}
.hero h1{font-size:clamp(2.1rem,4vw,3.2rem); line-height:1.1; margin:14px 0 12px; letter-spacing:-.02em}
.hero p{font-size:clamp(1rem,2vw,1.125rem); color:var(--muted); max-width:60ch}
.ad-slot{display:flex; justify-content:center; padding:0 0 24px; margin:0 auto; max-width:min(100%, 960px)}
.ad-slot2{display:flex; justify-content:center; padding:24px 0; margin:0 auto; max-width:min(100%, 960px)}
.content-layout{display:flex; gap:24px; align-items:flex-start; max-width:var(--maxw); margin:0 auto; padding:0 20px 24px}
.content-layout .container{max-width:100%; padding:0}
.content-main{flex:1; min-width:0}
.ad-rail{display:flex; justify-content:flex-end; padding:0 0 24px; flex:0 0 160px}
.ad-rail .adsbygoogle{display:block}
body.mock-ads .adsbygoogle{display:flex; align-items:center; justify-content:center; background:repeating-linear-gradient(135deg, rgba(148,163,184,.2) 0, rgba(148,163,184,.2) 10px, rgba(226,232,240,.45) 10px, rgba(226,232,240,.45) 20px); border:1px dashed #cbd5f5; color:var(--muted); font-size:.85rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; position:relative}
body.mock-ads .adsbygoogle::after{content:"Mock ad"; position:absolute}
.grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:start}
@media (max-width:900px){.grid{grid-template-columns:1fr}}
@media (max-width:900px){.ad-rail{display:none}}
@media (max-width:900px){.content-layout{display:block; padding:0}}
@media (max-width:900px){.content-layout .container{padding:0 20px}}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}
.card .body{padding:20px}
.card h2{margin:0 0 12px;font-size:clamp(20px,2.5vw,26px)}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.seg{display:inline-flex;border-radius:999px;background:#f3f4f6;border:1px solid #e5e7eb; overflow:hidden}
.seg button{appearance:none;border:0;background:transparent;padding:8px 14px;font:inherit;cursor:pointer;color:#374151}
.seg button.active{background:linear-gradient(135deg,var(--grad-a),var(--grad-b)); color:#fff}
label{display:block;margin:.5rem 0 .3rem;font-weight:600}
input,select{width:100%;padding:12px 14px;border-radius:10px;border:1px solid #e5e7eb;box-shadow:var(--shadow-sm)}
.row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.row3{display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px}
.hint{color:var(--muted);font-size:.92rem;margin-top:6px}
.quick{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}
.chipbtn{border:1px solid #e5e7eb;background:#fff;border-radius:999px;padding:6px 10px;cursor:pointer}
.result{display:flex;align-items:center;gap:14px;margin-top:14px;padding:14px;border-radius:12px;background:#f9fafb;border:1px solid #eef2f7;flex-wrap:wrap}
.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;background:#fff;border:1px solid #e5e7eb;box-shadow:var(--shadow-sm)}
.result#resultBox{background:linear-gradient(135deg, rgba(206,102,50,.12), rgba(115,46,12,.08)); border:1px solid rgba(206,102,50,.2); box-shadow:var(--shadow); align-items:flex-start; padding:18px}
.result#resultBox .result-main{flex:1; min-width:220px}
.result#resultBox .result-kicker{margin:0; font-weight:700; color:var(--accent-2); letter-spacing:.01em}
.result#resultBox .result-time{margin:2px 0; font-size:clamp(28px, 5vw, 36px); font-weight:800; letter-spacing:-.02em}
.result#resultBox .result-delta{margin:0; color:var(--accent-2); font-weight:700}
.result#resultBox .stat-pill{display:grid; grid-template-columns:1fr 1fr; gap:12px; width:100%; align-items:start; border-radius:14px; padding:12px 14px}
.result#resultBox .stat-pill strong{display:block; font-size:.95rem; margin-bottom:4px}
.result#resultBox .stat-pill div{min-width:140px}
.result#resultBox .stat-pill div:last-child{text-align:right}
.result#resultBox .stat-pill div:last-child strong{text-align:right}
.result#resultBox .stat-pill .stat-right{text-align:right}
.result#resultBox .stat-pill .stat-right strong{text-align:right}
.range{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
.badge{padding:10px;border-radius:12px;background:#fff;border:1px solid #eee;text-align:center}
.badge small{display:block;color:var(--muted)}
table{width:100%;border-collapse:collapse}
th,td{padding:10px;border-bottom:1px solid #eee;text-align:left}
th{background:#fafafa}
.score{font-weight:700}
.score.ok{color:var(--ok)}
.score.warn{color:var(--warn)}
.score.bad{color:var(--bad)}
.prose h3{margin-top:0}
.prose p{line-height:1.6}
.related{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #eee}
.chip a{text-decoration:none;color:#111}
.chip .dot{width:8px;height:8px;border-radius:999px;background:var(--accent)}
.section-spacing{margin-top:22px}
.section-compact{margin-top:12px}
.next-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}
.next-links a{display:block;padding:12px 14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;box-shadow:var(--shadow-sm)}
.next-links a strong{display:block;margin-bottom:4px}
.quick-note{margin:6px 0 12px;color:var(--muted);font-size:.92rem}
.table-title{margin:12px 0 6px}
.caption-note{caption-side:bottom;text-align:left;color:var(--muted);font-size:.92rem}
footer{margin-top:36px;padding:28px 0 40px;border-top:1px solid var(--border);color:var(--muted)}
footer a{color:inherit}
.made{display:flex;gap:8px;align-items:center}
