.background-modal{width:820px;max-width:calc(100% - 32px)}
.background-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.background-choice{position:relative;display:flex;flex-direction:column;min-width:0;padding:7px 7px 15px;border:1px solid #d3b5ca26;border-radius:14px;background:#ffffff04;cursor:pointer;overflow:hidden;transition:background .18s,border-color .18s}
.background-choice:hover{background:#d8bbcf0d;border-color:#d3b5ca66}
.background-choice:has(input:checked){background:#c5a27c19;border-color:#e3c096;box-shadow:0 0 0 1px #e3c09635}
.background-choice:has(input:focus-visible){outline:2px solid #f0d2ad;outline-offset:3px}
.background-choice input{position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%)}
.background-choice img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:9px;margin-bottom:11px}
.background-choice strong{font-size:13px;font-weight:500;color:#f4e4ed;margin:0 9px 6px;padding-right:16px}
.background-choice>span:not(.background-check){font-size:10px;line-height:1.7;color:#bda9bd;margin-inline:9px}
.background-check{position:absolute;top:15px;right:15px;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#e8c59f;color:#342435;font-size:13px;opacity:0;box-shadow:0 2px 10px #19101f55}
.background-choice:has(input:checked) .background-check{opacity:1}
.background-status{min-height:24px;color:#d8c0d0;font-size:12px;line-height:1.8;margin:18px 0 8px}
.background-footer{display:flex;justify-content:flex-end;border-top:1px solid #d3b5ca1c;margin-top:12px;padding-top:16px}
.background-footer .primary-button{margin:0;min-height:42px;width:auto;padding-inline:20px}
.room-foreground{position:absolute;inset:0;z-index:2;background-size:cover;background-position:50% 50%;clip-path:inset(var(--background-table-y,100%) 0 0);pointer-events:none}
.cast-focus[data-background-ready="true"] .room{background-color:#a69c91}
.cast-focus .room:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#160f2340,transparent 25% 61%,#160f2366),linear-gradient(90deg,#160f231a,transparent 35% 75%,#160f230a);box-shadow:none}
.cast-focus #cast-canvas{filter:drop-shadow(0 3px 12px #29202a1c)}
.cast-focus .cast-stage:after{background:linear-gradient(180deg,transparent 62%,#140e2240 78%,#140e2280);box-shadow:none;pointer-events:none}
.cast-focus .lounge-header{background:linear-gradient(180deg,#1d1526c7,#1d15265c 65%,transparent)}
.cast-focus .cast-identity:before{inset:-30px -44px;background:radial-gradient(ellipse 70% 70% at 40% 50%,#21162bd9,#21162b99 40%,transparent 72%);filter:blur(8px)}
.cast-focus .cast-age{color:#f7edf3;background:#21162b88}
.cast-focus .lounge-kicker,.cast-focus .cast-description{color:#f1e2ec;text-shadow:0 1px 4px #140d21}
.cast-focus .reply-content{border-radius:18px;background:radial-gradient(ellipse,#21162c66,transparent 75%);text-shadow:0 1px 5px #120d20,0 2px 14px #120d20}
@media(max-width:760px){.background-modal{padding:22px;width:620px}.background-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.background-choice strong{font-size:12px}.background-choice>span:not(.background-check){font-size:10px}}
@media(max-width:420px){.background-modal{max-width:calc(100% - 20px);padding:19px 15px}.background-choice{padding:5px 5px 11px;border-radius:11px}.background-choice strong,.background-choice>span:not(.background-check){margin-inline:5px}.background-choice img{margin-bottom:8px}.background-check{top:11px;right:11px}.background-footer .primary-button{width:100%}}
@media(max-width:640px){.cast-focus .cast-identity:before{inset:-14px -24px;background:radial-gradient(ellipse,#21162bc7,#21162b77 58%,transparent 86%)}}
@media(max-height:480px){
  .cast-focus #cast-canvas{--cast-safe-top:98px}
  .cast-focus .reply-suggestions-label,.cast-focus .conversation-tools{display:none}
  .cast-focus .reply-suggestions{padding:0;margin:0 0 4px;border:0}
  .cast-focus .reply-suggestion{min-height:32px;padding:4px 8px;font-size:10px}
  .cast-focus .chat-composer{padding:6px}
  .cast-focus .reply-content{margin-bottom:6px}
  .cast-focus #current-reply,.cast-focus .caption{max-height:42px;font-size: calc(12px * var(--reply-text-scale, 1));line-height:1.65}
  .cast-focus .cast-identity{top:112px}
  .cast-focus .cast-name{font-size:28px}
  .cast-focus .lounge-kicker,.cast-focus .identity-line{display:none}
}
@media(max-height:480px) and (max-width:640px){.cast-focus #cast-canvas{--cast-safe-top:82px}}
@media(prefers-reduced-motion:reduce){.background-choice{transition:none}}
