:root{--cream: #f4efe6;--cream-deep: #ebe3d4;--frame: #5c3d2e;--ink: #2a2218;--muted: #7a6a58;--light-sq: #f3ecdf;--dark-sq: #cbb79a;--accent: #2d6a4f;--video-width: 320px;--tray-cell: 56px;font-family:Nunito,system-ui,sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}html,body{margin:0;height:100%;background:radial-gradient(ellipse at top,color-mix(in srgb,var(--cream) 88%,white) 0%,transparent 55%),linear-gradient(160deg,var(--cream),color-mix(in srgb,var(--cream) 82%,var(--frame)));overflow:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none}html.theme-midnight,html.theme-midnight body{color:#e8ecf2;--ink: #e8ecf2;--muted: #9aa3b2;--cream-deep: #222833;--accent: #6bbf8a}button,input{font:inherit}#app{height:100%;min-height:100dvh}.home{min-height:100%;display:grid;place-items:center;padding:2rem}.home-card{width:min(420px,100%);background:#fffcf6eb;border:2px solid rgba(92,61,46,.15);border-radius:18px;padding:2rem 1.75rem;box-shadow:0 18px 40px #5c3d2e14}.brand{font-weight:800;font-size:1.85rem;letter-spacing:-.02em;margin:0 0 .25rem}.tagline{margin:0 0 1.5rem;color:var(--muted);font-weight:500}.home label{display:block;font-size:.85rem;font-weight:700;margin-bottom:.35rem;color:var(--muted)}.home input{width:100%;padding:.75rem .9rem;border-radius:12px;border:2px solid rgba(92,61,46,.18);background:#fff;margin-bottom:1rem}.home-actions{display:flex;flex-direction:column;gap:.65rem}.home-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.25rem}.home-top .tagline{margin-bottom:1.25rem}.login-form{display:grid}.login-error{margin:-.35rem 0 .85rem;color:#a33b2b;font-size:.9rem;font-weight:700}.login-hint{margin:1.1rem 0 0;font-size:.82rem;color:var(--muted);font-weight:600;line-height:1.35}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:12px;padding:.8rem 1rem;font-weight:800;cursor:pointer;background:var(--accent);color:#fff}.btn:disabled{opacity:.65;cursor:wait}.btn.ghost{background:transparent;color:var(--muted);border:2px solid rgba(92,61,46,.18);padding:.45rem .75rem;font-size:.85rem;flex-shrink:0}.btn.ghost:hover{color:var(--ink);border-color:#5c3d2e59}.btn.secondary{background:transparent;color:var(--ink);border:2px solid rgba(92,61,46,.25)}.btn.danger{background:#b42318}.btn:active{transform:scale(.98)}.join-row{display:flex;gap:.5rem}.join-row input{margin:0;flex:1}.room{--tray-col: 200px;position:relative;height:100%;min-height:100dvh;display:grid;grid-template-columns:var(--video-width) minmax(0,1fr) var(--tray-col);grid-template-rows:1fr;gap:.75rem;padding:.75rem}.reaction-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:45;pointer-events:none;overflow:hidden}.reaction-burst{position:absolute;bottom:-8%;left:var(--x, 50%);width:var(--size, 40px);height:var(--size, 40px);margin-left:calc(var(--size, 40px) / -2);opacity:0;will-change:transform,opacity;animation:reaction-fly var(--dur, 3s) cubic-bezier(.2,.7,.2,1) forwards;animation-delay:var(--delay, 0s)}.reaction-burst .sticker-mark,.reaction-burst img{width:100%;height:100%;display:block;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(0,0,0,.22))}@keyframes reaction-fly{0%{transform:translate3d(0,12%,0) scale(.55) rotate(0);opacity:0}12%{opacity:1}to{transform:translate3d(var(--drift, 0),-118vh,0) scale(1) rotate(var(--rot, 0deg));opacity:0}}.room.student{--student-side: minmax(12.5rem, 17.5rem);--student-pad-x: clamp(1rem, 2.5vw, 2rem);--student-pad-y: clamp(.55rem, 1.2vh, 1rem);grid-template-columns:minmax(0,1fr) var(--student-side);grid-template-rows:auto minmax(0,1fr);gap:.55rem;padding:max(var(--student-pad-y),env(safe-area-inset-top)) max(var(--student-pad-x),env(safe-area-inset-right)) max(var(--student-pad-y),env(safe-area-inset-bottom)) max(var(--student-pad-x),env(safe-area-inset-left));overflow:hidden}.room-brand{display:flex;align-items:center;gap:.45rem;min-width:0}.coach-home-btn{flex-shrink:0;display:grid;place-items:center;width:2rem;height:2rem;border-radius:10px;color:var(--ink);background:color-mix(in srgb,white 55%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 12%,transparent);text-decoration:none}.coach-home-btn:hover{background:color-mix(in srgb,white 80%,transparent)}.coach-home-btn[hidden]{display:none!important}.room-title{font-weight:800;font-size:1.05rem;width:max-content;flex-shrink:0;line-height:1.2}.class-info{width:min(100%,28rem);text-align:center;padding:.35rem .75rem .15rem;line-height:1.35}.class-info[hidden]{display:none!important}.class-topic{font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 62%,transparent)}.class-greeting{margin-top:.15rem;font-size:1.05rem;font-weight:800}.class-greeting2{margin-top:.1rem;font-size:.88rem;font-weight:600;color:color-mix(in srgb,var(--ink) 78%,transparent)}.class-settings-form{display:flex;flex-direction:column;gap:.85rem}#class-look-form{margin-top:.15rem}.class-field{display:flex;flex-direction:column;gap:.35rem}.class-field-label{font-size:.78rem;font-weight:800;color:color-mix(in srgb,var(--ink) 72%,transparent)}.class-field input,.class-field select{width:100%;box-sizing:border-box;padding:.55rem .65rem;border-radius:10px;border:2px solid color-mix(in srgb,var(--ink) 14%,transparent);background:color-mix(in srgb,white 70%,transparent);color:var(--ink);font:inherit;font-size:.92rem}.class-field input:focus,.class-field select:focus{outline:none;border-color:color-mix(in srgb,var(--frame) 55%,transparent)}html.theme-midnight .class-field input,html.theme-midnight .class-field select{background:color-mix(in srgb,var(--cream) 8%,#1a1a22);border-color:color-mix(in srgb,white 16%,transparent)}.class-tz{font-weight:500;color:var(--muted);font-size:.85em}.class-field-hint{margin:0;font-size:.78rem;font-weight:600;color:var(--muted)}.room.student .class-info{padding-top:.15rem}.student-preview-enter[hidden]{display:none!important}.people-panel .student-preview-enter{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.55rem .75rem;font-size:.88rem;font-weight:700}.class-session{display:flex;flex-direction:column;gap:.55rem;padding:.55rem .65rem;margin-bottom:.45rem;border-radius:10px;background:color-mix(in srgb,white 55%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 10%,transparent)}.class-session-head{display:flex;flex-direction:column;gap:.12rem;min-width:0}.class-session-label{font-size:.78rem;font-weight:800;color:color-mix(in srgb,var(--ink) 72%,transparent)}.class-session-timer{font-size:1.35rem;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:.02em;line-height:1.1}.class-session-timer[hidden]{display:none!important}.class-session-actions{display:flex;flex-wrap:wrap;gap:.35rem}.class-session-actions .btn{flex:1 1 auto;min-width:0;font-size:.78rem;padding:.42rem .55rem}.class-session-actions .btn.active{border-color:var(--accent);color:var(--accent)}.video-panel.video-idle .video-stage video{visibility:hidden}.video-panel.video-idle .video-empty{display:grid}.video-panel.video-idle .av-btn,.video-panel.video-solo .av-btn{opacity:1;pointer-events:auto}.people-panel .student-preview-enter svg{flex-shrink:0}.student-preview-enter.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.student-preview-exit{position:fixed;top:max(.45rem,env(safe-area-inset-top));left:max(.45rem,env(safe-area-inset-left));z-index:60;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:999px;padding:.5rem .9rem;font:inherit;font-weight:800;font-size:.82rem;cursor:pointer;background:#1c1814;color:#f4efe6;box-shadow:0 8px 20px #00000047}.student-preview-exit:active{transform:scale(.98)}.student-preview-exit[hidden]{display:none!important}.status-dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;background:#c0392b;margin-right:.35rem;vertical-align:middle}.status-dot.open{background:#27ae60}.left-slot{position:relative;display:flex;flex-direction:column;gap:.55rem;min-width:0;min-height:0;align-self:stretch;overflow:hidden}.left-slot .room-brand,.left-slot .video-slot{flex-shrink:0}.left-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overflow-anchor:none;display:flex;flex-direction:column;gap:.55rem}.board-column{min-width:0;min-height:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding-inline:.85rem;container-type:size}.room.student .left-slot,.room.student .left-scroll{display:contents}.room.student .room-brand,.room.student .room-title,.room.student .student-preview-enter,.room.student .tools,.room.student .board-actions,.room.student #people-mount,.room.student #chapters-mount,.room.student #moves-mount,.room.student #solution-mount,.room.student #history-mount,.room.student #analysis-mount,.room.student #notes-panel,.room.student .bot-banner,.room.student .tray-sticker-add{display:none!important}.room.student .board-column{grid-column:1;grid-row:1 / -1;min-width:0;min-height:0;width:100%;height:100%;gap:0;justify-content:center;align-items:center;padding-inline:0}.room.student .board-slot{width:100%;height:auto;max-height:100%;display:flex;align-items:center;justify-content:center}.room.student .board-wrap,.room.student .board-wrap.coords-outside{--bot-stack: 0px;max-width:100%}.room.student .board-wrap.hide-stickers:not(:has(.bot-banner:not([hidden]))){--stack-gap: 0px}.room.student .board-wrap:has(.puzzle-chrome:not([hidden])){--puzzle-stack: calc(2.75rem + .55rem + var(--stack-gap, .4rem));--stack-gap: .4rem}.room.student .video-slot{grid-column:2;grid-row:1;position:relative;left:auto;top:auto;z-index:auto;width:100%;min-width:0;min-height:0;align-self:start}.room.student .video-panel{width:100%!important;max-height:none}.video-slot{width:100%;flex-shrink:0}.board-slot{min-width:0;min-height:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.side-slot{position:relative;display:flex;flex-direction:column;justify-content:flex-start;gap:.75rem;min-width:0;overflow-x:hidden;overflow-y:auto;scroll-padding-block:.5rem;padding-block:.15rem}.side-slot:before,.side-slot:after{content:"";flex:1 1 0;min-height:0;pointer-events:none}.side-resize{position:absolute;left:0;top:0;bottom:0;width:12px;transform:translate(-50%);cursor:col-resize;z-index:6;touch-action:none}.left-resize{position:absolute;right:0;top:0;bottom:0;width:12px;transform:translate(50%);cursor:col-resize;z-index:6;touch-action:none}.side-resize:after,.left-resize:after{content:"";position:absolute;left:50%;top:12%;bottom:12%;width:3px;transform:translate(-50%);border-radius:99px;background:color-mix(in srgb,var(--ink) 28%,transparent);opacity:0;transition:opacity .12s ease}.side-resize:hover:after,.side-resize:focus-visible:after,.left-resize:hover:after,.left-resize:focus-visible:after,.room.resizing-tray .side-resize:after,.room.resizing-left .left-resize:after{opacity:1}.room.resizing-tray,.room.resizing-tray *,.room.resizing-left,.room.resizing-left *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.room.student .side-resize,.room.student .left-resize{display:none}.room.student .side-slot{grid-column:2;grid-row:2;flex-direction:column;flex-wrap:nowrap;align-items:stretch;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto}.room.student .tray{flex:1 1 auto;min-width:0}.room.student .tray-stickers{max-height:none}@media(max-width:700px){.room.student{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:.2rem;padding:env(safe-area-inset-top) 0 max(.18rem,env(safe-area-inset-bottom))}.room.student .video-slot{grid-column:1;grid-row:1;width:100%;height:100%;min-height:0;display:flex;align-self:stretch;padding:.55rem .55rem 0;box-sizing:border-box}.room.student .video-panel{flex:1;display:flex;flex-direction:column;height:100%;min-height:0;border-radius:14px;border:2px solid color-mix(in srgb,var(--frame) 14%,transparent)}.room.student .video-stage{flex:1;min-height:0;aspect-ratio:auto}.room.student .board-column{grid-column:1;grid-row:2;width:100%;height:auto;container-type:normal;padding:.18rem 0}.room.student .board-wrap,.room.student .board-wrap.coords-outside{width:100%;gap:.22rem}.room.student .board-frame{border-radius:0;padding:6px}.room.student .side-slot{display:none!important}.room.student .reward-rail{padding:0}}.video-panel{position:relative;width:100%;background:#14110e;border-radius:14px;overflow:hidden;border:2px solid color-mix(in srgb,var(--frame) 14%,transparent);max-height:min(70vh,520px)}.video-stage{position:relative;width:100%;aspect-ratio:16 / 9}.video-stage video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;background:#111;cursor:default}.cam-off .video-local{filter:grayscale(.4) brightness(.35)}.video-empty{display:none;position:absolute;top:0;right:0;bottom:0;left:0;place-items:center;padding:1.1rem;text-align:center;font-weight:800;font-size:.92rem;color:#ffffffc7;z-index:3;pointer-events:none}.video-stage .video-local{width:30%!important;height:auto!important;aspect-ratio:16 / 9;inset:auto .5rem .5rem auto!important;border-radius:10px;border:2px solid rgba(255,255,255,.55);z-index:2;cursor:pointer}.video-panel.video-solo .video-local{top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;border:none;border-radius:0;z-index:1;cursor:default}.video-panel.video-solo .video-remote{visibility:hidden;pointer-events:none}.swapped .video-remote{width:30%!important;height:auto!important;aspect-ratio:16 / 9;inset:auto .5rem .5rem auto!important;border-radius:10px;border:2px solid rgba(255,255,255,.55);z-index:2;cursor:pointer}.swapped .video-local{top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;border:none;border-radius:0;z-index:1;cursor:default}.room.video-max .board-column{align-items:stretch;justify-content:stretch}.room.video-max .board-column .video-panel{flex:1;width:100%;max-height:none;height:100%;min-height:0;align-self:stretch}.room.video-max .board-column .video-stage{aspect-ratio:auto;height:100%;min-height:12rem}.room.video-max .video-slot{display:flex;align-items:flex-start;justify-content:center;cursor:pointer}.room.video-max .video-slot .board-slot{width:100%;max-width:100%}.room.video-max .video-slot .board-wrap{--rail-cols: 0;--rail-gap: 0px;--stack-gap: 0px;--coord-extra: 0px;max-width:100%}.room.video-max .video-slot .reward-rail,.room.video-max .video-slot .board-head,.room.video-max .video-slot .bot-banner,.room.video-max .video-slot .puzzle-chrome,.room.video-max .video-slot .coord-gutter{display:none!important}.room.video-max .video-slot .board-row{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;gap:0!important}.room.video-max .video-slot .coord{display:none!important}.room.video-max .video-slot .board-frame{grid-column:1!important;grid-row:1!important;padding:4px;border-radius:7px;box-shadow:0 6px 16px #2a221824,inset 0 0 0 1px #ffffff14}.room.video-max .board-column .av-btn{opacity:1;pointer-events:auto}.video-controls{position:absolute;left:.45rem;bottom:.45rem;height:auto;display:flex;align-items:center;justify-content:flex-start;gap:.4rem;padding:0;background:transparent;pointer-events:none;z-index:4}.av-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;border:none;border-radius:11px;width:42px;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#14100cb8;color:#fff;cursor:pointer;opacity:0;pointer-events:none;box-shadow:0 2px 10px #00000059;transition:opacity .14s ease,background .14s ease}.video-panel:hover .av-btn,.video-panel:focus-within .av-btn,.av-btn.off,.av-btn:focus-visible{opacity:1;pointer-events:auto}.av-btn:hover{background:#14100ce0}.av-btn.off{background:#c0392b;color:#fff}.av-svg{width:20px;height:20px;display:block}.av-slash{position:absolute;left:50%;top:50%;width:22px;height:22px;transform:translate(-50%,-50%);pointer-events:none;display:none}.av-btn .av-slash path{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round}.av-btn.off .av-slash{display:block}.av-slash-back{stroke:#7a1c14;stroke-width:4.4}.board-wrap{--board-files: 8;--board-ranks: 8;--rail-cols: 1;--rail-gap: 10px;--stack-gap: .4rem;--bot-stack: 0px;--puzzle-stack: 0px;--coord-extra: 0px;width:min(100%,calc((100cqh - var(--stack-gap) - var(--bot-stack) - var(--puzzle-stack) - var(--coord-extra)) * (var(--board-files) + var(--rail-cols)) / var(--board-ranks) + var(--coord-extra) + var(--rail-gap)));max-width:100%;touch-action:none;position:relative;display:flex;flex-direction:column;gap:var(--stack-gap)}.board-wrap:has(.bot-banner:not([hidden])){--bot-stack: calc(3.1rem + var(--stack-gap))}.board-wrap:has(.game-banner:not([hidden])){--bot-stack: calc(3.1rem + var(--stack-gap))}.board-wrap:has(.puzzle-chrome:not([hidden])){--puzzle-stack: calc(2.75rem + .55rem + var(--stack-gap))}.board-wrap.hide-stickers{--rail-cols: 1;--rail-gap: 10px}.board-wrap.hide-stickers:not(:has(.clock-body.is-visible)){--rail-cols: 0;--rail-gap: 0px}.board-wrap.hide-stickers:not(:has(.clock-body.is-visible)) .reward-rail{display:none!important}.board-wrap.hide-stickers:not(:has(.clock-body.is-visible)) .board-frame,.board-wrap.hide-stickers:not(:has(.clock-body.is-visible)) .board-head{grid-column:1}.board-wrap.hide-stickers.coords-outside:not(:has(.clock-body.is-visible)) .coord-gutter-ranks{grid-column:1}.board-wrap.hide-stickers.coords-outside:not(:has(.clock-body.is-visible)) .board-frame,.board-wrap.hide-stickers.coords-outside:not(:has(.clock-body.is-visible)) .board-head{grid-column:2}.board-wrap.hide-stickers .reward-slots,.board-wrap.hide-board-stickers .piece.sticker{display:none!important}.board-wrap.hide-stickers:not(:has(.bot-banner:not([hidden]))){--stack-gap: 0px}.board-wrap.hide-stickers:has(.puzzle-chrome:not([hidden])){--stack-gap: .4rem}.board-head{grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:var(--stack-gap, .4rem);min-width:0;width:100%;align-self:end;margin-bottom:.55rem}.board-head:not(:has(.bot-banner:not([hidden]),.puzzle-chrome:not([hidden]),.game-banner:not([hidden]))){display:none}.puzzle-chrome{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem .75rem;min-width:0;width:100%;flex-shrink:0}.puzzle-chrome[hidden]{display:none}.puzzle-hearts{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.55rem;min-height:2.55rem;margin-left:auto;padding:0;flex-shrink:0}.puzzle-hearts[hidden]{display:none}.puzzle-heart{width:2.55rem;height:2.55rem;min-width:2.55rem;min-height:2.55rem;display:grid;place-items:center;color:#d64545;flex-shrink:0}.puzzle-heart.empty{color:#d4d0c8;opacity:1}.puzzle-heart-mark{width:100%;height:100%;display:block}.puzzle-tabs{display:flex;flex-wrap:wrap;gap:.55rem;min-width:0;flex:1 1 auto}.puzzle-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:3px solid transparent;margin:0;box-sizing:border-box;width:2.55rem;height:2.55rem;min-width:2.55rem;min-height:2.55rem;padding:0;border-radius:50%;background:#d4d0c8;color:transparent;font-size:0;line-height:0;cursor:pointer;flex-shrink:0;display:grid;place-items:center;overflow:hidden}.puzzle-tab.active{border-color:color-mix(in srgb,var(--frame) 70%,#5a564e);background:#d4d0c8}.puzzle-tab.solved,.puzzle-tab.failed{background:transparent;padding:0}.puzzle-tab.solved.active,.puzzle-tab.failed.active{border-color:color-mix(in srgb,var(--frame) 70%,#5a564e);background:transparent}.puzzle-tab .sticker-mark{width:100%;height:100%;display:block;object-fit:contain}.board-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--board-track, 8fr));grid-template-rows:auto auto;column-gap:var(--rail-gap);row-gap:var(--stack-gap);align-items:stretch;min-width:0;width:100%}.board-wrap.hide-stickers .board-row{grid-template-columns:minmax(0,1fr) minmax(0,var(--board-track, 8fr))}.board-wrap.hide-stickers:not(:has(.clock-body.is-visible)) .board-row{grid-template-columns:minmax(0,var(--board-track, 8fr))}.board-wrap.coords-outside{--coord-extra: calc(var(--coord-gutter, 1.35rem) + .2rem)}.board-wrap.coords-outside .board-row{grid-template-columns:minmax(0,1fr) var(--coord-gutter, 1.35rem) minmax(0,var(--board-track, 8fr));column-gap:.2rem;row-gap:var(--stack-gap)}.board-wrap.hide-stickers.coords-outside .board-row{grid-template-columns:minmax(0,1fr) var(--coord-gutter, 1.35rem) minmax(0,var(--board-track, 8fr))}.board-wrap.hide-stickers.coords-outside:not(:has(.clock-body.is-visible)) .board-row{grid-template-columns:var(--coord-gutter, 1.35rem) minmax(0,var(--board-track, 8fr))}.board-wrap.coords-outside .board-head{grid-column:3}.reward-rail{grid-column:1;grid-row:2}.board-wrap.coords-outside .coord-gutter-ranks{grid-column:2;grid-row:2}.board-wrap.coords-outside .board-frame{grid-column:3}.coord-gutter{display:none;pointer-events:none}.board-wrap.coords-outside .coord-gutter{display:flex}.coord-gutter-ranks{flex-direction:column;justify-content:space-around;align-items:center;padding:10px 0;min-width:0}.coord-gutter-files{justify-content:space-around;align-items:center;padding:0 10px;margin-left:auto;width:calc(100% * var(--board-files) / (var(--board-files) + var(--rail-cols)));box-sizing:border-box}.board-wrap.hide-stickers .coord-gutter-files{width:100%;margin-left:0}.board-wrap.coords-outside .coord-gutter-files{width:calc((100% - var(--coord-gutter, 1.35rem) - .2rem) * var(--board-files) / (var(--board-files) + var(--rail-cols)))}.board-wrap.hide-stickers.coords-outside .coord-gutter-files{width:calc(100% - var(--coord-gutter, 1.35rem) - .2rem)}.coord-gutter .coord{position:static;font-size:var(--coord-size, .78rem);color:var(--muted)}.board-wrap.coords-outside .coord-rank,.board-wrap.coords-outside .coord-file,.board-wrap.coords-hidden .coord{display:none}.board-frame{grid-column:2;grid-row:2;position:relative;width:100%;aspect-ratio:var(--board-files) / var(--board-ranks);padding:10px;background:var(--frame);border-radius:10px;box-shadow:0 12px 28px #2a22182e,inset 0 0 0 2px #ffffff14}.reward-rail{background:transparent;padding:0;box-sizing:border-box;min-width:0;min-height:0;overflow:hidden;align-self:stretch;display:flex;align-items:stretch;justify-content:center}.reward-column,.reward-column.clock-body{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;align-items:stretch;justify-items:stretch;gap:6px;height:100%;max-height:100%;width:100%;max-width:100%;min-width:0;padding:0}.reward-column.clock-body:not(.is-visible){grid-template-rows:minmax(0,1fr);gap:0}.reward-column.clock-body:not(.is-visible) .reward-slots{grid-row:1}.reward-column.clock-body:not(.is-visible)>.clock-face{display:none!important}.reward-column>.clock-face[data-side=black]{grid-row:1;grid-column:1}.reward-slots{grid-row:2;grid-column:1;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(8,minmax(0,1fr));gap:0;min-height:0;height:100%;width:100%;max-width:100%;justify-self:stretch;margin:0}.reward-column>.clock-face[data-side=white],.reward-column>.clock-face[data-side=simple]{grid-row:3;grid-column:1}.reward-column.is-chess.orient-black>.clock-face[data-side=black]{grid-row:3}.reward-column.is-chess.orient-black>.clock-face[data-side=white]{grid-row:1}.reward-column>.clock-face{width:100%;box-sizing:border-box;min-height:0;height:auto;padding:.42rem .1rem;border-radius:6px;border-width:1px}.clock-interactive>.clock-face{cursor:pointer}.room.student .clock-interactive>.clock-face{cursor:default}.reward-column>.clock-face .led-digit{width:.82rem;height:1.52rem}.reward-column>.clock-face .led-colon{width:.3rem;height:1.52rem}.reward-slot{position:relative;min-width:0;min-height:0;overflow:hidden;border-radius:3px;background:color-mix(in srgb,white 22%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 7%,transparent)}.piece.on-rail{position:absolute;top:0;right:0;bottom:0;left:0;left:0!important;top:0!important;width:100%!important;height:100%!important;z-index:2}.board-wrap.placing .reward-slot{cursor:crosshair;background:color-mix(in srgb,white 32%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 12%,transparent)}.board{display:grid;grid-template-columns:repeat(var(--board-files),1fr);grid-template-rows:repeat(var(--board-ranks),1fr);width:100%;height:100%;border-radius:4px;overflow:hidden;background:var(--light-sq)}.square{position:relative}.square.light{background:var(--light-sq)}.square.dark{background:var(--dark-sq)}html.theme-grid .square.light,html.theme-grid .square.dark{background-color:var(--light-sq);background-image:linear-gradient(to left,var(--grid-line, #8a7d6e) 1px,transparent 1px),linear-gradient(to top,var(--grid-line, #8a7d6e) 1px,transparent 1px);box-shadow:none}html.theme-grey .board-frame{box-shadow:0 12px 28px #00000047,inset 0 0 0 1px #ffffff0a}html.theme-grey .square.light .coord{color:#1616166b}html.theme-grey .square.dark .coord{color:#ffffff9e}html.theme-grey .coord-gutter .coord{color:#161616b3}html.theme-patterned .square.light,html.theme-patterned .square.dark{background-repeat:repeat;background-size:56px 56px}html[data-theme=grass] .square.light{background-color:var(--light-sq);background-image:url(/boards/grass-light.svg?v=1)}html[data-theme=grass] .square.dark{background-color:var(--dark-sq);background-image:url(/boards/grass-dark.svg?v=1)}html[data-theme=lava] .square.light{background-color:var(--light-sq);background-image:url(/boards/lava-light.svg?v=2)}html[data-theme=lava] .square.dark{background-color:var(--dark-sq);background-image:url(/boards/lava-dark.svg?v=1)}html[data-theme=ocean] .square.light{background-color:var(--light-sq);background-image:url(/boards/ocean-light.svg?v=1)}html[data-theme=ocean] .square.dark{background-color:var(--dark-sq);background-image:url(/boards/ocean-dark.svg?v=1)}html[data-theme=moon] .square.light{background-color:var(--light-sq);background-image:url(/boards/moon-light.svg?v=1)}html[data-theme=moon] .square.dark{background-color:var(--dark-sq);background-image:url(/boards/moon-dark.svg?v=1)}html[data-theme=grass] .square.dark .coord,html[data-theme=lava] .square.dark .coord,html[data-theme=ocean] .square.dark .coord,html[data-theme=moon] .square.dark .coord{color:#ffffff9e}html[data-theme=lava] .coord-gutter .coord,html[data-theme=ocean] .coord-gutter .coord{color:#ffecdcc7}html[data-theme=lava] .board-frame{box-shadow:0 12px 28px #500c0059,inset 0 0 0 1px #ff8c282e}.coord{position:absolute;font-size:var(--coord-size, .8rem);font-weight:800;line-height:1;color:#2a221880;pointer-events:none;z-index:1}.coord-rank{top:4px;left:5px}.coord-file{right:5px;bottom:3px}.pieces-layer,.draw-layer{position:absolute;top:10px;right:10px;bottom:10px;left:10px;width:calc(100% - 20px);height:calc(100% - 20px);pointer-events:none}.draw-layer{z-index:1}.pieces-layer{z-index:2;pointer-events:none}.piece{position:absolute;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:0;margin:0;cursor:grab;pointer-events:auto;touch-action:none;z-index:2;will-change:left,top;contain:layout style}.square.hint:before,.square.hint-capture:before{content:"";position:absolute;pointer-events:none;z-index:1}.square.hint:before{width:22%;height:22%;left:39%;top:39%;border-radius:50%;background:#2a221852}.square.hint-capture:before{right:8%;bottom:8%;width:auto;height:auto;left:8%;top:8%;border-radius:50%;background:transparent;border:4px solid rgba(42,34,24,.34)}.promo-pop{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;background:#18141066;z-index:12;border-radius:10px}.promo-pop[hidden]{display:none}.promo-label{margin:0;color:#fff;font-weight:800}.promo-choices{display:flex;gap:.4rem}.promo-piece{width:56px;height:56px;border:none;border-radius:12px;background:#fff;padding:.2rem;cursor:pointer}.promo-piece .piece-svg,.promo-piece .piece-tint{width:100%;height:100%;display:block}.square.chosen:after,.reward-slot.chosen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#3b9bff;opacity:.52;pointer-events:none}.reward-slot.chosen:after{border-radius:inherit;z-index:1}.piece.selected{z-index:3}.piece.sticker{z-index:6;overflow:visible}.piece.sticker .sticker-mark{width:70%;height:70%;margin:15%;display:block;overflow:visible;object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 3px rgba(0,0,0,.28))}.piece.sticker.on-piece{pointer-events:none;z-index:7}.piece.sticker.on-piece .sticker-mark{pointer-events:auto;cursor:pointer;position:absolute;width:38%;height:38%;margin:0;right:2%;top:2%}.piece.sticker.on-piece.sticker-front{pointer-events:none;z-index:9}.piece.sticker.on-piece.sticker-front .sticker-mark{pointer-events:auto;cursor:grab;position:absolute;bottom:0;left:0;width:70%;height:70%;margin:15%;right:auto;top:auto}.piece.piece-badge{z-index:8;pointer-events:none}.piece.piece-badge .piece-svg,.piece.piece-badge .piece-tint{pointer-events:auto;cursor:pointer;position:absolute;width:38%;height:38%;margin:0;right:2%;top:2%;z-index:10;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.piece.sticker.selected{z-index:8}.piece.dragging{opacity:0;pointer-events:none}.piece.locked{pointer-events:none}.piece.flying{z-index:8;pointer-events:none}.piece-svg{width:100%;height:100%;margin:0;display:block;object-fit:contain;pointer-events:none}.piece-tint{position:relative;display:block;width:100%;height:100%;isolation:isolate}.piece-tint img{width:100%;height:100%;margin:0;display:block;object-fit:contain;pointer-events:none}.piece-tint:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--piece-tint);mix-blend-mode:multiply;pointer-events:none;-webkit-mask-image:var(--piece-mask);mask-image:var(--piece-mask);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.board-wrap.coords-hidden .square .coord{display:none}.tray-label{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:0;font:inherit;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0;text-align:left;display:block}.room.student .tray-hide{display:none}.tray-head{display:flex;align-items:center;justify-content:space-between;gap:.25rem;margin:0 0 .4rem .15rem}.tray-hide{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;flex-shrink:0}.tray-hide:hover,.tray-hide:focus-visible{color:var(--ink);background:color-mix(in srgb,var(--cream-deep) 65%,white)}.tray-hide svg{display:block}.tray-block+.tray-block{margin-top:0}.tray-block.student-hidden{display:none!important}.room:not(.student) .tray-block.hidden-from-students .tray-hide{color:var(--ink)}.piece-pop{animation:pop-in .12s ease-out}@keyframes pop-in{0%{transform:scale(.72);opacity:.4}to{transform:scale(1);opacity:1}}.drag-ghost{position:fixed;left:0;top:0;z-index:10000;margin:0;padding:0;pointer-events:none;will-change:transform;transform:translate3d(-9999px,-9999px,0);filter:drop-shadow(0 8px 10px rgba(0,0,0,.28));transition:opacity .12s ease,filter .12s ease}.drag-ghost.will-remove{opacity:.35;filter:drop-shadow(0 4px 6px rgba(0,0,0,.2)) grayscale(.4)}.drag-ghost img,.drag-ghost .piece-svg,.drag-ghost .piece-tint,.drag-ghost .sticker-mark{width:100%;height:100%;margin:0;display:block;object-fit:contain;pointer-events:none}.drag-ghost-sticker .sticker-mark,.drag-ghost:has(.sticker-mark):not(:has(.piece-svg)) .sticker-mark{width:70%;height:70%;margin:15%}.ghost-sticker{position:absolute;width:38%;height:38%;right:2%;top:2%;pointer-events:none}.ghost-sticker .sticker-mark{width:100%;height:100%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.ghost-piece-badge{position:absolute;width:38%;height:38%;right:2%;top:2%;pointer-events:none}.ghost-piece-badge .piece-svg,.ghost-piece-badge .piece-tint{width:100%;height:100%;margin:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}body.is-dragging{cursor:grabbing!important}body.is-dragging *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}.board-wrap.placing .square,.board-wrap.placing .reward-slot,.board-wrap.brushing .square,.board-wrap.brushing .piece,.board-wrap.penciling .square,.board-wrap.penciling .piece{cursor:crosshair}.clock-faces{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.clock-face{display:none;align-items:center;justify-content:center;width:fit-content;min-height:2.75rem;padding:.45rem .85rem;border-radius:10px;background:#d8d8d8;border:2px solid #c4c4c4;box-shadow:none}.clock-face[data-side=simple]{display:flex}.clock-body.is-chess .clock-face[data-side=simple]{display:none}.clock-body.is-chess .clock-face[data-side=white],.clock-body.is-chess .clock-face[data-side=black]{display:flex}.clock-face.active{border-color:#8a8a8a;background:#e4e4e4;box-shadow:0 0 0 1px #0000000f}.clock-face.flagged{border-color:#9a9a9a;opacity:.72}.clock-time{display:flex;align-items:center;justify-content:center;line-height:0}.led-readout{display:inline-flex;align-items:center;gap:.12rem;filter:none}.led-digit{width:1.05rem;height:1.9rem;overflow:visible}.led-colon{width:.42rem;height:1.9rem;fill:#3a3a3a}.led-seg{fill:#c8c8c8}.led-seg.on{fill:#3a3a3a}.clock-face.active .led-seg.on,.clock-face.active .led-colon{fill:#2e2e2e}.clock-run{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.clock-icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;place-items:center;height:40px;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);background:color-mix(in srgb,var(--cream) 55%,white);border-radius:10px;color:var(--ink);cursor:pointer}.clock-icon-btn:hover{background:color-mix(in srgb,var(--cream-deep) 45%,white)}.clock-icon-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--ink) 35%,transparent);outline-offset:2px}.clock-icon-btn svg{display:block}.timer-tools{gap:.55rem}.clock-settings-sheet .clock-run{margin:0 0 .75rem}.clock-settings-sheet .clock-settings-body{padding:0;gap:.55rem}.clock-settings-body{display:flex;flex-direction:column;gap:.7rem;padding:.2rem 0 .4rem}.clock-kinds,.clock-presets,.clock-incs{display:flex;gap:.35rem}.clock-kind,.clock-preset,.clock-inc{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;min-width:0;height:40px;padding:0 .25rem;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);background:color-mix(in srgb,var(--cream) 55%,white);border-radius:10px;font:inherit;font-size:.78rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--ink);cursor:pointer}.clock-kind-chess{display:none}.clock-settings-body.is-strict .clock-kind-chess,.tray.is-strict .clock-kind-chess{display:block}.clock-kind.active,.clock-preset.active,.clock-inc.active{background:color-mix(in srgb,var(--ink) 12%,white);border-color:color-mix(in srgb,var(--ink) 28%,transparent)}.clock-presets{display:none}.clock-settings-body.is-down .clock-presets,.clock-settings-body.is-chess .clock-presets{display:flex}.clock-incs{display:none}.clock-settings-body.is-chess .clock-incs{display:flex}.clock-remove{margin-top:.85rem;width:100%}.clock-settings-body.is-running .clock-kinds,.clock-settings-body.is-running .clock-presets,.clock-settings-body.is-running .clock-incs{pointer-events:none;opacity:.45}.tray{background:transparent;border:none;border-radius:0;padding:0;width:100%;min-width:0;max-width:100%;overflow-x:hidden;display:flex;flex-direction:column;gap:.55rem}.tray-block[data-block=pieces],.tray-block[data-block=stickers]{background:#fffcf6e6;border:2px solid rgba(92,61,46,.14);border-radius:14px;padding:.7rem .65rem .65rem}.tray-block-tints{background:transparent;border:none;border-radius:0;padding:.1rem .15rem}.tray.disabled .tray-block[data-block=pieces],.tray.disabled .tray-block[data-block=stickers],.tray.disabled .tray-block[data-block=tints]{display:none}.tray-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;width:100%;min-width:0}.tray-stickers{grid-template-columns:repeat(4,minmax(0,1fr));gap:.2rem;margin-top:.15rem;max-height:min(42dvh,420px);overflow-x:hidden;overflow-y:auto}.tray-cell{width:100%;height:auto;aspect-ratio:1;min-width:0;border-radius:10px;border:2px solid transparent;background:transparent;padding:0;cursor:grab;touch-action:none}.tray-pieces .tray-cell .piece-svg,.tray-pieces .tray-cell .piece-tint{width:100%;height:100%;margin:0;display:block}.tray-tints{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.22rem;margin-top:0}.tray-tint{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:20px;height:20px;min-width:0;min-height:0;padding:0;border-radius:50%;border:2px solid color-mix(in srgb,var(--frame) 28%,transparent);background:var(--dot, #fff);cursor:pointer;touch-action:manipulation;box-shadow:inset 0 0 0 1px #ffffff59}.tray-tint[data-tint=white]{background:#fff}.tray-tint:hover,.tray-tint:focus-visible{border-color:var(--accent)}.tray-tint[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--cream),0 0 0 2px var(--accent)}.tray-brush,.tray-pencil{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:28px;height:28px;margin-left:.15rem;padding:0;display:grid;place-items:center;border-radius:8px;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);background:color-mix(in srgb,var(--cream) 55%,white);color:var(--ink);cursor:pointer}.tray-brush:hover,.tray-brush:focus-visible,.tray-pencil:hover,.tray-pencil:focus-visible{border-color:color-mix(in srgb,var(--ink) 28%,transparent)}.tray-brush.active,.tray-pencil.active{background:color-mix(in srgb,var(--accent) 22%,white);border-color:var(--accent);color:var(--ink)}.tray-brush svg,.tray-pencil svg{display:block}.tray-sticker .sticker-mark{width:78%;height:78%;margin:11%;display:block;object-fit:contain}.tray-cell.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent)}.tray-sticker{padding:0}.tray-sticker-add{display:grid;place-items:center;cursor:pointer;border:2px dashed color-mix(in srgb,var(--frame) 28%,transparent);background:color-mix(in srgb,var(--cream) 70%,white);color:var(--muted);font-size:1.7rem;font-weight:800;line-height:1}.tray-sticker-add:hover,.tray-sticker-add:focus-visible{border-color:var(--accent);color:var(--accent)}.tools{display:flex;flex-direction:column;flex-shrink:0;background:#fffcf6e6;border:2px solid rgba(92,61,46,.14);border-radius:14px;padding:.4rem}.tools[hidden]{display:none!important}.mode-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;padding:.18rem;border-radius:10px;background:color-mix(in srgb,var(--cream-deep) 88%,var(--frame))}.mode-row[hidden]{display:none!important}.mode-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);font-weight:800;font-size:.78rem;border-radius:8px;padding:.5rem .2rem;cursor:pointer;transition:background .12s ease,color .12s ease,box-shadow .12s ease}.mode-btn.active{background:#fff;color:var(--accent);box-shadow:0 1px 2px #2818101f}.board-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-top:.45rem}.board-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);background:color-mix(in srgb,var(--cream) 55%,white);border-radius:10px;width:44px;height:44px;padding:0;display:grid;place-items:center;cursor:pointer;color:var(--ink);flex:0 0 auto}.board-action svg{display:block}.board-action:hover,.board-action:focus-visible{border-color:var(--accent);color:var(--accent)}.board-action.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,white)}.best-move-btn{display:flex;align-items:center;justify-content:center;gap:.35rem;width:100%;color:#6c2bd9;border:2px solid color-mix(in srgb,#9b4dff 45%,transparent);background:color-mix(in srgb,#9b4dff 12%,white)}.best-move-btn.active{color:#fff;background:#9b4dff;border-color:#7c3aed}.best-move-btn.busy{opacity:.7;cursor:wait}html.theme-midnight .best-move-btn{color:#d8b4fe;background:color-mix(in srgb,#9b4dff 22%,#151a22);border-color:color-mix(in srgb,#9b4dff 50%,transparent)}html.theme-midnight .best-move-btn.active{color:#fff;background:#7c3aed}html.theme-midnight .analysis-eval,html.theme-midnight .analysis-line-eval{color:#d8b4fe}html.theme-midnight .analysis-line{background:#1c222d}html.theme-midnight .analysis-line:hover,html.theme-midnight .analysis-line:focus-visible{background:color-mix(in srgb,#9b4dff 22%,#151a22)}.people-list{font-size:.85rem;font-weight:600;color:var(--muted)}@media(max-width:900px){:root{--tray-cell: 64px;--video-width: 240px}.room:not(.student){grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.room:not(.student) .video-slot{width:var(--video-width)}.room:not(.student) .side-slot{flex-direction:row;flex-wrap:wrap;overflow-x:hidden}.room:not(.student) .side-slot:before,.room:not(.student) .side-slot:after{display:none}.room:not(.student) .side-resize,.room:not(.student) .left-resize{display:none}}@media(pointer:coarse){:root{--tray-cell: 64px}}body.coach-app{overflow:auto;-webkit-user-select:text;user-select:text}.coach{min-height:100%;max-width:52rem;margin:0 auto;padding:1.25rem 1.25rem 2.5rem}.coach-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.coach-brand .brand{margin-bottom:.15rem}.coach-brand .tagline{margin:0}.coach-nav{display:flex;gap:.4rem;margin:1.15rem 0 1.25rem}.coach-nav-link{text-decoration:none;font-weight:800;color:var(--muted);padding:.45rem .85rem;border-radius:999px;border:2px solid transparent}.coach-nav-link.on{color:var(--ink);background:color-mix(in srgb,white 70%,transparent);border-color:color-mix(in srgb,var(--ink) 12%,transparent)}.coach-lead,.coach-hint,.coach-empty,.coach-empty-inline,.coach-loading,.coach-error{color:var(--muted);font-weight:600}.coach-error{color:#a33b2b}.coach-create{display:grid;gap:.65rem;background:color-mix(in srgb,white 72%,var(--cream));border-radius:16px;padding:1rem;margin-bottom:1.1rem;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 8%,transparent)}.coach-create-title{font-weight:800}.coach-create label,.coach-card label{display:grid;gap:.3rem;font-size:.82rem;font-weight:700;color:var(--muted)}.coach-create input,.coach-create select,.coach-card input[type=datetime-local],.coach-card select{width:100%;padding:.65rem .75rem;border-radius:12px;border:2px solid color-mix(in srgb,var(--ink) 14%,transparent);background:#fff;color:var(--ink);font:inherit;font-weight:600}.coach-list{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}.coach-card{display:grid;gap:.65rem;background:color-mix(in srgb,white 78%,var(--cream));border-radius:16px;padding:1rem;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 8%,transparent)}.coach-title{font:inherit;font-size:1.15rem;font-weight:800;border:none;background:transparent;color:var(--ink);padding:.1rem 0;width:100%}.coach-when{margin:0;font-weight:700;color:var(--muted)}.coach-tz{font-weight:500;color:var(--muted);font-size:.85em}.coach-card-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.coach-card-actions .btn{width:auto;padding:.55rem .9rem}.coach-hint,.coach-empty-inline{margin:0;font-size:.82rem}.coach-mini{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.coach-mini li{display:flex;flex-wrap:wrap;gap:.4rem .75rem;align-items:center;font-weight:700}.coach-mini a{color:var(--ink);font-weight:800}html.theme-midnight .coach-create,html.theme-midnight .coach-card{background:color-mix(in srgb,var(--cream-deep) 80%,black)}html.theme-midnight .coach-create input,html.theme-midnight .coach-create select,html.theme-midnight .coach-card input[type=datetime-local],html.theme-midnight .coach-card select{background:#1c222c;color:#e8ecf2;border-color:color-mix(in srgb,white 16%,transparent)}.settings-page{min-height:100%;overflow:auto;padding:1.25rem 1.25rem 1.75rem;background:radial-gradient(ellipse at top,color-mix(in srgb,var(--cream) 90%,white),transparent 60%),var(--cream)}.settings-head h1{margin:0;font-size:1.45rem;font-weight:800}.settings-head p{margin:.35rem 0 0;color:var(--muted);font-weight:600}.settings-block{margin-top:1.35rem;background:color-mix(in srgb,var(--cream) 70%,white);border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);border-radius:16px;padding:.9rem 1rem 1rem}.settings-block h2{margin:0 0 .75rem;font-size:.95rem;font-weight:800}.look-mode-row{margin:0 0 .85rem}.look-select-label{font-size:.82rem;font-weight:700;color:var(--muted)}.look-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;box-sizing:border-box;height:2.6rem;padding:0 2.2rem 0 .85rem;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);border-radius:12px;background:color-mix(in srgb,var(--cream) 55%,white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%235c3d2e' d='M1.2 1.2 6 6l4.8-4.8L12 2.4 6 8.4 0 2.4z'/%3E%3C/svg%3E") no-repeat right .9rem center / 12px 8px;color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.look-select:focus-visible{outline:2px solid color-mix(in srgb,var(--ink) 35%,transparent);outline-offset:2px}.game-sticker-pick{display:flex;align-items:center;gap:.75rem;width:100%;box-sizing:border-box;margin:0 0 .55rem;padding:.55rem .7rem;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);border-radius:14px;background:color-mix(in srgb,var(--cream) 55%,white);color:inherit;font:inherit;text-align:left;cursor:pointer}.game-sticker-pick:hover{border-color:color-mix(in srgb,var(--frame) 32%,transparent)}.game-sticker-preview{flex:0 0 auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.game-sticker-preview .sticker-mark,.game-sticker-preview img{width:36px;height:36px}.game-sticker-meta{display:flex;flex-direction:column;gap:.1rem;min-width:0}.game-sticker-meta strong{font-size:.92rem;font-weight:800}.game-sticker-meta small{color:var(--muted);font-size:.78rem;font-weight:600}.choice-grid{display:grid;grid-template-columns:1fr;gap:.55rem}.choice-grid.compact{grid-template-columns:repeat(3,1fr)}.choice-grid.compact .choice-card{flex-direction:column;align-items:flex-start;gap:.15rem;padding:.65rem .7rem}.choice-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);background:color-mix(in srgb,var(--cream) 55%,white);border-radius:14px;padding:.7rem .8rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:800;color:inherit;text-align:left}.choice-card.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#fff}html.theme-midnight .choice-card.active{background:#1c222d}.choice-preview{display:flex;gap:.2rem;align-items:center}.choice-meta{display:flex;flex-direction:column;gap:.1rem;min-width:0}.choice-note{display:block;font-size:.72rem;font-weight:500;opacity:.65;line-height:1.2}.choice-preview img{width:34px;height:34px}.theme-swatch{width:56px;height:36px;border-radius:8px;border:3px solid var(--sw-frame);background:linear-gradient(90deg,var(--sw-light) 50%,var(--sw-dark) 50%);flex-shrink:0}.theme-swatch.lined{background-color:var(--sw-light);background-image:linear-gradient(to right,color-mix(in srgb,var(--sw-frame) 42%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--sw-frame) 42%,transparent) 1px,transparent 1px);background-size:25% 50%;background-position:-1px -1px}.theme-swatch.patterned.swatch-grass{background:url(/boards/grass-light.svg?v=1) left / 50% 100% no-repeat,url(/boards/grass-dark.svg?v=1) right / 50% 100% no-repeat}.theme-swatch.patterned.swatch-lava{background:url(/boards/lava-light.svg?v=2) left / 50% 100% no-repeat,url(/boards/lava-dark.svg?v=1) right / 50% 100% no-repeat}.theme-swatch.patterned.swatch-ocean{background:url(/boards/ocean-light.svg?v=1) left / 50% 100% no-repeat,url(/boards/ocean-dark.svg?v=1) right / 50% 100% no-repeat}.theme-swatch.patterned.swatch-moon{background:url(/boards/moon-light.svg?v=1) left / 50% 100% no-repeat,url(/boards/moon-dark.svg?v=1) right / 50% 100% no-repeat}.range-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-weight:700;padding:.75rem 0 .2rem}.range-row input[type=range]{width:min(160px,42%);accent-color:var(--accent)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-weight:700;padding:.55rem 0;border-bottom:1px solid color-mix(in srgb,var(--frame) 12%,transparent)}.toggle-row:last-of-type{border-bottom:none}.toggle-row input{width:1.15rem;height:1.15rem;accent-color:var(--accent)}.size-xy{display:flex;flex-direction:column;gap:.55rem;padding:.2rem 0 .65rem;border-bottom:1px solid color-mix(in srgb,var(--frame) 12%,transparent)}.size-axis{display:flex;align-items:center;gap:.55rem}.size-label{width:1.4rem;font-weight:800;font-size:1.05rem}.size-value{min-width:1.6rem;text-align:center;font-weight:800;font-variant-numeric:tabular-nums;font-size:1.1rem}.size-step{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:2.75rem;height:2.75rem;border:none;border-radius:12px;font-size:1.35rem;font-weight:800;line-height:1;cursor:pointer;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--ink);touch-action:manipulation}.size-step:disabled{opacity:.35;cursor:default}.size-step:not(:disabled):active{transform:scale(.96)}.settings-hint{margin:.35rem 0 0;font-size:.82rem;color:var(--muted);font-weight:600}.settings-foot{margin-top:1.25rem;display:flex;flex-direction:column;gap:.75rem}.settings-credit{margin:0;font-size:.75rem;color:var(--muted);font-weight:600}html.theme-midnight .home-card,html.theme-midnight .tray-block[data-block=pieces],html.theme-midnight .tray-block[data-block=stickers],html.theme-midnight .tools,html.theme-midnight .settings-block{background:#1c222deb;border-color:#ffffff14}html.theme-midnight .look-select{background-color:#161c26f2;border-color:#ffffff1f;color:#e8ecf2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23e8ecf2' d='M1.2 1.2 6 6l4.8-4.8L12 2.4 6 8.4 0 2.4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;background-size:12px 8px}html.theme-midnight .btn.secondary{border-color:#fff3;color:#e8ecf2}html.theme-midnight .mode-row{background:color-mix(in srgb,#151a22 70%,#2a3344)}html.theme-midnight .mode-btn.active{background:#1c222d;color:#e8ecf2;box-shadow:0 1px 2px #00000059}html.theme-midnight .home input{background:#151a22;color:#e8ecf2;border-color:#ffffff24}html.theme-midnight .coord{color:#e8ecf273}html.theme-midnight .coord-gutter .coord{color:#e8ecf2b8}.look-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;grid-column:1 / -1;grid-row:1 / -1;background:#14100c73;display:flex;align-items:flex-start;justify-content:center;padding:.75rem;overflow:auto}.confirm-overlay{z-index:50}.look-overlay[hidden]{display:none}.look-overlay.sticker-pick{z-index:55}.look-sheet{position:relative;width:min(460px,100%);max-height:calc(100dvh - 1.5rem);overflow:auto;background:var(--cream);border-radius:18px;padding:1rem 1.1rem 1.25rem;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);box-shadow:0 18px 40px #14100c2e}.look-sheet-head{display:flex;flex-wrap:nowrap;align-items:flex-start;justify-content:space-between;gap:.55rem;position:sticky;top:0;background:var(--cream);z-index:1;padding-bottom:.35rem}.look-sheet-head>div:first-child{flex:1;min-width:0}.look-sheet-head h2{margin:0;font-size:1.2rem;font-weight:800}.look-sub{margin:.2rem 0 0;color:var(--muted);font-weight:700;font-size:.82rem}.look-sheet-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.look-sheet-actions:not(:has(:not([hidden]))){display:none}.win-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;width:36px;height:36px;margin:-.2rem -.2rem 0 0;padding:0;border:none;border-radius:10px;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer;order:3}.win-close:hover,.win-close:focus-visible{color:var(--ink);background:color-mix(in srgb,var(--cream-deep) 70%,white)}.win-close svg{display:block}.confirm-sheet{width:min(380px,100%)}.confirm-msg{margin:.15rem 0 1rem;font-weight:700;font-size:.92rem;line-height:1.4}.confirm-actions{display:flex;justify-content:flex-end;gap:.45rem}html.theme-midnight .look-sheet,html.theme-midnight .look-sheet-head{background:#151a22}.side-panel{background:color-mix(in srgb,var(--cream) 70%,white);border:2px solid color-mix(in srgb,var(--frame) 14%,transparent);border-radius:14px;padding:.35rem .55rem .55rem}.side-panel>summary{font-weight:800;font-size:.85rem;cursor:pointer;list-style:none;padding:.35rem .2rem}.notes-panel{display:flex;flex-direction:column;gap:.35rem;min-height:0;flex-shrink:0}.notes-label{font-weight:800;font-size:.85rem;padding:.15rem .2rem 0}.coach-notes{width:100%;min-height:10rem;max-height:22rem;resize:vertical;box-sizing:border-box;margin:0;padding:.55rem .65rem;border-radius:10px;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);background:color-mix(in srgb,white 88%,var(--cream));color:var(--ink);font:inherit;font-size:.92rem;font-weight:600;line-height:1.4;-webkit-user-select:text;user-select:text}.coach-notes:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,var(--frame))}html.theme-midnight .coach-notes{background:#151a22;border-color:#ffffff1a}.chapters-panel>summary{display:flex;align-items:center;gap:.35rem}.chapters-summary-label{flex:1;min-width:0}.moves-panel>summary{display:flex;align-items:center;gap:.35rem}.moves-summary-label{flex:1;min-width:0}.solution-panel>summary{display:flex;align-items:center;gap:.35rem}.solution-summary-label{flex:1;min-width:0}.solution-panel[hidden]{display:none!important}.solution-item{display:inline-flex;align-items:center;gap:.1rem;padding:.15rem .28rem;border-radius:6px;line-height:1}.solution-item.done{opacity:.55}.solution-item.next{background:color-mix(in srgb,var(--accent) 18%,white)}.history-panel>summary{display:flex;align-items:center;gap:.35rem}.history-summary-label{flex:1;min-width:0}.chapter-class-settings{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:.28rem;flex-shrink:0;margin:0;padding:.18rem .45rem .18rem .32rem;border-radius:8px;border:2px solid rgba(92,61,46,.22);background:transparent;color:var(--ink);font:inherit;font-size:.72rem;font-weight:800;cursor:pointer}.chapter-class-settings svg{display:block;flex-shrink:0}.chapter-class-settings:hover,.chapter-class-settings:focus-visible{border-color:color-mix(in srgb,var(--frame) 45%,transparent);background:color-mix(in srgb,var(--cream) 40%,white)}.analysis-panel>summary{display:flex;align-items:center;gap:.35rem}.analysis-summary-label{flex:1;min-width:0}.analysis-best.best-move-btn{width:2.05rem;height:2.05rem;padding:0;flex-shrink:0;gap:0}.analysis-best.best-move-btn svg{display:block}.analysis-score{display:flex;align-items:baseline;gap:.45rem;padding:.1rem .15rem .2rem}.analysis-eval{font-weight:800;font-size:1.05rem;letter-spacing:-.02em;color:#6c2bd9}.analysis-verdict{font-weight:800;font-size:.82rem;color:var(--muted)}.analysis-empty{margin:.15rem 0;font-size:.85rem;font-weight:600;color:var(--muted)}.analysis-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.22rem}.analysis-line{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:.5rem;width:100%;margin:0;padding:.38rem .5rem;border-radius:10px;border:2px solid transparent;background:color-mix(in srgb,var(--cream) 40%,white);color:inherit;font:inherit;font-weight:800;font-size:.88rem;cursor:pointer;text-align:left}.analysis-line:hover,.analysis-line:focus-visible{border-color:color-mix(in srgb,#9b4dff 45%,transparent);background:color-mix(in srgb,#9b4dff 10%,white)}.analysis-rank{flex-shrink:0;width:1.1rem;color:var(--muted);font-size:.78rem}.analysis-san{flex:1;min-width:0}.analysis-line-eval{flex-shrink:0;font-size:.78rem;font-weight:800;color:#6c2bd9}.side-panel>summary::-webkit-details-marker{display:none}.panel-body{display:flex;flex-direction:column;gap:.45rem}.moves-empty{margin:.15rem 0;font-size:.85rem;font-weight:600;color:var(--muted)}.moves-scroll{max-height:min(36vh,280px);overflow:auto;border-radius:10px;background:color-mix(in srgb,var(--cream) 40%,white)}.moves-table{width:100%;border-collapse:collapse;font-size:.85rem;font-variant-numeric:tabular-nums}.moves-table th,.moves-table td{padding:.28rem .35rem;text-align:left;vertical-align:middle;border-bottom:1px solid color-mix(in srgb,var(--frame) 10%,transparent)}.moves-table thead th{position:sticky;top:0;background:color-mix(in srgb,var(--cream) 82%,white);font-size:.78rem;font-weight:800;color:var(--muted);z-index:1}.moves-num-col{width:1.6rem}.moves-num,.moves-san{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;font:inherit;font-weight:700;color:inherit;cursor:pointer;padding:.1rem .2rem;border-radius:6px}.moves-san{display:inline-flex;align-items:center;gap:.12rem;white-space:nowrap}.moves-icon{width:1.35em;height:1.35em;display:inline-flex;flex-shrink:0;pointer-events:none}.moves-paint{position:relative;align-items:center;justify-content:center}.moves-paint svg{width:.95em;height:.95em;display:block}.moves-paint-dot{position:absolute;right:-1px;bottom:-1px;width:.42em;height:.42em;border-radius:50%;border:1px solid color-mix(in srgb,var(--frame) 40%,transparent);box-shadow:0 0 0 1px var(--cream)}.moves-icon img,.moves-icon .piece-svg,.moves-icon .piece-tint,.moves-icon .sticker-mark{width:100%;height:100%;margin:0;display:block;object-fit:contain}.moves-op,.moves-cap{font-weight:800}.moves-sq,.moves-rest{font-weight:800;letter-spacing:.01em}.moves-num{color:var(--muted);min-width:1.4rem}.moves-num-blank{display:inline-block;min-width:1.4rem;min-height:1em;pointer-events:none}.moves-san:hover,.moves-num:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}.moves-table td.current .moves-san{background:var(--accent);color:#fff}.history-scroll{max-height:min(36vh,280px);overflow:auto;border-radius:10px;background:color-mix(in srgb,var(--cream) 40%,white);padding:.4rem .5rem}.history-list{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .15rem;font-size:.85rem;font-variant-numeric:tabular-nums}.history-sep{color:var(--muted);font-weight:700;-webkit-user-select:none;user-select:none;padding:0 .1rem}.history-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;margin:0;padding:.15rem .28rem;border-radius:6px;background:transparent;color:inherit;font:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:.1rem;line-height:1}.history-item:hover{background:color-mix(in srgb,var(--frame) 12%,transparent)}.history-item.current{background:var(--accent);color:#fff}.moves-panel[hidden],.history-panel[hidden]{display:none!important}.chapter-actions{position:relative;display:flex;flex-wrap:wrap;gap:.35rem;align-items:stretch}.chapter-actions #chapter-add{flex:1;min-width:6rem;padding:.55rem .75rem;font-size:.9rem}.chapter-kind-menu{position:absolute;left:0;right:0;bottom:calc(100% + .35rem);z-index:8;display:flex;flex-direction:column;gap:.2rem;padding:.35rem;border-radius:12px;background:color-mix(in srgb,var(--cream) 55%,white);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);box-shadow:0 10px 28px color-mix(in srgb,var(--ink) 18%,transparent)}.chapter-kind-menu[hidden]{display:none}.chapter-kind-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;margin:0;width:100%;text-align:left;padding:.55rem .7rem;border-radius:9px;background:transparent;color:inherit;font:inherit;font-size:.88rem;font-weight:750;cursor:pointer}.chapter-kind-option:hover,.chapter-kind-option:focus-visible{background:color-mix(in srgb,var(--accent) 16%,white);outline:none}.text-sheet{width:min(520px,100%)}.text-sheet textarea{display:block;width:100%;min-height:11rem;margin:.55rem 0 .7rem;padding:.65rem .7rem;border-radius:12px;border:2px solid rgba(92,61,46,.18);background:#fff;color:inherit;font:.82rem/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;resize:vertical;box-sizing:border-box}.text-sheet textarea:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.text-sheet textarea::placeholder{color:color-mix(in srgb,var(--muted) 70%,transparent)}.text-error{margin:0 0 .65rem;font-size:.85rem;font-weight:700;color:#b42318}.text-sheet .confirm-actions{justify-content:space-between}html.theme-midnight .text-sheet textarea{background:#151a22;color:#e8ecf2;border-color:#ffffff24}html.theme-midnight .text-sheet textarea::placeholder{color:#e8ecf259}html.theme-midnight .text-error{color:#f87171}.person-row,.chapter-row{display:flex;align-items:center;justify-content:space-between;gap:.4rem;padding:.4rem .35rem;border-radius:10px;background:color-mix(in srgb,var(--cream) 55%,white)}.chapter-block{display:flex;flex-direction:column;gap:.2rem;border-radius:10px}.chapter-block.dragging,.chapter-puzzle-row.dragging{opacity:.45}.chapters-panel .chapter-rows{display:flex;flex-direction:column;gap:.35rem}.chapter-block>.chapter-row{margin:0}.chapter-block.active>.chapter-row{outline:2px solid var(--accent)}.chapter-block.locked .chapter-select{opacity:.45;cursor:not-allowed}.chapter-slot{display:inline-flex;align-items:center;justify-content:center;margin-left:.28rem;padding:.05rem .28rem;border-radius:4px;font-size:.58rem;font-weight:900;letter-spacing:.03em;line-height:1.2;color:color-mix(in srgb,var(--ink) 70%,transparent);background:color-mix(in srgb,var(--ink) 8%,transparent)}.chapter-puzzles{display:flex;flex-direction:column;gap:.15rem;padding:0 .2rem .25rem 1.7rem}.chapter-puzzles-empty{margin:0;padding:.15rem .35rem;font-size:.72rem;font-weight:600;color:var(--muted)}.chapter-puzzle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;margin:0;flex:1;min-width:0;display:flex;align-items:center;gap:.35rem;padding:.28rem .4rem;border-radius:8px;background:transparent;color:inherit;font:inherit;font-size:.82rem;font-weight:700;text-align:left;cursor:pointer}.chapter-puzzle-row{display:flex;align-items:center;gap:.25rem;padding:.1rem .15rem .1rem .2rem;border-radius:8px;background:color-mix(in srgb,var(--cream) 35%,white);cursor:grab}.chapter-puzzle-row:hover{background:color-mix(in srgb,var(--cream) 70%,white)}.chapter-puzzle-row.active{outline:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 12%,white)}.chapter-puzzle-row.solved .chapter-puzzle{color:#0d3b16}.chapter-puzzle-row.failed .chapter-puzzle{color:#5c1a1a}.chapter-puzzle:hover{background:transparent}.chapter-puzzle.active{outline:none;background:transparent}.chapter-puzzle.solved{color:#0d3b16}.chapter-puzzle-mark{display:block;width:1.15rem;height:1.15rem;flex-shrink:0}.chapter-puzzle-mark .sticker-mark{display:block;width:100%;height:100%;object-fit:contain;filter:none}.chapter-puzzle-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-puzzle-rename{width:100%;box-sizing:border-box;margin:0;padding:.28rem .4rem;border-radius:8px;border:2px solid var(--accent);font:inherit;font-size:.82rem;font-weight:700}.person-main{display:flex;flex-direction:column;min-width:0}.person-name{display:flex;align-items:center;gap:.35rem;font-weight:800;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-name .status-dot{flex-shrink:0;margin-right:0}.person-role{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase}.person-actions{display:flex;align-items:center;gap:.3rem}.person-row.has-move-any{flex-wrap:wrap}.move-any{flex:1 1 100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.15rem;font-size:.75rem;font-weight:800;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none}.move-any input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:36px;height:22px;margin:0;flex-shrink:0;border-radius:99px;border:2px solid color-mix(in srgb,var(--ink) 18%,transparent);background:color-mix(in srgb,var(--ink) 14%,white);cursor:pointer;position:relative;transition:background .14s ease,border-color .14s ease}.move-any input:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .14s ease}.move-any input:checked{background:var(--accent);border-color:color-mix(in srgb,var(--accent) 70%,#000)}.move-any input:checked:after{transform:translate(14px)}.move-any input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.av-status{position:relative;width:22px;height:22px;display:grid;place-items:center;color:var(--muted);flex-shrink:0}.av-status .av-svg{width:14px;height:14px;display:block}.av-status .av-slash{position:absolute;left:50%;top:50%;width:16px;height:16px;transform:translate(-50%,-50%);pointer-events:none;display:none}.av-status.off{color:#c0392b}.av-status.video-max{color:var(--accent)}.av-status.off .av-slash{display:block}.av-status .av-slash path{fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round}.av-status .av-slash-back{stroke:color-mix(in srgb,currentColor 40%,white);stroke-width:4.4}.orient-dot{width:28px;height:28px;border-radius:50%;border:2px solid rgba(0,0,0,.2);font-weight:800;font-size:.7rem;cursor:pointer}.orient-dot.white{background:#f7f3ea;color:#2a2218}.orient-dot.black{background:#1c1a17;color:#f7f3ea}.orient-dot:disabled{opacity:.5;cursor:default}.chapter-num{flex:0 0 auto;min-width:1.35rem;font-size:.8rem;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums;line-height:1}.chapter-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.05rem}.chapter-kind{font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);line-height:1.1;display:inline-flex;align-items:center;gap:.3rem}.chapter-solved{display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;border-radius:999px;background:color-mix(in srgb,#2f9e44 78%,white);color:#0d3b16;text-transform:none;letter-spacing:0}.chapter-solved svg{display:block}.chapter-row.solved .chapter-kind,.chapter-block.solved .chapter-kind{color:color-mix(in srgb,#2f9e44 50%,var(--muted))}.chapter-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;font:inherit;font-weight:800;text-align:left;width:100%;cursor:pointer;color:inherit;padding:0;min-width:0}.mode-row.is-locked{opacity:.72}.mode-row.is-locked .mode-btn:disabled{cursor:default;opacity:.45}.match-settings-body{display:flex;flex-direction:column;gap:.85rem;padding:.2rem 0 .4rem}.match-side{display:flex;flex-direction:column;gap:.35rem}.match-label{font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.match-side-row{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.match-color.active{background:#fff;border-color:var(--accent);color:var(--accent)}.match-opponents{display:flex;flex-direction:column;gap:.65rem}.chapter-rename{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;min-width:0;font:inherit;font-weight:800;color:inherit;background:color-mix(in srgb,var(--cream) 40%,white);border:2px solid var(--accent);border-radius:8px;padding:.2rem .4rem;outline:none;-webkit-user-select:text;user-select:text}html.theme-midnight .chapter-rename{background:#151a22}.chapter-look,.chapter-bot,.chapter-del,.chapter-puzzle-add{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;width:32px;height:32px;border-radius:8px;cursor:pointer;display:grid;place-items:center;flex-shrink:0}.chapter-look,.chapter-puzzle-add{color:var(--muted)}.chapter-look.custom{color:var(--accent)}.chapter-bot{color:var(--muted);padding:0}.chapter-bot.on{color:var(--accent)}.chapter-bot .bot-mark{width:22px;height:22px;display:block}.chapter-look:hover,.chapter-bot:hover,.chapter-puzzle-add:hover,.chapter-del:hover:not(:disabled){background:color-mix(in srgb,var(--frame) 10%,transparent)}.chapter-del{color:#a93226;font-size:1.2rem;font-weight:700}.chapter-del:disabled{opacity:.3;cursor:default}.game-banner{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;padding:.35rem .65rem;margin:0 0 .35rem;border-radius:10px;background:color-mix(in srgb,var(--cream-deep) 92%,var(--frame));border:1px solid color-mix(in srgb,var(--frame) 18%,transparent)}.game-banner[hidden]{display:none!important}.game-banner-emoji{font-size:1.25rem;line-height:1;display:flex;align-items:center}.game-banner-emoji .sticker-mark,.game-banner-emoji img{width:28px;height:28px}.game-banner-name{font-weight:800;font-size:.92rem}.game-banner-state{flex:1 1 auto;font-size:.85rem;color:var(--muted)}.game-banner .btn{font-size:.78rem;padding:.2rem .55rem}.bot-banner{display:flex;align-items:center;gap:.65rem;width:100%;min-width:0;flex-shrink:0;padding:.1rem 0}.bot-banner[hidden]{display:none}.bot-banner-art{flex-shrink:0}.bot-banner-art .bot-mark{width:48px;height:48px;display:block}.bot-banner-name{font-weight:800;font-size:1.18rem;line-height:1.2;white-space:nowrap;flex-shrink:0}.bot-banner-state{font-weight:800;font-size:.88rem;color:var(--muted);white-space:nowrap;flex-shrink:0}.bot-banner-state.thinking{color:var(--accent);animation:bot-pulse 1.1s ease-in-out infinite}@keyframes bot-pulse{50%{opacity:.45}}.bot-sheet{width:min(720px,100%)}.bot-grid{display:grid;grid-template-columns:1fr;gap:.55rem}@media(min-width:640px){.bot-grid{grid-template-columns:1fr 1fr}}.bot-card{display:flex;gap:.75rem;padding:.7rem;border-radius:14px;border:2px solid transparent;background:color-mix(in srgb,var(--cream) 40%,white);cursor:pointer;text-align:left;font:inherit;color:inherit}.bot-card:hover,.bot-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 45%,transparent);outline:none}.bot-card.selected{border-color:var(--accent)}.bot-card-art .bot-mark{width:64px;height:64px;display:block;flex-shrink:0}.bot-card-body{min-width:0;flex:1}.bot-card-body h3{margin:0;font-size:1.05rem;font-weight:800}.bot-card-meta{margin:.15rem 0 .25rem;font-weight:800;font-size:.8rem;color:var(--muted)}.bot-card-blurb{margin:0;font-size:.82rem;font-weight:600;line-height:1.35}.bot-card-colors{display:flex;flex-wrap:wrap;gap:.4rem}html.theme-midnight .bot-card{background:#1c222d}html.theme-midnight .side-panel{background:#1c222deb;border-color:#ffffff14}html.theme-midnight .person-row,html.theme-midnight .chapter-row{background:#1c222d}.sticker-sheet{width:min(720px,100%);max-height:calc(100dvh - 1.5rem);display:flex;flex-direction:column}.sticker-lib-search{width:100%;margin:.15rem 0 .55rem;padding:.7rem .85rem;border-radius:12px;border:2px solid color-mix(in srgb,var(--frame) 16%,transparent);background:color-mix(in srgb,var(--cream) 55%,white);-webkit-user-select:text;user-select:text}.sticker-lib-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.sticker-lib-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem;min-width:0;font-weight:800}.sticker-lib-crumb-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:inherit;font:inherit;font-weight:800;padding:.15rem .2rem;cursor:pointer}.sticker-lib-crumb-btn:disabled{color:var(--muted);cursor:default}.sticker-lib-sep{color:var(--muted);font-weight:700}.sticker-lib-body{overflow-x:hidden;overflow-y:auto;min-height:12rem;max-height:min(62dvh,560px);padding-bottom:.3rem}.sticker-lib-folders{display:grid;grid-template-columns:1fr;gap:.45rem}@media(min-width:560px){.sticker-lib-folders{grid-template-columns:1fr 1fr}}.sticker-lib-folder{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.55rem;text-align:left;padding:.55rem .7rem;border-radius:14px;border:2px solid transparent;background:color-mix(in srgb,var(--cream) 40%,white);color:inherit;cursor:pointer}.sticker-lib-previews{display:flex;width:52px;height:36px}.sticker-lib-previews img,.sticker-lib-previews .sticker-mark{width:28px;height:28px;margin-left:-8px;background:#fff;border-radius:6px;display:block;flex-shrink:0}.sticker-lib-previews img:first-child,.sticker-lib-previews .sticker-mark:first-child{margin-left:0}.sticker-lib-folder-name{font-weight:800;min-width:0;overflow-wrap:anywhere}.sticker-lib-folder-count{color:var(--muted);font-weight:700;font-size:.82rem}.sticker-lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(72px,100%),1fr));gap:.4rem}.sticker-lib-cell{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.4rem .25rem .45rem;border-radius:12px;border:2px solid transparent;background:color-mix(in srgb,var(--cream) 40%,white);color:inherit;cursor:pointer}.sticker-lib-cell img,.sticker-lib-cell .sticker-mark{width:44px;height:44px;object-fit:contain;display:block}.sticker-lib-cell span{font-size:.62rem;font-weight:700;line-height:1.2;text-align:center;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sticker-lib-cell.in-tray,.sticker-lib-result.in-tray{border-color:var(--accent)}.sticker-lib-results{display:flex;flex-direction:column;gap:.35rem}.sticker-lib-result{display:flex;align-items:center;gap:.7rem;text-align:left;padding:.5rem .65rem;border-radius:14px;border:2px solid transparent;background:color-mix(in srgb,var(--cream) 40%,white);color:inherit;cursor:pointer}.sticker-lib-result img,.sticker-lib-result .sticker-mark{width:40px;height:40px;object-fit:contain;flex-shrink:0;display:block}.sticker-lib-result-text{display:flex;flex-direction:column;min-width:0}.sticker-lib-result-text strong{font-size:.92rem}.sticker-lib-result-text em{font-style:normal;color:var(--muted);font-size:.78rem;font-weight:700}.sticker-lib-empty{margin:1.2rem .4rem;color:var(--muted);font-weight:700}html.theme-midnight .sticker-lib-search,html.theme-midnight .sticker-lib-folder,html.theme-midnight .sticker-lib-cell,html.theme-midnight .sticker-lib-result{background:#1c222d}html.theme-midnight .sticker-lib-search{color:#e8ecf2;border-color:#ffffff24}
