:root{color-scheme:light;--paper: #f5fbff;--paper-2: #ffffff;--ink: #091117;--muted: #53616b;--faint: #82919c;--line: rgba(9, 33, 48, .12);--line-strong: rgba(9, 33, 48, .22);--cyan: #35e7df;--cyan-deep: #087b84;--cyan-soft: rgba(53, 231, 223, .13);--blue: #4aa3ff;--warn: #9a5b0f;--danger: #b42318;--success: #166534;--card: #ffffff;--card-strong: #ffffff;--shadow: 0 1px 0 rgba(9, 33, 48, .05), 0 18px 44px rgba(4, 48, 59, .05);--body-bg: radial-gradient(circle at 16% 8%, rgba(53, 231, 223, .11), transparent 26rem), radial-gradient(circle at 84% 10%, rgba(74, 163, 255, .1), transparent 24rem), linear-gradient(180deg, #ffffff 0%, var(--paper) 100%);--body-grid-line: rgba(9, 33, 48, .035);--primary-hover: #075f68;--embedded-bg: linear-gradient(90deg, rgba(255, 255, 255, .86), rgba(242, 250, 255, .7)), linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(232, 249, 252, .5));--embedded-panel-bg: rgba(255, 255, 255, .88);--embedded-panel-shadow: 0 1px 0 rgba(9, 33, 48, .05), 0 16px 38px rgba(4, 48, 59, .06);--embedded-library-bg: rgba(255, 255, 255, .8);--embedded-field-bg: rgba(255, 255, 255, .94);--focus-bg: #fff;--focus-ring: rgba(53, 231, 223, .2);--control-tint: rgba(8, 123, 132, .08);--control-tint-embedded: rgba(8, 123, 132, .07);--control-shadow: none;--canvas-fill: rgba(247, 252, 255, .88);--canvas-grid-line: rgba(9, 33, 48, .035);--sticky-bg: rgba(255, 255, 255, .88);--sticky-embedded-bg: rgba(255, 255, 255, .94);--chip-bg: rgba(244, 251, 255, .82);--chip-embedded-bg: rgba(244, 251, 255, .92);--history-card-embedded-bg: rgba(255, 255, 255, .92);--thumb-bg: rgba(244, 251, 255, .76);--inverse-ink: #fff;--overlay-bg: rgba(5, 13, 20, .54);--preview-bg: rgba(5, 13, 20, .78);--preview-close-bg: rgba(255, 255, 255, .92);--menu-shadow: 0 18px 48px rgba(4, 48, 59, .16);--modal-shadow: 0 24px 80px rgba(4, 48, 59, .22);--scrollbar-thumb: rgba(40, 214, 210, .32);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:var(--paper);color:var(--ink)}html[data-theme=dark]{color-scheme:dark;--paper: #061018;--paper-2: #0b1720;--ink: #f3fbff;--muted: #a8b8c3;--faint: #748690;--line: rgba(230, 247, 255, .13);--line-strong: rgba(230, 247, 255, .23);--cyan: #35e7df;--cyan-deep: #8bf5ef;--cyan-soft: rgba(53, 231, 223, .14);--blue: #67a3ff;--warn: #fbbf24;--danger: #fb7185;--success: #34d399;--card: #0b1720;--card-strong: #101f2a;--shadow: 0 20px 56px rgba(0, 0, 0, .3);--body-bg: radial-gradient(circle at 16% 8%, rgba(53, 231, 223, .12), transparent 26rem), radial-gradient(circle at 84% 10%, rgba(103, 163, 255, .12), transparent 24rem), linear-gradient(180deg, #061018 0%, var(--paper) 100%);--body-grid-line: rgba(230, 247, 255, .035);--primary-hover: #8bf5ef;--embedded-bg: linear-gradient(90deg, rgba(6, 16, 24, .92), rgba(7, 22, 34, .86)), linear-gradient(180deg, rgba(9, 28, 40, .9), rgba(3, 10, 18, .9));--embedded-panel-bg: rgba(11, 23, 32, .88);--embedded-panel-shadow: 0 14px 36px rgba(0, 0, 0, .34);--embedded-library-bg: rgba(11, 23, 32, .8);--embedded-field-bg: rgba(16, 31, 42, .92);--focus-bg: rgba(16, 31, 42, .98);--focus-ring: rgba(53, 231, 223, .2);--control-tint: rgba(53, 231, 223, .1);--control-tint-embedded: rgba(53, 231, 223, .1);--control-shadow: 0 8px 18px rgba(0, 0, 0, .22);--canvas-fill: rgba(6, 16, 24, .66);--canvas-grid-line: rgba(230, 247, 255, .055);--sticky-bg: rgba(11, 23, 32, .88);--sticky-embedded-bg: rgba(11, 23, 32, .94);--chip-bg: rgba(16, 31, 42, .78);--chip-embedded-bg: rgba(16, 31, 42, .9);--history-card-embedded-bg: rgba(16, 31, 42, .9);--thumb-bg: rgba(16, 31, 42, .7);--inverse-ink: #041018;--overlay-bg: rgba(3, 10, 18, .68);--preview-bg: rgba(3, 10, 18, .88);--preview-close-bg: rgba(16, 31, 42, .94);--menu-shadow: 0 18px 48px rgba(0, 0, 0, .34);--modal-shadow: 0 24px 80px rgba(0, 0, 0, .4);--scrollbar-thumb: rgba(53, 231, 223, .3)}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%}body{margin:0;color:var(--ink);background:var(--body-bg)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.32;background-image:linear-gradient(var(--body-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--body-grid-line) 1px,transparent 1px);background-size:54px 54px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 16%,#000 76%,transparent);mask-image:linear-gradient(180deg,transparent,#000 16%,#000 76%,transparent)}html[data-ui-mode=embedded],body[data-ui-mode=embedded]{width:100%;height:100%;overflow:hidden;background:transparent}body[data-ui-mode=embedded]{background:var(--embedded-bg)}body[data-ui-mode=embedded]:before{display:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}.app-shell{position:relative;width:min(1760px,calc(100vw - 20px));margin:0 auto;padding:12px 0 24px}.app-shell.embedded{width:100%;height:100dvh;min-height:620px;margin:0;padding:0;overflow:hidden}.eyebrow{margin:0 0 4px;color:var(--cyan-deep);font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.chips,.section-title,.inline-actions,.modal-actions,.result-toolbar,.queue-actions,.history-title{display:flex;align-items:center;gap:8px}.status-dot,.chips span,.history-title span{display:inline-flex;max-width:240px;min-height:28px;align-items:center;overflow:hidden;border-radius:999px;padding:5px 10px;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800}.status-dot{border:1px solid rgba(154,91,15,.22);background:#9a5b0f14;color:var(--warn)}.status-dot.live{border-color:#11b9bf47;background:var(--cyan-soft);color:var(--cyan-deep)}.notice,.error-box{margin-bottom:14px;border-radius:8px;padding:12px 14px;font-weight:800}.notice.success{border:1px solid rgba(22,101,52,.22);background:#16653414;color:var(--success)}.notice.info{border:1px solid rgba(17,185,191,.28);background:var(--cyan-soft);color:var(--cyan-deep)}.panel{border:1px solid var(--line);border-radius:8px;background:var(--card);box-shadow:var(--shadow)}.app-shell.embedded .panel{background:var(--embedded-panel-bg);box-shadow:var(--embedded-panel-shadow)}.studio-layout{display:grid;grid-template-columns:minmax(280px,350px) minmax(360px,1fr) minmax(280px,380px);gap:10px;align-items:start}.app-shell.embedded .studio-layout{height:100%;grid-template-columns:minmax(286px,330px) minmax(520px,1fr) minmax(290px,360px);gap:12px;align-items:stretch;padding:8px}.creator-panel,.canvas-panel,.library-panel{min-width:0;padding:14px}.app-shell.embedded .creator-panel,.app-shell.embedded .canvas-panel,.app-shell.embedded .library-panel{padding:12px}.creator-panel,.library-panel{position:sticky;top:14px;max-height:calc(100vh - 28px)}.app-shell.embedded .creator-panel,.app-shell.embedded .library-panel{position:relative;top:auto;height:100%;max-height:none}.creator-panel{display:flex;flex-direction:column;overflow:hidden}.library-panel{overflow:auto}.app-shell.embedded .library-panel{background:var(--embedded-library-bg)}.canvas-panel{min-height:calc(100vh - 110px)}.app-shell.embedded .canvas-panel{display:flex;min-height:0;flex-direction:column}.creator-scroll{min-height:0;overflow:auto;padding-right:2px}.app-shell.embedded .creator-scroll{display:flex;flex-direction:column}.app-shell.embedded .creator-scroll,.app-shell.embedded .library-panel{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.app-shell.embedded .creator-scroll{padding-bottom:88px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-head.compact{align-items:center}.panel-head h2{margin:0;color:var(--ink);font-size:18px;line-height:1.2}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.result-head{align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px}.app-shell.embedded .panel-head{margin-bottom:8px}.app-shell.embedded .panel-head h2{font-size:17px}.app-shell.embedded .eyebrow{display:none}.app-shell.embedded .result-head{flex:0 0 auto;padding-bottom:10px}.control-section{display:grid;gap:8px;margin-bottom:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.app-shell.embedded .control-section{gap:6px;margin-bottom:8px;padding-bottom:8px}.field,.references{display:grid;min-width:0;gap:8px}label{color:var(--ink);font-size:13px;font-weight:800}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--card-strong);color:var(--ink);padding:9px 10px;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.app-shell.embedded input,.app-shell.embedded select,.app-shell.embedded textarea{min-height:36px;padding:8px 9px;background:var(--embedded-field-bg)}textarea{resize:vertical;line-height:1.55}.app-shell.embedded textarea{resize:none}.app-shell.embedded .creator-panel textarea{height:112px;min-height:96px}input:focus,select:focus,textarea:focus{border-color:var(--cyan);background:var(--focus-bg);box-shadow:0 0 0 3px var(--focus-ring)}.segmented.segmented-four{grid-template-columns:repeat(2,1fr)}.video-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}.video-result footer{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;color:var(--muted)}.video-result{display:grid;min-height:280px;place-items:center;overflow:hidden;border-radius:8px;background:var(--canvas-fill)}.video-result video,.history-thumb video,.drawer-grid video{display:block;width:100%;max-height:min(72vh,720px);background:#000}.history-thumb video{height:100%;max-height:none;object-fit:cover}.segmented,.side-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px;border-radius:8px;border:1px solid var(--line);background:var(--control-tint);padding:4px}.app-shell.embedded .segmented,.app-shell.embedded .side-tabs{margin-bottom:10px;background:var(--control-tint-embedded)}.app-shell.embedded .segmented button,.app-shell.embedded .side-tabs button{min-height:34px;padding:7px 9px}.side-tabs{grid-template-columns:repeat(3,1fr);margin-bottom:16px}.segmented button,.side-tabs button,.size-grid button{min-height:38px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);padding:8px 10px;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.segmented button.active,.side-tabs button.active{border-color:var(--line);background:var(--card-strong);color:var(--ink);box-shadow:var(--control-shadow);font-weight:900}.compact-segmented{margin-bottom:0}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.section-title{justify-content:space-between}.inline-actions,.result-toolbar,.queue-actions{flex-wrap:wrap;justify-content:flex-end}.export-size{display:inline-flex;align-items:center;gap:6px;margin-right:auto;color:var(--muted);font-size:12px;font-weight:700}.export-size select{width:auto;min-width:92px;padding:6px 8px;font-size:13px;font-weight:700}.export-size-hint{margin-top:-4px}.dropzone{display:flex;min-height:126px;width:100%;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px dashed rgba(8,123,132,.32);border-radius:8px;background:var(--canvas-fill);color:var(--muted)}.dropzone.over,.dropzone:hover{border-color:var(--cyan);background:var(--cyan-soft);color:var(--cyan-deep)}.drop-icon{font-size:26px;line-height:1}.reference-grid,.result-grid,.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app-shell.embedded .result-grid,.app-shell.embedded .compare-grid{flex:1 1 auto;min-height:0;overflow:auto;align-content:start;padding-right:2px;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.reference-card,.image-card,.compare-grid article,.history-card,.version-list article,.queue-item{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--card-strong)}.reference-card{position:relative}.reference-card img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.reference-card button{position:absolute;top:8px;right:8px;width:28px;height:28px;border:0;border-radius:999px;background:var(--preview-bg);color:#fff}.reference-card div{display:grid;gap:3px;padding:8px}.reference-card strong,.history-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reference-card span,.history-card small,.version-list span,.queue-item small{color:var(--muted);font-size:12px}.size-grid,.count-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.size-grid button,.count-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:44px;padding:8px 4px;border:1px solid var(--line);border-radius:12px;background:var(--card-strong);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.size-grid button{min-height:70px}.size-grid button.active,.count-grid button.active{border-color:var(--cyan);background:var(--cyan-soft);color:var(--cyan-deep)}.size-grid button:focus-visible,.count-grid button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.ratio-icon{display:grid;place-items:center;width:28px;height:28px}.ratio-icon>span:not(.ratio-auto){display:block;border:1.5px solid currentColor}.ratio-auto{font-size:18px}.ratio-description{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.size-hint{display:none}.size-grid button.active{border-color:var(--cyan);background:var(--cyan-soft);color:var(--cyan-deep)}.size-ratio{grid-area:ratio;display:inline-grid;min-width:42px;height:30px;place-items:center;border-radius:6px;background:var(--control-tint);color:var(--cyan-deep);font-size:13px;font-weight:950}.size-name,.size-resolution{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.size-name{grid-area:name;color:var(--ink);font-size:13px;font-weight:950}.size-resolution{grid-area:resolution;color:var(--muted);font-size:11px;font-weight:800}.size-grid button.active .size-ratio{background:#11b9bf2e}.size-grid button.active .size-name,.size-grid button.active .size-resolution{color:var(--cyan-deep)}.size-hint{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.button,.icon-button,.text-button,.image-menu-trigger{border:0;border-radius:8px;font-weight:900}.button{min-height:40px;padding:10px 13px}.button.primary{background:var(--cyan-deep);color:var(--inverse-ink)}.button.primary:hover{background:var(--primary-hover)}.button.ghost,.icon-button{border:1px solid var(--line);background:var(--card-strong);color:var(--ink)}.full{width:100%}.icon-button{display:inline-grid;width:38px;height:38px;flex:0 0 auto;place-items:center;padding:0}.text-button,.image-menu-trigger{background:transparent;color:var(--cyan-deep);padding:0;font-size:12px;line-height:1.6}.text-button.danger{color:var(--danger)}.sticky-actions{position:sticky;bottom:0;display:grid;gap:8px;margin:4px -14px -14px;border-top:1px solid var(--line);background:var(--sticky-bg);padding:10px 14px 14px}.app-shell.embedded .sticky-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin:4px -12px -12px;padding:8px 12px 10px;background:var(--sticky-embedded-bg)}.app-shell.embedded .sticky-actions .primary{grid-column:1 / -1}.app-shell.embedded .button{min-height:38px;padding:9px 12px}.result-insight{border:1px solid rgba(17,185,191,.28);border-radius:8px;background:var(--cyan-soft);color:var(--cyan-deep)}.result-toolbar{margin-bottom:14px}.result-toolbar .button,.queue-actions .button{min-height:36px;padding:8px 11px;font-size:13px}.chips{flex-wrap:wrap;justify-content:flex-end}.chips span{border:1px solid var(--line);background:var(--chip-bg);color:var(--muted)}.app-shell.embedded .chips span{min-height:24px;padding:4px 9px;background:var(--chip-embedded-bg);font-size:11px}.error-box{border:1px solid rgba(180,35,24,.2);background:#b4231814;color:var(--danger)}.error-box pre{overflow:auto;max-height:160px;margin:10px 0 0;border-radius:8px;background:#b4231814;padding:10px;white-space:pre-wrap}.result-insight{margin-bottom:14px;padding:10px 12px;font-size:13px;font-weight:900}.result-insight.warn{border-color:#9a5b0f3d;background:#9a5b0f14;color:var(--warn)}.empty-result,.placeholder,.side-empty{display:grid;place-items:center;border:1px dashed rgba(8,123,132,.28);border-radius:8px;background:var(--canvas-fill);color:var(--muted);text-align:center}.empty-result{min-height:calc(100vh - 230px)}.app-shell.embedded .empty-result{flex:1 1 auto;min-height:0;border-color:#087b8433;background:linear-gradient(180deg,var(--canvas-fill),var(--canvas-fill)),repeating-linear-gradient(0deg,var(--canvas-grid-line) 0,var(--canvas-grid-line) 1px,transparent 1px,transparent 28px),repeating-linear-gradient(90deg,var(--canvas-grid-line) 0,var(--canvas-grid-line) 1px,transparent 1px,transparent 28px)}.empty-result strong{display:block;margin-bottom:6px;color:var(--ink);font-size:18px}.empty-result p{margin:0;color:var(--muted)}.placeholder{min-height:240px;aspect-ratio:4 / 3}.app-shell.embedded .placeholder{min-height:220px}.spinner{width:28px;height:28px;border:3px solid rgba(17,185,191,.2);border-top-color:var(--cyan);border-radius:50%;animation:spin .8s linear infinite}.image-card .image-preview-button,.compare-grid button{display:block;width:100%;border:0;background:var(--thumb-bg);padding:0}.image-card img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:contain}.image-card footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 12px 12px}.image-card footer span{min-width:0;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px}.image-menu-trigger{border:1px solid var(--line);background:var(--card-strong);color:var(--ink);padding:5px 10px;white-space:nowrap}.image-menu-trigger:hover,.image-menu-trigger:focus-visible{border-color:var(--cyan);color:var(--cyan-deep)}.compare-grid img{display:block;width:100%;aspect-ratio:1;object-fit:contain}.compare-grid footer{display:flex;justify-content:space-between;gap:10px;padding:10px}.side-panel{min-height:calc(100vh - 112px)}.app-shell.embedded .side-panel{min-height:0}.history-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.app-shell.embedded .history-tools{gap:7px;margin-bottom:10px}.history-tools input:first-child{grid-column:1 / -1}.history-groups{display:grid;gap:14px}.app-shell.embedded .history-groups{gap:12px}.history-groups h3{margin:0 0 8px;color:var(--muted);font-size:12px;font-weight:900}.history-gallery,.version-list,.queue-list{display:grid;gap:10px}.history-card{display:grid;grid-template-columns:82px minmax(0,1fr);gap:10px;align-items:center;padding:8px;text-align:left}.app-shell.embedded .history-card{grid-template-columns:74px minmax(0,1fr);gap:9px;background:var(--history-card-embedded-bg)}.history-thumb{position:relative;overflow:hidden;width:82px;height:82px;border:0;border-radius:6px;background:var(--thumb-bg);padding:0}.app-shell.embedded .history-thumb{width:74px;height:74px}.history-thumb img{display:block;width:100%;height:100%;border-radius:6px;object-fit:cover}.history-thumb-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted);padding:10px;text-align:center;font-size:12px;font-weight:900}.history-thumb span{position:absolute;right:6px;bottom:6px;border-radius:999px;background:var(--preview-bg);color:#fff;padding:3px 6px;font-size:11px;font-weight:900}.history-card>div{display:grid;min-width:0;gap:4px}.history-title{min-width:0;justify-content:space-between}.history-title span{min-height:22px;flex:0 0 auto;border:1px solid rgba(154,91,15,.2);background:#9a5b0f14;color:var(--warn);padding:3px 7px;font-size:11px}.history-card small{line-height:1.45}.app-shell.embedded .history-card small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.history-actions{display:flex;flex-wrap:wrap;gap:8px 12px;padding-top:2px}.app-shell.embedded .history-actions{gap:5px 10px}.side-empty{min-height:220px;padding:20px}.queue-composer{display:grid;gap:8px;margin-bottom:12px}.version-list article,.queue-item{display:grid;gap:6px;padding:10px}.version-list p,.queue-item p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.queue-item.running{border-color:#11b9bf47;background:var(--cyan-soft)}.queue-item.success{border-color:#16653438;background:#16653414}.queue-item.failed{border-color:#b4231833;background:#b4231814}.modal-backdrop,.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:var(--overlay-bg)}.modal-backdrop{display:grid;place-items:center;padding:20px}.modal,.drawer{border:1px solid var(--line);border-radius:8px;background:var(--card-strong);box-shadow:var(--modal-shadow);color:var(--ink)}.modal{width:min(520px,100%);padding:20px}.modal h2,.drawer h2{margin:0 0 14px}.detail-list{display:grid;gap:8px;margin:0 0 16px}.detail-list div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px}.detail-list dt{color:var(--muted);font-weight:900}.detail-list dd{margin:0;word-break:break-word}.checkbox-row{display:flex;align-items:center;gap:8px}.checkbox-row input{width:auto}.modal-actions{justify-content:flex-end;margin-top:18px}.drawer-backdrop{display:flex;justify-content:flex-end}.drawer{overflow:auto;width:min(540px,92vw);height:100%;padding:22px}.drawer>.icon-button{float:right}.drawer p{color:var(--muted);line-height:1.6}.context-menu-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130}.image-context-menu{position:fixed;display:grid;width:178px;border:1px solid var(--line);border-radius:8px;background:var(--card-strong);box-shadow:var(--menu-shadow);padding:6px}.image-context-menu button{display:flex;width:100%;min-height:34px;align-items:center;border:0;border-radius:6px;background:transparent;color:var(--ink);padding:8px 10px;text-align:left;font-size:13px;font-weight:800}.image-context-menu button:hover,.image-context-menu button:focus-visible{background:var(--cyan-soft);color:var(--cyan-deep)}.image-context-menu hr{width:100%;height:1px;margin:6px 0;border:0;background:var(--line)}.drawer-grid,.compare-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.drawer-grid img{width:100%;border-radius:8px;background:var(--thumb-bg);aspect-ratio:1;object-fit:contain}.compare-text-grid section{border:1px solid var(--line);border-radius:8px;background:var(--canvas-fill);padding:12px}.compare-text-grid h3{margin:0 0 8px;font-size:14px}.preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:var(--preview-bg);padding:24px}.preview img{max-width:min(1120px,96vw);max-height:88vh;border-radius:8px;background:var(--ink);object-fit:contain}.preview button{position:fixed;top:20px;right:20px;width:44px;height:44px;border:0;border-radius:999px;background:var(--preview-close-bg);color:var(--ink);font-size:28px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1180px){.studio-layout{grid-template-columns:minmax(300px,380px) minmax(0,1fr)}.app-shell.embedded{overflow:auto}.app-shell.embedded .studio-layout{height:auto;min-height:100%;grid-template-columns:minmax(300px,360px) minmax(0,1fr)}.library-panel{position:static;grid-column:1 / -1;max-height:none}.app-shell.embedded .library-panel{height:auto;max-height:none}.side-panel{min-height:0}.history-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.studio-layout,.app-shell.embedded .studio-layout{grid-template-columns:1fr}.creator-panel,.library-panel{position:static;max-height:none;overflow:visible}.app-shell.embedded .creator-panel,.app-shell.embedded .library-panel{height:auto;overflow:visible}.canvas-panel{min-height:auto}.empty-result{min-height:320px}}@media (max-width: 680px){.app-shell{width:min(100vw - 20px,1760px);padding:10px 0 18px}.app-shell.embedded{width:100%;padding:0}.app-shell.embedded .studio-layout{padding:8px}.panel-head,.result-head{align-items:stretch;flex-direction:column}.two-columns,.reference-grid,.result-grid,.compare-grid,.history-gallery,.history-tools,.drawer-grid,.compare-text-grid{grid-template-columns:1fr}.chips,.result-toolbar,.queue-actions{justify-content:flex-start}.creator-panel,.canvas-panel,.library-panel{padding:14px}.sticky-actions{margin:4px -14px -14px;padding:12px 14px 14px}.detail-list div{grid-template-columns:1fr}.history-card{grid-template-columns:72px minmax(0,1fr)}.history-thumb{width:72px;height:72px}}.key-section .key-hint{margin:0 0 10px;font-size:12px;line-height:1.6;color:var(--muted)}.key-section .key-hint.warn{color:var(--warn)}.key-section .key-hint a{color:var(--cyan-deep);text-decoration:underline}.key-slot-grid{display:grid;grid-template-columns:1fr;gap:10px}.key-slot{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--chip-bg);min-width:0}.key-slot-head{display:flex;align-items:center;justify-content:space-between;gap:8px;white-space:nowrap}.key-slot-name{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis}.key-slot-name small{margin-left:4px;font-size:11px;font-weight:500;color:var(--faint)}.key-slot-badge{flex:none;font-size:11px;line-height:1;padding:4px 8px;border-radius:999px;color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}.key-slot-badge.ok{color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent)}.key-slot select,.key-slot input{width:100%;min-width:0;text-overflow:ellipsis}.key-slot-hint{margin:0;font-size:12px;line-height:1.5;color:var(--muted)}.key-slot-hint a{color:var(--cyan-deep);text-decoration:underline}.key-panel-flash{animation:key-panel-flash .8s ease-in-out 2;border-radius:12px}@keyframes key-panel-flash{0%,to{box-shadow:none}50%{box-shadow:0 0 0 3px var(--focus-ring),0 0 0 1px var(--cyan-deep)}}.tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tier-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease}.tier-grid button:hover{border-color:var(--line-strong)}.tier-grid button.active{border-color:var(--cyan-deep);background:var(--cyan-soft)}.tier-grid button.locked{cursor:pointer;opacity:.62}.tier-grid button.locked .tier-state{color:var(--warn)}.tier-name{font-size:13px;font-weight:600}.tier-price{font-size:12px;color:var(--muted)}.tier-state{font-size:11px;color:var(--success);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tier-grid button:not(.active):not(.locked) .tier-state{color:var(--faint)}@media (max-width: 680px){.tier-grid{gap:6px}.tier-grid button{padding:8px}}.status-dot.partial{color:var(--warn);border-color:var(--warn)}.generate-block-reason{margin:6px 0 0;font-size:12px;color:var(--warn);text-align:center}
