@charset "UTF-8";
:root{color-scheme:dark;--bg:#111315;--surface:#1a1d20;--surface2:#222629;--line:#303539;--text:#eef1ee;--muted:#939d9b;--accent:#b4ed9b;--teal:#8ad6cd;--coral:#f5ae96;--font:"Segoe UI","Malgun Gothic",Arial,sans-serif;font-family:var(--font);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.38}a{color:inherit;text-decoration:none}input,select{min-width:0;color:var(--text);background:#141719;border:1px solid #383e42;border-radius:9px;padding:11px 13px;outline:none}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #b4ed9b18}input[type=checkbox]{accent-color:var(--accent);width:18px;height:18px;cursor:pointer;flex:none}input[type=range]{accent-color:var(--accent);width:100%;padding:0;box-shadow:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--muted)}.accent{color:var(--accent)}.small-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:7px}.button{border:1px solid transparent;border-radius:8px;padding:11px 16px;display:inline-flex;gap:7px;align-items:center;justify-content:center;font-size:13px;font-weight:650;white-space:nowrap;transition:background .18s,transform .18s}.button:hover:not(:disabled){transform:translateY(-1px)}.primary{background:var(--accent);color:#192617}.primary:hover:not(:disabled){background:#c7f6b5}.secondary{background:#292f2b;color:#d8efce;border-color:#3b4939}.secondary:hover:not(:disabled){background:#354332}.quiet{background:transparent;border-color:#3a4043;color:#cad1cf}.quiet:hover:not(:disabled){background:#ffffff09}.text-button{border:0;background:none;color:var(--accent);font-size:12px;padding:7px 0;font-weight:600}.text-button:hover{color:#e0ffd1}.icon-button{background:transparent;border:0;color:#a6b0ad;border-radius:6px;font-size:20px;line-height:1;padding:8px;min-width:32px;height:32px}.icon-button:hover{background:#ffffff0b;color:#fff}.icon-button.remove:hover{color:#ff9c9c}.row-actions{display:flex;gap:9px;align-items:center}.flex-spacer{flex:1}.pill{display:inline-block;vertical-align:middle;background:#b4ed9b15;border:1px solid #b4ed9b26;color:var(--accent);border-radius:5px;padding:4px 7px;font-size:9px;letter-spacing:1px;font-weight:700}
/* Operator workspace */
.controller{background:var(--bg);color:var(--text);font-size:14px}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:226px;background:#16191b;border-right:1px solid #292d30;padding:31px 22px;display:flex;flex-direction:column;z-index:3}.brand{display:flex;gap:11px;align-items:center;font-size:17px;font-weight:800;letter-spacing:.4px}.brand-light{display:block;font-size:11px;font-weight:500;letter-spacing:5px;margin-top:1px;color:#9ba79f}.brand-icon{display:flex;align-items:center;justify-content:center;background:var(--accent);color:#192817;width:42px;height:42px;border-radius:12px;font-size:31px;font-weight:800;position:relative}.brand-icon span{font-size:20px;position:absolute;right:4px;top:-2px}.workspace-label{font-size:8px;letter-spacing:1.6px;color:#738077;margin:49px 9px 15px}.nav-item{width:100%;background:transparent;border:1px solid transparent;border-radius:8px;display:flex;align-items:center;text-align:left;gap:10px;color:#939d9b;padding:13px 11px;margin-bottom:5px;font-size:12px;font-weight:600}.nav-item>span:first-child{font-size:18px;width:19px}.nav-item:hover{background:#ffffff05;color:white}.nav-item.active{background:#b4ed9b0d;color:var(--accent);border-color:#b4ed9b18}.nav-count{margin-left:auto;padding:2px 6px;border-radius:4px;background:#ffffff09;font-size:10px}.sidebar-note{margin-top:auto;border-top:1px solid #2a3032;padding:22px 9px 0;font-size:9px;letter-spacing:1.5px;color:#a8b3a5}.sidebar-note p{font-size:10px;line-height:1.9;letter-spacing:0;color:#7c8882;margin:13px 0 30px}.version{font-size:8px;color:#606e67}.controller main{margin-left:226px;padding:0 38px;width:calc(100% - 226px);max-width:1760px}.topbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #292e31;padding:30px 0 28px;margin-bottom:29px}.topbar .eyebrow{font-size:8px;letter-spacing:1.8px}h1,h2,h3,p{margin:0}.topbar h1{font-size:25px;letter-spacing:-.8px;margin-top:8px;font-weight:650}.top-actions{display:flex;gap:20px;align-items:center}.connection{font-size:11px;color:#acbaa5;white-space:nowrap}.connection:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:7px;background:currentColor}.connecting{color:#e9ba7b}.online{color:var(--accent)}.section-heading{display:flex;gap:16px;justify-content:space-between;align-items:center;margin-bottom:19px}.section-heading h2{font-size:17px;letter-spacing:-.4px;font-weight:650}.section-heading h2 .pill{margin-left:9px}.section-heading p{color:var(--muted);font-size:11px;line-height:1.7;margin-top:7px}.board{display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:16px}.team-panel{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:19px;min-width:0;transition:border-color .15s,background .15s;position:relative;min-height:324px}.team-panel:before{content:"";position:absolute;top:-1px;left:20px;right:20px;height:2px;background:var(--teal);border-radius:10px}.team-right:before{background:var(--coral)}.unassigned:before{background:#717b75}.team-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.team-top h3{font-size:17px;letter-spacing:-.3px;margin-top:6px;overflow-wrap:anywhere}.team-top .eyebrow{font-size:8px;letter-spacing:1.6px}.team-left h3{color:var(--teal)}.team-right h3{color:var(--coral)}.member-count{font-size:10px;color:#a6b1ac;background:#ffffff07;padding:5px 8px;border-radius:5px;white-space:nowrap}.score-console{display:flex;justify-content:center;align-items:center;gap:31px;background:#10151682;border:1px solid #2c3737;border-radius:9px;margin-bottom:17px;height:67px}.score-console strong{font-size:38px;line-height:1;font-weight:600;min-width:45px;text-align:center;font-variant-numeric:tabular-nums;color:var(--teal)}.team-right .score-console{border-color:#3c3230}.team-right .score-console strong{color:var(--coral)}.score-step{width:27px;height:27px;border:1px solid #485350;border-radius:50%;color:#c4cec9;background:none;font-size:18px;line-height:20px}.score-step:hover{background:#ffffff12}.roster{display:flex;flex-direction:column;gap:8px;min-height:116px;max-height:506px;overflow:auto;padding:1px;scrollbar-width:thin;scrollbar-color:#465048 transparent}.person-card{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 7px;border:1px solid #353e3b;background:#252b29;border-radius:8px;position:relative}.team-right .person-card{background:#2b2827;border-color:#413735}.unassigned .person-card{background:#24282a;border-color:#353b3e}.grip{color:#626f68;cursor:grab;font-size:14px}.avatar{width:38px;height:38px;border-radius:10px;background:linear-gradient(145deg,#50645b,#283c31);color:#d9e8d4;display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:16px;font-weight:600;overflow:hidden}.team-right .avatar{background:linear-gradient(145deg,#775d51,#483d36);color:#f4ddd1}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-button{border:0;background:none;padding:0;display:flex;border-radius:10px;position:relative}.avatar-button:hover:after{content:'↑';background:#0009;color:white;position:absolute;inset:0;display:grid;place-items:center;border-radius:10px}.person-detail{flex:1;min-width:0}.person-detail strong{font-size:12px;font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.move-select{border:0;background:transparent;font-size:9px;color:#a6b3aa;padding:2px 14px 0 0;width:100%;box-shadow:none;max-width:135px}.move-select option{background:#1b211d}.person-card .icon-button{font-size:16px;min-width:21px;padding:3px;width:21px}.person-card.dragging{opacity:.3}.drag-over{border-color:var(--accent);background:#b4ed9b0e;box-shadow:0 0 0 2px #b4ed9b22}.add-inline{display:flex;gap:7px;margin-bottom:15px}.add-inline input{width:100%;font-size:11px;padding:10px}.add-inline .button{font-size:11px;padding:10px 12px}.empty-roster{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:112px;border:1px dashed #3a4440;border-radius:8px;color:#738279;padding:15px}.empty-roster>span{font-size:23px;color:#6d7e72}.empty-roster p{font-size:10px;line-height:1.7;margin-top:6px}.unassigned>.text-button{font-size:10px;margin-top:13px}.board-footer{display:flex;justify-content:space-between;align-items:center;padding:11px 1px 23px;color:#79887f;font-size:10px}.board-footer .text-button{font-size:10px;color:#8d9c92}.draw-panel{border:1px solid #343c34;border-radius:12px;padding:23px;background:radial-gradient(ellipse at 45% 100%,#b4ed9b07,transparent 65%),#1a1e1b}.draw-panel .eyebrow{font-size:8px;margin-bottom:8px}.draw-panel h2{font-size:19px}.control-notes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;margin:24px 0 22px}.control-note{display:flex;align-items:center;flex-direction:column;justify-content:center;border:1px solid #4d5941;background:linear-gradient(150deg,#323b2b,#252b22);border-radius:9px;color:#d5e6c3;height:139px;position:relative;overflow:hidden;transition:transform .25s,border-color .25s,background .25s}.control-note:after{content:"";position:absolute;right:-12px;top:-12px;width:26px;height:26px;transform:rotate(45deg);background:#151b13;border:1px solid #515e46}.control-note:hover:not(:disabled){transform:translateY(-6px);border-color:var(--accent)}.control-note:disabled{opacity:1}.control-note.idle{opacity:.4;background:#222923;border-style:dashed}.note-mini-label{font-size:7px;letter-spacing:1.5px;color:#98ac85}.control-note strong{font-size:46px;font-weight:400;line-height:1.4;font-family:Georgia,serif}.note-mini-footer{font-size:8px;color:#a4b794;margin-top:3px}.control-note.selected{background:var(--accent);color:#243a1c;border-color:var(--accent)}.control-note.selected .note-mini-label,.control-note.selected .note-mini-footer{color:#48633b}.control-note.selected:after{background:#86b96f}.draw-footer{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#93a08c;border-top:1px solid #333c30;padding-top:12px}.draw-footer b{color:#d1e6c1;font-weight:500}.draw-footer .text-button{font-size:10px}.draw-result{display:flex;gap:13px;align-items:center;background:#b4ed9b0b;border:1px solid #b4ed9b22;border-radius:8px;padding:14px 16px;margin-bottom:18px}.draw-result strong{font-size:14px;font-weight:550;overflow-wrap:anywhere}.draw-result .pill{flex:none}.surface{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.add-topic{display:flex;gap:10px;padding:22px}.add-topic input{flex:1}.topic-tools{display:flex;gap:14px;align-items:center;padding:0 22px 20px}.search-field{display:flex;align-items:center;gap:8px;max-width:330px;flex:1;background:#141719;border:1px solid #383e42;border-radius:8px;padding-left:11px;color:#88978d}.search-field input{width:100%;border:0;background:none;font-size:12px;box-shadow:none}.topic-tools select{font-size:11px}.topic-tools .text-button{font-size:10px;white-space:nowrap}.topic-list-head{display:flex;justify-content:space-between;padding:12px 24px;background:#14181a;color:#7f8c85;font-size:10px;border-block:1px solid #2d3531}.topic-row{display:flex;align-items:center;gap:15px;padding:14px 22px;border-bottom:1px solid #2b322e;min-height:57px}.topic-row:last-child{border:0}.topic-content{flex:1;overflow-wrap:anywhere;line-height:1.7;font-size:13px}.topic-status{font-size:9px;color:var(--accent);background:#b4ed9b0c;padding:4px 8px;border-radius:5px}.topic-row.disabled .topic-content{color:#717c76}.topic-row.disabled .topic-status{color:#7c8981;background:#ffffff04}.topic-row .icon-button{font-size:17px}.empty-topics{text-align:center;padding:75px 25px;line-height:1.9;color:#7c8b81;font-size:12px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;padding:12px;font-size:12px}.pagination:empty{display:none}.footnote{font-size:10px;color:#859088;line-height:1.8;margin-top:12px}.settings-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:20px}.settings-card{padding:25px}.settings-card h3{font-size:16px;font-weight:600;letter-spacing:-.4px}.settings-card>p,.demo-card p{color:var(--muted);font-size:11px;line-height:1.8;margin-top:11px}.settings-card .eyebrow{margin-bottom:12px}.settings-card form>label,.form-columns label{display:block;font-size:11px;color:#abb7af;margin:25px 0 10px}.settings-card input:not([type=checkbox]){width:100%;font-size:12px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:13px}.settings-card output{float:right;color:var(--accent)}.settings-card .check-label{display:flex;gap:10px;align-items:center;margin:24px 0}.settings-stack{display:flex;flex-direction:column;gap:20px}.settings-card .row-actions{margin-top:18px}.copy-url{display:flex;align-items:center;gap:12px;background:#111718;border:1px solid #35433a;border-radius:9px;padding:8px 8px 8px 14px;margin-top:20px;min-width:0}.copy-url code{flex:1;color:#d2e9c7;font-size:11px;overflow-wrap:anywhere}.copy-url .button{font-size:11px;padding:8px 12px}.spec-row{display:flex;gap:25px;font-size:10px;color:#788b7c;margin:16px 0}.spec-row b{color:#c0cfbd;margin-left:6px;font-weight:500}.demo-card{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.file-button{cursor:pointer}.main-footer{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#7b8980;border-top:1px solid #282e2a;padding:21px 0;margin-top:32px}.main-footer>span:last-child{letter-spacing:0}.notice{background:#b58a271a;border:1px solid #b58a2750;border-radius:8px;color:#e7c680;padding:14px;margin-bottom:22px;font-size:12px}.saving .connection:before{animation:blink .5s alternate infinite}dialog{background:#1b211e;color:var(--text);border:1px solid #485447;border-radius:15px;width:min(560px,calc(100vw - 32px));padding:25px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#080d0bc7;backdrop-filter:blur(5px)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:20px}.modal-header h2{font-size:18px;font-weight:600}.modal-description{font-size:13px;color:#b2c0b4;line-height:1.9;overflow-wrap:anywhere}#modal-body>input{width:100%}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:27px}.image-editor .avatar{width:90px;height:90px;font-size:35px}.image-editor p{font-size:11px;color:#a1b0a4;line-height:1.8;margin:18px 0}.image-editor input{width:100%;font-size:11px}.library-list{max-height:430px;overflow:auto}.library-row{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #344035}.library-row strong{flex:1;min-width:0;overflow-wrap:anywhere;font-size:13px}.library-row .button{font-size:11px;padding:8px 10px}#toasts{position:fixed;bottom:25px;right:25px;z-index:20;display:flex;flex-direction:column;gap:10px;max-width:420px}.toast{background:#d8efce;color:#20311c;padding:15px 20px;border-radius:9px;font-size:12px;line-height:1.7;box-shadow:0 10px 40px #0005;animation:toast-in .25s ease}.toast.error{background:#f2cec3;color:#582a25}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#465349;border-radius:8px}
/* Broadcast canvas: fixed logical coordinates, scaled as a single composition. */
.overlay{background:transparent;overflow:hidden;width:100vw;height:100vh}.broadcast-stage{position:absolute;left:50%;top:50%;width:1920px;height:1080px;transform-origin:center;color:#edf2e9;isolation:isolate;overflow:hidden}.broadcast-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 36%,#253527 0%,#111c18 50%,#0d1714 100%);z-index:-3}.stage-grid{position:absolute;inset:0;background-image:linear-gradient(#c6ddc204 1px,transparent 1px),linear-gradient(90deg,#c6ddc204 1px,transparent 1px);background-size:60px 60px;z-index:-2;mask-image:linear-gradient(black,transparent 85%)}.broadcast-stage:after{content:"";position:absolute;inset:22px;border:1px solid #c1dfb812;pointer-events:none;z-index:-1}.broadcast-header{position:absolute;top:51px;left:59px;right:59px;display:flex;justify-content:space-between;align-items:center}.onair{font-size:15px;letter-spacing:3px;font-weight:600}.onair i{display:inline-block;width:8px;height:8px;background:#b4ed9b;border-radius:50%;box-shadow:0 0 14px #b4ed9b30;margin-right:12px;vertical-align:2px}.edition{font-size:10px;letter-spacing:3px;color:#91a890}.broadcast-title{position:absolute;left:430px;right:430px;top:98px;text-align:center}.broadcast-title .eyebrow{font-size:11px;letter-spacing:4px;color:#a4c394}.broadcast-title h1{margin:16px 0 20px;font-size:58px;font-weight:650;line-height:1.22;letter-spacing:-2px;max-height:112px;overflow:hidden;overflow-wrap:anywhere;text-shadow:0 2px 18px #0008}.title-rule{margin:auto;width:46px;height:3px;background:var(--accent)}.broadcast-team{position:absolute;top:239px;width:326px;height:750px;border:1px solid #88b2aa3b;border-top:3px solid var(--teal);border-radius:13px;background:linear-gradient(160deg,#253731ed,#12241feb);padding:23px 17px;box-shadow:0 20px 60px #0002}.broadcast-left{left:57px}.broadcast-right{right:57px;border-color:#efac8d3b;border-top-color:var(--coral);background:linear-gradient(160deg,#3b3029ed,#241f1ceb)}.broadcast-team-head{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #9bc1b426;padding-bottom:22px;margin-bottom:21px;min-height:88px}.broadcast-team-head .eyebrow{font-size:9px;letter-spacing:2px;color:#8eb3a6}.broadcast-team-head h2{font-size:24px;color:#b4e6dc;margin-top:9px;font-weight:600;letter-spacing:-.5px;overflow-wrap:anywhere;max-width:196px;max-height:68px;overflow:hidden}.broadcast-right .broadcast-team-head{border-color:#eac1a626}.broadcast-right .eyebrow{color:#d1a58d}.broadcast-right h2{color:#f4bca6}.broadcast-score{font-size:64px;line-height:1;font-weight:500;color:#c5f1e7;letter-spacing:-2px;font-variant-numeric:tabular-nums;min-width:55px;text-align:right}.broadcast-right .broadcast-score{color:#f6c6b3}.broadcast-score.long-score{font-size:37px}.broadcast-roster{height:592px;display:grid;grid-template-columns:1fr;grid-auto-rows:min(78px,calc(568px / var(--count)));align-content:start;gap:6px}.broadcast-person{position:relative;display:flex;align-items:center;gap:14px;min-width:0;min-height:0;padding:10px 12px;border:1px solid #a3d0bb22;border-radius:9px;background:linear-gradient(115deg,#45635183,#2c473580);box-shadow:0 4px 14px #0001;z-index:1}.broadcast-person .avatar{width:51px;height:51px;max-height:100%;border-radius:8px;font-size:22px;background:linear-gradient(135deg,#728c72,#476044)}.broadcast-person strong{font-size:23px;font-weight:600;letter-spacing:-.6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;text-shadow:0 1px 5px #0005}.person-accent{height:5px;width:5px;border-radius:50%;background:#94c3aa;margin-left:auto;flex:none}.broadcast-right .broadcast-person{background:linear-gradient(115deg,#71574778,#49382d80);border-color:#d6b19924}.broadcast-right .avatar{background:linear-gradient(135deg,#a08166,#655341);color:#ffe8d4}.broadcast-right .person-accent{background:#d3a589}.broadcast-roster.dense{grid-auto-rows:min(63px,calc(570px / var(--count)));gap:3px}.broadcast-roster.dense .broadcast-person{padding:4px 8px;gap:9px;border-radius:6px}.broadcast-roster.dense .avatar{width:35px;height:35px;font-size:18px;max-height:100%}.broadcast-roster.dense strong{font-size:19px}.broadcast-roster.very-dense{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:min(58px,calc(530px / var(--rows)));gap:3px}.broadcast-roster.very-dense .broadcast-person{padding:4px;gap:5px}.broadcast-roster.very-dense .avatar{width:23px;height:23px;font-size:12px;border-radius:5px}.broadcast-roster.very-dense strong{font-size:14px;letter-spacing:-.3px}.broadcast-roster.very-dense .person-accent{display:none}.broadcast-center{position:absolute;top:273px;left:434px;width:1052px;height:503px;text-align:center}.draw-caption{display:flex;justify-content:center;align-items:center;gap:19px;color:#a1b99a;font-size:10px;letter-spacing:3px}.draw-caption-line{width:51px;height:1px;background:#9bbb8638}.broadcast-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:21px;margin:30px 34px 0;transition:all .6s cubic-bezier(.22,1,.36,1)}.broadcast-note{height:171px;border:1px solid #8da37178;border-radius:11px;background:linear-gradient(140deg,#e2e9c9,#b8c89a);color:#283723;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:0 13px 34px #0003;overflow:hidden;transition:opacity .6s,filter .6s,height .6s,background .6s,transform .6s;transform-origin:center}.note-mark{position:absolute;top:17px;left:18px;font-size:7px;letter-spacing:2px;font-weight:650;color:#687954}.broadcast-note strong{font-size:88px;font-weight:400;line-height:1;font-family:Georgia,serif;margin-top:1px}.note-fold{position:absolute;right:-23px;top:-23px;width:46px;height:46px;transform:rotate(45deg);background:#91a775;box-shadow:0 3px 3px #29451c25}.note-bottom{position:absolute;bottom:17px;font-size:7px;letter-spacing:2px;color:#697e54}.broadcast-note.standby{border:1px dashed #8ea67c51;background:#34412b3b;color:#7f936d;box-shadow:none}.standby .note-fold{background:#25371f}.standby .note-mark,.standby .note-bottom{color:#708463}.broadcast-notes.has-selection{grid-template-columns:repeat(6,1fr);gap:12px;margin:30px 34px 0}.has-selection .broadcast-note{height:102px;opacity:.25;filter:saturate(.4)}.has-selection .broadcast-note strong{font-size:50px;margin-top:0}.has-selection .note-mark{font-size:5px;letter-spacing:1px;top:10px;left:10px}.has-selection .note-bottom{font-size:5px;letter-spacing:1px;bottom:10px}.has-selection .broadcast-note.chosen{opacity:1;filter:none;background:var(--accent);transform:scale(1.06);border-color:#d1f7c0;box-shadow:0 0 45px #b4ed9b15}.broadcast-result{padding:28px 43px 25px;margin:25px 34px 0;border:1px solid #b4ed9b35;border-radius:12px;background:linear-gradient(135deg,#243222f5,#18281cf2);min-height:254px;max-height:292px;box-shadow:0 22px 55px #0003;display:flex;align-items:center;justify-content:center;flex-direction:column}.broadcast-result .eyebrow{color:var(--accent);letter-spacing:4px;font-size:9px}.broadcast-result h2{font-size:44px;line-height:1.5;font-weight:650;letter-spacing:-1.4px;margin:19px 0 17px;overflow-wrap:anywhere;max-height:200px;overflow:hidden;text-wrap:balance}.topic-result-rule{width:30px;height:2px;background:var(--accent);flex:none}.broadcast-instruction{font-size:14px;letter-spacing:2px;color:#b6c6ab;margin-top:26px;text-shadow:0 2px 8px #0009}.broadcast-waiting{position:absolute;left:444px;right:444px;top:830px;height:163px;border-top:1px solid #a9c29630;padding-top:14px}.waiting-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}.waiting-label .eyebrow{font-size:9px;letter-spacing:2px;color:#9eb593}.waiting-label>span:last-child{font-size:10px;color:#9fb093}.broadcast-waiting-roster{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;max-height:128px;grid-auto-rows:55px}.broadcast-waiting .broadcast-person{padding:7px 9px;background:#29382aed;border-color:#79976c3b;gap:9px}.broadcast-waiting .avatar{width:34px;height:34px;border-radius:7px;font-size:16px}.broadcast-waiting strong{font-size:18px;letter-spacing:-.4px}.broadcast-waiting .person-accent{display:none}.broadcast-waiting-roster.dense{grid-auto-rows:38px;gap:5px}.broadcast-waiting-roster.dense .broadcast-person{padding:4px;gap:6px}.broadcast-waiting-roster.dense .avatar{width:25px;height:25px;font-size:12px}.broadcast-waiting-roster.dense strong{font-size:15px}.broadcast-waiting-roster.very-dense{grid-auto-rows:27px;gap:3px}.broadcast-waiting-roster.very-dense .broadcast-person{padding:3px;gap:4px;border-radius:5px}.broadcast-waiting-roster.very-dense .avatar{width:19px;height:19px;font-size:10px;border-radius:4px}.broadcast-waiting-roster.very-dense strong{font-size:12px}.broadcast-footer{position:absolute;bottom:42px;left:59px;right:59px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:#819678}.motion-off *{animation:none!important;transition:none!important}
@keyframes toast-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{from{opacity:.3}to{opacity:1}}
@media(min-width:1600px){.controller main{padding-inline:48px}.team-panel{padding:24px}.person-card{padding:11px 9px}.control-note{height:157px}}
@media(max-width:1180px){.sidebar{width:190px;padding:28px 14px}.controller main{margin-left:190px;width:calc(100% - 190px);padding:0 23px}.brand{font-size:15px}.board{gap:10px;grid-template-columns:1fr 1fr 1fr}.team-panel{padding:13px}.person-card{gap:5px;padding:8px 4px}.person-card .avatar{width:30px;height:30px;font-size:14px}.grip{display:none}.person-card .icon-button{width:17px;min-width:17px;font-size:14px}.top-actions{gap:10px}.control-notes{gap:9px}.note-mini-footer{font-size:7px}.settings-grid{grid-template-columns:1fr}.score-console{gap:19px}.topic-tools{flex-wrap:wrap}}
@media(max-width:900px){.sidebar{position:static;width:auto;height:auto;flex-direction:row;align-items:center;gap:25px;padding:16px 20px;border-right:0;border-bottom:1px solid #292d30}.sidebar .workspace-label,.sidebar-note{display:none}.sidebar nav{display:flex;gap:4px}.nav-item{font-size:11px;padding:9px;margin:0}.nav-item>span:first-child{display:none}.app-shell{display:block}.controller main{margin-left:0;width:100%;padding-inline:20px}.topbar{padding-top:24px}.board{grid-template-columns:1fr 1fr}.unassigned{grid-column:1/-1;grid-row:2}.unassigned .roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.unassigned{min-height:210px}.section-heading{align-items:flex-start}.section-heading p{max-width:320px}.control-note{height:123px}.draw-panel{padding:20px}}
@media(max-width:620px){.sidebar{flex-wrap:wrap;gap:15px}.brand{font-size:13px}.brand-icon{width:34px;height:34px;font-size:25px}.brand-light{font-size:8px}.sidebar nav{width:100%;justify-content:space-between}.topbar{gap:12px}.topbar h1{font-size:21px}.top-actions{flex-direction:column;align-items:flex-end}.connection{font-size:9px}.top-actions .button{font-size:10px;padding:8px 11px}.section-heading{flex-wrap:wrap}.section-heading h2{font-size:16px}.section-heading p{font-size:10px}.board{gap:9px}.team-panel{padding:12px}.team-top h3{font-size:14px}.score-console strong{font-size:32px}.score-console{gap:15px}.person-card .avatar{width:28px;height:28px}.person-card .icon-button{display:none}.person-detail strong{font-size:11px}.unassigned .roster{grid-template-columns:1fr 1fr}.control-notes{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:17px}.control-note{height:115px}.draw-panel h2{font-size:17px}.draw-panel .row-actions{width:100%;justify-content:flex-end}.board-footer{font-size:8px}.draw-result{align-items:flex-start}.draw-result strong{font-size:12px}.add-topic{padding:16px;gap:7px}.add-topic .button{font-size:11px;padding:9px}.add-topic input{font-size:11px}.topic-tools{padding:0 16px 15px;gap:10px}.topic-row{gap:9px;padding:12px}.topic-content{font-size:11px}.topic-status{display:none}.topic-list-head{padding-inline:16px;font-size:9px}.settings-card{padding:20px}.demo-card{flex-wrap:wrap}.main-footer{font-size:7px;letter-spacing:0;gap:10px}.copy-url code{font-size:9px}.row-actions .button{font-size:11px}.topic-tools .flex-spacer{display:none}#toasts{right:15px;left:15px;bottom:15px;max-width:none}.form-columns{grid-template-columns:1fr}.form-columns label{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.controller *{animation:none!important;transition:none!important}}
/* v1.1: mirrored broadcast, ordered roster and persistent profile library. */
.broadcast-right .broadcast-team-head{flex-direction:row-reverse;text-align:right}
.broadcast-right .broadcast-score{text-align:left}
.broadcast-right .broadcast-person{flex-direction:row-reverse}
.broadcast-right .broadcast-person strong{text-align:right}
.broadcast-right .person-accent{margin-left:0;margin-right:auto}
.broadcast-roster.very-dense{grid-auto-flow:column;grid-template-rows:repeat(var(--rows),min(58px,calc(530px / var(--rows))))}
.has-selection .broadcast-note{opacity:.65;filter:saturate(.7)}
.has-selection .broadcast-note.opened{opacity:.9;filter:none;background:#b6d0be}
.has-selection .broadcast-note.chosen{opacity:1;background:var(--accent)}
.control-note.opened:not(.selected){background:linear-gradient(145deg,#2f4b40,#233c32);border-color:#709a87}
.person-card.drop-before{box-shadow:0 -3px 0 var(--accent)}
.person-card.drop-after{box-shadow:0 3px 0 var(--accent)}
.order-controls{display:flex;gap:5px;margin-top:3px}
.order-button{border:1px solid #ffffff16;border-radius:3px;background:#ffffff06;color:#b6c6b8;font-size:10px;line-height:14px;width:23px;padding:0}
.order-button:disabled{opacity:.2;cursor:default}
.order-button:hover:not(:disabled){background:#b4ed9b22;color:var(--accent)}
.profile-row{display:flex;align-items:center;gap:16px;padding:19px 24px;border-top:1px solid #ffffff09}
.profile-row .avatar{width:52px;height:52px;border-radius:13px;font-size:23px}
.profile-detail{min-width:0;flex:1}
.profile-detail strong{font-size:14px;overflow-wrap:anywhere}
.profile-detail p{font-size:10px;line-height:1.6;margin-top:6px}
.profile-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.profile-actions .button{font-size:10px;padding:9px 11px}
.image-editor>select{margin-top:18px;width:100%}
.image-editor>.avatar{width:90px;height:90px;font-size:36px;border-radius:20px}
.image-input-section input{width:100%;margin-top:14px}
.image-input-section .text-button{margin-top:13px;font-size:11px}
.image-error{color:#f0b29e;font-size:11px;line-height:1.8;overflow-wrap:anywhere}
@media(max-width:800px){.profile-row{flex-wrap:wrap;padding:16px;gap:12px}.profile-actions{width:100%;justify-content:flex-start}.profile-detail{flex-basis:60%}}

/* v1.2: chosen speakers and three distinct topic-card states. */
.speaker-panel{padding:23px;margin:8px 0 26px}
.speaker-panel .section-heading{margin-bottom:20px}
.speaker-teams{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.speaker-team{background:#ffffff03;border:1px solid #ffffff0c;border-radius:12px;padding:18px 20px;min-width:0}
.speaker-team.left{border-top:2px solid var(--teal)}
.speaker-team.right{border-top:2px solid var(--coral)}
.speaker-team-heading,.speaker-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.speaker-team-heading{justify-content:space-between;margin-bottom:15px}
.speaker-team-heading strong{font-size:14px;overflow-wrap:anywhere}
.speaker-controls label{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px}
.speaker-controls select{min-width:80px;padding:9px 12px}
.speaker-controls .button{font-size:11px;padding:10px 14px}
.speaker-names{color:var(--accent);font-size:12px;line-height:1.8;margin:14px 0 0;overflow-wrap:anywhere}
.speaker-toggle{margin-top:7px;border:1px solid #ffffff20;border-radius:5px;background:#ffffff06;color:#a6b6a8;font-size:10px;padding:4px 8px;cursor:pointer}
.speaker-toggle:hover{border-color:var(--accent);color:var(--accent)}
.speaker-toggle[aria-pressed=true]{background:#b4ed9b22;color:var(--accent);border-color:#b4ed9b88}
.person-card.is-speaker{border-color:#b4ed9b88;background:#b4ed9b0e;box-shadow:inset 3px 0 0 var(--accent)}
.broadcast-person{transition:border-color .35s,box-shadow .35s,background .35s,opacity .35s}
.broadcast-roster.has-speakers .broadcast-person:not(.is-speaker){opacity:.52}
.broadcast-person.is-speaker{background:linear-gradient(115deg,#2c3b2c,#19241d);border-color:#b4ed9b;box-shadow:inset 3px 0 0 var(--accent),0 0 20px #b4ed9b14}
.broadcast-right .broadcast-person.is-speaker{box-shadow:inset -3px 0 0 var(--accent),0 0 20px #b4ed9b14}
.broadcast-person.is-speaker strong{color:#e8f9e0}
.broadcast-person.is-speaker .person-accent{background:var(--accent);opacity:1;box-shadow:0 0 10px #b4ed9b88}
.card-count-label{display:flex;flex-direction:column;gap:6px;font-size:10px;color:var(--muted)}
.card-count-label select{padding:8px 12px;min-width:100px}
.draw-panel .section-heading>.row-actions{flex-wrap:wrap;justify-content:flex-end}
.control-notes{grid-template-columns:repeat(var(--columns,6),minmax(0,1fr))}
.control-notes.many-cards .control-note{height:100px}
.broadcast-notes{grid-template-columns:repeat(var(--columns,3),minmax(0,1fr))}
.broadcast-note{height:var(--note-height,171px)}
.broadcast-notes.many-cards:not(.has-selection) .broadcast-note strong{font-size:56px}
.broadcast-notes.has-selection{grid-template-columns:repeat(var(--selected-columns,6),minmax(0,1fr))}
.broadcast-notes,.broadcast-notes.has-selection{width:calc(100% - 68px);margin-left:auto;margin-right:auto}
.broadcast-notes.has-selection.many-cards{gap:12px}
.broadcast-notes.has-selection.many-cards .broadcast-note{height:66px}
.broadcast-notes.has-selection.many-cards .broadcast-note strong{font-size:31px;line-height:1}
.broadcast-notes.has-selection.many-cards .note-mark{font-size:6px;top:7px}
.broadcast-notes.has-selection.many-cards .note-bottom{font-size:6px;letter-spacing:1px;bottom:7px}
.broadcast-notes.many-cards.has-selection+.broadcast-result{min-height:216px;max-height:244px;margin-top:20px;padding-top:20px;padding-bottom:20px}
.broadcast-note:not(.standby),.has-selection .broadcast-note:not(.standby){background:#d8ddd2;color:#354039;border-color:#abb6a2;opacity:1;filter:none}
.broadcast-note:not(.standby) .note-mark,.broadcast-note:not(.standby) .note-bottom{color:#586654}
.broadcast-note:not(.standby) .note-fold{background:#b5bfac}
.broadcast-note.opened:not(.chosen),.has-selection .broadcast-note.opened:not(.chosen){background:linear-gradient(140deg,#26372d,#15211a);border-color:#405448;color:#81968a;opacity:1;filter:none}
.broadcast-note.opened:not(.chosen) .note-mark,.broadcast-note.opened:not(.chosen) .note-bottom{color:#82988a}
.broadcast-note.opened:not(.chosen) .note-fold{background:#263c30}
.broadcast-note.chosen,.has-selection .broadcast-note.chosen{background:var(--accent);color:#152519;border-color:var(--accent);opacity:1;filter:none}
.broadcast-note.chosen .note-mark,.broadcast-note.chosen .note-bottom{color:#42553c}
.broadcast-note.chosen .note-fold{background:#91c77b}
.control-note:not(.idle){background:#d8ddd2;color:#354039;border-color:#abb6a2}
.control-note:not(.idle) .note-mini-label,.control-note:not(.idle) .note-mini-footer{color:#586654}
.control-note.opened:not(.selected){background:linear-gradient(140deg,#26372d,#15211a);color:#81968a;border-color:#405448}
.control-note.opened:not(.selected) .note-mini-label,.control-note.opened:not(.selected) .note-mini-footer{color:#82988a}
.control-note.selected{background:var(--accent);color:#152519;border-color:var(--accent)}
.control-note.selected .note-mini-label,.control-note.selected .note-mini-footer{color:#42553c}
@media(max-width:1100px){.speaker-panel .section-heading,.draw-panel .section-heading{align-items:flex-start;flex-wrap:wrap;gap:18px}.speaker-controls{gap:8px}}
@media(max-width:700px){.speaker-teams{grid-template-columns:1fr}.control-notes{gap:7px}.control-note strong{font-size:27px}.control-note .note-mini-label{font-size:7px;letter-spacing:0}.control-note .note-mini-footer{font-size:8px}.speaker-panel{padding:17px}}

/* Fixed to the viewport, including when hosted inside the modal top layer. */
.controller #toasts{top:20px;right:20px;bottom:auto;left:auto;width:min(520px,calc(100vw - 40px));max-width:none;max-height:calc(100vh - 40px);overflow-y:auto;pointer-events:none;z-index:50}
.controller .toast{flex-shrink:0;overflow-wrap:anywhere}
