/* Prompt Hackers — the workshop theme (direction E, approved 2026-10-03).
   One colour (lime), workshop greys, Big Shoulders / Overpass / Overpass Mono, self-hosted.
   Every class carries the site prefix (footprints rule). */
@font-face{font-family:"PH Display";src:url(gxj-display.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"PH Text";src:url(gxj-text.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"PH Mono";src:url(gxj-mono.woff2) format("woff2");font-weight:300 700;font-display:swap}
/* Metric-matched stand-ins, shown until the fonts above arrive: the same advance width and line box as the
   real face, so the swap does not move anything (CLS 0.10–0.25 → 0 on / and /ai-tools/*). Widths fitted in
   Chrome against the woff2s (2026-10-04); ascent/descent = the woff2's typo metrics ÷ size-adjust. */
@font-face{font-family:"PH Display FB";src:local("Impact");size-adjust:94.06%;ascent-override:104.62%;descent-override:22.65%;line-gap-override:0%}
@font-face{font-family:"PH Text FB";src:local("Helvetica Neue"),local("HelveticaNeue"),local("Arial"),local("ArialMT"),local("Liberation Sans"),local("Arimo");font-weight:100 549;size-adjust:97.95%;ascent-override:90.15%;descent-override:39.1%;line-gap-override:0%}
@font-face{font-family:"PH Text FB";src:local("Helvetica Neue Bold"),local("HelveticaNeue-Bold"),local("Arial Bold"),local("Arial-BoldMT"),local("Liberation Sans Bold"),local("Arimo Bold");font-weight:550 749;size-adjust:96.65%;ascent-override:91.36%;descent-override:39.63%;line-gap-override:0%}
@font-face{font-family:"PH Text FB";src:local("Helvetica Neue Bold"),local("HelveticaNeue-Bold"),local("Arial Bold"),local("Arial-BoldMT"),local("Liberation Sans Bold"),local("Arimo Bold");font-weight:750 900;size-adjust:95.77%;ascent-override:92.2%;descent-override:39.99%;line-gap-override:0%}
@font-face{font-family:"PH Mono FB";src:local("Menlo Regular"),local("Menlo-Regular"),local("Menlo");font-weight:100 549;size-adjust:102.18%;ascent-override:86.42%;descent-override:37.48%;line-gap-override:0%}
@font-face{font-family:"PH Mono FB";src:local("Menlo Bold"),local("Menlo-Bold");font-weight:550 900;size-adjust:102.31%;ascent-override:86.3%;descent-override:37.43%;line-gap-override:0%}
:root{--bg:#e6e7e2;--panel:#f4f4f1;--ink:#151515;--soft:#55564f;--line:#151515;--grid:rgba(21,21,21,.07);--lime:#cdfa2e;--tape:#151515;--tapeink:#cdfa2e;--onlime:#151515;
  --fd:"PH Display","PH Display FB",Impact,"Arial Narrow",sans-serif;--ft:"PH Text","PH Text FB","Helvetica Neue",Arial,sans-serif;--fm:"PH Mono","PH Mono FB",ui-monospace,Menlo,Consolas,monospace;color-scheme:light}
:root[data-theme=dark]{--bg:#1a1b19;--panel:#232421;--ink:#ecece6;--soft:#a2a39b;--line:#ecece6;--grid:rgba(236,236,230,.05);--tape:#cdfa2e;--tapeink:#151515;color-scheme:dark}
*,*:before,*:after{box-sizing:border-box}
html{background:var(--bg)}
body.gxj-t{margin:0;color:var(--ink);background:var(--bg);font:16px/1.6 var(--ft);-webkit-font-smoothing:antialiased;
  background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:24px 24px}
:where(.gxj-t) a{color:inherit}
.gxj-t img{max-width:100%;height:auto}
.gxj-w{max-width:1200px;margin:0 auto;padding-inline:20px}
.gxj-ic{display:inline-block;vertical-align:-4px;flex:none}
.gxj-dymo{display:inline-block;background:var(--tape);color:var(--tapeink);font:600 11.5px/1.5 var(--fm);text-transform:uppercase;letter-spacing:.13em;padding:2px 8px 1px;border-radius:2px;box-shadow:inset 0 -2px 0 rgba(0,0,0,.25);text-decoration:none;white-space:nowrap}
a.gxj-dymo:hover{background:var(--lime);color:var(--onlime)}
.gxj-skip{position:absolute;left:-999px}.gxj-skip:focus{left:10px;top:10px;z-index:99;background:var(--lime);color:var(--onlime);padding:8px}
.gxj-t :focus-visible{outline:3px solid var(--lime);outline-offset:2px}

/* ---------- header ---------- */
.gxj-hd{background:var(--panel);border-bottom:2px solid var(--line);position:sticky;top:0;z-index:40}
.gxj-hdi{display:flex;align-items:stretch;min-height:60px}
.gxj-logo{display:flex;align-items:center;gap:2px;padding-right:16px;border-right:2px solid var(--line);font:900 25px/1 var(--fd);text-transform:uppercase;text-decoration:none;white-space:nowrap}
.gxj-logo .b{font-weight:400;color:var(--soft)}.gxj-logo .i{background:var(--lime);color:var(--onlime);padding:1px 5px}.gxj-logo .n{margin-left:8px}
.gxj-nav{display:flex}
.gxj-nav>a,.gxj-dd>button{display:flex;align-items:center;gap:6px;padding:0 13px;border:0;border-right:1px solid var(--line);background:none;color:inherit;font:800 13.5px/1 var(--ft);text-transform:uppercase;letter-spacing:.04em;text-decoration:none;cursor:pointer}
.gxj-nav>a:hover,.gxj-dd:hover>button,.gxj-dd:focus-within>button{background:var(--lime);color:var(--onlime)}
.gxj-nav small{font:11px var(--fm);opacity:.6}
.gxj-dd{position:relative;display:flex}
.gxj-mega{display:none;position:absolute;top:100%;left:-2px;z-index:50;background:var(--panel);border:2px solid var(--line);box-shadow:6px 6px 0 var(--line);padding:18px;gap:22px;grid-auto-flow:column;min-width:max-content}
.gxj-dd:hover .gxj-mega,.gxj-dd:focus-within .gxj-mega{display:grid}
.gxj-mega b{display:block;margin-bottom:6px}
.gxj-mega a{display:block;padding:4px 6px;margin:0 -6px;text-decoration:none;font-size:15px;white-space:nowrap}.gxj-mega a:hover{background:var(--lime);color:var(--onlime)}
.gxj-mega .all{font:600 12px var(--fm);text-transform:uppercase;margin-top:6px}
.gxj-hdr{margin-left:auto;display:flex;align-items:center;gap:8px;padding-left:14px}
.gxj-q{display:flex;border:2px solid var(--line);background:var(--bg)}.gxj-q input{border:0;background:none;font:14px var(--fm);padding:7px 10px;width:170px;color:var(--ink);outline:0}.gxj-q button{border:0;border-left:2px solid var(--line);background:none;color:var(--ink);padding:0 8px;cursor:pointer}
.gxj-tg,.gxj-burger{display:grid;place-items:center;width:38px;height:38px;border:2px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;padding:0}
.gxj-tg:hover,.gxj-burger:hover{background:var(--lime);color:var(--onlime)}
.gxj-tg .s{display:none}:root[data-theme=dark] .gxj-tg .s{display:block}:root[data-theme=dark] .gxj-tg .m{display:none}
.gxj-burger{display:none}
.gxj-mob{display:none;border-bottom:2px solid var(--line);background:var(--panel)}
.gxj-mob.open{display:block}
.gxj-mob .gxj-w{padding-block:12px 18px;display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}
.gxj-mob b{grid-column:1/-1;margin-top:10px}
.gxj-mob a{display:block;padding:6px 0;text-decoration:none;font-weight:600;border-bottom:1px solid var(--grid)}
.gxj-mob form{grid-column:1/-1}

/* ---------- shared blocks ---------- */
.gxj-crumb{font:12.5px var(--fm);color:var(--soft);margin:18px 0 12px}.gxj-crumb a{text-decoration:none}.gxj-crumb a:hover{background:var(--lime);color:var(--onlime)}
.gxj-h1,.gxj-t main h1{font:900 clamp(32px,3.8vw,52px)/.95 var(--fd);text-transform:uppercase;letter-spacing:-.003em;margin:10px 0 12px;text-wrap:balance}
.gxj-lede{font-size:18px;color:var(--soft);max-width:42em;margin:0}
.gxj-sh{display:flex;align-items:center;gap:14px;margin:34px 0 14px}.gxj-sh h2{font:900 clamp(24px,2.6vw,32px)/1 var(--fd);text-transform:uppercase;margin:0}.gxj-sh .r{flex:1;height:2px;background:var(--line)}
.gxj-panel{border:2px solid var(--line);background:var(--panel)}
.gxj-btn{display:inline-flex;align-items:center;gap:6px;font:600 12.5px/1 var(--fm);text-transform:uppercase;letter-spacing:.04em;border:2px solid var(--line);background:var(--ink);color:var(--bg);padding:10px 14px;cursor:pointer;text-decoration:none}
.gxj-btn:hover{background:var(--lime);color:var(--onlime)}.gxj-btn.alt{background:transparent;color:var(--ink)}.gxj-btn.alt:hover{background:var(--lime);color:var(--onlime)}
.gxj-small{font:12px/1.5 var(--fm);color:var(--soft)}
mark.gxj-v{background:none;color:inherit;outline:1.5px dashed currentColor;outline-offset:1px;padding:0 2px}mark.gxj-v.on{background:var(--lime);color:var(--onlime);outline:0}

/* spec row */
.gxj-spec{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:2px solid var(--line);margin:18px 0}.gxj-spec>div{padding:8px 10px;border-right:1px solid var(--line);min-width:0}.gxj-spec>div:last-child{border-right:0}
.gxj-spec span{display:block;font:11px var(--fm);text-transform:uppercase;color:var(--soft)}.gxj-spec b{font-weight:800;overflow-wrap:anywhere}

/* bins (prompt cards) */
.gxj-bins{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.gxj-bin{background:var(--panel);border:2px solid var(--line);display:flex;flex-direction:column;min-width:0}
.gxj-bin .l{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:2px solid var(--line);padding:7px 12px}
.gxj-bin .k{font:600 12.5px var(--fm)}
.gxj-bin .bd{padding:12px 14px 14px;display:flex;flex-direction:column;gap:8px;flex:1}
.gxj-bin h3{font:800 18px/1.25 var(--ft);margin:0}.gxj-bin h3 a{text-decoration:none}.gxj-bin h3 a:hover{text-decoration:underline;text-decoration-thickness:3px;text-decoration-color:var(--lime)}
.gxj-bin p{margin:0;color:var(--soft);font:13.5px/1.55 var(--fm);overflow-wrap:anywhere}
.gxj-bin .f{display:flex;border-top:2px solid var(--line)}.gxj-bin .f span{flex:1;padding:8px 12px;font:11.5px var(--fm);color:var(--soft);min-width:0}
.gxj-bin .f button{border:0;border-left:2px solid var(--line);background:var(--ink);color:var(--bg);font:600 11.5px var(--fm);text-transform:uppercase;padding:0 14px;cursor:pointer}.gxj-bin .f button:hover{background:var(--lime);color:var(--onlime)}

/* racks (link lists) */
.gxj-rack{border:2px solid var(--line);background:var(--panel)}.gxj-rack a{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 14px;border-top:1px solid var(--line);text-decoration:none}.gxj-rack a:first-child{border-top:0}
.gxj-rack a:hover{background:var(--lime);color:var(--onlime)}.gxj-rack .c{font:12px var(--fm);color:var(--soft)}.gxj-rack a:hover .c{color:var(--onlime)}.gxj-rack b{font-weight:800}

/* drawers */
.gxj-drawers{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:2px solid var(--line);background:var(--panel)}
.gxj-drawers a{padding:14px;border-right:2px solid var(--line);display:flex;flex-direction:column;gap:16px;min-height:118px;text-decoration:none;min-width:0}.gxj-drawers a:last-child{border-right:0}
.gxj-drawers .n{font:12px var(--fm);color:var(--soft)}.gxj-drawers b{font:900 27px/1 var(--fd);text-transform:uppercase;margin-top:auto;overflow-wrap:anywhere}
.gxj-drawers a:hover{background:var(--lime);color:var(--onlime)}.gxj-drawers a:hover .n{color:var(--onlime)}

/* ---------- home ---------- */
.gxj-hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));border:2px solid var(--line);margin-top:26px;background:var(--panel)}
.gxj-hero .a{grid-column:span 8;padding:32px 30px;border-right:2px solid var(--line);min-width:0}.gxj-hero .b{grid-column:span 4;display:grid;grid-template-rows:repeat(3,1fr)}
.gxj-hero h1{font:900 clamp(38px,4.6vw,62px)/.92 var(--fd);margin:12px 0 14px}
.gxj-hero h1 mark{background:var(--lime);color:var(--onlime);padding:0 .08em}
.gxj-hero p{font-size:18px;max-width:36em;margin:0 0 20px;color:var(--soft)}
.gxj-find{display:flex;border:2px solid var(--line)}.gxj-find input{flex:1;min-width:0;border:0;background:var(--bg);padding:14px;font:16px var(--fm);color:var(--ink);outline:0}
.gxj-find button{border:0;border-left:2px solid var(--line);background:var(--lime);color:var(--onlime);font:900 20px var(--fd);text-transform:uppercase;padding:0 22px;cursor:pointer}
.gxj-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.gxj-chips a{font:12px var(--fm);border:1.5px solid var(--line);padding:3px 8px;text-decoration:none;background:var(--bg)}.gxj-chips a:hover{background:var(--lime);color:var(--onlime)}
.gxj-stat{padding:16px 20px;border-bottom:2px solid var(--line);display:flex;flex-direction:column;justify-content:center}.gxj-stat:last-child{border-bottom:0}
.gxj-stat b{font:900 50px/1 var(--fd)}.gxj-stat span{font:12px var(--fm);text-transform:uppercase;letter-spacing:.08em;color:var(--soft)}
.gxj-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.gxj-biz{display:grid;grid-template-columns:1.1fr 1fr;border:2px solid var(--line);background:var(--ink);color:var(--bg);margin-top:34px}
.gxj-biz .a{padding:26px 28px}.gxj-biz h2{font:900 clamp(30px,3.6vw,44px)/1 var(--fd);text-transform:uppercase;margin:10px 0}.gxj-biz p{margin:0;opacity:.8}
.gxj-biz .b{border-left:2px solid var(--bg)}.gxj-biz .b a{display:flex;justify-content:space-between;padding:12px 18px;border-top:1px solid rgba(127,127,127,.4);text-decoration:none;font-weight:700}.gxj-biz .b a:first-child{border-top:0}.gxj-biz .b a:hover{background:var(--lime);color:var(--onlime)}
.gxj-cats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border:2px solid var(--line);background:var(--panel)}.gxj-cats a{padding:10px 12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;font-weight:700;display:flex;justify-content:space-between;gap:8px}.gxj-cats a:hover{background:var(--lime);color:var(--onlime)}.gxj-cats span{font:12px var(--fm);color:var(--soft)}

