/* RepairOdds: dark scoreboard identity. System fonts only. Spacing scale 4/8/12/16/24/32/48; type scale 14/16/18/20/24/32/44. WCAG 2.2 AA. */
:root{
 --bg:#0b0e13;--bg2:#10151d;--panel:#151b25;--panel2:#1b2330;--line:#323d50;--tx:#f1f4f9;--mut:#b4bfd0;
 --lime:#c8ff2e;--fix:#3ddc97;--flip:#ffb020;--toss:#ff7a8e;--ink:#0a0c10;
 --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;
 --font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:72px}
body{margin:0;background:var(--bg);color:var(--tx);font:1rem/1.6 var(--font);overflow-wrap:break-word}
img,svg{max-width:100%}
a{color:var(--lime);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:#fff}
:focus-visible{outline:3px solid #fff;outline-offset:3px;border-radius:4px;box-shadow:0 0 0 6px #0b0e13}
.sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.skip{position:absolute;left:var(--s4);top:-80px;z-index:20;background:var(--lime);color:var(--ink);padding:var(--s3) var(--s4);border-radius:8px;font-weight:700;text-decoration:none}.skip:focus{top:var(--s2)}
.wrap{max-width:1040px;margin:0 auto;padding:0 var(--s4)}
.small,.sub{font-size:.875rem;color:var(--mut)}
h1,h2,h3{font-family:var(--font);line-height:1.15;margin:0;font-weight:800;letter-spacing:-.01em}
h1{font-size:1.75rem}
h2{font-size:1.5rem;margin:var(--s7) 0 var(--s3)}
h3{font-size:1.125rem}
p{margin:0 0 var(--s3)}
/* top strip + header */
.strip{background:var(--lime);color:var(--ink);font-size:.8125rem;line-height:1.4}
.strip .wrap{padding-top:var(--s2);padding-bottom:var(--s2)}
header.top{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:5}
.bar{display:flex;flex-direction:column;align-items:stretch;gap:var(--s1);padding-top:var(--s2);padding-bottom:var(--s2)}
.top nav ul{justify-content:space-between}
.logo{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-weight:900;font-size:1.375rem;letter-spacing:.02em;line-height:1;color:#fff}
.logo .l2{background:var(--lime);color:var(--ink);padding:3px 7px;margin-left:4px;border-radius:4px}
.top nav ul{display:flex;gap:var(--s1);align-items:center;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.top nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--s2);color:var(--tx);text-decoration:none;font-size:.875rem;font-weight:600;border-radius:8px}
.top nav a:hover{background:var(--panel2);color:#fff}
.top nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}
.top nav .cta{border:1px solid var(--lime);color:var(--lime)}
.hide-s{display:none}.only-s{display:inline}
main{padding-bottom:var(--s6)}
/* hero */
.hero{padding:var(--s6) 0 var(--s2)}
.hero h1{font-size:2.5rem;line-height:1.08;letter-spacing:-.02em;font-weight:900}
.hero .lead{color:var(--mut);font-size:1.0625rem;margin:var(--s3) 0 0;max-width:36rem}
.search{display:flex;margin:var(--s5) 0 0;background:var(--panel);border:2px solid var(--lime);border-radius:12px;overflow:hidden}
.search input{flex:1;min-width:0;min-height:52px;padding:0 var(--s4);font:inherit;border:0;background:transparent;color:var(--tx)}
.search input:focus-visible{outline:none;box-shadow:none}
.search:focus-within{outline:3px solid #fff;outline-offset:3px}
.search input::placeholder{color:#9aa6ba;opacity:1}
button{font:inherit;font-weight:800;background:var(--lime);color:var(--ink);border:0;padding:0 var(--s5);min-height:44px;border-radius:8px;cursor:pointer}
.search button{border-radius:0;padding:0 var(--s5)}
button:hover{background:#dcff6b}
.chips{margin:var(--s4) 0 0;display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center;font-size:.875rem;color:var(--mut)}
.chips a{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--s3);border:1px solid var(--line);border-radius:99px;text-decoration:none;color:var(--tx);font-size:.875rem}.chips a:hover{border-color:var(--lime)}
#results{list-style:none;margin:var(--s3) 0 0;padding:0;display:grid;gap:var(--s2)}
#results a,#results .soon{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);min-height:56px;padding:var(--s3) var(--s4);background:var(--panel);border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--tx)}
#results a:hover{border-color:var(--lime)}
#results .rl{display:grid;gap:2px;min-width:0}#results .rs{font-size:.8125rem;color:var(--mut)}
#results .tag{font-size:.8125rem;font-weight:700;padding:4px 10px;border-radius:6px;background:#26303f;color:var(--tx);white-space:nowrap}
#results .tag.fix{background:var(--fix);color:var(--ink)}#results .tag.flip{background:var(--flip);color:var(--ink)}#results .tag.toss{background:var(--toss);color:var(--ink)}
#results .soon{color:var(--mut)}
/* sections + tiles (stacked on mobile, grid on wide screens; no sideways scrolling) */
.row-h{margin:var(--s7) 0 var(--s4)}.row-h h2{margin:0 0 var(--s1)}.row-h p{margin:0;color:var(--mut)}
.tiles{display:grid;gap:var(--s4);list-style:none;margin:0;padding:0}
.tile{--c:var(--flip);position:relative;display:flex;flex-direction:column;gap:var(--s2);padding:var(--s4);border-radius:12px;background:var(--panel);border:1px solid var(--line);border-left:6px solid var(--c)}
.tile.fix{--c:var(--fix)}.tile.flip{--c:var(--flip)}.tile.toss{--c:var(--toss)}
.tile:hover{background:var(--panel2)}
.tile:focus-within{outline:3px solid #fff;outline-offset:3px}
.t-head{display:flex;align-items:baseline;gap:var(--s3)}
.t-score{font-size:2.5rem;line-height:1;font-weight:900;color:var(--c)}
.t-band{font-size:.8125rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--tx)}
.t-name{font-size:1.125rem;margin:0}
.t-link{color:var(--tx);text-decoration:none}.t-link:hover{color:#fff;text-decoration:underline}
.t-link:focus-visible{outline:none;box-shadow:none}
.t-link::after{content:"";position:absolute;inset:0;border-radius:12px}
.t-sym{margin:0;font-size:.875rem;color:var(--mut)}
.t-paths{list-style:none;margin:var(--s1) 0 0;padding:0;display:grid;gap:var(--s2);font-size:.875rem}
.t-paths li{display:grid;grid-template-columns:3rem 2.25rem 1fr;gap:var(--s2);align-items:baseline;padding-top:var(--s2);border-top:1px solid var(--line)}
.t-paths .k{font-weight:700;color:var(--mut)}.t-paths .n{font-weight:800;font-size:1rem}
.t-paths .d{color:var(--tx)}.t-paths .d small{display:block;color:var(--mut);font-size:.8125rem}
.t-paths .na{grid-template-columns:3rem 1fr;color:var(--mut)}
.t-best{margin:0;font-size:.8125rem;color:var(--mut)}
.t-vs{margin:var(--s1) 0 0;font-size:.8125rem;color:var(--mut)}
/* how3 + cards */
.how3{display:grid;gap:var(--s4);margin:0;padding:0;list-style:none}
.how3 li{padding:var(--s4);border:1px solid var(--line);border-radius:12px;background:var(--bg2)}
.how3 h3{margin:0 0 var(--s1)}.how3 p{margin:0;color:var(--mut);font-size:.9375rem}
.note{margin-top:var(--s4);color:var(--mut);font-size:.9375rem}
.cards{display:grid;gap:var(--s4)}
.card{display:block;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:var(--s4) var(--s5);text-decoration:none;color:var(--tx)}.card:hover{border-color:var(--lime)}.card h3{margin:0}.card p{margin:var(--s1) 0 0;color:var(--mut);font-size:.9375rem}
.slot{border:1px solid var(--line);border-radius:12px;background:var(--bg2);padding:var(--s5);margin:var(--s7) 0 0}
.slot h2{font-size:1.125rem;margin:0 0 var(--s2)}.slot h2:before{display:none}.slot p{margin:0}
/* model page */
.crumbs{font-size:.875rem;color:var(--mut);margin:var(--s4) 0 var(--s3)}.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--s2)}.crumbs li+li:before{content:"/";margin-right:var(--s2);color:var(--mut)}.crumbs a{color:var(--mut);display:inline-block;padding:var(--s2) 0}
.mh h1{font-size:1.75rem;line-height:1.12;margin:var(--s2) 0 var(--s5);font-weight:900}
.chip{display:inline-block;font-size:.8125rem;font-weight:700;padding:3px 10px;border-radius:6px;background:#26303f;color:var(--tx)}.chip.cat{background:var(--lime);color:var(--ink)}
.verdict{--c:var(--flip);background:var(--panel);border:1px solid var(--line);border-top:6px solid var(--c);border-radius:12px;padding:var(--s5) var(--s4)}
.verdict.fix{--c:var(--fix)}.verdict.flip{--c:var(--flip)}.verdict.toss{--c:var(--toss)}
.g-lab{display:flex;gap:var(--s2) var(--s4);flex-wrap:wrap;align-items:center;justify-content:space-between;font-size:.875rem;color:var(--mut);margin-bottom:var(--s3)}
.takeaway{margin:0 0 var(--s2);font-size:1.375rem;line-height:1.2;font-weight:900}
.takeaway span{display:block;margin-top:var(--s2);font-size:1rem;line-height:1.5;font-weight:500;color:var(--tx)}
.verdict .oneliner{margin:0 0 var(--s5);color:var(--mut)}
.two-scores{display:grid;gap:var(--s3)}
.sp{--c:#5a6a82;background:var(--bg);border:1px solid var(--line);border-top:4px solid var(--c);border-radius:10px;padding:var(--s4);min-width:0}
.sp.fix{--c:var(--fix)}.sp.flip{--c:var(--flip)}.sp.toss{--c:var(--toss)}
.sp.best{box-shadow:0 0 0 2px var(--c)}
.sp-k{font-size:.875rem;font-weight:800;display:flex;gap:var(--s2);align-items:center;flex-wrap:wrap;margin:0}
.sp-k em{font-style:normal;font-size:.75rem;background:var(--lime);color:var(--ink);padding:2px 8px;border-radius:99px}
.sp-n{display:flex;align-items:baseline;gap:var(--s1);margin-top:var(--s2)}.sp-n .n{font-size:3.5rem;line-height:1;font-weight:900;color:var(--c)}.sp-n .n.na{font-size:1.5rem;color:var(--mut)}.sp-n .of{font-size:1rem;color:var(--mut)}
.sp-b{display:inline-block;font-size:.8125rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);background:var(--c);padding:3px 10px;border-radius:6px;margin:var(--s2) 0 var(--s3)}
.sp-cap{margin:0 0 var(--s3);padding:var(--s2) var(--s3);border:1px dashed var(--c);border-radius:8px;font-size:.875rem;line-height:1.4}
.meter{position:relative;height:10px;background:#2a3445;border-radius:99px;overflow:hidden}.meter .fill{position:absolute;inset:0 auto 0 0;background:var(--c);border-radius:99px}.meter .tick{position:absolute;top:0;bottom:0;width:2px;background:var(--bg)}
.sp-l{list-style:none;margin:var(--s3) 0 0;padding:0;font-size:.9375rem}.sp-l li{margin:var(--s1) 0}.sp-l b{font-size:1.0625rem}.sp-l .sub{font-size:.875rem}
.repl-strip{margin-top:var(--s3);padding:var(--s3) var(--s4);border-radius:10px;background:var(--bg2);border:1px solid var(--line);display:flex;gap:var(--s1) var(--s3);flex-wrap:wrap;align-items:baseline}.repl-strip b{font-size:1.25rem}.vs-k{font-size:.8125rem;font-weight:700;letter-spacing:.06em;color:var(--mut)}
.verdict .lean{margin:var(--s4) 0 0;font-size:.875rem;color:var(--mut)}
details.how{margin-top:var(--s4);border-top:1px solid var(--line);padding-top:var(--s3)}
details summary{cursor:pointer;font-weight:700;color:var(--lime);min-height:44px;display:flex;align-items:center}
.how-b{font-size:.9375rem;color:var(--tx)}.how-b ul{padding-left:var(--s5)}.how-b li{margin:var(--s2) 0}.mono{font-family:var(--mono);font-size:.875rem}
/* failure board */
.board{list-style:none;margin:var(--s3) 0 0;padding:0;display:grid;gap:var(--s3)}
.board li{display:grid;grid-template-columns:2rem 1fr;gap:var(--s2) var(--s3);background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:var(--s4)}
.rank{font-size:1.5rem;line-height:1;font-weight:900;color:var(--mut);grid-row:1/3}
.lbl{justify-self:start;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:6px;background:#26303f;color:var(--tx)}
.l-very-common{background:var(--toss);color:var(--ink)}.l-common{background:var(--flip);color:var(--ink)}.l-reported{background:#34476a;color:#fff}.l-thin-evidence{background:transparent;border:1px dashed var(--mut);color:var(--mut)}
.f-body{grid-column:2}.f-body p{margin:var(--s1) 0;font-size:.9375rem}.f-body .fx{color:var(--lime)}.ev{font-size:.875rem!important;color:var(--mut)}.ev a{color:var(--mut)}
.two{display:grid;gap:var(--s2)}.two>*{min-width:0}.checks{padding-left:var(--s5);margin:var(--s3) 0}.checks li{margin:var(--s2) 0}
.guides{list-style:none;padding:0;margin:var(--s3) 0;display:grid;gap:var(--s2)}.gbtn{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s3);align-items:center;min-height:48px;padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:10px;background:var(--panel);text-decoration:none;color:var(--tx);font-weight:600}.gbtn:hover{border-color:var(--lime)}.gbtn span{color:var(--lime);font-size:.875rem}
/* tables */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
table{border-collapse:collapse;width:100%;font-size:.9375rem;background:var(--panel)}
th,td{padding:var(--s3);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{font-size:.8125rem;font-weight:700;color:var(--mut);background:var(--bg2)}
tr:last-child td{border-bottom:0}.prices .pr{font-weight:700;white-space:nowrap}.prices tr.repl td{background:rgba(255,176,32,.08)}
.src{display:block;margin-top:var(--s1);font-size:.8125rem;color:var(--mut)}
label{display:block;margin:var(--s4) 0 var(--s1);font-weight:600}
input,textarea,select{width:100%;min-height:44px;font:inherit;padding:var(--s3);border:1px solid #6b7a92;border-radius:8px;background:var(--panel);color:var(--tx)}
.faq{border-bottom:1px solid var(--line);padding:0}.faq p{margin:0 0 var(--s4);color:var(--tx)}
.sources{font-size:.9375rem;padding-left:var(--s5)}.sources li{margin:var(--s2) 0}.verified{color:var(--fix);font-size:.9375rem;font-weight:600}
.lead{font-size:1.125rem}.formula{font-weight:700;background:var(--panel);border:1px solid var(--line);border-left:6px solid var(--lime);padding:var(--s4);border-radius:8px}
.t-fix{color:var(--fix)}.t-flip{color:var(--flip)}.t-toss{color:var(--toss)}
.h1s{font-size:2rem;font-weight:900;margin:var(--s2) 0 var(--s3)}
.ex{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:var(--s2) var(--s4);margin:var(--s3) 0}.ex p{margin:var(--s2) 0}
.howlink{white-space:nowrap}
footer{margin-top:var(--s7);padding:var(--s5) 0 var(--s7);border-top:1px solid var(--line);background:var(--bg2);font-size:.875rem;color:var(--mut)}footer p{margin:0 0 var(--s3)}footer a{color:var(--lime)}
@media(min-width:720px){
 .wrap{padding:0 var(--s5)}
 .top nav a{padding:0 var(--s3);font-size:.9375rem}
 .bar{flex-direction:row;align-items:center;justify-content:space-between;min-height:64px}.top nav ul{justify-content:flex-end}
 .hide-s{display:inline}.only-s{display:none}
 h1{font-size:2.25rem}.hero h1{font-size:3.5rem}.hero{padding-top:var(--s7)}.hero .lead{font-size:1.1875rem}
 .tiles{grid-template-columns:repeat(2,1fr)}
 .how3{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:repeat(2,1fr)}
 .mh h1{font-size:2.5rem}
 .verdict{padding:var(--s6)}.takeaway{font-size:1.75rem}
 .two-scores{grid-template-columns:1fr 1fr;gap:var(--s4)}.sp{padding:var(--s5)}.sp-n .n{font-size:4.5rem}
 .board li{grid-template-columns:2.5rem 9rem 1fr;align-items:start}.rank{grid-row:auto}.f-body{grid-column:auto}
 .two{grid-template-columns:1fr 1fr;gap:var(--s6)}
 .h1s{font-size:2.5rem}
}
@media(min-width:1000px){.tiles.four{grid-template-columns:repeat(4,1fr)}.tiles.three{grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:no-preference){.tile,.card,.gbtn,button{transition:background-color .15s,border-color .15s}}
@media(forced-colors:active){.sp,.tile,.meter{border:1px solid CanvasText}.meter .fill{background:Highlight}}
