.poster-dialog {
  width: min(1500px, calc(100vw - 32px));
  max-width: none;
  height: calc(100dvh - 32px);
  max-height: none;
  padding: 0;
  border: 1px solid #6ed5dc;
  border-radius: 16px;
  background: #e8edf0;
  color: #edf7ff;
  box-shadow: 0 20px 80px #0009;
  overflow: hidden;
  font-family: "Microsoft YaHei", system-ui, sans-serif;
}
.poster-dialog::backdrop { background: #02101bd9; }
.poster-card { height: 100%; display: flex; flex-direction: column; min-height: 0; }
.poster-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 18px; background: #071b2a; flex-shrink: 0; }
.poster-toolbar h2 { margin: 0; font-size: 20px; font-weight: 600; }
.poster-tools { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.poster-tools button { border: 1px solid #538a9d; border-radius: 8px; background: #153447; color: #edf7ff; padding: 8px 12px; cursor: pointer; font: inherit; }
.poster-tools button:hover { background: #245368; }
.poster-tools button:focus-visible, .poster-scroll:focus-visible { outline: 2px solid #32bfcf; outline-offset: -2px; }
.poster-tools .poster-close { margin-left: 10px; background: #244a60; }
#poster-zoom { min-width: 52px; text-align: center; font-size: 14px; }
.poster-status { margin: 0; padding: 8px 18px; background: #dce8ec; color: #345066; font-size: 14px; flex-shrink: 0; }
.poster-scroll { min-height: 0; flex: 1; overflow: auto; overscroll-behavior: contain; background: #b8c6cd; touch-action: pan-x pan-y; }
.poster-stage { width: max-content; min-width: 100%; box-sizing: border-box; padding: 20px; }
#poster-original { display: block; margin: 0 auto; max-width: none; height: auto; box-shadow: 0 4px 20px #233b4c45; }
.poster-footer { background: #071b2a; padding: 8px 18px; font-size: 13px; color: #bdd5e2; flex-shrink: 0; }
@media (max-width: 760px) {
  .poster-dialog { width: calc(100vw - 12px); height: calc(100dvh - 12px); border-radius: 10px; }
  .poster-toolbar { align-items: flex-start; flex-direction: column; padding: 10px; }
  .poster-toolbar h2 { font-size: 17px; }
  .poster-tools { gap: 5px; }
  .poster-tools button { padding: 6px 8px; font-size: 13px; }
  .poster-tools .poster-close { margin-left: 0; }
}
