.redesign-viewer { position: fixed; inset: 0; width: min(1480px,96vw); height: 94dvh; max-width: none; max-height: none; margin: auto; padding: 0; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); color: var(--ink); overflow: hidden; }
.redesign-viewer[open] { display: flex; flex-direction: column; }
.redesign-viewer::backdrop { background: #000b; }
.redesign-viewer__bar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; padding: 12px 18px; border-bottom: 1px solid var(--line); }
.redesign-viewer__bar strong { font: 600 16px/1.4 var(--font-ui); margin-right: auto; }
.redesign-viewer__versions, .redesign-viewer__actions { display: flex; gap: 6px; }
.redesign-viewer__themes { display: flex; gap: 6px; }
.redesign-viewer__themes[hidden] { display: none; }
.redesign-viewer button { min-height: 42px; padding: 9px 14px; border: 1px solid var(--line); border-radius: 5px; background: transparent; color: inherit; cursor: pointer; font: 12px/1.5 var(--font-ui); }
.redesign-viewer button[aria-pressed="true"], .redesign-viewer [data-close] { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.redesign-viewer button:focus-visible, .redesign-viewer__scroll:focus-visible { outline: 2px solid var(--accent-deep); outline-offset: -3px; }
.redesign-viewer__hint { flex: 0 0 auto; margin: 0; padding: 9px 18px; font: 12px/1.5 var(--font-ui); color: var(--ink-2); }
.redesign-viewer__scroll { flex: 1; min-height: 0; overflow: auto; scrollbar-width: none; overscroll-behavior: contain; background: var(--paper-card); }
.redesign-viewer__scroll::-webkit-scrollbar { display: none; width: 0; height: 0; }
.redesign-viewer__scroll img { display: block; width: 100%; max-width: none; height: auto; margin: 0 auto; }
.redesign-viewer.is-large .redesign-viewer__scroll img { width: max(100%,1440px); }
@media(min-width:961px) { .redesign-viewer [data-size] { display: none; } }
.redesign-viewer__status { position: absolute; bottom: 16px; left: 50%; transform: translateX(-50%); margin: 0; padding: 10px 14px; border: 1px solid var(--line); border-radius: 5px; background: var(--paper); color: var(--ink); box-shadow: 0 3px 20px #0002; max-width: 85%; width: max-content; font: 12px/1.5 var(--font-ui); }
@media(max-width:760px) {
 .redesign-viewer { width: 100%; height: 100dvh; border-radius: 0; border: 0; }
 .redesign-viewer__bar { gap: 8px; padding: 10px 12px; }
 .redesign-viewer__bar strong { font-size: 14px; }
 .redesign-viewer__versions { order: 3; width: 100%; }
 .redesign-viewer__versions button { flex: 1; }
 .redesign-viewer__themes { order: 4; width: 100%; }
 .redesign-viewer__themes button { flex: 1; }
 .redesign-viewer button { padding-inline: 10px; }
 .redesign-viewer__hint { padding: 8px 12px; font-size: 11px; }
}
