:root{--ink:#183d32;--ink-2:#295346;--paper:#f5f1e8;--paper-2:#ebe5d9;--card:#fffdf8;--gold:#c99a4b;--text:#243a33;--muted:#748078;--line:#dcd7cc;--danger:#9f4f43;--shadow:0 18px 50px rgba(29,55,46,.09);font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--text);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper);color:var(--text)}button,input,textarea{font:inherit}button,a{tap-highlight-color:transparent}.topbar{position:sticky;top:0;z-index:30;display:flex;height:78px;align-items:center;justify-content:space-between;padding:0 max(4vw,32px);border-bottom:1px solid rgba(24,61,50,.12);background:rgba(245,241,232,.92);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--ink);border-radius:50%;font:italic 23px Georgia,serif;color:var(--gold)}.brand b{display:block;font-size:16px;letter-spacing:.08em}.brand small{display:block;margin-top:2px;font-size:8px;letter-spacing:.16em;color:var(--muted)}.topbar nav{display:flex;gap:34px}.topbar nav a{position:relative;padding:29px 2px 25px;color:#6f7c75;font-size:14px;text-decoration:none}.topbar nav a.active{color:var(--ink);font-weight:700}.topbar nav a.active:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--ink);content:""}.header-action,.primary,.light-button,.text-button,.back-button,.chip-button{border:0;cursor:pointer}.header-action{padding:12px 18px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-weight:700}.header-action span,.primary span,.light-button span{margin-left:18px}.view{max-width:1440px;margin:auto;padding:0 max(4vw,32px) 80px}.hero{display:grid;min-height:650px;grid-template-columns:1.05fr .95fr;overflow:hidden;background:var(--ink)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:72px clamp(42px,7vw,108px);color:#fff}.eyebrow{margin:0 0 18px;color:#dfb56c;font-size:11px;font-weight:800;letter-spacing:.22em}.eyebrow.green{color:var(--ink-2)}h1,h2,h3,p{margin-top:0}.hero h1,.page-intro h1{margin-bottom:26px;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(42px,5vw,72px);font-weight:500;line-height:1.16;letter-spacing:-.04em}.hero-lead{max-width:570px;color:rgba(255,255,255,.66);font-size:17px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:24px}.primary{display:inline-flex;min-height:52px;align-items:center;justify-content:space-between;padding:0 24px;background:var(--gold);color:#17392f;font-weight:800}.text-button{padding:12px 0;background:none;color:#fff}.hero-stats{display:flex;gap:48px;margin:70px 0 0}.hero-stats div{min-width:74px}.hero-stats dt{font:30px Georgia,serif;color:#fff}.hero-stats dd{margin:7px 0 0;color:rgba(255,255,255,.45);font-size:11px}.hero-visual{position:relative;min-height:650px;overflow:hidden;background:#b9aa8d}.hero-visual:before{position:absolute;inset:0;background:linear-gradient(150deg,rgba(255,255,255,.28),transparent 45%,rgba(26,53,43,.16));content:""}.visual-tag{position:absolute;top:34px;right:36px;font-size:10px;letter-spacing:.18em}.sun{position:absolute;top:110px;right:13%;width:220px;height:220px;border-radius:50%;background:#e7cf9c;box-shadow:0 0 70px rgba(244,225,180,.7)}.window-frame{position:absolute;top:70px;right:8%;width:300px;height:340px;border:13px solid rgba(243,235,214,.58);border-bottom:0}.window-frame:before,.window-frame:after{position:absolute;background:rgba(243,235,214,.58);content:""}.window-frame:before{top:0;bottom:0;left:50%;width:8px}.window-frame:after{top:52%;right:0;left:0;height:8px}.bed{position:absolute;right:-5%;bottom:75px;width:88%;height:260px}.headboard{position:absolute;right:5%;bottom:100px;width:87%;height:170px;border-radius:110px 8px 0 0;background:#778b7e}.duvet{position:absolute;right:0;bottom:0;width:96%;height:155px;border-radius:100px 0 10px 10px;background:#e8e1d2;box-shadow:-25px 28px 44px rgba(28,45,38,.22);transform:skewY(-3deg)}.pillow{position:absolute;z-index:2;bottom:125px;width:31%;height:82px;border-radius:45% 35%;background:#f7f0e3}.pillow.one{right:39%;transform:rotate(-5deg)}.pillow.two{right:9%;background:#b6c1b5;transform:rotate(6deg)}.plant{position:absolute;bottom:120px;left:5%;width:100px;height:230px}.plant:after{position:absolute;bottom:0;left:30px;width:52px;height:70px;background:#675f50;content:""}.plant i{position:absolute;bottom:55px;left:46px;width:15px;height:145px;background:#405d4e;transform-origin:bottom}.plant i:nth-child(1){transform:rotate(-28deg)}.plant i:nth-child(2){height:175px}.plant i:nth-child(3){transform:rotate(32deg)}.material-note{position:absolute;right:32px;bottom:25px;font:10px/1.6 Georgia,serif;letter-spacing:.15em;text-align:right}.material-note b{font:12px sans-serif;letter-spacing:.1em}.section-heading{display:flex;align-items:end;justify-content:space-between;padding:100px 0 36px}.section-heading h2,.callout h2{margin:0;font:500 clamp(30px,3vw,44px)/1.3 "Noto Serif SC","Songti SC",serif}.section-heading>p{max-width:390px;margin:0;color:var(--muted);line-height:1.8}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.feature-grid article{position:relative;min-height:300px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,253,248,.5)}.feature-grid article>span{color:var(--gold);font:12px Georgia,serif}.feature-icon{display:block;margin:42px 0 30px;color:var(--ink);font:32px Georgia,serif}.feature-grid h3{font-size:20px}.feature-grid p{max-width:280px;color:var(--muted);font-size:14px;line-height:1.8}.callout{display:flex;align-items:center;justify-content:space-between;margin-top:72px;padding:54px 60px;background:var(--ink);color:white}.light-button{min-height:50px;padding:0 24px;background:#f3e8d3;color:var(--ink);font-weight:800}.page-intro{display:flex;align-items:end;justify-content:space-between;padding:72px 0 42px;border-bottom:1px solid var(--line)}.page-intro h1{margin-bottom:12px;color:var(--ink);font-size:clamp(38px,4vw,58px)}.page-intro>div>p:last-child{margin:0;color:var(--muted)}.progress-steps{display:flex;margin:0;padding:0;list-style:none}.progress-steps li{display:flex;align-items:center;color:#9aa09c;font-size:12px}.progress-steps li:not(:last-child):after{width:50px;height:1px;margin:0 14px;background:var(--line);content:""}.progress-steps b{display:grid;width:30px;height:30px;margin-right:8px;place-items:center;border:1px solid var(--line);border-radius:50%}.progress-steps .active{color:var(--ink);font-weight:800}.progress-steps .active b{background:var(--ink);color:white}.studio-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(330px,.7fr);gap:28px;padding-top:28px}.studio-main{display:grid;gap:22px}.panel{padding:28px;background:var(--card);box-shadow:0 1px 0 rgba(24,61,50,.08)}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;font-weight:800}.panel-title b{margin-right:13px;color:var(--gold);font:13px Georgia,serif}.panel-title small{color:var(--muted);font-size:11px;font-weight:500}.portrait-drop{position:relative;display:flex;min-height:235px;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border:1px dashed #a9b4ad;background:#f8f5ee;cursor:pointer}.portrait-drop.dragging{border-color:var(--gold);background:#f4ead7}.portrait-drop input{position:absolute;width:1px;height:1px;opacity:0}.portrait-drop>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.portrait-drop.has-image:after{position:absolute;inset:0;background:rgba(13,38,30,.38);content:""}.portrait-drop strong,.portrait-drop small,.portrait-drop .camera-icon,.portrait-drop .chip-button{position:relative;z-index:2}.portrait-drop.has-image strong,.portrait-drop.has-image small{color:#fff}.camera-icon{display:grid;width:54px;height:42px;margin-bottom:16px;place-items:center;border:2px solid var(--ink);border-radius:10px}.camera-icon:before{position:absolute;top:-7px;width:22px;height:8px;border-radius:5px 5px 0 0;background:var(--ink);content:""}.camera-icon i{width:17px;height:17px;border:2px solid var(--ink);border-radius:50%}.portrait-drop small{margin-top:8px;color:var(--muted)}.chip-button{margin-top:16px;padding:7px 13px;border:1px solid rgba(255,255,255,.65);background:rgba(24,61,50,.62);color:#fff}.product-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.choice-card{position:relative;padding:10px;border:1px solid transparent;background:#f4f0e7;cursor:pointer;text-align:left}.choice-card.selected{border-color:var(--ink);box-shadow:0 10px 28px rgba(24,61,50,.12)}.choice-card input{position:absolute;opacity:0}.choice-art{position:relative;height:150px;overflow:hidden;background:var(--tone)}.choice-art:before{position:absolute;right:-4%;bottom:15%;width:87%;height:38%;border-radius:50px 4px 6px;background:rgba(255,255,255,.75);box-shadow:-10px 12px 18px rgba(20,40,33,.13);content:""}.choice-art:after{position:absolute;right:10%;bottom:35%;width:32%;height:25%;border-radius:45%;background:rgba(255,255,255,.8);content:""}.choice-card strong{display:block;margin:15px 6px 5px;font-size:14px}.choice-card small{display:block;margin:0 6px 10px;color:var(--muted);font-size:11px;line-height:1.5}.choice-card .check{position:absolute;top:18px;right:18px;display:none;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--ink);color:#fff}.choice-card.selected .check{display:grid}.scene-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.scene-card .choice-art{height:110px}.scene-card .choice-art:before{right:10%;bottom:13%;width:75%;height:33%}.sticky-panel{position:sticky;top:101px}.sticky-panel fieldset{margin:0;padding:20px 0;border:0;border-top:1px solid var(--line)}.sticky-panel legend{padding-top:20px;font-size:12px;font-weight:800}.segment{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.segment label{cursor:pointer}.segment input{position:absolute;opacity:0}.segment span{display:grid;min-height:38px;place-items:center;border:1px solid var(--line);color:var(--muted);font-size:12px}.segment input:checked+span{border-color:var(--ink);background:var(--ink);color:white}.field{display:block;padding:18px 0;border-top:1px solid var(--line)}.field>span{display:flex;justify-content:space-between;margin-bottom:10px;font-size:12px;font-weight:800}.field>span small{color:var(--muted);font-weight:400}.field input,.field textarea{width:100%;border:1px solid var(--line);outline:0;background:#faf8f2;color:var(--text)}.field input{height:44px;padding:0 12px}.field textarea{padding:12px;resize:vertical;line-height:1.6}.field input:focus,.field textarea:focus{border-color:var(--ink)}.summary{display:flex;align-items:center;justify-content:space-between;padding:18px 0;color:var(--muted);font-size:12px}.summary strong{color:var(--ink)}.full{width:100%}.full i{font-style:normal;font-size:18px}.submit-note{margin:12px 0 0;color:#939a95;font-size:10px;text-align:center}.page-intro.compact{align-items:center}.tasks-view{min-height:75vh}.task-list{display:grid;gap:12px;padding-top:28px}.task-card{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:20px;align-items:center;padding:18px;background:var(--card);cursor:pointer}.task-thumb{display:grid;width:80px;height:98px;place-items:center;background:var(--tone);color:rgba(24,61,50,.45);font:28px Georgia,serif}.task-meta h3{margin:0 0 8px;font-size:16px}.task-meta p{margin:0;color:var(--muted);font-size:12px}.task-state{min-width:100px;text-align:right}.status{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700}.status:before{width:7px;height:7px;border-radius:50%;background:var(--gold);content:""}.status.succeeded:before{background:#4b8063}.status.failed:before{background:var(--danger)}.task-progress{width:92px;height:3px;margin-top:10px;background:var(--paper-2)}.task-progress i{display:block;height:100%;background:var(--gold)}.empty-state{padding:100px 20px;text-align:center}.empty-state b{display:block;margin-bottom:14px;font:38px Georgia,serif;color:var(--gold)}.empty-state h2{font:500 28px "Noto Serif SC","Songti SC",serif}.empty-state p{color:var(--muted)}.back-button{margin:30px 0 20px;padding:10px 0;background:none;color:var(--ink)}.result-layout{display:grid;grid-template-columns:minmax(300px,.72fr) 1fr;gap:50px;padding:30px 0}.video-shell{position:relative;aspect-ratio:9/16;max-height:650px;margin:auto;overflow:hidden;background:#142f27}.video-shell.landscape{aspect-ratio:16/9;max-height:none}.video-shell video{width:100%;height:100%;object-fit:cover}.mock-video{position:absolute;inset:0;display:grid;place-items:center;background:#a99b82;color:white}.mock-video .mock-bed{width:70%;height:25%;border-radius:70px 7px 7px;background:#e7dfd1;box-shadow:-20px 22px 30px rgba(0,0,0,.2)}.mock-video p{position:absolute;bottom:24px;left:24px;margin:0;font-size:11px;letter-spacing:.12em}.processing-box{display:grid;height:100%;place-items:center;text-align:center}.spinner{width:44px;height:44px;margin:0 auto 18px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.result-info{padding:30px 0}.result-info h1{font:500 clamp(34px,4vw,54px) "Noto Serif SC","Songti SC",serif}.result-info>p{color:var(--muted);line-height:1.8}.result-specs{display:flex;gap:10px;margin:28px 0}.result-specs span{padding:8px 12px;border:1px solid var(--line);font-size:11px}.copy-preview{margin:25px 0;padding:22px;border-left:3px solid var(--gold);background:var(--card);line-height:1.8}.result-actions{display:flex;gap:10px}.secondary{min-height:52px;padding:0 22px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;font-weight:700}.toast{position:fixed;right:24px;bottom:24px;z-index:80;max-width:360px;padding:14px 18px;background:#172e27;color:white;font-size:13px;opacity:0;pointer-events:none;transform:translateY(12px);transition:.25s}.toast.show{opacity:1;transform:none}.mobile-nav{display:none}
@media(max-width:900px){.topbar{height:66px;padding:0 20px}.topbar nav,.header-action{display:none}.view{padding:0 20px 94px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:60px 28px}.hero-visual{min-height:430px}.hero h1{font-size:43px}.hero-stats{gap:32px;margin-top:50px}.section-heading{display:block;padding-top:64px}.section-heading>p{margin-top:20px}.feature-grid{grid-template-columns:1fr}.feature-grid article{min-height:220px}.feature-icon{margin:25px 0 18px}.callout{align-items:flex-start;flex-direction:column;gap:28px;padding:38px 28px}.page-intro{align-items:flex-start;flex-direction:column;gap:28px;padding-top:45px}.page-intro h1{font-size:40px}.progress-steps{width:100%;justify-content:space-between}.progress-steps li:not(:last-child):after{width:20px}.studio-grid{grid-template-columns:1fr}.studio-side{display:contents}.sticky-panel{position:static}.product-list,.scene-list{display:flex;margin-right:-28px;padding-right:28px;overflow-x:auto}.choice-card{min-width:215px}.page-intro.compact{align-items:flex-start}.task-card{grid-template-columns:64px minmax(0,1fr)}.task-thumb{width:64px;height:78px}.task-state{grid-column:2;text-align:left}.result-layout{grid-template-columns:1fr;gap:20px}.video-shell{width:min(100%,360px)}.mobile-nav{position:fixed;right:0;bottom:0;left:0;z-index:50;display:flex;height:70px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:rgba(255,253,248,.96);backdrop-filter:blur(14px)}.mobile-nav a{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--muted);font-size:10px;text-decoration:none}.mobile-nav a span{font-size:19px}.mobile-nav a.active{color:var(--ink);font-weight:800}.toast{right:20px;bottom:88px;left:20px;max-width:none;text-align:center}}

