:root{--bg:#f4f5f7;--panel:#fff;--ink:#111318;--muted:#777b84;--line:#e4e6eb;--soft:#f8f9fb;--green:#01c77a;--green-soft:#eafff5;--navy:#030619;--danger:#b42318;--radius:8px}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);letter-spacing:0;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.shell{background:var(--panel);grid-template-columns:44.5% 55.5%;align-items:stretch;width:min(1780px,100vw - 40px);min-height:100vh;margin:0 auto;display:grid;box-shadow:0 16px 38px #10182814}.panel{background:var(--panel);min-width:0}.generator{border-right:1px solid var(--line);padding:22px 30px 34px}.results{padding:0}.title-row,.results-head{align-items:flex-start;gap:14px;display:flex}.title-row{justify-content:space-between;margin-bottom:24px}.title-actions{align-items:center;gap:8px;display:flex}.logout-button:hover{color:var(--danger);background:#fff4f2;border-color:#f3b4ac}h1,h2,h3,p{margin:0}h1{font-size:28px;font-weight:800;line-height:1.1}.title-row p,.results-head p{color:var(--muted);margin-top:6px;font-size:13px}.icon-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--soft);width:40px;height:40px;color:var(--ink);place-items:center;display:grid}.form{gap:24px;display:grid}.field{gap:8px;display:grid;position:relative}.field span,.label{font-size:14px;font-weight:750;line-height:1.2}select,textarea,input{border-radius:var(--radius);width:100%;color:var(--ink);background:#fff;border:1px solid #d9dce3;outline:none;transition:border-color .15s,box-shadow .15s}select,input{min-height:42px;padding:0 14px}textarea{resize:vertical;min-height:420px;padding:14px;line-height:1.5}select:focus,textarea:focus,input:focus{border-color:var(--green);box-shadow:0 0 0 3px #01c77a1f}.select-icon{color:var(--muted);pointer-events:none;position:absolute;top:38px;right:12px}.upload-block{justify-items:start;gap:10px;display:grid}.upload-title-row{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.text-button{color:#6b7280;cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:800}.hint,.counter,.prompt-field small{color:#969aa4;font-size:12px;line-height:1.35}.upload-box{border-radius:var(--radius);color:#6a6f7c;cursor:pointer;text-align:center;background:#fff;border:2px dashed #d8dbe2;align-content:center;place-items:center;gap:7px;width:132px;min-height:112px;padding:14px;display:grid;overflow:hidden}.upload-box strong{color:#5d6470;font-size:13px}.upload-box small{overflow-wrap:anywhere;color:#8b9099;max-width:100%;font-size:11px}.wide-upload{width:172px}.audio-upload{width:96px;min-height:96px}.image-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;width:100%;display:grid}.image-slot{aspect-ratio:1;border-radius:var(--radius);min-height:0;position:relative;overflow:hidden}.image-slot.empty{color:#7c8593;cursor:pointer;background:#fff;border:1.5px dashed #d4d9e2;align-content:center;place-items:center;gap:7px;font-size:11px;font-weight:750;display:grid}.image-slot.filled{background:#f6f7f9;border:1px solid #d9dce3}.image-slot.rejected{border:2px solid var(--danger);box-shadow:0 0 0 3px #b423181f}.image-slot img{object-fit:cover;width:100%;height:100%;display:block}.image-ref-row{grid-template-columns:1fr 28px;gap:5px;display:grid;position:absolute;bottom:6px;left:6px;right:6px}.image-ref-row button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#030619d6;border:0;border-radius:6px;min-width:0;min-height:28px;font-size:11px;font-weight:900}.prompt-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.prompt-field textarea{max-height:70vh;font-size:14px;line-height:1.65}.prompt-counter{justify-self:end}.prompt-counter.near{color:#b45309}.prompt-counter.over{color:var(--danger);font-weight:800}.prompt-ref-chips{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.prompt-ref-chips button{color:#252b36;cursor:pointer;background:#fff;border:1px solid #d7dbe2;border-radius:999px;min-height:28px;padding:0 10px;font-size:11px;font-weight:900}.prompt-ref-chips button:hover,.image-ref-row button:hover{border-color:var(--green);color:var(--green)}.compact-grid{grid-template-columns:repeat(2,minmax(0,220px));gap:16px;display:grid}.toggles{flex-wrap:wrap;gap:16px;display:flex}.toggles label{color:#3b414b;align-items:center;gap:8px;font-size:13px;font-weight:700;display:inline-flex}.toggles input{width:16px;height:16px;min-height:0}.seed-field{max-width:320px}.credits{border-radius:var(--radius);color:#303642;background:#fafbfc;max-width:650px;padding:18px;font-size:13px;font-weight:650;line-height:1.75}.links-row{flex-wrap:wrap;gap:10px;display:flex}.links-row a{border:1px solid var(--line);color:#4b5260;border-radius:999px;align-items:center;gap:8px;min-height:34px;padding:0 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.generate-button{border-radius:var(--radius);background:var(--navy);color:#fff;cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;width:220px;min-height:58px;font-size:16px;font-weight:800;display:inline-flex}.generate-button:disabled{cursor:not-allowed;opacity:.58}.error{color:var(--danger);border-radius:var(--radius);background:#fff4f2;border:1px solid #f3b4ac;justify-items:start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.5;display:grid}.results-head{border-bottom:1px solid var(--line);min-height:92px;padding:22px 30px}.results-head h2{font-size:26px;line-height:1.1}.wand{border-radius:var(--radius);border:1px solid var(--line);background:#f7f8fa;place-items:center;width:42px;height:42px;display:grid}.results-head nav{align-items:center;gap:24px;margin-left:auto;display:flex}.results-head button{border-radius:var(--radius);color:#606673;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex}.results-head button.active,.results-head button:hover{border-color:var(--line);color:var(--ink);background:#f7f8fa}.results-list{gap:24px;padding:36px 42px 50px;display:grid}.empty-state{border-radius:var(--radius);min-height:420px;color:var(--muted);text-align:center;border:1px dashed #d7dbe2;align-content:center;place-items:center;gap:12px;display:grid}.empty-state strong{color:var(--ink);font-size:18px}.result-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;border-left:4px solid #abb2c0;padding:18px;box-shadow:0 8px 20px #1018280f}.result-card.completed{border-left-color:var(--green)}.result-card.failed{border-left-color:var(--danger)}.result-top{justify-content:space-between;align-items:center;gap:14px;margin-bottom:8px;display:flex}.badge{background:var(--green-soft);color:#07875c;text-transform:uppercase;border:1px solid #bfeeda;border-radius:4px;width:fit-content;padding:4px 8px;font-size:10px;font-weight:900;line-height:1}.failed .badge{color:var(--danger);background:#fff4f2;border-color:#f3b4ac}.result-actions{align-items:center;gap:8px;display:flex}.result-actions button{color:#69707d;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;min-height:30px;font-size:12px;font-weight:750;display:inline-flex}.result-actions button:disabled{opacity:.55;cursor:default}.result-actions button:hover:not(:disabled){color:var(--green)}.ref-count{color:#15803d;background:#eef7f1;border-radius:999px;margin-bottom:6px;padding:2px 8px;font-size:11px;font-weight:750;display:inline-block}.result-card h3{text-transform:uppercase;margin-bottom:5px;font-size:14px;line-height:1.35}.result-card p{color:#737985;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.provider-prompt{border-radius:var(--radius);background:#fafbfc;border:1px solid #e8ebf0;margin-top:10px;padding:10px 12px}.provider-prompt summary{cursor:pointer;color:#49515d;font-size:12px;font-weight:800}.provider-prompt p{-webkit-line-clamp:unset;color:#69707d;white-space:pre-wrap;margin-top:8px;display:block}.video-frame{border-radius:var(--radius);background:#fbfcfd;border:1px solid #eef0f3;place-items:center;min-height:460px;margin:18px auto 10px;display:grid;overflow:hidden}.video-frame video{border-radius:var(--radius);background:#000;width:min(560px,100%);max-height:440px}.loading-video,.failed-box{color:#69707d;text-align:center;place-items:center;gap:12px;padding:24px;display:grid}.failed-box{color:var(--danger)}.cost{color:#69707d;font-size:12px;font-weight:700;display:block}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:980px){.shell{grid-template-columns:1fr;width:100%}.generator{border-right:0;border-bottom:1px solid var(--line)}.results-head nav{display:none}}@media (max-width:620px){.generator,.results-head,.results-list{padding-left:18px;padding-right:18px}h1{font-size:23px}.compact-grid{grid-template-columns:1fr}.image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prompt-title-row{flex-direction:column;align-items:flex-start}.prompt-ref-chips{justify-content:flex-start}.generate-button{width:100%}.video-frame{min-height:300px}}.login-shell{background:radial-gradient(1200px 600px at 20% -10%, #eafff5 0%, transparent 55%), radial-gradient(1000px 500px at 90% 110%, #dff1ff 0%, transparent 55%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;width:min(420px,100%);padding:40px 38px 32px;box-shadow:0 24px 60px #1018281a}.login-brand{text-align:center;margin-bottom:28px}.login-logo{background:var(--navy);width:58px;height:58px;color:var(--green);border-radius:16px;place-items:center;margin:0 auto 14px;display:grid}.login-brand h1{letter-spacing:-.5px;font-size:30px;font-weight:850}.login-brand p{color:var(--muted);margin-top:6px;font-size:13px}.login-form{gap:16px;display:grid}.login-field{gap:7px;display:grid}.login-field span{font-size:13px;font-weight:750}.login-field input{border-radius:var(--radius);background:#fff;border:1px solid #d9dce3;outline:none;width:100%;min-height:44px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.login-field input:focus{border-color:var(--green);box-shadow:0 0 0 3px #01c77a26}.login-button{border-radius:var(--radius);background:var(--navy);color:#fff;cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;min-height:46px;margin-top:4px;font-size:14px;font-weight:800;transition:opacity .15s,transform .15s;display:inline-flex}.login-button:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.login-button:disabled{opacity:.5;cursor:default}.login-error{color:var(--danger);border-radius:var(--radius);background:#fff4f2;border:1px solid #f3b4ac;padding:10px 12px;font-size:13px;font-weight:600}.login-foot{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin-top:26px;font-size:12px;display:flex}.restored-flash{color:#fff;z-index:999;background:#01c77a;border-radius:999px;padding:10px 20px;font-size:13px;font-weight:750;animation:.35s ease-out restoredPop;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #01c77a59}@keyframes restoredPop{0%{opacity:0;transform:translate(-50%)translateY(-12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.model-tag{color:var(--muted);background:var(--soft);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:700}.image-grid-results{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin:16px 0 10px;display:grid}.image-result-thumb{border-radius:var(--radius);border:1px solid var(--line);aspect-ratio:1;background:#000;transition:transform .12s,box-shadow .12s;display:block;overflow:hidden}.image-result-thumb:hover{transform:scale(1.03);box-shadow:0 4px 14px #0000001f}.image-result-thumb img{object-fit:cover;width:100%;height:100%}.revised-prompt{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.prompt-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.enhance-button{color:#7c3aed;cursor:pointer;background:linear-gradient(135deg,#f5f3ff,#ede9fe);border:1px solid #c4b5fd;border-radius:999px;align-items:center;gap:5px;padding:4px 12px;font-size:12px;font-weight:750;transition:all .15s;display:inline-flex}.enhance-button:hover:not(:disabled){background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-color:#a78bfa;transform:translateY(-1px)}.enhance-button:disabled{opacity:.5;cursor:default}
