:root{--motion-duration-instant:120ms;--motion-duration-fast:200ms;--motion-duration-base:300ms;--motion-duration-count:750ms;--motion-ease:cubic-bezier(0.2,0.8,0.2,1);--motion-ease-enter:cubic-bezier(0.1,0.9,0.2,1);--motion-distance:12px}.reveal{opacity:0;transform:translateY(var(--motion-distance));transition:opacity var(--motion-duration-fast) var(--motion-ease),transform var(--motion-duration-fast) var(--motion-ease);will-change:opacity,transform}.reveal.is-revealed{opacity:1;transform:none;will-change:auto}[data-motion=reduced] .reveal{transform:none}[data-motion=off] *,[data-motion=off] :after,[data-motion=off] :before{animation:none!important;transition:none!important}[data-motion=off] .reveal{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{transform:none;transition:opacity var(--motion-duration-fast) linear}*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}:root{--red:#d6122b;--red-deep:#a50d20;--ink:#16161a;--ink-soft:#2a2a30;--paper:#f6f4ef;--paper-pure:#fffdf9;--card:#fffdf9;--bg:#fffdf9;--line:#e0dcd2;--muted:#6b6b6f;--win:#1a7f4b;--draw:#b08400;--loss:#b3201d;--shadow-card:0 1px 2px rgba(22,22,26,.04),0 8px 24px rgba(22,22,26,.06);--radius:14px;--maxw:1140px}[data-theme=ios]{--red:#007aff;--red-deep:#0a5fd0;--ink:#1c1c1e;--ink-soft:#3a3a3c;--paper:#f2f2f7;--paper-pure:#fff;--card:#fff;--bg:#fff;--line:#d1d1d6;--muted:#8e8e93;--win:#34c759;--draw:#ff9500;--loss:#ff3b30;--shadow-card:0 1px 2px rgba(0,0,0,.04),0 4px 16px rgba(0,0,0,.06);--radius:18px}[data-theme=ios] body{font-family:-apple-system,SF Pro Text,system-ui,sans-serif}[data-theme=ios] .display,[data-theme=ios] h1,[data-theme=ios] h2,[data-theme=ios] h3{font-family:-apple-system,SF Pro Display,system-ui,sans-serif;font-weight:700;letter-spacing:-.02em}[data-theme=dark]{--red:#ff4d63;--red-deep:#d6122b;--ink:#f2f2f4;--ink-soft:#c9c9d0;--paper:#131316;--paper-pure:#1d1d22;--card:#1d1d22;--bg:#1d1d22;--line:#34343c;--muted:#9a9aa2;--win:#35d07f;--draw:#e0b020;--loss:#ff5a54;--shadow-card:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.5)}[data-theme=roker]{--red:#9e1b32;--red-deep:#6f1222;--ink:#2b2218;--ink-soft:#4a3d2c;--paper:#efe6d2;--paper-pure:#f7f0e0;--card:#f7f0e0;--bg:#f7f0e0;--line:#d8cbac;--muted:#7c6f57;--win:#4f7a2f;--draw:#9a7a16;--loss:#9e1b32;--shadow-card:0 1px 2px rgba(43,34,24,.06),0 8px 24px rgba(43,34,24,.1)}[data-theme=mackem]{--red:#ee1c2e;--red-deep:#c00018;--ink:#0a0a0c;--ink-soft:#222226;--paper:#fff;--paper-pure:#fff;--card:#fff;--bg:#fff;--line:#e4e4e8;--muted:#6a6a70;--win:#119a52;--draw:#c98a00;--loss:#ee1c2e;--shadow-card:0 2px 4px rgba(0,0,0,.06),0 10px 30px rgba(0,0,0,.1);--radius:8px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Fraunces,Georgia,serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.5}.display,h1,h2,h3{font-family:Archivo,system-ui,sans-serif;font-weight:900;letter-spacing:-.02em;line-height:.98;text-transform:uppercase}a{color:inherit;text-decoration:none}.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:var(--ink);color:var(--paper-pure);border-bottom:4px solid var(--red)}.nav-inner{justify-content:space-between;height:68px}.brand,.nav-inner{display:flex;align-items:center}.brand{font-family:Archivo;font-weight:900;font-size:1.35rem;text-transform:uppercase;letter-spacing:-.03em;gap:10px}.brand .crest{width:30px;height:30px;border-radius:6px;background:repeating-linear-gradient(90deg,var(--red) 0 6px,var(--paper-pure) 6px 12px)}.nav-links{display:flex;gap:28px;font-family:Archivo;font-weight:600;text-transform:uppercase;font-size:.82rem;letter-spacing:.04em}.nav-links a{opacity:.82;transition:opacity .15s}.nav-links a.active,.nav-links a:hover{opacity:1;color:#fff}.hero{background:var(--ink);color:var(--paper-pure);padding:72px 0 88px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;top:0;right:-10%;height:100%;width:38%;background:repeating-linear-gradient(115deg,var(--red) 0 22px,transparent 22px 44px);opacity:.12;transform:skewX(-8deg)}.hero h1{font-size:clamp(2.6rem,7vw,5.5rem)}.hero h1 .accent{color:var(--red)}.hero p{font-size:1.15rem;max-width:540px;margin-top:18px;opacity:.85}section{padding:56px 0}.section-head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:10px;margin-bottom:28px}.section-head h2{font-size:1.6rem}.section-head .meta{font-family:Archivo;font-weight:600;font-size:.8rem;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.card{background:var(--paper-pure);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card)}.match-row{display:grid;grid-template-columns:92px 1fr auto 1fr 64px;align-items:center;grid-gap:14px;gap:14px;padding:13px 18px;border-bottom:1px solid var(--line);transition:background .12s}.match-row:hover{background:#faf8f3}.match-row:last-child{border-bottom:none}.match-row.mrow{display:flex!important;flex-direction:column;align-items:stretch;grid-template-columns:none!important;gap:6px}.mrow .mrow-teams{display:flex;align-items:center;gap:10px}.mrow .mrow-teams .match-team{flex:1 1;min-width:0}.mrow .mrow-teams .match-team.home{text-align:right}.mrow .mrow-teams .match-team.away{text-align:left}.mrow .mrow-teams .match-score{flex:0 0 auto}.mrow .mrow-meta{display:flex;gap:8px;flex-wrap:wrap;font-family:Archivo;font-size:.72rem;color:var(--muted);font-weight:600}.mrow .mrow-meta span:not(:last-child):after{content:"·";margin-left:8px;opacity:.5}.match-date{font-family:Archivo;font-size:.78rem;color:var(--muted);letter-spacing:.02em}.match-date,.match-team{font-weight:600}.match-team.home{text-align:right}.match-score{font-weight:900;font-size:1.05rem;background:var(--ink);border-radius:8px;padding:5px 12px;text-align:center;min-width:56px}.match-score,.result-pill{font-family:Archivo;color:#fff}.result-pill{font-weight:800;font-size:.7rem;width:22px;height:22px;border-radius:50%;display:grid;place-items:center}.result-W{background:var(--win)}.result-D{background:var(--draw)}.result-L{background:var(--loss)}.season-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));grid-gap:10px;gap:10px}.season-chip{font-family:Archivo;font-weight:800;font-size:1rem;padding:16px 10px;text-align:center;border-radius:10px;background:var(--paper-pure);border:1px solid var(--line);cursor:pointer;transition:all .14s}.season-chip:hover{border-color:var(--red);transform:translateY(-2px);box-shadow:var(--shadow-card)}.season-chip .yr{color:var(--muted);font-size:.72rem;display:block;margin-top:3px}.squad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:16px;gap:16px}.player-card{padding:20px;position:relative;overflow:hidden}.player-card .num{font-family:Archivo;font-weight:900;font-size:2.6rem;color:var(--red);line-height:1}.player-card .pos{font-family:Archivo;font-size:.7rem;font-weight:600;text-transform:uppercase;color:var(--muted);letter-spacing:.06em}.player-card .name{font-weight:600;font-size:1.05rem;margin-top:6px}.change{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:.95rem}.change .tag{font-family:Archivo;font-weight:800;font-size:.66rem;text-transform:uppercase;padding:3px 9px;border-radius:20px;letter-spacing:.04em}.tag.added{background:#e3f5ea;color:var(--win)}.tag.removed{background:#fde9e8;color:var(--loss)}.ad-slot{margin:32px auto;max-width:var(--maxw);min-height:90px;display:grid;place-items:center;background:repeating-linear-gradient(45deg,#efece5 0 10px,#f4f1ea 10px 20px);border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-family:Archivo;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}footer{background:var(--ink);color:var(--paper);padding:40px 0;margin-top:60px}footer .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:.85rem}footer a{color:var(--red)}.install-app-btn{display:inline-flex;align-items:center;gap:8px;margin-top:16px;background:var(--red);color:#fff;border:0;border-radius:10px;padding:10px 18px;font-weight:700;font-size:.92rem;cursor:pointer;font-family:inherit;transition:filter .15s}.install-app-btn:hover{filter:brightness(1.1)}.article-body{font-family:Fraunces,Georgia,serif;color:var(--ink)}.article-body>:first-child{margin-top:0}.article-body p{margin:0 0 1.15em;line-height:1.75;font-size:1.12rem}.article-body h2{font-weight:800;font-size:1.5rem;line-height:1.25;margin:2em 0 .6em;letter-spacing:-.01em}.article-body h2,.article-body h3{font-family:Archivo,system-ui,sans-serif}.article-body h3{font-weight:700;font-size:1.2rem;line-height:1.3;margin:1.6em 0 .5em}.article-body ol,.article-body ul{margin:0 0 1.2em;padding-left:1.4em;line-height:1.7;font-size:1.1rem}.article-body li{margin-bottom:.4em;padding-left:.2em}.article-body a{color:var(--red);text-decoration:underline;text-underline-offset:2px}.article-body strong{font-weight:700}.article-body em{font-style:italic}.article-body blockquote{margin:1.5em 0;padding:.4em 0 .4em 1.2em;border-left:3px solid var(--red);font-style:italic;color:var(--ink-soft)}.article-body h2:first-child,.article-body h3:first-child{margin-top:0}.rich-edit:focus{outline:none}.rich-edit:empty:before{content:"Start writing your article…";color:var(--muted)}.rich-edit h2,.rich-edit h3{margin-top:.8em}.viz-panel{transition:box-shadow .15s ease}.viz-panel:hover{box-shadow:0 4px 18px rgba(20,20,26,.07)}.feat-card{transition:transform .12s ease,box-shadow .12s ease}.feat-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(20,20,26,.09)}.feat-kicker{font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.feat-kicker,.loading{font-family:Archivo;color:var(--muted)}.loading{padding:60px;text-align:center}.search-box{width:100%;padding:14px 18px;font-family:Archivo;font-size:1rem;border:2px solid var(--ink);border-radius:10px;background:var(--paper-pure)}.search-box:focus{outline:none;border-color:var(--red)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.rise{animation:rise .5s cubic-bezier(.2,.7,.2,1) both}.rise-2{animation-delay:.08s}.rise-3{animation-delay:.16s}@media (max-width:640px){.nav-links{gap:16px;font-size:.72rem}}.btn{font-family:Archivo;font-weight:800;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em;padding:9px 16px;border-radius:8px;border:none;cursor:pointer;background:var(--red);color:#fff;transition:transform .12s}.btn:hover{transform:translateY(-1px)}.btn.sm{padding:6px 12px;font-size:.66rem}.modal-bg{position:fixed;inset:0;background:rgba(22,22,26,.6);display:grid;place-items:center;z-index:100}.modal{background:var(--paper-pure);border-radius:18px;padding:36px;max-width:380px;width:90%;text-align:center}.modal h2{font-size:1.6rem;margin-bottom:6px}.modal p{color:var(--muted);margin-bottom:20px;font-size:.95rem}.oauth{display:block;width:100%;padding:13px;border-radius:10px;border:2px solid var(--line);background:#fff;font-family:Archivo;font-weight:700;font-size:.9rem;margin-bottom:10px;cursor:pointer;color:var(--ink)}.oauth:hover{border-color:var(--ink)}.modal .close{margin-top:10px;color:var(--muted);font-size:.85rem;cursor:pointer}.composer{padding:18px}.composer textarea{width:100%;border:2px solid var(--line);border-radius:10px;padding:12px;font-family:Fraunces;font-size:1rem;resize:vertical;min-height:74px}.composer textarea:focus{outline:none;border-color:var(--red)}.composer-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:12px}.composer-foot small{color:var(--muted)}.comment{display:flex;gap:14px;padding:18px 0;border-bottom:1px dashed var(--line)}.comment:last-child{border-bottom:none}.comment.held{opacity:.85;background:#fffdf3;border-radius:10px;padding:14px;border:1px dashed var(--draw);margin:8px 0}.avatar{width:42px;height:42px;border-radius:10px;flex:none;display:grid;place-items:center;font-family:Archivo;font-weight:900;color:#fff;font-size:1rem}.c-head{display:flex;align-items:center;gap:10px;margin-bottom:5px;flex-wrap:wrap}.c-name{font-weight:800;font-size:.92rem}.c-actions,.c-name{font-family:Archivo}.c-actions{display:flex;gap:16px;margin-top:8px;font-size:.74rem;font-weight:600;color:var(--muted)}.c-actions span{cursor:pointer}.c-actions span:hover{color:var(--red)}.badge{font-family:Archivo;font-weight:800;font-size:.6rem;text-transform:uppercase;padding:2px 8px;border-radius:20px;letter-spacing:.04em}.badge.trusted{background:#e3f5ea;color:var(--win)}.badge.new{background:#eef0f4;color:var(--muted)}.badge.held{background:#fff4d6;color:var(--draw)}.badge.banned{background:#fde9e8;color:var(--loss)}.tabs{display:flex;gap:6px;margin:8px 0 22px;flex-wrap:wrap}.tab{font-family:Archivo;font-weight:800;text-transform:uppercase;font-size:.74rem;letter-spacing:.03em;padding:10px 18px;border-radius:9px;background:var(--paper-pure);border:1px solid var(--line);cursor:pointer}.tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}.brand-logo{height:34px;width:auto;max-width:160px;object-fit:contain;display:block}.h2h-table{width:100%;border-collapse:collapse;font-family:Archivo}.h2h-table th{text-align:center;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:12px 10px;border-bottom:2px solid var(--ink);position:-webkit-sticky;position:sticky;top:0;background:var(--paper-pure)}.h2h-table td{text-align:center;padding:11px 10px;border-bottom:1px solid var(--line);font-size:.9rem}.h2h-table tbody tr:hover{background:#faf8f3}.h2h-table td:first-child,.h2h-table th:first-child{text-align:left;padding-left:16px}.explore-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:12px;gap:12px;margin:16px 0}.nav-dd{position:relative;display:inline-block}.nav-dd-btn{background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:6px 4px;font-family:Archivo}.nav-dd-menu{position:absolute;top:100%;left:0;background:var(--ink);border:1px solid hsla(0,0%,100%,.12);border-radius:8px;padding:6px;min-width:190px;z-index:50;box-shadow:0 8px 24px rgba(0,0,0,.3)}.nav-dd-menu a{display:block;padding:9px 12px;color:#fff;border-radius:5px;white-space:nowrap;font-size:.9rem}.nav-dd-menu a:hover{background:var(--red)}.nav-burger{display:none;background:none;border:none;color:inherit;font-size:1.5rem;cursor:pointer}@media (max-width:760px){.nav-burger{display:block}.nav-links{display:none;position:absolute;top:100%;right:0;left:0;flex-direction:column;background:var(--ink);padding:12px;gap:8px;align-items:flex-start}.nav-links.open{display:flex}.nav-dd,.nav-dd-menu{position:static;width:100%}.nav-dd-menu{box-shadow:none;border:none;padding-left:12px}}.sharebar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:20px 0}.sharebar-label{font-family:Archivo;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-right:4px}.share-btn{font-family:Archivo;font-size:.82rem;padding:7px 14px;border-radius:999px;background:var(--ink);color:#fff;border:none;cursor:pointer;text-decoration:none;line-height:1;display:inline-flex;align-items:center;min-height:38px;transition:background .15s}.share-btn:hover{background:var(--red)}@media (max-width:760px){.container{padding-left:14px;padding-right:14px}h1{font-size:1.5rem!important}h2{font-size:1.15rem}.section-head{flex-wrap:wrap;gap:4px}.section-head .meta{font-size:.75rem}.match-row{grid-template-columns:1fr auto!important;grid-template-areas:"meta score" "team score"!important;gap:2px 10px;padding:12px 14px;align-items:center}.match-row .match-date,.match-row .match-meta,.match-row .match-season{grid-area:meta;font-size:.72rem;color:var(--muted)}.match-row .match-team,.match-row>:first-child:not(.match-score){grid-area:team}.match-row .match-score{grid-area:score;font-weight:800;align-self:center}.match-row .match-team:not(.home){display:inline}.match-row .match-season{display:none}.h2h-table{font-size:.8rem}.h2h-table td,.h2h-table th{padding:8px 6px}.card{overflow-x:auto}.squad-grid{gap:10px}.explore-grid,.squad-grid{grid-template-columns:repeat(2,1fr)!important}.player-card .num{font-size:1.6rem}input,select,textarea{font-size:16px!important}.btn,.share-btn{min-height:42px}.brand-text{font-size:1rem}.brand-logo{height:28px}.sharebar{gap:6px}.share-btn{padding:8px 12px;font-size:.8rem}}@media (max-width:400px){.explore-grid,.squad-grid{grid-template-columns:1fr!important}h1{font-size:1.3rem!important}}@media (min-width:761px) and (max-width:1024px){.squad-grid{grid-template-columns:repeat(3,1fr)}}.playerbio-prose{font-family:Fraunces,Georgia,serif;font-size:1.02rem;line-height:1.6;margin:0 0 16px;color:var(--ink)}.playerbio-src{color:var(--muted);font-size:.8rem;font-family:Archivo}.playerbio-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px 24px;gap:12px 24px;margin:0 0 14px}.playerbio-facts div{border-left:3px solid var(--red);padding-left:10px}.playerbio-facts dt{font-family:Archivo;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0}.playerbio-facts dd{font-family:Archivo;font-weight:700;font-size:.95rem;margin:2px 0 0}.playerbio-link{font-family:Archivo;font-size:.85rem;color:var(--red)}@media (max-width:760px){.playerbio-facts{grid-template-columns:repeat(2,1fr);gap:10px 14px}.playerbio-prose{font-size:.95rem}}.playerbio{display:flow-root;overflow:hidden}.playerbio-photo{float:right;width:120px;height:150px;object-fit:cover;object-position:top center;border-radius:10px;margin:0 0 12px 18px;border:2px solid var(--line);max-width:40%}@media (max-width:760px){.playerbio-photo{width:96px;height:120px;margin-left:12px}}.autocomplete{position:relative;width:100%}.autocomplete-input{width:100%;padding:11px 14px;border:2px solid var(--ink);border-radius:8px;font-family:Archivo;font-size:1rem}.autocomplete-menu{position:absolute;top:100%;left:0;right:0;z-index:60;margin-top:4px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.12);overflow:hidden}.autocomplete-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;font-family:Archivo;font-size:.92rem}.autocomplete-item.hi,.autocomplete-item:hover{background:#faf3f4}.autocomplete-kind{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px}.legend-head{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}.legend-label{font-family:Archivo;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.legend-score{font-family:Archivo;font-weight:900;font-size:2.2rem;color:var(--red);line-height:1}.legend-votes{font-family:Archivo;font-size:.8rem;color:var(--muted)}.stars{display:flex;gap:2px;margin-top:4px}.star{background:none;border:none;font-size:1.6rem;color:var(--line);cursor:pointer;padding:0 2px;transition:color .1s}.star.on{color:#f5b301}.legend-msg{margin-top:10px;font-size:.85rem;color:var(--draw);font-family:Archivo}.gsearch{position:relative;width:260px}.gsearch-input{width:100%;padding:8px 12px;border-radius:999px;border:1px solid hsla(0,0%,100%,.25);background:hsla(0,0%,100%,.1);color:#fff;font-family:Archivo;font-size:.9rem}.gsearch-input::placeholder{color:hsla(0,0%,100%,.6)}.gsearch-input:focus{outline:none;background:#fff;color:var(--ink)}.gsearch-menu{position:absolute;top:110%;left:0;right:0;background:#fff;color:var(--ink);border-radius:10px;box-shadow:0 12px 34px rgba(0,0,0,.25);overflow:hidden;z-index:70;min-width:280px}.gsearch-item{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;cursor:pointer;font-size:.9rem}.gsearch-item.hi,.gsearch-item:hover{background:#faf3f4}.gsearch-kind{font-size:.66rem;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 7px}.gsearch-seeall{padding:10px 14px;font-size:.82rem;font-weight:700;color:var(--red);cursor:pointer;border-top:1px solid var(--line)}.gsearch-iconbtn{display:none;background:none;border:none;color:inherit;font-size:1.1rem;cursor:pointer}.gsearch-mobile{position:absolute;top:100%;left:0;right:0;background:var(--ink);padding:12px;z-index:65}.gsearch-mobile .gsearch{width:100%}@media (max-width:860px){.gsearch-desktop{display:none}.gsearch-iconbtn{display:block}}@media (min-width:861px){.gsearch-mobile{display:none}}.affiliate-slot{margin:22px 0}.affiliate-disclosure{font-size:.72rem;color:var(--muted);font-family:Archivo;margin-bottom:8px;font-style:italic}.affiliate-blocks{display:flex;flex-wrap:wrap;gap:14px}.affiliate-link{display:inline-flex;flex-direction:column;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;padding:12px;text-decoration:none;color:var(--ink);font-family:Archivo;font-size:.85rem;transition:border-color .15s}.affiliate-link:hover{border-color:var(--red)}.affiliate-link img{max-width:240px;height:auto;border-radius:6px}.affiliate-embed{width:100%}.aff-in{padding:9px 12px;border:2px solid var(--ink);border-radius:6px;font-family:Archivo;font-size:.9rem}.kit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:18px;gap:18px}.kit-card{display:flex;flex-direction:column;overflow:hidden;padding:0}.kit-card img{width:100%;object-fit:contain;padding:10px}.kit-card img,.kit-noimg{height:240px;background:#f7f7f7}.kit-noimg{display:flex;align-items:center;justify-content:center;color:var(--muted);font-family:Archivo}.kit-info{padding:12px 14px}.kit-title{font-family:Archivo;font-weight:700;margin-bottom:4px}.kit-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.kit-meta span{font-size:.7rem;font-family:Archivo;background:#f0eaea;color:var(--ink);padding:2px 8px;border-radius:999px}.kit-rating{display:flex;align-items:center;gap:10px}.kit-rating-pct{font-family:Archivo;font-weight:800;color:var(--red)}.kit-rating-pct span{font-weight:400;color:var(--muted);font-size:.8rem}.stars.sm .star{font-size:1.05rem}.kit-attr{font-size:.62rem;color:var(--muted);margin-top:8px;line-height:1.3}.timeline-flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-family:Archivo;font-size:.9rem}.timeline-flow span:not(:last-child):after{content:" →";color:var(--red);margin-left:8px}@media (max-width:760px){.kit-grid{grid-template-columns:repeat(2,1fr);gap:12px}.kit-card img{height:180px}}.kit-card{position:relative}.kit-rank{position:absolute;top:8px;left:8px;z-index:2;background:var(--red);color:#fff;font-family:Archivo;font-weight:800;font-size:.8rem;padding:3px 9px;border-radius:20px}.kit-type-badge{background:var(--ink);padding:1px 8px;font-size:.72rem;font-weight:700}.kit-illus,.kit-type-badge{color:#fff;border-radius:4px}.kit-illus{position:absolute;top:8px;right:8px;z-index:2;background:rgba(0,0,0,.6);font-size:.62rem;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px}.xi-pitch{position:relative;width:100%;max-width:560px;margin:0 auto;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:repeating-linear-gradient(0deg,#2e7d32 0 8%,#2a7430 8% 16%),#2e7d32;border:3px solid hsla(0,0%,100%,.35);box-shadow:inset 0 0 0 18px hsla(0,0%,100%,.06)}.xi-pitch:before{left:50%;width:110px;height:110px;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;transform:translate(-50%,-50%)}.xi-pitch:after,.xi-pitch:before{content:"";position:absolute;top:50%}.xi-pitch:after{left:0;right:0;border-top:2px solid hsla(0,0%,100%,.3)}.xi-row{position:absolute;left:0;right:0;transform:translateY(-50%);justify-content:space-evenly;padding:0 8px}.xi-marker,.xi-row{display:flex;align-items:center}.xi-marker{flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;width:76px}.xi-shirt{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--red);color:#fff;border:2px solid #fff;overflow:hidden;transition:transform .12s}.xi-marker.active .xi-shirt{transform:scale(1.15);box-shadow:0 0 0 3px var(--gold,#f5b301)}.xi-marker:not(.filled) .xi-shirt{background:#fff;border-style:dashed;border-color:var(--ink)}.xi-marker:not(.filled) .xi-initials{color:var(--ink)}.xi-shirt img{width:100%;height:100%;object-fit:cover;object-position:top center}.xi-initials{font-family:Archivo;font-weight:800;font-size:1rem}.xi-name{font-family:Archivo;font-size:.7rem;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quiz-correct{background:#1b7d3f!important;color:#fff!important;border-color:#1b7d3f!important}.quiz-wrong{background:#b3261e!important;color:#fff!important;border-color:#b3261e!important}@media (max-width:640px){.xi-pitch{max-width:100%}.xi-marker{width:60px}.xi-shirt{width:46px;height:46px}.xi-name{font-size:.6rem;max-width:60px}.xi-initials{font-size:.8rem}.match-row{font-size:.9rem}.quiz-correct,.quiz-wrong{font-size:.95rem}.kit-rank{font-size:.7rem;padding:2px 7px}.gsearch-mobile{padding:8px 12px}.gsearch-menu{max-height:60vh;overflow-y:auto}}.xi-pitch{box-sizing:border-box}.kv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:12px;gap:12px}.kv-grid .k{display:block;font-family:Archivo;font-size:.68rem;text-transform:uppercase;color:var(--muted)}.kv-grid .v{display:block;font-family:Fraunces;font-size:1.3rem;font-weight:600}@media (hover:hover){.match-row:hover,tbody tr:hover{background:color-mix(in srgb,var(--red) 4%,transparent);transform:translateY(-1px);transition:background var(--motion-duration-instant) var(--motion-ease),transform var(--motion-duration-instant) var(--motion-ease)}.card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--ink) 18%,transparent);transition:transform var(--motion-duration-instant) var(--motion-ease),border-color var(--motion-duration-instant) var(--motion-ease)}}.card:focus-visible,.match-row:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:2px}.btn,button.btn{transition:background var(--motion-duration-instant) var(--motion-ease),color var(--motion-duration-instant) var(--motion-ease),transform var(--motion-duration-instant) var(--motion-ease)}@media (hover:hover){.btn:hover{transform:translateY(-1px)}}.btn:active{transform:translateY(0)}.btn.is-done{background:#1b9e3f!important;color:#fff!important}.btn.is-done:after{content:" \2713";display:inline-block;animation:tick-in var(--motion-duration-instant) var(--motion-ease) both}@keyframes tick-in{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.btn.is-error{background:var(--red)!important;color:#fff!important}.skeleton{position:relative;overflow:hidden;background:color-mix(in srgb,var(--ink) 8%,transparent);border-radius:6px}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--paper-pure,#fff) 45%,transparent),transparent);animation:shimmer 1.2s linear infinite}@keyframes shimmer{to{transform:translateX(100%)}}[data-motion=off] .skeleton:after,[data-motion=reduced] .skeleton:after{animation:none}.card{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06)}@keyframes spark-draw{to{stroke-dashoffset:0}}.chart-line-draw{stroke-dasharray:1200;stroke-dashoffset:1200;animation:chart-draw .4s var(--motion-ease) forwards}@keyframes chart-draw{to{stroke-dashoffset:0}}.chart-bar-grow{transform-origin:bottom;animation:bar-grow .4s var(--motion-ease) both}@keyframes bar-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}[data-motion=off] .chart-bar-grow,[data-motion=off] .chart-line-draw,[data-motion=reduced] .chart-bar-grow,[data-motion=reduced] .chart-line-draw{animation:none;stroke-dashoffset:0;transform:none}.loading{padding:0!important;text-align:left!important;color:transparent!important;position:relative;min-height:96px;overflow:hidden;border-radius:8px;background:linear-gradient(color-mix(in srgb,var(--ink) 9%,transparent) 0 0) 0 8px /62% 14px no-repeat,linear-gradient(color-mix(in srgb,var(--ink) 9%,transparent) 0 0) 0 34px /88% 14px no-repeat,linear-gradient(color-mix(in srgb,var(--ink) 9%,transparent) 0 0) 0 60px /74% 14px no-repeat}.loading:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,#fff 55%,transparent),transparent);animation:shimmer 1.2s linear infinite}[data-motion=off] .loading:after,[data-motion=reduced] .loading:after{animation:none}@media (prefers-reduced-motion:reduce){.loading:after{animation:none}}