/* Local video editor: one timeline, one transport, optional tools on demand. */
#upload-prototype .upload-player { background: #0b1022; border: 1px solid #ffffff12; border-radius: 14px; overflow: hidden; }
#upload-prototype .editor-file { display: flex; align-items: center; gap: 16px; padding: 12px 16px; margin: 0; border: 0; background: #11182d; font-size: 12px; }
#upload-prototype .editor-file>span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #a8b0cc; }
#upload-prototype .editor-file button { flex-shrink: 0; margin-left: auto; border: 0; padding: 4px 0; background: none; color: #bcb5f7; font-size: 11px; }
#upload-prototype .timing-timeline { padding: 14px 18px 0; background: transparent; }
#upload-prototype .timeline-heading { margin-bottom: 14px; font-size: 11px; color: #8691b0; }
#upload-prototype[data-step="2"] .timeline-heading { margin-bottom: 26px; }
#upload-prototype .timeline-heading select { padding: 5px 9px; min-height: 30px; background: #151e36; border: 1px solid #ffffff12; font: 11px var(--sans); }
#upload-prototype .timeline-rail { height: 44px; margin-bottom: 9px; border-radius: 5px; }
#upload-prototype[data-step="2"] .timeline-rail { margin-bottom: 20px; }
#upload-prototype #upload-scrub::-webkit-slider-runnable-track, #upload-prototype #upload-scrub::-webkit-slider-thumb { height: 44px; }
#upload-prototype #upload-scrub::-moz-range-track, #upload-prototype #upload-scrub::-moz-range-thumb { height: 44px; }
#upload-prototype .timeline-scale { color: #727f9d; font-size: 10px; }
#upload-prototype .editor-transport { display: flex; align-items: center; gap: 16px; padding: 12px 18px 16px; }
#upload-prototype .editor-playback { display: flex; align-items: center; gap: 4px; }
#upload-prototype .editor-playback button { display: grid; place-items: center; width: 36px; height: 36px; padding: 8px; border: 0; border-radius: 8px; color: #bac2db; background: transparent; }
#upload-prototype .editor-playback button:hover { background: #ffffff0c; color: white; }
#upload-prototype .editor-playback .editor-play { width: 40px; height: 40px; color: #e6e2ff; background: #9284eb24; border: 1px solid #ae9aff26; }
#upload-prototype .editor-playback svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
#upload-prototype .editor-play .play-shape { fill: currentColor; stroke: none; }
#upload-prototype .editor-play .pause-shape { display: none; stroke-width: 4; }
#upload-prototype .editor-play.is-playing .pause-shape { display: block; }
#upload-prototype .editor-play.is-playing .play-shape { display: none; }
#upload-prototype .editor-clock { font: 12px var(--mono); font-variant-numeric: tabular-nums; color: #d1d5e8; }
#upload-prototype .editor-speed { margin-left: auto; }
#upload-prototype .editor-speed select { padding: 6px 9px; min-height: 32px; border: 1px solid #ffffff12; background: #151e36; border-radius: 7px; font: 11px var(--sans); color: #b8c1dc; }
#upload-prototype .editor-frame-note { padding: 0 18px 12px; font-size: 11px; line-height: 1.6; color: #8f9bb9; }
#upload-prototype .editor-adjustments { border-top: 1px solid #ffffff0c; }
#upload-prototype .editor-adjustments summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; font-size: 12px; color: #c6cee4; cursor: pointer; list-style: none; }
#upload-prototype .editor-adjustments summary::-webkit-details-marker { display: none; }
#upload-prototype .editor-adjustments summary::after { content: '+'; font-size: 18px; color: #8f9bb9; }
#upload-prototype .editor-adjustments[open] summary::after { content: '−'; }
#upload-prototype .editor-adjustments summary>span:first-child { display: flex; align-items: center; gap: 10px; }
#upload-prototype .editor-adjustments small { font-size: 10px; color: #7784a3; }
#upload-prototype #mask-count { margin-left: auto; font-size: 10px; color: #8f9bb9; }
#upload-prototype .editor-adjustments-body { padding: 0 18px 16px; }
#upload-prototype .editor-adjustments-body>p { font-size: 12px; line-height: 1.7; color: #8f9bb9; }
#upload-prototype .editor-adjustments .mask-toolbar { border: 0; padding: 12px 0 0; gap: 12px; }
#upload-prototype .editor-tool-group { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
#upload-prototype .editor-tool-group button { padding: 7px 11px; min-height: 36px; font-size: 11px; border-color: #ffffff16; }
#upload-prototype .editor-tool-group button:disabled { display: none; }
#upload-prototype .editor-adjustments #mask-help { padding: 12px 0 0; margin: 0; color: #c4bcf8; }
#upload-prototype[data-step="0"] .editor-frame, #upload-prototype[data-step="0"] #frame-step-note { display: none; }
#upload-prototype[data-step="0"] .timeline-heading { display: none; }
#upload-prototype[data-step="2"] .editor-adjustments { display: none; }
@media(max-width:650px) {
 #upload-prototype .editor-transport { gap: 10px; padding-inline: 12px; }
 #upload-prototype .editor-playback { gap: 0; }
 #upload-prototype .editor-playback button { width: 32px; }
 #upload-prototype .editor-playback .editor-play { width: 36px; }
 #upload-prototype .editor-clock { font-size: 11px; }
 #upload-prototype .editor-speed select { width: 79px; padding-inline: 5px; }
 #upload-prototype .editor-adjustments summary { padding: 12px; }
 #upload-prototype #mask-count { display: none; }
}

