:root{--accent-hover:#963c1b;--accent-soft:#f7e4d2;--red:#b32c28;color-scheme:light;--bg:#f5efe5;--panel:#fffaf3;--field:#fffcf7;--line:#dfd1be;--soft:#f0e5d5;--text:#352a23;--muted:#776452;--accent:#b54c24;--accent-alt:#b54c24;--danger:#b32c28;--radius:8px;font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;font-size:13px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent)}button{cursor:pointer;border:1px solid var(--line);border-radius:7px;background:var(--soft);padding:8px 11px}button:hover{border-color:var(--accent);background:var(--accent-soft)}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}input,select,textarea{border:1px solid var(--line);border-radius:8px;background:var(--field);padding:11px 12px;min-width:0}input::placeholder,textarea::placeholder{color:var(--muted)}textarea{line-height:1.8;resize:vertical;width:100%}input[type=search],input[type=email],input[type=password],input[type=text]{width:100%}label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}small,.muted{color:var(--muted)}[hidden]{display:none!important}.accent{background:var(--accent);border-color:var(--accent);color:var(--text);font-weight:750;box-shadow:0 4px 25px #b54c2420}.accent:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.danger{color:var(--danger)}.square{width:38px;height:36px;padding:0;display:inline-grid;place-items:center}.app-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:23px 15px 15px;display:flex;flex-direction:column;background:linear-gradient(150deg,var(--bg),var(--bg))}.logo{height:63px;display:flex;align-items:flex-start;gap:7px;font-size:28px;padding:0 14px;letter-spacing:-1.7px;font-style:italic}.logo-mark{font-size:31px;line-height:31px;font-weight:950;color:var(--text);text-shadow:-3px 2px 0 #e3c3a8;transform:skew(-14deg)}.logo strong{line-height:35px}.new-project{width:100%;height:42px;margin:18px 0 40px;border-radius:8px;font-size:12px}.sidebar nav{display:grid;gap:4px}.sidebar nav button{position:relative;display:flex;align-items:center;gap:14px;width:100%;height:42px;border:1px solid transparent;background:transparent;padding:0 12px;text-align:left;color:var(--muted)}.sidebar nav button span{width:17px;font-size:17px;text-align:center;font-weight:400}.sidebar nav button b{font-size:12px;font-weight:500}.sidebar nav button:hover{background:var(--accent-soft);color:var(--text)}.sidebar nav button.active{background:var(--accent-soft);border-color:var(--line);border-left:2px solid var(--accent);color:var(--accent)}.sidebar nav em{margin-left:auto;border-radius:20px;min-width:22px;height:22px;display:grid;place-items:center;background:var(--accent);font-size:10px;color:var(--text);font-style:normal}.sidebar footer{margin-top:auto;display:flex;align-items:center;gap:7px;padding:13px 10px 0;font-size:10px;color:var(--muted)}.sidebar footer button{padding:0;width:19px;height:19px;margin-left:auto;font-size:10px;border-radius:50%}.status-dot{height:5px;width:5px;border-radius:50%;background:#376333}.topbar{height:72px;border-bottom:1px solid var(--line);padding:10px 28px 10px 30px;display:flex;align-items:center;justify-content:space-between;background:#f5efe5ed;gap:16px;position:sticky;top:0;z-index:5;backdrop-filter:blur(12px)}.topbar h1{font-size:22px;line-height:1.3;margin:0 0 4px;letter-spacing:-.5px}.topbar p{margin:0;color:var(--muted);font-size:10px}.header-actions{display:flex;align-items:center;gap:8px}.home{height:36px;font-size:11px}.balance{height:36px;font-size:10px;background:var(--accent-soft);display:flex;gap:8px;align-items:center;white-space:nowrap;color:var(--muted)}.balance strong{color:var(--accent);font-size:11px}.coin{background:#edf5e9;border:1px solid #b6ceac;border-radius:50%;width:18px;height:18px;display:grid;place-items:center;color:var(--accent);font-size:12px}.view{padding:7px 24px 28px;min-height:calc(100vh - 72px)}.creation{display:flex;gap:24px;align-items:flex-start}.editor{width:360px;flex-shrink:0;border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:var(--panel);box-shadow:0 8px 28px #896b4d12}.model-banner{display:flex;justify-content:space-between;align-items:center;gap:10px;background:linear-gradient(90deg,var(--accent-soft),var(--accent-soft));height:32px;margin-bottom:27px;padding:0 0 0 1px}.model-banner strong{font-size:17px;letter-spacing:-.4px}.model-banner span{font-size:10px;color:var(--muted);white-space:nowrap}.editor textarea{min-height:163px;font-size:12px;padding:14px;margin:0;box-shadow:inset 0 1px 2px #ffffff55}.prompt-pills{display:flex;gap:7px;margin:9px 0 22px}.prompt-pills button{font-size:10px;padding:7px 9px;white-space:nowrap}.reference-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}.reference-heading strong{font-size:12px}.reference-heading small{font-size:10px;font-weight:400;margin-left:5px}.reference-heading>span{font-size:10px;color:var(--muted)}.references{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.dropzone{border:1px dashed #e3c3a8;border-radius:7px;background:var(--accent-soft);width:101px;height:90px;padding:9px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;color:var(--muted);font-size:9px}.dropzone span{font-size:25px;color:var(--accent)}.dropzone.dragging{border-color:var(--accent);background:var(--accent-soft)}.reference-tile{width:90px;height:90px;position:relative;border:1px solid var(--line);border-radius:6px;overflow:hidden}.reference-tile img{width:100%;height:100%;object-fit:cover}.reference-tile button{position:absolute;right:3px;top:3px;width:20px;height:20px;padding:0;background:#352a23bb}.reference-tile small{position:absolute;left:3px;bottom:3px;background:#352a2370;border-radius:2px;padding:1px 4px}.editor details{margin:20px 0 28px;font-size:10px;color:var(--muted)}.editor summary{cursor:pointer}.tools-panel{padding-top:12px;display:grid;gap:10px}.tools-panel p{margin:0;line-height:1.7}.tools-panel button{font-size:10px}.param-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:29px}.param-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.param-grid label{font-size:11px;margin-bottom:9px}.param-grid select{width:100%;height:43px;background:var(--soft);border-color:var(--line);font-size:11px;padding:8px 10px}.generate-footer{border-top:1px solid var(--line);margin-top:24px;padding-top:18px;display:flex;gap:10px;align-items:center;justify-content:space-between}.cost{font-size:10px;color:var(--muted);white-space:nowrap}.cost strong{color:var(--text);margin-right:3px}.generate-button{height:46px;flex:1;white-space:nowrap;padding:9px 11px;font-size:12px}.shortcut{font-size:9px;opacity:.5;margin-left:6px}.preview-card{width:324px;flex-shrink:0;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:12px}.panel-heading h3{font-size:13px;margin:0;line-height:1.4}.panel-heading small{display:block;font-size:10px;color:var(--muted)}.panel-heading button{font-size:10px;padding:7px 9px}.preview-surface{width:100%;min-height:398px;border:1px solid var(--line);border-top-color:var(--line);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--field);text-align:center;padding:13px;gap:10px}.preview-surface p{font-size:12px;margin:0;color:var(--muted)}.preview-surface small{font-size:11px}.preview-surface img,.preview-surface video{max-width:100%;max-height:480px;border-radius:6px}.preview-surface a{color:var(--accent);font-size:11px}.video-editor{width:min(440px,45vw)}.video-editor .field-label{margin-bottom:9px}.video-editor select.model-select{width:100%;font-size:12px;margin-bottom:10px;background:var(--soft)}.model-description{font-size:10px;color:var(--muted);line-height:1.7;margin:0 0 20px}.model-note{background:var(--accent-soft);border:1px solid var(--line);padding:9px 10px;border-radius:6px;font-size:10px;color:var(--muted);line-height:1.6;margin:0 0 16px}.ref-note{padding:10px;background:var(--soft);border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:10px;margin-bottom:10px;line-height:1.65}.task-side{width:290px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.side-tasks{display:grid;gap:9px;max-height:590px;overflow:auto}.side-task{padding:11px;border:1px solid var(--line);border-radius:7px;display:grid;gap:7px;text-align:left}.side-task p{margin:0;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px}.side-task small{font-size:9px}.badge{padding:3px 7px;font-size:9px;border:1px solid #b6ceac;background:#edf5e9;color:#376333;border-radius:20px;display:inline-block;white-space:nowrap}.badge.warn{color:#865313;border-color:#d7b57b;background:#fff0d7}.badge.neutral{background:var(--accent-soft);border-color:var(--line);color:var(--muted)}.section-page{padding-top:22px;max-width:1350px}.page-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:22px;flex-wrap:wrap}.page-toolbar input{max-width:360px}.page-toolbar .grow{flex:1}.page-toolbar select{height:39px;font-size:11px}.empty-state{padding:70px 25px;text-align:center;border:1px dashed var(--line);border-radius:12px;background:var(--bg);color:var(--muted)}.empty-state strong{display:block;color:var(--text);font-size:14px;margin-bottom:8px}.empty-state p{font-size:12px;margin:0;line-height:1.8}.empty-state button{margin-top:18px}.service-note{font-size:10px;color:var(--muted);line-height:1.7;padding:10px 0}.plaza{margin:-7px -24px -28px;padding:52px 24px;min-height:calc(100vh - 72px);background:radial-gradient(ellipse at 10% 0,#f5e7d8 0,transparent 55%),radial-gradient(ellipse at 95% 15%,#f5e7d8 0,transparent 65%),var(--bg)}.plaza-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:35px}.eyebrow{letter-spacing:2px;font-size:10px;color:var(--accent);font-weight:700}.plaza h2{font-size:52px;letter-spacing:-2px;margin:4px 0 8px;line-height:1.2}.plaza-hero p{font-size:12px;color:var(--muted);margin:0;line-height:1.8}.plaza-stats{display:flex;border:1px solid #dfd1be;border-radius:14px;background:#f0e5d5;overflow:hidden;flex-shrink:0}.plaza-stats div{padding:13px 20px;text-align:center;border-right:1px solid #dfd1be}.plaza-stats strong{display:block;font-size:24px}.plaza-stats small{font-size:9px}.filters{display:flex;flex-wrap:wrap;gap:10px;background:#f0e5d5;border:1px solid #dfd1be;padding:12px;border-radius:15px;margin-bottom:22px}.filters input{flex:1;min-width:180px;background:#fffcf7cc}.segmented{display:flex;align-items:center;gap:4px;padding:3px;background:#f0e5d577;border:1px solid #dfd1be;border-radius:9px}.segmented button{border:0;background:none;font-size:10px;padding:7px 10px;color:var(--muted);white-space:nowrap}.segmented button.active{background:var(--accent-soft);color:#fff;border-radius:6px}.filters select{background:var(--field);font-size:10px}.model-count{font-size:10px;color:var(--muted);margin-bottom:15px}.model-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.model-card{background:radial-gradient(circle at 100% 0,#e8c3a540,transparent 50%),var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px;display:flex;flex-direction:column;min-width:0}.model-card-head{display:flex;align-items:center;gap:6px;margin-bottom:15px}.model-card-head code{font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:auto;color:var(--muted)}.model-card h3{font-size:15px;line-height:1.45;margin:0 0 8px;letter-spacing:-.4px}.model-card>p{font-size:11px;color:var(--muted);line-height:1.8;margin:0 0 15px;min-height:40px}.model-price{border-top:1px solid #dfd1be;padding-top:13px;font-size:10px;color:var(--muted);margin-top:auto}.model-price strong{font-size:23px;color:#fff;margin-right:5px}.specs{display:flex;gap:5px;flex-wrap:wrap;margin:16px 0;font-size:9px;color:var(--muted)}.specs span{background:#f0e5d5;padding:4px 6px;border-radius:4px}.model-actions{display:flex;gap:6px}.model-actions button{font-size:10px;white-space:nowrap}.model-actions .go{flex:1;background:var(--accent);border-color:var(--accent);color:#fff;font-weight:650}.model-grid.list{grid-template-columns:1fr}.model-grid.list .model-card{display:grid;grid-template-columns:1fr 2fr 1fr;gap:10px}.model-grid.list .model-card-head,.model-grid.list .specs{display:none}.model-grid.list .model-card>p{margin:0}.model-grid.list .model-price{border:0;padding:0}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px}.asset-card{border:1px solid var(--line);border-radius:12px;background:var(--panel);overflow:hidden}.asset-media{height:160px;background:var(--field);display:grid;place-items:center;font-size:28px;color:var(--muted)}.asset-media img,.asset-media video{width:100%;height:100%;object-fit:cover}.asset-info{padding:12px}.asset-info h3{font-size:12px;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-info small{display:block;font-size:10px}.asset-actions{display:flex;gap:7px;margin-top:12px}.asset-actions button{font-size:10px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;font-size:11px;background:var(--panel)}th,td{padding:13px;text-align:left;border-bottom:1px solid var(--line)}th{color:var(--muted);background:var(--soft);font-size:10px;font-weight:500}td .prompt-excerpt{width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td button{font-size:10px;padding:5px 8px}td small{font-size:9px}.api-guide{padding:20px;border:1px solid var(--line);border-radius:12px;margin-top:20px;background:var(--panel);font-size:12px;line-height:1.8}.api-guide h3{margin:0 0 10px;font-size:14px}pre{background:var(--field);border:1px solid var(--line);border-radius:7px;padding:14px;overflow:auto;color:var(--muted);font:11px/1.8 Consolas,monospace}.modal-layer{position:fixed;inset:0;background:#352a2370;backdrop-filter:blur(5px);z-index:40;display:flex;align-items:center;justify-content:center;padding:24px}.modal{width:min(620px,100%);max-height:90vh;overflow:auto;padding:24px;border:1px solid var(--line);border-radius:19px;background:linear-gradient(145deg,var(--panel),var(--panel));box-shadow:0 25px 100px #50382318}.modal>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.modal h2{font-size:19px;margin:0}.modal p{color:var(--muted);font-size:12px;line-height:1.8}.modal .form-field{margin:15px 0}.modal .form-field input{display:block;width:100%;margin-top:7px}.modal .full{width:100%;height:42px;margin-top:12px}.auth-tabs{display:flex;gap:5px;margin:16px 0}.auth-tabs button{flex:1}.auth-tabs button.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.inline-error{color:var(--danger);font-size:11px;min-height:18px}.link-button{border:0;padding:0;background:none;color:var(--accent);font-size:11px}.recharge-balance{padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--accent-soft);margin-bottom:18px;display:flex;justify-content:space-between;color:var(--muted)}.recharge-balance strong{font-size:24px;color:var(--accent)}.packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.packages button{min-height:65px;text-align:left;padding:12px;background:var(--soft)}.packages strong,.packages small{display:block}.packages strong{font-size:15px;margin-bottom:4px}.packages button.active{border-color:var(--accent);background:var(--accent-soft)}.purchase-summary{display:flex;justify-content:space-between;padding:16px 0;margin-top:12px;border-top:1px solid var(--line);font-size:12px}.purchase-summary strong{color:var(--accent)}.toast{position:fixed;bottom:25px;left:50%;max-width:85vw;transform:translate(-50%,15px);opacity:0;background:var(--accent-soft);border:1px solid var(--accent);padding:12px 18px;border-radius:8px;box-shadow:0 8px 35px #50382318;z-index:60;font-size:12px;pointer-events:none;transition:.2s}.toast.show{transform:translate(-50%,0);opacity:1}.loading{padding:70px;text-align:center;color:var(--muted)}.canvas-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.canvas-toolbar button{font-size:11px}.canvas-toolbar .grow{flex:1}.canvas-stage{height:calc(100vh - 190px);min-height:420px;overflow:auto;position:relative;border:1px solid var(--line);border-radius:12px;background-color:var(--bg);background-image:radial-gradient(#e3c3a8 1px,transparent 1px);background-size:22px 22px;touch-action:none}.canvas-world{width:2400px;height:1800px;position:relative;transform-origin:0 0}.canvas-edges{position:absolute;inset:0;width:2400px;height:1800px;pointer-events:none}.canvas-edges path{fill:none;stroke:var(--accent);stroke-width:2}.canvas-node{position:absolute;width:230px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 5px 25px #50382318;overflow:hidden}.canvas-node.selected{border-color:var(--accent);box-shadow:0 0 0 1px #b54c2444}.node-head{background:var(--soft);display:flex;align-items:center;justify-content:space-between;padding:9px 11px;font-size:11px;cursor:grab;touch-action:none;user-select:none}.node-head button{padding:0;border:0;width:18px;height:18px;background:transparent}.node-body{padding:11px}.node-body textarea{min-height:110px;resize:vertical;font-size:11px;border:0;padding:5px;background:var(--field)}.node-body img{width:100%;border-radius:5px;pointer-events:none}.node-body button{width:100%;margin-top:8px;font-size:10px}.canvas-hint{font-size:10px;color:var(--muted);padding:9px 0;line-height:1.7}.split-tools{display:flex;gap:9px;align-items:center}.error-banner{padding:14px 17px;border:1px solid #d7b57b;background:#fff0d7;color:#865313;border-radius:10px;font-size:12px;line-height:1.8}.selected-assets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.choose-asset{padding:8px;position:relative;text-align:left}.choose-asset img{width:100%;height:90px;object-fit:cover;border-radius:4px}.choose-asset small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:7px}.choose-asset.selected{border-color:var(--accent);background:var(--accent-soft)}.section-heading{font-size:15px;margin:22px 0 15px}.auth-required{max-width:650px;margin:25px auto}.positive{color:var(--accent)}.progress-line{height:3px;background:var(--accent-soft);border-radius:2px;margin:10px 0;overflow:hidden}.progress-line:after{content:"";display:block;width:35%;height:100%;background:var(--accent);animation:progress 2s infinite}@keyframes progress{from{transform:translateX(-100%)}to{transform:translateX(400%)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:1500px){.video-editor{width:500px}.task-side{width:325px}.preview-card.video-preview{width:380px}}@media(max-width:1200px){.task-side{display:none}.model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.plaza-stats div{padding:12px}.creation{gap:18px}.video-editor{width:420px}.preview-card{width:300px}}
@media(max-width:1000px){.app-shell{grid-template-columns:80px minmax(0,1fr)}.sidebar{padding:22px 8px 14px}.logo{justify-content:center;padding:0}.logo strong,.sidebar nav b,.sidebar nav em,.sidebar footer #connection,.sidebar footer .status-dot{display:none}.logo-mark{font-size:34px}.new-project{font-size:0;height:40px;margin:17px 0 34px}.new-project:after{content:"＋";font-size:22px}.sidebar nav button{justify-content:center;padding:0;height:44px}.sidebar nav button span{font-size:20px}.sidebar footer{justify-content:center;padding:10px 0}.sidebar footer button{margin:0}.topbar{padding-inline:22px}.view{padding-inline:20px}.plaza{margin-inline:-20px}.plaza-hero{align-items:flex-start;flex-direction:column}.plaza h2{font-size:42px}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.creation{gap:16px}.editor{width:350px;padding:20px}.preview-card{width:calc(100% - 366px);min-width:240px;padding:18px}.preview-surface{min-height:380px}.video-editor{width:390px}.video-preview{min-width:220px;width:calc(100% - 406px)}}
@media(max-width:740px){.app-shell{display:block}.sidebar{position:fixed;top:auto;bottom:14px;left:50%;transform:translateX(-50%);z-index:15;height:55px;width:300px;max-width:calc(100vw - 25px);border:1px solid var(--line);border-radius:18px;padding:5px 8px;background:#fffaf3f5;box-shadow:0 8px 30px #50382318}.sidebar .logo,.sidebar .new-project,.sidebar footer{display:none}.sidebar nav{display:flex;gap:3px;justify-content:center}.sidebar nav button{width:43px;flex-shrink:0;height:43px;border-radius:10px}.sidebar nav button:nth-child(n+7){display:none}.sidebar nav button.active{border-left:1px solid var(--line);border-color:var(--line)}.sidebar nav button span{font-size:18px}.topbar{height:69px;padding:12px 18px 12px 25px;gap:8px}.topbar h1{font-size:21px;margin:0}.topbar p{display:none}.header-actions{gap:6px}.header-actions .home{display:none}.header-actions .square{width:34px;height:35px;font-size:10px}.balance{padding:7px 9px;gap:5px;font-size:9px}.balance strong{font-size:10px}.balance .coin{width:16px;height:16px}.view{padding:0 10px 92px}.creation{display:flex;flex-direction:column;gap:14px}.editor,.video-editor{width:100%;padding:18px 15px 24px;flex-shrink:1;border-radius:15px}.model-banner{height:32px;margin-bottom:25px}.model-banner strong{font-size:17px}.editor textarea{min-height:120px;padding:12px;font-size:12px}.prompt-pills{margin-bottom:20px}.prompt-pills button{flex:1;font-size:10px;padding:7px}.param-grid{gap:10px}.param-grid.three{gap:8px}.preview-card,.preview-card.video-preview{width:100%;min-width:0;padding:17px}.preview-surface{min-height:280px}.model-grid{grid-template-columns:1fr}.plaza{margin:0 -10px -92px;padding:30px 16px 100px}.plaza h2{font-size:42px}.plaza-stats{width:100%;justify-content:space-around}.plaza-stats div{flex:1;padding:13px 10px}.plaza-stats strong{font-size:22px}.plaza-hero{gap:22px;margin-bottom:24px}.filters{gap:8px;padding:9px}.filters input{width:100%;flex-basis:100%}.segmented{flex:1;justify-content:space-around}.segmented button{padding:7px;font-size:10px}.filters select{width:100%}.model-card{padding:19px}.model-card>p{min-height:0}.model-grid.list .model-card{display:flex}.section-page{padding:18px 5px}.page-toolbar{gap:7px}.page-toolbar input{max-width:none;flex:1;min-width:130px}.page-toolbar button{font-size:11px}.modal-layer{padding:14px}.modal{padding:18px;max-height:90vh}.modal h2{font-size:18px}.packages{gap:7px}.packages button{padding:9px}.packages strong{font-size:13px}.canvas-stage{height:calc(100vh - 250px);min-height:400px}.canvas-world{width:2000px}.canvas-toolbar{gap:5px}.canvas-toolbar button{font-size:10px;padding:7px}.toast{bottom:85px}.asset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.asset-media{height:135px}.asset-info{padding:10px}.asset-actions{flex-wrap:wrap}.preview-surface img{max-height:450px}.generate-button{flex:1}.error-banner{font-size:11px}.model-grid.list .model-card-head,.model-grid.list .specs{display:flex}.selected-assets{grid-template-columns:repeat(2,1fr)}}

.ref-type{height:100%;min-height:70px;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;color:var(--muted);font-size:23px;background:var(--soft)}.ref-type span{font-size:9px;color:var(--muted)}.asset-media audio{max-width:100%;height:42px}.preview-surface button{font-size:10px}


#modelDescription{white-space:pre-line;overflow-wrap:anywhere}

/* Alipay manual recharge */
.model-card>p,.model-description,.model-copy{white-space:pre-line;overflow-wrap:anywhere}
.alipay-intro{color:#1677ff;font-weight:600}.alipay-order{text-align:center}.alipay-amount{font-size:36px;font-weight:750;color:#1677ff;margin:14px 0 6px}.payment-order-id{overflow-wrap:anywhere;font-size:12px}.alipay-qr{margin:16px auto;background:white;padding:16px;border-radius:12px;width:fit-content;max-width:100%;box-sizing:border-box}.alipay-qr img{display:block;width:280px;height:auto;max-width:100%;image-rendering:pixelated}.alipay-qr figcaption{color:#555;font-size:12px;margin-top:10px}.alipay-order form{text-align:left;margin-top:20px}.alipay-order>button{margin-top:12px}

.catalog-status{margin:12px 24px 0;padding:12px 16px;border:1px solid #d7b57b;border-radius:8px;background:#fff0d7;color:#865313;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.catalog-status[hidden]{display:none}

/* LULU identity and accessible accents on warm surfaces. */
.recharge-notice{padding:14px 16px;margin:0 0 18px;border:1px solid #d7b57b;border-left:3px solid var(--accent);border-radius:6px;background:#fff0d7;color:#865313;font-size:12px;line-height:1.8}
.recharge-notice strong{display:block}.recharge-notice p{margin:6px 0 0;color:inherit}
#rechargeAmountHint{display:block;margin-top:8px;line-height:1.7}
.logo{align-items:center;gap:9px;padding:0 5px;letter-spacing:-.35px;font-style:normal;font-size:17px}
.logo-mark{display:grid;place-items:center;flex:0 0 31px;height:34px;font-size:23px;line-height:1;background:var(--accent);color:#fff;border-radius:6px;text-shadow:none;transform:none}
.logo strong{line-height:1.4;min-width:0;overflow-wrap:anywhere}
.accent,.sidebar nav em{color:#fff}
.accent:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.model-actions .go:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.segmented button.active{background:var(--accent);color:#fff}
.model-price strong{color:var(--accent)}
.reference-tile button,.reference-tile small{color:#fff}
.editor,.preview-card,.task-side,.model-card,.asset-card,.empty-state,.table-wrap,.api-guide,.modal,.canvas-stage,.canvas-node,.plaza-stats,.filters,.recharge-balance{border-radius:8px}
.editor,.preview-card,.model-card{box-shadow:0 4px 18px #896b4d08}
.model-card{background:var(--panel)}
.model-card:hover{border-color:#c69f7b}
.sidebar{background:var(--panel)}
.mobile-brand{display:none}
.plaza-hero{flex-wrap:wrap}
.plaza-hero>div:first-child{min-width:0}
@media(min-width:741px) and (max-width:1000px){.logo{padding:0;justify-content:center}.logo-mark{flex-basis:34px}}
@media(max-width:740px){.mobile-brand{display:block;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.15px;margin-bottom:3px}.topbar h1{font-size:18px}.sidebar{background:#fffaf3f5}.catalog-status{margin-inline:10px}.editor,.video-editor{border-radius:8px}}

.notice-button{position:relative;display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);cursor:pointer}
.notice-button:hover,.notice-button:focus-visible{border-color:var(--accent);color:var(--accent)}
.notice-button:disabled{opacity:.6;cursor:wait}.notice-button svg{pointer-events:none}
.notice-count{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border:2px solid var(--panel);border-radius:12px;background:var(--red,#b32c28);color:#fff;font-size:10px;font-weight:700;line-height:1}.notice-count[hidden]{display:none}
.public-announcements article{padding:18px 0;border-bottom:1px solid var(--line)}.public-announcements article:first-child{padding-top:0}.public-announcements article:last-child{border-bottom:0;padding-bottom:0}
.announcement-heading{display:flex;align-items:baseline;gap:10px}.public-announcements h3{margin:0 0 8px;font-size:16px;overflow-wrap:anywhere}.announcement-heading .badge{flex-shrink:0}
.public-announcements p{white-space:normal;line-height:1.8;overflow-wrap:anywhere;margin:10px 0 0}.public-announcements time{font-size:12px;color:var(--muted)}
.announcement-empty{text-align:center;padding:32px 12px;color:var(--muted)}.announcement-empty>span{font-size:28px;color:var(--accent)}.announcement-empty p{color:var(--text);font-size:15px}.announcement-empty small{font-size:12px}
@media(max-width:740px){.notice-button{width:34px;height:35px;flex-basis:34px}.topbar>div:first-child{min-width:0}.header-actions{flex-shrink:0}.topbar h1{white-space:nowrap;font-size:16px}.mobile-brand{font-size:9px}.announcement-heading{flex-wrap:wrap;gap:4px 10px}}
@media(max-width:380px){.topbar{padding-inline:10px}.header-actions{gap:4px}.balance{padding-inline:6px}.balance .coin{display:none}}

/* LULU studio — approved ink / slate / amber interface.
   Presentation only. Business scripts and their DOM hooks are unchanged. */
:root {
  color-scheme:dark; --bg:#12151b; --panel:#1b2028; --field:#151a22;
  --soft:#242c36; --line:#343e4b; --text:#edf1f5; --muted:#97a4b3;
  --accent:#f2b96f; --accent-hover:#fac985; --accent-soft:#362f27;
  --accent-alt:#f2b96f; --danger:#f2a292; --red:#d67968; --radius:9px;
  font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif; font-size:13px;
}
body { background:var(--bg); color:var(--text); }
button { transition:background .16s,border-color .16s,color .16s,box-shadow .16s; }
button:hover { background:#2b3440; border-color:#657386; }
button:active:not(:disabled) { transform:translateY(1px); }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.accent,.accent:hover { color:#29231b; background:var(--accent); border-color:var(--accent); box-shadow:none; }
.accent:hover { background:var(--accent-hover); box-shadow:0 4px 22px #f2b96f20; }
input,select,textarea { background:var(--field); border-color:#455365; border-radius:6px; }
input::placeholder,textarea::placeholder { color:#8491a1; }
select { cursor:pointer; }
label { color:#b1bcc9; }
button:disabled { opacity:.45; }
.app-shell { display:grid; grid-template-columns:88px minmax(0,1fr); min-height:100vh; }
.app-shell>main { min-width:0; }
.sidebar { width:88px; padding:20px 8px 16px; height:100dvh; position:sticky; top:0; background:#111419; border-right:1px solid #2b323d; }
.logo { height:49px; padding:0; display:flex; justify-content:center; align-items:flex-start; font-style:normal; }
.logo .logo-mark { width:31px; height:33px; display:grid; place-items:center; flex:0 0 31px; background:var(--accent); border-radius:8px; color:#29231b; font-size:23px; font-weight:850; line-height:1; transform:none; text-shadow:none; letter-spacing:-2px; }
.logo strong { display:none; }
.new-project { height:40px; width:40px; align-self:center; margin:4px 0 21px; padding:0; font-size:0; border-radius:8px; }
.new-project:after { content:"＋"; font-size:23px; font-weight:400; }
.sidebar nav { display:grid; gap:5px; }
.sidebar nav button { width:100%; height:62px; padding:8px 2px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; border:0; border-radius:7px; color:#8c98a6; background:transparent; text-align:center; }
.sidebar nav button>span { width:20px; height:20px; display:block; font-size:18px; }
.sidebar nav button svg { width:20px; height:20px; display:block; }
.sidebar nav button b { display:block; font-size:10px; font-weight:400; white-space:nowrap; }
.sidebar nav button:hover { background:#232931; color:#eef2f6; }
.sidebar nav button.active { background:#2b2a27; color:var(--accent); border:0; }
.sidebar nav button.active:before { content:""; position:absolute; left:-8px; height:20px; width:2px; background:var(--accent); border-radius:0 2px 2px 0; }
.sidebar nav em { position:absolute; top:4px; right:3px; min-width:15px; height:15px; padding:0 3px; font-size:8px; background:#38414e; color:#d1dbe5; border:2px solid #111419; margin:0; }
.sidebar nav em:empty { display:none; }
.sidebar footer { display:flex; justify-content:center; padding:24px 0 0; }
.sidebar footer #connection,.sidebar footer .status-dot { display:none; }
.sidebar footer button { width:28px; height:28px; margin:0; color:#94a1b0; border:1px solid var(--line); background:transparent; font-size:12px; }
.topbar { height:94px; padding:18px 30px; gap:20px; border-bottom:1px solid #2b323d; background:#12151bf5; backdrop-filter:blur(14px); position:sticky; top:0; z-index:12; }
.workspace-heading { min-width:0; }
.mobile-brand { display:block; color:#8894a3; font-size:9px; font-weight:500; letter-spacing:2.5px; margin:0 0 7px; text-transform:uppercase; }
.topbar h1 { font-size:22px; font-weight:500; line-height:1.2; margin:0; letter-spacing:.5px; }
.topbar p { display:none; }
.header-actions { gap:10px; }
.header-actions button { background:transparent; border-color:#394451; border-radius:6px; }
.header-actions button:hover { border-color:#a07b50; background:#f2b96f09; }
.header-actions .home { font-size:11px; border:0; color:#aab6c3; }
.balance { color:#b5c1ce; font-size:11px; background:#222a34!important; padding:9px 12px; height:36px; gap:8px; }
.balance strong { color:#f0c181; font-size:12px; }
.coin { background:#3b3328; border-color:#68543d; color:var(--accent); }
.header-actions .account { border-radius:50%; background:#303b48; color:#e0c59c; }
.notice-button { color:#c0cad5; }
.notice-count { border-color:var(--bg); }
.view { padding:24px 30px 36px; min-height:calc(100dvh - 94px); max-width:1860px; margin:0 auto; }
.creation { display:grid; grid-template-columns:minmax(0,1fr) 350px; grid-template-rows:min-content 1fr; gap:22px 25px; align-items:start; }
.editor,.video-editor { grid-column:2; grid-row:1 / span 2; width:auto; min-width:0; padding:22px; background:var(--panel); border:1px solid #37414e; border-radius:9px; box-shadow:none; }
.editor>.section-heading { font-size:14px; font-weight:500; margin:0 -22px 21px; padding:0 22px 18px; border-bottom:1px solid #303945; display:flex; align-items:center; justify-content:space-between; }
.editor>.section-heading:after { content:"CREATION"; font:9px Consolas,monospace; letter-spacing:1.5px; color:#84909f; }
.editor .field-label { font-size:11px; margin-bottom:10px; }
.editor .model-select { width:100%; height:47px; margin-bottom:8px; background:#242c36; border-color:#4b5968; border-radius:6px; padding-inline:12px; font-size:13px; font-weight:500; }
.model-description { font-size:11px; line-height:1.8; color:#99a8b7; margin:0 0 20px; overflow-wrap:anywhere; }
.editor>label[for=prompt] { display:block; border-bottom:1px solid #3b4652; color:#f1f4f7; padding:0 0 10px; margin-bottom:0; font-size:12px; position:relative; }
.editor>label[for=prompt]:after { content:""; position:absolute; bottom:-1px; left:0; width:36px; height:2px; background:var(--accent); }
.editor textarea { min-height:115px; margin:10px 0 0; padding:10px 0; background:transparent; border-color:transparent; box-shadow:none; font-size:13px; line-height:1.9; border-radius:3px; }
.editor textarea:focus { border-color:#536173; background:#171d25; padding:10px; }
.model-note { background:none; border:0; padding:0; margin:3px 0 14px; font-size:10px; color:#8593a2; line-height:1.8; }
.reference-heading { padding-top:18px; border-top:1px solid #303945; margin-bottom:12px; }
.reference-heading strong { font-size:12px; font-weight:500; }
.reference-heading small { color:#7f8b99; font-size:10px; }
.ref-note { background:transparent; padding:0; border:0; color:#8d9bab; font-size:10px; line-height:1.8; margin-bottom:12px; }
.ref-note strong { font-weight:400; color:#b1bcc8; }
.references { gap:8px; margin:0 0 12px; }
.dropzone { width:100%; min-height:84px; height:auto; border:1px dashed #566575; background:#202731; border-radius:6px; color:#b7c4cf; font-size:11px; padding:11px; gap:4px; }
.dropzone span { display:grid; place-items:center; height:28px; width:28px; border-radius:7px; background:#3a3329; color:#efbc79; font-size:22px; line-height:1; }
.dropzone:hover,.dropzone.dragging { border-color:var(--accent); background:#2a2c2d; }
.reference-tile { width:calc((100% - 16px)/3); height:82px; border-color:#465260; border-radius:6px; }
.reference-tile button { color:#fff; background:#151a22d9; }
.reference-tile small { background:#151a22c9; color:#ddd; }
.editor details { font-size:11px; color:#a8b5c2; margin:9px 0 12px; line-height:1.8; }
.editor summary { padding:7px 0; }
.tools-panel { gap:8px; }
.param-grid,.param-grid.three { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; border-top:1px solid #303945; padding-top:18px; margin:18px 0 0; }
.param-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.param-grid label { font-size:11px; color:#aab5c1; margin-bottom:8px; }
.param-grid select { height:38px; padding:7px; background:#232b35; border-color:#455260; font-size:11px; }
.generate-footer { background:#242b33; display:flex; flex-direction:column; align-items:stretch; gap:10px; margin:18px -22px -22px; padding:15px 22px 18px; border-color:#303945; border-radius:0 0 9px 9px; }
.cost { color:#9caab8; display:flex; align-items:baseline; gap:5px; font-size:11px; }
.cost strong { color:#f0c37e; font-size:19px; font-weight:500; }
.generate-button { width:100%; flex:auto; height:46px; font-size:13px; font-weight:600; border-radius:6px; }
.shortcut { margin-left:12px; opacity:.6; font-size:10px; }
.preview-card,.preview-card.video-preview { grid-column:1; grid-row:1; width:auto; min-width:0; padding:0; border:0; background:transparent; box-shadow:none; border-radius:0; }
.panel-heading { margin-bottom:13px; min-height:28px; }
.panel-heading h3 { font-size:12px; font-weight:500; color:#dce3e9; }
.panel-heading small { font-size:10px; color:#8b98a8; margin-top:3px; }
.panel-heading button { background:transparent; border-color:#3b4653; font-size:10px; padding:6px 10px; color:#aebdca; }
.preview-surface { position:relative; aspect-ratio:16/9; min-height:270px; padding:22px; gap:13px; overflow:hidden; background:radial-gradient(ellipse at 50% 35%,#29333f80,transparent 65%),#1a212b; border:1px solid #3b4652; border-radius:8px; }
.preview-surface:not(:has(video,img)) { background-image:radial-gradient(ellipse at 50% 40%,#33404e75,transparent 65%),linear-gradient(145deg,#202832,#171e27); }
.preview-surface:not(:has(video,img)):before { content:"▶"; height:54px; width:54px; display:grid; place-items:center; border:1px solid #66788d65; color:#b4a084; border-radius:50%; font-size:17px; padding-left:3px; background:#ffffff03; }
.preview-surface p { font-size:14px; color:#bfccd9; font-weight:400; line-height:1.8; max-width:100%; overflow-wrap:anywhere; }
.preview-surface small { color:#8291a2; font-size:11px; }
.preview-surface video,.preview-surface img { display:block; max-width:100%; max-height:65vh; object-fit:contain; border-radius:4px; }
.preview-surface:has(video,img) { aspect-ratio:auto; min-height:340px; padding:12px; background:#0d1117; }
.preview-surface a { color:#d8b385; font-size:11px; }
.preview-surface button { font-size:10px; background:#252d37; }
.task-side { display:block; grid-column:1; grid-row:2; width:auto; padding:0; margin-top:0; border:0; background:transparent; border-radius:0; }
.task-side>.panel-heading { margin-bottom:12px; }
.task-side>.panel-heading h3 { font-size:13px; font-weight:500; }
.task-side>.panel-heading small { font-size:10px; }
.side-tasks { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; max-height:360px; overflow:auto; padding:1px; }
.side-tasks>.empty-state { grid-column:1 / -1; padding:32px 20px; background:#161c24; border-color:#303b49; }
.side-tasks>.empty-state strong { font-size:12px; font-weight:500; }
.side-tasks>.empty-state p { font-size:11px; }
.side-task { min-width:0; padding:14px; gap:9px; background:linear-gradient(145deg,#242d38,#1b222c); border:1px solid #374452; border-radius:6px; box-shadow:none; min-height:128px; }
.side-task:hover { border-color:#ad895b; background:#2a323c; }
.side-task p { font-size:11px; color:#ced7e0; -webkit-line-clamp:2; }
.side-task small { color:#8b98a8; font-size:9px; }
.task-side>.link-button { margin-top:14px; color:#c59c68; font-size:11px; }
.badge { background:#293b35; border-color:#3d574b; color:#b1d4c2; font-size:10px; font-weight:400; border-radius:4px; padding:3px 6px; }
.badge.neutral { background:#2b3542; border-color:#414f61; color:#b6c8dc; }
.badge.warn { background:#443b29; border-color:#67563a; color:#e0be7e; }
.section-page { max-width:none; padding-top:0; }
.page-toolbar { gap:10px; margin-bottom:22px; }
.page-toolbar input,.page-toolbar select { height:40px; font-size:12px; }
.page-toolbar button { font-size:11px; min-height:36px; background:transparent; border-color:#46515e; }
.page-toolbar button.accent { background:var(--accent); color:#29231b; }
.empty-state { background:#171d26; border-color:#354150; border-radius:8px; color:#8f9eaf; }
.empty-state strong { color:#dae3ed; font-weight:500; }
.plaza { margin:0; padding:0; background:transparent; min-height:0; }
.plaza-hero { align-items:flex-start; margin:4px 0 28px; gap:28px; }
.eyebrow { color:#8e9aa8; font-size:9px; font-weight:400; letter-spacing:2px; }
.plaza h2 { font-size:30px; font-weight:450; letter-spacing:.3px; margin:8px 0 12px; }
.plaza-hero p { color:#9aa8b7; font-size:12px; max-width:560px; }
.plaza-stats { background:#1b222b; border-color:#374452; border-radius:8px; }
.plaza-stats div { padding:15px 22px; border-color:#374452; }
.plaza-stats div:last-child { border:0; }
.plaza-stats strong { color:#dbe3eb; font-size:23px; font-weight:500; }
.plaza-stats small { color:#8c9aab; font-size:10px; }
.filters { border-color:#343f4e; border-radius:8px; background:#1b222b; padding:12px; gap:10px; margin-bottom:18px; }
.filters input { background:#151b23; border-color:#465366; }
.filters select { background:#222b36; border-color:#465366; }
.segmented { background:#1c222b; border-color:#394653; border-radius:6px; }
.segmented button { color:#929eac; font-size:11px; }
.segmented button.active { background:#37322b; color:#f6c481; border-radius:4px; }
.model-count { color:#8e9cac; font-size:11px; }
.model-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.model-card { background:#1b222b; border-color:#374452; border-radius:8px; padding:22px; box-shadow:none; transition:border-color .2s,box-shadow .2s; }
.model-card:hover { border-color:#76634c; box-shadow:0 8px 25px #0002; }
.model-card-head { margin-bottom:23px; flex-wrap:wrap; }
.model-card-head code { color:#8496aa; font-size:9px; }
.model-card h3 { font-weight:500; font-size:18px; letter-spacing:.2px; }
.model-copy { color:#9eacbc; font-size:12px; line-height:1.9; }
.model-price { margin:14px 0; color:#9daab9; }
.model-price strong { color:#f0c17b; font-size:25px; font-weight:500; }
.specs { color:#a1afbe; gap:7px; }
.specs span { background:transparent; border-color:#455361; font-size:10px; }
.model-actions { border-color:#34404e; padding-top:18px; }
.model-actions button { background:transparent; font-size:11px; border-color:#465360; }
.model-actions .go { background:#362f27; color:#f2c17c; border-color:#6c5740; }
.model-actions .go:hover { background:#493b2b; }
.service-note { font-size:10px; color:#8594a5; }
.table-wrap { border-color:#374452; background:#1b222b; border-radius:8px; }
th { background:#242d38; color:#9fadb9; font-weight:400; font-size:11px; }
td { border-color:#303c4a; color:#bac8d7; font-size:12px; }
tr:hover td { background:#252e39; }
td button { background:transparent; border-color:#465363; color:#bdcad8; }
td [data-download-task] { background:#362f27; color:#f2c17c; border-color:#6c5740; }
/* The original task actions/semantics remain; rows become responsive creation cards. */
#taskTable .table-wrap { border:0; overflow:visible; background:none; }
#taskTable table { display:block; width:100%; }
#taskTable thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
#taskTable tbody { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
#taskTable tr { display:flex; flex-direction:column; padding:19px; background:#1b222b; border:1px solid #374452; border-radius:8px; min-width:0; position:relative; }
#taskTable tr:hover { border-color:#79664e; }
#taskTable td { display:block; padding:0; border:0; background:transparent; min-width:0; white-space:normal; }
#taskTable td:first-child { order:4; color:#8293a7; font:10px/1.7 Consolas,monospace; margin:14px 0; }
#taskTable td:first-child small { font:10px/1.7 "Segoe UI","Microsoft YaHei",sans-serif; color:#8293a7; }
#taskTable td:nth-child(2) { order:2; margin:15px 0; }
#taskTable .prompt-excerpt { max-width:none; font-size:13px; line-height:1.9; color:#d6dfe7; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; white-space:normal; min-height:74px; }
#taskTable td:nth-child(3) { order:3; color:#98a9bb; font-size:11px; overflow-wrap:anywhere; }
#taskTable td:nth-child(3):before { content:"模型 · "; color:#7d8da0; }
#taskTable td:nth-child(4) { order:1; min-height:25px; }
#taskTable td:nth-child(5) { order:5; color:#e4bd85; font-size:11px; margin-bottom:15px; }
#taskTable td:nth-child(5):after { content:" 积分"; color:#91a2b4; }
#taskTable td:last-child { order:6; margin-top:auto; padding-top:14px; border-top:1px solid #34404e; display:flex; flex-wrap:wrap; gap:7px; }
#taskTable td button { margin:0; font-size:11px; padding:7px 10px; }
.library-heading { margin:4px 0 27px; }
.library-heading h2 { font-size:28px; font-weight:450; }
.library-heading p { font-size:12px; color:#95a5b6; }
.library-layout { grid-template-columns:190px minmax(0,1fr); gap:22px; }
.library-folders { background:#192029; border-color:#374452; padding:13px; }
.library-folders>button { font-size:12px; padding:11px 8px; color:#aab9c9; }
.library-folders>button.active { background:#362f27; color:#f2c17c; border-color:#6c5740; }
.library-folder-icon { color:#cba779; }
.library-folder-card { background:#1b222b; border-color:#374452; padding:18px; border-radius:8px; }
.library-folder-card strong { font-size:12px; font-weight:500; }
.library-folder-card small { color:#8c9daf; }
.library-new-folder { color:#d7b584; }
.library-location h3 { font-size:17px; font-weight:500; }
.library-drop { background:#1a222c; border-color:#48596b; padding:28px 18px; border-radius:8px; }
.library-drop strong { color:#c1cdd9; font-weight:500; }
.library-drop:hover { background:#272b30; border-color:#b08e5e; }
.asset-card { border-color:#374452; background:#1b222b; border-radius:8px; overflow:hidden; }
.asset-media { background:#141a22; }
.asset-info { padding:14px; }
.asset-info strong { color:#c9d5e0; font-size:12px; font-weight:500; }
.asset-actions button { border-color:#455363; background:transparent; font-size:10px; }
.library-queue { background:#1c2530; border-color:#435367; }
.modal-layer { background:#050910ad; backdrop-filter:blur(9px); padding:24px; }
.modal { background:#1b222c; border-color:#445263; border-radius:12px; padding:27px; box-shadow:0 30px 120px #0008; }
.modal h2 { font-size:20px; font-weight:500; color:#e4eaf1; }
.modal p { color:#a3b3c5; }
.modal>header { border-bottom:1px solid #354251; padding-bottom:18px; margin-bottom:20px; }
.modal .form-field input { height:43px; }
.modal .square { background:transparent; color:#9fb0c3; }
.auth-tabs button { background:transparent; border-color:#465467; }
.auth-tabs button.active { background:#362f27; color:#efbd7c; border-color:#6c5740; }
.recharge-balance { background:#252d37; border-color:#465365; color:#9cabbc; }
.recharge-balance strong { color:#f2c17c; }
.packages button { background:#232c37; border-color:#455366; }
.packages button.active { background:#362f27; border-color:#ad8959; }
.api-guide { background:#1b222b; border-color:#374452; padding:25px; border-radius:8px; }
.api-guide h3 { font-weight:500; }
pre { background:#11171e; border-color:#3b4753; color:#a7b5c1; border-radius:7px; }
.toast { background:#29323e; border-color:#7c694e; color:#e4d3ba; box-shadow:0 10px 45px #0006; border-radius:7px; font-size:12px; z-index:1002; }
.error-banner { background:#3b3227; border-color:#7a613d; color:#ebca95; }
.studio-download-settings { background:#1b222c; color:#adbdcc; border:1px solid #374452; font:11px/1.8 "Segoe UI","Microsoft YaHei",sans-serif; border-radius:7px; margin:0; z-index:10; }
.header-actions #downloadSettings { position:relative; }
.header-actions .studio-download-settings summary { padding:7px 10px; white-space:nowrap; }
.header-actions .studio-download-settings>div { position:absolute; top:calc(100% + 12px); right:0; width:360px; max-width:calc(100vw - 32px); padding:17px; background:#1b222c; border:1px solid #4a5869; border-radius:8px; box-shadow:0 14px 50px #0008; }
.studio-download-settings summary { font-size:11px; font-weight:400; color:#b7c5d3; padding:8px 13px; }
.studio-download-settings[open] { border-color:#86704e; }
.studio-download-settings>div { padding:2px 15px 15px; }
.studio-download-settings label { color:#c5d1df; font-size:12px; }
.studio-download-settings input { accent-color:#e5ad65; padding:0; flex-shrink:0; }
.studio-download-settings a { color:#dfb77f; }
.task-transfer progress { accent-color:var(--accent); }
.positive { color:#a8c9b9; }
@media(min-width:1600px) {
  .view { padding:30px 44px 40px; }
  .topbar { padding-inline:44px; }
  .creation { grid-template-columns:minmax(0,1fr) 380px; gap:25px 30px; }
  .editor { padding:24px; }
  .editor>.section-heading { margin-inline:-24px; padding-inline:24px; }
  .generate-footer { margin-inline:-24px; margin-bottom:-24px; padding-inline:24px; }
  .preview-surface { min-height:400px; }
  .studio-download-settings { margin-inline:0; }
}
@media(max-width:1200px) {
  .view { padding:22px; }
  .topbar { padding-inline:22px; }
  .creation { grid-template-columns:minmax(0,1fr) 320px; gap:20px; }
  .editor { padding:18px; }
  .editor>.section-heading { margin-inline:-18px; padding-inline:18px; }
  .generate-footer { margin-inline:-18px; margin-bottom:-18px; padding-inline:18px; }
  .side-tasks { gap:9px; }
  .side-task { padding:11px; }
  .model-grid,#taskTable tbody { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .plaza-hero { flex-direction:column; }
  .plaza-stats { width:auto; }
  .studio-download-settings { margin-inline:0; }
}
@media(max-width:950px) and (min-width:741px) {
  .view { padding:18px; }
  .creation { grid-template-columns:minmax(0,1fr) 300px; gap:16px; }
  .preview-surface { min-height:240px; aspect-ratio:auto; }
  .side-tasks { grid-template-columns:1fr; max-height:410px; }
  .side-task { min-height:90px; }
  .header-actions { gap:7px; }
  .header-actions .home { display:none; }
  .library-layout { grid-template-columns:160px minmax(0,1fr); gap:15px; }
}
@media(max-width:740px) {
  .app-shell { display:flex; flex-direction:column; min-height:100dvh; }
  .app-shell>main { display:contents; }
  .topbar { order:0; position:relative; height:76px; padding:15px 16px; gap:10px; }
  .mobile-brand { font-size:8px; letter-spacing:1.7px; margin-bottom:6px; }
  .topbar h1 { font-size:18px; white-space:normal; }
  .header-actions { gap:6px; }
  .header-actions .home { display:none; }
  .workspace-heading { min-width:87px; }
  .header-actions .studio-download-settings summary { width:60px; overflow:hidden; text-overflow:ellipsis; padding:6px; font-size:9px; }
  .header-actions .studio-download-settings>div { position:fixed; top:70px; right:16px; width:358px; }
  .header-actions .square,.notice-button { width:30px; height:32px; flex-basis:30px; }
  .header-actions .balance { padding:6px 8px; font-size:0; gap:4px; height:32px; }
  .balance strong { font-size:10px; }
  .balance .coin { display:none; }
  .sidebar { order:1; width:100%; max-width:none; height:auto; position:sticky; top:0; left:auto; bottom:auto; transform:none; padding:6px 8px; border:0; border-bottom:1px solid #2b323d; border-radius:0; background:#111419f5; box-shadow:none; z-index:11; }
  .sidebar .logo,.sidebar .new-project,.sidebar footer { display:none; }
  .sidebar nav { display:flex; justify-content:flex-start; gap:4px; overflow-x:auto; padding-bottom:2px; scrollbar-width:thin; }
  .sidebar nav button,.sidebar nav button:nth-child(n+7) { display:flex; height:51px; width:auto; min-width:62px; flex:1 0 62px; padding:5px 4px; gap:5px; border:0; border-radius:5px; }
  .sidebar nav button b { display:block; font-size:9px; }
  .sidebar nav button>span,.sidebar nav button svg { width:18px; height:18px; }
  .sidebar nav button.active { border:0; }
  .sidebar nav button.active:before { display:none; }
  .sidebar nav em { top:1px; right:3px; }
  #catalogStatus { order:2; }
  #downloadSettings { order:0; }
  .view { order:4; width:100%; max-width:100%; padding:22px 16px 40px; min-height:calc(100dvh - 140px); }
  .creation { display:flex; flex-direction:column; gap:25px; }
  .editor,.video-editor { width:100%; padding:20px; border-radius:8px; }
  .editor>.section-heading { margin-inline:-20px; padding-inline:20px; }
  .editor textarea { min-height:120px; font-size:13px; padding:10px 0; }
  .generate-footer { margin-inline:-20px; margin-bottom:-20px; padding-inline:20px; }
  .preview-card,.preview-card.video-preview { width:100%; min-width:0; padding:0; }
  .preview-surface { aspect-ratio:16/9; min-height:210px; padding:18px; }
  .preview-surface:has(video,img) { min-height:210px; }
  .preview-surface video { max-height:65dvh; }
  .task-side { display:block; width:100%; padding:0; }
  .side-tasks { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:430px; gap:10px; }
  .side-task { min-height:120px; padding:13px; }
  .param-grid.three { gap:9px; }
  .plaza { margin:0; padding:0; min-height:0; }
  .plaza h2 { font-size:26px; }
  .plaza-hero { gap:20px; margin-top:0; }
  .plaza-hero p { font-size:11px; }
  .plaza-stats { width:100%; }
  .plaza-stats div { padding:13px 9px; }
  .plaza-stats strong { font-size:22px; }
  .filters { padding:10px; gap:9px; }
  .filters .segmented { flex-wrap:wrap; }
  .filters select { width:auto; flex:1; }
  .model-grid,#taskTable tbody { grid-template-columns:1fr; gap:16px; }
  .model-card { padding:21px; }
  .section-page { padding:0; }
  .page-toolbar input { min-width:100%; }
  .page-toolbar select { flex:1; }
  .page-toolbar button { font-size:10px; }
  .library-heading { margin-top:0; gap:17px; }
  .library-heading h2 { font-size:25px; }
  .library-layout { display:block; }
  .library-folders { display:flex; flex-wrap:wrap; padding:10px; margin-bottom:20px; }
  .library-folders>button { padding:9px; font-size:11px; }
  .library-folder-card { padding:13px; }
  .library-content .asset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .library-heading-actions>button { font-size:11px; }
  .library-content .asset-media { min-height:145px; height:145px; }
  .asset-info { padding:11px; }
  .library-content .asset-actions button { padding:6px; }
  .library-content .page-toolbar input { min-width:130px; }
  .modal-layer { padding:14px; }
  .modal { padding:21px; max-height:88dvh; }
  .modal h2 { font-size:18px; }
  .studio-download-settings:not(.studio-download-floating) { margin:0; }
  .toast { bottom:24px; max-width:calc(100vw - 32px); }
  .api-guide { padding:18px; }
  .auth-required { margin:0; padding:50px 22px; }
}
@media(prefers-reduced-motion:reduce) { *,*:before,*:after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* Infinite canvas keeps the same ink/slate workspace, with amber for focus and flow. */
.canvas-toolbar{padding:10px 12px;background:#1b2028;border:1px solid #343e4b;border-radius:8px;box-shadow:none}
.canvas-toolbar button{background:#242c36;border-color:#455365;color:#cbd5df;border-radius:6px}
.canvas-toolbar button:hover{background:#2b3440;border-color:#90734f;color:#f2b96f}
.canvas-stage{background-color:#151a22;border-color:#3b4652;border-radius:8px;background-image:radial-gradient(#3a4654 1px,transparent 1px);background-size:22px 22px;box-shadow:inset 0 0 0 1px #0b0e12}
.canvas-edges path{stroke:#d6a365;stroke-width:2.2}
.canvas-node{background:#1b2028;border-color:#3b4652;border-radius:8px;box-shadow:0 12px 32px #0007}
.canvas-node.selected{border-color:#f2b96f;box-shadow:0 0 0 1px #f2b96f66,0 12px 32px #0007}
.node-head{background:#242c36;border-bottom:1px solid #374452;color:#dbe4ec}
.node-head button{color:#aebac7}
.node-head button:hover{color:#f2b96f;background:#362f27}
.node-body{background:#1b2028}
.node-body textarea{background:#151a22;border-color:#3c4856;color:#e6edf3}
.node-body button{background:#362f27;border-color:#6c5740;color:#f2c17c}
.canvas-hint{color:#8f9eaf}
.split-tools{color:#aab6c3}
.error-banner{background:#403728;border-color:#69573b;color:#e7c78b}
.selected-assets{gap:9px}
.choose-asset{background:#1b2028;border-color:#3d4a58;color:#cad5df}
.choose-asset.selected{background:#362f27;border-color:#ad8959}
