:root{color-scheme:light;--ink: #181816;--muted: #6b6b63;--line: #242421;--paper: #f7f4ee;--panel: #fffdfa;--blue: #246dca;--green: #167a52;--coral: #d75d43;--gold: #d8a02a;--shadow: 0 18px 48px rgba(20, 22, 20, .16);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:linear-gradient(135deg,rgba(36,109,202,.08),transparent 34%),linear-gradient(215deg,rgba(216,160,42,.12),transparent 38%),var(--paper);color:var(--ink)}button,input,textarea,select{font:inherit}button{border:0;cursor:pointer}.app-shell{width:min(100%,430px);min-height:100vh;margin:0 auto;background:var(--panel);box-shadow:var(--shadow)}.compose-screen,.editor-screen,.generating-screen{min-height:100vh;padding:max(16px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom))}.top-nav,.editor-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow{margin:0 0 2px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin:0}.top-nav h1,.editor-title h1{font-size:24px;line-height:1.05;letter-spacing:0}.status-pill{display:inline-flex;align-items:center;gap:7px;min-width:94px;justify-content:center;border:1px solid rgba(24,24,22,.15);border-radius:8px;padding:7px 9px;color:var(--muted);font-size:11px;font-weight:800;background:#fff}.status-pill span{width:7px;height:7px;border-radius:50%;background:var(--green)}.upload-panel{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}.video-thumb{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:8px;aspect-ratio:16 / 10;background:#111}.video-thumb video,.preview-video{width:100%;height:100%;object-fit:cover}.video-thumb__badge{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;max-width:calc(100% - 20px);gap:6px;border-radius:8px;padding:7px 9px;color:#fff;font-size:11px;font-weight:800;background:#0000009e}.video-thumb__badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-button,.primary-action,.export-button,.sheet-done{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:8px;color:#fff;background:var(--ink);font-weight:850}.upload-button input{display:none}.asset-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.asset-tile{position:relative;overflow:hidden;border:1px solid rgba(24,24,22,.2);border-radius:8px;aspect-ratio:3 / 4;background:#ece9e2}.asset-tile video{width:100%;height:100%;object-fit:cover}.asset-tile span{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;color:#fff;background:var(--ink);font-size:10px;font-weight:900}.intent-panel{margin-top:22px}.section-title{display:flex;align-items:center;gap:7px;margin-bottom:10px;font-size:14px;font-weight:850}.chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.intent-chip{display:grid;grid-template-columns:20px 1fr;grid-template-rows:auto auto;align-items:center;min-height:62px;border:1px solid rgba(24,24,22,.22);border-radius:8px;padding:10px;color:var(--ink);background:#fff;text-align:left}.intent-chip svg{grid-row:1 / span 2;color:var(--blue)}.intent-chip span{font-size:14px;font-weight:850}.intent-chip small{color:var(--muted);font-size:11px;font-weight:750}.intent-chip.is-selected{border-color:var(--ink);color:#fff;background:var(--ink)}.intent-chip.is-selected svg,.intent-chip.is-selected small{color:#ffffffc7}.intent-input{width:100%;margin-top:10px;border:1px solid var(--line);border-radius:8px;padding:12px;resize:vertical;color:var(--ink);background:#fff;line-height:1.45}.primary-action{width:100%;margin-top:14px;background:linear-gradient(135deg,var(--ink),#30302b)}.generating-screen{display:grid;place-items:center}.generation-card{width:100%;border:1px solid var(--line);border-radius:8px;padding:22px;background:#fff}.spinner{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 14px;border:1px solid var(--line);border-radius:50%;color:var(--coral);animation:pulse 1s ease-in-out infinite alternate}@keyframes pulse{0%{transform:scale(.96)}to{transform:scale(1.04)}}.generation-card h2{text-align:center;font-size:22px}.routing-list{display:grid;gap:8px;margin-top:18px}.routing-row{display:flex;justify-content:space-between;border:1px solid rgba(24,24,22,.12);border-radius:8px;padding:10px;color:var(--muted);font-size:13px;font-weight:800}.routing-row .is-hot{color:var(--green)}.editor-screen{display:flex;flex-direction:column;gap:10px;background:#f8f6f1}.editor-nav{position:sticky;z-index:5;top:0;margin:-16px -16px 0;padding:max(12px,env(safe-area-inset-top)) 16px 10px;background:#f8f6f1f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.icon-button{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(24,24,22,.18);border-radius:8px;color:var(--ink);background:#fff}.editor-title{min-width:0;flex:1}.editor-title h1{overflow:hidden;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.editor-title span{color:var(--muted);font-size:11px;font-weight:800}.export-button{min-height:36px;padding:0 12px;font-size:13px}.error-strip{border:1px solid rgba(215,93,67,.28);border-radius:8px;padding:8px 10px;color:#8a311f;background:#d75d431a;font-size:12px;font-weight:750}.preview-frame{position:relative;overflow:hidden;width:min(100%,342px);margin:0 auto;border:1px solid var(--line);border-radius:8px;aspect-ratio:9 / 16;background:#111}.preview-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.28),transparent 24%,transparent 68%,rgba(0,0,0,.42)),#00000014;pointer-events:none}.overlay{position:absolute;z-index:2;border:0;color:#fff;background:transparent;text-shadow:0 2px 10px rgba(0,0,0,.62)}.budget-layer{top:10px;right:12px;display:grid;gap:0;padding:0;font-size:11px;text-align:right}.budget-layer span{font-size:11px;font-weight:850;line-height:1;text-transform:uppercase}.budget-layer strong{font-size:17px;line-height:1.05}.clock-layer{top:28%;left:50%;padding:0;transform:translate(-50%);text-align:center}.clock-layer strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:46px;line-height:1;color:#fff}.subtitle-layer{right:16px;bottom:72px;left:16px;display:flex;flex-direction:column;gap:4px;border:0;background:transparent;box-shadow:none}.subtitle-layer span,.subtitle-layer em{align-self:center;max-width:100%;border-radius:6px;padding:4px 8px;color:#fff;background:#000000a8;font-size:13px;font-style:normal;font-weight:850;text-align:center}.subtitle-layer em{color:#ffffffd1;font-size:12px}.route-layer{right:10px;bottom:12px;left:10px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:0;text-align:left}.route-layer span{border:1px solid rgba(255,255,255,.9);border-radius:6px;padding:2px 6px;color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:900}.route-layer strong{overflow:hidden;color:#fff;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.location-layer{right:16px;bottom:33.333%;left:16px;padding:0;color:#fff;font-size:19px;font-weight:900;text-align:center;transform:translateY(50%)}.layer-row,.adjust-row{display:flex;gap:7px;overflow-x:auto;padding-bottom:1px}.layer-chip,.adjust-row button,.selected-clip,.clip-tile{border:1px solid rgba(24,24,22,.18);border-radius:8px;background:#fff}.layer-chip{display:inline-flex;align-items:center;flex:none;gap:5px;min-height:34px;padding:0 10px;color:var(--muted);font-size:12px;font-weight:850}.layer-chip.is-selected{border-color:var(--ink);color:#fff;background:var(--ink)}.filmstrip{display:flex;gap:7px;overflow-x:auto}.clip-tile{position:relative;flex:0 0 52px;height:66px;background:linear-gradient(135deg,rgba(36,109,202,.16),transparent),repeating-linear-gradient(45deg,#ece9e2 0 7px,#f7f5f0 7px 14px)}.clip-tile.is-selected{border-color:var(--blue);box-shadow:inset 0 0 0 2px #246dca3d}.clip-tile span{position:absolute;top:5px;left:6px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;color:#fff;background:var(--ink);font-size:10px;font-weight:900}.clip-tile small{position:absolute;right:5px;bottom:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:900}.adjust-row button{display:inline-flex;align-items:center;flex:none;gap:5px;min-height:34px;padding:0 9px;color:var(--ink);font-size:12px;font-weight:850}.selected-clip{display:flex;align-items:center;gap:7px;min-height:38px;padding:7px 9px;color:var(--muted);font-size:12px;font-weight:800}.selected-clip span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-clip button{border-radius:6px;padding:4px 8px;color:#fff;background:var(--blue);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:900}.recipe-panel{overflow:hidden;border:1px solid rgba(24,24,22,.18);border-radius:8px;background:#fff}.recipe-panel summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px;list-style:none;cursor:pointer}.recipe-panel summary::-webkit-details-marker{display:none}.recipe-panel summary span{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:900}.recipe-panel summary small{color:var(--muted);font-size:11px;font-weight:800}.recipe-panel pre{max-height:310px;margin:0;overflow:auto;border-top:1px solid rgba(24,24,22,.12);padding:12px;color:#272722;background:#f4f1eb;font-size:11px;line-height:1.45}.sheet-backdrop{position:fixed;z-index:20;inset:0;display:flex;align-items:flex-end;justify-content:center;background:#00000052}.bottom-sheet{width:min(100%,430px);max-height:78vh;overflow:auto;border-radius:8px 8px 0 0;padding:14px 16px max(16px,env(safe-area-inset-bottom));background:#fff}.sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sheet-header h2{font-size:19px}.sheet-body{display:grid;gap:12px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field{display:grid;gap:5px}.field span{color:var(--muted);font-size:12px;font-weight:850}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px;color:var(--ink);background:#fff}.segmented{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid var(--line);border-radius:8px}.segmented button{min-height:40px;color:var(--ink);background:#fff;font-weight:850}.segmented button+button{border-left:1px solid var(--line)}.segmented .is-selected{color:#fff;background:var(--ink)}.sheet-done{width:100%;margin-top:14px}.export-actions{display:grid;gap:9px}.export-actions button{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:10px;width:100%;border:1px solid rgba(24,24,22,.18);border-radius:8px;padding:12px;color:var(--ink);background:#fff;text-align:left}.export-actions button:disabled{opacity:.6;cursor:wait}.export-actions button span{display:grid;gap:2px;font-size:14px;font-weight:900}.export-actions button small{color:var(--muted);font-size:11px;font-weight:750}.export-status{margin-top:12px;border:1px solid rgba(24,24,22,.12);border-radius:8px;padding:10px;color:var(--muted);background:#f7f4ee;font-size:12px;font-weight:800;line-height:1.45}.export-status--working{color:#8b6218;background:#d8a02a24}.export-status--done{color:#0f5d3d;background:#167a521f}.export-status--error{color:#8a311f;background:#d75d431a}@media(min-width:760px){.app-shell{margin-block:20px;min-height:calc(100vh - 40px);border-radius:8px;overflow:hidden}}