/* ---------- listing ---------- */
.gxj-lhead{border:2px solid var(--line);background:var(--panel);padding:24px 26px;margin-top:20px}
.gxj-pagination{display:flex;flex-wrap:wrap;gap:6px;margin:22px 0}.gxj-pagination .gxj-page{display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border:2px solid var(--line);background:var(--panel);font:600 14px var(--fm);text-decoration:none}
.gxj-pagination .gxj-current{background:var(--ink);color:var(--bg)}.gxj-pagination a.gxj-page:hover{background:var(--lime);color:var(--onlime)}
.gxj-prose{max-width:46em}
.gxj-prose h2,.gxj-listing-body h2{font:900 clamp(26px,3vw,36px)/1.05 var(--fd);text-transform:uppercase;margin:32px 0 10px}
.gxj-prose h3,.gxj-listing-body h3{font:800 19px/1.3 var(--ft);margin:20px 0 6px}
.gxj-prose p,.gxj-listing-body p{margin:0 0 14px}
.gxj-prose a,.gxj-listing-body a{text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--lime);text-underline-offset:3px}
.gxj-prose a:hover,.gxj-listing-body a:hover{background:var(--lime);color:var(--onlime)}
.gxj-listing-body{border:2px solid var(--line);background:var(--panel);padding:6px 26px 18px;margin-top:30px}
.gxj-listing-body ul{padding-left:20px}

/* ---------- prompt page ---------- */
.gxj-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;border:2px solid var(--line);background:var(--panel)}
.gxj-layout>.m{padding:26px 28px;border-right:2px solid var(--line);min-width:0}.gxj-layout>.s{padding:22px 20px;min-width:0}
.gxj-prm{border:2px solid var(--line);background:var(--bg)}.gxj-prm .bar{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:2px solid var(--line);padding:5px 5px 5px 12px;font:600 12px var(--fm);text-transform:uppercase;letter-spacing:.1em}
.gxj-prm pre{margin:0;padding:20px;white-space:pre-wrap;overflow-wrap:anywhere;font:15px/1.75 var(--fm)}
.gxj-acts{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.gxj-fill{position:sticky;top:76px}.gxj-fill h2{font:900 30px/1 var(--fd);text-transform:uppercase;margin:8px 0 6px}
.gxj-fill label{display:block;font:600 12px var(--fm);text-transform:uppercase;margin:12px 0 0}.gxj-fill input{display:block;width:100%;margin-top:5px;border:2px solid var(--line);background:var(--bg);font:15px var(--ft);padding:9px 10px;color:var(--ink)}
.gxj-fill .gxj-btn{width:100%;justify-content:center;background:var(--lime);color:var(--onlime);margin-top:14px}
.gxj-how{margin-top:22px}.gxj-how h2{font:900 28px var(--fd);text-transform:uppercase;margin:0 0 6px}.gxj-how ol{padding-left:20px;margin:0;color:var(--soft)}

/* ---------- article (blog) ---------- */
.gxj-art{display:grid;grid-template-columns:minmax(0,1fr) 300px;border:2px solid var(--line);background:var(--panel);margin-top:20px}
.gxj-art>.m{padding:28px 32px;border-right:2px solid var(--line);min-width:0}.gxj-art>.s{padding:22px 20px}
.gxj-art .m>h1{margin-top:4px}
.gxj-art .m img{display:block;border:2px solid var(--line);margin:16px 0}
.gxj-art .post-meta{font:12.5px var(--fm);color:var(--soft)}
.gxj-art .m ul,.gxj-art .m ol{padding-left:22px}.gxj-art .m li{margin:4px 0}
.gxj-art table{width:100%;border-collapse:collapse;border:2px solid var(--line);margin:16px 0;font-size:15px;display:block;overflow-x:auto}.gxj-art th,.gxj-art td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}.gxj-art th{font:600 12px var(--fm);text-transform:uppercase;background:var(--bg)}
.gxj-art pre,.gxj-art code{font-family:var(--fm)}.gxj-art pre{white-space:pre-wrap;border:2px solid var(--line);background:var(--bg);padding:14px}
.gxj-art blockquote{margin:16px 0;border-left:6px solid var(--lime);padding:4px 0 4px 16px}
.gxj-toc{border:2px solid var(--line);padding:14px 16px;background:var(--bg);margin:16px 0}.gxj-toc .gxj-toc-title{font:600 12px var(--fm);text-transform:uppercase;margin:0 0 6px}.gxj-toc ol{margin:0;padding-left:20px}.gxj-toc a{text-decoration:none}.gxj-toc a:hover{background:var(--lime);color:var(--onlime)}
.gxj-art .s .gxj-toc{position:sticky;top:76px;background:var(--panel)}

/* ---------- legacy (compare, tools, pages): old content kept, dressed ---------- */
.gxj-legacy{border:2px solid var(--line);background:var(--panel);padding:24px 26px;margin-top:20px;min-width:0;overflow-x:auto}
.gxj-legacy h1{font:900 clamp(30px,3.6vw,48px)/.95 var(--fd)!important;text-transform:uppercase;color:inherit!important}
.gxj-legacy h2,.gxj-legacy h4,.gxj-legacy h5,.gxj-legacy h6{font-family:var(--fd)!important;text-transform:uppercase;color:inherit!important}
.gxj-legacy p,.gxj-legacy li,.gxj-legacy td,.gxj-legacy th,.gxj-legacy label{color:inherit!important}
.gxj-legacy .text-gray-500,.gxj-legacy .text-gray-600,.gxj-legacy .text-gray-700{color:var(--soft)!important}
.gxj-legacy table{border:2px solid var(--line)!important;border-collapse:collapse}.gxj-legacy th,.gxj-legacy td{border:1px solid var(--line)!important}
.gxj-legacy thead,.gxj-legacy th{background:var(--bg)!important;font-family:var(--fm)}
.gxj-legacy [class*="bg-white"],.gxj-legacy [class*="bg-gray-50"],.gxj-legacy [class*="bg-slate"],.gxj-legacy [class*="bg-gray-100"]{background:var(--panel)!important}
.gxj-legacy [class*="rounded"]{border-radius:0!important}
.gxj-legacy [class*="border-gray"]{border-color:var(--line)!important}
.gxj-legacy button,.gxj-legacy [type=submit]{background:var(--ink)!important;color:var(--bg)!important;border:2px solid var(--line)!important;border-radius:0!important;font-family:var(--fm)!important;text-transform:uppercase}
.gxj-legacy button:hover,.gxj-legacy [type=submit]:hover{background:var(--lime)!important;color:var(--onlime)!important}
.gxj-legacy input,.gxj-legacy select,.gxj-legacy textarea{background:var(--bg)!important;color:var(--ink)!important;border:2px solid var(--line)!important;border-radius:0!important}
.gxj-legacy a{text-decoration-color:var(--lime)}
.gxj-legacy .md\:w-3\/4,.gxj-legacy .sm\:w-3\/4{width:100%!important;max-width:46em}
.gxj-legacy mark{background:var(--lime)!important;color:var(--onlime)!important}

/* ---------- footer ---------- */
.gxj-sub{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:0;border:2px solid var(--line);background:var(--lime);color:var(--onlime);margin-top:44px}
.gxj-sub .a{padding:22px 26px}.gxj-sub h2{font:900 34px/1 var(--fd);text-transform:uppercase;margin:6px 0}.gxj-sub p{margin:0}
.gxj-sub form{display:flex;align-items:center;padding:22px 26px;border-left:2px solid var(--onlime);gap:0}.gxj-sub input[type=email]{flex:1;min-width:0;width:0;border:2px solid var(--onlime);background:#f4f4f1;color:#151515;font:15px var(--fm);padding:12px}
.gxj-sub button{border:2px solid var(--onlime);border-left:0;background:#151515;color:var(--lime);font:600 12.5px var(--fm);text-transform:uppercase;padding:0 16px;height:47px;cursor:pointer}
.gxj-ft{margin-top:34px;border-top:2px solid var(--line);background:var(--panel)}
.gxj-ft .gxj-w{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr}.gxj-ft .gxj-w>div{padding:22px 16px;border-right:1px solid var(--line);min-width:0}.gxj-ft .gxj-w>div:last-child{border-right:0}
.gxj-ft b{font:900 20px var(--fd);text-transform:uppercase;display:block;margin-bottom:8px}.gxj-ft a{display:block;padding:2px 0;text-decoration:none}.gxj-ft a:hover{background:var(--lime);color:var(--onlime)}.gxj-ft p{color:var(--soft);font-size:14px;margin:0 0 8px}
.gxj-fine{border-top:1px solid var(--line);font:12px var(--fm);color:var(--soft);padding-block:10px}

/* ---------- responsive ---------- */
@media(max-width:1180px){.gxj-q input{width:120px}.gxj-nav>a,.gxj-dd>button{padding:0 10px}}
@media(max-width:1020px){.gxj-nav,.gxj-q{display:none}.gxj-burger{display:grid}
  .gxj-hero .a,.gxj-hero .b{grid-column:span 12}.gxj-hero .a{border-right:0;border-bottom:2px solid var(--line)}.gxj-hero .b{grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr))}.gxj-stat{border-bottom:0;border-right:2px solid var(--line)}.gxj-stat:last-child{border-right:0}
  .gxj-drawers{grid-template-columns:repeat(3,minmax(0,1fr))}.gxj-drawers a:nth-child(3n){border-right:0}.gxj-drawers a:nth-child(-n+3){border-bottom:2px solid var(--line)}
  .gxj-bins{grid-template-columns:repeat(2,minmax(0,1fr))}.gxj-split,.gxj-biz{grid-template-columns:1fr}.gxj-sub{grid-template-columns:minmax(0,1fr)}.gxj-biz .b{border-left:0;border-top:2px solid var(--bg)}.gxj-sub form{border-left:0;border-top:2px solid var(--onlime)}
  .gxj-cats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gxj-layout,.gxj-art{grid-template-columns:1fr}.gxj-layout>.m,.gxj-art>.m{border-right:0;border-bottom:2px solid var(--line)}.gxj-fill,.gxj-art .s .gxj-toc{position:static}
  .gxj-ft .gxj-w{grid-template-columns:1fr 1fr}.gxj-ft .gxj-w>div{border-bottom:1px solid var(--line)}}