/* Direct marker actions, matching the diamond and range brackets on the filmstrip. */
#upload-prototype[data-step="2"] .upload-window { display: block; }
#upload-prototype[data-step="2"] #mobile-trim-preview { position: static; }
#upload-prototype .timing-picker { margin-top: 12px; }
#upload-prototype .timing-set-buttons { display: flex; gap: 8px; }
#upload-prototype .timing-set-buttons button { flex: 1; display: flex; align-items: center; gap: 12px; padding: 10px 14px; border: 1px solid #ffffff20; border-radius: 8px; background: #151d35; text-align: left; font-size: 13px; color: #e0e4f4; }
#upload-prototype .timing-set-buttons button:hover { background: #242d49; border-color: #a5a7ff80; }
#upload-prototype .timing-set-buttons strong { display: block; margin-top: 4px; color: #8f9bb9; font: 11px var(--mono); }
#upload-prototype .timing-set-buttons .confirmed strong { color: #ddd8ff; }
#upload-prototype .marker-symbol { font: 24px var(--mono); color: #b2a5ff; }
#upload-prototype .inspection-symbol { font-size: 17px; color: #5eead4; }
#upload-prototype .end-symbol { color: #fbbf24; }
#upload-prototype #marker-feedback:empty { display: none; }
#upload-prototype .timeline-marker span { display: none; }
#upload-prototype .timeline-marker { top: -3px; bottom: -3px; }
#upload-prototype .timeline-marker::before { inset: 0 12px; border-radius: 1px; box-shadow: 0 0 0 1px #080d2080; }
#upload-prototype .timeline-marker[data-handle=start]::after, #upload-prototype .timeline-marker[data-handle=end]::after { content: ''; position: absolute; inset: 0 0 0 12px; border-block: 4px solid var(--marker); }
#upload-prototype .timeline-marker[data-handle=end]::after { inset: 0 12px 0 0; }
#upload-prototype .timeline-marker[data-handle=inspection]::before { background: repeating-linear-gradient(to bottom,var(--marker) 0 4px,transparent 4px 7px); }
#upload-prototype .timeline-marker[data-handle=inspection]::after { content: ''; position: absolute; width: 12px; height: 12px; left: 8px; top: -5px; background: var(--marker); transform: rotate(45deg); border: 1px solid #080d20; }
#upload-prototype .timeline-marker:focus-visible { outline: 2px solid white; outline-offset: 3px; border-radius: 3px; }
#upload-prototype[data-step="2"] .timeline-heading { margin-bottom: 14px; }
#upload-prototype[data-step="2"] .timeline-rail { margin-bottom: 9px; }
#upload-prototype .training-disclosure { margin-top: 20px; padding: 16px; border: 1px solid #ffffff16; border-radius: 10px; background: #0c1328; font-size: 13px; line-height: 1.5; }
#upload-prototype .privacy-heading { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
#upload-prototype .privacy-heading strong { font-size: 13px; }
#upload-prototype .privacy-heading span { color: #9ba6c3; font-size: 12px; }
#upload-prototype .privacy-heading a { margin-left: auto; font-size: 12px; }
#upload-prototype .training-options { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 12px 0 8px; }
#upload-prototype .training-options legend { margin-bottom: 8px; font-size: 12px; color: #9ba6c3; }
#upload-prototype .training-options label { margin: 0; padding: 12px; gap: 8px; background: #ffffff03; border: 1px solid #ffffff12; border-radius: 8px; cursor: pointer; }
#upload-prototype .training-options label:has(input:checked) { border-color: #a5a7ff70; background: #a5a7ff0b; }
#upload-prototype .training-options strong { font-size: 13px; font-weight: 500; }
#upload-prototype .training-options label>span>span { display: block; margin-top: 4px; font-size: 12px; line-height: 1.5; color: #9ba6c3; }
#upload-prototype .training-disclosure>p { margin: 8px 0 0; font-size: 12px; color: #9ba6c3; }
@media(max-width:650px) {
 #upload-prototype .timing-set-buttons { gap: 5px; }
 #upload-prototype .timing-set-buttons button { padding: 9px 7px; gap: 6px; font-size: 11px; }
 #upload-prototype .marker-symbol { font-size: 18px; }
 #upload-prototype .inspection-symbol { font-size: 12px; }
 #upload-prototype .timing-set-buttons strong { font-size: 10px; }
 #upload-prototype .training-options { grid-template-columns: 1fr; }
 #upload-prototype .privacy-heading span { flex-basis: 100%; order: 1; }
}
