.title-stage { margin-top: 0; }
.title-stage canvas { aspect-ratio: 16 / 9; }
.timeline { position: relative; display: flex; height: 10px; border-radius: 5px; overflow: hidden; background: var(--line); }
.timeline .seg { display: block; flex: 1 1 0; min-width: 2px; }
.timeline .fi { background: linear-gradient(90deg, var(--line), var(--green)); }
.timeline .st { background: var(--green); }
.timeline .fo { background: linear-gradient(90deg, var(--green), var(--line)); }
.timeline .head { position: absolute; top: 0; bottom: 0; width: 3px; margin-left: -1px; background: var(--ink); }
.title-parts { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 14px; }
.tpart { border: 1px solid var(--line); border-radius: var(--radius); padding: 10px 12px 12px; margin: 0; display: grid; gap: 8px; min-width: 0; }
.tpart legend { padding: 0 6px; font-weight: 600; font-size: 14px; }
.tp-row { display: grid; grid-template-columns: minmax(0, 1fr) 44px; gap: 8px; }
.tp-row input[type='color'] { width: 44px; height: 100%; min-height: 38px; padding: 2px; border: 1px solid var(--line-strong); border-radius: 7px; background: var(--surface); cursor: pointer; }
.fmt .mc-btn[aria-pressed='true'] { background: var(--green-soft); border-color: var(--green); }
.cmd-block { margin: 6px 0 8px; font: 12.5px/1.6 var(--mono); background: var(--surface-2); border: 1px solid var(--line); border-radius: 7px; padding: 8px 10px; overflow-x: auto; white-space: pre; }