@media(max-width:600px){.gxj-logo{font-size:21px}.gxj-logo .n{display:none}
  .gxj-hero .a{padding:22px 16px}.gxj-stat{padding:12px}.gxj-stat b{font-size:34px}
  .gxj-drawers{grid-template-columns:repeat(2,minmax(0,1fr))}.gxj-drawers a{border-right:0!important;border-bottom:2px solid var(--line)!important;min-height:86px}.gxj-drawers a:nth-child(odd){border-right:2px solid var(--line)!important}.gxj-drawers a:nth-last-child(-n+2){border-bottom:0!important}.gxj-drawers b{font-size:23px}
  .gxj-bins{grid-template-columns:1fr}.gxj-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gxj-spec{grid-template-columns:repeat(2,minmax(0,1fr))}.gxj-spec>div:nth-child(2){border-right:0}.gxj-spec>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .gxj-layout>.m,.gxj-art>.m,.gxj-legacy,.gxj-lhead{padding:18px 14px}.gxj-prm pre{padding:14px;font-size:14px}.gxj-listing-body{padding:4px 14px 14px}
  .gxj-rack a{grid-template-columns:52px minmax(0,1fr) auto}.gxj-ft .gxj-w{grid-template-columns:1fr}.gxj-ft .gxj-w>div{border-right:0}
  .gxj-sub .a,.gxj-sub form{padding:16px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* tool-first tuning: filter bar */
.gxj-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:14px 0 0}.gxj-filters span{font:600 11.5px var(--fm);text-transform:uppercase;color:var(--soft);margin-right:4px}
.gxj-filters a{font:600 12.5px var(--fm);border:2px solid var(--line);padding:5px 10px;text-decoration:none;background:var(--bg)}.gxj-filters a:hover,.gxj-filters a.on{background:var(--lime);color:var(--onlime)}
.gxj-filters i{width:1px;height:22px;background:var(--line);margin:0 6px}

.gxj-lhead .gxj-dymo,.gxj-hero .gxj-dymo,.gxj-layout .gxj-dymo,.gxj-sh .gxj-dymo{white-space:normal;max-width:100%}

/* ---------- 2026-10 sections ---------- */
.gxj-doc .gxj-prose{max-width:none}
.gxj-doc .gxj-prose ul,.gxj-doc .gxj-prose ol{padding-left:22px}.gxj-doc .gxj-prose li{margin:4px 0}
.gxj-doc .gxj-prose table,.gxj-tbl{width:100%;border-collapse:collapse;border:2px solid var(--line);margin:16px 0;font-size:15px}
.gxj-doc .gxj-prose th,.gxj-doc .gxj-prose td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.gxj-doc .gxj-prose th{font:600 12px var(--fm);text-transform:uppercase;background:var(--bg)}
.gxj-doc .gxj-prose td.y,.gxj-doc .gxj-prose td.win{background:var(--lime);color:var(--onlime);font-weight:700}
.gxj-doc .gxj-prose .gxj-tw{overflow-x:auto}
.gxj-doc .gxj-prose pre:not(#gxj-prompt){white-space:pre-wrap;border:2px solid var(--line);background:var(--bg);padding:14px;font:14px/1.7 var(--fm)}
.gxj-doc .gxj-prose code{font-family:var(--fm);background:var(--bg);padding:0 3px}
.gxj-tryb{margin:16px 0}
.gxj-verdict{border:2px solid var(--line);background:var(--lime);color:var(--onlime);padding:14px 16px;margin:16px 0;font-weight:600}.gxj-verdict b{display:block;font:900 22px var(--fd);text-transform:uppercase}
.gxj-vs{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);border:2px solid var(--line);background:var(--panel);margin:0 0 16px}.gxj-vs>div{padding:20px 22px;min-width:0}
.gxj-vs .mid{display:grid;place-items:center;font:900 32px var(--fd);border-inline:2px solid var(--line);background:var(--lime);color:var(--onlime);padding:0}
.gxj-vs h2{font:900 clamp(30px,3.6vw,46px)/1 var(--fd);text-transform:uppercase;margin:8px 0}
.gxj-spon{display:block;text-align:center;background:var(--ink);color:var(--bg);font:900 20px var(--fd);text-transform:uppercase;padding:14px;border:2px solid var(--line);margin:10px 0 6px;text-decoration:none}.gxj-spon:hover{background:var(--lime);color:var(--onlime)}
.gxj-doc .s>.gxj-dymo{display:inline-block;margin-bottom:8px}
.gxj-pn{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
.gxj-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.gxj-card{display:flex;flex-direction:column;gap:8px;border:2px solid var(--line);background:var(--panel);padding:14px 16px;text-decoration:none;min-width:0}.gxj-card b{font:800 18px/1.25 var(--ft)}.gxj-card:hover{background:var(--lime);color:var(--onlime)}.gxj-card:hover .gxj-small{color:var(--onlime)}
.gxj-sources{margin-top:28px;border-top:2px solid var(--line);padding-top:6px}.gxj-sources ol{font-size:14px}
.gxj-doc .gxj-prose .gxj-meta{font:12.5px var(--fm);color:var(--soft);border-left:4px solid var(--lime);padding-left:10px}
@media(max-width:1020px){.gxj-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.gxj-vs{grid-template-columns:1fr}.gxj-vs .mid{border-inline:0;border-block:2px solid var(--line);padding:6px}}
@media(max-width:600px){.gxj-cards,.gxj-pn{grid-template-columns:1fr}.gxj-doc .gxj-prose table{font-size:13px;display:block;overflow-x:auto}}
/* generators */
.gxj-gen{border:2px solid var(--line);background:var(--bg);padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin:18px 0}
.gxj-gen label{display:block;font:600 12px var(--fm);text-transform:uppercase}.gxj-gen label small{text-transform:none;font-weight:400;color:var(--soft)}
.gxj-gen input,.gxj-gen select,.gxj-gen textarea{display:block;width:100%;margin-top:5px;border:2px solid var(--line);background:var(--panel);color:var(--ink);font:15px var(--ft);padding:9px 10px}
.gxj-gen textarea{min-height:84px;resize:vertical}
.gxj-gen .full{grid-column:1/-1}
.gxj-gen button[type=submit]{grid-column:1/-1;justify-self:start;background:var(--lime);color:var(--onlime);border:2px solid var(--line);font:900 20px var(--fd);text-transform:uppercase;padding:10px 22px;cursor:pointer}
.gxj-genout{margin:0 0 20px}
@media(max-width:600px){.gxj-gen{grid-template-columns:1fr;padding:14px}}
/* app-like touches (2026-10-04) */
.gxj-nav .gxj-ic{opacity:.75}
.gxj-new{font:700 9.5px/1 var(--fm);font-style:normal;text-transform:uppercase;letter-spacing:.08em;background:var(--lime);color:var(--onlime);padding:3px 5px;margin-left:2px;border:1px solid var(--line)}
.gxj-news{display:block;overflow:hidden;white-space:nowrap;background:var(--lime);color:#151515;text-decoration:none;font:600 13px var(--fm);border-bottom:2px solid #151515}.gxj-tk{display:inline-flex;gap:80px;padding:7px 0;padding-left:100%;animation:gxj-tk 32s linear infinite}.gxj-news:hover .gxj-tk{animation-play-state:paused}@keyframes gxj-tk{to{transform:translateX(-100%)}}
.gxj-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gxj-tile{position:relative;display:flex;flex-direction:column;gap:8px;min-height:150px;border:2px solid var(--line);background:var(--panel);padding:16px;text-decoration:none;min-width:0}
.gxj-tile b{font:900 26px/1 var(--fd);text-transform:uppercase;margin-top:auto}.gxj-tile span{font-size:14px;color:var(--soft)}
.gxj-tile .gxj-new{position:absolute;top:12px;right:12px}
.gxj-tile:hover{background:var(--lime);color:var(--onlime)}.gxj-tile:hover span{color:var(--onlime)}
.gxj-tile:first-child{background:var(--ink);color:var(--bg)}.gxj-tile:first-child span{color:var(--bg);opacity:.75}.gxj-tile:first-child:hover{background:var(--lime);color:var(--onlime)}
@media(max-width:1020px){.gxj-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.gxj-tile{min-height:120px}.gxj-tile b{font-size:22px}}
/* header density: one line at every width, burger below 1180 */
.gxj-nav>a,.gxj-dd>button{white-space:nowrap;padding:0 11px;gap:5px}
.gxj-qi{display:none}
@media(max-width:1760px){.gxj-q{display:none}.gxj-qi{display:grid}}
@media(max-width:1500px){.gxj-nav .gxj-ic:not(:last-child){display:none}.gxj-dd>button .gxj-ic{display:none}.gxj-dd>button .gxj-ic:last-child{display:inline-block}.gxj-nav>a .gxj-ic{display:none}}
@media(max-width:1180px){.gxj-nav{display:none}.gxj-burger{display:grid}}
@media(max-width:1340px){.gxj-nav>a,.gxj-dd>button{padding:0 8px;font-size:12.5px}.gxj-nav small{display:none}.gxj-logo{padding-right:12px}.gxj-hdr{padding-left:8px;gap:6px}}

.gxj-hd .gxj-w{max-width:none}

/* mega menu: one «By task» column in two */
.gxj-two .gxj-cols{columns:2;column-gap:22px}.gxj-two .gxj-cols a{break-inside:avoid}
.gxj-mega{transform-origin:top left}
/* motion: workshop-style, all off under reduced motion */
@media(prefers-reduced-motion:no-preference){
  .gxj-dd:hover .gxj-mega,.gxj-dd:focus-within .gxj-mega{animation:gxj-drop .16s ease-out}
  @keyframes gxj-drop{from{opacity:0;transform:translateY(-6px)}}
  .gxj-bin,.gxj-tile,.gxj-card,.gxj-drawers a,.gxj-rack a,.gxj-cats a,.gxj-btn,.gxj-spon,.gxj-chips a,.gxj-filters a{transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}
  .gxj-bin:hover,.gxj-tile:hover,.gxj-card:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--line)}
  .gxj-btn:hover,.gxj-spon:hover,.gxj-filters a:hover,.gxj-chips a:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--line)}
  .gxj-btn:active,.gxj-spon:active{transform:translate(0,0);box-shadow:none}
  .gxj-hero{animation:gxj-up .5s ease-out both}
  .gxj-hero .gxj-dymo{animation:gxj-print .6s steps(14) .15s both}
  @keyframes gxj-print{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
  @keyframes gxj-up{from{transform:translateY(10px)}} /* no fade: the hero holds the LCP text, and opacity 0 held LCP back ~120 ms */
  .gxj-rv{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}.gxj-rv.in{opacity:1;transform:none}
  mark.gxj-v.on{animation:gxj-flash .4s ease-out}
  @keyframes gxj-flash{0%{box-shadow:0 0 0 6px var(--lime)}100%{box-shadow:0 0 0 0 transparent}}
  .gxj-find input.typing{caret-color:var(--lime)}
}
@media(prefers-reduced-motion:reduce){.gxj-tk{animation:none;padding-left:16px}.gxj-tk span[aria-hidden]{display:none}}

