/* Approved Step 3 cabinet presentation. */
#game .board-status,#game #mode-note,#game .win-overlay{display:none}
#game .collection{z-index:2;pointer-events:none}
#game.bonus-mode .collection{left:66%;top:50%;width:10%}
#game .world-art img{transition:filter .9s ease}#game.bonus-mode .world-art img{filter:brightness(.82) saturate(.78)}
.reduce-motion #game .world-art img{transition:none}
.phase-presentation{position:absolute;inset:0;z-index:6;pointer-events:auto}.phase-presentation[hidden]{display:none}
.phase-presentation canvas{position:absolute;inset:0;width:100%;height:100%}
.phase-presentation .mode-button{position:absolute;left:35%;top:87%;width:30%;height:8.5%;font-size:27px;letter-spacing:.02em}
/* The cost and its explanation get the console's widest field. */
#game .console{left:8%;right:6%;top:84.4%;height:100px;gap:22px;justify-content:center}
#game .readout>span{font-size:26px;letter-spacing:.04em;line-height:1.12;color:#cec8b5}
#game .readout strong{font-size:52px;line-height:1.15}
#game .balance-readout{width:197px}#game .win-readout{width:215px}
#game .balance-readout strong{font-size:42px}
#game .bet-control{gap:8px}#game .bet-control .readout{width:324px}
#game .bet-control .readout{display:grid;grid-template-columns:132px 1fr;column-gap:10px;align-items:center}
#game .bet-control .readout>span{text-align:right;font-size:26px;line-height:1.02;white-space:nowrap}
#game .bet-control .readout strong{text-align:left;font-size:58px;line-height:1.1}
#game .bet-control .utility{width:52px;height:60px}
#game #bet-detail{grid-column:1 / -1;font-size:32px;letter-spacing:0;line-height:1.08;color:#cfdbd6;margin-top:0}
#game .console-tools{gap:8px}#game .console>.utility,#game .console-tools .utility{width:58px;height:60px}
#game .drop-button{width:122px;height:122px;margin-top:40px}
#game .mode-control{gap:8px;top:78.8%}#game .mode-control [data-mode]{width:145px;font-size:29px;letter-spacing:0}
#game .mode-control #boost-button{width:216px;font-size:26px;letter-spacing:0}
#game .mode-control #buy-button{width:230px;font-size:28px;letter-spacing:.02em}
#game .mode-control .mode-button{height:58px}#game .mode-control .mode-button:before,#game .mode-control .mode-button:after{background-size:100% 58px}
#game .mode-control small{display:block;font-size:22px;line-height:1.04;font-weight:600;color:#c4d6d2}
#game #boost-button:disabled small{color:#acae9f;font-size:19px}

