@import url('/cinema/avatar.css');
:root{color-scheme:dark;--ink:#edf1f6;--muted:#9ba6b7;--line:#ffffff16;--blue:#6ba9ff;--panel:#141a26;--skin:#dbaa80;--hair:#29232a;--shirt:#6294c8;font-family:Inter,Segoe UI,Arial,sans-serif;background:#080b12;color:var(--ink)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{border:1px solid var(--line);background:#ffffff08;color:var(--ink);padding:10px 15px;border-radius:9px;cursor:pointer;transition:background .2s,transform .2s}button:hover{background:#ffffff14}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:4px}button.primary{background:#8bb9fa;color:#071526;font-weight:650;border-color:transparent;padding:14px 20px}button.primary:hover{background:#b1d0fc}a{color:inherit;text-decoration:none}input,select{display:block;width:100%;background:#090e19;border:1px solid #ffffff22;color:var(--ink);border-radius:8px;padding:12px;margin-top:7px}input[type=range]{padding:0;accent-color:var(--blue)}label{font-size:13px;color:#bfcbdd;display:block}h1,h2,h3,p{margin-top:0}h2{font-size:23px;font-weight:550}p{color:var(--muted);line-height:1.6}em{font-family:Georgia,serif;font-weight:400}small,.fine-print{font-size:12px;line-height:1.6;color:var(--muted)}[hidden]{display:none!important}.small-caps{font-size:10px;letter-spacing:.19em;font-weight:600;color:#94a7c1}.cinema-header{height:84px;max-width:1600px;margin:auto;padding:0 4%;display:flex;align-items:center;gap:28px;position:relative;z-index:4;border-bottom:1px solid var(--line)}.wordmark{display:flex;gap:13px;align-items:center;font-size:32px;font-weight:850;color:#83b6fd;letter-spacing:-3px}.wordmark span{font-size:19px;font-weight:650;color:var(--ink);letter-spacing:-.5px}.wordmark b{font-weight:350;color:#a9b7c9}.cinema-header nav{margin-left:auto;display:flex;gap:24px;align-items:center;font-size:12px;color:#b5bfcd}.live-pill{font-size:9px;letter-spacing:.13em;border:1px solid #80bcff35;color:#a9ccf5;background:#37639717;border-radius:30px;padding:7px 11px;white-space:nowrap}.live-pill:before{content:'';display:inline-block;width:5px;height:5px;border-radius:100%;background:#a6cafa;margin:0 7px 1px 0;box-shadow:0 0 12px #61a4ff}#theatre{max-width:1600px;margin:auto;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 25%,#26344c55,transparent 65%);padding:0 6%}.room-glow{position:absolute;inset:10% 20% 20%;background:#5d88b311;filter:blur(60px);pointer-events:none}.theatre-label{display:flex;justify-content:space-between;padding:27px 0 22px;font-size:9px;letter-spacing:.22em;color:#7e8b9f}.stage{position:relative;max-width:1080px;margin:auto;padding:5px 8% 15px}.screen-frame{aspect-ratio:16/9;background:#010206;border:5px solid #222732;box-shadow:0 0 0 1px #5b6c882f,0 0 60px #7bafff15,0 24px 65px #0009;position:relative;overflow:hidden;border-radius:3px}.screen-frame video{width:100%;height:100%;object-fit:contain;background:#000}.screen-card{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(ellipse at 50% 100%,#35507355,transparent 65%),radial-gradient(circle at 75% 25%,#7a627720,transparent 45%),#0e1724;padding:30px;pointer-events:none}.screen-card:before,.screen-card:after{content:'';position:absolute;inset:7%;border:1px solid #ffffff09;border-radius:50%;transform:scaleX(1.7);pointer-events:none}.screen-card:after{inset:18%;transform:scaleX(1.7) rotate(-25deg)}.screen-card h1{font-size:clamp(34px,5vw,74px);letter-spacing:-3px;font-weight:450;margin:24px 0 12px}.screen-card h1 em{color:#a6c3e7}.screen-card p{font-size:15px;margin:0 0 10px;color:#aab9cb}.screen-mark{position:absolute;bottom:25px;font-size:9px;letter-spacing:.35em;color:#7192b3}.curtain{position:absolute;top:-6px;bottom:10px;width:9%;background:repeating-linear-gradient(90deg,#0e101b 0,#283041 15%,#171c2a 26%,#0c0e17 40%);box-shadow:inset 0 0 20px #0009;z-index:2}.curtain.left{left:0;clip-path:polygon(0 0,100% 0,85% 100%,0 100%)}.curtain.right{right:0;transform:scaleX(-1);clip-path:polygon(0 0,100% 0,85% 100%,0 100%)}.stage-lip{height:13px;position:absolute;bottom:0;left:0;right:0;background:linear-gradient(#2f3441,#111723);box-shadow:0 5px 30px #000;border-bottom:1px solid #50698755}.now-playing{max-width:900px;margin:20px auto 0;display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:3}.now-playing strong{display:block;font-size:15px;font-weight:450;margin-top:5px}.view-controls{display:flex;align-items:center;gap:8px}.view-controls button{font-size:11px;padding:8px 10px}.volume-label{font-size:10px;width:65px}.volume-label input{margin-top:6px}.auditorium{height:236px;position:relative;padding-top:32px;background:linear-gradient(transparent,#0b0e17);perspective:800px}.seats{max-width:1000px;margin:auto;display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:0 7px;position:relative;z-index:2}.seat{width:70px;height:96px;position:relative;flex-shrink:0;transition:opacity .4s,transform .4s}.seat .person{position:absolute;left:10px;top:0;width:50px;height:70px}.chair{position:absolute;left:2px;right:2px;height:49px;bottom:0;border-radius:18px 18px 7px 7px;background:linear-gradient(100deg,#271e30,#57405b 35%,#3b2c42 80%,#201c2c);border:1px solid #a584a433;box-shadow:inset 0 4px 4px #dab3d514,2px 5px 12px #0009}.chair:before,.chair:after{content:'';position:absolute;bottom:0;height:30px;width:9px;background:linear-gradient(#61506b,#211d2b);border-radius:6px}.chair:before{left:-4px}.chair:after{right:-4px}.seat.mine .chair{border-color:#82baff99;box-shadow:inset 0 3px 6px #8dbdff25,0 0 18px #78abff1a}.seat-name{position:absolute;bottom:-14px;left:-8px;width:86px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px;color:#a0abbc}.seat.mine .seat-name{color:#aacbff}.seat .avatar-face{opacity:0}.seat.reacting .avatar-face{opacity:1}.seat.reacting .person{animation:react-bob .6s ease-in-out 3}.reaction-bubble{position:absolute;top:-31px;left:15px;font-size:23px;z-index:5;filter:drop-shadow(0 4px 8px #000)}.empty-chair{opacity:.36}.empty-audience{text-align:center;font-family:Georgia,serif;font-style:italic;font-size:20px;position:absolute;inset:94px 0 auto;z-index:3}.bottom-bar{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;min-height:73px;gap:12px;position:relative;z-index:3}.bottom-bar>span{font-size:12px;color:#8597b0}.bottom-bar>div{display:flex;gap:9px}.bottom-bar button{font-size:12px}.cinema-footer{display:flex;justify-content:space-between;gap:20px;max-width:1600px;margin:auto;padding:24px 6%;font-size:10px;color:#59687d}.playback-prompt{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#132b49f5;border-color:#82b5ff;color:#dbeaff;z-index:5;box-shadow:0 15px 50px #0009;min-width:220px}#video-error{position:absolute;inset:auto 5% 10px;background:#1b1724ed;padding:16px;border-radius:8px;font-size:12px;color:#ffccca;z-index:5}.chat-panel{position:fixed;right:24px;top:104px;bottom:40px;width:330px;max-height:690px;background:#101722f7;backdrop-filter:blur(24px);border:1px solid #ffffff22;box-shadow:0 20px 80px #000b;border-radius:17px;z-index:9;display:flex;flex-direction:column;padding:20px}.chat-panel header{display:flex;align-items:center;justify-content:space-between}.chat-panel h2{font-size:21px;margin:6px 0}.chat-hint{font-size:11px;padding-bottom:12px;border-bottom:1px solid var(--line)}.messages{flex:1;overflow:auto;scrollbar-width:thin;min-height:100px;overflow-wrap:anywhere}.chat-message{margin-bottom:16px;font-size:12px}.chat-message strong{font-size:11px;font-weight:600;color:#91b5e4}.chat-message time{font-size:9px;color:#66788e;margin-left:8px}.chat-message p{color:#c6d0df;margin:5px 0;line-height:1.5}.chat-panel form{display:flex;gap:8px;margin-top:10px}.chat-panel input{margin:0;font-size:12px}.chat-panel form button{background:#8bb9fa;color:#10213c}.chat-panel #chat-status{font-size:11px;margin:8px 0 0}.reaction-wheel{position:absolute;bottom:80px;right:8%;z-index:8;background:#151d2ff5;backdrop-filter:blur(20px);border:1px solid #ffffff25;border-radius:24px;padding:20px;width:305px;box-shadow:0 20px 60px #0009}.reaction-wheel p{text-align:center;font-size:11px;margin-bottom:14px}.reaction-wheel>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.reaction-wheel button{font-size:26px;display:flex;flex-direction:column;align-items:center;gap:7px}.reaction-wheel button span{font-size:9px;color:#a4b5d0}dialog{background:radial-gradient(ellipse at 50% 0,#243e5b77,transparent 55%),#111823;color:var(--ink);border:1px solid #ffffff22;border-radius:23px;width:min(530px,94vw);padding:34px;box-shadow:0 30px 160px #000c;max-height:92vh;overflow:auto}dialog::backdrop{background:#030710b5;backdrop-filter:blur(7px)}dialog h2{font-family:Georgia,serif;font-size:37px;margin-bottom:10px}dialog p{font-size:13px}.dialog-close{position:absolute;right:16px;top:14px;border:0;font-size:24px;padding:3px 10px;background:transparent}.avatar-preview{height:125px;width:125px;margin:0 auto 20px;border-radius:50%;background:radial-gradient(#6488b63d,#6e96c80a);display:grid;place-items:center;border:1px solid #8cabd022}.avatar-preview .person{height:100px;width:80px}.customize{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.customize label{font-size:11px}.customize select{font-size:12px}.customize button{align-self:end;height:42px}.avatar-preview+.customize{margin-top:0}#avatar-form .primary{width:100%}#join-error{color:#ffbcbc;font-size:12px;margin-top:10px}#audience-list{max-height:50vh;overflow:auto;margin-top:18px}.audience-member{display:flex;align-items:center;gap:15px;padding:10px;border-bottom:1px solid var(--line);font-size:14px}.audience-member .person{width:38px;height:50px;flex-shrink:0}.audience-member button{font-size:11px;margin-left:auto}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:30;max-width:90vw;border:1px solid #809abd50;background:#202e43;padding:15px 22px;border-radius:12px;font-size:13px;box-shadow:0 10px 50px #0008}.no-script{padding:20px;text-align:center}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.focus-view .auditorium,.focus-view .theatre-label,.focus-view .curtain,.focus-view .bottom-bar{display:none}.focus-view .stage{max-width:none;padding:12px 0}.focus-view .screen-frame{max-height:80vh;margin:auto}.focus-view .cinema-header{height:60px}.focus-view .now-playing{max-width:none}#theatre:fullscreen{max-width:none;width:100%;overflow:auto;background:#080b12}.projection{background:radial-gradient(ellipse at 80% 0,#1d355655,transparent 50%),#0b101a}.projection-main{max-width:1240px;margin:auto;padding:50px 30px 70px}.projection-main h1{font-size:55px;font-weight:450;line-height:1.05;letter-spacing:-2px;margin:18px 0}.projection-main h1 em{color:#a0c0e9}.intro{font-size:14px;margin-bottom:35px}.projection-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.control-card{padding:28px;border:1px solid var(--line);background:#141c29b0;border-radius:18px}.control-card h2{font-size:16px;margin-bottom:20px}.control-card p{font-size:12px}.control-card label{margin-bottom:17px}.card-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.card-heading button{font-size:11px}.control-card video{width:100%;max-height:230px;background:#05080f;border-radius:10px;margin:4px 0 12px}.control-card h3{font-size:28px;margin:25px 0 10px;font-weight:450}.host-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.host-buttons button{font-size:12px}.inline{display:flex;gap:10px}.inline input{margin:7px 0 0}.inline button{margin-top:7px}#host-time{font-size:27px;font-variant-numeric:tabular-nums;color:#a6c8f2}.host-guests,.host-messages{max-height:340px;overflow:auto;margin:15px 0}.host-guests .audience-member{flex-wrap:wrap}.host-guests .moderation{margin-left:auto;display:flex;gap:5px}.host-messages .chat-message{display:flex;gap:15px;align-items:start}.host-messages .chat-message div{flex:1}.host-messages button{font-size:10px;padding:5px 8px}#admin-error{background:#63303b55;color:#ffd0d8;border:1px solid #fd949444;padding:16px;border-radius:10px;margin-bottom:20px}#schedule-info{color:#abcaee}code{color:#b0c9e8}#host-count{font-size:12px}.projection .fine-print{font-size:11px}@keyframes react-bob{50%{transform:translateY(-7px) rotate(7deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:800px){.cinema-header{height:70px;padding:0 5%;gap:12px}.cinema-header .live-pill{display:none}.cinema-header nav{gap:12px;font-size:10px}.cinema-header nav button{font-size:10px;padding:8px}.wordmark span{font-size:16px}#theatre{padding:0 3%}.theatre-label{font-size:8px;letter-spacing:.12em;padding:20px 3%}.stage{padding:5px 3% 13px}.curtain{width:4%}.screen-card .small-caps{font-size:7px}.screen-card h1{margin:12px 0;font-size:42px}.screen-card p{font-size:12px}.screen-mark{font-size:7px;bottom:12px}.now-playing{flex-wrap:wrap;padding:0 3%;margin-top:16px}.view-controls{margin-left:auto}.volume-label{display:none}.auditorium{height:230px}.seat{width:53px;height:88px}.seat .person{left:6px;width:44px;height:63px}.seat-name{width:66px;font-size:8px;left:-5px}.bottom-bar{padding:12px 3%;flex-wrap:wrap}.bottom-bar>div{gap:5px}.bottom-bar button{font-size:11px;padding:9px}.cinema-footer{font-size:9px;padding:20px 6%;flex-wrap:wrap}.chat-panel{right:12px;left:12px;top:auto;bottom:16px;width:auto;height:65vh;max-height:540px}.projection-grid{grid-template-columns:1fr}.projection-main{padding:30px 18px}.projection-main h1{font-size:42px}.control-card{padding:20px}}@media(max-width:420px){.wordmark{font-size:25px;gap:8px}.wordmark span{font-size:14px}.screen-card{padding:10px}.screen-card h1{font-size:32px;letter-spacing:-1.5px}.view-controls{margin:6px 0 0}.screen-mark{bottom:7px}.cinema-header nav>a{font-size:9px}}

@media(min-width:801px){.cinema-header{height:72px}.stage{max-width:min(1080px,90vh)}.theatre-label{padding:20px 0 18px}.auditorium{height:226px}.seats{max-width:925px}.cinema-footer{padding-top:16px;padding-bottom:16px}}

.reaction-wheel{width:300px;height:300px;border-radius:50%;padding:20px}
.reaction-wheel p{position:absolute;top:125px;left:109px;width:82px;font-size:10px;line-height:1.5;margin:0;color:#b5c9e5}
.reaction-wheel>div{display:block;position:relative;width:260px;height:260px}
.reaction-wheel button{position:absolute;width:68px;height:70px;border-radius:25px;padding:7px 3px;gap:3px;font-size:25px}
.reaction-wheel button:nth-child(1){left:96px;top:0}.reaction-wheel button:nth-child(2){left:184px;top:48px}.reaction-wheel button:nth-child(3){left:184px;top:148px}.reaction-wheel button:nth-child(4){left:96px;top:194px}.reaction-wheel button:nth-child(5){left:8px;top:148px}.reaction-wheel button:nth-child(6){left:8px;top:48px}