/* search button, live search, filters, task row (2026-10-04, navigation pass) */
.gxj-qb{display:flex;align-items:center;gap:8px;height:38px;border:2px solid var(--line);background:var(--bg);color:var(--soft);font:13px var(--fm);padding:0 10px;cursor:pointer;min-width:0}
.gxj-qb span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gxj-qb kbd{font:11px var(--fm);border:1px solid var(--line);padding:0 5px;color:var(--ink)}
.gxj-qb:hover{background:var(--lime);color:var(--onlime)}
.gxj-qbm{width:100%;grid-column:1/-1;margin-bottom:6px}
@media(max-width:1500px){.gxj-hdr .gxj-qb span,.gxj-hdr .gxj-qb kbd{display:none}}
body.gxj-sx-on{overflow:hidden}
.gxj-sx{position:fixed;inset:0;z-index:100;background:rgba(10,10,10,.55);display:flex;justify-content:center;align-items:flex-start;padding:8vh 16px 16px}
.gxj-sx[hidden]{display:none}
.gxj-sx-box{width:min(720px,100%);max-height:80vh;display:flex;flex-direction:column;background:var(--panel);border:2px solid var(--line);box-shadow:8px 8px 0 var(--line)}
.gxj-sx-in{display:flex;align-items:center;gap:10px;padding:0 12px;border-bottom:2px solid var(--line)}.gxj-sx-in input{flex:1;min-width:0;border:0;background:none;color:var(--ink);font:18px var(--ft);padding:16px 0;outline:0}
.gxj-sx-x{border:1.5px solid var(--line);background:var(--bg);color:var(--ink);font:11px var(--fm);padding:3px 7px;cursor:pointer}
.gxj-sx-tabs{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.gxj-sx-tabs button{border:1.5px solid var(--line);background:var(--bg);color:var(--ink);font:600 12px var(--fm);padding:4px 10px;cursor:pointer}.gxj-sx-tabs button.on{background:var(--ink);color:var(--bg)}
.gxj-sx-res{overflow:auto;padding:6px}.gxj-sx-res a{display:grid;gap:2px;padding:10px 12px;text-decoration:none;border:2px solid transparent}.gxj-sx-res a.on,.gxj-sx-res a:hover{border-color:var(--line);background:var(--lime);color:var(--onlime)}
.gxj-sx-res .k{font:11px var(--fm);text-transform:uppercase;color:var(--soft)}.gxj-sx-res a.on .k,.gxj-sx-res a:hover .k,.gxj-sx-res a.on .x,.gxj-sx-res a:hover .x{color:var(--onlime)}.gxj-sx-res b{font:800 16px var(--ft)}.gxj-sx-res .x{font-size:13px;color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gxj-sx-res .none{padding:14px;color:var(--soft)}
.gxj-sx-ft{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;border-top:1px solid var(--line);font:12px var(--fm);color:var(--soft)}
.gxj-fbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;border:2px solid var(--line);background:var(--panel);padding:10px 12px;margin:0 0 14px}
.gxj-fbar .g{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.gxj-fbar .g span{font:600 11px var(--fm);text-transform:uppercase;color:var(--soft);margin-right:4px}
.gxj-fbar button{border:1.5px solid var(--line);background:var(--bg);color:var(--ink);font:600 12px var(--fm);padding:4px 9px;cursor:pointer}.gxj-fbar button.on{background:var(--ink);color:var(--bg)}.gxj-fbar button:hover{background:var(--lime);color:var(--onlime)}
.gxj-fbar .q{flex:1;min-width:160px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font:14px var(--fm);padding:6px 9px}
.gxj-fbar select{border:2px solid var(--line);background:var(--bg);color:var(--ink);font:13px var(--fm);padding:6px}
.gxj-fbar .n{font:600 12px var(--fm);margin-left:auto}
.gxj-fbar button small{font:500 10.5px var(--fm);margin-left:5px;opacity:.65}.gxj-fbar button:disabled{opacity:.35;cursor:default}.gxj-fbar button:disabled:hover{background:var(--bg);color:var(--ink)}
.gxj-bins[hidden],.gxj-bin[hidden],.gxj-pagination[hidden],.gxj-more[hidden]{display:none}
@media(max-width:600px){.gxj-fbar{padding:10px}.gxj-fbar .g{flex-wrap:nowrap;width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,#000 82%,transparent);mask-image:linear-gradient(to right,#000 82%,transparent);padding-bottom:2px}.gxj-fbar .g::-webkit-scrollbar{display:none}.gxj-fbar .g.end{-webkit-mask-image:none;mask-image:none}.gxj-fbar .g span{position:sticky;left:0;z-index:1;background:var(--panel);padding:6px 6px 6px 0;margin-right:0;white-space:nowrap}.gxj-fbar .g button{flex:none;white-space:nowrap;padding:7px 10px}}
.gxj-more{display:block;width:100%;margin:16px 0 0;border:2px solid var(--line);background:var(--panel);color:var(--ink);font:600 12.5px/1 var(--fm);text-transform:uppercase;letter-spacing:.04em;padding:13px;cursor:pointer}.gxj-more:hover{background:var(--lime);color:var(--onlime)}
.gxj-bins .gxj-none{grid-column:1/-1;border:2px dashed var(--line);padding:18px;margin:0;font:14px/1.6 var(--fm);color:var(--soft)}.gxj-none button{border:2px solid var(--line);background:var(--ink);color:var(--bg);font:600 12px var(--fm);padding:4px 10px;margin-left:6px;cursor:pointer}.gxj-none button:hover{background:var(--lime);color:var(--onlime)}
.gxj-taskrow a{font-size:13px;padding:6px 10px}.gxj-taskrow span{color:var(--soft)}
@media(max-width:600px){.gxj-fbar .q{min-width:100%}.gxj-fbar .n{margin-left:0}.gxj-sx{padding:0}.gxj-sx-box{max-height:100vh;height:100%;box-shadow:none;border:0}}

/* ---------- AI tools catalog: tool page + card grid (topseotools model, 2026-10-04) ---------- */
.gxj-sym{display:grid;place-items:center;flex:none;width:40px;height:40px;border:2px solid var(--line);background:var(--lime);color:var(--onlime);font:900 18px/1 var(--fd);text-transform:uppercase}
.gxj-sym.sm{width:28px;height:28px;font-size:13px}.gxj-sym.xl{width:72px;height:72px;font-size:34px;box-shadow:4px 4px 0 var(--line)}
.gxj-sc{display:inline-grid;place-items:center;min-width:40px;height:26px;padding:0 6px;border:2px solid var(--line);font:700 13px var(--fm);background:var(--bg)}.gxj-sc.hi{background:var(--lime);color:var(--onlime)}.gxj-sc.na{color:var(--soft)}
.gxj-tbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;border:2px solid var(--line);background:var(--panel);padding:10px 12px;margin:0 0 14px}
.gxj-tbar .g{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.gxj-tbar .g span{font:600 11px var(--fm);text-transform:uppercase;color:var(--soft);margin-right:4px}
.gxj-tbar button{border:1.5px solid var(--line);background:var(--bg);color:var(--ink);font:600 12px var(--fm);padding:4px 9px;cursor:pointer}.gxj-tbar button.on{background:var(--ink);color:var(--bg)}.gxj-tbar button:hover{background:var(--lime);color:var(--onlime)}
.gxj-tbar select{border:2px solid var(--line);background:var(--bg);color:var(--ink);font:13px var(--fm);padding:6px}.gxj-tbar .n{font:600 12px var(--fm);margin-left:auto}
.gxj-tcs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.gxj-tc{display:flex;flex-direction:column;gap:10px;border:2px solid var(--line);background:var(--panel);padding:14px;text-decoration:none;min-width:0}
.gxj-tc .h{display:flex;align-items:center;gap:10px}.gxj-tc .n{flex:1;min-width:0;display:flex;flex-direction:column}.gxj-tc .n b{font:800 18px/1.2 var(--ft)}.gxj-tc .n span{font:11px var(--fm);text-transform:uppercase;color:var(--soft)}
.gxj-tc .o{font-size:14.5px;color:var(--soft);flex:1}
.gxj-tc .m{display:flex;flex-wrap:wrap;gap:5px}.gxj-tc em{font:600 11.5px var(--fm);font-style:normal;border:1.5px solid var(--line);padding:2px 7px;background:var(--bg)}.gxj-tc em.ok{background:var(--lime);color:var(--onlime)}
.gxj-tc:hover{background:var(--lime);color:var(--onlime)}.gxj-tc:hover .o,.gxj-tc:hover .n span{color:var(--onlime)}
.gxj-thead{display:grid;grid-template-columns:minmax(0,1fr) 320px;border:2px solid var(--line);background:var(--panel);margin-bottom:18px}
.gxj-thead .a{padding:26px 28px;border-right:2px solid var(--line);min-width:0}.gxj-thead .b{display:flex;flex-direction:column;min-width:0}
.gxj-thead .id{display:flex;align-items:center;gap:18px}.gxj-thead h1{margin:8px 0 0!important}
.gxj-thead .gxj-lede{margin-top:16px}
.gxj-thead .pills{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}.gxj-thead .pills a,.gxj-thead .pills span{font:600 12.5px var(--fm);border:2px solid var(--line);padding:4px 10px;text-decoration:none;background:var(--bg)}.gxj-thead .pills a:hover,.gxj-thead .pills .ok{background:var(--lime);color:var(--onlime)}
.gxj-thead .acts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.gxj-thead .acts .gxj-spon{margin:0;font-size:18px;padding:11px 18px}
.gxj-score{padding:18px 20px;border-bottom:2px solid var(--line);flex:1}.gxj-score>b{display:block;font:900 64px/1 var(--fd);margin:10px 0 6px}.gxj-score>b small{font-size:24px;color:var(--soft)}
.gxj-score details summary{cursor:pointer;font:600 12px var(--fm);text-transform:uppercase}
.gxj-pillars{list-style:none;padding:0;margin:8px 0}.gxj-pillars li{display:grid;grid-template-columns:1fr 60px 44px;gap:4px 8px;align-items:center;padding:6px 0;border-top:1px solid var(--grid)}
.gxj-pillars .l{display:flex;gap:6px;font-size:13px}.gxj-pillars .l em{font:11px var(--fm);color:var(--soft);font-style:normal}.gxj-pillars .bar{height:8px;border:1.5px solid var(--line)}.gxj-pillars .bar i{display:block;height:100%;background:var(--ink)}
.gxj-pillars .v{font:600 12px var(--fm);text-align:right}.gxj-pillars .why{grid-column:1/-1;font:11.5px var(--fm);color:var(--soft)}.gxj-pillars li.na{opacity:.6}
.gxj-ext{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;padding:14px 20px}.gxj-ext>span:first-child{font:600 11px var(--fm);text-transform:uppercase;color:var(--soft);width:100%}.gxj-ext b{font:900 34px/1 var(--fd)}.gxj-ext b small{font-size:16px;color:var(--soft)}.gxj-ext a{font:12.5px var(--fm)}
.gxj-tgrid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}
.gxj-tgrid>article{border:2px solid var(--line);background:var(--panel);padding:6px 28px 24px;min-width:0}
.gxj-blk h2{font:900 clamp(24px,2.6vw,32px)/1.05 var(--fd);text-transform:uppercase;margin:26px 0 12px}
.gxj-blk p{margin:0 0 12px}.gxj-blk a{text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--lime);text-underline-offset:3px}
.gxj-take{border-bottom:2px solid var(--line);padding-bottom:12px}
.gxj-ph{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font:12.5px var(--fm);margin-bottom:8px}
.gxj-tw{overflow-x:auto}
.gxj-ptable{width:100%;border-collapse:collapse;border:2px solid var(--line);font-size:15px}.gxj-ptable th,.gxj-ptable td{border:1px solid var(--line);padding:9px 10px;text-align:left;vertical-align:top}
.gxj-ptable thead th{font:600 11.5px var(--fm);text-transform:uppercase;background:var(--bg)}.gxj-ptable tbody th{font-weight:800}.gxj-ptable td:nth-child(2),.gxj-ptable td:nth-child(3){font:600 15px var(--fm);white-space:nowrap}
.gxj-fit{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--line)}.gxj-fit>div{padding:12px 16px;min-width:0}.gxj-fit .y{border-right:2px solid var(--line)}.gxj-fit h3{font:600 12px var(--fm);text-transform:uppercase;margin:0 0 6px}.gxj-fit .y h3{background:var(--lime);color:var(--onlime);display:inline-block;padding:2px 6px}.gxj-fit ul{margin:0;padding-left:18px}.gxj-fit li{margin:4px 0}
.gxj-feat{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:2px solid var(--line);margin:0}.gxj-feat>div{padding:10px 14px;border-bottom:1px solid var(--line);min-width:0}.gxj-feat>div:nth-child(odd){border-right:1px solid var(--line)}
.gxj-feat dt{font-weight:800}.gxj-feat .k{font:600 11px var(--fm);color:var(--soft);margin-right:8px}.gxj-feat dd{margin:2px 0 0;font-size:14px;color:var(--soft)}
.gxj-shot{margin:0;border:2px solid var(--line)}.gxj-shot .bar{display:flex;gap:6px;align-items:center;padding:6px 10px;border-bottom:2px solid var(--line);font:12px var(--fm);background:var(--bg)}.gxj-shot .bar i{width:9px;height:9px;border:1.5px solid var(--line);border-radius:50%}.gxj-shot img{display:block}.gxj-shot figcaption{font:12px var(--fm);color:var(--soft);padding:6px 10px}
.gxj-qa{margin:0}.gxj-qa>div{border-top:1px solid var(--line);padding:10px 0}.gxj-qa dt{font-weight:800}.gxj-qa dd{margin:4px 0 0}
.gxj-side{display:flex;flex-direction:column;gap:14px;min-width:0}
.gxj-panel2{border:2px solid var(--line);background:var(--panel);padding:12px 16px 14px}.gxj-panel2 header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}
.gxj-panel2 .lab{font:600 11.5px var(--fm);text-transform:uppercase;color:var(--soft);margin:8px 0 2px}.gxj-panel2 .kpi{font:900 40px/1 var(--fd);margin:0 0 6px}.gxj-panel2 .kpi small{font:12px var(--fm);color:var(--soft)}
.gxj-bars{width:100%;height:auto;display:block}.gxj-bars rect{fill:var(--soft);opacity:.55}.gxj-bars rect.last{fill:var(--ink);opacity:1}.gxj-bars text{font:9px var(--fm);fill:var(--soft)}.gxj-bars line{stroke:var(--line);stroke-width:1}
.gxj-facts{margin:0}.gxj-facts>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--grid)}.gxj-facts dt{font:12px var(--fm);text-transform:uppercase;color:var(--soft)}.gxj-facts dd{margin:0;font-weight:700;text-align:right}
.gxj-alts{list-style:none;margin:0;padding:0}.gxj-alts li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:7px 0;border-top:1px solid var(--grid)}.gxj-alts a{font-weight:800;text-decoration:none}.gxj-alts a:hover{background:var(--lime);color:var(--onlime)}.gxj-alts span:last-child{font:12px var(--fm);color:var(--soft)}
.gxj-side .gxj-rack a{grid-template-columns:24px minmax(0,1fr) auto}
@media(max-width:1020px){.gxj-tcs{grid-template-columns:repeat(2,minmax(0,1fr))}.gxj-thead,.gxj-tgrid{grid-template-columns:1fr}.gxj-thead .a{border-right:0;border-bottom:2px solid var(--line)}.gxj-thead .b{flex-direction:row}.gxj-thead .b>*{flex:1}.gxj-score{border-bottom:0;border-right:2px solid var(--line)}}
@media(max-width:600px){.gxj-tcs,.gxj-fit,.gxj-feat{grid-template-columns:1fr}.gxj-fit .y{border-right:0;border-bottom:2px solid var(--line)}.gxj-feat>div:nth-child(odd){border-right:0}
  .gxj-thead .a,.gxj-tgrid>article{padding:16px 14px}.gxj-thead .b{flex-direction:column}.gxj-score{border-right:0;border-bottom:2px solid var(--line)}.gxj-sym.xl{width:56px;height:56px;font-size:26px}.gxj-tbar .n{margin-left:0}.gxj-ptable{font-size:13.5px}}
