/* Install/share surfaces inherit the site's colors and type scale. */
@media(display-mode:standalone),(display-mode:minimal-ui),(display-mode:window-controls-overlay){[data-install],[data-get-app]{display:none!important}}
dialog:not([open]){display:none}
.platform-dialog{background:var(--bg,#030504);color:var(--ink,#c4f7ce);border:1px solid var(--line,#254c30);padding:0;border-radius:22px;width:calc(100% - 28px);max-width:540px;max-height:90vh;max-height:90dvh;overflow:auto;overscroll-behavior:contain}
.platform-dialog::backdrop{background:#030604b8;backdrop-filter:blur(7px)}
.platform-dialog-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;border-bottom:1px solid var(--line,#254c30)}
.platform-dialog-top .eyebrow{margin:0;font-size:.62rem}
.platform-dialog-body{padding:26px 26px calc(26px + env(safe-area-inset-bottom))}
.platform-dialog h2{font-size:clamp(1.65rem,6vw,2.25rem);line-height:1.12;max-width:440px;margin:0 0 16px}
.platform-app-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:var(--lime,#39ff14);color:var(--bg,#030504);margin-bottom:23px;font-size:23px;padding-left:3px}
.platform-intro{color:var(--muted,#87a98d);font-size:.88rem;line-height:1.6}
.platform-steps{margin:24px 0;padding-left:25px;font-size:.92rem;line-height:1.6}
.platform-steps li{padding:0 0 12px 5px}.platform-steps li::marker{color:var(--lime,#39ff14);font-weight:700}
.platform-note{margin-top:20px;padding:15px 16px;background:var(--panel,#090f0b);border-radius:12px;font-size:.76rem;color:var(--muted,#87a98d);line-height:1.6}
.platform-status{font-size:.8rem;line-height:1.5;color:var(--lime,#39ff14);margin:14px 0 0}.platform-status:empty{display:none}
.platform-copy{margin-top:14px;min-height:44px;padding:10px 0}
.platform-link-label{display:block;font-size:.78rem;margin:24px 0 8px;color:var(--muted,#87a98d)}
.platform-share-url{display:block;width:100%;min-width:0;font:inherit;font-size:16px;padding:14px 12px;color:var(--ink,#c4f7ce);border:1px solid var(--line,#254c30);background:var(--panel,#090f0b);border-radius:9px;user-select:text;-webkit-user-select:text}
.platform-share-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.platform-dialog .button{min-height:46px}
.dialog-fallback-backdrop{position:fixed;inset:0;background:#030604d9;z-index:1008}
dialog.dialog-fallback[open]{display:block;position:fixed;inset:0;z-index:1009;margin:auto;max-height:92vh;max-height:92dvh;overflow:auto;box-shadow:0 20px 80px #0009}
dialog.film-dialog.dialog-fallback[open]{width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh}
@media(max-width:480px){.platform-dialog-body{padding:22px 20px calc(22px + env(safe-area-inset-bottom))}.platform-dialog-top{padding:12px 18px}.platform-share-actions .button{flex:1}.platform-note{font-size:.78rem}}
@media(prefers-reduced-motion:reduce){.platform-dialog{scroll-behavior:auto}}

/* Optional support follows a few movie nights; it is never a player overlay. */
.support-note{margin:36px 0 0;padding:22px 24px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--muted)}
.support-note .support-byline{font-size:.62rem;letter-spacing:.13em;margin:0 0 8px;font-weight:550;color:var(--muted)}
.support-note h2{font-family:inherit;font-size:1.15rem;font-weight:600;line-height:1.4;letter-spacing:-.01em;color:var(--ink);margin:0 0 10px}
.support-note p{max-width:76ch;font-size:.85rem;line-height:1.7;margin:0;color:var(--muted)}
.support-note .support-free{margin-top:8px;color:var(--ink)}
.support-note .support-terms{font-size:.77rem;margin-top:11px}
.support-terms a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
.support-actions{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px;margin-top:12px}
.support-actions a,.support-actions button{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;font:inherit;font-size:.82rem;line-height:1.5;color:var(--muted);text-align:left}
.support-actions .support-link{color:var(--ink);gap:7px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--muted)}
.support-actions a:hover,.support-actions button:hover{color:var(--lime)}
.support-actions a:focus-visible,.support-actions button:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
@media(max-width:720px){.support-note{padding:20px;margin-top:28px}.support-actions{gap:0 18px}.support-actions .support-link{flex:1 1 130px}}
@media print{.support-note{display:none!important}}
