body{font-family:Arial,sans-serif;margin:0;padding:0;background:#f5f5f5;min-height:100vh;box-sizing:border-box}.app{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden}.main-content{flex:1;padding:20px;display:flex;justify-content:center;align-items:center}.app-header{background:linear-gradient(135deg,#d32f2f,#b71c1c);color:#fff;padding:0;box-shadow:0 3px 10px #0003;position:sticky;top:0;width:100%;z-index:100}.header-content{max-width:1400px;margin:0 auto;padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.logo-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .2s ease}.logo-link:hover{transform:scale(1.02)}.logo h1{margin:0;font-family:Times New Roman,serif;font-size:1.8em;font-weight:700;letter-spacing:1px;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.logo .subtitle{font-size:.8em;opacity:.9;font-style:italic}.main-nav{display:flex;gap:10px}.nav-link{color:#fff;text-decoration:none;padding:10px 20px;border-radius:25px;transition:all .3s ease;font-weight:500;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;background:#ffffff1a}.nav-link:hover{background:#ffffff40;transform:translateY(-2px)}.nav-link.active{background:#ffffff4d;font-weight:700;box-shadow:0 2px 5px #0000001a}.game{display:flex;gap:20px;align-items:flex-start;justify-content:center;width:100%;max-width:1400px;margin:0 auto;height:calc(100vh - 100px);padding:0}.sidebar,.right-sidebar{width:300px;min-width:280px;max-height:calc(100vh - 120px);overflow-y:auto;background:#fff;border-radius:8px;padding:15px;box-shadow:0 2px 15px #00000026;display:flex;flex-direction:column;gap:15px}.board-wrapper{height:calc(100vh - 120px);display:flex;align-items:center;justify-content:center}.monopoly-board{height:min(650px,calc(100vh - 140px));width:min(650px,calc(100vh - 140px));aspect-ratio:1/1;display:grid;grid-template-columns:repeat(11,1fr);grid-template-rows:repeat(11,1fr)}.players{max-height:250px;overflow-y:auto;padding-right:5px}.log{flex:1;min-height:100px;max-height:200px;overflow-y:auto}.controls{margin:10px 0;padding:12px}.property-actions{padding:12px;margin:10px 0}@media (max-width: 1200px){.game{flex-direction:column-reverse;height:auto;align-items:center}.sidebar,.right-sidebar,.game-log-panel{width:100%;max-width:650px;max-height:none}.right-panels{width:100%;max-width:650px}.board-wrapper{height:auto;padding-bottom:20px}.monopoly-board{width:min(550px,calc(100vw - 40px));height:min(550px,calc(100vw - 40px))}}@media (max-width: 768px){.header-content{flex-direction:row;padding:10px}.logo h1{font-size:1.5em}.main-nav{gap:5px}.nav-link{padding:8px 15px;font-size:14px}.monopoly-board{grid-template-columns:2fr repeat(9,1fr) 2fr;grid-template-rows:2fr repeat(9,1fr) 2fr}}@media (max-width: 480px){.nav-link{padding:6px 12px;font-size:13px}.monopoly-board{grid-template-columns:2fr repeat(9,1fr) 2fr;grid-template-rows:2fr repeat(9,1fr) 2fr}.tile-name{font-size:6px}}.waiting-turn{text-align:center;color:#666;font-style:italic;padding:10px;background:#f5f5f5;border-radius:6px;margin:8px 0}@media (max-width:1000px){.game{flex-direction:column;align-items:center;gap:20px}.sidebar,.right-sidebar,.game-log-panel{order:0;width:100%;max-width:600px}.right-panels{width:100%;max-width:600px}.monopoly-board{width:400px;height:400px;grid-template-columns:2fr repeat(9,1fr) 2fr;grid-template-rows:2fr repeat(9,1fr) 2fr}}@media (max-width:650px){.monopoly-board{width:320px;height:320px}.center-logo h2{font-size:1.5em}.center-logo .subtitle{font-size:.7em}.sidebar,.right-sidebar,.game-log-panel{padding:10px}.monopoly-tile,.tile-name{font-size:6px}}@media (max-width:480px){.monopoly-board{width:280px;height:280px}.center-logo h2{font-size:1.2em}.center-logo .subtitle{display:none}body{padding:5px}}@media (max-width: 768px){.header-content{flex-direction:column;gap:15px;text-align:center}.main-nav{justify-content:center}.hero-section h2{font-size:2em}.game-mode-cards,.features-grid{grid-template-columns:1fr}.setup-header{flex-direction:column;align-items:flex-start;gap:10px}.players-preview{grid-template-columns:1fr}}.sidebar{padding-right:2px}.sidebar{width:280px;min-width:280px;order:-1;background:#fff;border-radius:8px;padding:15px;box-shadow:0 2px 8px #0000001a}.players h3{color:#333;font-size:16px;margin-bottom:12px;font-weight:700}.players .player{background:#fff;padding:12px;margin-bottom:8px;border-radius:8px;box-shadow:0 1px 3px #0000001a;border:1px solid #eee}.players .player.current{border:1px solid #f44336;background:#fff9f9}.player-info{display:flex;justify-content:space-between;align-items:center}.player-name{font-weight:700;font-size:14px}.player-money{color:#2e7d32;font-weight:700;font-size:14px}.player-position{font-size:12px;color:#666;margin-top:4px}.player-effects{margin-top:8px;display:flex;flex-direction:column;gap:4px}.effect-indicator{font-size:10px;padding:3px 6px;border-radius:12px;border:1px solid;display:inline-block;font-weight:600;letter-spacing:.3px;cursor:help;max-width:fit-content}.effect-indicator.statue{background:#b8860b1a;border-color:#b8860b;color:#b8860b}.effect-indicator.free-house{background:#4caf501a;border-color:#4caf50;color:#4caf50}.effect-indicator.teleportation{background:#9c27b01a;border-color:#9c27b0;color:#9c27b0}.controls{margin:20px 0;text-align:center;background:#fff;padding:15px;border-radius:8px;box-shadow:0 1px 3px #0000001a;border:1px solid #eee}.dice-button{background:#fff;border:1px solid #000;border-radius:8px;width:50px;height:50px;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;margin:0 auto;transition:all .2s ease}.dice-button:hover{background:#f5f5f5}.dice-button.end-turn{background:#4caf50;color:#fff;font-size:14px;font-weight:700;width:80px;height:40px}.dice-button.end-turn:hover{background:#388e3c}.log{background:#fff;padding:15px;height:180px;overflow:auto;border-radius:8px;border:1px solid #eee;box-shadow:0 1px 3px #0000001a;font-size:12px}.log h3{color:#333;margin-top:0;margin-bottom:10px;font-size:14px}.right-panels{display:flex;flex-direction:column;gap:15px;align-items:flex-start}.property-actions{background:#fff;border-radius:8px;padding:12px;margin:10px 0;border:1px solid #eee;box-shadow:0 1px 3px #0000001a;max-height:250px;overflow-y:auto}.property-actions h4{color:#333;margin-top:0;margin-bottom:8px;font-size:13px;text-align:center}.property-actions p{margin:4px 0;font-size:12px}.property-actions button{background:#f44336;color:#fff;border:none;padding:6px 10px;border-radius:4px;font-weight:700;cursor:pointer;margin:3px;font-size:11px;width:100%}.property-actions button:hover{background:#d32f2f}.property-actions button:last-child{background:#757575}.property-actions button:last-child:hover{background:#616161}.rent-info{background:#f5f5f5;padding:6px;border-radius:4px;margin:6px 0;border:1px solid #eee;font-size:10px}.rent-info p{margin:2px 0}.property-purchase-options{display:flex;flex-direction:column;gap:4px;margin:8px 0}.property-purchase-options button{margin:2px 0}.auction-container{background:#fff;border-radius:8px;padding:15px;margin:15px 0;border:2px solid #f44336;box-shadow:0 2px 8px #0003}.auction-container h3{color:#d32f2f;margin-top:0;margin-bottom:10px;font-size:16px;text-align:center}.auction-property{background:#f5f5f5;padding:10px;border-radius:6px;margin-bottom:10px;text-align:center}.property-name{font-weight:700;margin-bottom:5px;font-size:14px}.auction-timer{font-size:20px;font-weight:700;color:#d32f2f;margin:8px 0}.highest-bid{background:#f8f8f8;padding:8px;border-radius:4px;font-weight:700;text-align:center;margin-bottom:10px;border:1px solid #eee}.players-bids{display:flex;flex-direction:column;gap:8px}.player-bid{background:#fff;padding:8px;border-radius:6px;border:1px solid #ddd}.bid-player-info{display:flex;justify-content:space-between;margin-bottom:6px}.bid-player-name{font-weight:700}.bid-amount{color:#2e7d32;font-weight:700}.highest-bidder{color:#ff9800;font-size:16px;margin-left:5px}.bid-controls{display:flex;gap:5px;justify-content:center}.bid-controls button{background:#4caf50;color:#fff;border:none;padding:5px 8px;border-radius:4px;font-size:12px;cursor:pointer;transition:background-color .2s}.bid-controls button:disabled{background:#ccc;cursor:not-allowed}.bid-controls button:hover:not(:disabled){background:#388e3c}.property-purchase-options{display:flex;flex-direction:column;gap:8px;margin:10px 0}.property-purchase-options button{padding:10px}.room-welcome,.room-create,.room-join,.room-waiting{background:#fff;padding:25px;border-radius:8px;box-shadow:0 4px 12px #00000026;width:100%;max-width:500px;margin:0 auto;text-align:center}.room-welcome h2,.room-create h2,.room-join h2,.room-waiting h2{color:#d32f2f;margin-bottom:20px}.room-code-display{background:#f5f5f5;padding:15px;border-radius:6px;margin:20px 0;border:2px dashed #4caf50;text-align:center}.room-code-label{font-size:14px;color:#555;margin-bottom:5px;display:block}.room-code{font-size:32px;font-weight:700;color:#d32f2f;letter-spacing:3px;margin:10px 0}.copy-code-btn{background:#4caf50;color:#fff;border:none;padding:8px 15px;border-radius:4px;font-size:14px;cursor:pointer;margin-top:5px}.copy-code-btn:hover{background:#388e3c}.username-input,.roomcode-input{margin:20px 0;text-align:left}.username-input label,.roomcode-input label{display:block;font-weight:700;margin-bottom:5px}.username-input input,.roomcode-input input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:16px}.room-options{display:flex;flex-direction:column;gap:10px;margin-top:20px}.btn-create,.btn-join,.btn-start,.btn-back,.mode-button{padding:12px 20px;border:none;border-radius:4px;font-weight:700;cursor:pointer;font-size:16px;transition:all .2s ease}.btn-create,.mode-button.online{background:#4caf50;color:#fff}.btn-create:hover,.mode-button.online:hover{background:#388e3c}.btn-join{background:#2196f3;color:#fff}.btn-join:hover{background:#1976d2}.btn-back{background:#f5f5f5;color:#333;border:1px solid #ddd}.btn-back:hover{background:#e0e0e0}.btn-start{background:#f44336;color:#fff;padding:15px 25px;margin-top:20px}.btn-start:hover:not(:disabled){background:#d32f2f}.btn-start:disabled{background:#ffcdd2;cursor:not-allowed}.error{color:#f44336;margin:10px 0;padding:8px;background:#ffebee;border-radius:4px}.room-waiting .room-players{margin:20px 0;background:#f5f5f5;padding:15px;border-radius:8px;text-align:left}.players-list{list-style:none;padding:0;margin:10px 0 0}.players-list li{padding:8px 12px;border-bottom:1px solid #e0e0e0}.players-list li:last-child{border-bottom:none}.players-list li.host{font-weight:700;color:#d32f2f}.waiting-controls{margin-top:20px}.game-mode-selection{margin:20px 0}.game-modes{display:flex;gap:10px;margin-top:15px;justify-content:center}.mode-button{width:45%;padding:15px;font-size:18px}:root{--color-bg: #0d141b;--color-bg-alt: #161f29;--color-panel: #1d2733;--color-panel-alt: #233140;--color-border: #2e3c4a;--color-border-soft: #25323f;--color-text: #e3eaf1;--color-text-soft: #9aa9b9;--color-accent: #2d6cdf;--color-accent-hover: #3984ff;--color-accent-active: #1e56b5;--color-accent-glow: 0 0 0 3px rgba(45,108,223,.4);--color-success: #2e9562;--color-danger: #c4474a;--color-warning: #d3a848;--radius-xs: 4px;--radius-sm: 6px;--radius: 10px;--radius-lg: 18px;--transition: .25s cubic-bezier(.4,0,.2,1);--shadow-sm: 0 2px 4px -1px rgba(0,0,0,.5);--shadow: 0 4px 14px -4px rgba(0,0,0,.55), 0 2px 6px -2px rgba(0,0,0,.45);--shadow-glow: 0 4px 22px -4px rgba(45,108,223,.5);--grad-accent: linear-gradient(135deg,#2a5fbf,#1d406f 55%, #13283f);--grad-bg: radial-gradient(circle at 25% 20%, #182330 0%, #0d141b 65%)}body{background:var(--grad-bg) fixed;color:var(--color-text);-webkit-font-smoothing:antialiased}.app-header{background:var(--grad-accent);box-shadow:var(--shadow);border-bottom:1px solid #13325c}.logo h1{text-shadow:0 4px 18px rgba(0,0,0,.6);letter-spacing:.5px}.nav-link{background:#ffffff12;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.nav-link:hover{background:#ffffff2e}.nav-link.active{background:#ffffff47}.sidebar,.right-sidebar,.game-log-panel,.log,.property-actions,.auction-container,.room-welcome,.room-create,.room-join,.room-waiting,.players .player,.controls,.auction-property,.highest-bid,.player-bid,.room-code-display{background:linear-gradient(145deg,var(--color-panel) 0%,var(--color-panel-alt) 100%);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);color:var(--color-text)}.sidebar,.right-sidebar,.game-log-panel{box-shadow:var(--shadow);border-radius:var(--radius-lg)}.players .player.current{border:1px solid var(--color-accent);background:linear-gradient(145deg,#20344a,#182635);box-shadow:0 0 0 1px #2d6cdf66}.players .player{transition:background var(--transition),transform var(--transition)}.players .player:hover{background:#243548;transform:translateY(-2px)}.player-money{color:var(--color-success)}.log::-webkit-scrollbar,.players::-webkit-scrollbar,.sidebar::-webkit-scrollbar,.right-sidebar::-webkit-scrollbar,.game-log-panel::-webkit-scrollbar{width:10px}.log::-webkit-scrollbar-track,.players::-webkit-scrollbar-track,.sidebar::-webkit-scrollbar-track,.right-sidebar::-webkit-scrollbar-track,.game-log-panel::-webkit-scrollbar-track{background:#131c26}.log::-webkit-scrollbar-thumb,.players::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb,.right-sidebar::-webkit-scrollbar-thumb,.game-log-panel::-webkit-scrollbar-thumb{background:#2c3c4c;border-radius:20px;border:2px solid #131c26}.log::-webkit-scrollbar-thumb:hover,.players::-webkit-scrollbar-thumb:hover,.sidebar::-webkit-scrollbar-thumb:hover,.right-sidebar::-webkit-scrollbar-thumb:hover,.game-log-panel::-webkit-scrollbar-thumb:hover{background:#395066}.property-info-popup::-webkit-scrollbar{width:10px}.property-info-popup::-webkit-scrollbar-track{background:#131c26;border-radius:5px}.property-info-popup::-webkit-scrollbar-thumb{background:#2c3c4c;border-radius:20px;border:2px solid #131c26}.property-info-popup::-webkit-scrollbar-thumb:hover{background:#395066}.property-info-popup *{max-width:100%;word-wrap:break-word;overflow-wrap:break-word}button,.mode-button,.btn-create,.btn-join,.btn-start,.btn-back,.copy-code-btn{background:var(--color-accent);color:#fff;border:1px solid #1f58ad;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;letter-spacing:.5px;position:relative;transition:var(--transition);box-shadow:0 2px 6px -2px #0009,0 0 #2d6cdf00}button:hover,.mode-button:hover,.btn-create:hover,.btn-join:hover,.btn-start:hover:not(:disabled),.copy-code-btn:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-glow)}button:active{background:var(--color-accent-active);transform:translateY(1px);box-shadow:0 1px 4px -1px #000000b3}button:disabled{background:#2c3d52;color:#5d6e7e;border-color:#2c3d52;box-shadow:none}.btn-back{background:#273646;border:1px solid #34495c}.btn-back:hover{background:#354a60}.btn-start{background:var(--color-success);border-color:#1c6e45}.btn-start:hover:not(:disabled){background:#34b276}.property-actions button:last-child{background:#37495c}.property-actions button:last-child:hover{background:#44607a}.dice-button{background:linear-gradient(145deg,#25508c,#1c3d69);border:1px solid #1b4a89;width:70px;height:70px;font-size:30px;border-radius:22px;box-shadow:0 6px 18px -6px #000000bf,0 0 #2d6cdf66;transition:var(--transition)}.dice-button:hover{background:linear-gradient(145deg,#2d69c2,#25508c);box-shadow:0 8px 26px -8px #000000d9,var(--color-accent-glow)}.dice-button.end-turn{background:var(--color-success);border-color:#1f7248;width:110px;height:48px;font-size:16px;border-radius:14px}.dice-button.end-turn:hover{background:#34b276}.log{font-size:12.5px;line-height:1.35;background:linear-gradient(145deg,#1b2732,#182129)}.log h3{color:var(--color-text);border-bottom:1px solid var(--color-border);padding-bottom:4px}.property-actions{background:#1f2c37;border-radius:14px;box-shadow:var(--shadow)}.property-actions h4{color:var(--color-text);font-size:15px;letter-spacing:.5px}.property-actions .rent-info{background:#253544;border:1px solid #314455;color:var(--color-text-soft)}.property-actions button{background:var(--color-accent);border:1px solid #1f58ad}.property-actions button:hover{background:var(--color-accent-hover)}.auction-container{border:1px solid #2a4460;box-shadow:var(--shadow)}.auction-container h3{color:var(--color-accent)}.auction-timer{color:var(--color-warning)}.highest-bid{background:#233241;border:1px solid #2f4356}.bid-controls button{background:var(--color-accent);border:1px solid #1f58ad}.bid-controls button:hover{background:var(--color-accent-hover)}.username-input input,.roomcode-input input{background:#1b2732;border:1px solid #314456;color:var(--color-text)}.username-input input:focus,.roomcode-input input:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--color-accent-glow)}.waiting-turn{background:#1d2a35;color:var(--color-text-soft);border:1px solid #2c3b49}.online-indicator{background:#253341;padding:4px 10px;display:inline-block;border-radius:999px;font-size:11px;letter-spacing:.5px;color:var(--color-text-soft);border:1px solid #324556}.monopoly-board{filter:drop-shadow(0 10px 30px rgba(0,0,0,.55))}.monopoly-tile{background:#233242;border:1px solid #2e4357;color:var(--color-text-soft)}.monopoly-tile.corner{background:#1f2c39}.monopoly-tile.property-owned{outline:2px solid var(--color-accent);box-shadow:0 0 0 3px #2d6cdf40}.player-position,.tile-name,.subtitle,.room-code-label{color:var(--color-text-soft)}.sidebar a,.right-sidebar a,.game-log-panel a,.log a{color:var(--color-accent);text-decoration:none}.sidebar a:hover,.right-sidebar a:hover,.game-log-panel a:hover,.log a:hover{text-decoration:underline}.fade-in{animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.dice-button{width:60px;height:60px;font-size:26px}.sidebar,.right-sidebar,.game-log-panel{padding:12px}}.hero-section.compact{text-align:center;padding:60px 20px 30px}.hero-title{font-size:clamp(2.4rem,5vw,3.4rem);margin:0 0 10px;letter-spacing:.5px;background:linear-gradient(90deg,#fff,#7fa8e6);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-sub{margin:0 0 35px;color:var(--color-text-soft);font-size:15px;letter-spacing:1px;text-transform:uppercase}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:560px;margin:0 auto 40px;position:relative}.mode-choice{display:flex;align-items:center;justify-content:center;padding:55px 10px;font-size:clamp(1.3rem,2.4vw,1.9rem);font-weight:700;background:linear-gradient(160deg,#233344,#1b2733);border:1px solid #2e3c4a;border-radius:26px;text-decoration:none;color:var(--color-text);box-shadow:0 10px 28px -10px #000000a6,0 0 #2d6cdf00;letter-spacing:.5px;position:relative;overflow:hidden;transition:var(--transition)}.mode-choice:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 20%,rgba(65,123,218,.4),transparent 60%);opacity:0;transition:var(--transition)}.mode-choice.left{background:linear-gradient(145deg,#214266,#1a2f44)}.mode-choice.right{background:linear-gradient(145deg,#273d5a,#1d2d40)}.mode-choice:hover{transform:translateY(-6px);box-shadow:0 18px 38px -14px #000000bf,0 0 0 2px rgba(45,108,223,)}:root{--board-bg: #1d2732;--board-border: #2f3f52;--tile-bg: #243343;--tile-bg-alt: #273a4d;--tile-border: #31495f;--corner-bg: linear-gradient(135deg,#2f455d,#1e2d3b);--highlight: #4d8fe0;--text-light: #d8e2ec;--text-dim: #93a6b8;--property-strip-height: 14px;--transition: .22s cubic-bezier(.4,.25,.3,1);--bg-dark: #1b2732;--bg-darker: #15202b;--border-color: #2e3c4a;--accent-color: #3498db;--accent-dark: #2980b9}.board-wrapper{background:var(--board-bg);border:6px solid var(--board-border);border-radius:18px;padding:14px;box-shadow:0 0 0 2px #15202b,0 6px 18px -6px #0009;position:relative}.monopoly-board{display:grid;grid-template-columns:2fr repeat(9,1fr) 2fr;grid-template-rows:2fr repeat(9,1fr) 2fr;aspect-ratio:1 / 1;width:100%;max-width:780px;margin:0 auto;background:radial-gradient(circle at 50% 50%,#223142,#1b2733 70%);position:relative;font-size:11px;color:var(--text-light);-webkit-user-select:none;user-select:none;gap:1px}.monopoly-tile{background:var(--tile-bg);border:1px solid var(--tile-border);display:flex;flex-direction:column;justify-content:flex-start;padding:4px;position:relative;overflow:hidden;transition:background var(--transition),transform var(--transition),box-shadow var(--transition);width:100%;height:100%;box-sizing:border-box}.monopoly-tile:nth-child(odd){background:var(--tile-bg-alt)}.monopoly-tile.corner{background:var(--corner-bg);border:2px solid var(--tile-border);font-size:14px;font-weight:600;justify-content:center;align-items:center;padding:8px;text-align:center;letter-spacing:.5px;box-shadow:inset 0 0 0 1px #ffffff0a;width:100%;height:100%}.monopoly-tile:not(.corner) .tile-name{font-size:10px;line-height:1.1;margin-bottom:2px;text-align:center}.monopoly-tile:not(.corner) .tile-price{font-size:9px;margin-top:auto;text-align:center}.monopoly-tile:hover{background:#2e465b;transform:translateY(-2px);box-shadow:0 6px 14px -6px #0009,0 0 0 1px #3f607c;z-index:5}.monopoly-tile.corner:hover{background:linear-gradient(135deg,#396086,#22384c)}.monopoly-tile .color-strip{height:var(--property-strip-height);width:100%;margin:-4px -3px 4px;box-shadow:0 2px 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-bottom:1px solid rgba(0,0,0,.4)}.tile-name{font-weight:600;line-height:1.1;margin-bottom:2px;color:var(--text-light);text-align:center;word-break:break-word}.tile-price{font-size:10px;text-align:center;opacity:.75;margin-top:auto;padding-top:2px;color:var(--text-dim)}.tile-players,.players-on-tile{margin-top:2px;display:flex;flex-wrap:wrap;gap:2px;justify-content:center}.token,.player-token{width:12px;height:12px;border-radius:50%;border:1px solid #101820;box-shadow:0 0 0 1px #ffffff26,0 1px 3px #000000b3;flex:0 0 auto;position:relative;background:linear-gradient(145deg,#5da2ff,#1d3b57)}.center-logo{position:absolute;top:14%;right:14%;bottom:14%;left:14%;background:#1018208c;border:2px solid #2e4356;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:inset 0 0 0 1px #ffffff0d,0 10px 28px -12px #000000a6;text-align:center;padding:16px}.center-logo h2{font-size:clamp(1.6rem,2.4vw,2.6rem);margin:0;letter-spacing:1px;background:linear-gradient(90deg,#a8c7e9,#fff);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:700}.center-logo .subtitle{font-size:.75rem;letter-spacing:2px;margin-top:4px;text-transform:uppercase;color:var(--text-dim)}.monopoly-board>.monopoly-tile{display:none}.monopoly-board>.monopoly-tile:nth-child(-n+40){display:flex}.monopoly-board>.monopoly-tile:nth-child(1){grid-row:11;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(2){grid-row:11;grid-column:10;display:flex}.monopoly-board>.monopoly-tile:nth-child(3){grid-row:11;grid-column:9;display:flex}.monopoly-board>.monopoly-tile:nth-child(4){grid-row:11;grid-column:8;display:flex}.monopoly-board>.monopoly-tile:nth-child(5){grid-row:11;grid-column:7;display:flex}.monopoly-board>.monopoly-tile:nth-child(6){grid-row:11;grid-column:6;display:flex}.monopoly-board>.monopoly-tile:nth-child(7){grid-row:11;grid-column:5;display:flex}.monopoly-board>.monopoly-tile:nth-child(8){grid-row:11;grid-column:4;display:flex}.monopoly-board>.monopoly-tile:nth-child(9){grid-row:11;grid-column:3;display:flex}.monopoly-board>.monopoly-tile:nth-child(10){grid-row:11;grid-column:2;display:flex}.monopoly-board>.monopoly-tile:nth-child(11){grid-row:11;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(12){grid-row:10;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(13){grid-row:9;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(14){grid-row:8;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(15){grid-row:7;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(16){grid-row:6;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(17){grid-row:5;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(18){grid-row:4;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(19){grid-row:3;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(20){grid-row:2;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(21){grid-row:1;grid-column:1;display:flex}.monopoly-board>.monopoly-tile:nth-child(22){grid-row:1;grid-column:2;display:flex}.monopoly-board>.monopoly-tile:nth-child(23){grid-row:1;grid-column:3;display:flex}.monopoly-board>.monopoly-tile:nth-child(24){grid-row:1;grid-column:4;display:flex}.monopoly-board>.monopoly-tile:nth-child(25){grid-row:1;grid-column:5;display:flex}.monopoly-board>.monopoly-tile:nth-child(26){grid-row:1;grid-column:6;display:flex}.monopoly-board>.monopoly-tile:nth-child(27){grid-row:1;grid-column:7;display:flex}.monopoly-board>.monopoly-tile:nth-child(28){grid-row:1;grid-column:8;display:flex}.monopoly-board>.monopoly-tile:nth-child(29){grid-row:1;grid-column:9;display:flex}.monopoly-board>.monopoly-tile:nth-child(30){grid-row:1;grid-column:10;display:flex}.monopoly-board>.monopoly-tile:nth-child(31){grid-row:1;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(32){grid-row:2;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(33){grid-row:3;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(34){grid-row:4;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(35){grid-row:5;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(36){grid-row:6;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(37){grid-row:7;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(38){grid-row:8;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(39){grid-row:9;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(40){grid-row:10;grid-column:11;display:flex}.monopoly-board>.monopoly-tile:nth-child(1),.monopoly-board>.monopoly-tile:nth-child(11),.monopoly-board>.monopoly-tile:nth-child(21),.monopoly-board>.monopoly-tile:nth-child(31){font-size:16px;letter-spacing:.8px;text-transform:uppercase;border:3px solid #3a556d;box-shadow:inset 0 0 0 2px #ffffff0d,0 8px 16px -8px #000000e6;font-weight:700}.monopoly-tile.left:not(.corner) .tile-content{transform:rotate(90deg);transform-origin:center center;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2px;box-sizing:border-box}.monopoly-tile.left:not(.corner) .tile-players{transform:rotate(90deg);transform-origin:center center;position:absolute;bottom:2px;left:50%;transform-origin:center bottom;transform:translate(-50%) rotate(90deg)}.monopoly-tile.right:not(.corner) .tile-content{transform:rotate(-90deg);transform-origin:center center;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2px;box-sizing:border-box}.monopoly-tile.right:not(.corner) .tile-players{transform:rotate(-90deg);transform-origin:center center;position:absolute;bottom:2px;left:50%;transform-origin:center bottom;transform:translate(-50%) rotate(-90deg)}.monopoly-tile.left:not(.corner) .tile-name,.monopoly-tile.right:not(.corner) .tile-name{font-size:8px;line-height:1.1;text-align:center;margin-bottom:2px}.monopoly-tile.left:not(.corner) .tile-price,.monopoly-tile.right:not(.corner) .tile-price{font-size:7px;text-align:center}.monopoly-tile.bottom .color-strip{position:absolute;bottom:0;left:0;height:var(--property-strip-height);width:100%;margin:0;box-shadow:0 2px 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-top:1px solid rgba(0,0,0,.4)}.monopoly-tile.left .color-strip{position:absolute;left:0;top:0;width:var(--property-strip-height);height:100%;margin:0;box-shadow:2px 0 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-right:1px solid rgba(0,0,0,.4)}.monopoly-tile.top .color-strip{position:absolute;top:0;left:0;height:var(--property-strip-height);width:100%;margin:0;box-shadow:0 -2px 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-bottom:1px solid rgba(0,0,0,.4)}.monopoly-tile.right .color-strip{position:absolute;right:0;top:0;width:var(--property-strip-height);height:100%;margin:0;box-shadow:-2px 0 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-left:1px solid rgba(0,0,0,.4)}.monopoly-tile.bottom .owner-strip{position:absolute;top:0;left:0;height:var(--property-strip-height);width:100%;margin:0;box-shadow:0 2px 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-bottom:1px solid rgba(0,0,0,.4);z-index:2}.monopoly-tile.left .owner-strip{position:absolute;right:0;top:0;width:var(--property-strip-height);height:100%;margin:0;box-shadow:-2px 0 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-left:1px solid rgba(0,0,0,.4);z-index:2}.monopoly-tile.top .owner-strip{position:absolute;bottom:0;left:0;height:var(--property-strip-height);width:100%;margin:0;box-shadow:0 -2px 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-top:1px solid rgba(0,0,0,.4);z-index:2}.monopoly-tile.right .owner-strip{position:absolute;left:0;top:0;width:var(--property-strip-height);height:100%;margin:0;box-shadow:2px 0 3px -2px #0009,inset 0 0 0 1px #ffffff14;border-right:1px solid rgba(0,0,0,.4);z-index:2}.property-info-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:flex-end;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.property-info-popup{background:linear-gradient(145deg,var(--color-panel) 0%,var(--color-panel-alt) 100%);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow),var(--shadow-glow);width:400px;max-width:90vw;max-height:90vh;margin-right:20px;overflow-y:auto;overflow-x:hidden;color:var(--color-text);word-wrap:break-word;box-sizing:border-box}.property-info-popup .close-button{position:absolute;top:15px;right:15px;background:var(--color-accent);border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#fff;cursor:pointer;transition:var(--transition);z-index:1001}.property-info-popup .close-button:hover{background:var(--color-accent-hover);transform:scale(1.1)}.property-header{position:relative;padding:20px 50px 20px 20px;border-bottom:1px solid var(--color-border);word-wrap:break-word;overflow-wrap:break-word}.property-color-bar{height:8px;width:100%;margin-bottom:15px;border-radius:4px;box-shadow:0 2px 4px #0000004d}.property-name{margin:0;font-size:24px;font-weight:700;color:var(--color-text);line-height:1.2;word-wrap:break-word;overflow-wrap:break-word}.property-details{padding:20px;word-wrap:break-word;overflow-wrap:break-word}.detail-section{margin-bottom:25px;width:100%;box-sizing:border-box}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin:0 0 10px;font-size:16px;font-weight:600;color:var(--color-accent);border-bottom:1px solid var(--color-border-soft);padding-bottom:5px;word-wrap:break-word;overflow-wrap:break-word}.detail-section p{margin:0;font-size:14px;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word}.rent-list{display:flex;flex-direction:column;gap:8px;width:100%;box-sizing:border-box}.rent-item{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:8px 12px;background:var(--color-bg-alt);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);width:100%;box-sizing:border-box;min-width:0;gap:4px}.rent-label{font-size:13px;color:var(--color-text-soft);word-wrap:break-word;overflow-wrap:break-word;margin-bottom:2px}.rent-amount{font-size:14px;font-weight:600;color:var(--color-success)}.property-price,.house-price{font-size:18px!important;font-weight:700;color:var(--color-success);background:var(--color-bg-alt);padding:10px 15px;border-radius:var(--radius-sm);border:1px solid var(--color-border-soft);text-align:center;width:100%;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word}.ownership-info{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:15px;width:100%;box-sizing:border-box}.ownership-info h4{color:var(--color-warning);border-bottom-color:var(--color-warning)}.important-notes{margin:0;padding-left:18px;list-style-type:disc}.important-notes li{margin-bottom:8px;font-size:13px;line-height:1.4;color:var(--color-text-soft)}.important-notes li:last-child{margin-bottom:0}.property-panel{background:linear-gradient(145deg,var(--color-panel) 0%,var(--color-panel-alt) 100%);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:15px;margin-bottom:15px;box-shadow:var(--shadow-sm)}.property-panel h3{margin:0 0 15px;color:var(--color-text);font-size:16px;font-weight:600;border-bottom:1px solid var(--color-border);padding-bottom:8px}.no-properties{text-align:center;color:var(--color-text-soft);font-size:13px;line-height:1.4;padding:20px 10px}.no-properties p{margin:0 0 8px}.property-groups{max-height:300px;overflow-y:auto;padding-right:5px}.property-group{margin-bottom:15px}.property-group:last-child{margin-bottom:0}.group-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:4px 0}.group-color-bar{width:20px;height:12px;border-radius:2px;border:1px solid var(--color-border);box-shadow:0 1px 2px #0003}.group-name{font-size:12px;font-weight:600;color:var(--color-text);text-transform:uppercase;letter-spacing:.5px}.properties-list{display:flex;flex-direction:column;gap:6px}.property-item{background:var(--color-bg-alt);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);padding:10px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:var(--transition)}.property-item:hover{background:var(--color-panel);border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 2px 8px #0003}.property-info{flex:1}.property-name{font-size:13px;font-weight:600;color:var(--color-text);margin-bottom:4px;line-height:1.2}.property-details{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.property-value{font-size:12px;color:var(--color-success);font-weight:600}.property-houses{font-size:11px;color:var(--color-warning);background:#d3a8481a;padding:2px 6px;border-radius:10px;border:1px solid rgba(211,168,72,.3)}.property-actions{display:flex;gap:4px}.info-button{background:var(--color-accent);border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;transition:var(--transition);color:#fff}.info-button:hover{background:var(--color-accent-hover);transform:scale(1.1)}.property-summary{margin-top:15px;padding-top:12px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:6px}.summary-item{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;font-size:12px;gap:2px}.summary-item span:first-child{color:var(--color-text-soft);font-size:11px}.summary-item span:last-child{color:var(--color-text);font-weight:600;font-size:13px}.property-groups::-webkit-scrollbar{width:6px}.property-groups::-webkit-scrollbar-track{background:var(--color-bg);border-radius:3px}.property-groups::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.property-groups::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}.game-log-panel{width:300px;min-width:280px;max-height:200px;overflow-y:auto;margin-top:15px;padding:15px}.monopoly-tile.bottom:not(.corner){padding:calc(var(--property-strip-height) + 2px) 4px calc(var(--property-strip-height) + 4px) 4px}.monopoly-tile.left:not(.corner){padding:4px calc(var(--property-strip-height) + 2px) 4px calc(var(--property-strip-height) + 4px)}.monopoly-tile.top:not(.corner){padding:calc(var(--property-strip-height) + 4px) 4px calc(var(--property-strip-height) + 2px) 4px}.monopoly-tile.right:not(.corner){padding:4px calc(var(--property-strip-height) + 4px) 4px calc(var(--property-strip-height) + 2px)}:root{--player-color-red: #e53e3e;--player-color-blue: #3182ce;--player-color-green: #38a169;--player-color-yellow: #d69e2e;--player-color-purple: #805ad5;--player-color-orange: #dd6b20;--player-color-pink: #d53f8c;--player-color-teal: #319795}.owner-strip.player-red{background:var(--player-color-red)}.owner-strip.player-blue{background:var(--player-color-blue)}.owner-strip.player-green{background:var(--player-color-green)}.owner-strip.player-yellow{background:var(--player-color-yellow)}.owner-strip.player-purple{background:var(--player-color-purple)}.owner-strip.player-orange{background:var(--player-color-orange)}.owner-strip.player-pink{background:var(--player-color-pink)}.owner-strip.player-teal{background:var(--player-color-teal)}.player-color-red{background:#e53e3e}.player-color-blue{background:#3182ce}.player-color-green{background:#38a169}.player-color-yellow{background:#d69e2e}.player-color-purple{background:#805ad5}.player-color-orange{background:#dd6b20}.player-color-pink{background:#d53f8c}.player-color-teal{background:#319795}.player-token.player-red{background:var(--player-color-red)}.player-token.player-blue{background:var(--player-color-blue)}.player-token.player-green{background:var(--player-color-green)}.player-token.player-yellow{background:var(--player-color-yellow)}.player-token.player-purple{background:var(--player-color-purple)}.player-token.player-orange{background:var(--player-color-orange)}.player-token.player-pink{background:var(--player-color-pink)}.player-token.player-teal{background:var(--player-color-teal)}.chance-card-blocking-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:all}.chance-card-modal-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%;pointer-events:none}.chance-card-modal{background:linear-gradient(145deg,#1f2c37,#243343);border:2px solid #d4af37;border-radius:16px;padding:25px;max-width:400px;width:90%;box-shadow:0 10px 30px #000c,0 0 0 1px #d4af3780;color:var(--color-text);text-align:center;animation:cardSlideIn .4s ease-out;pointer-events:all}.chance-card-sidebar{background:linear-gradient(145deg,#1f2c37,#243343);border:2px solid #d4af37;border-radius:12px;padding:20px;margin-top:20px;width:100%;box-shadow:0 4px 12px #0009;color:var(--color-text);text-align:center;animation:slideInFromTop .3s ease-out}.selected-location{background:#d4af371a;border:1px solid rgba(212,175,55,.3);border-radius:8px;padding:10px;margin:15px 0}.selected-location p{margin:5px 0}.chance-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid rgba(212,175,55,.3);padding-bottom:10px}.chance-card-header h3{margin:0;font-size:24px;font-weight:700;color:#d4af37;text-shadow:0 2px 4px rgba(0,0,0,.5);letter-spacing:2px}.chance-card-header .close-button{background:none;border:none;color:#d4af37;font-size:24px;font-weight:700;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.chance-card-header .close-button:hover{background:#d4af3733;transform:scale(1.1)}.chance-card-content{margin-bottom:25px}.chance-card-content h4{margin:0 0 15px;font-size:18px;font-weight:600;color:var(--color-text);line-height:1.3}.chance-card-content p{margin:0;font-size:14px;color:var(--color-text-soft);line-height:1.5}.chance-card-actions{display:flex;justify-content:center}.chance-card-button{background:#d4af37;color:#1a1a1a;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #d4af374d;letter-spacing:.5px}.chance-card-button:disabled{background:#666;color:#999;cursor:not-allowed;box-shadow:0 2px 6px #0000004d}.chance-card-button:hover:not(:disabled){background:#e6c247;transform:translateY(-2px);box-shadow:0 6px 16px #d4af3766}.chance-card-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #d4af374d}@keyframes cardSlideIn{0%{opacity:0;transform:scale(.8) translateY(-50px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.community-card-sidebar{background:linear-gradient(145deg,#2d1b37,#3d2b43);border:2px solid #9b59b6;border-radius:12px;padding:20px;margin-top:20px;width:100%;box-shadow:0 4px 12px #0009;color:var(--color-text);text-align:center;animation:slideInFromTop .3s ease-out}.community-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid rgba(155,89,182,.3);padding-bottom:10px}.community-card-header h3{margin:0;font-size:20px;font-weight:700;color:#9b59b6;text-shadow:0 2px 4px rgba(0,0,0,.5);letter-spacing:1px}.community-card-content{margin-bottom:20px}.community-card-content h4{margin:0 0 10px;font-size:18px;font-weight:600;color:#fff}.community-card-content p{margin:0;font-size:14px;color:#ccc;line-height:1.4}.community-card-actions{display:flex;justify-content:center}.community-card-button{background:#9b59b6;color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #9b59b64d;letter-spacing:.5px}.community-card-button:disabled{background:#666;color:#999;cursor:not-allowed;box-shadow:0 2px 6px #0000004d}.community-card-button:hover:not(:disabled){background:#8e44ad;transform:translateY(-2px);box-shadow:0 6px 16px #9b59b666}.community-card-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #9b59b64d}.teleportation-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:all}.teleportation-modal{background:linear-gradient(145deg,#1f2c37,#243343);border:2px solid #9c27b0;border-radius:16px;padding:25px;max-width:500px;width:90%;box-shadow:0 10px 30px #000c,0 0 0 1px #9c27b080;color:var(--color-text);animation:cardSlideIn .4s ease-out}.teleportation-header{text-align:center;margin-bottom:20px}.teleportation-header h3{margin:0 0 10px;font-size:24px;font-weight:700;color:#9c27b0;text-shadow:0 2px 4px rgba(0,0,0,.5);letter-spacing:2px}.teleportation-header p{margin:0;color:var(--color-text-soft);font-size:14px}.teleportation-content{margin-bottom:25px}.position-selector{margin-bottom:20px}.position-selector label{display:block;margin-bottom:8px;font-weight:600;color:var(--color-text)}.position-selector select{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-alt);color:var(--color-text);font-size:14px}.selected-tile-info{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:8px;padding:15px}.selected-tile-info h4{margin:0 0 10px;color:var(--color-text);font-size:16px}.selected-tile-info p{margin:5px 0;color:var(--color-text-soft);font-size:14px}.teleportation-actions{display:flex;gap:10px;justify-content:center}.teleport-button{background:#9c27b0;color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #9c27b04d;letter-spacing:.5px}.teleport-button:hover{background:#ad42c4;transform:translateY(-2px);box-shadow:0 6px 16px #9c27b066}.cancel-button{background:#37495c;color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.cancel-button:hover{background:#44607a}.special-action-button{background:linear-gradient(145deg,#8e24aa,#7b1fa2);color:#fff;border:none;border-radius:8px;padding:8px 15px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 3px 8px #9c27b04d;letter-spacing:.5px;width:100%}.special-action-button:hover{background:linear-gradient(145deg,#9c27b0,#8e24aa);transform:translateY(-2px);box-shadow:0 5px 12px #9c27b066}.player-color-setup{max-width:600px;margin:0 auto;padding:2rem;background:var(--bg-dark);border-radius:8px;border:1px solid var(--border-color)}.setup-header{text-align:center;margin-bottom:2rem}.setup-header h2{color:var(--text-light);margin-bottom:.5rem}.setup-header p{color:var(--text-dim);font-size:.9rem}.random-color-option{margin-top:1rem;padding:.75rem;background:var(--bg-darker);border-radius:6px;border:1px solid var(--border-color)}.random-color-option label{display:flex;align-items:center;gap:.5rem;color:var(--text-light);font-size:.9rem;cursor:pointer}.random-color-option input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-color)}.players-setup{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.player-setup-row{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-darker);border-radius:6px;border:1px solid var(--border-color)}.player-info{flex:1;display:flex;flex-direction:column;gap:.5rem}.player-label{font-weight:600;color:var(--text-light);font-size:.9rem}.player-name-input{padding:.5rem;background:var(--bg-dark);border:1px solid var(--border-color);border-radius:4px;color:var(--text-light);font-size:.9rem}.player-name-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #3498db33}.player-preview{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:var(--color-panel-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:var(--transition)}.player-preview:hover{background:#243548;transform:translateY(-1px)}.player-info{display:flex;align-items:center;gap:.75rem}.player-number{background:var(--color-accent);color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;flex-shrink:0}.player-name-input{flex:1;padding:.4rem .6rem;background:var(--color-bg-alt);border:1px solid var(--border-color-soft);border-radius:4px;color:var(--color-text);font-size:.9rem}.player-name-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #2d6cdf33}.player-type{font-size:.8rem;color:var(--color-text-soft);background:var(--color-bg-alt);padding:.2rem .6rem;border-radius:12px;flex-shrink:0}.player-preview.ai .player-type{background:#2d5a2d;color:#90ee90}.color-options{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;padding:.5rem;background:var(--bg-dark);border-radius:8px;border:1px solid var(--border-color)}.color-option{width:45px;height:45px;border:3px solid transparent;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;color:#fff;font-weight:700;font-size:1.1rem;text-shadow:0 1px 3px rgba(0,0,0,.8);position:relative;box-shadow:0 2px 8px #0003}.color-option:hover:not(.disabled){transform:scale(1.2);border-color:var(--text-light);box-shadow:0 4px 16px #0000004d}.color-option.selected{border-color:var(--accent-color);box-shadow:0 0 0 3px #3498db66,0 4px 16px #0000004d;transform:scale(1.2)}.color-option.disabled{opacity:.3;cursor:not-allowed;transform:none}.color-option.disabled:after{content:"✗";position:absolute;color:#f44;font-weight:700;font-size:1.4rem;text-shadow:0 0 6px rgba(0,0,0,.9)}.color-option.random-option{background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#96ceb4,#fecca7,#ff9ff3);background-size:400% 400%;animation:rainbowShift 2s ease-in-out infinite}.color-option.random-option.selected{border-color:gold;box-shadow:0 0 0 3px #ffd70066,0 4px 16px #0000004d}@keyframes rainbowShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.mock-player-color-selection{display:flex;flex-direction:column;gap:1rem;align-items:center;opacity:.8}.mock-player-color-selection .color-options{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.mock-player-color-selection .color-option{width:32px;height:32px;border:2px solid transparent;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#fff;font-weight:700;font-size:.8rem;text-shadow:0 1px 2px rgba(0,0,0,.7)}.mock-player-color-selection .color-option:hover:not(.disabled){transform:scale(1.1);border-color:var(--text-light)}.mock-player-color-selection .color-option.selected{border-color:var(--accent-color);box-shadow:0 0 0 2px #3498db4d;transform:scale(1.1)}.mock-player-color-selection .color-option.disabled{opacity:.3;cursor:not-allowed}.mock-player-status{padding:.5rem;background:var(--bg-dark);border-radius:6px;border:1px solid var(--border-color)}.waiting-text{color:var(--text-soft);font-style:italic;font-size:.9rem}.auto-select-btn{margin-top:.5rem;padding:.4rem .8rem;background:var(--accent-color);color:#fff;border:none;border-radius:4px;font-size:.8rem;cursor:pointer;transition:all .2s ease}.auto-select-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.test-room-buttons{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.test-instructions{margin-top:1.5rem;padding:1rem;background:#28a7451a;border:1px solid #28a745;border-radius:6px;font-size:.9rem}.test-instructions p{margin:.5rem 0;color:var(--text-light)}.test-instructions p:first-child{font-weight:600;color:#28a745;margin-bottom:.75rem}@media (min-width: 480px){.test-room-buttons{flex-direction:row;justify-content:space-between}.test-room-buttons .join-room-btn{flex:1;margin:0 .5rem}}.room-not-found-page{width:100%;max-width:600px;margin:0 auto;padding:2rem}.not-found-container{background:var(--card-bg);border-radius:16px;padding:2rem;box-shadow:var(--shadow);text-align:center}.not-found-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;text-align:left}.not-found-header h2{margin:0;color:var(--text-primary);flex:1;text-align:center}.not-found-content{text-align:center}.error-icon{font-size:4rem;margin-bottom:1rem}.not-found-content h3{color:var(--text-primary);margin-bottom:1rem;font-size:1.5rem}.not-found-content p{color:var(--text-secondary);margin-bottom:2rem;font-size:1.1rem}.not-found-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.primary-btn,.secondary-btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;min-width:140px}.primary-btn{background:var(--primary-color);color:#fff}.primary-btn:hover{background:var(--primary-dark);transform:translateY(-1px)}.secondary-btn{background:var(--secondary-bg);color:var(--text-primary);border:2px solid var(--border-color)}.secondary-btn:hover{background:var(--border-color);transform:translateY(-1px)}
