@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/bodoni-moda-500.ttf') format('truetype')}@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/bodoni-moda-600.ttf') format('truetype')}
/* Account surfaces inherit the existing light and dark tokens. */
.account-entry{display:flex;align-items:center;gap:12px;flex-shrink:0}.account-signin{font-size:13px;font-weight:600;white-space:nowrap;padding:12px 8px}.account-signin:hover{color:var(--accent)}.account-avatar,.profile-avatar{display:flex;align-items:center;justify-content:center;background:var(--wash);color:var(--accent);font-weight:600}.account-avatar{width:36px;height:36px;border-radius:50%;font-size:15px}.account-credit{display:flex;align-items:center;gap:6px;font-size:12px;font-variant-numeric:tabular-nums}.account-credit .icon{width:17px}.account-header .account-back{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.account-page{padding-top:54px;padding-bottom:90px;min-height:calc(100vh - 74px)}.account-page>h1{font-size:42px;margin:0 0 44px}.account-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px}.account-nav{display:flex;flex-direction:column;gap:8px}.account-nav a{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:6px;font-size:14px;color:var(--muted)}.account-nav a:hover{background:var(--surface-soft);color:var(--ink)}.account-nav a[aria-current]{background:var(--wash);color:var(--accent);font-weight:600}.account-signout{display:flex;align-items:center;gap:12px;padding:14px 16px;margin-top:28px;color:var(--muted);font-size:13px}.account-signout:hover{color:var(--accent)}.account-content{min-width:0}.account-panel{border:1px solid var(--line);border-radius:8px;padding:32px;background:var(--surface)}.account-panel h2{font-family:inherit;font-size:19px;font-weight:600;margin:0 0 8px}.account-description{color:var(--muted);margin:0 0 30px}.account-panel form{max-width:580px}.account-panel .field-label{display:block;margin:24px 0 9px;font-size:13px}.account-panel input{width:100%;min-height:46px}.account-panel input[readonly]{background:var(--surface-soft);color:var(--muted)}.profile-avatar{width:88px;height:88px;border-radius:8px;font-size:38px}.account-panel form>.button{margin-top:26px}.account-feedback{font-size:13px;line-height:1.6;min-height:21px;margin:14px 0 0;color:var(--muted)}.credit-balance{max-width:540px;margin-bottom:28px}.balance-number{font-size:48px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.2;margin:24px 0}.balance-number span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:8px}.credit-balance>.micro{margin-top:16px}.credit-filters{display:inline-flex;border:1px solid var(--line);padding:4px;border-radius:6px;gap:4px;margin:22px 0}.credit-filters button{padding:9px 16px;font-size:13px;border-radius:4px;color:var(--muted)}.credit-filters button[aria-pressed=true]{background:var(--surface-soft);color:var(--ink);font-weight:600}.credit-table-scroll{overflow-x:auto}.credit-records table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.credit-records th{color:var(--muted);font-weight:500;white-space:nowrap}.credit-records td,.credit-records th{padding:16px 12px;border-bottom:1px solid var(--line)}.credit-amount{font-variant-numeric:tabular-nums;white-space:nowrap}.credits-empty{text-align:center;padding:42px 12px;color:var(--muted)}.credits-empty>.icon{width:28px;height:28px}.credits-empty h3{font-family:inherit;font-size:14px;font-weight:500;color:var(--ink);margin:16px 0 8px}.credits-empty p{font-size:13px}.login-page{min-height:calc(100vh - 74px);display:grid;place-items:center;padding:64px 24px;background:var(--bg)}.login-panel{max-width:420px;width:100%;text-align:center}.login-panel h1{font-size:42px;line-height:1.2;margin:0 0 16px}.login-panel>p{color:var(--muted);font-size:14px}.login-panel .google-signin{margin-top:34px;background:var(--surface);border:1px solid var(--line);color:var(--ink);gap:12px;min-height:48px}.google-signin:hover{background:var(--surface-soft)}.google-signin[aria-disabled=true]{opacity:.55;cursor:not-allowed}.login-note{font-size:12px!important;line-height:1.6;margin:24px 0}.login-panel>.text-button{margin-top:8px}.account-loading{padding:100px 24px;text-align:center;color:var(--muted)}
@media(max-width:1000px){.site-header:has(.account-entry)>nav{gap:12px}.site-header:has(.account-entry){gap:16px;padding-left:20px;padding-right:20px}.account-layout{grid-template-columns:180px minmax(0,1fr);gap:24px}}
@media(max-width:760px){.site-header:has(.account-entry)>nav{display:none}.site-header:has(.account-entry) .mobile-navigation{display:block}.site-header:has(.account-entry) .mobile-navigation:not([open]) nav{display:none}.site-header:has(.account-entry) .mobile-navigation[open] nav{display:flex;position:absolute;right:12px;top:68px;flex-direction:column;height:auto;background:var(--surface);padding:16px;border:1px solid var(--line)}.account-layout{grid-template-columns:minmax(0,1fr);gap:24px}.account-layout>aside{display:flex;align-items:center;justify-content:space-between;gap:8px}.account-nav{flex-direction:row}.account-signout{margin:0;padding:12px 4px}.account-page{padding-top:30px}.account-page>h1{font-size:34px;margin-bottom:24px}.account-panel{padding:24px}.credit-balance{max-width:none}.account-header .account-back{display:none}.account-entry{gap:7px}.account-credit span{display:none}}
@media(max-width:420px){.site-header:has(.account-entry){padding-left:12px;padding-right:12px;gap:6px}.site-header:has(.account-entry) .brand{font-size:14px;gap:4px}.account-signin{font-size:12px;padding:12px 4px}.account-page .account-panel{padding:20px}.account-nav a{padding:12px}.account-signout{font-size:12px}.account-signout .icon{display:none}.credit-records th,.credit-records td{padding:12px 8px}.login-panel h1{font-size:36px}}

