:root{--bg-top:#fdf2f8;--bg-bottom:#fce7f3;--panel:#ffffffb3;--panel-strong:#ffffffe6;--text-main:#831843;--text-soft:#9d174d;--accent:#db2777;--accent-strong:#be185d;--line:#db277733;--focus:#ca8a04;--shadow-soft:0 12px 32px #83184314;--shadow-card:0 6px 16px #8318430d;--radius-xl:24px;--radius-lg:16px;--radius-md:12px}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{font-family:var(--font-sans),"Noto Sans SC",sans-serif;color:var(--text-main);background:linear-gradient(150deg,var(--bg-top),var(--bg-bottom))}.showroom-shell{min-height:100vh;padding:36px 20px;position:relative;overflow-x:clip}.ambient-layer{pointer-events:none;background:radial-gradient(circle at 15% 15%,#db277714,#0000 35%),radial-gradient(circle at 82% 5%,#ca8a041f,#0000 42%),radial-gradient(circle at 90% 80%,#f472b61a,#0000 30%);position:absolute;inset:0}.showroom-wrap{z-index:1;gap:20px;max-width:1200px;margin:0 auto;display:grid;position:relative}.showroom-header{text-align:center;padding:8px 8px 2px}.eyebrow{letter-spacing:.22em;color:var(--text-soft);margin:0;font-size:12px}.showroom-header h1{font-family:var(--font-serif),"Noto Serif SC",serif;letter-spacing:.03em;margin:10px 0 8px;font-size:clamp(30px,4vw,46px);font-weight:700}.subline{color:var(--text-soft);margin:0;font-size:16px;line-height:1.5}.display-panel{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);background:#ffffffa6;border:1px solid #fffc;padding:18px}.home-layout{gap:14px;display:grid}.home-selection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.home-select-card{min-height:44px;color:inherit;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:#fffc;align-content:start;gap:8px;padding:10px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:grid}.home-select-card:hover{transform:translateY(-2px)}.home-select-card.is-disabled{cursor:not-allowed;opacity:.72}.home-select-label{color:#674d3d;margin:0;font-size:14px;font-weight:700}.home-select-media{aspect-ratio:4/3;background:linear-gradient(165deg,#f5ddc4,#fef6ec);border:1px solid #c3a689b3;border-radius:12px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.reference-preview-image{object-fit:cover;width:100%;height:100%;display:block}.reference-preview-badge{color:#fff8ef;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#2a1f18ad;border-radius:999px;justify-content:center;align-items:center;min-height:30px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;bottom:10px;left:10px;right:10px}.home-select-card small{color:var(--text-soft);font-size:13px}.feature-entry-card{color:inherit;background:radial-gradient(circle at 0 0,#ec4899d9,#0000 38%),linear-gradient(135deg,#831843eb,#500724f5);border:1px solid #a8704947;border-radius:18px;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;text-decoration:none;transition:transform .24s,box-shadow .24s,border-color .24s;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 36px #5e321c38}.feature-entry-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#fff5e73d,#0000 70%);height:140px;position:absolute;inset:auto -12% -45% 40%}.feature-entry-card:hover{border-color:#ffddbc6b;transform:translateY(-2px);box-shadow:0 24px 42px #5e321c47}.feature-entry-copy{z-index:1;gap:8px;display:grid;position:relative}.feature-entry-eyebrow{letter-spacing:.2em;color:#ffe2c6d1;margin:0;font-size:11px}.feature-entry-copy h2{font-family:var(--font-serif),"Noto Serif SC",serif;color:#fff8f1;margin:0;font-size:clamp(24px,3vw,32px)}.feature-entry-copy p:last-child{color:#ffecd9e0;max-width:720px;margin:0;font-size:14px;line-height:1.65}.feature-entry-meta{z-index:1;justify-items:end;gap:12px;display:grid;position:relative}.feature-entry-chip{color:#fff0e1f0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff9f214;border:1px solid #ffe9d338;border-radius:999px;align-items:center;min-height:36px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.feature-entry-arrow{color:#fdf2f8;background:#fff8f01f;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:inline-flex;box-shadow:inset 0 0 0 1px #ec489933}.preview-btn{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:#fff6ec;cursor:pointer;border:1px solid #803d1d73;border-radius:12px;min-height:44px;padding:11px 16px;font-size:16px;font-weight:700}.preview-btn-loading{justify-content:center;align-items:center;gap:10px;display:inline-flex}.preview-btn-spinner{border:2px solid #fff6ec52;border-top-color:#fff6ecfa;border-radius:50%;flex:none;width:16px;height:16px;animation:.8s linear infinite spin}.preview-btn:disabled{cursor:not-allowed;color:#7e6f61;background:#d8c4ac;border-color:#c4af98}.prompt-panel{border:1px solid var(--line);background:#ffffffc7;border-radius:12px;gap:8px;padding:10px;display:grid}.prompt-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.prompt-head label,.prompt-style-label{color:#654d3e;font-size:14px;font-weight:700}.prompt-style-selected{color:#7a4b2f;background:#ca8a041f;border-radius:999px;align-items:center;min-height:32px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.prompt-style-help{color:var(--text-soft);margin:0;font-size:12px;line-height:1.5}.prompt-reset-btn{min-height:36px;padding:6px 12px;font-size:13px}.prompt-textarea{border:1px solid var(--line);width:100%;min-height:112px;color:var(--text-main);resize:vertical;background:#fffdf9;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px;line-height:1.55}.prompt-textarea:focus-visible{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #ca8a0459}.prompt-preset-row{scrollbar-width:thin;flex-wrap:nowrap;gap:8px;display:flex;overflow-x:auto}.prompt-preset-chip{border:1px solid var(--line);min-height:36px;color:var(--text-main);cursor:pointer;background:#fff;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600}.prompt-preset-chip.is-active{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:#fff6ec;border-color:#803d1d73}.prompt-meta{color:var(--text-soft);flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:12px;display:flex}.status-tip{color:#7a4b2f;margin:0;font-size:14px;line-height:1.45}.status-tip.subtle{color:#8b735f}.result-preview-wrap{justify-items:center;display:grid;position:relative}.result-preview-canvas{background:linear-gradient(165deg,#f5ddc4,#fef6ec);border:1px solid #c3a689b3;border-radius:14px;width:min(100%,500px);height:620px;position:relative;overflow:hidden}.result-preview-image{object-fit:cover;object-position:center}.generated-result-image{object-fit:contain;object-position:center;background:#f8eee2;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.generated-result-canvas{justify-content:center;align-items:center;padding:8px;display:flex}.display-empty.result-empty{border-style:solid;width:min(100%,500px);min-height:620px}.selector-header{text-align:left}.selector-panel{gap:14px;display:grid}.selector-toolbar{justify-content:flex-start;display:flex}.selector-section{gap:12px;display:grid}.selector-section-head{border-bottom:1px solid #d6bea880;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:4px;display:flex}.selector-section-head strong{color:#5f4432;font-size:17px}.selector-section-head span{color:var(--text-soft);font-size:12px}.selector-link-btn{justify-content:center;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.selector-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.swatch-selector-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.selector-card{min-height:44px;color:inherit;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:#ffffffd6;gap:8px;padding:10px;text-decoration:none;transition:transform .2s,border-color .2s;display:grid}.selector-card:hover{transform:translateY(-2px)}.selector-card.is-active{border-color:var(--accent)}.selector-media{aspect-ratio:4/3;background:linear-gradient(165deg,#f5ddc4,#fef6ec);border:1px solid #c3a689b3;border-radius:10px;width:100%;position:relative;overflow:hidden}.selector-card strong{font-size:16px}.selector-card small{color:var(--text-soft);font-size:13px}.display-canvas,.display-empty{border-radius:var(--radius-lg);background:linear-gradient(165deg,#f8e5d3,#fef7ee);width:100%;min-height:420px;position:relative;overflow:hidden}.display-empty{border:1px dashed var(--line);color:var(--text-soft);place-items:center;font-size:18px;display:grid}.compose-layout{align-content:start;gap:12px;padding:14px;display:grid}.compose-inputs{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;display:grid}.compose-operator{color:#fff7ee;background:linear-gradient(145deg,var(--accent),var(--accent-strong));border-radius:999px;place-self:center;place-items:center;width:48px;height:48px;font-size:24px;font-weight:800;display:grid;box-shadow:0 10px 22px #8a492847}.compose-flow{text-align:center;color:var(--text-soft);letter-spacing:.08em;margin:0;font-weight:700}.compose-block{border:1px solid var(--line);background:#fffaf2d1;border-radius:14px;gap:8px;padding:10px;display:grid}.compose-title{color:#674d3d;margin:0;font-size:14px;font-weight:700}.compose-media{aspect-ratio:4/3;background:linear-gradient(165deg,#f5ddc4,#fef6ec);border:1px solid #c3a689b3;border-radius:12px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.compose-result-block{padding-bottom:12px}.compose-result-media{aspect-ratio:16/6}.compose-placeholder{text-align:center;color:var(--text-soft);padding:0 14px;font-size:15px;line-height:1.5}.display-image{object-fit:cover}.display-canvas.is-composing .compose-result-media{animation:1.2s pulseBlur}.compose-overlay{color:#fff8ef;text-shadow:0 2px 12px #31180c80;background:linear-gradient(120deg,#c868394d,#fdeacf47),radial-gradient(circle,#fbe0bc80,#6e391c2e);place-items:center;gap:14px;font-size:18px;display:grid;position:absolute;inset:0}.compose-ring{background:radial-gradient(circle,#fffbf5e6,#fffbf500);border:4px solid #984310f5;border-color:#984310f5 #ca8a0494 #b4530924 #b4530924;border-radius:50%;width:70px;height:70px;animation:.9s linear infinite spin;box-shadow:inset 0 0 0 1px #ffffffad,0 8px 20px #73462624}.error-message{color:#8d2c18;margin:12px 4px 2px;font-size:16px;font-weight:600}.control-panel{border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);background:linear-gradient(#fff8f0f2,#fbf0e1f2);border:1px solid #dac6afcc;gap:16px;padding:18px;display:grid}.category-row{flex-wrap:wrap;gap:10px;display:flex}button{font-family:inherit}.category-tab,.ghost-btn,.compose-btn,.set-card,.swatch-card{cursor:pointer}.category-tab,.ghost-btn,.compose-btn{border:1px solid #0000;border-radius:12px;min-height:44px;padding:10px 14px;font-size:15px}.category-tab{color:var(--text-main);border-color:var(--line);background:#ffffffb3}.category-tab.is-active{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:#fff6ec;border-color:#803d1d80}.set-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;display:grid}.set-card{border:1px solid var(--line);border-radius:var(--radius-md);min-height:44px;box-shadow:var(--shadow-card);text-align:left;background:#ffffffd9;gap:10px;padding:12px;transition:transform .2s,box-shadow .2s;display:grid}.set-card:hover,.swatch-card:hover{transform:translateY(-2px)}.set-thumb{aspect-ratio:4/3;background:#eee0d1;border-radius:10px;width:100%;position:relative;overflow:hidden}.thumb-image{object-fit:cover}.thumb-fallback{width:100%;height:100%;color:var(--text-soft);place-items:center;font-size:14px;display:grid}.set-card strong{font-size:17px;font-weight:700}.set-card small{color:var(--text-soft);font-size:13px}.swatch-stage{gap:12px;display:grid}.swatch-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.toolbar-copy{gap:2px;display:grid}.toolbar-copy span{color:var(--text-soft);font-size:14px}.ghost-btn{border-color:var(--line);color:var(--text-main);background:#fff}.compose-btn{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:#fff6ec;border-color:#803d1d73;padding-inline:20px;font-weight:700}.compose-btn:disabled{cursor:not-allowed;color:#7e6f61;background:#d8c4ac;border-color:#c4af98}.swatch-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.swatch-card{border-radius:var(--radius-md);border:1px solid var(--line);min-height:44px;box-shadow:var(--shadow-card);background:#ffffffd1;gap:10px;padding:10px;transition:transform .2s,border-color .2s;display:grid}.top-actions-bar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.top-action-link{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:#fdf2f8;border:1px solid var(--line);height:38px;box-shadow:var(--shadow-card);border-radius:999px;align-items:center;gap:6px;padding:0 16px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.top-action-link:hover{transform:translateY(-1px);box-shadow:0 8px 24px #db277733}.gen-by-ai-shell{padding-top:18px}.gen-by-ai-wrap{gap:12px}.gen-by-ai-topbar,.showroom-home-topbar{gap:10px}.gen-by-ai-header,.showroom-home-header{padding:0}.showroom-header.gen-by-ai-header .eyebrow,.showroom-header.showroom-home-header .eyebrow{font-size:11px}.showroom-header.gen-by-ai-header h1,.showroom-header.showroom-home-header h1{margin:6px 0 4px;font-size:clamp(26px,3.6vw,38px)}.showroom-header.gen-by-ai-header .subline,.showroom-header.showroom-home-header .subline{font-size:14px;line-height:1.45}.provider-mini-toolbar{background:linear-gradient(#fffcf7e6,#f8f0e6f0),radial-gradient(circle at 0 0,#ca8a041a,#0000 42%);border:1px solid #ddcbb6e0;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex;box-shadow:0 14px 32px #47271314}.provider-mini-label{letter-spacing:.16em;color:#7a5a43;text-transform:uppercase;flex:none;font-size:12px;font-weight:700}.provider-mini-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.provider-mini-chip{color:#6f5440;background:#ffffffb8;border:1px solid #ab8d7461;border-radius:999px;min-height:34px;padding:7px 14px;font-size:13px;font-weight:700;line-height:1;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s,color .18s;box-shadow:inset 0 1px #ffffffc7,0 6px 16px #674c3614}.provider-mini-chip:hover:not(:disabled){border-color:#b4530966;transform:translateY(-1px);box-shadow:inset 0 1px #ffffffd1,0 10px 20px #73462624}.provider-mini-chip.is-active{color:#5d3723;background:linear-gradient(145deg,#b4530924,#ca8a0442),#fff8eef5;border-color:#803d1d8a;box-shadow:inset 0 1px #ffffffd9,0 0 0 2px #b453091f,0 12px 24px #73462629}.provider-mini-chip:disabled{cursor:not-allowed;opacity:.6}.gen-by-ai-panel{padding:16px}.gen-by-ai-panel>.error-message{text-align:center;overflow-wrap:anywhere;justify-self:center;width:min(100%,48rem);margin:12px auto 2px;padding-inline:6px;line-height:1.5}.auth-toolbar.is-compact{align-items:center}.auth-toolbar-panel.is-compact{gap:8px;padding:8px 10px}.auth-toolbar-guest.is-compact{gap:8px}.auth-toolbar.is-compact .auth-toolbar-copy{display:none}.auth-user-badge.is-compact{gap:8px}.auth-user-copy.is-compact{display:none}.auth-user-actions.is-compact{gap:6px}.auth-toolbar{justify-content:flex-end;display:flex}.auth-toolbar-panel{box-shadow:var(--shadow-card);background:#ffffffb8;border:1px solid #ddcbb6e0;border-radius:999px;align-items:center;gap:12px;padding:10px 14px;display:flex}.auth-toolbar-guest{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.auth-toolbar-copy{color:var(--text-soft);font-size:13px}.auth-toolbar-error{text-align:right;margin-top:-8px}.auth-login-btn,.auth-inline-btn,.gen-save-btn{min-height:38px;padding:8px 14px;font-size:13px}.auth-user-badge{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.auth-user-avatar{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:#fff6ec;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:700;display:grid;overflow:hidden}.auth-user-avatar-image{object-fit:cover;width:100%;height:100%}.auth-user-copy{gap:2px;display:grid}.auth-user-copy strong{font-size:14px}.auth-user-copy span{color:var(--text-soft);font-size:12px}.auth-user-actions{flex-wrap:wrap;gap:8px;display:flex}.auth-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2d201870;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.auth-modal{border-radius:var(--radius-lg);width:min(100%,460px);box-shadow:var(--shadow-soft);background:linear-gradient(#fffbf5fa,#f8ecdefa);border:1px solid #dac6afe0;gap:18px;padding:20px;display:grid}.auth-modal-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.auth-modal-head h2{margin:10px 0 0;font-size:24px}.auth-close-btn{min-height:38px}.auth-form{gap:14px;display:grid}.auth-field{gap:8px;display:grid}.auth-field span{color:#654d3e;font-size:14px;font-weight:700}.auth-input{border:1px solid var(--line);min-height:44px;color:var(--text-main);background:#fffdf9;border-radius:12px;padding:10px 12px;font-size:14px}.auth-input:focus-visible{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #ca8a0459}.auth-form-actions{justify-content:flex-end;display:flex}.auth-error-message{margin:0}.source-dialog-backdrop{z-index:55;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2a1c127a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.source-dialog{background:linear-gradient(#fffbf5fa,#f8ecdefa);border:1px solid #dac6afd1;border-radius:24px;gap:18px;width:min(920px,100%);padding:20px;display:grid;box-shadow:0 24px 56px #47271333}.source-dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.source-dialog-head h2{margin:10px 0 6px;font-size:clamp(24px,3vw,34px)}.source-option-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.source-option-card{text-align:left;width:100%;min-height:200px;color:inherit;cursor:pointer;background:linear-gradient(#fffffff0,#faf2e8f5);border:1px solid #d6bea8d1;border-radius:22px;align-content:start;gap:14px;padding:18px;transition:transform .2s,box-shadow .2s,border-color .2s;display:grid;box-shadow:0 16px 30px #80543214}.source-option-card:hover:not(:disabled){border-color:#b75d3457;transform:translateY(-3px);box-shadow:0 22px 40px #80543224}.source-option-card.is-disabled,.source-option-card:disabled{cursor:not-allowed;opacity:.6}.source-option-icon{background:linear-gradient(145deg,#ca8a0429,#b453092e);border-radius:16px;place-items:center;width:52px;height:52px;font-size:24px;display:grid}.source-option-copy{gap:8px;display:grid}.source-option-copy strong{font-size:18px}.source-option-copy p{color:var(--text-soft);margin:0;font-size:14px;line-height:1.6}.page-lock-overlay{z-index:58;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#21150e6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.page-lock-panel{text-align:center;background:linear-gradient(#fffbf5fa,#f8ecdefa);border:1px solid #e3ceb8d1;border-radius:24px;justify-items:center;gap:12px;width:min(420px,100%);padding:22px 20px;display:grid;box-shadow:0 24px 56px #47271338}.page-lock-panel strong{color:#5d4030;font-size:20px}.page-lock-panel p{color:var(--text-soft);margin:0;font-size:14px;line-height:1.7}.gen-save-panel{justify-items:start;gap:8px;display:grid}.gen-save-status{margin:0}.empty-state-card{border-radius:var(--radius-md);text-align:center;background:#fffcf7b8;border:1px dashed #b88a6bb8;place-items:center;gap:14px;min-height:180px;padding:24px;display:grid}.my-gallery-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.my-gallery-summary{gap:4px;display:grid}.my-gallery-summary strong{font-size:18px}.my-gallery-summary span{color:var(--text-soft);font-size:14px}.gallery-filter-bar{background:linear-gradient(#fffcf7eb,#f8f0e6f0);border:1px solid #d6bea8b8;border-radius:18px;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr) auto;align-items:end;gap:14px;padding:16px;display:grid;box-shadow:inset 0 1px #ffffffb8}.gallery-filter-field{gap:8px;display:grid}.gallery-filter-field span{color:#654d3e;font-size:13px;font-weight:700}.gallery-filter-input,.gallery-filter-select{min-height:44px}.gallery-filter-actions{flex-wrap:wrap;gap:10px;display:flex}.gallery-filter-btn{min-width:108px;min-height:44px}.pagination-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pagination-pages{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pagination-btn{min-width:38px;min-height:38px;padding:8px 12px;font-size:13px}.pagination-btn.is-active{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:#fff6ec;border-color:#803d1d73}.pagination-ellipsis{color:var(--text-soft);font-size:18px;line-height:1}.my-images-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.my-image-card{background:linear-gradient(#fffffff0,#faf2e8f5);border:1px solid #cfb7a0b8;border-radius:18px;transition:transform .24s,box-shadow .24s,border-color .24s;display:grid;overflow:hidden;box-shadow:0 18px 32px #8054321f}.my-image-card:hover{border-color:#b75d3457;transform:translateY(-4px);box-shadow:0 24px 44px #8054322e}.my-image-media-button{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.my-image-media{aspect-ratio:4/3;background:#efe3d4;position:relative;overflow:hidden}.my-image-preview{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.my-image-card:hover .my-image-preview,.my-image-media-button:focus-visible .my-image-preview{transform:scale(1.03)}.my-image-overlay{justify-content:flex-end;display:flex;position:absolute;inset:auto 12px 12px}.my-image-overlay span{color:#fff8ef;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#2e251dad;border-radius:999px;align-items:center;min-height:34px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.my-image-copy{gap:10px;padding:14px 14px 0;display:grid}.my-image-reference-list{gap:10px;display:grid}.my-image-reference-list.is-lightbox{gap:12px}.my-image-reference{background:#fffaf4c7;border:1px solid #dbc7b1b3;border-radius:14px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:10px;padding:8px;display:grid}.my-image-reference-list.is-lightbox .my-image-reference{background:#fff5e814;border-color:#ffe4cd24}.my-image-reference-thumb{aspect-ratio:4/3;width:64px;color:var(--text-soft);background:linear-gradient(165deg,#f5ddc4,#fef6ec);border:1px solid #c3a6898c;border-radius:10px;place-items:center;font-size:12px;font-weight:700;display:grid;overflow:hidden}.my-image-reference-list.is-lightbox .my-image-reference-thumb{color:#ffecdab8;background:#fff5e814;border-color:#ffe4cd29}.my-image-reference-image{object-fit:cover;width:100%;height:100%;display:block}.my-image-reference-copy{gap:4px;display:grid}.my-image-reference-copy span{color:var(--text-soft);font-size:12px;font-weight:600}.my-image-reference-copy strong{font-size:14px;line-height:1.4}.my-image-reference-list.is-lightbox .my-image-reference-copy span{color:#ffe4cdad}.my-image-reference-list.is-lightbox .my-image-reference-copy strong{color:#fff8ef}.my-image-meta-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.my-image-copy strong{font-size:15px}.my-image-copy span{color:var(--text-soft);font-size:13px}.my-image-copy p{color:var(--text-soft);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.my-image-actions{background:#fffcf7c7;border-top:1px solid #ddcbb699;flex-wrap:wrap;gap:8px;padding:14px;display:flex}.gallery-lightbox{z-index:60;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f140ead;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.gallery-lightbox-dialog{background:linear-gradient(#2b1a12fa,#452a1bfa);border:1px solid #e0ccb638;border-radius:24px;gap:18px;width:min(1120px,100%);max-height:calc(100vh - 48px);padding:20px;display:grid;overflow:auto;box-shadow:0 24px 60px #00000047}.gallery-lightbox-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.gallery-lightbox-head-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.gallery-lightbox-head h2{color:#fff8ef;margin:10px 0 6px;font-size:clamp(26px,3vw,36px)}.gallery-lightbox-head .subline{color:#ffe4cdb8}.gallery-lightbox-body{grid-template-columns:minmax(0,1.45fr) minmax(280px,.9fr);gap:18px;display:grid}.gallery-lightbox-media{background:#fff5e814;border:1px solid #ffe0c31f;border-radius:20px;place-items:center;min-height:420px;display:grid;overflow:hidden}.gallery-lightbox-image{object-fit:contain;background:#291a12;width:100%;height:100%;max-height:72vh;display:block}.gallery-lightbox-copy{align-content:start;gap:16px;padding:8px 4px;display:grid}.gallery-lightbox-meta{color:#ffe4cdc2;gap:6px;font-size:13px;display:grid}.gallery-lightbox-copy p{color:#fff3e8e0;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.7}.gallery-toast{z-index:70;color:#fff8ef;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2d1e14e0;border-radius:14px;align-items:center;min-height:46px;padding:10px 16px;font-size:14px;font-weight:600;display:inline-flex;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 36px #0000002e}@media (max-width:820px){.gen-by-ai-shell{padding-top:10px;padding-left:14px;padding-right:14px}.gen-by-ai-wrap{gap:10px}.gen-by-ai-topbar,.showroom-home-topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.gen-by-ai-topbar .auth-toolbar,.gen-by-ai-topbar .auth-toolbar-panel,.gen-by-ai-topbar .auth-toolbar-guest,.gen-by-ai-topbar .auth-user-badge,.showroom-home-topbar .auth-toolbar,.showroom-home-topbar .auth-toolbar-panel,.showroom-home-topbar .auth-toolbar-guest,.showroom-home-topbar .auth-user-badge{width:auto}.gen-by-ai-topbar .top-action-link,.showroom-home-topbar .top-action-link{height:34px;padding:0 12px;font-size:13px}.gen-by-ai-topbar .auth-login-btn,.gen-by-ai-topbar .auth-inline-btn,.showroom-home-topbar .auth-login-btn,.showroom-home-topbar .auth-inline-btn{min-height:34px;padding:6px 12px;font-size:12px}.gen-by-ai-topbar .auth-user-avatar,.showroom-home-topbar .auth-user-avatar{width:32px;height:32px}.gen-by-ai-header,.showroom-home-header{padding:0}.showroom-header.gen-by-ai-header h1,.showroom-header.showroom-home-header h1{margin:4px 0 2px;font-size:28px}.showroom-header.gen-by-ai-header .subline,.showroom-header.showroom-home-header .subline{font-size:13px}.provider-mini-toolbar{border-radius:16px;padding:8px 12px}.provider-mini-chip{min-height:32px;padding:7px 12px;font-size:12px}.gen-by-ai-panel{padding:14px}.auth-toolbar{justify-content:stretch}.auth-toolbar-panel,.auth-toolbar-guest,.auth-user-badge{width:100%}.auth-toolbar-panel,.auth-toolbar-guest,.auth-user-badge,.auth-user-actions{justify-content:space-between}.auth-modal,.source-dialog{padding:18px}.source-dialog-head{flex-direction:column}.source-option-grid,.source-option-grid.is-compact{grid-template-columns:1fr}.my-gallery-head,.pagination-bar{align-items:stretch}.pagination-bar{gap:8px;width:100%}.pagination-pages{flex-wrap:nowrap;order:3;justify-content:center;width:100%;padding-bottom:2px;overflow-x:auto}.pagination-btn{flex:none}.pagination-nav-btn{flex:calc(50% - 4px);justify-content:center}.my-image-reference{grid-template-columns:56px minmax(0,1fr)}.my-image-reference-thumb{width:56px}.gallery-filter-bar{grid-template-columns:1fr;align-items:stretch}.gallery-filter-actions{width:100%}.gallery-lightbox{padding:14px}.gallery-lightbox-dialog{padding:16px}.gallery-lightbox-head,.gallery-lightbox-head-actions{align-items:stretch}.gallery-lightbox-head{flex-direction:column}.gallery-lightbox-body{grid-template-columns:1fr}.gallery-lightbox-media{min-height:280px}.gallery-toast{justify-content:center;bottom:14px;left:14px;right:14px}}.swatch-card.is-active{border-color:var(--accent)}.swatch-image-wrap{aspect-ratio:1;background:#f0dfcf;border-radius:10px;width:100%;position:relative;overflow:hidden}.swatch-image{object-fit:cover}a,button,[role=tab]{outline:none}a:focus-visible,button:focus-visible,[role=tab]:focus-visible{border-color:var(--focus);box-shadow:0 0 0 3px #ca8a0459}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulseBlur{0%{filter:brightness();transform:scale(1)}40%{filter:brightness(1.15)saturate(1.15);transform:scale(1.03)}to{filter:brightness();transform:scale(1)}}@media (max-width:1024px){.showroom-shell{padding:26px 14px}.display-canvas,.display-empty{min-height:390px}.compose-result-media{aspect-ratio:16/8}.result-preview-canvas{width:min(100%,440px);height:540px}.display-empty.result-empty{width:min(100%,440px);min-height:540px}}@media (max-width:820px){.compose-inputs{grid-template-columns:1fr}.compose-operator{width:42px;height:42px;margin:2px auto}}@media (max-width:640px){.gen-by-ai-shell{padding-top:8px;padding-left:12px;padding-right:12px}.gen-by-ai-topbar,.showroom-home-topbar{gap:6px}.gen-by-ai-topbar .top-action-link,.showroom-home-topbar .top-action-link{padding:0 10px;font-size:12px}.showroom-header.gen-by-ai-header .eyebrow,.showroom-header.showroom-home-header .eyebrow{letter-spacing:.16em;font-size:10px}.showroom-header.gen-by-ai-header h1,.showroom-header.showroom-home-header h1{font-size:24px}.showroom-header.gen-by-ai-header .subline,.showroom-header.showroom-home-header .subline{font-size:12px;line-height:1.35}.provider-mini-toolbar{justify-items:start;gap:8px;padding:8px 10px;display:grid}.provider-mini-actions{justify-content:flex-start;width:100%}.provider-mini-chip{min-height:30px;padding:6px 11px;font-size:12px}.gen-by-ai-panel{gap:10px;padding:12px}.showroom-header h1{font-size:32px}.subline{font-size:15px}.display-empty{font-size:16px}.selector-section-head{flex-direction:column;align-items:flex-start;gap:4px}.display-canvas,.display-empty{min-height:360px}.home-selection-grid{gap:10px}.home-select-card{padding:9px}.reference-preview-badge{font-size:11px;bottom:8px;left:8px;right:8px}.feature-entry-card{gap:14px;padding:16px}.feature-entry-copy h2{font-size:26px}.feature-entry-copy p:last-child,.home-select-label{font-size:13px}.result-preview-canvas{width:min(100%,340px);height:420px}.display-empty.result-empty{width:min(100%,340px);min-height:420px}.prompt-head{flex-direction:column;align-items:stretch}.prompt-reset-btn{width:100%}.feature-entry-card{flex-direction:column;align-items:flex-start}.feature-entry-meta{grid-template-columns:1fr auto;place-items:center start;width:100%}.prompt-preset-chip{border-radius:10px;width:100%}.swatch-toolbar{align-items:stretch}.toolbar-copy{order:-1;width:100%}.compose-btn,.ghost-btn,.category-tab{width:100%}.auth-login-btn,.auth-inline-btn,.top-action-link,.pagination-btn{width:auto}.pagination-nav-btn{min-width:0}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
