/* Range controls are not text fields: their old 12px padding shortened the track. */
input[type="range"]{padding:0!important;border:0!important;border-radius:0;background:transparent;min-height:24px;box-shadow:none;accent-color:#2563eb}
input[type="range"]:focus-visible{outline:2px solid #60a5fa;outline-offset:3px;border-radius:4px}
/* The album is one vertically stacked card, never a flex row of title and grid. */
.realtime-duel-chat-message .chat-photo-album-body{display:grid;grid-template-columns:minmax(0,1fr);width:min(100%,630px);max-width:100%;min-width:0;gap:0}
.chat-photo-album-body>.chat-photo-album-title{grid-row:1;width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;line-height:1.35}
.chat-photo-album-body>.chat-photo-album{grid-row:2;width:100%;box-sizing:border-box;min-width:0}
.chat-photo-album-body>.xixi-chat-reply-action{grid-row:3;justify-self:start}
.realtime-duel-chat-message.mine .chat-photo-album-body>.xixi-chat-reply-action{justify-self:end;order:0}
/* Both viewer modes use the site's shared button surface, type and corner ratio. */
.xixi-image-viewer :is(.xixi-image-tools,.xixi-image-size-row,.xixi-image-header)>button{font-family:var(--wf,inherit);font-size:.9rem;line-height:1.25;padding:8px 14px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.xixi-image-viewer .xixi-image-header>button.xixi-image-close{padding:0}
.xixi-image-viewer button[hidden]{display:none!important}
.v467-loading-percent{display:block;text-align:center;font-variant-numeric:tabular-nums;margin-top:7px;font-size:.85em}