/* Signed-in account actions live behind the avatar on every surface. */
.account-entry{position:relative}.account-menu{position:relative}.account-menu>summary{cursor:pointer;list-style:none}.account-menu>summary::-webkit-details-marker{display:none}.account-menu-panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 40px #0002;display:none;min-width:220px;padding:7px;position:absolute;right:0;top:calc(100% + 9px);z-index:30}.account-menu-panel:before{content:'';height:9px;left:0;position:absolute;right:0;top:-9px}.account-menu[open]>.account-menu-panel,.account-menu:hover>.account-menu-panel{display:block}.account-menu-item{align-items:center;border-radius:6px;color:var(--ink);display:flex;font-size:13px;gap:11px;min-height:42px;padding:10px 11px;text-align:left;width:100%}.account-menu-item:hover,.account-menu-item:focus-visible{background:var(--surface-soft);color:var(--accent)}.account-menu-item .icon{flex:0 0 auto;height:17px;width:17px}.account-menu-item>span{flex:1}.account-menu-item>strong{font-size:11px;font-variant-numeric:tabular-nums;font-weight:500;color:var(--muted)}.account-menu-logout{border-top:1px solid var(--line);border-radius:0;margin-top:5px;padding-top:12px}.account-menu-logout .icon{transform:rotate(180deg)}.theme-mode-dark{display:none}:root[data-theme='dark'] .theme-mode-light{display:none}:root[data-theme='dark'] .theme-mode-dark{display:block}
@media(max-width:650px){.account-menu-panel{position:fixed;right:12px;top:60px;min-width:210px}.account-menu-panel:before{display:none}}
dialog.login-modal{max-width:min(480px,calc(100vw - 32px));padding:48px 32px 32px;background:var(--surface)}
.login-modal .login-panel{max-width:none}.login-modal .login-panel h2{font-size:32px;line-height:1.2;margin:0 0 16px}.login-modal .login-panel>.account-feedback{margin-top:14px}.login-modal .login-panel>.text-button{margin-top:8px}.login-modal .login-note{margin:24px 0 12px}
@media(max-width:480px){dialog.login-modal{padding:44px 24px 28px}.login-modal .login-panel h2{font-size:28px}}
/* Foundations */
:root{--font-display:'Bodoni Moda','Didot','Bodoni 72','Bodoni MT',Georgia,serif;--bg:#faf9f7;--surface:#fff;--surface-soft:#f5f5f4;--field:#fff;--art-surface:#fff;--ink:#17191b;--muted:#686d74;--line:#e4e5e7;--accent:#e31b36;--accent-fill:#e31b36;--accent-hover:#ba1029;--wash:#fff0f2;--focus:#e31b3655;--selection:#ffd8df;--solid:#17191b;--solid-ink:#fff;--solid-hover:#303338;--error:#b52f08;--overlay:#fffffff0;--toast-bg:#202224;--toast-ink:#fff;--radius:8px;--shadow:0 12px 35px #19191908;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--ink);font-size:15px;font-synthesis:none;color-scheme:light}
:root[data-theme='dark']{--bg:#0d0e10;--surface:#16181b;--surface-soft:#202328;--field:#1b1d21;--art-surface:#fbfaf8;--ink:#f5f3f0;--muted:#bbb7b1;--line:#36393e;--accent:#ff6078;--accent-fill:#e31b36;--accent-hover:#ba1029;--wash:#3b1820;--focus:#ff607866;--selection:#7e2334;--solid:#f5f3f0;--solid-ink:#151619;--solid-hover:#fff;--error:#ff947a;--overlay:#16181bf0;--toast-bg:#f5f3f0;--toast-ink:#16181b;--shadow:0 18px 48px #00000045;color-scheme:dark}
*{box-sizing:border-box}html,body{min-height:100%;background:var(--surface)}body{margin:0;transition:background-color .18s ease-out,color .18s ease-out}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer;color:inherit;background:none;border:0}a{color:inherit;text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}button,a{-webkit-tap-highlight-color:transparent}button,a,input,textarea,select,summary{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent)}input:focus,textarea:focus,select:focus{outline:2px solid var(--focus);border-color:var(--accent)}::selection{background:var(--selection)}input,textarea{caret-color:var(--accent)}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance;font-family:var(--font-display);font-optical-sizing:auto}p{text-wrap:pretty;line-height:1.6}h1{font-size:clamp(36px,4vw,58px);line-height:1.07;letter-spacing:-.025em;font-weight:600}h2{font-size:30px;line-height:1.2;letter-spacing:-.02em;font-weight:600}h3{font-size:17px;line-height:1.35;letter-spacing:-.01em;font-weight:500}small{font-size:12px}svg{flex-shrink:0}.icon{width:19px;height:19px;display:inline-block;vertical-align:middle}.wrap{max-width:1260px;margin:auto;padding-left:40px;padding-right:40px}
.site-header{height:74px;padding:0 36px;display:flex;align-items:center;gap:34px;border-bottom:1px solid var(--line);background:var(--surface);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:750;letter-spacing:-.6px;white-space:nowrap}.brand>svg{width:35px;height:35px}.site-header nav{display:flex;align-items:center;gap:25px;height:100%;font-size:13px}.site-header nav>a,.site-header nav>button{height:100%;display:flex;align-items:center;border-bottom:2px solid transparent;padding:2px 0 0}.site-header nav .active{color:var(--accent);border-color:var(--accent)}.site-header nav a:hover,.site-header nav button:hover{color:var(--accent)}.header-right{margin-left:auto;display:flex;align-items:center;gap:12px}.theme-toggle{position:relative;min-width:40px;min-height:40px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.theme-toggle:hover{background:var(--surface-soft);color:var(--accent)}.theme-icon{position:absolute;width:18px;height:18px}.theme-icon-sun{display:none}:root[data-theme='dark'] .theme-icon-moon{display:none}:root[data-theme='dark'] .theme-icon-sun{display:block}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:12px 18px;border:1px solid var(--line);border-radius:6px;background:var(--surface);font-size:13px;font-weight:600;line-height:1.3;min-height:44px;transition:background .16s ease-out,border-color .16s ease-out,color .16s ease-out,transform .16s ease-out}.button:hover:not(:disabled){background:var(--accent-fill);border-color:var(--accent-fill);color:#fff}.button:active:not(:disabled){transform:translateY(1px)}.button.primary{background:var(--accent-fill);border-color:var(--accent-fill);color:#fff}.button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.button.dark{background:var(--solid);border-color:var(--solid);color:var(--solid-ink)}.button.dark:hover:not(:disabled){background:var(--accent-fill);border-color:var(--accent-fill);color:#fff}.button.outline-accent{border-color:var(--accent);color:var(--accent)}.button.outline-accent:hover:not(:disabled){background:var(--accent-fill);border-color:var(--accent-fill);color:#fff}.wide{width:100%}.micro{font-size:11px;color:var(--muted);line-height:1.55}.center{text-align:center}.eyebrow{font-size:11px;letter-spacing:.045em;color:var(--muted);font-weight:600;margin-bottom:16px}.lead{font-size:18px;color:var(--muted);line-height:1.55;max-width:52ch}
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;padding-top:65px;padding-bottom:65px;min-height:640px}.hero-copy .lead{margin:20px 0 28px}.quick-create{max-width:470px;border:1px solid var(--line);border-radius:8px;padding:18px;background:var(--surface);box-shadow:var(--shadow)}.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:16px}.tabs button{font-size:12px;flex:1;padding:7px 4px 15px;border-bottom:2px solid transparent}.tabs .active{color:var(--accent);border-color:var(--accent);font-weight:600}textarea,input,select{width:100%;background:var(--field);border:1px solid var(--line);border-radius:6px;padding:12px;font-size:13px;line-height:1.5;color:var(--ink)}textarea{resize:vertical;min-height:74px}::placeholder{color:var(--muted)}.field-label{display:block;font-size:12px;font-weight:600;margin:19px 0 9px}.quick-create .field-label{margin-top:14px}.quick-create>.micro{margin-top:13px}.style-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}.style-option{border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);padding:6px 4px 10px;min-width:0;transition:border-color .16s}.style-option .art{width:66%;margin:auto}.style-option span:last-child{display:block;font-size:11px;white-space:nowrap;margin-top:6px}.style-option:hover{border-color:var(--muted)}.style-option.selected{border-color:var(--accent);background:var(--wash)}
.art{display:block;aspect-ratio:1;position:relative;overflow:hidden;background-color:var(--art-surface);background-image:url('/assets/tattoo-sheet.png');background-size:400% 400%;background-position:var(--art-x) var(--art-y);background-repeat:no-repeat;mix-blend-mode:multiply}.art.variant-1{transform:rotate(-2deg) scale(.90)}.art.variant-2{transform:rotate(2deg) scale(.95)}.art.colored{filter:sepia(.8)}.pair-art{display:flex;align-items:center;justify-content:center;width:100%;overflow:hidden}.pair-art>.art{width:50%;flex-shrink:0}.hero-art{position:relative;min-height:490px;align-self:center}.art-print{background:var(--surface);position:absolute;border:1px solid var(--line);border-radius:7px;box-shadow:0 18px 30px #17191b08;display:flex;align-items:center;justify-content:center}.print-large{left:0;top:15px;width:68%;height:440px;transform:rotate(-3deg)}.print-large>.art{width:94%}.print-small{right:-15px;top:100px;width:50%;height:310px;transform:rotate(3deg)}.print-small .pair-art{width:96%}.art-caption{position:absolute;right:0;bottom:10px;font-size:11px;color:var(--muted)}
.section{padding-top:35px;padding-bottom:36px}.section-intro{color:var(--muted);margin:9px 0 24px}.discovery-grid,.style-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.discovery,.style-showcase{border:1px solid var(--line);border-radius:8px;padding:20px;background:var(--surface)}.discovery>.art,.discovery>.pair-art,.discovery>.lettering{height:180px;width:100%;margin-bottom:15px}.discovery>.art{width:180px;margin-left:auto;margin-right:auto}.discovery>.pair-art .art{width:48%;max-width:180px}.discovery p,.style-showcase p{font-size:13px;color:var(--muted);margin:7px 0 18px}.lettering{display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:64px;font-style:italic;letter-spacing:-5px}.lettering span{font-size:25px;letter-spacing:0}.style-showcase{text-align:center}.style-showcase:hover{border-color:var(--accent)}.style-showcase .art{width:185px;margin:0 auto 14px}.journey{display:grid;grid-template-columns:1fr 1.6fr;align-items:center;gap:35px;background:var(--bg);border-radius:10px;margin:20px 0 45px;padding:38px}.journey>div p,.journey li p{font-size:12px;color:var(--muted);margin-top:6px}.journey ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:0;padding:0}.journey li>span,.numbered>li>span{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600;margin-bottom:15px;background:var(--surface)}footer{border-top:1px solid var(--line);padding:26px 36px;display:flex;align-items:center;gap:24px}footer .brand{font-size:16px}footer .brand>svg{width:28px;height:28px}footer>span,footer button{font-size:11px;color:var(--muted)}footer>div{display:flex;gap:20px;margin-left:auto}footer button{padding:10px 0}.breadcrumbs{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);padding:28px 0}.breadcrumbs a:hover{color:var(--accent)}.page-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:28px 0 38px}.page-intro h1{font-size:45px}.page-intro .lead{font-size:17px;margin-top:14px}
.couple-principle{background:var(--bg);padding:24px 28px;border-radius:8px;max-width:760px}.couple-principle h2{font-size:20px;margin-bottom:7px}.couple-principle p{font-size:13px;color:var(--muted);max-width:68ch}.couple-filters>div:first-child{display:grid;gap:4px}.couple-filters>div:first-child strong{font-size:13px}.couple-filters>div:first-child span{font-size:11px;color:var(--muted)}
.filters{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:25px 0 20px}.filter-tabs{display:flex;gap:12px}.filter-tabs button{padding:10px 17px;border:1px solid var(--line);border-radius:6px;font-size:12px;background:#fff;min-height:42px}.filter-tabs .selected{color:var(--accent);border-color:var(--accent);background:var(--wash)}.filter-right{display:flex;gap:20px;align-items:center;font-size:12px;color:var(--muted)}.filter-right select{width:155px;padding:10px}.ideas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.idea-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:border-color .18s}.idea-card.featured{border-color:var(--accent)}.idea-card:hover{border-color:#999}.pair-preview{display:block;width:100%;padding:20px 10px 0;position:relative;overflow:hidden}.pair-preview .pair-art{height:215px}.pair-preview:hover .art{transform:scale(1.035);transition:transform .2s}.art-labels{position:absolute;top:22px;left:23px;right:23px;display:grid;grid-template-columns:1fr 1fr;font-size:10px;color:var(--muted);z-index:1}.art-labels>span:nth-child(2){padding-left:12px}.idea-card-body{padding:18px 20px 20px}.badge{display:inline-block;padding:4px 7px;font-size:10px;background:#f3f3f2;border-radius:4px;margin-bottom:10px}.badge.accent{color:#b73305;background:var(--wash)}.idea-card h3{font-size:17px}.idea-card p{font-size:12px;color:var(--muted);margin:6px 0 10px}.style-tag{display:inline-block;font-size:10px;border-radius:20px;padding:6px 9px;background:#f4f4f4;color:#4c5057}.idea-card .button{margin-top:16px;font-size:12px;min-height:42px}.couple-guide{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;padding:65px 0 40px}.couple-guide h2{font-size:27px}.numbered{padding:0;list-style:none;margin:25px 0 0}.numbered li{display:flex;gap:15px;align-items:flex-start;margin-bottom:24px}.numbered li>span{flex-shrink:0;margin:0}.numbered h3{font-size:14px}.numbered p{font-size:12px;color:var(--muted);margin-top:5px}.guide-cta{padding-left:45px;border-left:1px solid var(--line)}.guide-cta .pair-art{max-width:280px;height:150px;margin-bottom:15px}.guide-cta p{font-size:12px;color:var(--muted);margin:7px 0 15px}.faq h2,.related h2{font-size:25px;margin-bottom:18px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-of-type{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}summary::-webkit-details-marker{display:none}.faq summary{padding:18px 14px;font-size:13px;font-weight:500}.faq details p{padding:0 14px 20px;max-width:78ch;color:var(--muted);font-size:13px}details[open]>summary .icon{transform:rotate(180deg)}.related{padding:45px 0}.related>div{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related button{display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;padding:8px 15px;gap:12px;font-size:12px;text-align:left}.related .art{width:55px;flex-shrink:0}.related .icon{margin-left:auto}.letter-icon{font:italic 40px Georgia;width:55px;text-align:center}.project-name{display:flex;align-items:center;gap:10px;font-weight:600;font-size:14px;border-left:1px solid var(--line);padding-left:20px}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;border-radius:5px}.icon-button:hover{background:#f3f3f2}.local-status{font-size:11px;display:flex;gap:6px;align-items:center}.local-status .icon{width:16px;color:#20925f}.credit-button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;padding:10px 13px;font-size:12px;font-weight:600;white-space:nowrap}.workspace{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:calc(100vh - 74px);background:var(--bg)}.control-panel{padding:26px 24px 30px;background:#fff;border-right:1px solid var(--line)}.control-panel h2{font-size:21px;letter-spacing:-.02em;margin-bottom:22px}.segmented{display:flex;gap:5px;margin-bottom:14px}.segmented button{flex:1;border:1px solid var(--line);border-radius:6px;padding:12px 4px;font-size:11px;min-width:0;background:#fafafa}.segmented .selected{border-color:var(--accent);color:var(--accent);background:var(--wash)}.source-preset{display:flex;align-items:center;gap:14px;margin:25px 0}.source-preset>.pair-art{width:110px;border:1px solid var(--line);border-radius:6px;height:72px;padding:5px;flex-shrink:0}.source-preset>span{font-size:10px;color:var(--muted);line-height:1.7}.source-preset strong{font-size:11px;color:var(--ink);font-weight:500}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.control-panel .style-option .art{width:80%}.control-panel .style-option span:last-child{font-size:10px}.swatches{display:flex;align-items:center;gap:12px}.swatches>span{font-size:11px;color:var(--muted)}.swatch{width:26px;height:26px;border-radius:50%;border:3px solid #fff;outline:1px solid var(--line)}.swatch.black{background:#161616}.swatch.warm{background:#756957}.swatch.selected{outline:1.5px solid var(--accent)}.more-settings{border-top:1px solid var(--line);margin-top:26px;padding-top:6px}.more-settings summary{font-size:12px;padding:15px 0}.generate-area{margin-top:25px}.generate-area>.micro{margin-top:10px}.form-error{color:#b52f08;font-size:12px;margin-bottom:10px}.results-panel{padding:30px 28px;min-width:0}.results-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.results-heading .eyebrow{margin-bottom:8px}.results-heading h1{font-size:clamp(25px,2.4vw,36px);letter-spacing:-.025em}.compare-button{font-size:12px;flex-shrink:0}.demo-note{display:flex;align-items:center;gap:8px;color:#72706b;font-size:11px;margin-bottom:16px}.demo-note .icon{width:15px;height:15px}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.result-grid.single{grid-template-columns:minmax(0,1fr);max-width:650px;margin:auto}.result-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 14px 16px;position:relative;overflow:hidden}.result-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;font-weight:600}.result-card-top>span{padding:4px 6px;background:#fafafa;border-radius:3px}.result-art{width:100%;aspect-ratio:1;display:grid;place-items:center}.result-art>.art{width:95%}.result-art.portrait{aspect-ratio:4/5}.result-art.portrait>.art{width:90%}.result-tags{display:flex;gap:7px}.result-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0}.result-actions>span{font-size:10px;display:flex;gap:7px;align-items:center}.result-actions>span>.icon{width:15px}.result-actions>div{display:flex;gap:12px}.result-actions .button{font-size:12px}.saved{color:var(--accent)}.saved .icon{fill:var(--wash)}.history{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px}.history-heading{display:flex;align-items:center;gap:12px;margin-bottom:12px}.history-heading h2{font-size:14px;letter-spacing:0}.history-heading>span{color:var(--muted);font-size:11px}.history-heading>.text-button{margin-left:auto}.text-button{font-size:11px;color:var(--accent);padding:4px;text-decoration:underline;text-underline-offset:4px}.version-list{display:flex;gap:12px;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin;scrollbar-color:#d0c7bf #fff}.version-card{border:1px solid var(--line);border-radius:6px;min-width:190px;width:calc((100% - 24px)/3);flex-shrink:0;display:flex;align-items:center;padding:10px;text-align:left}.version-card.current{border-color:var(--accent)}.version-card>span{font-size:10px;flex-shrink:0;max-width:65px}.version-card small{display:block;background:var(--wash);color:var(--accent);font-size:9px;padding:4px 5px;margin-top:7px;border-radius:3px}.mini-pair{display:flex;min-width:0;flex:1}.mini-pair .art{width:50%}.empty-history{text-align:center;display:flex;align-items:center;justify-content:center;gap:14px;color:var(--muted);padding:25px 10px}.empty-history p{font-size:12px}.empty-history>.icon{width:25px}.storage-note{font-size:10px;color:var(--muted);margin-top:13px}.generating-overlay{position:absolute;inset:0;background:#fffE;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px}.generating-overlay strong{font-size:14px}.generating-overlay small{color:var(--muted)}.spinner{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.generating-overlay>.spinner{width:30px;height:30px;color:var(--accent)}@keyframes spin{to{transform:rotate(360deg)}}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#202224;color:white;font-size:13px;padding:13px 20px;border-radius:8px;z-index:100;transition:opacity .2s,transform .2s;max-width:90vw;text-align:center;box-shadow:0 5px 20px #0002}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid var(--line);border-radius:12px;padding:34px;max-width:min(560px,calc(100vw - 32px));width:100%;max-height:90dvh;overflow:auto;box-shadow:0 20px 90px #0002;color:var(--ink)}dialog::backdrop{background:#15161866}dialog h2{font-size:27px;margin:8px 30px 15px 0}dialog>p{font-size:14px;color:var(--muted);margin-bottom:22px}dialog>.micro{font-size:11px;margin:16px 0 0}dialog .eyebrow{font-size:10px;margin-bottom:10px}.modal-close{position:absolute;right:12px;top:12px}.modal-pair{margin:20px 0}.wide-modal{max-width:min(950px,calc(100vw - 32px))}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.compare-grid>section{min-width:0}.compare-art{display:flex;align-items:center;justify-content:center;min-height:220px;margin:15px 0;background:var(--bg);border-radius:8px}.compare-art>.art{width:50%}.compare-prompt{font-size:12px;color:var(--muted);margin:10px 0 20px;min-height:60px}.download-options{display:grid;gap:12px}.download-options .button{justify-content:flex-start}.download-options .button>span{margin-left:auto;font-size:11px;color:var(--muted)}.expanded-art>.art{width:100%}.empty{grid-column:1/-1;padding:50px;text-align:center;background:var(--bg)}.empty p{margin:10px 0 20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.workspace{grid-template-columns:335px minmax(0,1fr)}.results-panel{padding:34px;max-width:1600px;width:100%;margin:auto}.result-art{max-height:550px}.result-art>.art{max-width:550px}}
@media(max-width:1100px){.site-header{padding:0 24px;gap:22px}.site-header nav{gap:16px}.wrap{padding-left:28px;padding-right:28px}.hero{gap:25px}.hero-art{min-height:430px}.print-large{height:350px}.print-small{height:250px}.hero h1{font-size:45px}.local-status{display:none}.workspace{grid-template-columns:290px minmax(0,1fr)}.control-panel{padding:24px 18px}.results-panel{padding:25px 20px}.results-heading{align-items:flex-start}.results-heading h1{font-size:27px}.compare-button{padding:10px;font-size:0;gap:0}.compare-button .icon{width:20px}.result-actions{align-items:flex-start;flex-direction:column}.result-actions>div{align-self:flex-end}.pair-preview .pair-art{height:180px}.journey{margin-left:28px;margin-right:28px}.journey h2{font-size:26px}}
@media(max-width:850px){.site-header nav{gap:14px}.site-header .brand{font-size:17px}.site-header .brand svg{width:29px}.site-header nav>button{display:none}.sign-in{display:none}.site-header{height:68px}.hero{padding-top:45px;grid-template-columns:1fr 1fr;gap:20px}.hero h1{font-size:38px}.hero .lead{font-size:16px}.hero-art{min-height:380px}.print-large{height:320px;width:78%}.print-small{height:210px;top:140px}.discovery{padding:14px}.discovery>.art,.discovery>.pair-art,.discovery>.lettering{height:140px}.discovery>.art{width:140px}.discovery h3{font-size:16px}.discovery p{min-height:42px}.discovery .button{font-size:11px;padding:11px 8px;gap:5px}.discovery .button .icon{width:14px}.style-showcase .art{width:150px}.journey{grid-template-columns:1fr}.page-intro h1{font-size:36px}.page-intro>.button{font-size:11px;padding:12px}.ideas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.couple-guide{gap:30px}.guide-cta{padding-left:25px}.couple-guide h2{font-size:23px}.related button{gap:5px;padding:6px}.related .art,.letter-icon{width:40px}.related .icon{width:14px}.workspace{grid-template-columns:260px minmax(0,1fr)}.results-panel{padding:22px 16px}.results-heading h1{font-size:23px}.result-grid{gap:10px}.result-card{padding:8px}.result-card-top>span{font-size:9px}.result-card-top>.icon-button{min-width:24px;min-height:30px}.result-card-top .icon{width:15px}.control-panel h2{font-size:19px}.source-preset{gap:8px}.source-preset>.pair-art{width:90px}.result-tags{gap:3px}.result-tags .style-tag{font-size:8px;padding:5px 7px}.credit-button{font-size:10px;padding:8px;gap:5px}.project-name{font-size:12px;padding-left:10px}.editor-header{gap:15px}}
@media(max-width:650px){.site-header{padding:0 18px;gap:12px;height:66px;flex-wrap:wrap}.site-header nav{display:none}.site-header .header-right .button{font-size:11px;padding:10px 13px;min-height:38px}.brand{gap:8px}.wrap{padding-left:22px;padding-right:22px}.hero{display:flex;flex-direction:column;padding-top:40px;padding-bottom:30px;gap:20px}.hero h1{font-size:43px;letter-spacing:-.035em}.hero .lead{font-size:16px;margin:18px 0 24px}.hero .eyebrow{margin-bottom:13px}.quick-create{max-width:none;padding:16px}.quick-create .style-option .art{max-width:70px}.hero-art{min-height:295px;width:90%;margin:0 auto}.print-large{height:260px;width:62%;top:10px}.print-large .art{max-width:220px}.print-small{height:195px;top:65px;width:48%;right:0}.art-caption{bottom:0}.section{padding-top:25px;padding-bottom:25px}h2{font-size:27px}.section-intro{font-size:14px;margin-bottom:20px}.discovery-grid{grid-template-columns:1fr;gap:15px}.discovery{padding:20px}.discovery>.art,.discovery>.pair-art,.discovery>.lettering{height:190px}.discovery>.art{width:190px}.discovery h3{font-size:20px}.discovery p{min-height:0;margin-bottom:18px;font-size:14px}.discovery .button{font-size:13px}.style-grid{gap:8px}.style-showcase{padding:12px 5px}.style-showcase .art{width:100%;margin-bottom:8px}.style-showcase h3{font-size:12px}.style-showcase p{font-size:10px;line-height:1.5}.journey{margin:20px 22px 30px;padding:25px;gap:25px}.journey ol{grid-template-columns:1fr;gap:20px}.journey li{padding-left:48px;position:relative}.journey li>span{position:absolute;left:0;top:0}.journey li p{font-size:12px}.journey h2 br{display:none}footer{padding:24px 22px;flex-wrap:wrap;gap:15px}footer>span{order:3;width:100%;font-size:10px}footer>div{gap:15px}footer button{font-size:10px}.breadcrumbs{padding:22px 0;font-size:10px}.page-intro{margin:13px 0 25px;display:block}.page-intro h1{font-size:36px}.page-intro .lead{font-size:15px}.page-intro>.button{margin-top:20px;font-size:12px}.desktop-br{display:none}
.filters{flex-wrap:wrap;padding:22px 0 16px;gap:14px}.filter-tabs{gap:8px;width:100%}.filter-tabs button{flex:1;padding:10px 8px;font-size:11px}.filter-right{width:100%;justify-content:space-between;font-size:11px}.filter-right select{font-size:12px}.ideas-grid{grid-template-columns:1fr;gap:18px}.pair-preview .pair-art{height:auto;max-height:none}.pair-preview{padding:18px 12px 0}.pair-preview .art{max-width:190px}.idea-card-body{padding:12px 20px 20px}.idea-card h3{font-size:20px}.idea-card p{font-size:13px}.idea-card .button{min-height:44px;font-size:13px}.couple-guide{grid-template-columns:1fr;padding:40px 0 30px;gap:15px}.guide-cta{padding:20px;border:1px solid var(--line);border-radius:8px}.guide-cta .pair-art{margin:0 auto 10px}.guide-cta .button{width:100%}.related>div{grid-template-columns:1fr;gap:10px}.related button{padding:10px 16px;gap:15px;font-size:13px}.related .art,.letter-icon{width:55px}.related .icon{width:19px}.faq summary{font-size:12px;padding-left:0;padding-right:0}.faq details p{padding-left:0}.editor-header .brand span{display:none}.editor-header .project-name{border:0;padding:0;gap:0}.editor-header{gap:5px;padding:0 14px}.editor-header .header-right{gap:5px}.credit-button{font-size:10px;padding:8px}.credit-button>span:last-child{max-width:45px;line-height:1.2}.credit-button .icon{width:15px}.workspace{display:block}.control-panel{border-right:0;border-bottom:1px solid var(--line);padding:24px 22px}.control-panel h2{font-size:23px}.segmented button{font-size:12px}.source-preset{margin:18px 0;gap:15px}.source-preset>.pair-art{width:100px}.source-preset>span{font-size:11px}.control-panel .style-option .art{max-width:85px}.control-panel .style-option span:last-child{font-size:11px}.generate-area{margin-top:16px}.generate-area .button{min-height:48px}.more-settings{margin-top:18px}.results-panel{padding:27px 20px 35px}.results-heading h1{font-size:25px}.results-heading{gap:10px;margin-bottom:15px}.results-heading .eyebrow{font-size:10px}.demo-note{align-items:flex-start;font-size:10px;line-height:1.6}.result-grid{gap:10px}.result-card{padding:8px}.result-art{aspect-ratio:4/5}.result-art>.art{width:100%}.result-actions{gap:14px}.result-actions>div{width:100%;gap:8px}.result-actions .button{flex:1;font-size:11px;padding:12px 8px}.result-actions>span{font-size:9px}.result-actions .icon{width:17px}.version-card{min-width:165px}.history{padding:12px}.history-heading h2{font-size:13px}.history-heading{gap:8px}.history-heading>.text-button{font-size:10px}.history-heading>span{font-size:10px}.generating-overlay strong{text-align:center;font-size:11px}.generating-overlay small{font-size:9px;text-align:center}.generating-overlay{padding:10px}.compare-grid{grid-template-columns:1fr;gap:30px}.compare-art{min-height:150px}.compare-prompt{min-height:0}.wide-modal{max-width:calc(100vw - 24px)}dialog{padding:28px 22px;border-radius:10px}dialog h2{font-size:25px}.download-options .button{font-size:12px}.local-status{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition:none!important;scroll-behavior:auto!important}}
/* Real generated images share the existing art slots without changing their pixels. */
.option-note{font-size:12px;line-height:1.5;color:var(--muted);margin-top:8px}
.visual-details{border-top:1px solid var(--line);margin-top:16px}
.visual-details>summary{min-height:44px;font-size:13px;font-weight:600;gap:16px}
.visual-details>summary>span{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:400;color:var(--muted);white-space:nowrap}
.visual-group{margin:16px 0 20px}
.visual-group legend{font-size:12px;font-weight:600;margin-bottom:10px}
.option-chips{display:flex;flex-wrap:wrap;gap:8px}
.option-chip{min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:6px;font-size:12px;background:var(--surface);text-align:left}
.option-chip:hover{border-color:var(--accent)}
.option-chip.selected{background:var(--wash);border-color:var(--accent);color:var(--accent)}
.visual-error{line-height:1.5;margin:12px 0}
.visual-controls select{min-height:44px}
.style-picker{margin-top:20px}
.style-picker legend{font-size:12px;font-weight:600;margin-bottom:10px}
.style-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.style-picker-option{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--surface);color:var(--ink);min-width:0;text-align:left;transition:border-color .16s ease-out,background .16s ease-out,color .16s ease-out}
.style-picker-option img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:6px 6px 0 0}
.style-picker-title{display:block;min-height:32px;padding:8px 9px;font-size:12px;font-weight:600;line-height:1.25}
.style-picker-option:hover{border-color:var(--muted)}
.style-picker-option.selected{border-color:var(--accent);background:var(--wash);color:var(--accent)}
.style-picker-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.quick-create .visual-group{margin-top:16px}
.home-hero .quick-create .visual-controls .field-label:first-of-type{margin-top:18px}
@media(max-width:650px){.option-chip{min-height:44px}.visual-controls select{font-size:16px}.style-picker-title{font-size:12px}}
fieldset{border:0;padding:0;margin:0;min-width:0}.generated-image{display:block;object-fit:contain;background:#fff;max-width:100%;height:auto}.result-art>.generated-image{height:100%;width:100%;object-fit:contain}.mini-pair>.generated-image,.compare-art>.generated-image{min-width:0;object-fit:contain;max-height:300px}.expanded-art>.generated-image{width:100%;height:100%;object-fit:contain}
.image-unavailable{display:grid;place-items:center;width:100%;height:100%;min-height:80px;padding:16px;text-align:center;font-size:12px;line-height:1.5;color:var(--muted);background:var(--surface);border:1px dashed var(--line);border-radius:6px}.mini-pair>.image-unavailable{font-size:10px;padding:8px}.preview-result-media>.image-unavailable{min-height:100%;border:0;border-radius:0}
footer nav{display:flex;gap:16px;font-size:12px;flex-wrap:wrap}footer nav a:hover{text-decoration:underline}a[data-action="customize"]{text-align:center}
footer>div>a{font-size:11px;color:var(--muted);padding:10px 0}footer>div>a:hover{color:var(--accent)}
@media(max-width:650px){footer>div>a{font-size:10px}}
.legal-page{padding-bottom:80px}.legal-document{max-width:780px;margin:26px auto 0}.legal-document h1{margin-bottom:18px}.legal-lead{font-size:18px;color:var(--muted);margin-bottom:28px}.legal-review{border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:6px;background:var(--surface-soft);padding:18px 20px;margin-bottom:38px}.legal-review strong{display:block;font-size:14px;margin-bottom:6px}.legal-review p{font-size:13px;color:var(--muted)}.legal-document section{border-top:1px solid var(--line);padding:28px 0}.legal-document section h2{font-family:inherit;font-size:20px;letter-spacing:0;margin-bottom:14px}.legal-document section p,.legal-document li{font-size:14px;line-height:1.7;color:var(--muted)}.legal-document section p+p{margin-top:12px}.legal-document ul{padding-left:21px;margin:0}.legal-document li+li{margin-top:10px}.legal-document section a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
@media(max-width:650px){.legal-page{padding-bottom:50px}.legal-document{margin-top:14px}.legal-lead{font-size:16px}.legal-document section{padding:22px 0}.legal-document section h2{font-size:18px}}
/* Catalog extensions use the established warm surfaces and art-led controls. */
.style-options{grid-template-columns:repeat(4,minmax(0,1fr))}
.control-panel .style-options{grid-template-columns:repeat(2,minmax(0,1fr))}
.control-panel .style-option .art{max-width:68px}
.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px}
.section-heading>.text-button{white-space:nowrap}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.category-link{display:flex;align-items:center;gap:22px;padding:20px 24px;border:1px solid var(--line);border-radius:8px;min-width:0;background:var(--surface)}
.category-link:hover{border-color:var(--accent)}
.category-link>.art{width:120px;flex-shrink:0}
.category-link>span:not(.art){min-width:0}
.category-link strong{font-size:20px;display:block;line-height:1.3}
.category-link small{display:block;color:var(--muted);margin-top:8px;line-height:1.5}
.category-link>.icon{margin-left:auto}
.shared-story{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:50px;background:var(--bg);padding:36px;border-radius:8px}
.shared-story .lead{font-size:16px;margin:16px 0 24px}
.shared-story .text-button{display:block;margin-top:12px;width:fit-content}
.shared-story>.pair-art{max-width:380px;width:100%;justify-self:end}
.catalog-page{padding-bottom:20px}
.catalog-page .page-intro{margin-bottom:36px}
.catalog-page .page-intro .lead{max-width:64ch}
.catalog-caption{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 0 18px;font-size:12px;color:var(--muted)}
.single-preview{display:grid;place-items:center;padding:20px 35px;background:var(--bg)}
.single-preview>.art{width:100%;max-width:230px}
.catalog-page .idea-card h2{font-size:20px;letter-spacing:-.015em}
.catalog-page .idea-card p{font-size:14px;min-height:45px}
.catalog-guide,.catalog-explanation{padding:56px 0}
.catalog-guide>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:26px}
.catalog-guide p,.catalog-explanation p{color:var(--muted);font-size:15px;margin-top:12px;max-width:70ch}
.catalog-guide h3{font-size:17px}
.related .category-link{padding:12px;gap:12px}
.related .category-link strong{font-size:14px}
.related .category-link small{font-size:11px;margin-top:4px}
.related .category-link>.art{width:64px}
.mobile-navigation{display:none}
.source-preset>.source-single{width:72px;height:72px;flex-shrink:0}
.result-tags{flex-wrap:wrap}
@media(max-width:850px){.category-link{padding:16px;gap:14px}.category-link>.art{width:90px}.category-link strong{font-size:17px}.shared-story{gap:24px;padding:26px}.related>div{grid-template-columns:1fr}.section-heading{align-items:flex-start}.catalog-guide>div{gap:20px}.site-header{gap:20px}.site-header nav{gap:18px}}
@media(max-width:650px){.category-grid{grid-template-columns:1fr;gap:14px}.section-heading{display:block}.section-heading>.text-button{display:inline-flex;margin-bottom:18px}.section-heading .section-intro{margin-bottom:10px}.category-link>.art{width:92px}.category-link strong{font-size:19px}.shared-story{grid-template-columns:1fr;padding:24px;gap:15px}.shared-story>.pair-art{max-width:280px;justify-self:center}.shared-story h2{font-size:26px}.catalog-caption{display:block}.catalog-caption p{margin-top:8px}.catalog-guide>div{grid-template-columns:1fr;gap:24px}.catalog-guide,.catalog-explanation{padding:36px 0}.catalog-page .idea-card p{min-height:0}.catalog-page .page-intro{margin-bottom:28px}.mobile-navigation{display:block}.mobile-navigation>summary{width:36px;min-height:44px;justify-content:center}.site-header .mobile-navigation nav{position:absolute;top:65px;right:12px;display:flex;height:auto;align-items:stretch;flex-direction:column;gap:0;padding:8px 18px;background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:210px}.mobile-navigation:not([open]) nav{display:none}.site-header .mobile-navigation nav>a{padding:14px 0;min-height:44px}.site-header{gap:6px}.site-header .header-right{gap:4px}.site-header .brand{font-size:16px}.site-header .brand svg{width:26px}.site-header .header-right .button{padding:10px}.site-header .header-right .button>.icon{display:none}.control-panel .style-options{grid-template-columns:repeat(4,minmax(0,1fr))}.style-option span:last-child{white-space:normal}.catalog-page .page-intro h1{font-size:34px}}
.print-small>.art{width:94%}

