/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:"Vazirmatn", system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components,utilities;html{font-family:Vazirmatn,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:#0c101b;color:#f4f3f0;font-family:Vazirmatn,sans-serif}button{font-family:inherit;cursor:pointer}button:focus-visible{outline:3px solid #b2c6ff;outline-offset:3px}.app-shell{--blue:#4389e9;--red:#ee655d;--yellow:#e8b83e;--green:#49ae84;min-height:100vh;min-height:100dvh;position:relative;overflow:hidden;background:radial-gradient(ellipse at 47% -16%,#24304b,#0c101b 48%,#0b0f18)}.ambient{position:absolute;pointer-events:none;border-radius:50%;filter:blur(95px);opacity:.15}.ambient-one{width:440px;height:440px;background:#477fdc;top:130px;left:-240px}.ambient-two{width:400px;height:400px;background:#c45d5e;top:850px;right:-260px}.page-container{width:100%;max-width:1390px;padding-inline:20px;margin-inline:auto;position:relative}.topbar{min-height:96px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #ffffff12}.brand{display:flex;align-items:center;gap:12px}.brand-symbol{width:43px;height:43px;display:grid;place-items:center;border:1px solid #8eabeb55;border-radius:13px;background:#729af321;color:#9db9f6;box-shadow:0 0 24px #6c91e028}.brand-title{font-weight:900;font-size:18px;line-height:1.3}.brand-subtitle{font-family:Arial,sans-serif;font-size:9px;letter-spacing:2px;color:#8390a8;direction:ltr;text-align:right;margin-top:5px}.header-actions{display:flex;gap:9px;align-items:center}.text-button{min-height:42px;background:#ffffff0b;color:#d6dcea;border:1px solid #ffffff1a;border-radius:11px;display:flex;align-items:center;gap:8px;padding:0 13px;font-weight:600;font-size:13px;transition:background .2s,border-color .2s}.text-button:hover{background:#ffffff18;border-color:#ffffff40}.text-button svg{flex:none}.main-content{padding-top:43px}.intro{margin-bottom:32px}.eyebrow,.section-kicker{font-size:11px;font-weight:800;letter-spacing:.15px;color:#aab9d8}.eyebrow{display:flex;gap:10px;align-items:center;color:#a9bcf1}.eyebrow-line{width:26px;height:2px;background:#81a8f3}.intro h1{font-size:clamp(29px,4vw,49px);line-height:1.45;letter-spacing:-.5px;margin:10px 0 6px;font-weight:900}.intro h1 span{color:#92b1f8}.intro p{color:#97a0b1;font-size:14px;line-height:1.9;margin:0}.game-layout{display:grid;grid-template-columns:minmax(0,1.34fr) minmax(330px,.86fr);gap:24px;align-items:start}.board-column,.turn-card,.players-section{background:#161c2a;border:1px solid #ffffff14;box-shadow:0 18px 50px #0000001c;border-radius:20px}.board-column{padding:21px}.board-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.board-header h2,.players-heading h2{font-size:18px;margin:3px 0 0;font-weight:800}.local-badge{border:1px solid #66b49240;background:#62ad8730;color:#a6dec0;border-radius:30px;padding:7px 11px;font-weight:700;font-size:11px;display:flex;align-items:center;gap:7px;white-space:nowrap}.live-dot,.indicator-pulse{width:7px;height:7px;background:#77cda1;border-radius:50%;box-shadow:0 0 0 3px #77cda127}.board-frame{background:#eae7e0;border:7px solid #343d50;box-shadow:0 14px 28px #0005,inset 0 0 0 2px #fff9;border-radius:13px;overflow:hidden;max-width:680px;margin:auto}.board{width:100%;aspect-ratio:1;display:grid;grid-template-columns:repeat(15,minmax(0,1fr));grid-template-rows:repeat(15,minmax(0,1fr));position:relative;isolation:isolate;background:#f4f0e9}.yard-portrait{position:absolute;z-index:1;width:26.6667%;height:26.6667%;overflow:hidden;border:2px solid #fff9;border-radius:7px;box-shadow:0 2px 8px #0004;pointer-events:none;background:#243044}.yard-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%}.yard-portrait .portrait-fallback{width:100%;height:100%}.yard-portrait-blue{--piece-color:#2765c4}.yard-portrait-red{--piece-color:#d74643}.yard-portrait-yellow{--piece-color:#ca921d}.yard-portrait-green{--piece-color:#23835b}.tile{min-width:0;min-height:0;background:#f7f4ed}.tile.track,.tile[class*=lane-],.center-tile{border:1px solid #cbd1d5;background:#f9f9f5}.tile.yard-blue{background:#6a9ae3}.tile.yard-red{background:#e9827a}.tile.yard-yellow{background:#ecc96a}.tile.yard-green{background:#6fc49f}.tile.yard-inner{background:#f7f4ed}.tile.track.safe{background:#e6ebeb}.tile.track.start-blue,.tile.lane-blue{background:#9abbf0}.tile.track.start-red,.tile.lane-red{background:#f0a8a2}.tile.track.start-yellow,.tile.lane-yellow{background:#f7dc92}.tile.track.start-green,.tile.lane-green{background:#a5dbbd}.tile.track.start-blue,.tile.track.start-red,.tile.track.start-yellow,.tile.track.start-green{border-color:#ffffffb0}.safe-mark{display:grid;place-items:center;width:100%;height:100%;font-size:clamp(8px,1.8vw,17px);color:#456371;line-height:1}.tile[class*=start-] .safe-mark{color:#fff}.center-tile{background:conic-gradient(from 45deg,#f4cf71,#f4cf71 90deg,#76cba6 90deg,#76cba6 180deg,#7da9e7 180deg,#7da9e7 270deg,#ec8c85 270deg,#ec8c85 360deg);border:0}.center-art{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;background:#252c3e;border:2px solid #fff;border-radius:10px;width:7%;height:7%;min-width:22px;min-height:22px;display:grid;place-items:center;box-shadow:0 3px 12px #0005;pointer-events:none}.center-art{font-family:Vazirmatn,sans-serif;font-size:clamp(14px,3vw,30px);font-weight:900;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #0005}.center-art svg{width:65%;height:65%}.piece{position:absolute;z-index:5;transform:translate(-50%,-50%);width:5.8%;height:5.8%;min-width:22px;min-height:22px;max-width:39px;max-height:39px;border-radius:50%;border:2px solid #fff;display:grid;place-items:center;padding:0;background:var(--piece-color);color:#fff;box-shadow:0 2px #0007,0 3px 7px #0007;transition:transform .18s,box-shadow .18s;touch-action:manipulation}.piece span{font-family:Arial,sans-serif;font-size:clamp(10px,1.3vw,14px);font-weight:800;line-height:1}.piece:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:1px solid #ffffff7d;border-radius:50%;pointer-events:none}.piece-blue,.player-blue,.portrait-blue{--piece-color:#2765c4}.piece-red,.player-red,.portrait-red{--piece-color:#d74643}.piece-yellow,.player-yellow,.portrait-yellow{--piece-color:#ca921d}.piece-green,.player-green,.portrait-green{--piece-color:#23835b}.piece-yellow{color:#fff}.piece:disabled{cursor:default}.piece-active{z-index:8;cursor:pointer;animation:piece-glow 1.35s ease-in-out infinite}.piece-active:hover{transform:translate(-50%,-50%) scale(1.18)}.piece-finished{z-index:6}@keyframes piece-glow{50%{box-shadow:0 0 0 5px #fff9,0 0 20px 4px #fff}}.board-footnote{display:flex;gap:8px;align-items:flex-start;color:#8693a9;font-size:12px;line-height:1.7;margin-top:17px}.board-footnote svg{flex:none;margin-top:1px;color:#95aee8}.side-column{display:grid;gap:20px;min-width:0}.turn-card{padding:22px;--theme:#4389e9;--theme-light:#a9c7ff;background:radial-gradient(ellipse at 95% 5%,color-mix(in srgb,var(--theme) 14%,transparent),transparent 50%),#191f2e}.theme-red{--theme:#ee655d;--theme-light:#ffa8a4}.theme-yellow{--theme:#e8b83e;--theme-light:#f3d98b}.theme-green{--theme:#49ae84;--theme-light:#9ee1bc}.turn-card-top,.turn-indicator{display:flex;align-items:center;justify-content:space-between}.turn-indicator{gap:7px;border-radius:30px;border:1px solid color-mix(in srgb,var(--theme) 45%,transparent);background:color-mix(in srgb,var(--theme) 13%,transparent);color:var(--theme-light);padding:5px 10px;font-size:11px;font-weight:700}.turn-player{display:flex;align-items:center;gap:13px;margin-top:23px;min-width:0}.turn-avatar,.player-portrait{overflow:hidden;flex:none;border-radius:13px;border:2px solid color-mix(in srgb,var(--theme) 55%,transparent);background:#283246}.turn-avatar{width:62px;height:70px}.turn-avatar img,.player-portrait img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}.turn-player>div:last-child{min-width:0}.turn-name{font-size:22px;line-height:1.5;font-weight:900;overflow-wrap:anywhere}.turn-anime{color:#a6afbf;font-size:12px;margin-top:3px}.portrait-fallback{position:relative;width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--piece-color) 45%,#151e2d),#121b29);overflow:hidden}.portrait-glow{position:absolute;width:75%;height:75%;border-radius:50%;background:var(--piece-color);filter:blur(25px);opacity:.5;bottom:-24%}.portrait-unavailable{position:relative;color:#fff;text-align:center;font-size:10px;line-height:1.5;padding:4px;text-shadow:0 1px 4px #000}.portrait-loading{position:relative;width:28px;height:28px;border:2px solid #ffffff55;border-top-color:#fff;border-radius:50%;animation:portrait-spin 1s linear infinite}@keyframes portrait-spin{to{transform:rotate(360deg)}}.turn-divider{height:1px;background:#ffffff18;margin:22px 0}.dice-zone{display:flex;gap:15px;align-items:center}.dice-display{width:69px;height:69px;flex:none;border-radius:15px;display:grid;place-items:center;background:#f8f7f2;color:#28344e;font-family:Arial,sans-serif;font-size:58px;line-height:1;box-shadow:0 8px #c5c8d1,0 15px 20px #0004}.dice-rolling{animation:shake .15s infinite alternate}@keyframes shake{to{transform:rotate(15deg) translateY(-4px)}}.dice-copy{display:flex;flex-direction:column;gap:3px}.dice-copy strong{font-size:16px}.dice-copy span{color:#9ba5b7;font-size:12px;line-height:1.7}.roll-button{width:100%;min-height:50px;margin-top:26px;border:0;border-radius:11px;background:var(--theme);color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 8px 20px color-mix(in srgb,var(--theme) 24%,transparent);transition:filter .2s,transform .2s}.roll-button:not(:disabled):hover{filter:brightness(1.13);transform:translateY(-2px)}.roll-button:disabled{opacity:.52;cursor:not-allowed;box-shadow:none}.move-choices{margin-top:18px}.move-label{font-size:12px;color:#aebacf;margin-bottom:9px}.move-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.move-buttons button{min-height:44px;border:1px solid color-mix(in srgb,var(--theme) 45%,transparent);background:color-mix(in srgb,var(--theme) 14%,transparent);color:#fff;border-radius:9px;font-weight:700}.move-buttons button:hover{background:color-mix(in srgb,var(--theme) 30%,transparent)}.status-message{min-height:23px;margin:17px 0 0;color:#b6c4da;font-size:12px;line-height:1.8}.players-section{padding:20px}.players-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.players-heading h2{margin:0}.players-heading>span{font-family:Arial,sans-serif;font-size:12px;color:#8a96ad;direction:ltr}.player-list{display:grid;gap:9px}.player-row{display:flex;align-items:center;gap:11px;min-width:0;padding:9px;border:1px solid #ffffff0e;border-radius:12px;background:#ffffff08;transition:background .2s,border-color .2s}.player-current{border-color:color-mix(in srgb,var(--piece-color) 50%,transparent);background:color-mix(in srgb,var(--piece-color) 12%,#1b2230)}.player-portrait{width:46px;height:48px;border-color:var(--piece-color);border-radius:9px}.player-portrait .portrait-loading{width:19px;height:19px}.player-portrait .portrait-unavailable{font-size:7px;padding:2px}.player-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.player-info strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-info span{font-size:11px;color:#929eb2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-score{flex:none;text-align:left;display:flex;flex-direction:column;align-items:flex-end;line-height:1.35}.player-score strong{font-size:12px;color:#e8eaf1}.player-score span{font-size:10px;color:#8d99af}.footer{color:#677487;font-size:12px;text-align:center;padding:33px 0 36px}.footer span{color:#8da9e1;margin:0 8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#030710c9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:center;padding:16px}.modal{position:relative;max-width:500px;width:100%;max-height:min(85dvh,750px);overflow-y:auto;background:#1b2332;border:1px solid #ffffff25;border-radius:20px;padding:28px;box-shadow:0 25px 80px #0009}.modal-close{position:absolute;left:17px;top:17px;background:#ffffff12;border:0;border-radius:9px;color:#d9e1f2;width:40px;height:40px;display:grid;place-items:center}.modal-close:hover{background:#ffffff28}.modal h2{font-size:24px;margin:8px 0 18px}.modal ol{padding-right:22px;padding-left:0;margin:0 0 24px;color:#bdc6d7;font-size:14px;line-height:2}.modal li{padding-right:4px;margin-bottom:9px}.modal li::marker{color:#9ab9f3;font-weight:800}.modal b{color:#fff}.modal-primary,.modal-secondary{min-height:47px;border-radius:10px;padding:0 17px;font-size:14px;font-weight:800;border:0}.modal-primary{background:#6597e9;color:#fff}.modal-primary:hover{background:#82aaec}.modal-secondary{background:#ffffff10;color:#d9e1ef}.modal-secondary:hover{background:#ffffff20}.reset-modal p{font-size:14px;color:#aab6c9;line-height:1.9;margin:0 0 25px}.reset-icon{width:50px;height:50px;background:#88aff224;color:#a7c2f5;border-radius:13px;display:grid;place-items:center}.modal-actions{display:flex;gap:9px;flex-wrap:wrap}@media(max-width:1050px){.game-layout{grid-template-columns:minmax(0,1.15fr) minmax(295px,.85fr);gap:15px}.board-column{padding:15px}.turn-card{padding:17px}}@media(max-width:760px){.page-container{padding-inline:16px}.topbar{min-height:76px}.main-content{padding-top:26px}.intro{margin-bottom:23px}.intro p{max-width:530px}.game-layout{grid-template-columns:minmax(0,1fr)}.board-column{padding:14px}.side-column{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.turn-card,.players-section{padding:16px}.turn-name{font-size:18px}.turn-avatar{width:50px;height:58px}.board-frame{max-width:600px}}@media(max-width:590px){.side-column{grid-template-columns:minmax(0,1fr)}.topbar{gap:8px}.brand-symbol{width:38px;height:38px}.brand-title{font-size:16px}.brand-subtitle{font-size:7px;letter-spacing:1.1px}.text-button{padding:0 10px;font-size:12px;min-height:40px}.reset-link span{display:none}.intro h1{font-size:29px}.board-header h2{font-size:16px}.local-badge{font-size:10px}.board-frame{border-width:5px}.board-footnote{font-size:11px}.turn-card{padding:19px}.players-section{padding:17px}.piece{border-width:1.5px}.piece:before{top:2px;right:2px;bottom:2px;left:2px}}@media(max-width:390px){.page-container{padding-inline:12px}.brand{gap:7px}.header-actions{gap:5px}.text-button{padding:0 8px}.text-button span{font-size:11px}.brand-title{font-size:15px}.board-column{padding:10px}.board-header{margin-bottom:10px}.local-badge{padding:5px 7px}.piece{min-width:20px;min-height:20px}}
