.room-review[hidden] { display:none!important; }
.room-review { --review-text:#f4eadb; --review-muted:#c3b6ba; --review-accent:#e9c176; --review-line:#e9c17640; box-sizing:border-box; padding:28px; border:1px solid var(--review-line); border-radius:14px; background:#1b151d; color:var(--review-text); text-align:left; font:400 14px/1.6 Manrope,sans-serif; }
.room-review h3 { margin:0 0 8px; color:var(--review-text); font:600 clamp(28px,3vw,36px)/1.1 "Cormorant Garamond",Georgia,serif; }
.room-review .room-review-intro { margin:0 0 20px; color:var(--review-muted); font-size:13px; }
.room-review fieldset { min-width:0; margin:0 0 18px; padding:0; border:0; }
.room-review legend,.room-review-text-label { color:var(--review-text); font-size:12px; font-weight:700; }
.room-review-text-label { display:block; margin-bottom:8px; }
.room-review-text-label span { color:var(--review-muted); font-weight:400; }
.room-review-stars { display:flex; gap:4px; margin-top:8px; }
.room-review-stars label { position:relative; display:grid; place-items:center; width:44px; height:44px; border-radius:6px; cursor:pointer; }
.room-review-stars input { position:absolute; opacity:0; width:100%; height:100%; margin:0; cursor:pointer; }
.room-review-stars span { color:#8a7d85; font:32px/1 Arial,sans-serif; pointer-events:none; }
.room-review-stars label[data-selected="true"] span { color:var(--review-accent); }
.room-review-stars label:focus-within { outline:2px solid var(--review-accent); outline-offset:2px; }
.room-review textarea { box-sizing:border-box; display:block; width:100%; min-height:100px; max-height:300px; resize:vertical; padding:12px; border:1px solid var(--review-line); border-radius:7px; background:#100e12; color:var(--review-text); font:400 14px/1.6 Manrope,sans-serif; }
.room-review textarea::placeholder { color:var(--review-muted); opacity:1; }
.room-review textarea:focus-visible,.room-review button:focus-visible { outline:2px solid var(--review-accent); outline-offset:3px; }
.room-review .room-review-privacy { margin:10px 0 18px; color:var(--review-muted); font-size:11px; }
.room-review button { min-height:44px; padding:12px 20px; border:1px solid var(--review-accent); border-radius:7px; background:var(--review-accent); color:#261900; font:700 12px/1.5 Manrope,sans-serif; cursor:pointer; }
.room-review button:disabled { opacity:.6; cursor:wait; }
.room-review .room-review-status { margin:12px 0 0; font-size:12px; color:var(--review-text); }
.room-review .room-review-status:empty { display:none; }
.room-review .room-review-status[data-state="error"] { color:#ffb9b9; }
.main-vault-ending-card>.room-review { margin:32px clamp(24px,5vw,60px); --review-text:#38272d; --review-muted:#68535a; --review-accent:#704153; --review-line:#70415340; background:#fffaf0; }
.main-vault-ending-card>.room-review textarea { background:#fffef8; }
.main-vault-ending-card>.room-review button { color:#fff8ef; }
#casinoRoomReview p { color:var(--review-muted); font:400 12px/1.6 Manrope,sans-serif; letter-spacing:normal; text-transform:none; }
#casinoRoomReview .room-review-status[data-state="error"] { color:#962e35; }
.main-vault-ending-view[data-stage="processing"] .room-review { display:none; }
@media(max-width:600px) {
  .room-review { padding:22px 18px; }
  .room-review button { width:100%; }
  .main-vault-ending-card>.room-review { margin:24px 20px; }
}
