@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#101720;--panel:#19232e;--line:#2b3744;--muted:#9eacba;--text:#f1f4f5;--lime:#d4f297;--red:#f0a19e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px 'Noto Sans JP',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{transition:.18s}a{color:var(--lime);text-decoration:none}a:hover{text-decoration:underline}button{border:1px solid var(--line);background:#24313d;color:var(--text);border-radius:10px;padding:10px 15px;cursor:pointer}button:hover{background:#354555}button:disabled{opacity:.5;cursor:wait}button.primary,.primary{background:var(--lime);color:#17231c;border-color:var(--lime);font-weight:600}.primary:hover{background:#e2ffb2}button.danger{color:var(--red)}input,select,textarea{background:#111a24;border:1px solid #394756;color:var(--text);padding:11px 12px;border-radius:9px;min-width:0;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--lime);outline-offset:1px}label{display:block;color:var(--muted);font-size:12px;margin:10px 0 5px}label input,label select,label textarea{margin-top:7px;color:var(--text);font-size:14px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-.7px;line-height:1.5;margin-bottom:8px}h2{font-size:19px;margin-bottom:16px}h3{font-size:15px;margin-bottom:7px}p{line-height:1.9}small,.muted{color:var(--muted)}.layout{display:grid;grid-template-columns:225px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:30px 20px;display:flex;flex-direction:column;background:#121b25}.brand{display:flex;align-items:center;gap:11px;font:600 22px Outfit,sans-serif;letter-spacing:-.5px}.brand img{width:36px;height:36px}.brand-sub{font-size:10px;color:var(--muted);letter-spacing:2px;margin:8px 0 38px 47px}.nav{display:flex;flex-direction:column;gap:8px}.nav button{display:flex;gap:12px;text-align:left;border:0;background:none;color:var(--muted);padding:14px}.nav button.active{background:#29372d;color:var(--lime)}.nav i{font-style:normal;font-size:18px;width:22px}.family-mini{margin-top:auto;border-top:1px solid var(--line);padding-top:24px}.avatars{display:flex;margin:12px 0;gap:8px}.avatar{display:inline-flex;align-items:center;justify-content:center;background:#293542;width:36px;height:36px;border-radius:50%;font-size:20px}.main{padding:36px 42px;max-width:1550px;width:100%;margin:auto}.topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;font-size:12px;color:var(--muted)}.online{color:var(--lime)}.online::before{content:'●';margin-right:8px;font-size:9px}.heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.eyebrow{font:500 11px Outfit,sans-serif;letter-spacing:3px;color:var(--lime);margin-bottom:12px}.hero{border:1px solid #3e4c45;background:radial-gradient(ellipse at 85% 10%,#344c3c 0,transparent 60%),#1b2a2a;border-radius:20px;padding:32px;margin-bottom:28px;position:relative;overflow:hidden}.hero h1{max-width:650px;font-size:32px}.hero p{max-width:610px;color:#c4d2cf}.hero .tag{background:#ffffff10;border-color:#ffffff20}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:grid;gap:16px}.cols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px;min-width:0}.tag{display:inline-block;font-size:11px;padding:5px 10px;border:1px solid var(--line);border-radius:6px;color:var(--muted)}.tag.green{color:var(--lime);background:#d4f29710}.tag.red{color:var(--red)}.empty{border:1px dashed #3b4958;border-radius:13px;padding:28px;text-align:center;color:var(--muted);line-height:2}.empty strong{display:block;color:var(--text);font-size:16px;margin-bottom:8px}.session{padding:20px;border:1px solid var(--line);background:var(--panel);border-radius:14px}.session .date{font:500 13px Outfit,sans-serif;color:var(--lime);margin:8px 0}.session h3{font-size:18px;margin:10px 0}.votes{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.vote{font-size:11px;background:#111a24;border-radius:30px;padding:6px 9px}.vote.yes{color:var(--lime)}.vote.no{color:var(--red)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:20px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.poster{height:220px;background:linear-gradient(140deg,#33443d,#1c2633);display:flex;align-items:center;justify-content:center;font-size:45px;position:relative}.poster img{width:100%;height:100%;object-fit:cover}.poster .tag{position:absolute;bottom:12px;left:12px;background:#101720df;color:white}.card-body{padding:19px}.card h3{font-size:17px;min-height:26px}.card .votes button{font-size:11px;padding:7px}.selected{outline:1px solid var(--lime);color:var(--lime)!important}.divider{height:1px;background:var(--line);margin:22px 0}.result{display:flex;gap:12px;padding:12px;border-bottom:1px solid var(--line);align-items:center}.result img{width:48px;height:65px;object-fit:cover}.result div{flex:1}.result button{flex:none}.results{max-height:350px;overflow:auto}.cal-wrap{overflow:auto;max-height:590px;border:1px solid var(--line);border-radius:12px;user-select:none}.calendar{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;table-layout:fixed}.calendar th{position:sticky;top:0;background:#25323f;z-index:1;font-size:12px;padding:12px 4px}.calendar th:first-child{width:65px}.calendar td{border-right:1px solid #283441;border-bottom:1px solid #23303c;text-align:center;height:24px;font-size:9px;color:#82909e;padding:0}.calendar td:first-child{background:#18212b;font:10px Outfit}.calendar .hour td{border-top:1px solid #40505e}.slot{cursor:crosshair;background:#141f2a}.slot.free{background:#354d39;color:#e3f6d3}.slot.busy{background:#413137;color:#eab9b5}.slot.pick{background:#94b873;outline:1px solid var(--lime);outline-offset:-1px}.slot span{pointer-events:none}.legend{display:flex;gap:18px;font-size:11px;margin:12px 0;color:var(--muted)}.square{display:inline-block;width:9px;height:9px;background:#354d39;margin-right:6px}.square.busy{background:#70484c}.check{display:flex;align-items:center;gap:10px;color:var(--text);font-size:13px}.check input{width:16px;height:16px;margin:0}.room-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.screen{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;background:#080d12;border-radius:14px;overflow:hidden;border:1px solid var(--line);position:relative}.screen video,.screen iframe,.screen #yt{width:100%;height:100%;border:0}.screen video[hidden]{display:none}.screen-hint{padding:25px;text-align:center;color:var(--muted)}.chat-panel{display:flex;flex-direction:column;min-height:420px;max-height:650px}.chat-list{flex:1;overflow:auto;min-height:180px}.chat-item{padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.chat-item b{font-size:12px}.chat-item p{margin:4px 0;font-size:13px;white-space:pre-wrap}.chat-item small{font-size:10px}.chat-form{display:flex;gap:6px;margin-top:12px}.chat-form input{min-width:0}.notice{border-left:3px solid var(--lime);padding:10px 15px;background:#d4f29708;font-size:12px;line-height:1.9;color:#bdc8c3;margin:15px 0}.login{max-width:480px;margin:12vh auto;padding:32px}.login .brand{margin-bottom:40px}.login textarea{height:100px}.login h1{font-size:28px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:20;background:var(--lime);color:#16221a;padding:14px 24px;border-radius:12px;box-shadow:0 10px 40px #0007;max-width:90vw;display:none}#toast.error{background:#f2b9b6}.jitsi{height:480px;margin-top:16px}.jitsi iframe{height:100%;width:100%;border:0;border-radius:14px}.review{padding:12px 0;border-bottom:1px solid var(--line);white-space:pre-wrap}.nowrap{white-space:nowrap}details summary{cursor:pointer;color:var(--lime);margin:10px 0}.session-line{display:flex;align-items:center;gap:15px}.session-line .avatar{flex:none}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.compact{font-size:12px;padding:7px 10px}.footer-note{margin-top:35px;font-size:10px;letter-spacing:1px;color:#768596}.cancelled{opacity:.65}a.button{display:inline-block;padding:10px 15px;border-radius:10px;border:1px solid var(--line);background:#24313d;font-size:14px;color:var(--text)}
@media(max-width:1050px){.main{padding:28px 24px}.layout{grid-template-columns:190px minmax(0,1fr)}.sidebar{padding:28px 14px}.brand{font-size:19px}.cols{grid-template-columns:1fr}.room-grid{grid-template-columns:1fr}.chat-panel{height:350px;min-height:300px}.hero h1{font-size:27px}}
@media(max-width:650px){.layout{display:block}.sidebar{height:auto;position:static;padding:16px;border:0;border-bottom:1px solid var(--line)}.brand-sub,.family-mini{display:none}.nav{flex-direction:row;overflow:auto;margin-top:15px;gap:4px}.nav button{font-size:11px;flex-shrink:0;padding:10px;gap:5px}.nav i{font-size:13px;width:auto}.main{padding:22px 16px}.two{grid-template-columns:1fr}.hero{padding:23px}.hero h1{font-size:23px}.heading{align-items:flex-start}h1{font-size:25px}.panel{padding:18px}.cards{grid-template-columns:1fr 1fr;gap:10px}.card-body{padding:12px}.poster{height:170px}.card h3{font-size:14px}.card .votes{gap:4px}.card .votes button{padding:6px;font-size:10px}.topline{font-size:10px}.login{margin:7vh auto;padding:24px}.heading .row{justify-content:flex-end}.room-grid{gap:14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.cal-periods{display:flex;gap:8px;margin:18px 0 12px}.cal-periods button{flex:1;padding:10px 6px}.cal-periods small{display:block;font-size:10px;margin-top:4px;color:inherit}

.notification-item{display:block;padding:16px;border:1px solid var(--line);border-radius:12px;color:var(--text);overflow-wrap:anywhere}.notification-item:hover{background:#29372d;text-decoration:none}.notification-item p{margin:8px 0}.notification-item span{font-size:12px;color:var(--lime)}

.episodes{margin-top:20px}.episode-row{display:grid;grid-template-columns:210px minmax(0,1fr);gap:20px;scroll-margin-top:20px}.episode-row>img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px}.episode-row h2{margin:12px 0}.episode-row .row{margin-bottom:12px}progress{width:100%;height:8px;accent-color:var(--lime);margin:20px 0}#primePreview .notice{margin-top:20px}@media(max-width:700px){.episode-row{grid-template-columns:1fr}.episode-row>img{max-height:220px}}

/* An uninterrupted stage, with optional navigation and live chat. */
[hidden]{display:none!important}.signed-in{font-size:16px;font-weight:600;margin:12px 0;overflow-wrap:anywhere}.menu-toggle{flex:none}.topline{gap:12px}.topline .online{margin-right:auto}.layout.nav-collapsed{grid-template-columns:minmax(0,1fr)}.nav-collapsed>.sidebar{display:none}.watch-layout .main{max-width:none;padding:10px 16px;margin:0;min-width:0}.watch-layout .topline{margin:0 0 8px;min-height:32px}.watch-layout .footer-note{display:none}.watch-heading{display:flex;align-items:center;gap:10px;min-width:0;margin-bottom:10px}.watch-heading h1{font-size:17px;line-height:1.5;margin:0;flex:1;min-width:0;overflow-wrap:anywhere}.watch-heading h1 small{font-size:12px;font-weight:400}.watch-heading .tag,.watch-heading button{flex:none}.watch-layout .room-grid{grid-template-columns:minmax(0,1fr) 280px;gap:12px;align-items:start}.watch-main{min-width:0}.watch-layout .screen{border-radius:8px;max-height:calc(100dvh - 160px);width:100%;min-height:180px}.screen video{object-fit:contain}.screen:fullscreen{max-height:none!important;width:100vw;height:100vh;border:0;border-radius:0;background:#000}.watch-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}.watch-toolbar .compact,a.button.compact{font-size:12px;padding:7px 10px}.play-status{font-size:11px;color:var(--muted);margin:6px 0;line-height:1.5;min-height:17px}.watch-layout .chat-panel{position:sticky;top:10px;height:calc(100dvh - 103px);max-height:none;min-height:280px;padding:12px;border-radius:8px}.chat-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding-bottom:10px}.chat-heading h2{font-size:14px;margin:0}.chat-heading small{font-size:10px}.watch-layout .chat-list{min-height:0}.watch-layout .chat-item{padding:9px 0}.watch-layout .chat-form input{padding:9px;font-size:12px}.watch-layout .chat-form button{padding:8px 12px}.room-grid.chat-hidden{grid-template-columns:minmax(0,1fr)}.chat-hidden>.chat-panel{display:none}.watch-help{font-size:12px;color:var(--muted);margin:8px 0}.watch-help summary{margin:6px 0}.watch-help p{max-width:900px}.talk-panel{border-top:1px solid var(--line);padding:12px 0}.talk-panel h3{font-size:14px;margin:0}.talk-panel>.row{margin-bottom:8px}.talk-panel>small{display:block;font-size:10px;margin-top:8px}.talk-panel .jitsi{height:400px;max-height:65vh;margin:10px 0}.crop-panel{margin:12px 0;padding:16px}.crop-panel p{font-size:12px;margin:8px 0}.crop-preview{position:relative;width:min(100%,720px);line-height:0;background:#000;touch-action:none;user-select:none;cursor:crosshair}.crop-preview video{width:100%;display:block;pointer-events:none}.crop-preview #cropSelection{position:absolute;border:2px solid var(--lime);background:#d4f29718;pointer-events:none}.crop-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:720px}.crop-panel .row{margin-top:12px}
@media(max-width:1050px) and (min-width:761px){.watch-layout .room-grid{grid-template-columns:minmax(0,1fr) 240px}.watch-layout .room-grid.chat-hidden{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.watch-layout .main{padding:8px}.watch-layout .room-grid{grid-template-columns:minmax(0,1fr)}.watch-layout .chat-panel{position:static;height:280px;min-height:0}.watch-heading{flex-wrap:wrap}.watch-heading h1{flex-basis:100%}.watch-layout .screen{min-height:0;max-height:none}.watch-layout .topline .online{display:none}.watch-layout .topline>span:last-child{margin-left:auto}.crop-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.watch-layout .sidebar{height:auto;position:static}.watch-layout:not(.nav-collapsed){display:block}}
#voiceStatus{font-size:11px;overflow-wrap:anywhere}#voiceAudio{display:none}#voiceFallback{font-size:12px}#voiceFallback>.row{margin-top:8px}.voice-controls button{min-height:40px}
@media(max-width:760px){.watch-layout .watch-main{display:flex;flex-direction:column}.watch-main>.screen{order:0}.watch-main>.watch-toolbar{order:1}.watch-main>.play-status{order:2}.watch-main>.talk-panel{order:3}.watch-main>.crop-panel{order:4}.watch-main>.watch-help{order:5}.voice-controls button{min-height:44px}.watch-layout .topline{padding:4px 0}.talk-panel>.row{align-items:flex-start}}
@media(max-width:650px){.sidebar .family-mini{display:block;margin-top:14px;padding-top:12px}.sidebar .family-mini .avatars,.sidebar .family-mini>small:last-child{display:none}.sidebar .signed-in{margin:6px 0}}
.live-now{border:1px solid #637c48;border-radius:14px;padding:20px;margin-bottom:20px;background:#1b2b24}.live-now h2{margin:0}.live-room{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.live-room:last-child{border-bottom:0}.live-room h3{font-size:18px;margin:10px 0 6px;overflow-wrap:anywhere}.live-room p{font-size:12px;color:var(--muted);margin:0}.live-room>div{min-width:0}.live-room>button{flex:none}#nowRooms{padding:8px 20px;background:var(--panel);border-radius:14px}@media(max-width:650px){.live-room{align-items:stretch;flex-direction:column}.live-now{padding:16px}.live-now>.row{gap:12px}.live-room>button{width:100%}}
/* Mobile watch: stage first, conversation immediately below, secondary actions in a sheet. */
.item-menu{display:inline-block;position:relative}.item-menu summary{list-style:none;margin:0;padding:4px 12px;border:1px solid var(--line);border-radius:8px;font-size:22px;line-height:1}.item-menu[open]{padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.item-menu[open] button{margin:6px 4px 0 0}.deleted-items{margin-top:20px}.deleted-items .row{margin:12px 0}.deleted-items span{overflow-wrap:anywhere;min-width:0;flex:1}
.stage-menu{position:absolute;z-index:2;right:max(8px,env(safe-area-inset-right));top:max(8px,env(safe-area-inset-top));width:44px;height:40px;padding:0;font-size:28px;line-height:1;background:#101720c9;color:#fff;border-color:#ffffff35;backdrop-filter:blur(8px)}
.room-menu{color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;width:min(540px,calc(100vw - 24px));max-height:85dvh;overflow:auto}.room-menu::backdrop{background:#0009}.room-menu h2{margin:0;font-size:17px}.room-menu>h3{margin:18px 0 8px;overflow-wrap:anywhere}.room-menu .watch-toolbar{margin:18px 0}.room-menu button:focus-visible{outline:2px solid var(--lime);outline-offset:2px}.room-menu .jitsi{height:380px}.room-menu .jitsi iframe{width:100%;height:100%;border:0}.room-menu small{display:block;margin:8px 0;color:var(--muted)}
.interaction-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px}.interaction-bar h2{margin:0;font-size:13px;white-space:nowrap}.interaction-bar .voice-controls{display:flex;align-items:center;gap:5px}.interaction-bar button{padding:7px 10px;font-size:12px;min-height:36px}.voice-status{font-size:10px;color:var(--muted);line-height:1.4;overflow-wrap:anywhere;margin:2px 0 6px}.room-people{display:flex;gap:6px;flex-wrap:wrap;padding:5px 0}.watch-person{display:inline-flex;gap:5px;align-items:center;font-size:10px;max-width:100%;border-radius:20px;padding:3px 7px 3px 3px;background:#25313b}.watch-person .person-icon{display:inline-flex;justify-content:center;align-items:center;width:26px;height:26px;background:#152029;border:2px solid #57707b;border-radius:50%;font-size:16px;flex:none}.watch-person .person-name{max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watch-person.calling .person-icon{border-color:#d4f297}.watch-person.speaking{background:#334f2b;color:#efffdc}.watch-person.speaking .person-icon{border-color:#e2ffa4;box-shadow:0 0 0 3px #c8ff8255}.watch-person .person-state{font-size:9px;color:var(--muted)}.watch-person.speaking .person-state{color:var(--lime)}
.watch-layout .chat-item{border:0;padding:5px 0;line-height:1.5}.chat-item b{color:#cfddc7}.watch-layout .chat-item p{display:inline;margin-left:6px;line-height:1.6;white-space:pre-wrap}.watch-layout .chat-item small{display:none}.watch-layout .chat-form{padding-top:8px;border-top:1px solid var(--line)}.watch-layout .chat-form input{font-size:16px}.watch-layout .chat-list{overscroll-behavior:contain}.watch-layout .screen{max-height:calc(100dvh - 80px)}
@media(max-width:760px){.watch-layout{height:var(--watch-height,100dvh);min-height:0;overflow:hidden}.watch-layout .main{height:100%;padding:0;display:flex;flex-direction:column}.watch-layout .topline,.watch-layout>.sidebar{display:none!important}.watch-layout .room-grid{display:flex;flex-direction:column;gap:0;flex:1;min-height:0;height:100%}.watch-layout .watch-main{display:contents}.watch-layout .screen{order:0;flex:none;position:relative;width:100%;height:min(56.25vw,calc(var(--watch-height,100dvh)*.48));min-height:0;max-height:none;aspect-ratio:auto;border:0;border-radius:0;background:#000}.watch-layout .chat-panel{order:1;flex:1;min-height:0;height:auto;max-height:none;position:relative;top:auto;border-radius:0;border:0;border-top:1px solid var(--line);padding:4px 10px max(8px,env(safe-area-inset-bottom));overflow:hidden}.watch-layout .chat-list{flex:1;min-height:0}.watch-layout .chat-form{margin-top:4px;flex:none}.watch-layout .chat-form input{padding:10px}.watch-layout .chat-form button{min-width:42px;min-height:42px}.watch-layout .play-status{order:2;flex:none;font-size:9px;margin:0;padding:3px 10px;max-height:30px;overflow:auto;background:var(--panel)}.watch-layout .crop-panel{position:fixed;inset:10px;z-index:6;overflow:auto;margin:0}.watch-layout .room-grid.chat-hidden .screen{height:calc(var(--watch-height,100dvh) - 28px)}.watch-layout .room-grid.chat-hidden .chat-panel{display:none}.room-menu{margin:auto auto max(10px,env(safe-area-inset-bottom));border-radius:18px 18px 10px 10px}.room-menu .watch-toolbar button,.room-menu .watch-toolbar a{min-height:40px}.watch-layout .screen-hint{font-size:12px}.watch-layout .voice-status{max-height:28px;overflow:auto}.watch-layout .room-people{flex:none}.watch-layout .room-people:empty{display:none}}
@media(max-height:500px) and (orientation:landscape) and (max-width:960px){.watch-layout .main{padding:0}.watch-layout .topline{display:none}.watch-layout .room-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;grid-template-rows:1fr;height:var(--watch-height,100dvh);gap:0}.watch-layout .watch-main{display:contents}.watch-layout .screen{height:100%;max-height:none;grid-column:1;grid-row:1}.watch-layout .chat-panel{height:100%;grid-column:2;grid-row:1}.watch-layout .play-status{display:none}.watch-layout .room-grid.chat-hidden{grid-template-columns:1fr}.watch-layout .room-grid.chat-hidden .screen{height:100%}}
.push-to-talk{flex:none;width:100%;min-height:44px;margin:2px 0 6px;border:1px solid #72865f;background:#263526;color:var(--lime);font-weight:600;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.push-to-talk.talking{background:var(--lime);color:#142116;box-shadow:inset 0 0 0 2px #f3ffdb}#voiceSettings{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:16px 0}#voiceModeNote,#voiceConfigStatus{font-size:11px;margin:8px 0}#voiceSettings .check{font-size:13px;padding:4px 0}
@media(max-width:760px){.watch-layout .room-grid{align-items:stretch}.watch-layout .chat-panel{width:100%}}
/* One compact conversation strip: people, hold-to-talk, more. */
.interaction-bar{gap:6px;min-height:48px;flex:none}.interaction-bar .room-people{flex:1;min-width:0;gap:4px;padding:0;flex-wrap:nowrap}.interaction-bar .watch-person{padding:0;background:none;flex:none}.interaction-bar .person-icon{width:26px;height:26px;font-size:16px}.interaction-bar .person-name,.interaction-bar .person-state{display:none}.interaction-bar .voice-controls{flex:none;gap:4px}.interaction-bar .push-to-talk{width:136px;min-height:44px;margin:0;padding:7px 9px;white-space:nowrap;font-size:12px;flex:none}.interaction-bar .voice-more{min-width:32px;width:32px;min-height:40px;padding:0;font-size:24px}.interaction-bar #voiceJoin{min-height:44px}.participant-details{display:flex;flex-wrap:wrap;gap:6px 12px;margin:12px 0}.participant-details p{font-size:12px;margin:0;line-height:1.7}.room-menu>.row:first-child{position:sticky;top:-20px;padding:10px 0;background:var(--panel);z-index:1}#voiceSettings{scroll-margin-top:60px}.watch-layout .voice-status.sr,.watch-layout #voiceStatus.sr{margin:0;padding:0;border:0}
@media(max-width:360px){.interaction-bar .push-to-talk{width:124px;font-size:11px}.interaction-bar .person-icon{width:24px;height:24px;font-size:15px}.interaction-bar .room-people{gap:3px}.interaction-bar .voice-controls{gap:3px}}

.chat-panel{container-type:inline-size}
@container(max-width:300px){.interaction-bar .push-to-talk{width:112px;font-size:11px}.interaction-bar .room-people{gap:0}.interaction-bar .watch-person+.watch-person{margin-left:-6px}.interaction-bar .person-icon{background:#152029}}
@container(max-width:240px){.interaction-bar .push-to-talk{width:100px;font-size:10px;padding:7px 3px}.interaction-bar .person-icon{width:22px;height:22px;font-size:14px}.interaction-bar .watch-person+.watch-person{margin-left:-8px}}

.interaction-bar .voice-leave{min-width:44px;min-height:44px;padding:6px;color:#ffb5ad}
@container(max-width:300px){.interaction-bar .push-to-talk{width:100px;font-size:10px;padding:7px 3px}.interaction-bar .person-icon{width:22px;height:22px;font-size:14px}.interaction-bar .room-people{gap:0}.interaction-bar .watch-person+.watch-person{margin-left:-8px}}
@container(max-width:240px){.interaction-bar{flex-wrap:wrap;gap:2px}.interaction-bar .room-people{flex-basis:100%;padding-top:3px}.interaction-bar .voice-controls{margin-left:auto}}
/* Immersive viewing keeps the app's voice and chat controls in fullscreen. */
.stage-expand{position:absolute;right:60px;top:max(8px,env(safe-area-inset-top));z-index:2;width:44px;height:40px;padding:0;background:#101720c9;font-size:24px}
.stage-tools,.stage-comments,.stage-chat-form,.stage-talk{display:none}.watch-layout.immersive{position:fixed;inset:0;z-index:10;width:100%;height:var(--watch-height,100dvh);background:#000;display:block;overflow:hidden}.immersive .main{padding:0;height:100%;width:100%;max-width:none}.immersive .sidebar,.immersive .topline,.immersive .footer-note,.immersive .play-status{display:none!important}.watch-layout.immersive .room-grid{display:block;height:100%;margin:0}.immersive .watch-main{display:contents}.watch-layout.immersive .screen{position:absolute;inset:0;width:100%;height:100%;max-height:none;min-height:0;border:0;border-radius:0;aspect-ratio:auto}.immersive .screen video{object-fit:contain}.immersive #roomMenuButton,.immersive .stage-expand{display:none}.immersive .stage-talk{display:block;position:absolute;z-index:5;right:max(12px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:140px;height:48px;margin:0;background:#1b2a28dc;backdrop-filter:blur(8px);border-color:#d4f29788;color:var(--lime)}.immersive .stage-talk.talking{background:var(--lime);color:#142116}.immersive .stage-tools{display:flex;gap:6px;align-items:center;position:absolute;z-index:6;top:max(10px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));opacity:0;pointer-events:none;transition:opacity .2s}.stage-tools button{min-height:44px;background:#101720bd;backdrop-filter:blur(8px);font-size:12px}.stage-tools #stageMenu{margin-left:auto;font-size:24px;padding:0;width:44px}.immersive.stage-tools-visible .stage-tools,.immersive.stage-tools-visible .stage-chat-form{opacity:1;pointer-events:auto}.immersive .stage-comments{display:block;position:absolute;bottom:78px;left:max(12px,env(safe-area-inset-left));width:min(62%,480px);max-height:40%;z-index:3;overflow:auto;pointer-events:none;mask-image:linear-gradient(transparent,#000 15%);padding-top:16px}.stage-comments p{font-size:13px;color:white;text-shadow:0 1px 3px #000,0 0 8px #000;margin:5px 0;line-height:1.6;overflow-wrap:anywhere}.stage-comments b{color:var(--lime);margin-right:5px}.immersive .stage-chat-form{display:flex;position:absolute;z-index:5;left:max(12px,env(safe-area-inset-left));bottom:max(14px,env(safe-area-inset-bottom));width:calc(100% - 180px - env(safe-area-inset-left));max-width:420px;gap:5px;opacity:0;pointer-events:none}.stage-chat-form input{font-size:16px;background:#101720b8}.stage-chat-form button{min-width:42px;background:#101720b8}.immersive .chat-panel{display:none!important}.immersive[data-comments=hidden] .stage-comments,.immersive[data-comments=hidden] .stage-chat-form,.immersive[data-comments=panel] .stage-comments,.immersive[data-comments=panel] .stage-chat-form{display:none}.immersive[data-comments=panel] .chat-panel{display:flex!important;position:absolute;z-index:4;left:max(12px,env(safe-area-inset-left));bottom:14px;width:min(48%,380px);height:65%;min-height:0;max-height:calc(100% - 80px);background:#152029df;backdrop-filter:blur(10px);border:1px solid #ffffff30;border-radius:12px;padding:10px}.immersive .chat-panel .interaction-bar{display:none}.immersive .chat-panel .chat-form input{font-size:16px}.immersive .chat-panel .chat-form{margin:0}.immersive .room-menu{z-index:20}.immersive .screen-hint{max-width:60%}
@media(max-width:480px){.stage-tools{flex-wrap:wrap}.stage-tools button{padding:6px 9px}.immersive[data-comments=panel] .chat-panel{width:calc(100% - 24px);bottom:78px;height:40%}.immersive .stage-comments{width:80%}.immersive .stage-chat-form{width:calc(100% - 176px)} }
@media(prefers-reduced-motion:reduce){.stage-tools,.stage-chat-form{transition:none}}
.notification-history{margin-top:16px}.notice-option{display:flex;align-items:center;gap:12px;padding:12px 0;margin:0;border-bottom:1px solid var(--line);font-size:14px;color:var(--text)}.notice-option input{width:22px;height:22px;flex:none;accent-color:var(--lime)}.notice-option small{display:block;font-size:11px;margin-top:3px}.notification-preferences>button{margin-top:16px}.notification-preferences>p{font-size:11px;margin:10px 0}.settings-shortcuts{margin-bottom:12px}.install-panel{margin-bottom:16px}.install-panel li{line-height:1.8;margin:8px 0}
@media(max-width:760px){
 .layout:not(.watch-layout){display:block}.layout:not(.watch-layout)>.sidebar{display:block!important;position:fixed;inset:auto 0 0;height:auto;z-index:8;padding:0 4px env(safe-area-inset-bottom);background:#121b25f5;border:0;border-top:1px solid var(--line);backdrop-filter:blur(12px)}
 .layout:not(.watch-layout)>.sidebar>.brand,.layout:not(.watch-layout)>.sidebar>.brand-sub,.layout:not(.watch-layout)>.sidebar>.family-mini{display:none}.layout:not(.watch-layout) .nav{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:0;overflow:visible}.layout:not(.watch-layout) .nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 1px;min-height:56px;border-radius:0;font-size:10px}.layout:not(.watch-layout) .nav i{font-size:20px;width:auto;line-height:22px}.layout:not(.watch-layout) .nav [data-nav=history]{display:none}
 .layout:not(.watch-layout) .main{padding:10px 12px calc(80px + env(safe-area-inset-bottom));margin:0}.layout:not(.watch-layout) .menu-toggle{display:none}.layout:not(.watch-layout) .topline{margin:0 0 14px;font-size:11px;min-height:28px;gap:6px}.layout:not(.watch-layout) .topline .online{font-size:0}.layout:not(.watch-layout) .topline .online:after{content:'リアタイの会';font-size:13px;font-weight:600;color:var(--text)}.layout:not(.watch-layout) .topline>span:last-child{max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .layout:not(.watch-layout) .heading{margin-bottom:14px;gap:8px}.layout:not(.watch-layout) .eyebrow{display:none}.layout:not(.watch-layout) h1{font-size:22px;margin-bottom:3px}.layout:not(.watch-layout) h2{font-size:17px;margin-bottom:12px}.layout:not(.watch-layout) .heading .muted{font-size:11px;line-height:1.6}.layout:not(.watch-layout) .panel{padding:14px;border-radius:12px}.layout:not(.watch-layout) .two{grid-template-columns:1fr;gap:12px}.layout:not(.watch-layout) input,.layout:not(.watch-layout) select,.layout:not(.watch-layout) textarea{font-size:16px}.layout:not(.watch-layout) button,.layout:not(.watch-layout) a.button{min-height:42px}.layout:not(.watch-layout) .row{gap:7px}.layout:not(.watch-layout) .hero{padding:16px;margin-bottom:18px;border-radius:14px}.layout:not(.watch-layout) .hero p{display:none}.layout:not(.watch-layout) .hero h1{font-size:20px;margin-bottom:14px}.layout:not(.watch-layout) .hero .tag{display:none}.layout:not(.watch-layout) .hero .row>*{font-size:12px;padding:9px}.layout:not(.watch-layout) .cols{gap:16px;grid-template-columns:1fr}.layout:not(.watch-layout) .session{padding:14px}.layout:not(.watch-layout) .session h3{font-size:16px}.layout:not(.watch-layout) .votes{gap:4px;margin:10px 0}.layout:not(.watch-layout) .vote{font-size:10px;padding:5px 7px}.layout:not(.watch-layout) .stack{gap:12px}.layout:not(.watch-layout) .empty{padding:20px 14px;font-size:12px}.layout:not(.watch-layout) .divider{margin:16px 0}
 .layout:not(.watch-layout) .cards{grid-template-columns:1fr;gap:12px}.layout:not(.watch-layout) .card{display:grid;grid-template-columns:88px minmax(0,1fr)}.layout:not(.watch-layout) .poster{height:130px;font-size:26px}.layout:not(.watch-layout) .poster .tag{font-size:9px;bottom:4px;left:4px;right:4px;padding:4px}.layout:not(.watch-layout) .card-body{padding:12px}.layout:not(.watch-layout) .card h3{font-size:15px}.layout:not(.watch-layout) .card .votes button{min-height:38px}.layout:not(.watch-layout) .card .row{gap:5px}.layout:not(.watch-layout) .card .compact{font-size:11px;padding:6px 8px}.layout:not(.watch-layout) .card small{font-size:10px}.layout:not(.watch-layout) .card .divider{margin:10px 0}.layout:not(.watch-layout) .card-body>p{font-size:12px}
 .layout:not(.watch-layout) .calendar{min-width:0}.layout:not(.watch-layout) .calendar th:first-child{width:64px}.layout:not(.watch-layout) .calendar td{height:32px;font-size:12px;touch-action:pan-y}.layout:not(.watch-layout) .cal-wrap{max-height:48dvh}.layout:not(.watch-layout) .cal-periods{margin:12px 0 8px;gap:5px}.layout:not(.watch-layout) .cal-periods button{padding:6px 4px}.layout:not(.watch-layout) .legend{gap:10px;flex-wrap:wrap;font-size:10px}.layout:not(.watch-layout) #selectionNote{width:100%;font-size:11px}.layout:not(.watch-layout) #rangeLabel{flex-basis:100%!important}.layout:not(.watch-layout) [data-range]{flex:1}.layout:not(.watch-layout) .notification-item{padding:12px}.layout:not(.watch-layout) .notification-item p{font-size:13px;line-height:1.7}.layout:not(.watch-layout) .footer-note{margin-top:20px;font-size:9px}.layout:not(.watch-layout) #search input{flex-basis:100%!important}.layout:not(.watch-layout) #search select{flex:1;width:auto!important}.layout:not(.watch-layout) .episode-row{grid-template-columns:1fr;gap:10px}.layout:not(.watch-layout) .episode-row>img{max-height:130px;object-fit:cover}.layout:not(.watch-layout) .episode-row h2{font-size:17px}.layout:not(.watch-layout) .live-room{padding:12px;flex-wrap:wrap}.layout:not(.watch-layout) .live-room p{font-size:11px}.layout:not(.watch-layout) .live-now{padding:12px}.layout:not(.watch-layout) .live-now>.row h2{margin:0}
 #toast{bottom:calc(74px + env(safe-area-inset-bottom));padding:10px 14px;font-size:12px}.watch-layout~#toast{bottom:20px}
}
@media(max-width:760px){#liveBanner:not(:empty)+.hero{padding:12px}#liveBanner:not(:empty)+.hero h1{font-size:17px;margin-bottom:8px}#liveBanner:not(:empty)+.hero a[href="/?join=now"]{display:none}.layout:not(.watch-layout) .live-room{margin-top:8px;padding:10px}.layout:not(.watch-layout) .live-room h3{font-size:16px;margin:8px 0}.layout:not(.watch-layout) .live-room p{margin:6px 0 10px}.layout:not(.watch-layout) .live-now>.row [data-copy-now]{font-size:10px;padding:5px;min-height:34px}#suggestionList{margin-top:16px}#suggestionList>summary{font-size:16px;font-weight:600}}

.stage-wake{display:none}.immersive .stage-wake{display:block;position:absolute;inset:0;z-index:2;width:100%;height:100%;border:0;border-radius:0;background:transparent;padding:0}.immersive.stage-tools-visible .stage-wake{display:none}.immersive .stage-wake:hover{background:transparent}

/* Slots own the drag gesture; the time gutter and page retain native scrolling. */
.calendar .slot,.layout:not(.watch-layout) .calendar td.slot{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.calendar td:first-child{touch-action:pan-y}
.cal-wrap.selecting{scroll-behavior:auto;overscroll-behavior:contain}
.calendar-hint{font-size:12px;line-height:1.7;color:var(--muted);margin:10px 0}
.calendar .slot.pick{color:#142116;box-shadow:inset 3px 0 var(--lime)}
[data-clear-selection]:disabled{opacity:.4}
.watch-layout .room-grid{position:relative}.watch-main{position:relative}.chat-topic-bar{position:absolute;z-index:3;top:4px;left:6px;right:112px;display:flex;align-items:center;gap:6px;font-size:10px;margin:0;min-width:0;padding:3px 6px;background:#101720d9;border-radius:6px}.chat-topic-bar select{background:#152029e8}.chat-topic-bar select{flex:1;min-width:0;width:0;padding:6px;font-size:12px;margin:0}.chat-item{position:relative}.chat-item p[role=button]{cursor:pointer}.chat-item blockquote{margin:6px 0;border-left:2px solid var(--lime);padding-left:8px;color:var(--muted);font-size:11px}.chat-reactions{display:flex;gap:5px;flex-wrap:wrap}.chat-reactions button{padding:3px 6px;font-size:11px}.chat-reactions button[aria-pressed=true],.chat-emoji button[aria-pressed=true]{border-color:var(--lime);background:#3c5136}.chat-edit textarea{width:100%;min-height:72px;font-size:16px}.chat-reply-draft{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--lime)}.chat-reply-draft span{flex:1;min-width:0;overflow-wrap:anywhere}.chat-context{width:min(92vw,380px);border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);padding:16px}.chat-context::backdrop{background:#0008}.chat-context>button{margin:8px 6px 0 0}.chat-context p{overflow-wrap:anywhere;font-size:13px}.chat-emoji{display:flex;gap:4px;flex-wrap:wrap}.chat-emoji button{padding:8px;font-size:20px}.immersive .chat-topic-bar{position:absolute;z-index:7;top:60px;left:12px;right:12px;background:#101720cf;padding:5px 8px;border-radius:8px;opacity:0;pointer-events:none}.immersive.stage-tools-visible .chat-topic-bar{opacity:1;pointer-events:auto}.immersive .stage-comments{pointer-events:auto}.stage-comments p[role=button]{cursor:pointer}.watch-person .person-name{white-space:nowrap}

.chat-topic-bar label{margin:0;flex:none}.chat-topic-bar #chatTopicReadOnly{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;color:var(--muted)}

.chat-topic-bar{left:8px;top:8px;right:auto;padding:0;background:transparent;margin:0}.chat-topic-bar #chatTopicOpen{padding:5px 9px;font-size:11px;min-height:32px;background:#101720c9;color:#fff;border-color:#ffffff35;backdrop-filter:blur(8px)}.chat-topic-current{flex:none;font-size:10px;line-height:1.5;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 0 3px}.immersive .chat-topic-bar{left:12px;right:auto;top:60px;padding:0;background:transparent}.chat-context select{width:100%;font-size:16px}

#voiceDiagnosticPanel{padding:10px 0;border-bottom:1px solid var(--line)}#voiceDiagnosticPanel p{font-size:12px}#voiceDiagnosticPanel textarea{width:100%;font-size:12px}#voiceDiagnosticPanel meter{width:100%;height:14px}#voiceDiagnosticPanel button{font-size:12px;margin:3px;min-height:40px}

.chat-reactions .chat-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:30px;padding:5px;border-color:transparent;background:transparent;color:var(--muted)}.chat-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.chat-reactions .chat-icon:hover,.chat-reactions .chat-icon:focus-visible{color:var(--lime);background:#ffffff0c;border-color:var(--line)}#chatTopicCount{font-size:11px;margin:4px 0 12px}#chatTopicSearch{font-size:16px}

.voice-trace{border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:10px}.voice-trace h4{margin:8px 0}.voice-trace .row{gap:4px;flex-wrap:wrap}#voiceTraceStatus{color:var(--lime)}
.voice-mixer{border:1px solid var(--line);border-radius:12px;padding:10px;margin:0 0 14px;min-width:0}.voice-mixer label{display:flex;justify-content:space-between;gap:8px;font-size:13px}.voice-mixer output{font-variant-numeric:tabular-nums;white-space:nowrap}.voice-mixer input[type=range]{width:100%;min-height:36px;padding:0;accent-color:var(--lime);touch-action:pan-y}.voice-mixer .row{flex-wrap:wrap;gap:6px}.voice-mixer small{font-size:11px}
.calendar-tabs{margin:0 0 14px;gap:6px;flex-wrap:wrap}.calendar-tabs button{flex:1;font-size:13px;padding:10px 6px;min-height:44px}.shared-calendar{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:12px}.shared-calendar th,.shared-calendar td{padding:6px 3px;text-align:center;overflow-wrap:anywhere;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.shared-calendar thead th{position:sticky;top:0;background:#25323f;z-index:1}.shared-calendar th:first-child{width:44px;font-size:10px}.shared-calendar tbody th{background:#18212b}.shared-calendar small{display:block;font-size:10px;line-height:1.4}.shared-calendar .free{background:#354d39;color:#e3f6d3}.shared-calendar .busy{background:#413137;color:#eab9b5}.shared-calendar .unknown{color:var(--muted)}.shared-wrap{touch-action:pan-y;user-select:text}
