/* Scoped pass UI; deliberately does not alter sound controls, playback, or analytics. */
.nhp-main{max-width:1120px;padding-top:26px;padding-bottom:46px}
.nhp-main h1{font-size:clamp(1.7rem,3vw,2.3rem);letter-spacing:-.025em;line-height:1.15;margin:.35em 0 .55em}
.nhp-main h2{font-size:1.2rem;line-height:1.3;margin:0 0 12px}
.nhp-main p{line-height:1.65;max-width:80ch}
.nhp-main a:not(.btn){color:#9f1c95}
.nhp-card{padding:28px;margin:20px 0;background:#fff;border:1px solid #e2e5ec;border-radius:16px;box-shadow:0 6px 20px rgba(15,23,42,.035);min-width:0}
.nhp-card summary{cursor:pointer;line-height:1.7}
.nhp-auth{max-width:610px;margin:24px auto}
.nhp-eyebrow{font-size:11px;font-weight:750;letter-spacing:.12em;color:#925089;margin-bottom:10px}
.nhp-pass-card{border-top:4px solid #cd28bb;background:linear-gradient(145deg,#fff 60%,#fcf4fb)}
.nhp-countdown{font-size:clamp(1.75rem,5vw,3.1rem);font-weight:750;letter-spacing:-.04em;margin:24px 0 0;font-variant-numeric:tabular-nums}
.nhp-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px;margin:28px 0}
.nhp-facts>div{min-width:0;border-top:1px solid #e9eaf0;padding-top:12px}
.nhp-facts dt{font-size:12px;color:#606b7b;margin-bottom:5px}
.nhp-facts dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.nhp-actions,.nhp-heading,.nhp-session{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.nhp-heading,.nhp-session{justify-content:space-between}
.nhp-actions{margin:16px 0}
.nhp-actions form{margin:0}
.nhp-actions .input{max-width:420px}
.nhp-session{border-top:1px solid #e5e7eb;padding:16px 0}
.nhp-links{display:flex;gap:16px;flex-wrap:wrap;margin-top:25px;font-size:14px}
.nhp-help{font-size:13px!important;color:#657080;line-height:1.6}
.nhp-note,.nhp-test-banner,.nhp-alert{padding:13px 16px;border-radius:10px;border:1px solid #d8dfeb;background:#f3f6fb;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.nhp-test-banner{background:#fff6df;border-color:#eedba6;color:#654b17}
.nhp-alert{background:#fff3f3;border-color:#edbfc4;color:#8f2332}
.nhp-badge{display:inline-block;padding:4px 8px;margin:5px 4px 5px 0;border-radius:6px;background:#f2edf6;font-size:11px;font-weight:650;line-height:1.5;color:#56405c}
.nhp-card .btn,.nhp-actions .btn{white-space:normal;text-align:center;min-height:42px;font-size:14px;line-height:1.4;padding:10px 14px;box-shadow:none}
.nhp-card .btn.solid{background:#9c217f;color:#fff;border-color:#9c217f}
.nhp-danger{color:#992337;border-color:#dc9ca9}
.nhp-check{display:flex;align-items:center;gap:8px;line-height:1.5}
.nhp-check input{width:18px;height:18px}
.nhp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.nhp-wide{grid-column:1/-1}
.nhp-form-grid label,.nhp-access-fields label{display:grid;gap:7px;font-size:14px}
.nhp-form-grid label.nhp-check{display:flex}
.nhp-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}
.nhp-stats>div{background:#f5f0f8;padding:20px;border-radius:12px}
.nhp-stats span{display:block;font-size:12px;color:#625968}
.nhp-stats strong{display:block;font-size:28px;margin-top:8px;font-variant-numeric:tabular-nums}
.nhp-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.nhp-table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}
.nhp-table th{font-size:11px;letter-spacing:.025em;color:#5c6776;background:#f6f7f9}
.nhp-table th,.nhp-table td{padding:12px 10px;border-bottom:1px solid #e8e9ef;vertical-align:top;line-height:1.5}
.nhp-member{border-top:1px solid #e7e8ef;padding:18px 0}
.nhp-member summary{overflow-wrap:anywhere;cursor:pointer}
.nhp-break{overflow-wrap:anywhere;word-break:break-word}
.nhp-main hr{border:0;border-top:1px solid #e5e7eb;margin:28px 0}
.nhp-access-fields{border:1px solid #e2d6e6;border-radius:10px;padding:16px;margin:12px 0;display:grid;gap:14px;min-width:0}
.nhp-access-fields legend{font-weight:650;font-size:14px;padding:0 5px}
.nhp-access-fields select{width:100%;max-width:100%}
.nhp-library-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 20px;font-size:13px}
.nhp-library-tabs a{padding:7px 12px;border:1px solid #dedce4;border-radius:30px;color:#624761}
.nhp-library-tabs a[aria-current=page]{background:#f8e9f5;border-color:#d7aecf;font-weight:650}
.nhp-locked-poster{display:block;max-height:350px;width:100%;object-fit:contain;background:#f5f5f7;border-radius:10px;margin:18px 0}
.nhp-loading-icon{width:26px;height:26px;border:3px solid #e5dce7;border-top-color:#9c217f;border-radius:50%;animation:nhp-spin .85s linear infinite;margin-bottom:18px}
@keyframes nhp-spin{to{transform:rotate(360deg)}}
.nhp-access-banner{font-size:12px;color:#6e5a6c;margin:8px 0}
.nhp-player-message{position:absolute;z-index:45;left:10px;right:10px;bottom:54px;background:rgba(12,15,21,.9);border-radius:9px;padding:12px;color:#fff;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.nhp-player-message[hidden]{display:none!important}
.nhp-player-message span{display:block;margin-bottom:8px}
.nhp-player-message a{display:inline-block;font-size:12px;color:#fff;border-color:#aaa;margin-right:8px;padding:5px 9px}
@media(max-width:640px){.nhp-main{padding:16px 12px}.nhp-card{padding:20px 16px;border-radius:12px}.nhp-facts,.nhp-form-grid{grid-template-columns:1fr}.nhp-stats{gap:8px}.nhp-stats>div{padding:12px}.nhp-stats strong{font-size:22px}.nhp-card .input{max-width:100%;min-width:0}.nhp-actions{align-items:stretch}.nhp-actions .input{width:100%}.nhp-table{min-width:570px}.nhp-session{font-size:13px;line-height:1.5}.nhp-player-message{font-size:11px}}
@media print{.site-header,.site-footer,.nhp-heading,.nhp-actions,.nhp-card button,.nhp-links{display:none!important}.nhp-card{box-shadow:none;break-inside:avoid}.nhp-main{max-width:100%;padding:0}}

/* Admin access overlays */
.admin-video-card .admin-video-poster{position:relative;display:block;overflow:hidden;border-radius:14px}
.admin-video-card .admin-video-poster img{display:block;width:100%;height:auto}
.admin-video-access-badge{position:absolute;top:12px;left:12px;z-index:2;display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:rgba(17,24,39,.82);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;line-height:1;text-transform:uppercase;box-shadow:0 4px 16px rgba(0,0,0,.22);backdrop-filter:blur(3px)}
.admin-video-access-lock{width:14px;height:14px;display:block;flex:0 0 auto;color:#fff}
.admin-video-access-free{background:rgba(17,24,39,.72)}
.admin-video-access-preview{background:rgba(17,24,39,.72)}
.admin-video-access-pass{background:rgba(17,24,39,.82)}
.admin-video-poster-missing{min-height:250px;background:linear-gradient(180deg,#f5f7fb,#edf1f7);color:#334155;text-decoration:none;display:flex;align-items:center;justify-content:center;text-align:center;padding:18px}
.admin-video-poster-missing > span:last-child{display:block;max-width:180px;line-height:1.45;font-weight:700}
.admin-video-poster-missing small{font-weight:600;color:#64748b}
