:root{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:#e8eee9;background:#090d0b;font-size:14px;--lime:#c8ff24;--muted:#8a988e;--line:#28332b;--panel:#101712}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit;background:#172019;border:1px solid var(--line);border-radius:9px;padding:11px 16px;transition:background .15s,border-color .15s}button:hover{border-color:#71845b;background:#1e2a20}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--lime);outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:#fff;font-size:23px;font-weight:700;letter-spacing:.5px}.brand img{width:44px;height:44px;object-fit:contain}.brand b{font-weight:500;font-size:11px;border:1px solid #465829;border-radius:5px;padding:3px 5px;color:var(--lime);vertical-align:middle}.brand small{display:block;font-size:9px;letter-spacing:2px;color:var(--muted);font-weight:400;margin-top:7px}p{color:var(--muted);line-height:1.7;margin:0}.eyebrow{font-size:10px;letter-spacing:2px;color:#b2c193;font-weight:500}h1{font-size:clamp(25px,2.4vw,34px);letter-spacing:-1px;margin:12px 0;font-weight:550;line-height:1.2}h2{font-size:25px;letter-spacing:-.6px;font-weight:550}.primary{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--lime);color:#182107;font-weight:650;border-color:var(--lime);padding:15px 18px}.primary:hover{background:#dcff73;border-color:#dcff73}.primary:disabled{opacity:.4}.text-button{background:none;border-color:transparent;color:var(--muted);font-size:12px}.text-button:hover{color:#e8eee9;background:none}.status{font-size:12px;min-height:20px;margin-top:12px;overflow-wrap:anywhere}.status.error{color:#ffb0a3}.status.success{color:#c8e891}.auth-shell{min-height:100dvh;display:grid;grid-template-columns:1.05fr 1fr}.auth-story{padding:44px 8%;display:flex;flex-direction:column;background:radial-gradient(ellipse at 25% 70%,#21321c55,transparent 65%),#0c110e;border-right:1px solid var(--line)}.auth-intro{margin:auto 0;padding:80px 0}.auth-intro h1{font-size:clamp(35px,3.6vw,57px);line-height:1.15;margin:24px 0}.auth-intro p{font-size:15px;line-height:1.9}.format-chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:36px}.format-chips span{font-size:11px;border:1px solid #35432c;border-radius:30px;padding:9px 12px;color:#aabb9c}.auth-footer{font-size:11px;color:#627766}.auth-panel{padding:40px;display:flex;align-items:center;justify-content:center}.login-card{width:100%;max-width:340px}.login-card h2{font-size:32px;margin:16px 0 10px}.login-card>p:first-of-type{margin-bottom:35px}.login-card label{margin-top:20px}.login-card input{width:100%;height:47px;background:#111a13;border:1px solid #344337;border-radius:9px;color:#edf2ed;padding:12px}.login-card .primary{width:100%;margin-top:26px}.auth-help{font-size:12px;border-top:1px solid var(--line);padding-top:24px;margin-top:27px}aside{width:224px;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--line);padding:30px 18px 18px;background:#0c110e;display:flex;flex-direction:column;z-index:5}.nav-label{font-size:10px;letter-spacing:1.6px;color:#697a6c;margin:52px 12px 14px}nav{display:grid;gap:8px}nav button{text-align:left;background:transparent;border-color:transparent;padding:14px 12px;font-size:13px}nav button span{display:inline-block;width:23px;margin-right:9px;font-size:20px;vertical-align:middle}nav .active{background:#243019;color:var(--lime);border-color:#43542a}.sidebar-note{margin-top:auto;font-size:10px;color:#7e9278;padding:26px 8px;display:flex;align-items:center;gap:8px}.dot{display:inline-block;width:5px;height:5px;flex-shrink:0;background:var(--lime);border-radius:50%}.side-bottom{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:22px}.avatar{border:1px solid #40503e;display:grid;place-items:center;min-width:32px;height:32px;border-radius:50%;font-size:12px;color:#c6d6bc}.identity{min-width:0}.identity strong{display:block;font-size:12px;overflow-wrap:anywhere;font-weight:500}.identity small{display:block;font-size:10px;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}#logout{text-align:left;margin:12px 0 0 36px;padding:5px}.shell{margin-left:224px}header{height:80px;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:0 38px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}header i{padding:0 14px;color:#455548;font-style:normal}header strong{font-weight:400;color:#dce8dc}.balance{display:flex;align-items:center;gap:12px;font-size:11px;white-space:nowrap}.balance strong{color:var(--lime);font-weight:600;font-size:17px;font-variant-numeric:tabular-nums}main{max-width:1600px;margin:auto;padding:38px}.heading{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:30px}.heading p{font-size:13px}.pill{white-space:nowrap;font-size:11px;color:#aebda8;border:1px solid var(--line);padding:9px 13px;border-radius:20px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px}.preview{background:var(--panel);border:1px solid var(--line);border-radius:15px;overflow:hidden;display:flex;flex-direction:column;position:relative;min-height:510px}.preview-top,.preview-bottom{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:18px 20px;font-size:11px;color:#a8b8aa}.result-tag{border:1px solid #3b4833;border-radius:5px;padding:4px 7px;font-size:10px;color:#a7b28c}.preview-top{min-height:59px}#media{flex:1;min-height:325px;background:#0a100c;display:flex;align-items:center;justify-content:center;overflow:hidden}#media img,#media video{width:100%;max-height:480px;object-fit:contain}.empty-canvas{text-align:center;max-width:330px;padding:35px 22px}.canvas-icon{width:67px;height:67px;display:grid;place-items:center;margin:0 auto 24px;border:1px solid #37432e;border-radius:18px;font-size:33px;color:#9eb681;background:#172014}.empty-canvas h2{font-size:18px;line-height:1.5;letter-spacing:0;color:#cbd7c7;margin:0 0 9px}.empty-canvas p{font-size:12px}#progress{position:absolute;inset:59px 0 72px;background:#0a100cee;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px;text-align:center;padding:25px}#progress strong{font-size:15px;font-weight:500}#progress p{font-size:12px}.spinner{width:32px;height:32px;border:2px solid #37462c;border-top-color:var(--lime);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.preview-bottom{min-height:72px;margin-top:auto}.preview-bottom button{font-size:11px;white-space:nowrap}.preview-bottom span:first-child{max-width:75%;line-height:1.5}.composer{background:var(--panel);border:1px solid var(--line);padding:24px;border-radius:15px}.step{color:#b5d087;font-size:11px;letter-spacing:1px;margin-bottom:17px}.step span{color:#d0dccb;margin-left:8px;letter-spacing:0}label{display:block;color:#c5d0c6;font-size:12px;margin-bottom:10px}textarea{width:100%;min-height:149px;resize:vertical;background:#0a100c;color:#e7eee7;border:1px solid #314034;border-radius:9px;padding:13px;line-height:1.8;font-size:12px}textarea::placeholder{color:#627268}.count{display:flex;justify-content:space-between;gap:10px;color:#819586;font-size:10px;margin:9px 0 27px}fieldset{border:0;padding:0;margin:0}legend{font-size:12px;color:#c5d0c6;margin-bottom:12px}.ratios{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ratios button{padding:9px 5px;display:flex;gap:7px;align-items:center;justify-content:center;font-size:11px;background:#0d140f}.ratios button span{font-size:21px;line-height:1}.selected{border-color:#8bae48!important;background:#233019!important;color:#d4ecb6!important}.specs{display:flex;justify-content:space-between;font-size:11px;color:#bdccb4;background:#182015;border:1px solid #2b3926;border-radius:8px;padding:12px;margin:16px 0 24px}.specs span{color:#8e9d84}.composer>.primary{width:100%;font-size:12px}.footnote{font-size:10px;line-height:1.6;color:#90a08b;margin-top:11px}.composer>.footnote{text-align:center}footer{display:flex;gap:20px;justify-content:space-between;font-size:10px;color:#6a806e;margin-top:35px;padding-top:20px;border-top:1px solid #1d2920}footer span{color:#506655}.service-status{background:#2a2417;border:1px solid #5b4b28;color:#e6ca91;padding:12px 16px;border-radius:9px;margin-bottom:22px;font-size:12px;line-height:1.7}.history-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.filters{display:flex;gap:7px}.filters button{font-size:11px;padding:9px 13px}#history-count{color:var(--muted);font-size:11px}.history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}.history-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}.history-thumbnail{width:100%;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;background:#0b110d;border-bottom:1px solid var(--line);color:#8a9e82;font-size:32px;overflow:hidden}.history-thumbnail img{width:100%;height:100%;object-fit:cover}.history-body{padding:16px}.history-meta{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:#9bad92}.task-status{color:#c1d993}.task-status.failed,.task-status.cancelled{color:#e5b7a5}.history-prompt{font-size:12px;color:#c6d1c5;margin:14px 0;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}.history-date{font-size:10px;color:#829580}.history-actions{display:flex;gap:7px;margin-top:16px}.history-actions button{font-size:10px;padding:8px 10px}.empty-history{grid-column:1/-1;text-align:center;padding:65px 25px;border:1px dashed #34402e;border-radius:12px}.empty-history h2{font-size:20px}.empty-history p{font-size:12px}#load-more{display:block;margin:25px auto 0;font-size:12px}.image-picker{padding:9px 18px;display:flex;gap:7px;background:#0d140f}.image-picker button{font-size:10px;padding:6px 10px}dialog{width:min(460px,calc(100% - 32px));color:#e8eee9;background:#111a13;border:1px solid #3c4b35;border-radius:16px;padding:30px;box-shadow:0 25px 100px #0009}dialog::backdrop{background:#020503bb;backdrop-filter:blur(5px)}dialog h2{margin:17px 0}.close{position:absolute;right:15px;top:10px;background:transparent;border:0;font-size:23px;padding:5px 10px;color:#9eac99}#confirm-prompt{font-size:12px;max-height:120px;overflow:auto;overflow-wrap:anywhere}.confirm-details{margin:23px 0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:16px;font-size:12px}.confirm-details div{display:flex;justify-content:space-between;gap:20px}.confirm-details dt{color:var(--muted)}.confirm-details dd{margin:0}#confirm-credits{color:var(--lime);font-weight:650}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.dialog-actions button{font-size:12px}.noscript{position:fixed;inset:auto 20px 20px;background:#392919;border:1px solid #72502b;padding:20px;z-index:20;text-align:center}@media(min-width:1500px){.workspace{grid-template-columns:minmax(0,1fr) 370px}.preview{min-height:560px}.composer{padding:28px}textarea{min-height:180px}}@media(max-width:1120px){aside{width:195px;padding-left:14px;padding-right:14px}.brand{font-size:20px}.brand img{width:36px;height:36px}.shell{margin-left:195px}header{padding:0 25px}main{padding:30px 25px}.workspace{grid-template-columns:minmax(0,1fr) 300px;gap:16px}.composer{padding:20px}.heading{align-items:flex-start}.history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-bottom{padding:16px}.pill{display:none}}@media(max-width:900px){.workspace{grid-template-columns:1fr}.preview{min-height:400px}#media{min-height:270px}.composer{padding:23px}.composer textarea{min-height:115px}.auth-shell{grid-template-columns:1fr 1fr}.auth-story{padding:35px 25px}.auth-panel{padding:30px}.auth-intro h1{font-size:35px}.balance{flex-direction:column;gap:4px;align-items:flex-end}.heading{gap:16px}h1{font-size:27px}}@media(max-width:650px){.auth-shell{grid-template-columns:1fr}.auth-story{padding:26px;border-right:0;border-bottom:1px solid var(--line)}.auth-intro{padding:35px 0 5px}.auth-intro h1{font-size:34px;margin:16px 0}.auth-intro p{font-size:13px}.format-chips{margin-top:20px}.auth-footer{display:none}.auth-panel{padding:35px 26px}.login-card{max-width:440px}.auth-intro .eyebrow{font-size:8px}aside{position:relative;width:100%;padding:18px 20px 0;border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:16px}.brand{font-size:21px}.brand img{width:37px;height:37px}.nav-label,.sidebar-note,.side-bottom{display:none}nav{grid-row:2;grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}nav button{padding:10px 6px;text-align:center;font-size:10px}nav button span{font-size:17px;margin-right:4px;width:auto}#logout{grid-row:1;grid-column:2;margin:0;padding:8px}.shell{margin:0}header{height:65px;padding:0 20px;font-size:10px}header i{padding:0 8px}.balance{font-size:9px}.balance strong{font-size:15px}main{padding:28px 20px}.heading{margin-bottom:22px}.heading p{font-size:12px}h1{font-size:27px}.eyebrow{font-size:9px}.history-grid{grid-template-columns:1fr}.history-toolbar{align-items:flex-start;flex-direction:column}.heading>button{font-size:10px;padding:9px}.preview{min-height:350px}.empty-canvas{padding:28px 18px}#media{min-height:235px}.empty-canvas h2{font-size:17px}.preview-top,.preview-bottom{padding:15px;font-size:10px}.result-tag{font-size:9px}.preview-bottom span:first-child{max-width:65%}.preview-bottom button{font-size:10px;padding:9px 12px}dialog{padding:25px}.dialog-actions button{font-size:11px;padding:12px}footer{font-size:9px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.spinner{border-top-color:var(--lime)}}
@media(max-width:650px){.side-bottom{display:flex;grid-column:1/-1;grid-row:3;border-top:1px solid var(--line);padding:12px 0;margin-top:-16px}.identity strong{font-size:11px}.identity small{font-size:9px;margin-top:3px}.avatar{min-width:29px;height:29px;font-size:11px}}
