:root{--bg-shell:#080c08;--panel-bg:#121612e6;--border-strong:#ffffff14;--text-main:#f3f7f1;--text-muted:#8d998f;--accent:#d8ff57;--accent-soft:#a7bd7b;--danger:#ff8383;color:var(--text-main);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Bahnschrift,Segoe UI Variable Text,Microsoft YaHei UI,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{background:var(--bg-shell)}body{background:var(--bg-shell);min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{transition:transform .18s,opacity .18s,background .18s,border-color .18s}button:hover{transform:translateY(-1px)}img{max-width:100%}#root{min-height:100vh}.boot-screen{min-height:100vh;color:var(--text-muted);letter-spacing:.06em;place-items:center;font-size:13px;display:grid}.app-shell{height:100vh;color:var(--text-main);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:radial-gradient(circle at top left, #d3ff501f, transparent 24%), radial-gradient(circle at bottom right, #4cc67d1f, transparent 26%), var(--bg-shell);padding:10px;display:flex;overflow:hidden}.app-shell__surface{border:1px solid var(--border-strong);background:#080c08eb;border-radius:28px;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden;box-shadow:inset 0 1px #ffffff08,0 24px 60px #00000047}.app-shell[data-theme=light]{--bg-shell:#eef3ed;--panel-bg:#ffffffe0;--border-strong:#1f302024;--text-main:#172017;--text-muted:#647164;--accent:#3f8f47;--accent-soft:#6f8b6a;--danger:#bd4949;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:radial-gradient(circle at top left, #4a995424, transparent 26%), radial-gradient(circle at bottom right, #3f879a1f, transparent 28%), var(--bg-shell)}.app-shell[data-theme=light] .app-shell__surface{background:#fafcf8f5;box-shadow:inset 0 1px #ffffffb8,0 24px 58px #2d3c2e29}.app-shell[data-theme=light] .app-header{background:#f9fbf7f2}.app-shell[data-theme=light] .left-pane{background:#f4f8f2f5}.app-shell[data-theme=light] .right-pane{background:#fcfdfafa}.app-shell[data-theme=light] .panel,.app-shell[data-theme=light] .dialog,.app-shell[data-theme=light] .gallery-card{background:#ffffffe0}.app-shell[data-theme=light] .dialog{box-shadow:0 28px 80px #2d3c2e38}.app-shell[data-theme=light] .mini-button,.app-shell[data-theme=light] .icon-button,.app-shell[data-theme=light] .website-button,.app-shell[data-theme=light] .upload-button,.app-shell[data-theme=light] .chip,.app-shell[data-theme=light] .gallery-card__actions button,.app-shell[data-theme=light] .window-control,.app-shell[data-theme=light] .eye-toggle,.app-shell[data-theme=light] .expand-button{background:#ffffffc2}.app-shell[data-theme=light] .primary-button{background:linear-gradient(#5bb55833,#3e8f4929);border-color:#3f8f477a;box-shadow:0 12px 26px #3e8f4924}.app-shell[data-theme=light] .chip:hover,.app-shell[data-theme=light] .chip--active{background:#3f8f4717;border-color:#3f8f478c}.app-shell[data-theme=light] .prompt-editor__textarea,.app-shell[data-theme=light] .expanded-textarea,.app-shell[data-theme=light] .form-field input,.app-shell[data-theme=light] .custom-count-box input,.app-shell[data-theme=light] .path-row input{background:#ffffffc7;border-color:#1f302029}.app-shell[data-theme=light] .config-banner__value,.app-shell[data-theme=light] .fixed-info,.app-shell[data-theme=light] .preview-prompt-box,.app-shell[data-theme=light] .gallery-card__meta span,.app-shell[data-theme=light] .preview-tags span,.app-shell[data-theme=light] .preview-meta span,.app-shell[data-theme=light] .preview-reference-thumb{background:#f7faf5e6;border-color:#1f30201f}.app-shell[data-theme=light] .gallery-card__image,.app-shell[data-theme=light] .preview-layout__image{background:#edf3e9}.app-shell[data-theme=light] .gallery-card__pending{background:radial-gradient(circle at top,#3f8f471f,#0000 24%),#ffffffb3;border-color:#3f8f4742}.app-shell[data-theme=light] .preview-layout__sidebar{background:#ffffffd1}.app-shell[data-theme=light] .preview-copy-button,.app-shell[data-theme=light] .preview-close-button{background:#ffffffd1;border-color:#1f302024}.app-shell[data-theme=light] .preview-copy-button:hover,.app-shell[data-theme=light] .preview-close-button:hover{background:#3f8f4721}.app-shell[data-runtime=web] .window-controls{display:none}.app-header{border-bottom:1px solid var(--border-strong);-webkit-app-region:drag;background:#0b0f0beb;justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:10px 14px;display:flex}.brand-lockup{-webkit-app-region:drag;align-items:center;gap:16px;min-width:0;display:flex}.brand-logo{border-radius:17px;width:52px;height:52px;overflow:hidden;box-shadow:0 16px 30px #aeff5c38}.brand-logo img{object-fit:cover;width:100%;height:100%;display:block}.brand-copy{min-width:0}.brand-copy h1,.gallery-header h2,.panel h2,.parameter-group h3,.dialog h2{margin:0}.brand-copy__eyebrow,.section-label,.counter-text,.field-note,.status-line,.api-summary__row span,.preview-meta,.helper-inline{color:var(--text-muted)}.brand-copy__eyebrow,.section-label{text-transform:uppercase;letter-spacing:.18em;font-size:10px}.brand-copy h1{letter-spacing:-.02em;margin-top:6px;font-size:25px}.studio-frame{flex:1;grid-template-columns:390px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.left-pane,.right-pane{min-width:0;min-height:0;padding:12px;overflow:auto}.left-pane{border-right:1px solid var(--border-strong);background:#0a0d0af0;flex-direction:column;gap:14px;display:flex}.right-pane{background:#070a07fa;flex-direction:column;gap:16px;display:flex}.panel{border:1px solid var(--border-strong);background:#121612e0;border-radius:20px;box-shadow:inset 0 1px #ffffff08}.panel--compact{padding:12px 14px}.panel__topline,.parameter-group__header,.dialog__header,.dialog__footer,.gallery-header,.api-summary__row,.prompt-toolbar,.gallery-card__actions,.preview-actions,.path-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.api-key-row{align-items:center;gap:8px;display:flex}.api-key-row input{flex:1;min-width:0}.eye-toggle{border:1px solid var(--border-strong);width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:#ffffff08;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s;display:flex}.eye-toggle:hover{color:var(--text-main);border-color:var(--accent)}.header-actions,.window-controls{-webkit-app-region:no-drag;align-items:center;gap:10px;display:flex}.mini-button,.icon-button,.website-button,.upload-button,.chip,.primary-button,.gallery-card__actions button{border:1px solid var(--border-strong);color:var(--text-main);background:#ffffff08;border-radius:12px}.mini-button,.icon-button,.website-button,.upload-button,.primary-button{min-height:36px;padding:0 13px;font-size:13px}.icon-button,.primary-button{border-radius:14px}.icon-button{min-width:38px;padding:0;font-size:16px}.website-button{white-space:nowrap;font-weight:700}.icon-button--wechat{place-items:center;display:grid}.icon-button--wechat img{object-fit:contain;width:22px;height:22px;display:block}.theme-toggle-button{color:var(--accent);place-items:center;display:grid}.theme-toggle-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px;display:block}.window-control{border:1px solid var(--border-strong);width:38px;height:36px;color:var(--text-main);background:#ffffff08;border-radius:12px;padding:0;position:relative}.window-control__line,.window-control__square,.window-control__cross:before,.window-control__cross:after{margin:auto;position:absolute;inset:0}.window-control__line{background:currentColor;width:12px;height:1.5px}.window-control__square{border:1.5px solid;width:11px;height:11px}.window-control__cross{width:12px;height:12px;margin:0 auto;display:block;position:relative}.window-control__cross:before,.window-control__cross:after{content:"";background:currentColor;width:12px;height:1.5px}.window-control__cross:before{transform:rotate(45deg)}.window-control__cross:after{transform:rotate(-45deg)}.window-control--close:hover{background:#ff5a5a26;border-color:#ff5a5a8c}.primary-button{background:linear-gradient(#dfff6333,#68c55d33);border-color:#d6ff588c;font-weight:700;box-shadow:0 12px 28px #72d6552e}.primary-button:disabled{opacity:.5;cursor:wait}.mini-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.config-banner__value,.config-banner__value,.status-line--error,.gallery-card__prompt,.preview-prompt{color:var(--text-main)}.config-banner{gap:8px;display:grid}.config-banner__value{border:1px solid var(--border-strong);background:#ffffff08;border-radius:15px;justify-content:center;align-items:center;min-height:44px;font-size:18px;font-weight:700;display:flex}.prompt-panel{padding:14px}.prompt-editor{margin-top:14px;position:relative}.prompt-editor__textarea,.expanded-textarea,.form-field input,.custom-count-box input,.path-row input{width:100%;color:var(--text-main);font:inherit;background:#05070575;border:1px solid #ffffff17;border-radius:18px}.prompt-editor__textarea{resize:vertical;min-height:240px;padding:14px 14px 44px;font-size:13px;line-height:1.6}.expand-button{border:1px solid var(--border-strong);width:28px;height:28px;color:var(--text-main);background:#ffffff0a;border-radius:10px;position:absolute;bottom:14px;right:14px}.prompt-toolbar{margin-top:12px}.helper-inline{font-size:11px}.reference-strip{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.reference-chip{border:1px solid var(--border-strong);border-radius:14px;width:56px;height:56px;position:relative;overflow:hidden}.reference-chip img{object-fit:cover;width:100%;height:100%;display:block}.reference-chip button{color:#fff;background:#00000094;border:0;border-radius:999px;width:20px;height:20px;position:absolute;top:4px;right:4px}.parameter-panel{padding:14px}.parameter-group+.parameter-group{margin-top:14px}.parameter-group__header h3{font-size:13px}.ratio-grid,.option-row,.gallery-card__tags,.preview-tags{gap:10px;display:grid}.ratio-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:8px}.option-row{margin-top:8px}.option-row--three{grid-template-columns:repeat(3,minmax(0,1fr))}.option-row--four,.option-row--count{grid-template-columns:repeat(4,minmax(0,1fr))}.chip{cursor:pointer;min-height:34px;padding:0 9px;font-size:13px;transition:border-color .16s,background .16s,transform .16s,opacity .16s}.chip:hover,.chip--active{background:#d5ff5814;border-color:#d6ff588c;transform:translateY(-1px)}.chip:disabled{opacity:.28;cursor:not-allowed;transform:none}.count-layout{gap:12px;margin-top:12px;display:grid}.custom-count-box{align-items:center;gap:10px;display:flex}.custom-count-box input{width:78px;min-height:34px;padding:0 12px}.field-note{margin:10px 0 0;font-size:11px}.action-panel{justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding:12px 14px;display:flex}.status-line{margin:0}.status-line+.status-line{margin-top:6px}.status-line--error{color:var(--danger)}.gallery-header{padding-bottom:4px}.gallery-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(210px,260px));place-content:start;gap:12px;min-height:0;padding-right:4px;display:grid;overflow:auto}.gallery-grid--empty{grid-template-columns:1fr;place-content:stretch}.gallery-card{isolation:isolate;border:1px solid var(--border-strong);background:#121612e6;border-radius:18px;min-height:188px;padding:8px;position:relative;overflow:hidden}.gallery-card--pending{place-items:center;display:grid}.gallery-empty{height:100%;min-height:0;color:var(--text-muted);letter-spacing:.04em;grid-column:1/-1;place-items:center;font-size:13px;display:grid}.gallery-card__pending{aspect-ratio:1;width:100%;height:100%;min-height:170px;color:var(--text-muted);background:radial-gradient(circle at top,#d6ff581a,#0000 24%),#ffffff05;border:1px dashed #d6ff583d;border-radius:14px;place-items:center;gap:10px;display:grid}.gallery-card__pending p,.gallery-card__pending span{margin:0}.gallery-card__spinner{border:2px solid #ffffff24;border-top-color:#d6ff58e6;border-radius:999px;width:26px;height:26px;animation:.9s linear infinite spin}.gallery-card__image{aspect-ratio:1;cursor:pointer;isolation:isolate;background:#0d120d;border:0;border-radius:14px;width:100%;min-height:120px;padding:0;display:block;position:relative;overflow:hidden}.gallery-card__image:hover,.gallery-card__image:focus-visible{transform:none}.gallery-card__image img{z-index:0;object-fit:cover;pointer-events:none;width:100%;height:100%;transition:transform .18s,filter .18s;display:block;position:relative}.gallery-card__image:hover img,.gallery-card__image:focus-visible img,.gallery-card__image--revealed img{filter:brightness(.42);transform:scale(1.02)}.gallery-card__hover{z-index:3;opacity:0;pointer-events:none;background:linear-gradient(#0000000a,#000000bd);flex-direction:column;justify-content:flex-end;gap:10px;padding:12px;transition:opacity .18s;display:flex;position:absolute;inset:0}.gallery-card__image:hover .gallery-card__hover,.gallery-card__image:focus-visible .gallery-card__hover,.gallery-card__hover--visible{opacity:1}.gallery-card__hover-text,.preview-prompt{margin:0;line-height:1.65}.gallery-card__hover-text{-webkit-line-clamp:3;color:#f7faf7;text-align:left;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.gallery-card__hover-actions{gap:6px;display:flex}.gallery-card__hover-actions span{color:#f5f8f3;background:#0c100cc7;border:1px solid #ffffff24;border-radius:10px;place-items:center;min-width:28px;height:28px;padding:0 8px;font-size:12px;display:grid}.gallery-card__toolbar{z-index:4;gap:8px;display:flex;position:absolute;top:14px;right:14px}.gallery-card__icon{color:#f6f8f5;background:#0a0e0ad1;border:1px solid #ffffff24;border-radius:10px;place-items:center;width:28px;height:28px;padding:0;display:grid}.gallery-card__icon img{object-fit:contain;width:14px;height:14px;display:block}.gallery-card__meta,.preview-tags{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.gallery-card__meta span,.preview-tags span,.preview-meta span{min-height:28px;color:var(--text-muted);background:#ffffff08;border:1px solid #ffffff0f;border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;display:inline-flex}.gallery-card__actions{flex-wrap:wrap;padding:0 2px 2px}.gallery-card__actions button{min-height:30px;padding:0 10px;font-size:12px}.overlay{z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0000008f;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dialog{z-index:1001;border:1px solid var(--border-strong);background:#121613;border-radius:28px;width:min(720px,100%);padding:18px;position:relative;box-shadow:0 28px 80px #0000006b}.dialog--wide{width:min(900px,100%)}.dialog--wechat{width:min(440px,100%)}.dialog--preview{width:min(1380px,100%);max-height:calc(100vh - 32px);padding:0;overflow:hidden}.wechat-qr-box{border:1px solid var(--border-strong);background:#fff;border-radius:18px;place-items:center;margin-top:18px;padding:14px;display:grid}.wechat-qr-box img{aspect-ratio:1;object-fit:contain;width:min(100%,360px);display:block}.form-field{gap:10px;margin-top:18px;display:grid}.fixed-info{border:1px solid var(--border-strong);background:#ffffff08;border-radius:18px;gap:10px;margin-top:18px;padding:14px;display:grid}.fixed-info__row{gap:6px;display:grid}.fixed-info__row span{color:var(--text-muted);font-size:12px}.fixed-info__row strong{color:var(--text-main);word-break:break-all;font-size:13px;font-weight:600}.form-field input,.path-row input{min-height:40px;padding:0 12px}.dialog__footer{margin-top:22px}.expanded-textarea{resize:vertical;min-height:540px;margin-top:18px;padding:14px;line-height:1.68}.preview-layout{grid-template-columns:minmax(0,1fr) 440px;height:min(940px,100vh - 48px);min-height:320px;display:grid}.preview-layout__image{cursor:grab;background:#091009;justify-content:center;align-items:center;padding:14px;display:flex;position:relative;overflow:hidden}.preview-layout__image img{object-fit:contain;transform-origin:50%;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:16px;width:100%;max-width:100%;height:100%;max-height:100%;transition:transform .12s;display:block}.preview-layout__image--dragging{cursor:grabbing}.preview-layout__sidebar{border-left:1px solid var(--border-strong);flex-direction:column;gap:14px;padding:18px;display:flex;overflow:hidden}.preview-meta{flex-wrap:wrap;gap:8px;display:flex}.preview-actions{margin-top:auto}.preview-prompt{font-size:13px;line-height:1.55}.preview-prompt-box{border:1px solid var(--border-strong);background:#ffffff08;border-radius:12px;max-height:220px;padding:12px 14px;overflow-y:auto}.preview-prompt-box .preview-prompt{white-space:pre-wrap;word-break:break-word;margin:0}.preview-floating-actions{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:absolute;top:14px;left:14px;right:14px}.preview-copy-button,.preview-close-button{z-index:1;min-height:34px;color:var(--text-main);cursor:pointer;pointer-events:auto;-webkit-app-region:no-drag;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080c08b8;border:1px solid #ffffff1f;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;transition:background .15s,border-color .15s,color .15s;display:inline-flex;position:relative}.preview-close-button{margin-left:auto}.preview-copy-button{min-width:88px}.preview-copy-button:hover,.preview-close-button:hover{border-color:var(--accent,#d3ff5099);background:#4cc67d2e}.preview-reference-block{gap:10px;display:grid}.reference-strip--preview{gap:12px}.preview-reference-thumb{border:1px solid var(--border-strong);background:#ffffff08;border-radius:16px;width:70px;height:70px;overflow:hidden}.preview-reference-thumb img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=1280px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.gallery-card__meta,.preview-tags{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1040px){.studio-frame{grid-template-columns:1fr;height:calc(100vh - 84px)}.left-pane{border-right:0;border-bottom:1px solid var(--border-strong)}.preview-layout{grid-template-columns:1fr;height:min(980px,100vh - 48px)}.preview-layout__sidebar{border-left:0;border-top:1px solid var(--border-strong)}}@media (width<=720px){.app-shell{padding:10px}.app-header,.left-pane,.right-pane{padding:12px}.app-header{flex-direction:column;align-items:stretch}.gallery-grid,.ratio-grid,.option-row--three,.option-row--four,.gallery-card__meta,.preview-tags{grid-template-columns:1fr}.action-panel,.prompt-toolbar,.gallery-header{flex-direction:column;align-items:stretch}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0;border:none}::-webkit-scrollbar-thumb{background:#ffffff14;border:none;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}::-webkit-scrollbar-corner{background:0 0}