/* Native dialogs retain viewport-sized type; painted glass is the surface. */
.review-dialog{color:#f6edd4;font-family:Atelier,sans-serif;border:0;background:#071a1d url('../assets/board/back-panel.webp') center/100% 100%;padding:24px 30px;max-height:94vh;width:min(800px,94vw);text-align:center;overflow:auto;box-shadow:0 15px 70px #000b}
.review-dialog::backdrop{background:#02080bce}
.review-dialog .dialog-close{width:38px;height:38px;padding:0}.review-dialog .dialog-close svg{width:17px;height:17px}
.review-dialog p{margin:0}.dialog-close{position:absolute;top:12px;right:17px;border:0;background:none;color:#c6d0c9;font-size:13px;padding:5px}
.review-dialog h2{font-size:30px;font-weight:600;margin:4px 0 26px}.dialog-label{font-size:15px;letter-spacing:.08em;color:#c8c6ae}
#cost-amount{display:block;font-size:72px;line-height:1.2;color:#fff0c8;font-weight:600}#cost-text{font-size:24px;color:#dee9e2}
.cost-note{font-size:16px;color:#bdcfc7;margin:16px 0 22px!important}.cost-review{width:min(630px,94vw)}
.review-dialog .dialog-actions{justify-content:center;gap:20px}.review-dialog .mode-button{width:210px;height:55px;font-size:18px;letter-spacing:.02em}
.review-dialog .dialog-actions .mode-button{width:calc(50% - 10px);max-width:210px}
/* Three physical display tiles, then a separate quoted purchase confirmation. */
.buy-review{width:min(680px,94vw)}
.buy-title{height:48px;max-width:75%;object-fit:contain;margin:5px auto 8px}
.buy-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:10px 0 14px}
.buy-tile{position:relative;isolation:isolate;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:5px;border:0;background:none;color:#f7eace;padding:16px 9px 13px;min-width:0;transition:transform .18s ease,filter .18s ease}
.buy-tile:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('../assets/board/back-panel.webp') center/100% 100%}
.buy-tile:hover{filter:brightness(1.2);transform:translateY(-3px)}.buy-tile:active{transform:translateY(1px)}
.buy-tile-art{height:108px;width:92%;object-fit:contain;margin-bottom:7px;pointer-events:none}
.buy-tile-name{font-size:17px;line-height:1.13;min-height:39px;display:flex;align-items:center;justify-content:center;font-weight:600}
.buy-tile strong{font-size:35px;line-height:1.14;font-weight:600;white-space:nowrap;color:#fff0c8;max-width:100%}
.buy-tile-multiple{font-size:13px;color:#c5cec1}
.buy-footer{display:flex;align-items:center;justify-content:space-between;color:#c0cfc5;font-size:15px}.buy-footer button{color:#ead8b4;background:none;border:0;font-size:15px;padding:8px 16px}
.buy-confirm-review{width:min(640px,94vw)}.buy-confirm-review h2{margin:4px 0 20px}
.buy-confirm-body{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:22px;text-align:left;margin-bottom:24px}
#buy-confirm-art{width:100%;height:140px;object-fit:contain}
#buy-confirm-details{font-size:18px;line-height:1.4;color:#cfdfd6;margin-bottom:16px}
#buy-confirm-price{display:block;font-size:56px;line-height:1.14;font-weight:600;color:#fff0c8}
#buy-confirm-basis{font-size:15px;color:#c7c9b7}
.reduce-motion .buy-tile{transition:none}.reduce-motion .buy-tile:hover{transform:none}
@media(max-height:450px){
 .review-dialog{padding:10px 18px}.dialog-close{top:5px;right:8px;font-size:11px}.review-dialog h2{font-size:21px;margin:4px 0 10px}.dialog-label{font-size:12px}
 #cost-amount{font-size:41px}#cost-text{font-size:16px}.cost-note{font-size:12px;margin:7px 0 10px!important}.review-dialog .mode-button{height:34px;font-size:12px}.review-dialog .dialog-actions{gap:10px}
 .review-dialog .dialog-close{width:28px;height:28px;top:5px;right:6px}.review-dialog .dialog-actions .mode-button{width:calc(50% - 5px)}
 .buy-review{padding:8px 12px}.buy-title{height:24px;margin:2px auto 3px}.buy-options{gap:8px;margin:5px 0 4px}
 .buy-tile{padding:5px;gap:2px}.buy-tile-art{height:43px;margin-bottom:2px}.buy-tile-name{font-size:12px;min-height:28px;line-height:1.05}
 .buy-tile strong{font-size:25px;line-height:1.05}.buy-tile-multiple{font-size:10px}.buy-footer,.buy-footer button{font-size:11px}.buy-footer button{padding:5px 8px}
 .buy-confirm-review h2{font-size:20px;margin:3px 15px 9px}.buy-confirm-body{grid-template-columns:65px 1fr;gap:13px;margin-bottom:12px}
 #buy-confirm-art{height:84px}#buy-confirm-details{font-size:12px;line-height:1.25;margin-bottom:8px}
 #buy-confirm-price{font-size:34px;line-height:1.06}#buy-confirm-basis{font-size:11px}.buy-confirm-body .dialog-label{font-size:10px}
}

/* Approved LIFT and persistent bank. */
.lift-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}
.bank-reward{position:absolute;top:459px;left:-3px;width:70px;font-size:43px;line-height:1;font-weight:600;color:#d4ffe0;text-shadow:0 2px 5px #041712}
.bank-reward small{display:block;font-size:17px;line-height:1.05}.bank-award .lock-count{color:#fff1be}.bank-award .socket-gem{filter:brightness(1.4)}
.bank-award .bank-reward{animation:bank-seat .55s ease-out}.bank-disabled .lock-sockets{opacity:.27}.bank-disabled .bank-reward{color:#c4c9bd;font-size:35px}.bank-disabled .lock-title{color:#b8c3b4}
@keyframes bank-seat{from{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}
.lock-reduced .bank-reward{animation:none}
