:root{color-scheme:light;--ink: #10231b;--panel: #ffffff;--line: #dce7e0;--action: #0d2b52;--action-2: #123a6b;--accent: #0d2b52;--gold: #fde047;--live: #fde047;--live-ink: #3a2f00;--ball: #e5484d;--ok: #2e9a59;--warn: #f5d90a;--offense: #f97316;--field: #173f31;--muted: #6b857a;--display: "Bebas Neue", "Barlow Semi Condensed", "Noto Sans TC", system-ui, sans-serif;font-family:Noto Sans TC,system-ui,sans-serif}*{box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:#c2d2c9 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-corner{background:transparent}*::-webkit-scrollbar-thumb{background:#c2d2c9;border-radius:999px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:#9db8ab;background-clip:content-box}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--live);outline-offset:2px}body{margin:0;background:#f4f7f5;color:var(--ink)}.app-shell{min-height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;background:var(--action);color:#fff;flex-wrap:wrap}.brand-heading{margin:2px 0 0;font-size:18px}.brand{display:flex;align-items:center;gap:12px;background:none;border:0;padding:0;margin:0;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:12px;transition:opacity .15s ease}.brand:hover{opacity:.86}.brand:focus-visible{outline:2px solid #fff;outline-offset:4px}.brand svg{filter:drop-shadow(0 2px 4px #0006);flex:0 0 auto}.brand-text{display:flex;flex-direction:column}.eyebrow{font-size:11px;letter-spacing:.12em;opacity:.8;font-weight:400}.topbar h1{margin:2px 0 0;font-size:18px}.header-actions{display:flex;gap:10px}.button{display:inline-flex;align-items:center;gap:6px;border-radius:10px;border:1px solid transparent;padding:9px 14px;cursor:pointer;font-size:15px}.button.primary{background:var(--action);color:#fff;font-weight:700}.button.primary:hover{background:var(--action-2)}.button.ghost{background:transparent;color:#fff;border-color:#fff5}.button.outline{background:#fff;border-color:var(--line);color:var(--ink)}.button.outline:hover{border-color:#b9cfc4;background:#f7fbf9}.button:disabled{opacity:.45;cursor:not-allowed}.button.tiny{padding:5px 10px;font-size:13px;border-radius:9px}.auto-fielding-toggle{height:38px;padding:0 12px;white-space:nowrap}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:12px;padding:12px 20px;max-width:1180px;margin:0 auto}.board-panel,.control-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:12px}.board-panel{display:flex;flex-direction:column;height:100%}.board-panel,.control-panel,.control-card{min-width:0}.control-panel{display:grid;gap:12px;align-content:start;height:100%;grid-template-rows:auto 1fr}.title-line{display:flex;align-items:baseline;gap:8px;min-height:40px;min-width:0}.title-line span{font-size:12px;color:#6b857a;flex:0 0 auto}.title-line b{font-size:17px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mode-switch{display:flex;background:#eef3f0;border-radius:10px;padding:3px}.mode-switch button{display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:14px;color:#41564c}.mode-switch button.active{background:var(--action);color:#fff;font-weight:700}.mode-switch button.active.live{background:var(--live);color:var(--live-ink);box-shadow:inset 0 0 0 1px #d9be14}.path-switch button{padding:8px 10px}.icon-button{border:1px solid var(--line);background:#fff;border-radius:10px;width:38px;height:38px;display:grid;place-items:center;cursor:pointer;color:var(--action)}.icon-button:hover{background:#f2f7f4;border-color:#b9cfc4}.icon-button:disabled{opacity:.4;cursor:default}.pitch-wrap{width:100%}.pitch-wrap canvas{border-radius:14px}.board-panel:fullscreen{background:var(--panel);border:0;border-radius:0;padding:10px 18px calc(10px + env(safe-area-inset-bottom));height:100%}.board-panel:fullscreen .pitch-wrap{flex:1;min-height:0;display:grid;place-items:center}.playback{display:flex;gap:10px;align-items:center;margin:10px 0;padding:0;flex-wrap:wrap}.playback-transport,.playback-options,.board-mode-controls,.canvas-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.playback-transport{flex:1 1 300px;min-width:min(100%,250px)}.playback-transport input[type=range]{flex:1;min-width:100px;accent-color:var(--action)}.playback-options{flex:0 0 auto}.board-mode-controls{flex:0 1 auto}.canvas-actions{margin-left:auto}.play-button{width:46px;height:46px;border-radius:50%;border:0;background:var(--action);color:#fff;display:grid;place-items:center;cursor:pointer}.play-button:hover{background:var(--action-2)}.play-button:disabled{opacity:.4}.playback select{border:0;background:transparent;padding:7px 4px;font-family:inherit;font-size:14px;color:var(--ink)}.speed-wrap{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:0 8px;background:#fff;color:var(--muted)}.status-line{display:flex;gap:8px;align-items:center;margin-top:6px;font-size:13px;color:#33544a;flex-wrap:wrap}.status-line svg{flex:0 0 auto;color:var(--action)}.status-line.rec svg{color:#b45309}.status-line .hint{color:#8aa398}.func-bar{background:var(--panel);border-bottom:1px solid var(--line);padding:10px 20px}.func-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.func-grid{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.func-inner .title-line{flex:0 1 auto;min-width:0;max-width:320px;margin-right:4px}.func-inner .title-line b{font-size:16px}.help-list{margin:6px 0 12px 18px;padding:0;color:#33544a;font-size:13px;line-height:1.7}.help-list li{margin-bottom:6px}.import-export-bar{display:flex;gap:8px;margin:10px 16px 4px;flex-wrap:wrap}.import-export-bar .button{flex:1;min-width:0;justify-content:center}@media(max-width:480px){.import-export-bar .button{flex:1 1 45%}}.presence-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#cbd5e1;margin-right:6px;vertical-align:1px}.presence-dot.on{background:var(--ok);box-shadow:0 0 0 2px #2e9a5922}.online-count{color:var(--ok);font-weight:700}.sync-panel{display:grid;gap:6px;margin:8px 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#f7fbf9}.sync-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.sync-panel .dialog-label{margin:0}.sync-panel .button{justify-content:center}.sync-state{font-size:12px;font-weight:700;color:#6b857a}.sync-state.live{color:var(--ok)}.sync-state.viewer{color:#b45309}.sync-note{margin:0;font-size:12px;line-height:1.5;color:#33544a}.sync-note.error{color:#b91c1c}.sync-chip{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700}.sync-chip.live{background:#e8f7ef;color:#1f7a4d}.sync-chip.viewer{background:#fff4e5;color:#b45309}.member-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}.member-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#33544a}.member-name{flex:1;min-width:0;overflow-wrap:anywhere}.member-actions{display:inline-flex;gap:4px}.button.tiny.danger{background:#fee2e2;border-color:#fecaca;color:#b91c1c}.button.tiny.danger:hover{background:#fecaca}.snapshot-row{width:100%;display:flex;align-items:center;gap:8px;justify-content:space-between;text-align:left}.snapshot-main{display:grid;gap:2px;min-width:0}.snapshot-main b{font-size:15px;overflow-wrap:anywhere}.snapshot-main span{font-size:11px;color:var(--muted)}.read-badges{display:flex;gap:4px;flex:0 0 auto}.read-badge{border:1px solid var(--line);border-radius:999px;padding:2px 8px;font-size:11px;color:var(--action);background:#f8fafc;white-space:nowrap}.read-badge.done{background:#e7f5ec;border-color:#9fd8b4;color:#1a6b3d}.snap-meta{flex:0 0 auto;padding:8px 16px 6px;font-size:12px;color:#6b857a;display:grid;gap:4px}.snap-meta .tpl-note{display:inline-block;width:fit-content;max-width:100%}.snap-meta .tpl-desc{margin:0}.discussion{flex:0 0 auto;border-top:1px solid var(--line);padding:10px 16px 12px;display:grid;gap:8px}.emoji-bar{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.emoji-bar button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 10px;font-size:15px;cursor:pointer;min-height:34px}.emoji-bar button:hover{border-color:#b9cfc4;background:#f2f7f4}.emoji-bar button.active{border-color:var(--action);background:#e8f1fb;box-shadow:0 0 0 2px #0d2b5222}.emoji-count{font-size:12px;color:var(--action);font-weight:700}.connection-dot{margin-left:auto;font-size:11px;color:var(--muted);display:inline-flex;align-items:center;gap:5px}.connection-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:#94a3b8}.connection-dot.live:before{background:var(--ok)}.comment-list{max-height:160px;overflow-y:auto;display:grid;gap:6px;overscroll-behavior:contain}.comment{border:1px solid var(--line);border-radius:10px;padding:6px 10px;background:#f8fafc}.comment.mine{background:#e8f1fb;border-color:#b9d4ef}.comment-head{display:flex;gap:8px;align-items:baseline;font-size:12px;color:var(--muted)}.comment-head b{color:var(--action);font-size:13px}.comment p{margin:2px 0 0;font-size:13px;color:var(--ink);overflow-wrap:anywhere}.comment-delete{margin-left:auto;border:0;background:transparent;color:#b91c1c;cursor:pointer;display:grid;place-items:center;padding:2px;border-radius:6px}.comment-delete:hover{background:#fee2e2}.comment-form{display:flex;gap:8px}.comment-form input{flex:1;min-width:0;border:1px solid var(--line);border-radius:10px;padding:10px;font-size:15px;min-height:44px;font-family:inherit}.discussion-error{margin:0;font-size:12px;color:#b91c1c}.func-grid .button{white-space:nowrap;padding:10px 16px;font-size:14px}.section-heading{display:flex;justify-content:space-between;align-items:center}.heading-actions{display:flex;align-items:center;gap:8px}.section-heading h2{margin:0;font-size:18px;display:flex;align-items:center;gap:8px}.section-heading h2 svg{color:var(--action);flex:0 0 auto}.section-kicker{font-size:11px;letter-spacing:.1em;color:var(--muted)}.inning-badge,.count-badge{background:var(--action);color:#fff;font-size:13px;border-radius:999px;padding:4px 10px}.inning-badge{font-family:var(--display);font-size:15px;letter-spacing:.08em;padding:4px 12px}.ball-pick{width:40px;height:40px;border-radius:50%;border:2px solid transparent;background:#f2f7f4;display:grid;place-items:center;cursor:pointer;padding:0}.ball-pick:hover{background:#e6efe9}.ball-pick.active{border-color:var(--live);background:#fff8dc;box-shadow:0 0 0 3px #0d2b5222}.inning-controls{display:flex;gap:10px;align-items:end;margin:10px 0}.inning-controls label{display:grid;gap:4px;font-size:13px}.batted-ball-controls{display:grid;gap:10px;margin:10px 0}.batted-ball-controls label{display:grid;gap:4px;font-size:13px}.batted-ball-controls select{width:100%;min-width:0;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit;font:inherit}.batted-ball-controls .batted-ball-declaration{display:flex;align-items:center;gap:8px}.batted-ball-controls .hint{margin:0}.inning-controls input{width:80px;border:1px solid var(--line);border-radius:8px;padding:7px;font-family:var(--display);font-size:18px;letter-spacing:.06em;color:var(--ink)}.segmented{display:flex;background:#eef3f0;border-radius:8px;padding:3px}.segmented button{display:flex;align-items:center;gap:6px;border:0;background:transparent;padding:7px 12px;border-radius:6px;cursor:pointer;color:#41564c}.segmented button.active{background:#fff;color:var(--action);box-shadow:0 1px 3px #0002;font-weight:700}.base-diamond{width:128px;height:126px;position:relative;margin:6px auto 12px}.prevent-run-row{display:flex;align-items:center;gap:10px;margin:4px 0 12px}.prevent-run-row .hint{color:#8aa398;font-size:12px}.prevent-run:disabled{opacity:.45;cursor:not-allowed}.base{position:absolute;width:28px;height:28px;transform:rotate(45deg);background:#fff;border:2.5px solid #929399;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.base-1{left:84px;top:55px}.base-2{left:50px;top:23px}.base-3{left:14px;top:55px}.base:not(:disabled):hover{border-color:#62636a;background:#f7f7f8}.base.occupied{background:var(--live);border-color:#b99e00;box-shadow:0 0 0 3px #fde04733}.base.occupied:not(:disabled):hover{background:#ffed75}.base:disabled{cursor:default}.home-base{position:absolute;left:53px;bottom:11px;width:22px;height:22px;transform:rotate(45deg);background:#fff;border:2px solid #929399;border-radius:4px;opacity:.48}.stepper{display:flex;justify-content:space-between;align-items:center;margin:8px 0}.stepper-buttons{display:flex;gap:6px}.stepper-buttons button{min-width:40px;height:40px;border-radius:8px;border:1px solid var(--line);background:#fff;cursor:pointer;font-family:var(--display);font-size:17px;letter-spacing:.04em;color:#41564c}.stepper-buttons button:hover{border-color:#9db8ab}.stepper-buttons button.active{background:var(--action);color:#fff;border-color:var(--action)}.stepper.outs button.active{background:var(--ball);border-color:#b93a3f;color:#fff}.player-grid{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.player-grid::-webkit-scrollbar{display:none}.player-grid button{flex:0 0 auto;min-width:76px;min-height:60px;border:1px solid var(--line);background:#f8fafc;border-radius:10px;padding:8px 6px;display:grid;cursor:pointer}@media(min-width:981px){.player-grid{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible;padding-bottom:0}.player-grid button{min-width:0}}.player-grid button:hover{border-color:#b9cfc4;background:#f2f7f4}.player-grid button.active{background:var(--action);border-color:var(--action)}.player-grid button.active b{color:var(--live)}.player-grid button.active span{color:#ffffffd1}.player-grid b{font-family:var(--display);font-size:18px;letter-spacing:.06em;color:var(--action)}.player-grid span{font-size:12px;color:var(--muted)}.legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);font-size:12px;color:var(--muted)}.legend i{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:5px;vertical-align:-1px}.delete-button{border:0;background:#fee2e2;color:#b91c1c;width:34px;height:34px;border-radius:8px;display:grid;place-items:center;cursor:pointer}.empty-state{color:#6b857a;font-size:14px}.section-heading select{border:1px solid var(--line);border-radius:8px;padding:6px;font-size:13px;background:#fff}.tpl-desc{color:#33544a!important;font-size:13px!important}.tpl-badges{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px;min-width:0}.level-badge{background:#eef3f0;border:1px solid var(--line);font-size:11px!important;border-radius:999px;padding:2px 8px;color:#33544a!important}.kind-badge{font-size:11px!important;border-radius:999px;padding:2px 8px;font-weight:700}.kind-badge.setup{background:var(--action);color:#fff!important}.kind-badge.play{background:var(--gold);color:#3a2f00!important}.tpl-note{font-size:12px!important;color:var(--action)!important;background:#e8f1fb;border-radius:6px;padding:4px 8px;margin-top:4px}.tpl-chips{display:flex;gap:6px;overflow-x:auto;padding:10px 2px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tpl-chips::-webkit-scrollbar{display:none}.tpl-chips button{flex:0 0 auto;border:1px solid var(--line);background:#f8fafc;border-radius:999px;padding:8px 14px;font-size:14px;cursor:pointer;min-height:40px}.tpl-chips button.active{background:var(--action);border-color:var(--action);color:#fff;font-weight:700}.tpl-accordion{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.tpl-accordion li{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;min-width:0}.tpl-accordion li.open,.tpl-accordion li.active{border-color:var(--accent)}.tpl-row-line{display:flex;align-items:center;gap:6px;padding-right:6px}.tpl-row-line .tpl-row{flex:1;min-width:0}.tpl-meta{margin:0;font-size:12px;color:#6b857a}.tpl-row{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:8px;padding:12px;min-height:56px;cursor:pointer;text-align:left}.tpl-row-main{flex:1;display:grid;gap:2px;min-width:0}.tpl-row-main b{font-size:16px;overflow-wrap:anywhere}.tpl-row-main span{font-size:12px;color:#6b857a;overflow-wrap:anywhere}.tpl-detail{padding:0 12px 12px;display:grid;gap:8px;min-width:0}.tpl-detail .tpl-desc,.tpl-detail .tpl-note{margin:0;overflow-wrap:anywhere}.tpl-load{width:auto;justify-self:stretch;justify-content:center;min-height:44px}.tpl-detail>*{min-width:0;max-width:100%}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0b1f17cc;z-index:50;display:flex;align-items:flex-end;justify-content:center}.sheet{background:#fff;width:100%;max-width:100%;max-height:88vh;border-radius:18px 18px 0 0;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;animation:sheet-up .22s ease-out;padding-bottom:env(safe-area-inset-bottom)}.sheet>*{min-width:0}.sheet-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px 4px;flex:0 0 auto;position:sticky;top:0;background:#fff;z-index:2}.sheet-header h2{margin:0;font-size:18px}.sheet-header-side{display:flex;gap:8px;align-items:center}.sheet .tpl-chips{padding:8px 16px 2px;width:100%;flex:0 0 auto}.sheet .tpl-accordion{flex:none;overflow:visible;width:100%;padding:4px 16px 20px}.sheet-tabs{margin:8px 16px 0;flex:0 0 auto}.sheet-tabs button{flex:1}.sheet-empty{padding:16px 16px 24px}.modal-backdrop.center{align-items:center;padding:24px}.dialog{background:#fff;border-radius:18px;width:min(92vw,560px);padding:18px;display:grid;gap:8px;animation:sheet-up .22s ease-out;max-height:88vh;overflow-x:hidden;overflow-y:auto}.dialog h2{margin:0 0 4px;font-size:18px}.dialog label{font-size:13px;color:#6b857a}.dialog input{border:1px solid var(--line);border-radius:10px;padding:10px;font-size:16px;min-height:44px}.dialog textarea{border:1px solid var(--line);border-radius:10px;padding:10px;font-size:15px;font-family:inherit;resize:vertical}.dialog-label{font-size:13px;color:#6b857a;font-weight:700;margin-top:10px;display:block}.backup-conflict-select{width:100%;min-width:0;min-height:44px;padding:10px 42px 10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%230d2b52' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center;color:var(--ink);font:inherit;cursor:pointer;appearance:none}.backup-conflict-select:hover{border-color:var(--action-2)}.dialog-chips{padding:0}.dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}.dialog-actions .button{justify-content:center;min-height:44px}.dialog-note{margin:0;font-size:13px;line-height:1.6;color:#6b857a}.lineup-grid{display:grid;grid-template-columns:46px 72px minmax(0,1fr);gap:5px 8px;align-items:center;margin:4px 0 6px}.lineup-head{font-size:12px;font-weight:700;color:#6b857a}.lineup-row{display:contents}.lineup-grid input{min-height:38px;padding:6px 10px;font-size:15px}.lineup-pos{display:grid;place-items:center;min-height:38px;border-radius:9px;background:#eef3f0;color:var(--action);font-family:var(--display);font-size:15px;font-weight:700;letter-spacing:.04em}.lineup-num{text-align:center}.lineup-foot{position:sticky;bottom:-18px;display:grid;gap:8px;margin:4px -18px -18px;padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);border-radius:0 0 18px 18px}.lineup-foot .dialog-actions{margin-top:0}.lineup-reset{display:flex;justify-content:flex-start}.lineup-reset .button{min-height:38px;padding:7px 12px;font-size:14px}@keyframes sheet-up{0%{transform:translateY(24px);opacity:.6}to{transform:none;opacity:1}}@media(min-width:981px){.modal-backdrop{align-items:center;padding:24px}.sheet{max-width:560px;border-radius:18px;max-height:82vh}}@media(max-width:980px){.workspace{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.text-live{color:var(--live)}.playback-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;flex:1 1 auto;min-width:0}.snapshot-dialog.dialog{width:min(1440px,96vw);height:92dvh;max-height:960px;padding:0;gap:0;display:flex;flex-direction:column;overflow:hidden}.snapshot-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line);flex:0 0 auto}.snapshot-header h2{overflow-wrap:anywhere}.snapshot-header .icon-button{flex-shrink:0}.snapshot-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;flex:1;min-height:0}.snap-stage{grid-column:1;grid-row:1;min-width:0;min-height:0;display:flex;flex-direction:column;padding:16px;background:#f4f7f5}.snap-stage .pitch-wrap{flex:1 1 0;min-height:0;display:grid;place-items:center;overflow:hidden}.snapshot-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;flex-shrink:0;padding-top:14px}.snapshot-controls .playback-controls{flex-basis:calc(100% - 48px)}.snapshot-controls input[type=range]{padding:0;border:0}.snapshot-sidebar{grid-column:2;grid-row:1;min-height:0;min-width:0;overflow-y:auto;border-left:1px solid var(--line);overscroll-behavior:contain}.snapshot-sidebar .snap-meta{padding:18px 16px;gap:10px;line-height:1.6;overflow-wrap:anywhere}.snapshot-sidebar .discussion{padding:16px;grid-template-columns:minmax(0,1fr)}.snapshot-sidebar .emoji-bar,.snapshot-sidebar .comment-form,.snapshot-sidebar .comment-list{min-width:0}.snapshot-sidebar .comment-list{max-height:none}.snapshot-footer{flex:0 0 auto;padding:8px 20px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.snapshot-dialog.is-fullscreen{width:100%;height:100dvh;max-height:none;border-radius:0}@media(max-width:900px){.snapshot-dialog.dialog{width:96vw;height:94dvh;max-height:none}.snapshot-body{display:flex;flex-direction:column;overflow-y:auto}.snap-stage{order:0;flex:0 0 auto;padding:12px}.snap-stage .pitch-wrap{flex:none;height:min(60dvh,calc((96vw - 24px)*.88));min-height:200px}.snapshot-sidebar{order:1;overflow:visible;border-left:0;border-top:1px solid var(--line)}.snapshot-sidebar .snap-meta{padding:14px 16px}.snapshot-dialog.is-fullscreen{width:100%;height:100dvh}}@media(max-width:480px){.snapshot-controls{display:grid;grid-template-columns:minmax(0,1fr) 40px}.snapshot-controls .playback-controls{display:contents}.snapshot-controls .playback-transport{grid-column:1;grid-row:1}.snapshot-controls>.icon-button{grid-column:2;grid-row:1}.snapshot-controls .playback-options{grid-column:1 / -1;grid-row:2}.snapshot-header{padding:12px}.snapshot-header h2{font-size:16px}.snapshot-controls .playback-options{width:100%;justify-content:space-between}.snapshot-controls .playback-transport{min-width:0}.snapshot-controls .icon-button,.snapshot-controls .segmented button{min-height:44px}}@media(prefers-reduced-motion:reduce){.snapshot-dialog.dialog{animation:none}}.workbench.dialog{width:min(960px,96vw);max-height:90dvh;overflow-y:auto;padding:24px}.workbench-heading,.workbench-section-head,.workbench-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.workbench-heading p{color:var(--muted);margin:4px 0 0}.button.outline.workbench-backup{justify-self:start;min-height:44px;border-color:var(--action);color:var(--action);font-weight:700}.workbench-top-actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px}.workbench-resume{min-height:44px}.workbench-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.workbench-section{border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.workbench-section h3{margin:0;font-size:16px}.workbench-section-head{margin-bottom:10px}.workbench-row{border-top:1px solid var(--line);padding:10px 0}.workbench-row strong{overflow-wrap:anywhere}.workbench-meta{color:var(--muted);font-size:12px;line-height:1.6;display:block;overflow-wrap:anywhere}.workbench-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.workbench-room{grid-column:2;grid-row:1 / span 2}@media(max-width:680px){.workbench.dialog{width:100%;max-height:92dvh;padding:18px}.workbench-grid{grid-template-columns:1fr}.workbench-room{grid-column:auto;grid-row:auto}}.workbench-row>.button{flex-shrink:0;white-space:nowrap}