/* 作品记录使用成片内容作为封面 */
.task-card{grid-template-columns:150px minmax(0,1fr) auto;padding:14px;transition:transform .2s ease,box-shadow .2s ease}
.task-card:hover{box-shadow:0 14px 36px rgba(24,61,50,.09);transform:translateY(-2px)}
.task-thumb{position:relative;width:150px;height:96px;overflow:hidden;border-radius:2px;background:linear-gradient(145deg,var(--tone,#8e9d94),#17392f);color:#fff}
.task-thumb-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s ease,transform .45s ease}
.task-thumb-video.loaded video{opacity:1}
.task-thumb-video:hover video{transform:scale(1.035)}
.task-thumb-video:after{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(7,23,18,.58));content:"";pointer-events:none}
.task-play{position:absolute;top:50%;left:50%;z-index:2;display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(16,43,34,.55);font-size:11px;line-height:1;opacity:.9;transform:translate(-50%,-50%);transition:.2s ease;backdrop-filter:blur(5px)}
.task-thumb-video:hover .task-play{opacity:0;transform:translate(-50%,-50%) scale(.8)}
.task-thumb-video small{position:absolute;right:8px;bottom:7px;z-index:2;padding:2px 5px;border-radius:2px;background:rgba(8,24,19,.62);font-size:9px;letter-spacing:.04em}
.task-cover-fallback{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(145deg,#8e9d94,#17392f);color:rgba(255,255,255,.72);font-size:11px;font-style:normal;letter-spacing:.08em}
.task-thumb-video.loaded .task-cover-fallback{display:none}
.task-thumb-video.unavailable video,.task-thumb-video.unavailable .task-play{display:none}
.task-thumb-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}
.task-thumb-placeholder>span{font:28px Georgia,serif}
.task-thumb-placeholder>small{font-size:10px;letter-spacing:.08em}
.task-thumb-placeholder.processing>span{animation:spin 1.2s linear infinite}
@media(max-width:900px){.task-card{grid-template-columns:112px minmax(0,1fr);gap:14px}.task-thumb{width:112px;height:78px}.task-state{grid-column:2}.task-meta p{line-height:1.7}.task-play{width:30px;height:30px}}
@media(max-width:520px){.task-card{grid-template-columns:96px minmax(0,1fr);padding:10px}.task-thumb{width:96px;height:76px}.task-tags span:nth-child(n+2){display:none}.task-meta h3{font-size:14px}.task-meta p{font-size:10px}}

/* 用户素材库 */
.material-title{align-items:center}.material-add{padding:8px 13px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;font-size:12px;font-weight:700}.material-intro{margin:-10px 0 20px;color:var(--muted);font-size:12px}.user-material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.user-material-card{position:relative;overflow:hidden;border:1px solid transparent;background:#f4f0e7;cursor:pointer}.user-material-card.selected{border-color:var(--ink);box-shadow:0 10px 26px rgba(24,61,50,.1)}.user-material-card>input{position:absolute;opacity:0}.user-material-card>img{display:block;width:100%;height:155px;object-fit:cover;background:var(--paper-2)}.user-material-card>span{display:block;min-width:0;padding:14px 12px 16px}.user-material-card>span b,.user-material-card>span small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-material-card>span b{font-size:14px}.user-material-card>span small{margin-top:6px;color:var(--muted);font-size:10px}.material-check{position:absolute;top:10px;right:10px;display:none;width:25px;height:25px;place-items:center;border-radius:50%;background:var(--ink);color:white;font-style:normal}.user-material-card.selected .material-check{display:grid}.material-edit{position:absolute;top:10px;left:10px;padding:5px 9px;border:0;background:rgba(20,48,39,.78);color:white;cursor:pointer;font-size:10px;opacity:0;transition:.2s}.user-material-card:hover .material-edit{opacity:1}.material-empty{display:flex;min-height:185px;grid-column:1/-1;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #a9b4ad;background:#f8f5ee;color:var(--ink);cursor:pointer}.material-empty b{font-size:26px;font-weight:400}.material-empty span{margin:9px 0 5px;font-weight:700}.material-empty small{color:var(--muted)}
.material-dialog{width:min(520px,calc(100vw - 32px));padding:0;border:0;background:var(--card);box-shadow:0 28px 90px rgba(10,30,23,.28);color:var(--text)}.material-dialog::backdrop{background:rgba(10,28,22,.55);backdrop-filter:blur(4px)}.material-dialog form{padding:28px}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between}.dialog-head h2{font:500 28px "Noto Serif SC","Songti SC",serif}.dialog-head button{width:36px;height:36px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:25px}.material-image-picker{position:relative;display:grid;height:210px;place-items:center;overflow:hidden;border:1px dashed #a9b4ad;background:#f5f1e8;cursor:pointer;text-align:center}.material-image-picker input{position:absolute;opacity:0}.material-image-picker img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.material-image-picker span{position:relative;padding:12px;background:rgba(245,241,232,.88)}.material-image-picker b,.material-image-picker small{display:block}.material-image-picker small{margin-top:5px;color:var(--muted);font-size:10px}.dialog-field{display:block;margin-top:18px}.dialog-field>span{display:block;margin-bottom:8px;font-size:12px;font-weight:700}.dialog-field input,.dialog-field textarea{width:100%;padding:11px 12px;border:1px solid var(--line);outline:0;background:#faf8f2;color:var(--text)}.dialog-field input:focus,.dialog-field textarea:focus{border-color:var(--ink)}.dialog-field textarea{resize:vertical}.dialog-actions{display:flex;align-items:center;gap:9px;margin-top:24px}.dialog-actions>span{flex:1}.danger-button{padding:12px;border:1px solid #b9685d;background:transparent;color:#93473e;cursor:pointer}
.voice-history-head{display:flex;align-items:flex-end;justify-content:space-between;margin:18px 0 9px;padding-top:16px;border-top:1px solid var(--line)}.voice-history-head span{font-size:12px;font-weight:800}.voice-history-head small{color:var(--muted);font-size:9px}.voice-records{display:grid;gap:7px}.voice-empty{margin:0;padding:14px;background:#f6f2e9;color:var(--muted);font-size:10px;line-height:1.6}.voice-record{display:grid;grid-template-columns:1fr 38px;gap:6px}.voice-record-select,.voice-preview{border:1px solid var(--line);background:#faf8f2;color:var(--text);cursor:pointer}.voice-record-select{display:flex;min-width:0;align-items:center;justify-content:space-between;padding:9px 10px;text-align:left}.voice-record-select span{min-width:0}.voice-record-select b,.voice-record-select small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-record-select b{font-size:11px}.voice-record-select small{margin-top:3px;color:var(--muted);font-size:9px}.voice-record-select i{color:var(--ink);font-size:9px;font-style:normal}.voice-record.selected .voice-record-select{border-color:var(--ink);background:#eaf0eb}.voice-preview{font-size:10px}#voice-player{display:none}
@media(max-width:900px){.user-material-grid{display:flex;margin-right:-28px;padding-right:28px;overflow-x:auto}.user-material-card{min-width:210px}.material-edit{opacity:1}.voice-history-head{align-items:flex-start;flex-direction:column;gap:4px}}

/* 可录制的声音素材 */
.voice-add{padding:5px 9px;font-size:10px}.voice-material-row{display:grid;grid-template-columns:1fr 36px 36px;gap:6px}.voice-material-row .voice-record-select{min-width:0}.voice-material-edit{border:1px solid var(--line);background:#faf8f2;color:var(--muted);cursor:pointer;font-size:10px}.voice-capture-box{display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;margin-bottom:18px;border:1px dashed #a9b4ad;background:#f6f2e9}.record-button{display:flex;align-items:center;gap:9px;padding:11px 18px;border:0;background:var(--ink);color:white;cursor:pointer;font-weight:700}.record-button i{width:10px;height:10px;border-radius:50%;background:#df7a69}.record-button.recording{background:#93473e}.record-button.recording i{border-radius:2px;background:white}.voice-capture-box>b{margin:10px 0;color:var(--muted);font-size:10px;font-weight:500}.voice-capture-box>span{margin:0 0 8px;color:#aaa;font-size:10px}.audio-upload-button{padding:7px 12px;border:1px solid var(--ink);color:var(--ink);cursor:pointer;font-size:11px;font-weight:700}.audio-upload-button input{position:absolute;opacity:0;pointer-events:none}.voice-capture-box>small{margin-top:10px;color:var(--muted);font-size:9px}.voice-material-dialog audio{width:100%;margin-bottom:4px}.voice-record.selected .voice-material-edit{border-color:var(--ink)}
@media(max-width:520px){.hero-actions{align-items:flex-start;flex-direction:column}.hero-stats{justify-content:space-between}.hero-visual{min-height:360px}.bed{height:200px}.headboard{height:130px}.product-list,.scene-list{margin-right:-28px}.panel{padding:22px}.segment span{font-size:11px}.result-actions{flex-direction:column}.result-actions>*{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.choice-art{display:block}
@media(max-width:900px){body{overflow-x:hidden}.view{width:100%;max-width:100vw}.studio-grid{width:calc(100vw - 40px)}.studio-grid,.studio-main,.studio-side,.panel{min-width:0}.product-list,.scene-list{width:100%;max-width:100%}.portrait-drop{width:100%}}
.video-shell{width:100%}.demo-notice{margin:0 0 24px;padding:14px 16px;border:1px solid #decda9;background:#f5ead3;color:#6d5a37!important;font-size:12px;line-height:1.7!important}
.portrait-guidance{display:grid;grid-template-columns:1fr minmax(280px,.7fr);gap:22px;align-items:center;margin-top:16px;padding:16px 18px;border:1px solid var(--line);background:#fbf8f1}.portrait-guidance>div strong,.portrait-guidance>div span{display:block}.portrait-guidance>div strong{margin-bottom:5px;font-size:13px}.portrait-guidance>div span{color:var(--muted);font-size:11px;line-height:1.6}.portrait-guidance label span{display:block;margin-bottom:7px;font-size:11px;font-weight:800}.portrait-guidance input{width:100%;height:40px;padding:0 11px;border:1px solid var(--line);outline:0;background:#fffdf8}.portrait-guidance input:focus{border-color:var(--ink)}.portrait-guidance>p{grid-column:1/-1;margin:0;padding:10px 12px;background:#f4e2de;color:var(--danger);font-size:12px}.portrait-guidance>p[hidden]{display:none}@media(max-width:700px){.portrait-guidance{grid-template-columns:1fr}}
.custom-material{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;margin-top:16px}.custom-material-upload{position:relative;display:flex;min-height:82px;align-items:center;justify-content:center;overflow:hidden;border:1px dashed #a9b4ad;background:#f8f5ee;cursor:pointer;text-align:center}.custom-material-upload input{position:absolute;width:1px;height:1px;opacity:0}.custom-material-upload>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.custom-material-upload>span{position:relative;z-index:2;padding:12px}.custom-material-upload>span b,.custom-material-upload>span small{display:block}.custom-material-upload>span b{font-size:13px}.custom-material-upload>span small{margin-top:6px;color:var(--muted);font-size:10px;line-height:1.5}.custom-material-upload.has-image:after{position:absolute;inset:0;background:rgba(18,49,40,.48);content:""}.custom-material-upload.has-image>span{color:white}.custom-material-upload.has-image>span small{color:rgba(255,255,255,.75)}.custom-name{display:flex;flex-direction:column;justify-content:center;padding:12px 14px;background:#f8f5ee}.custom-name span{margin-bottom:7px;font-size:10px;font-weight:800}.custom-name input{height:36px;padding:0 10px;border:1px solid var(--line);outline:0;background:#fff}.legend-note{margin-left:7px;color:var(--muted);font-weight:400}.voice-options{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:13px}.voice-card{cursor:pointer}.voice-card input{position:absolute;opacity:0}.voice-card>span{display:block;min-height:64px;padding:11px;border:1px solid var(--line)}.voice-card b,.voice-card small{display:block}.voice-card b{font-size:12px}.voice-card small{margin-top:6px;color:var(--muted);font-size:9px;line-height:1.4}.voice-card input:checked+span{border-color:var(--ink);background:var(--ink);color:white}.voice-card input:checked+span small{color:rgba(255,255,255,.65)}.narration-preview{margin:0 0 20px;padding:16px;background:#eef0eb;line-height:1.7}.narration-preview small{display:block;margin-bottom:5px;color:var(--muted);font-size:10px;font-weight:800}@media(max-width:700px){.custom-material{grid-template-columns:1fr}.voice-options{grid-template-columns:1fr 1fr}}
.app-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:60;display:flex;width:232px;flex-direction:column;padding:24px 16px 18px;border-right:1px solid #e1ddd4;background:#fffdf9}.side-brand{display:flex;align-items:center;gap:11px;padding:0 10px 26px;color:var(--ink);text-decoration:none}.side-brand>span{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:var(--ink);color:#e8bd72;font:italic 22px Georgia,serif}.side-brand>b{font-size:16px;letter-spacing:.06em}.side-brand small{display:block;margin-top:3px;color:#98a098;font-size:8px;letter-spacing:.15em}.side-caption{margin:18px 12px 8px;color:#a5aaa6;font-size:9px;font-weight:800;letter-spacing:.15em}.side-nav{display:grid;gap:3px}.side-nav a{position:relative;display:flex;height:44px;align-items:center;gap:12px;padding:0 12px;border-radius:7px;color:#657069;font-size:13px;text-decoration:none}.side-nav a:hover{background:#f5f1e8;color:var(--ink)}.side-nav a.active{background:#e8eee9;color:var(--ink);font-weight:800}.side-nav a.active:before{position:absolute;top:10px;bottom:10px;left:0;width:3px;border-radius:2px;background:var(--gold);content:""}.side-nav i{display:grid;width:22px;place-items:center;color:#758078;font-style:normal;font-size:16px}.side-nav em{margin-left:auto;padding:3px 5px;border-radius:3px;background:#e8bd72;color:#654d24;font-size:7px;font-style:normal}.side-account{display:flex;align-items:center;gap:9px;margin-top:auto;padding:13px 10px;border-top:1px solid var(--line)}.side-account>span{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#dbe4dd;color:var(--ink);font-weight:800}.side-account div{min-width:0;flex:1}.side-account b,.side-account small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-account b{font-size:11px}.side-account small{margin-top:4px;color:var(--muted);font-size:9px}.side-account>i{color:#9da39f;font-style:normal}.top-context{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}.top-context b{margin-left:8px;padding:6px 9px;border:1px solid var(--line);color:var(--ink);font-size:9px}.live-dot{width:7px;height:7px;border-radius:50%;background:#4c9a70;box-shadow:0 0 0 4px rgba(76,154,112,.12)}.dashboard-head{display:flex;align-items:end;justify-content:space-between;padding:48px 0 24px}.dashboard-head h2{margin:0 0 8px;font:500 34px "Noto Serif SC","Songti SC",serif;color:var(--ink)}.dashboard-head>div>p:last-child{margin:0;color:var(--muted);font-size:13px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}.metric-grid article{display:flex;min-height:102px;align-items:center;gap:16px;padding:19px 20px;border:1px solid #e4dfd5;background:var(--card)}.metric-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;font-style:normal}.metric-icon.green{background:#e2ebe4;color:#286346}.metric-icon.gold{background:#f3e7cf;color:#9f742e}.metric-icon.blue{background:#e4eaee;color:#4c6d80}.metric-icon.rose{background:#f1e3df;color:#975f51}.metric-grid small,.metric-grid strong,.metric-grid em{display:block}.metric-grid small{color:var(--muted);font-size:10px}.metric-grid strong{display:inline-block;margin:4px 6px 0 0;font:27px Georgia,serif;color:var(--ink)}.metric-grid em{display:inline;font-size:9px;font-style:normal;color:#9da39f}.creation-toolbar{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr)) minmax(180px,.75fr);gap:10px;margin-top:24px}.creation-toolbar>button{display:flex;min-height:74px;align-items:center;gap:12px;padding:13px 15px;border:1px solid var(--line);background:var(--card);color:var(--text);cursor:pointer;text-align:left}.creation-toolbar>button.active{border-color:var(--ink);background:var(--ink);color:white;box-shadow:0 10px 25px rgba(24,61,50,.14)}.creation-toolbar>button i{display:grid;width:32px;height:32px;place-items:center;border-radius:8px;background:#f0ece3;color:var(--ink);font-style:normal}.creation-toolbar>button.active i{background:rgba(255,255,255,.12);color:#e7bd71}.creation-toolbar b,.creation-toolbar small{display:block}.creation-toolbar b{font-size:12px}.creation-toolbar small{margin-top:5px;color:var(--muted);font-size:9px}.creation-toolbar>button.active small{color:rgba(255,255,255,.58)}.toolbar-tip{display:flex;flex-direction:column;justify-content:center;padding:14px 18px;border-left:3px solid var(--gold);background:#eee7d9}.toolbar-tip b{font-size:10px}.toolbar-tip span{margin-top:5px;color:var(--muted);font-size:9px}.speech-hint{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:13px 0;border-top:1px solid var(--line);color:var(--muted);font-size:9px}.speech-hint>div{height:4px;overflow:hidden;background:#e4dfd4}.speech-hint i{display:block;width:50%;height:100%;background:#4c8a67;transition:width .2s}.speech-hint i.over{background:#b86955}.speech-hint b{color:var(--ink);font-size:9px}.creation-checklist{display:grid;gap:7px;margin:6px 0 8px;padding:15px;background:#f3f0e8}.creation-checklist p{margin:0 0 3px;font-size:10px;font-weight:800}.creation-checklist span{display:flex;align-items:center;color:#657068;font-size:10px}.creation-checklist i{display:grid;width:18px;height:18px;margin-right:8px;place-items:center;border-radius:50%;background:#dbe7de;color:#2b6847;font-style:normal;font-size:8px}.task-toolbar{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line)}.task-filters{display:flex;gap:6px}.task-filters button{padding:9px 14px;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;font-size:11px}.task-filters button.active{border-color:var(--ink);background:var(--ink);color:white}.task-search{display:flex;width:270px;height:38px;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);background:var(--card)}.task-search span{color:var(--muted)}.task-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:11px}.task-tags{display:flex;gap:5px;margin-bottom:7px}.task-tags span{padding:3px 6px;background:#eeebe3;color:#667068;font-size:8px}.publish-card{display:flex;align-items:center;justify-content:space-between;margin:0 0 20px;padding:15px 17px;border:1px solid #cadbce;background:#eff5f0}.publish-card b,.publish-card small{display:block}.publish-card b{font-size:12px}.publish-card small{margin-top:4px;color:var(--muted);font-size:9px}.publish-card>i{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:#3f7b5b;color:white;font-style:normal}
@media(min-width:901px){body{padding-left:232px}.topbar{padding:0 30px}.topbar>.brand{display:none}.topbar .top-nav{margin-right:auto}.view{padding-right:32px;padding-left:32px}.home-view .hero{min-height:500px}.home-view .hero-visual{min-height:500px}.home-view .hero-copy{padding:50px clamp(38px,5vw,74px)}.home-view .hero h1{font-size:clamp(38px,4vw,58px)}.home-view .hero-stats{margin-top:40px}}
@media(max-width:1100px) and (min-width:901px){.top-context{display:none}.metric-grid{grid-template-columns:1fr 1fr}.creation-toolbar{grid-template-columns:repeat(3,1fr)}.toolbar-tip{display:none}.studio-grid{grid-template-columns:minmax(0,1fr) 330px}}
@media(max-width:900px){.app-sidebar{display:none}.top-context{display:none}.dashboard-head{align-items:flex-start;flex-direction:column;gap:20px;padding-top:36px}.metric-grid{grid-template-columns:1fr 1fr}.creation-toolbar{display:flex;margin-right:-20px;padding-right:20px;overflow-x:auto}.creation-toolbar>button{min-width:205px}.toolbar-tip{display:none}.task-toolbar{align-items:stretch;flex-direction:column;gap:12px}.task-filters{overflow-x:auto}.task-filters button{white-space:nowrap}.task-search{width:100%}}
@media(max-width:520px){.metric-grid{grid-template-columns:1fr}.dashboard-head h2{font-size:30px}.creation-toolbar{margin-top:18px}.creation-checklist{margin-top:4px}}

/* 创作时通过下拉框选择人像和声音素材 */
.material-select-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.material-select-row label{display:block}.material-select-row label>span{display:block;margin-bottom:8px;font-size:11px;font-weight:800}.material-select-row select{width:100%;height:46px;padding:0 38px 0 12px;border:1px solid var(--line);outline:0;background:#faf8f2;color:var(--text);cursor:pointer}.material-select-row select:focus{border-color:var(--ink)}.compact-button{min-height:46px;padding:0 14px;font-size:11px}.compact-button:disabled{cursor:not-allowed;opacity:.42}.selected-material-preview{display:flex;min-height:108px;align-items:center;gap:16px;margin-top:14px;padding:12px;background:#f4f0e7}.selected-material-preview img{width:84px;height:84px;object-fit:cover}.selected-material-preview b,.selected-material-preview small{display:block}.selected-material-preview small{margin-top:7px;color:var(--muted);font-size:10px}.selected-material-preview.empty{justify-content:center;border:1px dashed var(--line);background:#faf8f2;color:var(--muted);font-size:11px}.portrait-error{margin:12px 0 0;padding:10px;background:#f8e9e5;color:var(--danger);font-size:11px}.voice-select-row{grid-template-columns:minmax(0,1fr) auto auto}.voice-library-add{width:100%;margin-top:10px}.dialog-field>small{display:block;margin-top:6px;color:var(--muted);font-size:9px}@media(max-width:520px){.voice-select-row{grid-template-columns:1fr 1fr}.voice-select-row label{grid-column:1/-1}.material-select-row:not(.voice-select-row){grid-template-columns:1fr}.compact-button{width:100%}}
.portrait-placeholder{display:grid;width:84px;height:84px;flex:0 0 84px;place-items:center;border-radius:50%;background:var(--ink);color:#e8bd72;font:34px "Noto Serif SC","Songti SC",serif;font-style:normal}
.dialog-field[hidden]{display:none!important}
.voice-clone-note{margin:9px 0 0;color:var(--muted);font-size:9px;line-height:1.6}.voice-clone-note:before{margin-right:5px;color:var(--gold);content:"●"}
.storyboard-panel{overflow:hidden}.storyboard-title{gap:18px}.storyboard-title>span{white-space:nowrap}.storyboard-title .material-add{padding:10px 14px;border-color:var(--gold);background:#f4e7ce;color:var(--ink);font-weight:800}.storyboard-title .material-add:disabled{cursor:wait;opacity:.65}.storyboard-status{display:grid;grid-template-columns:auto auto 1fr;gap:8px;align-items:center;margin:18px 0;padding:12px 14px;border:1px solid var(--line);background:#faf8f2;font-size:11px}.storyboard-status>span{width:8px;height:8px;border-radius:50%;background:#a9b0ac}.storyboard-status small{justify-self:end;color:var(--muted)}.storyboard-status.ready>span{background:#4b8063;box-shadow:0 0 0 4px rgba(75,128,99,.12)}.storyboard-status.working>span{background:var(--gold);animation:pulse 1s infinite}.storyboard-status.stale>span{background:#b78542}.storyboard-status.custom>span{background:#557d91}.storyboard-status.error>span{background:var(--danger)}.storyboard-field{display:block;margin-top:18px}.storyboard-field>span{display:flex;justify-content:space-between;margin-bottom:8px;font-size:12px;font-weight:800}.storyboard-field small{color:var(--muted);font-weight:400}.storyboard-field textarea{width:100%;padding:15px;border:1px solid var(--line);outline:0;background:#f9f7f1;color:var(--text);font-size:12px;line-height:1.75;resize:vertical}.storyboard-field textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(24,61,50,.06)}.storyboard-result{margin:18px 0;border:1px solid var(--line);background:var(--card)}.storyboard-result summary{padding:14px 16px;cursor:pointer;color:var(--ink);font-size:12px;font-weight:800}.storyboard-result pre{max-height:360px;margin:0;padding:18px;overflow:auto;border-top:1px solid var(--line);white-space:pre-wrap;color:var(--text);font:12px/1.75 Inter,"PingFang SC",sans-serif}@keyframes pulse{50%{opacity:.35}}

.mode-guide{display:flex;gap:14px;align-items:center;margin-top:10px;padding:12px 16px;border-left:3px solid var(--gold);background:#eee7d9;font-size:11px}.mode-guide b{white-space:nowrap;color:var(--ink)}.mode-guide span{color:var(--muted)}
.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.material-filters,.library-actions,.task-toolbar-actions{display:flex;align-items:center;gap:8px}.material-filters button{padding:9px 14px;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer}.material-filters button.active{border-color:var(--ink);background:var(--ink);color:#fff}.material-library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-top:28px}.library-card{overflow:hidden;background:var(--card);box-shadow:0 1px 0 rgba(24,61,50,.08)}.library-cover{display:grid;height:190px;place-items:center;overflow:hidden;background:#dfe4dc}.library-cover img{width:100%;height:100%;object-fit:cover}.library-cover.voice{background:var(--ink);color:#e4b866}.library-cover.portrait{background:#dfe7df}.audio-wave{font:28px/1 monospace;letter-spacing:7px}.library-card-body{padding:18px}.library-kind{color:var(--gold);font-size:9px;font-weight:800;letter-spacing:.12em}.library-card h3{margin:8px 0 6px;font-size:17px}.library-card p{min-height:34px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.library-card small{display:block;margin-top:10px;color:#477159;font-size:10px}.library-card-actions{display:flex;gap:8px;margin-top:16px}.library-card-actions .secondary{flex:1}
.task-toolbar-actions{margin-left:auto}.task-card{position:relative}.task-card.selected{outline:2px solid var(--gold);outline-offset:-2px}.task-select{position:absolute;top:8px;left:8px;z-index:4;cursor:pointer}.task-select input{position:absolute;opacity:0}.task-select span{display:grid;width:24px;height:24px;place-items:center;border:1px solid rgba(24,61,50,.25);background:rgba(255,253,248,.9);color:transparent;font-size:11px}.task-select input:checked+span{border-color:var(--gold);background:var(--gold);color:var(--ink)}.task-card-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:12px}.task-card-actions button{padding:5px 9px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;font-size:10px}.task-card-actions .danger-text{color:var(--danger)}.danger-button:disabled{cursor:not-allowed;opacity:.4}.danger-solid{min-height:48px;padding:0 20px;border:0;background:var(--danger);color:white;cursor:pointer;font-weight:800}.confirm-dialog p{color:var(--muted);line-height:1.7}
.publish-summary{display:grid;grid-template-columns:repeat(2,180px);gap:12px;padding:24px 0}.publish-summary article{padding:20px;background:var(--card)}.publish-summary small,.publish-summary strong{display:block}.publish-summary small{color:var(--muted);font-size:10px}.publish-summary strong{margin-top:6px;font:30px Georgia,serif;color:var(--ink)}.publish-list{display:grid;gap:12px}.publish-row{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(260px,.65fr);gap:20px;align-items:center;padding:16px;background:var(--card)}.publish-row .task-thumb{width:120px;height:86px}.publish-meta h3{margin:7px 0;font-size:16px}.publish-meta p{display:-webkit-box;margin:0;overflow:hidden;color:var(--muted);font-size:11px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:2}.publish-meta small{display:block;margin-top:8px;color:var(--muted);font-size:9px}.publish-status{padding:4px 7px;background:#eeeae2;color:#7b817d;font-size:9px}.publish-status.published{background:#e3eee6;color:#3d7654}.publish-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.publish-actions select{grid-column:1/-1;height:40px;padding:0 10px;border:1px solid var(--line);background:#faf8f2;color:var(--text)}.publish-actions button:last-child{grid-column:1/-1}
@media(max-width:1100px){.material-library{grid-template-columns:repeat(2,1fr)}.publish-row{grid-template-columns:100px minmax(0,1fr)}.publish-actions{grid-column:2}}
@media(max-width:900px){.library-toolbar{align-items:stretch;flex-direction:column}.material-filters,.library-actions{overflow-x:auto}.material-filters button,.library-actions button{white-space:nowrap}.task-toolbar-actions{width:100%;margin:0}.task-toolbar-actions .task-search{flex:1}.publish-row{grid-template-columns:90px minmax(0,1fr)}.publish-row .task-thumb{width:90px;height:72px}}
@media(max-width:560px){.material-library{grid-template-columns:1fr}.library-cover{height:170px}.publish-summary{grid-template-columns:1fr 1fr}.publish-row{grid-template-columns:1fr}.publish-row .task-thumb{width:100%;height:180px}.publish-actions{grid-column:1}.mode-guide{align-items:flex-start;flex-direction:column}.task-toolbar-actions{align-items:stretch;flex-direction:column}.task-toolbar-actions .task-search{width:100%}}

.login-screen{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 75% 20%,#d7c49f 0,transparent 30%),var(--ink)}.login-screen[hidden]{display:none}.login-card{width:min(440px,100%);padding:44px;background:var(--card);box-shadow:0 30px 90px rgba(0,0,0,.28)}.login-mark{display:grid;width:54px;height:54px;margin-bottom:26px;place-items:center;border:1px solid var(--ink);border-radius:50%;color:var(--gold);font:italic 30px Georgia,serif}.login-card h1{margin-bottom:12px;color:var(--ink);font:500 34px/1.25 "Noto Serif SC","Songti SC",serif}.login-card>p:not(.eyebrow):not(.login-error){margin-bottom:28px;color:var(--muted);font-size:13px}.login-card label{display:block;margin:16px 0}.login-card label span{display:block;margin-bottom:8px;font-size:11px;font-weight:800}.login-card input{width:100%;height:48px;padding:0 13px;border:1px solid var(--line);outline:0;background:#faf8f2}.login-card input:focus{border-color:var(--ink)}.login-error{padding:10px;background:#f5e5e1;color:var(--danger);font-size:11px}.side-account button{margin-left:auto;padding:5px;border:0;background:transparent;color:rgba(255,255,255,.55);cursor:pointer;font-size:9px}.side-account button:hover{color:#fff}
.cost-estimate{display:grid;grid-template-columns:1fr auto;gap:5px;padding:14px 0;border-top:1px solid var(--line);font-size:11px}.cost-estimate strong{color:var(--ink);font-size:17px}.cost-estimate strong.over{color:var(--danger)}.cost-estimate small{grid-column:1/-1;color:var(--muted);font-size:9px;text-align:right}
.quota-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:28px 0}.quota-overview article{padding:24px;background:var(--card)}.quota-overview article.remaining{background:var(--ink);color:#fff}.quota-overview small,.quota-overview strong,.quota-overview span{display:block}.quota-overview small{color:var(--muted);font-size:10px}.quota-overview strong{margin:9px 0;font:30px Georgia,serif;color:var(--ink)}.quota-overview span{color:var(--muted);font-size:9px}.quota-overview .remaining small,.quota-overview .remaining span{color:rgba(255,255,255,.55)}.quota-overview .remaining strong{color:#e5bd76}.billing-note{display:flex;gap:14px;margin-bottom:18px;padding:14px 18px;border-left:3px solid var(--gold);background:#eee7d9;font-size:11px}.billing-note span{color:var(--muted)}.billing-list{display:grid}.billing-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.billing-list article:last-child{border-bottom:0}.billing-list b,.billing-list small{display:block}.billing-list b{margin-top:6px;font-size:12px}.billing-list small{margin-top:5px;color:var(--muted);font-size:9px}.billing-list article>strong{font:18px Georgia,serif}.charge-status{padding:3px 6px;background:#eeeae2;color:var(--muted);font-size:8px}.charge-status.settled{background:#e1eee5;color:#34704d}.charge-status.reserved{background:#f3e8d2;color:#956920}.charge-status.released{background:#eee;color:#888}
.admin-pricing{display:grid;grid-template-columns:minmax(220px,.6fr) 1fr;gap:32px;margin:28px 0}.admin-pricing h2{font:500 26px "Noto Serif SC","Songti SC",serif}.admin-pricing p{margin:0;color:var(--muted);font-size:11px;line-height:1.7}.admin-pricing form{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:10px;align-items:end}.admin-pricing label{font-size:10px;font-weight:800}.admin-pricing input{width:100%;height:42px;margin-top:7px;padding:0 10px;border:1px solid var(--line);background:#faf8f2}.account-list{display:grid;gap:12px}.account-card{display:grid;grid-template-columns:minmax(240px,.8fr) 1.2fr auto;gap:20px;align-items:center;padding:18px;background:var(--card)}.account-card.disabled{opacity:.55}.account-main{display:flex;align-items:center;gap:14px}.account-main>span{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;border-radius:50%;background:var(--ink);color:#e3b86e;font:20px Georgia,serif}.account-main small{color:var(--gold);font-size:8px}.account-main h3{margin:3px 0;font-size:15px}.account-main p{margin:0;color:var(--muted);font-size:10px}.account-quota{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.account-quota div{padding:10px;background:#f4f0e7}.account-quota small,.account-quota b{display:block}.account-quota small{color:var(--muted);font-size:8px}.account-quota b{margin-top:4px;font-size:12px}.switch-field{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:12px;font-weight:800}.switch-field[hidden]{display:none}.switch-field input{width:18px;height:18px}
.billing-reconcile{margin:0 0 28px}.billing-reconcile-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.billing-reconcile h2{margin:4px 0 8px;font:500 26px "Noto Serif SC","Songti SC",serif}.billing-reconcile p{margin:0;color:var(--muted);font-size:11px}.billing-sync-controls{display:flex;gap:8px}.billing-sync-controls input{height:40px;padding:0 10px;border:1px solid var(--line);background:#faf8f2}.billing-connection{margin:20px 0 12px;padding:11px 14px;border-left:3px solid var(--gold);background:#f4f0e7;font-size:10px}.billing-connection.succeeded,.billing-connection.ready{border-color:#34704d;background:#e8f0e9}.billing-connection.failed,.billing-connection.missing{border-color:#a54b3d;background:#f5e6e2}.billing-reconcile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.billing-reconcile-stats article{padding:14px;background:#f7f3eb}.billing-reconcile-stats small,.billing-reconcile-stats strong{display:block}.billing-reconcile-stats small{color:var(--muted);font-size:8px}.billing-reconcile-stats strong{margin-top:6px;font:20px Georgia,serif}.amount-source{display:inline-block;margin-left:5px;padding:3px 6px;font-size:8px}.amount-source.official{background:#dfece2;color:#2d6b45}.amount-source.estimate{background:#f2e5ce;color:#8d6424}
.billing-allocation-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.billing-allocation-panel h3{margin:0 0 5px;font-size:14px}.billing-allocation-form{display:grid;grid-template-columns:1.2fr .7fr 1.4fr auto auto;gap:8px;margin:14px 0}.billing-allocation-form select,.billing-allocation-form input{min-width:0;height:40px;padding:0 10px;border:1px solid var(--line);background:#faf8f2}.billing-allocation-list{display:grid;gap:6px}.billing-allocation-list article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 12px;background:#f7f3eb}.billing-allocation-list b,.billing-allocation-list small{display:block}.billing-allocation-list b{font-size:11px}.billing-allocation-list small{margin-top:3px;color:var(--muted);font-size:8px}.billing-allocation-list strong{font:16px Georgia,serif}.allocation-locked{padding:4px 7px;background:#dfece2;color:#2d6b45;font-size:8px}.allocation-empty{padding:10px 0}
@media(max-width:1100px){.quota-overview{grid-template-columns:1fr 1fr}.account-card{grid-template-columns:1fr auto}.account-quota{grid-column:1/-1}.admin-pricing{grid-template-columns:1fr}.admin-pricing form{grid-template-columns:repeat(3,1fr) auto}.billing-allocation-form{grid-template-columns:1fr 1fr}.billing-allocation-form input:nth-of-type(2){grid-column:1/-1}}
@media(max-width:700px){.quota-overview{grid-template-columns:1fr 1fr}.admin-pricing form{grid-template-columns:1fr 1fr}.admin-pricing form button{grid-column:1/-1}.billing-reconcile-head{display:block}.billing-sync-controls{margin-top:16px}.billing-reconcile-stats{grid-template-columns:1fr 1fr}.account-card{grid-template-columns:1fr}.account-card>button{width:100%}.account-quota{grid-template-columns:1fr 1fr}.login-card{padding:30px}.login-card h1{font-size:28px}}

/* 2026 全站视觉主题：夜航蓝 / 陶土暖棕 / 薄荷晨雾 */
:root,
:root[data-theme="midnight"]{
  --ink:#102c46;--ink-2:#1c4f72;--paper:#eef3f7;--paper-2:#dfe8ee;--card:#fbfdff;
  --gold:#29b8c8;--text:#172c3d;--muted:#667b8b;--line:#d5e0e7;--danger:#c75555;
  --accent:#ffb45f;--accent-soft:#fff0dc;--sidebar-bg:#0b2035;--sidebar-ink:#eaf6fa;
  --sidebar-muted:#8ba6b7;--nav-active:#153d5b;--topbar-bg:rgba(246,249,252,.9);
  --surface-soft:#f1f6f9;--surface-strong:#e4edf3;--success:#2b8b73;
  --shadow:0 18px 55px rgba(16,44,70,.11);--shadow-soft:0 8px 26px rgba(16,44,70,.07);
  --radius:14px;--radius-small:9px;--theme-glow:rgba(41,184,200,.16);
}
:root[data-theme="terracotta"]{
  --ink:#56342f;--ink-2:#7a4639;--paper:#f5eee7;--paper-2:#eaded2;--card:#fffaf5;
  --gold:#c9633d;--text:#442f2b;--muted:#846f67;--line:#e1d3c7;--danger:#a43f47;
  --accent:#d99a3d;--accent-soft:#f8e7cc;--sidebar-bg:#432927;--sidebar-ink:#fff5ec;
  --sidebar-muted:#c6aaa0;--nav-active:#653a32;--topbar-bg:rgba(250,246,241,.9);
  --surface-soft:#f8f0e8;--surface-strong:#eee0d4;--success:#647d5d;
  --shadow:0 18px 55px rgba(87,49,41,.12);--shadow-soft:0 8px 26px rgba(87,49,41,.07);
  --radius:6px;--radius-small:4px;--theme-glow:rgba(201,99,61,.15);
}
:root[data-theme="mint"]{
  --ink:#123e38;--ink-2:#176b5d;--paper:#edf6f3;--paper-2:#dcece7;--card:#fbfffd;
  --gold:#7359d9;--text:#173a34;--muted:#66827a;--line:#d2e4de;--danger:#c34f62;
  --accent:#ff896b;--accent-soft:#ffe9e2;--sidebar-bg:#103b36;--sidebar-ink:#effffb;
  --sidebar-muted:#9dc2b8;--nav-active:#195047;--topbar-bg:rgba(245,251,249,.9);
  --surface-soft:#f0f8f5;--surface-strong:#dfeee9;--success:#16866f;
  --shadow:0 18px 55px rgba(18,62,56,.1);--shadow-soft:0 8px 26px rgba(18,62,56,.07);
  --radius:18px;--radius-small:11px;--theme-glow:rgba(115,89,217,.13);
}

body{background:
  radial-gradient(circle at 84% 8%,var(--theme-glow),transparent 24rem),
  linear-gradient(180deg,var(--paper),color-mix(in srgb,var(--paper) 92%,white));
  background-attachment:fixed;transition:background-color .3s ease,color .3s ease}
body:before{position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:32px 32px;content:""}
.app-sidebar{border:0;background:var(--sidebar-bg);box-shadow:12px 0 42px rgba(10,28,39,.08);color:var(--sidebar-ink)}
.side-brand{color:var(--sidebar-ink)}
.side-brand>span{background:linear-gradient(145deg,var(--gold),var(--accent));box-shadow:0 10px 28px rgba(0,0,0,.2);color:var(--sidebar-bg)}
.side-brand small,.side-caption{color:var(--sidebar-muted)}
.side-nav a{color:var(--sidebar-muted);transition:background .2s ease,color .2s ease,transform .2s ease}
.side-nav a:hover{background:rgba(255,255,255,.07);color:var(--sidebar-ink);transform:translateX(2px)}
.side-nav a.active{background:var(--nav-active);color:var(--sidebar-ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.side-nav a.active:before{background:var(--gold);box-shadow:0 0 14px var(--gold)}
.side-nav i{color:inherit}.side-nav em{background:var(--accent);color:var(--sidebar-bg)}
.side-account{border-color:rgba(255,255,255,.12)}.side-account>span{background:rgba(255,255,255,.12);color:var(--sidebar-ink)}
.side-account small{color:var(--sidebar-muted)}
.topbar{border-color:var(--line);background:var(--topbar-bg);box-shadow:0 8px 30px rgba(20,46,60,.035)}
.topbar nav a{color:var(--muted)}.topbar nav a.active{color:var(--ink)}.topbar nav a.active:after{background:var(--gold)}
.top-context b{border-radius:99px;background:var(--surface-soft)}.live-dot{background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 16%,transparent)}
.theme-trigger{display:inline-flex;min-height:40px;align-items:center;gap:8px;padding:0 13px;border:1px solid var(--line);border-radius:99px;background:var(--card);color:var(--ink);cursor:pointer;font-size:11px;font-weight:800;box-shadow:var(--shadow-soft);transition:.2s ease}
.theme-trigger:hover{border-color:var(--gold);transform:translateY(-1px)}
.theme-trigger i{width:13px;height:13px;border:3px solid var(--gold);border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--card)}
.header-action,.primary{border-radius:var(--radius-small);background:linear-gradient(135deg,var(--gold),color-mix(in srgb,var(--gold) 72%,var(--accent)));box-shadow:0 10px 24px color-mix(in srgb,var(--gold) 20%,transparent);color:color-mix(in srgb,var(--ink) 92%,black);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.header-action{border:0}.header-action:hover,.primary:hover{filter:saturate(1.08) brightness(1.03);box-shadow:0 14px 30px color-mix(in srgb,var(--gold) 26%,transparent);transform:translateY(-2px)}
.secondary,.material-add,.task-card-actions button{border-radius:var(--radius-small);transition:.2s ease}.secondary:hover,.material-add:hover,.task-card-actions button:hover{border-color:var(--gold);background:var(--surface-soft)}
.dashboard-head h2,.page-intro h1,.section-heading h2,.callout h2,.admin-pricing h2,.billing-reconcile h2{letter-spacing:-.035em}
.metric-grid{gap:15px}.metric-grid article,.panel,.task-card,.publish-row,.quota-overview article,.account-card,.publish-summary article{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--card) 95%,transparent);box-shadow:var(--shadow-soft);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.metric-grid article:hover,.account-card:hover,.publish-row:hover{border-color:color-mix(in srgb,var(--gold) 42%,var(--line));box-shadow:var(--shadow);transform:translateY(-2px)}
.metric-icon{border-radius:calc(var(--radius-small) + 2px)}
.metric-icon.green{background:color-mix(in srgb,var(--success) 15%,var(--card));color:var(--success)}
.metric-icon.gold{background:color-mix(in srgb,var(--accent) 20%,var(--card));color:color-mix(in srgb,var(--accent) 70%,var(--ink))}
.metric-icon.blue{background:color-mix(in srgb,var(--gold) 14%,var(--card));color:var(--ink-2)}
.metric-icon.rose{background:color-mix(in srgb,var(--danger) 12%,var(--card));color:var(--danger)}
.hero{border-radius:calc(var(--radius) + 5px);background:linear-gradient(135deg,var(--sidebar-bg),color-mix(in srgb,var(--sidebar-bg) 72%,var(--ink-2)));box-shadow:var(--shadow);isolation:isolate}
.hero-copy{position:relative;z-index:2}.hero-copy:after{position:absolute;right:6%;bottom:8%;width:140px;height:140px;border:1px solid rgba(255,255,255,.09);border-radius:50%;content:""}
.hero-visual{background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 40%,#d9d2c2),color-mix(in srgb,var(--gold) 24%,#879b9a))}
.hero-visual:before{background:linear-gradient(150deg,rgba(255,255,255,.3),transparent 42%,color-mix(in srgb,var(--ink) 28%,transparent))}
.sun{background:color-mix(in srgb,var(--accent) 65%,#fff3c8);box-shadow:0 0 80px color-mix(in srgb,var(--accent) 35%,transparent)}
.headboard{background:color-mix(in srgb,var(--ink-2) 58%,#8da197)}.primary,.eyebrow,.feature-grid article>span{color:var(--ink)}
.eyebrow{color:var(--gold)}.eyebrow.green{color:var(--ink-2)}
.feature-grid{overflow:hidden;border-color:var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}
.feature-grid article{border-color:var(--line);background:color-mix(in srgb,var(--card) 82%,transparent)}
.callout{border-radius:var(--radius);background:linear-gradient(120deg,var(--sidebar-bg),var(--ink-2));box-shadow:var(--shadow)}
.light-button{border-radius:var(--radius-small);background:var(--card)}
.creation-toolbar>button{border-radius:var(--radius);box-shadow:var(--shadow-soft)}.creation-toolbar>button.active{border-color:var(--ink);background:linear-gradient(135deg,var(--ink),var(--ink-2));box-shadow:var(--shadow)}
.creation-toolbar>button i{border-radius:var(--radius-small);background:var(--surface-strong)}.creation-toolbar>button.active i{color:var(--gold)}
.toolbar-tip,.billing-note{border-radius:0 var(--radius-small) var(--radius-small) 0;background:var(--accent-soft)}
.choice-card,.user-material-card,.selected-material-preview,.creation-checklist,.account-quota div,.billing-reconcile-stats article{border-radius:var(--radius-small);background:var(--surface-soft)}
.choice-card.selected,.user-material-card.selected{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 12%,transparent),var(--shadow-soft)}
.choice-card .check,.material-check{background:var(--gold);color:var(--ink)}
.field input,.field textarea,.material-select-row select,.storyboard-field textarea,.dialog-field input,.dialog-field textarea,.admin-pricing input,.billing-sync-controls input,.publish-actions select,.login-card input{border-radius:var(--radius-small);background:var(--surface-soft)}
.field input:focus,.field textarea:focus,.material-select-row select:focus,.storyboard-field textarea:focus,.dialog-field input:focus,.dialog-field textarea:focus,.admin-pricing input:focus,.login-card input:focus{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 13%,transparent)}
.segment span,.task-filters button{border-radius:var(--radius-small)}.segment input:checked+span,.task-filters button.active{border-color:var(--ink);background:var(--ink)}
.task-search{border-radius:99px;background:var(--card);box-shadow:var(--shadow-soft)}
.task-thumb{border-radius:calc(var(--radius-small) + 1px)}.task-card:hover{box-shadow:var(--shadow)}
.status:before{background:var(--accent)}.status.succeeded:before{background:var(--success)}
.quota-overview article.remaining{background:linear-gradient(135deg,var(--sidebar-bg),var(--ink-2))}.quota-overview .remaining strong{color:var(--gold)}
.account-main>span{background:linear-gradient(145deg,var(--ink),var(--ink-2));color:var(--gold)}
.billing-connection,.publish-card{border-radius:var(--radius-small);background:var(--surface-soft)}
.billing-connection.succeeded,.billing-connection.ready,.publish-card{border-color:color-mix(in srgb,var(--success) 35%,var(--line));background:color-mix(in srgb,var(--success) 9%,var(--card))}
.publish-card>i{background:var(--success)}
.material-dialog{border-radius:calc(var(--radius) + 2px);background:var(--card);box-shadow:0 30px 100px rgba(8,25,37,.28)}
.material-dialog::backdrop,.theme-dialog::backdrop{background:rgba(8,22,31,.55);backdrop-filter:blur(7px)}
.login-screen{background:radial-gradient(circle at 78% 17%,color-mix(in srgb,var(--gold) 40%,transparent),transparent 29%),linear-gradient(145deg,var(--sidebar-bg),var(--ink-2))}
.login-card{border:1px solid rgba(255,255,255,.14);border-radius:calc(var(--radius) + 6px);box-shadow:0 35px 110px rgba(0,0,0,.32)}
.login-mark{border-color:var(--gold);background:var(--surface-soft)}
.toast{border-radius:var(--radius-small);background:var(--sidebar-bg);box-shadow:var(--shadow)}
.mobile-nav{background:color-mix(in srgb,var(--card) 92%,transparent)}.mobile-nav a.active{color:var(--gold)}

.theme-dialog{width:min(820px,calc(100vw - 32px));padding:0;border:0;border-radius:calc(var(--radius) + 6px);background:var(--card);color:var(--text);box-shadow:0 36px 110px rgba(7,24,34,.32)}
.theme-dialog form{padding:34px}.theme-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.theme-dialog-head h2{margin:0 0 9px;font:500 32px/1.2 "Noto Serif SC","Songti SC",serif;color:var(--ink)}
.theme-dialog-head p:last-child{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.theme-dialog-close{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;font-size:22px}
.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0}
.theme-option{position:relative;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);color:var(--text);cursor:pointer;text-align:left;transition:.22s ease}
.theme-option:hover{border-color:var(--gold);box-shadow:var(--shadow-soft);transform:translateY(-3px)}
.theme-option.active{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 13%,transparent),var(--shadow-soft)}
.theme-preview{position:relative;display:grid;height:125px;grid-template-columns:27% 1fr;grid-template-rows:24% 1fr;gap:7px;padding:12px;overflow:hidden;border-radius:calc(var(--radius-small) + 1px)}
.theme-preview:before{grid-row:1/-1;border-radius:6px;background:var(--preview-side);content:""}.theme-preview i{display:block;border-radius:5px;background:var(--preview-card)}.theme-preview i:first-of-type{background:var(--preview-accent)}.theme-preview i:nth-of-type(2){grid-column:2}.theme-preview i:nth-of-type(3){grid-column:2;width:68%}.theme-preview i:nth-of-type(4){position:absolute;right:15px;bottom:15px;width:34px;height:34px;border-radius:50%;background:var(--preview-pop);box-shadow:0 7px 16px rgba(0,0,0,.16)}
.preview-midnight{--preview-side:#0b2035;--preview-card:#f9fcff;--preview-accent:#29b8c8;--preview-pop:#ffb45f;background:#e9f0f5}
.preview-terracotta{--preview-side:#432927;--preview-card:#fff9f3;--preview-accent:#c9633d;--preview-pop:#d99a3d;background:#f2e8de}
.preview-mint{--preview-side:#103b36;--preview-card:#fbfffd;--preview-accent:#7359d9;--preview-pop:#ff896b;background:#e5f2ee}
.theme-option-copy{display:block;padding:15px 5px 7px}.theme-option-copy b,.theme-option-copy small{display:block}.theme-option-copy b{color:var(--ink);font-size:14px}.theme-option-copy small{margin-top:7px;color:var(--muted);font-size:10px;line-height:1.65}
.theme-option em{position:absolute;top:20px;right:20px;display:none;padding:5px 8px;border-radius:99px;background:var(--sidebar-bg);color:var(--sidebar-ink);font-size:8px;font-style:normal;font-weight:800}.theme-option.active em{display:block}
.theme-dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid var(--line)}.theme-dialog-foot>span{color:var(--muted);font-size:10px}

:root[data-theme="terracotta"] .hero-visual{background:linear-gradient(145deg,#ca896c,#78544c)}
:root[data-theme="terracotta"] .headboard{background:#8a4c42}:root[data-theme="terracotta"] .duvet{background:#f2d9c9}
:root[data-theme="mint"] .hero-visual{background:linear-gradient(145deg,#a9d5c8,#708f88)}
:root[data-theme="mint"] .headboard{background:#4a786d}:root[data-theme="mint"] .duvet{background:#e9f3ef}

@media(max-width:1100px){.theme-trigger span{display:none}.theme-trigger{width:40px;justify-content:center;padding:0}.topbar{gap:10px}}
@media(max-width:700px){.theme-options{grid-template-columns:1fr}.theme-preview{height:92px}.theme-dialog form{padding:22px}.theme-dialog-head h2{font-size:26px}.theme-dialog-foot{align-items:stretch;flex-direction:column}.theme-dialog-foot .primary{width:100%}.theme-option-copy{padding-bottom:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* 总部每季产品素材库 */
.product-source-tabs{display:flex;gap:8px;margin:0 0 14px}.product-source-tabs button,.product-category-filters button{border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.product-source-tabs button{padding:9px 16px;font-size:12px;font-weight:700}.product-source-tabs button.active,.product-category-filters button.active{border-color:var(--ink);background:var(--ink);color:#fff}.product-category-filters{display:flex;gap:7px;margin:0 0 18px;overflow-x:auto;padding-bottom:3px}.product-category-filters button{flex:0 0 auto;padding:7px 13px;font-size:11px}.dialog-field select{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--line);outline:0;background:#faf8f2;color:var(--text)}.dialog-field select:focus{border-color:var(--ink)}.dialog-field>small{display:block;margin-top:6px;color:var(--muted);font-size:10px;line-height:1.5}.dialog-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.user-material-card span small{line-height:1.45}@media(max-width:700px){.dialog-field-pair{grid-template-columns:1fr}.product-source-tabs button{flex:1}.product-category-filters{margin-right:-18px;padding-right:18px}}

/* AI 营销图片 */
.image-page-intro{align-items:center}.image-model-badge{display:grid;grid-template-columns:auto auto;gap:2px 10px;align-items:center;padding:13px 17px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:var(--radius-small);background:var(--accent-soft)}.image-model-badge i{grid-row:1/3;width:9px;height:9px;border-radius:50%;background:#47a878;box-shadow:0 0 0 5px rgba(71,168,120,.12)}.image-model-badge span{font-size:11px;font-weight:800}.image-model-badge small{color:var(--muted);font-size:8px}.image-studio-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.55fr);gap:22px;padding-top:24px}.image-builder{display:grid;gap:18px}.image-step-panel{border:1px solid color-mix(in srgb,var(--line) 74%,transparent)}.image-mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.image-mode-grid input,.style-preset-grid input,.ratio-cards input,.watermark-options input{position:absolute;opacity:0}.image-mode-grid label,.style-preset-grid label,.ratio-cards label,.watermark-options label{cursor:pointer}.image-mode-grid label>span{display:grid;min-height:132px;align-content:center;padding:18px;border:1px solid var(--line);border-radius:var(--radius-small);background:color-mix(in srgb,var(--card) 70%,var(--paper-2));transition:.2s}.image-mode-grid i{display:grid;width:34px;height:34px;margin-bottom:14px;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--ink);font-style:normal;font-size:18px}.image-mode-grid b,.image-mode-grid small{display:block}.image-mode-grid small{margin-top:6px;color:var(--muted);font-size:9px;line-height:1.5}.image-mode-grid input:checked+span{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 66%,var(--card));box-shadow:0 10px 30px rgba(15,48,72,.08)}.image-mode-grid input:checked+span i{background:var(--accent);color:var(--sidebar-bg)}.image-product-picker{margin-bottom:16px}.image-product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:346px;overflow-y:auto;padding-right:4px}.image-product-grid .user-material-card>img{height:104px}.image-product-grid .user-material-card>span{padding:10px 10px 12px}.image-product-grid .user-material-card>span b{font-size:12px}.image-product-selected{margin:12px 0 0;color:var(--muted);font-size:11px}.image-product-selected.uploaded{color:var(--ink);font-weight:700}.image-product-upload{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center}.image-product-upload .image-drop{min-height:118px}.image-or{align-self:center;color:var(--muted);font-size:9px}.image-drop{position:relative;display:grid;min-height:190px;place-items:center;overflow:hidden;border:1px dashed color-mix(in srgb,var(--muted) 62%,transparent);border-radius:var(--radius-small);background:var(--paper);cursor:pointer;text-align:center}.image-drop.large{min-height:220px}.image-drop input{position:absolute;width:1px;height:1px;opacity:0}.image-drop>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.image-drop.has-image:after{position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(4,20,29,.6));content:""}.image-drop>span{position:relative;z-index:2;padding:12px}.image-drop.has-image>span{align-self:end;color:#fff}.image-drop b,.image-drop small{display:block}.image-drop small{margin-top:7px;color:var(--muted);font-size:9px}.image-drop.has-image small{color:rgba(255,255,255,.72)}.style-preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.style-preset-grid label>span{position:relative;display:block;min-height:142px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-small);background:var(--paper);padding:87px 13px 12px}.style-preset-grid label>span>i{position:absolute;inset:0 0 auto;height:76px;background:linear-gradient(145deg,#d8d3c6,#b4bdba)}.style-preset-grid .style-chinese>i{background:linear-gradient(145deg,#684a3a,#c4a47e)}.style-preset-grid .style-nordic>i{background:linear-gradient(145deg,#dbe1dc,#aebcae)}.style-preset-grid .style-luxury>i{background:linear-gradient(145deg,#3f3c3c,#a88c69)}.style-preset-grid .style-nature>i{background:linear-gradient(145deg,#5e7b68,#d5c7a6)}.style-preset-grid .style-minimal>i{background:linear-gradient(145deg,#ece9e2,#a6abb0)}.style-preset-grid b,.style-preset-grid small{display:block}.style-preset-grid b{font-size:11px}.style-preset-grid small{margin-top:4px;color:var(--muted);font-size:8px}.style-preset-grid input:checked+span{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.image-reference-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.image-reference-grid>.image-drop:only-child{grid-column:1/-1}.image-output-panel fieldset{margin:0;padding:17px 0;border:0;border-top:1px solid var(--line)}.image-output-panel legend{padding-top:17px;font-size:10px;font-weight:800}.segment.two{grid-template-columns:repeat(2,1fr)}.segment.four{grid-template-columns:repeat(4,1fr)}.ratio-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.ratio-cards label>span{display:grid;min-height:82px;place-items:center;border:1px solid var(--line);border-radius:var(--radius-small);color:var(--muted)}.ratio-cards i{display:block;border:1.5px solid currentColor}.ratio-cards i.square{width:24px;height:24px}.ratio-cards i.portrait{width:21px;height:27px}.ratio-cards i.landscape{width:31px;height:18px}.ratio-cards b{font-size:10px}.ratio-cards small{font-size:7px}.ratio-cards input:checked+span{border-color:var(--ink);background:var(--ink);color:#fff}.watermark-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.watermark-options span{display:grid;height:40px;place-items:center;border:1px solid var(--line);border-radius:var(--radius-small);font-size:9px}.watermark-options .watermark-dark{background:#26333a;color:#fff}.watermark-options .watermark-light{background:#f2eee4;color:#24333b}.watermark-options input:checked+span{box-shadow:inset 0 0 0 2px var(--accent);border-color:var(--accent)}.mini-spinner{width:17px;height:17px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.image-history-section{padding-top:16px}.compact-heading{padding-top:56px}.image-history-grid{display:grid;gap:18px}.image-history-card{display:grid;grid-template-columns:minmax(300px,1.5fr) minmax(230px,.5fr);gap:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow)}.image-result-grid{display:grid;gap:2px;background:var(--line)}.image-result-grid.count-1{grid-template-columns:1fr}.image-result-grid.count-2,.image-result-grid.count-3,.image-result-grid.count-4{grid-template-columns:repeat(2,1fr)}.image-result-grid figure{position:relative;min-height:230px;margin:0;overflow:hidden;background:var(--paper-2)}.image-result-grid img{display:block;width:100%;height:100%;object-fit:cover}.image-result-grid .image-card-actions{position:absolute;right:10px;bottom:10px;display:flex;gap:6px;opacity:0;transition:.2s}.image-result-grid figure:hover .image-card-actions,.image-result-grid figure:focus-within .image-card-actions{opacity:1}.image-result-grid a,.image-result-grid button{padding:8px 11px;border:0;border-radius:7px;background:rgba(10,31,42,.86);color:#fff;cursor:pointer;font-size:9px;text-decoration:none}.image-history-meta{display:flex;flex-direction:column;padding:25px}.image-history-meta>div:first-child{display:flex;flex-wrap:wrap;gap:5px}.image-history-meta>div:first-child span{padding:4px 7px;border-radius:99px;background:var(--accent-soft);color:var(--ink);font-size:8px}.image-history-meta h3{margin:18px 0 8px;font:500 22px "Noto Serif SC","Songti SC",serif}.image-history-meta p{color:var(--muted);font-size:9px;line-height:1.7}.image-history-actions{display:flex;gap:8px;margin-top:auto}.image-empty{grid-column:1/-1;width:100%}
.image-builder,.image-settings,.image-step-panel,.image-output-panel{min-width:0}.image-step-panel .panel-title small{min-width:0;text-align:right;overflow-wrap:anywhere}
@media(min-width:901px) and (max-width:1280px){.image-studio-grid{grid-template-columns:1fr}.image-settings{display:block}.image-output-panel{position:static;top:auto}}
@media(max-width:900px){.image-studio-grid{grid-template-columns:1fr}.image-settings{display:contents}.image-mode-grid{grid-template-columns:1fr}.image-mode-grid label>span{min-height:100px}.image-or{text-align:center}.style-preset-grid{grid-template-columns:repeat(2,1fr)}.image-reference-grid{grid-template-columns:1fr}.image-history-card{grid-template-columns:1fr}.image-result-grid figure{min-height:190px}.image-model-badge{display:none}}

/* 2026-09-18 生图完善：自定义水印与全屏预览 */
.watermark-options.four{grid-template-columns:repeat(4,1fr)}
.watermark-options .watermark-custom{background:linear-gradient(135deg,#f3f6f8,#cdd8df);color:#22333c}
.legend-hint{margin-left:4px;color:var(--muted);font-size:8px;font-weight:600}
.watermark-custom-panel{display:grid;gap:12px;margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-small);background:var(--paper)}
.watermark-custom-panel[hidden],.watermark-fields[hidden]{display:none}
.watermark-kind{margin:0}
.watermark-fields{display:grid;gap:12px}
.watermark-field{display:grid;gap:6px}
.watermark-field>span{color:var(--muted);font-size:10px;font-weight:700}
.watermark-field input,.watermark-field select{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);font-size:11px}
.watermark-field input[type=color]{padding:3px;cursor:pointer}
.watermark-field input[type=range]{height:auto;padding:0;border:0;background:transparent;accent-color:var(--accent)}
.range-field b{color:var(--ink)}
.watermark-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.watermark-check{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:10px;cursor:pointer}
.watermark-check input{width:15px;height:15px;accent-color:var(--accent)}
.watermark-drop{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:84px;padding:10px 12px;border:1px dashed color-mix(in srgb,var(--muted) 55%,transparent);border-radius:var(--radius-small);background:var(--card);cursor:pointer}
.watermark-drop input{position:absolute;width:1px;height:1px;opacity:0}
.watermark-drop>img{width:64px;height:64px;object-fit:contain;padding:6px;border-radius:8px;background:#1d2a31}
.watermark-drop b,.watermark-drop small{display:block}
.watermark-drop small{margin-top:5px;color:var(--muted);font-size:9px}
.watermark-position-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.watermark-position-grid label{position:relative;display:block;cursor:pointer}
.watermark-position-grid input{position:absolute;width:1px;height:1px;opacity:0}
.watermark-position-grid label>span{display:grid;height:36px;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:9px}
.watermark-position-grid input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);font-weight:700}
.image-preview-trigger{cursor:zoom-in}
.image-preview-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.image-preview-hint{position:absolute;left:10px;top:10px;padding:5px 9px;border-radius:99px;background:rgba(10,31,42,.74);color:#fff;font-size:9px;opacity:0;transition:.2s;pointer-events:none}
.image-preview-trigger:hover .image-preview-hint,.image-preview-trigger:focus-visible .image-preview-hint{opacity:1}
.image-size-badge{position:absolute;left:10px;bottom:10px;padding:4px 8px;border-radius:6px;background:rgba(10,31,42,.74);color:#fff;font-size:8px;letter-spacing:.04em}
.image-viewer{width:min(1480px,96vw);height:min(94vh,1000px);max-width:none;max-height:none;padding:0;border:0;border-radius:14px;background:#0b1a22;color:#eef4f5;overflow:hidden}
.image-viewer::backdrop{background:rgba(4,12,17,.82)}
.image-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.viewer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03)}
.viewer-title b{display:block;font-size:13px}
.viewer-title span{display:block;margin-top:3px;color:rgba(233,244,246,.68);font-size:10px}
.viewer-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.viewer-tools button,.viewer-tools a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.06);color:#eef4f5;font-size:11px;text-decoration:none;cursor:pointer}
.viewer-tools button:hover,.viewer-tools a:hover{background:rgba(255,255,255,.15)}
#viewer-zoom{min-width:52px;color:rgba(233,244,246,.82);font-size:11px;text-align:center}
.viewer-close{font-size:18px}
.viewer-stage{position:relative;display:grid;place-items:center;overflow:auto;background:repeating-conic-gradient(#122630 0% 25%,#0e1d25 0% 50%) 50%/28px 28px;cursor:zoom-in;touch-action:pan-x pan-y}
.viewer-stage.dragging{cursor:grabbing}
.viewer-stage img{display:block;box-shadow:0 22px 60px rgba(0,0,0,.5)}
.viewer-loading{position:absolute;padding:8px 14px;border-radius:99px;background:rgba(8,20,27,.85);color:#e9f4f6;font-size:11px}
.viewer-nav{display:flex;align-items:center;justify-content:center;gap:18px;padding:10px 16px;border-top:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03)}
.viewer-nav button{height:34px;padding:0 16px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.06);color:#eef4f5;font-size:11px;cursor:pointer}
.viewer-nav button:hover:not(:disabled){background:rgba(255,255,255,.15)}
.viewer-nav button:disabled{opacity:.35;cursor:default}
#viewer-count{color:rgba(233,244,246,.78);font-size:11px}
@media(max-width:900px){.watermark-options.four{grid-template-columns:repeat(2,1fr)}.watermark-field-pair{grid-template-columns:1fr}.image-preview-hint{display:none}.image-viewer{width:100vw;height:100vh;border-radius:0}.viewer-head{align-items:flex-start;flex-direction:column}.viewer-tools{width:100%;justify-content:flex-end}}
@media(max-width:900px){.image-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.image-product-upload{grid-template-columns:1fr}.image-product-upload .image-or{text-align:center}}

/* 视觉方向 01：午夜极光 —— 沉浸式深色创作台 */
:root[data-theme="midnight"]{
  color-scheme:dark;
  --ink:#071526;--ink-2:#153a60;--paper:#071526;--paper-2:#0b1d33;--card:#0d2038;
  --gold:#25c8f4;--text:#eaf4ff;--muted:#98adc5;--line:#203754;--danger:#ff7188;
  --accent:#a88bff;--accent-soft:#201e43;--sidebar-bg:#061326;--sidebar-ink:#eff8ff;
  --sidebar-muted:#91a8c4;--nav-active:#102e4e;--topbar-bg:rgba(7,19,35,.88);
  --surface-soft:#102641;--surface-strong:#173552;--success:#5be0b0;
  --shadow:0 22px 60px rgba(0,0,0,.28);--shadow-soft:0 10px 30px rgba(0,0,0,.19);
  --radius:18px;--radius-small:11px;--theme-glow:rgba(37,200,244,.15);
}
:root[data-theme="midnight"] body{
  isolation:isolate;
  background:
    radial-gradient(ellipse at 82% 9%,rgba(31,106,177,.17),transparent 36rem),
    radial-gradient(ellipse at 8% 72%,rgba(46,72,161,.12),transparent 34rem),
    linear-gradient(155deg,#071526 0%,#09192c 48%,#081629 100%);
  background-attachment:fixed;
}
:root[data-theme="midnight"] body:before{
  z-index:-1;opacity:.34;
  background-image:radial-gradient(rgba(148,202,255,.42) .7px,transparent .9px);
  background-size:42px 42px;
  mask-image:linear-gradient(125deg,rgba(0,0,0,.55),transparent 56%,rgba(0,0,0,.22));
}
:root[data-theme="midnight"] body:after{
  position:fixed;inset:0;z-index:-1;pointer-events:none;content:"";opacity:.46;
  background-image:
    radial-gradient(circle at 7% 13%,rgba(113,203,255,.9) 0 1px,transparent 1.8px),
    radial-gradient(circle at 16% 76%,rgba(157,130,255,.78) 0 1.2px,transparent 2px),
    radial-gradient(circle at 90% 28%,rgba(69,222,255,.8) 0 1px,transparent 1.8px),
    radial-gradient(circle at 77% 88%,rgba(164,132,255,.75) 0 1px,transparent 1.8px),
    radial-gradient(ellipse at 96% 0%,rgba(32,153,224,.14),transparent 32rem);
  background-size:230px 190px,310px 270px,270px 230px,360px 300px,100% 100%;
  animation:starfield-drift 36s linear infinite alternate;
}
:root[data-theme="midnight"] .app-sidebar{
  overflow:hidden;border-right:1px solid rgba(133,190,239,.12);
  background:radial-gradient(ellipse at 8% 100%,rgba(28,98,160,.22),transparent 21rem),linear-gradient(180deg,#07172b,#061326 78%);
  box-shadow:12px 0 42px rgba(0,0,0,.16);
}
:root[data-theme="midnight"] .app-sidebar:after{
  position:absolute;right:-95px;bottom:-105px;width:250px;height:250px;border:1px solid rgba(72,183,255,.11);border-radius:50%;
  box-shadow:0 0 0 22px rgba(72,183,255,.025),0 0 0 52px rgba(139,111,255,.025);content:"";pointer-events:none;
}
:root[data-theme="midnight"] .side-brand>span{
  border:1px solid rgba(107,214,255,.42);background:linear-gradient(145deg,#142f50,#0b2037);
  box-shadow:0 0 28px rgba(37,200,244,.17);color:#7de6ff;
}
:root[data-theme="midnight"] .side-nav a.active{
  background:linear-gradient(100deg,rgba(39,135,205,.23),rgba(17,56,90,.62));
  box-shadow:inset 0 0 0 1px rgba(91,192,255,.14),0 8px 24px rgba(0,0,0,.12);
}
:root[data-theme="midnight"] .side-nav a.active:before{background:var(--gold);box-shadow:0 0 14px var(--gold)}
:root[data-theme="midnight"] .topbar{
  border-color:rgba(130,173,217,.14);background:var(--topbar-bg);
  box-shadow:0 8px 30px rgba(0,0,0,.12);
}
:root[data-theme="midnight"] .topbar nav a.active{color:var(--text)}
:root[data-theme="midnight"] .topbar nav a.active:after{background:var(--gold);box-shadow:0 0 12px rgba(37,200,244,.7)}
:root[data-theme="midnight"] .header-action,
:root[data-theme="midnight"] .primary{
  background:linear-gradient(105deg,#20b8f1,#45e1dc);color:#062039;
  box-shadow:0 10px 30px rgba(37,200,244,.2);
}
:root[data-theme="midnight"] .header-action:hover,
:root[data-theme="midnight"] .primary:hover{box-shadow:0 14px 36px rgba(37,200,244,.3)}
:root[data-theme="midnight"] .theme-trigger,
:root[data-theme="midnight"] .secondary,
:root[data-theme="midnight"] .material-add,
:root[data-theme="midnight"] .task-card-actions button,
:root[data-theme="midnight"] .back-button{
  border-color:var(--line);background:linear-gradient(180deg,#10243b,#0c1d32);color:var(--text);
}
:root[data-theme="midnight"] .theme-trigger:hover,
:root[data-theme="midnight"] .secondary:hover,
:root[data-theme="midnight"] .material-add:hover{border-color:rgba(37,200,244,.6);background:#132c47}
:root[data-theme="midnight"] .theme-trigger i{border-color:#b09aff;background:#29c7f1;box-shadow:0 0 14px rgba(37,200,244,.4)}
:root[data-theme="midnight"] .dashboard-head h2,
:root[data-theme="midnight"] .page-intro h1,
:root[data-theme="midnight"] .section-heading h2,
:root[data-theme="midnight"] .admin-pricing h2,
:root[data-theme="midnight"] .billing-reconcile h2,
:root[data-theme="midnight"] .theme-dialog-head h2,
:root[data-theme="midnight"] .theme-option-copy b{color:var(--text)}
:root[data-theme="midnight"] .eyebrow.green{color:#79dfff}
:root[data-theme="midnight"] .page-intro,
:root[data-theme="midnight"] .section-heading{border-color:var(--line)}
:root[data-theme="midnight"] .hero{
  position:relative;grid-template-columns:minmax(365px,.84fr) minmax(0,1.16fr);min-height:520px;
  border:1px solid rgba(90,174,235,.19);border-radius:22px;
  background:linear-gradient(115deg,#08182b 2%,#0a1b31 50%,#0c2440 100%);
  box-shadow:0 24px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035);
}
:root[data-theme="midnight"] .hero-copy{padding:54px clamp(34px,5vw,76px);color:#f4f9ff}
:root[data-theme="midnight"] .hero-copy:after{
  right:-12%;bottom:-18%;width:260px;height:260px;border-color:rgba(61,191,255,.12);
  box-shadow:0 0 0 24px rgba(61,191,255,.025),0 0 0 58px rgba(153,123,255,.025);
}
:root[data-theme="midnight"] .hero .eyebrow{color:#64ddf8}
:root[data-theme="midnight"] .hero h1{color:#f5f9ff;text-shadow:0 0 36px rgba(111,172,247,.11)}
:root[data-theme="midnight"] .hero-lead{color:rgba(228,240,255,.72)}
:root[data-theme="midnight"] .hero .text-button{color:#d7e8fb}
:root[data-theme="midnight"] .hero-stats{gap:34px}
:root[data-theme="midnight"] .hero-stats dt{color:#f4f9ff}
:root[data-theme="midnight"] .hero-stats dd{color:#94aac2}
:root[data-theme="midnight"] .hero-visual{
  min-height:520px;background:#0b2036 url("./assets/midnight-bedroom.webp") center 54%/cover no-repeat;
}
:root[data-theme="midnight"] .hero-visual:before{
  inset:0;opacity:.8;
  background:
    linear-gradient(102deg,rgba(8,24,43,.34),transparent 28%,rgba(9,22,43,.03) 65%,rgba(5,16,31,.3)),
    linear-gradient(151deg,transparent 31%,rgba(54,213,255,.68) 31.2%,rgba(54,213,255,.1) 31.45%,transparent 31.8%),
    linear-gradient(164deg,transparent 58%,rgba(165,132,255,.6) 58.2%,rgba(165,132,255,.08) 58.45%,transparent 58.8%),
    radial-gradient(ellipse at 3% 92%,rgba(32,203,250,.35),transparent 42%),
    linear-gradient(180deg,rgba(7,20,37,.04),rgba(7,18,34,.08));
  background-size:130% 130%;background-position:0 0;mix-blend-mode:screen;
  animation:aurora-flow 18s ease-in-out infinite alternate;
}
:root[data-theme="midnight"] .hero-visual:after{
  position:absolute;inset:-10%;z-index:1;pointer-events:none;content:"";opacity:.64;
  background-image:
    radial-gradient(circle,rgba(224,250,255,.95) 0 1px,transparent 1.8px),
    radial-gradient(circle,rgba(70,219,255,.9) 0 1.4px,transparent 2.3px),
    radial-gradient(circle,rgba(180,153,255,.84) 0 1.1px,transparent 2px);
  background-size:118px 136px,197px 183px,263px 231px;
  background-position:0 0,56px 44px,116px 88px;mix-blend-mode:screen;
  animation:particle-drift 28s linear infinite;
}
:root[data-theme="midnight"] .hero-visual>.sun,
:root[data-theme="midnight"] .hero-visual>.window-frame,
:root[data-theme="midnight"] .hero-visual>.plant,
:root[data-theme="midnight"] .hero-visual>.bed{display:none}
:root[data-theme="midnight"] .visual-tag{
  z-index:2;padding:9px 12px;border:1px solid rgba(218,240,255,.2);border-radius:999px;
  background:rgba(8,25,45,.5);backdrop-filter:blur(12px);color:#d9f4ff;
}
:root[data-theme="midnight"] .material-note{
  z-index:2;right:24px;bottom:22px;padding:12px 15px;border:1px solid rgba(224,241,255,.18);border-radius:12px;
  background:rgba(8,24,42,.56);backdrop-filter:blur(14px);color:#c3d8ed;
}
:root[data-theme="midnight"] .material-note b{color:white}
:root[data-theme="midnight"] .metric-grid article,
:root[data-theme="midnight"] .panel,
:root[data-theme="midnight"] .task-card,
:root[data-theme="midnight"] .publish-row,
:root[data-theme="midnight"] .quota-overview article,
:root[data-theme="midnight"] .account-card,
:root[data-theme="midnight"] .publish-summary article{
  border-color:rgba(111,161,210,.17);background:linear-gradient(145deg,rgba(15,35,59,.97),rgba(11,28,48,.97));
  box-shadow:var(--shadow-soft);
}
:root[data-theme="midnight"] .metric-grid article:hover,
:root[data-theme="midnight"] .account-card:hover,
:root[data-theme="midnight"] .publish-row:hover,
:root[data-theme="midnight"] .task-card:hover{
  border-color:rgba(37,200,244,.44);box-shadow:0 18px 42px rgba(0,0,0,.24),0 0 25px rgba(37,200,244,.06);transform:translateY(-3px);
}
:root[data-theme="midnight"] .metric-grid strong,
:root[data-theme="midnight"] .summary strong,
:root[data-theme="midnight"] .quota-overview strong{color:#f1f7ff}
:root[data-theme="midnight"] .metric-icon.green{background:rgba(91,224,176,.12);color:#69e6b5}
:root[data-theme="midnight"] .metric-icon.gold{background:rgba(37,200,244,.12);color:#5cdcf9}
:root[data-theme="midnight"] .metric-icon.blue{background:rgba(168,139,255,.14);color:#b7a2ff}
:root[data-theme="midnight"] .metric-icon.rose{background:rgba(255,113,136,.13);color:#ff8ca0}
:root[data-theme="midnight"] .feature-grid{border-color:var(--line)}
:root[data-theme="midnight"] .feature-grid article{border-color:var(--line);background:rgba(12,31,53,.72)}
:root[data-theme="midnight"] .feature-icon{color:var(--gold)}
:root[data-theme="midnight"] .callout{background:linear-gradient(120deg,#0b2037,#153b61);border:1px solid rgba(104,183,245,.15)}
:root[data-theme="midnight"] .light-button{background:#eaf6ff;color:#0a2540}
:root[data-theme="midnight"] .creation-toolbar>button{border-color:var(--line);background:var(--card);color:var(--text)}
:root[data-theme="midnight"] .creation-toolbar>button.active{border-color:rgba(37,200,244,.44);background:linear-gradient(135deg,#102b49,#133b61)}
:root[data-theme="midnight"] .creation-toolbar small,
:root[data-theme="midnight"] .mode-guide,
:root[data-theme="midnight"] .toolbar-tip span{color:var(--muted)}
:root[data-theme="midnight"] .toolbar-tip,
:root[data-theme="midnight"] .billing-note{border-color:var(--gold);background:rgba(37,200,244,.08);color:var(--text)}
:root[data-theme="midnight"] .choice-card,
:root[data-theme="midnight"] .user-material-card,
:root[data-theme="midnight"] .selected-material-preview,
:root[data-theme="midnight"] .creation-checklist,
:root[data-theme="midnight"] .account-quota div,
:root[data-theme="midnight"] .billing-reconcile-stats article,
:root[data-theme="midnight"] .billing-connection,
:root[data-theme="midnight"] .publish-card{
  border-color:rgba(116,166,214,.17);background:#102640;color:var(--text);
}
:root[data-theme="midnight"] .choice-card.selected,
:root[data-theme="midnight"] .user-material-card.selected{
  border-color:var(--gold);box-shadow:0 0 0 3px rgba(37,200,244,.13),0 12px 30px rgba(0,0,0,.2);
}
:root[data-theme="midnight"] .choice-card .check,
:root[data-theme="midnight"] .material-check{background:var(--gold);color:#062039}
:root[data-theme="midnight"] .field input,
:root[data-theme="midnight"] .field textarea,
:root[data-theme="midnight"] .material-select-row select,
:root[data-theme="midnight"] .storyboard-field textarea,
:root[data-theme="midnight"] .dialog-field input,
:root[data-theme="midnight"] .dialog-field textarea,
:root[data-theme="midnight"] .dialog-field select,
:root[data-theme="midnight"] .admin-pricing input,
:root[data-theme="midnight"] .billing-sync-controls input,
:root[data-theme="midnight"] .publish-actions select,
:root[data-theme="midnight"] .login-card input,
:root[data-theme="midnight"] .task-search{
  border-color:var(--line);background:#091a2e;color:var(--text);
}
:root[data-theme="midnight"] input::placeholder,
:root[data-theme="midnight"] textarea::placeholder{color:#738ba6}
:root[data-theme="midnight"] .field input:focus,
:root[data-theme="midnight"] .field textarea:focus,
:root[data-theme="midnight"] .material-select-row select:focus,
:root[data-theme="midnight"] .storyboard-field textarea:focus,
:root[data-theme="midnight"] .dialog-field input:focus,
:root[data-theme="midnight"] .dialog-field textarea:focus,
:root[data-theme="midnight"] .login-card input:focus{
  border-color:var(--gold);box-shadow:0 0 0 3px rgba(37,200,244,.13);
}
:root[data-theme="midnight"] .segment input:checked+span,
:root[data-theme="midnight"] .task-filters button.active{border-color:#25618d;background:#16436a;color:#f4fbff}
:root[data-theme="midnight"] .task-filters button{color:var(--muted)}
:root[data-theme="midnight"] .task-thumb{color:rgba(193,222,248,.72)}
:root[data-theme="midnight"] .task-tags span{background:#17334f;color:#b5cce2}
:root[data-theme="midnight"] .progress-steps .active{color:var(--text)}
:root[data-theme="midnight"] .progress-steps .active b{border-color:var(--gold);background:var(--gold);color:#082039;box-shadow:0 0 18px rgba(37,200,244,.26)}
:root[data-theme="midnight"] .progress-steps li:not(:last-child):after{background:#27415f}
:root[data-theme="midnight"] .status.succeeded:before{background:var(--success);box-shadow:0 0 10px rgba(91,224,176,.4)}
:root[data-theme="midnight"] .status.failed:before{background:var(--danger)}
:root[data-theme="midnight"] .quota-overview article.remaining{border-color:rgba(37,200,244,.3);background:linear-gradient(135deg,#0c2b48,#143d63)}
:root[data-theme="midnight"] .quota-overview .remaining strong{color:#6ee3ff}
:root[data-theme="midnight"] .account-main>span{background:linear-gradient(145deg,#174a70,#253f70);color:#aeeeff}
:root[data-theme="midnight"] .billing-connection.succeeded,
:root[data-theme="midnight"] .billing-connection.ready,
:root[data-theme="midnight"] .publish-card{border-color:rgba(91,224,176,.3);background:rgba(33,117,96,.15)}
:root[data-theme="midnight"] .publish-card>i{background:var(--success);color:#082039}
:root[data-theme="midnight"] .material-dialog,
:root[data-theme="midnight"] .theme-dialog{border:1px solid rgba(135,187,229,.18);background:#0c1d32;color:var(--text);box-shadow:0 30px 100px rgba(0,0,0,.52)}
:root[data-theme="midnight"] .material-dialog::backdrop,
:root[data-theme="midnight"] .theme-dialog::backdrop{background:rgba(2,9,19,.72);backdrop-filter:blur(8px)}
:root[data-theme="midnight"] .theme-option{border-color:var(--line);background:#10233b;color:var(--text)}
:root[data-theme="midnight"] .theme-option.active{border-color:var(--gold);box-shadow:0 0 0 3px rgba(37,200,244,.12)}
:root[data-theme="midnight"] .preview-midnight{--preview-side:#061326;--preview-card:#10243d;--preview-accent:#27bfe9;--preview-pop:#a88bff;background:#0a192d}
:root[data-theme="midnight"] .preview-terracotta{--preview-side:#432927;--preview-card:#fff9f3;--preview-accent:#c9633d;--preview-pop:#d99a3d;background:#f2e8de}
:root[data-theme="midnight"] .preview-mint{--preview-side:#103b36;--preview-card:#fbfffd;--preview-accent:#7359d9;--preview-pop:#ff896b;background:#e5f2ee}
:root[data-theme="midnight"] .login-screen{
  background:radial-gradient(circle at 78% 18%,rgba(37,200,244,.2),transparent 30rem),radial-gradient(circle at 12% 92%,rgba(128,105,255,.16),transparent 28rem),#071526;
}
:root[data-theme="midnight"] .login-card{border:1px solid rgba(127,185,231,.18);background:rgba(12,29,50,.94);box-shadow:0 35px 110px rgba(0,0,0,.45)}
:root[data-theme="midnight"] .login-card h1{color:var(--text)}
:root[data-theme="midnight"] .login-mark{border-color:var(--gold);background:#102b48;color:var(--gold);box-shadow:0 0 24px rgba(37,200,244,.16)}
:root[data-theme="midnight"] .toast{border:1px solid rgba(125,190,240,.16);background:#0c213a;color:var(--text);box-shadow:var(--shadow)}
:root[data-theme="midnight"] .mobile-nav{border:1px solid rgba(130,180,224,.15);background:rgba(8,23,40,.92);box-shadow:0 -10px 36px rgba(0,0,0,.24)}
:root[data-theme="midnight"] .mobile-nav a.active{color:var(--gold)}
:root[data-theme="midnight"] .theme-preview{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
:root[data-theme="midnight"] .image-mode-grid input:checked+span,
:root[data-theme="midnight"] .style-preset-grid input:checked+span{border-color:var(--gold);box-shadow:0 0 0 2px rgba(37,200,244,.12)}
:root[data-theme="midnight"] .image-mode-grid input:checked+span i{background:var(--gold);color:#071526}
:root[data-theme="midnight"] .image-model-badge{background:rgba(37,200,244,.09)}
:root[data-theme="midnight"] .image-model-badge span{color:var(--text)}
:root[data-theme="midnight"] .library-toolbar,
:root[data-theme="midnight"] .task-toolbar{border-color:var(--line)}
:root[data-theme="midnight"] .empty-state h2{color:var(--text)}
:root[data-theme="midnight"] :focus-visible{outline:2px solid #56d7ff;outline-offset:3px}
:root[data-theme="midnight"] ::selection{background:rgba(37,200,244,.32);color:white}

@keyframes starfield-drift{from{background-position:0 0,56px 44px,0 0,116px 88px,0 0}to{background-position:34px -22px,-20px 72px,46px -35px,82px 130px,0 0}}
@keyframes aurora-flow{from{background-position:0 0,0 0,0 0,0 0,0 0}to{background-position:12px -8px,8px -5px,-10px 6px,18px -10px,0 0}}
@keyframes particle-drift{from{background-position:0 0,56px 44px,116px 88px}to{background-position:118px -136px,-141px 227px,379px -143px}}

.view:not([hidden]){animation:page-arrive .42s cubic-bezier(.2,.7,.2,1) both}
.metric-grid article,.task-card,.publish-row,.user-material-card{animation:card-arrive .52s cubic-bezier(.2,.7,.2,1) both}
.metric-grid article:nth-child(2){animation-delay:55ms}.metric-grid article:nth-child(3){animation-delay:100ms}.metric-grid article:nth-child(4){animation-delay:145ms}
@keyframes page-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes card-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:900px){
  :root[data-theme="midnight"] .hero{grid-template-columns:1fr;min-height:0}
  :root[data-theme="midnight"] .hero-copy{padding:38px 30px 28px}
  :root[data-theme="midnight"] .hero-visual{min-height:350px;grid-row:2;background-position:center 56%}
  :root[data-theme="midnight"] .hero-stats{margin-top:30px}
  .view{padding-right:20px;padding-left:20px}
}
@media(max-width:520px){
  :root[data-theme="midnight"] .hero-copy{padding:34px 23px 25px}
  :root[data-theme="midnight"] .hero h1{font-size:clamp(36px,10vw,50px)}
  :root[data-theme="midnight"] .hero-visual{min-height:285px}
  :root[data-theme="midnight"] .hero-stats{gap:22px}
  .view{padding-right:16px;padding-left:16px}
}
@media(prefers-reduced-motion:reduce){
  :root[data-theme="midnight"] body:after,
  :root[data-theme="midnight"] .hero-visual:before,
  :root[data-theme="midnight"] .hero-visual:after{animation:none!important}
  .view:not([hidden]),.metric-grid article,.task-card,.publish-row,.user-material-card{animation:none!important}
}
