.gx-wrap{max-width:600px}
.gx-crumb{margin:8px 0 4px}
.gx{--lc:#7B2CFF;--gsurf:var(--bg2);--sheet:132px;padding-bottom:calc(var(--sheet) + 16px + env(safe-area-inset-bottom));-webkit-tap-highlight-color:transparent}
.gx button{touch-action:manipulation;-webkit-user-select:none;user-select:none;font-family:var(--display)}
.gx-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.gx-top{display:flex;align-items:center;gap:10px;min-height:44px}
.gx-h1{margin:0;font:800 20px/1 'Unbounded',var(--display);text-transform:uppercase;letter-spacing:-.01em}
.gx-pills{display:flex;gap:6px;margin-left:auto}
.gx-pill{width:32px;height:32px;border-radius:999px;border:1.5px solid var(--rule);background:transparent;color:var(--ink);font:800 12px/1 var(--display);cursor:pointer;display:grid;place-items:center;transition:transform 100ms var(--ease),background-color 150ms var(--ease);position:relative}
.gx-pill::after{content:"";position:absolute;inset:-6px}
.gx-pill[aria-current=step]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.gx-pill.w{background:#18C964;border-color:#18C964;color:#0b0b0c}
.gx-pill.l{background:var(--gsurf);color:var(--muted,#6b6b70)}
.gx-pill.w[aria-current=step],.gx-pill.l[aria-current=step]{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--ink)}
.gx-icons{display:flex;gap:2px}
.gx-ib{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:3px;border:0;border-radius:999px;background:transparent;color:var(--ink);cursor:pointer;font:800 13px/1 var(--display);transition:transform 100ms var(--ease),background-color 150ms var(--ease)}
.gx-stk{padding:0 4px;cursor:default}
.gx-sub{display:flex;align-items:center;gap:10px;margin:2px 0 10px;font:800 10px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#6b6b70)}
.gx-score{color:var(--lc)}
.gx-clues{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.gx-c{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:10px;min-height:48px;padding:8px 14px;border-radius:12px;background:var(--card,var(--bg));box-shadow:inset 0 0 0 1.5px var(--rule);position:relative;overflow:hidden}
.gx-c .gx-k{font:800 10px/1.1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--lc);display:flex;align-items:center;gap:5px}
.gx-c .gx-v{font:700 15px/1.3 var(--sans);color:var(--ink);overflow-wrap:anywhere}
.gx-c .gx-emo{font-size:22px;letter-spacing:.12em;line-height:1.1}
.gx-c.lk{min-height:34px;padding:6px 14px;background:transparent;box-shadow:inset 0 0 0 1px var(--rule)}
.gx-c.lk .gx-k,.gx-c.lk .gx-v{color:var(--muted,#8a8a90);font-weight:600}
.gx-c.lk .gx-v{font:500 12px/1.2 var(--sans)}
.gx-c.new{animation:gxin 220ms var(--ease) both}
.gx-c.new::after{content:"";position:absolute;inset:0;background:var(--lc);opacity:0;animation:gxhl 1200ms var(--ease) both;pointer-events:none}
@keyframes gxin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes gxhl{0%{opacity:.16}100%{opacity:0}}
.gx-board.swap{animation:gxin 250ms var(--ease) both}
.gx-tried{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px;min-height:0}
.gx-tried li{padding:6px 12px;border-radius:999px;background:var(--gsurf);font:600 13px/1.2 var(--sans);animation:gxin 220ms var(--ease) both}
.gx-tried .no{text-decoration:line-through;text-decoration-thickness:2px;color:var(--muted,#6b6b70)}
.gx-tried .sk{color:var(--muted,#6b6b70);font-style:italic}
.gx-tried .ok{background:#18C964;color:#0b0b0c}
.gx-sheet{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:8px 16px calc(10px + env(safe-area-inset-bottom));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));background:var(--bg);border-top:1px solid var(--rule);box-shadow:0 -8px 24px rgba(0,0,0,.06);transform:translateY(calc(-1 * var(--kb,0px)));will-change:transform}
.gx-sheet>*{max-width:568px;margin-left:auto;margin-right:auto}
.gx-sheet.shake{animation:gxshake 300ms var(--ease)}
@keyframes gxshake{0%{transform:translate(0,calc(-1 * var(--kb,0px)))}20%{transform:translate(-8px,calc(-1 * var(--kb,0px)))}40%{transform:translate(6px,calc(-1 * var(--kb,0px)))}60%{transform:translate(-4px,calc(-1 * var(--kb,0px)))}80%{transform:translate(2px,calc(-1 * var(--kb,0px)))}100%{transform:translate(0,calc(-1 * var(--kb,0px)))}}
.gx-srow{display:flex;align-items:center;justify-content:space-between;min-height:32px}
.gx-skip{min-height:36px;padding:0 4px;border:0;background:none;color:var(--ink);font:800 11px/1 var(--display);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px;transition:transform 100ms var(--ease)}
.gx-left{font:800 10px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#6b6b70)}
.gx-row{display:flex;gap:8px;align-items:center}
.gx-cb{position:relative;flex:1;min-width:0}
#gx-in{width:100%;height:48px;min-height:48px;padding:0 16px;border-radius:999px;border:1.5px solid var(--rule);background:var(--bg);color:var(--ink);font:600 16px/1.2 var(--sans);-webkit-appearance:none;appearance:none;transition:border-color 150ms var(--ease)}
#gx-in:focus{outline:none;border-color:var(--lc)}
#gx-in[aria-invalid=true]{border-color:#FF2E93}
#gx-lb{position:absolute;left:0;right:-90px;bottom:calc(100% + 10px);margin:0;padding:6px;list-style:none;max-height:300px;overflow:auto;overscroll-behavior:contain;background:var(--bg);border:1px solid var(--rule);border-radius:16px;box-shadow:0 16px 40px rgba(0,0,0,.2);z-index:41;animation:gxin 160ms var(--ease) both}
#gx-lb li{min-height:52px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:6px 14px;border-radius:10px;cursor:pointer}
#gx-lb li b{font:700 16px/1.2 var(--sans)}
#gx-lb li small{font:500 12px/1.2 var(--sans);color:var(--muted,#6b6b70);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#gx-lb li[aria-selected=true],#gx-lb li:active{background:color-mix(in srgb,var(--lc) 14%,transparent)}
#gx-lb .gx-none{color:var(--muted,#6b6b70);cursor:default;font:500 14px var(--sans)}
.gx-btn{min-height:48px;padding:0 20px;border-radius:999px;border:0;cursor:pointer;font:800 13px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;background:var(--gxb,#7B2CFF);color:#fff;transition:transform 100ms var(--ease),opacity 150ms var(--ease)}
.gx-go{flex:none;width:96px}
.gx-go:disabled{opacity:.4;cursor:default}
.gx-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--rule);display:inline-flex;align-items:center;gap:8px;justify-content:center}
.gx button:active:not(:disabled){transform:scale(.97)}
.gx button:focus{outline:none}
.gx button:focus-visible{outline:2px solid var(--lc);outline-offset:2px}
@media(hover:hover) and (pointer:fine){.gx-ib:hover,.gx-pill:hover{background:color-mix(in srgb,var(--ink) 6%,transparent)}.gx-pill[aria-current=step]:hover{background:var(--ink)}#gx-lb li:hover{background:color-mix(in srgb,var(--lc) 8%,transparent)}}
.gx-err{margin:0 0 4px;font:600 13px/1.3 var(--sans);color:#d1166f}
.gx-err:empty{display:none}
.gx-archive{margin-top:22px}
.gx-h2{margin:0 0 10px;font:800 13px/1.1 var(--display);text-transform:uppercase;letter-spacing:.06em}
.gx-h3{margin:16px 0 8px;font:800 11px/1 var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#6b6b70)}
.gx-arch{list-style:none;margin:0 -16px;padding:2px 16px 6px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(64px,calc((100% - 36px) / 7));gap:6px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.gx-arch::-webkit-scrollbar{display:none}
.gx-arch li{scroll-snap-align:start}
.gx-arch button{width:100%;min-width:56px;min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:12px;border:0;background:var(--gsurf);color:var(--ink);cursor:pointer;transition:transform 100ms var(--ease),background-color 150ms var(--ease)}
.gx-arch .gx-wd{font:800 9px/1 var(--display);letter-spacing:.08em;color:var(--muted,#6b6b70)}
.gx-arch .gx-dn{font:800 17px/1 var(--display)}
.gx-arch .gx-sq{display:flex;gap:3px}
.gx-arch .gx-sq i{width:10px;height:10px;border-radius:3px;background:color-mix(in srgb,var(--ink) 14%,transparent)}
.gx-arch .gx-sq i.w{background:#18C964}.gx-arch .gx-sq i.l{background:var(--ink)}
.gx-arch .today{background:var(--gxb,#7B2CFF);color:#fff}
.gx-arch .today .gx-wd{color:rgba(255,255,255,.85)}
.gx-arch .today .gx-sq i{background:rgba(255,255,255,.35)}.gx-arch .today .gx-sq i.w{background:#18C964}.gx-arch .today .gx-sq i.l{background:#0b0b0c}
.gx-arch .fresh{background:color-mix(in srgb,var(--gxb,#7B2CFF) 9%,var(--gsurf))}
.gx-arch .sel:not(.today){box-shadow:inset 0 0 0 2px var(--ink)}
.gx-reveal{position:fixed;left:0;right:0;bottom:0;z-index:45;max-height:calc(100dvh - 60px);overflow:auto;padding:18px 16px calc(16px + env(safe-area-inset-bottom));background:var(--bg);border-radius:20px 20px 0 0;box-shadow:0 -16px 48px rgba(0,0,0,.25);transform:translateY(105%);transition:transform 250ms var(--ease)}
.gx-reveal>*{max-width:568px;margin-left:auto;margin-right:auto}
.gx-reveal.in{transform:none}
.gx-rcard{display:flex;gap:14px;align-items:center;position:relative;z-index:1}
.gx-artw{position:relative;flex:none;width:88px;height:88px}
.gx-art{width:88px;height:88px;border-radius:12px;object-fit:cover;background:var(--gsurf);display:block}
.gx-eq{position:absolute;right:6px;bottom:6px;display:none;gap:2px;align-items:flex-end;height:16px;padding:3px;border-radius:6px;background:rgba(0,0,0,.55)}
.gx-eq i{width:3px;height:10px;background:#18C964;border-radius:2px;transform-origin:50% 100%;animation:gxeq 900ms ease-in-out infinite alternate}
.gx-eq i:nth-child(2){animation-delay:-300ms;background:#FF2E93}.gx-eq i:nth-child(3){animation-delay:-600ms;background:#1F7BFF}.gx-eq i:nth-child(4){animation-delay:-150ms;background:#fff}
@keyframes gxeq{from{transform:scaleY(.3)}to{transform:scaleY(1)}}
.gx-reveal.playing .gx-eq{display:flex}
.gx-res{margin:0;font:800 10px/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--lc)}
.gx-t{margin:4px 0;font:800 24px/1.08 var(--head,var(--display));text-transform:uppercase;overflow-wrap:anywhere}
.gx-t:focus{outline:none}
.gx-m{margin:0;font:500 13px/1.4 var(--sans);color:var(--muted,#6b6b70)}
.gx-badges{list-style:none;margin:10px auto 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.gx-badges:empty{display:none}
.gx-badges li{padding:6px 10px;border-radius:999px;background:var(--lc);color:#fff;font:800 10px/1 var(--display);letter-spacing:.06em;text-transform:uppercase}
.gx-embed{margin-top:12px;border-radius:16px;overflow:hidden}
.gx-embed .gx-load{width:100%}
.gx-embed iframe{display:block;border:0;border-radius:12px}
.gx-attr{margin:6px auto 0;font:12px/1.4 var(--sans);color:var(--muted,#6b6b70)}.gx-attr a{color:inherit}
.gx-ract{display:flex;gap:8px;align-items:center;margin-top:12px}
.gx-ract .gx-btn{flex:1}
.gx-cd{flex:2;margin:0;text-align:right;font:800 10px/1.3 var(--display);letter-spacing:.06em;text-transform:uppercase}
.gx-cd[hidden]{display:none}
.gx-cdt{color:var(--lc);font-variant-numeric:tabular-nums}
.gx-copied{margin:6px auto 0;min-height:16px;font:600 13px var(--sans);text-align:center}
.gx-burst{position:absolute;left:50%;top:40px;width:0;height:0;pointer-events:none;z-index:2}
.gx-burst i{position:absolute;width:10px;height:10px;border-radius:3px;opacity:0;background:var(--gxb,#7B2CFF)}
.gx-burst i:nth-child(3n+1){background:#FF2E93}.gx-burst i:nth-child(3n+2){background:#1F7BFF}.gx-burst i:nth-child(4n){background:#18C964}
.gx-reveal.burst .gx-burst i{animation:gxb 400ms var(--ease) both}
.gx-burst i:nth-child(1){--x:-120px;--y:-30px}.gx-burst i:nth-child(2){--x:120px;--y:-24px}.gx-burst i:nth-child(3){--x:-80px;--y:-60px}.gx-burst i:nth-child(4){--x:84px;--y:-62px}.gx-burst i:nth-child(5){--x:-150px;--y:10px}.gx-burst i:nth-child(6){--x:150px;--y:14px}.gx-burst i:nth-child(7){--x:-40px;--y:-80px}.gx-burst i:nth-child(8){--x:44px;--y:-84px}.gx-burst i:nth-child(9){--x:-100px;--y:40px}.gx-burst i:nth-child(10){--x:104px;--y:42px}.gx-burst i:nth-child(11){--x:0;--y:-96px}.gx-burst i:nth-child(12){--x:-6px;--y:60px}
@keyframes gxb{0%{opacity:1;transform:translate(0,0) scale(.4) rotate(0)}70%{opacity:1}100%{opacity:0;transform:translate(var(--x),var(--y)) scale(1) rotate(160deg)}}
.gx-dlg{border:0;padding:0;border-radius:20px;background:var(--bg);color:var(--ink);width:min(420px,calc(100vw - 32px))}
.gx-dlg::backdrop{background:rgba(0,0,0,.5)}
.gx-dlg[open]{animation:gxpop 200ms var(--ease) both}
@keyframes gxpop{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
.gx-sbox{padding:22px}
.gx-rules{margin:0 0 18px;padding-left:18px;font:15px/1.55 var(--sans)}.gx-rules li{margin:4px 0}
.gx-sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0}
.gx-sgrid div{display:flex;flex-direction:column-reverse;align-items:center;gap:4px}
.gx-sgrid dt{font:800 9px/1.2 var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#6b6b70)}
.gx-sgrid dd{margin:0;font:800 26px/1 var(--display);font-variant-numeric:tabular-nums}
.gx-dist{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:6px}
.gx-dist li{display:grid;grid-template-columns:16px 1fr 28px;gap:8px;align-items:center;font:800 11px/1 var(--display)}
.gx-dist b{display:block;height:18px;border-radius:6px;background:var(--gxb,#7B2CFF);transform-origin:0 50%}
.gx-dist i{font-style:normal;text-align:right}
.gx-x{width:100%}
@media(max-width:699px){body:has(#gx) .mast,body:has(#gx) .gx-crumb{display:none}body:has(#gx) footer,body:has(#gx) .tmq{display:none}}
@media(min-width:700px){.gx-h1{font-size:28px}.gx-c{grid-template-columns:120px 1fr;min-height:52px}.gx-sheet{border-radius:20px 20px 0 0;left:50%;right:auto;width:600px;transform:translate(-50%,calc(-1 * var(--kb,0px)))}.gx-sheet.shake{animation:gxshake2 300ms var(--ease)}.gx-reveal{left:50%;right:auto;width:600px;transform:translate(-50%,105%)}.gx-reveal.in{transform:translate(-50%,0)}}
@keyframes gxshake2{0%,100%{transform:translate(-50%,0)}20%{transform:translate(calc(-50% - 8px),0)}40%{transform:translate(calc(-50% + 6px),0)}60%{transform:translate(calc(-50% - 4px),0)}80%{transform:translate(calc(-50% + 2px),0)}}
@media(max-height:620px){.gx-c{min-height:40px;padding:6px 12px}.gx-c.lk{min-height:28px}}
@media(prefers-reduced-motion:reduce){.gx-c.new,.gx-tried li,.gx-board.swap,#gx-lb,.gx-dlg[open]{animation:gxfade 150ms linear both}.gx-sheet.shake{animation:none}.gx-reveal{transition:opacity 200ms linear;transform:none!important;opacity:0}.gx-reveal.in{opacity:1}.gx-reveal.burst .gx-burst i{animation:none}.gx-eq i{animation:none}}
@keyframes gxfade{from{opacity:0}to{opacity:1}}

.gx-rules{list-style:none;counter-reset:r;margin:4px 0 22px;padding:0;display:grid;gap:16px}
.gx-rules li{counter-increment:r;display:grid;grid-template-columns:44px 1fr;align-items:baseline;gap:8px;font:700 21px/1.3 var(--sans);margin:0}
.gx-rules li::before{content:counter(r);font:800 34px/1 var(--display);color:var(--gxb,#7B2CFF)}
@media(min-width:700px){.gx-rules li{font-size:28px;grid-template-columns:56px 1fr}.gx-rules li::before{font-size:44px}.gx-help{width:min(560px,calc(100vw - 32px))}}

.gx{--lct:#6A1FE0}
.gx-c .gx-k,.gx-res,.gx-score,.gx-cdt{color:var(--lct)}
:root[data-theme=dark] .gx-c .gx-k,:root[data-theme=dark] .gx-res,:root[data-theme=dark] .gx-score,:root[data-theme=dark] .gx-cdt{color:var(--lc)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .gx-c .gx-k,:root:not([data-theme=light]) .gx-res,:root:not([data-theme=light]) .gx-score,:root:not([data-theme=light]) .gx-cdt{color:var(--lc)}}
.gx-score,.gx-day{white-space:nowrap}
/* dialogs: centred modal desktop, bottom sheet mobile */
.gx-dlg{position:fixed;inset:0;margin:auto;max-width:440px;width:calc(100vw - 32px);max-height:calc(100dvh - 48px);height:fit-content;overflow:auto;border-radius:20px;box-shadow:0 24px 64px rgba(0,0,0,.25)}
.gx-dlg .gx-sbox{padding:32px}
.gx-dlg::backdrop{background:rgba(10,10,12,.45);backdrop-filter:none}
.gx-dlg[open]{animation:gxpop 200ms var(--ease) both}
.gx-dlg.closing{animation:gxpopout 150ms var(--ease) both}
.gx-dlg.closing::backdrop{opacity:0;transition:opacity 150ms var(--ease)}
@keyframes gxpopout{to{opacity:0;transform:scale(.96)}}
.gx-help .gx-rules{gap:12px;margin:0 0 24px}
.gx-help .gx-rules li{grid-template-columns:40px 1fr;font:700 18px/1.35 var(--sans)}
.gx-help .gx-rules li::before{font-size:32px}
.gx-dlg .gx-x{width:auto;min-width:140px;display:block;margin:0 auto}
@media(min-width:700px){.gx-help{width:calc(100vw - 32px)}.gx-help .gx-rules li{font-size:18px;grid-template-columns:40px 1fr}.gx-help .gx-rules li::before{font-size:32px}}
@media(max-width:699px){.gx-dlg{inset:auto 0 0 0;margin:0;width:100%;max-width:none;border-radius:20px 20px 0 0;padding-bottom:env(safe-area-inset-bottom)}.gx-dlg[open]{animation:gxsheet 220ms var(--ease) both}.gx-dlg.closing{animation:gxsheetout 150ms var(--ease) both}.gx-dlg .gx-sbox{padding:24px 20px}}
@keyframes gxsheet{from{transform:translateY(100%)}to{transform:none}}
@keyframes gxsheetout{to{transform:translateY(100%)}}
/* desktop column alignment */
.gx-wrap{max-width:calc(600px + 2 * clamp(16px,4vw,48px))}
@media(min-width:700px){.gx-sheet,.gx-reveal{width:min(600px,calc(100% - 2 * clamp(16px,4vw,48px)))}}

.gx-motto{margin:0 0 6px;font:800 12px/1.2 var(--display);letter-spacing:-.01em;color:var(--muted,#6b6b70);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:374px){.gx-motto{font-size:11px}}@media(min-width:700px){.gx-motto{font-size:14px;margin-bottom:10px}}

.gx-mrow{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 6px}
.gx-mrow .gx-motto{margin:0;min-width:0}
.gx-cdh{margin:0;flex:none;font:800 10px/1.2 var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--muted,#6b6b70);white-space:nowrap}
.gx-cdt{font-variant-numeric:tabular-nums;display:inline-block;min-width:8ch;text-align:right}
@media(max-width:400px){.gx-cdh .gx-cdl{display:none}}
.gx-reveal .gx-cd{margin:14px 0 0;text-align:center;font:800 12px/1.2 var(--display);letter-spacing:.06em;text-transform:uppercase}
.gx-reveal .gx-cd .gx-cdt{font-size:22px;display:block;margin-top:4px;color:var(--lct);text-align:center;min-width:0}
.gx-ract{flex-wrap:wrap}.gx-xbtn{background:#0b0b0c;color:#fff;display:inline-flex;align-items:center;gap:8px;justify-content:center}
:root[data-theme=dark] .gx-xbtn{background:#fff;color:#0b0b0c}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .gx-xbtn{background:#fff;color:#0b0b0c}}
.gx-ract .gx-next{flex-basis:100%}

.gx-side{display:none}
@media(min-width:1100px){
.gx-wrap{max-width:calc(972px + 2 * clamp(16px,4vw,48px))}
#gx{display:grid;grid-template-columns:640px 300px;column-gap:32px;justify-content:center;align-items:start}
#gx>*{grid-column:1}
#gx>.gx-side{grid-column:2;grid-row:1/span 30;display:flex;flex-direction:column;gap:24px;position:sticky;top:96px;margin-top:8px}
.gx-sdc{border:1px solid var(--line);border-radius:var(--r,16px);padding:24px;display:flex;flex-direction:column;gap:14px;background:var(--bg)}
.gx-side .gx-h2{margin:0;font-family:Unbounded,var(--disp,sans-serif);font-size:18px}
.gx-sd-sq{display:flex;gap:8px}.gx-sd-sq i{flex:1;height:44px;border-radius:12px;display:grid;place-items:center;font:600 16px/1 Unbounded,sans-serif;font-style:normal;background:color-mix(in srgb,var(--ink) 6%,transparent)}
.gx-sd-sq i.cur{box-shadow:inset 0 0 0 2px var(--ink)}.gx-sd-sq i.w{background:var(--gxb,#7B2CFF);color:#fff}.gx-sd-sq i.l{background:var(--ink);color:var(--bg)}
.gx-sd-prog,.gx-sd-cd{margin:0;font-size:14px;color:var(--mute,inherit)}.gx-sd-cd .gx-cdt{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink)}
.gx-sd-score{margin:0;display:flex;align-items:baseline;gap:8px}.gx-sd-n{font:700 40px/1 Unbounded,sans-serif;font-variant-numeric:tabular-nums}
.gx-sd-stk{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.gx-sd-stk div{border-radius:12px;padding:10px 12px;background:color-mix(in srgb,var(--ink) 5%,transparent)}.gx-sd-stk dt{font-size:12px;text-transform:uppercase;letter-spacing:.06em}.gx-sd-stk dd{margin:2px 0 0;font:700 22px/1.1 Unbounded,sans-serif;font-variant-numeric:tabular-nums}
.gx-sd-x{width:100%;justify-content:center}
.gx-side .gx-archive{margin:0}.gx-side .gx-arch{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;overflow:visible}.gx-side .gx-arch button{min-width:0;width:100%}
.gx-h1{font-size:32px}.gx-c{min-height:58px;grid-template-columns:136px 1fr;font-size:17px}.gx-c .gx-v{font-size:18px}.gx-motto{font-size:16px}
.gx-sheet,.gx-reveal{width:640px;left:calc(50% - 166px)}
}
@media(max-width:699px){.gx-mrow{flex-wrap:wrap;row-gap:2px}.gx-motto{flex:1 0 100%;white-space:normal;overflow:visible;font-size:13px}}
body:has(#gx) .consent{top:16px;bottom:auto}
@media(min-width:1100px){.gx-side .gx-archive,.gx-side .gx-arch{margin:0!important;padding:0!important}.gx-side .gx-h2{margin:0 0 12px}}

.gx-embw{position:relative}.gx-bigplay{position:absolute;left:50%;top:50%;width:72px;height:72px;margin:-36px 0 0 -36px;border:0;border-radius:50%;background:var(--gxb,#7B2CFF);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 0 0 0 color-mix(in srgb,var(--gxb,#7B2CFF) 50%,transparent);animation:gxpulse 1.4s cubic-bezier(.23,1,.32,1) infinite;transition:transform 120ms cubic-bezier(.23,1,.32,1)}.gx-bigplay[hidden]{display:none}.gx-bigplay:active{transform:scale(.97)}.gx-bigplay:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@keyframes gxpulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--gxb,#7B2CFF) 50%,transparent)}100%{box-shadow:0 0 0 18px color-mix(in srgb,var(--gxb,#7B2CFF) 0%,transparent)}}
@media(prefers-reduced-motion:reduce){.gx-bigplay{animation:none}}
.gx-embed .gx-sph,.gx-embed iframe{display:block;border-radius:12px}
body:has(#gx) .consent{top:auto;bottom:calc(env(safe-area-inset-bottom) + 150px)}
.gx-sd-x[hidden]{display:none!important}
@media(min-width:1100px){
.gx{padding-bottom:48px}
#gx>.gx-sheet{position:sticky;top:auto;bottom:16px;left:auto;right:auto;width:auto;transform:none;margin-top:12px;border:1px solid var(--rule);border-radius:20px;padding:12px 16px 14px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
#gx>.gx-sheet.shake{animation:gxshake 300ms var(--ease)}
.gx-sd-arch{border:1px solid var(--line);border-radius:var(--r,16px);padding:24px;background:var(--bg)}
.gx-sd-arch .gx-h2{margin:0 0 12px}
}

/* mobile typing flow: sheet joins the page under the clues, input pinned near top of visual viewport, list drops below */
#gx-lb mark{background:color-mix(in srgb,var(--lc) 22%,transparent);color:inherit;border-radius:3px;padding:0 1px}
#gx-lb li small mark{background:none;font-weight:700;color:var(--ink)}
.gx-go.ready{animation:gxready 700ms var(--ease) both;box-shadow:0 0 0 3px color-mix(in srgb,var(--gxb,#7B2CFF) 30%,transparent)}
@keyframes gxready{0%{transform:scale(1)}35%{transform:scale(1.08)}100%{transform:scale(1)}}
.gx-note{position:absolute;left:50%;top:-14px;transform:translate(-50%,-100%);margin:0;padding:8px 14px;border-radius:999px;background:var(--ink);color:var(--bg);font:700 13px/1.2 var(--sans);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity 180ms var(--ease);z-index:3}
.gx-note.on{opacity:1}

@media(prefers-reduced-motion:reduce){.gx-go.ready{animation:none}}

/* ===== mobile-first redesign (phones) ===== */
.gx-dots{display:inline-flex;gap:5px;margin-right:8px;vertical-align:middle}.gx-dots i{width:10px;height:10px;border-radius:50%;background:color-mix(in srgb,var(--ink) 16%,transparent)}.gx-dots i.x{background:#FF2E93}.gx-dots i.ok{background:#18C964}
.gx-left{display:inline-flex;align-items:center}
#gx-in.bad{border-color:#FF2E93;background:color-mix(in srgb,#FF2E93 8%,var(--bg))}
.gx-lks .gx-k{white-space:nowrap}
.gx-sum{margin:14px auto 0;padding:12px 14px;border-radius:14px;background:var(--gsurf);display:flex;flex-direction:column;gap:8px;align-items:center;font:800 14px/1.2 var(--display);text-transform:uppercase;letter-spacing:.04em}.gx-sum[hidden]{display:none}
.gx-sumsq{display:flex;gap:8px}.gx-sumsq i{min-width:52px;height:36px;border-radius:10px;display:grid;place-items:center;font:800 13px/1 var(--display);font-style:normal;background:var(--ink);color:var(--bg)}.gx-sumsq i.w{background:#18C964;color:#0b0b0c}
@media(max-width:699px){
.gx-top{gap:5px;min-height:48px}
.gx-pills{gap:3px}.gx-pill{width:33px;height:33px;font-size:13px}.gx-pill::after{inset:-6px -2px}
.gx-ib{min-width:44px;height:44px}
.gx-sub,.gx-cdh,.gx-left{font-size:12px}
.gx-c{grid-template-columns:84px 1fr;min-height:44px;padding:8px 12px}.gx-c .gx-k{font-size:11px}.gx-c .gx-v{font-size:16px}
.gx-c.lks{min-height:40px}.gx-c.lk .gx-v{font-size:13px}
.gx-srow{min-height:44px;margin-bottom:4px}
.gx-skip{min-height:44px;padding:0 18px;border-radius:999px;text-decoration:none;box-shadow:inset 0 0 0 1.5px var(--rule);font-size:12px}
.gx-go{width:92px}
.gx-arch .gx-wd{font-size:11px}
body:has(#gx) .consent{bottom:calc(env(safe-area-inset-bottom) + 8px);z-index:70}
/* typing: clues pinned to the top of the visible area, input docked on the keyboard, list fits between */
html.gx-lock,html.gx-lock body{overflow:hidden;overscroll-behavior:none}
.gx.gx-typing::before{content:"";position:fixed;inset:0;background:var(--bg);z-index:48}
.gx.gx-typing .gx-board{transition:transform 200ms var(--ease);position:fixed;left:0;right:0;top:var(--vvt,0);z-index:52;padding:10px max(16px,env(safe-area-inset-left)) 8px;background:var(--bg);max-height:calc(var(--vvh,100vh) - 176px);overflow:auto;border-bottom:1px solid var(--rule)}
.gx.gx-typing .gx-clues{flex-direction:row;flex-wrap:wrap;gap:6px}
.gx.gx-typing .gx-c{display:inline-flex;align-items:baseline;gap:6px;min-height:0;padding:7px 11px;border-radius:999px}
.gx.gx-typing .gx-c .gx-k{font-size:11px}.gx.gx-typing .gx-c .gx-v{font-size:16px;line-height:1.2}.gx.gx-typing .gx-c .gx-emo{font-size:18px}
.gx.gx-typing .gx-lks{display:none}
.gx.gx-typing .gx-tried{margin-top:8px}.gx.gx-typing .gx-tried li{padding:4px 10px;font-size:13px}
.gx.gx-typing .gx-sheet{z-index:53;transform:translateY(calc(-1 * var(--kb,0px)));padding-bottom:8px;box-shadow:none}
.gx.gx-typing #gx-lb{bottom:calc(100% + 8px);top:auto;right:-100px;max-height:40vh;box-shadow:0 -10px 30px rgba(0,0,0,.18)}
.gx.gx-typing .gx-note{top:auto;bottom:calc(100% + 6px);transform:translate(-50%,0)}
}
@media(prefers-reduced-motion:reduce){#gx-in.bad{transition:none}}
@media(max-width:399px){.gx.gx-typing .gx-c{padding:5px 9px;gap:5px}.gx.gx-typing .gx-c .gx-v{font-size:15px}.gx.gx-typing .gx-clues{gap:5px}.gx.gx-typing .gx-board{padding-top:8px}}
@media(max-width:699px){.gx-xbtn{white-space:nowrap;padding:0 14px}.gx-top .gx-h1{font-size:19px}}
@media(max-width:389px){.gx-pill{width:30px;height:30px}}
@media(max-width:374px){.gx-top .gx-stk{display:none}.gx-pill{width:30px;height:30px}.gx-top .gx-h1{font-size:16px}.gx-top{gap:4px}}

.gx.gx-typing.gx-docked .gx-note{bottom:calc(100% + var(--bh,0px) + 12px)}

/* polish: fallback play is a separate full-width button under the embed, never on top of it */
.gx-embw .gx-bigplay{position:static;inset:auto;margin:8px 0 0;width:100%;height:44px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:8px;font:700 14px/1 var(--sans);letter-spacing:.02em;animation:none;box-shadow:none;background:var(--gxb,#7B2CFF);color:#fff}
.gx-embw .gx-bigplay[hidden]{display:none}
.gx-reveal.playing .gx-bigplay{display:none}
.gx-reveal.in{box-shadow:0 0 0 100vmax rgba(10,10,12,.32),0 -16px 48px rgba(0,0,0,.25)}
.gx-embw .gx-bigplay{height:48px;font:800 13px/1 var(--display);letter-spacing:.08em;text-transform:uppercase}

/* ===== interactive clues: locked teaser row + worth indicator ===== */
.gx-lks{display:flex;align-items:center;gap:8px;min-height:30px;padding:4px 12px;border-radius:999px;border:1px dashed var(--rule);font:800 11px/1.2 var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#6b6b70)}
.gx-lkp{display:inline-flex;gap:3px}.gx-lkp i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--ink) 8%,transparent)}
.gx-worth{margin-left:10px;padding:4px 8px;border-radius:999px;background:var(--lc,var(--gxb,#7B2CFF));color:#fff;font:800 11px/1 var(--display);letter-spacing:.06em;white-space:nowrap}
.gx-c.new{animation:gxclue 420ms var(--ease) both}
@keyframes gxclue{0%{opacity:0;transform:translateY(-8px) scale(.96)}60%{opacity:1;transform:scale(1.02)}100%{transform:none}}
/* ===== end card ===== */
.gx-reveal{padding-top:22px}
.gx-grab{position:absolute;left:50%;top:0;transform:translateX(-50%);width:88px;height:22px;border:0;background:none;padding:0;cursor:grab;display:grid;place-items:center;max-width:none;margin:0}
.gx-grab i{width:40px;height:5px;border-radius:3px;background:color-mix(in srgb,var(--ink) 25%,transparent)}
.gx-rclose{position:absolute;right:10px;top:10px;z-index:3;width:44px;height:44px;border:0;border-radius:50%;background:var(--gsurf,#eee);color:var(--ink);display:grid;place-items:center;cursor:pointer;margin:0}
.gx-reveal .gx-rcard{padding-right:44px}
.gx-reveal.end .gx-sum{order:-1}
.gx-sum{text-transform:none}
.gx-sumh{font:800 22px/1.1 var(--display);text-transform:uppercase;letter-spacing:.02em}
.gx-sums{font:800 13px/1 var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--lct)}
.gx-sumsq button{min-width:72px;min-height:48px;border:0;border-radius:12px;display:grid;place-items:center;gap:2px;padding:4px 8px;font:800 15px/1 var(--display);background:var(--ink);color:var(--bg);cursor:pointer;opacity:.6;transition:opacity 150ms,transform 150ms}
.gx-sumsq button small{font:700 10px/1 var(--sans);text-transform:uppercase;letter-spacing:.06em}
.gx-sumsq button.w{background:#18C964;color:#0b0b0c}
.gx-sumsq button.sel{opacity:1;transform:translateY(-2px);box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--lc,var(--gxb,#7B2CFF))}
.gx-sumn,.gx-sumc{font:600 13px/1.3 var(--sans);color:var(--muted,#6b6b70)}.gx-sumc{color:var(--ink);font-weight:700}
.gx-reveal.end .gx-cd{font-size:13px}
.gx-reopen{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom));z-index:44;min-height:48px;padding:0 24px;border-radius:999px;background:var(--gxb,#7B2CFF);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.gx-reopen[hidden]{display:none}
@media(min-width:1100px){.gx-reopen{left:calc(50% - 166px)}}
.gx-reveal.end:not([hidden]){display:flex;flex-direction:column}
.gx-reveal.end>:not(.gx-grab):not(.gx-rclose):not(.gx-burst){width:100%}
.gx-reveal.end .gx-sum{order:-2;margin-top:0}.gx-reveal.end .gx-cd{order:-1;margin:10px 0 14px}
.gx-reveal.end .gx-sum{margin-top:34px}.gx-reveal.end .gx-rclose{top:8px}.gx-sumsq button{opacity:.75}
@media(max-width:399px){.gx-lt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.gx-worth{margin-left:4px}}.gx-sumsq button small{font-size:11px}
/* language switch */
.gx-lang{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:10px 0 6px;padding:4px;border-radius:999px;background:color-mix(in srgb,var(--ink) 6%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 8%,transparent);max-width:420px}
.gx-lang button{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:6px 8px;border:0;border-radius:999px;background:none;color:var(--ink);cursor:pointer;font:inherit;transition:color 200ms var(--ease)}
.gx-lang b{display:block;font:700 15px/1 'Noto Sans Devanagari','Noto Sans Tamil','Noto Sans Telugu',system-ui,sans-serif}
.gx-lang small{font:800 9px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;opacity:.6}
.gx-lang [aria-checked=true]{color:#fff}
.gx-lang [aria-checked=true] small{opacity:.85}
.gx-lind{position:absolute;z-index:0;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/3);border-radius:999px;background:var(--lct);box-shadow:0 4px 14px -4px color-mix(in srgb,var(--lc) 70%,transparent);transition:transform 280ms var(--ease),background-color 280ms var(--ease)}
.gx-lang[data-on=ta] .gx-lind{transform:translateX(100%)}
.gx-lang[data-on=te] .gx-lind{transform:translateX(200%)}
.gx-lang button:active{transform:scale(.97)}
.gx-switching .gx-board,.gx-switching .gx-pills{opacity:.45;transition:opacity 160ms}
.gx-sg{margin:2px 0 0;font:500 12px/1.4 var(--sans);color:var(--muted,#6b6b70)}
.gx-c:first-child .gx-v{font-weight:600}
@media(max-width:380px){.gx-lang small{display:none}}
@media(min-width:700px){.gx-lang{margin:8px 0 14px}.gx-lang b{font-size:16px}}
@media(prefers-reduced-motion:reduce){.gx-lind{transition:none}}
.gx[data-lang=ta],.gx[data-lang=te]{--gxb:var(--lct)}
.gx-lang small{line-height:1;transform:translateY(1px)}
@media(min-width:700px){.gx-lang{margin:12px 0 8px}}

.gx-yt{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000}.gx-yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0}.gx-ytph{padding:14px;border:1px solid var(--line,rgba(127,127,127,.3));border-radius:12px;text-align:center}.gx-ytph p{margin:0 0 10px;font:500 13px/1.35 var(--sans)}.gx-attr .gx-sp{font-weight:700}
.gx-ytt{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;border-radius:12px;overflow:hidden;background:#111;cursor:pointer}.gx-ytt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gx-ytp{position:absolute;left:50%;top:50%;width:64px;height:44px;margin:-22px 0 0 -32px;border-radius:12px;background:#f00;color:#fff;display:flex;align-items:center;justify-content:center}.gx-ytl{position:absolute;right:8px;bottom:8px;padding:3px 7px;border-radius:6px;background:rgba(0,0,0,.7);color:#fff;font:700 11px/1 var(--sans)}.gx-ytfb{margin:0;padding:14px;border:1px solid var(--line,rgba(127,127,127,.3));border-radius:12px;text-align:center;font:600 14px/1.3 var(--sans)}
