:root{color-scheme:dark;--bg: #0b0b0f;--surface: #14141a;--surface-strong: #1b1b23;--border: #26262f;--text: #ececf1;--muted: #8b8b99;--accent: #e0344a;--accent-strong: #b8203a;--accent-soft: rgba(224, 52, 74, .16);--radius: 10px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 -apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,system-ui,sans-serif}button{font:inherit}.app{max-width:1180px;margin:0 auto;padding:24px 20px 64px}.app__header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding-bottom:12px}.app__header h1{font-size:18px;margin:0}.app__status{display:flex;gap:12px;color:var(--muted);font-size:12px}.app__toolbar{display:flex;align-items:center;gap:12px;margin:16px 0 20px}.app__search{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:9px 12px;width:280px}.app__checkbox{color:var(--muted);display:flex;align-items:center;gap:6px;font-size:12px}.app__message{color:var(--muted)}.app__message--error{color:var(--accent)}.button{background:var(--accent);border:0;border-radius:8px;color:#fff;cursor:pointer;padding:8px 12px}.button:disabled{opacity:.45;cursor:not-allowed}.button--ghost{background:var(--surface-strong);border:1px solid var(--border);color:var(--text)}.button--primary{background:var(--accent-strong)}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:14px}.catalog-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;content-visibility:auto;contain-intrinsic-size:auto 320px}.catalog-card__media{position:relative;display:block;width:100%;padding:0;border:0;background:var(--surface-strong);cursor:pointer;aspect-ratio:2 / 3;overflow:hidden}.catalog-card__media img{width:100%;height:100%;object-fit:cover;display:block}.catalog-card__preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#000;pointer-events:none}.catalog-card__poster-fallback{width:100%;height:100%}.catalog-card__code{position:absolute;left:6px;top:6px;background:#000000a6;border-radius:4px;font-size:10px;padding:2px 5px}.catalog-card__body{padding:8px 9px 10px}.catalog-card__title{font-size:13px;margin:0 0 6px}.catalog-card__meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:11px}.catalog-card__badge{color:#9ec5ff}.catalog-card__locked{color:var(--accent)}.catalog-empty{color:var(--muted)}.player-panel{position:fixed;inset:auto 0 0;max-height:92vh;overflow:auto;background:var(--surface);border-top:1px solid var(--border);padding:14px 18px 20px}.player-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.player-panel__title{color:var(--muted);margin-left:8px;font-size:12px}.player-panel__frame{background:#000;border-radius:var(--radius);overflow:hidden}.player-panel__frame iframe{display:block;width:100%;aspect-ratio:16 / 9;border:0}.player-panel__controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}.player-panel__progress{color:var(--muted);font-size:12px;margin-left:4px}.player-panel__meta{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:11px;margin-top:10px}.player-panel__error{color:var(--accent)}.player-panel__launch{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 14px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.player-panel__launchHint{flex:1 1 320px;min-width:0;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.player-panel__launchHint strong{color:var(--text)}.app-error{margin:80px auto;max-width:520px;text-align:center;padding:24px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.app--landing{max-width:none;padding:0}.landing__hero{position:relative;min-height:74vh;display:flex;align-items:flex-end;overflow:hidden;background:#05050a}.landing__heroVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}.landing__scrim{position:absolute;inset:0;background:linear-gradient(180deg,#05050a8c,#05050a33 38%,#05050aeb),radial-gradient(120% 80% at 20% 100%,rgba(224,52,74,.35),transparent 60%)}.landing__heroBody{position:relative;width:100%;max-width:1180px;margin:0 auto;padding:0 24px 48px}.landing__eyebrow{margin:0 0 10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.landing__title{margin:0 0 12px;font-size:clamp(32px,6vw,68px);line-height:1.05;letter-spacing:-.02em;text-shadow:0 4px 30px rgba(0,0,0,.6)}.landing__meta{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 22px;color:var(--muted);font-size:13px}.landing__actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.button--lg{padding:12px 22px;font-size:15px;font-weight:600}.landing__status{margin:18px 0 0;font-size:12px;color:var(--muted)}.landing__error{margin:0 0 18px;padding:10px 14px;border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);font-size:13px}.access-panel{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 22px;padding:14px 16px;max-width:520px;border:1px solid var(--border);border-radius:12px;background:#14141adb;backdrop-filter:blur(6px)}.access-panel label{font-size:12px;color:var(--muted)}.access-panel input{flex:1 1 220px;min-width:0;padding:9px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:16px}.access-panel--granted{color:var(--muted);font-size:12px}.landing__strip{display:flex;gap:10px;padding:18px 24px 40px;max-width:1180px;margin:0 auto;overflow-x:auto;scrollbar-width:thin}.landing__chip{flex:0 0 auto;display:flex;flex-direction:column;gap:2px;min-width:132px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-align:left;cursor:pointer}.landing__chip:hover{border-color:var(--accent)}.landing__chipCode{font-size:11px;color:var(--accent)}.landing__chipTitle{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing--locked{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(120% 90% at 50% 0%,rgba(224,52,74,.1),transparent 55%),var(--bg)}.landing__gateScreen{width:min(440px,calc(100vw - 48px));text-align:center;padding:40px 28px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.landing__gateScreen .access-panel{max-width:none;margin:22px 0 0;text-align:left}.landing__gateTitle{margin:8px 0 10px;font-size:24px;letter-spacing:-.01em}.landing__gateHint{margin:0;color:var(--muted);font-size:13px;line-height:1.6}
