.game-wrap{max-width:760px;padding-top:20px;--twirlseed-muted:#696f64}.game-wrap .top{margin-bottom:18px}.game-wrap h1{margin-bottom:7px}.game-wrap .lede{margin-bottom:17px}[hidden]{display:none!important}.tabs{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:min(100%,410px);margin:0 auto 10px;padding:4px;border:1px solid var(--rule);border-radius:999px;background:var(--card)}.tabs::before{position:absolute;z-index:-1;top:4px;bottom:4px;left:5px;width:var(--tab-pill-width,33%);content:"";border-radius:999px;background:var(--forest);box-shadow:0 2px 5px rgba(14,32,24,.2);transform:translateX(var(--tab-pill-offset,0));transition:transform 280ms cubic-bezier(.3, 1.25, .5, 1)}.tab{position:relative;z-index:1;min-width:0;min-height:44px;padding:8px 12px;border:0;border-radius:999px;background:0 0;color:var(--fg);font-size:15px;font-weight:650;touch-action:manipulation}.tab[aria-selected=true]{background:0 0;color:#eef0e6;box-shadow:none}.tab:disabled{cursor:wait}.options{min-height:0;margin:16px 0 10px}.coin-options{display:grid;place-items:center}.coin-options p{margin:0;color:var(--twirlseed-muted);font-size:14px;text-align:center}.setting-label{color:var(--twirlseed-muted);font-size:13px;font-weight:650}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.dice-count{margin-bottom:6px}.dice-count .setting-label,.number-count .setting-label{white-space:nowrap}.stepper{display:inline-flex;align-items:center;gap:5px}.step-button{display:grid;width:44px;height:44px;place-items:center;padding:0;border:1px solid var(--rule);border-radius:12px;background:var(--card);color:var(--fg);font-size:24px;line-height:1;touch-action:manipulation}.stepper input{width:56px;height:44px;padding:5px 3px;border:1px solid var(--rule);border-radius:10px;background:var(--card);color:var(--fg);font:650 17px/1 var(--sans);font-variant-numeric:tabular-nums;text-align:center}.kind-row{display:grid;grid-template-columns:1fr;gap:5px}.chips{display:flex;flex-wrap:wrap;gap:5px}.kind-row .chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.kind-row .choice{width:100%;padding-inline:4px}.choice{min-width:44px;min-height:44px;padding:6px 11px;border:1px solid var(--rule);border-radius:999px;background:var(--card);color:var(--fg);font-size:13px;line-height:1;touch-action:manipulation}.choice[aria-pressed=true]{border-color:var(--rust);background:color-mix(in srgb,var(--rust) 18%,var(--card));box-shadow:inset 0 0 0 1px var(--rust);font-weight:700}.custom-sides{display:inline-flex;align-items:center;gap:8px;color:var(--twirlseed-muted);font-size:13px}.custom-sides input{width:100px;height:44px;padding:6px 10px;border:1px solid var(--rule);border-radius:10px;background:var(--card);color:var(--fg);font:600 16px/1 var(--sans);font-variant-numeric:tabular-nums}.setting-error{min-height:0;margin:4px 0 0;color:var(--bad);font-size:13px;line-height:1.25}.setting-error:empty{display:none}.range-fields{display:flex;align-items:end;gap:8px}.range-fields label{display:grid;flex:1 1 0;gap:4px;color:var(--twirlseed-muted);font-size:12px;font-weight:650}.range-entry{position:relative;display:block;min-width:0}.range-fields input{width:100%;min-width:0;height:44px;padding:7px 52px 7px 10px;border:1px solid var(--rule);border-radius:10px;background:var(--card);color:var(--fg);font:600 16px/1 var(--sans);font-variant-numeric:tabular-nums}.range-fields .sign-toggle{position:absolute;top:0;right:0;display:grid;width:44px;height:44px;place-items:center;padding:0;border:1px solid var(--rule);border-radius:0 10px 10px 0;background:color-mix(in srgb,var(--card) 80%,var(--forest) 12%);color:var(--fg);font:600 20px/1 var(--sans);touch-action:manipulation}.range-fields .sign-toggle:focus-visible{z-index:1;outline:3px solid var(--rust);outline-offset:2px}.range-arrow{align-self:center;margin-top:14px;color:var(--twirlseed-muted);font-size:13px}.number-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px}.range-chips{gap:4px}.range-chips .choice{min-height:44px;padding-inline:9px}.number-count{gap:7px}.number-count .step-button{width:44px;height:44px}.number-count .stepper{gap:3px}.number-count .stepper input{width:44px;height:44px;border:0;background:0 0}.switch-row{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin-top:3px;color:var(--fg);font-size:14px;font-weight:600}.switch{position:relative;width:54px;height:44px;padding:0;border:0;background:0 0;touch-action:manipulation}.switch::before{position:absolute;inset:9px 0;content:"";border:1px solid var(--rule);border-radius:999px;background:var(--card)}.switch::after{position:absolute;top:13px;left:4px;width:18px;height:18px;content:"";border-radius:50%;background:var(--twirlseed-muted);transition:transform 180ms cubic-bezier(.2,.75,.28,1),background 180ms ease}.switch[aria-checked=true]::before{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 24%,var(--card))}.switch[aria-checked=true]::after{transform:translateX(27px);background:var(--ok)}.stage-card{position:relative;margin-top:2px}.stage-label{display:flex;align-items:baseline;justify-content:center;gap:8px;min-height:20px;margin-bottom:3px;font-size:14px;font-weight:650}.stage-label small{color:var(--twirlseed-muted);font:600 12px/1 var(--sans);letter-spacing:.04em}.stage-tools{position:absolute;z-index:8;top:28px;right:7px;display:flex;gap:5px}.sound-toggle,.vibration-toggle{display:grid;width:44px;height:44px;place-items:center;padding:10px;border:1px solid var(--rule);border-radius:50%;background:color-mix(in srgb,var(--card) 84%,transparent);color:var(--fg);touch-action:manipulation}.sound-toggle svg,.vibration-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sound-toggle svg path:first-child{fill:currentColor;stroke:none}.sound-toggle .sound-wave{fill:none}.sound-toggle.muted .sound-wave{display:none}.vibration-toggle[aria-pressed=false]{opacity:1}.stage{--light-x:42%;--light-y:34%;position:relative;display:grid;height:clamp(300px,44vh,400px);height:clamp(300px,44svh,400px);min-height:300px;place-items:center;overflow:hidden;border:1px solid var(--rule);border-radius:22px;background:radial-gradient(ellipse at var(--light-x) var(--light-y),color-mix(in srgb,var(--card) 82%,var(--rust) 12%) 0,var(--bg) 70%);perspective:950px;cursor:pointer;touch-action:manipulation}.stage[data-tool=coin],.stage[data-tool=dice]{cursor:grab;touch-action:none}.stage[data-tool=dice]{perspective:clamp(1600px,220vw,3000px)}.stage::after{position:absolute;inset:0;content:"";border-radius:inherit;background:linear-gradient(145deg,rgba(255,255,255,.12),transparent 34%);pointer-events:none}.stage.busy{cursor:wait}.stage:active:not(.busy){cursor:grabbing}.shake-toggle{position:absolute;z-index:8;top:9px;left:9px;display:inline-flex;align-items:center;gap:7px;min-height:46px;padding:7px 13px;border:1px solid color-mix(in srgb,var(--rust) 44%,var(--rule));border-radius:999px;background:color-mix(in srgb,var(--card) 94%,transparent);color:var(--fg);box-shadow:0 2px 8px rgba(24,28,22,.1);font-size:13px;font-weight:650;touch-action:manipulation}.shake-toggle svg{width:19px;height:19px;flex:0 0 auto;fill:none;stroke:var(--rust);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.motion-hint{min-height:20px;margin:6px 4px 0;color:var(--twirlseed-muted);font-size:13px;line-height:1.4;text-align:center}.twirlseed-three-canvas{position:absolute;z-index:2;inset:0;display:block;width:100%;height:100%;pointer-events:none}.stage[data-webgl-dice=true] .dice-board{visibility:hidden}.stage.dice-warming .die-wrap{animation:twirlseed-warm-throw 430ms cubic-bezier(.18,.72,.28,1) var(--die-delay,0ms) both}.stage.dice-warming .die-cube{animation:twirlseed-warm-tumble 430ms cubic-bezier(.18,.72,.28,1) var(--die-delay,0ms) both}.stage.dice-warming .flat-die{animation:twirlseed-warm-tumble 430ms cubic-bezier(.18,.72,.28,1) var(--die-delay,0ms) both}@keyframes twirlseed-warm-throw{0%{translate:0 30px;rotate:-15deg;scale:.82}44%{translate:0 -46px;rotate:10deg;scale:1.08}78%{translate:0 8px;rotate:-3deg;scale:1.02}100%{translate:0 0;rotate:0deg;scale:1}}@keyframes twirlseed-warm-tumble{0%{transform:rotateX(0) rotateY(0)}60%{transform:rotateX(260deg) rotateY(230deg)}100%{transform:rotateX(390deg) rotateY(340deg)}}.twirlseed-debug{position:fixed;z-index:30;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));width:min(374px,calc(100vw - 16px));max-height:min(32vh,220px);overflow:auto;padding:8px 10px;border:1px solid var(--rule);border-radius:10px;background:color-mix(in srgb,var(--card) 96%,transparent);box-shadow:0 3px 14px rgba(0,0,0,.2);color:var(--fg);font:10px/1.15 ui-monospace,SFMono-Regular,Consolas,monospace;pointer-events:none}.twirlseed-debug strong{display:block;margin-bottom:5px;font:700 12px/1.2 var(--sans)}.twirlseed-debug dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 9px;margin:0}.twirlseed-debug dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px;min-width:0}.twirlseed-debug dt{color:var(--twirlseed-muted);overflow-wrap:anywhere}.twirlseed-debug dd{margin:0;max-width:90px;overflow-wrap:anywhere;text-align:right}.floor-shadow{position:absolute;z-index:0;bottom:8%;left:50%;width:min(46%,290px);height:24px;border-radius:50%;background:radial-gradient(ellipse,rgba(22,24,17,.34),rgba(22,24,17,0) 70%);opacity:var(--shadow-opacity, .34);transform:translateX(calc(-50% + var(--shadow-offset-x,0))) scale(var(--shadow-scale,1));transform-origin:center;will-change:transform,opacity}.stage-art{position:relative;z-index:1;display:grid;width:100%;height:100%;place-items:center;transform-style:preserve-3d}.stage-art[data-tool=coin] .dice-board,.stage-art[data-tool=coin] .number-board,.stage-art[data-tool=dice] .coin,.stage-art[data-tool=dice] .number-board,.stage-art[data-tool=number] .coin,.stage-art[data-tool=number] .dice-board{display:none}.coin{position:relative;width:min(64vw,240px);aspect-ratio:1;transform-style:preserve-3d;border-radius:50%;will-change:transform}.coin-slices{position:absolute;inset:0;transform-style:preserve-3d;border-radius:50%}.coin-face::after{position:absolute;inset:0;content:"";border-radius:50%;background:linear-gradient(115deg,transparent 35%,rgba(255,248,214,.65) 50%,transparent 65%);background-size:300% 300%;background-position:var(--spec,50%) 50%;mix-blend-mode:screen;pointer-events:none}.coin-back{background:radial-gradient(circle at 73% 20%,#f8e7a2 0,#e4bc5e 27%,#bf872b 68%,#9e681e 100%)}.rim-strip{position:absolute;top:50%;left:50%;width:19px;height:14px;margin:-7px 0 0 -9.5px;border:1px solid rgba(99,61,14,.55);background:repeating-linear-gradient(90deg,#7d4f15 0 1px,#e2b75a 1px 2.5px);backface-visibility:hidden}.coin-face{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;border:1px solid #865619;border-radius:50%;background:radial-gradient(circle at 27% 20%,#f8e7a2 0,#e4bc5e 27%,#bf872b 68%,#9e681e 100%);box-shadow:inset 0 0 0 2px rgba(255,235,166,.72),inset 0 0 0 7px rgba(133,83,18,.37),inset 0 0 20px rgba(113,69,13,.38),0 2px 3px rgba(0,0,0,.2);backface-visibility:hidden}.coin-front{transform:translateZ(7px)}.coin-back{transform:rotateY(180deg) translateZ(7px)}.bead-ring{position:absolute;inset:7.5%;border:1px solid rgba(107,68,18,.8);border-radius:50%;box-shadow:inset 0 0 0 2px rgba(255,228,147,.45),0 0 0 1px rgba(255,227,146,.6)}.bead-ring::after{position:absolute;inset:4px;content:"";border:2px dotted rgba(118,75,19,.72);border-radius:50%}.twirlseed-mark{position:relative;width:64%;height:64%;overflow:visible;color:#704819;filter:drop-shadow(1px 1px 0 rgba(255, 239, 175, .86))}.hop-mark,.kettle-mark{position:relative;width:64%;height:64%;overflow:visible}.hop-mark g,.kettle-mark g{fill:none;stroke:#704819;stroke-width:3.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(1px 1px 0 rgba(255, 239, 175, .86))}.hop-mark g{stroke-width:4.4}.twirlseed-mark>path:first-child{fill:#704819}.twirlseed-mark .seed-accent{fill:var(--rust)}.twirlseed-mark--back{transform:rotate(180deg)}.dice-board{position:absolute;inset:0;width:100%;height:100%;transform-style:preserve-3d}.die-wrap{position:absolute;top:50%;left:50%;display:grid;width:var(--die-size,60px);aspect-ratio:1;place-items:center;transform-style:preserve-3d;will-change:transform}.die-cube{position:relative;width:var(--die-size);height:var(--die-size);transform-style:preserve-3d;will-change:transform}.cube-core{position:absolute;inset:1px;border-radius:2px;background:#d9cfb9;backface-visibility:hidden;-webkit-backface-visibility:hidden}.cube-face{position:absolute;inset:0;display:grid;place-items:center;border:1px solid #aa9d7f;border-radius:clamp(3px,calc(var(--die-size) * .08),6px);background:linear-gradient(145deg,#fffef6 0,#ece5d5 55%,#d7cdb7 100%);box-shadow:inset 2px 2px 6px rgba(255,255,255,.9),inset -3px -4px 7px rgba(71,59,36,.2);backface-visibility:hidden;-webkit-backface-visibility:hidden}.cube-face.face-front{transform:rotateY(0) translateZ(calc(var(--die-size)/ 2))}.cube-face.face-back{transform:rotateY(180deg) translateZ(calc(var(--die-size)/ 2))}.cube-face.face-right{transform:rotateY(90deg) translateZ(calc(var(--die-size)/ 2))}.cube-face.face-left{transform:rotateY(-90deg) translateZ(calc(var(--die-size)/ 2))}.cube-face.face-top{transform:rotateX(90deg) translateZ(calc(var(--die-size)/ 2))}.cube-face.face-bottom{transform:rotateX(-90deg) translateZ(calc(var(--die-size)/ 2))}.pip-grid{display:grid;grid-template:repeat(3,1fr)/repeat(3,1fr);width:67%;height:67%}.pip{display:block;width:76%;aspect-ratio:1;align-self:center;justify-self:center;border-radius:50%;background:#29332e;box-shadow:inset 0 1.5px 1.5px rgba(0,0,0,.5),inset 0 -1px 0 rgba(255,255,255,.25)}.one-face .pip{background:#b8492e}.p1{grid-area:1/1}.p2{grid-area:1/2}.p3{grid-area:1/3}.p4{grid-area:2/1}.p5{grid-area:2/2}.p6{grid-area:2/3}.p7{grid-area:3/1}.p8{grid-area:3/2}.p9{grid-area:3/3}.flat-die{position:relative;z-index:1;display:block;width:100%;height:100%;overflow:visible;will-change:transform}.die-shadow{position:absolute;z-index:0;top:66%;left:50%;width:76%;height:24%;border-radius:50%;background:radial-gradient(ellipse,rgba(30,29,20,.28),rgba(30,29,20,0) 72%);opacity:var(--shadow-opacity, .34);transform:translate(-50%,-50%) scale(var(--shadow-scale,1));transform-origin:center;will-change:transform,opacity}.die-face-shape{stroke:#a99c7e;stroke-width:2.2;stroke-linejoin:round}.die-inner-ring{fill:none;stroke:rgba(136,119,83,.54);stroke-width:1.5}.die-inner-triangle{fill:rgba(136,119,83,.06);stroke:rgba(136,119,83,.38);stroke-width:1.2}.flat-value{fill:#28312b;font-family:var(--serif);font-weight:700;font-variant-numeric:tabular-nums}.value-underline{stroke:#28312b;stroke-width:1.7;stroke-linecap:round}.number-board{position:absolute;inset:0;display:grid;grid-template-columns:repeat(var(--number-columns,1),minmax(0,1fr));align-content:center;justify-content:center;gap:7px;width:100%;max-height:100%;padding:40px 13px 14px}.number-tile{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:38px;padding:0 5px;overflow:hidden;border:1px solid #ded5c3;border-radius:11px;background:linear-gradient(145deg,#fffdf7,#eee8da);box-shadow:0 3px 7px rgba(34,32,22,.09),inset 1px 1px 2px rgba(255,255,255,.9);color:#263128;font:650 clamp(12px, var(--tile-font, 34px), 38px)/1.15 var(--serif);font-variant-numeric:tabular-nums}.digit-window{display:inline-block;height:1.25em;overflow:hidden;vertical-align:bottom}.digit-reel{display:flex;flex-direction:column;line-height:1.25em;will-change:transform}.digit-reel>span{display:block;height:1.25em;min-height:1.25em;text-align:center}.number-sign{display:inline-block;padding-right:.015em}.toss-button{position:sticky;z-index:10;bottom:calc(12px + env(safe-area-inset-bottom));display:block;width:min(100%,320px);min-height:52px;margin:9px auto 0;color:var(--ink);font-size:18px;font-weight:700;box-shadow:0 5px 12px rgba(108,52,31,.16);touch-action:manipulation}.toss-button.btn.primary{color:var(--ink)}.result-area{min-height:56px;margin:8px 0 0;text-align:center;font-variant-numeric:tabular-nums}.result{min-height:35px;margin:0;font:600 clamp(26px, 7vw, 36px)/1.08 var(--serif);letter-spacing:.005em}.result[data-multiple=true]{font-size:clamp(20px, 5.4vw, 29px)}.breakdown{max-width:100%;margin:4px auto 0;color:var(--twirlseed-muted);font-size:14px;line-height:1.35;overflow-wrap:anywhere}.breakdown:empty{display:none}.history-area{margin:7px 0 0}.history-heading{display:flex;align-items:center;gap:10px;min-height:34px}.history-heading p{margin:0;color:var(--twirlseed-muted);font-size:13px}.history-heading #history-label{color:var(--fg);font-weight:650}.coin-tally{flex:1;text-align:right;font-variant-numeric:tabular-nums}.clear-button{min-width:48px;min-height:44px;margin-left:auto;padding:5px 8px;border:0;border-radius:8px;background:0 0;color:var(--twirlseed-muted);font-size:13px;text-decoration:underline;text-underline-offset:2px;touch-action:manipulation}.history{display:flex;flex-wrap:wrap;gap:6px;min-height:30px}.history-chip{display:inline-flex;align-items:center;max-width:100%;min-height:30px;overflow:hidden;padding:4px 10px;border:1px solid var(--rule);border-radius:999px;background:var(--card);color:var(--twirlseed-muted);font-size:12px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.fairness{margin-top:20px;padding:12px 14px;border:1px solid var(--rule);border-radius:14px;background:var(--card)}.fairness summary{min-height:24px;cursor:pointer;font-weight:650}.fairness p{margin:10px 0 0;color:var(--twirlseed-muted);font-size:14px}.fairness a{color:var(--fg);text-decoration-color:var(--rust);text-underline-offset:2px}.game-wrap .foot{margin-top:18px}.tool-note{margin:18px 0 0;padding:0 4px;color:var(--twirlseed-muted);font-size:14px}.site-footer{display:flex;align-items:baseline;justify-content:space-between;gap:14px 24px;padding-top:0;padding-bottom:28px}.site-footer .foot{margin:0;font-size:14px;color:var(--muted)}.site-footer .foot a{text-decoration-color:var(--rust);text-underline-offset:3px}.footer-nav{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px}.footer-nav a{text-decoration-color:var(--rule);text-underline-offset:3px}.footer-nav a:hover,.site-footer .foot a:hover{text-decoration-color:var(--rust)}.top{align-items:center}.game-wrap h1{margin-top:4px}.game-wrap .lede{margin-bottom:18px}@media (prefers-color-scheme:dark){.brand-lockup{color:#eef0e6}}@media (max-width:520px){.site-footer{display:block}.footer-nav{margin-top:14px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ios-haptic-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}@media (prefers-color-scheme:dark){.number-tile{border-color:rgba(238,240,230,.2);background:linear-gradient(145deg,#25493a,#1a382d);box-shadow:0 3px 8px rgba(0,0,0,.2),inset 1px 1px 2px rgba(255,255,255,.08);color:#f2f2e9}.die-face-shape{stroke:#b7aa8a}.flat-value,.value-underline{fill:#26352d;stroke:#26352d}}[role=button]:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--rust);outline-offset:3px}button{-webkit-tap-highlight-color:transparent}.btn,.choice,.sound-toggle,.step-button,.tab,.vibration-toggle{transition:transform 220ms cubic-bezier(.2,.8,.3,1.4)}button:active:not(:disabled){transform:scale(.95);transition-duration:60ms}.toss-button:active:not(:disabled){transform:scale(.97) translateY(1px);box-shadow:0 2px 5px rgba(108,52,31,.16)}@media (hover:hover) and (pointer:fine){.choice:hover,.step-button:hover,button:hover:not(:disabled){border-color:var(--rust)}}input{accent-color:var(--rust)}@media (min-width:700px){.game-wrap{padding-top:24px}.game-wrap .top{margin-bottom:22px}.game-wrap .lede{margin-bottom:21px}.options{margin-bottom:12px}.dice-options{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start;column-gap:18px}.dice-count{margin:0}.kind-row{grid-column:2;grid-row:1/span 2}.dice-options .setting-error{grid-column:1/-1}.number-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;column-gap:20px}.number-bottom{margin:0}.switch-row{grid-column:2}.number-options .setting-error{grid-column:1/-1}}@media (prefers-color-scheme:dark){.game-wrap{--twirlseed-muted:var(--muted)}}@media (max-width:390px){.game-wrap{padding-inline:16px}.choice{padding-inline:9px}.number-bottom{align-items:center;gap:4px;flex-wrap:wrap}.range-chips{gap:3px}.range-chips .choice{min-height:44px;padding-inline:7px;font-size:12px}.number-count .step-button{width:44px;height:44px}.number-count .stepper input{width:44px;height:44px}.dice-board{gap:5px;padding-inline:10px}}@media (max-width:480px) and (max-height:700px){.stage[data-tool=number] .number-board{transform:translateY(-92px)}}@media (prefers-reduced-motion:reduce){*,::after,::before{scroll-behavior:auto!important;transition-duration:NaNs!important}}.options{min-height:0}.game-wrap .top{margin-bottom:13px}.game-wrap .lede{margin-bottom:13px}.stage-card{margin-top:0}.stage{height:clamp(300px,44svh,400px);min-height:300px;border:8px solid #95683b;border-radius:25px;background:radial-gradient(ellipse at var(--light-x) var(--light-y),rgba(127,148,102,.25),transparent 54%),repeating-linear-gradient(4deg,rgba(222,232,206,.018) 0 1px,transparent 1px 4px),linear-gradient(145deg,#28503d,#183b2d 60%,#122c22);box-shadow:inset 0 0 0 3px rgba(228,190,128,.58),inset 0 0 20px rgba(0,0,0,.28),0 11px 24px rgba(47,34,20,.17);perspective:950px}.stage::after{border-radius:17px;background:linear-gradient(140deg,rgba(255,255,255,.07),transparent 38%,rgba(0,0,0,.09))}.stage-tools{top:27px;right:16px;gap:6px}.sound-toggle,.vibration-toggle{width:44px;height:44px;padding:10px;border-color:rgba(245,236,211,.38);border-radius:999px;background:rgba(242,239,219,.82);color:#24372d;box-shadow:0 2px 7px rgba(21,29,22,.15);backdrop-filter:blur(8px)}.sound-toggle svg,.vibration-toggle svg{width:19px;height:19px}.shake-toggle{top:7px;left:10px;min-height:44px;padding:6px 11px;border-color:rgba(245,236,211,.4);background:rgba(242,239,219,.86);box-shadow:0 2px 7px rgba(21,29,22,.15);backdrop-filter:blur(8px)}.motion-hint{min-height:18px;margin-top:4px}.stage[data-tool=dice] .twirlseed-three-canvas{border-radius:16px}.number-options{gap:8px 15px}.range-fields{align-items:center;gap:0;min-height:60px;padding:7px 10px;border:1px solid var(--rule);border-radius:17px;background:var(--card);box-shadow:0 4px 12px rgba(28,35,28,.06),inset 0 1px rgba(255,255,255,.55)}.range-fields label{gap:2px;padding:0 8px;color:var(--twirlseed-muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.range-fields input{height:44px;padding:0;border:0;border-radius:0;background:0 0;color:var(--fg);font:600 clamp(19px, 5.4vw, 27px)/1 var(--serif);letter-spacing:-.035em}.range-fields input:focus-visible{outline:0;box-shadow:inset 0 -2px var(--rust)}.range-arrow{margin:9px 1px 0;color:var(--rust);font:italic 14px var(--serif)}.number-bottom{margin-top:0}.range-chips .choice{min-height:44px;padding-inline:9px;border-radius:12px;background:color-mix(in srgb,var(--card) 88%,var(--forest) 12%)}.number-count{flex:1;justify-content:flex-end}.number-count .setting-label{color:var(--twirlseed-muted);font-size:12px}.number-count .step-button{width:44px;height:44px;border-radius:12px}.number-count .stepper input{width:36px;height:44px;font:700 18px var(--serif)}.switch-row{margin-top:-3px;padding:0 3px}.number-options .setting-error{grid-column:1/-1}.number-board{z-index:2;grid-template-columns:repeat(var(--number-columns,1),minmax(0,1fr));align-content:center;gap:6px 9px;padding:57px 13px 13px}.stage[data-tool=number] .number-board{transform:none}.flap-group{display:flex;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:var(--flap-height,46px);padding:3px 5px;border:1px solid rgba(220,210,178,.22);border-radius:13px;background:linear-gradient(145deg,rgba(12,31,24,.65),rgba(21,49,37,.58));box-shadow:0 4px 10px rgba(7,20,15,.19),inset 0 1px rgba(255,255,255,.07)}.flap-cell{position:relative;display:block;flex:0 1 var(--flap-width,30px);width:var(--flap-width,30px);height:var(--flap-height,46px);min-width:0;perspective:360px;border-radius:4px;color:#f2ead8;font:650 var(--flap-font, 37px)/1 var(--serif);font-variant-numeric:tabular-nums;text-align:center;text-shadow:0 1px 1px rgba(0,0,0,.3);filter:drop-shadow(0 2px 2px rgba(0,0,0,.2))}.flap-bottom,.flap-leaf,.flap-top{position:absolute;left:0;display:block;width:100%;height:50%;overflow:hidden;background:linear-gradient(160deg,#33483b,#1c3027);backface-visibility:hidden}.flap-top{top:0;border-radius:4px 4px 1px 1px;background:linear-gradient(180deg,#3a5142,#273b30)}.flap-bottom{bottom:0;border-top:1px solid rgba(5,17,12,.85);border-radius:1px 1px 4px 4px;background:linear-gradient(180deg,#1b2b23,#273b30)}.flap-turn{position:absolute;z-index:3;inset:0 0 50%;transform-origin:50% 100%;transform-style:preserve-3d}.flap-turn.is-turning{transform:rotateX(-180deg);transition:transform 82ms cubic-bezier(.45,.08,.72,.42)}.flap-leaf{inset:0;height:100%;border-radius:4px 4px 1px 1px}.flap-leaf-front{background:linear-gradient(180deg,#3a5142,#273b30)}.flap-shade{position:absolute;inset:0;background:#050806;opacity:0;pointer-events:none;will-change:opacity}.flap-leaf-back{transform:rotateX(180deg);background:linear-gradient(180deg,#263b30,#172820)}.flap-sign{color:#d9bd8c}.copy-button{display:block;min-width:54px;min-height:44px;margin:4px auto 0;padding:5px 12px;border:1px solid var(--rule);border-radius:999px;background:var(--card);color:var(--twirlseed-muted);font-size:13px;touch-action:manipulation}.result{animation:result-arrive 380ms cubic-bezier(.18,.78,.2,1)}@keyframes result-arrive{from{opacity:.45;transform:translateY(5px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-color-scheme:dark){.stage{border-color:#805a35;background:radial-gradient(ellipse at var(--light-x) var(--light-y),rgba(100,136,102,.2),transparent 54%),repeating-linear-gradient(4deg,rgba(222,232,206,.018) 0 1px,transparent 1px 4px),linear-gradient(145deg,#28503d,#183b2d 60%,#122c22)}.range-fields{background:color-mix(in srgb,var(--card) 95%,#28483a);box-shadow:0 4px 14px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.04)}.flap-group{border-color:rgba(230,238,216,.14);background:linear-gradient(145deg,rgba(9,25,19,.78),rgba(14,39,28,.72))}}@media (min-width:700px){.options{min-height:0}.number-options{grid-template-columns:minmax(0,.92fr) minmax(0,1fr)}.number-board{padding-inline:19px}.range-fields{min-height:68px}}@media (max-width:390px){.options{min-height:0}.number-bottom{flex-wrap:nowrap;gap:4px}.range-chips{flex:0 1 auto;gap:3px}.range-chips .choice{min-width:38px;padding-inline:5px;font-size:11px}.number-count{gap:4px}.number-count .setting-label{display:none}.number-board{gap:5px;padding-inline:9px}.flap-group{gap:1px;padding-inline:3px}}@media (max-width:480px){.stage{height:clamp(300px,40svh,360px)}}.setting-error{height:3em;min-height:3em;overflow-wrap:anywhere}.setting-error:empty{display:block;visibility:hidden}.number-count-row{justify-content:space-between;gap:6px}.number-count-row>span{color:var(--twirlseed-muted);font-size:12px}.number-count-row>span{white-space:nowrap}.number-count-row .stepper{gap:3px}.number-count-row .step-button{width:40px;height:44px}.number-count-row .stepper input{width:52px;min-width:52px;height:44px;padding-inline:2px;border:0;background:0 0;font:700 18px/1 var(--serif)}.number-controls-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.number-controls-row .switch-row{min-width:0;margin:0;padding-inline:3px}.number-bottom{justify-content:flex-start}.number-count .setting-label{display:none}.number-count .stepper input{width:52px;min-width:52px}.number-options .setting-error{min-height:1.25em}.stage[data-tool=coin] .coin{width:min(58vw,220px)}.floor-shadow{bottom:10%}.motion-hint,.tray-toast{position:absolute;z-index:9;left:50%;width:max-content;max-width:calc(100% - 28px);margin:0;padding:7px 12px;border:1px solid rgba(228,190,128,.48);border-radius:999px;background:rgba(21,42,32,.9);color:#f1ebdc;box-shadow:0 2px 9px rgba(0,0,0,.22);font:600 12px/1.25 var(--sans);text-align:center;pointer-events:none;opacity:0;transform:translate(-50%,5px);transition:opacity 180ms ease,transform 180ms ease}.motion-hint{bottom:10px;top:auto}.tray-toast{bottom:auto;top:10px}.motion-hint:not([hidden]),.tray-toast.is-visible{opacity:1;transform:translate(-50%,0)}.tray-toast[hidden]{display:none}.number-actions{display:grid;gap:8px;margin:9px 0 0}.board-switches{display:flex;justify-content:center;flex-wrap:wrap;gap:6px}.segmented{display:inline-flex;min-height:44px;padding:3px;border:1px solid var(--rule);border-radius:13px;background:var(--card)}.segment{min-height:36px;padding:5px 10px;border:0;border-radius:10px;background:0 0;color:var(--twirlseed-muted);font:600 12px/1.1 var(--sans);white-space:nowrap;touch-action:manipulation}.segment[aria-pressed=true]{background:color-mix(in srgb,var(--forest) 15%,var(--card));color:var(--fg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--forest) 40%,var(--rule))}.number-output-actions{display:flex;justify-content:center;gap:8px}.copy-button{min-width:84px;min-height:44px;margin:0}.copy-button:disabled{opacity:.5}.result-area.sr-only{position:absolute}@font-face{font-family:TwirlseedFlap;src:url("/app/fonts/BarlowCondensed-SemiBold-digits.woff2") format("woff2");font-style:normal;font-weight:600;font-display:block}.number-board{position:absolute;z-index:2;inset:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%;max-height:none;padding:50px 14px 6px;transform:none;pointer-events:none}.stage[data-tool=number] .number-board{transform:none}.stage[data-tool=number] .number-board[data-single=true]{transform:translateY(-7.5%)}.number-list{display:grid;grid-auto-flow:column;grid-template-columns:repeat(var(--board-columns,1),max-content);grid-template-rows:repeat(var(--board-rows,1),auto);align-items:center;justify-content:center;justify-items:stretch;gap:var(--row-gap,8px) var(--column-gap,20px);width:100%;min-width:0}.number-row{display:grid;grid-template-columns:var(--rank-width,29px) var(--group-width);align-items:center;gap:6px;width:max-content;min-width:0;min-height:max(var(--cell-height,108px),42px);padding:0;border:0;border-radius:5px;background:0 0;color:inherit;text-align:left;cursor:copy;pointer-events:auto}.number-row:focus-visible{outline-offset:1px}.rank-tag{overflow:hidden;color:#c7a76c;font:600 10px/1 var(--sans);letter-spacing:.08em;text-align:left;text-transform:uppercase;white-space:nowrap}.number-row.is-landed .rank-tag{color:#e1c487}.number-value{display:flex;align-items:center;justify-content:flex-end;width:var(--group-width);min-width:0}.flap-cell{position:relative;display:block;flex:0 0 var(--cell-width,76px);width:var(--cell-width,76px);height:var(--cell-height,108px);overflow:hidden;border-radius:8%;background:#1a201d;color:#f1ebdc;font-family:TwirlseedFlap,"Arial Narrow",sans-serif;font-size:calc(var(--cell-height, 108px) * .78);font-weight:600;line-height:1;text-align:center;box-shadow:0 3px 6px rgba(5,15,10,.28),0 1px 1px rgba(5,15,10,.18)}.flap-cell::after{position:absolute;z-index:5;top:50%;right:0;left:0;content:"";border-top:1px solid rgba(5,10,7,.82);box-shadow:0 1px rgba(255,255,255,.04)}.flap-bottom,.flap-leaf,.flap-top{position:absolute;left:0;display:block;width:100%;height:50%;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden}.flap-top{top:0;background:#1b211e}.flap-bottom{bottom:0;background:#1a201d}.flap-glyph{position:absolute;top:0;left:0;display:grid;width:100%;height:var(--cell-height,108px);place-items:center;color:inherit;font:inherit;line-height:1}.flap-sign .flap-glyph{transform:translateY(-4%)}.flap-bottom .flap-glyph,.flap-leaf-back .flap-glyph{top:calc(var(--cell-height,108px)/ -2)}.flap-turn{position:absolute;z-index:4;top:0;left:0;width:100%;height:50%;transform-origin:50% 100%;transform-style:preserve-3d}.flap-leaf{inset:0;height:100%;background:#1b211e}.flap-leaf-back{transform:rotateX(180deg);background:#1a201d}.single-number-row{grid-template-columns:var(--group-width);width:var(--group-width);justify-items:center}.single-number-row .number-value{justify-content:center}.flap-separator{display:inline-block;flex:0 0 auto;height:var(--cell-height,108px);color:#c7a76c;font:600 calc(var(--cell-height, 108px) * .24)/1 var(--serif);text-align:center}.number-caption{margin:11px 0 0;color:rgba(237,231,213,.72);font:500 12px/1.2 var(--sans);text-align:center}.number-board[data-columns="1"]{flex-direction:column}.number-board[data-columns="2"]{padding-inline:10px}.number-board[data-columns="2"] .number-list{min-height:0}.number-board[data-columns="2"] .number-row{gap:4px}.number-board[data-columns="2"] .rank-tag{font-size:9px;letter-spacing:.04em}.number-board[data-columns="2"] .flap-separator{font-size:calc(var(--cell-height, 108px) * .2)}.game-wrap[data-tool=number] .toss-button{position:relative;bottom:auto}@media (max-width:520px){.number-actions{gap:6px}.board-switches{gap:4px}.segment{padding-inline:8px;font-size:11px}.number-board[data-columns="2"]{padding-inline:6px}.number-board[data-columns="2"] .number-row{gap:3px}}@media (max-width:390px){.number-count-row>span{display:none}}@media (min-width:700px){.number-controls-row{grid-column:1/-1}.number-controls-row .switch-row{grid-column:auto}}@media (max-width:350px){.number-controls-row{grid-template-columns:1fr}.board-switches{flex-direction:column;align-items:center}.number-board{padding-inline:8px}}@media (prefers-reduced-motion:reduce){.motion-hint,.tray-toast{transition-duration:NaNs}}.shake-toggle,.sound-toggle,.vibration-toggle{border:1px solid #788475;background:#f2efdb;color:#24372d}.shake-toggle[aria-pressed=true],.sound-toggle[aria-pressed=true],.vibration-toggle[aria-pressed=true]{border-color:#b9a06e;background:#244836;color:#f7f4eb;box-shadow:0 2px 8px rgba(8,18,13,.28),inset 0 0 0 1px rgba(247,244,235,.14)}.shake-toggle[aria-pressed=true] svg{stroke:currentColor}.motion-hint,.tray-toast{border-color:#b9a06e;background:#173629;color:#f7f4eb}.number-board{perspective:1100px}.number-housing{max-width:100%;box-sizing:border-box;padding:var(--housing-padding,8px);border:1px solid #68736b;border-radius:13px;background:linear-gradient(145deg,#303833,#141a17 54%,#222a25);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 0 0 2px rgba(0,0,0,.46),inset 0 8px 18px rgba(0,0,0,.38),0 9px 20px rgba(0,0,0,.36)}.number-list{width:auto}.flap-cell{border:1px solid #080d0a;border-radius:4px;background:linear-gradient(145deg,#26302a,#151b17);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 2px 4px rgba(0,0,0,.44)}.flap-top{background:linear-gradient(170deg,#303a33 0,#202923 28%,#1a211c 100%)}.flap-top::before{position:absolute;z-index:1;inset:0 0 auto;height:25%;content:"";background:linear-gradient(180deg,rgba(255,255,255,.12),transparent);pointer-events:none}.flap-bottom{background:linear-gradient(180deg,#121713,#222923)}.flap-cell::after{border-top:2px solid #080d0a;box-shadow:0 1px rgba(255,255,255,.09)}.flap-turn{filter:drop-shadow(0 1px 1px rgba(0,0,0,.34))}.flap-leaf-front{background:linear-gradient(170deg,#303a33,#1b221d 65%)}.flap-leaf-back{background:linear-gradient(180deg,#101511,#252d27)}