@media(prefers-reduced-motion:no-preference){.gxj-tc{transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease}.gxj-tc:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--line)}}
.gxj-tc[hidden]{display:none}

.gxj-tw{overflow-x:auto;max-width:100%}
.gxj-ptable{min-width:520px}

.gxj-sources a,.gxj-sources li{overflow-wrap:anywhere;word-break:break-word}
/* catalog as a ranked table (topseotools model) */
.gxj-readout{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:2px solid var(--line);background:var(--panel);margin-top:16px}
.gxj-readout>div{padding:12px 16px;border-right:1px solid var(--line);min-width:0}.gxj-readout>div:last-child{border-right:0}
.gxj-readout span{display:block;font:600 11px var(--fm);text-transform:uppercase;letter-spacing:.08em;color:var(--soft)}.gxj-readout b{font:900 40px/1.1 var(--fd)}.gxj-readout small{font:13px var(--fm);color:var(--soft)}
.gxj-tbar .srt{display:flex;align-items:center;gap:6px;margin-left:auto}.gxj-tbar .srt span{font:600 11px var(--fm);text-transform:uppercase;color:var(--soft)}.gxj-tbar .n{margin-left:0}
.gxj-trh,.gxj-tr{display:grid;grid-template-columns:34px 44px minmax(0,1fr) 110px 170px 110px 100px 84px;gap:0 14px;align-items:center}
.gxj-trh{padding:6px 14px;font:600 10.5px var(--fm);text-transform:uppercase;letter-spacing:.08em;color:var(--soft)}.gxj-trh span:nth-child(1){grid-column:1/3}
.gxj-trs{list-style:none;margin:0;padding:0;border:2px solid var(--line);background:var(--panel);counter-reset:gxjr}
.gxj-tr{padding:12px 14px;border-top:1px solid var(--line)}.gxj-tr:first-child{border-top:0}.gxj-tr[hidden]{display:none}
.gxj-tr:not([hidden]){counter-increment:gxjr}.gxj-tr .no::before{content:counter(gxjr)}.gxj-tr .no{font:700 13px var(--fm);color:var(--soft);text-align:center}
.gxj-tr:not([hidden]):nth-child(-n+3) .no{color:var(--ink)}
.gxj-tr .nm{min-width:0}.gxj-tr .nm>a{font:800 17px/1.2 var(--ft);text-decoration:none}.gxj-tr .nm>a:hover{background:var(--lime);color:var(--onlime)}
.gxj-tr .nm p{margin:2px 0 5px;font-size:13.5px;color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gxj-tr .tags{display:flex;flex-wrap:wrap;gap:4px}.gxj-tr .tags span{font:11px var(--fm);border:1px solid var(--line);padding:1px 6px;background:var(--bg)}.gxj-tr .tags .pr{font-weight:700}.gxj-tr .tags .ok{background:var(--lime);color:var(--onlime)}
.gxj-tr .mt{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;min-width:0}.gxj-tr .ml{display:none}
.gxj-tr .n{font:700 15px var(--fm)}.gxj-tr .n.na{color:var(--soft);font-weight:400}.gxj-tr .d{font:11.5px var(--fm);color:var(--soft)}.gxj-tr .d.up{color:var(--ink);font-weight:700}
.gxj-tr .vis .gxj-spk{flex-basis:100%}
.gxj-gauge{display:flex;align-items:center;gap:8px}.gxj-gauge b{font:900 22px/1 var(--fd);min-width:30px}.gxj-gauge i{display:block;width:56px;height:9px;border:1.5px solid var(--line)}.gxj-gauge em{display:block;height:100%;background:var(--ink)}.gxj-gauge.hi em{background:var(--lime);box-shadow:inset 0 0 0 1px var(--line)}.gxj-gauge.na b{color:var(--soft)}
.gxj-spk polyline{fill:none;stroke:var(--ink);stroke-width:1.75;stroke-linejoin:round}.gxj-spk rect{fill:var(--lime);stroke:var(--line)}.gxj-spk.dn polyline{stroke:var(--soft)}.gxj-spk.dn rect{fill:var(--soft)}.gxj-spk line{stroke:var(--soft)}
.gxj-tr .go{font:600 12px var(--fm);text-transform:uppercase;text-decoration:none;border:2px solid var(--line);padding:6px 8px;text-align:center;white-space:nowrap}.gxj-tr .go:hover{background:var(--lime);color:var(--onlime)}
@media(max-width:1180px){.gxj-trh{display:none}.gxj-tr{grid-template-columns:34px 44px minmax(0,1fr) auto;grid-auto-flow:row;gap:8px 12px}.gxj-tr .mt{grid-column:3/-1}.gxj-tr .ml{display:inline;font:600 10.5px var(--fm);text-transform:uppercase;color:var(--soft);width:110px}.gxj-tr .go{grid-column:4;grid-row:1}.gxj-tr .vis .gxj-spk{flex-basis:auto}}
@media(max-width:600px){.gxj-readout{grid-template-columns:1fr 1fr}.gxj-readout>div:nth-child(2){border-right:0}.gxj-readout>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.gxj-readout b{font-size:32px}
  .gxj-tr{grid-template-columns:26px 36px minmax(0,1fr);padding:12px 10px}.gxj-tr .mt{grid-column:2/-1}.gxj-tr .go{grid-column:2/-1;grid-row:auto}.gxj-tr .nm p{white-space:normal}.gxj-tr .ml{width:96px}.gxj-tbar .srt{margin-left:0}}
/* the archive's Tailwind colours (blue tips, purple chips, coloured buttons) folded into the workshop palette */
.gxj-legacy [class*="bg-blue-"],.gxj-legacy [class*="bg-purple-"],.gxj-legacy [class*="bg-indigo-"],.gxj-legacy [class*="bg-green-"],.gxj-legacy [class*="bg-red-"],.gxj-legacy [class*="bg-yellow-"],.gxj-legacy [class*="from-purple-"]{background:var(--bg)!important;background-image:none!important;border:2px solid var(--line)!important;border-radius:0!important}
.gxj-legacy [class*="text-blue-"],.gxj-legacy [class*="text-purple-"],.gxj-legacy [class*="text-indigo-"],.gxj-legacy [class*="text-green-"],.gxj-legacy [class*="text-red-"]{color:var(--ink)!important}
.gxj-legacy [class*="border-blue-"],.gxj-legacy [class*="border-red-"],.gxj-legacy [class*="border-gray-"]{border-color:var(--line)!important}
.gxj-legacy [class*="bg-blue-5"]:is(a,button),.gxj-legacy [class*="bg-blue-6"]:is(a,button),.gxj-legacy [class*="bg-blue-7"]:is(a,button){background:var(--ink)!important;color:var(--bg)!important}
.gxj-legacy [class*="hover:bg-blue-"]:hover{background:var(--lime)!important;color:var(--onlime)!important}
.gxj-legacy [class*="ring-"]:focus,.gxj-legacy [class*="focus:ring"]:focus{box-shadow:0 0 0 3px var(--lime)!important;outline:0}
.gxj-legacy .text-gray-400{color:var(--soft)!important}

/* ---------- /compare hub (2026-10-04): picker header, guide cards, pair rack ---------- */
.gxj-cmphd{display:grid;grid-template-columns:minmax(0,1fr) 320px;border:2px solid var(--line);background:var(--panel);margin-top:20px}
.gxj-cmphd>.a{padding:26px 28px;border-right:2px solid var(--line);min-width:0}
.gxj-cmphd>.b{display:flex;flex-direction:column}
.gxj-cmphd>.b a{flex:1;display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 14px;align-content:center;padding:16px 20px;border-bottom:2px solid var(--line);text-decoration:none}
.gxj-cmphd>.b a:last-child{border-bottom:0}
.gxj-cmphd>.b b{grid-row:span 2;font:900 50px/1 var(--fd);min-width:1.4em}
.gxj-cmphd>.b span{font:600 12px var(--fm);text-transform:uppercase;letter-spacing:.08em;align-self:end}
.gxj-cmphd>.b em{font-style:normal;font-size:14px;color:var(--soft);align-self:start}
.gxj-cmphd>.b a:hover{background:var(--lime);color:var(--onlime)}.gxj-cmphd>.b a:hover em{color:var(--onlime)}
.gxj-t main h1.gxj-pick{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 14px;margin:14px 0 12px}
.gxj-pick .w{padding-bottom:6px}
.gxj-pick .s{display:flex;flex-direction:column;gap:4px;min-width:0;flex:0 1 230px}
.gxj-pick .s::before{content:attr(data-l);font:600 11px var(--fm);letter-spacing:.1em;color:var(--soft)}
.gxj-pick select{appearance:none;-webkit-appearance:none;width:100%;border:2px solid var(--line);border-radius:0;background-color:var(--bg);color:var(--ink);font:600 17px/1.2 var(--fm);text-transform:none;letter-spacing:0;padding:12px 44px 12px 12px;cursor:pointer;box-shadow:4px 4px 0 var(--line);
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%),linear-gradient(var(--line),var(--line));background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%,calc(100% - 36px) 0;background-size:6px 6px,6px 6px,2px 100%;background-repeat:no-repeat}
.gxj-pick select:hover,.gxj-pick select:focus-visible{background-color:var(--lime);color:var(--onlime)}
.gxj-pick select option,.gxj-pick select optgroup{background:var(--panel);color:var(--ink)}
.gxj-cmphd #gxj-pickmsg{margin:16px 0 0;max-width:44em}
.gxj-gcards{grid-template-columns:repeat(4,minmax(0,1fr))}
.gxj-gcard .n{font:900 26px/1 var(--fd);text-transform:uppercase}
.gxj-gcard .t{font-weight:700;font-size:15px;line-height:1.35}
.gxj-gcard .gxj-dymo{align-self:flex-start}
.gxj-cmpspec{border:2px solid var(--line);background:var(--panel);padding:22px 26px}
.gxj-cmpspec>.gxj-lede{font-size:16px;margin-bottom:16px}
.gxj-pq{background:var(--bg)}.gxj-pq .q{min-width:220px}
.gxj-pgrp{margin-top:22px}
.gxj-pgrp h3{font:900 24px/1 var(--fd);text-transform:uppercase;margin:0 0 4px;display:flex;align-items:baseline;gap:10px}.gxj-pgrp h3 small{font:600 11.5px var(--fm);color:var(--soft);letter-spacing:.08em}
.gxj-pgrp>p{margin:0 0 10px}
.gxj-pgrp[hidden]{display:none}
.gxj-pairs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(var(--r,1),auto);grid-auto-flow:column;border:2px solid var(--line);background:var(--panel);gap:0 0}
.gxj-pairs a.c1{border-right:2px solid var(--line)}
.gxj-pairs a{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);text-decoration:none;font-weight:700;font-size:15px;min-width:0}
.gxj-pairs a[hidden]{display:none}
.gxj-pairs .m{display:flex;align-items:center;gap:8px;min-width:0;overflow-wrap:anywhere}
.gxj-pairs img{width:20px;height:20px;flex:none;filter:grayscale(1)}
.gxj-pairs i{display:grid;place-items:center;flex:none;width:20px;height:20px;border:1.5px solid var(--line);font:700 11px var(--fm);font-style:normal}
.gxj-pairs .v{font:600 11px var(--fm);text-transform:uppercase;color:var(--soft);text-align:center}
.gxj-pairs .c{font:12px var(--fm);color:var(--soft)}
.gxj-pairs a:hover{background:var(--lime);color:var(--onlime)}.gxj-pairs a:hover .v,.gxj-pairs a:hover .c{color:var(--onlime)}.gxj-pairs a:hover i{border-color:var(--onlime)}
:root[data-theme=dark] .gxj-pairs img{filter:grayscale(1) invert(1) brightness(1.6)}
:root[data-theme=dark] .gxj-pairs a:hover img{filter:grayscale(1)}
@media(max-width:1180px){.gxj-gcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1020px){.gxj-cmphd{grid-template-columns:1fr}.gxj-cmphd>.a{border-right:0;border-bottom:2px solid var(--line)}.gxj-cmphd>.b{flex-direction:row}.gxj-cmphd>.b a{border-bottom:0;border-right:2px solid var(--line)}.gxj-cmphd>.b a:last-child{border-right:0}
  .gxj-pairs{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row}.gxj-pairs a.c1{border-right:0}}
