/* --- Global Styles & Variables --- */
:root{--primary-dark:#1a1a2e;--secondary-dark:#16213e;--accent-teal:#4cc9f0;--accent-purple:#7209b7;--text-light:#e2e2e2;--background:#0f0f1a;--dice-color:#f72585;--card-width:180px;--card-height:220px}
body{font-family:Arial,sans-serif;background:var(--background);margin:0;padding:0;color:var(--text-light);line-height:1.6}

/* --- Content and Layout --- */
.static-content{max-width:1200px;margin:20px auto;padding:20px 40px;background:var(--secondary-dark);border-radius:10px;border:1px solid var(--accent-purple)}
header h1,section h2{color:var(--accent-teal);border-bottom:1px solid var(--accent-purple);padding-bottom:10px;font-size:1.8em}
.static-content p,.static-content dd{color:#ccc}
.static-content ul{list-style-type:'✔️ ';padding-left:20px}
.static-content li{margin-bottom:10px}
dt{color:var(--accent-teal);font-weight:700;margin-top:15px}
dd{margin-left:20px;margin-bottom:10px}
footer{text-align:center;font-size:.9em;color:#888;padding:20px;background:0 0;border:none}

/* --- Game Container & Panels --- */
.game-container{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;max-width:1800px;margin:0 auto;padding:20px}
.game-board-container{display:flex;flex-direction:column;align-items:center;flex-grow:1}
.control-panel{display:flex;flex-direction:column;background:var(--primary-dark);padding:20px;border-radius:10px;box-shadow:0 4px 8px rgba(0,0,0,.2);color:var(--text-light);border:3px solid var(--accent-purple);width:100%;max-width:400px;min-width:300px;align-self:flex-start}

/* --- Game Board & Cells --- */
.game-board{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(4,1fr);gap:10px;background:var(--primary-dark);padding:30px;border-radius:15px;position:relative;box-shadow:0 8px 24px rgba(0,0,0,.4);border:4px solid var(--accent-purple);max-width:1000px;margin:0 auto}
.board-cell{background:#fff;height:var(--card-height);width:100%;min-width:150px;padding:15px;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;transition:all .3s;box-shadow:0 4px 8px rgba(0,0,0,.3);color:#333;font-weight:700;border:2px solid #ddd}

/* --- Special Cell Styles --- */
.party-house{background:linear-gradient(135deg,var(--accent-purple),#b5179e);color:#fff}.country-space{background:linear-gradient(135deg,#f5f7fa 0,#e4e8eb 100%);border-top:6px solid var(--accent-teal)}.chance-space{background:linear-gradient(135deg,#fff3cd 0,#ffe69c 100%);border-top:6px solid #ffc107}.uno-space{background:linear-gradient(135deg,#f8d7da 0,#f5b7b1 100%);border-top:6px solid #dc3545}.jail-space{background:linear-gradient(135deg,#d1ecf1 0,#a6e1ec 100%);border-top:6px solid #17a2b8}
.property-owned{border-bottom:8px solid var(--owner-color)!important}

/* --- Player Pieces & Controls --- */
.player-piece{width:36px;height:36px;border-radius:50%;position:absolute;top:10px;left:10px;border:3px solid #fff;box-shadow:0 4px 8px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:16px;z-index:10}
.controls{margin-top:20px;display:flex;flex-direction:column;gap:10px}
button{padding:12px 20px;border:none;border-radius:5px;cursor:pointer;transition:all .2s;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px}
button:hover{transform:translateY(-2px)}
.dice-btn{background:var(--dice-color);color:#fff;font-size:1.1em}.action-btn{background:linear-gradient(135deg,#4cc9f0,#4895ef);color:#fff}
.dice-container{display:flex;align-items:center;gap:10px;margin:15px 0;font-size:1.2em;font-weight:700}
.dice{width:60px;height:60px;background:#fff;border-radius:12px;display:flex;justify-content:center;align-items:center;font-size:28px;font-weight:700;color:var(--dice-color);box-shadow:0 4px 10px rgba(0,0,0,.3);margin-left:10px}

/* --- Player Info Panel --- */
.player-info-panel{display:grid;grid-template-columns:1fr;gap:15px;margin-top:20px}
.player-card{background:var(--secondary-dark);padding:15px;border-radius:8px;box-shadow:0 2px 5px rgba(0,0,0,.2);border-left:5px solid;transition:transform .2s;color:var(--text-light)}
.player-card.current-turn{transform:scale(1.02);box-shadow:0 4px 15px #000;border-left:5px solid var(--accent-teal)}

/* --- Modals, Popups, Setup Screen --- */
.modal,.property-card-view,.setup-screen{position:fixed;z-index:1000;top:50%;left:50%;transform:translate(-50%,-50%)}
.modal,.property-card-view{display:none;background:var(--primary-dark);padding:25px;border-radius:10px;box-shadow:0 0 25px rgba(0,0,0,.4);max-width:400px;width:90%;color:var(--text-light);border:3px solid var(--accent-purple)}
.property-card-view{z-index:1001}
.modal h3,.property-card-header{margin-top:0;padding-bottom:10px;border-bottom:2px solid var(--accent-purple)}
.property-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}
.property-card-title{font-size:24px;font-weight:700;color:var(--accent-teal);margin:0}
.property-card-close{background:0 0;border:none;font-size:24px;cursor:pointer;color:var(--accent-teal);padding:0}
.modal-buttons{display:flex;gap:10px;margin-top:20px;justify-content:center}
.setup-screen{top:0;left:0;width:100%;height:100%;transform:none;background:rgba(0,0,0,.8);display:flex;justify-content:center;align-items:center;z-index:2000}
.setup-panel{background:var(--primary-dark);padding:30px;border-radius:10px;width:90%;max-width:500px;color:var(--text-light);border:3px solid var(--accent-purple)}
.setup-options{margin:20px 0}.setup-option{display:flex;align-items:center;margin-bottom:15px}.setup-option input[type=checkbox]{margin-right:10px}

/* --- Owned Properties Cards --- */
.player-cards-container{margin-top:20px}.player-cards-title{font-size:1.2em}.player-cards-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.player-property-card{width:120px;background:linear-gradient(135deg,#2a2a4a,#1a1a2e);border-radius:8px;padding:10px;border:2px solid var(--accent-purple);cursor:pointer;transition:transform .2s;position:relative}.player-property-card:hover{transform:translateY(-5px)}
.player-property-name{font-size:14px;font-weight:700;color:var(--accent-teal);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* --- Adsterra Ad Container --- */
.ad-container{width:100%;max-width:728px;min-height:90px;margin:30px auto;padding:0 15px;box-sizing:border-box;text-align:center;background:var(--secondary-dark);border-radius:10px;display:flex;align-items:center;justify-content:center}

/* --- Animations & Responsive Design --- */
@keyframes fadeInOut{0%,to{opacity:0;transform:translate(-50%,-50%) scale(.8)}20%,80%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}
@media (max-width:1200px){.board-cell{height:150px;width:120px;min-width:auto}}
@media (max-width:900px){.game-board{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(7,1fr);max-width:600px}}
@media (max-width:768px){.game-container{flex-direction:column;align-items:center}.static-content{padding:20px}}
@media (max-width:600px){.game-board{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(10,1fr);max-width:400px}.board-cell{height:120px;min-width:120px;padding:10px;font-size:14px}.dice-container{flex-direction:column;align-items:flex-start}.dice{margin-left:0;margin-top:10px}.property-card-view{width:90%;max-width:350px}.property-card-body{grid-template-columns:1fr}}