/* Original green/ivory city board. All decisions use the site's native 3D sheets. */
.monopoly-mini-art{width:100%;height:100%;object-fit:contain;max-width:370px;filter:drop-shadow(0 12px 8px #254a3020)}
.board.monopoly-board{display:grid!important;grid-template-columns:repeat(11,minmax(0,1fr))!important;grid-template-rows:repeat(11,minmax(0,1fr))!important;gap:2px;padding:5px;background:#b9c9a4;aspect-ratio:1;isolation:isolate;border-radius:8px;touch-action:manipulation;overflow:hidden}
.mono-space{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:0;padding:0 2px 2px;border:1px solid #c2cdb2;border-bottom:2px solid #a6b993;border-radius:3px;background:linear-gradient(145deg,#fffdf2,#e9efda);color:#244e36;cursor:pointer;overflow:hidden;line-height:1.12;box-shadow:inset 0 1px #fff!important}
.mono-space:focus-visible{outline:3px solid #b78933;outline-offset:-3px;z-index:4}
.mono-color{display:block;align-self:stretch;min-height:14%;height:14%;background:var(--property-color);margin:0 -2px 2px;border-bottom:1px solid #54754130;flex-shrink:0}
.mono-space-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;text-align:center;font-family:'DM Sans','Segoe UI',sans-serif;font-size:clamp(5px,.65vw,10px);font-weight:650;line-height:1.1;max-height:2.2em}
.mono-space-price{font:600 clamp(5px,.6vw,9px)/1.1 'DM Sans',sans-serif;margin-top:auto;direction:ltr}
.mono-corner{background:linear-gradient(145deg,#fff7dc,#dce7cb);font-weight:800}.mono-corner .mono-color{display:none}
.mono-owner{position:absolute;inset:auto 2px 2px auto;width:5px;height:5px;border-radius:50%;background:var(--owner-color);box-shadow:0 0 0 1px #fff!important}.mono-owner[hidden]{display:none}
.mono-buildings{position:absolute;inset:1px 0 auto;font-size:clamp(5px,.7vw,10px);line-height:1;color:#faffee;text-align:center;text-shadow:0 1px #244e36!important}
.mono-space[data-mortgaged=true]{background:#d5d9cc}.mono-space[data-mortgaged=true] .mono-color{opacity:.35}
.mono-tokens{position:absolute;inset:15% 0 15%;display:flex;justify-content:center;align-content:center;align-items:center;flex-wrap:wrap;gap:1px;pointer-events:none}
.mono-token{display:grid;place-items:center;width:clamp(9px,1.4vw,18px);height:clamp(10px,1.5vw,20px);min-width:0;border:1px solid #fff7d4;border-bottom:3px solid #153e2d;border-radius:50% 50% 40% 40%;background:radial-gradient(circle at 35% 20%,#ffffff7a,var(--token-color) 65%);color:#fff;font:800 clamp(6px,.75vw,10px)/1 'DM Sans',sans-serif;box-shadow:0 2px 2px #123b2a45!important}
.mono-center{grid-column:2/11;grid-row:2/11;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(4px,1vw,12px);min-height:0;min-width:0;padding:clamp(8px,2vw,24px);border:1px solid #b5c89d;border-bottom:4px solid #a0b78b;border-radius:15px;background:radial-gradient(ellipse at 50% 25%,#fff9e4,#eef4e3 55%,#dce8ce);box-shadow:inset 0 2px #fff,0 4px 12px #31532d12!important;text-align:center;overflow:auto;overscroll-behavior:contain}
.mono-center h3{margin:0;font-size:clamp(16px,2vw,30px);line-height:1.25;color:#254e37}.mono-eyebrow{font-size:clamp(9px,1vw,13px);font-weight:650;color:#6e815f;line-height:1.4}.mono-city{width:min(70%,220px);height:clamp(70px,12vw,160px);object-fit:contain;pointer-events:none}
.mono-identity{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;max-width:100%}.mono-identity>.sticker-avatar{width:34px;height:34px;object-fit:contain;flex-shrink:0}.mono-identity>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.5}.mono-identity .country-flag{width:20px;height:15px;flex-shrink:0}
.mono-balance{font:800 clamp(15px,2vw,25px)/1.2 'DM Sans',sans-serif;color:#7d612a;direction:ltr;unicode-bidi:isolate}
.mono-dice{display:flex;gap:10px;direction:ltr}.mono-die{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:3px;width:clamp(31px,4vw,49px);height:clamp(34px,4.2vw,53px);padding:6px;border:1px solid #c8d7b7;border-bottom:5px solid #a8bd93;border-radius:10px;background:linear-gradient(145deg,#fffef8,#ecebd5);box-shadow:inset 0 2px #fff,0 3px 6px #31532d16!important}.mono-die i{border-radius:50%;background:#315d3d}
.mono-clock{font:700 clamp(12px,1.4vw,18px)/1.2 'DM Sans',sans-serif;direction:ltr;font-variant-numeric:tabular-nums;color:#527148}
.mono-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;width:100%;min-width:0}.mono-actions button,.mono-center>.primary-button,.mono-center>.secondary-button{display:flex;justify-content:center;align-items:center;gap:7px;min-height:46px;min-width:70px;padding:10px 14px;font-size:13px;border-radius:13px;line-height:1.35}.mono-actions svg,.mono-center>button svg{width:19px;height:19px;flex-shrink:0}
.mono-bid-input{min-width:0;width:100%;max-width:220px;height:45px;text-align:center;border:1px solid #bacaab;border-bottom:3px solid #a9bf94;border-radius:12px;background:#fffef8;color:#315c3d;font-size:16px}
.mono-decision{font-size:clamp(10px,1.2vw,15px);font-weight:650;line-height:1.4;color:#58704b;max-width:100%;overflow-wrap:anywhere}
.monopoly-panel{display:grid;gap:14px;margin:16px 0;min-width:0}.monopoly-panel[hidden]{display:none!important}
.mono-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mono-tools button,.mono-start-actions button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:50px;border:1px solid #c5d5b7;border-bottom:4px solid #a3ba90;border-radius:14px;background:linear-gradient(145deg,#fffef8,#e2ecd5);color:#365e3e;font-size:13px;padding:10px}.mono-tools svg,.mono-start-actions svg{width:21px;height:21px;flex-shrink:0}
.mono-player-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mono-player-card{display:grid;gap:6px;align-content:start;min-width:0;padding:13px;border:1px solid #c6d5b7;border-inline-start:4px solid var(--token-color);border-bottom:4px solid #a5bc91;border-radius:15px;background:linear-gradient(145deg,#fffef8,#edf3e3);box-shadow:inset 0 2px #fff!important}.mono-player-card .mono-identity{justify-content:flex-start}.mono-player-card[data-current=true]{background:linear-gradient(145deg,#fff7d7,#e2edcf);border-bottom-color:#7e9e6c}.mono-player-card[data-alive=false]{opacity:.6}.mono-player-cash{font:750 17px 'DM Sans',sans-serif;color:#6e5729;direction:ltr}.mono-player-card>small{font-size:11px;color:#69805b}
.mono-bank{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 15px;border:1px solid #c8d8b9;border-bottom:3px solid #afc39e;border-radius:14px;background:#edf3e3;font-size:12px;color:#5d7850}
.mono-muted{color:#697e5b;font-size:13px;line-height:1.8}.mono-fieldset{min-width:0;margin:18px 0;padding:0;border:0}.mono-fieldset>legend{font-size:14px;font-weight:700;color:#365e3e;margin-bottom:12px}.mono-choices{display:flex;gap:9px;flex-wrap:wrap}.mono-choice{position:relative;display:block;min-width:44px;cursor:pointer}.mono-choice>input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.mono-choice>span{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 15px;border:1px solid #c6d6b8;border-bottom:4px solid #a9bf98;border-radius:13px;background:linear-gradient(145deg,#fffef8,#e5eedb);color:#41673d;font-size:14px;line-height:1.4}.mono-choice:has(input:checked)>span{background:linear-gradient(145deg,#4b8055,#285b3a);border-color:#3c6d47;border-bottom-color:#1e4830;color:#fff}.mono-choice:has(input:focus-visible){outline:3px solid #bd9445;outline-offset:3px;border-radius:14px}
.mono-lobby-seats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mono-lobby-seat{min-width:0;padding:12px;border:1px solid #cfddc0;border-bottom:3px solid #b1c69e;border-radius:14px;background:linear-gradient(145deg,#fffef7,#edf3e3)}.mono-lobby-seat .mono-identity{justify-content:flex-start}.mono-start-actions{display:flex;gap:12px;margin-top:18px}.mono-start-actions button{flex:1}
.mono-asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mono-asset{display:flex;align-items:center;justify-content:flex-start;gap:9px;flex-wrap:wrap;min-width:0;min-height:66px;padding:12px;border:1px solid #cbd9bd;border-top:8px solid var(--property-color);border-bottom:4px solid #a8bf95;border-radius:13px;background:linear-gradient(145deg,#fffef7,#edf3e3);text-align:start;color:#315c3d;font-size:13px;line-height:1.5}.mono-asset svg{width:20px;height:20px;flex-shrink:0}.mono-asset small{width:100%;font-size:11px;color:#8c7751}
.mono-deed-color{height:22px;border-radius:10px;border-bottom:4px solid #31532d20;margin-bottom:20px}.mono-deed-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:14px;line-height:1.5;margin-bottom:20px}.mono-deed-stats strong{text-align:end;overflow-wrap:anywhere}.mono-rents{display:grid;gap:7px}.mono-rents>div{display:flex;justify-content:space-between;gap:14px;padding:9px 12px;border-radius:10px;background:#eef4e5;font-size:13px}.mono-rents>div[data-active=true]{background:#e3ebcc;border:1px solid #bbce9d;color:#365f3c}.mono-property-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}.mono-property-actions button{display:flex;justify-content:center;align-items:center;gap:7px;min-height:48px;border-radius:13px;font-size:13px;padding:10px}.mono-property-actions svg{width:19px;height:19px;flex-shrink:0}
.mono-trade-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.mono-money-field{display:grid;gap:7px;font-size:12px;line-height:1.5;margin:15px 0}.mono-money-field input{width:100%;min-width:0;min-height:48px;padding:10px;border:1px solid #becfae;border-bottom:3px solid #a9be94;border-radius:12px;background:#fffef8;color:#315c3d;font-size:16px}.mono-trade-property{display:flex;align-items:center;gap:8px;min-height:44px;padding:7px 0;font-size:12px;line-height:1.5}.mono-trade-property input{min-width:20px;width:20px;height:20px;accent-color:#315c3d}.mono-trade-property:has(input:disabled){opacity:.5}.mono-offer-summary{border:1px solid #c5d5b7;border-bottom:4px solid #a8bf95;border-radius:16px;padding:16px;margin:14px 0;background:linear-gradient(145deg,#fffef8,#edf3e3)}.mono-offer-summary h3{font-size:16px;margin:0 0 8px}.mono-offer-summary p{font-size:13px!important;margin:8px 0!important}
.mono-log{margin-top:20px;padding:15px;background:#eef4e5;border:1px solid #d2dfc5;border-radius:14px;font-size:13px}.mono-log summary{font-weight:700;cursor:pointer}.mono-log p{font-size:12px!important;border-top:1px solid #d8e3cd;padding:8px 0;margin:0!important}
body.monopoly-room #game-room .player-row,body.monopoly-room #game-room .board-tools>p{display:none!important}body.monopoly-room #game-room .board-tools{justify-content:flex-end}body.monopoly-room #game-room .board-wrap{min-height:0!important}body.monopoly-room:not(.focus-mode) #game-room .board-wrap{margin-top:12px}body.monopoly-room .arena-bottom{margin-top:12px}
body.monopoly-room.focus-mode .monopoly-panel .mono-player-list,body.monopoly-room.focus-mode .monopoly-panel .mono-bank,body.monopoly-room.focus-mode .monopoly-panel .mono-card-notice{display:none}body.monopoly-room.focus-mode .monopoly-panel{margin:6px 0;gap:0}body.monopoly-room.focus-mode .mono-tools{gap:7px}body.monopoly-room.focus-mode .mono-tools button{min-height:46px}
@media(max-width:600px){.board.monopoly-board{gap:1px;padding:3px}.mono-space{padding:0 1px 1px;border-width:0 0 1px;border-radius:2px}.mono-color{margin:0 -1px 1px}.mono-center{border-radius:11px;padding:9px;gap:6px}.mono-center .mono-identity>.sticker-avatar{width:27px;height:27px}.mono-center .mono-identity>strong{font-size:12px}.mono-center .mono-identity .country-flag{width:16px;height:12px}.mono-center h3{font-size:19px}.mono-actions{gap:6px}.mono-actions button,.mono-center>.primary-button,.mono-center>.secondary-button{min-height:44px;min-width:60px;font-size:11px;padding:8px 10px;gap:5px}.mono-actions svg,.mono-center>button svg{width:17px;height:17px}.mono-tools{gap:7px}.mono-tools button{font-size:11px;padding:8px 5px;gap:5px}.mono-tools svg{width:18px;height:18px}.mono-player-card{padding:10px 8px}.mono-player-card .mono-identity{gap:5px}.mono-player-card .mono-identity>.sticker-avatar{width:25px;height:25px}.mono-player-card .mono-identity>strong{font-size:11px}.mono-player-card .country-flag{width:15px;height:12px}.mono-player-cash{font-size:15px}.mono-player-card>small{font-size:10px}.mono-lobby-seat{padding:10px 8px}.mono-lobby-seat .mono-identity{gap:5px}.mono-lobby-seat .mono-identity>.sticker-avatar{width:26px;height:26px}.mono-lobby-seat .mono-identity>strong{font-size:12px}.mono-lobby-seat .country-flag{width:16px;height:12px}.mono-choices{gap:8px}.mono-choice>span{padding:10px 12px;font-size:13px}.mono-asset-grid{gap:10px}.mono-asset{font-size:12px;padding:10px}.mono-trade-columns{grid-template-columns:1fr;gap:0}.mono-player-modal-list{display:grid!important}.mono-asset small{font-size:10px}}
@media(max-height:600px) and (orientation:landscape){body.monopoly-room.focus-mode .monopoly-panel{position:fixed;inset:80px auto auto 12px;width:148px;z-index:15;margin:0}body.monopoly-room.focus-mode .mono-tools{display:grid;grid-template-columns:1fr}body.monopoly-room.focus-mode .mono-tools button{min-height:44px;font-size:11px}.mono-center{gap:5px;padding:8px}.mono-die{width:29px;height:32px;padding:5px}.mono-city{height:70px}}
.mono-card-notice{display:grid;gap:5px;padding:14px 16px;border:1px solid #d6c89b;border-bottom:4px solid #bca267;border-radius:16px;background:linear-gradient(145deg,#fffbeb,#eee7c9);color:#6d5c33;font-size:13px;line-height:1.6}.mono-card-notice strong{font-size:12px}
.mono-buildings{display:flex;align-items:center;justify-content:center;gap:1px;pointer-events:none;padding-top:3px}.mono-building{position:relative;display:block;width:clamp(3px,.7vw,7px);height:clamp(3px,.6vw,6px);background:linear-gradient(135deg,#b0cf94,#356a48);border-bottom:2px solid #214b35;box-shadow:1px 1px 1px #163a2b40!important}.mono-building::before{content:'';position:absolute;inset:-3px -1px auto;height:4px;clip-path:polygon(50% 0,100% 100%,0 100%);background:#315d3f}.mono-hotel{width:clamp(6px,1vw,12px);background:linear-gradient(135deg,#fff0be,#b48e46);border-color:#8a652e}.mono-hotel::before{background:#9a7337}
.board.monopoly-board{direction:ltr}html[dir=rtl] .mono-center{direction:rtl}
@media(max-width:600px){.mono-token{height:9px;border-bottom-width:2px}}
body.monopoly-room.focus-mode .arena{gap:8px!important}body.monopoly-room.focus-mode .arena-bottom{margin-top:0}body.monopoly-room.focus-mode .monopoly-panel{margin:0}
@media(max-width:600px) and (max-height:640px){.mono-center{gap:4px;padding:6px}.mono-center>.mono-eyebrow{display:none}.mono-center .mono-identity>.sticker-avatar{width:22px;height:22px}.mono-center .mono-identity>strong{font-size:11px}.mono-center .mono-die{width:27px;height:29px;padding:4px;gap:2px;border-bottom-width:3px}.mono-center .mono-balance{font-size:16px}.mono-center[data-phase=auction]>.mono-dice{display:none}}
/* Flat board illustrations stay distinct; user-selected stickers are the playing pieces. */
.mono-space{background:#f7f9ee;border:1px solid #c2ceb6;border-radius:2px;box-shadow:none!important;gap:1px}
.mono-corner{background:#e5edd8}
.mono-space-art{display:block;object-fit:contain;width:68%;height:45%;min-height:0;flex-shrink:1;pointer-events:none;filter:none}
.mono-space-name{font-size:clamp(5px,.58vw,9px);-webkit-line-clamp:1;max-height:1.1em;flex-shrink:0}
.mono-space-price{flex-shrink:0;margin-top:0}
.mono-color{height:11%;min-height:11%;margin-bottom:0}
.mono-tokens{inset:12% 0 8%;gap:1px;flex-wrap:nowrap;z-index:2}
.mono-token{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;width:46%;max-width:38px;height:auto;min-width:0;border:0;border-radius:0;background:none;box-shadow:none!important;color:#204b34;font:700 clamp(4px,.6vw,8px)/1.2 'DM Sans',sans-serif}
.mono-tokens[data-count="1"] .mono-token,.mono-tokens[data-stacked=true] .mono-token{width:78%;max-width:48px}
.mono-token .sticker-avatar{display:block;width:100%;height:auto!important;aspect-ratio:1;object-fit:contain;border-radius:50%;background:transparent;box-shadow:0 0 0 1px #fff9e7!important}
.mono-token[data-current=true] .sticker-avatar{box-shadow:0 0 0 2px #d3a451!important}
.mono-token-name{display:block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;background:#fffbedf2;border-radius:3px;padding:1px 2px;direction:auto}
.mono-token[hidden],.mono-stack-count[hidden]{display:none!important}
.mono-stack-count{position:absolute;bottom:0;right:0;z-index:3;padding:1px 3px;background:#24573d;color:#fff9e7;border-radius:4px;font:700 clamp(6px,.7vw,10px)/1.2 sans-serif;pointer-events:none}
.mono-space[data-occupied=true] .mono-space-art,.mono-space[data-occupied=true] .mono-space-name{opacity:.18}
.mono-space[data-occupied=true] .mono-space-price{opacity:.3}
.mono-token-ghost{max-width:none;filter:drop-shadow(0 2px 2px #183f2c40)}
.mono-deed-art{display:block;width:92px;height:92px;margin:0 auto 16px;object-fit:contain}
.mono-occupants{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:16px}
@media(max-width:600px){.mono-space{border-width:0 0 1px}.mono-space-name{display:none}.mono-space-art{width:80%;height:62%}.mono-corner .mono-space-art{height:80%;width:90%}.mono-token{font-size:5px}.mono-token-name{padding:0 1px}.mono-tokens{inset:10% 0 5%}.mono-token[data-current=true] .sticker-avatar{box-shadow:0 0 0 1px #d3a451!important}}
/* Decisions use the established bottom sheet on phones. */
.mono-mobile-turn{display:none}
@media(min-width:601px){.mono-actions{gap:12px;max-width:620px}.mono-actions button{min-height:60px;min-width:128px;padding:15px 22px;font-size:17px;border-radius:16px}.mono-actions svg{width:25px;height:25px}.mono-bid-input{min-height:54px;font-size:20px}.mono-tools button{min-height:58px;font-size:15px}}
@media(max-width:600px){.mono-mobile-turn{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;min-height:56px;font-size:16px;border-radius:15px}.mono-mobile-turn svg{width:24px;height:24px}#monopoly-turn-dialog{max-height:min(80dvh,560px);height:auto}#monopoly-turn-dialog-content{display:grid;gap:16px;text-align:center}#monopoly-turn-dialog .mono-clock{font-size:22px}#monopoly-turn-dialog .mono-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#monopoly-turn-dialog .mono-actions>button{min-height:60px;min-width:0;width:100%;font-size:16px;padding:14px 12px;border-radius:15px;line-height:1.4}#monopoly-turn-dialog .mono-actions>button:only-child{grid-column:1/-1}#monopoly-turn-dialog .mono-actions svg{width:24px;height:24px}#monopoly-turn-dialog .mono-bid-input{grid-column:1/-1;width:100%;max-width:none;min-height:54px;font-size:22px}#monopoly-turn-dialog .mono-decision{font-size:16px;line-height:1.6}body.monopoly-room.focus-mode .mono-mobile-turn{min-height:52px}body.monopoly-room.focus-mode .monopoly-panel{gap:8px}}
@media(min-width:601px) and (max-height:600px){.mono-actions{gap:8px}.mono-actions button{min-height:46px;min-width:95px;font-size:14px;padding:10px 14px}.mono-actions svg{width:21px;height:21px}}
/* Keep the playing field fully visible behind the phone's turn controls. */
@media(max-width:600px){html body #monopoly-turn-dialog[open]::backdrop{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}}
/* Trade partners keep their actual profile sticker and a light, unfilled frame. */
.mono-recipient-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mono-recipient-choices .mono-choice{min-width:0}
.mono-recipient-choices .mono-choice>span{justify-content:flex-start;padding:10px;border:1px solid #c5d4b9;border-radius:13px;background:transparent;color:#315c3d;min-height:62px}
.mono-recipient-choices .mono-choice:has(input:checked)>span{background:transparent;color:#24573d;border:2px solid #39704c;padding:9px}
.mono-recipient-choices .mono-identity{justify-content:flex-start;min-width:0;gap:8px}
.mono-recipient-choices .mono-identity>.sticker-avatar{width:38px;height:38px;flex-shrink:0}
.mono-recipient-choices .mono-identity>strong{font-size:13px;overflow-wrap:anywhere}
.mono-recipient-choices .country-flag{display:none}
/* The title is redundant inside an immersive game. Retain its DOM startup IDs. */
body.focus-mode .arena-top .game-title{display:none!important}
body.focus-mode .arena-top{justify-content:flex-end}
@media(min-width:1024px){
 body.monopoly-room.focus-mode .arena{padding-left:256px}
 body.monopoly-room.focus-mode .monopoly-panel{position:static;width:auto}
 body.monopoly-room.focus-mode #mono-focus-players{display:grid;position:fixed;left:16px;top:88px;bottom:100px;width:220px;grid-template-columns:minmax(0,1fr);align-content:start;gap:5px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:auto;padding:3px 6px 8px 0;z-index:12;scrollbar-width:thin;scrollbar-color:#8ca67c transparent}
 body.monopoly-room.focus-mode #mono-focus-players[data-collapsed=true]{display:none}
 body.monopoly-room.focus-mode #mono-focus-players .mono-player-card{grid-template-columns:auto minmax(0,1fr);padding:6px 8px;gap:2px 6px;border-bottom-width:2px;border-radius:11px}
 body.monopoly-room.focus-mode #mono-focus-players .mono-identity>.sticker-avatar{width:24px;height:24px}
 body.monopoly-room.focus-mode #mono-focus-players .mono-identity>strong{font-size:12px}
 body.monopoly-room.focus-mode #mono-focus-players .mono-player-cash{font-size:16px;line-height:19px}
 body.monopoly-room.focus-mode #mono-focus-players .mono-identity{grid-column:1/-1;gap:6px}
 body.monopoly-room.focus-mode #mono-focus-players .country-flag{width:16px;height:12px}
 body.monopoly-room.focus-mode #mono-focus-players .mono-player-card>small{align-self:center;justify-self:end;font-size:10px;line-height:16px}
}
@media(max-width:360px){.mono-recipient-choices{grid-template-columns:minmax(0,1fr)}}
/* Outside desktop fullscreen, Players opens the roster sheet without a duplicate inline list. */
.monopoly-panel>#mono-focus-players{display:none}
@media(max-width:600px){
 body:not(.focus-mode) #monopoly-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body:not(.focus-mode) #monopoly-panel .mono-tools{display:contents}
 body:not(.focus-mode) #monopoly-panel>.mono-player-list{grid-column:1/-1}
 #monopoly-panel .mono-tools{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%}
 body.monopoly-room.focus-mode #monopoly-panel{align-self:stretch;justify-self:stretch;width:100%;max-width:none;flex-shrink:0}
 #monopoly-panel .mono-tools>button,#monopoly-panel>.mono-mobile-turn{width:100%;min-width:0;min-height:56px;padding:14px 16px;font-size:16px;line-height:1.4;gap:12px;justify-content:center;border-radius:15px}
 #monopoly-panel .mono-tools>button svg,#monopoly-panel>.mono-mobile-turn svg{width:24px;height:24px;flex-shrink:0}
}
/* The catalog illustration fits its card without cropping the game cues. */
.card-art.monopoly>.monopoly-mini-art{position:absolute;inset:0;width:100%;height:100%;max-width:none;padding:22px 12px 8px;object-fit:contain;box-sizing:border-box}
/* Clear, icon-led setup choices in the platform's sculpted surfaces. */
.mono-setup-intro{display:flex;align-items:center;gap:12px;margin:0 0 22px!important;padding:14px 16px;border:1px solid #cddbbf;border-radius:14px;background:#f0f5e6;color:#466842;font-size:14px!important;line-height:1.6!important}
.mono-setup-intro svg{width:30px;height:30px;flex-shrink:0;color:#47764d}
#monopoly-setup-dialog .mono-fieldset>legend{display:flex;align-items:center;gap:8px;font-size:15px;margin-bottom:12px}
#monopoly-setup-dialog legend svg{width:20px;height:20px;color:#5e8053}
.mono-seat-field .mono-choices{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.mono-seat-field .mono-choice{min-width:0}
.mono-seat-field .mono-choice>span{display:flex;flex-direction:column;gap:5px;padding:10px 3px;min-height:70px}
.mono-seat-field .mono-choice svg{width:19px;height:19px;opacity:.75}
.mono-seat-field .mono-choice b{font-size:20px;font-variant-numeric:tabular-nums;line-height:1.2}
.mono-mode-field .mono-choices{display:grid;gap:10px}
.mono-mode-field .mono-choice>span{display:flex;justify-content:flex-start;gap:14px;min-height:70px;padding:10px 14px;border-radius:15px}
.mono-mode-icon{display:grid;place-items:center;width:43px;height:43px;flex:0 0 43px;border:1px solid #d2dfc4;border-radius:12px;background:#f3f7ec;color:#527744}
.mono-mode-icon svg{width:25px;height:25px}
.mono-mode-field .mono-choice strong{font-size:15px;line-height:1.5;text-align:start;flex:1}
.mono-mode-check{width:22px;height:22px;flex-shrink:0;opacity:.2}
.mono-mode-field .mono-choice:has(input:checked)>span{background:linear-gradient(145deg,#eff5e6,#ddeace);border-color:#739b61;border-bottom-color:#6e9059;color:#24573d}
.mono-mode-field .mono-choice:has(input:checked) .mono-mode-icon{background:#386c49;border-color:#386c49;color:#fff9e7}
.mono-mode-field .mono-choice:has(input:checked) .mono-mode-check{opacity:1;color:#386c49}
@media(max-width:600px){.mono-seat-field .mono-choices{gap:5px}.mono-seat-field .mono-choice>span{padding:9px 2px;min-height:64px;border-radius:11px}.mono-seat-field .mono-choice b{font-size:19px}.mono-setup-intro{padding:12px;font-size:12px!important}.mono-mode-field .mono-choice>span{padding:10px 12px;min-height:68px}.mono-mode-field .mono-choice strong{font-size:14px}}
/* Visible decks, ownership portraits and a classic unlimited bank. */
.mono-decks{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;flex-shrink:0}
.mono-deck{display:flex;align-items:center;justify-content:center;gap:7px;padding:8px 11px;min-height:50px;min-width:0;border:1px solid #b9cba5;border-bottom:3px solid #9ab184;border-radius:11px;background:#fff9e7;color:#43653c;font-size:11px;line-height:1.3}
.mono-deck[data-deck=chance]{background:#f3e6c3;border-color:#c9af75}
.mono-deck img{width:32px;height:32px;object-fit:contain}.mono-deck span{max-width:105px}
.mono-bank-anchor{display:grid;place-items:center;color:#66805a}.mono-bank-anchor svg{width:26px;height:26px}
.mono-owner{inset:auto 1px 1px auto;width:clamp(10px,1.4vw,19px);height:clamp(10px,1.4vw,19px);z-index:4;border:1px solid var(--owner-color);background:#fffbed;border-radius:50%;box-shadow:0 0 0 1px #fffbed!important}
.mono-owner img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}
.mono-bank-card{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:3px 8px;padding:10px 12px;border:1px solid #c2d2af;border-bottom:3px solid #a2b98e;border-radius:13px;background:linear-gradient(145deg,#fffbed,#e5eed8);color:#3c633e;text-align:start}
.mono-bank-card>svg{width:28px;height:28px}.mono-bank-card>div{display:grid;gap:2px}.mono-bank-card strong{font-size:13px}.mono-bank-card small{font-size:10px;color:#748664}.mono-bank-infinity{font-size:27px;color:#aa843c}.mono-bank-stock{grid-column:1/-1}
#mono-bank-display{display:none}.mono-player-modal-list+.mono-bank-card{margin-top:14px}
.mono-money-notice,.mono-card-reveal{position:fixed;z-index:95;pointer-events:none;border:1px solid #c7d5b7;border-bottom:4px solid #9fb58a;border-radius:16px;background:#fffbed;box-shadow:0 8px 26px #163f2c20!important;color:#31583a}
.mono-money-notice{right:22px;top:82px;display:grid;gap:5px;max-width:min(340px,calc(100vw - 24px));padding:13px 18px;font-size:13px}.mono-money-notice b{font-size:20px;color:#967133;direction:ltr;text-align:center}
.mono-money-flight{position:fixed;left:0;top:0;z-index:96;display:flex;align-items:center;gap:5px;pointer-events:none;padding:5px 9px;border-radius:18px;background:#fff7d4;border:1px solid #d7b56b;color:#7d5c24;font:700 13px/1.3 sans-serif;direction:ltr;will-change:transform}.mono-money-flight img{width:26px;height:26px}
.mono-card-reveal{top:82px;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:40px 1fr;align-items:center;gap:8px 12px;width:min(350px,calc(100vw - 24px));padding:16px}.mono-card-reveal img{width:40px;height:40px;grid-row:1/3}.mono-card-reveal strong{font-size:13px}.mono-card-reveal p{font-size:13px;line-height:1.6;margin:0}.mono-drawn-description{padding:16px;border-radius:14px;background:#eff4e5}
@media(min-width:1024px){body.monopoly-room.focus-mode #mono-bank-display{display:grid;position:static;grid-column:1/-1;width:auto;margin-top:4px}body.monopoly-room.focus-mode #mono-bank-display[data-collapsed=true]{display:none}}
@media(max-width:600px){.mono-decks{gap:5px}.mono-deck{padding:4px 6px;gap:4px;min-height:34px;border-radius:8px;font-size:8px;flex:1}.mono-deck img{width:23px;height:23px}.mono-bank-anchor svg{width:19px;height:19px}.mono-bank-anchor{padding:0 3px}.mono-money-notice{top:12px;right:12px;padding:10px 14px;font-size:11px}.mono-money-notice b{font-size:17px}.mono-card-reveal{top:12px;padding:12px;gap:6px 9px}.mono-card-reveal strong,.mono-card-reveal p{font-size:12px}.mono-owner{width:10px;height:10px}}

@media(min-width:1024px){body.monopoly-room.focus-mode #mono-focus-players{bottom:20px}body.monopoly-room.focus-mode .arena-bottom>span{position:fixed;left:16px;top:70px;max-width:220px;font-size:10px;line-height:14px}}
/* GO points toward the first property on the bottom edge of the board. */
.mono-space[data-mono-space="0"]>.mono-space-art{transform:scaleX(-1)}
/* State expressions preserve the selected character; bars sit in front of the face. */
.mono-token-portrait{position:relative;display:block;width:100%;flex-shrink:0;isolation:isolate}
.mono-jail-bars{display:none;position:absolute;inset:7% 2% 2%;z-index:2;border:2px solid #56705d;border-radius:3px;background:repeating-linear-gradient(90deg,transparent 0,transparent 18%,#53675de6 18%,#53675de6 24%);pointer-events:none;box-shadow:inset 0 3px #617768,inset 0 -3px #617768!important}
.mono-token[data-jailed=true] .mono-jail-bars,.mono-state-portrait[data-jailed=true] .mono-jail-bars{display:block}
.mono-token[data-jailed=true] .mono-token-portrait,.mono-state-portrait[data-jailed=true]{animation:mono-jail-shiver 3s ease-in-out infinite}
.mono-token[data-emotion=happy] .mono-token-portrait{animation:mono-happy-hop .65s ease-in-out 3}
.mono-token[data-jailed=true] .mono-token-name{background:#e7edf0;color:#506579}
@keyframes mono-jail-shiver{0%,9%,34%,100%{transform:translateX(0)}12%,20%,28%{transform:translateX(-1px) rotate(-2deg)}16%,24%,32%{transform:translateX(1px) rotate(2deg)}}
@keyframes mono-happy-hop{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-3px) rotate(-5deg)}65%{transform:translateY(-1px) rotate(5deg)}}
.mono-state-reveal{position:fixed;top:82px;left:50%;transform:translateX(-50%);z-index:95;display:grid;grid-template-columns:62px 1fr;align-items:center;gap:6px 13px;width:min(350px,calc(100vw - 24px));padding:14px 17px;border:1px solid #c7d5b7;border-bottom:4px solid #9fb58a;border-radius:16px;background:#fffbed;color:#31583a;pointer-events:none;box-shadow:0 8px 26px #163f2c20!important}
.mono-state-portrait{position:relative;display:block;width:62px;grid-row:1/3;isolation:isolate}.mono-state-portrait img{display:block;width:100%;height:auto;aspect-ratio:1}.mono-state-reveal strong{font-size:14px;overflow-wrap:anywhere}.mono-state-reveal p{font-size:13px;line-height:1.6;margin:0}
@media(max-width:600px){.mono-state-reveal{top:12px;padding:12px;grid-template-columns:52px 1fr}.mono-state-portrait{width:52px}.mono-state-reveal strong,.mono-state-reveal p{font-size:12px}.mono-token .mono-jail-bars{border-width:1px}}
@media(prefers-reduced-motion:reduce){.mono-token-portrait,.mono-state-portrait{animation:none!important}}
/* Only the affected player's portrait loses colour while jailed, insolvent or eliminated. */
.mono-token[data-trouble=true] .mono-token-portrait>img,[data-mono-identity][data-trouble=true]>.sticker-avatar,.mono-state-portrait[data-trouble=true]>img{filter:grayscale(1)}
/* Every inmate stays visible, layered together behind the same cell bars. */
.mono-tokens[data-prison=true]{display:grid;grid-template-columns:repeat(var(--prison-columns,2),minmax(0,1fr));grid-auto-rows:minmax(0,1fr);align-content:center;align-items:center;justify-items:center;gap:0;inset:9% 3% 5%;isolation:isolate}
.mono-tokens[data-prison=true]>.mono-token{width:112%;max-width:none;min-width:0;min-height:0;align-self:center;justify-self:center;margin-inline:-6%}
.mono-tokens[data-prison=true] .mono-token-portrait{max-width:100%;min-height:0}
.mono-tokens[data-prison=true] .mono-token-portrait>img{max-height:100%;object-fit:contain}
.mono-tokens[data-prison=true] .mono-token-name{display:none}
.mono-tokens[data-all-jailed=true]::after{content:'';position:absolute;inset:0;z-index:10;pointer-events:none;border:2px solid #53685b;border-radius:3px;background:repeating-linear-gradient(90deg,transparent 0,transparent 18%,#53675dcc 18%,#53675dcc 22%);box-shadow:inset 0 2px #617768,inset 0 -2px #617768!important}
.mono-tokens[data-all-jailed=true] .mono-jail-bars{display:none}
@media(max-width:600px){.mono-tokens[data-all-jailed=true]::after{border-width:1px;box-shadow:inset 0 1px #617768,inset 0 -1px #617768!important}}
.mono-tokens[data-prison=true]>.mono-token{height:100%}
.mono-tokens[data-prison=true] .mono-token-portrait{display:flex;align-items:center;justify-content:center;height:100%}
.mono-tokens[data-prison=true] .mono-token-portrait>img{width:100%;height:100%!important;aspect-ratio:auto;object-fit:contain}
/* Compact, shadow-free status notices leave more of the board visible. */
.mono-money-notice,.mono-card-reveal,.mono-state-reveal{box-shadow:none!important}
@media(max-width:600px){
 .mono-money-notice,.mono-card-reveal,.mono-state-reveal{top:max(10px,env(safe-area-inset-top));border-radius:11px;border-bottom-width:2px}
 .mono-money-notice{right:10px;max-width:min(240px,calc(100vw - 20px));padding:7px 10px;gap:2px;font-size:10px;line-height:1.4}
 .mono-money-notice b{font-size:14px;line-height:1.3}
 .mono-card-reveal,.mono-state-reveal{width:min(270px,calc(100vw - 24px));padding:8px 10px;grid-template-columns:32px minmax(0,1fr);gap:3px 8px}
 .mono-card-reveal img,.mono-state-reveal .mono-state-portrait{width:32px;height:32px}
 .mono-card-reveal strong,.mono-card-reveal p,.mono-state-reveal strong,.mono-state-reveal p{font-size:11px;line-height:1.45;overflow-wrap:anywhere}
}
/* Ownership names stay legible outside the board's clipped squares. */
.mono-owner-tooltip{position:fixed;z-index:110;display:flex;align-items:center;gap:9px;max-width:min(280px,calc(100vw - 20px));padding:9px 12px;border:1px solid #b6cba4;border-bottom:3px solid #91ab7d;border-radius:12px;background:#fffbed;color:#2d5639;box-shadow:none!important;pointer-events:none;line-height:1.4}
.mono-owner-tooltip[hidden]{display:none!important}.mono-owner-tooltip>.sticker-avatar{width:34px;height:34px;flex-shrink:0;object-fit:contain}.mono-owner-tooltip>div{display:grid;gap:2px;min-width:0}.mono-owner-tooltip small{font-size:10px;color:#728461}.mono-owner-tooltip strong{font-size:14px;overflow-wrap:anywhere}.mono-owner-tooltip::after{content:'';position:absolute;left:calc(var(--owner-tip-arrow) - 4px);width:8px;height:8px;transform:rotate(45deg);background:#fffbed;pointer-events:none}.mono-owner-tooltip[data-placement=above]::after{bottom:-5px;border-right:1px solid #91ab7d;border-bottom:1px solid #91ab7d}.mono-owner-tooltip[data-placement=below]::after{top:-5px;border-left:1px solid #b6cba4;border-top:1px solid #b6cba4}
@media(max-width:600px){.mono-owner-tooltip{padding:7px 10px;gap:7px}.mono-owner-tooltip>.sticker-avatar{width:28px;height:28px}.mono-owner-tooltip strong{font-size:12px}}
.mono-asset-art{width:38px;height:38px;object-fit:contain;flex-shrink:0}
@media(max-width:600px){.mono-asset-art{width:30px;height:30px}}
/* A narrower central area gives every perimeter property more room. */
.board.monopoly-board{grid-template-columns:minmax(0,1.35fr) repeat(9,minmax(0,1fr)) minmax(0,1.35fr)!important;grid-template-rows:minmax(0,1.35fr) repeat(9,minmax(0,1fr)) minmax(0,1.35fr)!important}

@media(orientation:landscape) and (max-height:500px) and (max-width:1023px){body.monopoly-room.focus-mode .monopoly-panel{top:12px!important;left:10px!important;width:138px!important}}
