:root{color-scheme:dark;--bg:#161a1e;--surface:#171b1f;--raised:#1c2730;--line:#3c4d5a;--muted:#b0bbc2;--quiet:#98a6af;--accent:#31d1ff;--text:#fff;font-family:Inter,Arial,Helvetica,sans-serif;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a,input,label{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,.dropzone:focus-within{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,p{margin:0}h2{font-size:.9375rem;font-weight:600}button{border:0}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.app-shell{max-width:1220px;margin:auto;padding:0 36px}.app-header{height:86px;display:flex;align-items:center;gap:23px;border-bottom:1px solid var(--line)}.logo{width:104px;height:104px;object-fit:contain;margin-left:-12px;margin-right:-8px}.header-divider{width:1px;height:25px;background:var(--line)}h1{font-size:1.125rem;font-weight:500;letter-spacing:-.02em}.privacy-note{font-size:.8125rem;color:var(--quiet);margin-left:auto}.workspace{display:grid;grid-template-columns:304px minmax(0,1fr);gap:36px;padding:26px 0}.controls{min-width:0}.control-section+.control-section{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.eyebrow{font-size:.6875rem;letter-spacing:.07em;color:var(--quiet);font-weight:600}.dropzone{position:relative;display:flex;min-height:109px;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:#171b1f;border:1px dashed #526674;border-radius:10px;cursor:pointer;padding:16px;transition:background .15s,border-color .15s}.dropzone:hover,.dropzone.dragging{border-color:var(--accent);background:#1c2730}.dropzone svg{color:var(--accent);margin-bottom:4px}.dropzone strong{font-size:.875rem;font-weight:500;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropzone span{font-size:.8125rem;color:var(--quiet)}.source-meta{font-size:.75rem;color:var(--quiet);margin-top:9px;line-height:1.5;overflow-wrap:anywhere}.model-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.model-option{position:relative;cursor:pointer}.model-option input{position:absolute;opacity:0;inset:0;pointer-events:none}.model-option>span{display:flex;flex-direction:column;gap:9px;padding:13px 13px;border:1px solid var(--line);background:var(--surface);border-radius:8px;transition:border-color .15s,background .15s}.model-option strong{font-size:.8125rem;font-weight:600}.model-option small{color:var(--quiet);font-size:.75rem;display:flex;justify-content:space-between;align-items:center}.model-option b{font-size:.625rem;font-weight:500;border:1px solid #465866;border-radius:3px;padding:2px 4px;letter-spacing:.04em}.model-option input:checked+span{border-color:var(--accent);background:#213341}.model-option input:checked+span strong{color:var(--accent)}.model-option input:focus-visible+span{outline:2px solid white;outline-offset:3px}.model-option input:disabled+span{opacity:.55;cursor:default}.flip-controls{display:flex;gap:9px}.secondary-button{min-height:42px;background:var(--raised);border:1px solid var(--line);color:#e0e6e8;border-radius:7px;font-size:.8125rem;display:flex;align-items:center;justify-content:center;gap:9px;flex:1}.secondary-button svg{width:19px;height:19px}.secondary-button[aria-pressed=true]{background:#243a4a;border-color:var(--accent);color:var(--accent)}.text-button{font-size:.75rem;padding:4px 0;color:var(--muted);background:none}.text-button:hover{color:white}.field-label{display:block;font-size:.75rem;color:var(--muted);margin-bottom:8px}.name-field{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:7px;overflow:hidden;margin-bottom:14px}.name-field input{min-width:0;width:100%;background:none;border:0;outline:none;color:white;padding:11px 12px;font-size:.875rem}.name-field span{color:var(--quiet);font-size:.8125rem;padding:12px}.name-field:focus-within{border-color:var(--accent)}.checkbox-row{display:flex;align-items:center;gap:9px;font-size:.8125rem;color:var(--muted);cursor:pointer;line-height:1.35}.checkbox-row:has(input:disabled){opacity:.5;cursor:default}.field-help{font-size:.75rem;color:var(--quiet);line-height:1.5;margin-top:9px}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:var(--accent);color:#fff;min-height:47px;padding:12px 17px;border-radius:8px;font-weight:700;font-size:.875rem;margin-top:20px}.primary-button:hover:enabled{background:#42c4ed}.primary-button span{font-size:1.25rem;font-weight:400}.status-message{font-size:.75rem;color:var(--quiet);line-height:1.5;margin-top:10px;overflow-wrap:anywhere}.status-message.error{color:#ffb3aa}.status-message.success{color:#9be3c4}.progress-label{display:flex;align-items:center;justify-content:space-between;margin-top:15px;font-size:.8125rem;color:#dde4e7}progress{appearance:none;border:0;height:4px;width:100%;border-radius:4px;overflow:hidden;margin:9px 0 0;background:var(--line)}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--accent)}progress::-moz-progress-bar{background:var(--accent)}.download-button{display:flex;align-items:center;justify-content:space-between;margin-top:12px;border:1px solid var(--accent);padding:12px 16px;border-radius:8px;color:var(--accent);font-size:.875rem;text-decoration:none}
.preview-panel{min-width:0;width:100%;justify-self:center;align-self:start;position:sticky;top:25px}.preview-heading{display:flex;align-items:center;justify-content:space-between;min-height:22px;margin-bottom:14px;gap:10px}.stage{position:relative;aspect-ratio:1;width:100%;background:#050505;border:1px solid #344553;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center}.stage video,.stage>img{position:absolute;width:100%;height:100%;object-fit:contain;transform-origin:center}.safety-circle{position:absolute;inset:1%;border:1px dashed #31d1ff66;border-radius:50%;pointer-events:none}.safety-circle::after{content:'';position:absolute;inset:49.6%;background:#31d1ff55;border-radius:50%}.empty-preview{display:flex;align-items:center;flex-direction:column;text-align:center;padding:30px;gap:12px;color:#d4dce0}.empty-preview svg{width:44px;height:44px;color:#71818c;margin-bottom:6px;stroke-width:1}.empty-preview p{font-size:.9375rem}.empty-preview span{font-size:.8125rem;color:var(--quiet)}.stage-badge{position:absolute;bottom:17px;left:17px;font-size:.625rem;font-weight:500;letter-spacing:.1em;color:#84939c;pointer-events:none}.timeline{display:flex;align-items:center;gap:14px;height:65px;border-bottom:1px solid var(--line)}.icon-button{display:flex;align-items:center;justify-content:center;color:#e5eaec;background:var(--raised);border-radius:7px;width:34px;height:34px;flex-shrink:0}.icon-button svg{width:19px;height:19px}.time-label{font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--quiet);white-space:nowrap}.timeline input{appearance:none;min-width:0;width:100%;height:4px;background:#759dd8;border-radius:5px;cursor:pointer;accent-color:var(--accent)}.timeline input::-webkit-slider-thumb{appearance:none;width:10px;height:10px;background:var(--accent);border-radius:50%}.timeline input::-moz-range-thumb{width:10px;height:10px;background:var(--accent);border:0;border-radius:50%}.preview-footer{display:flex;justify-content:space-between;gap:15px;font-size:.75rem;color:var(--quiet);line-height:1.5;margin-top:13px}.app-footer{display:flex;justify-content:space-between;gap:12px;padding:20px 0 25px;border-top:1px solid var(--line);font-size:.6875rem;color:#87959e;letter-spacing:.025em}
@media(min-width:1050px){.preview-panel{max-width:650px}.stage{max-height:650px}}@media(max-width:880px){.app-shell{padding:0 22px}.workspace{gap:25px;grid-template-columns:270px minmax(0,1fr)}.privacy-note{display:none}.preview-footer{flex-direction:column;gap:4px}.timeline{gap:9px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.model-option>span{min-height:46px;align-items:center;justify-content:center;padding:12px;text-align:center}
.logo{flex-shrink:0}

/* A fixed guide with 40 clear, widely spaced dashes. */
.safety-circle{inset:0;width:100%;height:100%;border:0;border-radius:0;color:var(--accent)}
.safety-circle circle{fill:none;stroke:currentColor;stroke-width:.65;stroke-dasharray:1.5 1;stroke-linecap:butt;opacity:.85}
.model-option>span{min-height:46px;align-items:center;justify-content:center;padding:12px;text-align:center}
.checkbox-row,.text-button{min-height:44px}
.icon-button{width:44px;height:44px}
.timeline input{height:44px;background:linear-gradient(#759dd8,#759dd8) center/100% 4px no-repeat}
.timeline input::-webkit-slider-thumb{width:16px;height:16px}
.timeline input::-moz-range-thumb{width:16px;height:16px}
@media(max-width:680px){
 .app-shell{padding:0 14px}.app-header{height:60px;gap:12px}.logo{width:74px;height:74px;margin-left:-8px;margin-right:-5px}.header-divider,.privacy-note{display:none}h1{font-size:15px}
 .workspace{display:block;padding:12px 0 20px}.controls{display:flex;flex-direction:column;gap:14px}
 .control-section+.control-section{border:0;margin:0;padding:0}.section-heading{margin-bottom:8px;min-height:24px}h2{font-size:14px}
 .dropzone{min-height:52px;display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;padding:12px;text-align:left;border-style:solid}.dropzone svg{margin:0}.dropzone strong{font-size:14px}.dropzone span{display:none}.source-meta{display:none}.eyebrow{font-size:10px}
 .preview-panel{position:static;width:100%;max-width:none;order:0}.preview-heading{display:none}.stage{max-width:440px;margin:auto;border-radius:9px}.stage-badge,.preview-footer{display:none}.empty-preview{gap:8px;padding:20px}.empty-preview p{font-size:14px}.empty-preview span{display:none}.empty-preview svg{width:34px;height:34px;margin:0}
 .timeline{height:48px;gap:8px;border:0}.time-label{font-size:11px}.icon-button{width:44px;height:44px}.timeline input{height:44px}
 .model-grid,.flip-controls{gap:8px}.flip-controls{flex-direction:row}.secondary-button{flex:1;min-height:44px;font-size:13px}.model-option strong{font-size:13px}.model-option>span{min-height:44px;padding:10px}
 .text-button{font-size:12px;padding:0 8px;margin:-10px -8px -10px 0;min-height:44px}
 .export-section{border-top:1px solid var(--line)!important;padding-top:12px!important}.export-section .field-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.name-field{margin-bottom:2px}.name-field input{font-size:16px;padding:10px}.name-field span{padding:12px}
 .checkbox-row{min-height:44px;font-size:13px}.primary-button{margin-top:4px;min-height:46px;font-size:14px}.field-help{font-size:12px}#formatNote{display:none}.status-message:not(.error):not(.success){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.status-message:empty{display:none}.status-message.error,.status-message.success{font-size:12px;margin-top:8px}
 .download-button{min-height:44px;padding:10px 12px;font-size:13px;margin-top:8px}
}

.primary-button{justify-content:center;text-align:center;font-weight:800;letter-spacing:.01em}

.model-option input:checked+span strong,.secondary-button[aria-pressed=true]{color:#fff}
