@font-face{font-family:Geist;src:url(/fonts/Geist-Variable.woff2)format("woff2-variations");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2)format("woff2-variations");font-weight:100 900;font-display:swap}:root{--bg:#0e0f12;--bg-raised:#16181c;--bg-sunken:#0a0b0d;--ink:#dcdee3;--ink-dim:#a2a5ae;--ink-faint:#82858e;--grid:#33363d;--grid-soft:#24272c;--audio:#8fb6c9;--warn:#e0a53d;--downbeat:#e05d3d;--sans:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--s8:4.5rem;--t-micro:.68rem;--t-small:.76rem;--t-meta:.85rem;--t-ui:.95rem;--t-lead:1.05rem;--radius:6px;--radius-sm:3px;--bg-hover:#1d2025;--misreg:0px;--page-halftone:none;--heading-case:none;--heading-shadow:none;--heading-weight:600;--h1-tracking:-.035em;--h1-leading:1.1}:root[data-theme=flyer]{--bg:#0a0908;--bg-raised:#141210;--bg-sunken:#050505;--ink:#e6e2d8;--ink-dim:#aaa294;--ink-faint:#8b8578;--grid:#3b382f;--grid-soft:#221f1b;--audio:#6fd2e8;--warn:#f2e94e;--downbeat:#ff4d1c;--bg-hover:#1f1b16;--misreg:3px;--page-halftone:radial-gradient(circle at 1px 1px, #ffffff0d 1px, transparent 1.6px);--heading-case:uppercase;--heading-shadow:2px 2px 0 color-mix(in srgb, var(--audio) 45%, var(--bg));--heading-weight:800;--h1-tracking:-.015em;--h1-leading:1.02}*{box-sizing:border-box}body{background-color:var(--bg);background-image:var(--page-halftone);color:var(--ink);font:400 16px/1.7 var(--sans);-webkit-font-smoothing:antialiased;background-size:6px 6px;margin:0}main{max-width:44rem;padding:var(--s7) var(--s5) var(--s8);margin:0 auto}h1{font-size:clamp(1.8rem,4.2vw,2.6rem);line-height:var(--h1-leading);margin:0 0 var(--s4);text-wrap:balance;max-width:20ch;text-transform:var(--heading-case);text-shadow:var(--heading-shadow);font-weight:var(--heading-weight);letter-spacing:var(--h1-tracking)}h2{letter-spacing:-.02em;text-wrap:balance;margin:var(--s7) 0 var(--s3);padding-top:var(--s5);border-top:1px solid var(--grid-soft);text-transform:var(--heading-case);font-size:clamp(1.15rem,2.2vw,1.4rem);line-height:1.25;font-weight:var(--heading-weight)}p{max-width:68ch}p,li{color:var(--ink)}strong{color:var(--ink);font-weight:600}.lede{max-width:44ch;color:var(--ink);font-size:clamp(1.05rem,1.9vw,1.2rem);line-height:1.55}ul,ol{padding-left:1.3rem}li{margin-bottom:.4rem}a{color:var(--audio);border-bottom:1px solid color-mix(in srgb, var(--audio) 35%, transparent);text-decoration:none}a:hover{border-bottom-color:var(--audio)}a:focus-visible{outline:2px solid var(--audio);outline-offset:2px;border-radius:var(--radius-sm)}.crumb{font-size:var(--t-meta);color:var(--ink-dim);margin-bottom:var(--s6)}.crumb a{color:var(--ink-dim);border-bottom-color:#0000}.crumb a:hover{color:var(--audio)}.updated{font-family:var(--mono);font-size:var(--t-meta);color:var(--ink-faint);margin:0 0 var(--s5)}.callout{background:var(--bg-raised);border:1px solid var(--grid);border-radius:var(--radius);padding:var(--s4) var(--s5);margin:var(--s5) 0 0;max-width:68ch}.callout strong{margin-bottom:var(--s2);font-size:var(--t-lead);display:block}.cta{margin:var(--s6) 0 0}.cta a,.btn.primary{background:var(--downbeat);color:#fff;border:1px solid var(--downbeat);border-radius:var(--radius);text-transform:var(--heading-case);letter-spacing:.04em;padding:.7rem 1.2rem;font-size:1.2rem;font-weight:700;transition:background .15s;display:inline-block}.cta a:hover,.btn.primary:hover{background:color-mix(in srgb, var(--downbeat) 86%, #000)}hr{border:0;border-top:1px solid var(--grid-soft);margin:var(--s7) 0 var(--s5)}footer{font-size:var(--t-meta);color:var(--ink-dim)}.site-map{gap:var(--s5);display:grid}.site-map h2{font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-faint);margin:0 0 var(--s2);border-top:0;max-width:none;padding-top:0;font-weight:600;line-height:1.2}.site-map ul{margin:0;padding:0;list-style:none}.site-map li{font-size:var(--t-meta);margin:0 0 .35rem}.foot{font-size:var(--t-meta);color:var(--ink-dim)}.foot a{color:var(--ink-dim)}.foot a:hover{color:var(--audio)}@media (min-width:640px){.site-map{grid-template-columns:repeat(3,1fr)}}.code{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:var(--t-micro);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 var(--s3)}.actions{gap:var(--s3);margin-top:var(--s6);flex-wrap:wrap;display:flex}.btn{background:var(--bg-raised);color:var(--ink);border:1px solid var(--grid);border-radius:var(--radius);padding:.7rem 1.2rem;font-weight:500;transition:border-color .15s,background .15s;display:inline-block}.btn:hover{border-color:var(--ink-dim);background:var(--bg-hover)}.page-theme-switch{align-items:center;gap:var(--s2);display:inline-flex;position:fixed;top:.8rem;right:.8rem}.page-theme-label{font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-faint);white-space:nowrap;font-weight:500}.page-theme{font:600 var(--t-micro) / 1.2 var(--sans);text-transform:uppercase;letter-spacing:.1em;background:var(--bg-raised);border:1px solid var(--grid);border-radius:var(--radius);cursor:pointer;color:inherit;padding:2px;display:inline-flex}.page-theme span{border-radius:var(--radius-sm);color:var(--ink-dim);padding:.25rem .5rem}.page-theme span.on{background:var(--ink);color:var(--bg)}.page-theme:focus-visible{outline:2px solid var(--audio);outline-offset:2px}:root{--stock-ink:#14110d;--stock-ink-dim:#4f4838;--stock-label:#6b6350}:root[data-theme=flyer]{--paper:#ece7da}:root[data-theme=flyer] .proof{background:var(--paper);padding:var(--s5,1.5rem);border-radius:var(--radius)}:root[data-theme=flyer] .proof h2,:root[data-theme=flyer] .proof-name,:root[data-theme=flyer] .proof-figure{color:var(--stock-ink)}:root[data-theme=flyer] .proof-body{color:var(--stock-ink-dim)}:root[data-theme=flyer] .proof-label,:root[data-theme=flyer] .proof-date,:root[data-theme=flyer] .proof-note,:root[data-theme=flyer] .proof-empty{color:var(--stock-label)}:root[data-theme=flyer] .proof-item{border-top-color:color-mix(in srgb, var(--stock-ink) 22%, transparent)}:root[data-theme=flyer] .stars .star{stroke:color-mix(in srgb, var(--stock-ink) 50%, transparent)}:root[data-theme=flyer] .stars-fill .star{fill:var(--stock-ink);stroke:var(--stock-ink)}.proof-body{-webkit-line-clamp:12;line-clamp:12;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.proof-date{font-family:var(--mono);font-variant-numeric:tabular-nums}.proof-summary{gap:var(--s6,2rem);flex-wrap:wrap;margin:1.5rem 0 2rem;display:flex}.proof-readout{flex-direction:column;gap:.25rem;display:flex}.proof-label{text-transform:uppercase;letter-spacing:.14em;color:var(--ink-faint);font-size:.68rem;font-weight:500}.proof-figure{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink);font-size:1.05rem}.proof-aggregate{align-items:center;gap:.5rem;display:flex}.proof-list{gap:1.5rem;max-width:46rem;margin:0;padding:0;list-style:none;display:grid}.proof-item{border-top:1px solid var(--grid);padding-top:1.5rem}.proof-head{flex-wrap:wrap;align-items:baseline;gap:.75rem;margin:0 0 .5rem;display:flex}.proof-name{color:var(--ink);overflow-wrap:anywhere;font-weight:600}.proof-body{color:var(--ink-dim);white-space:pre-wrap;overflow-wrap:anywhere;max-width:46ch;margin:0 0 .5rem}.proof-date,.proof-note,.proof-empty{color:var(--ink-faint);font-size:.85rem}.proof-note,.proof-empty{max-width:46ch}.stars{white-space:nowrap;line-height:0;display:inline-block;position:relative}.stars-base,.stars-row{gap:2px;display:inline-flex}.stars-fill{white-space:nowrap;position:absolute;inset:0;overflow:hidden}.stars .star{fill:none;width:17px;height:17px;stroke:var(--ink-faint);stroke-width:1.5px;stroke-linejoin:round}.stars-fill .star{fill:var(--ink);stroke:var(--ink)}.content-page #site-header{max-width:1100px;min-height:85px;margin:0 auto;padding:1.5rem 1.5rem 0}.content-page .app-header{margin-bottom:0}.content-page main{padding-top:2.5rem}.content-page:has(.reviews-intro) main{max-width:1000px}.content-page .app-header a{text-decoration:none}.content-page .account-panel{font-size:15px;line-height:1.6}.content-page .review-dialog h2{border:0;margin:0 0 1rem;padding:0}.reviews-intro{justify-content:space-between;align-items:center;gap:2rem;margin:1.75rem 0 2.5rem;display:flex}.reviews-intro h1{margin:0 0 .75rem;font-size:clamp(2.4rem,6vw,3.6rem)}.reviews-intro .lede{max-width:38ch;margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--ink-faint);margin:0 0 1rem;font-size:.75rem}.review-cta{background:var(--ink);color:var(--bg);border-color:var(--ink);white-space:nowrap;padding:.8rem 1.25rem;font-weight:650}.review-cta:hover:not(:disabled){color:var(--ink)}.reviews-policy{color:var(--ink-faint);max-width:65ch;font-size:.85rem;line-height:1.6}.content-page .proof{color:var(--ink);background:0 0;border-radius:0;margin:0;padding:0}.content-page .proof-summary{border-top:1px solid var(--grid);border-bottom:1px solid var(--grid);align-items:center;gap:2.5rem;padding:2rem 0}.content-page .proof-figure{color:var(--ink);font-size:1.8rem}.content-page .proof-list{gap:0;max-width:none}.content-page .proof-item{border-top:none;border-bottom:1px solid var(--grid);padding:2rem 0}.content-page .proof-body{max-width:60ch;color:var(--ink-dim);margin:.85rem 0;display:block;overflow:visible}.content-page .proof-head{align-items:center}.content-page .proof-name{color:var(--ink)}.content-page .stars-fill .star{fill:var(--ink);stroke:var(--ink)}.rating-distribution{width:230px;margin-left:auto}.rating-row{color:var(--ink-dim);grid-template-columns:1ch 1fr 2ch;align-items:center;gap:.65rem;font-size:.75rem;display:grid}.rating-track{background:var(--grid);border-radius:4px;height:5px;overflow:hidden}.rating-track>span{background:var(--ink);height:100%;display:block}@media (max-width:600px){.content-page #site-header{min-height:108px;padding:1rem 1rem 0}.content-page main{padding:1.5rem 1rem 3rem}.reviews-intro{flex-direction:column;align-items:flex-start;gap:1.25rem}.content-page .proof-summary{gap:1.5rem}.rating-distribution{width:100%;margin:0}}:root[data-theme=flyer] .content-page .proof{color:var(--ink);background:0 0;padding:0}:root[data-theme=flyer] .content-page .proof-name,:root[data-theme=flyer] .content-page .proof-figure{color:var(--ink)}:root[data-theme=flyer] .content-page .proof-body{color:var(--ink-dim)}:root[data-theme=flyer] .content-page .proof-date{color:var(--ink-faint)}
