@layer reset,tokens,base,components,board,hud,shell,screens,motion;@font-face{font-family:Be Vietnam Pro;src:url("/assets/fonts/bvp-400-MD44GODG.woff2") format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Be Vietnam Pro;src:url("/assets/fonts/bvp-600-NPPJG567.woff2") format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Be Vietnam Pro;src:url("/assets/fonts/bvp-800-ZD7MUVUS.woff2") format("woff2");font-weight:800;font-display:swap}@font-face{font-family:Mali;src:url("/assets/fonts/mali-600-EL4HFP26.woff2") format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Cocaro Num;src:url("/assets/fonts/cocaro-num-600-EVR32XHF.woff2") format("woff2");font-weight:600;font-display:swap;unicode-range:U+0030-003A}@font-face{font-family:Cocaro Num;src:url("/assets/fonts/cocaro-num-800-AFC2PLZE.woff2") format("woff2");font-weight:800;font-display:swap;unicode-range:U+0030-003A}@font-face{font-family:BVP fallback A;src:local("Roboto");size-adjust:109.3%;ascent-override:91.5%;descent-override:24.2%;line-gap-override:0%}@font-face{font-family:BVP fallback B;src:local("Arial"),local("Helvetica Neue");size-adjust:106.1%;ascent-override:94.3%;descent-override:25%;line-gap-override:0%}@layer tokens{:root{color-scheme:light;--paper: #F8F8F5;--paper-raised: #FFFFFF;--paper-sunk: #EEEEEA;--ink: #1B1A1F;--on-ink: #F8F8F5;--pencil: #53515A;--pencil-soft: #6B6872;--line: #E2E1DC;--line-strong: #84818A;--rule: #D0CCE4;--rule-edge: #8781AC;--clock-track: #E2E1DC;--x: #C4321F;--o: #2442AC;--x-wash: #FBEDEA;--o-wash: #EAEDFA;--hl: #F8DF86;--hl-btn: #F8DF86;--warn: #955300;--ok: #2B7449;--btn-face: #26252C;--btn-side: #0B0A0D;--btn-label: #F8F8F5;--btn2-face: #FFFFFF;--btn2-edge: #1B1A1F;--btn2-side: #1B1A1F;--btn2-label: #1B1A1F;--btn-off-face: #EEEEEA;--btn-off-label: #6B6872;--tape: rgb(236 229 207 / .92);--scrim: rgb(27 26 31 / .32);--lift: 0 1px 0 rgb(27 26 31 / .05), 0 14px 32px -18px rgb(27 26 31 / .38);--mark-boost: 1}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper: #121614;--paper-raised: #1A1F1C;--paper-sunk: #0C0F0E;--ink: #ECEFEA;--on-ink: #121614;--pencil: #B6BEB8;--pencil-soft: #939C95;--line: #252C28;--line-strong: #6A746E;--rule: #2C3530;--rule-edge: #64706A;--clock-track: #252C28;--x: #FF9F8F;--o: #6A8FF0;--x-wash: #2A1C1A;--o-wash: #18213A;--hl: #463D1C;--warn: #F0B04A;--ok: #74C496;--btn-face: #ECEFEA;--btn-side: #8C958F;--btn-label: #121614;--btn2-face: #1A1F1C;--btn2-edge: #ECEFEA;--btn2-side: #ECEFEA;--btn2-label: #ECEFEA;--btn-off-face: #202622;--btn-off-label: #939C95;--tape: rgb(58 63 58 / .92);--scrim: rgb(0 0 0 / .5);--toast-edge: var(--line-strong);--lift: 0 18px 40px -20px rgb(0 0 0 / .8)}}:root[data-theme=dark]{color-scheme:dark;--paper: #121614;--paper-raised: #1A1F1C;--paper-sunk: #0C0F0E;--ink: #ECEFEA;--on-ink: #121614;--pencil: #B6BEB8;--pencil-soft: #939C95;--line: #252C28;--line-strong: #6A746E;--rule: #2C3530;--rule-edge: #64706A;--clock-track: #252C28;--x: #FF9F8F;--o: #6A8FF0;--x-wash: #2A1C1A;--o-wash: #18213A;--hl: #463D1C;--warn: #F0B04A;--ok: #74C496;--btn-face: #ECEFEA;--btn-side: #8C958F;--btn-label: #121614;--btn2-face: #1A1F1C;--btn2-edge: #ECEFEA;--btn2-side: #ECEFEA;--btn2-label: #ECEFEA;--btn-off-face: #202622;--btn-off-label: #939C95;--tape: rgb(58 63 58 / .92);--scrim: rgb(0 0 0 / .5);--toast-edge: var(--line-strong);--lift: 0 18px 40px -20px rgb(0 0 0 / .8)}@media(prefers-contrast:more){:root,:root:not([data-theme=light]),:root[data-theme=dark]{--rule: var(--rule-edge);--line: var(--line-strong);--pencil-soft: var(--pencil);--mark-boost: 1.15}}:root{--font-print: "Be Vietnam Pro", "BVP fallback A", "BVP fallback B", system-ui, sans-serif;--font-hand: "Mali", "Be Vietnam Pro", "BVP fallback A", sans-serif;--font-num: "Cocaro Num", "Be Vietnam Pro", "BVP fallback A", sans-serif;--s-0: 2px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-7: 32px;--s-8: 40px;--s-9: 56px;--s-10: 72px;--r-xs: 4px;--r-s: 6px;--r-m: 10px;--r-l: 16px;--r-round: 999px;--e-0: none;--e-1: 0 0 0 1px var(--line);--e-2: 0 0 0 1px var(--line), var(--lift);--z-board: 0;--z-hud: 10;--z-reaction: 20;--z-toast: 55;--z-sheet: 50;--z-banner: 60;--z-loupe: 70;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);--page-max: 1040px;--page-gutter: 16px;--page-pad-l: max(var(--page-gutter), calc(16px + var(--safe-l)));--page-pad-r: max(var(--page-gutter), calc(16px + var(--safe-r)));--dur-press: 70ms;--dur-xs: .12s;--dur-s: .16s;--dur-m: .22s;--dur-l: .32s;--dur-page: .36s;--dur-strike: .42s;--ease-ink: cubic-bezier(.5, 0, .5, 1);--ease-ink-fast: cubic-bezier(.3, .6, .3, 1);--ease-strike: cubic-bezier(.6, .05, .3, 1);--ease-swipe: cubic-bezier(.2, .8, .2, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1);--ease-move: cubic-bezier(.4, 0, .2, 1);--spring-settle: linear(0, .006 1%, .02 2%, .081 4.4%, .46 14.9%, .561 18%, .641 21%, .714 24.1%, .778 27.6%, .829 31%, .874 34.9%, .911 39.3%, .939 43.9%, .961 49.3%, .977 55.6%, .988 62.7%, .994 71.2%, 1);--spring-pop: linear(0, .006 1.2%, .026 2.5%, .108 5.6%, .56 17.3%, .747 23.2%, .82 26.1%, .879 29%, .928 32.1%, .965 35.2%, .991 38.3%, 1.009 41.6%, 1.021 45.3%, 1.026 49.4%, 1.025 56%, 1.004 79.8%, 1);--spring-sheet: linear(0, .007 1.3%, .024 2.6%, .094 5.6%, .184 8.5%, .511 17.9%, .608 21.1%, .692 24.3%, .76 27.4%, .82 30.6%, .87 33.9%, .91 37.4%, .943 41.3%, .969 45.6%, .987 50.4%, .999 55.8%, 1.004 61.3%, 1.006 68.2%, 1);--spring-bump: linear(0, .008 1.1%, .03 2.3%, .124 5%, .646 15.1%, .852 19.8%, .927 22.1%, .989 24.5%, 1.034 26.9%, 1.066 29.4%, 1.081 31.2%, 1.09 33.2%, 1.093 35.2%, 1.091 37.5%, 1.079 41.4%, 1.035 50.3%, 1.016 54.8%, 1.002 59.7%, .994 65%, .991 73%, 1)}@media(min-width:600px){:root{--page-gutter: 32px}}@media(min-width:1600px){:root{--page-max: 1200px}}@supports not (transition-timing-function: linear(0,1)){:root{--spring-settle: cubic-bezier(.2, .8, .2, 1);--spring-pop: cubic-bezier(.34, 1.3, .64, 1);--spring-sheet: cubic-bezier(.2, .9, .25, 1);--spring-bump: cubic-bezier(.34, 1.56, .64, 1)}}}@media(forced-colors:active){.art{forced-color-adjust:none}.art .paper,.loupe .paper{fill:Canvas}.art .grid{stroke:GrayText}.art .mark.x path,.art .strike.x{stroke:CanvasText}.art .mark.o path,.art .strike.o{stroke:LinkText}.art .hl rect{fill:Highlight;opacity:.35}.art .dot{fill:GrayText}.art .aim{fill:Highlight;opacity:.2}.art .focus-sq{stroke:Highlight}.art .arrival.x{stroke:CanvasText}.art .arrival.o{stroke:LinkText}.art .mark.pencil,.art .pin-sq,.art .pencil-line,.art .refused,.art .pencil-c,.art .hint-c{stroke:CanvasText}.art .move-no{fill:CanvasText}.clock .seg{background:Highlight}.btn>.face{forced-color-adjust:auto;border:1px solid ButtonText}.input,.chip,.cbox,.rchip span{border:1px solid CanvasText}.rchip:disabled span{border-color:GrayText;color:GrayText}.cbox.caret,.input:focus{outline:2px solid Highlight;outline-offset:0}.sheet,.popover,.ftoast,.loupe,.resume-card{border:1px solid CanvasText}.icon-btn[aria-pressed=true],.tool[aria-pressed=true]{border:2px solid CanvasText}.side.active{outline:2px solid Highlight;outline-offset:-2px}.segmented,.switch{forced-color-adjust:none}.segmented{box-shadow:inset 0 0 0 1px CanvasText}.segmented button{color:CanvasText}.segmented button:disabled{color:GrayText}.segmented button:focus-visible{outline-color:Highlight}.segmented .ind{background:Highlight}.segmented button[aria-checked=true]{color:HighlightText}.switch{background:Canvas;box-shadow:inset 0 0 0 1.5px CanvasText}.switch:after{background:CanvasText}[aria-checked=true]>.switch{background:Highlight;box-shadow:none}[aria-checked=true]>.switch:after{background:HighlightText}}@layer reset{*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin:0}ul,ol{padding:0}button,input,select,textarea{font:inherit;color:inherit}img,svg{display:block}[hidden]{display:none!important}}@layer base{html{font-synthesis:none;background:var(--paper)}body{background:var(--paper);color:var(--ink);font:400 1rem/1.5rem var(--font-print);-webkit-font-smoothing:antialiased;min-height:100vh;min-height:100dvh}a{color:inherit;text-underline-offset:3px}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{cursor:default}:where(button,a,[role=button],[role=switch],[role=radio],.rchip){touch-action:manipulation;-webkit-tap-highlight-color:transparent}:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ink);outline-offset:2px}:where(button,a,input,summary,[tabindex]):focus:not(:focus-visible){outline:none}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.t-display{font:800 1.875rem/2.375rem var(--font-print);letter-spacing:-.01em}.t-title{font:800 1.375rem/1.75rem var(--font-print)}.t-head{font:600 1.125rem/1.5rem var(--font-print)}.t-body{font:400 1rem/1.5rem var(--font-print)}.t-status{font:600 .9375rem/1.25rem var(--font-print)}.t-button{font:600 1rem/1.25rem var(--font-print)}.t-label{font:600 .875rem/1.125rem var(--font-print)}.t-small{font:400 .875rem/1.25rem var(--font-print);color:var(--pencil)}.t-meta,.meta{font:600 .75rem/1rem var(--font-print);color:var(--pencil-soft)}.t-count{font:800 1.75rem/2rem var(--font-num);font-variant-numeric:tabular-nums}.t-code{font:800 2.125rem/2.5rem var(--font-num);letter-spacing:.06em;font-variant-numeric:tabular-nums}.h-verdict{font:600 1.5rem/1.75rem var(--font-hand)}.h-detail{font:600 1rem/1.25rem var(--font-hand)}.h-note,.hand{font-family:var(--font-hand);font-weight:600;font-size:1rem;line-height:1.375rem}@media(min-width:960px){.t-display{font-size:2.375rem;line-height:2.875rem}.t-title{font-size:1.625rem;line-height:2rem}.t-head{font-size:1.1875rem;line-height:1.625rem}.t-body{font-size:1.0625rem;line-height:1.625rem}.t-status{font-size:1rem;line-height:1.375rem}.t-label{font-size:.9375rem;line-height:1.25rem}.t-meta,.meta{font-size:.8125rem;line-height:1.125rem}.t-count{font-size:2.25rem;line-height:2.5rem}.t-code{font-size:2.75rem;line-height:3.25rem}.h-verdict{font-size:1.875rem;line-height:2.25rem}.h-detail{font-size:1.0625rem;line-height:1.375rem}.h-note,.hand{font-size:1.0625rem;line-height:1.5rem}}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums}.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;margin:-1px;padding:0;border:0}.skip-link{position:absolute;left:8px;top:0;z-index:100;translate:0 -120%;padding:12px 16px;border-radius:var(--r-m);background:var(--paper-raised);box-shadow:none;font:600 .9375rem/1.25rem var(--font-print);text-decoration:none}.skip-link:focus{translate:0 calc(8px + var(--safe-t));box-shadow:var(--e-2)}.sprite{position:absolute;width:0;height:0;overflow:hidden}#safe-probe{position:fixed;left:0;top:0;width:0;height:0;visibility:hidden;pointer-events:none;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.ico{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ico .f,.ico.f{fill:currentColor;stroke:none}.ico.s16{width:16px;height:16px}.ico.s18{width:18px;height:18px}.ico.s20{width:20px;height:20px}symbol .f{fill:currentColor;stroke:none}#page-h1:focus{outline:none}.noscript{padding:16px;font:400 1rem/1.5rem var(--font-print)}}@layer components{.btn{--face: var(--btn-face);--side: var(--btn-side);--label: var(--btn-label);display:inline-flex;flex-direction:column;min-width:0;border:0;padding:0 0 3px;border-radius:var(--r-m);background:var(--side);min-height:51px;text-decoration:none;cursor:pointer}.btn>.face{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 20px;border-radius:var(--r-m);overflow:hidden;background:var(--face);color:var(--label);box-shadow:inset 0 0 0 var(--edge-w, 0) var(--edge, transparent);font:600 1rem/1.25rem var(--font-print);white-space:nowrap;transition:transform .26s var(--spring-settle)}.btn>.face .ico{width:20px;height:20px}.btn:active>.face{transform:translateY(3px);transition:transform 70ms ease-out}.btn.secondary{--face: var(--btn2-face);--side: var(--btn2-side);--label: var(--btn2-label);--edge: var(--btn2-edge);--edge-w: 1.5px}.btn.big{min-height:59px}.btn.big>.face{height:56px;font-size:1.0625rem}.btn.small{min-height:44px}.btn.small>.face{height:41px;padding:0 16px;font-size:.9375rem}.btn.full{width:100%}.btn.grow{flex:1 1 0}.btn:disabled,.btn[aria-disabled=true]{--face: var(--btn-off-face);--side: var(--btn-off-face);--label: var(--btn-off-label);--edge: transparent;cursor:default}.btn:disabled>.face,.btn[aria-disabled=true]>.face{transform:translateY(3px)}.btn .lbl{position:relative}.btn .hl-swipe{position:absolute;inset:13px 12px;border-radius:3px;background:var(--hl);transform-origin:0 50%;animation:hl-in .16s var(--ease-swipe) both}.btn.primary .hl-swipe{opacity:.9;background:var(--hl-btn, var(--hl))}.btn .hl-swipe~*{color:var(--ink)}.btn.primary .hl-swipe~*{color:#1b1a1f}.quiet{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;background:none;border:0;color:var(--ink);font:600 .9375rem/1.25rem var(--font-print);text-decoration:underline 1px;text-underline-offset:3px;white-space:nowrap;cursor:pointer}.quiet:active{color:var(--pencil)}.quiet:focus-visible,.icon-btn:focus-visible{outline-offset:-2px}.quiet:disabled{color:var(--pencil-soft)}.icon-btn{width:44px;height:44px;flex:none;display:grid;place-items:center;padding:0;color:var(--ink);background:none;border:0;border-radius:var(--r-m)}.icon-btn:active{background:var(--paper-sunk)}.icon-btn[aria-pressed=true]{background:var(--paper-sunk);box-shadow:inset 0 0 0 1.5px var(--ink)}.tool{height:44px;display:inline-flex;align-items:center;gap:8px;padding:0 12px 0 8px;background:none;border:0;border-radius:var(--r-m);color:var(--ink);font:600 .9375rem/1.25rem var(--font-print);white-space:nowrap}.tool:active{background:var(--paper-sunk)}.tool:disabled{color:var(--btn-off-label)}.tool[aria-pressed=true]{background:var(--paper-sunk);box-shadow:inset 0 0 0 1.5px var(--ink)}.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chip{display:inline-flex;align-items:center;height:28px;padding:0 9px;border-radius:var(--r-s);box-shadow:inset 0 0 0 1px var(--line-strong);font:600 .75rem/1rem var(--font-print);color:var(--ink);white-space:nowrap}.input{height:48px;width:100%;min-width:0;border-radius:var(--r-m);background:var(--paper-raised);border:0;box-shadow:inset 0 0 0 1.5px var(--line-strong);padding:0 14px;font:400 1rem/1.5rem var(--font-print);color:var(--ink)}.input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--ink)}.input::placeholder{color:var(--pencil-soft)}.field-helper,.info-line{display:flex;gap:8px;align-items:flex-start;margin-top:8px;font:400 .875rem/1.25rem var(--font-print);color:var(--ink)}.field-helper .ico,.info-line .ico{margin-top:1px}.code-boxes{position:relative;display:flex;gap:12px;min-width:0}.code-boxes .grp{display:flex;gap:5px}.cbox{width:44px;height:52px;border-radius:var(--r-xs);background:var(--paper-sunk);display:grid;place-items:center;font:800 1.375rem/1 var(--font-num);color:var(--ink)}.code-boxes.legacy .cbox{width:34px;height:48px}.cbox.caret{box-shadow:inset 0 0 0 2px var(--ink)}.code-boxes.wiggle{animation:wiggle 80ms ease-in-out 2 alternate;--wig: 2px}.row-link{display:flex;align-items:center;gap:8px;width:100%;min-height:56px;padding:0;background:none;border:0;color:var(--ink);text-align:left;text-decoration:none}.row-link .t{min-width:0;font:600 .9375rem/1.25rem var(--font-print)}.row-link .lead{flex:1;align-self:center;height:0;min-width:16px;border-bottom:1.5px dotted var(--line-strong);transform:translateY(4px)}.row-link .m{min-width:0;font:600 .75rem/1rem var(--font-print);color:var(--pencil-soft);text-align:right}.row-link .ico,.row-link:active .t{color:var(--pencil)}.row-link:disabled,.row-link[aria-disabled=true]{color:var(--btn-off-label)}.dots{display:inline-flex;align-items:flex-end;align-self:center;gap:4px;height:1.1em;padding-bottom:.2em;margin-left:4px}.dots i{width:3px;height:3px;border-radius:50%;background:var(--pencil);opacity:0}.dots i:nth-child(1){animation:dot1 1.2s infinite}.dots i:nth-child(2){animation:dot2 1.2s infinite}.dots i:nth-child(3){animation:dot3 1.2s infinite}@keyframes dot1{0%{opacity:0}8%,83%{opacity:1}to{opacity:0}}@keyframes dot2{0%,25%{opacity:0}33%,83%{opacity:1}to{opacity:0}}@keyframes dot3{0%,50%{opacity:0}58%,83%{opacity:1}to{opacity:0}}.popover{position:absolute;z-index:45;width:260px;display:flex;flex-direction:column;gap:6px;padding:12px 8px 10px 16px;background:var(--paper-raised);color:var(--ink);border-radius:var(--r-l);box-shadow:var(--e-2)}.popover .ph{display:flex;align-items:center;gap:10px}.popover .pn{flex:1;min-width:0;font:600 .9375rem/1.25rem var(--font-print);overflow-wrap:anywhere}.popover .ps{font:400 .875rem/1.25rem var(--font-print);color:var(--pencil);padding-right:8px}.popover.in{animation:pop-in .18s var(--ease-swipe) both}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)}}.ftoast{position:fixed;left:16px;right:16px;bottom:calc(16px + var(--safe-b));z-index:var(--z-toast, 55);translate:none;display:flex;align-items:center;gap:8px;width:fit-content;max-width:328px;margin-inline:auto;padding:10px 16px;border-radius:var(--r-s);background:var(--paper-raised);box-shadow:0 0 0 1px var(--toast-edge, var(--line)),var(--lift);color:var(--ink);font:600 .875rem/1.125rem var(--font-print)}.strip{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 4px 0 16px;background:var(--paper-raised);box-shadow:inset 0 1px 0 var(--line),inset 0 -1px 0 var(--line);color:var(--ink);font:600 .9375rem/1.25rem var(--font-print)}.strip .txt{flex:1;display:flex;align-items:baseline;min-width:0;padding:10px 0}.strip .quiet{margin-left:auto}.strip:not(:has(.quiet)){padding-right:16px}.tape{position:absolute;top:-9px;width:56px;height:18px;background:var(--tape);clip-path:polygon(0 0,100% 0,96% 25%,100% 50%,96% 75%,100% 100%,0 100%,4% 75%,0 50%,4% 25%)}.tape.left{left:18px;rotate:-4deg}.tape.right{right:18px;rotate:3deg}@keyframes wiggle{0%{transform:translate(calc(var(--wig, 2px) * -1))}to{transform:translate(var(--wig, 2px))}}@keyframes hl-in{0%{transform:scaleX(0)}}@keyframes fade-in{0%{opacity:0}}}@layer hud{.av{--av: 36px;--ring: var(--ink-c, var(--ink));position:relative;flex:none;width:var(--av);height:var(--av);display:grid;place-items:center;border-radius:50%;background:var(--paper-raised);box-shadow:inset 0 0 0 2px var(--ring);color:var(--ring)}.av[data-ink=x]{--ink-c: var(--x)}.av[data-ink=o]{--ink-c: var(--o)}.av[data-ink=m]{--ink-c: var(--ink)}.av svg{width:72%;height:72%;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.av svg path{stroke-dasharray:1 2;stroke-dashoffset:0}.av.draw svg path{animation:draw .3s var(--ease-ink) both}.av.fade{animation:fade-in .16s ease-out both}.av .av-letter{font:800 calc(var(--av) * .42) / 1 var(--font-print);color:currentColor}.av.drop{box-shadow:none;background:var(--paper-raised);outline:2px dashed var(--pencil);outline-offset:-2px}.av.drop svg,.av.drop .av-letter{opacity:.4}.av.empty{box-shadow:none;background:none;outline:2px dashed var(--line-strong);outline-offset:-2px}.av.empty svg,.av.empty .av-letter{display:none}.av .okdot{position:absolute;right:0;bottom:0;width:6px;height:6px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 2px var(--paper)}.writing{animation:write var(--write-ms, .22s) var(--ease-swipe) both;animation-delay:var(--wd, 0ms)}@keyframes write{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes draw{0%{stroke-dashoffset:1.01}to{stroke-dashoffset:0}}}@layer shell{.app{display:block}body[data-page]{display:flex;flex-direction:column}body[data-page]>.app{flex:1 0 auto}.js[data-boot=game] #screen-lobby{display:none}.js[data-boot=game]:not([data-screen]) .app:before{content:"";display:block;width:min(calc(100vw - 8px),calc(100dvh - 240px),640px);aspect-ratio:1;margin:120px auto 0;box-shadow:inset 0 0 0 1px var(--rule-edge);animation:fade-in .2s .6s both}.js[data-boot=page] #screen-lobby{display:none}.lobby{background:var(--paper);color:var(--ink)}.lb-head{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:var(--page-max);height:calc(56px + var(--safe-t));margin:0 auto;padding:var(--safe-t) var(--page-pad-r) 0 var(--page-pad-l)}.logo{display:inline-flex;flex:none;align-items:center;gap:8px;min-height:44px;color:var(--ink);text-decoration:none}.logo-word{font:800 1.25rem/1.5rem var(--font-print);letter-spacing:-.01em}.logo-mark{width:26px;height:26px;overflow:visible}.me-chip{--g: 6px;position:relative;display:inline-flex;align-items:center;gap:var(--g);min-width:0;max-width:calc(100% - 120px);height:40px;padding:4px 10px 4px 4px;border-radius:var(--r-round);background:var(--paper-raised);box-shadow:var(--e-1);color:var(--ink);text-decoration:none}.me-chip:after{content:"";position:absolute;inset:-2px 0}.me-chip:active{background:var(--paper-sunk)}.me-chip:focus-visible{outline-offset:2px}.me-chip .av{--av: 28px}.me-chip .nm{min-width:0;overflow:hidden;white-space:nowrap;font:600 .875rem/1.125rem var(--font-print);color:var(--ink)}.me-chip .nm.clip{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 12px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 12px),transparent)}.me-chip .nm .f{display:none}.me-chip .nm:empty:before{content:var(--me-short, "")}.me-chip .pts{display:none;flex:none;align-items:center;margin-left:calc(6px - var(--g));font:600 .8125rem/1rem var(--font-num);color:var(--pencil)}.me-chip .pts:before{content:"";width:1px;height:16px;margin-right:6px;background:var(--line-strong)}[data-me-pts] .me-chip .pts{display:inline-flex}.me-chip .pts:empty:after{content:var(--me-pts, "")}[data-fresh]:not([data-me]) .me-chip .nm{width:6em}.me-chip .dot{position:absolute;left:23px;top:3px;width:10px;height:10px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 2px var(--paper-raised)}@media(pointer:fine){.me-chip:hover{box-shadow:0 0 0 1px var(--line-strong)}}@media(min-width:360px){.me-chip{--g: 8px;padding-right:12px}.me-chip .av{--av: 32px}.me-chip .dot{left:27px}}@media(min-width:600px){.me-chip{max-width:280px}.me-chip .nm .s{display:none}.me-chip .nm .f{display:inline}.me-chip .nm:empty:before{content:var(--me-name, "")}[data-fresh]:not([data-me]) .me-chip .nm{width:12em}}.lb-hint{display:none}[data-fresh] .lb-hint{display:block;width:100%;max-width:var(--page-max);min-height:20px;margin:-6px auto 8px;padding:0 var(--page-pad-r) 0 var(--page-pad-l);font:400 .875rem/1.25rem var(--font-print);color:var(--pencil);text-align:right;text-wrap:pretty}@media(max-width:359px){[data-fresh] .lb-hint{min-height:40px}}.lb-banner .strip{padding-left:max(var(--page-pad-l),calc((100% - var(--page-max)) / 2 + var(--page-gutter)));padding-right:calc(max(var(--page-pad-r),calc((100% - var(--page-max)) / 2 + var(--page-gutter))) - 12px)}.lb-banner .strip:not(:has(.quiet)){padding-right:max(var(--page-pad-r),calc((100% - var(--page-max)) / 2 + var(--page-gutter)))}.lb-main{display:flex;flex-direction:column;width:100%;max-width:var(--page-max);margin:0 auto;padding:4px var(--page-pad-r) 32px var(--page-pad-l)}.lb-left,.lb-right{display:contents}.lb-hero{order:1;display:grid;grid-template-columns:1fr auto;column-gap:16px;align-items:start;margin-bottom:22px}@media(max-width:599px)and (max-height:500px){#screen-lobby:has(.lb-banner .strip) .lb-hero{margin-bottom:12px}}.lb-h1{font:800 1.875rem/2.375rem var(--font-print);letter-spacing:-.01em;max-width:9em}.lb-h1-slot .lb-kicker{margin-bottom:4px;font:600 .8125rem/1.25rem var(--font-print);color:var(--pencil);text-wrap:pretty}.mini-wrap{grid-column:2;display:flex;flex-direction:column;align-items:flex-end;min-width:112px;min-height:112px}.lb-play{order:2}.lb-rules{order:3;display:flex;align-items:center;justify-content:space-between;gap:6px;margin:12px 0 10px}.lb-rules .quiet{min-height:44px;min-width:44px;justify-content:flex-end;padding:0 4px;margin:-4px 0}.lb-modes{order:6;display:flex;flex-direction:column;margin-bottom:12px}.lb-code{order:7;margin-bottom:28px}.lb-code .lab{display:block;margin-bottom:8px;font:600 .9375rem/1.25rem var(--font-print)}.code-row{display:flex;gap:10px;align-items:flex-start;min-height:52px}.code-input-plain{max-width:220px;font-family:var(--font-num);font-weight:800;letter-spacing:.12em;text-transform:uppercase}.lb-have{order:8;display:none;margin:0 0 24px}[data-guest] .lb-have{display:block}[data-guest] .lb-code{margin-bottom:8px}.lb-have a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font:600 .9375rem/1.25rem var(--font-print);text-decoration:underline 1px;text-underline-offset:3px}.lb-card{order:9}[data-card=resumeLive] .lb-card,.lb-card[data-live]{order:5}.lb-card:not(:empty){margin-bottom:22px}.lb-board{order:10;display:grid;grid-template-rows:56px 132px auto;margin-bottom:28px}.lb-board-list,.lb-board-msg{grid-row:2;grid-column:1;min-width:0}.lb-board-list{list-style:none;height:132px;margin:0;padding:0;overflow:hidden}.lb-board-msg{align-self:center;margin:0;font:400 .875rem/1.25rem var(--font-print);color:var(--pencil)}.lb-board-msg.end{align-self:end;padding-bottom:12px}.lb-board-list .sk{display:flex;align-items:center;height:44px}.lb-board-list .sk:before{content:"";display:block;width:100%;height:12px;border-radius:var(--r-xs);background:var(--paper-sunk)}.lb-board-list .sk:nth-child(2):before{width:86%}.lb-board-list .sk:nth-child(3):before{width:72%}.lb-board-list:has(.sk)+.lb-board-msg{align-self:start;margin-top:-2px;display:flex;align-items:baseline}.lb-board-you{grid-row:3;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:48px;margin:0;padding-top:8px;font:400 .875rem/1.25rem var(--font-print);color:var(--pencil)}.lb-board-you .lbl{font-weight:600;color:var(--ink)}.lb-board-you .at{flex:none;font:600 .75rem/1.25rem var(--font-print);color:var(--pencil-soft)}.lb-board-you .quiet{padding:0;margin:-12px 0}.lb-book{order:11;margin-bottom:28px}.lb-book .hd{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:8px;margin-bottom:4px;border-bottom:1px solid var(--line)}.lb-book h2{font:600 1.125rem/1.5rem var(--font-print)}.lb-book .empty{padding:8px 0;color:var(--pencil)}.lb-trust{order:12;font:400 .875rem/1.25rem var(--font-print);color:var(--pencil);text-wrap:balance}.lb-trust .nw{white-space:nowrap}@media(min-width:600px){.mini-wrap{min-width:168px;min-height:168px}}@media(min-width:600px)and (max-width:959px){.lb-h1{max-width:none}}@media(min-width:960px),(min-width:600px)and (max-height:500px){.lb-main{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,12fr);grid-template-rows:auto 1fr;column-gap:clamp(32px,4vw,56px);align-items:start}.lb-left,.lb-right{display:flex;flex-direction:column}.lb-left{grid-row:span 2}.lb-left>.lb-board{margin-top:32px;max-width:440px}.lb-trust{grid-column:2}}@media(min-width:600px)and (max-width:959px)and (max-height:500px){.mini-wrap{min-width:112px;min-height:112px}}@media(min-width:960px){.lb-head{height:72px;padding-top:0}.lb-main{padding-bottom:48px}.lb-left{padding-top:8px}.lb-hero{display:flex;flex-direction:column;align-items:flex-start}.lb-h1{font-size:2.375rem;line-height:2.875rem;max-width:none}.lb-h1-slot .lb-kicker{margin-bottom:6px;font-size:.9375rem;line-height:1.375rem}.mini-wrap{align-items:flex-start;margin-top:28px;min-width:280px;min-height:310px}}@media(min-width:1600px){.lb-h1{font-size:2.75rem;line-height:3.25rem}.lb-h1-slot .lb-kicker{font-size:1rem;line-height:1.5rem}.mini-wrap{min-width:336px;min-height:366px}}.page-host{background:var(--paper);color:var(--ink)}.site-footer{width:100%;max-width:var(--page-max);margin:0 auto;padding:24px var(--page-pad-r) calc(32px + var(--safe-b)) var(--page-pad-l);color:var(--pencil);font:400 .875rem/1.25rem var(--font-print)}.site-footer:before{content:"";display:block;height:1px;margin-bottom:24px;background:var(--line)}.site-footer-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,max-content));gap:16px 32px;margin-bottom:16px}.site-footer-title{margin-bottom:6px;font:600 .875rem/1.25rem var(--font-print);color:var(--ink)}.site-footer ul{list-style:none;display:flex;flex-direction:column}.site-footer li{break-inside:avoid}.site-footer a{display:inline-flex;align-items:center;min-height:44px;color:var(--pencil);text-decoration-color:var(--line-strong);text-underline-offset:3px}.site-footer a:hover,.site-footer a[aria-current=page]{color:var(--ink)}.site-footer-note{max-width:38em;margin-bottom:6px}@media(pointer:fine){.site-footer a{min-height:32px}}@media(min-width:960px){.site-footer-nav{grid-template-columns:max-content max-content;column-gap:64px}.site-footer-col:nth-child(2) ul{display:block;columns:2;column-gap:32px}}}@layer screens{.lb-hero{position:relative;align-items:start;padding-bottom:30px}@media(max-width:599px),(max-width:959px)and (max-height:500px){.lb-hero{padding-bottom:52px}}.lb-hero:has(.mini-cap[hidden]),[data-mini-pos] .lb-hero:not(:has(.mini-cap:not([hidden]))){padding-bottom:0}.lb-h1-slot{grid-column:1;min-width:0}.mini-wrap{gap:6px}.mini{position:relative;width:max-content}.mini .board-shell{view-transition-name:board}.mini .board{outline:1px solid var(--rule-edge)}.mini-hit{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:none;border-radius:0;cursor:pointer}.mini-hit:disabled{cursor:default}.mini-cap{position:absolute;right:0;bottom:0;min-height:22px;margin:0;color:var(--pencil);text-align:right;text-wrap:balance}.me-chip .av{view-transition-name:avatar-me}.lb-rules .chips{flex:1;min-width:0}.lb-online{order:4;min-height:1rem;margin:-4px 0 10px;overflow:hidden;white-space:nowrap;color:var(--pencil);transition:opacity .16s ease-out}.lb-online:empty{opacity:0}@media(min-width:960px){.lb-online{min-height:1.125rem}}.lb-online .num{font-weight:600}.lb-modes .row-link[aria-disabled=true]{color:var(--btn-off-label);pointer-events:none}.lb-modes .row-link[aria-disabled=true] .m{color:var(--btn-off-label)}.code-row{align-items:center;gap:12px}.code-field{position:relative;flex:0 1 auto;min-width:0;display:flex}.code-boxes,.code-boxes .grp{flex:0 1 auto;min-width:0}.cbox{flex:0 1 44px;min-width:30px}.code-boxes.legacy .grp{gap:3px}.code-boxes.legacy .cbox{flex-basis:34px;min-width:22px}.code-row .btn{flex:none}.code-input{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0 0 0 12px;border:0;border-radius:var(--r-xs);background:transparent;color:transparent;caret-color:transparent;font-size:16px;letter-spacing:2em;opacity:0;cursor:text}.code-input:focus-visible{outline:none}.code-field:focus-within{outline:0}.code-msg{min-height:20px;margin-top:8px}.code-help{display:flex;align-items:baseline;margin:0;font:400 .875rem/1.25rem var(--font-print);color:var(--pencil)}.code-error{margin-top:0;flex-wrap:wrap}.code-error>span{flex:1 1 200px;min-width:0}.code-error .quiet,.info-line .quiet{min-height:44px;padding:0 6px;margin:-12px 0}.lb-book .hd .meta{white-space:nowrap}.rivals{list-style:none;margin:0;padding:0}.rival{border-bottom:1px solid var(--line)}.rv-line{display:flex;align-items:center;gap:4px;min-height:56px}.rv-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;min-height:56px;padding:0;border:0;background:none;color:var(--ink);text-align:left}.rv-main:active .nm{color:var(--pencil)}.rv-main .av{--av: 32px}.rv{flex:1;min-width:0;display:flex;flex-direction:column}.rv .nm{font:600 .9375rem/1.25rem var(--font-print);white-space:nowrap;overflow:hidden}.rv small{font:400 .8125rem/1.125rem var(--font-print);color:var(--pencil)}.rival .quiet{padding:0 4px 0 8px}.rv-msg:empty{display:none}.rv-msg{padding:0 0 10px 44px}.rv-msg .info-line{margin-top:0}.rv-err{font:400 .8125rem/1.125rem var(--font-print);color:var(--ink)}.book-all{margin-left:-12px;margin-top:4px}[data-book] .lb-book:not([data-ready])>.empty{display:none}[data-book] .lb-book:not([data-ready]):after{content:"";display:block;height:calc(var(--book-n, 0) * 57px + 48px)}[data-card]{--card-h: 194px}[data-card=resume],[data-card=resumeLive]{--card-h: 72px}@media(min-width:600px){[data-card=session]{--card-h: 335px}[data-card=sessionOld]{--card-h: 373px}}@media(min-width:960px){[data-card=session]{--card-h: 339px}[data-card=sessionOld]{--card-h: 377px}}[data-card-rated]{--card-r: 18px}@media(min-width:600px){[data-card-rated]{--card-r: 22px}}@media(min-width:960px){[data-card-rated]{--card-r: 24px}}[data-card] .lb-card:empty{min-height:calc(var(--card-h) + var(--card-r, 0px));margin-bottom:22px}@media(min-width:960px){.lb-hero{padding-bottom:0}.mini-cap{position:static;text-align:left;font-size:1.0625rem;line-height:1.5rem}}}@layer motion{@media(prefers-reduced-motion:reduce){.mini-cap.writing{animation:fade-in .12s ease-out both}}}@layer motion{@media(prefers-reduced-motion:reduce){.mark.fresh path,.mark.x.fresh path+path{animation:none}.mark.fresh{animation:fade-in .12s ease-out both}.hl rect.swipe,.pip.pop,.dg.write path,.av.draw svg path,.pin-sq,.pencil-line.draw,.dgrp .strk path,.dgrp .circ path{animation:fade-in .12s ease-out both!important;stroke-dasharray:none}.strike.on{animation:fade-in .15s ease-out both;stroke-dashoffset:0}.writing{animation:fade-in .12s ease-out both}.arrival{animation:ring-static .8s linear both}@keyframes ring-static{0%,75%{opacity:.6;transform:none}to{opacity:0}}.dots i{animation:none!important;opacity:1}.st.in{animation:fade-in .16s both}.segmented .ind,.switch:after,.btn>.face{transition:none}.mk.wiggle,.code-boxes.wiggle{animation:none}.note-pop.in{animation:fade-in .16s both}.g-label>span{transition:opacity .16s;transform:none!important}.btn .hl-swipe,.st .uline:after,.popover.in{animation:fade-in .12s ease-out both}.note-pop.out{animation:st-out .12s both}.dgrp .old.leave{transform:none}}[data-lowpower] .writing{animation:fade-in .12s ease-out both}[data-lowpower] .av.draw svg path{animation:fade-in .12s ease-out both;stroke-dasharray:none}[data-lowpower] .pip.pop{animation:fade-in .12s ease-out both}}
