.comingsoon-trigger{display:flex;align-items:center;justify-content:center;gap:18px;min-height:48px;margin:22px auto 0;padding:13px 22px;max-width:100%;border:1px solid #277282;background:linear-gradient(115deg,#0b303e,#071820);color:#acffff;font:700 16px/1.3 var(--head);letter-spacing:1.5px;transition:border-color .2s,transform .2s}
.comingsoon-trigger:hover{border-color:#9fffff;transform:translateY(-2px)}
.comingsoon-trigger>span:last-child{font-size:24px}
.comingsoon-dialog{padding:0;border:1px solid #3b8b99;background:#02090e;color:var(--text);width:min(460px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;box-shadow:0 30px 110px #000d,0 0 65px #0cd9e317;scrollbar-width:thin;scrollbar-color:#235b6b #05141b}
.comingsoon-dialog[open]{animation:comingsoon-enter .35s ease-out}
.comingsoon-dialog::backdrop{background:#01080ed6;backdrop-filter:blur(9px)}
html:has(.comingsoon-dialog[open]){overflow:hidden}
.comingsoon-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 10px 6px 18px;background:#061720;border-bottom:1px solid #1c4551}
.comingsoon-header h2{margin:0;font:700 14px/1.4 var(--head);letter-spacing:1.3px;color:#94e4ed}
.comingsoon-header .dialog-close{position:static;flex-shrink:0;width:44px;height:44px;border:1px solid #28515e;background:#02101899;color:#b4d9e2;font-size:29px;line-height:1}
.comingsoon-header .dialog-close:hover{border-color:var(--cyan);color:#fff}
.comingsoon-poster{display:block;width:100%;height:auto;max-height:calc(100dvh - 146px - env(safe-area-inset-top) - env(safe-area-inset-bottom));object-fit:contain;background:#02090e}
.comingsoon-fallback{padding:70px 24px;text-align:center;font:900 italic clamp(30px,8vw,48px)/1.15 var(--head);color:var(--ice);margin:0}
.comingsoon-done{display:block;width:100%;min-height:54px;padding:14px 20px;border:0;border-top:1px solid #254652;background:#071822;color:#b5d4de;font:700 16px/1.4 var(--head);transition:color .2s,background .2s}
.comingsoon-done:hover{color:#e8ffff;background:#0b2c38}
.comingsoon-done:focus-visible{outline-offset:-5px}
@keyframes comingsoon-enter{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.comingsoon-dialog[open]{animation:none}.comingsoon-trigger,.comingsoon-done{transition:none}.comingsoon-trigger:hover{transform:none}.comingsoon-dialog::backdrop{backdrop-filter:none}}
