@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/space-grotesk-vietnamese-wght-normal.D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/space-grotesk-latin-ext-wght-normal.D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/space-grotesk-latin-wght-normal.BhU9QXUp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0b0d0b;--surface:#131613;--surface-2:#1a1e1a;--border:#262b26;--fg:#e8e6e0;--muted:#9aa29a;--primary:#33e667;--on-primary:#06170b;--primary-dim:#1d5c33;--kinda-bg:#ffb000;--kinda-fg:#1a1200;--no-bg:#f44;--no-fg:#fff;--ticker:#33e667;--ticker-dim:#4f8a63;--ticker-label:#6fe08f;--ticker-bg:#0a140e;--ticker-cell:#10211a;--ticker-cell-border:#1e4230;--lose-bg:#2a1414;--lose-border:#4a2020;--shadow:0 8px 32px #0006;--font-display:"Space Grotesk Variable", "Space Grotesk", sans-serif;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--ease-snap:cubic-bezier(.2, .9, .3, 1.2);--ease-out:cubic-bezier(.22, 1, .36, 1);--card:transparent;color-scheme:dark}[data-theme=light]{--bg:#f4f1e8;--surface:#fff;--surface-2:#ece8db;--border:#c9c2ac;--fg:#14170f;--muted:#575d51;--primary:#0b7c39;--on-primary:#fff;--primary-dim:#9fdcb6;--kinda-bg:#f5b300;--kinda-fg:#241800;--no-bg:#e03131;--no-fg:#fff;--ticker:#0e9c47;--ticker-dim:#628a70;--ticker-label:#2f8a52;--ticker-bg:#e7f3ea;--ticker-cell:#f4fbf6;--ticker-cell-border:#bcdcc7;--lose-bg:#fbe3e3;--lose-border:#e5a5a5;--shadow:0 8px 32px #28241824;--card:#fff;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5;transition:background-color .25s,color .25s}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}img{max-width:100%;display:block}::selection{background:var(--primary);color:var(--on-primary)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700;line-height:1.1}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.microlabel{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}.site-header{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 88%, transparent);backdrop-filter:blur(10px);z-index:50;position:sticky;top:0}.site-header .inner{justify-content:space-between;align-items:center;gap:16px;max-width:1120px;margin:0 auto;padding:14px 20px;display:flex;position:relative}.brand{align-items:center;gap:11px;transition:opacity .15s;display:flex}.brand:hover{opacity:.85}.brand .mark{flex-shrink:0;width:30px;height:30px}.brand .word{font-size:16px;font-weight:500}.brand .word b{color:var(--primary);font-weight:500}.site-nav{align-items:center;gap:22px;font-size:13px;display:flex}.site-nav a{color:var(--muted);transition:color .15s}.site-nav a:hover{color:var(--fg)}.site-nav .gh{color:var(--fg);border:1px solid var(--border);border-radius:6px;padding:7px 12px;transition:border-color .15s,transform .1s}.site-nav .gh:hover{border-color:var(--muted)}.site-nav .gh:active{transform:scale(.96)}.theme-toggle{border:1px solid var(--border);width:34px;height:34px;color:var(--muted);border-radius:6px;place-items:center;transition:color .15s,border-color .15s,transform .1s;display:grid}.theme-toggle:hover{color:var(--fg);border-color:var(--muted)}.theme-toggle:active{transform:scale(.92)}.theme-toggle .sun,[data-theme=light] .theme-toggle .moon{display:none}[data-theme=light] .theme-toggle .sun{display:block}.radio{display:flex}.radio-btn{border:1px solid var(--border);width:34px;height:34px;color:var(--muted);border-radius:6px;place-items:center;transition:color .15s,border-color .15s,transform .1s;display:grid;position:relative}.radio-btn:hover{color:var(--fg);border-color:var(--muted)}.radio-btn:active{transform:scale(.92)}.radio.is-on .radio-btn,.radio.is-tuning .radio-btn{color:var(--primary);border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, transparent)}.radio-dot{background:var(--primary);border-radius:50%;width:7px;height:7px;display:none;position:absolute;top:-3px;right:-3px}.radio.is-on .radio-dot{animation:2s ease-in-out infinite radio-pulse;display:block}.radio-panel{background:var(--surface);border:1px solid var(--border);width:min(268px,100vw - 24px);box-shadow:var(--shadow);z-index:60;font-family:var(--font-mono);text-align:left;border-radius:8px;position:absolute;top:calc(100% + 8px);right:20px;overflow:hidden}.radio-head{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding:12px 14px 10px;display:flex}.radio-head-row{justify-content:space-between;align-items:center;display:flex}.radio-title{letter-spacing:.14em;color:var(--fg);font-size:11px;font-weight:700}.radio-onair{letter-spacing:.1em;color:var(--muted);align-items:center;gap:5px;font-size:10px;font-weight:700;display:flex}.radio-onair:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.radio.is-on .radio-onair,.radio.is-tuning .radio-onair{color:var(--primary)}.radio.is-on .radio-onair:before{animation:2s ease-in-out infinite radio-pulse}.radio-tagline{color:var(--muted);font-size:10px}.radio-transport{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 14px;display:flex}.radio-play{border:1px solid var(--border);width:34px;height:34px;color:var(--fg);border-radius:6px;flex-shrink:0;place-items:center;transition:color .15s,border-color .15s;display:grid}.radio-play:hover{border-color:var(--muted)}.radio.is-on .radio-play,.radio.is-tuning .radio-play{color:var(--primary);border-color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent)}.radio-play .r-pause,.radio.is-on .radio-play .r-play,.radio.is-tuning .radio-play .r-play{display:none}.radio.is-on .radio-play .r-pause,.radio.is-tuning .radio-play .r-pause{display:block}.radio-now{flex-direction:column;flex-grow:1;gap:2px;min-width:0;display:flex}.radio-now b{font-family:var(--font-display);color:var(--fg);font-size:14px;font-weight:600}.radio-now small{color:var(--muted);font-size:10px}.radio-eq{flex-shrink:0;align-items:flex-end;gap:2px;height:16px;display:flex}.radio-eq i{background:var(--primary);opacity:.25;transform-origin:bottom;width:3px;height:16px;transform:scaleY(.25)}.radio.is-on .radio-eq i{opacity:1;animation:1.1s ease-in-out infinite radio-eq}.radio.is-on .radio-eq i:nth-child(2){animation-duration:.9s;animation-delay:.25s}.radio.is-on .radio-eq i:nth-child(3){animation-duration:1.3s;animation-delay:.1s}.radio.is-on .radio-eq i:nth-child(4){animation-delay:.4s}.radio-stations{border-bottom:1px solid var(--border);flex-direction:column;padding:6px 0;display:flex}.radio-station{font-family:var(--font-mono);color:var(--fg);text-align:left;align-items:center;gap:8px;padding:7px 14px;font-size:12px;display:flex}.radio-station:hover{background:var(--surface-2)}.radio-station .rs-cursor{color:#0000;flex-shrink:0;width:10px;font-size:11px}.radio-station .rs-name{flex-grow:1}.radio-station .rs-genre{color:var(--muted);flex-shrink:0;font-size:10px}.radio-station.active{background:color-mix(in srgb, var(--primary) 7%, transparent)}.radio-station.active .rs-cursor,.radio-station.active .rs-name{color:var(--primary);font-weight:700}.radio-vol{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:11px 14px;display:flex}.radio-vol span{letter-spacing:.1em;color:var(--muted);flex-shrink:0;font-size:10px}.radio-vol input{height:12px;accent-color:var(--primary);flex-grow:1}.radio-foot{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding:9px 14px;font-size:10px;display:flex}.radio-foot a{color:var(--muted);text-decoration:none}.radio-foot a:hover{color:var(--fg)}@keyframes radio-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes radio-eq{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.radio.is-on .radio-eq i{animation:none;transform:scaleY(.7)}.radio.is-on .radio-dot,.radio.is-on .radio-onair:before{animation:none}}.hero{text-align:center;flex-direction:column;align-items:center;gap:26px;padding:84px 20px 56px;display:flex}.hero h1{font-size:clamp(40px,7vw,84px)}.hero h1 .blank{color:var(--primary)}.hero .sub{color:var(--muted);font-size:15px}.search{background:var(--surface);border:1px solid var(--border);border-radius:8px;align-items:center;gap:12px;width:min(640px,100%);padding:16px 18px;transition:border-color .2s,box-shadow .2s;display:flex}.search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent)}.search .chevron{color:var(--primary);font-size:17px;font-weight:700}.search input{color:var(--fg);font:inherit;background:0 0;border:none;outline:none;flex:1;font-size:15px}.search input::placeholder{color:var(--muted)}.search .cursor{background:var(--primary);width:9px;height:21px;animation:1.1s step-end infinite blink}.search:focus-within .cursor{display:none}@keyframes blink{50%{opacity:0}}.search-wrap{width:min(640px,100%);position:relative}.search-wrap .search{width:100%}.search-results{z-index:40;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .18s ease, transform .22s var(--ease-snap);text-align:left;border-radius:10px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden;transform:translateY(-4px)}.search-results.open{opacity:1;pointer-events:auto;transform:none}.sr-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 14px;font-size:13.5px;transition:background-color .1s;display:flex}.sr-row:hover,.sr-row.active{background:var(--surface-2)}.sr-row img{border-radius:5px;flex-shrink:0;width:20px;height:20px}.sr-row .sr-name{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.sr-row .sr-meta{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:11.5px}.sr-row .badge{flex-shrink:0;padding:3px 7px;font-size:9px}.sr-foot{color:var(--muted);text-align:center;padding:9px 14px;font-size:11.5px;display:block}.sr-foot:hover{color:var(--fg);background:var(--surface-2)}.search-miss{opacity:0;max-height:0;transition:max-height .35s var(--ease-out), opacity .3s ease, transform .35s var(--ease-snap);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex;overflow:hidden;transform:translateY(-6px)}.search-miss.show{opacity:1;max-height:60px;transform:none}.search-miss a{color:var(--primary);font-weight:500}.search-miss a:hover{text-decoration:underline}.search-miss .miss-note{color:var(--muted);font-size:12px}.chips{flex-wrap:wrap;justify-content:center;gap:9px;max-width:880px;display:flex}.chip{background:var(--card);border:1px solid var(--border);color:var(--fg);transition:border-color .15s ease, background-color .15s ease, transform .12s var(--ease-snap);border-radius:100px;align-items:center;gap:6px;padding:7px 14px;font-size:12px;display:inline-flex}.chip:hover{border-color:var(--primary);transform:translateY(-1px)}.chip-new{border-color:var(--primary);color:var(--primary);font-weight:500}.new-tag{letter-spacing:.06em;background:var(--primary);color:var(--on-primary);border-radius:100px;padding:2px 6px;font-size:9px;font-weight:700}.chip:active{transform:scale(.95)}.hatch-strip{border:1px solid var(--border);border-left:3px solid var(--primary);background:color-mix(in srgb, var(--primary) 3%, var(--bg));width:min(1080px,100%);font-family:var(--font-mono);color:var(--fg);border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:13px 18px;font-size:13px;transition:border-color .15s;display:flex}.hatch-strip:hover{border-color:var(--muted);border-left-color:var(--primary)}.hatch-strip .hs-cta{color:var(--primary);white-space:nowrap;font-weight:500}.hatch-strip:hover .hs-cta{text-decoration:underline}@media (width<=760px){.hatch-strip{text-align:center;gap:8px;padding:11px 14px;font-size:12px}}.chip.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary);font-weight:500}.ticker{background:var(--ticker-bg);border-top:2px solid var(--ticker);border-bottom:2px solid var(--ticker);max-width:1120px;margin:0 auto}.tape{white-space:nowrap;letter-spacing:.06em;color:var(--ticker-dim);max-width:1280px;margin:0 auto;padding-top:9px;font-size:12px;display:flex;overflow:hidden;mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.tape>span{animation:tape var(--tape-dur,40s) linear infinite;padding-right:48px;display:inline-block}@keyframes tape{to{transform:translate(-100%)}}.ticker .main{flex-wrap:wrap;justify-content:center;align-items:center;gap:22px;padding:10px 20px 20px;display:flex}.ticker .label{letter-spacing:.12em;color:var(--ticker-label);text-align:right;font-size:11px;font-weight:500;line-height:1.5}.odometer{align-items:center;gap:5px;font-weight:700;display:flex}.odometer .sym{color:var(--ticker-dim);padding:0 1px;font-size:clamp(26px,4vw,40px)}.odometer .digit{color:var(--ticker);background:var(--ticker-cell);border:1px solid var(--ticker-cell-border);border-radius:8px;width:clamp(34px,5vw,50px);height:clamp(44px,6.4vw,64px);padding:4px 0;font-size:clamp(26px,4vw,40px);position:relative;overflow:hidden}.odometer .digit .reel{transition:transform .9s var(--ease-out);flex-direction:column;align-items:center;line-height:1;display:flex}.odometer .digit .reel span{place-items:center;height:clamp(36px,5.6vw,56px);display:grid}.ticker .permo{color:var(--ticker-dim);font-size:18px}.mrr-info{border:1px solid var(--ticker-cell-border);width:22px;height:22px;color:var(--ticker-dim);cursor:help;border-radius:100px;place-items:center;font-size:12px;font-weight:700;transition:color .15s,border-color .15s;display:grid;position:relative}.mrr-info:hover,.mrr-info:focus-visible{color:var(--ticker);border-color:var(--ticker)}.mrr-tip{white-space:nowrap;background:var(--surface);border:1px solid var(--border);color:var(--fg);box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .18s ease, transform .2s var(--ease-out);z-index:60;border-radius:8px;flex-direction:column;gap:2px;padding:12px 16px;font-size:12px;font-weight:400;line-height:1.6;display:flex;position:absolute;bottom:calc(100% + 10px);right:-8px;transform:translateY(4px)}.mrr-info:hover .mrr-tip,.mrr-info:focus-visible .mrr-tip{opacity:1;transform:none}.mrr-tip .tip-comment{color:var(--muted)}.mrr-tip .tip-result{color:var(--primary);padding-top:4px}.list-head{justify-content:space-between;align-items:baseline;gap:12px;padding-top:56px;display:flex}.list-head h2{font-size:32px}.list-head .note{color:var(--muted);font-size:12px}.verdict-filter{flex-wrap:wrap;align-items:center;gap:10px;padding-top:18px;display:flex}.vchip{background:var(--card);font-family:var(--font-mono);letter-spacing:.02em;border:1px solid var(--border);color:var(--muted);transition:color .15s ease, border-color .15s ease, background-color .15s ease, transform .12s var(--ease-snap);border-radius:5px;padding:6px 13px;font-size:11px;font-weight:700}.vchip:hover{color:var(--fg);border-color:var(--muted);transform:translateY(-1px)}.vchip:active{transform:scale(.94)}.vchip.all.active{background:var(--fg);border-color:var(--fg);color:var(--bg)}.vchip.yes.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.vchip.kinda.active{background:var(--kinda-bg);border-color:var(--kinda-bg);color:var(--kinda-fg)}.vchip.no.active{background:var(--no-bg);border-color:var(--no-bg);color:var(--no-fg)}#filter-count{margin-left:auto}.thead{border-bottom:1px solid var(--border);align-items:center;margin-top:20px;padding:12px 14px;display:flex}.row{border-bottom:1px solid var(--border);align-items:center;padding:15px 14px;transition:background-color .15s;display:flex;position:relative}a.row:hover{background:var(--surface)}a.row:after{content:"→";color:var(--primary);opacity:0;transition:opacity .15s ease, transform .2s var(--ease-out);position:absolute;right:-6px;transform:translate(-6px)}a.row:hover:after{opacity:1;transform:translate(0)}.c-app{flex-shrink:0;align-items:center;gap:13px;width:38%;min-width:0;display:flex}.c-app .rank{color:var(--muted);flex-shrink:0;width:22px;font-size:12px}.c-app img{width:24px;height:24px;transition:transform .2s var(--ease-snap);border-radius:6px;flex-shrink:0}a.row:hover .c-app img{transform:scale(1.15)rotate(-3deg)}.c-app .name{white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:500;overflow:hidden}.c-cat{flex-shrink:0;width:22%}.c-price{flex-shrink:0;width:13%;font-size:14px}.c-verdict{flex-shrink:0;width:17%}.c-votes{font-variant-numeric:tabular-nums;margin-left:auto;font-size:14px}.badge{letter-spacing:.02em;transition:transform .12s var(--ease-snap);border-radius:5px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}a.row:hover .badge{transform:scale(1.06)}.badge.yes{background:var(--primary);color:var(--on-primary)}.badge.kinda{background:var(--kinda-bg);color:var(--kinda-fg)}.badge.no{background:var(--no-bg);color:var(--no-fg)}.crumbs{color:var(--muted);padding-top:40px;font-size:12px}.crumbs a:hover,.crumbs .here{color:var(--fg)}.app-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding-top:20px;display:flex}.app-head .title{align-items:center;gap:18px;min-width:0;display:flex}.app-head img{border-radius:11px;flex-shrink:0;width:48px;height:48px}.app-head h1{font-size:clamp(30px,5vw,50px)}.verdict-big{animation:pop-in .5s var(--ease-snap) both;border-radius:8px;flex-shrink:0;padding:13px 24px;font-size:17px;font-weight:700;animation-delay:.15s}@keyframes pop-in{0%{opacity:0;transform:scale(.85)}}.stats{color:var(--muted);flex-wrap:wrap;align-items:center;gap:32px;padding-top:20px;font-size:14px;display:flex}.cat-pill{border:1px solid var(--border);color:var(--fg);background:var(--card);transition:border-color .15s ease, transform .12s var(--ease-snap);border-radius:100px;align-items:center;gap:6px;padding:4px 11px;font-size:12px;display:inline-flex}.cat-pill:hover{border-color:var(--primary);transform:translateY(-1px)}.stats b{color:var(--fg);font-weight:500}.stats .save{color:var(--primary);font-weight:500}.prompt-box{margin-top:36px}.prompt-head{background:var(--surface-2);border:1px solid var(--border);border-bottom:none;border-radius:10px 10px 0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;display:flex}.copy-group{flex-wrap:wrap;gap:8px;display:flex}.copy-btn{border:1px solid var(--border);background:var(--bg);border-radius:6px;align-items:center;gap:8px;padding:8px 13px;font-size:12.5px;font-weight:500;transition:border-color .15s,transform .1s,background-color .15s;display:inline-flex}.copy-btn:hover{border-color:var(--muted)}.copy-btn:active{transform:scale(.95)}.copy-btn.copied{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, var(--bg));color:var(--primary)}.copy-btn svg{flex-shrink:0}.prompt-body{background:var(--surface);border:1px solid var(--border);border-radius:0 0 10px 10px;padding:22px;overflow-x:auto}.prompt-body pre{font:13.5px/1.65 var(--font-mono);white-space:pre-wrap}.prompt-hint{color:var(--muted);padding-top:10px;font-size:12.5px}.two-col{grid-template-columns:1fr 1fr;gap:40px;padding-top:44px;display:grid}.lose-item{align-items:center;gap:12px;padding-top:12px;font-size:14px;display:flex}.lose-item i{background:var(--lose-bg);border:1px solid var(--lose-border);width:22px;height:22px;color:var(--no-bg);border-radius:6px;flex-shrink:0;place-items:center;font-size:11px;font-style:normal;font-weight:700;display:grid}.prior-card{background:var(--card);border:1px solid var(--border);transition:border-color .15s ease, transform .15s var(--ease-out);border-radius:8px;align-items:center;gap:12px;margin-top:12px;padding:12px 15px;font-size:13px;display:flex}.prior-card:hover{border-color:var(--muted);transform:translate(3px)}.prior-card .pname{color:var(--primary);font-weight:500}.prior-card .pdesc{color:var(--muted)}.prior-card .arrow{color:var(--muted);margin-left:auto}.related{padding-top:44px}.related-grid{grid-template-columns:repeat(3,1fr);gap:14px;padding-top:16px;display:grid}.mini-card{background:var(--card);border:1px solid var(--border);transition:border-color .15s ease, transform .15s var(--ease-out), box-shadow .2s ease;border-radius:8px;align-items:center;gap:11px;padding:13px 15px;display:flex}.mini-card:hover{border-color:var(--muted);box-shadow:var(--shadow);transform:translateY(-2px)}.mini-card img{border-radius:6px;flex-shrink:0;width:26px;height:26px}.mini-card .m-name{font-size:13.5px;font-weight:500}.mini-card .m-meta{color:var(--muted);font-size:11.5px}.mini-card .badge{margin-left:auto;padding:3px 8px;font-size:10px}.actions{flex-wrap:wrap;align-items:center;gap:14px;padding-top:44px;display:flex}.btn{transition:transform .12s var(--ease-snap), filter .15s ease, border-color .15s ease;border-radius:8px;align-items:center;gap:9px;padding:13px 22px;font-size:14.5px;font-weight:500;display:inline-flex}.btn:hover{filter:brightness(1.08)}.btn:active{transform:scale(.95)}.btn.primary{background:var(--primary);color:var(--on-primary)}.btn.ghost{border:1px solid var(--border);background:var(--surface)}.btn.ghost:hover{border-color:var(--muted)}.btn.voted{animation:vote-pop .45s var(--ease-snap)}.btn.primary.is-voted{color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);background:0 0}@keyframes vote-pop{35%{transform:scale(1.12)}}.actions .tweet{color:var(--muted);margin-left:auto;font-size:12px}.faq{padding-top:52px}.faq details{border-bottom:1px solid var(--border)}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:16px 2px;font-size:14.5px;font-weight:500;list-style:none;transition:color .15s;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{color:var(--primary)}.faq summary:after{content:"+";color:var(--muted);transition:transform .25s var(--ease-out);font-size:18px}.faq details[open] summary:after{transform:rotate(45deg)}.faq .a{color:var(--muted);max-width:70ch;padding:0 2px 18px;font-size:13.5px;line-height:1.7}.stats-strip{border-bottom:1px solid var(--border);background:var(--surface)}.stats-strip .strip-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.stats-strip .strip-note{color:var(--muted);font-size:11px}.stats-strip .t-def{color:var(--muted);font-size:10.5px}.stats-strip .inner{flex-direction:column;gap:16px;max-width:1120px;margin:0 auto;padding:22px 20px 26px;display:flex}.stats-strip .tiles{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.stats-strip .tile{flex-direction:column;gap:6px;display:flex}.stats-strip .t-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:7px;font-size:11px;font-weight:500;display:inline-flex}.stats-strip .dot{background:var(--primary);border-radius:100px;width:7px;height:7px;animation:2s infinite stat-pulse}@keyframes stat-pulse{50%{opacity:.3}}.stats-strip .t-num{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(24px,3vw,34px);font-weight:700}.stats-strip .tile:first-child .t-num{color:var(--primary)}@media (width<=760px){.stats-strip .tiles{grid-template-columns:repeat(2,1fr);gap:16px 12px}.stats-strip .tile:last-child{grid-column:1/3}}.globe-strip{border-bottom:1px solid var(--border);background:var(--surface)}.globe-strip .inner{flex-direction:column;gap:16px;max-width:1120px;margin:0 auto;padding:22px 20px 26px;display:flex}.globe-strip .strip-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.globe-strip .strip-note{color:var(--muted);font-size:11px}.globe-grid{grid-template-columns:minmax(260px,380px) 1fr;align-items:center;gap:40px;display:grid}.globe-wrap{justify-content:center;display:flex}#globe-canvas{max-width:100%}.globe-side{flex-direction:column;gap:14px;min-width:0;display:flex}.g-count{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.g-num{font-family:var(--font-display);letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--fg);font-size:clamp(36px,4vw,52px);font-weight:700;line-height:1}.g-lab{color:var(--muted);font-size:13.5px}.g-sub{color:var(--muted);font-size:12px}.g-feed{border-top:1px solid var(--border);flex-direction:column;gap:9px;padding-top:14px;list-style:none;display:flex}.g-feed li{align-items:center;gap:10px;min-width:0;display:flex}.g-dot{background:var(--primary-dim);border-radius:100px;flex-shrink:0;width:6px;height:6px}.g-feed li.fresh .g-dot{background:var(--primary);animation:2s infinite stat-pulse}.g-line{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.g-feed li.fresh .g-line{color:var(--fg)}.g-ago{color:var(--muted);flex-shrink:0;font-size:11px}.g-countries{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding-top:14px;display:flex}.g-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.g-chip{color:var(--fg);border:1px solid var(--border);background:var(--surface-2);font-variant-numeric:tabular-nums;border-radius:5px;padding:5px 10px;font-size:12px}.g-more{color:var(--muted);font-size:12px}@media (width<=760px){.globe-grid{grid-template-columns:1fr;gap:18px}.globe-wrap{max-width:300px;margin:0 auto}.g-feed li:nth-child(4){display:none}}.globe-strip.embedded{border:1px solid var(--border);border-radius:10px;grid-column:1/-1}.globe-strip.embedded .inner{max-width:none;padding:18px 20px 22px}.sponsor-page .globe-strip.embedded{margin-top:28px}.dash-tiles{grid-template-columns:repeat(4,1fr);gap:14px;padding-top:24px;display:grid}.dash-tiles .tile{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.dash .tile,.dash .panel{opacity:0;transition:opacity .45s ease, transform .5s var(--ease-snap);transform:translateY(12px)scale(.985)}.dash .tile.in,.dash .panel.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.dash .tile,.dash .panel{opacity:1;transform:none}}.dash-tiles .t-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:7px;font-size:11px;font-weight:500;display:inline-flex}.dash-tiles .dot{background:var(--primary);border-radius:100px;width:7px;height:7px;animation:2s infinite stat-pulse}.dash-tiles .t-num{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(28px,3.6vw,40px);font-weight:700}.dash-tiles .tile:first-child .t-num{color:var(--primary)}.dash-tiles .t-def{color:var(--muted);font-size:10.5px}.panels{grid-template-columns:1fr 1fr;gap:14px;padding-top:14px;display:grid}.panel{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:18px}.panel.span-2{grid-column:1/3}.panel header{padding-bottom:14px}.panel canvas{width:100%;display:block}.chart-tip{z-index:90;pointer-events:none;background:var(--surface-2);border:1px solid var(--border);font-family:var(--font-mono);color:var(--fg);box-shadow:var(--shadow);border-radius:7px;padding:8px 12px;font-size:12px;line-height:1.6;display:none;position:fixed}.chart-tip span{color:var(--muted)}.dash-sub{padding-top:26px}.dash-tiles .tile.span-2{grid-column:span 2}.dash-tiles .tile.span-4{grid-column:1/-1}a.tile{color:inherit;text-decoration:none}.dash-tiles .tile.cta{border-color:var(--primary-dim);transition:border-color .2s ease, transform .3s var(--ease-snap)}.dash-tiles .tile.cta:hover{border-color:var(--primary);transform:translateY(-2px)}.dash-tiles .cta-line{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg);font-size:clamp(17px,2.2vw,22px);font-weight:700}.verdict-bar{border:1px solid var(--border);border-radius:100px;height:10px;margin-top:14px;display:flex;overflow:hidden}.verdict-bar i{display:block}.dash-line{color:var(--muted);padding-top:14px;font-size:13.5px;line-height:1.7}.dash-line a{color:var(--primary)}.dash-foot{color:var(--muted);padding-top:28px;font-size:12px}.dash-foot a{color:var(--primary)}@media (width<=760px){.dash-tiles{grid-template-columns:repeat(2,1fr)}.panels{grid-template-columns:1fr}.panel.span-2{grid-column:1}}.digest-card{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:14px;margin-top:72px;padding:44px 32px;display:flex}.digest-card h2{font-size:clamp(20px,3vw,28px)}.digest-card .sub{font:14px/1.7 var(--font-mono);color:var(--muted)}.digest-card .chip-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding-top:4px;display:flex}.digest-card .chip-row .more{font:12px var(--font-mono);color:var(--muted)}.verdict-chip{background:var(--bg);border:1px solid var(--border);font:12px var(--font-mono);color:var(--fg);border-radius:999px;align-items:center;gap:8px;padding:6px 13px;display:inline-flex}.verdict-chip i{background:var(--muted);border-radius:50%;flex-shrink:0;width:8px;height:8px}.verdict-chip.yes i{background:var(--primary)}.verdict-chip.kinda i{background:var(--kinda-bg)}.verdict-chip.no i{background:var(--no-bg)}.digest-card form,.digest-reveal form{gap:10px;display:flex}.digest-card form{width:min(480px,100%);margin-top:8px}.digest-card input[type=email],.digest-reveal input[type=email]{background:var(--bg);border:1px solid var(--border);min-width:0;color:var(--fg);font:inherit;border-radius:7px;flex:1;padding:12px 16px;font-size:13.5px;transition:border-color .15s}.digest-card input[type=email]:focus,.digest-reveal input[type=email]:focus{border-color:var(--primary);outline:none}.digest-card .fine{font:11.5px/1.6 var(--font-mono);color:var(--muted)}.digest-reveal{background:var(--surface-2);border:1px solid var(--border);opacity:0;transition:opacity .35s var(--ease-out), transform .35s var(--ease-out);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:20px;padding:18px 20px;display:flex;transform:translateY(6px)}.digest-reveal[hidden]{display:none}.digest-reveal.in{opacity:1;transform:none}.digest-reveal .dr-head{font:500 13px/1.5 var(--font-mono);color:var(--fg)}.digest-reveal .dr-sub{font:12px/1.6 var(--font-mono);color:var(--muted)}.digest-reveal form{flex:1;min-width:min(340px,100%);max-width:420px}.digest-reveal input[type=email]{padding:10px 14px;font-size:13px}.digest-reveal .btn.primary{white-space:nowrap;padding:10px 16px;font-size:13px}.dr-close{border:1px solid var(--border);background:var(--bg);width:34px;color:var(--muted);border-radius:7px;flex-shrink:0;font-size:13px;transition:border-color .15s,color .15s}.dr-close:hover{border-color:var(--muted);color:var(--fg)}.digest-bar{z-index:90;background:var(--surface-2);border:1px solid var(--border);visibility:hidden;width:min(800px,100vw - 32px);transition:transform .3s var(--ease-out), visibility .3s;border-bottom:none;border-radius:14px 14px 0 0;align-items:center;gap:16px;padding:12px 16px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%,110%);box-shadow:0 -10px 30px #00000073}[data-theme=light] .digest-bar{box-shadow:0 -10px 30px #2824181f}.digest-bar.show{visibility:visible;transform:translate(-50%)}.db-label{font:13px var(--font-mono);color:var(--fg);white-space:nowrap}.db-label i{color:var(--primary);padding-right:8px;font-style:normal}.digest-bar form{flex:1;gap:8px;min-width:0;display:flex}.digest-bar input[type=email]{background:var(--bg);border:1px solid var(--border);min-width:0;color:var(--fg);font:inherit;border-radius:7px;flex:1;padding:10px 14px;font-size:13px;transition:border-color .15s}.digest-bar input[type=email]:focus{border-color:var(--primary);outline:none}.digest-bar .btn.primary{white-space:nowrap;padding:10px 16px;font-size:13px}.db-close{border:1px solid var(--border);background:var(--bg);width:34px;color:var(--muted);border-radius:7px;flex-shrink:0;font-size:13px;transition:border-color .15s,color .15s}.db-close:hover{border-color:var(--muted);color:var(--fg)}.digest-bar.show~.toast{bottom:92px}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.site-footer{border-top:1px solid var(--border);color:var(--muted);margin-top:72px;padding:26px 24px;font-size:12.5px}.site-footer .inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1280px;margin:0 auto;display:flex}.site-footer a{color:var(--primary)}.site-footer a:hover{text-decoration:underline}.built-by{align-items:center;gap:8px;display:inline-flex}.built-by img{border-radius:100px;width:20px;height:20px}.built-by a{color:var(--fg)}.toast{background:var(--surface-2);border:1px solid var(--border);box-shadow:var(--shadow);opacity:0;transition:translate .35s var(--ease-snap), opacity .25s ease;z-index:100;pointer-events:none;border-radius:8px;padding:11px 18px;font-size:13px;position:fixed;bottom:24px;left:50%;translate:-50% 80px}.toast.show{opacity:1;translate:-50%}.escape-hatch{padding-top:52px}.eh-head{font-family:var(--font-display);letter-spacing:-.02em;padding:10px 0 4px;font-size:22px;font-weight:600}.alt-tile{background:var(--surface-2);width:30px;height:30px;font-family:var(--font-display);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex}.alt-tile.big{border-radius:8px;width:38px;height:38px;font-size:17px}.alt-star{fill:var(--kinda-bg);flex-shrink:0}.alt-dot{background:var(--primary);border-radius:100px;flex-shrink:0;width:6px;height:6px}.alt-zero{color:var(--primary);font-weight:700}.alt-badge{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:100px;flex-shrink:0;padding:3px 10px;font-size:10px;font-weight:500}.alt-badge.oss{color:var(--primary);border:1px solid var(--primary)}.alt-badge.free{color:var(--muted);border:1px solid var(--border)}.alt-row{background:var(--card);border:1px solid var(--border);animation:pop-in .5s var(--ease-snap) both;animation-delay:calc(var(--i,0) * 80ms);transition:border-color .15s ease, transform .15s var(--ease-out);border-radius:8px;align-items:center;gap:14px;margin-top:12px;padding:13px 16px;display:flex}.alt-row:hover{border-color:var(--muted);transform:translate(3px)}.alt-row .alt-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.alt-row .alt-name{color:var(--primary);font-size:13.5px;font-weight:500}.alt-row .alt-desc{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.alt-row .alt-meta{color:var(--muted);flex-shrink:0;align-items:center;gap:7px;font-size:11.5px;display:flex}.alt-row .alt-meta b{color:var(--fg);font-size:12px}.alt-row .arrow{color:var(--muted)}.eh-foot{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;padding-top:14px;font-size:12.5px;display:flex}.eh-foot a{color:var(--primary);font-weight:500}.alt-intro{color:var(--muted);max-width:76ch;padding-top:18px;font-size:14px;line-height:1.7}.alt-list{padding-top:10px}.alt-card{background:var(--card);border:1px solid var(--border);animation:pop-in .5s var(--ease-snap) both;animation-delay:calc(var(--i,0) * 80ms);transition:border-color .15s ease, transform .15s var(--ease-out), box-shadow .2s ease;border-radius:8px;align-items:flex-start;gap:16px;margin-top:14px;padding:18px 20px;display:flex}.alt-card:hover{border-color:var(--muted);box-shadow:var(--shadow);transform:translateY(-2px)}.alt-card .alt-body{flex-direction:column;flex:1;gap:7px;min-width:0;display:flex}.alt-card .alt-title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.alt-card .alt-name{color:var(--primary);font-size:15px;font-weight:600}.alt-card .alt-desc{color:var(--fg);margin:0;font-size:13px;line-height:1.6}.alt-platforms{flex-wrap:wrap;align-items:center;gap:13px;display:flex}.alt-plat{color:var(--muted);align-items:center;gap:5px;font-size:10.5px;display:inline-flex}.alt-card .alt-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:5px;display:flex}.alt-card .alt-stars{align-items:center;gap:7px;font-size:15px;font-weight:600;display:inline-flex}.alt-card .alt-active{color:var(--muted);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.alt-card .alt-links{gap:12px;font-size:12.5px;display:flex}.alt-card .alt-links a{color:var(--primary);font-weight:500}.alt-verdict-link{color:var(--muted)}.alt-verdict-link:hover{color:var(--fg)}.alt-plat.selfhost{border-left:1px solid var(--border);padding-left:13px}.alt-plat.one-click svg,.alt-plat.hosted svg{stroke:var(--primary)}.alt-plat.docker svg,.alt-plat.ops svg{stroke:var(--kinda-bg)}.alt-suspects{flex-direction:column;gap:10px;padding-top:36px;display:flex}.suspect{border-left:2px solid var(--lose-border);align-items:baseline;gap:10px;margin:0;padding:2px 0 2px 14px;font-size:12.5px;display:flex}.suspect b{color:var(--fg);flex-shrink:0;font-size:13px;font-weight:500}.suspect span{color:var(--muted);line-height:1.6}@media (width<=760px){.suspect{flex-direction:column;gap:2px}}.seg{border-top:1px solid var(--border);margin-top:44px;padding-top:30px}.alt-head .title{align-items:flex-start}.alt-head .title img{margin-top:3px}.alt-strip{flex-wrap:wrap;align-items:center;gap:12px;padding:20px 0 10px;display:flex}.alt-pill{border:1px solid var(--border);color:var(--muted);background:var(--card);border-radius:100px;align-items:center;gap:7px;padding:6px 13px;font-size:12px;display:inline-flex}.alt-pill b{color:var(--fg)}.alt-pill.zero{border-color:var(--primary)}.alt-pill.zero b{color:var(--primary)}.alt-pill.cat{color:var(--fg);transition:border-color .15s ease, transform .12s var(--ease-snap);margin-left:auto}.alt-pill.cat:hover{border-color:var(--primary);transform:translateY(-1px)}.strip-arrow{color:var(--muted);font-size:12px}.strip-verdict{color:var(--primary);align-items:center;gap:10px;font-size:12px;font-weight:500;display:inline-flex}.alt-table-wrap{padding-top:40px;overflow-x:auto}.alt-table{border-collapse:collapse;width:100%;margin-top:14px;font-size:12.5px}.alt-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);padding:8px 14px 8px 0;font-size:11px;font-weight:500}.alt-table td{border-bottom:1px solid var(--border);color:var(--fg);padding:9px 14px 9px 0}.alt-table td a{color:var(--primary);font-weight:500}.alt-build{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-wrap:wrap;align-items:center;gap:16px;margin-top:40px;padding:17px 20px;font-size:13.5px;display:flex}.alt-build span{flex:1;min-width:220px}.alt-hub-group{padding-top:36px}@media (width<=760px){.alt-row .alt-meta span,.alt-row .alt-dot{display:none}.alt-card{flex-wrap:wrap}.alt-card .alt-side{flex-direction:row;justify-content:space-between;align-items:center;width:100%;padding-top:4px}}.reveal{opacity:0;transition:opacity .5s ease, transform .55s var(--ease-out);transform:translateY(14px)}.reveal.in{opacity:1;transform:none}@media (width<=760px){.site-nav a:not(.gh):not([href=\/sponsor]){display:none}.site-header .inner{gap:10px;padding:12px 16px}.site-nav{gap:14px}.hero{padding-top:56px}.thead{display:none}.row{grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:5px 8px;padding:13px 10px;display:grid}.c-app{grid-area:1/1/auto/3;width:auto;min-width:0}.c-app .rank{display:none}.c-app .name{font-size:15px}.c-verdict{grid-area:1/3;justify-self:end;width:auto}.c-verdict .badge{white-space:nowrap;padding:4px 8px;font-size:9.5px}.c-cat{white-space:nowrap;grid-area:2/1;width:auto;padding-left:37px;font-size:10.5px}.c-price{width:auto;color:var(--muted);grid-area:2/2/auto/4;font-size:11px}.c-votes,a.row:after{display:none}.search input,.digest-card input[type=email],.digest-reveal input[type=email],.digest-bar input[type=email]{font-size:16px}.two-col,.related-grid{grid-template-columns:1fr}.digest-card form{flex-direction:column}.digest-reveal form{flex-wrap:wrap}.digest-reveal input[type=email]{flex-basis:100%}.digest-reveal .btn.primary{flex:1;justify-content:center}.digest-bar{gap:0;width:calc(100vw - 16px);padding:10px}.db-label{display:none}.digest-bar .btn.primary{padding:10px 12px}.actions .tweet{display:none}}.sp-checkout-form{display:block}button.sp-card,button.sp-banner{appearance:none;font:inherit;color:inherit;cursor:pointer}button.sp-banner{text-align:left}.sp-card.is-loading,.sp-banner.is-loading{cursor:progress;animation:1.2s ease-in-out infinite sp-loading}@keyframes sp-loading{50%{opacity:.55}}.sp-card{text-align:center;background:rgba(var(--tint,51, 230, 103), .1);border:1px solid rgba(var(--tint,51, 230, 103), .35);border-radius:6px;width:200px;height:160px;padding:14px;transition:border-color .15s,background-color .15s;display:block;overflow:hidden}.sp-card:hover{border-color:rgba(var(--tint,51, 230, 103), .65);background:rgba(var(--tint,51, 230, 103), .15)}.sp-card.open,.sp-card.soldout,.sp-card.reserved{background:var(--surface);border:1px dashed var(--border)}.sp-card.soldout{height:auto;padding:10px 14px 12px}.sp-card.open:hover,.sp-card.soldout:hover,.sp-card.reserved:hover{background:var(--surface-2);border-color:var(--muted)}.sp-icon{background:rgba(var(--tint,51, 230, 103), .18);width:30px;height:30px;animation:3s ease-in-out infinite sp-breathe;animation-delay:calc(var(--i,0) * .4s);border-radius:6px;place-items:center;display:grid;overflow:hidden}.sp-card .sp-icon{margin-inline:auto}.sp-card:hover .sp-icon,.sp-banner:hover .sp-icon{animation-play-state:paused}@keyframes sp-breathe{50%{transform:scale(1.06)}}.sp-card .sp-name{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;padding-top:8px;font-size:16px;font-weight:700;line-height:20px;display:block;overflow:hidden}.sp-card .sp-tag{-webkit-line-clamp:4;line-clamp:4;overflow-wrap:break-word;color:var(--muted);-webkit-box-orient:vertical;padding-top:2px;font-size:12px;line-height:17px;display:-webkit-box;overflow:hidden}.sp-card .sp-label{letter-spacing:.14em;color:var(--muted);font-size:11px;font-weight:500;display:block}.sp-card .sp-price{color:var(--primary);padding-top:12px;font-size:18px;font-weight:700;display:block}.sp-card .sp-per{color:var(--muted);font-size:12px;font-weight:400}.sp-card .sp-cta{color:var(--fg);padding-top:8px;font-size:12px;line-height:16px;display:block}.sp-rail{display:none}@media (width>=1280px){:root{--sp-gap:clamp(12px, calc(100vw * .02 - 12px), 56px);--sp-card-w:clamp(200px, calc((100vw - 1120px) / 2 - 16px - var(--sp-gap)), 392px);--sp-side:calc(16px + var(--sp-card-w) + var(--sp-gap))}main.wrap,.sponsor-page,.site-header .inner,.ticker{max-width:min(1120px, calc(100vw - var(--sp-side) * 2))}.digest-card.wrap{max-width:min(1120px, calc(100vw - var(--sp-side) * 2 - 40px))}.site-footer .inner{max-width:min(1280px, calc(100vw - var(--sp-side) * 2 - 40px))}.hero{padding-left:var(--sp-side);padding-right:var(--sp-side)}.sp-rail{width:var(--sp-card-w);z-index:40;flex-direction:column;gap:10px;height:calc(100vh - 90px);display:flex;position:fixed;top:76px;overflow:hidden}.sp-rail .sp-card{flex-direction:column;flex:1 1 0;justify-content:center;width:auto;height:auto;min-height:0;display:flex}.sp-rail .sp-card>*{flex-shrink:0}.sp-rail .sp-card .sp-tag{flex-shrink:1;min-height:0}.sp-rail .sp-card.soldout{flex:auto;max-height:128px}.sp-rail .sp-checkout-form{flex:1 1 0;min-height:0;display:flex}.sp-rail .sp-checkout-form .sp-card{flex:1}.sp-left{left:16px}.sp-right{right:16px}.sp-banner{display:none!important}}.sp-banner{background:rgba(var(--tint,51, 230, 103), .1);border:1px solid rgba(var(--tint,51, 230, 103), .35);border-radius:6px;align-items:center;gap:12px;height:64px;margin:10px 0;padding:0 14px;transition:border-color .15s,background-color .15s;display:flex}.sp-banner:hover{border-color:rgba(var(--tint,51, 230, 103), .65)}.sp-banner.open,.sp-banner.soldout,.sp-banner.reserved{background:var(--surface);border:1px dashed var(--border)}.sp-banner.open:hover,.sp-banner.soldout:hover,.sp-banner.reserved:hover{border-color:var(--muted)}.sp-banner .sp-icon{flex-shrink:0;width:28px;height:28px}.sp-banner .sp-text{flex:1;min-width:0}.sp-banner .sp-name{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;display:block;overflow:hidden}.sp-banner .sp-tag{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:16px;display:block;overflow:hidden}.sp-banner .sp-arrow{color:var(--muted);flex-shrink:0}.sponsor-page{padding-bottom:90px}.sp-hero{text-align:center;padding-top:64px}.sp-hero h1{font-size:clamp(32px,6vw,56px)}.sp-hero .sub{max-width:62ch;color:var(--muted);margin:0 auto;padding-top:18px;font-size:15px;line-height:1.7}.sp-statband{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:24px 88px;padding:52px 0 16px;display:flex}.sp-stat{animation:pop-in .5s var(--ease-snap) both;animation-delay:calc(var(--i,0) * 80ms);flex-direction:column;align-items:center;gap:8px;display:flex}.sp-stat b{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg);font-size:clamp(30px,3.4vw,42px);font-weight:700;line-height:1.1}.sp-stat.green b{color:var(--primary)}.sp-stat span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px}@media (width<=700px){.sp-statband{grid-template-columns:1fr 1fr;gap:28px 16px;display:grid}}.sp-notice{border:1px solid var(--border);border-left:2px solid var(--kinda-bg);background:var(--surface);border-radius:8px;margin-top:22px;padding:12px 16px;font-size:13px}.sp-board,.sp-how{padding-top:48px}.sp-grid{grid-template-columns:repeat(3,1fr);gap:14px;padding-top:18px;display:grid}.sp-slot{border:1px solid var(--border);background:var(--surface);height:148px;transition:border-color .15s ease, background-color .15s ease, transform .15s var(--ease-out);border-radius:10px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.sp-slot:hover{border-color:var(--muted);transform:translateY(-2px)}.sp-slot.open{border-color:var(--primary-dim)}.sp-slot.open:hover,.sp-slot.sept-open:hover{border-color:var(--primary)}.sp-slot-price{font-family:var(--font-display);letter-spacing:-.02em;font-size:28px;font-weight:700}.sp-slot .sp-per{font-family:var(--font-mono);color:var(--muted);font-size:12px;font-weight:400}.sp-slot-taken{font-family:var(--font-display);letter-spacing:-.02em;font-size:20px;font-weight:700}.sp-slot-note{color:var(--muted);font-size:12px;line-height:1.6}.sp-slot form{margin-top:auto}.sp-slot .btn{justify-content:center;width:100%;padding:11px 14px;font-size:13.5px}.sp-steps{grid-template-columns:repeat(3,1fr);gap:18px;padding-top:18px;display:grid}.sp-step{border-left:2px solid var(--primary);padding-left:16px}.sp-step-n{letter-spacing:.14em;color:var(--primary);font-size:11px;font-weight:500}.sp-step-head{padding-top:8px;font-size:14px;font-weight:700;display:block}.sp-step p{color:var(--muted);padding-top:8px;font-size:13px;line-height:1.75}.sp-notify{padding-top:56px}.sp-notify .sub{color:var(--muted);padding-top:10px;font-size:14px}.sp-notify form{flex-wrap:wrap;gap:10px;width:min(520px,100%);padding-top:16px;display:flex}.sp-terms{padding-top:52px}.sp-terms p{max-width:76ch;color:var(--muted);padding-top:10px;font-size:12.5px;line-height:1.85}.sp-terms a{color:var(--primary)}.sp-form-wrap{padding-top:30px}.sp-form{flex-direction:column;gap:16px;width:min(520px,100%);display:flex}.sp-form label{flex-direction:column;gap:7px;display:flex}.sp-form .sp-count{color:var(--muted);font-weight:400}.sp-form input[type=text],.sp-form input[type=url],.sp-notify input[type=email],.admin input[type=text],.admin input[type=url],.admin input[type=number]{background:var(--bg);border:1px solid var(--border);min-width:0;color:var(--fg);font:inherit;border-radius:7px;flex:1;padding:12px 16px;font-size:13.5px;transition:border-color .15s}.sp-form input:focus,.sp-notify input:focus,.admin input:focus{border-color:var(--primary);outline:none}.sp-form input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.sp-form input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.sp-form input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.sp-notify input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.sp-notify input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.sp-notify input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.admin input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.admin input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.admin input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.sp-color-row{align-items:center;gap:12px;display:flex}.sp-form input[type=color]{background:var(--bg);border:1px solid var(--border);cursor:pointer;border-radius:7px;flex:none;width:46px;height:34px;padding:3px}.sp-color-hint{color:var(--muted);font-size:12px;line-height:1.5}.sp-preview-wrap{flex-direction:column;gap:10px;display:flex}.sp-preview .sp-card{cursor:default}.admin .sp-preview{padding-top:16px}.sp-form-msg{min-height:20px;font-size:13px}.sp-form-msg.ok{color:var(--primary)}.sp-form-msg.bad{color:var(--no-bg)}.sp-form .btn{align-self:flex-start}.sp-form .fine{font:11.5px/1.6 var(--font-mono);color:var(--muted)}.admin{padding-top:30px;padding-bottom:90px}.admin-msg{border:1px solid var(--primary-dim);background:var(--surface);border-radius:8px;margin-top:16px;padding:12px 16px;font-size:13px}.admin-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:18px 0 14px;display:grid}.admin-card,.admin-row{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.admin-rows{flex-direction:column;gap:12px;padding-top:18px;display:flex}.admin-strong{font-size:15px;font-weight:700}.admin-sub{color:var(--muted);word-break:break-word;font-size:12px;line-height:1.6}.admin-card form,.admin-edit{flex-wrap:wrap;gap:8px;display:flex}.admin-actions{flex-wrap:wrap;gap:8px;padding-top:4px;display:flex}.admin .btn{padding:11px 16px;font-size:13.5px}.admin input{width:100%}@media (width>=560px){.admin-card input[type=number]{width:110px}.admin-edit input{width:auto}}@media (width<=760px){.sp-grid,.sp-steps{grid-template-columns:1fr}.sp-slot{height:auto;min-height:132px}.sp-notify input[type=email]{flex-basis:100%}.sp-notify .btn.primary{flex:1;justify-content:center}}[data-theme=light] a.row:hover{background:var(--surface-2)}[data-theme=light] .site-nav .gh,[data-theme=light] .theme-toggle,[data-theme=light] .chip:not(.active),[data-theme=light] .vchip:not(.active),[data-theme=light] .btn.ghost{background:#fff;box-shadow:0 1px 2px #171a170f}[data-theme=light] .toast,[data-theme=light] .chart-tip,[data-theme=light] .digest-bar{background:#fff}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sp-tape{background:var(--bg);border-bottom:1px solid var(--border);height:46px;display:none;overflow:hidden}@media (width<=1279px){.sp-tape{display:block}.sp-tape.top{z-index:55;position:sticky;top:0}.site-header{top:46px}.digest-bar{bottom:52px}}.sp-tape.bottom{z-index:60;border-top:1px solid var(--border);border-bottom:none;position:fixed;bottom:0;left:0;right:0}.sp-tape-track{width:max-content;animation:70s linear infinite sp-tape-slide;display:flex}.sp-tape:hover .sp-tape-track{animation-play-state:paused}.sp-tape-half{display:flex}.sp-tape-item{font-family:var(--font-mono);white-space:nowrap;color:var(--fg);align-items:center;gap:8px;padding:13px 22px;font-size:13px;text-decoration:none;display:flex}.sp-tape-item img{border-radius:4px}.sp-tape-item.open,.sp-tape-item.reserved{color:var(--muted)}.sp-tape-item:hover span{text-decoration:underline}.sp-tape-spacer{height:46px;display:none}@media (width<=1279px){.sp-tape-spacer{display:block}.sp-banner{display:none!important}}@keyframes sp-tape-slide{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.sp-tape-track{animation:none}.sp-tape{overflow-x:auto}}.sp-quarter{width:100%;font-family:var(--font-mono);color:var(--fg);text-align:center;border:1px solid var(--border);transition:border-color .15s ease, background-color .15s ease, transform .12s var(--ease-snap);border-radius:8px;margin:14px 0 6px;padding:12px 16px;font-size:12.5px;font-weight:500;display:block}.sp-quarter:hover{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, transparent)}.sp-quarter:active{transform:scale(.98)}@media (width<=560px){.brand .word{display:none}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
