:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--board-bg: #CDE6D0;--card-bg: #FFFFFF;--text-dark: #000}body{margin:0;background-color:#1a1a1a;font-family:Segoe UI,Roboto,sans-serif;overflow:hidden;color:#fff}.game-container{height:100vh;width:100vw;display:flex;flex-direction:column;align-items:center}.top-ui-area{width:100%;height:20vh;display:flex;justify-content:space-between;padding:5px 10px;box-sizing:border-box;background:#222;border-bottom:2px solid #f1c40f;z-index:50}.chat-container{width:60%;background:#333;border-radius:6px;display:flex;flex-direction:column;border:1px solid #555}.chat-messages{flex:1;overflow-y:auto;padding:5px;list-style:none;margin:0;font-size:.6rem}.chat-messages li{margin-bottom:2px;border-bottom:1px solid #444}.chat-input-area{display:flex;border-top:1px solid #555}.chat-input{flex:1;padding:5px;background:#222;color:#fff;border:none;font-size:.7rem}.btn-send{background:#f1c40f;border:none;padding:0 10px;font-weight:700}.players-list{width:38%;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.player-badge{background:#444;border-left:4px solid gray;padding:3px;border-radius:3px;font-size:.55rem;display:flex;justify-content:space-between;align-items:center;color:#fff}.player-badge.active-turn{background:#fff;color:#000;border-left-width:6px;transform:scale(1.02)}.board-grid{margin-top:10px;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr);height:55vh;width:55vh;max-width:95vw;max-height:95vw;background-color:var(--board-bg);border:4px solid #000;position:relative;box-shadow:0 10px 30px #00000080;font-size:.6rem;color:#000}.token{width:32px;height:32px;border-radius:50%;border:2px solid white;box-shadow:0 5px 8px #0009;display:flex;justify-content:center;align-items:center;font-size:1.4rem;z-index:100;position:relative;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.token-container{display:flex;justify-content:center;align-items:flex-end;flex-wrap:wrap;position:absolute;bottom:-8px;width:100%;height:40px;pointer-events:none}.center-area{grid-column:2 / span 3;grid-row:2 / span 3;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background-color:var(--board-bg);z-index:1}.monopoly-logo{background:#e3000e;color:#fff;font-weight:900;font-size:1.2rem;padding:3px 10px;transform:rotate(-45deg);border:2px solid white;box-shadow:2px 2px 5px #0000004d;margin-bottom:5px}.monopoly-logo small{display:block;font-size:.5rem;font-weight:400}.cell{background-color:var(--card-bg);border:1px solid #333;display:flex;flex-direction:column;position:relative;text-align:center;color:#000}.cell-header{height:20%;width:100%;border-bottom:1px solid #000;display:flex;justify-content:center;align-items:center}.cell-body{flex:1;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding:2px}.cell-body strong{font-size:.45rem;line-height:1.1;margin-bottom:2px}.price{font-size:.4rem;color:#555;background:#fffc;padding:1px 2px;border-radius:2px}.icon{font-size:.7rem}.cell.corner{background-color:var(--board-bg)}.controls-area{display:flex;flex-direction:column;gap:3px;align-items:center;z-index:10;width:100%}.btn-roll{background:#000;color:#fff;border:none;padding:6px 15px;cursor:pointer;border-radius:4px;font-weight:700;font-size:.8rem}.btn-buy{background:#27ae60;color:#fff;border:none;padding:4px 8px;border-radius:4px;font-size:.6rem}.floating-money{position:absolute;font-weight:700;font-size:1rem;z-index:100;text-shadow:1px 1px 0 #fff;color:green}.floating-money.minus{color:red}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;z-index:99;display:flex;justify-content:center;align-items:center}.modal-card{background:#fff;padding:15px;width:200px;text-align:center;border-radius:8px;color:#000;border:2px solid #000}.cell-0{grid-column:5;grid-row:5}.cell-1{grid-column:4;grid-row:5}.cell-2{grid-column:3;grid-row:5}.cell-3{grid-column:2;grid-row:5}.cell-4{grid-column:1;grid-row:5}.cell-5{grid-column:1;grid-row:4}.cell-6{grid-column:1;grid-row:3}.cell-7{grid-column:1;grid-row:2}.cell-8{grid-column:1;grid-row:1}.cell-9{grid-column:2;grid-row:1}.cell-10{grid-column:3;grid-row:1}.cell-11{grid-column:4;grid-row:1}.cell-12{grid-column:5;grid-row:1}.cell-13{grid-column:5;grid-row:2}.cell-14{grid-column:5;grid-row:3}.cell-15{grid-column:5;grid-row:4}.scene{width:50px;height:50px;perspective:400px;margin:0 5px}.cube{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform 1s cubic-bezier(.175,.885,.32,1.275)}.cube__face{position:absolute;width:50px;height:50px;border:1px solid #ccc;background:#fff;border-radius:8px;box-shadow:inset 0 0 10px #ddd;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:4px;box-sizing:border-box}.pip{border-radius:50%;background-color:transparent;margin:1px}.pip-active{background-color:#000;box-shadow:inset 0 3px 5px #00000080}.cube__face--1{transform:rotateY(0) translateZ(25px)}.cube__face--2{transform:rotateY(90deg) translateZ(25px)}.cube__face--3{transform:rotateY(180deg) translateZ(25px)}.cube__face--4{transform:rotateY(-90deg) translateZ(25px)}.cube__face--5{transform:rotateX(90deg) translateZ(25px)}.cube__face--6{transform:rotateX(-90deg) translateZ(25px)}.cube.show-1{transform:translateZ(-25px) rotateY(0)}.cube.show-2{transform:translateZ(-25px) rotateY(-90deg)}.cube.show-3{transform:translateZ(-25px) rotateY(-180deg)}.cube.show-4{transform:translateZ(-25px) rotateY(90deg)}.cube.show-5{transform:translateZ(-25px) rotateX(-90deg)}.cube.show-6{transform:translateZ(-25px) rotateX(90deg)}.cube.rolling{animation:spin .6s infinite linear}@keyframes spin{0%{transform:rotateX(0) rotateY(0) rotate(0)}to{transform:rotateX(360deg) rotateY(720deg) rotate(360deg)}}
