.issue-poster-desktop-slot { display: contents; }
.issue-poster-mobile-slot { display: none; }
.issue-poster-anchor { --issue-poster-width: 320px; position: absolute; z-index: 3; top: 15px; right: 30px; width: var(--issue-poster-width); max-width: calc(100% - 32px); }
.issue-poster-toggle { position: relative; isolation: isolate; display: flex; align-items: center; justify-content: space-between; gap: 14px; width: 100%; min-height: 58px; padding: 10px 19px; overflow: hidden; border: 1px solid rgba(115, 213, 230, .48); border-top: 3px solid #39deee; border-radius: 2px 2px 13px 2px; background: linear-gradient(110deg, rgba(14, 35, 46, .96), rgba(6, 19, 29, .9)); color: #edf8fc; text-align: left; cursor: pointer; box-shadow: 0 6px 28px rgba(0, 0, 0, .28), inset 0 1px rgba(160, 242, 255, .1); transition: border-color .2s, box-shadow .2s, background .2s; }
.issue-poster-toggle::before { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(110deg, transparent 12%, rgba(101, 225, 240, .15) 49%, transparent 78%); transform: translateX(-110%); transition: transform .7s ease; }
.issue-poster-toggle::after { content: ''; position: absolute; left: 0; bottom: 0; width: 34%; height: 2px; background: linear-gradient(90deg, #ff7f39, transparent); transition: width .45s ease; }
.issue-poster-toggle:hover::before, .issue-poster-toggle:focus-visible::before, .issue-poster-anchor.is-open .issue-poster-toggle::before { transform: translateX(100%); }
.issue-poster-toggle:hover, .issue-poster-toggle:focus-visible { border-color: #64e8f2; box-shadow: 0 0 0 2px rgba(60, 211, 228, .12), 0 6px 30px rgba(0, 0, 0, .3); outline: none; }
.issue-poster-anchor.is-open .issue-poster-toggle { border-bottom-color: rgba(85, 222, 237, .28); border-radius: 2px 2px 0 0; }
.issue-poster-anchor.is-open .issue-poster-toggle::after { width: 100%; }
.issue-poster-toggle-copy { flex: 1; min-width: 0; }
.issue-poster-toggle-copy small { display: block; margin-bottom: 3px; font-size: 8px; line-height: 1; letter-spacing: .23em; font-weight: 750; color: #7dabbc; }
.issue-poster-toggle-copy strong { display: block; font-size: 13px; line-height: 1.4; font-weight: 850; letter-spacing: .09em; white-space: nowrap; }
.issue-poster-toggle-insignia { display: flex; align-items: center; gap: 3px; width: 25px; height: 24px; transform: skewX(-18deg); }
.issue-poster-toggle-insignia i { display: block; height: 19px; width: 4px; background: #37dae9; box-shadow: 0 0 9px rgba(55, 218, 233, .3); }
.issue-poster-toggle-insignia i:nth-child(2) { height: 14px; opacity: .65; }
.issue-poster-toggle-insignia i:nth-child(3) { height: 9px; opacity: .3; }
.issue-poster-toggle-arrow { color: #6ce8f2; font: 30px/1 sans-serif; transform: translateY(-4px); transition: transform .42s ease; }
.issue-poster-anchor.is-open .issue-poster-toggle-arrow { transform: translateY(4px) rotate(180deg); }
.issue-poster-anchor.is-empty .issue-poster-toggle-arrow { font-size: 23px; transform: none; }
.issue-poster-curtain { --issue-poster-max-height: 640px; position: fixed; z-index: 190; margin: 0; opacity: 0; visibility: hidden; clip-path: inset(0 0 100% 0); transform: translateY(-4px); transform-origin: top center; pointer-events: none; filter: drop-shadow(0 16px 27px rgba(0, 0, 0, .48)); transition: clip-path .46s cubic-bezier(.18, .8, .22, 1), opacity .18s ease, transform .46s cubic-bezier(.18, .8, .22, 1), visibility .46s; }
.issue-poster-curtain.is-open { opacity: 1; visibility: visible; clip-path: inset(0 0 -40px 0); transform: none; pointer-events: auto; }
.issue-poster-curtain[hidden], .issue-poster-curtain.is-offscreen { display: none; }
.issue-poster-curtain.no-transition { transition: none; }
.issue-poster-curtain-sheet { position: relative; padding: 0; margin: 0; background: rgba(5, 13, 20, .96); }
.issue-poster-thumbnail { display: block; width: 100%; margin: 0; padding: 0; border: 0; background: transparent; cursor: zoom-in; line-height: 0; }
.issue-poster-thumbnail img { display: block; width: 100%; height: auto; max-height: var(--issue-poster-max-height); object-fit: contain; margin: 0 auto; user-select: none; }
.issue-poster-thumbnail:focus-visible { outline: 2px solid #54e0ec; outline-offset: -2px; }
.issue-poster-curtain-end { position: relative; display: flex; justify-content: center; align-items: center; height: 13px; border-top: 1px solid rgba(126, 226, 239, .58); background: linear-gradient(180deg, #233b46, #091720); border-radius: 0 0 8px 2px; box-shadow: 0 2px 4px rgba(0, 0, 0, .6); }
.issue-poster-curtain-end span { width: 34px; height: 2px; border-radius: 5px; background: #4dc7d7; box-shadow: 0 0 7px rgba(63, 222, 238, .4); }
.issue-poster-edit { position: absolute; top: 10px; right: 10px; padding: 7px 10px; border: 1px solid rgba(125, 222, 239, .55); border-radius: 3px; background: rgba(5, 16, 24, .83); color: #d5f4f8; cursor: pointer; font-size: 11px; line-height: 1.3; backdrop-filter: blur(8px); }
.issue-poster-edit:hover, .issue-poster-edit:focus-visible { background: #173b49; color: #fff; outline: 2px solid #61ddec; outline-offset: 2px; }
.issue-poster-original-editor { display: grid; gap: 15px; }
.issue-poster-original-preview { display: grid; place-items: center; min-height: 180px; max-height: min(55vh, 520px); overflow: auto; padding: 12px; background: rgba(3, 10, 17, .55); border: 1px dashed rgba(133, 183, 205, .3); border-radius: 4px; }
.issue-poster-original-image { display: block; max-width: 100%; width: auto; height: auto; max-height: calc(min(55vh, 520px) - 26px); object-fit: contain; }
.issue-poster-original-placeholder { margin: 0; padding: 30px; color: #8ca6b7; font-size: 13px; text-align: center; }
.issue-poster-viewer { position: fixed; z-index: 16000; inset: 0; overflow: hidden; border: none; outline: none; background: rgba(2, 5, 9, .96); touch-action: none; user-select: none; -webkit-user-select: none; cursor: zoom-out; }
.issue-poster-viewer img { position: absolute; left: 50%; top: 50%; display: block; max-width: none; max-height: none; margin: 0; border: none; border-radius: 0; box-shadow: none; object-fit: contain; transform-origin: center; touch-action: none; -webkit-user-drag: none; }
.issue-poster-viewer.is-zoomed { cursor: grab; }
.issue-poster-viewer.is-dragging { cursor: grabbing; }
.issue-poster-viewer-note { position: absolute; left: 50%; bottom: max(18px, env(safe-area-inset-bottom)); transform: translateX(-50%); margin: 0; padding: 5px 10px; color: rgba(233, 243, 249, .65); font-size: 10px; white-space: nowrap; pointer-events: none; text-shadow: 0 1px 3px #000; animation: issue-poster-hint 7s forwards; }
@keyframes issue-poster-hint { 0%, 65% { opacity: 1; } 100% { opacity: .18; } }
@media (max-width: 820px) {
  .issue-poster-mobile-slot:not(:empty) { display: block; }
  .issue-poster-mobile-slot .issue-poster-anchor { position: relative; top: auto; right: auto; max-width: 100%; margin-left: auto; }
}
@media (max-width: 760px) { .issue-poster-toggle { min-height: 52px; padding: 9px 13px; gap: 8px; } .issue-poster-toggle-copy strong { font-size: 12px; } }
@media (prefers-reduced-motion: reduce) { .issue-poster-toggle, .issue-poster-toggle::before, .issue-poster-toggle::after, .issue-poster-toggle-arrow, .issue-poster-curtain { transition: none; } .issue-poster-viewer-note { animation: none; } }
