.landing{--lp-ink: #FFFFFF;--lp-muted: rgba(255, 255, 255, .78);--lp-line: rgba(255, 255, 255, .22);background:#1a1a1a;color:var(--lp-ink);font-family:var(--font-display, system-ui, -apple-system, sans-serif);display:flex;flex-direction:column;height:100dvh;overflow:hidden;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);box-sizing:border-box}.lp-nav{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;gap:1rem;padding:calc(env(safe-area-inset-top,0px) + .85rem) clamp(1.25rem,5vw,4rem) .85rem;max-width:1180px;margin:0 auto;box-sizing:border-box}.lp-brand{font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--lp-ink)}.lp-brand-dot{display:none}.lp-lang{position:relative;margin-left:auto}.lp-lang-btn{display:inline-flex;align-items:center;gap:.35rem;background:none;border:none;font:inherit;font-size:.85rem;color:var(--lp-muted);cursor:pointer;padding:.4rem .6rem;border-radius:8px}.lp-lang-btn{background:#ffffff24;border:1px solid var(--lp-line);border-radius:999px;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.lp-lang-btn:hover{background:#ffffff3d}.lp-lang-menu{position:absolute;right:0;top:130%;background:#fff;border:1px solid rgba(18,18,18,.1);border-radius:14px;box-shadow:0 10px 30px -10px #00000059;list-style:none;padding:.35rem;z-index:20;min-width:140px}.lp-lang-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .6rem;background:none;border:none;border-radius:8px;font:inherit;font-size:.85rem;text-align:left;cursor:pointer;color:var(--lp-ink)}.lp-lang-menu button:hover{background:#f4f3f0}.lp-hero{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.lp-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}.lp-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#14100c00 35%,#14100c8c 60%,#14100ce6)}.lp-copy{position:relative;width:100%;max-width:560px;margin:0 auto;padding:0 clamp(1.25rem,5vw,2rem) clamp(1.25rem,4vw,2rem)}.lp-headline{font-family:var(--font-display);font-size:clamp(2rem,8.5vw,3rem);font-weight:700;line-height:1.06;letter-spacing:-.035em;color:var(--lp-ink)}.lp-tagline{margin-top:.75rem;font-size:clamp(.9rem,2.4vw,1.0625rem);line-height:1.45;color:var(--lp-muted)}.lp-invite{margin-top:1rem;padding:.75rem .875rem;border:1px solid var(--lp-line);border-radius:14px;background:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.lp-invite-title{margin:0;font-size:.875rem;font-weight:600;color:var(--lp-ink)}.lp-invite-code{display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.35rem .7rem;border:0;border-radius:999px;background:#fff;cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9375rem;font-weight:700;letter-spacing:.06em;color:#121212}.lp-invite-code .material-symbols-rounded{font-size:16px;color:#1212128c}.lp-invite-hint{margin:.5rem 0 0;font-size:.75rem;line-height:1.45;color:var(--lp-muted)}.lp-stores{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.lp-store{flex:1 1 160px;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.7rem 1rem;border-radius:999px;text-decoration:none;transition:transform .12s ease,background-color .12s ease}.lp-store:first-child{background:#fff;color:#121212}.lp-store:last-child{background:#ffffff24;border:1px solid var(--lp-line);color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.lp-store:active{transform:scale(.97)}.lp-store-text{display:flex;flex-direction:column;line-height:1.1}.lp-store-text small{font-size:.6rem;opacity:.75}.lp-store-text strong{font-size:.9375rem;font-weight:600}.lp-web-note{margin-top:.875rem;text-align:center;font-size:.875rem;color:var(--lp-muted)}.lp-web-note a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:4px}.lp-footer{border-top:1px solid var(--lp-line);max-width:1180px;width:100%;margin:0 auto;padding:.65rem clamp(1.25rem,5vw,4rem);display:flex;align-items:center;gap:1rem;flex-wrap:wrap;flex-shrink:0;box-sizing:border-box}.lp-foot-brand{font-weight:700;font-size:.9rem}.lp-footer nav{margin-left:auto;display:flex;gap:1.15rem;flex-wrap:wrap}.lp-footer nav a{font-size:.78rem;color:var(--lp-muted);text-decoration:none}.lp-footer nav a:hover{color:var(--lp-ink)}@media (min-width: 900px){.lp-copy{margin:0;max-width:620px;padding-left:clamp(2rem,6vw,5rem);padding-bottom:clamp(2rem,5vw,3.5rem)}.lp-stores{max-width:440px}.lp-web-note{text-align:left}}@font-face{font-family:Gabarito;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/Gabarito-00.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Gabarito;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/Gabarito-01.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/PlusJakartaSans-00.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/PlusJakartaSans-01.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/PlusJakartaSans-02.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/PlusJakartaSans-03.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Material Symbols Rounded;font-style:normal;font-weight:400;font-display:block;src:url(/fonts/MaterialSymbolsRounded.woff2) format("woff2")}.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;-webkit-font-feature-settings:"liga";font-feature-settings:"liga";-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #121212;--primary-light: #2A2A2A;--secondary: rgba(18, 18, 18, .58);--background: #FCFCFB;--surface: #FFFFFF;--surface-elevated: #F2F1EE;--border: rgba(18, 18, 18, .1);--border-hover: rgba(18, 18, 18, .22);--text-primary: #121212;--text-secondary: rgba(18, 18, 18, .58);--text-muted: rgba(18, 18, 18, .38);--accent: #121212;--success: #121212;--error: #C0362C;--r-sm: 8px;--r-md: 16px;--r-pill: 999px;--t-fast: .12s;--t-base: .2s;--ease: cubic-bezier(.2, 0, 0, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--shadow-sm: none;--shadow-md: none;--shadow-lg: 0 8px 32px rgba(60, 50, 40, .12);--font-display: "Gabarito", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Hiragino Sans", "Noto Sans KR", "Noto Sans JP", sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Hiragino Sans", "Noto Sans KR", "Noto Sans JP", sans-serif}input[type=range],input[type=checkbox],input[type=radio],progress{accent-color:var(--primary)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}.welcome-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#1a1a1a;overflow:hidden}.welcome-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}.welcome-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#14100c00 40%,#14100c8c 62%,#14100ce0)}.welcome-inner{position:relative;display:flex;flex-direction:column;height:100dvh;padding:calc(env(safe-area-inset-top,0px) + .75rem) 1.25rem calc(env(safe-area-inset-bottom,0px) + 1rem);color:#fff}.welcome-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.welcome-eyebrow{font-family:var(--font-display);font-size:.75rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#ffffffeb}.welcome-lang{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#ffffff24;border:1px solid rgba(255,255,255,.28);border-radius:var(--r-pill);color:#fff;font:inherit;font-size:.8125rem;padding:.3rem .75rem;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.welcome-lang option{color:#121212}.welcome-main{margin-top:auto;display:flex;flex-direction:column}.welcome-headline{font-family:var(--font-display);font-size:clamp(1.9rem,8.5vw,2.6rem);font-weight:700;line-height:1.08;letter-spacing:-.03em;margin-bottom:.5rem}.welcome-desc{font-size:.9375rem;line-height:1.45;color:#ffffffd1;margin-bottom:1.25rem}.welcome-error{font-size:.8125rem;color:#ffc9c2;margin-bottom:.75rem}.welcome-actions{display:flex;flex-direction:column;gap:.625rem}.welcome-skip{background:none;border:0;color:#ffffffe6;font:inherit;font-size:.9375rem;font-weight:500;text-decoration:underline;text-underline-offset:4px;padding:.875rem 0;cursor:pointer;-webkit-tap-highlight-color:transparent}.welcome-skip:disabled{opacity:.5;cursor:not-allowed}.welcome-legal{font-size:.6875rem;text-align:center;color:#ffffff8c}.welcome-legal a{color:inherit;text-decoration:underline;text-underline-offset:3px}@media (max-height: 700px){.welcome-headline{font-size:1.65rem}.welcome-desc{margin-bottom:.875rem;font-size:.875rem}.welcome-skip{padding:.625rem 0}}body{font-family:var(--font-body);font-weight:400;line-height:1.5;color:var(--text-primary);background-color:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1;-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}input,textarea,[contenteditable=true],.md-content,.chat-bubble,.comment-text,.profile-bio{-webkit-touch-callout:default;-webkit-user-select:text;-ms-user-select:text;user-select:text}.app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--background)}.header{background:var(--background);border-bottom:1px solid var(--border);padding:1rem;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#fffc}.header h1{font-size:1.25rem;font-weight:600;text-align:center;color:var(--text-primary);letter-spacing:-.025em}.main{flex:1;padding:2rem 1rem;max-width:800px;margin:0 auto;width:100%}.upload-area{background:var(--surface-elevated);border:0;border-radius:var(--r-md);aspect-ratio:4 / 3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem;text-align:center;margin-bottom:.75rem;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease;cursor:pointer}.upload-area:hover{background:#12121217}.upload-area:active{transform:scale(.99)}.upload-area.drag-over{background:#1212121f;box-shadow:inset 0 0 0 2px var(--primary)}.upload-area-label{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.upload-camera-btn{margin-bottom:1rem}.upload-accepts-note{font-size:.8125rem;line-height:1.5;color:var(--text-muted);text-align:center;padding:0 .5rem}.upload-icon{font-size:2.25rem;color:var(--text-secondary);display:block}.upload-area h3{font-size:1.125rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.upload-area p{font-size:.875rem;color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border:1px solid transparent;border-radius:var(--r-pill);font-size:.9375rem;font-weight:600;letter-spacing:-.01em;cursor:pointer;transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease);text-decoration:none;min-height:48px;white-space:nowrap;background:none;font-family:inherit;-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled){transform:scale(.97)}.btn-block{width:100%;min-height:56px;font-size:1.0625rem}.btn:focus{outline:2px solid var(--primary);outline-offset:2px}.btn:disabled{cursor:not-allowed;background:#12121212;color:#12121252;border-color:transparent;transform:none}.btn-primary{background:var(--primary);color:var(--background);border-color:var(--primary)}.btn-primary:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary-light)}.btn-secondary{background:var(--surface);color:var(--text-primary);border-color:var(--border)}.btn-on-photo{background:var(--surface);color:var(--text-primary);border-color:transparent}.btn-secondary:hover:not(:disabled){background:var(--surface-elevated);border-color:var(--border-hover)}.btn-danger{background:#b8645c;color:var(--background);border-color:#b8645c}.btn-danger:hover:not(:disabled){background:#a55750;border-color:#a55750}.style-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.625rem .625rem;margin:1rem 0 1.5rem}@media (min-width: 600px){.style-grid{grid-template-columns:repeat(3,1fr);gap:.75rem}}@media (min-width: 900px){.style-grid{grid-template-columns:repeat(4,1fr)}}.style-card{display:flex;flex-direction:column;background:none;border:0;padding:0;cursor:pointer;text-align:left;transition:transform var(--t-fast) var(--ease);outline:0;-webkit-tap-highlight-color:transparent}.style-card:active{transform:scale(.97)}.style-card.selected .style-card-image{box-shadow:0 0 0 2px var(--primary)}.style-card.selected .style-card-label{font-weight:700}.style-card.locked,.style-card:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.style-card-image{display:flex;align-items:center;justify-content:center;aspect-ratio:4 / 3;background:var(--surface-elevated);color:var(--text-muted);position:relative;overflow:hidden;border-radius:var(--r-md)}.style-card-image .material-symbols-rounded{font-size:28px;color:var(--text-secondary)}.style-card-thumb{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:var(--r-md)}.style-card-label{padding:.45rem .125rem 0;font-size:.9375rem;font-weight:600;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all;line-height:1.3;min-height:calc(.8125rem * 1.3 * 2 + 1.125rem);letter-spacing:-.01em}.style-card-modern .style-card-image{background:linear-gradient(135deg,#c8c8c8,#f2f2f2)}.style-card-scandinavian .style-card-image{background:linear-gradient(135deg,#ead7c0,#fbf5ec)}.style-card-ikea .style-card-image{background:linear-gradient(135deg,#f5d100,#0058a3)}.style-card-japandi .style-card-image{background:linear-gradient(135deg,#d8cdb8,#ede4d3)}.style-card-industrial .style-card-image{background:linear-gradient(135deg,#4d423b,#8b7a6e)}.style-card-coastal .style-card-image{background:linear-gradient(135deg,#cfe7ed,#f9fbfb)}.style-card-classic .style-card-image{background:linear-gradient(135deg,#c9a961,#f0e6d2)}.style-card-artdeco .style-card-image{background:linear-gradient(135deg,#1c1c1c,#c9a961)}.style-card-midcentury .style-card-image{background:linear-gradient(135deg,#b56b3b,#e0a86d)}.style-card-maximalist .style-card-image{background:linear-gradient(135deg,#d4358e,#ffba00 50%,#2cb5e8)}.style-card-vintage .style-card-image{background:linear-gradient(135deg,#b89668,#ddc7a2)}.style-card-bohemian .style-card-image{background:linear-gradient(135deg,#c97f4e,#d8aa6e)}.style-card-cottagecore .style-card-image{background:linear-gradient(135deg,#f4c5c5,#fff5e8)}.style-card-rustic .style-card-image{background:linear-gradient(135deg,#7a5a3b,#c2a578)}.style-card-wabisabi .style-card-image{background:linear-gradient(135deg,#c9bca8,#ebe4d4)}.style-card-gothic .style-card-image{background:linear-gradient(135deg,#1a1117,#5a2342)}.style-card-cyberpunk .style-card-image{background:linear-gradient(135deg,#0d0628,#ff2bd6 60%,#00f5ff)}.style-card-gaming .style-card-image{background:linear-gradient(135deg,#0a0a16,#ff2bd6 50%,#00d4ff)}.style-card-custom .style-card-image,.style-card-reference .style-card-image,.style-card-cleanup .style-card-image,.style-card-layout .style-card-image{background:#1212120d;border:0;border-radius:var(--r-md)}.style-card-modern_facade .style-card-image{background:linear-gradient(135deg,#c9d2d9,#f0f3f5)}.style-card-modern_farmhouse .style-card-image{background:linear-gradient(135deg,#f5f5f5,#2c2c2c)}.style-card-mediterranean .style-card-image{background:linear-gradient(135deg,#e8d5b7,#c4624c)}.style-card-craftsman .style-card-image{background:linear-gradient(135deg,#6e4d31,#c19668)}.style-card-contemporary .style-card-image{background:linear-gradient(135deg,#2c3338,#6b7480)}.style-card-minimalist_exterior .style-card-image{background:linear-gradient(135deg,#e8e6e1,#c8c5be)}.style-card-zen .style-card-image{background:linear-gradient(135deg,#c8c5b6,#efeae0)}.style-card-cottage .style-card-image{background:linear-gradient(135deg,#f4c5c5,#c9e2bd)}.style-card-desert .style-card-image{background:linear-gradient(135deg,#d8a578,#f0d6a8)}.style-card-tropical .style-card-image{background:linear-gradient(135deg,#2d8659,#b8e0c2)}.style-card-english .style-card-image{background:linear-gradient(135deg,#6b8c45,#c9d8a8)}.preview-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:1.5rem;margin:2rem 0}.preview-container h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.preview-container h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:1.5rem 0 .75rem}.preview-container p{font-size:.875rem;color:var(--text-secondary);line-height:1.6}.preview-image{max-width:100%;height:auto;border-radius:var(--r-sm);margin-bottom:1rem;border:1px solid var(--border)}.loading{display:flex;align-items:center;justify-content:center;gap:1rem;padding:3rem 2rem;color:var(--text-secondary)}.spinner{width:20px;height:20px;border:2px solid var(--border);border-top:2px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite}.hidden{display:none}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:var(--r-sm);margin-bottom:1.5rem;font-size:.875rem}.controls{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.credit-cost-hint{flex:0 0 100%;margin:0;text-align:center;font-size:.8rem;line-height:1.35;color:var(--text-secondary);word-break:keep-all}.credit-cost-hint.is-short{color:var(--error);font-weight:500}.step-progress{display:flex;flex-direction:column;gap:.5rem;margin:0 0 1.25rem}@media (max-width: 768px){.step-progress{position:sticky;top:env(safe-area-inset-top,0px);background:var(--background);z-index:50;padding:.5rem 0 .75rem;margin-bottom:1rem}body.is-native .step-progress{top:max(env(safe-area-inset-top,0px),50px)}}.step-progress-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.step-progress-bars{display:flex;gap:.25rem;width:108px;margin:0 auto}.step-progress-bar{flex:1;height:4px;border-radius:var(--r-pill);background:#1212121f;transition:background var(--t-base) var(--ease)}.step-progress-bar.active{background:var(--primary)}@media (max-width: 768px){.controls.controls-sticky{position:fixed;left:0;right:0;bottom:0;margin:0;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom,0px));background:var(--background);border-top:1px solid var(--border);z-index:50}.controls.controls-sticky .btn{flex:1;min-width:0}.home-with-sticky-cta{padding-bottom:5.5rem}}.section-title{font-size:clamp(1.6rem,6.5vw,2rem);font-weight:700;line-height:1.12;color:var(--text-primary);margin:.75rem 0 1.125rem;text-align:center}.color-palette{display:flex;gap:.75rem;margin-top:.75rem;flex-wrap:wrap;justify-content:center}.color-swatch-wrapper{display:flex;flex-direction:column;align-items:center;gap:4px}.color-swatch{width:48px;height:48px;border-radius:var(--r-sm);border:1px solid var(--border);flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center}.color-swatch-code{font-size:9px;color:var(--text-secondary);font-family:monospace;text-align:center;line-height:1}.floorplan-detected-banner{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:var(--text-primary);background:var(--surface-elevated);border-left:3px solid var(--primary);border-radius:var(--r-sm);padding:.75rem .9rem;margin:0 0 1rem;line-height:1.45}.floorplan-detected-banner .material-symbols-rounded{font-size:18px;color:var(--primary);margin-top:1px;flex-shrink:0}.space-category-toggle{display:flex;gap:.5rem;margin:0 0 1.25rem;flex-wrap:wrap}.space-category-btn{padding:.5rem 1.125rem;min-height:40px;border:1px solid var(--border);background:none;border-radius:var(--r-pill);font-size:.9375rem;font-weight:500;color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,opacity .15s ease}.space-category-btn:hover{color:var(--text-primary)}.space-category-btn:active{transform:scale(.97)}.space-category-btn.active{background:var(--primary);border-color:var(--primary);color:var(--background);font-weight:600}.outdoor-options-row{display:flex;flex-wrap:wrap;gap:.875rem;margin:1rem 0 .5rem}.outdoor-option{display:flex;flex-direction:column;gap:.3rem;flex:1 1 160px}.outdoor-option-label{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.outdoor-option-select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text-primary);font-size:.9375rem;font-family:inherit;cursor:pointer}.outdoor-option-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1212121a}.collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:1rem}.collection-card{display:flex;flex-direction:column;background:none;border:0;cursor:pointer;text-align:left;padding:0;transition:transform var(--t-fast) var(--ease)}.collection-card:active{transform:scale(.98)}.collection-card-mosaic{display:grid;grid-template-columns:2fr 1fr;gap:2px;aspect-ratio:4 / 3;background:var(--surface-elevated);border-radius:var(--r-md);overflow:hidden}.collection-card-cover{overflow:hidden}.collection-card-cover img{width:100%;height:100%;object-fit:cover;display:block}.collection-card-side{display:grid;grid-template-rows:1fr 1fr 1fr;gap:2px}.collection-card-side-cell{overflow:hidden;background:var(--surface)}.collection-card-side-cell img{width:100%;height:100%;object-fit:cover;display:block}.collection-card-empty,.collection-card-empty-cell{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--surface) 0%,var(--surface-elevated) 100%);color:var(--text-muted)}.collection-card-empty .material-symbols-rounded{font-size:36px}.collection-card-meta{padding:.5rem .125rem 0;display:flex;flex-direction:column;gap:.1rem}.collection-card-name{margin:0;font-size:.9375rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-card-count{margin:0;font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:.4rem}.collection-card-pub .material-symbols-rounded{font-size:14px}.collection-pub-tag .material-symbols-rounded{font-size:14px;vertical-align:middle}.collection-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start;justify-content:space-between;padding:1rem 0 1.25rem;border-bottom:1px solid var(--border)}.collection-title{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.collection-subtitle{margin:.3rem 0 0;font-size:.875rem;color:var(--text-muted)}.collection-header-actions{display:flex;flex-wrap:wrap;gap:.5rem}.link-button{background:none;border:none;color:var(--primary);cursor:pointer;padding:0;font:inherit}.link-button:hover{text-decoration:underline}.moodboard-grid{column-count:2;column-gap:.75rem;margin-top:1rem}@media (min-width: 600px){.moodboard-grid{column-count:3}}@media (min-width: 900px){.moodboard-grid{column-count:4}}@media (min-width: 1200px){.moodboard-grid{column-count:4;column-gap:1rem}}@media (min-width: 1500px){.moodboard-grid{column-count:5}}.moodboard-item{position:relative;break-inside:avoid;margin-bottom:.875rem;border-radius:var(--r-md);overflow:hidden;background:var(--surface);transition:box-shadow .25s ease,transform .25s ease}.moodboard-item:hover{transform:translateY(-2px)}.moodboard-item-btn{display:block;width:100%;padding:0;background:none;border:none;cursor:pointer}.moodboard-item-btn img{width:100%;height:auto;display:block;border-bottom-left-radius:0;border-bottom-right-radius:0}.moodboard-remove-btn{position:absolute;top:.5rem;right:.5rem;width:28px;height:28px;border-radius:50%;background:#0009;color:var(--background);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease}.moodboard-item:hover .moodboard-remove-btn{opacity:1}.moodboard-remove-btn:hover{background:#000000d9}.moodboard-remove-btn .material-symbols-rounded{font-size:18px}.moodboard-item-meta{padding:.625rem .75rem .75rem;font-size:.8125rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}.add-collection-modal{max-width:440px;width:100%}.add-collection-create{display:flex;flex-direction:column;gap:.5rem;margin:.5rem 0 .75rem}.add-collection-name-input{width:100%}.add-collection-create-btn{align-self:flex-end;font-size:.875rem;padding:.5rem 1rem}.add-collection-hint{font-size:.8125rem;color:var(--text-muted);margin:.5rem 0}.add-collection-list{list-style:none;margin:.75rem 0 0;padding:0;max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:.25rem}.add-collection-row{display:flex;align-items:center;gap:.625rem;padding:.625rem .75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);width:100%;text-align:left;cursor:pointer;font-size:.9375rem;color:var(--text-primary);transition:background .15s ease,border-color .15s ease}.add-collection-row:hover{background:var(--surface-elevated);border-color:var(--border-hover)}.add-collection-row.is-member{border-color:var(--primary)}.add-collection-row.is-member .material-symbols-rounded{color:var(--primary)}.add-collection-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-collection-count{font-size:.75rem;color:var(--text-muted)}.profile-header{display:flex;gap:1.5rem;align-items:flex-start;padding:1rem 0 1.25rem;border-bottom:1px solid var(--border)}.profile-avatar{width:96px;height:96px;border-radius:50%;flex-shrink:0;object-fit:cover;background:var(--surface)}.profile-avatar-placeholder{display:flex;align-items:center;justify-content:center;border:1px solid var(--border)}.profile-avatar-placeholder .material-symbols-rounded{font-size:48px;color:var(--text-muted)}.profile-meta{flex:1;min-width:0}.profile-name{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.profile-handle{margin:.15rem 0 0;font-size:.875rem;color:var(--text-muted)}.profile-bio{margin:.75rem 0 0;font-size:.9375rem;color:var(--text-secondary);line-height:1.45;white-space:pre-wrap}.profile-instagram{display:inline-flex;align-items:center;gap:.35rem;margin:.625rem 0 0;padding:.25rem .625rem;border-radius:var(--r-pill);background:color-mix(in srgb,var(--text-muted) 8%,transparent);color:var(--text-secondary);font-size:.8125rem;text-decoration:none}.profile-instagram:hover{background:color-mix(in srgb,var(--text-muted) 14%,transparent);color:var(--text-primary)}.profile-instagram .material-symbols-rounded{font-size:.95rem}.profile-instagram-icon{width:.95rem;height:.95rem;flex-shrink:0}.profile-stats{margin:.75rem 0 0;display:flex;gap:1.25rem;font-size:.875rem;color:var(--text-muted)}.profile-stats strong{color:var(--text-primary);font-weight:600}.profile-stats-btn{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .15s ease}.profile-stats-btn:hover{opacity:.7}.follow-list-card{background:var(--background);border-radius:var(--r-md);width:min(420px,calc(100vw - 2rem));max-height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 40px #3c32282e}.follow-list-header{display:flex;align-items:center;justify-content:center;padding:.875rem 1.25rem .75rem;border-bottom:1px solid var(--border)}.follow-list-title{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.follow-list-tabs{display:flex;border-bottom:1px solid var(--border)}.follow-list-tab{flex:1;padding:.75rem 0;background:none;border:0;border-bottom:2px solid transparent;font-size:.9375rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:color .15s ease,border-color .15s ease}.follow-list-tab.active{color:var(--text-primary);border-bottom-color:var(--text-primary)}.follow-list-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.5rem 0}.follow-list-empty{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-size:.9375rem}.follow-list-rows{list-style:none;margin:0;padding:0}.follow-list-row{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem}.follow-list-row-user{flex:1;display:flex;align-items:center;gap:.75rem;background:none;border:0;padding:0;cursor:pointer;text-align:left;min-width:0;-webkit-tap-highlight-color:transparent}.follow-list-avatar{width:44px;height:44px;border-radius:50%;flex-shrink:0;object-fit:cover;background:var(--surface)}.follow-list-avatar-placeholder{display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.follow-list-avatar-placeholder .material-symbols-rounded{font-size:22px}.follow-list-row-meta{display:flex;flex-direction:column;min-width:0}.follow-list-row-name{font-size:.9375rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.follow-list-row-handle{font-size:.8125rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.follow-list-more{display:flex;justify-content:center;padding:.75rem 1rem 1rem}@media (max-width: 768px){.follow-list-card{width:100vw;max-width:none;border-radius:var(--r-md) 16px 0 0;height:calc(100dvh - 4rem);max-height:none;margin:0;animation:followListSlideUp .22s ease-out}body.is-native .follow-list-card{height:calc(100dvh - max(env(safe-area-inset-top,0px),50px) - 1rem)}.modal-overlay:has(.follow-list-card){align-items:flex-end;padding:0}.follow-list-card:before{content:"";display:block;width:36px;height:4px;background:var(--border);border-radius:var(--r-sm);margin:.5rem auto 0;flex-shrink:0}}@keyframes followListSlideUp{0%{transform:translateY(20px);opacity:.8}to{transform:translateY(0);opacity:1}}.profile-actions{margin-top:1rem;display:flex;gap:.5rem}.profile-actions .btn,.profile-actions .follow-btn{flex:1 1 0;min-height:34px;padding:.375rem .75rem;gap:.375rem;font-size:.8125rem;border-radius:var(--r-sm)}.profile-actions .material-symbols-rounded{font-size:16px}@media (max-width: 600px){.profile-actions{width:100%;max-width:320px;margin-left:auto;margin-right:auto}}.account-handle-prefix{font-size:.9375rem;color:var(--text-muted);flex-shrink:0}.account-input-row{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.account-input-row-handle{gap:.375rem}.account-input-row .edit-field-input{flex:1;min-width:0;height:40px;box-sizing:border-box}.account-save-btn{flex-shrink:0;height:40px;padding:0 1rem;border:0;border-radius:var(--r-sm);background:var(--text-primary);color:var(--background);font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .15s ease;white-space:nowrap}.account-save-btn:hover:not(:disabled){opacity:.85}.account-save-btn:disabled{opacity:.5;cursor:not-allowed}.account-link-btn{display:inline-flex;align-items:center;gap:.25rem;padding:0;background:none;border:0;color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .15s ease}.account-link-btn:hover{opacity:.7}.account-link-btn .material-symbols-rounded{font-size:16px}.edit-field-textarea{resize:vertical}.account-bio-row{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;justify-content:space-between}.account-form-error{font-size:.8125rem;color:var(--error);margin:.4rem 0 0}.account-form-success{font-size:.8125rem;color:var(--text-secondary);margin:.4rem 0 0}.btn-sm{font-size:.8125rem;padding:.4rem .75rem}@media (max-width: 600px){.profile-header{flex-direction:column;align-items:center;text-align:center}.profile-stats{justify-content:center}}.follow-btn{background:var(--primary);color:var(--background);border:1px solid var(--primary);border-radius:var(--r-pill);font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.follow-btn:hover:not(:disabled){filter:brightness(.95)}.follow-btn:disabled{opacity:.6;cursor:not-allowed}.follow-btn.is-following{background:var(--surface);color:var(--text-primary);border-color:var(--border)}.follow-btn.is-following:hover:not(:disabled){background:var(--surface-elevated);border-color:var(--border-hover)}.follow-btn-sm{font-size:.75rem;padding:2px .625rem}.follow-btn-md{font-size:.875rem;padding:.4rem .875rem}.feed-tabs{display:flex;gap:.5rem;margin-bottom:.75rem;border-bottom:1px solid var(--border)}.feed-tab{background:none;border:none;padding:.5rem .875rem;font-size:.9375rem;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s ease,border-color .15s ease}.feed-tab:hover{color:var(--text-primary)}.feed-tab.active{color:var(--text-primary);border-bottom-color:var(--primary)}.profile-tabs{gap:0;margin-top:1.5rem}.profile-tabs .feed-tab{flex:1 1 0;text-align:center}.comments-empty{font-size:.875rem;color:var(--text-muted);margin:.75rem 0}.comment-list{list-style:none;padding:0;margin:.75rem 0;display:flex;flex-direction:column;gap:.875rem}.comment-item{display:flex;gap:.625rem;align-items:flex-start}.comment-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;object-fit:cover;background:var(--surface)}.comment-avatar-placeholder{display:flex;align-items:center;justify-content:center;border:1px solid var(--border)}.comment-avatar-placeholder .material-symbols-rounded{font-size:18px;color:var(--text-muted)}.comment-body{flex:1;min-width:0}.comment-meta{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-secondary)}.comment-name{font-weight:500;color:var(--text-primary)}.comment-time{color:var(--text-muted)}.comment-delete-btn{margin-left:auto;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:var(--r-sm);display:flex;align-items:center;transition:background .15s ease,color .15s ease}.comment-delete-btn:hover{background:var(--surface);color:var(--text-primary)}.comment-delete-btn .material-symbols-rounded{font-size:16px}.comment-text{margin:.25rem 0 0;font-size:.9375rem;color:var(--text-primary);white-space:pre-wrap;word-wrap:break-word;line-height:1.45}.comment-composer{margin-top:.875rem;display:flex;flex-direction:column;gap:.5rem}.comment-input{width:100%;padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text-primary);font-size:1rem;font-family:inherit;resize:vertical;min-height:60px}.comment-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1212121a}.comment-composer-row{display:flex;align-items:center;gap:.75rem}.comment-char-counter{font-size:.75rem;color:var(--text-muted);margin-right:auto}.comment-char-counter.at-limit{color:var(--error)}.comment-post-btn{font-size:.875rem;padding:.5rem 1rem}.comment-error{font-size:.875rem;color:var(--error);margin:0}.comment-signin-prompt{margin-top:.875rem;padding:.75rem 1rem;background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--r-sm);font-size:.875rem;color:var(--text-secondary);display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.comment-signin-prompt p{margin:0;flex:1}.bookmark-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:var(--r-sm);display:flex;align-items:center;color:var(--text-muted);transition:background .15s ease,color .15s ease}.bookmark-btn:hover{background:var(--surface);color:var(--text-primary)}.bookmark-btn.is-bookmarked,.bookmark-btn.is-saved{color:var(--primary)}.bookmark-btn.is-saved .material-symbols-rounded{font-variation-settings:"FILL" 1}.bookmark-btn .material-symbols-rounded{font-size:20px}.bookmark-pill.is-saved{background:var(--primary);color:var(--surface);border-color:var(--primary)}.bookmark-pill.is-saved .material-symbols-rounded{font-variation-settings:"FILL" 1}.bookmark-pill.is-bookmarked{background:var(--surface-elevated);color:var(--primary);border-color:var(--primary)}.feed-card-actions{display:flex;align-items:center;gap:.25rem;margin-left:auto}.feed-card-comment-count{display:inline-flex;align-items:center;gap:.25rem;font-size:.8125rem;color:var(--text-muted);margin-right:.25rem}.feed-card-comment-count .material-symbols-rounded{font-size:16px}.ba-slider{position:relative;width:100%;aspect-ratio:4 / 3;max-height:85vh;overflow:hidden;border-radius:var(--r-sm);background:var(--surface);-webkit-user-select:none;user-select:none;touch-action:pan-y;cursor:ew-resize}.ba-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.ba-img-after{transition:clip-path 60ms linear}.ba-img-after.ba-no-transition{transition:none}.ba-slider .ba-handle{transition:left 60ms linear}.ba-slider .ba-handle.ba-no-transition{transition:none}.ba-label{position:absolute;top:.5rem;padding:.25rem .6rem;border-radius:var(--r-pill);background:#0000008c;color:var(--background);font-size:.75rem;font-weight:500;pointer-events:none;letter-spacing:.02em}.ba-label-after{left:.5rem}.ba-label-before{right:.5rem}.ba-handle{position:absolute;top:0;bottom:0;width:0;transform:translate(-50%);pointer-events:none;z-index:2}.ba-handle:focus-visible .ba-handle-knob{outline:3px solid var(--primary);outline-offset:2px}.ba-handle-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fffffff2;transform:translate(-50%);box-shadow:0 0 0 1px #00000026}.ba-handle-knob{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #3c322847;pointer-events:auto;cursor:ew-resize}.ba-handle-knob .material-symbols-rounded{font-size:18px;color:var(--text-primary)}.chat-section{display:flex;flex-direction:column}.chat-hint{font-size:.875rem;color:var(--text-muted);margin:.25rem 0 1rem;line-height:1.5}.chat-messages{display:flex;flex-direction:column;gap:.5rem;max-height:360px;overflow-y:auto;padding:.5rem .25rem .75rem}.chat-bubble{max-width:85%;padding:.625rem .875rem;border-radius:var(--r-md);font-size:.9375rem;line-height:1.45;white-space:pre-wrap;word-wrap:break-word}.chat-bubble-user{align-self:flex-end;background:var(--primary);color:var(--background);border-bottom-right-radius:4px}.chat-bubble-assistant{align-self:flex-start;background:var(--surface-elevated);color:var(--text-primary);border:1px solid var(--border);border-bottom-left-radius:4px}.chat-typing{display:flex;gap:4px;padding:.75rem 1rem}.chat-typing span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);opacity:.5;animation:chatBounce 1s infinite ease-in-out}.chat-typing span:nth-child(2){animation-delay:.15s}.chat-typing span:nth-child(3){animation-delay:.3s}@keyframes chatBounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-3px);opacity:1}}.chat-suggestions{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start;padding:.5rem 0}.chat-suggestion-chip{background:none;border:1px solid var(--border);border-radius:var(--r-pill);padding:.5rem 1.125rem;min-height:40px;font-size:.9375rem;color:var(--text-secondary);cursor:pointer;text-align:left;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,opacity .15s ease}.chat-suggestion-chip:hover:not(:disabled){border-color:var(--primary);color:var(--text-primary);background:var(--surface-elevated)}.chat-suggestion-chip:disabled{opacity:.5;cursor:not-allowed}.chat-input-row{display:flex;gap:.5rem;margin-top:.5rem}.chat-input{flex:1;min-width:0;padding:.625rem .875rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text-primary);font-size:1rem;font-family:inherit}.chat-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1212121a}.chat-send-btn{flex-shrink:0}@media (max-width: 480px){.chat-input-row{flex-direction:column;gap:.5rem}.chat-send-btn{width:100%}}.chat-turn-counter{font-size:.75rem;color:var(--text-muted);text-align:right;margin:.5rem 0 0}.chat-error{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem .75rem;background:#dc262614;color:var(--error);border-radius:var(--r-sm);font-size:.875rem}.chat-retry{margin-left:auto;background:none;border:none;color:var(--error);font-weight:500;cursor:pointer;font-size:.875rem}.chat-upgrade-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;padding:.875rem 1rem;background:var(--surface-elevated);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--r-sm);font-size:.875rem;color:var(--text-secondary)}.chat-upgrade-banner .material-symbols-rounded{color:var(--primary)}.chat-upgrade-btn{margin-left:auto;font-size:.875rem;padding:.5rem .875rem}.edited-from-banner{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;padding:.625rem .875rem;background:var(--surface-elevated);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--r-sm);font-size:.875rem;color:var(--text-secondary)}.edited-from-banner .material-symbols-rounded{font-size:18px;color:var(--primary)}.edited-from-link{margin-left:auto;display:inline-flex;align-items:center;gap:.25rem;background:none;border:none;color:var(--primary);font-size:.875rem;font-weight:500;cursor:pointer;padding:.25rem .5rem;border-radius:var(--r-sm);transition:background .15s ease}.edited-from-link:hover{background:var(--surface)}.edited-from-link .material-symbols-rounded{font-size:16px;color:inherit}.edits-section-desc{font-size:.875rem;color:var(--text-muted);margin:.25rem 0 1rem}.edits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.edit-thumb-card{display:flex;flex-direction:column;background:none;border:0;cursor:pointer;text-align:left;padding:0;transition:transform var(--t-fast) var(--ease)}.edit-thumb-card:active{transform:scale(.98)}.edit-thumb-card:hover{transform:translateY(-1px)}.edit-thumb-img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.edit-thumb-meta{padding:.5rem .625rem;display:flex;flex-direction:column;gap:.15rem}.edit-thumb-title{font-size:.875rem;font-weight:500;color:var(--text-primary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-thumb-desc{font-size:.75rem;color:var(--text-muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.modal-meta{margin:.375rem 0 .875rem;font-size:.75rem;color:var(--text-muted);line-height:1.4}.edit-region-btn{margin-top:.75rem;font-size:.875rem;padding:.5rem .875rem}.edit-region-modal{max-width:640px;width:100%;max-height:92vh;overflow-y:auto}.edit-region-canvas-wrap{position:relative;width:100%;margin:.75rem 0;background:var(--surface-elevated);border-radius:var(--r-sm);overflow:hidden;user-select:none;-webkit-user-select:none}.edit-region-image{display:block;width:100%;height:auto;pointer-events:none}.edit-region-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:crosshair;touch-action:none}.edit-region-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem}.edit-tool-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .625rem;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);border-radius:var(--r-sm);font-size:.8125rem;cursor:pointer}.edit-tool-btn .material-symbols-rounded{font-size:1rem}.edit-tool-btn.active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,transparent)}.edit-tool-btn:disabled{opacity:.45;cursor:not-allowed}.edit-tool-clear{margin-left:auto}.edit-tool-size{display:inline-flex;align-items:center;gap:.4rem;font-size:.8125rem;color:var(--text-muted)}.edit-tool-size input[type=range]{width:96px;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:20px;cursor:pointer;background:linear-gradient(to right,var(--primary) 0 var(--range-pct, 50%),rgba(18,18,18,.14) var(--range-pct, 50%) 100%) center / 100% 4px no-repeat;border-radius:var(--r-pill)}.edit-tool-size input[type=range]::-webkit-slider-runnable-track{height:4px;background:transparent;border:none}.edit-tool-size input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;background:var(--primary);border:2px solid var(--surface);box-shadow:0 1px 3px #0003}.edit-tool-size input[type=range]::-moz-range-track{height:4px;background:transparent;border:none}.edit-tool-size input[type=range]::-moz-range-thumb{width:16px;height:16px;border:2px solid var(--surface);border-radius:50%;background:var(--primary)}.edit-tool-size input[type=range]:disabled{opacity:.5;cursor:default}.edit-region-modal h3{margin:0 0 .25rem}.edit-region-modal .modal-desc{font-size:.875rem;color:var(--text-muted);margin:0 0 1.25rem;line-height:1.5}.edit-field-label{display:block;font-size:.8125rem;font-weight:500;color:var(--text-secondary);margin:.875rem 0 .375rem}.edit-field-input{width:100%;padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text-primary);font-size:1rem;font-family:inherit}.edit-field-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1212121a}.edit-field-input:disabled{opacity:.6;cursor:not-allowed}.edit-region-error{font-size:.875rem;color:var(--error);margin-top:.75rem;margin-bottom:0}.material-symbols-rounded.spin{animation:spin 1s linear infinite;margin-right:.4rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.paint-match-pill{display:flex;flex-direction:column;align-items:center;gap:1px;margin-top:2px;padding:2px 6px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface-elevated);font-size:9px;line-height:1.2;cursor:pointer;max-width:96px;transition:background .15s ease,border-color .15s ease}.paint-match-pill:hover{background:var(--surface);border-color:var(--border-hover)}.paint-match-brand{color:var(--text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:88px}.paint-match-code{color:var(--text-primary);font-family:monospace;letter-spacing:.02em}.color-error{background:transparent!important;position:relative}.color-error:before,.color-error:after{content:"";position:absolute;top:50%;left:50%;width:80%;height:2px;background:#ef4444;transform-origin:center}.color-error:before{transform:translate(-50%,-50%) rotate(45deg)}.color-error:after{transform:translate(-50%,-50%) rotate(-45deg)}.recommendations-list{margin-top:.75rem}.recommendations-list ul{list-style:none;padding:0;margin:0}.recommendations-list li{padding:.75rem 0;border-bottom:1px solid var(--border);font-size:.875rem;line-height:1.5}.recommendations-list li:last-child{border-bottom:none}.recommendations-list strong{color:var(--text-primary);font-weight:600}@media (max-width: 768px){.main{padding:1rem .75rem}.upload-area{padding:2rem 1rem}.controls{flex-direction:column;align-items:stretch}.controls>.btn{width:100%}.color-palette{justify-content:flex-start}.header h1{font-size:1.125rem}.image-comparison{flex-direction:column}.image-container{width:100%;margin-bottom:1rem}}.image-comparison{display:flex;gap:2rem;margin-bottom:2rem;padding:1rem;background:var(--surface);border-radius:var(--r-md);border:1px solid var(--border)}.image-container{flex:1;text-align:center}.image-container h3{font-size:1.125rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.image-container .preview-image{width:100%;max-width:400px;height:auto;border-radius:var(--r-sm);border:1px solid var(--border);transition:transform .2s ease,box-shadow .2s ease}.image-container .preview-image:hover{transform:scale(1.02)}.image-error{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--r-sm);padding:1rem;text-align:center;color:#991b1b}.image-error p{margin:.25rem 0}.image-generating{background:var(--surface-elevated);border:2px dashed var(--border);border-radius:var(--r-sm);padding:2rem;text-align:center;color:var(--text-secondary);min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center}.image-generating .spinner{width:40px;height:40px;border:3px solid var(--border);border-top:3px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.style-expander{grid-column:1 / -1;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);animation:styleExpanderIn .18s ease-out}.style-expander-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.style-expander-title-optional{font-weight:400;color:var(--text-muted)}@keyframes styleExpanderIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.expander-add-btn{display:inline-block;background:none;border:none;padding:.25rem 0;color:var(--primary);font-size:.9375rem;font-weight:500;font-family:inherit;cursor:pointer;transition:opacity .15s ease}.expander-add-btn:hover{opacity:.7}.expander-textarea-enter{animation:expanderTextareaIn .18s ease-out}@keyframes expanderTextareaIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.char-counter{margin-top:.375rem;font-size:.75rem;color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums}.char-counter.at-limit{color:var(--primary);font-weight:500}.custom-style-textarea{width:100%;min-height:100px;padding:.75rem;border:1px solid var(--border);border-radius:var(--r-sm);font-size:1rem;line-height:1.5;color:var(--text-primary);background:var(--background);resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.custom-style-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1212121a}.custom-style-textarea::placeholder{color:var(--text-muted);font-style:italic}.md-content{font-size:.875rem;color:var(--text-secondary);line-height:1.7}.md-content p{margin:.5rem 0}.md-content p:first-child{margin-top:0}.md-content p:last-child{margin-bottom:0}.md-content strong{font-weight:600;color:var(--text-primary)}.md-content em{font-style:italic}.md-content ul,.md-content ol{padding-left:1.25rem;margin:.5rem 0}.md-content li{margin:.3rem 0;line-height:1.6}.md-content li>p{margin:0}.md-content h1,.md-content h2,.md-content h3,.md-content h4{font-weight:600;color:var(--text-primary);margin:.75rem 0 .25rem;line-height:1.4}.md-content h1{font-size:1rem}.md-content h2{font-size:.9375rem}.md-content h3,.md-content h4{font-size:.875rem}.md-content code{font-family:monospace;font-size:.8125rem;background:var(--surface-elevated);padding:.1em .3em;border-radius:var(--r-sm)}.photo-slots{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem;padding:1rem;border-radius:var(--r-sm);border:2px dashed transparent;transition:border-color .2s ease,background .2s ease}.photo-slots.droppable{border-color:var(--border)}.photo-slots.drag-over{border-color:var(--primary);background:var(--surface)}.photo-slot{position:relative;border-radius:var(--r-sm);overflow:hidden;flex:0 0 auto;width:160px;height:160px}.photo-slot.filled{border:1px solid var(--border)}.photo-slot.empty{border:2px dashed var(--border);background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;color:var(--text-muted);font-size:.8125rem;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,opacity .15s ease}.photo-slot.empty:hover{border-color:var(--border-hover);background:var(--surface-elevated);color:var(--text-secondary)}.photo-slot.empty .material-symbols-rounded{font-size:2rem}.slot-thumb{width:100%;height:100%;object-fit:cover;display:block}.slot-remove{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;background:#0009;color:var(--background);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s ease}.slot-remove:hover{background:#000000d9}.slot-remove .material-symbols-rounded{font-size:.9rem}.slot-label{position:absolute;bottom:0;left:0;right:0;background:#00000080;color:var(--background);font-size:.75rem;text-align:center;padding:3px 0}.preview-strip{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}.strip-thumb-wrapper{position:relative;text-align:center}.strip-thumb{width:100px;height:80px;object-fit:cover;border-radius:var(--r-sm);border:1px solid var(--border);display:block}.strip-label{display:block;font-size:.75rem;color:var(--text-muted);margin-top:4px}.history-select{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);font-size:.875rem;color:var(--text-secondary);background:var(--background);cursor:pointer;font-family:inherit;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.history-select:focus{outline:none;border-color:var(--primary)}.result-photo-pair{margin-bottom:2rem}.result-photo-label{font-size:1rem;font-weight:600;color:var(--text-secondary);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}@media (max-width: 768px){.photo-slots{gap:.75rem}.photo-slot{width:130px;height:130px}.strip-thumb{width:80px;height:64px}}.header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem}body.is-native .header{padding-top:calc(.75rem + max(env(safe-area-inset-top,0px),50px));padding-left:calc(1.5rem + env(safe-area-inset-left,0px));padding-right:calc(1.5rem + env(safe-area-inset-right,0px))}body.is-native{padding-bottom:env(safe-area-inset-bottom,0px)}.pending-banner{position:fixed;left:50%;transform:translate(-50%);bottom:calc(1rem + env(safe-area-inset-bottom,0px));width:calc(100vw - 2rem);max-width:460px;z-index:1500;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:0 12px 32px #3c32282e;padding:.875rem 1rem;display:flex;flex-direction:column;gap:.5rem;animation:pendingBannerIn .25s ease-out}.pending-banner-row{display:flex;align-items:center;gap:.625rem}.pending-banner-error{flex-direction:row;align-items:center}@media (max-width: 768px){.pending-banner{bottom:calc(56px + .75rem + env(safe-area-inset-bottom,0px))}}.toast-snackbar{position:fixed;left:50%;bottom:1.5rem;transform:translate(-50%);display:flex;align-items:center;gap:.5rem;padding:.75rem 1.125rem;background:var(--text-primary);color:var(--background);border:0;border-radius:var(--r-pill);font-size:.9375rem;font-weight:500;box-shadow:0 8px 24px #3c32282e;cursor:pointer;z-index:60;-webkit-tap-highlight-color:transparent;animation:toastIn .18s ease-out}.toast-snackbar .material-symbols-rounded{font-size:1.125rem}@keyframes toastIn{0%{transform:translate(-50%,12px);opacity:0}to{transform:translate(-50%);opacity:1}}@media (max-width: 768px){.toast-snackbar{bottom:calc(56px + .75rem + env(safe-area-inset-bottom,0px))}}@keyframes pendingBannerIn{0%{transform:translate(-50%,20px);opacity:0}to{transform:translate(-50%);opacity:1}}.pending-banner-body{flex:1;min-width:0}.pending-banner-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.pending-banner-hint{font-size:.75rem;color:var(--text-muted);margin:0;line-height:1.35}.pending-banner-bar{height:4px;background:var(--border);border-radius:var(--r-sm);overflow:hidden;margin:.25rem 0}.pending-banner-bar-fill{height:100%;background:var(--primary);transition:width .4s ease-out}.pending-banner-spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:pendingSpin .9s linear infinite;flex-shrink:0}@keyframes pendingSpin{to{transform:rotate(360deg)}}.pending-banner-done .material-symbols-rounded,.pending-banner-error .material-symbols-rounded{font-size:28px;flex-shrink:0}.pending-banner-done .material-symbols-rounded{color:#16a34a}.pending-banner-error{border-color:#fecaca}.pending-banner-error .material-symbols-rounded{color:#dc2626}.pending-banner-btn{flex-shrink:0;padding:.5rem 1rem;font-size:.875rem}.pending-banner-close{background:none;border:none;padding:4px;cursor:pointer;color:var(--text-muted);flex-shrink:0;display:flex;align-items:center}.pending-banner-close .material-symbols-rounded{font-size:20px}.pending-banner-close:hover{color:var(--text-primary)}.pending-banner-done .pending-banner-btn{width:100%;padding:.625rem 1rem;margin:0}.header-logo{font-size:1.25rem;font-weight:600;color:var(--text-primary);letter-spacing:-.025em;background:none;border:none;cursor:pointer;padding:0;font-family:inherit}.header-nav{display:flex;align-items:center;gap:.5rem}.header-nav-btn{padding:.375rem .75rem;font-size:.8125rem;min-height:32px;height:32px}.header-nav-btn .material-symbols-rounded{font-size:1.125rem}.lang-picker{position:relative}.lang-picker-btn{display:flex;align-items:center;gap:.25rem;background:none;border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-secondary);font-size:.75rem;font-family:inherit;font-weight:500;padding:.375rem .5rem;cursor:pointer;transition:border-color .15s,color .15s;min-height:32px;white-space:nowrap}.lang-picker-btn:hover{border-color:var(--border-hover);color:var(--text-primary)}.lang-dropdown{position:absolute;top:calc(100% + 4px);right:0;background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:0 4px 16px #3c32282e;min-width:120px;z-index:200;overflow:hidden;animation:dropdown-in .12s ease}.lang-dropdown-item{display:block;width:100%;padding:.625rem 1rem;background:none;border:none;text-align:left;font-size:.875rem;font-family:inherit;color:var(--text-primary);cursor:pointer;transition:background .1s}.lang-dropdown-item:hover{background:var(--surface-hover)}.lang-dropdown-item.active{color:var(--accent);font-weight:600}.header-nav-btn.active{background:var(--surface-elevated);border-color:var(--border-hover)}.header-user{display:flex;align-items:center;gap:.5rem}.avatar{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);object-fit:cover}.my-designs-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.my-designs-title{font-size:1.25rem;font-weight:600}.design-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-bottom:2rem}.design-card{background:none;border:0;cursor:pointer;transition:transform var(--t-fast) var(--ease)}.design-card:active{transform:scale(.98)}.design-card-thumb{position:relative;aspect-ratio:4/5;background:var(--surface-elevated);border-radius:var(--r-md);overflow:hidden}.design-card-thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .25s ease-out}.design-card-thumb img.is-loaded{opacity:1}.design-card-no-thumb{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.design-card-no-thumb .material-symbols-rounded{font-size:2.5rem}.design-card-fav{position:absolute;top:8px;right:8px;color:#ef4444;line-height:1}.design-card-fav .material-symbols-rounded{font-size:1.25rem;font-variation-settings:"FILL" 1;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}.design-card-info{padding:.5rem .125rem 0;display:flex;flex-direction:column;gap:.125rem}.design-card-style{font-size:.875rem;font-weight:600;color:var(--text-primary)}.design-card-name{font-size:.8125rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.design-card-date{font-size:.75rem;color:var(--text-muted)}.design-card-photos{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:.2rem}.detail-topbar{margin-bottom:1.5rem}.detail-topbar-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.detail-back-btn{display:flex;align-items:center;gap:.25rem;padding:.375rem .625rem .375rem .375rem;border:none;background:none;border-radius:var(--r-md);cursor:pointer;color:var(--text-secondary);font-size:.875rem;font-weight:500;transition:background .15s,color .15s}.detail-back-btn:hover{background:var(--surface-elevated);color:var(--text-primary)}.detail-back-btn .material-symbols-rounded{font-size:1.125rem}@media (max-width: 768px){.detail-back-btn{display:none}.detail-topbar-row{justify-content:flex-end;margin-bottom:.5rem}}.detail-title{text-align:center;padding:.25rem 0 .5rem}.detail-title h2{font-size:1.125rem;font-weight:600;margin:0 0 .25rem;line-height:1.3}.detail-title p{font-size:.8125rem;color:var(--text-muted);margin:0}.detail-actions{display:flex;gap:.125rem}.detail-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:none;border-radius:50%;cursor:pointer;color:var(--text-secondary);transition:background .15s,color .15s}.detail-icon-btn:hover{background:var(--surface-elevated);color:var(--text-primary)}.detail-icon-btn .material-symbols-rounded{font-size:1.125rem}.fav-active .material-symbols-rounded{color:#ef4444;font-variation-settings:"FILL" 1}.danger-btn:hover{color:var(--error)!important}.style-tag{display:inline-block;background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--r-pill);padding:.25rem .75rem;font-size:.8125rem;font-weight:500;color:var(--text-primary)}.style-tag-link{cursor:pointer;font-family:inherit}.style-tag-link:hover{background:var(--surface);border-color:var(--border-hover)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.modal-box{background:var(--background);border-radius:var(--r-md);padding:1.5rem;width:100%;max-width:400px;box-shadow:var(--shadow-lg)}.modal-box h3{font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.rename-input{width:100%;padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);font-size:1rem;font-family:inherit;color:var(--text-primary);background:var(--background)}.rename-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1212121a}.detail-icon-btn.is-on .material-symbols-rounded{color:var(--primary)}.share-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:1.25rem;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:1rem}.share-panel-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.share-section-card{background:var(--background);border:1px solid var(--border);border-radius:var(--r-md);padding:.875rem 1rem;display:flex;flex-direction:column;gap:.75rem}.share-section-header{display:flex;gap:.625rem;align-items:flex-start}.share-section-icon{font-size:22px;color:var(--primary);margin-top:1px}.share-section-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin:0 0 .125rem}.share-section-desc{font-size:.8125rem;color:var(--text-muted);margin:0;line-height:1.4}.share-panel-label{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0 0 .2rem}.share-panel-hint{font-size:.8125rem;color:var(--text-muted);margin:0}.toggle-btn{position:relative;width:44px;height:26px;background:var(--border);border:none;border-radius:var(--r-md);cursor:pointer;transition:background .2s;flex-shrink:0;padding:0}.toggle-btn:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;background:var(--surface);border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #3c322847}.toggle-btn.on{background:var(--primary)}.toggle-btn.on:after{transform:translate(18px)}.toggle-btn:disabled{opacity:.6;cursor:not-allowed}.share-panel-link-row{display:flex;gap:.5rem;align-items:center}.share-link-input{flex:1;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);font-size:.8125rem;color:var(--text-secondary);background:var(--background);font-family:inherit;min-width:0;cursor:default}.share-panel-download-row{display:flex;flex-direction:column;gap:.5rem}.share-panel-download-btns{display:flex;gap:.5rem;flex-wrap:wrap}.download-watermark-hint{display:flex;align-items:flex-start;gap:.375rem;margin-top:.25rem}.download-watermark-hint .material-symbols-rounded{font-size:14px;margin-top:2px;flex-shrink:0}.shop-link{display:inline-flex;align-items:center;gap:.2rem;margin-left:.4rem;padding:.1rem .45rem;border-radius:var(--r-sm);font-size:.75rem;font-weight:500;color:var(--primary);background:var(--surface-elevated);text-decoration:none;vertical-align:middle;transition:background .15s ease}.shop-link:hover{background:var(--surface);text-decoration:none}.shop-link .material-symbols-rounded{font-size:14px}.budget-chip-row{margin:1.25rem 0 1.5rem}.budget-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem .5rem 1rem;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);font-size:.875rem;color:var(--text-secondary);cursor:pointer;transition:border-color .18s ease,color .18s ease,box-shadow .18s ease}.budget-chip:hover,.budget-chip[aria-expanded=true]{border-color:var(--text-primary);color:var(--text-primary)}.budget-chip strong{font-weight:600;color:var(--text-primary)}.budget-chip .material-symbols-rounded{font-size:16px;color:var(--text-muted);transition:transform .18s ease}.budget-chip[aria-expanded=true] .material-symbols-rounded{transform:rotate(180deg);color:var(--text-primary)}.budget-chip-options{display:flex;flex-wrap:wrap;gap:.4375rem;margin-top:.625rem;animation:budget-chip-options-in .2s ease-out}@keyframes budget-chip-options-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.budget-chip-option{padding:.5rem 1.125rem;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,opacity .18s ease}.budget-chip-option:hover{border-color:var(--text-primary);color:var(--text-primary)}.budget-chip-option.selected{border-color:var(--text-primary);background:var(--text-primary);color:var(--background);font-weight:600}.share-page{min-height:100vh;background:var(--background)}.share-header{display:flex;align-items:center;justify-content:flex-end;padding:.875rem 1.5rem;padding-top:calc(.875rem + env(safe-area-inset-top,0px));border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--background);z-index:100}.share-try-btn{font-size:.875rem;padding:.5rem 1.5rem}.share-private{text-align:center;padding:4rem 1rem;color:var(--text-secondary)}.share-private .material-symbols-rounded{font-size:3rem;color:var(--text-muted);display:block;margin-bottom:1rem}.share-private h2{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.share-private p{margin-bottom:1.5rem;font-size:.875rem}.share-cta{text-align:center;padding:2rem 1rem 3rem;border-top:1px solid var(--border);margin-top:2rem}.share-cta p{font-size:.9375rem;color:var(--text-secondary);margin-bottom:1rem}.source-banner{display:flex;align-items:center;gap:.5rem;background:color-mix(in srgb,var(--text-muted) 8%,transparent);border:none;border-radius:var(--r-sm);padding:.5rem .75rem;margin-bottom:1rem;font-size:.8125rem;color:var(--text-secondary, var(--text-muted))}.source-banner .material-symbols-rounded{font-size:.95rem;flex-shrink:0;color:var(--text-muted)}.source-banner span{flex:1;font-weight:400}.source-banner-close{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:0;display:flex;opacity:.7}.source-banner-close .material-symbols-rounded{font-size:1rem}.lang-notice{display:flex;align-items:center;gap:.5rem;background:color-mix(in srgb,var(--text-muted) 8%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 20%,transparent);border-radius:var(--r-sm);padding:.625rem .75rem;margin-bottom:1rem;font-size:.8125rem;color:var(--text-secondary)}.lang-notice .material-symbols-rounded{font-size:1rem;flex-shrink:0;opacity:.6}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.modal-card{background:var(--background);border-radius:var(--r-md);padding:2rem;width:100%;max-width:360px;position:relative;box-shadow:var(--shadow-lg)}.modal-close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;color:var(--text-muted);padding:.25rem;display:flex}.signin-modal-title{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.signin-modal-desc{font-size:.875rem;color:var(--text-secondary);margin-bottom:1.5rem}.signin-modal-error{font-size:.8125rem;color:var(--error);margin-bottom:1rem;line-height:1.4}.signin-google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.625rem;padding:.75rem 1rem;border:0;background:#fff;color:#121212;border-radius:var(--r-pill);font-size:1.0625rem;font-weight:600;letter-spacing:-.01em;cursor:pointer}.signin-google-btn:hover{background:#f1f0ee}.signin-apple-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.625rem;padding:.75rem 1rem;border:0;background:#000;color:#fff;border-radius:var(--r-pill);font-size:1.0625rem;font-weight:600;letter-spacing:-.01em;cursor:pointer}.signin-apple-btn:hover{background:#1a1a1a}.signin-apple-btn:disabled{opacity:.6;cursor:default}.signin-legal-text{margin-top:1rem;font-size:.75rem;color:var(--text-muted);text-align:center}.signin-legal-text a{color:var(--text-muted);text-decoration:underline}.signin-legal-text a:hover{color:var(--text-secondary)}.legal-page{min-height:100vh;background:var(--background)}.legal-content{max-width:720px;margin:0 auto;padding:2rem 1.5rem 4rem}.legal-content h1{font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.legal-updated{font-size:.875rem;color:var(--text-muted);margin-bottom:2rem}.legal-content h2{font-size:1rem;font-weight:600;margin:1.75rem 0 .5rem}.legal-content p,.legal-content ul,.legal-content ol{font-size:.9375rem;color:var(--text-secondary);line-height:1.65}.legal-content ul,.legal-content ol{padding-left:1.5rem}.legal-content li{margin-bottom:.25rem}.share-cta-btns{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.like-btn{display:inline-flex;align-items:center;gap:.25rem;background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:.875rem;padding:.375rem;border-radius:var(--r-sm);transition:color .15s,background .15s;line-height:1}.like-btn:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.like-btn.liked{color:#e53935}.like-btn.liked .material-symbols-rounded{font-variation-settings:"FILL" 1}.like-btn.liked:hover{background:#e539351a}.like-btn .material-symbols-rounded{font-size:1.25rem}.like-count{font-size:.8125rem;font-weight:500}.community-feed{margin-top:0;padding-top:0}.home-community-feed{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}@media (max-width: 768px){.home-community-feed{display:none}}.feed-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.feed-title{font-size:1.125rem;font-weight:700;color:var(--text-primary)}@media (max-width: 768px){.feed-title,.feed-header{display:none}}.feed-tabs-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:.75rem;flex-wrap:wrap}.feed-sort-btns{display:flex;gap:.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:3px}.feed-sort-btn{background:none;border:none;cursor:pointer;font-size:.8125rem;font-weight:500;color:var(--text-muted);padding:.3125rem .875rem;border-radius:var(--r-sm);transition:color .15s,background .15s}.feed-sort-btn.active{background:var(--background);color:var(--text-primary)}.feed-style-filter,.feed-category-filter{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:none}.my-designs-filter-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.my-designs-filter-row .feed-category-filter{flex:1;min-width:0;margin-bottom:0;padding-bottom:0}.my-designs-favorite-toggle{flex-shrink:0}.feed-style-filter{margin-bottom:1.25rem}.feed-category-filter{margin-bottom:.5rem}.feed-style-filter::-webkit-scrollbar,.feed-category-filter::-webkit-scrollbar{display:none}.feed-filter-btn{flex-shrink:0;background:none;border:1px solid var(--border);cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);padding:.5rem 1rem;min-height:36px;border-radius:var(--r-pill);transition:color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease);white-space:nowrap;-webkit-tap-highlight-color:transparent}.feed-filter-btn:hover{color:var(--text-primary)}.feed-filter-btn:active{transform:scale(.97)}.feed-filter-btn.active{background:var(--primary);border-color:var(--primary);color:var(--background);font-weight:600}.feed-empty{text-align:center;color:var(--text-muted);font-size:.9375rem;padding:3rem 0}.feed-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}@media (min-width: 640px){.feed-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.feed-grid{grid-template-columns:repeat(4,1fr)}}.feed-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;cursor:pointer;transition:transform .15s,box-shadow .15s}@media (hover: hover){.feed-card:hover{transform:translateY(-2px)}}.feed-card-image-wrap{position:relative;aspect-ratio:1;overflow:hidden;background:var(--surface);cursor:pointer;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,.04)}.feed-card-image{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .25s ease-out;-webkit-touch-callout:none;-webkit-user-drag:none;user-select:none;-webkit-user-select:none;pointer-events:none}.feed-card-image.is-loaded{opacity:1}.feed-card-image-placeholder{width:100%;height:100%;background:var(--border)}.feed-card-badge{position:absolute;top:.5rem;left:.5rem;font-size:.6875rem;font-weight:600;padding:.2rem .5rem;border-radius:var(--r-sm);text-transform:uppercase;letter-spacing:.02em;pointer-events:none}.badge-after{background:var(--accent);color:var(--background)}.badge-before{background:#0000008c;color:var(--background)}.feed-card-footer{display:flex;align-items:center;justify-content:space-between;padding:.5rem .625rem .5rem .75rem}.feed-style-tag{font-size:.75rem;padding:.2rem .6rem}.feed-card-author{display:inline-flex;align-items:center;gap:.4rem;background:none;border:0;padding:0;cursor:pointer;color:var(--text-primary);font-size:.8125rem;min-width:0}.feed-card-author:hover{color:var(--primary)}.feed-card-author-placeholder{display:inline-block;height:22px;font-size:.8125rem;line-height:22px;visibility:hidden}.feed-card-author-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--surface-elevated)}.feed-card-author-avatar-placeholder{display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted)}.feed-card-author-avatar-placeholder .material-symbols-rounded{font-size:16px}.feed-card-author-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:16ch}.save-prompt{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:1.5rem;text-align:center;margin-top:1.5rem}.save-prompt .material-symbols-rounded{font-size:2rem;color:var(--text-muted);display:block;margin-bottom:.5rem}.save-prompt p{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem}.save-prompt-quota{font-weight:600;color:var(--text-primary)}.save-prompt p,.save-prompt-quota{word-break:keep-all}.header-profile{position:relative}.header-auth-placeholder{width:32px;height:32px}.header-avatar-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;border-radius:50%;cursor:pointer;padding:0;color:var(--text-secondary);transition:opacity .15s}.header-avatar-btn:hover{opacity:.8}.header-avatar-btn .avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;display:block}.header-avatar-btn .material-symbols-rounded{font-size:1.75rem}.header-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--background);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-lg);min-width:180px;z-index:300;overflow:hidden;animation:dropdown-in .12s ease}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.header-dropdown-user{padding:.75rem 1rem .625rem}.header-dropdown-name{font-size:.8125rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;display:block}.header-dropdown-divider{height:1px;background:var(--border);margin:0}.header-dropdown-item{display:flex;align-items:center;gap:.625rem;width:100%;padding:.75rem 1rem;border:none;background:none;cursor:pointer;font-size:.875rem;color:var(--text-primary);text-align:left;transition:background .12s;font-family:inherit}.header-dropdown-item:hover{background:var(--surface)}.header-dropdown-item .material-symbols-rounded{font-size:1.125rem;color:var(--text-secondary)}.header-dropdown-item.danger,.header-dropdown-item.danger .material-symbols-rounded{color:var(--error)}.onboarding-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:500;padding:1rem}.onboarding-box{background:var(--background);border-radius:var(--r-md);padding:2rem 1.75rem 1.75rem;width:100%;max-width:360px;text-align:center;position:relative;box-shadow:var(--shadow-lg)}.onboarding-skip{position:absolute;top:1rem;right:1rem;border:none;background:none;cursor:pointer;font-size:.8125rem;color:var(--text-muted);padding:.25rem .5rem;font-family:inherit;transition:color .15s}.onboarding-skip:hover{color:var(--text-secondary)}.onboarding-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:var(--surface);border-radius:50%;margin-bottom:1.25rem}.onboarding-icon-wrap .material-symbols-rounded{font-size:2rem;color:var(--text-primary)}.onboarding-title{font-size:1.125rem;font-weight:700;margin:0 0 .625rem}.onboarding-desc{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1.5rem}.onboarding-dots{display:flex;justify-content:center;gap:.375rem;margin-bottom:1.25rem}.onboarding-dot{width:6px;height:6px;border-radius:50%;background:var(--border);transition:background .2s,width .2s}.onboarding-dot.active{background:var(--primary);width:18px;border-radius:var(--r-sm)}.onboarding-cta{width:100%}.onboarding-overlay-transparent{background:transparent;transition:background .4s ease-out}.generate-error{text-align:center;padding:3rem 1rem;color:var(--text-secondary)}.generate-error .material-symbols-rounded{font-size:2.5rem;color:var(--text-muted);display:block;margin-bottom:.75rem}.generate-error h3{font-size:1.0625rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.generate-error p{font-size:.875rem;margin-bottom:1.5rem;max-width:320px;margin-left:auto;margin-right:auto}.generate-error .controls{justify-content:center}@media (max-width: 768px){.header{padding:.75rem 1rem}.header-nav-btn span{display:none}.design-grid{grid-template-columns:repeat(2,1fr);gap:.625rem}.my-designs-header{margin-bottom:1rem}.detail-title h2{font-size:1rem}.photo-slots{gap:.5rem}.share-panel-link-row{flex-wrap:wrap}.share-link-input{flex-basis:100%}}.credit-badge{display:inline-flex;align-items:center;gap:.2rem;background:none;border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-secondary);font-family:inherit;font-size:.8rem;font-weight:600;padding:.375rem .5rem .375rem .4rem;cursor:pointer;transition:border-color .15s,color .15s,background .15s;min-height:32px;white-space:nowrap}.credit-badge:hover{border-color:var(--border-hover);color:var(--text-primary)}.credit-badge .material-symbols-rounded{font-size:16px;color:#f5a623}.credit-badge-empty{border-color:#d9534f;color:#d9534f}.credit-badge-empty .material-symbols-rounded{color:#d9534f}.credit-badge-num{font-variant-numeric:tabular-nums}.credit-modal{max-width:420px;width:calc(100% - 2rem);padding:1.5rem}.credit-modal-title{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.credit-modal-desc{margin:0 0 1.25rem;font-size:.9rem;color:var(--text-secondary)}.credit-options{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.5rem}.credit-option{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.credit-option-icon{color:var(--text-secondary);margin-top:2px}.credit-option-body{flex:1}.credit-option-title{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:.2rem}.credit-option-title-text{white-space:nowrap}.credit-option-tag{font-size:.65rem;font-weight:500;color:var(--text-secondary);background:var(--border);padding:.1rem .4rem;border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.04em}.credit-option-desc{font-size:.8rem;color:var(--text-secondary);line-height:1.4}.credit-daily-hint{display:flex;align-items:center;gap:.4rem;margin:.5rem 0 0;padding:.6rem .75rem;background:var(--surface);border-radius:var(--r-sm);font-size:.8rem;color:var(--text-secondary)}.credit-daily-hint .material-symbols-rounded{font-size:16px;color:#f5a623}.credit-option-wrap{list-style:none}.credit-option-clickable{width:100%;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color .15s,background .15s}.credit-option-clickable:hover{border-color:var(--border-hover);background:var(--surface-elevated)}.credit-option-chevron{color:var(--text-secondary);align-self:center}.credit-option-highlight,.credit-option-highlight.credit-option-clickable{background:var(--text-primary);border-color:var(--text-primary);color:var(--surface)}.credit-option-highlight .credit-option-icon,.credit-option-highlight .credit-option-title,.credit-option-highlight .credit-option-desc,.credit-option-highlight .credit-option-chevron{color:var(--surface)}.credit-option-highlight.credit-option-clickable:hover{background:var(--text-primary);border-color:var(--text-primary);opacity:.92}.header-text-link{background:none;border:none;padding:.4rem .6rem;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);border-radius:var(--r-sm);transition:color .15s,background .15s}.header-text-link:hover{color:var(--text-primary);background:var(--surface-elevated)}@media (max-width: 480px){.header-text-link{display:none}}.header-credit-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .6rem .3rem .45rem;border:1px solid var(--border);border-radius:var(--r-pill);background:none;cursor:pointer;font-size:.8125rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-secondary);transition:color .15s,background .15s,border-color .15s}.header-credit-chip .material-symbols-rounded{font-size:16px}.header-credit-chip:hover{color:var(--text-primary);border-color:var(--text-primary)}.header-credit-chip.is-empty{color:var(--accent);border-color:var(--accent)}.pricing-page{max-width:1100px}.pricing-hero{text-align:center;padding:2rem 0 2.5rem}.pricing-title{font-size:2.25rem;font-weight:700;margin:0 0 .5rem;color:var(--text-primary)}@media (max-width: 768px){.pricing-title{display:none}}.pricing-subtitle{font-size:1rem;color:var(--text-secondary);margin:0 0 1.5rem}.pricing-cycle-toggle{display:inline-flex;gap:.25rem;padding:.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill)}.pricing-cycle-btn{position:relative;border:none;background:transparent;padding:.5rem 1rem;border-radius:var(--r-pill);font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.pricing-cycle-btn.active{background:var(--primary);color:var(--background)}.pricing-cycle-save{display:inline-block;margin-left:.4rem;font-size:.7rem;padding:.1rem .4rem;background:#f5a62333;color:#b87a12;border-radius:var(--r-pill);font-weight:600}.pricing-cycle-btn.active .pricing-cycle-save{background:#ffffff40;color:var(--background)}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,360px));justify-content:center;gap:1.25rem;margin-bottom:3rem}@media (max-width: 900px){.plan-grid{grid-template-columns:1fr;max-width:480px;margin-left:auto;margin-right:auto}}.plan-card{position:relative;display:flex;flex-direction:column;padding:1.75rem 1.5rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.plan-card-highlight{border-color:var(--primary)}.plan-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--primary);color:var(--background);font-size:.7rem;font-weight:600;padding:.25rem .75rem;border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.04em}.plan-name{font-size:1.25rem;font-weight:700;margin:0 0 .25rem;color:var(--text-primary)}.plan-tagline{font-size:.85rem;color:var(--text-secondary);margin:0 0 1.25rem;min-height:2.5em}.plan-price{display:flex;align-items:baseline;gap:.25rem;margin-bottom:.1rem}.plan-price-amount{font-size:2rem;font-weight:700;color:var(--text-primary)}.plan-price-unit{font-size:.85rem;color:var(--text-secondary)}.plan-price-sub{font-size:.75rem;color:var(--text-secondary);margin-bottom:.5rem}.plan-credits{font-size:.9rem;font-weight:600;color:var(--text-primary);padding:.5rem 0;margin:.75rem 0 1rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.plan-features{list-style:none;padding:0;margin:0 0 1.5rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.plan-features li{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;color:var(--text-primary);line-height:1.4}.plan-features .material-symbols-rounded{font-size:1rem;color:#16a34a;margin-top:2px}.plan-cta{width:100%}.plan-trial-note{text-align:center;font-size:.75rem;color:var(--text-secondary);margin-top:.5rem}.credit-packs-section{padding-top:1rem;border-top:1px solid var(--border)}.section-subtitle{text-align:center;color:var(--text-secondary);margin:0 0 1.5rem}.pack-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media (max-width: 700px){.pack-grid{grid-template-columns:1fr;max-width:420px;margin-left:auto;margin-right:auto}}.pack-card{padding:1.25rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);text-align:center}.pack-card-highlight{border-color:var(--primary)}.pack-name{font-size:1rem;font-weight:600;margin:0 0 .5rem;color:var(--text-primary)}.pack-credits{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.pack-price{font-size:.95rem;color:var(--text-secondary);margin-bottom:1rem}.pack-cta{width:100%}.pricing-footnote{text-align:center;font-size:.75rem;color:var(--text-secondary);margin-top:2rem}.account-page{max-width:720px}.page-title{font-family:var(--font-display);font-size:1.875rem;font-weight:700;letter-spacing:-.03em;margin:1rem 0 1.5rem;color:var(--text-primary)}h1,h2,h3,.step-title,.section-title,.invite-card-title,.account-card-header h2,.empty-state h2{font-family:var(--font-display);letter-spacing:-.025em}@media (max-width: 768px){.page-title{display:none}}.account-card{padding:1.5rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);margin-bottom:1rem}.account-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.account-card-header h2{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.account-plan-badge{font-size:.8rem;font-weight:600;padding:.25rem .6rem;border-radius:var(--r-pill);background:var(--surface-elevated);color:var(--text-primary)}.account-plan-badge.plan-pro,.account-plan-badge.plan-studio{background:var(--primary);color:var(--background)}.account-credits-num{display:inline-flex;align-items:center;gap:.25rem;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.account-credits-num .material-symbols-rounded{color:#f5a623}.account-card-desc{font-size:.875rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.5}.account-status-row{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem}.account-status-row .material-symbols-rounded{font-size:18px}.account-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.account-error{font-size:.8rem;color:#c0392b;margin:.75rem 0 0}.empty-state{text-align:center;padding:3rem 1.5rem}.empty-state h2{margin:0 0 .5rem}.empty-state p{margin:0 0 1.75rem;color:var(--text-secondary)}.empty-icon{font-size:48px!important;color:var(--text-secondary);margin-bottom:1rem}.invite-page{max-width:720px}.invite-subtitle{color:var(--text-secondary);font-size:.95rem;margin:-.5rem 0 1.5rem;line-height:1.5}@media (max-width: 768px){.invite-subtitle{margin-top:0}}.invite-card{padding:1.5rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);margin-bottom:1rem}.invite-card-title{font-size:1.1rem;font-weight:600;margin:0 0 .5rem;color:var(--text-primary)}.invite-card-desc{font-size:.875rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.5}.invite-code-row{margin:.75rem 0}.invite-code{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.25rem;font-weight:700;letter-spacing:.08em;padding:.5rem 1rem;background:var(--surface-elevated);border-radius:var(--r-sm);color:var(--text-primary)}.invite-link-row{display:flex;gap:.5rem;align-items:stretch;margin:.75rem 0;flex-wrap:wrap}.invite-link-input{flex:1 1 260px;min-width:0;padding:.55rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);font-size:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fafafa;color:var(--text-primary)}.invite-share-btn{width:100%;justify-content:center;margin-top:.25rem}.invite-hint{font-size:.8rem;color:var(--text-secondary);margin:.75rem 0 0}.promo-form{display:flex;gap:.5rem;margin:.75rem 0 .5rem;flex-wrap:wrap}.promo-input{flex:1 1 200px;min-width:0;padding:.55rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);font-size:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary);background:var(--surface)}.promo-input:focus{outline:none;border-color:var(--primary)}.promo-success,.promo-error{display:flex;align-items:center;gap:.4rem;font-size:.85rem;margin:.75rem 0 0}.promo-success{color:#2f7a4d}.promo-success .material-symbols-rounded{font-size:18px;color:#2f7a4d}.promo-error{color:#c0392b}.promo-error .material-symbols-rounded{font-size:18px;color:#c0392b}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{position:relative;background:var(--background);border-radius:var(--r-md);padding:1.75rem;width:100%;max-width:440px;box-shadow:0 20px 48px #00000040;max-height:calc(100vh - 2rem);overflow-y:auto}.modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;line-height:1;border-radius:var(--r-sm)}.modal-close:hover{background:var(--surface-2);color:var(--text-primary)}.modal h3{margin:0 0 .5rem;font-size:1.125rem}.report-modal .report-desc{margin:0 0 1.25rem;font-size:.875rem;color:var(--text-secondary)}.report-reasons{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.report-reason{display:flex;align-items:center;gap:.625rem;padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;font-size:.875rem;transition:border-color .15s,background .15s}.report-reason:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent)}.report-reason input[type=radio]{margin:0;accent-color:var(--accent)}.report-reason input:disabled+span{color:var(--text-muted)}.report-note{width:100%;padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--r-sm);font-family:inherit;font-size:1rem;resize:vertical;box-sizing:border-box;margin-bottom:1rem;background:var(--background);color:var(--text-primary)}.report-note:focus{outline:none;border-color:var(--accent)}.caption-modal h3{margin:0 0 1rem;font-size:1.0625rem;font-weight:600}.caption-textarea{width:100%;padding:.75rem .875rem;border:1px solid var(--border);border-radius:var(--r-md);font-family:inherit;font-size:1rem;resize:vertical;box-sizing:border-box;background:var(--background);color:var(--text-primary);line-height:1.5}.caption-textarea:focus{outline:none;border-color:var(--accent)}.caption-counter{margin-top:.375rem;margin-bottom:1rem;text-align:right;font-size:.75rem;color:var(--text-muted)}.design-caption{margin:.5rem 0 0;font-size:.9375rem;line-height:1.5;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word}.feed-card-caption-edit{background:none;border:none;padding:.125rem .375rem;margin-left:.25rem;cursor:pointer;color:var(--text-muted);vertical-align:middle}.feed-card-caption-edit:hover{color:var(--text-primary)}.feed-card-caption-edit .material-symbols-rounded{font-size:1rem}.report-error{color:#c0392b;font-size:.8125rem;margin:.5rem 0 1rem}.report-actions{display:flex;justify-content:flex-end;gap:.5rem}.delete-account-desc{font-size:.9375rem;color:var(--text-primary);margin:.5rem 0 .75rem}.delete-account-list{margin:0 0 .875rem;padding-left:1.125rem;font-size:.875rem;color:var(--text-secondary);line-height:1.6}.delete-account-billing{font-size:.8125rem;color:var(--text-secondary);background:var(--surface-elevated, #f5f1ea);border-left:3px solid #c97a72;padding:.625rem .75rem;border-radius:var(--r-sm);margin:0 0 .875rem;line-height:1.5}.delete-account-final{font-size:.875rem;color:#b8645c;font-weight:600;margin:0 0 1rem}.report-done{text-align:center;padding:.75rem 0}.report-done-icon{font-size:48px!important;color:var(--accent);margin-bottom:.75rem}.report-done h3{margin-bottom:.5rem}.report-done p{color:var(--text-secondary);font-size:.875rem;margin-bottom:1.5rem}.moderation-notice{display:flex;gap:.625rem;align-items:flex-start;padding:.75rem .875rem;background:#e67e2214;border:1px solid rgba(230,126,34,.3);border-radius:var(--r-sm);font-size:.875rem;color:#b45f09;margin-bottom:1rem}.moderation-notice .material-symbols-rounded{font-size:18px;flex-shrink:0}.js-splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#1a1a1a;display:flex;align-items:center;justify-content:center;overflow:hidden;animation:js-splash-in .4s ease-out both}.js-splash-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;animation:js-splash-zoom 3.2s ease-out both}.js-splash-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:#14100c61}.js-splash-wordmark{position:relative;font-family:var(--font-display);font-size:clamp(2.4rem,12vw,3.4rem);font-weight:700;letter-spacing:-.035em;color:#fff;animation:js-splash-word .7s cubic-bezier(.2,0,0,1) .15s both}.js-splash-exit{animation:js-splash-out .4s ease-in forwards}@keyframes js-splash-in{0%{opacity:0}to{opacity:1}}@keyframes js-splash-out{to{opacity:0}}@keyframes js-splash-zoom{0%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes js-splash-word{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.js-splash,.js-splash-bg,.js-splash-wordmark{animation:none}}.account-menu-list{display:flex;flex-direction:column;margin:1.75rem 0 .5rem;background:none;border:0;border-top:1px solid var(--border)}.account-menu-item{display:flex;align-items:center;gap:.875rem;padding:1rem .125rem;background:none;border:0;border-bottom:1px solid var(--border);font-size:.9375rem;font-weight:500;color:var(--text-primary);cursor:pointer;text-align:left;width:100%;transition:background .15s ease;-webkit-tap-highlight-color:transparent}.account-menu-item:last-child{border-bottom:0}.account-menu-item-value{font-size:.875rem;font-weight:500;color:var(--text-muted);margin-left:auto;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-item:hover{background:var(--surface-elevated)}.account-menu-item .material-symbols-rounded{font-size:20px;color:var(--text-muted);flex-shrink:0}.account-menu-item-label{flex:1;min-width:0}.account-menu-item-chevron{font-size:18px!important;color:var(--text-muted)}.account-menu-item-danger,.account-menu-item-danger .material-symbols-rounded{color:#c97a72}.account-lang-row{display:flex;flex-wrap:wrap;gap:.5rem}.account-lang-pill{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);font-size:.875rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,opacity .15s ease}.account-lang-pill:hover{border-color:var(--border-hover)}.account-lang-pill.selected{border-color:var(--primary);background:var(--surface-elevated);font-weight:600}.mobile-tabbar{display:none}@media (max-width: 768px){.mobile-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--background);border-top:1px solid var(--border);z-index:40;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mobile-tabbar-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem;padding:0;border:0;background:none;font-size:.6875rem;color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-tabbar-item.active{color:var(--primary);font-weight:600}.mobile-tabbar-item .material-symbols-rounded{font-size:22px}.mobile-tabbar-item.center{gap:0}.mobile-tabbar-fab{display:flex;align-items:center;justify-content:center;width:46px;height:46px;margin-top:-18px;margin-bottom:1px;border-radius:50%;background:var(--accent);color:var(--background);box-shadow:0 0 0 4px var(--background),0 4px 12px #00000038;transition:transform .15s ease}.mobile-tabbar-item.center:active .mobile-tabbar-fab{transform:scale(.92)}.mobile-tabbar-fab .material-symbols-rounded{font-size:25px}.mobile-tabbar-fab{position:relative}.mobile-tabbar-fab-plus{position:absolute;right:5px;bottom:5px;width:17px;height:17px;display:flex;align-items:center;justify-content:center;font-size:15px!important;font-variation-settings:"wght" 700;background:var(--primary);border-radius:50%;line-height:1}.mobile-tabbar-item.center.active{color:var(--primary)}.main,.legal-content{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.controls.controls-sticky{bottom:calc(56px + env(safe-area-inset-bottom,0px) + .75rem);left:1rem;right:1rem;padding:0;background:transparent;border-top:0;pointer-events:none}.controls.controls-sticky .btn{pointer-events:auto;box-shadow:0 6px 20px #0000002e}.controls.controls-sticky .credit-cost-hint{margin-bottom:.5rem;padding:.5rem .875rem;border-radius:var(--r-md);background:var(--surface);box-shadow:0 6px 20px #0000002e}.step-back-desktop-only{display:none}.home-with-sticky-cta{padding-bottom:calc(120px + env(safe-area-inset-bottom,0px))}}.my-tabs{display:flex;gap:0;margin:0 0 1rem;border-bottom:1px solid var(--border)}.my-tab{flex:1 1 0;padding:.625rem .5rem;border:0;background:none;font-family:var(--font-display);font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease);-webkit-tap-highlight-color:transparent}.my-tab:hover{color:var(--text-primary)}.my-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.mobile-header{display:none}@media (max-width: 768px){.mobile-header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;height:48px;padding:0 .5rem;padding-top:env(safe-area-inset-top,0px);background:var(--background);border-bottom:0;position:sticky;top:0;z-index:100;transition:transform .25s ease;will-change:transform}body.is-native .mobile-header{padding-top:calc(max(env(safe-area-inset-top,0px),50px) + 12px);padding-bottom:12px}body.scroll-down .mobile-header{transform:translateY(-100%)}.feed-sticky-mobile{position:sticky;top:env(safe-area-inset-top,0px);background:var(--background);z-index:50;transition:transform .25s ease;will-change:transform;padding-top:.5rem}body.is-native .feed-sticky-mobile{top:max(env(safe-area-inset-top,0px),50px)}body.scroll-down .feed-sticky-mobile{transform:translateY(calc(-100% - env(safe-area-inset-top,0px) - 4px))}body.is-native.scroll-down .feed-sticky-mobile{transform:translateY(calc(-100% - max(env(safe-area-inset-top,0px),50px) - 4px))}.mobile-header.mobile-header-empty{display:block;height:0;padding:0;padding-top:env(safe-area-inset-top,0px);background:var(--background);position:sticky;top:0;z-index:100;border-bottom:0;transform:none;transition:none}body.is-native .mobile-header.mobile-header-empty{padding-top:max(env(safe-area-inset-top,0px),50px);padding-bottom:0}.mobile-header-back{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-header-back .material-symbols-rounded{font-size:20px}.mobile-header-title{margin:0;font-size:1rem;font-weight:600;text-align:center;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-header-side{width:44px}.header{display:none}}.profile-edit-form{display:flex;flex-direction:column;gap:.25rem;width:100%}.profile-edit-form .edit-field-input{margin-bottom:.25rem}.profile-edit-actions{display:flex;gap:.5rem;margin-top:.75rem;justify-content:flex-end}.account-profile-summary{display:flex;align-items:center;gap:.875rem;width:100%;margin:1rem 0 1.25rem;padding:.875rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;text-align:left;transition:background .15s ease;-webkit-tap-highlight-color:transparent}.account-profile-summary:hover{background:var(--surface-elevated)}.account-profile-summary-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}.account-profile-summary-avatar-placeholder{background:var(--surface-elevated);display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.account-profile-summary-avatar-placeholder .material-symbols-rounded{font-size:24px}.account-profile-summary-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.account-profile-summary-name{font-size:.9375rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-profile-summary-handle{font-size:.8125rem;color:var(--text-muted)}.account-card-language{padding:1rem 1.125rem}.account-card-language-title{margin:0 0 .625rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.account-plan-upsell{margin:0 0 1rem;padding:1rem 1.125rem 1.125rem;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border)}.account-plan-upsell-title{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.account-plan-upsell-features{list-style:none;padding:0;margin:0 0 .875rem;display:flex;flex-direction:column;gap:.375rem}.account-plan-upsell-features li{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.account-plan-upsell-features .material-symbols-rounded{font-size:16px;color:var(--text-primary);flex-shrink:0}.account-plan-upsell-cta{width:100%;padding:.625rem 1rem;border:0;border-radius:var(--r-md);background:var(--text-primary);color:var(--background);font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .15s ease;-webkit-tap-highlight-color:transparent}.account-plan-upsell-cta:hover{opacity:.85}.account-credits-total{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;color:var(--text-primary)}.account-credits-breakdown{display:flex;flex-direction:column;gap:.5rem;margin:.875rem 0 .75rem}.account-credits-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.account-credits-row .material-symbols-rounded{font-size:18px;color:var(--text-muted)}.account-credits-row-label{flex:1;min-width:0}.account-credits-row-value{font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-primary)}.account-credits-card .account-plan-upsell-cta{margin-top:.875rem}.plan-current-label{margin-top:1rem;padding:.625rem 0;font-size:.875rem;font-weight:500;color:var(--text-muted);text-align:center;border-top:1px solid var(--border)}.reference-upload-area{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1rem;margin-top:.75rem;border:2px dashed var(--border-hover);border-radius:var(--r-md);background:var(--surface);cursor:pointer;color:var(--text-muted);transition:border-color .15s ease,background .15s ease}.reference-upload-area:hover{border-color:var(--text-primary);background:var(--surface-elevated)}.reference-upload-area .material-symbols-rounded{font-size:32px;color:var(--text-muted)}.reference-upload-area span{font-size:.875rem;font-weight:500}.reference-preview{position:relative;margin-top:.75rem;display:inline-block;border-radius:var(--r-md);overflow:hidden;background:var(--surface)}.reference-preview-img{display:block;width:100%;max-width:280px;height:auto;border-radius:var(--r-md)}.reference-preview-remove{position:absolute;top:.5rem;right:.5rem;width:28px;height:28px;border-radius:50%;border:0;background:#0009;color:var(--background);cursor:pointer;display:flex;align-items:center;justify-content:center}.reference-preview-remove .material-symbols-rounded{font-size:18px}.style-expander-hint{margin:0 0 .5rem;font-size:.875rem;color:var(--text-muted);line-height:1.5}.cleanup-option-group{display:flex;flex-direction:column;gap:.625rem;margin-top:.75rem}.cleanup-option{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);cursor:pointer;transition:border-color .15s ease,background .15s ease}.cleanup-option:hover{border-color:var(--text-primary)}.cleanup-option.selected{border-color:var(--text-primary);background:var(--surface-elevated)}.cleanup-option input{margin:.125rem 0 0;flex-shrink:0;cursor:pointer;accent-color:var(--text-primary)}.cleanup-option-body{display:flex;flex-direction:column;gap:.25rem}.cleanup-option-label{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.cleanup-option-desc{font-size:.8125rem;color:var(--text-muted);line-height:1.4}.generate-progress{max-width:460px;margin:4rem auto;padding:1.5rem 1.5rem 1.25rem;text-align:center}.generate-progress-title{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.generate-progress-bar{height:8px;background:var(--surface-elevated);border-radius:var(--r-pill);overflow:hidden;margin-bottom:.625rem}.generate-progress-bar-fill{height:100%;background:var(--text-primary);border-radius:var(--r-pill);transition:width .4s ease-out}.generate-progress-meta{margin:0;font-size:.875rem;color:var(--text-muted)}.account-card-hint{margin:.625rem 0 0;font-size:.8125rem;color:var(--text-muted);line-height:1.5}
