@font-face{font-family:Samim;src:url(/assets/Samim-B0PIVFop.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Samim;src:url(/assets/Samim-Bold-CuSA9Lfw.ttf)format("truetype");font-weight:700;font-display:swap}*{box-sizing:border-box}button,select,input{font:inherit}button{cursor:pointer;transition:transform .15s,background .15s}button:disabled{cursor:default;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #ab7923}header p{color:#6b7c73;margin:8px 0;font-size:13px}.pawn:disabled{opacity:1}h2{margin:0;font-size:19px}.players>div{align-items:center;gap:10px;font-size:13px;display:flex}.dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}label{color:#61746a;flex-direction:column;gap:8px;font-size:12px;display:flex}.bot-option{cursor:pointer;flex-direction:row;align-items:center}.bot-option input{flex-shrink:0;margin:0}input,select{color:#28473b;background:#fff;border:1px solid #d8e0d2;border-radius:10px;min-width:0;padding:11px}.fine,.board-hint{color:#758576;font-size:11px;line-height:1.9}.board-hint{text-align:center}.fine{margin:0}.panel p[role=status]{margin:0;font-size:12px}footer{text-align:center;color:#8a978a;margin-top:22px;font-size:11px}.lobby{max-width:540px;margin:40px auto}.lobby .panel{gap:18px}.actions{flex-wrap:wrap;gap:10px;display:flex}.actions>*{flex:1}.room-code{letter-spacing:5px;text-align:center;direction:ltr;font-size:30px}.connection{align-items:center;gap:8px;font-size:12px;display:flex}.history{border-top:1px solid #dde5d6;margin-top:16px;padding-top:12px;font-size:11px}.history summary{cursor:pointer}.history-item{word-break:break-word;border-bottom:1px solid #edf0e5;padding:8px 0}.timer{font-variant-numeric:tabular-nums;color:#71816b;font-size:12px}@keyframes pulse{50%{outline-color:#d1ad4f}}@media (width<=760px){main{padding:18px 14px}header{margin-bottom:20px}h1{font-size:28px}.game-layout{grid-template-columns:1fr;gap:16px}.panel{padding:20px}.pawn{font-size:10px}.dice{margin:0 auto}.players{flex-flow:wrap}.players>div{flex:40%}.language{padding:9px 14px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.pawn:before{content:"";position:absolute;inset:-5px}.social-person{border-block-end:1px solid #d6dedb;margin-block:1rem;padding-block:.7rem}.social-person small{overflow-wrap:anywhere}html[data-theme=aurora] .board{box-shadow:0 0 0 5px #62a69d,0 14px 30px #365f5733}html[data-theme=sunset] .board{box-shadow:0 0 0 5px #c98e67,0 14px 30px #855c3f33}.result-dialog::backdrop{background:#122e36b3}.result-dialog h2{margin:16px 0}.result-actions{gap:12px;margin-top:24px;display:grid}body{color:#fff5e8;background:radial-gradient(at 50% 0,#8151b0 0,#47256e 45%,#21143e 100%);min-height:100vh;margin:0;font-family:Samim,Tahoma,Arial,sans-serif}body:before{content:"";pointer-events:none;opacity:.35;background-image:radial-gradient(circle,#ffe9bd70 1px,#0000 2px);background-size:93px 137px;position:fixed;inset:0}main{max-width:1160px;margin:auto;padding:24px 32px;position:relative}header{justify-content:space-between;align-items:center;margin-bottom:22px;padding-block:10px;display:flex}h1{letter-spacing:-1px;color:#ffe7a0;text-shadow:0 3px #8c4c38,0 8px 22px #180f37;margin:0;font-size:44px}.brand-dot{color:#ffcf69;margin-inline-start:12px}header p,footer{color:#dbc9f0}.language{color:#fff3d5;background:#3c235f;border:1px solid #ad7acc;border-radius:30px;padding:10px 22px;box-shadow:0 3px #211437}.tabs{background:#26164188;border:1px solid #9160b580;border-radius:20px;flex-wrap:wrap;gap:10px;width:fit-content;max-width:100%;margin-bottom:24px;padding:6px;display:flex}.tabs button{color:#e5d4f4;background:0 0;border:0;border-radius:14px;padding:10px 24px}.tabs button.active{color:#452440;background:linear-gradient(#fff0ad,#ffc456);font-weight:700;box-shadow:0 3px #b7782e}.game-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:28px;display:grid}.board{aspect-ratio:1;background:#f4e9fb;border:7px solid #f6d289;border-radius:30px;max-width:650px;margin:auto;position:relative;overflow:visible;box-shadow:0 7px #a87538,0 11px #3b214f,0 24px 50px #130c3980,inset 0 0 0 2px #ffefcb}.board svg{border-radius:20px;width:100%;height:100%;display:block;overflow:hidden}.active-base{filter:drop-shadow(0 0 .1px #fff8c1)}.pawn{aspect-ratio:4/5;color:#fff;width:5.7%;box-shadow:none;z-index:2;background:0 0;border:0;border-radius:40%;padding:0;font-size:clamp(9px,1.2vw,14px);font-weight:700;position:absolute;transform:translate(-50%,-76%)}.pawn img{pointer-events:none;width:100%;height:100%;animation:.2s ease-out pawn-arrive;display:block}.pawn span{bottom:21%;color:#fff;text-shadow:0 1px 2px #452040;font-size:clamp(7px,1vw,12px);position:absolute;inset-inline:0}.pawn.legal{outline-offset:2px;z-index:3;filter:drop-shadow(0 0 4px #fff19c);outline:2px solid #fff1a0;animation:1.3s ease-in-out infinite pulse}.pawn.finished{width:3.6%;font-size:8px}.panel{border:1px solid #b281cb;background:linear-gradient(155deg,#604084f2,#35224fee);border-top:3px solid #e5c18f;border-radius:26px;flex-direction:column;gap:16px;padding:22px;display:flex;box-shadow:0 7px #211437,0 18px 36px #160d332f}.panel h2{color:#fff5e7;line-height:1.7}.eyebrow{color:#e5c994;letter-spacing:1px;font-size:11px}.dice{background:linear-gradient(135deg,#fff,#ece0fb);border:2px solid #fff9dc;border-radius:20px;place-items:center;width:78px;height:78px;margin:8px auto 16px;font-size:42px;display:grid;position:relative;box-shadow:0 6px #cbb3dd,0 10px #24153b,0 16px 22px #1e123d66}.dice-face{grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:5px;animation:.25s ease-out dice-reveal;display:grid;position:absolute;inset:13px}.pip{border-radius:50%}.pip.filled{background:#473060;box-shadow:inset 0 2px 2px #241631}.dice-idle{color:#9668af;grid-area:1/1/4/4;place-items:center;font-size:38px;display:grid}.dice-value{clip-path:inset(50%);width:1px;height:1px;font-size:1px;position:absolute;overflow:hidden}.primary,.secondary{border:1px solid #ffffff24;border-radius:16px;padding:14px 20px;font-weight:700}.primary{color:#173e39;background:linear-gradient(#7bea9e,#26b480);border-top:2px solid #c3ffd0;box-shadow:0 4px #127b63,0 7px #211437}.primary:enabled:hover{filter:brightness(1.08)}.secondary{color:#fff1df;background:linear-gradient(#80529c,#5b377f);box-shadow:0 3px #2a183f}.primary:enabled:active,.secondary:enabled:active{transform:translateY(2px)}.players{border-top:1px solid #ac86c242;flex-direction:column;grid-template-columns:1fr 1fr;gap:9px;padding-top:15px;display:grid}.players>.player-card{background:#2216386b;border:1px solid #b389cf3d;border-radius:15px;flex-wrap:wrap;gap:7px;padding:9px;font-size:11px}.players>.player-card.current{background:#86613738;border-color:#ffe294;box-shadow:0 0 12px #ffd05d20}.players small{color:#d9c8e7;width:100%;margin-inline-start:auto;font-size:10px}label,.fine,.board-hint,.timer{color:#d8c7e9}select,input{color:#fff4df;background:#2d1c48;border-color:#946aad}input[type=checkbox]{accent-color:#67dfa0;width:18px;height:18px}.notification{color:#fff5e8;background:#70528c;border-radius:12px;padding:12px;font-size:12px}.error{color:#ffb6be;font-size:12px;line-height:1.8}.history,.history-item{border-color:#b48acf40}.result-dialog{color:#fff7df;text-align:center;background:radial-gradient(at 50% 0,#8356a6,#3b245d);border:3px solid #f4cd80;border-radius:24px;width:min(440px,100vw - 32px);max-height:calc(100dvh - 32px);padding:32px 24px;overflow:auto;box-shadow:0 8px #8b592e,0 28px 80px #160d3880}.result-symbol{filter:drop-shadow(0 5px 5px #261334);font-size:64px;display:block}html[data-theme=aurora] body{background:radial-gradient(at 50% 0,#348987,#173344)}html[data-theme=sunset] body{background:radial-gradient(at 50% 0,#b45b79,#482446)}@keyframes pawn-arrive{0%{opacity:.6}to{opacity:1}}@keyframes dice-reveal{0%{transform:rotate(-12deg)scale(.85)}to{transform:rotate(0)scale(1)}}@media (width<=760px){main{padding:14px 14px 28px}h1{font-size:34px}.game-layout{grid-template-columns:1fr;gap:20px}.board{border-width:5px;border-radius:24px}.panel{padding:18px}.players{grid-template-columns:repeat(2,1fr)}.tabs{gap:4px;width:100%}.tabs button{flex:1;padding:10px 8px;font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.dice-idle:before{content:"✦"}html{background:#21143e}.player-avatar{color:#fff;text-shadow:0 1px 2px #332044;width:38px;height:38px;box-shadow:none;background:0 0;border:0;border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:700;display:grid}.player-avatar img{width:100%;height:100%;display:block}.roll-bar{display:contents}.roll-turn{display:none}@media (width<=760px){.game-layout{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.roll-bar{inset-inline:0;z-index:20;padding:10px 14px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#21143ef0;border-top:1px solid #ffe9a059;grid-template-columns:58px minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:10px;display:grid;position:fixed;bottom:0;box-shadow:0 -8px 24px #10082273}.roll-bar .dice{zoom:.7;margin:0}.roll-turn{color:#fff4df;text-overflow:ellipsis;grid-area:1/2;font-size:13px;line-height:1.5;display:block;overflow:hidden}.roll-bar .timer{top:-26px;background:#21143ef0;border-radius:999px;margin:0;padding:2px 10px;font-size:12px;position:absolute;inset-inline-start:14px}.roll-bar .primary{grid-area:1/3;min-height:54px;margin:0}}
