/* Scoped workbench; original aspect ratio always wins, including native fullscreen. */
#seedWorkbench[hidden], .seed-panel[hidden] { display:none!important; }
.seed-head { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 0 12px; }
.seed-head h3 { font-size:19px; margin:0 0 6px; }
.seed-head p,.seed-muted { color:var(--text-2); font-size:13px; line-height:1.6; margin:4px 0; }
.seed-actions,.seed-bar { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.seed-actions .btn { flex-shrink:0; }
.seed-tabs { display:flex; gap:8px; border-bottom:1px solid var(--hair); padding:8px 0 14px; }
.seed-tabs [aria-selected=true] { background:var(--accent-soft); color:var(--accent); border-color:transparent; }
.seed-bar { padding:16px 0; }.seed-bar>span { margin-right:auto; }
.seed-panel select,.seed-dialog select,.seed-time { font:inherit; border:1px solid var(--hair-strong); border-radius:8px; padding:7px 9px; background:var(--surface); }
.seed-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:18px; }
.seed-batch { grid-column:1/-1; margin:16px 0 0; font-size:16px; }
.seed-card { border:1px solid var(--hair); border-radius:14px; overflow:hidden; background:var(--surface); }
.seed-card-video { display:block; width:100%; aspect-ratio:4/3; object-fit:contain; background:#161719; }
.seed-card-body { padding:14px; }.seed-card-body h4 { margin:0 0 6px; font-size:14px; line-height:1.5; }
.seed-card-body .seed-actions { margin-top:12px; }.seed-card-body select { flex:1; min-width:90px; }
.seed-error { color:var(--red); font-size:13px; overflow-wrap:anywhere; }.seed-error:empty,.seed-status:empty { display:none; }
.seed-status { font-size:13px; }.seed-empty { color:var(--text-2); padding:24px 10px; font-size:14px; line-height:1.6; }
.seed-wait { aspect-ratio:4/3; display:grid; place-items:center; background:var(--surface-sunken); color:var(--text-2); }
.seed-dialog { width:min(1180px,96vw); max-height:94dvh; border:0; border-radius:18px; padding:22px; background:var(--surface); color:var(--text); box-shadow:var(--sh-3); margin:auto; }
.seed-dialog::backdrop { background:rgba(18,22,28,.48); backdrop-filter:blur(5px); }
.seed-dialog-head { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:18px; }.seed-dialog-head h3 { margin:0; font-size:18px; }
.seed-editor { display:grid; grid-template-columns:minmax(0,1fr); gap:22px; }
.seed-main { min-width:0; }.seed-player { width:100%; height:min(53vh,540px); object-fit:contain; background:#111214; border-radius:10px; display:block; }
.seed-player:fullscreen,.seed-card-video:fullscreen { object-fit:contain!important; width:100%!important; height:100%!important; aspect-ratio:auto; }
.seed-player::-webkit-media-controls-panel,.seed-card-video::-webkit-media-controls-panel { object-fit:contain; }
.seed-timeline { width:100%; margin:18px 0; accent-color:var(--accent); }.seed-time { width:90px; }
.seed-prompt { margin-top:18px; font-size:13px; }.seed-prompt pre { white-space:pre-wrap; max-height:250px; overflow:auto; padding:14px; background:var(--surface-sunken); line-height:1.7; }
.seed-source-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px; }.seed-source-grid .btn { display:block; height:auto; padding:6px; white-space:normal; }.seed-source-grid img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:7px; display:block; margin-bottom:8px; }
@media(max-width:800px) { .seed-head { display:block; }.seed-head>.seed-actions { margin-top:12px; }.seed-editor { grid-template-columns:1fr; }.seed-sidebar { max-height:none; }.seed-dialog { padding:14px; }.seed-player { height:42vh; }.seed-grid { grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); } }
.unit-workbench { padding:16px; border-top:1px solid var(--hair); }
.unit-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:16px; }
.unit-card { border:1px solid var(--hair); border-radius:12px; padding:14px; }.unit-card h4 { margin:0; }
.unit-player { width:100%; max-height:340px; object-fit:contain; background:#111; }.unit-player:fullscreen { object-fit:contain!important; }
.unit-sequence { display:flex; gap:6px; flex-wrap:wrap; margin:12px 0; }.unit-sequence span { background:var(--surface-sunken); padding:6px 10px; border-radius:6px; }
.unit-card details { margin:12px 0; }.unit-card details a { display:inline-block; padding:8px; }.unit-anchor { display:block; width:100px; }
.unit-clip-library { padding:12px 16px; }.unit-pick-video { width:180px; height:120px; object-fit:contain; background:#111; }
.unit-pick-list,.unit-order { display:grid; gap:12px; margin:16px 0; }

/* 主路线 6 秒快剪（在昀 10/27） */
.loop-intro { margin-top: 6px; padding: 10px 14px; border-radius: 10px; background: var(--accent-soft); }
.loop-intro p { margin: 2px 0; font-size: 13px; line-height: 1.65; color: var(--text); }
.loop-intro b { color: var(--accent); }
.seed-tab-archive { margin-left: auto; color: var(--text-2); }
.loop-flow { list-style: none; counter-reset: step; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 16px 0 8px; margin: 0; }
.loop-flow-step { counter-increment: step; display: flex; flex-direction: column; gap: 8px; padding: 14px; border: 1px solid var(--hair); border-radius: 12px; background: var(--surface); }
.loop-flow-step > b { font-size: 15px; }
.loop-flow-step > b::before { content: counter(step); display: inline-grid; place-items: center; width: 22px; height: 22px; margin-right: 8px; border-radius: 50%; background: var(--accent); color: #fff; font-size: 12px; }
.loop-flow-step > .btn, .loop-flow-step .seed-actions { margin-top: auto; }
.loop-sources { display: flex; flex-direction: column; gap: 6px; }
.loop-source { display: flex; align-items: center; gap: 8px; font-size: 12px; padding: 4px; border-radius: 8px; cursor: pointer; }
.loop-source:hover { background: var(--surface-sunken); }
.loop-source.is-current { box-shadow: 0 0 0 1.5px var(--accent) inset; }
.loop-source img { width: 56px; height: 42px; object-fit: cover; border-radius: 6px; }
.loop-source > span { flex: 1; }
.loop-source-look { font-size: 12px; color: var(--accent); white-space: nowrap; }
.loop-missing { color: var(--red); }
.loop-list { display: flex; flex-direction: column; gap: 18px; padding-top: 8px; }
.loop-card { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 18px; padding: 14px; border: 1px solid var(--hair); border-radius: 14px; background: var(--surface); }
.loop-card-side h4 { margin: 10px 0 4px; font-size: 14px; }
.loop-card-side .seed-card-video { border-radius: 8px; }
.loop-shots { min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.loop-shots-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.loop-working { padding: 30px 0; }
.loop-shot { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 10px; align-items: start; padding-top: 10px; border-top: 1px solid var(--hair); }
.loop-shot-label { white-space: pre-line; font-size: 12px; line-height: 1.5; color: var(--text-2); }
.loop-cands { display: grid; grid-template-columns: repeat(3, minmax(0, 230px)); gap: 10px; }
.loop-cand { margin: 0; border-radius: 10px; overflow: hidden; border: 1px solid var(--hair); background: var(--surface-sunken); }
.loop-cand.is-best { border-color: var(--accent); box-shadow: 0 0 0 1.5px var(--accent); }
.loop-cand img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; cursor: zoom-in; }
.loop-cand figcaption { display: flex; flex-direction: column; gap: 6px; padding: 8px; font-size: 12px; line-height: 1.5; color: var(--text-2); }
.loop-archive-note { padding: 14px 0 0; }
.loop-archive-note p { margin: 0 0 10px; font-size: 13px; line-height: 1.6; color: var(--text-2); }
@media (max-width: 900px) { .loop-flow { grid-template-columns: 1fr; } .loop-card { grid-template-columns: 1fr; } .loop-cands { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.loop-count { font:inherit; border:1px solid var(--hair-strong); border-radius:8px; padding:6px 8px; background:var(--surface); }
