:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#263631;background:#f6f8f5;font-synthesis:none;font-size:14px;--green:#246348;--line:#e3e9e3;--muted:#7c8c83}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:0;transition:background .2s}button:disabled{cursor:wait;opacity:.55}[hidden]{display:none!important}a{color:var(--green);text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:27px;font-weight:650;letter-spacing:-.7px}h2{font-size:24px;font-weight:600;letter-spacing:-.5px}h3{font-size:15px;font-weight:600}small{font-size:12px}.eyebrow{font-size:10px;letter-spacing:2px;color:#799082;font-weight:600}label{display:block;font-size:13px;font-weight:500}input:not([type=checkbox]),select,textarea{width:100%;border:1px solid #dfe7df;background:#fcfdfb;border-radius:9px;padding:11px 12px;margin-top:9px;color:#30483c}textarea{resize:vertical;min-height:135px;line-height:1.8}input::placeholder,textarea::placeholder{color:#9ba79f}input:focus,select:focus,textarea:focus{outline:2px solid #90b59d;border-color:transparent}input[type=checkbox]{accent-color:var(--green);width:16px;height:16px;vertical-align:middle;margin-right:6px}.primary,.secondary{padding:12px 18px;border-radius:9px;font-weight:600;white-space:nowrap}.primary{background:var(--green);color:white}.primary:hover{background:#194d36}.secondary{border:1px solid var(--line);background:white;color:#426451}.secondary:hover{background:#eef4ed}.brand-icon{display:grid;place-items:center;border-radius:12px;background:var(--green);color:white;width:40px;height:40px;font-size:26px;font-family:Georgia,serif;font-style:italic}.sidebar{width:216px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:32px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;margin:0 10px 54px;font-size:21px;font-weight:650;letter-spacing:-.6px;color:#244737}.brand small{display:block;font-size:9px;letter-spacing:4px;margin-top:4px;color:#97a59c}.nav-label{font-size:10px;color:#9aaa9f;margin:0 16px 15px;letter-spacing:2px}.nav{display:flex;align-items:center;gap:12px;background:transparent;width:100%;padding:14px 16px;text-align:left;color:#7a8980;margin-bottom:7px;border-radius:9px;font-size:16px}.nav span{font-size:13px}.nav b{margin-left:auto;font-size:10px;font-weight:500;background:#e5ece5;border-radius:5px;padding:2px 5px}.nav.active{background:#eaf1e9;color:#2b6044}.sidebar-bottom{margin-top:auto;font-size:12px;color:#87998b;padding:15px 10px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#75a67c;margin-right:5px}.text-button{display:block;background:none;padding:18px 0 0;color:#8a9c90;font-size:12px}main{margin-left:216px;padding:32px 44px;max-width:1800px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}header h1{margin:9px 0 0}.header-badge{border:1px solid var(--line);padding:9px 13px;border-radius:30px;font-size:11px;background:#fff;color:#6c7f72}.header-badge span{margin-left:12px;color:var(--green)}.intro{display:flex;justify-content:space-between;align-items:center;background:#eaf1e8;border:1px solid #e0e9dc;border-radius:15px;padding:29px 32px;margin-bottom:23px;overflow:hidden}.intro h2{font-size:25px;color:#355c40;margin-bottom:10px}.intro p{font-size:13px;color:#7b917c;margin-bottom:0}.intro-symbol{font-size:88px;line-height:1;color:#a1b99a;transform:rotate(15deg);padding-right:22px}.studio-grid{display:grid;grid-template-columns:minmax(420px,1.25fr) minmax(280px,.8fr);gap:24px;align-items:start}.panel{border:1px solid var(--line);border-radius:14px;background:#fff;padding:26px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:23px}.section-heading h3{margin:0}.section-heading>span{color:#9aaa9f;font-size:9px;letter-spacing:1.4px}.editor>label,.settings-panel>label{margin-bottom:22px}.row{display:flex;gap:14px;align-items:end;margin-bottom:10px}.row>label{flex:1;min-width:0}.row>label:first-child{flex:1.35}.three>label:first-child{flex:1}.helper{display:block;color:#97a49b;font-size:11px;line-height:1.7;margin:10px 0 21px}.prompt-label{margin-top:25px}.prompt-label>span{float:right;color:#9aa79e;font-size:10px;font-weight:400}.parameters-heading{border-top:1px solid #eff2ed;padding-top:25px;margin-top:24px}.switches{display:flex;flex-wrap:wrap;gap:22px;margin-top:20px;color:#607468}.switches label{font-size:12px;font-weight:400}.submit-footer{border-top:1px solid #eff2ed;margin-top:26px;padding-top:23px;display:flex;align-items:center;justify-content:space-between;gap:15px}.submit-footer small{font-size:10px;line-height:1.6;color:#9aa79d}.preview-panel{padding:25px}.preview{min-height:295px;background:#f5f7f2;border:1px dashed #dbe4d7;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.empty-art{font-size:59px;color:#a8bfa2;margin-bottom:12px}.preview h3{font-size:14px;color:#758b70;margin-bottom:10px}.preview p{font-size:11px;color:#9baa93;line-height:1.8;margin-bottom:0}.preview video,.task-card video{width:100%;max-height:380px;border-radius:8px;background:#152b21}.preview .secondary{margin-top:15px}.preview .error{word-break:break-word}.tips{margin-top:24px;background:#efeee6;border:1px solid #e7e6dc;border-radius:13px;padding:26px}.tips .eyebrow{color:#9a9981;font-size:9px}.tips h3{margin:17px 0 12px;color:#717054;font-weight:500}.tips p{font-size:12px;line-height:1.9;color:#979680}.tip-tags{display:flex;gap:7px;flex-wrap:wrap}.tip-tags span{font-size:10px;background:#e6e6d9;border-radius:5px;padding:5px 8px;color:#939479}.notice{padding:13px 18px;border-radius:10px;background:#fff6df;border:1px solid #eadebd;margin-bottom:20px;color:#93752b;font-size:12px}.upload-box{border:1px dashed #cfdccc;background:#f7faf5;border-radius:10px;padding:20px;text-align:center}.upload-label{cursor:pointer;color:var(--green);font-size:13px}.upload-box small{display:block;color:#97a58e;font-size:10px;margin-top:10px}.link-row{gap:8px;margin-top:10px}.link-row select{width:80px}.link-row input{flex:1;min-width:0}.link-row button{padding:11px}.media-item{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:10px 0;font-size:12px}.media-item span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-item select{width:100px;margin:0;padding:7px}.media-item button{background:#f0f4ee;border-radius:5px;color:#84927f;padding:6px 9px}.history-top h2{margin-bottom:8px}.muted{font-size:12px;color:var(--muted);line-height:1.8}.history-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.task-card{background:white;border:1px solid var(--line);border-radius:13px;padding:22px}.task-card h3{word-break:break-word;margin-top:12px;line-height:1.7}.task-card .task-id{font-family:monospace;font-size:10px;color:#a1aca3;word-break:break-all}.task-card p{line-height:1.7;font-size:12px}.task-card .row{margin-top:15px}.task-card a,.task-card button{font-size:12px;padding:8px 12px}.badge{display:inline-block;font-size:10px;padding:5px 9px;border-radius:5px;background:#edf3e9;color:#64875d}.badge.failed,.badge.unknown{background:#fff0e9;color:#b07758}.settings-panel{max-width:660px}.settings-panel h2{margin-top:17px}.settings-panel>.muted{margin-bottom:27px}.settings-panel a{display:inline-block;font-size:12px;margin-top:22px}.error{color:#b36752;font-size:12px;line-height:1.7}.login-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at top left,#dce9d7,transparent 70%),#f7f8f2;padding:25px}.login-card{width:420px;background:#fff;padding:40px;border:1px solid #e4e9dc;border-radius:20px;box-shadow:0 15px 70px #365c4210}.login-card .brand-icon{margin-bottom:27px}.login-card h1{margin-top:15px;font-size:30px}.login-card>p{color:#8a9c8c;margin-bottom:30px}.login-card label{margin-bottom:21px}.login-card .primary{width:100%;display:flex;justify-content:space-between;margin:8px 0 18px}.login-card>small{display:block;margin-top:18px;color:#a7b0a4;font-size:10px}.login-card .eyebrow{font-size:9px}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:34px;padding-top:20px;font-size:9px;letter-spacing:2px;color:#aab5aa}footer span{letter-spacing:0;font-size:10px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:100;background:#254632;color:white;padding:15px 24px;border-radius:10px;max-width:90vw;font-size:13px;box-shadow:0 5px 30px #0002}.spinner{width:35px;height:35px;border:2px solid #d6e3d2;border-top-color:var(--green);border-radius:50%;animation:spin 1.3s linear infinite;margin-bottom:20px}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1500px){main{padding:40px 64px}.studio-grid{grid-template-columns:minmax(480px,1.2fr) minmax(350px,1fr)}}@media(max-width:1100px){.sidebar{width:185px;padding:28px 14px}main{margin-left:185px;padding:28px}.studio-grid{grid-template-columns:1fr}.preview{min-height:240px}.preview-column{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tips{margin-top:0}.brand{margin-left:0;font-size:19px}.intro-symbol{padding:0}}@media(max-width:700px){.sidebar{position:static;width:auto;padding:17px 20px;display:block;border-right:0;border-bottom:1px solid var(--line)}.brand{margin:0 0 15px;font-size:19px}.brand small{display:none}.brand-icon{width:31px;height:31px;font-size:23px;border-radius:8px}.nav-label,.sidebar-bottom{display:none}nav{display:flex;gap:5px}.nav{margin:0;padding:10px;justify-content:center;font-size:14px}.nav span{font-size:12px}.nav b{display:none}main{margin:0;padding:22px 16px}header{margin-bottom:22px}header h1{font-size:23px}.header-badge{font-size:9px;padding:8px}.header-badge span{margin-left:5px}.intro{padding:24px 20px;margin-bottom:18px}.intro h2{font-size:19px}.intro p{font-size:11px;max-width:230px;line-height:1.8}.intro-symbol{font-size:50px}.panel{padding:20px}.studio-grid{gap:18px}.preview-column{display:block}.tips{margin-top:18px}.row{gap:10px}.row>label{font-size:12px}.row input,.row select{padding:10px 8px;font-size:12px}.prompt-label>span{display:none}.section-heading>span{font-size:8px}.submit-footer{align-items:start;flex-direction:column}.submit-footer .primary{width:100%}.history-top{align-items:start;flex-direction:column}.history-top h2{font-size:21px}.login-card{width:100%;max-width:420px;padding:30px}.switches{gap:15px}}
