.factory-shell{--ff-paper:#faf8f4;--ff-ink:#1a1815;--ff-line:#ddd6cc;--ff-muted:#746e65;--ff-orange:#a8261c;min-height:100vh;color:var(--ff-ink);background:#f3f0eb;grid-template-columns:230px minmax(0,1fr);font-family:Arial,sans-serif;display:grid}.factory-shell button,.factory-login button{cursor:pointer;color:#29251f;background:#fffdf9;border:1px solid #d9d3ca;border-radius:7px;padding:9px 13px;font-size:13px;font-weight:600;line-height:1.3;transition:background .15s}.factory-shell button:hover:not(:disabled){background:#eae4da}.factory-shell button:disabled{opacity:.45;cursor:not-allowed}:is(.factory-shell button:focus-visible,.factory-shell input:focus-visible,.factory-shell select:focus-visible,.factory-shell textarea:focus-visible){outline-offset:2px;outline:3px solid #e85d2a}.factory-shell .ff-primary,.factory-login .ff-primary{color:#fff;background:#a8261c;border-color:#a8261c}.factory-shell .ff-primary:hover:not(:disabled){background:#7d1b14}.factory-shell a{color:inherit}.factory-nav{color:#f8f3eb;background:#211e19;flex-direction:column;height:100vh;padding:30px 20px 20px;display:flex;position:sticky;top:0;overflow:hidden}.factory-wordmark{letter-spacing:-4px;font-size:43px;font-weight:750;line-height:1;text-decoration:none}.factory-wordmark span{color:#e85d2a}.factory-product{letter-spacing:.19em;color:#b6ac9d;margin:13px 0 26px;font-size:9px}.ff-back{border-top:1px solid #443d34;border-bottom:1px solid #443d34;padding:14px 0;font-size:12px;text-decoration:none;color:#c8c0b3!important}.factory-nav-heading{letter-spacing:.08em;justify-content:space-between;align-items:center;margin:24px 0 14px;font-size:10px;display:flex}.ff-local{color:#edccb3;background:#413a30;border-radius:3px;padding:4px 5px;font-size:8px}.factory-nav .ff-new{color:#f2e9dc;text-align:left;background:0 0;border:1px solid #5f5547;padding:12px 10px;font-size:12px}.factory-nav .ff-new:hover{background:#43372a!important}.ff-projects{flex:1;margin:18px -7px 0;overflow:auto}.ff-projects button{text-align:left;color:#e5ddcf;background:0 0;border:0;width:100%;margin:4px 0;padding:13px 9px;font-weight:400;display:block}.ff-projects button.active{background:#393025;box-shadow:inset 3px 0 #e85d2a}.ff-projects button:hover{background:#393025!important}.ff-projects span{color:#d7b597;margin-bottom:7px;font-size:10px;display:block}.ff-projects strong{font-size:13px;line-height:1.4;display:block}.ff-projects small{color:#aaa092;margin-top:7px;font-size:10px;display:block}.factory-nav footer{border-top:1px solid #443d34;align-items:center;gap:10px;padding-top:18px;display:flex}.ff-avatar{color:#2d271f;background:#e6d6c1;border-radius:50%;place-items:center;width:31px;height:31px;font-weight:700;display:grid}.factory-nav footer strong{font-size:12px;display:block}.factory-nav footer small{color:#afa494;margin-top:4px;font-size:9px;display:block}.factory-workspace{min-width:0}.factory-top{border-bottom:1px solid var(--ff-line);background:#faf8f4;justify-content:space-between;align-items:center;gap:20px;min-height:101px;padding:23px 30px;display:flex}.ff-eyebrow{letter-spacing:.16em;color:#a8261c;font-size:10px;font-weight:700}.factory-top h1{letter-spacing:-.04em;margin:8px 0 0;font-size:24px;line-height:1.15}.ff-top-actions{align-items:center;gap:10px;display:flex}.ff-save-status{color:#746e65;font-size:11px}.ff-message{background:#e7eedf;justify-content:space-between;align-items:center;padding:13px 30px;font-size:13px;display:flex}.ff-message.error{color:#7d2115;background:#ffe4d8}.ff-message button{background:0 0;border:0;padding:0 7px;font-size:20px}.ff-import{grid-template-columns:1fr 1fr;gap:7%;max-width:1250px;margin:auto;padding:65px 6%;display:grid}.ff-import-intro h2{letter-spacing:-.05em;margin:18px 0 26px;font-size:clamp(30px,3.2vw,53px);font-weight:550;line-height:1.12}.ff-import-intro h2 em{color:#a8261c;font-family:Georgia,serif;font-weight:400}.ff-import-intro>p:not(.ff-eyebrow){color:#655c50;max-width:470px;font:18px/1.65 Georgia,serif}.ff-pilot{border-top:1px solid #cabdaa;border-bottom:1px solid #cabdaa;margin:36px 0 18px;padding:26px 0}.ff-pilot>span{letter-spacing:.14em;color:#a8261c;font-size:10px;font-weight:700}.ff-pilot h3{letter-spacing:-.03em;margin:14px 0 9px;font-size:23px}.ff-pilot p{color:#6d6255;max-width:440px;font-size:14px;line-height:1.6}.ff-pilot button{margin-top:8px}.ff-import-form{border:1px solid var(--ff-line);background:#fffdf9;border-radius:12px;padding:28px;box-shadow:0 15px 35px #3e2f1e06}.ff-import-form h3{margin:0 0 24px;font-size:20px}.factory-shell label,.factory-login label{margin-bottom:17px;font-size:12px;font-weight:600;line-height:1.4;display:block}.factory-shell input:not([type=checkbox]):not([type=range]),.factory-shell select,.factory-shell textarea,.factory-login input,.factory-login select{color:#29251f;box-sizing:border-box;background:#fffdf9;border:1px solid #d9d0c4;border-radius:6px;width:100%;margin-top:7px;padding:10px 11px;font:13px/1.45 Arial,sans-serif;display:block}.factory-shell textarea{resize:vertical}.ff-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.ff-file{background:#f6f1e9;border:1px dashed #c9bdad;border-radius:7px;padding:13px}.factory-shell .ff-file input{background:0 0!important;border:0!important;padding:0!important;font-size:11px!important}.ff-file small,.ff-file span{color:#756959;margin-top:8px;font-size:11px;font-weight:400;display:block}.ff-muted{color:#776b5c!important;font-size:12px!important;line-height:1.6!important}.factory-shell .ff-check{align-items:flex-start;gap:9px;font-size:12px;font-weight:400;line-height:1.5;display:flex}.ff-check input{accent-color:#a8261c;flex-shrink:0;width:15px;height:15px;margin:2px 0 0}.ff-lesson-bar{background:#f9f6f0;border-bottom:1px solid #ddd6cc;justify-content:space-between;align-items:center;padding:17px 30px;display:flex}.ff-lesson-bar>div:first-child{align-items:center;gap:20px;font-size:12px;display:flex}.ff-lesson-bar strong{color:#a8261c}.ff-lesson-bar span{color:#796f63}.ff-tabs{background:#eee8de;border:1px solid #d7cdbc;border-radius:7px;padding:3px;display:flex}.ff-tabs button{background:0 0;border:0;padding:6px 14px;font-size:12px}.ff-tabs button.active{background:#fffdf9;box-shadow:0 1px 4px #382b1917}.ff-editor{grid-template-columns:minmax(480px,1fr) 305px;align-items:start;display:grid}.ff-canvas-column{min-width:0;padding:26px 28px 48px}.ff-stage{background:#1a1815;border:1px solid #cfc7bb;position:relative;box-shadow:0 10px 36px #30281917}.ff-motion{object-fit:contain;background:#1a1815;width:100%;height:100%;position:absolute;inset:0}.ff-player{align-items:center;gap:13px;padding:14px 0 10px;display:flex}.ff-player button{background:0 0;border:0;padding:7px 11px}.ff-player .ff-play{color:#fff;background:#29251f;border-radius:6px;min-width:76px}.ff-player span{color:#6c6358;white-space:nowrap;font-size:11px}.ff-play span{color:#fff}.ff-player input{accent-color:#a8261c;flex:1;min-width:30px}.ff-captions{text-align:center;color:#675e52;background:#faf8f4;border:1px solid #e7e0d5;border-radius:4px;min-height:40px;padding:10px 16px;font-size:13px;line-height:1.5}.ff-sequence-heading{justify-content:space-between;align-items:center;margin:27px 0 16px;display:flex}.ff-sequence-heading h2{margin:0 0 6px;font-size:16px}.ff-sequence-heading p{color:#786f63;margin:0;font-size:12px}.ff-sequence-heading button{font-size:11px}.ff-filmstrip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:430px;padding:2px 4px 10px 2px;display:grid;overflow-y:auto}.factory-shell .ff-scene-card{text-align:left;background:#fffdf9;border:1px solid #d5ccbd;border-radius:5px;padding:0 0 9px;font-weight:400;overflow:hidden}.factory-shell .ff-scene-card.selected{outline-offset:0;outline:2px solid #a8261c}.ff-mini{pointer-events:none}.ff-scene-card>span{justify-content:space-between;align-items:center;gap:4px;padding:10px 10px 7px;font-size:10px;display:flex}.ff-scene-card em{color:#9b3b23;text-transform:capitalize;font-style:normal}.ff-scene-card small{color:#867963}.ff-scene-card>strong{text-transform:none;min-height:30px;padding:0 10px;font-size:11px;line-height:1.35;display:block}.ff-card-meta{color:#887c6a;justify-content:space-between;padding:8px 10px 0;font-size:9px;display:flex}.ff-card-meta i{font-style:normal}.ff-transcript{background:#fbf8f3;border-top:1px solid #d5cbbb;border-bottom:1px solid #d5cbbb;margin-top:22px;padding:17px 3px}.ff-transcript summary{cursor:pointer;font-size:12px;font-weight:600}.ff-transcript p{color:#544b40;white-space:pre-line;font:16px/1.65 Georgia,serif}.ff-transcript small{color:#8c7c66;font-size:10px}.ff-inspector{background:#faf8f4;border-left:1px solid #ddd6cc;min-height:calc(100vh - 162px);max-height:100vh;position:sticky;top:0;overflow-y:auto}.ff-inspector-heading{justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.ff-inspector-heading>span{letter-spacing:.15em;color:#716556;font-size:10px;font-weight:700}.ff-inspector-heading button{padding:6px 8px;font-size:10px}.ff-inspector-tabs{border-bottom:1px solid #ded3c4;padding:0 18px;display:flex}.ff-inspector-tabs button{color:#887d6e;background:0 0;border:0;border-radius:0;flex:1;padding:13px 4px;font-size:12px}.ff-inspector-tabs button.active{color:#a8261c;border-bottom:2px solid #a8261c}.ff-fields{padding:21px 18px}.ff-fields fieldset{border:0;min-width:0;margin:0;padding:0}.ff-fields input,.ff-fields select,.ff-fields textarea{font-size:12px!important}.ff-swatches{gap:9px;margin:0 0 19px;display:flex}.ff-swatches button{border:2px solid #0000;flex:1;padding:11px 3px;font-size:10px}.ff-swatches .swatch-paper{color:#1a1815;background:#faf8f4;border-color:#d9d0c4}.ff-swatches .swatch-ink{color:#fff;background:#1a1815}.ff-swatches .swatch-ember{color:#fff;background:#922219}.ff-swatches .chosen{outline-offset:2px;outline:2px solid #bd7d55}.ff-review-box{background:#f0e9df;border-radius:6px;padding:14px 12px}.ff-review-box .ff-check:last-child{margin-bottom:0}.ff-checks{color:#8c4125;padding-left:17px;font-size:11px;line-height:1.55}.ff-checks li{margin:9px 0}.ff-checks li.note{color:#7e735f}.ff-engine-note{color:#8c8070;border-top:1px solid #ded3c4;padding:18px;font-size:10px;line-height:1.7}.ff-review-summary{justify-content:space-between;align-items:center;gap:20px;margin-top:28px;display:flex}.ff-review-summary h3{margin:0 0 7px;font-size:16px}.ff-review-summary p{color:#756957;max-width:430px;margin:0;font-size:12px;line-height:1.5}.ff-review-summary button{flex-shrink:0}.ff-route{border-left:3px solid #a8261c;padding-left:12px}.ff-route span{text-transform:uppercase;color:#a8261c;letter-spacing:.12em;font-size:11px;font-weight:700}.ff-route p{font-size:12px;line-height:1.5}.ff-candidate{background:#fffdf9;border:1px solid #ded4c5;border-radius:6px;margin:18px 0;overflow:hidden}.ff-candidate.chosen{border-color:#aa6950}.ff-candidate>img{aspect-ratio:16/9;object-fit:contain;background:#ebe4d9;width:100%;display:block}.ff-candidate>div{padding:12px}.ff-candidate h3{margin:7px 0;font-size:13px;line-height:1.3}.ff-candidate p{font-size:11px;line-height:1.5}.ff-candidate small{color:#7a6a58;font-size:10px}.ff-candidate-actions{gap:6px;display:flex}.ff-candidate-actions button{padding:7px;font-size:10px}.ff-video-frames{gap:5px;margin:15px 0;display:flex}.ff-video-frames button{flex:1;min-width:0;padding:2px}.ff-video-frames button.chosen{outline:2px solid #a8261c}.ff-video-frames img{aspect-ratio:16/9;object-fit:contain;width:100%}.ff-video-frames span{font-size:9px}.ff-fields h3{font-size:15px}.ff-fields hr{border:0;border-top:1px solid #ded3c4;margin:24px 0}.ff-working{color:#fff;z-index:40;background:#29231e;border-radius:8px;align-items:center;gap:12px;padding:14px 22px;font-size:13px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #0003}.ff-working>span{border:2px solid #ffffff50;border-top-color:#fff;border-radius:50%;width:12px;height:12px;animation:1s linear infinite ffspin}@keyframes ffspin{to{transform:rotate(360deg)}}.factory-login{color:#1a1815;background:#faf8f4;border:1px solid #d9d3ca;border-radius:12px;width:380px;max-width:90%;margin:10vh auto;padding:35px}.factory-login h1{margin:22px 0 8px;font-size:26px}.factory-login p{color:#6d6255;font-size:14px;line-height:1.5}.factory-login form{margin-top:25px}.factory-login a{color:#a8261c;font-size:12px}.factory-login .ff-primary{width:100%}@media (min-width:1700px){.ff-filmstrip{grid-template-columns:repeat(4,minmax(0,1fr))}.ff-editor{grid-template-columns:minmax(480px,1fr) 340px}.ff-canvas-column{padding:35px 45px}}@media (max-width:1150px){.factory-shell{grid-template-columns:185px minmax(0,1fr)}.factory-nav{padding:25px 14px}.ff-editor{grid-template-columns:minmax(390px,1fr) 265px}.ff-canvas-column{padding:20px 18px}.factory-top{padding:20px}.factory-top h1{font-size:21px}.ff-save-status{display:none}.ff-lesson-bar{padding:14px 20px}.ff-lesson-bar>div:first-child{gap:12px}.ff-import{gap:30px;padding:40px 25px}.ff-import-form{padding:20px}.ff-filmstrip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.factory-shell{grid-template-columns:1fr}.factory-nav{flex-direction:row;align-items:center;gap:20px;height:auto;padding:16px 22px;display:flex;position:relative}.factory-nav .factory-wordmark{font-size:32px}.factory-product,.factory-nav-heading,.factory-nav footer,.ff-projects{display:none}.ff-back{border:0;padding:0}.factory-nav .ff-new{margin-left:auto}.ff-editor{grid-template-columns:minmax(0,1fr) 280px}.ff-import{padding:35px 22px}.ff-lesson-bar span:nth-child(4){display:none}.ff-top-actions button{font-size:11px}.factory-top{gap:10px}.factory-top h1{font-size:19px}.ff-canvas-column{padding:18px 14px}.ff-filmstrip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:650px){.ff-import{grid-template-columns:1fr}.ff-editor{flex-direction:column;display:flex}.ff-canvas-column,.ff-inspector{width:100%}.ff-inspector{border-top:1px solid #ddd6cc;min-height:0;max-height:none;position:relative}.ff-stage .lyko-scene{aspect-ratio:4/3}.ff-filmstrip{grid-template-columns:repeat(3,minmax(0,1fr));max-height:270px}.ff-top-actions{gap:5px}.factory-top{align-items:flex-start}.factory-top h1{max-width:210px;font-size:17px}.ff-lesson-bar{align-items:flex-start;gap:10px;padding:12px}.ff-lesson-bar>div:first-child{flex-wrap:wrap;gap:8px;font-size:10px}.ff-tabs button{padding:5px 8px;font-size:10px}.ff-fields{padding:22px}.ff-review-summary{align-items:flex-start}.ff-player{gap:5px}.ff-player button{padding:6px}.ff-working{width:90%;font-size:12px}.ff-scene-card>strong{font-size:10px}.factory-nav{gap:12px}.ff-back,.factory-nav .ff-new{font-size:10px}.ff-save-status{display:none}}@media (prefers-reduced-motion:reduce){.ff-working>span{animation:none}.factory-shell button{transition:none}}.ff-mobile-projects{display:none}@media (max-width:900px){.ff-mobile-projects{background:#faf8f4;padding:12px 22px;display:block}.ff-mobile-projects label{margin:0}}.ff-timing-strip{flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 10px;font-size:11px;display:flex}.ff-timing-strip span{background:#e9e3da;border-radius:4px;padding:8px}.ff-timing-strip span.active{background:#f4d9c9}.ff-timing-strip b{margin-left:5px}.ff-timing-strip>strong{margin-left:auto}.ff-slide-position{color:#746453;font-size:11px!important}.ff-slide-position input{accent-color:#a8261c;width:100%;margin:8px 0;display:block}.ff-duration-summary{background:#eee8de;margin:12px 0;padding:12px;font-size:12px}.ff-duration-summary strong,.ff-duration-summary small{margin-top:5px;display:block}.ff-duration-summary small{color:#746453;font-size:10px}.ff-waveform{background:#f8f4ed;border:1px solid #d6cbbd;border-radius:6px;height:78px;position:relative;overflow:hidden}.ff-waveform svg{pointer-events:none;width:100%;height:72px;position:absolute;inset:3px 0}.ff-waveform input[type=range]{opacity:0;cursor:crosshair;width:100%;height:100%;margin:0;position:absolute;inset:0}.ff-waveform:focus-within{outline-offset:2px;outline:3px solid #e85d2a}.ff-waveform>span{color:#766a5a;pointer-events:none;place-items:center;font-size:11px;display:grid;position:absolute;inset:0}.ff-waveform-scale{color:#776957;justify-content:space-between;gap:12px;margin:6px 0 14px;font-size:10px;display:flex}.ff-player .ff-play{min-width:110px}.ff-player>span{margin-right:auto}@media (max-width:650px){.ff-waveform-scale span:nth-child(2){display:none}}.ff-blank-stage .blank-video .blank-video-logo{display:none}.ff-ai-status{background:#fff0db;border-radius:6px;padding:10px 12px;font-size:12px}.ff-ai-status.connected{background:#dcefe0}.ff-visual-panel fieldset{min-width:0}.ff-visual-panel fieldset>button{margin:8px 0}.ff-reference-image img{object-fit:contain;width:100%;max-height:160px}.ff-visual-versions{gap:16px;display:grid}.ff-visual-versions article{border:1px solid #d6d3cd;border-radius:8px;padding:10px}.ff-visual-versions article>button{border:0;width:100%;padding:0}.ff-visual-versions img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.ff-visual-versions article>div{gap:6px;margin-top:8px;display:flex}.ff-visual-versions small{margin-top:8px;display:block}.ff-visual-error{color:#782a24;background:#f8dfdc;border-radius:5px;padding:12px}.ff-visual-modal{z-index:1000;background:#000b;place-items:start center;padding:3vh 3vw;display:grid;position:fixed;inset:0;overflow:auto}.ff-visual-modal>div{color:#202923;background:#f6f4ef;border-radius:12px;width:min(1450px,100%);padding:24px;box-shadow:0 12px 40px #0008}.ff-visual-modal header{justify-content:space-between;align-items:center;gap:20px;display:flex}.ff-visual-compare{grid-template-columns:1fr 1fr;gap:20px;margin:16px 0;display:grid}.ff-visual-compare section{min-width:0}.ff-visual-compare h3{font-size:14px}.ff-visual-modal audio,.ff-visual-modal textarea{width:100%;margin:8px 0;display:block}.ff-visual-actions{gap:10px;margin:16px 0;display:flex}.ff-visual-modal button{cursor:pointer;border:1px solid #bcbcb5;border-radius:8px;padding:10px 16px}.ff-visual-modal button:disabled{opacity:.45;cursor:default}@media (max-width:900px){.ff-visual-compare{grid-template-columns:1fr}}.ff-job-tray{font-size:12px;position:relative}.ff-job-tray summary{cursor:pointer;background:#f6ecdf;border:1px solid #d4c6b4;border-radius:6px;padding:10px}.ff-job-tray>div{z-index:30;background:#fff;border:1px solid #ccc;width:340px;max-height:400px;padding:12px;position:absolute;top:100%;right:0;overflow:auto;box-shadow:0 8px 24px #0003}.ff-job-tray article{border-bottom:1px solid #ddd;padding:8px 0}.ff-job-tray article small{color:#782a24;display:block}.ff-job-tray article button{text-align:left;font-size:12px}
