:root,[data-theme=study]{--bd-page:#150d09;--bd-wood:repeating-linear-gradient(96deg, #0000001f 0 3px, #ffffff03 3px 13px), linear-gradient(178deg, #3d2718 0%, #2b1b10 42%, #180f08 100%);--bd-glow:radial-gradient(52% 16% at 50% 0%, #ffc46824 0%, #ffa8420d 50%, #ff8c2800 78%), radial-gradient(90% 30% at 50% 52%, #ffc67629 0%, #ffb0580f 52%, #0000 80%), radial-gradient(66% 17% at 82% 90%, #ffba6033 0%, #ffa03c0f 50%, #0000 80%);--bd-vignette:radial-gradient(112% 72% at 50% 34%, #0000 46%, #0000006b 80%, #000000a8 100%);--bd-shelf-opacity:1;--ember:radial-gradient(circle, #ffe0a0e6 0%, #ffc46873 45%, #ffb45000 72%);--ink:#f5e9d5;--ink-soft:#dfcbab;--ink-dim:#bda887;--panel:linear-gradient(180deg, #4a2f1e, #33200f);--panel-edge:#8a6038;--panel-ink:#f4e2be;--panel-shadow:inset 0 1px 0 #ffd69629, 0 2px 6px #0000008c;--card:linear-gradient(180deg, #4e3220f0, #2d1c10f0);--card-edge:#7a5330;--rule:#c5985842;--field:#221609;--tray:linear-gradient(180deg, #3a2416, #23140b);--tray-edge:#5a3b22;--tray-shadow:inset 0 1px 0 #ffd6961f, inset 0 0 26px #00000073, 0 8px 20px -8px #000000bf;--tile-bg:linear-gradient(177deg, #fbf7ea 0%, #f4eeda 52%, #e7dfc6 100%);--tile-edge:#cbb98d;--tile-ink:#2b1e33;--tile-hi:#fff;--tile-lo:#78693c52;--tile-gilt:#b48f3a8c;--tile-lip:0 3px 0 #b7a57a;--tile-lip-6:0 2px 0 #b7a57a;--tile-lip-press:0 1px 0 #b7a57a;--tile-lip-plum:0 3px 0 #2f1d45;--glyph-press:0 1px 0 #ffffffbf;--glyph-press-plum:0 -1px 0 #0006;--plate-ink-soft:#2b1e33bd;--tile-tint-0:#0000;--tile-tint-1:#c98b3a21;--tile-tint-2:#c98b3a3d;--tile-tint-3:#c98b3a5c;--value-ink-0:#2b1e33b8;--value-ink-1:#704416e6;--value-ink-2:#7d4a12;--value-ink-3:#6d3d0c;--plum:#6b4791;--plum-deep:#452a63;--plum-soft:#b299da;--plum-tint:#6b479129;--plum-fill:linear-gradient(177deg, #6f4a97, #4d3070);--on-plum:#f7f0e2;--ink-line:#452a638c;--ink-wash:#b299da38;--medal-shadow:inset 0 1px 0 #ffd6962e, 0 1px 2px #00000080;--brass:#c9922f;--brass-deep:#8d5f16;--brass-fill:linear-gradient(180deg, #c9922f, #9d6a17);--on-brass:#241503;--gold:#f0cd6d;--gold-glow:#ffcd6ebf;--brass-shimmer:linear-gradient(100deg, #ffeec800 34%, #ffeec8cc 50%, #ffeec800 66%);--wordmark:linear-gradient(180deg, #f6e3b4 0%, #d9b262 55%, #a87a2c 100%);--wordmark-shadow:drop-shadow(0 1px 0 #0009) drop-shadow(0 3px 6px #0000008c);--title-shadow:0 2px 5px #0009;--ink-fill:#6b47916b;--bar-track:#0006;--bar-frame:#8d5f16;--bar-cap:var(--gold);--bar-shadow:inset 0 1px 2px #0000008c, 0 1px 0 #ffd6961f;--good:#8fc47a;--bad:#e08163;--flash-ok:#6b4791d9;--flash-bad:var(--bad);--fb-edge:#4a6fa8;--fb-ink:#b9cdec;--li-edge:#0a66c2;--li-ink:#9cc6ee;--rc-scrim:radial-gradient(76% 44% at 50% 38%, #5c3a1ae6 0%, #1c1109f2 58%, #0a0604f7 100%);--rc-flash:radial-gradient(60% 40% at 50% 40%, #ffd6968c 0%, #ffd69600 70%);--shadow-1:0 1px 2px #00000073;--shadow-2:0 2px 4px #0006, 0 8px 18px -8px #000000b3;--shadow-3:0 3px 6px #00000073, 0 18px 34px -12px #000000d9;--tile-shadow:0 1px 2px #0000008c, 0 6px 14px -5px #000000b8;--tile-shadow-lift:0 2px 3px #00000080, 0 14px 26px -8px #000000d9;--tile-shadow-press:0 1px 2px #0000008c;--card-chosen-shadow:inset 0 1px 0 #ffffff1a, 0 3px 6px #00000073, 0 18px 34px -12px #000000d9;--glow-gold:0 0 22px -1px var(--gold-glow);--brass-lip:0 3px 0 #7a5212;--brass-lip-press:0 1px 0 #7a5212;--card-lip:0 3px 0 #1c0f08;--card-lip-press:0 1px 0 #1c0f08;--panel-lip:0 2px 0 #1c0f08;--panel-lip-press:0 1px 0 #1c0f08;--brass-gloss:linear-gradient(180deg, #ffffff38, #fff0 55%);--btn-hi:#ffffff4d;--btn-hi-soft:#ffffff1f;--btn-hi-faint:#ffffff1a;--btn-hi-strong:#ffffff47;--r-xs:6px;--r-sm:8px;--r-md:10px;--r-lg:12px;--r-xl:16px;--r-pill:999px;--t-fast:.12s;--t-mid:.18s;--t-slow:.28s;--t-stagger:40ms;--t-shake:.24s;--t-rc-flash:.6s;--t-cta-glow:2.4s;--font-display:"Fraunces", Georgia, "Iowan Old Style", "Times New Roman", serif;--font-body:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif}@font-face{font-family:Fraunces;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/fraunces-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}*{box-sizing:border-box}:root{--vh:100vh}@supports (height:100dvh){:root{--vh:100dvh}}html{font-family:var(--font-body);color:var(--ink);background:var(--bd-page);-webkit-text-size-adjust:100%;touch-action:pan-y}body{background:0 0;margin:0}button{font:inherit;color:inherit;touch-action:pan-y;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;cursor:pointer}.sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.backdrop{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bd{position:absolute;inset:0}.bd-wood{background:var(--bd-wood)}.bd-shelf{opacity:var(--bd-shelf-opacity);background:url(/art/shelf.svg) 50%/cover no-repeat}.bd-glow{background:var(--bd-glow)}.bd-vignette{background:var(--bd-vignette)}.ember{background:var(--ember);opacity:0;border-radius:50%;width:3px;height:3px;animation:32s linear infinite ember-drift;position:absolute}@keyframes ember-drift{0%{opacity:0;transform:translate(0,0)scale(.7)}15%{opacity:.75}70%{opacity:.45}to{opacity:0;transform:translate(14px,-180px)scale(1.15)}}.e1{animation-delay:-2s;top:46%;left:9%}.e2{animation-duration:41s;animation-delay:-14s;top:68%;left:23%}.e3{animation-duration:36s;animation-delay:-25s;top:82%;left:38%}.e4{animation-delay:-8s;top:58%;left:52%}.e5{animation-duration:44s;animation-delay:-19s;top:88%;left:66%}.e6{animation-duration:38s;animation-delay:-31s;top:62%;left:79%}.e7{animation-delay:-6s;top:76%;left:91%}.e8{animation-duration:46s;animation-delay:-37s;top:92%;left:15%}.app{z-index:1;max-width:480px;min-height:100dvh;padding:calc(.5rem + env(safe-area-inset-top)) 1rem calc(1rem + env(safe-area-inset-bottom));animation:screen-in var(--t-mid) ease-out;flex-direction:column;gap:.75rem;margin:0 auto;display:flex;position:relative}@keyframes screen-in{0%{opacity:0}to{opacity:1}}.title{font-family:var(--font-display);align-items:center;gap:.5rem;margin:0;font-size:1.3rem;font-weight:700;display:flex}.title .ico{color:var(--gold);flex:none}.boot{font-family:var(--font-display);color:var(--ink-soft);justify-content:center;align-items:center;font-size:1.1rem}.message{color:var(--ink-soft);min-height:1.5em;margin:0;font-size:.92rem;line-height:1.45}.play{gap:var(--app-gap);--app-gap:12px;--hud-gap:8px;--hud-h:44px;--target-h:28px;--owned-h:0px;--owned-gap:0px;--wordline-h:28px;--actions-h:44px;--log-h:32px;--app-pad:calc(.5rem + env(safe-area-inset-top) + 1rem + env(safe-area-inset-bottom));--play-chrome:calc(var(--app-pad) + var(--hud-h) + var(--hud-gap) + var(--target-h) + var(--owned-gap) + var(--owned-h) + var(--app-gap) + var(--wordline-h) + var(--app-gap) + var(--app-gap) + var(--actions-h) + var(--app-gap) + var(--log-h));container-type:inline-size}.play.has-owned{--owned-h:26px;--owned-gap:var(--hud-gap)}.play.owned-open{--owned-h:56px}.wordline{min-height:var(--wordline-h,28px);align-items:center;gap:.5rem;display:flex;position:relative}.wordline-text{text-align:center;flex:1;justify-content:center;align-items:baseline;gap:.4em;min-width:0;display:flex}.word{font-family:var(--font-display);letter-spacing:.15em;text-indent:.15em;white-space:nowrap;text-overflow:ellipsis;color:var(--ink);text-shadow:0 2px 4px #000000a6;animation:word-pop var(--t-fast) ease-out;font-size:1.35rem;font-weight:700;line-height:1.25;display:block;overflow:hidden}.word:empty{display:none}.word,.recent{min-width:0}.word-pts{font-family:var(--font-display);color:var(--good);animation:word-pop var(--t-fast) ease-out;flex:none;font-size:.95rem;font-weight:700}.word-pts.dim{color:var(--ink-dim);font-weight:400}.recent{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;line-height:1.5;display:block;overflow:hidden}.recent-word{font-family:var(--font-display);letter-spacing:.04em}.recent-word+.recent-word:before{content:"·";color:var(--ink-dim);margin:0 .4em}.recent-word b{color:var(--good);margin-left:.25em;font-weight:700}.rw.miss{color:var(--bad);text-decoration:line-through}@keyframes word-pop{0%{opacity:.7;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.pts-float{opacity:0;pointer-events:none;font-family:var(--font-display);color:var(--good);animation:pts-float var(--t-slow) ease-out;--float-x:42cqw;--float-y:calc(var(--app-gap) + var(--owned-gap) + var(--owned-h) + var(--target-h) / 2 + .5rem);font-size:1.05rem;font-weight:700;position:absolute;top:0;left:50%}@keyframes pts-float{0%{opacity:0;transform:translate(-50%,2px)scale(.9)}25%{opacity:1;transform:translate(calc(-50% + var(--float-x) * .22), calc(var(--float-y) * -.26)) scale(1.1)}to{opacity:0;transform:translate(calc(-50% + var(--float-x)), calc(var(--float-y) * -1)) scale(.8)}}.wordline-text.shake{animation:wordline-shake var(--t-shake) ease-in-out}@keyframes wordline-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}.board{--n:5;--gap:5px;--tile-w:calc((100cqw - (var(--n) - 1) * var(--gap)) / var(--n));--tile-h:calc((var(--vh) - var(--play-chrome,290px) - (var(--n) - 1) * var(--gap)) / var(--n));--tile:min(66px, var(--tile-w), max(44px, var(--tile-h)));--grid-w:calc(var(--n) * var(--tile) + (var(--n) - 1) * var(--gap));gap:var(--gap);touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;display:grid;position:relative}.board.size-4{--n:4;--gap:6px;grid-template-columns:repeat(4, var(--tile))}.board.size-5{--n:5;--gap:5px;grid-template-columns:repeat(5, var(--tile))}.board.size-6{--n:6;--gap:4px;grid-template-columns:repeat(6, var(--tile))}.board:before{content:"";box-sizing:border-box;z-index:-1;top:-8px;bottom:-8px;left:calc(50% - var(--grid-w) / 2 - 8px);width:calc(var(--grid-w) + 16px);border-radius:var(--r-xl);background:var(--tray);border:1px solid var(--tray-edge);box-shadow:var(--tray-shadow);pointer-events:none;position:absolute}.cell{aspect-ratio:1;touch-action:none;border:1px solid var(--tile-edge);border-radius:var(--r-lg);background:linear-gradient(var(--tile-tint,transparent), var(--tile-tint,transparent)), var(--tile-bg);min-height:44px;color:var(--tile-ink);font-family:var(--font-display);font-size:calc(var(--tile,66px) * .42);--lip:var(--tile-lip);box-shadow:inset 0 1px 0 var(--tile-hi), inset 0 -2px 0 var(--tile-lo), var(--lip), var(--tile-shadow);transition:transform var(--t-fast);place-items:center;padding:0;font-weight:700;line-height:1;display:grid;position:relative}:where(.board.size-6) .cell{--lip:var(--tile-lip-6)}.cell:before{content:"";border:1px solid var(--tile-gilt);border-radius:calc(var(--r-lg) - 3px);pointer-events:none;position:absolute;inset:3px}.cell:after{content:"";border-radius:inherit;opacity:0;pointer-events:none;background:radial-gradient(74% 74% at 50% 38%,#f0cd6d80 0%,#ffdc8c38 46%,#ffdc8c00 78%);position:absolute;inset:0}.glyph{z-index:1;text-shadow:var(--glyph-press);position:relative}.value{z-index:1;right:calc(var(--tile,66px) * .09);bottom:calc(var(--tile,66px) * .045);font-family:var(--font-display);font-weight:700;font-size:calc(var(--tile,66px) * .2);color:var(--value-ink,var(--value-ink-0));position:absolute}.value.boost{color:var(--brass-deep)}.cell.tier0{--tile-tint:var(--tile-tint-0);--value-ink:var(--value-ink-0)}.cell.tier1{--tile-tint:var(--tile-tint-1);--value-ink:var(--value-ink-1)}.cell.tier2{--tile-tint:var(--tile-tint-2);--value-ink:var(--value-ink-2)}.cell.tier3{--tile-tint:var(--tile-tint-3);--value-ink:var(--value-ink-3);border-color:var(--brass-deep)}.cell.selected{--tile-tint:var(--plum-tint);border-color:var(--plum);box-shadow:inset 0 1px 0 var(--tile-hi), inset 0 -2px 0 var(--tile-lo), var(--lip), var(--tile-shadow-lift);transform:translateY(-2px)}.cell.last{--lip:var(--tile-lip-plum);background:var(--plum-fill);color:var(--on-plum);border-color:var(--plum-deep);box-shadow:inset 0 1px 0 #ffffff2e, var(--lip), var(--tile-shadow-lift);animation:cell-pop var(--t-mid) ease-out;transform:translateY(-3px)scale(1.04)}.cell.last:before{border-color:#ffffff38}.cell.last .glyph{text-shadow:var(--glyph-press-plum)}.cell.last .value{color:#f7f0e2d9}.cell.last .value.boost{color:var(--gold)}@keyframes cell-pop{0%{transform:translateY(-3px)scale(1)}55%{transform:translateY(-3px)scale(1.14)}to{transform:translateY(-3px)scale(1.04)}}.cell.golden{border-color:var(--gold);box-shadow:inset 0 1px 0 var(--tile-hi), inset 0 -2px 0 var(--tile-lo), var(--lip), var(--tile-shadow), var(--glow-gold)}.cell.golden:before{border-color:var(--gold);border-width:2px}.cell.golden:after{opacity:1}.cell.golden.selected{box-shadow:inset 0 1px 0 var(--tile-hi), inset 0 -2px 0 var(--tile-lo), var(--lip), var(--tile-shadow-lift), var(--glow-gold)}.cell.golden.last{box-shadow:inset 0 1px 0 #ffffff2e, var(--lip), var(--tile-shadow-lift), var(--glow-gold)}.cell.golden.last:before{border-color:var(--gold)}.cell.golden.last:after{opacity:.3}.cell:active{--lip:var(--tile-lip-press);box-shadow:inset 0 1px 0 var(--tile-hi), var(--lip), var(--tile-shadow-press);transform:translateY(2px)}.board.size-6 .cell{border-radius:var(--r-sm)}.board.size-6 .cell:before{border-radius:calc(var(--r-sm) - 2px);inset:2px}.board.dealing .cell:not(.selected){animation:cell-deal var(--t-mid) ease-out calc(var(--r,0) * var(--t-stagger)) backwards}@keyframes cell-deal{0%{opacity:0;transform:translateY(6px)scale(.92)}to{opacity:1;transform:none}}.cell-flash{border-radius:inherit;opacity:0;pointer-events:none;z-index:2;position:absolute;inset:0}.cell-flash.ok{background:var(--flash-ok);animation:cell-flash-ok var(--t-slow) ease-out calc(var(--i,0) * var(--t-stagger)) backwards}.cell-flash.bad{box-shadow:inset 0 0 0 2px var(--flash-bad);animation:cell-flash-bad var(--t-slow) ease-out}@keyframes cell-flash-ok{0%{opacity:1;transform:scale(1)}40%{opacity:.9;transform:scale(1.06)}to{opacity:0;transform:scale(1)}}@keyframes cell-flash-bad{0%,55%{opacity:1}to{opacity:0}}.ink{pointer-events:none;left:calc(50% - var(--grid-w) / 2 + var(--tile) / 2);top:calc(var(--tile) / 2);width:calc(var(--grid-w) - var(--tile));height:calc(var(--grid-w) - var(--tile));display:block;position:absolute;overflow:visible}.ink path{fill:none;stroke-linecap:round;stroke-linejoin:round;animation:ink-draw var(--t-fast) ease-out}.ink-wash{stroke:var(--ink-wash);stroke-width:.34px}.ink-line{stroke:var(--ink-line);stroke-width:.11px}.ink-dot{fill:var(--ink-line)}@keyframes ink-draw{0%{stroke-dashoffset:var(--seg,0)}to{stroke-dashoffset:0}}.actions{gap:.75rem;display:flex}.actions button{min-width:0;min-height:var(--actions-h,44px);border-radius:var(--r-lg);font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;transition:opacity var(--t-fast), transform var(--t-fast), box-shadow var(--t-fast);flex:1;justify-content:center;align-items:center;gap:.45rem;padding:0 .7rem;font-size:1.05rem;font-weight:600;display:inline-flex;overflow:hidden}.actions button:disabled{opacity:.42;cursor:default}.actions button:not(:disabled):active{--lip:var(--lip-press);transform:translateY(2px)}.primary{--lip:var(--brass-lip);--lip-press:var(--brass-lip-press);background:var(--brass-gloss), var(--brass-fill);color:var(--on-brass);border:1px solid var(--gold);box-shadow:inset 0 1px 0 var(--btn-hi), var(--lip), var(--shadow-2)}.secondary,.wide,.home-btn{--lip:var(--card-lip);--lip-press:var(--card-lip-press)}.secondary:not(:disabled):active,.wide:not(:disabled):active{--lip:var(--lip-press);transform:translateY(2px)}.secondary{background:var(--card);color:var(--ink);border:1px solid var(--card-edge);box-shadow:inset 0 1px 0 var(--btn-hi-soft), var(--lip), var(--shadow-1);transition:transform var(--t-fast), box-shadow var(--t-fast)}.wide{border-radius:var(--r-lg);width:100%;min-height:48px;font-family:var(--font-display);transition:transform var(--t-fast), box-shadow var(--t-fast);justify-content:center;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;display:inline-flex}.peak{text-align:center;font-family:var(--font-display);color:var(--gold);animation:peak-in var(--t-slow) ease-out;margin:.2rem 0 -.35rem;font-size:1rem;font-weight:700}@keyframes peak-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.wide.quiet{border:1px solid var(--panel-edge);color:var(--ink-soft);box-shadow:none;background:0 0;font-weight:600}.wide.quiet .ico{opacity:.8}.lb-invite{margin-top:.5rem}.net-row{flex-wrap:wrap}.net-row .wide{flex:158px;gap:.35rem;width:auto;min-height:48px;padding:0 .4rem;font-size:.86rem}.net-badge{--net-badge:20px;width:var(--net-badge);height:var(--net-badge);border:1px solid var(--net-edge);color:var(--net-ink);border-radius:50%;flex:none;place-items:center;line-height:0;display:grid}.net-badge .ico{width:calc(var(--net-badge) * .6);height:calc(var(--net-badge) * .6);opacity:1}.wide.fb{--net-edge:var(--fb-edge);--net-ink:var(--fb-ink)}.wide.li{--net-edge:var(--li-edge);--net-ink:var(--li-ink)}.wide-stack{flex-direction:column;align-items:center;line-height:1.2;display:inline-flex}.wide-stack small{font-family:var(--font-body);letter-spacing:.01em;opacity:.72;font-size:.68rem;font-weight:500}.net-row .wide-stack small{white-space:normal}.log{margin:0;padding:0;font-size:.95rem;list-style:none}.log li{min-height:var(--log-h,32px);border-bottom:1px solid var(--rule);transform-origin:25% 0;animation:log-in var(--t-slow) cubic-bezier(.2, .75, .3, 1);align-items:baseline;gap:.5rem;padding:.3rem .1rem;display:flex}@keyframes log-in{0%{opacity:0;transform:translateY(-40px)scale(1.26)}55%{opacity:1}to{opacity:1;transform:translateY(0)scale(1)}}.log li:first-child .log-pts{animation:pts-pop var(--t-slow) ease-out;display:inline-block}@keyframes pts-pop{0%{transform:scale(.6)}60%{transform:scale(1.35)}to{transform:scale(1)}}.log-word{font-family:var(--font-display);letter-spacing:.05em;min-width:5.5em;color:var(--ink);font-weight:700}.log-math{color:var(--ink-dim);flex:1;font-size:.8rem}.log-pts{font-family:var(--font-display);color:var(--good);font-weight:700}.log-reason{color:var(--bad);font-size:.85rem}.log li.bad .log-word{color:var(--bad);text-decoration:line-through}.inky{flex:none;animation:3.8s ease-in-out infinite inky-bob;display:block;position:relative}.inky-art{opacity:0;width:100%;height:100%;transition:opacity var(--t-fast) linear;position:absolute;inset:0}.inky-art.on{opacity:1;transform-origin:50% 100%;animation:inky-react var(--t-slow) ease-out}.inky-lids{opacity:0;width:100%;height:100%;animation:5.4s ease-in-out infinite inky-blink;position:absolute;inset:0}@keyframes inky-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes inky-react{0%{transform:scale(.88,1.06)}55%{transform:scale(1.05,.95)}to{transform:scale(1)}}@keyframes inky-blink{0%,94%,97.4%,to{opacity:0}94.6%,96.8%{opacity:1}}.inky-hero{margin:0 auto}.inky-line{margin-block:calc((var(--wordline-h,28px) - 46px) / 2);pointer-events:none;align-self:center}.inky-draft,.inky-summary{pointer-events:none;margin-top:-.5rem}.inky-tour{pointer-events:none}.draft-head{align-items:flex-start;gap:.5rem;display:flex}.draft-head-text{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.hud{gap:var(--hud-gap,.5rem);flex-direction:column;display:flex;position:relative}.hud-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.hud-row.chips{min-height:var(--hud-h,44px);flex-wrap:nowrap;gap:4px}.chip{min-height:var(--hud-h,44px);border-radius:var(--r-md);background:var(--panel);border:1px solid var(--panel-edge);min-width:44px;color:var(--panel-ink);--lip:var(--panel-lip);--lip-press:var(--panel-lip-press);box-shadow:var(--lip), var(--panel-shadow);white-space:nowrap;justify-content:center;align-items:center;gap:.25rem;padding:0 .4rem;font-size:.85rem;display:inline-flex}.chip b{font-family:var(--font-display);font-size:.95rem;font-weight:700}.chip-ink{isolation:isolate;position:relative;overflow:hidden}.chip-ink:before{content:"";z-index:-1;background:var(--ink-fill);transform-origin:bottom;transform:scaleY(var(--ink-frac,1));transition:transform var(--t-slow);position:absolute;inset:0}.chip-button{transition:transform var(--t-fast)}.chip-button:active{--lip:var(--lip-press);transform:translateY(2px)}.ico{opacity:.92;flex:none;width:1.05em;height:1.05em}.upg-medal{--medal:22px;width:var(--medal);height:var(--medal);border:1px solid var(--plum-deep);background:var(--plum-fill);box-shadow:var(--medal-shadow);color:var(--gold);border-radius:50%;flex:none;place-items:center;line-height:0;display:grid}.upg-medal .ico{width:calc(var(--medal) * .6);height:calc(var(--medal) * .6);opacity:1}.card-medal{--medal:36px}.chip-small .upg-medal{--medal:20px}.owned-strip{width:100%;min-height:var(--owned-h,26px);border:1px solid var(--panel-edge);border-radius:var(--r-sm);background:var(--panel);color:var(--panel-ink);box-shadow:var(--panel-shadow);text-align:left;flex-wrap:wrap;align-items:center;gap:2px 7px;padding:0 .4rem;display:flex;overflow:hidden}.owned-badge{align-items:center;gap:.2rem;line-height:1.1;display:inline-flex}.owned-count{font-family:var(--font-display);color:var(--panel-ink);font-size:.78rem;font-weight:700}.owned-name{color:var(--panel-ink);font-size:.7rem}.target{min-height:var(--target-h,28px);align-items:center;gap:.75rem;display:flex}.bar{background:var(--bar-track);border:1px solid var(--bar-frame);border-radius:var(--r-pill);height:13px;box-shadow:var(--bar-shadow);flex:1;position:relative;overflow:hidden}.bar:after{content:"";background:var(--bar-cap);width:3px;position:absolute;top:0;bottom:0;right:0}.bar-fill{background:linear-gradient(90deg, var(--brass-deep), var(--brass));border-radius:var(--r-pill);height:100%;transition:width var(--t-slow) cubic-bezier(.2, .9, .3, 1.25);position:relative;overflow:hidden}.bar-hit{border-radius:inherit;opacity:0;pointer-events:none;box-shadow:inset 0 0 8px 1px var(--gold-glow);animation:bar-hit var(--t-slow) ease-out;position:absolute;inset:0}@keyframes bar-hit{0%{opacity:1}to{opacity:0}}.bar-fill.nearly{background:linear-gradient(90deg, var(--brass), var(--gold));box-shadow:0 0 10px -2px var(--gold-glow)}.bar-fill.nearly:after{content:"";background:var(--brass-shimmer);animation:bar-shimmer var(--t-slow) ease-out 3;position:absolute;inset:0}@keyframes bar-shimmer{0%{transform:translate(-115%)}to{transform:translate(115%)}}.target-text{font-family:var(--font-display);white-space:nowrap;color:var(--ink-soft);font-size:1.05rem}.target-text b{color:var(--ink);font-size:1.2rem}.target-score{animation:score-land var(--t-slow) cubic-bezier(.2, .8, .3, 1);display:inline-block}@keyframes score-land{0%{color:var(--gold);opacity:.25;transform:translateY(15px)scale(1.5)}to{opacity:1;transform:translateY(0)scale(1)}}.help{color:var(--ink-dim);text-align:center;margin:0;font-size:.8rem;line-height:1.5}.help a{color:var(--gold)}#about{z-index:1;max-width:32rem;color:var(--ink-soft);margin:0 auto;padding:2.5rem 1.25rem 3rem;position:relative}#about h1{font-family:var(--font-display);color:var(--ink);margin:0 0 1rem;font-size:1.55rem;line-height:1.2}#about p{margin:0 0 .9rem;font-size:.95rem;line-height:1.6}#about a{color:var(--gold)}.chip-clock{font-variant-numeric:tabular-nums}.chip-clock.low{color:var(--bad);border-color:var(--bad);font-weight:700;animation:1s steps(2,end) infinite clock-tick}@keyframes clock-tick{50%{opacity:.55}}.draft{flex-direction:column;gap:.75rem;display:flex}.draft:after{content:"";background:linear-gradient(#5b3a21 0%,#2a1809 100%);border-radius:2px;height:9px;margin-top:-.35rem;box-shadow:0 3px 9px #000000a6}.card{text-align:left;border:1px solid var(--card-edge);border-radius:3px var(--r-lg) var(--r-lg) 3px;background:var(--card);min-height:64px;color:var(--ink);box-shadow:inset 0 1px 0 #ffffff1a, var(--shadow-2);transition:transform var(--t-fast), box-shadow var(--t-fast), opacity var(--t-mid);--fan:-6deg;transform-origin:50% 160%;animation:card-in var(--t-slow) cubic-bezier(.2, .8, .3, 1) backwards;align-items:center;gap:.9rem;padding:.9rem 1rem .9rem 1.5rem;display:flex;position:relative}.card:before{content:"";border-right:1px solid var(--rule);background:linear-gradient(90deg,#0000009e 0%,#00000057 58%,#ffffff1a 100%);border-radius:3px 0 0 3px;width:11px;position:absolute;top:0;bottom:0;left:0}.card:after{content:"";border:1px solid var(--rule);pointer-events:none;border-radius:4px;position:absolute;inset:5px 7px 5px 17px}.card:active{box-shadow:var(--shadow-1);transform:translateY(1px)scale(.995)}.card.chosen{border-color:var(--gold);box-shadow:var(--card-chosen-shadow);transform:translateY(-6px)scale(1.03)}.card.dimmed{opacity:.4}.card:nth-child(2){--fan:0deg;animation-delay:60ms}.card:nth-child(3){--fan:6deg;animation-delay:.12s}@keyframes card-in{0%{transform:translateY(26px) rotate(var(--fan));opacity:0}to{opacity:1;transform:translateY(0)rotate(0)}}.card-plate{border:1px solid var(--tile-edge);border-radius:var(--r-sm);background:var(--tile-bg);min-width:0;color:var(--tile-ink);box-shadow:inset 0 1px 0 var(--tile-hi), inset 0 -2px 0 var(--tile-lo), var(--shadow-1);flex-direction:column;flex:1;gap:.15rem;padding:.5rem .65rem;display:flex;position:relative}.card-plate:before{content:"";border:1px solid var(--tile-gilt);border-radius:var(--r-xs);position:absolute;inset:3px}.card-name{font-family:var(--font-display);font-size:1.05rem;font-weight:700}.card-blurb{color:var(--plate-ink-soft);font-size:.85rem;line-height:1.4}.rc{z-index:20;background:var(--rc-scrim);animation:rc-in var(--t-mid) ease-out;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.25rem;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes rc-in{0%{opacity:0}to{opacity:1}}.rc-round{font-family:var(--font-display);text-align:center;color:var(--ink);text-shadow:0 2px 6px #000c;animation:rc-pop var(--t-slow) cubic-bezier(.2, .9, .3, 1.3) both;margin:0;font-size:2.2rem;font-weight:700}@keyframes rc-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.rc-flash{z-index:-1;pointer-events:none;opacity:0;background:var(--rc-flash);animation:rc-flash var(--t-rc-flash) ease-out;position:absolute;inset:0}@keyframes rc-flash{0%{opacity:0}15%{opacity:1}to{opacity:0}}.rc-bonus,.rc-total{font-family:var(--font-display);text-align:center;margin:0;font-weight:700}.rc-bonus{color:var(--gold);animation:rc-rise var(--t-slow) cubic-bezier(.2, .8, .3, 1) .1s both;font-size:1.2rem}.rc-total{color:var(--ink-soft);animation:rc-rise var(--t-slow) cubic-bezier(.2, .8, .3, 1) .18s both;font-size:1.05rem}.rc-line{align-items:center;gap:.35rem;display:inline-flex}.rc-amount{align-items:center;display:inline-flex}.rc-label{font-weight:400}@keyframes rc-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rc-reels{--rc-cell:1.25em;display:inline-flex;position:relative;top:.05em}.rc-reel{width:.66em;height:var(--rc-cell);display:inline-block;overflow:hidden}.rc-strip{transform:translateY(calc(var(--o,0) * var(--rc-cell) * -1));display:block}.rc-strip span{height:var(--rc-cell);line-height:var(--rc-cell);text-align:center;display:block}.rc-fw{pointer-events:none;position:absolute;inset:0;overflow:hidden}.rc-spark{opacity:0;border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;animation:.9s cubic-bezier(.12,.62,.3,1) both rc-spark;position:absolute}.rc-sliver{border-radius:1px;width:2px;height:9px;margin:-4.5px 0 0 -1px}@keyframes rc-spark{0%{opacity:0;transform:translate(0,0)rotate(0)scale(.3)}12%{opacity:1}68%{opacity:.9}to{transform:translate3d(var(--dx), var(--dy), 0) rotate(var(--rot,0deg)) scale(var(--s,.55));opacity:0}}.rc-gold{background:var(--gold);box-shadow:0 0 9px -1px var(--gold-glow)}.rc-plum{background:var(--plum-soft)}.rc-ivory{background:var(--ink)}.stats{grid-template-columns:1fr 1fr;gap:.75rem;margin:.5rem 0 .6rem;display:grid}.stats div:last-child{grid-column:1/-1}.stats div{background:var(--tile-bg);color:var(--tile-ink);border:1px solid var(--tile-edge);border-radius:var(--r-lg);text-align:center;box-shadow:inset 0 1px 0 var(--tile-hi), var(--tile-lip), var(--tile-shadow);animation:stat-in var(--t-mid) ease-out both;padding:.6rem .5rem .65rem;position:relative}.stats div:before{content:"";border:1px solid var(--tile-gilt);border-radius:var(--r-sm);pointer-events:none;position:absolute;inset:3px}.stats div:nth-child(2){animation-delay:80ms}.stats div:nth-child(3){animation-delay:.16s}@keyframes stat-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stats dt{text-transform:uppercase;letter-spacing:.07em;color:var(--brass-deep);font-size:.68rem;font-weight:600}.stats dd{font-family:var(--font-display);color:var(--tile-ink);margin:.2rem 0 0;font-size:1.3rem;font-weight:700}.missed{border-radius:var(--r-md);border:1px dashed var(--card-edge);color:var(--ink-soft);background:#00000047;align-items:center;gap:.5rem;margin:0;padding:.6rem .8rem;font-size:.92rem;display:flex}.missed b{color:var(--ink);font-family:var(--font-display)}.missed .ico{color:var(--gold);flex:none}.lib-new{color:var(--good);align-items:center;gap:.4rem;margin:0;font-size:.9rem;display:flex}.owned{gap:.3rem}.chip-small{gap:.25rem;min-width:0;min-height:26px;padding:0 .45rem;font-size:.72rem}.home-btn-label .ico,.lb-title .ico,.lb-sub .ico,.lib-heading .ico,.lib-prize-label .ico,.streak .ico{color:var(--gold);opacity:1}.home-btn.primary .home-btn-label .ico,.home-btn.resume .home-btn-label .ico{color:inherit}.leaderboard{border-radius:var(--r-lg);background:var(--card);border:1px solid var(--card-edge);box-shadow:inset 0 1px 0 #ffffff1a, var(--shadow-2);flex-direction:column;gap:.6rem;padding:.85rem;display:flex}.lb-title{font-family:var(--font-display);align-items:center;gap:.45rem;margin:0;font-size:1.05rem;font-weight:700;display:flex}.lb-sub{font-family:var(--font-display);align-items:center;gap:.45rem;margin:.4rem 0 0;font-size:.95rem;font-weight:700;display:flex}.submit-row{gap:.5rem;display:flex}.submit-row .text{border:1px solid var(--panel-edge);border-radius:var(--r-md);min-width:0;min-height:44px;font:inherit;color:var(--ink);background:var(--field);flex:1;padding:0 .7rem}.submit-row .text::placeholder{color:var(--ink-dim)}.submit-row button{border-radius:var(--r-md);min-height:44px;font-family:var(--font-display);padding:0 .9rem;font-size:.95rem;font-weight:600}.submit-row button:disabled{opacity:.42}.rows{margin:0;padding:0;font-size:.9rem;list-style:none}.rows li{border-bottom:1px solid var(--rule);grid-template-columns:2em 1fr auto auto;align-items:baseline;gap:.4rem .6rem;padding:.35rem .3rem;display:grid}.rows li.you{border-radius:var(--r-xs);background:#6b479147}.rows .rank{color:var(--ink-dim)}.rows .nick{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.rows .rounds{color:var(--ink-dim)}.rows .pts{font-family:var(--font-display);color:var(--good);font-weight:700}.rows .best{color:var(--ink-dim);letter-spacing:.05em;grid-column:2/-1;font-size:.75rem}.rows .best:empty{display:none}.code{letter-spacing:.15em;color:var(--gold);font-family:ui-monospace,Menlo,monospace}.message.error{color:var(--bad)}.history{justify-content:space-between;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.streak{font-family:var(--font-display);color:var(--ink);align-items:center;gap:.4rem;font-weight:700;display:inline-flex}.history-tiles{gap:5px;display:flex}.day{border-radius:var(--r-xs);background:var(--panel);border:1px solid var(--panel-edge);width:28px;height:28px;color:var(--ink-dim);box-shadow:var(--panel-shadow);place-items:center;font-size:.78rem;display:grid}.day.played{background:var(--brass-fill);border-color:var(--brass-deep);color:var(--on-brass);font-family:var(--font-display);font-weight:700}.home{--home-gap:.6rem;justify-content:center;gap:var(--home-gap)}.home:after{content:"";max-height:150px;flex:1 1 0;margin-block-start:calc(-1 * var(--home-gap));display:block}.home-hero{place-items:center;margin-bottom:-.4rem;display:grid;position:relative}.home-medal{background:var(--brass-gloss), var(--brass-fill);border:2px solid var(--gold);width:54px;height:54px;color:var(--on-brass);font-family:var(--font-display);box-shadow:inset 0 1px 0 var(--btn-hi-strong), var(--brass-lip), var(--shadow-2);border-radius:50%;grid-auto-flow:column;place-items:center;gap:2px;font-size:1.2rem;font-weight:700;line-height:1;display:grid;position:absolute;top:8px;left:calc(50% + 58px)}.home-medal .ico{width:15px;height:15px;color:var(--on-brass);opacity:.85}.home-title{font-family:var(--font-display);text-align:center;color:var(--ink);text-shadow:var(--title-shadow);margin:0 0 .1rem;font-size:2.3rem;font-weight:700}@supports ((-webkit-background-clip:text) or (background-clip:text)){.home-title{background:var(--wordmark);color:#0000;text-shadow:none;filter:var(--wordmark-shadow);-webkit-background-clip:text;background-clip:text}}.home-tag{text-align:center;color:var(--ink-soft);margin:0 0 .4rem;font-size:.9rem;line-height:1.45}.home-btn{text-align:left;border:1px solid var(--card-edge);border-radius:var(--r-lg);background:var(--card);width:100%;min-height:62px;color:var(--ink);box-shadow:inset 0 1px 0 var(--btn-hi-faint), var(--lip), var(--shadow-2);transition:transform var(--t-fast), box-shadow var(--t-fast);flex-direction:column;gap:.15rem;padding:.7rem .9rem;display:flex}.home-btn:active{--lip:var(--lip-press);transform:translateY(2px)}.home-btn-label{font-family:var(--font-display);align-items:center;gap:.5rem;font-size:1.08rem;font-weight:700;display:flex}.home-btn-sub{color:var(--ink-soft);padding-left:1.6rem;font-size:.8rem;line-height:1.4}.home-btn.primary{--lip:var(--brass-lip);background:var(--brass-gloss), var(--brass-fill);border-color:var(--gold);color:var(--on-brass);box-shadow:inset 0 1px 0 var(--btn-hi-strong), var(--lip), var(--shadow-2)}.home-btn.primary:active{--lip:var(--brass-lip-press)}.home-btn.primary .home-btn-sub{color:#241503c7}.home-btn.resume{border-color:var(--good)}.home-btn.resume .home-btn-label{color:var(--good)}.home-btn.quiet{border-color:var(--panel-edge);min-height:50px;box-shadow:none;background:0 0}.home-btn.quiet .home-btn-label{color:var(--ink-soft);font-size:1rem}.home-btn:disabled{opacity:.6;cursor:default}.home-btn:disabled:active{transform:none}.home-btn.home-cta{min-height:72px;position:relative}.home-btn.home-cta:after{content:"";border-radius:inherit;box-shadow:var(--glow-gold);opacity:0;pointer-events:none;animation:cta-glow var(--t-cta-glow) ease-in-out infinite;position:absolute;inset:0}.home-btn.home-cta .home-btn-label{font-size:1.2rem}.home-btn.home-cta:disabled:after{animation:none}@keyframes cta-glow{50%{opacity:1}}.home-pair{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.home-btn.home-half{text-align:center;justify-content:flex-start;align-items:center;padding:.7rem .5rem}.home-half .home-btn-label{flex-direction:column;gap:.3rem;font-size:1rem;line-height:1.2}.home-half .home-btn-label .ico{width:24px;height:24px}.home-half .home-btn-sub{padding-left:0;font-size:.74rem}.home-links{gap:.6rem;display:flex}.home-links .home-btn{flex:1;justify-content:center;min-width:0;min-height:44px}.home-links .home-btn-sub{padding-left:0;font-size:.74rem}.home-invite{border:1px solid var(--good);border-radius:var(--r-md);background:var(--panel);min-height:44px;color:var(--ink);box-shadow:var(--panel-shadow);animation:invite-in var(--t-slow) ease-out;align-items:center;gap:.5rem;margin:0 0 .2rem;padding:.6rem .75rem;font-size:.86rem;line-height:1.4;display:flex}.home-invite .ico{color:var(--good);flex:none}.home-invite.dim{border-color:var(--panel-edge);color:var(--ink-soft)}.home-invite.dim .ico{color:var(--ink-dim)}@keyframes invite-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.home-days{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.home-tiles{flex:none;justify-content:center;gap:4px}.home-tiles .day{width:24px;height:24px;font-size:.72rem}.home-last{color:var(--ink-dim);white-space:nowrap;font-size:.75rem}.tour{justify-content:center}.tour-brand{text-align:center;font-family:var(--font-display);color:var(--ink-soft);letter-spacing:.06em;margin:0;font-size:1.05rem;font-weight:700}.tour-panel{text-align:center;border:1px solid var(--card-edge);border-radius:var(--r-xl);background:var(--card);box-shadow:inset 0 1px 0 #ffffff1a, var(--shadow-3);flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem 1.1rem;display:flex}.tour-figure{justify-content:center;display:flex;position:relative}.tour-icon{border:1px solid var(--panel-edge);background:var(--panel);width:42px;height:42px;box-shadow:var(--panel-shadow);color:var(--gold);border-radius:50%;place-items:center;line-height:0;display:grid;position:absolute;bottom:4px;right:-8px}.tour-icon .ico{opacity:1;stroke-width:1.5px;width:23px;height:23px}.tour-title{font-family:var(--font-display);color:var(--ink);margin:0;font-size:1.25rem;font-weight:700}.tour-body{color:var(--ink-soft);margin:0;font-size:.95rem;line-height:1.5}.tour-tiles{gap:6px;display:flex}.tour-tile{border:1px solid var(--tile-edge);border-radius:var(--r-md);background:var(--tile-bg);width:44px;height:44px;color:var(--tile-ink);font-family:var(--font-display);--lip:var(--tile-lip);box-shadow:inset 0 1px 0 var(--tile-hi), inset 0 -2px 0 var(--tile-lo), var(--lip), var(--tile-shadow);place-items:center;font-size:1.3rem;font-weight:700;display:grid;position:relative}.tour-tile:before{content:"";border:1px solid var(--tile-gilt);border-radius:var(--r-sm);position:absolute;inset:3px}.tour-tile.last{--lip:var(--tile-lip-plum);background:var(--plum-fill);border-color:var(--plum-deep);color:var(--on-plum)}.tour-tile.last:before{border-color:#ffffff38}.tour-dots{justify-content:center;gap:8px;padding:.4rem 0;display:flex}.tour-dot{background:#ffffff2e;border-radius:50%;width:9px;height:9px}.tour-dot.on{background:var(--gold)}.lib-prizes{gap:.6rem;display:flex}.lib-prize{border:1px solid var(--panel-edge);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--panel-shadow);flex-direction:column;flex:1;gap:.15rem;min-width:0;padding:.6rem .7rem;display:flex}.lib-prize-label{color:var(--ink-soft);letter-spacing:.04em;align-items:center;gap:.35rem;font-size:.75rem;display:inline-flex}.lib-prize-word{font-family:var(--font-display);letter-spacing:.04em;overflow-wrap:anywhere;color:var(--ink);font-size:1.05rem;font-weight:700}.lib-prize-sub{color:var(--ink-dim);font-size:.78rem}.lib-section{flex-direction:column;gap:.4rem;display:flex}.lib-heading{color:var(--ink-soft);align-items:center;gap:.4rem;margin:0;font-size:.92rem;font-weight:400;display:flex}.lib-words{flex-wrap:wrap;gap:6px;display:flex}.lib-word{border:1px solid var(--panel-edge);border-radius:var(--r-sm);background:var(--panel);color:var(--panel-ink);font-family:var(--font-display);letter-spacing:.05em;padding:.25rem .5rem;font-size:.85rem}.lib-word b{font-family:var(--font-body);color:var(--ink-dim);font-size:.75rem;font-weight:400}.lib-word.rare{border-color:var(--gold);color:var(--gold)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
