@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-800-normal-BYj_oED-.woff2) format("woff2"),url(/assets/inter-latin-800-normal-D1mf63XC.woff) format("woff")}:root{--felt: #123f3a;--card: #f7f1e3;--sunken: #ece4d1;--line: #d4c9b0;--ink: #1d2320;--muted: #55594f;--on-felt: #f7f1e3;--on-felt-muted: rgba(247, 241, 227, .86);--on-felt-line: rgba(247, 241, 227, .32);--primary: #1d2320;--primary-hover: #343a36;--on-primary: #f7f1e3;--control-border: #6f6f62;--danger: #b42318;--focus: #1d2320;--red: #c5402f;--green: #2e8a58;--yellow: #e2a927;--blue: #3070b8;--t-xs: .8125rem;--t-sm: .875rem;--t-md: 1rem;--t-lg: 1.125rem;--t-xl: 1.5rem;--r-sm: 3px;--r-md: 4px;--r-lg: 6px;--tap: 44px;--font: Inter, system-ui, sans-serif}*{box-sizing:border-box}html{background:var(--felt)}html,body{margin:0;height:100%}body{font-family:var(--font);font-size:var(--t-md);color:var(--ink);background:var(--felt);min-height:100vh;min-height:100dvh;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:after{content:"";position:fixed;inset:7px;z-index:1;border:1px solid var(--on-felt-line);pointer-events:none}h1,h2,h3{font-family:var(--font);text-wrap:balance}h1{line-height:1.1}h2,.title{font-size:var(--t-xl);font-weight:700;line-height:1.2;letter-spacing:-.015em}h3{font-size:var(--t-lg);line-height:1.3}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}input{font:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.back:focus-visible,.iconbtn:focus-visible,.footlink:focus-visible,.link:focus-visible{outline-color:var(--on-felt)}.die:focus-visible{outline-color:var(--ink)}main{display:block}[tabindex="-1"]:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.screen{display:none;min-height:100vh;min-height:100dvh;padding:24px 20px 28px}.screen.on{display:flex;flex-direction:column;align-items:center}.panel{position:relative;width:100%;max-width:520px;padding:26px;background:var(--card);border:2px solid var(--ink);outline:1px solid var(--ink);outline-offset:-6px;border-radius:var(--r-lg)}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;gap:10px;align-items:center}.hidden{display:none!important}.w100{width:100%}.m0{margin:0}.mt14{margin-top:14px}.center{text-align:center}.gap8{gap:8px}.gap3{gap:3px}.muted{color:var(--muted)}.note{font-size:var(--t-sm);line-height:1.45;color:var(--muted)}.center .note{text-wrap:balance}.err{color:var(--danger)}.note.err:empty{margin-top:-12px}.warn{padding:12px;font-size:var(--t-sm);line-height:1.45;color:var(--ink);background:var(--sunken);border-radius:var(--r-sm)}.sec-title{margin:10px 0 0;padding-bottom:5px;font-size:var(--t-xs);font-weight:600;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--line)}.logo{display:flex;flex-direction:column;align-items:center;margin:14px 0 20px;color:var(--on-felt);text-align:center}.logo h1{margin:6px 0 2px;font-size:3rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.logo p{margin:0;font-size:var(--t-md);font-weight:500;color:var(--on-felt-muted);text-wrap:balance}.logo-mark{width:44px;height:44px;margin-bottom:14px;background:conic-gradient(var(--green) 0 25%,var(--yellow) 25% 50%,var(--blue) 50% 75%,var(--red) 75% 100%);border:2px solid var(--card);transform:rotate(45deg)}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:12px 18px;font-size:var(--t-md);font-weight:600;letter-spacing:-.005em;border-radius:var(--r-md);transition:transform .15s ease-out,background-color .15s ease-out}.btn:not(:disabled):active{transform:scale(.96)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{color:var(--on-primary);background:var(--primary)}.btn.ghost,.btn.google{color:var(--ink);background:transparent;border:1.5px solid var(--ink)}.btn.small{width:auto;min-height:var(--tap);padding:8px 14px;font-size:var(--t-sm);border-radius:var(--r-sm)}.row>.btn{flex:1 1 0;min-width:0;padding:12px 8px;white-space:nowrap}.textbtn{min-height:var(--tap);padding:0;font-size:var(--t-sm);font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.back{display:inline-flex;align-items:center;align-self:flex-start;min-height:var(--tap);margin-bottom:12px;margin-left:max(0px,calc((100% - 520px)/2));gap:6px;padding:0 14px 0 10px;font-weight:800;color:var(--on-felt);border:1px solid var(--on-felt-line);border-radius:var(--r-sm)}.iconbtn{display:flex;align-items:center;justify-content:center;flex:none;width:var(--tap);height:var(--tap);color:var(--on-felt);border:1px solid var(--on-felt-line);border-radius:var(--r-sm)}.iconbtn svg{width:22px;height:22px}.backicon{width:18px;height:18px}.link,.footlink{display:inline-flex;align-items:center;gap:6px;min-height:var(--tap);padding:0 2px;font-size:var(--t-sm);font-weight:700;color:var(--on-felt-muted)}.link{margin-top:8px}.footlink{text-decoration:none}.footlinks{display:flex;flex-wrap:wrap;justify-content:center;gap:0 18px;width:100%;max-width:520px;margin-top:8px}@media(hover:hover){.btn.primary:not(:disabled):hover{background:var(--primary-hover)}.btn.ghost:not(:disabled):hover{background:var(--sunken)}.btn.google:hover{background:var(--sunken)}.back:hover,.iconbtn:hover{background:#f7f1e31f}.link:hover,.footlink:hover{color:var(--on-felt);text-decoration:underline}.textbtn:hover{text-decoration-thickness:2px}.seg button:not(.on):hover{color:var(--ink);background:var(--line)}.die.ready:hover{background:var(--sunken)}}label.fld{display:flex;flex-direction:column;gap:6px;font-size:var(--t-sm);font-weight:700}.inp{width:100%;min-height:var(--tap);padding:10px 14px;font-size:var(--t-md);color:var(--ink);background:#fffcf5;border:2px solid var(--control-border);border-radius:var(--r-sm)}.inp::placeholder{color:var(--muted)}.inp:focus{border-color:var(--focus)}.codeinp{font-family:var(--font);font-size:var(--t-xl);letter-spacing:.25em;text-transform:uppercase}.invite{display:flex;gap:8px;align-items:stretch}.invite .inp{flex:1;min-width:0}.invite .btn.small{min-height:48px;padding:0 18px;font-size:var(--t-md)}.switch{position:relative;flex:none;width:52px;height:var(--tap)}.switch:before{content:"";position:absolute;inset:8px 2px;background:var(--control-border);border-radius:var(--r-md);transition:background .2s}.switch:after{content:"";position:absolute;top:11px;left:5px;width:22px;height:22px;background:var(--card);border-radius:var(--r-sm);transition:left .2s}.switch.on:before{background:var(--primary)}.switch.on:after{left:25px}.opt{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--t-sm);font-weight:700}details>summary{display:flex;align-items:center;gap:8px;min-height:var(--tap);cursor:pointer;list-style:none}details>summary::-webkit-details-marker{display:none}details>summary:before{content:"";flex:none;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid currentColor;transition:transform .15s}details[open]>summary:before{transform:rotate(90deg)}details>summary.sec-title{margin:0;padding:0;border-bottom:0}.howto{padding:8px 26px}.howto[open]{padding-bottom:16px}.rules-list{margin:6px 0 0;padding-left:18px}.rules-list li{margin:6px 0;line-height:1.4}.mark{display:block;flex:none;width:24px;height:24px}.pmark{display:inline-block;flex:none;width:11px;height:11px}.who-me{display:flex;align-items:center;justify-content:space-between;gap:10px}#homeName{min-width:0;font-size:1.25rem;font-weight:700;letter-spacing:-.01em;overflow-wrap:anywhere}.gamelist{display:flex;flex-direction:column;gap:8px}.gameitem{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:8px 0;border-bottom:1px solid var(--line)}.gameitem:last-child{border-bottom:0}.gameitem .code{font-family:var(--font);font-size:var(--t-lg);font-weight:700;letter-spacing:.1em}.gameitem .who{flex:1 1 100%;order:3;font-size:var(--t-sm);color:var(--muted)}.gameitem .btn{margin-left:auto}.gameitem .mark{width:18px;height:18px}.seatwrap{display:flex;flex-direction:column;gap:16px}.seat{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 10px;align-items:center}.seatname{grid-column:2}.seg{display:flex;gap:2px;padding:3px;background:var(--sunken);border-radius:6px}.seg button{flex:1 1 0;min-width:0;min-height:var(--tap);padding:0 4px;font-size:var(--t-sm);font-weight:800;color:var(--muted);border-radius:var(--r-sm)}.seg button.on{color:var(--on-primary);background:var(--ink)}.rulesbox{padding-top:0}.rulesbox .opt{min-height:var(--tap)}.bigcode{margin:4px 0;font-family:var(--font);font-size:3.375rem;font-weight:700;letter-spacing:.18em;text-align:center;color:var(--ink)}.lseat{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:60px;padding:8px 10px;background:var(--sunken);border-radius:var(--r-md)}.lseat .nm{flex:1;min-width:40px;font-weight:800;overflow-wrap:anywhere}.lseat .btn.small{padding:8px 10px}.lseat .st{font-size:var(--t-xs);font-weight:700;color:var(--muted)}#adminMembers{gap:0}.adminrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.adminrow:first-child{padding-top:0}.adminrow:last-child{padding-bottom:0;border-bottom:0}.adminrow .email{flex:1 1 auto;min-width:0;font-size:var(--t-sm);font-weight:700;overflow-wrap:break-word}.adminrow .acts{display:flex;gap:8px}.tag{padding:3px 8px;font-size:var(--t-xs);font-weight:700;color:var(--ink);background:var(--sunken);border-radius:var(--r-sm)}#game{padding:10px 4px}#game.on{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1.5fr repeat(5,auto) 1fr;justify-items:center;height:100vh;height:100dvh}.topbar{grid-row:1}.topbar+.cards{grid-row:3}.boardwrap{grid-row:4}.boardwrap+.cards{grid-row:5}.status{grid-row:6}.hint{grid-row:7}body:has(#game.on):after{display:none}.topbar{display:flex;align-items:center;gap:8px;width:100%;max-width:680px;padding:0 4px;color:var(--on-felt)}.topbar .t{flex:1;min-width:0;margin:0;overflow-wrap:anywhere;font-size:var(--t-md);font-weight:800;letter-spacing:.1em;text-transform:uppercase}.cards{display:flex;justify-content:space-between;gap:8px;width:min(96%,680px);margin:0}.boardwrap{position:relative;width:var(--bw);height:var(--bw);margin:14px 0}#board{display:block;width:100%;height:100%}.status{width:100%;max-width:680px;min-height:24px;margin-top:10px;padding:0 6px;font-size:1.0625rem;font-weight:700;letter-spacing:-.01em;color:var(--on-felt);text-align:center}.hint{min-height:20px;margin-top:2px;font-size:var(--t-sm);font-weight:400;color:var(--on-felt-muted);text-align:center}.pcard{flex:1 1 0;display:flex;align-items:center;gap:8px;min-width:0;padding:4px;color:var(--on-felt);border:1px solid var(--on-felt-line);border-radius:var(--r-md)}.pcard.right{flex-direction:row-reverse;text-align:right}.pcard.off{visibility:hidden}.pcard.active{color:var(--ink);background:var(--card);border:2px solid var(--ink);box-shadow:0 0 0 3px var(--c)}.pcard.done{border-style:dashed}.av{position:relative;display:flex;align-items:center;justify-content:center;flex:none;width:clamp(38px,13vw,60px);height:clamp(38px,13vw,60px);font-size:1.25rem;font-weight:700;color:var(--av-ink, #fff);background:var(--av, var(--c));border-radius:var(--r-sm)}.av svg{width:62%;height:62%}.pinfo{flex:1;min-width:0;line-height:1.2}.pname{font-size:.9375rem;font-weight:700;letter-spacing:-.005em;overflow-wrap:anywhere}.psub{display:flex;align-items:center;gap:4px;overflow:hidden;font-size:var(--t-xs);font-weight:500;white-space:nowrap}.pcard.right .psub{justify-content:flex-end}.pips4{display:inline-flex;gap:3px;margin-top:3px}.pips4 i{width:8px;height:8px;background:currentColor;border-radius:1px;opacity:.3}.pips4 i.h{opacity:1}.dieslot{display:flex;align-items:center;justify-content:center;flex:none;width:46px;height:46px}.dieslot:empty{display:none}.die{position:relative;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);gap:1px;width:44px;height:44px;padding:6px;background:var(--card);border:1.5px solid var(--ink);border-radius:5px}.die i{width:8px;height:8px;background:var(--ink);border-radius:50%;place-self:center;visibility:hidden}.die.f1 i:nth-child(5),.die.f2 i:nth-child(3),.die.f2 i:nth-child(7),.die.f3 i:nth-child(3),.die.f3 i:nth-child(5),.die.f3 i:nth-child(7),.die.f4 i:nth-child(1),.die.f4 i:nth-child(3),.die.f4 i:nth-child(7),.die.f4 i:nth-child(9),.die.f5 i:nth-child(1),.die.f5 i:nth-child(3),.die.f5 i:nth-child(5),.die.f5 i:nth-child(7),.die.f5 i:nth-child(9),.die.f6 i:nth-child(1),.die.f6 i:nth-child(3),.die.f6 i:nth-child(4),.die.f6 i:nth-child(6),.die.f6 i:nth-child(7),.die.f6 i:nth-child(9){visibility:visible}.die.f1 i:nth-child(5){width:11px;height:11px;background:var(--red)}.die.blank:after{content:"?";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font);font-size:1.375rem;font-weight:700;color:var(--muted)}.die.ready{cursor:pointer}.die.ready:before{content:"";position:absolute;inset:-6px;border:2px solid var(--ink);border-radius:8px}.die.faded{opacity:.6;transform:scale(.85)}.die.rolling{animation:roll .5s linear}@keyframes roll{0%{transform:rotate(0) scale(1)}25%{transform:rotate(90deg) scale(1.12)}50%{transform:rotate(200deg) scale(.95)}75%{transform:rotate(290deg) scale(1.1)}to{transform:rotate(360deg) scale(1)}}.tok{cursor:default;transition:transform .14s ease-out}.tok.fly{transition:transform .45s cubic-bezier(.3,.7,.3,1)}.tok.can{cursor:pointer}.tok:focus{outline:none}.tok .ringc{opacity:0}.tok.can .ringc{opacity:1}.tok .ringf{opacity:0}.tok:focus-visible .ringf{opacity:1}.tok:focus-visible .ringc{stroke-width:.13}.tok .hit{pointer-events:none}.tok.can .hit{pointer-events:all}@media(min-width:1000px)and (min-height:560px){#game.on{display:grid;grid-template-columns:var(--bw) 300px;justify-items:stretch;grid-template-rows:1fr repeat(7,auto) 1fr;column-gap:28px;row-gap:10px;justify-content:center;align-items:stretch;height:100vh;height:100dvh;padding:24px}body:has(#game.on):after{display:block}.boardwrap{grid-column:1;grid-row:1 / -1;align-self:center;margin:0;outline:2px solid var(--card);outline-offset:3px}.cards{display:contents}.topbar{grid-column:2;grid-row:2;margin:0 0 6px}#card-red{grid-column:2;grid-row:3}#card-green{grid-column:2;grid-row:4}#card-blue{grid-column:2;grid-row:5}#card-yellow{grid-column:2;grid-row:6}.pcard{min-height:68px;padding:8px 12px;gap:12px}.av{width:40px;height:40px;font-size:var(--t-md)}.pcard.right{flex-direction:row;text-align:left}.pcard.right .psub{justify-content:flex-start}.pcard.off{display:none}.status{grid-column:2;grid-row:7;margin:6px 0 0;padding:0;text-align:left}.hint{grid-column:2;grid-row:8;margin:0;text-align:left}}@media(orientation:landscape)and (max-height:520px){#game.on{display:grid;grid-template-columns:var(--bw) minmax(0,1fr) minmax(0,1fr);justify-items:stretch;grid-template-rows:1fr repeat(5,auto) 1fr;gap:6px 8px;height:100vh;height:100dvh;padding:16px}body:has(#game.on):after{display:block}.boardwrap{grid-column:1;grid-row:1 / -1;align-self:center;margin:0 12px 0 0;outline:2px solid var(--card);outline-offset:3px}.av{width:40px;height:40px;font-size:var(--t-md)}.cards{display:contents}.topbar{grid-column:2 / 4;grid-row:2;margin:0}#card-red{grid-column:2;grid-row:3}#card-green{grid-column:3;grid-row:3}#card-blue{grid-column:2;grid-row:4}#card-yellow{grid-column:3;grid-row:4}.status{grid-column:2 / 4;grid-row:5;margin:2px 0 0;font-size:var(--t-sm)}.hint{grid-column:2 / 4;grid-row:6;margin:0;font-size:var(--t-xs)}}@media(max-width:360px){body:after{display:none}.screen{padding:16px 12px 24px}.av{width:38px;height:38px;font-size:var(--t-md)}.pmark{display:none}.pcard{gap:5px}.bigcode{font-size:2.75rem;letter-spacing:.14em}.panel{padding:20px}.seat{gap:6px 8px}.seg button{font-size:var(--t-xs)}}.ov{position:fixed;inset:0;z-index:50;display:none;align-items:center;justify-content:center;padding:16px;background:#05141499;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ov.on{display:flex}.ov .panel{max-height:90vh;overflow:auto;overscroll-behavior:contain}.podium{display:flex;flex-direction:column;gap:8px;margin:12px 0 18px}.prow{display:flex;align-items:center;gap:12px;padding:12px;font-weight:700;background:var(--sunken);border-radius:var(--r-md)}.prow .pl{width:36px;font-size:var(--t-md);font-weight:700;text-align:center}.toast{position:fixed;bottom:22px;left:50%;z-index:60;max-width:92vw;padding:12px 18px;font-weight:700;color:var(--on-primary);text-align:center;border:1px solid var(--on-felt-line);background:var(--ink);border-radius:var(--r-md);opacity:0;pointer-events:none;transform:translate(-50%) translateY(30px);transition:opacity .3s,transform .3s}.toast.on{opacity:1;transform:translate(-50%) translateY(0)}.confetti{position:fixed;inset:0;z-index:55;overflow:hidden;pointer-events:none}.confetti i{position:absolute;top:-20px;width:10px;height:14px;border-radius:2px;animation:fall linear forwards}@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.confetti{display:none}}.grow{flex:1;min-width:0;overflow-wrap:anywhere}.prow-score{font-size:var(--t-sm);font-weight:500;color:var(--muted);white-space:nowrap}