@media(max-width:600px){.gxj-cmphd>.a,.gxj-cmpspec{padding:18px 14px}.gxj-cmphd>.b{flex-direction:column}.gxj-cmphd>.b a{border-right:0;border-bottom:2px solid var(--line)}.gxj-cmphd>.b a:last-child{border-bottom:0}.gxj-cmphd>.b b{font-size:38px}
  .gxj-pick .s{flex:1 1 100%}.gxj-pick .w{padding-bottom:0}.gxj-gcards{grid-template-columns:1fr}.gxj-pairs a{grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);font-size:13.5px;line-height:1.3;padding:8px 10px;gap:6px}.gxj-pairs .c{display:none}.gxj-pairs .m{gap:6px}.gxj-pairs img,.gxj-pairs i{width:16px;height:16px}.gxj-pq .q{min-width:100%}}
/* header: the last dropdown opens leftwards so it stays on screen */
.gxj-ddr .gxj-mega{left:auto;right:-2px}
.gxj-ft p a.gxj-mail{display:inline;text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--lime);text-underline-offset:3px;color:var(--ink)}
/* the archive's Tailwind, second pass (2026-10-04): greys, «primary», dark: variants, borders, rules */
.gxj-legacy *,.gxj-legacy *::before,.gxj-legacy *::after{border-color:var(--line)!important}
.gxj-legacy hr{background:var(--line)!important;border:0!important;height:2px}
.gxj-legacy [class*="bg-gray-2"],.gxj-legacy [class*="bg-gray-3"],.gxj-legacy [class*="bg-slate-2"],.gxj-legacy [class*="bg-primary-"],.gxj-legacy [class*="bg-transparent"]{background:var(--bg)!important;background-image:none!important}
.gxj-legacy [class*="bg-transparent"]{background:transparent!important}
:root[data-theme=dark] .gxj-legacy [class*="dark:bg-"]:not([class^="bg-"]):not([class*=" bg-"]):not(a):not(button){background:var(--panel)!important}
.gxj-legacy :is(a,button,input)[class*="bg-primary-"],.gxj-legacy :is(a,button)[class*="bg-green-"]{background:var(--ink)!important;color:var(--bg)!important;border:2px solid var(--line)!important}
.gxj-legacy :is(a,button,input)[class*="bg-primary-"]:hover,.gxj-legacy :is(a,button)[class*="bg-green-"]:hover{background:var(--lime)!important;color:var(--onlime)!important}
.gxj-legacy [class*="text-gray-9"],.gxj-legacy [class*="text-gray-8"],.gxj-legacy .text-black,.gxj-legacy [class*="text-white"]:not(a):not(button),.gxj-legacy [class*="text-primary-"],.gxj-legacy [class*="text-purple-"],.gxj-legacy [class*="text-blue-"],.gxj-legacy [class*="text-red-"]{color:var(--ink)!important}
.gxj-legacy [class*="text-gray-3"],.gxj-legacy [class*="text-gray-4"],.gxj-legacy [class*="text-gray-5"],.gxj-legacy [class*="text-gray-6"],.gxj-legacy [class*="text-gray-7"]{color:var(--soft)!important}
.gxj-legacy ::placeholder{color:var(--soft)!important;opacity:1}
.gxj-legacy [class*="hover:bg-blue-"]:hover *{color:var(--onlime)!important}
/* the newsletter tag stays black on lime in both modes */
.gxj-sub .gxj-dymo{background:#151515;color:#cdfa2e}
.gxj-legacy :is(input,select,textarea,button):focus{box-shadow:0 0 0 3px var(--lime)!important;outline:0}
.gxj-legacy img[src^="/icons/"]{filter:grayscale(1)}
:root[data-theme=dark] .gxj-legacy img[src^="/icons/"]{filter:grayscale(1) invert(1) brightness(1.6)}
/* the pair pages' own «Compare [A] to [B]» selects read like the hub's picker */
.gxj-legacy h1 select,.gxj-legacy h1 select[class]{appearance:none;-webkit-appearance:none;font:600 15px/1.2 var(--fm)!important;text-transform:none;letter-spacing:0;padding:9px 40px 9px 10px!important;cursor:pointer;box-shadow:3px 3px 0 var(--line);
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%)!important;background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%!important;background-size:6px 6px,6px 6px!important;background-repeat:no-repeat!important}
.gxj-legacy h1 select[class]:hover,.gxj-legacy h1 select:hover{background-color:var(--lime)!important;color:var(--onlime)!important}
.gxj-legacy h1 select option{background:var(--panel);color:var(--ink)}
/* prompt explained: card lines and the «What you get / need / Best in» block (2026-10-04) */
.gxj-bin p.gxj-get{font:14.5px/1.5 var(--ft);color:var(--ink)}
.gxj-bin p.gxj-need{font:12px/1.9 var(--fm);color:var(--soft);margin-top:auto;padding-top:4px}
.gxj-bin p.gxj-need b{font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);margin-right:4px}
.gxj-bin p.gxj-need mark.gxj-v{color:var(--ink);white-space:nowrap}
.gxj-wyg{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1.25fr) minmax(0,.8fr);border:2px solid var(--line);margin:18px 0;background:var(--bg)}
.gxj-wyg>div{padding:12px 14px;border-right:1px solid var(--line);min-width:0}.gxj-wyg>div:last-child{border-right:0}
.gxj-wyg span{display:block;font:600 11px var(--fm);text-transform:uppercase;letter-spacing:.08em;color:var(--soft);margin-bottom:6px}
.gxj-wyg .g span{background:var(--lime);color:var(--onlime);display:inline-block;padding:1px 6px}
.gxj-wyg p{margin:0;font-weight:600;line-height:1.45}
.gxj-wyg ul{margin:0;padding-left:18px}.gxj-wyg li{margin:0 0 4px;font-size:14.5px;line-height:1.5}
.gxj-wyg .b b{display:block;font:900 24px/1.05 var(--fd);text-transform:uppercase}.gxj-wyg .b small{display:block;margin-top:6px;font:12px/1.5 var(--fm);color:var(--soft)}
@media(max-width:1020px){.gxj-wyg{grid-template-columns:1fr 1fr}.gxj-wyg .g{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:600px){.gxj-wyg{grid-template-columns:1fr}.gxj-wyg>div{border-right:0!important;border-bottom:1px solid var(--line)}.gxj-wyg>div:last-child{border-bottom:0}}
.gxj-bin p.gxj-need mark.gxj-v,.gxj-wyg mark.gxj-v{display:inline-block;margin:0 5px 5px 0;line-height:1.45;white-space:normal}
.gxj-thead .gxj-dymo{white-space:normal;max-width:100%}
/* tool page: ratings panel (ours + Trustpilot) and the «how it's scored» popover — topseotools model */
.gxj-thead .gxj-rts{position:relative;display:flex;flex-direction:column;padding:0}
.gxj-rts header{display:flex;justify-content:space-between;gap:8px;padding:12px 18px;border-bottom:2px solid var(--line);font:600 11px var(--fm);text-transform:uppercase;letter-spacing:.08em;color:var(--soft)}
.gxj-rts .rt{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"src big" "gg gg";gap:8px 12px;align-items:end;padding:16px 18px;border-bottom:1px solid var(--line)}.gxj-rts .rt:last-child{border-bottom:0}
.gxj-rts .src{grid-area:src;display:flex;flex-direction:column;gap:3px;min-width:0}.gxj-rts .src b{font:800 15px var(--ft)}.gxj-rts .src small,.gxj-rts .src small a{font:12px var(--fm);color:var(--soft)}
.gxj-rts .big{grid-area:big;font:900 44px/1 var(--fd)}.gxj-rts .big small{font-size:18px;color:var(--soft)}.gxj-rts .rt.ours .big{font-size:56px}
.gxj-rts .gg{grid-area:gg;display:block;height:10px;border:1.5px solid var(--line);background:var(--bg)}.gxj-rts .gg i{display:block;height:100%;background:var(--ink)}.gxj-rts .gg.hi i{background:var(--lime);box-shadow:inset 0 0 0 1px var(--line)}
.gxj-rts .rt.na .big{color:var(--soft);font-size:36px}
.gxj-hs-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font:600 12px var(--fm);color:var(--ink);text-decoration:underline dotted;text-underline-offset:3px}
.gxj-hs-btn i{display:inline-grid;place-items:center;width:15px;height:15px;border:1.5px solid var(--line);border-radius:50%;font:700 10px/1 var(--fm);font-style:normal;text-decoration:none}
.gxj-hs-btn:focus-visible{outline:3px solid var(--lime);outline-offset:2px}
.gxj-hs-pop{position:absolute;z-index:45;top:calc(100% - 2px);right:-2px;width:min(420px,calc(100vw - 32px));background:var(--panel);border:2px solid var(--line);box-shadow:6px 6px 0 var(--line);padding:16px 18px 14px;color:var(--ink);font:13px/1.45 var(--ft);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease,visibility 0s .12s}
.gxj-hs:hover .gxj-hs-pop,.gxj-hs:focus-within .gxj-hs-pop,.gxj-hs.open .gxj-hs-pop{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.gxj-hs.shut .gxj-hs-pop{opacity:0!important;visibility:hidden!important}
.gxj-hs.open .gxj-hs-btn i{background:var(--lime);color:var(--onlime)}
.gxj-hs-pop>span{display:block}
.gxj-hs-pop .hd{display:flex!important;justify-content:space-between;align-items:center;gap:12px}.gxj-hs-pop .hd b{font:900 34px/1 var(--fd)}.gxj-hs-pop .hd small{font-size:15px;color:var(--soft)}
.gxj-hs-pop .sc{position:relative;height:28px;margin:30px 0 4px;background:var(--bg);border:1.5px solid var(--line)}
.gxj-hs-pop .bd{position:absolute;top:0;bottom:0;border-right:1px solid var(--line);display:flex;align-items:center;justify-content:center}.gxj-hs-pop .bd:last-of-type{border-right:0}.gxj-hs-pop .bd.on{background:var(--lime)}
.gxj-hs-pop .bd em{font:600 9.5px var(--fm);font-style:normal;letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}
.gxj-hs-pop .mk{position:absolute;top:-5px;bottom:-5px;width:3px;margin-left:-1.5px;background:var(--ink)}
.gxj-hs-pop .mk em{position:absolute;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);padding:3px 6px 2px;background:var(--ink);color:var(--bg);font:600 9.5px/1 var(--fm);font-style:normal;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.gxj-hs-pop .mk em.r{left:auto;right:-2px;transform:none}.gxj-hs-pop .mk em.l{left:-2px;transform:none}
.gxj-hs-pop .tk{display:flex!important;justify-content:space-between;font:10px var(--fm);color:var(--soft);margin-bottom:10px}
.gxj-hs-pop .tx{color:var(--soft);font-size:12.5px}
.gxj-hs-pop .ps{margin-top:10px;border-top:2px solid var(--line)}
.gxj-hs-pop .p{display:grid!important;grid-template-columns:minmax(0,118px) minmax(0,1fr) 46px;gap:3px 10px;align-items:center;padding:7px 0;border-bottom:1px solid var(--grid)}
.gxj-hs-pop .p .l{display:flex;align-items:baseline;gap:6px;font-size:12.5px}.gxj-hs-pop .p .l em{font:11px var(--fm);font-style:normal;color:var(--soft)}
.gxj-hs-pop .p .bar{display:block;height:8px;border:1.5px solid var(--line);background:var(--bg)}.gxj-hs-pop .p .bar i{display:block;height:100%;background:var(--ink)}.gxj-hs-pop .p.na .bar{border-style:dashed}.gxj-hs-pop .p.na .bar i{background:var(--soft);opacity:.5}
.gxj-hs-pop .p .v{font:600 12px var(--fm);text-align:right}.gxj-hs-pop .p .why{grid-column:1/-1;font:11px/1.35 var(--fm);color:var(--soft)}
.gxj-hs-pop .sum{display:flex!important;justify-content:space-between;padding-top:8px;font:12px var(--fm);color:var(--soft)}.gxj-hs-pop .sum b{color:var(--ink)}
@media(max-width:1020px){.gxj-thead .gxj-rts{flex-direction:column}.gxj-thead .gxj-rts>*{flex:none}.gxj-hs-pop{right:auto;left:-2px}}
@media(prefers-reduced-motion:reduce){.gxj-hs-pop{transition:none}}
/* Hub paths (2026-10-04): counted chips, the tool-review row, editor's picks, the home intro after search */
.gxj-filters a small{font:500 10.5px var(--fm);margin-left:6px;opacity:.65}
.gxj-filters+.gxj-filters{margin-top:8px}
.gxj-hero .gxj-hero-intro{font-size:15.5px;line-height:1.55;margin:18px 0 0}
.gxj-picks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:2px solid var(--line);background:var(--panel)}
.gxj-picks a{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-left:2px solid var(--line);text-decoration:none;min-width:0}
.gxj-picks a:first-child{border-left:0}.gxj-picks a:hover{background:var(--lime);color:var(--onlime)}
.gxj-picks .k{font:600 11px var(--fm);text-transform:uppercase;color:var(--soft)}.gxj-picks b{font-weight:800;font-size:16px;line-height:1.25}
.gxj-picks .x{font-size:13.5px;color:var(--soft);line-height:1.45}.gxj-picks a:hover .k,.gxj-picks a:hover .x{color:var(--onlime)}
.gxj-picks-all{margin:8px 0 0}
@media(max-width:1020px){.gxj-picks{grid-template-columns:repeat(2,minmax(0,1fr))}.gxj-picks a:nth-child(3){border-left:0}.gxj-picks a:nth-child(n+3){border-top:2px solid var(--line)}}
@media(max-width:600px){.gxj-picks{grid-template-columns:1fr}.gxj-picks a{border-left:0;padding:12px 14px}.gxj-picks a+a{border-top:2px solid var(--line)}.gxj-picks .x{display:none}
  .gxj-lhead .gxj-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,#000 85%,transparent);mask-image:linear-gradient(to right,#000 85%,transparent);padding-bottom:2px}
  .gxj-lhead .gxj-filters::-webkit-scrollbar{display:none}.gxj-lhead .gxj-filters>*{flex:none;white-space:nowrap}
  .gxj-hero .gxj-hero-intro{font-size:15px}}