/* Discovery-led public experience. The workspace keeps the same component language. */
.site-header{background:color-mix(in srgb,var(--surface) 84%,transparent);border-bottom-color:color-mix(in srgb,var(--line) 78%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}
.art{background:none;object-fit:contain;height:auto;max-width:100%}
.home-hero{display:block;isolation:isolate;min-height:0;padding-top:58px;padding-bottom:64px;text-align:center}
.home-hero:before{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:url('/assets/home-hero-tattoo-wall-v1.png') center/cover no-repeat;opacity:.18;pointer-events:none}
.home-hero .hero-copy{width:min(100%,720px);margin:0 auto}
.home-hero h1{font-size:clamp(48px,6vw,72px);line-height:1.01;letter-spacing:-.04em}
.home-hero .hero-copy .lead{max-width:620px;margin:18px auto 30px;font-size:18px}
.explore-intro .lead{max-width:none;white-space:nowrap}
.home-hero .quick-create{max-width:none;padding:26px;text-align:left;box-shadow:0 18px 50px #1919190d}
.home-prompt-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}
.home-prompt-heading label{font-size:13px;font-weight:650;line-height:1.3}
.prompt-inspiration{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 12px;border:1px solid transparent;border-radius:6px;background:linear-gradient(135deg,#fff8fa,#fff) padding-box,linear-gradient(115deg,var(--accent-fill) 0%,#ff6681 38%,#9f68ff 70%,#ff9966 100%) border-box;color:var(--ink);box-shadow:0 6px 18px #e31b361a;font-size:12px;font-weight:650;white-space:nowrap;transition:transform .16s ease-out,box-shadow .2s ease-out,color .16s ease-out}
.prompt-inspiration:after{content:"";position:absolute;z-index:-1;top:-70%;bottom:-70%;left:-32%;width:24%;transform:rotate(17deg) translateX(-180%);background:linear-gradient(90deg,transparent,#fff9,transparent);opacity:0;pointer-events:none;transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .16s ease-out}
.prompt-inspiration .icon{position:relative;z-index:1;width:15px;height:15px;color:var(--accent);filter:drop-shadow(0 2px 5px #e31b3640);transition:transform .2s cubic-bezier(.16,1,.3,1),color .16s ease-out}
.prompt-inspiration:hover,.prompt-inspiration:focus-visible{color:var(--ink);box-shadow:0 8px 24px #e31b362b;transform:translateY(-1px)}
.prompt-inspiration:hover:after,.prompt-inspiration:focus-visible:after{opacity:.7;transform:rotate(17deg) translateX(650%)}
.prompt-inspiration:hover .icon,.prompt-inspiration:focus-visible .icon{color:#f52c54;transform:rotate(-8deg) scale(1.08)}
.prompt-inspiration:active{box-shadow:0 3px 10px #e31b3624;transform:translateY(0) scale(.98)}
.prompt-inspiration:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
:root[data-theme='dark'] .prompt-inspiration{background:linear-gradient(135deg,#301720,#211a29) padding-box,linear-gradient(115deg,#ff3f61 0%,#ff7890 38%,#a977ff 70%,#ff9d67 100%) border-box;box-shadow:0 7px 22px #0006,0 4px 18px #ff476128}
:root[data-theme='dark'] .prompt-inspiration:hover,:root[data-theme='dark'] .prompt-inspiration:focus-visible{box-shadow:0 9px 28px #0008,0 5px 22px #ff47613d}
.prompt-input-shell{position:relative;isolation:isolate;border-radius:6px}
.prompt-input-shell>textarea{position:relative;z-index:1;display:block}
@property --prompt-ring-angle{syntax:'<angle>';inherits:false;initial-value:-54deg}
.prompt-input-shell:before,.prompt-input-shell:after{--prompt-ring-angle:-54deg;content:"";position:absolute;pointer-events:none;opacity:0;border-radius:inherit;background:conic-gradient(from var(--prompt-ring-angle),#4285f400 0deg,#4285f438 11deg,#7487ee75 25deg,#8f78e8b0 43deg,#d96570e0 64deg,#f2a60c 84deg,#ffe2a6 94deg,#f2a60cb8 105deg,transparent 122deg 360deg)}
.prompt-input-shell:before{z-index:-2;inset:-9px;filter:blur(12px)}
.prompt-input-shell:after{z-index:-1;inset:-2px;padding:2px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.prompt-input-shell.inspired:before{animation:prompt-comet-tail 1.4s linear both}
.prompt-input-shell.inspired:after{animation:prompt-comet-head 1.4s linear both}
@keyframes prompt-comet-tail{0%{--prompt-ring-angle:-54deg;opacity:0}7%{opacity:.82}73%{opacity:.82}87%{opacity:0}100%{--prompt-ring-angle:306deg;opacity:0}}
@keyframes prompt-comet-head{0%{--prompt-ring-angle:-54deg;opacity:0}7%{opacity:.96}89%{opacity:.96}100%{--prompt-ring-angle:306deg;opacity:0}}
@media(prefers-reduced-motion:reduce){.prompt-input-shell.inspired{outline:2px solid #8f78e8;outline-offset:3px}}
.home-hero .quick-create .field-label:first-of-type{margin-top:0}
.home-hero .quick-create textarea{min-height:112px;font-size:15px;padding:15px}
.home-hero .quick-create select{min-height:48px;font-size:14px}
.home-hero .quick-create>.button{min-height:52px;margin-top:16px;font-size:14px}
.home-hero .quick-create>.micro{margin-top:12px}
.home-hero .style-tag-group{margin:16px 0 0}
.home-hero .style-tag-options{gap:8px}
.home-hero .style-tag-options .option-chip{min-height:38px;padding:8px 13px;border-radius:999px}
.hero-secondary-actions{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:14px}
.explore-inline{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--accent);font-size:12px;font-weight:600;width:fit-content}
.preview-entry{color:var(--ink)}
.preview-entry:hover{color:var(--accent)}
.explore-inline .icon{width:15px}
.ai-showcase{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg)}
.ai-showcase>.wrap{padding-top:46px;padding-bottom:50px}
.ai-showcase-heading{align-items:baseline;margin-bottom:18px}
.ai-showcase-heading .section-intro{max-width:none;margin-top:10px;white-space:nowrap}
@media(max-width:850px){.ai-showcase-heading{align-items:flex-start}.ai-showcase-heading .section-intro{white-space:normal}}
.ai-showcase-tabs{display:flex;gap:0;margin-bottom:14px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.ai-showcase-tabs::-webkit-scrollbar{display:none}
.ai-showcase-tabs button{position:relative;flex:0 0 auto;min-height:46px;padding:8px 22px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap}
.ai-showcase-tabs button:after{content:"";position:absolute;right:22px;bottom:-1px;left:22px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left}
.ai-showcase-tabs button:hover{color:var(--ink)}
.ai-showcase-tabs button[aria-selected="true"]{color:var(--accent)}
.ai-showcase-tabs button[aria-selected="true"]:after{transform:scaleX(1)}
.ai-showcase-tabs button[aria-selected="true"][data-progress="running"]:after{animation:showcase-tab-progress 2s linear forwards;will-change:transform}
.ai-showcase-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}
@keyframes showcase-tab-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.ai-showcase-panels{position:relative;height:clamp(340px,38vw,430px)}
.ai-showcase-panel{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:10px;height:100%;overflow:hidden}
.ai-showcase-panel[hidden]{display:none}
.ai-showcase-panel.is-entering{z-index:1;animation:showcase-panel-enter .32s cubic-bezier(.16,1,.3,1) both;will-change:opacity,transform}
.ai-showcase-panel.is-leaving{z-index:0;pointer-events:none;animation:showcase-panel-leave .18s ease-in both;will-change:opacity,transform}
@keyframes showcase-panel-enter{from{opacity:.01;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes showcase-panel-leave{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}
.ai-showcase-source{position:relative;height:100%;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--bg)}
.ai-showcase-source img{display:block;width:100%;height:100%;object-fit:cover}
.ai-showcase-source-prompt{position:absolute;right:0;bottom:0;left:0;margin:0;padding:18px;background:rgb(0 0 0 / 78%);color:#fff;font-size:12px;line-height:1.45}
.ai-showcase-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:10px;min-width:0;min-height:0;overflow:hidden}
.ai-showcase-style{position:relative;display:block;min-width:0;min-height:0;height:100%;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;transition:border-color .18s ease,transform .18s ease}
.ai-showcase-style:hover{border-color:var(--accent);transform:translateY(-2px)}
.ai-showcase-style:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ai-showcase-style img{display:block;width:100%;height:100%;min-height:0;box-sizing:border-box;padding:clamp(10px,1.4vw,18px);object-fit:contain;background:#fff;transition:transform .24s cubic-bezier(.2,.8,.2,1)}
.ai-showcase-card-label{position:absolute;top:10px;left:10px;z-index:1;padding:5px 8px;border-radius:6px;background:#17191be6;color:#fff;font-size:12px;font-weight:600;line-height:1;letter-spacing:.01em}
.ai-showcase-card-action{position:absolute;right:10px;bottom:10px;z-index:1;display:inline-flex;align-items:center;gap:5px;padding:7px 8px;border-radius:6px;background:var(--accent);color:#fff;font-size:12px;font-weight:600;line-height:1;opacity:0;transform:translateY(5px);transition:opacity .18s ease,transform .18s ease}
.ai-showcase-card-action .icon{width:13px;height:13px}
.ai-showcase-style:hover img,.ai-showcase-style:focus-visible img{transform:scale(1.025)}
.ai-showcase-style:hover .ai-showcase-card-action,.ai-showcase-style:focus-visible .ai-showcase-card-action{opacity:1;transform:translateY(0)}
.home-hero .hero-art{display:grid;grid-template-columns:1.55fr 1fr;gap:10px;min-height:500px;position:relative}
.home-hero .art-print{position:relative;inset:auto;width:auto;height:auto;transform:none;min-height:0;background:var(--bg);overflow:hidden;box-shadow:none}
.home-hero .art-print>.art{width:100%;height:100%;object-fit:contain}
.home-hero .print-large{grid-row:1;display:block;padding:24px}
.home-hero .print-large>.art{height:calc(100% - 28px)}
.home-hero .print-large>span{font-size:11px;color:var(--muted);display:block;margin-top:7px}
.hero-art-stack{display:grid;grid-template-rows:1fr 1fr;gap:10px;min-width:0}
.hero-art-stack .art-print{padding:12px}
.discovery-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.discovery-tabs{display:flex;gap:34px;border-bottom:1px solid var(--line);margin:-4px 0 22px}
.discovery-tabs a{font-size:12px;padding:10px 0 12px;border-bottom:2px solid transparent}
.discovery-tabs a:hover,.discovery-tabs .active{color:var(--accent);border-color:var(--accent)}
.starting-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.starting-grid .category-link{display:grid;grid-template-rows:auto 1fr;position:relative;padding:0;gap:0;overflow:hidden;align-items:start}
.starting-grid .category-link>.art{width:100%;aspect-ratio:4/3;padding:12px;background:var(--bg)}
.starting-grid .category-link>span:not(.art){padding:13px 34px 15px 15px}
.starting-grid .category-link strong{font-size:15px}
.starting-grid .category-link small{font-size:11px;margin-top:4px}
.starting-grid .category-link>.icon{position:absolute;right:14px;bottom:17px;width:16px}
.placement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.placement-link{position:relative;display:block;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface);transition:border-color .18s ease-out,transform .18s ease-out}
.placement-link:hover{border-color:var(--accent);transform:translateY(-2px)}
.placement-link>img{display:block;width:100%;height:218px;object-fit:cover;object-position:center 58%;background:var(--bg)}
.placement-link>span{display:block;padding:14px 38px 16px 15px}
.placement-link strong{display:block;font-size:15px;line-height:1.3}
.placement-link small{display:block;color:var(--muted);font-size:11px;line-height:1.45;margin-top:4px}
.placement-link>.icon{position:absolute;right:14px;bottom:18px;width:16px}
.model-preview-entry{padding-top:54px;padding-bottom:54px}
.home-preview-layout{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:18px;align-items:center}
.home-preview-body{position:relative;height:400px;min-height:400px;overflow:hidden;border-radius:8px}
.home-preview-body>svg{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;transition:opacity .24s ease-out}
.home-preview-body>.home-preview-body-view--front{opacity:1}
.home-preview-highlight{fill:var(--accent);opacity:0;pointer-events:none;transition:opacity .22s ease-out}
.home-preview-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,92px);align-content:center;gap:8px}
.home-preview-card{display:grid;grid-template-columns:44% minmax(0,1fr);min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface);transition:border-color .18s ease-out,transform .18s ease-out}
.home-preview-card:is(:hover,:focus-visible){border-color:var(--accent);transform:translateY(-2px)}
.home-preview-layout:has(.home-preview-card[data-region="shoulder"]:is(:hover,:focus-visible)) .home-preview-highlight[data-region="shoulder"],.home-preview-layout:has(.home-preview-card[data-region="upper_arm"]:is(:hover,:focus-visible)) .home-preview-highlight[data-region="upper_arm"],.home-preview-layout:has(.home-preview-card[data-region="forearm"]:is(:hover,:focus-visible)) .home-preview-highlight[data-region="forearm"],.home-preview-layout:has(.home-preview-card[data-region="chest"]:is(:hover,:focus-visible)) .home-preview-highlight[data-region="chest"],.home-preview-layout:has(.home-preview-card[data-region="back"]:is(:hover,:focus-visible)) .home-preview-highlight[data-region="back"],.home-preview-layout:has(.home-preview-card[data-region="ribs"]:is(:hover,:focus-visible)) .home-preview-highlight[data-region="ribs"],.home-preview-layout:has(.home-preview-card[data-region="thigh"]:is(:hover,:focus-visible)) .home-preview-highlight[data-region="thigh"],.home-preview-layout:has(.home-preview-card[data-region="calf"]:is(:hover,:focus-visible)) .home-preview-highlight[data-region="calf"]{opacity:.82}
.home-preview-layout:has(.home-preview-card[data-region="back"]:is(:hover,:focus-visible)) .home-preview-body-view--front,.home-preview-layout:has(.home-preview-card[data-region="ribs"]:is(:hover,:focus-visible)) .home-preview-body-view--front{opacity:0}
.home-preview-layout:has(.home-preview-card[data-region="back"]:is(:hover,:focus-visible)) .home-preview-body-view--back,.home-preview-layout:has(.home-preview-card[data-region="ribs"]:is(:hover,:focus-visible)) .home-preview-body-view--side{opacity:1}
.home-preview-card-art{display:grid;place-items:center;min-height:0;overflow:hidden;padding:8px 5px}
.home-preview-card-art img{display:block;width:100%;height:100%;object-fit:contain;filter:grayscale(1) contrast(.88) brightness(1.7);opacity:.86;transition:filter .18s ease-out,opacity .18s ease-out,transform .28s cubic-bezier(.16,1,.3,1)}
.home-preview-card:is(:hover,:focus-visible) .home-preview-card-art img{filter:grayscale(0) contrast(1.02);opacity:1;transform:scale(1.05)}
.home-preview-card-title{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:10px 8px 10px 4px}
.home-preview-card-title strong{font-family:var(--font-display);font-size:15px;font-weight:500;line-height:1.1;letter-spacing:-.015em}
.home-preview-card-title small{display:block;margin-top:6px;color:var(--muted);font-size:9px;line-height:1.35}
@media(max-width:1000px){.home-preview-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.home-preview-body{height:370px;min-height:370px}.home-preview-gallery{grid-template-rows:repeat(4,86px);gap:8px}.home-preview-card-title strong{font-size:14px}.home-preview-card-title small{font-size:8px}}
@media(max-width:650px){.home-preview-layout{grid-template-columns:1fr;gap:12px}.home-preview-body{min-height:0;height:330px}.home-preview-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,96px);gap:8px}.home-preview-card-art{padding:8px 5px}.home-preview-card-title{padding:8px 6px}.home-preview-card-title strong{font-size:14px}.home-preview-card-title small{font-size:9px}}
.preview-region-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.preview-region-card{position:relative;display:grid;grid-template-columns:104px minmax(0,1fr);min-width:0;min-height:132px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface);transition:border-color .18s ease-out,transform .18s ease-out}
.preview-region-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.preview-region-visual{height:100%;display:flex;align-items:center;justify-content:center;padding:12px;border-right:1px solid var(--line);background:#fbf8f4}
.preview-region-visual img{display:block;width:100%;height:100%;object-fit:contain}
.preview-region-copy{min-width:0;padding:16px 34px 16px 14px;align-self:center}
.preview-region-copy strong{display:block;font-size:15px;line-height:1.25}
.preview-region-copy small{display:block;margin-top:7px;color:var(--muted);font-size:11px;line-height:1.45}
.preview-region-card>.icon{position:absolute;right:12px;bottom:12px;width:16px;height:16px}
.style-directions{background:var(--bg);border-bottom:1px solid var(--line)}
.style-directions>.wrap{padding-top:52px;padding-bottom:56px}
.style-direction-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.style-direction-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface);transition:border-color .18s ease-out,transform .18s ease-out}
.style-direction-card:hover{border-color:var(--accent);transform:translateY(-3px)}
.style-direction-card>img{display:block;width:100%;height:320px;object-fit:cover;background:#eee9e3}
.style-direction-card>span{min-height:170px;padding:18px;display:flex;flex-direction:column}
.style-direction-card small{display:block;color:var(--muted);font-size:10px;line-height:1.45}
.style-direction-card strong{display:block;margin-top:8px;font-size:18px;line-height:1.25}
.style-direction-card>span>span{display:block;margin-top:8px;color:var(--muted);font-size:12px;line-height:1.5}
.style-direction-card b{display:flex;align-items:center;gap:5px;margin-top:12px;color:var(--accent);font-size:10px;font-weight:600;line-height:1.4}
.style-direction-card>span>b{margin-top:auto;padding-top:16px}
.style-direction-card b .icon{width:14px;height:14px}
.idea-section{padding-top:54px;padding-bottom:48px}
.home-ideas,.explore-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.idea-card{background:var(--surface)}
.single-preview{padding:14px;background:var(--bg);aspect-ratio:1;overflow:hidden}
.single-preview>.art{width:100%;height:100%;object-fit:contain}
.single-preview>.catalog-style-photo{display:block;width:100%;height:100%;object-fit:cover}
.pair-preview{background:var(--bg)}
.pair-preview .pair-art{aspect-ratio:1;height:auto}
.idea-card-body{padding:15px}
.idea-card-body .tag-row{display:flex;gap:6px;flex-wrap:wrap}
.concept-story{display:grid;grid-template-columns:1.2fr .75fr auto .75fr;align-items:center;gap:24px;padding:34px;background:var(--bg);border-radius:10px}
.concept-story .lead{font-size:15px;margin:14px 0 22px}
.concept-story figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:7px;padding:12px}
.concept-story figure .art{width:100%}
.concept-story figcaption{font-size:10px;color:var(--muted);margin-top:8px}
.story-arrow{color:var(--muted)}
.how-it-works>h2{margin-bottom:24px}
.how-it-works>div{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.how-it-works article{display:grid;grid-template-columns:35px 1fr;column-gap:15px;padding:8px 28px;border-right:1px solid var(--line)}
.how-it-works article:first-child{padding-left:6px}
.how-it-works article:last-child{border-right:0}
.how-it-works article>.icon{grid-row:1/3;width:27px;height:27px}
.how-it-works article p{font-size:12px;color:var(--muted);margin-top:5px}
.home-faq{padding-bottom:60px}
.explore-page{padding-bottom:60px}
.explore-intro{padding:20px 0 50px}
.explore-intro .lead{margin-top:14px}
.explore-paths .section-heading{padding-bottom:24px}
.explore-paths{padding-bottom:55px}
.explore-styles{padding:48px 0 56px;border-top:1px solid var(--line)}
.explore-styles .section-heading{padding-bottom:24px}
.explore-styles .style-direction-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.explore-styles .style-direction-card>img{height:250px}
.explore-styles .style-direction-card>span{min-height:180px;padding:16px}
.placement-collection-links{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:14px;color:var(--muted);font-size:13px}
.placement-collection-links a{color:var(--text);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}
.placement-collection-links a:hover{color:var(--accent);text-decoration-color:currentColor}
.explore-results{border-top:1px solid var(--line);padding-top:42px}
.results-toolbar{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.results-toolbar>div:first-child p{font-size:12px;color:var(--muted);margin-top:6px}
.explore-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:55px;padding:30px 34px;background:var(--bg);border-radius:10px}
.explore-cta p{font-size:13px;color:var(--muted);margin-top:8px}

@media(max-width:1000px){
  .home-hero{gap:28px}.home-ideas,.explore-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .starting-grid,.placement-grid,.preview-region-grid,.style-direction-grid,.explore-styles .style-direction-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.style-direction-card>img,.explore-styles .style-direction-card>img{height:300px}.concept-story{grid-template-columns:1fr 1fr auto 1fr}.concept-story>div{grid-column:1/-1}.placement-collection-links{justify-content:flex-start;flex-wrap:wrap}
}
@media(max-width:650px){
  body{overflow-x:hidden}.home-hero{display:block;padding-top:38px;padding-bottom:42px}.home-hero>*{min-width:0;width:100%}.home-hero .hero-copy{margin:0}.home-hero h1{font-size:43px}.home-hero .hero-copy .lead{font-size:16px;margin:16px auto 24px}.explore-intro .lead{white-space:normal}.home-hero .quick-create{padding:18px;width:100%}.home-prompt-heading{gap:10px}.prompt-inspiration{min-height:40px}.home-hero .quick-create textarea{min-height:104px;font-size:14px}.home-hero .style-tag-options .option-chip{min-height:44px}.home-hero .quick-create>.button{min-height:50px}.hero-secondary-actions{align-items:stretch;flex-direction:column;gap:0;margin-top:10px}.hero-secondary-actions .explore-inline{min-height:40px;margin:0 auto}
  .ai-showcase>.wrap{padding-top:36px;padding-bottom:40px}.ai-showcase-heading{margin-bottom:16px}.ai-showcase-heading>.text-button{margin:12px 0 0}.ai-showcase-tabs{margin-right:-22px;padding-right:22px}.ai-showcase-tabs button{min-height:44px;padding:8px 15px}.ai-showcase-tabs button:after{right:15px;left:15px}.ai-showcase-panels{height:280px}.ai-showcase-panel{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:6px}.ai-showcase-results{gap:6px}.ai-showcase-source,.ai-showcase-style{border-radius:6px}.ai-showcase-style img{padding:8px}.ai-showcase-source-prompt{padding:10px;font-size:11px;line-height:1.35}
  .starting-grid{grid-template-columns:1fr;gap:10px}.starting-grid .category-link{grid-template-columns:112px 1fr;grid-template-rows:auto;align-items:center}.starting-grid .category-link>.art{width:112px;aspect-ratio:1}.starting-grid .category-link strong{font-size:15px}.starting-grid .category-link small{display:block}.starting-grid .category-link>span:not(.art){padding:12px 32px 13px 14px}
  .placement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.placement-link>img{height:180px}.placement-link>span{padding:12px 30px 13px 12px}.placement-link strong{font-size:14px}.placement-link small{display:none}.placement-link>.icon{right:10px;bottom:14px;width:15px}.model-preview-entry{padding-top:36px;padding-bottom:36px}.preview-region-grid{gap:10px}.preview-region-card{grid-template-columns:1fr;grid-template-rows:116px minmax(96px,auto);min-height:212px}.preview-region-visual{height:116px;padding:10px;border-right:0;border-bottom:1px solid var(--line)}.preview-region-copy{align-self:start;padding:13px 28px 14px 12px}.preview-region-copy strong{font-size:14px}.preview-region-copy small{font-size:10px;margin-top:5px}.preview-region-card>.icon{right:10px;bottom:12px;width:15px}
  .style-directions>.wrap{padding-top:36px;padding-bottom:40px}.style-direction-grid{display:flex;gap:12px;margin-right:-22px;padding:1px 22px 10px 1px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#cfcac6 transparent}.style-direction-card{flex:0 0 74vw;scroll-snap-align:start}.style-direction-card>img{height:300px}.style-direction-card small,.style-direction-card>span>span{min-height:0}.style-direction-card strong{font-size:18px}.style-direction-card>span>span{font-size:12px}.style-direction-card b{font-size:11px}
  .home-ideas,.explore-grid{grid-template-columns:1fr}.idea-section{padding-top:35px}.concept-story{grid-template-columns:1fr 1fr;gap:12px;padding:22px}.concept-story>div{grid-column:1/-1}.concept-story .story-arrow{display:none}
  .how-it-works>div{grid-template-columns:1fr}.how-it-works article{border-right:0;border-bottom:1px solid var(--line);padding:18px 0}.how-it-works article:first-child{padding-left:0}.how-it-works article:last-child{border-bottom:0}
  .explore-intro{padding:10px 0 35px}.explore-paths{padding-bottom:40px}.explore-styles{padding:36px 0 40px}.results-toolbar{align-items:flex-start;flex-direction:column}.results-toolbar .filter-tabs{width:100%}
  .explore-cta{display:block;padding:24px;margin-top:38px}.explore-cta .button{width:100%;margin-top:20px}
  .site-header>.header-right{min-width:0}.site-header>.header-right>.button{font-size:0;min-width:60px;max-width:64px;padding:8px}.site-header>.header-right>.button:before{content:'Create';font-size:11px}.site-header>.header-right>.button .icon{display:none}.mobile-navigation>summary{width:32px}
}

/* Model Preview */
.preview-workspace{min-height:100dvh;background:var(--bg)}
.preview-control-panel{height:100dvh;padding-bottom:0;display:flex;flex-direction:column;overflow:hidden}
.preview-control-panel>h2{flex:0 0 auto}
.preview-control-panel fieldset{min-height:0;display:flex;flex:1;flex-direction:column}
.preview-control-scroll{min-height:0;flex:1;overflow-y:auto;padding:1px 2px 24px;scrollbar-color:#cbc8c4 transparent;scrollbar-width:thin}
.preview-control-panel .field-label:first-of-type{margin-top:0}
.preview-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:1px}
.preview-preset{min-width:0;padding:6px;border:1px solid var(--line);border-radius:6px;background:#fdfdfc;text-align:left;transition:border-color .16s ease-out,background .16s ease-out}
.preview-preset:hover{border-color:#a4a6aa}
.preview-preset.selected{border-color:var(--accent);background:var(--wash)}
.preview-preset>.preview-tattoo-art{display:block;width:100%;height:84px;object-fit:contain;background-color:#fff}
.preview-preset.unavailable{border-style:dashed;opacity:.72}.preview-preset>.preview-source-unavailable{height:84px;min-height:84px;padding:6px;font-size:10px}
.preview-tattoo-picker{margin-top:24px}
.preview-tattoo-label{margin:0 0 11px}
.preview-tattoo-group+.preview-tattoo-group{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.preview-tattoo-group-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.preview-tattoo-group-heading h3{font-family:inherit;font-size:12px;font-weight:650;letter-spacing:0}
.preview-tattoo-group-heading :is(button,a),.preview-creations-empty a{display:inline-flex;align-items:center;gap:5px;color:var(--accent);font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.preview-creations-empty{padding:13px 12px;border:1px dashed var(--line);border-radius:6px;background:var(--surface-soft)}
.preview-creations-empty p{margin:0 0 7px;color:var(--muted);font-size:12px;line-height:1.45}
.preview-creations-empty .icon{width:13px;height:13px}
.preview-creation>.generated-image{object-fit:contain}
.preview-control-panel .segmented{margin-bottom:0}
.preview-settings{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.preview-settings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.preview-settings-heading h3{font-size:12px;letter-spacing:0}
.preview-summary-list{display:block;margin:8px 0 0}
.preview-summary-list>div{min-width:0;padding:9px 0;border-bottom:1px solid var(--line);display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.preview-summary-list dt{flex:0 0 auto;color:var(--muted);font-size:10px}
.preview-summary-list dd{min-width:0;margin:0;overflow:hidden;font-size:11px;font-weight:600;line-height:1.4;text-align:right;text-overflow:ellipsis;white-space:nowrap}
.preview-control-panel .generate-area{flex:0 0 auto;margin:0 -24px;padding:14px 24px 18px;border-top:1px solid var(--line);background:#fff}
.preview-control-panel .generate-area>.button{min-height:48px}
.preview-message{min-height:18px;margin-bottom:7px;color:var(--muted);font-size:11px;line-height:1.45}
.preview-message.error{color:#b52f08}
.preview-stage{min-width:0}
.preview-stage-heading{align-items:flex-start}
.preview-stage-heading p{max-width:66ch;margin-top:7px;color:var(--muted);font-size:12px}
.preview-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-shrink:0}
.preview-heading-actions>.button{min-height:38px;padding:9px 13px;font-size:11px}
.preview-body-panel{width:100%;max-width:820px;margin-inline:auto;padding:60px 18px}
.body-picker{position:relative;width:100%;isolation:isolate}
.body-map-tattoo-wash{position:absolute;inset:3% 12% 7%;z-index:0;pointer-events:none}
.body-map-tattoo-wash img{display:block;width:100%;height:100%;object-fit:contain;filter:grayscale(1) invert(1) contrast(1.4);mix-blend-mode:screen;opacity:.1;transform:scale(1.3)}
.body-map-views{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.62fr) minmax(0,1fr);align-items:end;gap:18px}
.body-map-view{min-width:0;margin:0;display:grid;justify-items:center;grid-template-rows:minmax(0,1fr) auto;gap:10px}
.body-map-svg{display:block;width:auto;max-width:100%;height:min(55vh,540px);overflow:hidden}
.body-map-view figcaption{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.02em;text-align:center}
.body-map-svg image{pointer-events:none;user-select:none}
.body-region-hotspot{outline:none;fill:transparent;stroke:transparent;stroke-width:1.2;vector-effect:non-scaling-stroke;pointer-events:fill;cursor:pointer;transition:fill .14s ease-out,stroke .14s ease-out}
.body-region-hotspot:hover{fill:#ffffff26;stroke:#fff9}
.body-region-hotspot.selected{fill:#ff60789c;stroke:#ff91a4}
.body-region-hotspot:focus-visible{outline:none;stroke:#fff;stroke-width:2.2;fill:#ff607870}
.preview-region-chips{display:grid;width:100%;max-width:820px;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:16px auto 0}
.preview-region-chips button{min-width:0;min-height:96px;padding:7px 6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface-soft);color:var(--muted);display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;gap:6px;font-size:10px;font-weight:600;line-height:1.1;text-align:center;transition:border-color .16s ease-out,background .16s ease-out,color .16s ease-out}
.preview-region-chips img{display:block;width:100%;height:54px;object-fit:contain;filter:grayscale(1) contrast(.86) brightness(1.65);opacity:.8;transition:filter .16s ease-out,opacity .16s ease-out,transform .16s ease-out}
.preview-region-chips button:hover{border-color:#777;color:var(--ink)}
.preview-region-chips button:hover img{opacity:1;transform:translateY(-1px)}
.preview-region-chips button.selected{border-color:var(--accent);background:var(--wash);color:var(--accent)}
.preview-region-chips button.selected img{filter:grayscale(0) contrast(1.03);opacity:1}
.preview-region-chips button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.preview-generating{min-height:560px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:center}
.preview-generating .spinner{width:30px;height:30px;color:var(--accent)}
.preview-generating strong{font-size:14px}
.preview-generating p{max-width:48ch;color:var(--muted);font-size:11px}
.preview-results .demo-note{margin-top:-5px}
.preview-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.preview-result-card{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}
.preview-result-media{aspect-ratio:4/5;overflow:hidden;background:#e9e5df}
.preview-result-media img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease-out}
.preview-result-card[data-shot="placement"] img{object-position:center 55%;transform:scale(1.03)}
.preview-result-card[data-shot="detail"] img{object-position:center 50%;transform:scale(1.3)}
.preview-result-card:hover img{transform:scale(1.06)}
.preview-result-card[data-shot="detail"]:hover img{transform:scale(1.34)}
.preview-result-copy{min-height:42px;padding-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.preview-result-copy p{color:var(--muted);font-size:10px;line-height:1.4}
.preview-result-copy .icon-button{min-width:32px;min-height:32px;flex:0 0 auto}
.preview-result-copy .icon{width:16px}
.preview-expanded-art{min-height:65dvh}
.preview-expanded-art img{display:block;width:100%;height:65dvh;object-fit:contain;background:#e9e5df}
.preview-results-footer{min-height:38px;margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.preview-results-footer>span{color:var(--muted);font-size:11px}
.preview-link{margin-top:12px;padding:10px 2px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--accent);font-size:11px;font-weight:600}
.preview-link .icon{width:16px}

@media(max-width:720px){
  .preview-control-panel{height:auto;padding-bottom:24px;overflow:visible}
  .preview-control-panel fieldset{display:block}
  .preview-control-scroll{overflow:visible;padding-right:1px;padding-bottom:0}
  .preview-control-panel .generate-area{margin:24px 0 0;padding:18px 0 0}
  .preview-stage-heading{align-items:flex-start}
  .preview-heading-actions{width:100%;justify-content:space-between}
  .preview-body-panel{padding:14px}
  .body-map-views{gap:8px}
  .body-map-view{gap:7px}
  .body-map-svg{width:auto;max-width:100%;height:min(65vw,270px)}
  .body-map-view figcaption{font-size:10px}
  .preview-region-chips{grid-template-columns:repeat(8,72px);overflow-x:auto;padding:2px 2px 7px;margin-left:-2px;margin-right:-2px;scrollbar-color:var(--line) transparent;scrollbar-width:thin}
  .preview-result-grid{grid-template-columns:1fr;gap:12px}
  .preview-result-card{display:grid;grid-template-columns:minmax(0,1fr) 125px;grid-template-rows:auto 1fr auto}
  .preview-result-card .result-card-top{grid-column:1/-1}
  .preview-result-media{grid-column:1;grid-row:2/4;aspect-ratio:4/5}
  .preview-result-card .result-tags{grid-column:2;grid-row:2;align-content:start;flex-wrap:wrap;padding:10px 10px 0}
  .preview-result-copy{grid-column:2;grid-row:3;padding:8px 10px 10px;align-items:flex-start;flex-direction:column}
  .preview-generating{min-height:430px}
}

.faq details p a{
  color:var(--accent);
  text-decoration:underline;
  text-underline-offset:3px;
}
.home-faq .faq-question{display:flex;align-items:center;gap:9px;min-width:0}.home-faq .faq-question-icon{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;flex:0 0 15px;border:0;border-radius:0;color:#fff;background:transparent}.home-faq .faq-question-icon .icon{width:15px;height:15px}.home-faq .faq-chevron{flex:0 0 auto}.home-faq details[open]>summary .faq-question-icon .icon{transform:none}.home-faq details[open]>summary>.faq-chevron{transform:rotate(180deg)}

/* Dark theme surfaces retain white artwork paper while the interface recedes. */
:root[data-theme='dark'] .filter-tabs button,:root[data-theme='dark'] .icon-button:hover,:root[data-theme='dark'] .control-panel,:root[data-theme='dark'] .segmented button,:root[data-theme='dark'] .result-card,:root[data-theme='dark'] .history,:root[data-theme='dark'] dialog,:root[data-theme='dark'] .preview-control-panel .generate-area,:root[data-theme='dark'] .preview-generating,:root[data-theme='dark'] .preview-result-card,:root[data-theme='dark'] .pricing-plan,:root[data-theme='dark'] .pricing-close{background:var(--surface)}
:root[data-theme='dark'] .badge,:root[data-theme='dark'] .style-tag,:root[data-theme='dark'] .result-card-top>span,:root[data-theme='dark'] .preview-preset{background:var(--surface-soft);color:var(--ink)}
:root[data-theme='dark'] .preview-preset>span:last-child,:root[data-theme='dark'] .preview-region-chips button,:root[data-theme='dark'] .pricing-principles,:root[data-theme='dark'] .pricing-plan li{color:var(--muted)}
:root[data-theme='dark'] .art{mix-blend-mode:normal}:root[data-theme='dark'] .generated-image,:root[data-theme='dark'] .preview-preset>.preview-tattoo-art{background:var(--art-surface)}
:root[data-theme='dark'] .single-preview,:root[data-theme='dark'] .pair-preview,:root[data-theme='dark'] .source-preset>.pair-art,:root[data-theme='dark'] .result-art,:root[data-theme='dark'] .mini-pair,:root[data-theme='dark'] .compare-art,:root[data-theme='dark'] .expanded-art{background:var(--art-surface)}
:root[data-theme='dark'] .generating-overlay{background:var(--overlay)}:root[data-theme='dark'] #toast{background:var(--toast-bg);color:var(--toast-ink)}:root[data-theme='dark'] .pricing-badge{background:var(--accent-fill)}

/* Editorial headings are intentionally separate from the utilitarian UI type. */
.category-link strong,.placement-link strong,.preview-region-copy strong,.style-direction-card strong{font-family:var(--font-display);font-optical-sizing:auto;font-weight:500;letter-spacing:-.01em}

/* Pricing */
.pricing-page{background:var(--bg)}
.pricing-hero{padding-top:72px;padding-bottom:42px;text-align:center}
.pricing-hero h1{max-width:780px;margin:auto}
.pricing-hero .lead{max-width:650px;margin:20px auto 0}
.pricing-principles{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:27px;color:#4e5359;font-size:12px}
.pricing-principles span{display:inline-flex;align-items:center;gap:7px}
.pricing-principles .icon{width:16px;color:var(--accent-hover)}
.pricing-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;padding-top:22px;padding-bottom:76px}
.pricing-plan{position:relative;display:flex;min-width:0;flex-direction:column;padding:33px 30px 30px;border:1px solid var(--line);background:#fff;cursor:default;transition:border-color .16s ease-out,box-shadow .16s ease-out}
.pricing-plan[role="button"]{cursor:pointer}
.pricing-plan:not([role="button"])>.button{opacity:.55}
.pricing-plan:first-child{border-radius:12px 0 0 12px}
.pricing-plan:last-child{border-radius:0 12px 12px 0}
.pricing-plan+.pricing-plan{border-left:0}
.pricing-plan.featured{z-index:1;margin:-14px 0;border:1px solid var(--accent-hover);border-radius:12px;padding-top:46px;padding-bottom:44px;animation:pricing-focus .42s cubic-bezier(.16,1,.3,1) both}
.pricing-plan[role="button"]:hover,.pricing-plan[role="button"]:focus-visible{z-index:2;border-color:var(--accent);box-shadow:0 10px 24px #17191b0d;outline:0}
@keyframes pricing-focus{from{transform:translateY(7px);border-color:var(--line)}to{transform:translateY(0);border-color:var(--accent-hover)}}
.pricing-badge{position:absolute;top:0;left:50%;padding:8px 15px;transform:translate(-50%,-50%);border-radius:20px;background:var(--accent-hover);color:#fff;font-size:11px;font-weight:700;white-space:nowrap}
.pricing-plan-heading{min-height:91px}
.pricing-plan-heading h2{font-size:27px}
.pricing-plan-heading p{max-width:32ch;margin-top:8px;color:var(--muted);font-size:13px}
.pricing-price{display:flex;align-items:flex-start;margin-top:22px;font-variant-numeric:tabular-nums}
.pricing-price>span{margin:8px 4px 0 0;color:var(--muted);font-size:20px}
.pricing-price strong{font-family:var(--font-display);font-size:48px;font-weight:600;line-height:1;letter-spacing:-.035em}
.pricing-price small{align-self:flex-end;margin:0 0 5px 9px;color:var(--muted)}
.pricing-credit-total{margin-top:11px;color:var(--accent-hover);font-size:13px;font-weight:700}
.pricing-plan ul{display:grid;gap:13px;margin:28px 0 30px;padding:25px 0 0;border-top:1px solid var(--line);list-style:none}
.pricing-plan li{display:flex;align-items:flex-start;gap:10px;color:#4f545b;font-size:12px;line-height:1.45}
.pricing-plan li .icon{width:16px;color:var(--accent-hover)}
.pricing-plan>.button{margin-top:auto;pointer-events:none}
.pricing-plan.featured>.button.primary{background:var(--accent-hover);border-color:var(--accent-hover)}
.pricing-status-note{grid-column:1/-1;margin:25px 0 -34px;color:var(--muted);font-size:11px;text-align:center}
.pricing-faq{max-width:920px;padding-top:46px;padding-bottom:76px}
.pricing-faq h2{text-align:center;margin-bottom:27px}
.pricing-close{background:#fff;border-top:1px solid var(--line)}
.pricing-close>.wrap{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:38px;padding-bottom:38px}
.pricing-close h2{font-size:25px}
.pricing-close p{margin-top:7px;color:var(--muted);font-size:12px}

@media(max-width:850px){
  .pricing-hero{padding-top:58px}.pricing-principles{gap:14px;flex-wrap:wrap}.pricing-plan{padding:28px 20px}.pricing-plan.featured{padding:42px 20px 38px}.pricing-plan-heading{min-height:110px}.pricing-price strong{font-size:40px}
}
@media(max-width:650px){
  .pricing-hero{padding-top:42px;padding-bottom:28px;text-align:left}.pricing-hero .lead{margin-left:0}.pricing-principles{align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:10px;margin-top:23px}.pricing-plans{grid-template-columns:1fr;gap:14px;padding-top:20px;padding-bottom:48px}.pricing-plan,.pricing-plan:first-child,.pricing-plan:last-child,.pricing-plan.featured{margin:0;padding:25px 22px;border:1px solid var(--line);border-radius:12px}.pricing-plan.featured{order:-1;padding-top:36px;border-color:var(--accent-hover)}.pricing-badge{top:0}.pricing-plan-heading{min-height:0}.pricing-plan-heading p{max-width:none}.pricing-price{margin-top:20px}.pricing-plan ul{margin:22px 0 25px;padding-top:20px}.pricing-status-note{order:4;margin:8px 0 0;text-align:left}.pricing-faq{padding-top:35px;padding-bottom:50px}.pricing-faq h2{text-align:left}.pricing-close>.wrap{align-items:flex-start;flex-direction:column;gap:20px}.pricing-close .button{width:100%}
}

/* The Create rail stays stable while the result stage scrolls independently. */
@media(min-width:721px){.workspace{height:calc(100dvh - 74px);overflow:hidden}.control-panel{height:100%;padding-bottom:0;display:flex;flex-direction:column;overflow:hidden}.control-panel>h2,.control-panel>.segmented,.control-panel>.source-preset{flex:0 0 auto}.control-panel form,.control-panel form>fieldset{min-height:0;display:flex;flex:1;flex-direction:column}.workspace-control-scroll{min-height:0;flex:1;overflow-y:auto;padding:1px 2px 24px;scrollbar-width:none}.workspace-control-scroll::-webkit-scrollbar{display:none}.control-panel .workspace-control-scroll>.field-label:first-child{margin-top:0}.control-panel .generate-area{flex:0 0 auto;margin:0 -24px;padding:14px 24px 18px;border-top:1px solid var(--line);background:var(--surface)}.control-panel .generate-area>.button{min-height:48px}.results-panel{height:100%;overflow-y:auto;scrollbar-color:#cbc8c4 transparent;scrollbar-width:thin}}
@media(max-width:720px){.workspace{height:auto;overflow:visible}.control-panel{height:auto;padding-bottom:24px;overflow:visible}.control-panel form,.control-panel form>fieldset{display:block}.workspace-control-scroll{overflow:visible;padding:0}.control-panel .generate-area{margin-top:24px;padding:18px 0 0}.results-panel{height:auto;overflow:visible}}

.result-heading-actions{display:flex;flex-shrink:0;gap:12px}.result-heading-actions .button{font-size:12px}.result-actions{justify-content:flex-start}
@media(max-width:650px){.results-heading{flex-wrap:wrap}.result-heading-actions{width:100%}.result-heading-actions .button{flex:1}}

/* Version history belongs to the workspace surface, not a nested card. */
.history{background:transparent;border:0;border-radius:0;padding:0}
:root[data-theme='dark'] .history{background:transparent}

/* Generated artwork sits on true white paper in both color themes. */
.result-art,:root[data-theme='dark'] .result-art{background:#fff}

/* The Single/Couple switch is navigation, expressed as an underline tab strip. */
.control-panel>.segmented{border-bottom:1px solid var(--line);gap:0;margin-bottom:20px}
.control-panel>.segmented button,:root[data-theme='dark'] .control-panel>.segmented button{background:transparent;border:0;border-radius:0;color:var(--muted);flex:1 1 50%;font-size:13px;font-weight:600;justify-content:center;min-height:42px;padding:11px 2px 10px;position:relative}
.control-panel>.segmented .selected{background:transparent;border:0;color:var(--accent)}
:root[data-theme='dark'] .control-panel>.segmented .selected{color:var(--accent)}
.control-panel>.segmented .selected::after{background:var(--accent);bottom:-1px;content:'';height:2px;left:0;position:absolute;right:0}

/* Keep version identity readable before its visual thumbnail. */
.version-card{align-items:stretch;flex-direction:column;gap:8px}.version-card>span{max-width:none;line-height:1.3}.version-card small{display:inline-block;margin:5px 0 0}.mini-pair{width:100%;flex:0 0 auto}

.placement-picker{border:0;margin:20px 0 0;padding:0}.placement-picker legend{font-size:12px;font-weight:600;margin-bottom:10px}.placement-shapes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.placement-shape-option{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--ink);display:flex;flex-direction:column;justify-content:center;min-height:78px;padding:10px 5px;text-align:center}.placement-shape-option:hover{border-color:var(--muted)}.placement-shape-option.selected{background:var(--wash);border-color:var(--accent);color:var(--accent)}.placement-shape-option strong{font-size:11px;font-weight:600;margin-top:8px}.placement-shape-mark{border:2px solid currentColor;border-radius:3px;display:block}.placement-shape-mark.compact{height:22px;width:22px}.placement-shape-mark.vertical{height:29px;width:15px}.placement-shape-mark.wide{height:15px;width:31px}.result-art.wide{aspect-ratio:3/2}.result-art.wide>.art{width:95%}
@media(pointer:coarse){.placement-shape-option{min-height:96px}}

/* Account settings: a compact working surface, with balance and activity kept distinct. */
.account-page{max-width:1160px;padding-top:48px;padding-bottom:96px}
.account-breadcrumb{padding:0 0 18px}.account-breadcrumb a{display:inline-flex;align-items:center;gap:6px}.account-breadcrumb .icon{width:15px;height:15px}
.account-heading{margin-bottom:38px}
.account-heading h1{font-family:inherit;font-size:28px;line-height:1.2;letter-spacing:-.025em;font-weight:650}
.account-heading p{margin-top:8px;font-size:14px;color:var(--muted)}
.account-layout{grid-template-columns:190px minmax(0,1fr);gap:48px}
.account-sidebar{border-right:1px solid var(--line);padding-right:22px;min-height:460px}
.account-nav{gap:4px}
.account-nav a{min-height:44px;padding:11px 12px;border-radius:6px;color:var(--ink)}
.account-nav a[aria-current]{background:var(--wash);color:var(--accent)}
.account-nav .icon{width:18px;height:18px}
.account-signout{margin-top:26px;min-height:44px;width:100%;justify-content:space-between;padding:11px 12px;border-top:1px solid var(--line);border-radius:0;text-align:left}
.account-signout .icon{width:16px;height:16px}
.account-content{max-width:900px}
.account-page-title{margin:0 0 24px}
.account-page-title h2{font-family:inherit;font-size:23px;line-height:1.25;letter-spacing:-.025em;font-weight:650}
.account-page-title p{margin-top:6px;color:var(--muted);font-size:14px}
.profile-summary{display:flex;align-items:center;gap:18px;padding:0 0 27px;border-bottom:1px solid var(--line);margin-bottom:26px}
.profile-summary .profile-avatar{width:58px;height:58px;border-radius:50%;font-size:23px;flex:none}
.profile-summary>div:last-child{min-width:0;display:grid;gap:4px}
.profile-display-name{font-size:16px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}
.profile-summary>div:last-child>span{font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.account-panel{padding:26px 28px;border-radius:10px}
.account-panel+.account-panel{margin-top:18px}
.account-panel h3{font-family:inherit;font-size:16px;line-height:1.3;letter-spacing:-.01em;font-weight:650}
.account-section-title p,.credit-records-header p{font-size:13px;color:var(--muted);margin-top:5px}
.profile-details form{max-width:540px;margin-top:22px}
.profile-details .field-label{margin:0 0 8px;font-size:13px}
.profile-details input{font-size:14px;min-height:46px}
.profile-details .micro{margin-top:8px;font-size:12px}
.profile-form-actions{display:flex;align-items:center;gap:14px;margin-top:22px;flex-wrap:wrap}
.profile-form-actions .account-feedback{margin:0;min-height:0}
.profile-form-actions .account-feedback:not(:empty){color:var(--accent)}
.profile-form-actions .account-feedback[data-state="error"]{color:var(--error)}
.creations-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.creations-title>span{color:var(--muted);font-size:12px;white-space:nowrap}
.creation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.creation-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface);transition:border-color .16s ease-out,transform .16s ease-out}
.creation-card:hover{border-color:var(--muted);transform:translateY(-2px)}
.creation-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.creation-art{display:grid;place-items:center;aspect-ratio:4/3;padding:15px;background:#fff;overflow:hidden}
.creation-art.pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.creation-art .generated-image{display:block;width:100%;height:100%;min-width:0;object-fit:contain;background:#fff}
.creation-art .image-unavailable{border:0;border-radius:0;background:#fff}
.creation-card-body{display:flex;flex:1;flex-direction:column;padding:17px 18px 16px;border-top:1px solid var(--line)}
.creation-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.creation-card-heading h3{min-width:0;font-family:inherit;font-size:15px;font-weight:650;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.creation-card-heading time{flex:none;color:var(--muted);font-size:11px;line-height:1.45}
.creation-card-body>p{display:-webkit-box;min-height:39px;margin:9px 0 16px;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.creation-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}
.creation-card-footer>div{display:flex;min-width:0;gap:5px;overflow:hidden}.creation-card-footer .style-tag{white-space:nowrap}
.creation-open{display:inline-flex;flex:none;align-items:center;gap:5px;color:var(--accent);font-size:12px;font-weight:650}.creation-open .icon{width:15px}
.creation-retention{margin:20px 0 0;color:var(--muted);font-size:12px;line-height:1.55}
.creations-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:260px;color:var(--muted);font-size:13px}
.creations-empty{display:flex;min-height:300px;flex-direction:column;align-items:flex-start;justify-content:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.creations-empty>span>.icon{width:28px;height:28px;color:var(--muted)}
.creations-empty h3{margin:17px 0 7px;font-family:inherit;font-size:17px;font-weight:650}
.creations-empty p{max-width:54ch;color:var(--muted);font-size:13px;line-height:1.6}
.creations-empty .button{margin-top:20px}
.connected-account-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-top:20px;margin-top:20px;border-top:1px solid var(--line)}
.connected-account-row>div{display:grid;gap:5px;min-width:0}
.connected-account-row strong{font-size:13px;font-weight:650}
.connected-account-row span:not(.account-connected-badge){color:var(--muted);font-size:13px;overflow-wrap:anywhere}
.account-connected-badge{font-size:12px;color:var(--ink);background:var(--surface-soft);padding:7px 10px;border-radius:5px;white-space:nowrap}
.credit-balance{max-width:none;margin:0}
.checkout-notice{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;background:var(--surface);padding:18px 22px;margin-bottom:18px;font-size:14px;line-height:1.5}
.checkout-notice strong{display:block;font-size:15px}
.checkout-notice p{margin:5px 0 0;color:var(--muted)}
.checkout-notice .button{margin-top:14px}
.credit-balance-main{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.credit-balance h3{font-size:14px;color:var(--muted);font-weight:550}
.credit-balance .balance-number{margin:10px 0 0;font-size:46px;line-height:1.08;letter-spacing:-.035em;font-weight:650}
.credit-balance .balance-number span{display:inline;font-size:16px;letter-spacing:0;font-weight:500;color:var(--muted);margin:0}
.credit-balance-main .button{white-space:nowrap;background:var(--surface)}
.credit-balance-main .button .icon{width:16px;height:16px}
.credit-availability{padding-top:18px;margin-top:22px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);line-height:1.55}
.credit-packs{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.credit-packs .button{font-size:12px;min-height:40px}
.credit-records{min-height:0}
.credit-records-header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.credit-filters{margin:0;padding:3px}
.credit-filters button{min-height:36px;padding:7px 13px}
.credit-filters button:hover{background:var(--surface-soft);color:var(--ink)}
.credit-records table{margin-top:22px}
.credit-records td,.credit-records th{padding:15px 10px}
.credit-records tr:last-child td{border-bottom:0}
.credit-type{display:inline-flex;padding:5px 8px;border-radius:5px;background:var(--surface-soft);font-size:12px}
.credit-amount{font-weight:650}
.credit-amount.received{color:var(--accent)}
.credits-empty{text-align:left;padding:32px 0 10px;color:var(--muted)}
.credits-empty>.icon{width:23px;height:23px;color:var(--muted)}
.credits-empty h3{margin:13px 0 5px;font-size:14px;font-weight:650}
.credits-empty p{font-size:13px;max-width:52ch}
.credit-records>.account-feedback:empty{display:none}
@media(max-width:760px){.account-page{padding-top:32px}.account-heading{margin-bottom:26px}.account-heading h1{font-size:25px}.account-layout{grid-template-columns:minmax(0,1fr);gap:25px}.account-sidebar{min-height:0;border-right:0;border-bottom:1px solid var(--line);padding:0 0 12px;display:flex;align-items:center;justify-content:space-between}.account-nav{flex-direction:row}.account-signout{border:0;width:auto;margin:0;padding:10px 6px}.account-page-title{margin-bottom:20px}.account-content{max-width:none}.credit-balance-main{align-items:center}}
@media(max-width:600px){.creation-grid{grid-template-columns:1fr}.creation-art{aspect-ratio:3/2}}
@media(max-width:480px){.account-page{padding-top:26px;padding-bottom:55px}.account-heading p{font-size:13px}.account-sidebar{align-items:stretch;overflow-x:auto}.account-nav{flex:1}.account-nav a{padding:10px 9px;font-size:12px;white-space:nowrap}.account-nav .icon{display:none}.account-signout{font-size:12px}.account-signout .icon{display:none}.account-page .account-panel{padding:21px}.profile-summary{gap:13px}.profile-summary .profile-avatar{width:50px;height:50px;font-size:20px}.credit-balance-main{align-items:flex-start;flex-direction:column;gap:18px}.credit-balance .balance-number{font-size:42px}.credit-availability{margin-top:20px}.credit-records-header{align-items:flex-start}.credit-filters{width:100%;justify-content:space-between}.credit-filters button{flex:1}.credit-table-scroll{margin-left:-8px;margin-right:-8px}.creations-title{align-items:flex-start}.creation-card-heading{display:block}.creation-card-heading time{display:block;margin-top:4px}.creation-art{aspect-ratio:4/3}}

/* The login overlay keeps the current page visible as a recessed glass surface. */
dialog::backdrop{background:#15161866;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}

/* Create is a focused two-pane workspace with navigation and credits inside the task surface. */
.workspace{min-height:100vh}
.control-panel-heading{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.control-panel-heading .icon-button{flex:0 0 auto;margin-left:-8px}
.control-panel-heading h2{margin:0}
@media(min-width:721px){.workspace{height:100dvh}.control-panel>.control-panel-heading{flex:0 0 auto}}
.workspace-account-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.workspace-account-actions .account-menu-panel{position:absolute;right:0;top:calc(100% + 9px)}
@media(max-width:650px){.workspace-account-actions{width:100%}}

/* Desktop Create fits the complete design stage and version strip into one viewport. */
@media(min-width:721px){
  .results-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr) clamp(132px,20dvh,190px);gap:12px;overflow:hidden}
  .results-heading,.demo-note{margin-bottom:0}
  .result-grid{align-items:stretch;height:100%;min-height:0}
  .result-grid.single{justify-self:stretch;margin:0;max-width:none;width:100%}
  .result-card{display:flex;flex-direction:column;min-height:0}
  .result-card-top,.result-tags,.preview-link{flex:0 0 auto}
  .result-art,.result-art.portrait,.result-art.wide{aspect-ratio:auto;flex:1;min-height:0;overflow:hidden}
  .result-art>.art{max-height:100%;max-width:100%;object-fit:contain}
  .result-art.compact>.art{height:68%;width:68%}
  .result-art.portrait>.art{height:92%;width:76%}
  .result-art.wide>.art{height:76%;width:92%}
  .history{display:flex;flex-direction:column;min-height:0;overflow:hidden}
  .history-heading{flex:0 0 auto;margin-bottom:8px}
  .version-list{align-items:stretch;flex:1;min-height:0}
  .version-card{height:100%;min-width:240px;overflow:hidden;width:240px}
  .version-card.single-version{min-width:168px;width:168px}
  .mini-pair{align-items:center;flex:1 1 auto;height:100%;justify-content:center;min-height:0}
  .mini-pair>.art,.mini-pair>.generated-image{flex:0 1 auto;height:100%;max-height:100%;max-width:100%;width:auto}
  .version-card.pair-version .mini-pair>.art,.version-card.pair-version .mini-pair>.generated-image{max-width:50%}
  .preview-configure-stage{grid-template-rows:auto auto minmax(0,1fr)}
  .preview-generating-stage{grid-template-rows:auto auto minmax(0,1fr)}
  .preview-results{grid-template-rows:auto auto minmax(0,1fr) auto}
  .preview-body-panel{min-height:0;overflow-y:auto;scrollbar-color:#cbc8c4 transparent;scrollbar-width:thin}
}

.collection-notes{padding:32px 0;border-bottom:1px solid var(--line)}
.collection-notes h2{font-size:24px}.collection-notes p{max-width:85ch;color:var(--muted);line-height:1.7;margin-top:12px}.collection-notes a{text-decoration:underline}

/* Editorial collection pages use one vertical reading path. */
.catalog-page .page-intro{margin-bottom:18px}
.collection-about-first{padding:0 0 38px;border-bottom:1px solid var(--line)}
.collection-about-first>div{max-width:none}
.collection-about-first p{color:var(--muted);font-size:14px;line-height:1.75;margin-top:10px}
.collection-gallery{padding:56px 0 18px}
.collection-section-heading{margin-bottom:24px}
.collection-section-heading h2{font-size:31px}
.collection-section-heading p{max-width:none;color:var(--muted);font-size:13px;margin-top:8px}
.collection-all{grid-template-columns:repeat(3,minmax(0,1fr))}
.collection-all-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.collection-all-1{grid-template-columns:minmax(0,1fr);max-width:390px}
.collection-all .idea-card{border-radius:10px}
.collection-guide-wide{margin:44px 0;padding:38px;background:#22252a;border:1px solid #353a42;border-radius:14px}
.collection-guide-wide h2{font-size:29px}
.collection-guide-intro{color:#c6c9cc;font-size:13px;margin-top:9px}
.collection-guide-wide ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;list-style:none;counter-reset:guide;margin:28px 0 0;padding:0}
.collection-guide-wide li{counter-increment:guide;position:relative;padding-top:28px;border-top:1px solid #424851}
.collection-guide-wide li:before{content:counter(guide,decimal-leading-zero);position:absolute;left:0;top:8px;color:var(--accent);font-size:11px;font-variant-numeric:tabular-nums;font-weight:700}
.collection-guide-wide h3{font-family:inherit;font-size:14px;font-weight:650;letter-spacing:0}
.collection-guide-wide li p{color:#c6c9cc;font-size:13px;margin-top:8px;line-height:1.65}
.artist-handoff{padding:58px 0;border-bottom:1px solid var(--line)}
.artist-handoff h2{font-size:27px;margin-bottom:12px}
.artist-handoff p{color:var(--muted);font-size:14px;line-height:1.75}
.artist-handoff a{display:inline-block;color:var(--accent);font-size:12px;margin-top:15px;text-decoration:underline;text-underline-offset:4px}
.collection-faq{padding:58px 0;border-bottom:1px solid var(--line)}
.collection-faq h2{margin-bottom:18px}
.collection-faq summary{padding-inline:0;font-size:14px}
.collection-faq details p{padding-left:0;padding-right:26px}
.catalog-page>.related{padding-top:58px}

@media(max-width:700px){
  .collection-about-first{padding-bottom:32px}
  .collection-section-heading h2{font-size:27px}
  .collection-gallery{padding-top:42px}
  .collection-all,.collection-all-2,.collection-all-1{grid-template-columns:1fr;max-width:none}
  .collection-guide-wide{margin:36px 0;padding:30px 24px}
  .collection-guide-wide ol{grid-template-columns:1fr;gap:24px}
  .artist-handoff,.collection-faq{padding:46px 0}
  .catalog-page>.related{padding-top:44px}
}

/* Credit exhaustion keeps the next paid action in the same focused dialog. */
.credit-purchase>p{max-width:48ch;color:var(--muted);font-size:14px;line-height:1.55;margin:0 0 20px}
.credit-purchase-packs{display:grid;gap:9px}
.credit-purchase-pack{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:14px;width:100%;min-height:62px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);text-align:left;transition:border-color .16s ease-out,background .16s ease-out}
.credit-purchase-pack:hover,.credit-purchase-pack:focus-visible{border-color:var(--accent);background:var(--wash);outline:0}
.credit-purchase-pack.featured{border-color:var(--accent)}
.credit-purchase-pack span{display:grid;gap:3px;min-width:0}
.credit-purchase-pack strong{font-size:14px}
.credit-purchase-pack small{color:var(--muted);font-size:11px}
.credit-purchase-pack>b{font-family:var(--font-display);font-size:20px;font-variant-numeric:tabular-nums}
.credit-purchase-pack .icon{width:17px;color:var(--accent)}
.credit-purchase-unavailable{margin-bottom:16px!important}
@media(max-width:480px){.credit-purchase-pack{min-height:58px;padding:11px 12px}.credit-purchase-pack>b{font-size:18px}}
