[hidden]{display:none!important}.member-account,.member-security{padding:clamp(20px,4vw,40px);margin:24px 0;border:1px solid #ffffff24;border-radius:18px;background:#0b1722b8;backdrop-filter:blur(14px)}.member-account form,.member-security form,.staff-panel form{display:grid;gap:12px;max-width:540px}.member-account input,.member-security input,.staff-panel input,.staff-panel textarea,.staff-panel select{background:#101c28;color:#f4f7fa;border:1px solid #91a4b85c;border-radius:8px;padding:12px;width:100%;box-sizing:border-box}.member-service-status{color:#d7eafd;white-space:pre-wrap;overflow-wrap:anywhere}.member-service-status:empty{display:none}.staff-panel>textarea{width:100%;max-width:760px;min-height:85px;color:white;background:#122131;padding:12px}.staff-panel button{margin:6px}.inbox details{padding:16px 0;border-bottom:1px solid #ffffff25}.inbox p,.community-post p{white-space:pre-wrap;overflow-wrap:anywhere}.inbox form{display:grid;gap:10px}.inbox textarea{color:white;background:#142130;padding:12px;max-width:100%}.community-post details{padding:16px 0}.community-post small{margin-left:12px}.community-post summary,.inbox summary,.member-security summary{cursor:pointer}.live-placeholder iframe{width:100%;aspect-ratio:16/9;border:0}.member-account h2{font-size:clamp(26px,4vw,44px)}.member-account button{justify-self:start}.member-nav{flex-wrap:wrap}.staff-panel .community-post{margin:16px 0}button:disabled{opacity:.5;cursor:wait}
.password-control{position:relative;width:100%;min-width:0}.password-control input{padding-right:78px}.password-control .password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);margin:0;padding:6px 10px;min-height:30px;font-size:12px;line-height:1.2;border:1px solid #b7cbd04d;border-radius:6px;background:#172532;color:#f4f7fa;cursor:pointer}.password-toggle:focus-visible{outline:2px solid #c4e4ff;outline-offset:2px}.member-account input[type=checkbox]{width:auto}
/* Compact member forms and password visibility control. */
.members-page .member-shell form{padding:20px}
.members-page .member-shell form label{margin:12px 0 5px;line-height:1.35}
.members-page .member-shell form label:first-child{margin-top:0}
.members-page :is(.member-account,.member-security,.staff-panel,.inbox) form{row-gap:5px}
.members-page .member-shell button:not(.movie-reaction){font-size:12px;line-height:1.3;letter-spacing:.3px;padding:8px 13px;min-height:34px;width:auto}
.members-page .member-shell form>button[type=submit]{margin-top:12px;justify-self:start}
.members-page .member-account>button{margin:12px 0 16px}
.members-page .member-account details{margin-top:12px}
.members-page .form-actions{gap:10px;margin-top:16px}
.members-page .password-control{display:block;position:relative;width:100%;min-width:0}
.members-page .password-control input{display:block;width:100%;min-height:44px;padding:11px 76px 11px 12px;margin:0}
.members-page .member-shell .password-control .password-toggle{position:absolute;inset:auto 6px auto auto;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:58px;min-width:0;min-height:30px;height:30px;padding:4px 8px;margin:0;font-size:11px;letter-spacing:0;z-index:1}
@media(pointer:coarse){.members-page .member-shell button:not(.movie-reaction){min-height:44px}.members-page .password-control input{min-height:52px}.members-page .member-shell .password-control .password-toggle{min-height:44px;height:44px}}
.profile-extras{display:grid;gap:24px;margin-top:28px}.preference-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 18px;margin:16px 0}.members-page .preference-grid label{display:flex;align-items:center;gap:9px;margin:0;padding:8px 0}.members-page .preference-grid input{width:18px;height:18px;flex:0 0 18px;accent-color:#aacfe8}.favorite-section{padding:22px;border:1px solid #ffffff25;border-radius:12px}.favorite-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:18px 0}.favorite-grid figure{margin:0;min-width:0}.favorite-grid img{width:100%;height:190px;object-fit:contain;background:#09131c;border-radius:10px}.favorite-grid figcaption{font-size:13px;margin:8px 0;overflow-wrap:anywhere}.favorite-section form{max-width:540px}.member-profile-dialog{color:#f4f7fa;background:#10212f;border:1px solid #a8c1d1;border-radius:16px;padding:28px;width:min(800px,90vw);max-height:85vh;overflow:auto}.member-profile-dialog::backdrop{background:#02070cba;backdrop-filter:blur(8px)}.member-profile-dialog>button{float:right}.member-profile-dialog p{white-space:pre-wrap;overflow-wrap:anywhere}.member-profile-avatar{width:90px;height:90px;object-fit:cover;border-radius:50%}.members-page .member-account>.create-account-button{display:block;margin:8px 0 18px}.member-account summary{cursor:pointer}

.person-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #ffffff20}.people-list{max-height:420px;overflow:auto}#people form{max-width:600px;margin-bottom:24px}#people input[type=checkbox]{width:auto;margin-right:8px}#people select{width:100%;padding:10px;background:#152531;color:#fff}.member-profile-dialog p{white-space:pre-wrap;overflow-wrap:anywhere}

/* Clear, stacked messaging controls and a distinct writing surface. */
body.members-page dialog.message-dialog{box-sizing:border-box;width:min(640px,calc(100vw - 24px));max-height:88dvh;padding:24px;background:#10212f;}
body.members-page dialog.message-dialog>button{float:none!important;display:block;width:100%;margin:10px 0!important;text-align:left;white-space:normal!important;overflow-wrap:anywhere;line-height:1.5!important;letter-spacing:.04em!important;}
body.members-page dialog.message-dialog>button:first-child{width:auto;margin:0 0 16px auto!important;text-align:center;}
.message-dialog h2{clear:both;font-size:clamp(25px,5vw,34px);line-height:1.2;margin:0 0 20px;overflow-wrap:anywhere;}
.message-dialog h3{margin:26px 0 12px;font-size:18px;}
.message-dialog form{display:grid;gap:10px;margin-top:24px;}
.message-dialog form label{margin:0;font-size:14px;color:#fff;}
body.members-page dialog.message-dialog textarea{display:block;box-sizing:border-box;width:100%;min-height:140px;resize:vertical;background:#263e50;color:#fff;border:1px solid #9eb8cb;border-radius:10px;padding:14px;font:inherit;line-height:1.6;}
body.members-page dialog.message-dialog textarea:focus{outline:2px solid #b7d8ef;outline-offset:3px;}
.message-dialog form button{justify-self:start;margin:4px 0 0!important;}
.message-dialog .community-post{padding:16px;margin:12px 0;background:#192f40;border:1px solid #ffffff26;border-radius:12px;}
@media(max-width:480px){body.members-page dialog.message-dialog{padding:18px;}.message-dialog form button{width:100%;}}

body.members-page dialog.chat-dialog{width:min(920px,calc(100vw - 24px));padding:22px;}
.chat-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.chat-heading h2{margin:0}.chat-layout{display:grid;grid-template-columns:minmax(180px,30%) minmax(0,1fr);gap:20px}.chat-list{max-height:65vh;overflow:auto;min-width:0;padding-right:12px;border-right:1px solid #ffffff25}.chat-pane{min-width:0}.chat-pane h3{margin:0 0 14px}.chat-history{max-height:38vh;overflow:auto;padding:4px;display:flex;flex-direction:column;gap:12px}.chat-bubble{padding:12px 16px;border-radius:12px;background:#213b4e;border:1px solid #ffffff20;max-width:92%;box-sizing:border-box}.chat-bubble.is-mine{align-self:flex-end;background:#244d45}.chat-bubble p{margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}.chat-bubble small{font-size:11px;color:#bacbd6}.chat-status:empty{display:none}.chat-status{color:#ffd1d1}.chat-pane form{margin-top:16px}.chat-pane textarea{min-height:90px!important}
body.members-page dialog.chat-dialog button.chat-thread{display:block;width:100%;text-align:left;white-space:normal!important;margin:8px 0;padding:12px!important;letter-spacing:0!important;text-transform:none!important;line-height:1.4!important;overflow-wrap:anywhere;background:#172d3e!important}
.chat-thread strong,.chat-thread span{display:block}.chat-thread span{font-size:12px;color:#bccdd8;margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.members-page dialog.chat-dialog button.chat-thread[aria-pressed=true]{background:#305368!important;border-color:#b3d7ed!important}.chat-new{margin-bottom:12px!important}
@media(max-width:600px){.chat-layout{grid-template-columns:1fr;gap:16px}.chat-list{max-height:170px;border-right:0;border-bottom:1px solid #ffffff25;padding:0 0 12px}.chat-history{max-height:30vh}body.members-page dialog.chat-dialog{padding:16px}.chat-bubble{max-width:96%}}

/* Keep the messaging window steady while its contents scroll independently. */
body.members-page dialog.chat-dialog{height:min(720px,88dvh);max-height:88dvh;overflow:hidden;}
body.members-page dialog.chat-dialog[open]{display:flex;flex-direction:column;}
.chat-dialog .chat-heading,.chat-dialog .chat-status{flex-shrink:0;}
.chat-dialog .chat-layout{flex:1;min-height:0;overflow:hidden;}
.chat-dialog .chat-list{height:100%;max-height:none;overflow-y:auto;scrollbar-gutter:stable;box-sizing:border-box;}
.chat-dialog .chat-pane{display:flex;flex-direction:column;min-height:0;overflow-y:auto;}
.chat-dialog .chat-pane>h3,.chat-dialog .chat-pane>p{flex-shrink:0;}
.chat-dialog .chat-history{flex:1;min-height:0;max-height:none;overflow-y:auto;scrollbar-gutter:stable;}
.chat-dialog .chat-pane form{flex-shrink:0;}
.chat-dialog .chat-pane textarea{height:96px;min-height:72px!important;max-height:150px;}
@media(max-width:600px){.chat-dialog .chat-layout{grid-template-rows:minmax(90px,25%) minmax(0,1fr);}.chat-dialog .chat-list{max-height:none;}.chat-dialog .chat-history{max-height:none;}.chat-dialog .chat-pane textarea{height:76px;}}

body.members-page dialog.chat-dialog button.chat-delete{display:block;margin:8px 0 0 auto!important;padding:4px 9px!important;font-size:11px!important;min-height:28px;letter-spacing:0!important;text-transform:none!important;background:transparent!important;border-color:#ffffff40!important;}

body.members-page dialog.chat-dialog button.chat-thread{display:flex;align-items:center;gap:10px;}
.chat-thread .chat-avatar{position:relative;width:40px;height:40px;flex:0 0 40px;border-radius:50%;overflow:hidden;background:#38566c;}
.chat-avatar .chat-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fff;font-size:14px;font-weight:600;}
.chat-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.chat-thread .chat-thread-text{min-width:0;flex:1;}

.screening-card{padding:24px;margin:18px 0;border:1px solid #66829480;border-radius:16px;background:#10232dde}.screening-card h3{font-size:1.6rem;margin:0 0 10px}.screening-card button{margin:6px 8px 6px 0}.screening-rooms button,.screening-dialog button{font-size:.8rem;padding:10px 16px}.screening-person{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #ffffff20}.screening-dialog{width:min(800px,calc(100vw - 24px));height:min(800px,90dvh);box-sizing:border-box;overflow:auto;background:#0c1a24;color:#f5f7fa}.screening-dialog .chat-heading{position:sticky;top:0;background:#0c1a24;z-index:1}.screening-dialog h2{font-size:clamp(1.3rem,4vw,2rem);overflow-wrap:anywhere}.screening-discussion{max-height:42dvh;overflow:auto}.screening-post{padding:16px;margin:12px 0;background:#19303e;border:1px solid #738c9a66;border-radius:12px;overflow-wrap:anywhere}.screening-post small{display:block;color:#c6d0d6}.screening-post p{white-space:pre-wrap}.screening-dialog textarea{width:100%;min-height:80px;box-sizing:border-box;background:#08131c;color:white;border:1px solid #899da9;border-radius:8px;padding:12px}.screening-dialog form{display:grid;gap:8px}.screening-dialog .chat-heading button{flex-shrink:0}

.screening-cinema{width:min(1500px,calc(100vw - 24px));max-width:1500px;height:90dvh;padding:22px}.screening-layout{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(0,2fr) minmax(220px,1fr);gap:20px;align-items:start}.screening-layout>*{min-width:0}.screening-player{aspect-ratio:16/9;background:#030a10;border:1px solid #536b7b;border-radius:12px;overflow:hidden;display:grid;place-items:center}.screening-player video,.screening-player iframe{width:100%;height:100%;border:0;object-fit:contain}.screening-player>p{padding:24px;text-align:center}.screening-notes p{white-space:pre-wrap;overflow-wrap:anywhere}.screening-cinema h3{font-size:1.1rem}.screening-chat{background:#102532;padding:14px;border-radius:12px}.screening-cinema .screening-discussion{height:40dvh;max-height:440px;overflow:auto}.screening-cinema .screening-post{padding:10px;font-size:.9rem}.screening-cinema .screening-post small{font-size:.7rem}.screening-cinema textarea{min-height:65px}.screening-playlist{max-height:200px;overflow:auto}.screening-playlist>div{display:flex;gap:6px;margin:6px 0}.screening-playlist button[data-media]{flex:1;text-align:left;white-space:normal;overflow-wrap:anywhere}.screening-playlist button.selected{background:#244e63;border-color:#c2e7ff}.screening-editor{margin-top:18px}.screening-cinema input,.screening-cinema select{width:100%;box-sizing:border-box;background:#091722;color:#fff;padding:10px;border:1px solid #668294;border-radius:6px}.screening-cinema button{white-space:normal}.screening-cinema .chat-heading{gap:12px}.screening-cinema .screening-notes{font-size:.95rem}@media(max-width:1050px){.screening-layout{grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr)}.screening-notes{grid-column:1/-1}.screening-notes p{margin:8px 0}}@media(max-width:650px){.screening-cinema{padding:14px;width:calc(100vw - 16px);max-width:calc(100vw - 16px)}.screening-layout{display:flex;flex-direction:column;gap:16px}.screening-layout>*{width:100%;box-sizing:border-box}.screening-center{order:0}.screening-notes{order:1}.screening-chat{order:2}.screening-cinema .screening-discussion{height:280px}.screening-cinema .chat-heading h2{font-size:1.2rem}}

.screening-player.is-vertical{aspect-ratio:9/16;width:min(100%,320px);max-height:65dvh;margin-inline:auto}.screening-video-comments{margin-top:20px;border-top:1px solid #435b6b;padding-top:10px}.screening-comment-list{max-height:260px;overflow:auto;overflow-wrap:anywhere}.screening-editor progress{width:100%;accent-color:#76bba1}.screening-editor input[type=file]{font-size:.85rem;min-width:0}.screening-editor form{min-width:0}.screening-video-comments textarea{width:100%;box-sizing:border-box}.screening-post p{white-space:pre-wrap;overflow-wrap:anywhere}

.screening-playlist .screening-playlist-row{display:flex;align-items:center;gap:8px;width:100%;min-width:0;margin:6px 0}
.screening-playlist .screening-playlist-card{display:flex;align-items:center;gap:12px;flex:1;min-width:0;width:auto;text-align:left;padding:8px;white-space:normal;letter-spacing:.02em}
.screening-thumb{position:relative;display:block;flex:0 0 100px;width:100px;aspect-ratio:16/9;overflow:hidden;border-radius:5px;background:#09131d;border:1px solid #385063}
.screening-thumb img,.screening-thumb video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;background:#09131d}
.screening-thumb-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#c7d5df;font-size:20px}
.screening-playlist-title{display:block;min-width:0;overflow-wrap:anywhere;line-height:1.35;color:#f3f5f7}
.screening-playlist .screening-playlist-card.selected{border-color:#b8d3e5;background:#294254}
.screening-playlist-row>button:not(.screening-playlist-card){flex:0 0 auto;padding:7px;font-size:11px}
@media(max-width:480px){.screening-thumb{flex-basis:76px;width:76px}.screening-playlist .screening-playlist-card{gap:8px;font-size:12px}}

.screening-playlist{display:flex;flex-wrap:nowrap;gap:12px;overflow-x:auto;overflow-y:hidden;max-width:100%;min-width:0;padding:4px 2px 12px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#7796aa #10202c}
.screening-playlist .screening-playlist-row{display:flex;flex-direction:column;align-items:stretch;flex:0 0 164px;width:164px;min-width:0;margin:0;scroll-snap-align:start;gap:5px}
.screening-playlist .screening-playlist-card{display:flex;flex-direction:column;align-items:stretch;flex:0 0 auto;width:100%;gap:8px;padding:7px;box-sizing:border-box;min-width:0}
.screening-playlist .screening-thumb{flex:0 0 auto;width:100%;aspect-ratio:16/9;box-sizing:border-box}
.screening-playlist .screening-playlist-title{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;line-height:1.5;text-align:left}
.screening-playlist-row>button:not(.screening-playlist-card){align-self:flex-end}
@media(max-width:480px){.screening-playlist .screening-playlist-row{flex-basis:140px;width:140px}}

.screening-dialog>.chat-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.screening-dialog>.chat-heading h2{flex:1 1 160px}.screening-remove-dialog{width:min(520px,calc(100vw - 32px));max-height:80dvh;box-sizing:border-box;overflow:auto;background:#10202c;color:#f3f5f7;border:1px solid #617785;border-radius:16px;padding:20px}.screening-remove-dialog::backdrop{background:rgba(0,0,0,.65)}.screening-remove-list{max-height:45dvh;overflow:auto;margin:16px 0}.screening-remove-choice{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid #ffffff20}.screening-remove-choice input{width:18px;height:18px;flex:0 0 18px;margin:0}.screening-remove-choice span{overflow-wrap:anywhere}.screening-remove-dialog .chat-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.screening-remove-dialog button{padding:8px 14px;border-radius:10px;background:#1c3444;color:white;border:1px solid #8096a5}.screening-remove-dialog button:disabled{opacity:.45}

.admin-member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin:16px 0 32px}.admin-member-card{min-width:0;text-align:center;background:rgba(20,39,53,.7);border:1px solid #ffffff26;border-radius:14px;padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:8px}.admin-member-card .admin-member-profile{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;background:transparent;border:0;padding:0;color:#f3f5f7;white-space:normal;text-transform:none;letter-spacing:normal}.admin-member-profile strong{overflow-wrap:anywhere}.admin-member-avatar{display:grid;place-items:center;position:relative;width:88px;height:88px;flex:none;border-radius:50%;overflow:hidden;background:#304c60;color:white;font-size:25px}.admin-member-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.admin-member-email{font-size:12px;overflow-wrap:anywhere;max-width:100%;color:#d3dce2}.admin-member-card>button{margin-top:auto}.admin-member-card small{color:#d3dce2}@media(max-width:380px){.admin-member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-member-card{padding:12px 6px}.admin-member-avatar{width:64px;height:64px}}

.screening-audience{margin-top:24px;padding:16px 12px;border:1px solid #526675;border-radius:12px;background:rgba(8,20,29,.85);overflow-wrap:anywhere}.screening-audience h3{font-size:1.1rem}.screening-audience small{display:block;color:#c4d0d8;font-size:.75rem;line-height:1.5}.screening-audience-list{max-height:280px;overflow:auto;margin:12px 0}.screening-audience-list article{padding:10px 0;border-bottom:1px solid #344754}.screening-audience .eyebrow{font-size:.65rem;letter-spacing:.12em}

/* Consolidated staff screening controls. */
.screening-admin-panel{margin-top:24px;padding:14px;border:1px solid #526675;border-radius:12px;background:rgba(8,20,29,.85);min-width:0;overflow-wrap:anywhere}
.screening-admin-panel>h3{margin:0 0 14px;color:#fff;font-size:1rem;letter-spacing:.04em}
.screening-admin-controls{display:grid;gap:12px;min-width:0}
.screening-admin-controls .screening-editor{margin:0;min-width:0;border-bottom:1px solid #344754;padding-bottom:12px}
.screening-admin-controls summary{cursor:pointer;line-height:1.5;font-size:.85rem}
.screening-admin-controls form{margin-top:12px;min-width:0}
.screening-admin-controls :is(input,select,textarea,button,progress){min-width:0;max-width:100%;box-sizing:border-box}
.screening-admin-controls button{width:100%;padding:8px 10px;font-size:.75rem;letter-spacing:.02em;overflow-wrap:anywhere}
.screening-admin-controls label{font-size:.8rem}
.screening-admin-panel .screening-audience{margin-top:18px;padding:14px 0 0;border:0;border-top:1px solid #344754;border-radius:0;background:none}
