/* The countdown replaces the portrait without replacing image DOM or timers. */
.seat-avatar[data-avatar-id]:not(.is-counting) {
  color:transparent !important;
  background-image:var(--avatar-sheet) !important; background-size:var(--avatar-size) !important;
  background-position:var(--avatar-position) !important; background-repeat:no-repeat !important;
  background-color:#102829 !important;
}
.avatar-dialog {
  width:min(780px,calc(100vw - 24px)); max-height:calc(100dvh - 24px); margin:auto;
  padding:20px; border:1px solid #ad945e; border-radius:14px; background:#111e21; color:#f6eedc;
  font:16px/1.4 Arial,sans-serif; box-shadow:0 24px 80px #000b; overflow:auto;
}
.avatar-dialog::backdrop { background:#000b; }
.avatar-dialog-header,.avatar-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.avatar-dialog h2 { font-size:24px; margin:0; }
.avatar-dialog button { cursor:pointer; color:inherit; font:inherit; }
.avatar-dialog button:focus-visible { outline:3px solid #f4cd6e; outline-offset:3px; }
.avatar-close { width:36px; height:36px; background:transparent; border:0; font-size:28px !important; }
.avatar-filters { display:flex; gap:8px; margin:16px 0; }
.avatar-filter { background:#20353b; border:1px solid #456067; padding:7px 18px; border-radius:20px; }
.avatar-filter[aria-pressed=true] { background:#aa8543; color:#fff; }
.avatar-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(100px,1fr)); gap:12px; max-height:55dvh; overflow:auto; padding:4px; }
.avatar-choice { background:#172b30; border:2px solid transparent; border-radius:10px; padding:8px; }
.avatar-choice[aria-pressed=true] { border-color:#e6c36b; background:#33413a; }
.avatar-preview { display:block; width:80px; height:80px; margin:auto; border-radius:50%; background-image:var(--avatar-sheet); background-size:var(--avatar-size); background-position:var(--avatar-position); }
.avatar-label { display:block; font-size:13px; margin-top:6px; }
.avatar-status { min-height:23px; margin:12px 0; color:#efcf91; }
.avatar-footer span { font-size:13px; color:#abbcbe; }
.avatar-save { border:0; border-radius:7px; background:#d1ad60; color:#151b1b !important; padding:10px 18px; font-weight:700 !important; }
.avatar-dialog button:disabled { opacity:.5; cursor:wait; }
@media(max-width:460px) { .avatar-dialog{padding:12px}.avatar-grid{grid-template-columns:repeat(3,1fr);gap:7px}.avatar-preview{width:64px;height:64px}.avatar-dialog h2{font-size:20px}.avatar-footer{align-items:flex-start}.avatar-footer span{max-width:110px} }
