:root{--bg-deep: #05070f;--bg-surface: #0a1426;--bg-card: rgba(15, 23, 42, .92);--bg-glass: linear-gradient(160deg, rgba(23, 32, 55, .94), rgba(10, 15, 30, .92));--border-subtle: rgba(120, 150, 220, .18);--border-glass: rgba(255, 255, 255, .14);--border-active: rgba(96, 165, 250, .5);--text-primary: #e6edf7;--text-secondary: #94aac9;--text-dim: #6b7f9e;--accent-green: #3ce1b5;--accent-gold: #fbbf24;--accent-red: #f87171;--accent-blue: #60a5fa;--accent-purple: #a78bfa;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--shadow-md: 0 8px 24px rgba(0, 0, 0, .4);--shadow-lg: 0 16px 48px rgba(0, 0, 0, .55);--shadow-glow: 0 0 20px rgba(59, 225, 181, .25);--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-full: 999px;--font-family: "Vazirmatn", Tahoma, sans-serif;--safe-bottom: env(safe-area-inset-bottom, 0px);--east-primary: #22c55e;--west-primary: #3b82f6}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}body{margin:0;background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-family);direction:rtl;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}button{font-family:inherit;cursor:pointer;border:none;touch-action:manipulation}input{font-family:inherit}canvas{display:block}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.glass{background:var(--bg-glass);border:1px solid var(--border-glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.glass-light{background:#0f172abf;border:1px solid var(--border-subtle);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--radius-sm)}.glass-card{background:linear-gradient(145deg,#172037eb,#0a0f1ee0);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#03060ea6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .25s ease}.modal-content{width:min(440px,100%);max-height:86vh;overflow-y:auto;padding:20px;animation:popIn .35s cubic-bezier(.2,1.4,.4,1)}@keyframes fadeIn{0%{opacity:0}}@keyframes popIn{0%{transform:translateY(40px) scale(.9);opacity:0}}.btn{padding:12px 18px;border-radius:var(--radius-sm);font-size:14px;font-weight:700;cursor:pointer;min-height:44px;transition:all .15s;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,#fbbf24,#d97706);color:#2a1c02;box-shadow:0 4px 14px #fbbf2459}.btn-green{background:linear-gradient(135deg,#4ade80,#16a34a);color:#04220f}.btn-red{background:linear-gradient(135deg,#f87171,#dc2626);color:#2b0505}.btn-ghost{background:#ffffff0f;border:1px solid rgba(255,255,255,.16);color:var(--text-primary)}.btn-ghost:hover{background:#ffffff1a}.btn-block{width:100%;margin-top:8px;font-size:16px;padding:14px}.toast-container{position:fixed;top:66px;inset-inline:0;z-index:60;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast{padding:9px 20px;border-radius:var(--radius-full);font-size:13px;font-weight:700;background:#0f172af5;border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);animation:toastIn .3s ease;pointer-events:auto}.toast.toast-out{opacity:0;transform:translateY(-12px);transition:opacity .3s,transform .3s}@keyframes toastIn{0%{opacity:0;transform:translateY(-14px)}}.sheet{position:fixed;inset-inline:0;bottom:0;z-index:40;transform:translateY(115%);transition:transform .32s cubic-bezier(.2,.9,.3,1);padding:10px 16px calc(14px + env(safe-area-inset-bottom,0px));max-height:62vh;overflow-y:auto;border-radius:20px 20px 0 0}.sheet.open{transform:translateY(0)}.sheet-handle{width:44px;height:4px;border-radius:99px;background:#ffffff4d;margin:2px auto 12px}.chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--radius-full);border:1.5px solid rgba(255,255,255,.14);background:#0d1426d9;font-size:12.5px;font-weight:700;cursor:pointer;transition:all .2s}.chip.active{border-color:var(--accent-gold);box-shadow:0 0 18px -2px var(--accent-gold)}.chip.bankrupt{opacity:.35;filter:grayscale(.9)}.chip .money{color:#fcd34d;font-weight:800}.app-shell{display:flex;flex-direction:column;height:100%;overflow:hidden}.game-layout{display:grid;grid-template-columns:240px minmax(400px,1fr) 205px;gap:16px;flex:1;padding:8px 16px 0;max-width:min(1500px,96vw);margin:0 auto;min-height:0;overflow:hidden}.topbar{display:flex;align-items:center;gap:8px;padding:10px 12px;overflow-x:auto;scrollbar-width:none;flex-shrink:0}.topbar::-webkit-scrollbar{display:none}.bottombar{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,#04070ef0,#04070e00);flex-shrink:0;z-index:20}.board-stage{display:flex;flex-direction:column;min-width:0;min-height:0;position:relative}.canvas-wrap{flex:1;min-height:0;position:relative;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-subtle)}.dice-btn{width:70px;height:70px;border-radius:50%;border:2px solid #fbbf24;background:radial-gradient(circle at 30% 25%,#fde68a,#f59e0b 55%,#b45309);color:#3b2503;font-size:26px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;cursor:pointer;box-shadow:0 6px 22px #f59e0b73;transition:all .2s;flex-shrink:0}.dice-btn span{font-size:10px;font-weight:800;margin-top:2px}.dice-btn:disabled{filter:grayscale(1);opacity:.4;box-shadow:none;cursor:not-allowed}.dice-btn.pulse{animation:dicePulse 1.4s infinite}@keyframes dicePulse{0%,to{box-shadow:0 6px 22px #fbbf2480,0 0 #fbbf248c}55%{box-shadow:0 6px 22px #fbbf2480,0 0 0 16px #fbbf2400}}.tool-btn{width:48px;height:52px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:#0f172ae0;color:var(--text-primary);font-size:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;transition:all .15s;flex-shrink:0}.tool-btn span{font-size:9px;font-weight:700}.tool-btn:active{transform:scale(.93)}.tool-btn .badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:99px;background:#ef4444;color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 4px}.hint-bar{position:absolute;bottom:100px;left:50%;transform:translate(-50%);z-index:15;padding:8px 18px;border-radius:var(--radius-full);font-size:13.5px;font-weight:700;max-width:92vw;text-align:center;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile-card{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:10;min-width:250px;max-width:90%;pointer-events:none}.screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;min-height:0;overflow-y:auto}@media(max-width:1000px){.game-layout{grid-template-columns:200px minmax(350px,1fr);gap:12px}}@media(max-width:680px){.game-layout{grid-template-columns:1fr;display:flex;flex-direction:column}.canvas-wrap{height:420px;flex:0 0 auto}.tool-btn span{display:none}.tool-btn{width:42px;height:46px}.dice-btn{width:64px;height:64px;font-size:22px}.hint-bar{font-size:12px;bottom:90px}.modal-content{max-height:92vh}}@media(max-width:380px){.game-layout{padding:4px 8px}.canvas-wrap{height:340px}}