/* footer logo = the header's mark, without the header's divider */
.gxj-ft .gxj-flogo{display:inline-flex;border-right:0;padding:0;margin-bottom:10px;font-size:24px}.gxj-ft .gxj-flogo:hover{background:none;color:inherit}.gxj-ft .gxj-flogo .n{display:inline}

/* Archived «more collections» pill rows in hub bodies: the theme's chips, not a run-on line of links. */
.gxj-listing-body p.flex,.gxj-prose p.flex{display:flex;flex-wrap:wrap;gap:6px}
.gxj-listing-body a.rounded-full,.gxj-prose a.rounded-full{font:600 12.5px var(--fm);border:2px solid var(--line);padding:5px 10px;text-decoration:none;background:var(--bg);color:var(--ink)}
.gxj-listing-body a.rounded-full:hover,.gxj-prose a.rounded-full:hover{background:var(--lime);color:var(--onlime)}
.gxj-post .f a{flex:1;padding:8px 12px;font:600 11.5px var(--fm);text-transform:uppercase;text-decoration:none;background:var(--ink);color:var(--bg)}.gxj-post .f a:hover{background:var(--lime);color:var(--onlime)}
/* A card's label is a strip of tape, not a full-width bar. */
.gxj-card>.gxj-dymo{align-self:flex-start}
/* The sort select is as wide as its longest option; capped, the count stays on the row with it. */
.gxj-tbar select{max-width:150px}
/* The build's generic `table{display:block}` (for unwrapped tables) left the compare sheets' rows
   short of their own border. A table the archive already wrapped in a scroller is a real table again. */
.gxj-legacy [class*="overflow-x"]>table{display:table;width:100%}
.gxj-legacy td:not([class*="px-"]){padding:12px 16px}
/* A spec value that is one long token (an install command) widens its column instead of losing its
   last letter to the next line; on a phone the 2×2 grid keeps breaking anywhere. */
@media(min-width:601px){.gxj-spec{grid-template-columns:repeat(4,minmax(min-content,1fr))}.gxj-spec b{overflow-wrap:break-word}}
/* /advertise audience figures: the build's rounded grey cards (navy in dark mode) re-dressed as workshop panels. */
.gxj-t .gxj-stats{gap:0;border:2px solid var(--line);background:var(--panel)}
.gxj-t .gxj-stats div{background:none;border:0;border-right:2px solid var(--line);border-radius:0;padding:14px 16px}
.gxj-t .gxj-stats div:last-child{border-right:0}
.gxj-t .gxj-stats b{font:900 40px/1 var(--fd);color:var(--ink);margin-bottom:6px}
.gxj-t .gxj-stats span{display:block;font:600 11.5px/1.4 var(--fm);text-transform:uppercase;letter-spacing:.06em;color:var(--soft)}
@media(max-width:600px){.gxj-t .gxj-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.gxj-t .gxj-stats div:nth-child(2n){border-right:0}.gxj-t .gxj-stats div:nth-child(-n+2){border-bottom:2px solid var(--line)}}
/* Blank chips: the dashed outline sits 2.5px outside each chip, so a 5px margin left two chips touching
   and read as one box. Enough room for the outlines plus a visible gap. */
.gxj-bin p.gxj-need mark.gxj-v,.gxj-wyg mark.gxj-v{margin:0 9px 7px 3px}
/* On a phone the spec sheet keeps its three columns on screen: labels and values wrap instead of
   pushing both models' columns off to the right of a scroller. */
@media(max-width:600px){.gxj-legacy [class*="overflow-x"]>table{font-size:13px}.gxj-legacy [class*="overflow-x"]>table :is(th,td){white-space:normal!important;padding:10px 8px!important;overflow-wrap:normal;word-break:normal}.gxj-legacy [class*="overflow-x"]>table thead th>*{flex-wrap:wrap}.gxj-legacy [class*="overflow-x"]>table th span{font-size:11.5px}}
/* In-page jumps (contents lists, #anchors, scrollIntoView) land below the sticky header, not under it. */
html{scroll-padding-top:78px}
/* …and on a tablet: the mono row notes wrap too, so both model columns stay on screen. */
.gxj-legacy [class*="overflow-x"]>table :is(th,td),.gxj-legacy [class*="overflow-x"]>table :is(th,td) *{white-space:normal!important}
/* Tablet footer: five columns in a 2-up grid leave «Site» alone with a half-width rule under it. */
@media(min-width:601px) and (max-width:1020px){.gxj-ft .gxj-w>div:last-child{grid-column:1/-1;border-bottom:0}.gxj-ft .gxj-w>div:last-child a{display:inline-block;margin-right:22px}}

/* ---------- newsletter in context (2026-10-04, stage B) ---------- */
.gxj-nl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:2px solid var(--line);background:var(--panel);margin:26px 0;font-family:var(--ft)}
.gxj-nl[hidden],.gxj-nlf[hidden]{display:none}
.gxj-nl .a{padding:16px 18px;border-right:2px solid var(--line);min-width:0}.gxj-nl .b{padding:16px 18px;display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0}
.gxj-nl .h{font:900 24px/1 var(--fd);text-transform:uppercase;margin:8px 0 6px}
.gxj-t .gxj-nl p{margin:0;font-size:14.5px;line-height:1.5;color:var(--soft)}.gxj-t .gxj-nl .h{font:900 26px/1 var(--fd);text-transform:uppercase;margin:10px 0 6px;color:var(--ink)}
.gxj-nl-row{grid-column:1/-1;margin:0}
.gxj-nlf{display:flex;min-width:0}
.gxj-nlf input[type=email]{flex:1;min-width:0;width:0;border:2px solid var(--line);background:var(--bg);color:var(--ink);font:15px var(--fm);padding:10px 12px;border-radius:0}
.gxj-nlf button{border:2px solid var(--line);border-left:0;background:var(--ink);color:var(--lime);font:600 12.5px var(--fm);text-transform:uppercase;letter-spacing:.04em;padding:0 14px;cursor:pointer;white-space:nowrap;border-radius:0}
:root[data-theme=dark] .gxj-nlf button{color:var(--bg)}
.gxj-nlf button:hover{background:var(--lime);color:var(--onlime)}.gxj-nlf button:disabled{opacity:.6;cursor:default}
.gxj-t .gxj-nl-msg{font:13px/1.5 var(--fm);color:var(--ink);margin:0}.gxj-nl-msg:empty{display:none}.gxj-nl-msg.bad{font-weight:700}.gxj-nl-msg.bad:before{content:"! ";}
.gxj-nl-msg .gxj-btn{margin-top:8px}
.gxj-nlt{position:fixed;right:16px;bottom:16px;z-index:60;width:min(380px,calc(100vw - 32px));border:2px solid var(--line);background:var(--panel);color:var(--ink);box-shadow:6px 6px 0 var(--line);padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;opacity:0;transform:translateY(16px);transition:opacity .2s ease,transform .2s ease}
.gxj-nlt.on{opacity:1;transform:none}
.gxj-nlt .h{font:900 22px/1 var(--fd);text-transform:uppercase;margin:0;padding-right:30px;color:var(--ink)!important}.gxj-nlt p{margin:0;font-size:14px;color:var(--soft)}.gxj-nlt .gxj-nl-msg{color:var(--ink)}
.gxj-nlt .x{position:absolute;top:8px;right:8px;width:30px;height:30px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font:700 18px/1 var(--fm);cursor:pointer;padding:0}.gxj-nlt .x:hover{background:var(--lime);color:var(--onlime)}
@media(max-width:600px){.gxj-nl{grid-template-columns:1fr}.gxj-nl .a{border-right:0;border-bottom:2px solid var(--line)}.gxj-nl .a,.gxj-nl .b{padding:14px}.gxj-nlt{right:12px;left:12px;bottom:12px;width:auto}}

