/* generated from pricesignal/tokens.py + blueprint section 05 */
:root{
--ps-ink:#14213D;--ps-amber:#F59F0B;--ps-amber-hot:#FCA311;--ps-paper:#EEF1F6;
--ps-card:#FFFFFF;--ps-line:#D8DEEA;--ps-mut:#5A6478;--ps-ghost:#9AA7C4;--ps-pass:#16A34A;
--ps-pm-ink:#1B2430;--ps-pm-link:#1A63C8;--ps-pm-best:#0E7A46;--ps-pm-line:#E4E7EC;
--ps-pm-mut:#7A8494;--ps-pm-ghost:#98A1B0;--ps-pm-panel:#FAFBFC;--ps-pm-hot:#B45309;
--ps-pay-bg:#FFF4DE;--ps-pay-text:#8A5A00;--ps-pay-line:#F2C87B;--ps-slot-bg:#FFFBF2;
--ps-best-bg:#E8F5EE;--ps-best-line:#BBE2CC;--ps-verdict-low-bg:#E8F5EE;
--ps-verdict-low-line:#BBE2CC;--ps-verdict-mid-bg:#FFF4DE;--ps-verdict-mid-line:#F2C87B;
--ps-verdict-high-bg:#FDECEA;--ps-verdict-high-line:#F3C3BD;--ps-verdict-high-text:#B42318;
--ps-zone-low:#5FC98C;--ps-zone-mid:#F7CE68;--ps-zone-high:#E97C70;
--ps-font-display:Georgia,"Times New Roman",serif;
--ps-font-body:ui-sans-serif,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
--ps-font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--ps-radius-chip:5px;
--ps-radius-button:7px;--ps-radius-input:8px;--ps-radius-panel:10px;--ps-radius-card:12px;
--ps-radius-frame:14px;--ps-radius-pill:999px;--ps-space-row-y:12px;--ps-space-row-x:14px;
--ps-space-inner-y:18px;--ps-space-inner-x:22px;--ps-space-card-pad:20px 22px;
--ps-space-section:26px;--ps-space-gap:22px;--ps-space-wrap:1180px;--ps-space-wrap-pad:28px;
--ps-track-chip:.08em;--ps-track-head:.14em;--ps-track-kicker:.16em;
--ps-track-eyebrow:.24em;--ps-track-tight:-.01em;
--ps-shadow-frame:0 10px 30px rgba(20,33,61,.08);
--ps-shadow-chip:0 2px 6px rgba(20,33,61,.22);--ps-button-text:#231703;
}

*{box-sizing:border-box;margin:0;padding:0}
body{background:#fff;color:var(--ps-pm-ink);
font:15px/1.5 var(--ps-font-body)}
a{color:var(--ps-pm-link)}
.wrap{max-width:var(--ps-space-wrap);margin:0 auto;padding:0 var(--ps-space-wrap-pad)}

/* ---- masthead (blueprint .util / .mast / nav) ---- */
.util{display:flex;justify-content:space-between;font-size:11px;color:var(--ps-pm-mut);
border-bottom:1px solid var(--ps-pm-line);padding:7px 0}
.util a{color:var(--ps-pm-mut);text-decoration:underline}
.mast{display:flex;align-items:center;gap:26px;padding:18px 0 14px}
.logo{font-family:var(--ps-font-display);font-size:27px;font-weight:700;
letter-spacing:var(--ps-track-tight)}
.logo span{color:var(--ps-amber-hot)}
.tagline{font-size:11.5px;color:var(--ps-pm-mut);margin-top:-2px}
.search{flex:1;max-width:460px;border:2px solid var(--ps-pm-ink);
border-radius:var(--ps-radius-input);padding:9px 14px;font-size:13px;
color:var(--ps-pm-mut);display:flex;justify-content:space-between}
nav{display:flex;gap:20px;font-size:13px;font-weight:700;
border-top:1px solid var(--ps-pm-line);border-bottom:1px solid var(--ps-pm-line);padding:10px 0}
nav a{color:var(--ps-pm-ink);text-decoration:none}
nav a.hot{color:var(--ps-pm-hot)}

