#gs-app{--gs-bd: var(--border-strong);margin-top:.5rem}.gs-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.5rem;border:1px solid var(--gs-bd);border-radius:var(--radius-md);background:var(--surface);margin-bottom:.75rem}.gs-tb-group{display:flex;gap:.35rem;align-items:center}.gs-tb-right{margin-left:auto}.gs-tb-btn{display:inline-flex;align-items:center;gap:.35rem;font:inherit;font-size:.86rem;font-weight:600;color:var(--text);background:var(--bg);border:1px solid var(--gs-bd);border-radius:var(--radius-sm);padding:.42rem .7rem;cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);white-space:nowrap}.gs-tb-btn:hover{background:var(--surface-hover)}.gs-tb-btn:disabled{opacity:.45;cursor:not-allowed}.gs-tb-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.gs-tb-primary:hover:not(:disabled){background:var(--accent-hover)}.gs-main{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:1rem;align-items:start}.gs-stage-wrap{min-width:0}.gs-stage{position:relative;display:flex;align-items:center;justify-content:center;background:repeating-conic-gradient(var(--surface) 0% 25%,var(--bg) 0% 50%) 50%/22px 22px;border:1px solid var(--gs-bd);border-radius:var(--radius-md);overflow:hidden;min-height:280px;aspect-ratio:16/9}#gs-canvas{max-width:100%;max-height:62vh;object-fit:contain;image-rendering:auto;display:block;box-shadow:0 1px 14px #00000047}.gs-badge{position:absolute;top:.5rem;left:.5rem;font-family:var(--font-mono);font-size:.7rem;color:var(--text);background:color-mix(in srgb,var(--bg) 78%,transparent);border:1px solid var(--gs-bd);border-radius:var(--radius-pill);padding:.18rem .55rem;pointer-events:none}.gs-stage-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;text-align:center;padding:1.25rem;background:color-mix(in srgb,var(--bg) 86%,transparent)}.gs-stage-empty.gs-hide{display:none}.gs-se-ic{color:var(--accent-text);opacity:.85}.gs-se-ic svg{width:42px;height:42px}.gs-se-title{font-weight:700;font-size:1.02rem;color:var(--text)}.gs-se-sub{font-size:.84rem;color:var(--text-muted);max-width:34ch}.gs-se-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:.35rem}.gs-engine{font-size:.75rem;color:var(--text-muted);min-height:1em}.gs-busy{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;gap:.3rem;padding:.6rem .8rem;background:color-mix(in srgb,var(--bg) 90%,transparent);border-top:1px solid var(--gs-bd)}.gs-busy-bar{height:6px;border-radius:3px;background:var(--surface);overflow:hidden}.gs-busy-bar i{display:block;height:100%;width:0%;background:var(--accent);transition:width .12s var(--ease)}.gs-busy span{font-size:.74rem;color:var(--text-muted);font-family:var(--font-mono)}.gs-transport{display:flex;align-items:center;gap:.6rem;margin-top:.6rem}.gs-play{flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--gs-bd);background:var(--surface);color:var(--text);font-size:.9rem;cursor:pointer}.gs-play:hover{background:var(--surface-hover)}#gs-scrub{flex:1;min-width:0}.gs-time{flex:none;font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);min-width:6ch;text-align:right}.gs-capture{margin-top:.7rem;padding:.6rem .7rem;border:1px solid var(--gs-bd);border-radius:var(--radius-md);background:var(--surface)}.gs-cap-row{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.45rem}.gs-cap-title{font-weight:600;font-size:.84rem}.gs-cap-meta{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted)}.gs-cap-grid{display:grid;grid-template-columns:1fr 1fr auto auto;gap:.5rem .7rem;align-items:end}.gs-cap-grid label{display:flex;flex-direction:column;gap:.18rem;font-size:.74rem;color:var(--text-muted)}.gs-cap-grid output{font-family:var(--font-mono);font-size:.7rem;color:var(--text)}.gs-cap-grid select{font:inherit;font-size:.78rem;padding:.3rem;border:1px solid var(--gs-bd);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}.gs-strip-wrap{margin-top:.7rem}.gs-strip-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.35rem}#gs-strip-title{font-weight:600;font-size:.84rem}.gs-strip-hint{font-size:.72rem;color:var(--text-muted)}.gs-strip{display:flex;gap:4px;overflow-x:auto;padding:.4rem;background:var(--surface);border:1px solid var(--gs-bd);border-radius:var(--radius-md);min-height:64px;scrollbar-width:thin}.gs-thumb{position:relative;flex:none;width:58px;height:46px;border-radius:var(--radius-sm);overflow:hidden;border:2px solid transparent;cursor:pointer;background:var(--bg)}.gs-thumb canvas{width:100%;height:100%;object-fit:cover;display:block}.gs-thumb.gs-sel{border-color:var(--accent)}.gs-thumb.gs-out{opacity:.32;filter:grayscale(.6)}.gs-thumb.gs-drag{outline:2px dashed var(--accent)}.gs-thumb-n{position:absolute;left:2px;bottom:1px;font-family:var(--font-mono);font-size:.58rem;color:#fff;text-shadow:0 1px 2px #000;pointer-events:none}.gs-thumb-del{position:absolute;top:1px;right:1px;width:15px;height:15px;line-height:13px;text-align:center;border:none;border-radius:50%;background:#0009;color:#fff;font-size:.62rem;cursor:pointer;opacity:0;transition:opacity var(--dur-fast);padding:0}.gs-thumb:hover .gs-thumb-del{opacity:1}.gs-rail{display:flex;flex-direction:column;gap:.55rem}.gs-acc{border:1px solid var(--gs-bd);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.gs-acc-h{width:100%;display:flex;justify-content:space-between;align-items:center;font:inherit;font-weight:600;font-size:.86rem;color:var(--text);background:none;border:none;padding:.6rem .75rem;cursor:pointer}.gs-acc-x{color:var(--text-muted);transition:transform var(--dur-fast) var(--ease)}.gs-acc.gs-open .gs-acc-x{transform:rotate(180deg)}.gs-acc-b{display:none;flex-direction:column;gap:.6rem;padding:0 .75rem .8rem}.gs-acc.gs-open .gs-acc-b{display:flex}.gs-ctl{display:flex;flex-direction:column;gap:.25rem;font-size:.76rem;color:var(--text-muted)}.gs-ctl output{font-family:var(--font-mono);font-size:.72rem;color:var(--text)}.gs-ctl input[type=range]{width:100%}.gs-ctl-bg{flex-direction:row;align-items:center;justify-content:space-between}.gs-ctl-bg input[type=color]{width:42px;height:26px;padding:0;border:1px solid var(--gs-bd);border-radius:var(--radius-sm);background:none;cursor:pointer}.gs-seg{display:inline-flex;flex-wrap:nowrap;border:1px solid var(--gs-bd);border-radius:var(--radius-sm);overflow:hidden}.gs-seg-wrap{flex-wrap:wrap}.gs-seg button{flex:1;font:inherit;font-size:.76rem;font-weight:600;color:var(--text-muted);background:var(--bg);border:none;border-right:1px solid var(--gs-bd);padding:.4rem .5rem;cursor:pointer;white-space:nowrap}.gs-seg button:last-child{border-right:none}.gs-seg button[aria-pressed=true]{background:var(--accent);color:#fff}.gs-seg button:disabled{opacity:.4;cursor:not-allowed}.gs-toggles{display:flex;gap:.4rem}.gs-toggle{flex:1;font:inherit;font-size:.78rem;font-weight:600;color:var(--text-muted);background:var(--bg);border:1px solid var(--gs-bd);border-radius:var(--radius-sm);padding:.42rem;cursor:pointer}.gs-toggle[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent)}.gs-cap-list{display:flex;flex-direction:column;gap:.5rem}.gs-cap-item{border:1px solid var(--gs-bd);border-radius:var(--radius-sm);padding:.5rem;display:flex;flex-direction:column;gap:.45rem;background:var(--bg)}.gs-cap-item input[type=text]{font:inherit;font-size:.82rem;padding:.35rem .45rem;border:1px solid var(--gs-bd);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}.gs-cap-item-row{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.gs-pos{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;width:54px}.gs-pos button{aspect-ratio:1;border:1px solid var(--gs-bd);background:var(--surface);border-radius:2px;cursor:pointer;padding:0}.gs-pos button[aria-pressed=true]{background:var(--accent)}.gs-cap-item label{font-size:.72rem;color:var(--text-muted);display:flex;align-items:center;gap:.3rem}.gs-cap-del{margin-left:auto;font-size:.72rem;color:var(--accent-text);background:none;border:none;cursor:pointer}.gs-est{font-family:var(--font-mono);font-size:.74rem;color:var(--text-muted);margin:.1rem 0 0}.gs-note{font-size:.72rem;color:var(--accent-text);margin:0;line-height:1.35}.gs-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0000008c}.gs-modal-card{width:min(440px,100%);background:var(--surface);border:1px solid var(--gs-bd);border-radius:var(--radius-lg);box-shadow:0 18px 60px #0006;display:flex;flex-direction:column;max-height:92vh}.gs-modal-head{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1rem;border-bottom:1px solid var(--gs-bd)}.gs-modal-head h3{margin:0;font-size:1.02rem}.gs-modal-x{background:none;border:none;font-size:1rem;color:var(--text-muted);cursor:pointer}.gs-modal-body{padding:1rem;overflow-y:auto}.gs-summary{display:grid;grid-template-columns:auto 1fr;gap:.3rem .9rem;margin:0 0 .8rem;font-size:.84rem}.gs-summary dt{color:var(--text-muted)}.gs-summary dd{margin:0;text-align:right;font-family:var(--font-mono);font-size:.8rem}.gs-priv{display:flex;gap:.5rem;align-items:flex-start;font-size:.78rem;color:var(--text-muted);margin:0}.gs-priv svg{width:18px;height:18px;flex:none;color:var(--accent-text);margin-top:1px}.gs-export-progress{margin-top:.9rem;display:flex;flex-direction:column;gap:.35rem}.gs-export-progress span{font-family:var(--font-mono);font-size:.74rem;color:var(--text-muted)}.gs-export-done{margin-top:.9rem}.gs-result{display:flex;flex-direction:column;gap:.5rem;align-items:center;text-align:center}.gs-result img{max-width:100%;max-height:200px;border-radius:var(--radius-sm);border:1px solid var(--gs-bd)}.gs-result-meta{font-family:var(--font-mono);font-size:.78rem;color:var(--text)}.gs-result-ok{color:var(--accent-text);font-weight:600;font-size:.82rem}.gs-modal-foot{display:flex;justify-content:flex-end;gap:.5rem;padding:.85rem 1rem;border-top:1px solid var(--gs-bd)}@media(max-width:820px){.gs-main{grid-template-columns:1fr}.gs-rail{order:3}.gs-cap-grid{grid-template-columns:1fr 1fr}#gs-canvas{max-height:48vh}.gs-tb-btn{padding:.5rem .6rem}}