/* ---------- Claude Skills catalog ---------- */
.gxj-skbar .g button small{font:500 10.5px var(--fm);margin-left:5px;opacity:.65}.gxj-skbar button:disabled{opacity:.35;cursor:default}.gxj-skbar button:disabled:hover{background:var(--bg);color:var(--ink)}
.gxj-skc-c{display:flex;flex-direction:column;gap:8px;border:2px solid var(--line);background:var(--panel);padding:14px 16px;min-width:0}
.gxj-skc-c[hidden]{display:none}
.gxj-skc-c .l{display:flex;justify-content:space-between;align-items:center;gap:8px}
.gxj-skc-c h3{font:800 19px/1.2 var(--ft);margin:2px 0 0}.gxj-skc-c h3 a{text-decoration:none}.gxj-skc-c h3 a:hover{background:var(--lime);color:var(--onlime)}
.gxj-skc-c .o{margin:0;font-size:14.5px;color:var(--soft);flex:1}
.gxj-skc-c .by{margin:0;font:12px var(--fm);color:var(--soft)}
.gxj-st{font:600 12px var(--fm)}.gxj-skc-c .st,.gxj-skspec .st{font:600 12px var(--fm);white-space:nowrap}.gxj-skc-c .st small,.gxj-skspec .st small{font-weight:400;color:var(--soft)}
.gxj-skc-c .ws,.gxj-skspec .ws{display:flex;flex-wrap:wrap;gap:4px}
.gxj-skc-c .w,.gxj-skspec .w{font:600 11px var(--fm);border:1.5px solid var(--line);padding:1px 6px;background:var(--bg)}
.gxj-ins{display:flex;align-items:stretch;border:2px solid var(--line);background:var(--bg);min-width:0}
.gxj-ins code{flex:1;min-width:0;font:12.5px/1.4 var(--fm);padding:7px 9px;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
.gxj-ins button{border:0;border-left:2px solid var(--line);background:var(--ink);color:var(--bg);font:600 11.5px var(--fm);text-transform:uppercase;padding:0 10px;cursor:pointer}.gxj-ins button:hover{background:var(--lime);color:var(--onlime)}
.gxj-ins.plain span{font:12.5px/1.4 var(--fm);padding:7px 9px;color:var(--soft)}
.gxj-sknone{border:2px dashed var(--line);padding:18px;margin:14px 0 0;font:14px/1.6 var(--fm);color:var(--soft)}
.gxj-sknote{margin-top:12px}
.gxj-skspec{border:2px solid var(--line);margin:18px 0;background:var(--bg)}
.gxj-skspec .r{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.gxj-skspec .r>div{padding:8px 10px;border-right:1px solid var(--line);min-width:0}.gxj-skspec .r>div:last-child{border-right:0}
.gxj-skspec .k{display:block;font:11px var(--fm);text-transform:uppercase;color:var(--soft)}
.gxj-skspec b{font-weight:800;overflow-wrap:anywhere;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.gxj-skspec .i{border-top:1px solid var(--line);padding:8px 10px}.gxj-skspec .i .gxj-ins{margin-top:4px}
.gxj-skspec .x{border-top:1px solid var(--line);padding:8px 10px;display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;font:600 12.5px var(--fm)}
@media(max-width:600px){.gxj-skspec .r{grid-template-columns:1fr 1fr}.gxj-skspec .r>div{border-bottom:1px solid var(--line)}.gxj-skspec .r>div:nth-child(2n){border-right:0}}

/* ---------- AI stack finder ---------- */
.gxj-sf{margin-top:22px}
.gxj-sf-f{border:2px solid var(--line);background:var(--panel)}
.gxj-sf .q{border:0;border-bottom:2px solid var(--line);margin:0;padding:16px 18px;min-width:0}
.gxj-sf legend,.gxj-sf .lg{float:left;width:100%;display:flex;align-items:baseline;gap:10px;font:900 22px/1 var(--fd);text-transform:uppercase;margin:0 0 12px;padding:0}
.gxj-sf legend+*,.gxj-sf .lg+*{clear:both}
.gxj-sf legend b,.gxj-sf .lg b{display:inline-grid;place-items:center;width:26px;height:26px;background:var(--lime);color:var(--onlime);border:2px solid var(--line);font:900 16px/1 var(--fd)}
.gxj-sf legend small,.gxj-sf .lg small{font:500 11.5px var(--fm);text-transform:uppercase;color:var(--soft)}
.gxj-sf .os{display:flex;flex-wrap:wrap;gap:6px}
.gxj-sf .o{position:relative;display:inline-flex;cursor:pointer}
.gxj-sf .o input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.gxj-sf .o span{border:2px solid var(--line);background:var(--bg);font:600 13px var(--fm);padding:7px 11px}
.gxj-sf .o:hover span{background:var(--lime);color:var(--onlime)}
.gxj-sf .o input:checked+span{background:var(--ink);color:var(--bg)}
.gxj-sf input[type=checkbox]:checked+span:before{content:"✓ "}
.gxj-sf .o input:focus-visible+span{outline:3px solid var(--lime);outline-offset:2px}
.gxj-sf .q2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.6fr)}.gxj-sf .q2 .q{border-bottom:0}.gxj-sf .q2 .pl{border-left:2px solid var(--line);display:block}
.gxj-sf select{border:2px solid var(--line);background:var(--bg);color:var(--ink);font:14px var(--fm);padding:8px;width:100%;max-width:260px}
.gxj-sf-out{margin-top:6px}
.gxj-sf-hint{border:2px dashed var(--line);padding:14px 16px;margin:16px 0 0;font:14px/1.6 var(--fm);color:var(--soft)}.gxj-sf-hint[hidden],.gxj-sf-res[hidden]{display:none}
.gxj-sf-tools{list-style:none;margin:0;padding:0;border:2px solid var(--line);background:var(--panel)}
.gxj-sf-t{display:grid;grid-template-columns:44px minmax(0,1fr) 80px 110px;gap:0 14px;align-items:center;padding:14px;border-top:1px solid var(--line)}.gxj-sf-t:first-child{border-top:0}
.gxj-sf-t.alt{background:var(--bg)}
.gxj-sf-t .cv{font:600 11.5px var(--fm);text-transform:uppercase;color:var(--soft)}
.gxj-sf-t h3{margin:6px 0 2px;font:800 19px/1.2 var(--ft)}.gxj-sf-t h3 a{text-decoration:none}.gxj-sf-t h3 a:hover{background:var(--lime);color:var(--onlime)}
.gxj-sf-t .why{margin:0 0 6px;font-size:14px;color:var(--soft)}
.gxj-sf-t .tags{display:flex;flex-wrap:wrap;gap:4px}.gxj-sf-t .tags span{font:11px var(--fm);border:1px solid var(--line);padding:1px 6px;background:var(--bg)}.gxj-sf-t .tags .pr{font-weight:700}.gxj-sf-t .tags .ok{background:var(--lime);color:var(--onlime)}
.gxj-sf-t .sc{display:flex;flex-direction:column;align-items:center}.gxj-sf-t .sc span{font:600 10.5px var(--fm);text-transform:uppercase;color:var(--soft)}.gxj-sf-t .sc b{font:900 30px/1 var(--fd)}
.gxj-sf-t .go{font:600 12px var(--fm);text-transform:uppercase;text-decoration:none;border:2px solid var(--line);padding:6px 8px;text-align:center;white-space:nowrap}.gxj-sf-t .go:hover{background:var(--lime);color:var(--onlime)}
.gxj-sf-miss{padding:12px 14px;border-top:1px dashed var(--line);font:13px var(--fm);color:var(--soft)}
.gxj-sf-bundle{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);border:2px solid var(--line);background:var(--panel)}
.gxj-sf-bundle .t{padding:16px 18px;border-right:2px solid var(--line);min-width:0}.gxj-sf-bundle .k{padding:16px 18px;display:flex;flex-direction:column;gap:10px;align-items:flex-start;min-width:0}
.gxj-sf-bundle .k .h{font:900 24px/1 var(--fd);text-transform:uppercase;margin:0}.gxj-sf-bundle .k .gxj-nlf{width:100%}.gxj-sf-bundle .gxj-small{margin:0}
.gxj-sf-tb{width:100%;border-collapse:collapse;border:2px solid var(--line);font-size:15px;margin:0 0 10px}
.gxj-sf-tb th,.gxj-sf-tb td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}.gxj-sf-tb td:last-child{text-align:right;font-family:var(--fm);white-space:nowrap}
.gxj-sf-tb thead th{font:600 11.5px var(--fm);text-transform:uppercase;background:var(--bg)}.gxj-sf-tb th a{text-decoration:none;font-weight:800}.gxj-sf-tb th small{display:block;font:11px var(--fm);color:var(--soft);font-weight:400}
.gxj-sf-tb tfoot th,.gxj-sf-tb tfoot td{background:var(--lime);color:var(--onlime);font-weight:900}.gxj-sf-tb tr.alt td,.gxj-sf-tb tr.alt th a{color:var(--soft)}
@media(max-width:1020px){.gxj-sf-bundle{grid-template-columns:1fr}.gxj-sf-bundle .t{border-right:0;border-bottom:2px solid var(--line)}}
@media(max-width:600px){.gxj-sf .q{padding:14px}.gxj-sf .q2{grid-template-columns:1fr}.gxj-sf .q2 .pl{border-left:0;border-top:2px solid var(--line)}.gxj-sf .o span{font-size:12.5px;padding:7px 9px}
  .gxj-sf-t{grid-template-columns:36px minmax(0,1fr) auto;gap:8px 12px;padding:12px 10px}.gxj-sf-t .go{grid-column:2/-1}.gxj-sf-t .sc{grid-column:3;grid-row:1}.gxj-sf-bundle .t,.gxj-sf-bundle .k{padding:14px}}
@media(max-width:600px){.gxj-skbar{padding:10px}.gxj-skbar .g{flex-wrap:nowrap;width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,#000 82%,transparent);mask-image:linear-gradient(to right,#000 82%,transparent);padding-bottom:2px}.gxj-skbar .g::-webkit-scrollbar{display:none}.gxj-skbar .g.end{-webkit-mask-image:none;mask-image:none}.gxj-skbar .g span{position:sticky;left:0;z-index:1;background:var(--panel);padding:6px 6px 6px 0;margin-right:0;white-space:nowrap}.gxj-skbar .g button{flex:none;white-space:nowrap;padding:7px 10px}}
/* Sections tiles: what kind of thing is inside (label + count) first, then the name, then what you get —
   every title on the same line across the row */
.gxj-tile{justify-content:flex-start;gap:10px}
.gxj-tile .k{display:flex;align-items:center;gap:8px;min-height:24px}
.gxj-tile .k .gxj-dymo{font-size:10.5px}.gxj-tile .k .gxj-new{position:static;margin-left:auto}
.gxj-tile b{margin-top:6px;font-size:25px;line-height:1}
.gxj-tile .d{font-size:14px;line-height:1.45;color:var(--soft)}
.gxj-tile:first-child .k .gxj-dymo{background:var(--lime);color:var(--onlime)}
.gxj-tile:first-child .d{color:var(--bg);opacity:.8}
.gxj-tile:hover .gxj-dymo{background:var(--ink);color:var(--lime)}.gxj-tile:hover .d{color:var(--onlime)}
@media(max-width:600px){.gxj-tile b{font-size:22px}}
/* six sections: one tile per kind of thing, 3 × 2 */
.gxj-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1020px){.gxj-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.gxj-tiles{grid-template-columns:1fr}.gxj-tile{min-height:0}}
