:root{--bg: #f4f5f7;--panel: #ffffff;--ink: #1e1e1e;--muted: #5c6370;--line: #dfe2e6;--accent: #6741d9;font-family:Nunito,system-ui,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body{margin:0;height:100%}#app{display:grid;grid-template-rows:auto 1fr auto auto;height:100vh}header{display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--panel);border-bottom:1px solid var(--line)}header .title{font-weight:700;font-size:17px}select,button{font:inherit}header select{margin-left:auto;padding:4px 8px;border:1px solid var(--line);border-radius:6px;background:var(--panel)}#stage{position:relative;min-height:0;background:#fff;user-select:none;-webkit-user-select:none}#stage svg{position:absolute;inset:0;width:100%;height:100%;display:block}#subtitle{min-height:56px;display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--panel);border-top:1px solid var(--line)}#subtitle .where{color:var(--muted);font-size:13px;white-space:nowrap}#subtitle .line{font-size:18px;line-height:1.35}footer{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--panel);border-top:1px solid var(--line)}#play{width:40px;height:40px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;font-size:15px}#time{font-variant-numeric:tabular-nums;color:var(--muted);font-size:14px;white-space:nowrap}#bar{position:relative;flex:1}#seek{width:100%;accent-color:var(--accent)}#ticks{position:absolute;inset:-6px 0 auto;height:6px;pointer-events:none}#ticks i{position:absolute;width:2px;height:6px;background:var(--muted);opacity:.6}footer select{padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:var(--panel)}.stopper{font-size:14px;color:var(--muted);white-space:nowrap}#checkpoint{position:fixed;inset:0;display:grid;place-items:center;background:#00000040}#checkpoint[hidden]{display:none}#checkpoint .card{max-width:520px;margin:16px;padding:24px;border-radius:12px;background:var(--panel);box-shadow:0 10px 30px #0003}#checkpoint p{margin:0 0 16px;font-size:18px;line-height:1.4}#checkpoint button{padding:8px 18px;border:none;border-radius:8px;background:var(--accent);color:#fff;cursor:pointer}@media(max-width:640px){footer{flex-wrap:wrap}#bar{flex-basis:100%;order:5}.stopper{display:none}}.toggle{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--panel);cursor:pointer}.toggle[aria-pressed=true]{border-color:var(--accent);background:#f3f0ff}.hint{font-size:13px;color:var(--muted)}#status:empty{display:none}#checkpoint .row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}#checkpoint .heard{font-size:15px;color:var(--muted);font-style:italic}#tools{position:absolute;top:10px;left:0;right:0;width:fit-content;margin:0 auto;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px;max-width:calc(100% - 32px);padding:4px 6px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 10px #00000014}#tools button{min-width:32px;height:32px;padding:0 6px;border:1px solid transparent;border-radius:7px;background:none;color:var(--ink);cursor:pointer;font-size:16px;line-height:1}#tools button:hover{background:#f1f3f5}#tools button[aria-pressed=true]{background:#f3f0ff;border-color:var(--accent)}#tools button:disabled{opacity:.35;cursor:default}#tools button.sw{min-width:0;width:20px;height:20px;margin:0 2px;padding:0;border:2px solid;border-radius:50%}#tools button.sw[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}#tools button.follow{font-size:13px;font-weight:700;color:var(--accent)}#tools .sep{width:1px;height:22px;margin:0 4px;background:var(--line)}#tools .zoom{min-width:44px;text-align:center;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}#stage.panning{cursor:grabbing!important}#stage textarea.edit{user-select:text;-webkit-user-select:text;position:absolute;z-index:3;margin:0;padding:0 4px;border:1px dashed var(--accent);border-radius:4px;outline:none;background:#ffffffeb;color:var(--ink);resize:none;overflow:hidden;white-space:pre}@media(max-width:640px){#tools{top:6px;gap:0;padding:2px}#tools button{min-width:28px;height:28px;font-size:14px}}#tools details.layers{position:relative}#tools details.layers summary{list-style:none;height:32px;padding:0 8px;border-radius:7px;cursor:pointer;font-size:13px;line-height:32px;color:var(--muted)}#tools details.layers summary::-webkit-details-marker{display:none}#tools details.layers[open] summary{background:#f3f0ff;color:var(--ink)}#tools details.layers .menu{position:absolute;top:38px;right:0;z-index:4;display:grid;gap:6px;min-width:230px;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 20px #0000001f;font-size:14px}#tools details.layers label{display:flex;gap:8px;align-items:center;white-space:nowrap;cursor:pointer}#tools details.layers hr{width:100%;margin:2px 0;border:none;border-top:1px solid var(--line)}#tools.readonly [data-tool]:not([data-tool=hand]),#tools.readonly [data-role],#tools.readonly [data-act=lock],#tools.readonly [data-act=undo],#tools.readonly [data-act=redo],#tools.readonly .sep:first-of-type,#tools.readonly label.draw{display:none}#room{display:flex;align-items:center;gap:8px;font-size:14px}#room .people{display:flex;gap:4px}#room .who{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;color:#fff;font-size:12px;font-weight:700;border:2px solid #fff;box-shadow:0 0 0 1px var(--line)}#room .role{padding:2px 8px;border-radius:10px;background:#f3f0ff;color:var(--accent);font-size:12px;font-weight:700}#room button,#room-panel button{padding:4px 10px;border:1px solid var(--line);border-radius:7px;background:var(--panel);cursor:pointer;font-size:13px}#room button[aria-pressed=true]{border-color:var(--accent);background:#f3f0ff}#room .sync{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}#hands{position:absolute;right:12px;bottom:12px;z-index:2;min-width:200px;max-width:280px;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 10px #00000014;font-size:14px}#hands[hidden]{display:none}#hands h4{margin:0 0 6px;font-size:13px;color:var(--muted);font-weight:600}#hands ol{margin:0;padding-left:20px}#hands li{margin:3px 0}#hands li button{margin-left:6px;padding:1px 8px;border:1px solid var(--line);border-radius:6px;background:var(--panel);cursor:pointer;font-size:12px}#hands .floor{margin-bottom:6px;font-weight:700;color:var(--accent)}#room-panel{position:fixed;inset:0;z-index:10;display:grid;place-items:center;background:#0000004d}#room-panel[hidden]{display:none}#room-panel .card{width:min(560px,calc(100% - 32px));padding:24px;border-radius:12px;background:var(--panel);box-shadow:0 10px 30px #0003}#room-panel h3{margin:0 0 12px}#room-panel .link{display:grid;grid-template-columns:110px 1fr auto;gap:8px;align-items:center;margin:8px 0;font-size:14px}#room-panel input[type=text]{width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:13px}#room-panel .primary{border:none;background:var(--accent);color:#fff;padding:8px 18px;font-size:15px}#room-panel p{color:var(--muted);font-size:14px;line-height:1.45}footer.guest #play,footer.guest #seek,footer.guest #speed,footer.guest .stopper{opacity:.45;pointer-events:none}header select:disabled{opacity:.6}.ai-point>rect{animation:ai-pulse 1.2s ease-in-out infinite}@keyframes ai-pulse{50%{fill-opacity:.18}}#ask{position:absolute;left:12px;bottom:12px;z-index:2;display:grid;gap:8px;width:min(440px,calc(100% - 24px))}#ask[hidden]{display:none}#askbar{display:flex;gap:6px;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 10px #00000014}#askbar input{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--line);border-radius:7px;font:inherit;font-size:14px}#askbar button{padding:6px 12px;border:1px solid var(--line);border-radius:7px;background:var(--panel);cursor:pointer;font-size:14px;white-space:nowrap}#askbar button[type=submit]{border:none;background:#0b7285;color:#fff}#askbar #ptt{touch-action:none;user-select:none}#askbar #ptt[aria-pressed=true]{border-color:#c92a2a;background:#fff5f5;color:#c92a2a}#answer{padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-left:4px solid #0b7285;border-radius:10px;box-shadow:0 2px 10px #00000014;font-size:14px;max-height:40vh;overflow:auto}#answer[hidden],#answer [hidden]{display:none}#answer .head{display:flex;align-items:center;gap:8px;margin-bottom:4px}#answer .ai{font-weight:800;color:#0b7285}#answer .st{color:var(--muted);font-size:12px}#answer .head button{margin-left:auto;padding:1px 10px;border:1px solid var(--line);border-radius:6px;background:var(--panel);cursor:pointer;font-size:12px}#answer .q{color:var(--muted)}#answer .said{margin:6px 0 0;font-size:15px;line-height:1.45}#answer .said:empty{display:none}#answer .cites{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}#answer .cites:empty{display:none}#answer .cite{padding:1px 8px;border-radius:10px;background:#e3fafc;color:#0b7285;font-size:12px}#answer .queue{margin-top:6px;color:var(--muted);font-size:12px}#answer .queue:empty{display:none}@media(max-width:640px){#ask{bottom:8px;left:8px;width:calc(100% - 16px)}}#ask-sel{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#f3f0ff;border:1px solid #d0bfff;border-radius:10px;font-size:13px;color:#5f3dc4}#ask-sel[hidden]{display:none}#ask-sel button{padding:4px 10px;border:none;border-radius:7px;background:#7048e8;color:#fff;cursor:pointer;font-size:13px;white-space:nowrap}#notes{position:absolute;top:58px;right:12px;z-index:2;display:grid;gap:6px;width:min(330px,calc(100% - 24px));max-height:calc(100% - 140px);overflow:auto;padding:8px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 10px #00000014;font-size:14px}#notes[hidden]{display:none}#notes .toggle-notes{display:flex;align-items:center;gap:6px;width:100%;padding:2px 4px;border:none;background:none;color:#5f3dc4;font:inherit;font-weight:700;text-align:left;cursor:pointer}#notes .toggle-notes b{padding:0 7px;border-radius:9px;background:#7048e8;color:#fff;font-size:12px}#notes .toggle-notes span{margin-left:auto;color:var(--muted)}#notes .list{display:grid;gap:6px}#notes .note{padding:8px 10px;border:1px solid var(--line);border-left:4px solid #7048e8;border-radius:8px;background:#fff}#notes .note.comment{border-left-color:#0b7285}#notes .note.focus{box-shadow:0 0 0 2px #b197fc}#notes .note.resolved,#notes .note[data-status=accepted],#notes .note[data-status=rejected]{opacity:.7}#notes .note .head{display:flex;align-items:center;gap:6px;font-size:12px}#notes .note .ai{flex:none;white-space:nowrap;font-weight:800;color:#5f3dc4}#notes .note.comment .ai{color:#0b7285}#notes .note .on{flex:1;min-width:0;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#notes .note .link{flex:none;margin-left:auto;padding:0 4px;border:none;background:none;color:var(--muted);font-size:12px;cursor:pointer;text-decoration:underline}#notes .note .title{margin-top:4px;font-weight:700}#notes .note p{margin:4px 0;line-height:1.4}#notes .note .sum{color:var(--muted);font-size:12px}#notes .note .warn{color:#c92a2a;font-size:12px}#notes .note .cites{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}#notes .note .cite{padding:1px 8px;border-radius:10px;background:#e3fafc;color:#0b7285;font-size:11px}#notes .chip{padding:0 7px;border-radius:9px;font-size:11px;font-weight:700}#notes .chip.open{background:#f3f0ff;color:#5f3dc4}#notes .chip.stale{background:#f1f3f5;color:#868e96}#notes .chip.ok{background:#ebfbee;color:#2b8a3e}#notes .chip.no{background:#fff5f5;color:#c92a2a}#notes .row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}#notes .row button{padding:3px 10px;border:1px solid var(--line);border-radius:6px;background:var(--panel);cursor:pointer;font-size:12px}#notes .row button.primary{border-color:#7048e8;background:#7048e8;color:#fff}#notes .row button[aria-pressed=true]{border-color:#e8a200;background:#fff9db}#notes details.past summary{cursor:pointer;color:var(--muted);font-size:12px;padding:2px 4px}#notes details.past .note{margin-top:6px}.pin,.ghost-tag,.ghost{cursor:pointer}.pin.focus circle{stroke:#b197fc;stroke-width:3}@media(max-width:640px){#notes{top:auto;bottom:120px;max-height:40vh}}#studio{position:absolute;top:58px;left:12px;z-index:3;display:grid;gap:8px;align-content:start;width:min(440px,calc(100% - 24px));max-height:calc(100% - 76px);overflow:auto;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 16px #0000001f;font-size:14px}#studio[hidden]{display:none}#studio .head{display:flex;align-items:center;justify-content:space-between}#studio button{padding:4px 10px;border:1px solid var(--line);border-radius:7px;background:var(--panel);cursor:pointer;font:inherit;font-size:13px}#studio button.primary{border:none;background:var(--accent);color:#fff}#studio button:disabled{opacity:.45;cursor:default}#studio .voice-sum{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:8px;background:#f8f9fa;color:var(--muted);font-size:13px}#studio ol.steps{margin:0;padding:0;list-style:none;max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:8px}#studio li.ch{padding:6px 8px 2px;color:var(--muted);font-size:12px;font-weight:700}#studio li.st{display:flex;gap:6px;align-items:baseline;padding:3px 8px;cursor:pointer;white-space:nowrap;overflow:hidden}#studio li.st:hover{background:#f8f9fa}#studio li.st.sel{background:#f3f0ff}#studio li.st.now .id{color:var(--accent);font-weight:800}#studio li.st .id{flex:none;font-variant-numeric:tabular-nums;font-size:12px;color:var(--muted)}#studio li.st .first{overflow:hidden;text-overflow:ellipsis}#studio li.st .edits{flex:none;margin-left:auto;color:var(--accent);font-size:12px}#studio .v.ready{color:#2f9e44}#studio .v.cached{color:#1971c2}#studio .v.stale{color:#e8590c}#studio .v.none{color:var(--muted)}#studio .edit{display:grid;gap:6px}#studio .row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}#studio .row .hint{margin-right:auto}#studio textarea.narration{width:100%;padding:8px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px;line-height:1.45;resize:vertical}#studio input.instruction{flex:1;min-width:160px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;font:inherit;font-size:13px}#studio ul.issues{margin:0;padding-left:18px;font-size:13px}#studio ul.issues li.error{color:#c92a2a}#studio ul.issues li.warn{color:var(--muted)}#studio .note{margin:0;padding:6px 8px;border-radius:8px;background:#fff9db;font-size:13px}#studio .busy{color:var(--accent)}.toggle.wide{width:auto;padding:0 10px;font-size:13px;white-space:nowrap}.ai-tag{flex:none;padding:1px 7px;border-radius:999px;background:#f3f0ff;color:var(--accent);font-size:12px;font-weight:700;white-space:nowrap}header .ai-tag{margin-left:-6px}#ask .ai-tag{margin-left:4px}#ai-notice{display:flex;align-items:center;gap:10px;margin-left:auto;max-width:560px;padding:6px 10px;border-radius:8px;background:#f3f0ff;font-size:13px;line-height:1.35}#ai-notice[hidden]{display:none}#ai-notice p{margin:0}#ai-notice button{flex:none;padding:4px 10px;border:none;border-radius:7px;background:var(--accent);color:#fff;cursor:pointer;font-size:13px}#askbar.over input{background:#f8f9fa}#costs-open.over{color:#c92a2a}#costs{position:absolute;right:12px;bottom:12px;z-index:3;display:grid;gap:8px;width:min(380px,calc(100% - 24px));max-height:calc(100% - 24px);overflow:auto;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 16px #0000001f;font-size:14px}#costs[hidden]{display:none}#costs .head{display:flex;align-items:center;justify-content:space-between}#costs .head button{padding:2px 8px;border:1px solid var(--line);border-radius:7px;background:var(--panel);cursor:pointer}#costs h4{margin:4px 0 6px;font-size:13px;color:var(--muted)}#costs section{display:grid;gap:4px}#costs p{margin:0}#costs table{width:100%;border-collapse:collapse;font-size:13px}#costs td{padding:2px 0}#costs td:last-child{text-align:right;font-variant-numeric:tabular-nums}#costs tr.sum td{border-top:1px solid var(--line);font-weight:700}#costs .meter{height:8px;border-radius:4px;background:#f1f3f5;overflow:hidden}#costs .meter i{display:block;height:100%;background:var(--accent)}#costs .meter.over i{background:#e03131}#costs .warn{color:#c92a2a;font-size:13px}#costs .hint{color:var(--muted);font-size:12px}#askbar button:disabled{opacity:.45;cursor:default}#room a.button,#prep a.button{display:inline-block;padding:4px 10px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);font-size:13px;text-decoration:none}#room a.button:hover{border-color:var(--accent)}header .back{margin-left:auto;color:var(--muted);font-size:14px;text-decoration:none}header .back:hover{color:var(--accent)}.missing{max-width:520px;margin:15vh auto;padding:0 16px}.missing p{color:var(--muted);line-height:1.5}#new-lesson{min-height:0;overflow:auto}#nl{max-width:760px;margin:0 auto;padding:24px 16px 48px;display:flex;flex-direction:column;gap:18px}#nl h3{margin:0 0 4px;font-size:16px}#nl section{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}#nl .hint{margin:0;line-height:1.45}#nl .field{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600}#nl .field i{font-weight:400;color:var(--muted)}#nl input[type=text],#nl select,#nl textarea{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;font-size:15px;font-weight:400}#nl input[type=text]:focus,#nl select:focus,#nl textarea:focus{outline:2px solid #d0bfff;border-color:var(--accent)}#nl textarea{resize:vertical;line-height:1.45}#nl-title{font-size:18px!important}#nl .opts{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}#nl .opts .wide{grid-column:1 / -1}#nl .check{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-size:14px}#nl .check .hint.warn{color:#c92a2a}#nl .drop{padding:22px 16px;border:2px dashed var(--line);border-radius:10px;text-align:center;color:var(--muted);font-size:14px}#nl .drop.over{border-color:var(--accent);background:#f3f0ff;color:var(--accent)}#nl .drop button{padding:0;border:none;background:none;color:var(--accent);font-size:14px;text-decoration:underline;cursor:pointer}#nl-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}#nl-list:empty{display:none}#nl-list .src{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fafbfc}#nl-list .src .kind{padding:2px 8px;border-radius:10px;background:#e7f5ff;color:#1971c2;font-size:12px;font-weight:700}#nl-list .src.pdf .kind{background:#fff5f5;color:#c92a2a}#nl-list .src img{width:48px;height:36px;object-fit:cover;border-radius:4px;border:1px solid var(--line)}#nl-list .src .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}#nl-list .src .size{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}#nl-list .src.text{grid-template-columns:1fr auto}#nl-list .src.text textarea{grid-column:1 / -1}#nl-list .src .tname{padding:4px 8px!important;font-size:14px!important;font-weight:600!important;border-color:transparent!important;background:transparent!important}#nl-list .rm{width:28px;height:28px;border:none;border-radius:6px;background:none;color:var(--muted);cursor:pointer}#nl-list .rm:hover{background:#fff5f5;color:#c92a2a}#nl .add{align-self:flex-start;padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:14px}#nl .add:hover{border-color:var(--accent);color:var(--accent)}#nl .row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}#nl .primary{padding:10px 20px;border:none;border-radius:9px;background:var(--accent);color:#fff;font-size:16px;cursor:pointer}#nl .primary:disabled{opacity:.45;cursor:default}#nl .error{margin:0;padding:10px 12px;border-radius:8px;background:#fff5f5;color:#c92a2a;font-size:14px;line-height:1.45}#nl .error[hidden],#nl .banner[hidden]{display:none}#nl .banner{padding:10px 12px;border-radius:8px;background:#fff9db;font-size:14px;line-height:1.45}@media(max-width:640px){#nl .opts{grid-template-columns:1fr}}.prep-tag{padding:2px 10px;border-radius:10px;background:#fff3bf;color:#8f5b00;font-size:12px;font-weight:700;animation:prep-pulse 1.6s ease-in-out infinite}.prep-tag.ready{background:#d3f9d8;color:#2b8a3e;animation:none}@keyframes prep-pulse{50%{opacity:.55}}header .prep-tag+#room{margin-left:auto}.prep-foot{min-height:44px}#prep{position:absolute;right:16px;bottom:16px;z-index:3;width:min(340px,calc(100% - 32px));padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 6px 24px #0000001f}#prep h3{margin:0 0 10px;font-size:16px}#prep .bar{height:6px;border-radius:3px;background:#f1f3f5;overflow:hidden}#prep .bar i{display:block;height:100%;width:3%;background:var(--accent);transition:width .6s ease}#prep .stages{margin:12px 0 0;padding:0;list-style:none;font-size:14px;line-height:1.9;color:var(--muted)}#prep .stages li:before{content:"○";display:inline-block;width:1.4em}#prep .stages li.done{color:var(--ink)}#prep .stages li.done:before{content:"✓";color:#2b8a3e}#prep .stages li.now{color:var(--ink);font-weight:700}#prep .stages li.now:before{content:"●";color:var(--accent);animation:prep-pulse 1.2s ease-in-out infinite}#prep .time{margin:8px 0 0;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}#prep .row{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}#prep button{padding:6px 14px;border:1px solid var(--line);border-radius:8px;background:var(--panel);cursor:pointer;font-size:14px}#prep button.primary{border:none;background:var(--accent);color:#fff;font-size:15px}#prep .err{margin:0;color:#c92a2a;font-size:14px;line-height:1.45;overflow-wrap:anywhere}#prep .hint{margin:8px 0 0;line-height:1.45}#prep.ready{border-color:#8ce99a;box-shadow:0 0 0 4px #ebfbee,0 6px 24px #0000001f}#prep.ready h3{color:#2b8a3e;font-size:18px}#prep.ready .ask{margin:0;font-size:17px}#prep.stopped{border-color:#ffc9c9}#room-panel .delete-room{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}#room-panel .delete-room .hint{font-size:12px;line-height:1.4}button.danger{color:#c92a2a;border-color:#ffa8a8;background:#fff5f5;white-space:nowrap}button.danger:hover{background:#ffe3e3}#drawings-tip{position:absolute;top:56px;left:50%;transform:translate(-50%);z-index:6;display:flex;gap:10px;align-items:center;padding:8px 10px 8px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 6px 20px #0000001f;font-size:14px;white-space:nowrap}#drawings-tip [data-act=close]{border:none;background:none;font-size:18px;color:var(--muted);padding:0 4px}#drawings-tip button.primary{border:none;border-radius:7px;background:var(--accent);color:#fff;padding:5px 12px}#admin-form{display:flex;gap:8px;margin:16px 0 8px}#admin-form input{flex:1;min-width:0;padding:9px 12px;border:1px solid var(--line);border-radius:8px;font:inherit}#admin-page .primary{border:none;border-radius:8px;background:var(--accent);color:#fff;padding:9px 18px;text-decoration:none;display:inline-block}#admin-page .err{color:#c92a2a}#lessons{list-style:none;padding:0;margin:16px 0;display:flex;flex-direction:column;gap:8px}#lessons li{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}#lessons li a{color:inherit;text-decoration:none}#lessons li a:hover b{color:var(--accent)}#lessons li span{font-size:13px;color:var(--muted)}
