:root{--bg: #faf9f8;--bg-warm: #f5f5f4;--surface: #ffffff;--surface-soft: #fafafa;--border: #e5e4e2;--border-soft: #e8e8e6;--text: #2c2c2c;--text-soft: #4a4845;--muted: #71717a;--success: #5a7d5c;--error: #b85450;--font-serif: "Cormorant Garamond", Georgia, serif;--font-sans: "Outfit", system-ui, sans-serif;--shadow-soft: 0 2px 12px rgba(44, 44, 44, .06);--shadow-card: 0 4px 20px rgba(44, 44, 44, .08);--accent: #64748b;--accent-hover: #475569;--accent-soft: #94a3b8;--accent-light: #f1f5f9;--accent-focus: 100, 116, 139}.app[data-theme=gold]{--accent: #b8860b;--accent-hover: #9a7209;--accent-soft: #d4af37;--accent-light: #f5ecd8;--accent-focus: 184, 134, 11}.app[data-theme=silver]{--accent: #64748b;--accent-hover: #475569;--accent-soft: #94a3b8;--accent-light: #f1f5f9;--accent-focus: 100, 116, 139}.app[data-theme=rose-gold]{--accent: #b76e79;--accent-hover: #9a5a64;--accent-soft: #d4a5a5;--accent-light: #faf0f2;--accent-focus: 183, 110, 121}.app[data-theme=platinum]{--accent: #4a5568;--accent-hover: #2d3748;--accent-soft: #718096;--accent-light: #edf2f7;--accent-focus: 74, 85, 104}.app[data-theme=bronze]{--accent: #92400e;--accent-hover: #78350f;--accent-soft: #b45309;--accent-light: #fef3c7;--accent-focus: 146, 64, 14}.app[data-theme=emerald]{--accent: #047857;--accent-hover: #065f46;--accent-soft: #10b981;--accent-light: #ecfdf5;--accent-focus: 4, 120, 87}.app[data-theme=amethyst]{--accent: #6d28d9;--accent-hover: #5b21b6;--accent-soft: #8b5cf6;--accent-light: #f5f3ff;--accent-focus: 109, 40, 217}.app[data-theme=copper]{--accent: #c2410c;--accent-hover: #9a3412;--accent-soft: #ea580c;--accent-light: #fff7ed;--accent-focus: 194, 65, 12}.app[data-theme=champagne]{--accent: #a16207;--accent-hover: #854d0e;--accent-soft: #ca8a04;--accent-light: #fefce8;--accent-focus: 161, 98, 7}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;transition:background .68s cubic-bezier(.22,.61,.36,1),color .52s ease}body.night-mode{background-color:#050914;background-image:url(https://wallpapercave.com/wp/wp9116743.jpg);background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-serif);font-weight:500;color:var(--text)}button{font-family:var(--font-sans);cursor:pointer}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.promo-strip{background:linear-gradient(90deg,var(--accent) 0%,var(--accent-soft) 100%);color:#fff;text-align:center;padding:.5rem 1rem;font-size:.8rem;font-weight:500;letter-spacing:.02em}.app{position:relative;max-width:960px;margin:0 auto;padding:2rem 1.5rem;transition:color .32s ease}.app:before{content:"";position:fixed;top:-12%;right:-12%;bottom:-12%;left:-12%;pointer-events:none;z-index:-1;opacity:0;background:radial-gradient(40% 35% at 20% 15%,rgba(56,189,248,.2),transparent 70%),radial-gradient(45% 40% at 85% 12%,rgba(99,102,241,.22),transparent 72%),radial-gradient(55% 45% at 50% 85%,rgba(16,185,129,.12),transparent 78%);transform:translateY(6px) scale(1.01);transition:opacity .82s cubic-bezier(.22,.61,.36,1),transform .82s cubic-bezier(.22,.61,.36,1);will-change:opacity,transform}.app:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;opacity:0;background:radial-gradient(circle at 12% 22%,rgba(255,255,255,.92) 0 1px,transparent 1.8px),radial-gradient(circle at 24% 14%,rgba(255,255,255,.78) 0 1.2px,transparent 2px),radial-gradient(circle at 36% 28%,rgba(255,255,255,.86) 0 1px,transparent 1.8px),radial-gradient(circle at 52% 16%,rgba(255,255,255,.9) 0 1.1px,transparent 2px),radial-gradient(circle at 66% 24%,rgba(255,255,255,.75) 0 1.2px,transparent 2px),radial-gradient(circle at 78% 12%,rgba(255,255,255,.92) 0 1px,transparent 1.9px),radial-gradient(circle at 88% 30%,rgba(255,255,255,.82) 0 1.1px,transparent 2px),radial-gradient(circle at 18% 42%,rgba(255,255,255,.8) 0 1px,transparent 1.8px),radial-gradient(circle at 42% 48%,rgba(255,255,255,.9) 0 1.2px,transparent 2px),radial-gradient(circle at 61% 40%,rgba(255,255,255,.76) 0 1px,transparent 1.8px),radial-gradient(circle at 83% 50%,rgba(255,255,255,.88) 0 1.1px,transparent 2px),radial-gradient(circle at 72% 66%,rgba(255,255,255,.84) 0 1px,transparent 1.8px),radial-gradient(circle at 28% 72%,rgba(255,255,255,.8) 0 1.1px,transparent 2px),radial-gradient(circle at 50% 82%,rgba(255,255,255,.9) 0 1.2px,transparent 2px),radial-gradient(circle at 86% 78%,rgba(255,255,255,.75) 0 1px,transparent 1.8px);transition:opacity .9s ease;will-change:opacity,filter}.app.app--night{--bg: #0b1220;--bg-warm: #111827;--surface: #0f172a;--surface-soft: #111a2f;--border: #263149;--border-soft: #1f2a3f;--text: #e5e7eb;--text-soft: #cbd5e1;--muted: #94a3b8;--shadow-soft: 0 2px 14px rgba(0, 0, 0, .45);--shadow-card: 0 6px 28px rgba(0, 0, 0, .5);animation:night-enter .82s cubic-bezier(.22,.61,.36,1)}.app.app--night:before{opacity:1;transform:translateY(0) scale(1);animation:night-ambient 14s ease-in-out infinite alternate}.app.app--night:after{opacity:.48;animation:night-stars 8.5s ease-in-out infinite alternate}.app.app--night .header-nav-link{color:#93c5fd}.app.app--night .header-nav-link:hover{color:#bfdbfe}.app.app--night .btn-logout{color:#cbd5e1;border-color:#334155}.app.app--night .btn-logout:hover{background:#1e293b;color:#f8fafc}.app.app--night .tagline{color:#94a3b8}.app.app--night .hero,.app.app--night .card,.app.app--night .promo-strip,.app.app--night .session-restore-bar,.app.app--night input,.app.app--night select,.app.app--night button{animation:night-surface-rise .62s cubic-bezier(.22,.61,.36,1)}.app.app--night .hero,.app.app--night .template-step-card,.app.app--night .card{background:#0a112252;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-color:#94a3b847}.app.app--night .hero{box-shadow:0 8px 30px #02061747}@keyframes night-enter{0%{filter:brightness(1.03)}to{filter:brightness(1)}}@keyframes night-surface-rise{0%{opacity:.88;transform:translateY(3px) scale(.998)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes night-ambient{0%{filter:saturate(1) brightness(1);transform:translateY(0) scale(1)}to{filter:saturate(1.08) brightness(1.04);transform:translateY(-10px) scale(1.015)}}@keyframes night-stars{0%{opacity:.4;filter:brightness(.98)}50%{opacity:.52;filter:brightness(1.04)}to{opacity:.46;filter:brightness(1)}}.header{position:relative;text-align:center;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-soft)}.btn-logout{position:absolute;top:0;right:0;padding:.4rem .75rem;font-size:.85rem;color:var(--text-soft);background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer}.btn-logout:hover{background:var(--bg-warm);color:var(--text)}.session-restore-bar{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;padding:.35rem .75rem;margin-bottom:.5rem;background:var(--bg-warm);border:none;border-radius:6px;font-size:.8rem;color:var(--text-soft)}.session-restore-bar span{margin-right:0}.btn-restore-session{padding:.2rem .5rem;font-size:.8rem;font-weight:500;color:var(--accent);background:transparent;border:1px solid var(--border);border-radius:4px;cursor:pointer}.btn-restore-session:hover{background:var(--surface-soft);border-color:var(--accent-soft)}.btn-dismiss-session{padding:.2rem .5rem;font-size:.8rem;color:var(--text-muted, rgba(255, 255, 255, .5));background:transparent;border:none;border-radius:4px;cursor:pointer}.btn-dismiss-session:hover{color:var(--text-soft)}.header h1{font-size:2.5rem;letter-spacing:.12em;margin:0;color:var(--text)}.tagline{color:var(--muted);font-size:.95rem;margin:.5rem 0 0;font-weight:400}.header-nav{display:flex;gap:1rem;margin-top:.75rem}.header-nav-link{color:var(--accent);font-weight:500;text-decoration:none}.variations-card{display:flex;flex-direction:column;gap:1rem}.variations-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.variations-controls label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--text-soft)}.variations-controls input[type=text],.variations-controls input[type=file],.variations-controls select{border:1px solid var(--border);border-radius:8px;padding:.5rem .6rem;background:var(--surface)}.variations-winning-preview{width:min(220px,100%);border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface-soft)}.variations-winning-preview img{width:100%;display:block;object-fit:cover}.variations-actions{display:flex;align-items:center;gap:.75rem}.header-nav-link:hover{color:var(--accent-hover);text-decoration:underline}.login-page .login-card{max-width:380px;margin:2rem auto 3rem}.login-card h2{margin:0 0 .35rem;font-size:1.5rem}.login-hint{color:var(--muted);font-size:.9rem;margin:0 0 1.25rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-form label{display:flex;flex-direction:column;gap:.35rem}.login-form .label-text{font-size:.9rem;font-weight:500;color:var(--text-soft)}.login-form input{padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;background:var(--surface);color:var(--text)}.login-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-focus, 100, 116, 139),.2)}.login-error{color:var(--error);font-size:.9rem;margin:0}.btn-login{padding:.75rem 1.25rem;margin-top:.5rem;background:var(--accent);color:#fff;border:none;border-radius:8px;font-weight:500;font-size:1rem;cursor:pointer}.btn-login:hover:not(:disabled){background:var(--accent-hover)}.btn-login:disabled{opacity:.7;cursor:not-allowed}.hero{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.75rem;margin-bottom:2rem;box-shadow:var(--shadow-soft)}.hero-desc{color:var(--text-soft);font-size:.95rem;margin:0 0 1.25rem;padding-right:88px;line-height:1.6}.studio-mode-switch{display:inline-flex;align-items:center;margin-bottom:1rem}.studio-mode-switch--top-right{position:absolute;top:1.2rem;right:1.25rem;margin-bottom:0;transform:scale(.86);transform-origin:top right}.studio-switch{position:relative;display:inline-block;width:60px;height:34px}.studio-switch #studio-mode-input{opacity:0;width:0;height:0}.studio-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:#2196f3;transition:.4s;z-index:0;overflow:hidden}.sun-moon{position:absolute;height:26px;width:26px;left:4px;bottom:4px;background-color:#ff0;transition:.4s}.studio-switch #studio-mode-input:checked+.studio-slider{background-color:#000}.studio-switch #studio-mode-input:focus+.studio-slider{box-shadow:0 0 1px #2196f3}.studio-switch #studio-mode-input:checked+.studio-slider .sun-moon{transform:translate(26px);background-color:#fff;animation:rotate-center .6s ease-in-out both}.moon-dot{opacity:0;transition:.4s;fill:gray}.studio-switch #studio-mode-input:checked+.studio-slider .sun-moon .moon-dot{opacity:1}.studio-slider.round{border-radius:34px}.studio-slider.round .sun-moon{border-radius:50%}#moon-dot-1{left:10px;top:3px;position:absolute;width:6px;height:6px;z-index:4}#moon-dot-2{left:2px;top:10px;position:absolute;width:10px;height:10px;z-index:4}#moon-dot-3{left:16px;top:18px;position:absolute;width:3px;height:3px;z-index:4}#light-ray-1{left:-8px;top:-8px;position:absolute;width:43px;height:43px;z-index:-1;fill:#fff;opacity:10%}#light-ray-2{left:-50%;top:-50%;position:absolute;width:55px;height:55px;z-index:-1;fill:#fff;opacity:10%}#light-ray-3{left:-18px;top:-18px;position:absolute;width:60px;height:60px;z-index:-1;fill:#fff;opacity:10%}.cloud-light{position:absolute;fill:#eee;animation-name:cloud-move;animation-duration:6s;animation-iteration-count:infinite}.cloud-dark{position:absolute;fill:#ccc;animation-name:cloud-move;animation-duration:6s;animation-iteration-count:infinite;animation-delay:1s}#cloud-1{left:30px;top:15px;width:40px}#cloud-2{left:44px;top:10px;width:20px}#cloud-3{left:18px;top:24px;width:30px}#cloud-4{left:36px;top:18px;width:40px}#cloud-5{left:48px;top:14px;width:20px}#cloud-6{left:22px;top:26px;width:30px}@keyframes cloud-move{0%{transform:translate(0)}40%{transform:translate(4px)}80%{transform:translate(-4px)}to{transform:translate(0)}}.stars{transform:translateY(-32px);opacity:0;transition:.4s}.star{fill:#fff;position:absolute;transition:.4s;animation-name:star-twinkle;animation-duration:2s;animation-iteration-count:infinite}.studio-switch #studio-mode-input:checked+.studio-slider .stars{transform:translateY(0);opacity:1}#star-1{width:20px;top:2px;left:3px;animation-delay:.3s}#star-2{width:6px;top:16px;left:3px}#star-3{width:12px;top:20px;left:10px;animation-delay:.6s}#star-4{width:18px;top:0;left:18px;animation-delay:1.3s}@keyframes star-twinkle{0%{transform:scale(1)}40%{transform:scale(1.2)}80%{transform:scale(.8)}to{transform:scale(1)}}@keyframes rotate-center{0%{transform:translate(26px) rotate(0)}to{transform:translate(26px) rotate(360deg)}}.input-row{display:flex;gap:.75rem;flex-wrap:wrap}.creative-flow-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.creative-flow-label{font-size:.9rem;color:var(--text-soft);white-space:nowrap}.creative-flow-select{padding:.6rem .85rem;background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9rem;cursor:pointer;min-width:260px}.creative-flow-select:hover:not(:disabled){border-color:var(--accent)}.creative-flow-select:disabled{opacity:.7;cursor:not-allowed}.template-mode-panel{margin-top:1rem;padding:0;border:0;border-radius:0;background:transparent}.template-step-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.9rem;margin-top:.8rem}.template-step-head{display:flex;gap:.65rem;align-items:flex-start}.template-step-head h3{margin:0;font-size:.95rem;font-family:var(--font-sans);font-weight:600}.template-step-head p{margin:.2rem 0 0;color:var(--text-soft);font-size:.8rem;font-family:var(--font-sans)}.template-step-badge{width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-hover));flex-shrink:0}.template-examples-grid{margin-top:.75rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.template-selection-actions{grid-column:1 / -1;display:flex;gap:.5rem}.template-example-card{border:1px solid var(--border);border-radius:10px;padding:.35rem;background:var(--surface);display:flex;flex-direction:column;gap:.35rem;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.template-example-card:hover:not(:disabled){transform:translateY(-2px);border-color:var(--accent);box-shadow:0 10px 24px #00000024}.template-example-card--active{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-focus, 100, 116, 139),.3)}.template-example-card:disabled{opacity:.7;cursor:not-allowed}.template-example-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.template-example-name{font-size:.74rem;color:var(--text-soft);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 .15rem .2rem}.template-upload-row{justify-content:space-between}.template-file-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.55rem .9rem;border-radius:8px;border:1px solid transparent;background:var(--accent);color:#fff;font-weight:600;font-size:.84rem;cursor:pointer}.template-file-btn--secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.template-file-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.template-controls-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem 1rem;align-items:end}.template-controls-row .creative-flow-row{margin-top:.4rem}.template-controls-row .creative-flow-select{min-width:130px}.template-control-item{display:flex;align-items:center;gap:.65rem}.template-control-value{font-size:.85rem;color:var(--text);background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;padding:.25rem .55rem}.template-preview-row{margin-top:.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.template-generate-row{margin-top:.9rem;display:flex;justify-content:flex-end}.template-summary-row{margin-top:.65rem;display:flex;gap:.5rem;flex-wrap:wrap}.template-summary-chip{font-size:.78rem;color:var(--text-soft);background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;padding:.28rem .6rem}.template-results-card{overflow:hidden}.template-results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,320px));gap:1rem;justify-content:start}.template-result-item{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface)}.template-result-media{background:var(--surface-soft);min-height:280px;max-height:420px;display:flex;align-items:center;justify-content:center;padding:.5rem}.template-result-img{max-width:100%;max-height:400px;width:auto;height:auto;display:block;border-radius:8px}.template-result-meta{padding:.55rem .75rem;border-top:1px solid var(--border-soft)}.template-result-id{font-size:.82rem;color:var(--text-soft);font-weight:600}.template-preview-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.5rem}.template-preview-label{display:inline-block;margin-bottom:.35rem;font-size:.76rem;color:var(--text-soft)}.template-preview-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.target-audience-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.target-audience-label{font-size:.9rem;color:var(--text-soft);white-space:nowrap}.target-audience-multiselect{position:relative;min-width:220px;max-width:100%}.target-audience-trigger{width:100%;padding:.6rem .85rem;background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9rem;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}.target-audience-trigger:hover:not(:disabled){border-color:var(--accent)}.target-audience-trigger:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-focus, 100, 116, 139),.2)}.target-audience-trigger:disabled{opacity:.7;cursor:not-allowed}.target-audience-dropdown{position:absolute;top:100%;left:0;margin-top:4px;min-width:320px;max-width:90vw;max-height:360px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #00000026;z-index:100;display:flex;flex-direction:column;overflow:hidden}.target-audience-actions{display:flex;gap:.5rem;padding:.5rem .75rem;border-bottom:1px solid var(--border);flex-shrink:0}.target-audience-action-btn{padding:.35rem .6rem;font-size:.8rem;background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;color:var(--text-soft);cursor:pointer}.target-audience-action-btn:hover{color:var(--text);border-color:var(--accent)}.target-audience-list{overflow-y:auto;padding:.5rem 0;max-height:300px}.target-audience-option{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;font-size:.875rem;color:var(--text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.target-audience-option:hover{background:var(--surface-soft)}.target-audience-option input{flex-shrink:0;accent-color:var(--accent)}.url-input{flex:1;min-width:200px;padding:.85rem 1rem;background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.95rem}.url-input::placeholder{color:var(--muted)}.url-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-focus, 100, 116, 139),.2)}.btn-run{padding:.85rem 1.75rem;background:var(--accent);color:#fff;border:none;border-radius:8px;font-weight:500;letter-spacing:.02em}.btn-run:hover:not(:disabled){background:var(--accent-hover)}.btn-run:disabled{opacity:.7;cursor:not-allowed}.error{color:var(--error);font-size:.9rem;margin:.75rem 0 0}.loading{text-align:center;padding:1.25rem 1rem;color:var(--muted)}.loading-step{font-weight:500;color:var(--text);font-size:.95rem;margin:.35rem 0 .15rem}.loading-hint{font-size:.8rem;margin-top:.25rem;color:var(--text-soft)}.spinner{width:28px;height:28px;margin:0 auto .5rem;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.results{display:flex;flex-direction:column;gap:2rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-soft)}.card h2{font-size:1.5rem;margin:0 0 1rem;padding-bottom:.6rem;border-bottom:1px solid var(--border-soft);color:var(--text)}.product-grid{display:grid;grid-template-columns:220px 1fr;gap:1.75rem;align-items:start}@media(max-width:600px){.product-grid{grid-template-columns:1fr}}.product-gallery{display:flex;flex-direction:column;gap:.5rem}.product-gallery--multi{flex-direction:row;flex-wrap:wrap;gap:.5rem}.product-gallery--multi .product-img-wrap{width:70px;height:70px;flex-shrink:0}.product-gallery--multi .product-img-wrap .product-img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;cursor:pointer}.product-gallery--many .product-img-wrap{width:56px;height:56px}.product-gallery--many .product-img-wrap .product-img{width:100%;height:100%}.product-img-wrap{display:inline-block;position:relative;padding:0;border:2px solid transparent;border-radius:12px;background:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.product-gallery:not(.product-gallery--multi) .product-img-wrap{width:100%}.product-img-wrap:hover{border-color:var(--border)}.product-img-wrap--selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.product-img-wrap .product-img{display:block}.product-img-badge{position:absolute;bottom:4px;left:4px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--surface);background:var(--accent);padding:2px 6px;border-radius:6px}.product-gallery-note{font-size:.75rem;color:var(--muted);margin:0}.product-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;border:1px solid var(--border-soft)}.product-meta h3{font-size:1.35rem;margin:0 0 .4rem;color:var(--text)}.product-price{color:var(--accent);font-weight:600;font-size:1.1rem;margin:0 0 .35rem}.product-category{color:var(--muted);font-size:.9rem;margin:0 0 .75rem}.product-desc{font-size:.95rem;color:var(--text-soft);line-height:1.55}.analysis-grid{display:grid;gap:1.25rem}.analysis-block{padding:1rem 0;border-bottom:1px solid var(--border-soft)}.analysis-block:last-child{border-bottom:none}.analysis-block h4{font-family:var(--font-sans);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin:0 0 .5rem}.analysis-block p,.analysis-block ul{margin:0;font-size:.95rem;color:var(--text-soft)}.analysis-block ul{padding-left:1.25rem}.analysis-block li{margin-bottom:.4rem}.pain-points,.ad-angles{margin-top:.5rem}.ad-angles li{margin-bottom:.6rem}.analysis-card--collapsed .analysis-preview{margin-top:.5rem}.analysis-preview-text{margin:0 0 .5rem;font-size:.95rem;color:var(--text-soft);line-height:1.5}.analysis-preview-meta{margin:0 0 .75rem;font-size:.8rem;color:var(--text-muted, rgba(255, 255, 255, .5))}.analysis-expand-btn,.analysis-collapse-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid var(--accent);color:var(--accent);font-size:.85rem;padding:.4rem .75rem;border-radius:6px;cursor:pointer;font-family:inherit;transition:background .2s,color .2s}.analysis-expand-btn:hover,.analysis-collapse-btn:hover{background:var(--accent);color:var(--bg)}.analysis-collapse-btn{margin-top:1rem;display:block}.creatives-flow-badge{font-size:.85rem;color:var(--accent);margin:-.25rem 0 .5rem}.creatives-hint{font-size:.9rem;color:var(--text-soft);margin:0 0 1rem}.reference-image-section{margin-top:.5rem;margin-bottom:1rem;padding:1rem;background:var(--bg-warm);border-radius:8px;border:1px solid var(--border-soft)}.reference-image-section h4{font-size:.9rem;font-weight:600;margin:0 0 .35rem;color:var(--text)}.reference-hint{font-size:.8rem;color:var(--text-soft);margin:0 0 .75rem}.reference-image-row{display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap}.reference-thumb{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.reference-thumb-placeholder{background:var(--border-soft);display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--text-soft)}.reference-controls{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:200px}.reference-url-input{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.85rem}.reference-upload-btn{display:inline-flex;align-items:center;padding:.4rem .75rem;font-size:.85rem;color:var(--accent);cursor:pointer}.reference-upload-btn span{text-decoration:underline}.btn-reference-use-product{padding:.4rem .75rem;font-size:.85rem;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);cursor:pointer;align-self:flex-start}.btn-reference-use-product:hover{background:var(--bg-warm)}.reference-error{margin-top:.5rem;font-size:.85rem}.generate-ads-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem;background:var(--bg-warm);border-radius:8px;border:1px solid var(--border-soft)}.toolbar-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;color:var(--text)}.toolbar-select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.9rem}.btn-generate-ads{padding:.6rem 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:8px;font-weight:500;font-size:.9rem}.btn-generate-ads:hover:not(:disabled){background:var(--accent-hover)}.btn-generate-ads:disabled{opacity:.6;cursor:not-allowed}.creatives-select-actions{display:flex;gap:.5rem;margin-bottom:.75rem}.btn-select-all,.btn-deselect-all{padding:.35rem .65rem;font-size:.85rem;color:var(--accent);background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer}.btn-select-all:hover:not(:disabled),.btn-deselect-all:hover:not(:disabled){background:var(--accent-light);border-color:var(--accent)}.btn-select-all:disabled,.btn-deselect-all:disabled{opacity:.5;cursor:not-allowed}.creatives-list{display:flex;flex-direction:column;gap:.6rem}.creative-item{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface)}.creative-item.product{border-left:4px solid var(--accent)}.creative-item.no-product{border-left:4px solid var(--muted)}.creative-checkbox{width:1.1rem;height:1.1rem;flex-shrink:0;cursor:pointer;accent-color:var(--accent)}.creative-header{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.85rem 1rem;cursor:pointer;background:var(--surface-soft)}.creative-header:hover{background:var(--accent-light)}.creative-id{font-size:.8rem;color:var(--muted)}.creative-concept{font-weight:500;color:var(--text)}.creative-type,.creative-category{font-size:.78rem;color:var(--muted);padding:.25rem .5rem;background:var(--bg-warm);border-radius:6px}.creative-platform{margin-left:auto;font-size:.85rem;color:var(--accent);font-weight:500}.creative-detail{padding:1.25rem;background:var(--surface);border-top:1px solid var(--border-soft)}.creative-detail h5{font-family:var(--font-sans);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .5rem}.copy-block-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.copy-block-header h5{margin:0}.btn-copy-copy{padding:.35rem .6rem;font-size:.8rem;font-weight:500;color:var(--accent);background:transparent;border:1px solid var(--accent);border-radius:6px;cursor:pointer}.btn-copy-copy:hover{background:var(--accent-light)}.copy-block .headline-serif{font-family:var(--font-serif);font-size:1.15rem;letter-spacing:.04em;margin:0 0 .3rem;color:var(--text)}.copy-block .headline-script{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--accent);margin:0 0 .5rem}.copy-block .body-copy{font-size:.95rem;margin:0 0 .5rem;color:var(--text-soft)}.price-copy{font-weight:600;margin:0 0 .35rem;color:var(--accent)}.price-final{text-decoration:none!important}.price-original{margin-right:.35em}.price-original-strikethrough{text-decoration:line-through}.price-original-slant{position:relative;display:inline-block}.price-original-slant:after{content:"";position:absolute;left:-2px;right:-2px;top:50%;height:1px;background:currentColor;transform:rotate(-10deg);transform-origin:center;opacity:.9}.price-original-faded{font-size:.85em;opacity:.6;font-weight:500}.price-original-small{font-size:.88em;text-decoration:line-through}.price-original-double{text-decoration:line-through;text-decoration-style:double}.cta-copy{font-size:.9rem;color:var(--accent);font-weight:500}.cta-position-badge{font-size:.8rem;color:var(--muted);font-weight:400}.prompt-block{margin-top:1rem}.prompt-block p,.prompt-block-hint{font-size:.85rem;color:var(--muted);line-height:1.5;margin:0 0 .5rem}.prompt-textarea{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:.9rem;line-height:1.5;resize:vertical;min-height:6rem}.prompt-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-focus, 100, 116, 139),.2)}.prompt-textarea::placeholder{color:var(--muted)}.prompt-textarea-readonly{resize:none;cursor:default;background:var(--bg-warm, var(--bg))}.btn-open-edit-json{margin-top:1rem;padding:.4rem .75rem;font-size:.85rem;font-weight:500;color:var(--accent);background:transparent;border:1px solid var(--accent);border-radius:6px;cursor:pointer}.btn-open-edit-json:hover{background:var(--accent-light)}.edit-json-block{margin-top:1rem}.edit-json-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.edit-json-block .edit-json-header h5{margin:0;font-size:.9rem}.btn-close-edit-json{padding:.25rem .5rem;font-size:.8rem;color:var(--text-soft);background:transparent;border:1px solid var(--border);border-radius:4px;cursor:pointer}.btn-close-edit-json:hover{background:var(--bg-warm);color:var(--text)}.edit-json-textarea{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--text);font-family:ui-monospace,monospace;font-size:.8rem;line-height:1.45;resize:vertical;min-height:200px}.edit-json-actions{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.btn-apply-json{padding:.4rem .75rem;font-size:.85rem;font-weight:500;color:var(--accent);background:transparent;border:1px solid var(--accent);border-radius:6px;cursor:pointer}.btn-apply-json:hover{background:var(--accent-light)}.edit-json-error{font-size:.85rem;color:var(--error)}.layout-notes{margin-top:.75rem;font-size:.88rem;color:var(--muted)}.generated-ads-section{margin-top:2rem;margin-bottom:2rem;padding-top:1.5rem;border-top:1px solid var(--border-soft)}.creatives-card>.generated-ads-section{margin-top:1rem;margin-bottom:2rem;padding-top:0;border-top:none}.generated-ads-section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.generated-ads-section-header h3{margin:0}.generated-ads-section h3{font-family:var(--font-serif);font-size:1.25rem;color:var(--text)}.generated-ads-download-actions{display:flex;align-items:center;gap:.75rem}.btn-download-selected,.btn-download-zip{padding:.45rem .85rem;font-size:.85rem;font-weight:500;color:var(--accent);background:transparent;border:1px solid var(--accent);border-radius:6px;cursor:pointer}.btn-download-selected:hover:not(:disabled),.btn-download-zip:hover:not(:disabled){background:var(--accent-light)}.btn-download-selected:disabled,.btn-download-zip:disabled{opacity:.6;cursor:not-allowed}.btn-download-selected:disabled{border-color:var(--border);color:var(--muted)}.btn-canva-connect{padding:.45rem .85rem;font-size:.85rem;font-weight:500;color:#fff;background:linear-gradient(135deg,#7c3aed,#a855f7);border:none;border-radius:6px;cursor:pointer}.btn-canva-connect:hover{opacity:.95;filter:brightness(1.05)}.fb-ad-canva-export{padding:.5rem 1rem;border-top:1px solid var(--border)}.btn-export-canva{padding:.35rem .65rem;font-size:.8rem;font-weight:500;color:#7c3aed;background:transparent;border:1px solid rgba(124,58,237,.5);border-radius:6px;cursor:pointer}.btn-export-canva:hover:not(:disabled){background:#7c3aed1a}.btn-export-canva:disabled{opacity:.6;cursor:not-allowed}.generated-ads-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.generated-ad-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-soft)}.generated-ad-card.fb-ad-style{background:var(--surface)}.fb-ad-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border-soft)}.fb-ad-brand{display:flex;align-items:center;gap:.75rem}.fb-ad-brand-logo{width:40px;height:40px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.1rem;flex-shrink:0}.fb-ad-brand-info{display:flex;flex-direction:column;gap:.1rem}.fb-ad-brand-name{margin:0;font-size:.95rem;font-weight:600;color:var(--text);font-family:var(--font-sans)}.fb-ad-sponsored{margin:0;font-size:.8rem;color:var(--muted)}.fb-ad-select-checkbox{display:flex;align-items:center;cursor:pointer}.fb-ad-select-checkbox input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--accent);cursor:pointer}.fb-ad-copy{padding:1rem;border-bottom:1px solid var(--border-soft)}.fb-ad-text{margin:0;font-size:.9rem;line-height:1.5;color:var(--text)}.fb-ad-img-wrap{position:relative;width:100%;overflow:hidden;background:var(--border-soft);cursor:pointer}.fb-ad-img{width:100%;height:auto;display:block;vertical-align:middle;transition:transform .2s ease}.fb-ad-img-wrap:hover .fb-ad-img{transform:scale(1.02)}.fb-ad-img-overlay{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:linear-gradient(to top,#000000b3,#0000)}.fb-ad-overlay-text{margin:0;color:#fff;font-size:.9rem;font-weight:500}.fb-ad-cta{padding:1rem;border-bottom:1px solid var(--border-soft);display:flex;justify-content:center}.fb-ad-cta-btn{width:100%;padding:.65rem 1.25rem;background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;color:var(--text);font-weight:500;font-size:.9rem;cursor:pointer;transition:background .2s ease}.fb-ad-cta-btn:hover{background:var(--border-soft)}.fb-ad-metadata{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.fb-ad-status{display:flex;align-items:center}.fb-ad-status-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:500;padding:.35rem .65rem;border-radius:6px;background:var(--surface-soft);border:1px solid var(--border)}.fb-ad-status-badge.active{color:var(--success);background:#5a7d5c1a;border-color:#5a7d5c33}.fb-ad-status-badge svg{flex-shrink:0}.fb-ad-details{display:flex;flex-direction:column;gap:.5rem;padding:.5rem 0}.fb-ad-detail-row{display:flex;justify-content:space-between;align-items:center;margin:0;font-size:.85rem}.fb-ad-detail-label{color:var(--muted);font-size:.85rem}.fb-ad-detail-value{color:var(--text);font-weight:500}.fb-ad-platforms{display:flex;align-items:center;justify-content:space-between;margin-top:.25rem}.fb-ad-platform-icons{display:flex;align-items:center;gap:.5rem}.fb-ad-platform-icons svg{flex-shrink:0}.fb-ad-platform-text{font-size:.8rem;color:var(--text-soft);padding:.2rem .4rem;background:var(--border-soft);border-radius:4px}.fb-ad-versions{display:flex;align-items:center;gap:.4rem;margin:.25rem 0 0;font-size:.8rem;color:var(--text-soft)}.fb-ad-versions svg{flex-shrink:0;color:var(--muted)}.fb-ad-details-btn{width:100%;padding:.65rem;background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.fb-ad-details-btn:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.generated-ad-error{padding:1rem;font-size:.9rem;color:var(--error)}.generated-ad-error .btn-retry-single{margin-top:.5rem;padding:.35rem .75rem;font-size:.85rem;background:var(--accent, #2563eb);color:#fff;border:none;border-radius:6px;cursor:pointer}.generated-ad-error .btn-retry-single:hover:not(:disabled){opacity:.9}.generated-ad-error .btn-retry-single:disabled{opacity:.6;cursor:not-allowed}.gallery-card{margin-bottom:2rem}.gallery-card h2{margin:0 0 .35rem}.gallery-desc{color:var(--muted);font-size:.95rem;margin:0 0 1.25rem}.gallery-loading{color:var(--text-soft);margin:1rem 0}.gallery-empty{text-align:center;padding:2rem;color:var(--text-soft)}.gallery-empty p{margin:0 0 .5rem}.btn-gallery-to-studio{display:inline-block;margin:1rem 0;padding:.6rem 1rem;background:var(--accent);color:#fff;border-radius:8px;text-decoration:none;font-weight:500}.btn-gallery-to-studio:hover{background:var(--accent-hover)}.gallery-empty-hint{font-size:.9rem;color:var(--muted)}.gallery-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.25rem}.gallery-select-all{display:flex;align-items:center;gap:.35rem;font-size:.9rem;cursor:pointer}.btn-gallery-delete-selected{padding:.4rem .75rem;font-size:.9rem;color:var(--error);background:transparent;border:1px solid var(--error);border-radius:6px;cursor:pointer}.btn-gallery-delete-selected:hover:not(:disabled){background:#b854501a}.btn-gallery-delete-selected:disabled{opacity:.5;cursor:not-allowed}.gallery-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.gallery-pagination-info{font-size:.9rem;color:var(--text-soft)}.btn-gallery-page{padding:.5rem 1rem;font-size:.9rem;border-radius:8px;border:1px solid var(--border);background:var(--surface-soft);color:var(--text);cursor:pointer}.btn-gallery-page:hover:not(:disabled){background:var(--border-soft)}.btn-gallery-page:disabled{opacity:.5;cursor:not-allowed}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}.gallery-item{background:var(--surface-soft);border:1px solid var(--border);border-radius:10px;overflow:hidden}.gallery-item-img-wrap{position:relative;background:var(--border-soft)}.gallery-item-img{width:100%;height:auto;display:block;vertical-align:middle}.gallery-item-placeholder{width:100%;min-height:140px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.9rem}.gallery-item-checkbox{position:absolute;top:.5rem;left:.5rem;display:flex;align-items:center;gap:.35rem;font-size:.8rem;color:#fff;background:#00000080;padding:.25rem .5rem;border-radius:4px;cursor:pointer}.gallery-item-footer{padding:.75rem}.gallery-item-concept{font-size:.9rem;font-weight:500;margin:0 0 .25rem}.gallery-item-product{font-size:.8rem;color:var(--muted);margin:0 0 .25rem}.gallery-item-date{font-size:.8rem;color:var(--text-soft);margin:0 0 .5rem}.gallery-item-actions{display:flex;flex-wrap:wrap;gap:.5rem}.btn-gallery-correct,.btn-gallery-download-one,.btn-gallery-delete-one{padding:.35rem .6rem;font-size:.8rem;border-radius:6px;cursor:pointer}.btn-gallery-correct{background:var(--accent-light);color:var(--accent);border:1px solid var(--accent-soft)}.btn-gallery-correct:hover{background:var(--accent-soft);color:#fff}.btn-gallery-download-one{background:var(--accent);color:#fff;border:none}.btn-gallery-download-one:hover:not(:disabled){background:var(--accent-hover)}.btn-gallery-delete-one{background:transparent;color:var(--error);border:1px solid var(--error)}.btn-gallery-delete-one:hover:not(:disabled){background:#b854501a}.btn-gallery-download-one:disabled,.btn-gallery-delete-one:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9000;padding:1rem}.modal-content{background:var(--surface);border-radius:12px;box-shadow:var(--shadow-card);max-width:520px;width:100%;max-height:90vh;overflow:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.modal-header h3{margin:0;font-family:var(--font-serif);font-size:1.25rem}.modal-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--muted);padding:.25rem}.modal-close:hover{color:var(--text)}.modal-body,.modal-content form{padding:1.25rem}.modal-loading{text-align:center;padding:2rem 1.5rem}.modal-loader-spinner{width:40px;height:40px;margin:0 auto 1rem;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.modal-loader-text{margin:0;font-weight:500;color:var(--text)}.modal-loader-hint{margin:.35rem 0 0;font-size:.875rem;color:var(--muted)}.modal-desc{color:var(--text-soft);margin:0 0 1rem;font-size:.95rem}.modal-field{display:block;margin-bottom:1rem}.modal-field span{display:block;margin-bottom:.35rem;font-size:.9rem;color:var(--text-soft)}.modal-field textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:8px;font-family:inherit;font-size:.95rem}.modal-checkbox{display:flex;align-items:center;gap:.5rem}.modal-checkbox input{margin:0}.modal-actions{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}.modal-preview-wrap{margin:1rem 0}.modal-preview-wrap img{max-width:100%;border-radius:8px;border:1px solid var(--border)}.modal-compare-title{margin:0 0 .75rem;font-weight:600;color:var(--text)}.modal-compare{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1rem 0;align-items:start}.modal-compare>div,.modal-compare-item{text-align:center;display:flex;flex-direction:column;align-items:center}.modal-compare span,.modal-compare-label{display:block;font-size:.9rem;font-weight:600;color:var(--text-soft);margin-bottom:.5rem}.modal-compare img{width:100%;max-width:240px;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.modal-muted{font-size:.85rem;color:var(--muted);margin:.5rem 0 0}.btn-primary{background:var(--accent);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:500}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:transparent;color:var(--text-soft);border:1px solid var(--border);padding:.5rem 1rem;border-radius:8px;cursor:pointer}.btn-secondary:hover{background:var(--surface-soft)}.image-lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:9999;cursor:pointer;padding:1rem}.image-lightbox-img{max-width:95vw;max-height:95vh;object-fit:contain;cursor:default;pointer-events:none}.img-expandable{cursor:pointer}.footer{text-align:center;padding:2.5rem 0;color:var(--muted);font-size:.85rem;border-top:1px solid var(--border-soft)}.footer-canva-link,.gallery-canva-link{margin:.5rem 0 0;font-size:.7rem;opacity:.6}.link-canva-reconnect{background:none;border:none;padding:0;font:inherit;font-size:inherit;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link-canva-reconnect:hover{color:var(--text);opacity:.9}
