.jednicka{color:hsl(var(--foreground));background:hsl(var(--background));min-height:100dvh}.jednicka button,.jednicka select,.jednicka input{touch-action:manipulation}.jednicka :focus-visible{outline:3px solid hsl(var(--team-red));outline-offset:4px}.j-stage{background:radial-gradient(ellipse at 50% 50%, hsl(var(--team-red) / .09), transparent 65%), hsl(var(--slot));border:2px solid hsl(var(--border));border-radius:2rem}.j-dice-button{--die:clamp(104px, 18vh, 164px);perspective:900px;cursor:pointer;border-radius:2rem;width:min(100%,420px);height:clamp(230px,100dvh - 480px,300px);margin:auto;display:block;position:relative}.j-skin-classic{--j-body:hsl(var(--tile));--j-ink:hsl(var(--tile-foreground));--j-edge:hsl(var(--tile-border));--j-face-fill:linear-gradient(135deg,#fff 0%,#f6f4ee 55%,#dedbd3 100%)}.j-skin-casino{--j-body:#b9142b;--j-ink:#fff9ee;--j-edge:#750a1b;--j-face-fill:radial-gradient(ellipse at 24% 12%,#ff7882 0%,transparent 38%),linear-gradient(140deg,#ee3c4c 0%,#bd1029 65%,#7b1024 100%)}.j-skin-wood{--j-body:#e5bc7e;--j-ink:#422915;--j-edge:#825a34;--j-face-fill:repeating-linear-gradient(96deg,transparent 0 6px,#80512418 7px,#fff4cf20 9px,transparent 12px),linear-gradient(125deg,#f4d8a3,#d6a564)}.j-dice-button .j-face,.j-mini-die[class*=j-skin-]{background:var(--j-face-fill);border-color:var(--j-edge)}.j-dice-button .j-face{box-shadow:inset 0 0 0 3px #ffffff40,inset -8px -10px 14px #00000014}.j-dice-button .j-face .j-pip,.j-mini-die[class*=j-skin-] .j-pip{background:var(--j-ink);box-shadow:inset 1px 2px 2px #0003}.j-dice-button.j-skin-classic .j-face-1 .j-pip{background:hsl(var(--team-red))}.j-dice-button.j-skin-casino .j-face{border-radius:3%}.j-dice-button .j-poly-base{fill:var(--j-body);stroke:var(--j-edge)}.j-dice-button .j-poly-number{fill:var(--j-ink);stroke:var(--j-body)}.j-dice-button:disabled{cursor:default}.j-die-hop{top:24%;left:calc(50% - var(--die) / 2);width:var(--die);height:var(--die);transform-style:preserve-3d;position:absolute}.j-die-tilt{width:100%;height:100%;transform-style:preserve-3d;transition:transform .35s ease-out;display:block;transform:rotateX(-16deg)rotateY(20deg)}.j-dice-button[data-state=ready] .j-die-tilt{transform:rotateX(-7deg)rotateY(9deg)}.j-result{align-items:center;gap:.4em;display:inline-flex}.j-result-num{background:hsl(var(--team-red));min-width:1.5em;color:hsl(var(--primary-foreground,0 0% 100%));font-variant-numeric:tabular-nums;box-shadow:0 6px 18px hsl(var(--team-red) / .3);border-radius:.4em;place-items:center;padding:0 .25em;font-size:clamp(2.6rem,7vh,5.5rem);line-height:1.15;animation:.32s cubic-bezier(.2,1.6,.4,1) j-pop;display:inline-grid}@keyframes j-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.j-mini-die.j-mini-die-lg{border-radius:14px;width:64px;height:64px;padding:10px}.j-cube{width:100%;height:100%;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.18,.65,.22,1);display:block;position:relative}.j-face{border:1.5px solid hsl(var(--tile-border));backface-visibility:hidden;background:linear-gradient(135deg, hsl(var(--tile)), hsl(var(--slot)));box-shadow:inset 0 0 0 5px hsl(var(--tile)), inset -10px -10px 18px hsl(var(--tile-border) / .1);border-radius:5%;padding:16%;position:absolute;inset:0}.j-face-1{transform:translateZ(calc(var(--die) / 2))}.j-face-6{transform:rotateY(180deg) translateZ(calc(var(--die) / 2))}.j-face-3{transform:rotateY(90deg) translateZ(calc(var(--die) / 2))}.j-face-4{transform:rotateY(-90deg) translateZ(calc(var(--die) / 2))}.j-face-2{transform:rotateX(90deg) translateZ(calc(var(--die) / 2))}.j-face-5{transform:rotateX(-90deg) translateZ(calc(var(--die) / 2))}.j-pips{grid-template:repeat(3,1fr)/repeat(3,1fr);gap:8%;width:100%;height:100%;display:grid}.j-pip{visibility:hidden;background:hsl(var(--tile-foreground));box-shadow:inset 2px 3px 3px hsl(var(--foreground) / .35);border-radius:50%;display:block}.j-pip.visible{visibility:visible}.j-face-1 .j-pip{background:hsl(var(--team-red))}.j-die-shadow{background:hsl(var(--tile-border) / .17);filter:blur(9px);border-radius:50%;width:50%;height:28px;position:absolute;bottom:20px;left:25%;transform:scale(.85)}@keyframes j-hop{0%,to{translate:0}25%{translate:-10px -12px}60%{translate:8px -6px}80%{translate:-3px -3px}}@keyframes j-shadow{25%{opacity:.4;transform:scale(.55)}60%{opacity:.8;transform:scale(.7)}}.j-poly-wrap{width:100%;height:100%;display:block}.j-poly{width:100%;height:100%;filter:drop-shadow(3px 6px 2px hsl(var(--tile-border) / .16));display:block;overflow:visible}.j-poly-base{fill:hsl(var(--tile));stroke:hsl(var(--tile-border));stroke-width:3px;stroke-linejoin:round}.j-poly-line{fill:none;stroke:hsl(var(--tile-border) / .28);stroke-width:2px}.j-poly-shade{fill:hsl(var(--tile-border) / .1)}.j-poly-number{fill:hsl(var(--tile-foreground));paint-order:stroke;stroke:hsl(var(--tile));stroke-width:8px;stroke-linejoin:round;font-size:51px;font-weight:700}@keyframes j-poly-roll{0%{transform:rotate(0)scale(.9)}65%{transform:rotate(690deg)scale(1.08)}to{transform:rotate(720deg)scale(1)}}@media (prefers-reduced-motion:reduce){.j-poly-wrap.is-rolling{animation:none}}.j-history{scrollbar-width:thin;scrollbar-color:hsl(var(--team-red) / .55) hsl(var(--muted))}.j-history::-webkit-scrollbar{width:8px;height:8px}.j-history::-webkit-scrollbar-thumb{background:hsl(var(--team-red) / .55);border-radius:8px}.j-history::-webkit-scrollbar-track{background:hsl(var(--muted))}.j-roll-chip{border:2px solid hsl(var(--border));background:hsl(var(--card));border-radius:1rem;flex-direction:column;align-items:center;gap:.3rem;min-width:64px;padding:.65rem;display:flex}.j-roll-chip.latest{border-color:hsl(var(--team-red));background:hsl(var(--team-red) / .05)}.j-mini-die{border:2px solid hsl(var(--tile-border));background:hsl(var(--tile));border-radius:8px;width:32px;height:32px;padding:5px;display:block}.j-step{border-bottom:1px solid hsl(var(--border));grid-template-columns:70px minmax(0,1fr) minmax(180px,1.1fr) minmax(0,1fr);align-items:center;gap:12px;padding:16px;display:grid}.j-step:last-child{border-bottom:0}.j-step-error{background:hsl(var(--destructive) / .04)}.j-step-value{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:clamp(1.2rem,2vw,1.8rem);font-weight:600}.j-op-buttons{grid-template-columns:repeat(auto-fit,minmax(54px,1fr));gap:6px;display:grid}.j-op-btn{border:2px solid hsl(var(--border));background:hsl(var(--card));min-height:48px;color:hsl(var(--foreground));white-space:nowrap;font-variant-numeric:tabular-nums;cursor:pointer;border-radius:.75rem;font-size:1.25rem;font-weight:700}.j-op-btn:hover{border-color:hsl(var(--team-red) / .6)}.j-op-btn.is-on{border-color:hsl(var(--team-red));background:hsl(var(--team-red));color:#fff}.j-op-btn sup{font-size:.65em}.j-op-btn.j-op-skip{border-style:dashed;font-size:1rem}.j-op-buttons-lg{grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:10px}.j-op-buttons-lg .j-op-btn{border-radius:1rem;min-height:64px;font-size:1.6rem}.j-stage-solo .j-dice-button{--die:clamp(84px, 14vh, 170px);height:clamp(150px,100dvh - 590px,300px)}.j-stage-solo .j-solo-value{font-size:clamp(3rem,9vh,6.5rem)}.j-solo-value{color:hsl(var(--foreground));overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:.1em 0 .2em;font-size:clamp(3.5rem,11vh,7rem);font-weight:800;line-height:1}.j-step-start{border-bottom:1px solid hsl(var(--border));align-items:baseline;gap:12px;padding:10px 16px;font-size:1.4rem;display:flex}.j-roll-chip.finish{box-shadow:inset 0 -4px 0 hsl(var(--success))}.j-roll-chip.finish:after{content:"★ jednička";color:hsl(var(--success));font-size:.7rem;font-weight:700}.j-op{border:2px solid hsl(var(--border));background:hsl(var(--card));width:100%;min-height:48px;color:hsl(var(--foreground));border-radius:.75rem;padding:8px;font-size:1.1rem}@media (width>=1024px){.j-dice-button{--die:clamp(130px, 22vh, 260px);width:min(100%,560px);height:clamp(250px,100dvh - 500px,440px)}}@media (width<=640px){.j-dice-button{--die:116px;height:230px}.j-step{grid-template-columns:48px minmax(0,1fr);gap:8px;padding:12px}.j-step .j-step-before{text-align:right}.j-step .j-step-op{grid-column:1/-1}.j-step .j-step-after{text-align:right;grid-column:1/-1}}@media (width<=640px) and (height<=700px){.j-dice-button{--die:100px;height:210px}}@media (prefers-reduced-motion:reduce){.j-cube,.j-die-tilt{transition:none}.j-result-num,.j-die-hop.is-rolling,.j-die-shadow.is-rolling{animation:none}}.j-start-input{text-align:center;font-variant-numeric:tabular-nums;border-width:2px;border-radius:1rem;width:10.5rem;height:4.5rem;font-size:2.6rem;font-weight:800}.j-more[open] summary{border-bottom:0}.j-peek{border:2px dashed hsl(var(--border));min-height:44px;color:hsl(var(--muted-foreground));cursor:pointer;touch-action:manipulation;border-radius:.75rem;align-items:center;gap:.35em;padding:0 .6em;display:inline-flex}.j-peek:hover{border-color:hsl(var(--team-red) / .6);color:hsl(var(--foreground))}.j-step-rest{color:hsl(var(--muted-foreground));border-bottom:1px solid hsl(var(--border));padding:12px 16px;font-size:1.05rem}.j-die-hop.is-rolling{animation:.9s cubic-bezier(.3,.1,.3,1) j-throw}@keyframes j-throw{0%{translate:-84px -26px;scale:.88}22%{translate:-38px -58px;scale:1.05}46%{translate:8px;scale:1.09 .9}61%{translate:16px -24px;scale:.97 1.04}77%{translate:7px;scale:1.05 .95}88%{translate:2px -9px;scale:1}to{translate:0;scale:1}}.j-die-shadow.is-rolling{animation:.9s cubic-bezier(.3,.1,.3,1) j-shadow2}@keyframes j-shadow2{0%{opacity:.45;transform:translate(-84px)scale(.55)}22%{opacity:.25;transform:translate(-38px)scale(.38)}46%{opacity:1;transform:translate(8px)scale(1)}61%{opacity:.55;transform:translate(16px)scale(.62)}77%{opacity:1;transform:translate(7px)scale(.95)}to{opacity:1;transform:scale(.85)}}.j-impact{width:var(--die);height:calc(var(--die) * .3);border:3px solid hsl(var(--team-red) / .6);opacity:0;pointer-events:none;border-radius:50%;animation:.56s ease-out j-impact;position:absolute;bottom:12px;left:50%;translate:-50%}@keyframes j-impact{0%{opacity:.9;scale:.45}to{opacity:0;scale:1.8}}.j-poly-wrap.is-rolling{animation:.9s cubic-bezier(.2,.6,.25,1) j-poly-tumble}@keyframes j-poly-tumble{0%{transform:perspective(520px)rotateX(48deg)rotateY(-30deg)rotate(-60deg)scale(.84)}25%{transform:perspective(520px)rotateX(-42deg)rotateY(34deg)rotate(170deg)scale(1.04)}50%{transform:perspective(520px)rotateX(38deg)rotateY(-28deg)rotate(410deg)scale(1.08)}72%{transform:perspective(520px)rotateX(-18deg)rotateY(14deg)rotate(620deg)scale(1.02)}88%{transform:perspective(520px)rotateX(6deg)rotateY(-4deg)rotate(708deg)scale(.97)}to{transform:perspective(520px)rotateX(0)rotateY(0)rotate(720deg)scale(1)}}.j-poly-number{transform-box:fill-box;transform-origin:50%}.j-dice-button[data-state=ready] .j-poly-number{animation:.42s cubic-bezier(.2,1.7,.4,1) j-num-land}@keyframes j-num-land{0%{opacity:.2;transform:scale(.35)}to{opacity:1;transform:scale(1)}}.j-dice-button[data-state=ready] .j-die-tilt{animation:.42s ease-out j-settle}@keyframes j-settle{0%{transform:rotateX(-20deg)rotateY(24deg)}55%{transform:rotateX(-3deg)rotateY(5deg)}to{transform:rotateX(-7deg)rotateY(9deg)}}@media (prefers-reduced-motion:reduce){.j-die-hop.is-rolling,.j-die-shadow.is-rolling,.j-poly-wrap.is-rolling,.j-impact,.j-dice-button[data-state=ready] .j-poly-number,.j-dice-button[data-state=ready] .j-die-tilt{animation:none}}
