:root{color-scheme:light;--bg:#f7f8fc;--surface:#fff;--soft:#f0f2f9;--border:#e0e4ef;--text:#253047;--muted:#647087;--accent:#5964c9;--accent-soft:#eef0fc;--yellow:#f5edb3;--error:#b23942;--font:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--header-height:111px}
*{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-height) + 16px)}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 var(--font)}[hidden]{display:none!important}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:21px}h2{font-size:16px;font-weight:650}h3{font-size:18px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}input,select,textarea{outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #5964c916}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;left:12px;top:-60px;padding:12px 16px;background:var(--accent);color:white;z-index:200}.skip-link:focus{top:12px}
.app-header{position:sticky;top:0;background:#fffffffa;border-bottom:1px solid var(--border);z-index:20}.topbar{height:56px;max-width:1320px;margin:auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{display:flex;align-items:center;gap:9px;font-size:23px;font-weight:750;text-decoration:none;letter-spacing:1px}.brand svg{width:24px;height:24px;color:var(--accent)}.topbar-right{display:flex;align-items:center;gap:12px}.connection-status{color:var(--muted);font-size:12px}.connection-status.configured{color:var(--accent)}.icon-button{width:44px;height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);display:inline-grid;place-items:center;padding:0;flex-shrink:0}.icon-button:hover{background:var(--soft)}.topbar .icon-button{border:0}.top-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-width:720px;padding:0 24px 10px;margin:auto}.top-nav button{min-height:44px;border:0;border-radius:9px;background:var(--soft);color:var(--text);font-weight:550}.top-nav button.active{background:var(--accent);color:white}.app-main{max-width:1320px;margin:auto;padding:20px 24px 28px;min-width:0}.app-main:focus{outline:none}.studio-grid{display:grid;grid-template-columns:minmax(360px,460px) minmax(0,1fr);gap:24px;align-items:start}.editor-column{display:grid;gap:10px;min-width:0;padding-bottom:82px}.preview-column{position:sticky;top:calc(var(--header-height) + 20px);min-width:0}.panel{border:1px solid var(--border);border-radius:12px;background:var(--surface);min-width:0;overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.subtle-label{font-size:12px;color:var(--muted)}.model-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8px}.inline-field{display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:9px;padding:0 9px;min-width:0;background:var(--surface)}.inline-field label{white-space:nowrap;font-size:13px;font-weight:550}.inline-field select{border:0;min-height:44px;min-width:0;width:100%;background:transparent;padding:4px 18px 4px 2px;font-size:14px}.inline-field:focus-within{border-color:var(--accent)}.inline-field select:focus{box-shadow:none}.prompt-panel{padding:10px 12px}.prompt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}.prompt-tabs{display:flex;gap:4px;min-width:0}.prompt-tabs button{border:0;padding:8px 10px;min-height:44px;background:transparent;border-radius:8px;color:var(--muted);font-size:14px;font-weight:550}.prompt-tabs button[aria-selected=true]{background:var(--accent-soft);color:var(--accent)}.prompt-toolbar .icon-button{border:0;background:transparent}.prompt-input,.idea-input{display:block;width:100%;resize:vertical;min-height:114px;border:1px solid transparent;border-radius:8px;padding:8px 2px;background:white;line-height:1.65;overflow-wrap:anywhere;font-size:16px}.prompt-input::placeholder,.idea-input::placeholder{color:#7d879b}.prompt-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.prompt-options .inline-field{gap:2px;padding:0 7px}.prompt-options .inline-field label{font-size:12px}.prompt-options .inline-field select{font-size:13px;padding-right:12px}.prompt-actions{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-top:7px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:7px 4px;background:transparent;border:0;color:var(--muted);font-size:13px;text-decoration:none}.text-button svg{width:17px;height:17px}.text-button:hover{color:var(--accent)}.prompt-status{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted);padding-top:3px}.prompt-status>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prompt-status>span:last-child{white-space:nowrap}.effective-details{border-top:1px solid var(--border);margin-top:8px}.effective-details summary,.compact-details summary,.advanced-settings summary,.idea-details summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;min-height:44px;color:var(--muted);font-size:13px}.effective-details summary svg,.compact-details summary svg,.advanced-settings summary svg,.idea-details summary svg{width:16px;height:16px;margin-left:auto}summary::-webkit-details-marker{display:none}details[open]>summary>svg:last-child{transform:rotate(180deg)}.effective-block{padding-bottom:10px}.prompt-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}.effective-block pre,.detail-prompt{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.7 var(--mono);background:var(--soft);padding:12px;border-radius:8px;max-height:220px;overflow:auto;margin:0 0 8px}.fold-panel>summary{display:flex;align-items:center;gap:10px;padding:8px 12px;min-height:60px;list-style:none;cursor:pointer}.fold-panel>summary>svg{color:var(--accent)}.fold-panel>summary>span{flex:1;font-size:15px;font-weight:600}.fold-panel>summary small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:2px}.fold-chevron{width:18px!important;margin:0 8px}.fold-content{border-top:1px solid var(--border);padding:12px}.image-settings,.sampling-settings{padding:12px}.resolution-row{display:grid;grid-template-columns:84px minmax(0,1fr);gap:8px}.size-field{padding:0;border:0;margin:0;min-width:0}.ratio-options{display:flex;gap:5px}.ratio-button{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;padding:5px;min-height:44px;background:var(--soft);color:var(--muted);border:1px solid var(--border);border-radius:8px;font-size:13px}.ratio-button.selected{background:var(--accent-soft);color:var(--accent);border-color:#9aa2e1}.ratio-icon{display:inline-block;border:1.5px solid currentColor;border-radius:2px;flex-shrink:0}.landscape{width:17px;height:12px}.portrait{width:12px;height:17px}.square{width:15px;height:15px}.parameter-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.spaced{margin-top:12px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{color:var(--text);font-size:14px}.field input,.field select,.library-filters select{min-height:44px;width:100%;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:16px}.field-hint{font-size:12px;color:var(--muted);line-height:1.7}.count-field{padding:0;margin:4px 0 0;border:0;display:flex;align-items:center;gap:12px;min-width:0}.count-field legend{float:left;font-size:13px;line-height:44px}.count-options{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;flex:1;min-width:0}.count-options label{position:relative;cursor:pointer}.count-options input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.count-options span{min-height:44px;display:grid;place-items:center;background:var(--soft);border:1px solid var(--border);border-radius:8px}.count-options input:checked+span{background:var(--accent);color:white;border-color:var(--accent)}.count-options input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.slider-field{margin-top:12px}.slider-field>label{display:block;font-size:14px;font-weight:550;margin-bottom:4px}.slider-field>div{display:flex;align-items:center;gap:12px}.slider-field input[type=number]{min-height:44px;width:64px;min-width:64px;border:1px solid var(--border);border-radius:8px;background:var(--surface);text-align:center;padding:6px;font-size:16px}.slider-field input[type=range]{flex:1;min-width:0;min-height:44px;width:100%;accent-color:var(--accent);cursor:pointer}.sampling-settings .panel-heading{margin-bottom:0}.sampling-settings .panel-heading .icon-button{border:0;width:32px;height:44px}.seed-input{display:flex;gap:4px}.seed-input input{min-width:0}.seed-input .icon-button{width:36px;border:0}.seed-input svg{width:17px}.field:has(#sampler){min-width:0}#sampler{font-size:14px;padding-left:8px}#seed{appearance:textfield}#seed::-webkit-inner-spin-button,#seed::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.advanced-settings{margin-top:10px;border-top:1px solid var(--border)}.advanced-settings .field-hint{margin:12px 0 4px}.check-row{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;color:var(--muted)}.check-row input{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0}.mini-badge{display:inline-block;background:var(--accent-soft);color:var(--accent);padding:3px 6px;border-radius:5px;font-size:11px}.generation-bar{position:fixed;bottom:0;left:0;right:0;border-top:1px solid var(--border);background:#fffffffc;padding:12px 24px max(12px,env(safe-area-inset-bottom));z-index:15}.generate-row{max-width:1272px;margin:auto;display:flex;align-items:center;gap:20px;justify-content:space-between}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:1px solid transparent;border-radius:9px;padding:9px 14px;font-size:14px;font-weight:550;text-decoration:none;white-space:nowrap}.button-primary{background:var(--accent);color:white}.button-primary:hover{background:#4e58b9}.button-secondary{background:var(--soft);border-color:var(--border);color:var(--text)}.button-soft{background:var(--accent-soft);color:var(--accent);border-color:#dce0f8}.button-generate{background:var(--yellow);color:#273044;min-height:48px;font-size:17px;padding:10px 36px}.button-generate:hover{background:#f2e99e}.button svg{width:18px;height:18px}.inline-feedback{background:#fff0f0;border:1px solid #edd1d5;color:var(--error);padding:10px 12px;border-radius:9px;font-size:13px;overflow-wrap:anywhere;margin-top:10px}.inline-feedback.progress{color:var(--accent);border-color:#d5daf5;background:var(--accent-soft)}.generation-bar .inline-feedback{max-width:1272px;margin:0 auto 8px;max-height:90px;overflow:auto}.result-panel{padding:16px}.result-panel .panel-heading{flex-wrap:wrap}.canvas-empty,.gallery-empty{text-align:center;padding:56px 20px;color:var(--muted)}.canvas-empty{min-height:430px;background:var(--bg);border:1px dashed var(--border);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty-frame{display:grid;place-items:center;margin:0 auto 18px;width:56px;height:56px;border:1px solid var(--border);border-radius:14px;background:white;color:var(--accent)}.empty-frame svg{width:28px;height:28px}.canvas-empty h3,.gallery-empty h2{color:var(--text)}.canvas-empty p,.gallery-empty p{margin:8px 0 16px;font-size:14px}.canvas-image img{display:block;max-width:100%;width:auto;height:auto;max-height:calc(100dvh - 275px);object-fit:contain;margin:auto;border-radius:8px;background:var(--bg)}.result-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px}.batch-results{display:flex;gap:8px;overflow:auto;padding-bottom:12px}.batch-thumb{padding:0;background:var(--soft);border:2px solid transparent;border-radius:8px;width:68px;height:68px;flex:0 0 68px;overflow:hidden}.batch-thumb.selected{border-color:var(--accent)}.batch-thumb img{width:100%;height:100%;object-fit:cover}.character-card,.reference-card{padding:12px;background:var(--bg);border:1px solid var(--border);border-radius:10px;margin-top:12px;min-width:0}.character-card .field+.field{margin-top:10px}.character-card textarea{border:1px solid var(--border);padding:10px;min-height:80px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.character-coords{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.character-coords p{grid-column:1/-1}.upload-card{border:1px dashed var(--border);background:var(--bg);padding:12px;border-radius:10px}.upload-title{display:flex;align-items:center;gap:10px}.upload-title>div{min-width:0;flex:1}.upload-title strong{display:block;font-size:14px}.upload-title span{display:block;font-size:12px;color:var(--muted)}.upload-button{position:relative;overflow:hidden;cursor:pointer}.upload-button input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.upload-button:focus-within{outline:2px solid var(--accent);outline-offset:3px}#init-preview{display:flex;align-items:center;gap:10px;margin-top:12px}.reference-thumb{width:60px;height:60px;object-fit:cover;border:1px solid var(--border);border-radius:8px;flex-shrink:0}.reference-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted);min-width:0;flex:1}.reference-tools .parameter-top{align-items:end}.reference-tools>.field-hint,.reference-card .field-hint{margin-top:10px}
#assistant-page{max-width:840px;margin:auto}.assistant-panel{display:flex;flex-direction:column;min-height:0;height:calc(100dvh - var(--header-height) - 48px);background:white;border:1px solid var(--border);border-radius:14px;overflow:hidden}.assistant-heading{display:flex;align-items:center;gap:12px;padding:16px 18px 10px}.assistant-brand{flex:1;min-width:0}.assistant-brand h1{font-size:21px}.assistant-brand p{font-size:12px;color:var(--muted);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-chip{font-size:12px;color:var(--accent);background:var(--accent-soft);border-radius:8px;margin:0 18px 10px;padding:8px 10px;align-self:flex-start;max-width:calc(100% - 36px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-messages{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:10px 18px 20px}.chat-welcome{max-width:420px;margin:20px auto;text-align:center;padding:10px 0}.welcome-icon{display:grid;place-items:center;width:54px;height:54px;background:var(--accent-soft);color:var(--accent);border-radius:16px;margin:0 auto 16px}.welcome-icon svg{width:27px;height:27px}.chat-welcome h2{font-size:22px}.chat-welcome p{margin:10px 0 18px;line-height:1.8;color:var(--muted);font-size:14px}.preset-row{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.preset-chip,.quick-edits button,.filter-chip{border:1px solid var(--border);background:var(--soft);color:var(--muted);border-radius:8px;padding:8px 12px;min-height:44px;font-size:13px}.preset-chip:hover,.quick-edits button:hover{border-color:#abb2e5;color:var(--accent)}.chat-bottom{padding:10px 16px 14px;border-top:1px solid var(--border);background:white;flex-shrink:0}.idea-details{border-bottom:1px solid var(--border);margin-bottom:8px}.idea-details summary{min-height:40px;font-size:12px}.idea-input{min-height:74px;border:1px solid var(--border);padding:10px}.quick-edits{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.quick-edits button{padding:7px 10px;min-height:40px;font-size:12px}.chat-composer{display:flex;align-items:flex-end;gap:8px;padding:10px;border:1px solid var(--border);border-radius:12px;background:white}.chat-composer:focus-within{border-color:var(--accent)}.chat-composer textarea{flex:1;min-width:0;resize:none;border:0;box-shadow:none;padding:3px;font-size:16px;line-height:1.55;min-height:54px;max-height:160px}.send-button{width:44px;height:44px;display:grid;place-items:center;background:var(--accent);color:white;border:0;border-radius:50%;flex-shrink:0}.chat-message{margin:10px 0 18px}.message-label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:11px;margin-bottom:5px}.message-label svg{width:15px;height:15px}.message-content{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.8}.chat-message.user{max-width:88%;margin-left:auto}.chat-message.user .message-label{justify-content:flex-end}.chat-message.user .message-content{background:var(--accent-soft);padding:12px 14px;border-radius:14px 14px 4px 14px}.chat-message.assistant .message-content{padding:10px 12px;border:1px solid var(--border);border-radius:12px}.suggestion-card{border:1px solid #dce1f7;border-radius:12px;margin-top:12px;padding:12px;background:white}.suggestion-label{font-size:14px;font-weight:600;margin-bottom:10px}.suggestion-prompt{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:15px;background:var(--accent-soft);padding:12px;border-radius:9px;max-height:300px;overflow:auto}.suggestion-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.suggestion-actions .button{flex:1;font-size:13px;padding:8px 10px}.suggestion-actions .text-button{width:100%;min-height:36px}.thinking{padding:14px;color:var(--accent);font-size:14px}.thinking:after{content:'…'}
.gallery-toolbar{margin-bottom:14px}.search-field{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;padding:0 12px;background:white;min-width:0}.search-field svg{color:var(--muted)}.search-field input{min-height:46px;width:100%;min-width:0;border:0;padding:8px 0;background:transparent;font-size:16px;box-shadow:none}.search-field:focus-within{border-color:var(--accent)}.filter-row{display:flex;gap:8px;margin:12px 0}.filter-chip.active{background:var(--accent);color:white;border-color:var(--accent)}.gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.gallery-heading h1{font-size:17px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.gallery-card{background:white;border:1px solid var(--border);border-radius:12px;overflow:hidden;min-width:0}.gallery-image-button{display:block;width:100%;padding:0;border:0;background:var(--soft);cursor:zoom-in}.gallery-image-button img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.gallery-card-body{padding:8px 10px}.gallery-card-title{font-size:12px;font-weight:500;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;line-height:1.8}.gallery-card-meta{color:var(--muted);font-size:11px;line-height:1.8;display:flex;justify-content:space-between;gap:6px;flex-wrap:wrap}.gallery-card-actions{display:flex;gap:6px;justify-content:space-between;align-items:center}.gallery-card-actions .text-button{font-size:12px;justify-content:flex-start;padding:6px 0}.gallery-card-actions .icon-button{border:0;width:40px;height:44px;background:transparent}
dialog{color:var(--text);background:white;border:1px solid var(--border);border-radius:16px;padding:0;width:min(620px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 40px);box-shadow:0 20px 80px #25304730}dialog::backdrop{background:#25304765;backdrop-filter:blur(3px)}body:has(dialog[open]){overflow:hidden}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-heading h2{font-size:20px}.dialog-intro{font-size:13px;color:var(--muted);margin:10px 0 16px;line-height:1.8}.dialog-actions{display:flex;gap:10px;margin-top:20px}.dialog-actions .button{flex:1}.settings-dialog form,.login-dialog form{padding:24px}.eyebrow{font-size:10px;letter-spacing:1.5px;color:var(--muted);margin-bottom:3px}.settings-group{border:1px solid var(--border);border-radius:12px;padding:14px;margin:18px 0}.settings-group legend{font-size:14px;font-weight:550;padding:0 6px}.settings-group legend svg{width:16px;height:16px;vertical-align:-3px;margin-right:6px;color:var(--accent)}.settings-group .field+.field,#compatible-fields .field,.settings-tip+.field{margin-top:12px}.settings-tip{font-size:12px;background:var(--accent-soft);color:var(--accent);padding:10px;border-radius:8px;line-height:1.8;margin-bottom:12px}.settings-storage-note{color:var(--muted);font-size:12px;line-height:1.8}.login-dialog{width:min(400px,calc(100vw - 32px))}.login-dialog p{color:var(--muted);margin:10px 0 20px;font-size:14px}.brand-icon{display:inline-grid;place-items:center;width:44px;height:44px;background:var(--accent-soft);color:var(--accent);border-radius:12px;margin-bottom:12px}.library-shell{padding:20px}.library-toolbar{display:flex;gap:8px}.library-toolbar .search-field{flex:1;min-width:0}.library-toolbar .button{flex-shrink:0;padding-inline:12px}.library-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 14px}.library-filters select{font-size:14px}.block-list{display:grid;gap:10px}.block-card{border:1px solid var(--border);border-radius:10px;padding:10px 12px;position:relative;min-width:0;background:white;border-left:4px solid var(--block-color,var(--accent))}.block-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.block-heading h3{font-size:15px;overflow-wrap:anywhere}.block-meta{font-size:11px;color:var(--muted);margin:2px 0 6px}.block-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.65 var(--mono);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted)}.block-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.block-actions>div{display:flex;gap:4px}.block-actions .icon-button{border:0;width:40px}.delete-button.confirming{color:var(--error);width:auto;padding-inline:10px;font-size:12px}.library-empty{text-align:center;padding:30px 16px;color:var(--muted);font-size:14px}.block-content{border:1px solid var(--border);padding:10px;min-height:170px}.color-row{display:flex;align-items:center;gap:12px;font-size:14px}.color-row input[type=color]{width:48px;height:44px;padding:3px;border:1px solid var(--border);border-radius:8px;background:white;cursor:pointer}.color-row .field-hint{flex:1}.history-dialog{padding:20px;width:min(840px,calc(100vw - 32px))}#history-detail-image{display:block;width:100%;height:auto;max-height:55dvh;object-fit:contain;background:var(--bg);border-radius:10px;margin:12px auto}#history-detail-meta{margin-bottom:12px}.toast{position:fixed;z-index:200;bottom:100px;left:50%;transform:translateX(-50%);padding:12px 16px;background:#253047;color:white;border-radius:10px;font-size:13px;max-width:calc(100% - 32px);width:max-content;box-shadow:0 8px 24px #25304720}
@media(max-width:1024px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-grid{grid-template-columns:minmax(330px,420px) minmax(0,1fr);gap:16px}.app-main{padding-inline:16px}.topbar{padding-inline:16px}}
@media(max-width:780px){.topbar{height:56px;padding:0 14px}.top-nav{padding:0 12px 10px;gap:6px}.app-main{padding:12px 12px 20px}.brand{font-size:22px}.brand svg{width:22px}.topbar-right{gap:6px}.connection-status{font-size:11px}.studio-grid{display:block}.editor-column{padding-bottom:0;gap:10px}.preview-column{position:static;margin-top:12px;padding-bottom:85px}.result-panel{padding:12px}.canvas-empty{min-height:240px;padding:30px 14px}.canvas-image img{max-height:70dvh}.generation-bar{padding:10px 12px max(10px,env(safe-area-inset-bottom))}.generate-row{display:block}.generate-row>.subtle-label{display:none}.button-generate{width:100%;min-height:48px}.assistant-panel{height:calc(100dvh - var(--header-height) - 12px - env(safe-area-inset-bottom));border-radius:12px}.app-main:has(#assistant-page:not([hidden])){padding-bottom:0}.assistant-heading{padding:12px 12px 8px}.assistant-brand h1{font-size:20px}.context-chip{margin:0 12px 8px;max-width:calc(100% - 24px)}.chat-messages{padding:8px 12px 16px}.chat-welcome{margin:12px auto}.chat-welcome h2{font-size:21px}.chat-welcome p{font-size:14px}.chat-bottom{padding:8px 10px 12px}.quick-edits{gap:6px;margin-bottom:8px}.quick-edits button{min-height:44px}.suggestion-actions{gap:6px}.suggestion-actions .button{font-size:12px;padding-inline:8px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-card-body{padding:7px 8px}.gallery-card-meta{font-size:10px;gap:3px}.gallery-card-actions .text-button{font-size:12px}.gallery-card-actions .icon-button{width:32px}.library-dialog{width:100%;max-height:calc(100dvh - 24px);margin:auto 0 0;border-radius:18px 18px 0 0}.library-shell{padding:16px 14px max(16px,env(safe-area-inset-bottom))}.settings-dialog form{padding:20px 16px}.history-dialog{padding:16px}.field input,.field select{font-size:16px}.model-row .inline-field label{font-size:12px}.model-row .inline-field select{font-size:13px}.prompt-options .inline-field select{font-size:13px}.prompt-actions .text-button{font-size:12px}.result-actions .text-button{font-size:12px}.reference-tools .parameter-top{grid-template-columns:1fr}.toast{bottom:calc(88px + env(safe-area-inset-bottom))}.color-row .field-hint{font-size:11px}}
@media(max-width:360px){.topbar .connection-status{display:none}.app-main{padding-inline:9px}.prompt-panel{padding-inline:10px}.model-row{gap:6px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.inline-field{gap:3px;padding-inline:6px}.prompt-tabs button{font-size:13px;padding-inline:7px}.prompt-actions .text-button{font-size:11px}.prompt-options{gap:6px}.prompt-options .inline-field label{font-size:11px}.prompt-options .inline-field select{font-size:12px}.resolution-row{grid-template-columns:72px minmax(0,1fr);gap:6px}.ratio-button{gap:4px;font-size:12px}.library-shell{padding-inline:12px}.block-actions .button{font-size:13px;padding-inline:10px}.color-row .field-hint{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.negative-input{width:100%;resize:vertical;font-size:16px}.block-actions{flex-wrap:wrap}.library-dialog .dialog-heading{position:sticky;top:0;background:white;z-index:1;padding-bottom:6px}.inline-field select{font-size:16px}
.suggestion-actions>.button,.suggestion-actions>.text-button{flex:1 1 calc(50% - 8px);width:auto}