/* ---- product head (blueprint .pp) ---- */
.inner{padding:var(--ps-space-inner-y) 0 0}
.crumbs{font-size:11px;color:var(--ps-pm-ghost);margin:14px 0 12px}
.pp{display:grid;grid-template-columns:1fr 1.35fr;gap:var(--ps-space-gap)}
.ph{background:linear-gradient(135deg,#DCE4EF,#C7D3E4);color:#6B7A92;display:flex;
align-items:center;justify-content:center;font-size:12px;letter-spacing:var(--ps-track-chip);
height:250px;border-radius:var(--ps-radius-card)}
.ph.shot{background:#fff;border:1px solid var(--ps-pm-line);padding:16px}
.ph img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pp h2{font-family:var(--ps-font-display);font-size:24px;font-weight:700;line-height:1.2}
.brand{font-size:12px;color:var(--ps-pm-mut);margin:4px 0 14px}

/* ---- verdict panel: an extension built from the same tokens ---- */
.vp{border:1px solid var(--ps-pm-line);border-radius:var(--ps-radius-card);
padding:16px 18px;margin-bottom:16px;background:var(--ps-pm-panel)}
.vp.low{background:var(--ps-verdict-low-bg);border-color:var(--ps-verdict-low-line)}
.vp.typical{background:var(--ps-verdict-mid-bg);border-color:var(--ps-verdict-mid-line)}
.vp.high{background:var(--ps-verdict-high-bg);border-color:var(--ps-verdict-high-line)}
.vhead{display:flex;gap:7px;align-items:center;margin-bottom:8px}
.tierchip{font-size:var(--ps-fs-chip,10.5px);font-weight:800;
letter-spacing:var(--ps-track-chip);text-transform:uppercase;
border-radius:var(--ps-radius-chip);padding:2px 8px;background:#fff}
.low .tierchip{color:var(--ps-pm-best);border:1px solid var(--ps-verdict-low-line)}
.typical .tierchip{color:var(--ps-pay-text);border:1px solid var(--ps-verdict-mid-line)}
.high .tierchip{color:var(--ps-verdict-high-text);border:1px solid var(--ps-verdict-high-line)}
.vtitle{font-family:var(--ps-font-display);font-size:21px;font-weight:700;
line-height:1.28;margin-bottom:6px}
.vtitle em{font-style:normal}
.low .vtitle em{color:var(--ps-pm-best)}
.typical .vtitle em{color:var(--ps-pay-text)}
.high .vtitle em{color:var(--ps-verdict-high-text)}
.vsub{font-size:12.5px;color:var(--ps-mut)}
.vrange{position:relative;padding-top:34px;margin-top:16px}
.vtrack{display:flex;height:10px;border-radius:6px;overflow:hidden;position:relative;
background:#fff;box-shadow:inset 0 0 0 1px rgba(20,33,61,.08)}
.z{display:block;height:100%}
.z.low{background:var(--ps-zone-low)}
.z.mid{background:var(--ps-zone-mid)}
.z.high{background:var(--ps-zone-high)}
.z+.z{box-shadow:-1px 0 0 rgba(255,255,255,.9)}
.vdot{position:absolute;top:50%;width:16px;height:16px;border-radius:50%;background:#fff;
border:4px solid var(--ps-ink);transform:translate(-50%,-50%);
box-shadow:0 2px 5px rgba(20,33,61,.3);z-index:2}
.vcall{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.vcall.er{transform:translateX(-100%)}
.vcall.el{transform:translateX(0)}
.vcall span{background:var(--ps-ink);color:#fff;font-size:11.5px;font-weight:800;
letter-spacing:.02em;padding:4px 10px;border-radius:var(--ps-radius-chip);
display:inline-block;box-shadow:var(--ps-shadow-chip)}
.vcall span:after{content:"";position:absolute;left:50%;bottom:-4px;width:0;height:0;
transform:translateX(-50%);border-left:5px solid transparent;
border-right:5px solid transparent;border-top:5px solid var(--ps-ink)}
.vcall.er span:after{left:auto;right:16px;transform:none}
.vcall.el span:after{left:14px;transform:none}
.vzones{display:flex;margin-top:8px;font-size:10px;font-weight:800;
letter-spacing:var(--ps-track-head);text-transform:uppercase;color:var(--ps-pm-ghost)}
.vzones span{text-align:center;overflow:hidden;white-space:nowrap}
.vticks{position:relative;height:14px;margin-top:5px}
.vticks span{position:absolute;transform:translateX(-50%);font-size:11px;
font-weight:700;color:var(--ps-mut);white-space:nowrap}
.vticks span.er{transform:translateX(-100%)}
.vticks span.el{transform:translateX(0)}
.vp.thin .vprog{height:6px;background:#fff;border-radius:6px;overflow:hidden;margin-top:14px;
box-shadow:inset 0 0 0 1px rgba(20,33,61,.08)}
.vp.thin .vprog i{display:block;height:100%;background:var(--ps-ink);border-radius:6px}
.vlegend{display:flex;justify-content:space-between;font-size:11px;
color:var(--ps-pm-ghost);margin-top:6px}
.kick{font-size:10.5px;font-weight:800;letter-spacing:var(--ps-track-kicker);
text-transform:uppercase;color:var(--ps-pm-hot);margin-bottom:6px}

/* ---- comparison table (blueprint .cmp / .crow / .go / .best) ---- */
.secttl{display:flex;align-items:baseline;justify-content:space-between;
margin:var(--ps-space-section) 0 12px}
.secttl h3{font-family:var(--ps-font-display);font-size:21px;font-weight:700}
.cmp{border:1px solid var(--ps-pm-line);border-radius:var(--ps-radius-card);overflow:hidden}
.cmp .hd{background:var(--ps-pm-panel);font-size:10.5px;
letter-spacing:var(--ps-track-head);text-transform:uppercase;color:var(--ps-pm-ghost);
font-weight:800;padding:9px 14px;border-bottom:1px solid var(--ps-pm-line)}
.crow{display:grid;grid-template-columns:minmax(160px,1fr) auto 104px 118px;
align-items:center;gap:12px;padding:var(--ps-space-row-y) var(--ps-space-row-x);
border-bottom:1px solid var(--ps-pm-line);position:relative}
.crow:last-child{border-bottom:none}
.crow.slot{background:var(--ps-slot-bg);padding-left:32px}
.admark{position:absolute;left:0;top:0;bottom:0;width:20px;background:var(--ps-pay-bg);
border-right:1px solid var(--ps-pay-line);color:var(--ps-pay-text);font-size:9.5px;
font-weight:800;letter-spacing:.06em;display:flex;align-items:center;
justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg)}
.st{font-size:13.5px;font-weight:700}
.spon{display:block;font-size:10.5px;font-weight:400;color:var(--ps-pm-ghost);margin-top:3px;
white-space:nowrap}
.best{display:inline-block;background:var(--ps-best-bg);color:var(--ps-pm-best);
border:1px solid var(--ps-best-line);font-size:10px;font-weight:800;
border-radius:var(--ps-radius-chip);padding:2px 7px;margin-left:8px}
.ship{font-size:11.5px;color:var(--ps-pm-mut);text-align:right}
.warn{display:inline-block;margin-left:6px;padding:1px 6px;
border-radius:var(--ps-radius-chip);background:var(--ps-pay-bg);color:var(--ps-pay-text);
border:1px solid var(--ps-pay-line);font-size:10px;font-weight:800;cursor:help}
.pr{font-size:17px;font-weight:800;text-align:right;font-variant-numeric:tabular-nums}
.go{background:var(--ps-amber-hot);color:var(--ps-button-text);font-size:12px;
font-weight:800;border-radius:var(--ps-radius-button);padding:8px 14px;text-align:center;
text-decoration:none;display:block}
.go.sec{background:#fff;color:var(--ps-pm-ink);border:1px solid var(--ps-pm-line)}
.go.off{color:var(--ps-pm-ghost);background:var(--ps-pm-panel)}
.crow.soon .st{color:var(--ps-pm-ghost);font-weight:500}
.crow.soon .pr{color:var(--ps-pm-ghost)}
.cartnote{font-size:11px;color:var(--ps-pm-mut);padding:10px 14px;
background:var(--ps-pm-panel)}

/* ---- chart (blueprint .chart) ---- */
.chart{background:#fff;border:1px solid var(--ps-pm-line);
border-radius:var(--ps-radius-panel);padding:14px 16px}
.ctop{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.ctitle{font-size:12px;font-weight:800;letter-spacing:var(--ps-track-head);
text-transform:uppercase;color:var(--ps-pm-ghost)}
select{font:inherit;font-size:12.5px;font-weight:700;padding:6px 10px;
border:1px solid var(--ps-pm-line);border-radius:var(--ps-radius-input);
background:#fff;color:var(--ps-pm-ink)}
.ckey{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:11px;
color:var(--ps-pm-mut)}
.ckey i{width:11px;height:3px;border-radius:2px;display:inline-block;
vertical-align:middle;margin-right:5px}
.cempty{padding:34px 10px;text-align:center;color:var(--ps-pm-ghost);font-size:12.5px}
.pmfoot{border-top:1px solid var(--ps-pm-line);margin-top:var(--ps-space-section);
padding:16px 0 48px;font-size:10.5px;color:var(--ps-pm-ghost);line-height:1.6}
@media(max-width:820px){.pp{grid-template-columns:1fr}
.crow{grid-template-columns:1fr auto;row-gap:8px}.pr,.ship{text-align:left}
nav{overflow-x:auto}}

/* ---- site chrome additions (grids, cards, guides, stubs) ---- */
.logo{text-decoration:none;color:var(--ps-pm-ink)}
nav{flex-wrap:wrap}
.crumbs a{color:var(--ps-pm-ghost);text-decoration:none}
.hgrid{display:grid;grid-template-columns:1.6fr 1fr;gap:18px;margin-top:16px}
.slotbox{border:1.5px dashed var(--ps-pay-line);background:var(--ps-slot-bg);
border-radius:var(--ps-radius-panel);position:relative;padding:16px 18px}
.slotbox .tagchip{position:absolute;top:-9px;left:12px;background:var(--ps-pay-bg);
color:var(--ps-pay-text);border:1px solid var(--ps-pay-line);font-size:10.5px;
font-weight:800;letter-spacing:var(--ps-track-chip);border-radius:var(--ps-radius-chip);
padding:2px 8px}
.lead-art{border:1px solid var(--ps-pm-line);border-radius:var(--ps-radius-card);
overflow:hidden;display:block;text-decoration:none;color:var(--ps-pm-ink)}
.lead-art .ph{height:190px;border-radius:0}
.lead-art .body{padding:16px 18px}
.lead-art h3{font-family:var(--ps-font-display);font-size:24px;line-height:1.2;
margin:6px 0 8px;font-weight:700}
.lead-art p{font-size:13px;color:var(--ps-mut)}
.byline{font-size:11px;color:var(--ps-pm-ghost);margin-top:10px}
.fp{display:flex;gap:12px;padding:12px;border-bottom:1px solid var(--ps-pm-line);
align-items:center;text-decoration:none;color:var(--ps-pm-ink)}
.fp:last-child{border-bottom:none}
.fp .ph{width:64px;height:64px;border-radius:var(--ps-radius-input);flex:0 0 auto;
overflow:hidden;font-size:9px}
.fp .ph img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.fp .nm{font-size:13px;font-weight:700;display:block}
.fp .retail{display:block;margin-top:2px}
.fp .pr{font-size:13px;font-weight:800;margin-left:auto}
.whytrust{padding:14px 18px;font-size:12.5px;color:var(--ps-mut)}
.whytrust .kick{color:var(--ps-pm-ghost)}
.drops{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.drop{border:1px solid var(--ps-pm-line);border-radius:var(--ps-radius-card);
padding:12px;position:relative;text-decoration:none;color:var(--ps-pm-ink);
background:#fff}
.drop .ph{height:120px;border-radius:var(--ps-radius-input);margin-bottom:10px;
overflow:hidden;font-size:10px}
.drop .ph img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.drop .nm{font-size:12.5px;font-weight:700;line-height:1.3;min-height:32px;
display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.drop .now{font-size:16px;font-weight:800}
.drop .was{font-size:12px;color:var(--ps-pm-ghost);text-decoration:line-through;
margin-left:6px}
.off{position:absolute;top:20px;left:20px;background:var(--ps-amber-hot);
color:var(--ps-button-text);font-size:11px;font-weight:800;
border-radius:var(--ps-radius-chip);padding:2px 7px;z-index:1}
.retail{font-size:11px;color:var(--ps-pm-mut);margin-top:6px}
.catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.catcard{border:1px solid var(--ps-pm-line);border-radius:var(--ps-radius-card);
padding:18px;text-decoration:none;color:var(--ps-pm-ink);background:#fff}
.catcard h3{font-family:var(--ps-font-display);font-size:19px;font-weight:700}
.catcard .n{font-size:12px;color:var(--ps-pm-ghost);margin-top:4px}
.pager{display:flex;gap:8px;align-items:center;justify-content:center;
margin:26px 0;font-size:13px;font-weight:700}
.pager a{padding:6px 11px;border:1px solid var(--ps-pm-line);
border-radius:var(--ps-radius-button);text-decoration:none;color:var(--ps-pm-ink)}
.pager b{padding:6px 11px;background:var(--ps-ink);color:#fff;
border-radius:var(--ps-radius-button)}
.pager span{color:var(--ps-pm-ghost)}
.draftbar{background:#B42318;color:#fff;font-weight:800;font-size:12.5px;
letter-spacing:.08em;text-transform:uppercase;text-align:center;
padding:10px 16px;border-radius:var(--ps-radius-input);margin:14px 0 18px}
.guide{max-width:72ch}
.guide h1{font-family:var(--ps-font-display);font-size:34px;line-height:1.15;
margin:6px 0 8px}
.guide h3{font-family:var(--ps-font-display);font-size:22px;margin:26px 0 8px}
.guide h4{font-size:15px;margin:18px 0 6px}
.guide p{margin:10px 0;color:var(--ps-pm-ink)}
.guide ul{margin:10px 0 10px 22px}
.guide li{margin:5px 0}
.gp{display:flex;gap:14px;align-items:center;border:1px solid var(--ps-pm-line);
border-radius:var(--ps-radius-card);padding:12px 14px;margin:14px 0;
text-decoration:none;color:var(--ps-pm-ink)}
.gp .gpimg{width:72px;height:72px;flex:0 0 auto;border-radius:var(--ps-radius-input);
overflow:hidden;background:var(--ps-pm-panel);display:flex;align-items:center;
justify-content:center}
.gp .gpimg img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.gp .gpnm{display:block;font-weight:700;font-size:13.5px}
.gp .gpbrand{display:block;font-size:11px;color:var(--ps-pm-ghost);margin-top:2px}
.gp .gppr{margin-left:auto;font-size:16px;font-weight:800;white-space:nowrap}
.gp.missing{color:var(--ps-pm-ghost);font-size:12.5px;border-style:dashed}
.vargrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.varcard{border:1px solid var(--ps-pm-line);border-radius:var(--ps-radius-card);
padding:10px;display:flex;flex-direction:column;gap:6px;position:relative;background:#fff}
.varcard.sel{border-color:var(--ps-ink);box-shadow:0 0 0 1px var(--ps-ink)}
.varimg{height:84px;border-radius:var(--ps-radius-input);overflow:hidden;
background:var(--ps-pm-panel);display:flex;align-items:center;justify-content:center}
.varimg img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.varlbl{font-size:11.5px;font-weight:700;line-height:1.3;
display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.varpr{font-size:13px;font-weight:800}
.varchip{position:absolute;top:8px;right:8px;background:var(--ps-ink);color:#fff;
font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
border-radius:var(--ps-radius-chip);padding:2px 6px}
.varnote{font-size:11.5px;color:var(--ps-pm-mut);margin-top:10px}
@media(max-width:900px){.vargrid{grid-template-columns:repeat(2,1fr)}}
.stub{max-width:68ch}
.stub h1{font-family:var(--ps-font-display);font-size:32px;margin:6px 0 14px}
.stub h3{font-family:var(--ps-font-display);font-size:20px;margin:22px 0 6px}
.stub p{margin:10px 0;color:var(--ps-mut)}
.gidx{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.take{margin-top:26px;display:flex;justify-content:space-between;align-items:center}
.take h3{font-family:var(--ps-font-display);font-size:22px;font-weight:700}
.take p{font-size:12.5px;color:var(--ps-pay-text)}
.take .go{flex:0 0 auto}
@media(max-width:900px){.drops,.gidx{grid-template-columns:repeat(2,1fr)}
.catgrid{grid-template-columns:1fr 1fr}.hgrid{grid-template-columns:1fr}}
