@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@theme inline{--animation-delay-0: 0s; --animation-delay-75: 75ms; --animation-delay-100: .1s; --animation-delay-150: .15s; --animation-delay-200: .2s; --animation-delay-300: .3s; --animation-delay-500: .5s; --animation-delay-700: .7s; --animation-delay-1000: 1s; --animation-repeat-0: 0; --animation-repeat-1: 1; --animation-repeat-infinite: infinite; --animation-direction-normal: normal; --animation-direction-reverse: reverse; --animation-direction-alternate: alternate; --animation-direction-alternate-reverse: alternate-reverse; --animation-fill-mode-none: none; --animation-fill-mode-forwards: forwards; --animation-fill-mode-backwards: backwards; --animation-fill-mode-both: both; --percentage-0: 0; --percentage-5: .05; --percentage-10: .1; --percentage-15: .15; --percentage-20: .2; --percentage-25: .25; --percentage-30: .3; --percentage-35: .35; --percentage-40: .4; --percentage-45: .45; --percentage-50: .5; --percentage-55: .55; --percentage-60: .6; --percentage-65: .65; --percentage-70: .7; --percentage-75: .75; --percentage-80: .8; --percentage-85: .85; --percentage-90: .9; --percentage-95: .95; --percentage-100: 1; --percentage-translate-full: 1; --animate-in: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-out: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes enter { from { opacity: var(--tw-enter-opacity,1); transform: translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0)); filter: blur(var(--tw-enter-blur,0)); }}@keyframes exit { to { opacity: var(--tw-exit-opacity,1); transform: translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0)); filter: blur(var(--tw-exit-blur,0)); }}--animate-accordion-down: accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-accordion-up: accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-down: collapsible-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-up: collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes accordion-down { from { height: 0; }to { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }}@keyframes accordion-up { from { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }to { height: 0; }}@keyframes collapsible-down { from { height: 0; }to { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }}@keyframes collapsible-up { from { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }to { height: 0; }}--animate-caret-blink: caret-blink 1.25s ease-out infinite; @keyframes caret-blink { 0%,70%,100% { opacity: 1; }20%,50% { opacity: 0; }}}@utility animation-duration-*{--tw-animation-duration: calc(--value(number)*1ms); --tw-animation-duration: --value(--animation-duration-*,[duration],"initial",[*]); animation-duration: calc(--value(number)*1ms); animation-duration: --value(--animation-duration-*,[duration],"initial",[*]);}@utility delay-*{animation-delay: calc(--value(number)*1ms); animation-delay: --value(--animation-delay-*,[duration],"initial",[*]); --tw-animation-delay: calc(--value(number)*1ms); --tw-animation-delay: --value(--animation-delay-*,[duration],"initial",[*]);}@utility repeat-*{animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]); --tw-animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]);}@utility direction-*{animation-direction: --value(--animation-direction-*,"initial",[*]); --tw-animation-direction: --value(--animation-direction-*,"initial",[*]);}@utility fill-mode-*{animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]); --tw-animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]);}@utility running{animation-play-state: running;}@utility paused{animation-play-state: paused;}@utility play-state-*{animation-play-state: --value("initial",[*]);}@utility blur-in{--tw-enter-blur: 20px;}@utility blur-in-*{--tw-enter-blur: calc(--value(number)*1px); --tw-enter-blur: --value(--blur-*,[*]);}@utility blur-out{--tw-exit-blur: 20px;}@utility blur-out-*{--tw-exit-blur: calc(--value(number)*1px); --tw-exit-blur: --value(--blur-*,[*]);}@utility fade-in{--tw-enter-opacity: 0;}@utility fade-in-*{--tw-enter-opacity: calc(--value(number)/100); --tw-enter-opacity: --value(--percentage-*,[*]);}@utility fade-out{--tw-exit-opacity: 0;}@utility fade-out-*{--tw-exit-opacity: calc(--value(number)/100); --tw-exit-opacity: --value(--percentage-*,[*]);}@utility zoom-in{--tw-enter-scale: 0;}@utility zoom-in-*{--tw-enter-scale: calc(--value(number)*1%); --tw-enter-scale: calc(--value(ratio)); --tw-enter-scale: --value(--percentage-*,[*]);}@utility -zoom-in-*{--tw-enter-scale: calc(--value(number)*-1%); --tw-enter-scale: calc(--value(ratio)*-1); --tw-enter-scale: --value(--percentage-*,[*]);}@utility zoom-out{--tw-exit-scale: 0;}@utility zoom-out-*{--tw-exit-scale: calc(--value(number)*1%); --tw-exit-scale: calc(--value(ratio)); --tw-exit-scale: --value(--percentage-*,[*]);}@utility -zoom-out-*{--tw-exit-scale: calc(--value(number)*-1%); --tw-exit-scale: calc(--value(ratio)*-1); --tw-exit-scale: --value(--percentage-*,[*]);}@utility spin-in{--tw-enter-rotate: 30deg;}@utility spin-in-*{--tw-enter-rotate: calc(--value(number)*1deg); --tw-enter-rotate: calc(--value(ratio)*360deg); --tw-enter-rotate: --value(--rotate-*,[*]);}@utility -spin-in{--tw-enter-rotate: -30deg;}@utility -spin-in-*{--tw-enter-rotate: calc(--value(number)*-1deg); --tw-enter-rotate: calc(--value(ratio)*-360deg); --tw-enter-rotate: --value(--rotate-*,[*]);}@utility spin-out{--tw-exit-rotate: 30deg;}@utility spin-out-*{--tw-exit-rotate: calc(--value(number)*1deg); --tw-exit-rotate: calc(--value(ratio)*360deg); --tw-exit-rotate: --value(--rotate-*,[*]);}@utility -spin-out{--tw-exit-rotate: -30deg;}@utility -spin-out-*{--tw-exit-rotate: calc(--value(number)*-1deg); --tw-exit-rotate: calc(--value(ratio)*-360deg); --tw-exit-rotate: --value(--rotate-*,[*]);}@utility slide-in-from-top{--tw-enter-translate-y: -100%;}@utility slide-in-from-top-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-y: calc(--value(ratio)*-100%); --tw-enter-translate-y: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-in-from-bottom{--tw-enter-translate-y: 100%;}@utility slide-in-from-bottom-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-y: calc(--value(ratio)*100%); --tw-enter-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-left{--tw-enter-translate-x: -100%;}@utility slide-in-from-left-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-in-from-right{--tw-enter-translate-x: 100%;}@utility slide-in-from-right-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-start{&:dir(ltr){ --tw-enter-translate-x: -100%; }&:dir(rtl){ --tw-enter-translate-x: 100%; }}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-in-from-end{&:dir(ltr){ --tw-enter-translate-x: 100%; }&:dir(rtl){ --tw-enter-translate-x: -100%; }}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }}@utility slide-out-to-top{--tw-exit-translate-y: -100%;}@utility slide-out-to-top-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-y: calc(--value(ratio)*-100%); --tw-exit-translate-y: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-out-to-bottom{--tw-exit-translate-y: 100%;}@utility slide-out-to-bottom-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-y: calc(--value(ratio)*100%); --tw-exit-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-left{--tw-exit-translate-x: -100%;}@utility slide-out-to-left-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-out-to-right{--tw-exit-translate-x: 100%;}@utility slide-out-to-right-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-start{&:dir(ltr){ --tw-exit-translate-x: -100%; }&:dir(rtl){ --tw-exit-translate-x: 100%; }}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-out-to-end{&:dir(ltr){ --tw-exit-translate-x: 100%; }&:dir(rtl){ --tw-exit-translate-x: -100%; }}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }}
:root{--brand-primary:192.195 79.3548% 69.6078%;--brand-accent:262.588 85.8586% 80.5882%;--brand-success:145.301 70.9402% 77.0588%;--brand-warning:42.7751 95.4338% 57.0588%;--brand-destructive:3.67347 93.6306% 69.2157%;--brand-surface:205.714 24.1379% 94.3137%;--brand-ink:0 8.64197% 15.8824%;--brand-hair-type-dry:#d4bff3;--brand-hair-type-wavy:#ffbc18;--brand-hair-type-oily:#ff6a60;--brand-hair-type-coarse:#5aaffc;--brand-hair-type-soft:#dadbdb;--brand-hair-finish-moist:#a2eafc;--brand-hair-finish-straight:#f6fca2;--brand-hair-finish-smooth:#97f1bc;--brand-hair-finish-airy:#ff82bb;--brand-hair-grad-dry-moist:linear-gradient(90deg, var(--brand-hair-type-dry) 0%, var(--brand-hair-finish-moist) 100%);--brand-hair-grad-dry-straight:linear-gradient(90deg, var(--brand-hair-type-dry) 0%, var(--brand-hair-finish-straight) 100%);--brand-hair-grad-dry-smooth:linear-gradient(90deg, var(--brand-hair-type-dry) 0%, var(--brand-hair-finish-smooth) 100%);--brand-hair-grad-dry-airy:linear-gradient(90deg, var(--brand-hair-type-dry) 0%, var(--brand-hair-finish-airy) 100%);--brand-hair-grad-wavy-moist:linear-gradient(90deg, var(--brand-hair-type-wavy) 0%, var(--brand-hair-finish-moist) 100%);--brand-hair-grad-wavy-straight:linear-gradient(90deg, var(--brand-hair-type-wavy) 0%, var(--brand-hair-finish-straight) 100%);--brand-hair-grad-wavy-smooth:linear-gradient(90deg, var(--brand-hair-type-wavy) 0%, var(--brand-hair-finish-smooth) 100%);--brand-hair-grad-wavy-airy:linear-gradient(90deg, var(--brand-hair-type-wavy) 0%, var(--brand-hair-finish-airy) 100%);--brand-hair-grad-oily-moist:linear-gradient(90deg, var(--brand-hair-type-oily) 0%, var(--brand-hair-finish-moist) 100%);--brand-hair-grad-oily-straight:linear-gradient(90deg, var(--brand-hair-type-oily) 0%, var(--brand-hair-finish-straight) 100%);--brand-hair-grad-oily-smooth:linear-gradient(90deg, var(--brand-hair-type-oily) 0%, var(--brand-hair-finish-smooth) 100%);--brand-hair-grad-oily-airy:linear-gradient(90deg, var(--brand-hair-type-oily) 0%, var(--brand-hair-finish-airy) 100%);--brand-hair-grad-coarse-moist:linear-gradient(90deg, var(--brand-hair-type-coarse) 0%, var(--brand-hair-finish-moist) 100%);--brand-hair-grad-coarse-straight:linear-gradient(90deg, var(--brand-hair-type-coarse) 0%, var(--brand-hair-finish-straight) 100%);--brand-hair-grad-coarse-smooth:linear-gradient(90deg, var(--brand-hair-type-coarse) 0%, var(--brand-hair-finish-smooth) 100%);--brand-hair-grad-coarse-airy:linear-gradient(90deg, var(--brand-hair-type-coarse) 0%, var(--brand-hair-finish-airy) 100%);--brand-hair-grad-soft-moist:linear-gradient(90deg, var(--brand-hair-type-soft) 0%, var(--brand-hair-finish-moist) 100%);--brand-hair-grad-soft-straight:linear-gradient(90deg, var(--brand-hair-type-soft) 0%, var(--brand-hair-finish-straight) 100%);--brand-hair-grad-soft-smooth:linear-gradient(90deg, var(--brand-hair-type-soft) 0%, var(--brand-hair-finish-smooth) 100%);--brand-hair-grad-soft-airy:linear-gradient(90deg, var(--brand-hair-type-soft) 0%, var(--brand-hair-finish-airy) 100%)}
:root{--brand-primary-light:191 80% 92%;--brand-primary-dark:191 65% 45%;--brand-primary-foreground:0 5% 16%;--brand-accent-light:262 85% 94%;--brand-accent-dark:262 60% 55%;--brand-accent-foreground:0 5% 16%;--brand-accent-lime:73 91% 65%;--brand-accent-lime-light:73 91% 92%;--brand-accent-lime-dark:73 80% 50%;--brand-accent-pink:345 100% 62%;--brand-accent-pink-light:345 100% 92%;--brand-accent-pink-dark:345 85% 50%;--brand-success-light:148 66% 92%;--brand-success-dark:148 50% 40%;--brand-success-foreground:0 5% 16%;--brand-success-foreground-on-light:148 45% 22%;--brand-warning-light:42 95% 90%;--brand-warning-dark:42 85% 40%;--brand-warning-foreground:0 5% 16%;--brand-warning-foreground-on-light:42 80% 22%;--brand-destructive-light:5 93% 92%;--brand-destructive-dark:5 70% 45%;--brand-destructive-foreground:0 5% 16%;--brand-destructive-foreground-on-light:5 70% 28%;--brand-surface-elevated:0 0% 100%;--brand-surface-muted:210 12% 94%;--brand-ink-muted:210 8% 35%;--brand-ink-inverted:0 0% 100%;--brand-border:210 10% 82%;--brand-border-strong:210 8% 68%;--neutral-50:210 15% 97%;--neutral-100:210 12% 94%;--neutral-200:210 10% 88%;--neutral-300:210 8% 75%;--neutral-400:210 6% 55%;--neutral-500:210 5% 42%;--neutral-600:210 5% 30%;--neutral-700:210 6% 22%;--neutral-800:210 8% 15%;--neutral-900:210 10% 8%;--neutral-surface:var(--neutral-50);--neutral-surface-elevated:0 0% 100%;--neutral-surface-muted:var(--neutral-100);--neutral-ink:var(--neutral-700);--neutral-ink-muted:var(--neutral-400);--neutral-ink-inverted:0 0% 100%;--neutral-border:var(--neutral-200);--neutral-border-strong:var(--neutral-300)}.dark{--brand-primary:191 70% 60%;--brand-primary-light:191 50% 20%;--brand-primary-dark:191 80% 75%;--brand-primary-foreground:210 20% 10%;--brand-accent:262 75% 75%;--brand-accent-light:262 50% 20%;--brand-accent-dark:262 85% 85%;--brand-accent-foreground:210 20% 10%;--brand-accent-lime:73 85% 60%;--brand-accent-lime-light:73 40% 18%;--brand-accent-lime-dark:73 90% 70%;--brand-accent-pink:345 90% 65%;--brand-accent-pink-light:345 50% 18%;--brand-accent-pink-dark:345 95% 75%;--brand-success:148 55% 65%;--brand-success-light:148 40% 18%;--brand-success-dark:148 60% 75%;--brand-success-foreground:210 20% 10%;--brand-warning:42 90% 55%;--brand-warning-light:42 50% 15%;--brand-warning-dark:42 95% 65%;--brand-warning-foreground:42 50% 15%;--brand-destructive:5 80% 60%;--brand-destructive-light:5 50% 18%;--brand-destructive-dark:5 90% 70%;--brand-destructive-foreground:210 20% 10%;--brand-surface:210 20% 10%;--brand-surface-elevated:210 18% 14%;--brand-surface-muted:210 16% 18%;--brand-ink:210 25% 96%;--brand-ink-muted:210 12% 70%;--brand-ink-inverted:210 20% 10%;--brand-border:210 15% 22%;--brand-border-strong:210 12% 35%;--neutral-50:210 8% 15%;--neutral-100:210 10% 18%;--neutral-200:210 12% 22%;--neutral-300:210 10% 30%;--neutral-400:210 8% 45%;--neutral-500:210 6% 55%;--neutral-600:210 8% 70%;--neutral-700:210 10% 82%;--neutral-800:210 12% 92%;--neutral-900:210 15% 97%;--neutral-surface-elevated:var(--neutral-100);--neutral-surface-muted:var(--neutral-200);--neutral-ink:var(--neutral-800);--neutral-ink-muted:var(--neutral-500);--neutral-ink-inverted:var(--neutral-50)}@theme{ --color-brand-primary: hsl(var(--brand-primary)); --color-brand-primary-light: hsl(var(--brand-primary-light)); --color-brand-primary-dark: hsl(var(--brand-primary-dark));  --color-brand-accent: hsl(var(--brand-accent)); --color-brand-accent-light: hsl(var(--brand-accent-light)); --color-brand-accent-foreground: hsl(var(--brand-accent-foreground));  --color-brand-success: hsl(var(--brand-success)); --color-brand-success-light: hsl(var(--brand-success-light)); --color-brand-success-dark: hsl(var(--brand-success-dark)); --color-success: hsl(var(--brand-success)); --color-success-foreground: hsl(var(--brand-success-foreground));  --color-brand-warning: hsl(var(--brand-warning)); --color-brand-warning-light: hsl(var(--brand-warning-light)); --color-brand-warning-dark: hsl(var(--brand-warning-dark)); --color-brand-warning-foreground: hsl(var(--brand-warning-foreground)); --color-warning: hsl(var(--brand-warning)); --color-warning-foreground: hsl(var(--brand-warning-foreground));  --color-brand-destructive: hsl(var(--brand-destructive)); --color-brand-destructive-light: hsl(var(--brand-destructive-light)); --color-brand-destructive-dark: hsl(var(--brand-destructive-dark)); --color-brand-destructive-foreground: hsl(var(--brand-destructive-foreground));  --color-brand-surface: hsl(var(--brand-surface)); --color-brand-surface-elevated: hsl(var(--brand-surface-elevated)); --color-brand-surface-muted: hsl(var(--brand-surface-muted));  --color-brand-ink: hsl(var(--brand-ink)); --color-brand-ink-muted: hsl(var(--brand-ink-muted));  --color-brand-border: hsl(var(--brand-border)); --color-brand-border-strong: hsl(var(--brand-border-strong));}@layer components{.feme-gradient-primary{background:linear-gradient(135deg, hsl(var(--brand-primary)) 0%, hsl(var(--brand-accent)) 100%)}.feme-gradient-accent{background:linear-gradient(135deg, hsl(var(--brand-accent)) 0%, hsl(var(--brand-accent-pink)) 100%)}.feme-gradient-hero{background:linear-gradient(135deg, color-mix(in srgb, hsl(var(--brand-primary)) 8%, hsl(var(--brand-surface))) 0%, hsl(var(--brand-surface)) 50%, color-mix(in srgb, hsl(var(--brand-accent)) 5%, hsl(var(--brand-surface))) 100%)}.feme-badge-dry-moist{background:linear-gradient(90deg, var(--brand-hair-type-dry) 0%, var(--brand-hair-finish-moist) 100%)}.feme-badge-dry-straight{background:linear-gradient(90deg, var(--brand-hair-type-dry) 0%, var(--brand-hair-finish-straight) 100%)}.feme-badge-dry-smooth{background:linear-gradient(90deg, var(--brand-hair-type-dry) 0%, var(--brand-hair-finish-smooth) 100%)}.feme-badge-dry-airy{background:linear-gradient(90deg, var(--brand-hair-type-dry) 0%, var(--brand-hair-finish-airy) 100%)}.feme-badge-wavy-moist{background:linear-gradient(90deg, var(--brand-hair-type-wavy) 0%, var(--brand-hair-finish-moist) 100%)}.feme-badge-wavy-straight{background:linear-gradient(90deg, var(--brand-hair-type-wavy) 0%, var(--brand-hair-finish-straight) 100%)}.feme-badge-wavy-smooth{background:linear-gradient(90deg, var(--brand-hair-type-wavy) 0%, var(--brand-hair-finish-smooth) 100%)}.feme-badge-wavy-airy{background:linear-gradient(90deg, var(--brand-hair-type-wavy) 0%, var(--brand-hair-finish-airy) 100%)}.feme-badge-oily-moist{background:linear-gradient(90deg, var(--brand-hair-type-oily) 0%, var(--brand-hair-finish-moist) 100%)}.feme-badge-oily-straight{background:linear-gradient(90deg, var(--brand-hair-type-oily) 0%, var(--brand-hair-finish-straight) 100%)}.feme-badge-oily-smooth{background:linear-gradient(90deg, var(--brand-hair-type-oily) 0%, var(--brand-hair-finish-smooth) 100%)}.feme-badge-oily-airy{background:linear-gradient(90deg, var(--brand-hair-type-oily) 0%, var(--brand-hair-finish-airy) 100%)}.feme-badge-coarse-moist{background:linear-gradient(90deg, var(--brand-hair-type-coarse) 0%, var(--brand-hair-finish-moist) 100%)}.feme-badge-coarse-straight{background:linear-gradient(90deg, var(--brand-hair-type-coarse) 0%, var(--brand-hair-finish-straight) 100%)}.feme-badge-coarse-smooth{background:linear-gradient(90deg, var(--brand-hair-type-coarse) 0%, var(--brand-hair-finish-smooth) 100%)}.feme-badge-coarse-airy{background:linear-gradient(90deg, var(--brand-hair-type-coarse) 0%, var(--brand-hair-finish-airy) 100%)}.feme-badge-soft-moist{background:linear-gradient(90deg, var(--brand-hair-type-soft) 0%, var(--brand-hair-finish-moist) 100%)}.feme-badge-soft-straight{background:linear-gradient(90deg, var(--brand-hair-type-soft) 0%, var(--brand-hair-finish-straight) 100%)}.feme-badge-soft-smooth{background:linear-gradient(90deg, var(--brand-hair-type-soft) 0%, var(--brand-hair-finish-smooth) 100%)}.feme-badge-soft-airy{background:linear-gradient(90deg, var(--brand-hair-type-soft) 0%, var(--brand-hair-finish-airy) 100%)}[class^=feme-badge-],[class*=\ feme-badge-]{color:hsl(var(--brand-ink));border-radius:9999px;align-items:center;padding:.25rem 1rem;font-size:.75rem;font-weight:500;display:inline-flex}.feme-btn-primary{background-color:hsl(var(--brand-primary));color:hsl(var(--brand-ink));transition:color var(--animation-duration-normal) var(--animation-ease-smooth), background-color var(--animation-duration-normal) var(--animation-ease-smooth), border-color var(--animation-duration-normal) var(--animation-ease-smooth), opacity var(--animation-duration-normal) var(--animation-ease-smooth), transform var(--animation-duration-normal) var(--animation-ease-smooth), box-shadow var(--animation-duration-normal) var(--animation-ease-smooth);cursor:pointer;border:none;border-radius:.75rem;justify-content:center;align-items:center;padding:.5rem 1.5rem;font-size:.875rem;font-weight:700;display:inline-flex}.feme-btn-primary:hover{filter:brightness(1.05);box-shadow:0 4px 12px color-mix(in srgb, hsl(var(--brand-primary)) 40%, transparent);transform:translateY(-1px)}.feme-btn-primary:active{filter:brightness(.95);transform:translateY(0)}.feme-btn-secondary{color:hsl(var(--brand-ink));border:1px solid hsl(var(--brand-primary));transition:color var(--animation-duration-normal) var(--animation-ease-smooth), background-color var(--animation-duration-normal) var(--animation-ease-smooth), border-color var(--animation-duration-normal) var(--animation-ease-smooth), opacity var(--animation-duration-normal) var(--animation-ease-smooth), transform var(--animation-duration-normal) var(--animation-ease-smooth), box-shadow var(--animation-duration-normal) var(--animation-ease-smooth);cursor:pointer;background-color:#0000;border-radius:.75rem;justify-content:center;align-items:center;padding:.5rem 1.5rem;font-size:.875rem;font-weight:700;display:inline-flex}.feme-btn-secondary:hover{background-color:color-mix(in srgb, hsl(var(--brand-primary)) 10%, transparent)}.feme-btn-secondary:active{background-color:color-mix(in srgb, hsl(var(--brand-primary)) 20%, transparent)}.feme-focus-ring:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, hsl(var(--brand-primary)) 40%, transparent);outline:none}.feme-scrollbar::-webkit-scrollbar{width:6px;height:6px}.feme-scrollbar::-webkit-scrollbar-track{background:color-mix(in srgb, hsl(var(--brand-surface)) 80%, transparent);border-radius:3px}.feme-scrollbar::-webkit-scrollbar-thumb{background:color-mix(in srgb, hsl(var(--brand-primary)) 40%, transparent);border-radius:3px}.feme-scrollbar::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, hsl(var(--brand-primary)) 60%, transparent)}}
:root{--role-canvas:var(--brand-surface);--role-canvas-subtle:var(--brand-surface-muted);--role-canvas-elevated:var(--brand-surface-elevated);--role-ink:var(--brand-ink);--role-ink-muted:var(--brand-ink-muted);--role-ink-inverted:var(--brand-ink-inverted);--semantic-text-primary:var(--brand-ink);--semantic-text-secondary:var(--brand-ink-muted);--semantic-text-muted:var(--brand-ink-muted);--semantic-text-inverted:var(--brand-ink-inverted);--semantic-text-on-primary:var(--brand-primary-foreground);--semantic-text-on-accent:var(--brand-accent-foreground);--semantic-text-on-success:var(--brand-success-foreground);--semantic-text-on-warning:var(--brand-warning-foreground);--semantic-text-on-destructive:var(--brand-destructive-foreground);--semantic-bg-base:var(--brand-surface);--semantic-bg-surface:var(--brand-surface-elevated);--semantic-bg-elevated:var(--brand-surface-elevated);--semantic-bg-muted:var(--brand-surface-muted);--semantic-background:var(--brand-surface);--semantic-background-elevated:var(--brand-surface-elevated);--semantic-background-muted:var(--brand-surface-muted);--semantic-border-default:var(--brand-border);--semantic-border-subtle:var(--neutral-100);--semantic-border-divider:var(--neutral-200);--semantic-border:var(--brand-border);--semantic-interactive-primary:var(--brand-primary);--semantic-interactive-primary-hover:var(--brand-primary-light);--semantic-interactive-primary-pressed:var(--brand-primary-dark);--semantic-interactive-secondary:var(--neutral-200);--semantic-interactive-secondary-hover:var(--neutral-300);--semantic-interactive-secondary-pressed:var(--neutral-400);--semantic-interactive-accent:var(--brand-accent);--semantic-interactive-accent-hover:var(--brand-accent-light);--semantic-interactive-accent-pressed:var(--brand-accent-dark);--semantic-interactive-disabled:var(--neutral-200);--semantic-interactive-disabled-text:var(--neutral-500);--semantic-feedback-success:var(--brand-success);--semantic-feedback-warning:var(--brand-warning);--semantic-feedback-error:var(--brand-destructive);--semantic-feedback-info:var(--brand-primary);--semantic-feedback-success-bg:var(--brand-success-light);--semantic-feedback-warning-bg:var(--brand-warning-light);--semantic-destructive:var(--brand-destructive);--semantic-destructive-foreground:var(--brand-destructive-foreground);--semantic-decorative-pink:var(--brand-accent-pink);--semantic-overlay-scrim:#0006;--semantic-overlay-scrim-strong:#0009;--semantic-overlay-shadow-subtle:color-mix(in srgb, hsl(var(--semantic-text-primary)) 8%, transparent);--semantic-overlay-shadow-strong:color-mix(in srgb, hsl(var(--semantic-text-primary)) 16%, transparent);--semantic-overlay-inner-shadow:color-mix(in srgb, hsl(var(--semantic-text-primary)) 10%, transparent);--semantic-overlay-surface-dim:color-mix(in srgb, hsl(var(--semantic-text-primary)) 6%, transparent);--semantic-overlay-surface-dim-strong:color-mix(in srgb, hsl(var(--semantic-text-primary)) 10%, transparent)}.dark{--semantic-border-subtle:var(--brand-border);--semantic-border-divider:var(--brand-border);--semantic-interactive-primary-hover:var(--brand-primary-dark);--semantic-interactive-primary-pressed:var(--brand-primary-light);--semantic-interactive-secondary:var(--brand-surface-elevated);--semantic-interactive-secondary-hover:var(--brand-surface-muted);--semantic-interactive-secondary-pressed:var(--brand-surface);--semantic-interactive-accent-hover:var(--brand-accent-dark);--semantic-interactive-accent-pressed:var(--brand-accent-light);--semantic-interactive-disabled:var(--brand-surface-muted);--semantic-interactive-disabled-text:var(--brand-ink-muted);--semantic-overlay-scrim:#0009;--semantic-overlay-scrim-strong:#000c;--semantic-overlay-shadow-subtle:color-mix(in srgb, hsl(var(--semantic-text-primary)) 12%, transparent);--semantic-overlay-shadow-strong:color-mix(in srgb, hsl(var(--semantic-text-primary)) 24%, transparent);--semantic-overlay-inner-shadow:color-mix(in srgb, hsl(var(--semantic-text-primary)) 20%, transparent);--semantic-overlay-surface-dim:color-mix(in srgb, hsl(var(--semantic-text-primary)) 8%, transparent);--semantic-overlay-surface-dim-strong:color-mix(in srgb, hsl(var(--semantic-text-primary)) 16%, transparent)}@theme{ --color-semantic-feedback-success: hsl(var(--semantic-feedback-success)); --color-semantic-feedback-warning: hsl(var(--semantic-feedback-warning)); --color-semantic-feedback-error: hsl(var(--semantic-feedback-error));}
:root{--animation-duration-instant:80ms;--animation-duration-fast:.12s;--animation-duration-normal:.2s;--animation-duration-slow:.3s;--animation-duration-slower:.4s;--animation-duration-spring:.35s;--animation-duration-gradient:15s;--animation-duration-float-gentle-slow:7s;--animation-duration-float-gentle-slower:8s;--animation-ease-spring:cubic-bezier(.34, 1.56, .64, 1);--animation-ease-surface-spring:cubic-bezier(.22, 1, .36, 1);--animation-ease-bounce:cubic-bezier(.68, -.55, .265, 1.55);--animation-ease-smooth:cubic-bezier(.4, 0, .2, 1);--animation-ease-interruptible:cubic-bezier(.25, .1, .25, 1)}@theme{ --duration-instant: var(--animation-duration-instant); --duration-fast: var(--animation-duration-fast); --duration-normal: var(--animation-duration-normal); --duration-slow: var(--animation-duration-slow);  --ease-spring: var(--animation-ease-spring); --ease-surface-spring: var(--animation-ease-surface-spring); --ease-smooth: var(--animation-ease-smooth);}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-left{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes slide-right{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{animation-duration:1s;animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-duration:.5s;animation-timing-function:cubic-bezier(0,0,.2,1);transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in{animation:fade-in var(--animation-duration-normal) var(--animation-ease-smooth)}.animate-fade-out{animation:fade-out var(--animation-duration-normal) var(--animation-ease-smooth)}.animate-slide-up{animation:slide-up var(--animation-duration-normal) var(--animation-ease-smooth)}.animate-slide-down{animation:slide-down var(--animation-duration-normal) var(--animation-ease-smooth)}.animate-slide-left{animation:slide-left var(--animation-duration-normal) var(--animation-ease-smooth)}.animate-slide-right{animation:slide-right var(--animation-duration-normal) var(--animation-ease-smooth)}.animate-scale-in{animation:scale-in var(--animation-duration-fast) var(--animation-ease-spring)}.animate-scale-out{animation:scale-out var(--animation-duration-fast) var(--animation-ease-spring)}.animate-accordion-down{animation:.2s ease-out accordion-down}.animate-accordion-up{animation:.2s ease-out accordion-up}.animate-spin{animation:1s linear infinite spin}.animate-ping{animation:1s cubic-bezier(0,0,.2,1) infinite ping}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-bounce{animation:1s infinite bounce}@media (prefers-reduced-motion:reduce){:root{--animation-duration-instant:0s;--animation-duration-fast:0s;--animation-duration-normal:0s;--animation-duration-slow:0s;--animation-duration-slower:0s;--animation-duration-spring:0s}}

@source "../theme";@source "../components";@source "../features";@source "../recipes";@source "../shadcn";@custom-variant dark (&:is(.dark *));@custom-variant state-active (&[data-state="active"]);@utility font-emphasis{font-weight: 500;}@utility font-strong{font-weight: 600;}@utility font-heavy{font-weight: 700;}@utility leading-compact{line-height: 1.25;}@utility leading-comfortable{line-height: 1.625;}@utility tracking-heading{letter-spacing: 0;}@utility tracking-label{letter-spacing: .08em;}@utility ui-radius-md{@apply rounded-md;}@utility ui-radius-lg{@apply rounded-lg;}@utility ui-radius-xl{@apply rounded-xl;}@utility ui-radius-2xl{@apply rounded-2xl;}@utility ui-radius-3xl{@apply rounded-3xl;}@utility ui-border-default{@apply border-border;}@utility ui-border-input{@apply border-input;}@utility ui-gap-xs{@apply gap-1;}@utility ui-stack-compact{@apply gap-1.5;}@utility ui-gap-sm{@apply gap-2;}@utility ui-gap-md{@apply gap-3;}@utility ui-gap-lg{@apply gap-4;}@utility ui-gap-xl{@apply gap-6;}@utility ui-gap-2xl{@apply gap-8;}@utility ui-p-sm{@apply p-4;}@utility ui-p-lg{@apply p-6;}@utility ui-p-xl{@apply p-8;}@theme{--font-display: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif; --font-body: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif; --font-accent: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif; --font-salon: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif; --font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace; --text-caption: 10px; --text-caption--line-height: 1.3; --text-caption-sm: 9px; --text-caption-sm--line-height: 1.3; --text-label-sm: .875rem; --text-label-sm--line-height: 1.25rem; --text-label-md: 1rem; --text-label-md--line-height: 1.5rem; --text-title-sm: 1.125rem; --text-title-sm--line-height: 1.75rem; --text-title-md: 1.25rem; --text-title-md--line-height: 1.75rem; --text-title-lg: 1.5rem; --text-title-lg--line-height: 2rem; --background: var(--semantic-bg-base); --foreground: var(--semantic-text-primary); --card: var(--semantic-bg-elevated); --card-foreground: var(--semantic-text-primary); --popover: var(--semantic-bg-elevated); --popover-foreground: var(--semantic-text-primary); --primary: var(--semantic-interactive-primary); --primary-foreground: var(--semantic-text-on-primary); --secondary: var(--semantic-bg-muted); --secondary-foreground: var(--semantic-text-primary); --muted: var(--semantic-bg-muted); --muted-foreground: var(--semantic-text-secondary); --accent: var(--semantic-interactive-accent); --accent-foreground: var(--semantic-text-on-accent); --destructive: var(--semantic-feedback-error); --destructive-foreground: var(--semantic-text-on-destructive); --border: var(--semantic-border-default); --input: var(--semantic-border-default); --ring: var(--semantic-interactive-primary); --radius: .5rem; --sidebar-background: var(--semantic-bg-elevated); --sidebar-foreground: var(--semantic-text-primary); --sidebar-accent: var(--semantic-bg-muted); --sidebar-accent-foreground: var(--semantic-text-primary); --sidebar-border: var(--semantic-border-subtle); --sidebar-ring: var(--semantic-interactive-primary); --color-border: hsl(var(--border)); --color-input: hsl(var(--input)); --color-ring: hsl(var(--ring)); --color-background: hsl(var(--background)); --color-foreground: hsl(var(--foreground)); --color-primary: hsl(var(--primary)); --color-primary-foreground: hsl(var(--primary-foreground)); --color-primary-hover: hsl(var(--semantic-interactive-primary-hover)); --color-primary-active: hsl(var(--semantic-interactive-primary-pressed)); --color-secondary: hsl(var(--secondary)); --color-secondary-foreground: hsl(var(--secondary-foreground)); --color-destructive: hsl(var(--destructive)); --color-destructive-foreground: hsl(var(--destructive-foreground)); --color-muted: hsl(var(--muted)); --color-muted-foreground: hsl(var(--muted-foreground)); --color-accent: hsl(var(--accent)); --color-accent-foreground: hsl(var(--accent-foreground)); --color-popover: hsl(var(--popover)); --color-popover-foreground: hsl(var(--popover-foreground)); --color-card: hsl(var(--card)); --color-card-foreground: hsl(var(--card-foreground)); --color-sidebar-background: hsl(var(--sidebar-background)); --color-sidebar-foreground: hsl(var(--sidebar-foreground)); --color-sidebar-accent: hsl(var(--sidebar-accent)); --color-sidebar-accent-foreground: hsl(var(--sidebar-accent-foreground)); --color-sidebar-border: hsl(var(--sidebar-border)); --color-sidebar-ring: hsl(var(--sidebar-ring)); --color-semantic-text-primary: hsl(var(--semantic-text-primary)); --color-semantic-text-secondary: hsl(var(--semantic-text-secondary)); --color-semantic-text-tertiary: hsl(var(--semantic-text-muted)); --color-semantic-text-on-warning: hsl(var(--semantic-text-on-warning)); --color-semantic-text-on-success: hsl(var(--semantic-text-on-success)); --color-semantic-bg-default: hsl(var(--semantic-bg-base)); --color-semantic-bg-elevated: hsl(var(--semantic-bg-elevated)); --color-semantic-border-border: hsl(var(--semantic-border-default)); --color-semantic-feedback-warning: hsl(var(--semantic-feedback-warning)); --color-semantic-feedback-warning-bg: hsl(var(--semantic-feedback-warning-bg)); --color-semantic-feedback-success: hsl(var(--semantic-feedback-success)); --color-semantic-feedback-success-bg: hsl(var(--semantic-feedback-success-bg)); --color-border-border: hsl(var(--border)); --color-border-input: hsl(var(--input));}@layer base{:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}}::selection{background:hsl(var(--primary) / .25);color:hsl(var(--foreground))}button,[role=button],a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@utility bg-sidebar{background-color: hsl(var(--sidebar-background));}@keyframes slideDown{0%{height:0}to{height:var(--radix-collapsible-content-height)}}@keyframes slideUp{0%{height:var(--radix-collapsible-content-height)}to{height:0}}
@theme{ --color-chart-1: hsl(var(--chart-1)); --color-chart-2: hsl(var(--chart-2)); --color-chart-3: hsl(var(--chart-3)); --color-chart-4: hsl(var(--chart-4)); --color-chart-5: hsl(var(--chart-5));  --color-warm-50: hsl(var(--warm-50)); --color-warm-100: hsl(var(--warm-100)); --color-warm-900: hsl(var(--warm-900));}:root[data-feme-theme=storefront]{--brand-primary:193 73% 65%;--brand-primary-light:193 75% 79%;--brand-primary-dark:193 57% 49%;--brand-primary-foreground:0 0% 100%;--brand-accent:267 37% 67%;--brand-accent-light:268 46% 81%;--brand-accent-dark:266 33% 52%;--brand-accent-foreground:0 0% 100%;--brand-accent-lime:71 80% 55%;--brand-accent-lime-light:73 82% 71%;--brand-accent-lime-dark:71 66% 43%;--brand-accent-pink:340 72% 56%;--brand-accent-pink-light:339 84% 78%;--brand-accent-pink-dark:340 62% 44%;--brand-warning:31 92% 54%;--brand-warning-light:33 94% 83%;--brand-warning-dark:30 84% 42%;--brand-warning-foreground:0 5% 16%;--brand-destructive:340 72% 56%;--brand-destructive-light:339 84% 90%;--brand-destructive-dark:340 62% 44%;--brand-destructive-foreground:0 0% 100%;--brand-surface:224 19% 93%;--brand-surface-elevated:0 0% 100%;--brand-surface-muted:224 18% 89%;--brand-ink:0 0% 23%;--brand-ink-muted:224 9% 37%;--brand-ink-inverted:0 0% 100%;--brand-border:223 15% 84%;--brand-border-strong:223 12% 74%;--chart-1:var(--semantic-feedback-info);--chart-2:var(--semantic-interactive-accent);--chart-3:var(--semantic-feedback-success);--chart-4:var(--semantic-feedback-warning);--chart-5:var(--semantic-text-secondary);--warm-50:var(--semantic-bg-base);--warm-100:var(--semantic-bg-muted);--warm-900:var(--semantic-text-primary);--shadow-hover:0 2px 8px #0000000a, 0 0 0 1px #00000008;--shadow-focus:0 0 0 3px hsl(var(--semantic-interactive-primary) / .15)}:root[data-feme-theme=storefront].dark{--brand-primary:193 73% 73%;--brand-primary-light:193 79% 82%;--brand-primary-dark:193 57% 56%;--brand-primary-foreground:206 40% 12%;--brand-accent:267 40% 74%;--brand-accent-light:268 46% 82%;--brand-accent-dark:266 34% 61%;--brand-accent-foreground:240 20% 14%;--brand-accent-lime:71 79% 61%;--brand-accent-lime-light:73 82% 72%;--brand-accent-lime-dark:70 64% 52%;--brand-accent-pink:340 74% 67%;--brand-accent-pink-light:340 84% 80%;--brand-accent-pink-dark:340 62% 56%;--brand-warning:31 92% 61%;--brand-warning-light:33 93% 74%;--brand-warning-dark:30 84% 50%;--brand-warning-foreground:28 32% 16%;--brand-destructive:340 74% 67%;--brand-destructive-light:339 84% 80%;--brand-destructive-dark:340 62% 56%;--brand-destructive-foreground:240 20% 14%;--brand-surface:212 39% 14%;--brand-surface-elevated:212 34% 18%;--brand-surface-muted:212 30% 22%;--brand-ink:224 18% 90%;--brand-ink-muted:224 14% 72%;--brand-ink-inverted:212 39% 12%;--brand-border:213 21% 28%;--brand-border-strong:213 19% 38%;--chart-1:var(--semantic-feedback-info);--chart-2:var(--semantic-interactive-accent);--chart-3:var(--semantic-feedback-success);--chart-4:var(--semantic-feedback-warning);--chart-5:var(--semantic-text-secondary);--warm-50:var(--semantic-bg-base);--warm-100:var(--semantic-bg-muted);--warm-900:var(--semantic-text-primary);--shadow-hover:0 4px 16px #00000040, 0 0 0 1px #ffffff0d;--shadow-focus:0 0 0 3px hsl(var(--semantic-interactive-primary) / .25)}
:root[data-feme-theme=storefront]{--brand-surface:210 12% 95%;--brand-surface-muted:210 10% 92%;--brand-surface-elevated:210 12% 98%;--brand-border:210 10% 84%;--brand-border-strong:210 10% 72%;--semantic-border-subtle:210 10% 90%;--semantic-border-divider:210 10% 86%}:root[data-feme-theme=storefront].dark{--brand-border:210 12% 20%;--brand-border-strong:210 10% 28%;--semantic-border-subtle:210 12% 22%;--semantic-border-divider:210 10% 24%}
@layer components{.hair-type-dry{--hair-type-color:var(--brand-hair-type-dry)}.hair-type-wavy{--hair-type-color:var(--brand-hair-type-wavy)}.hair-type-oily{--hair-type-color:var(--brand-hair-type-oily)}.hair-type-coarse{--hair-type-color:var(--brand-hair-type-coarse)}.hair-type-soft{--hair-type-color:var(--brand-hair-type-soft)}.finish-moist{--finish-color:var(--brand-hair-finish-moist)}.finish-straight{--finish-color:var(--brand-hair-finish-straight)}.finish-smooth{--finish-color:var(--brand-hair-finish-smooth)}.finish-airy{--finish-color:var(--brand-hair-finish-airy)}.hair-type-swatch{background-color:var(--hair-type-color)}.finish-swatch{background-color:var(--finish-color)}.hair-type-gradient{background:linear-gradient(90deg, var(--hair-type-color) 0%, var(--finish-color) 100%)}.tone-card-strong{background-color:color-mix(in srgb, var(--hair-type-color) 20%, transparent)}.tone-card-strong-finish{background-color:color-mix(in srgb, var(--finish-color) 20%, transparent)}}
@layer components{.store-fade-slide-up{opacity:0;animation:store-fade-slide-up var(--animation-duration-slow) var(--animation-ease-smooth) forwards;animation-delay:var(--store-anim-delay,0s)}.store-tab-content-in{animation:store-tab-content-in var(--animation-duration-normal) var(--animation-ease-smooth) forwards}.store-card-pop{opacity:0;animation:store-card-pop var(--animation-duration-slow) var(--animation-ease-spring) forwards;animation-delay:var(--store-anim-delay,0s)}.store-badge-pop{animation:store-badge-pop var(--animation-duration-normal) var(--animation-ease-spring) forwards}.store-section-ambient{background-color:hsl(var(--brand-surface));background-image:radial-gradient(1200px 800px at 8% -10%, hsl(var(--brand-primary) / .04), transparent 60%), radial-gradient(900px 700px at 92% 0%, hsl(var(--brand-accent) / .03), transparent 55%), radial-gradient(700px 500px at 50% 100%, hsl(var(--brand-success) / .02), transparent 60%), linear-gradient(180deg, hsl(var(--brand-surface)) 0%, hsl(var(--brand-surface-muted)) 100%);background-repeat:no-repeat}.dark .store-section-ambient{background-color:hsl(var(--brand-surface));background-image:radial-gradient(1200px 800px at 8% -10%, hsl(var(--brand-primary) / .04), transparent 60%), radial-gradient(900px 700px at 92% 0%, hsl(var(--brand-accent) / .03), transparent 55%), radial-gradient(700px 500px at 50% 100%, hsl(var(--brand-success) / .02), transparent 60%), linear-gradient(180deg, hsl(var(--brand-surface)) 0%, hsl(var(--brand-surface-muted)) 100%)}.store-delay-200{--store-anim-delay:.2s}.store-delay-300{--store-anim-delay:.3s}.store-scrollbar-hide{scrollbar-width:none;-ms-overflow-style:none}.store-scrollbar-hide::-webkit-scrollbar{display:none}.store-hair-type-badge{--badge-attr-color:var(--brand-hair-type-dry);--badge-finish-color:var(--brand-hair-finish-moist);background:linear-gradient(135deg, color-mix(in srgb, var(--badge-attr-color) 25%, hsl(var(--semantic-bg-surface))) 0%, color-mix(in srgb, var(--badge-finish-color) 25%, hsl(var(--semantic-bg-surface))) 100%);border:1.5px solid color-mix(in srgb, var(--badge-attr-color) 40%, transparent)}.dark .store-hair-type-badge{background:linear-gradient(135deg, color-mix(in srgb, var(--badge-attr-color) 20%, hsl(var(--semantic-bg-elevated))) 0%, color-mix(in srgb, var(--badge-finish-color) 20%, hsl(var(--semantic-bg-elevated))) 100%);border-color:color-mix(in srgb, var(--badge-attr-color) 30%, transparent)}.store-hair-type-attr{color:color-mix(in srgb, var(--badge-attr-color) 70%, hsl(var(--semantic-text-primary)))}.store-hair-type-finish{color:color-mix(in srgb, var(--badge-finish-color) 70%, hsl(var(--semantic-text-primary)))}.dark .store-hair-type-attr{color:var(--badge-attr-color)}.dark .store-hair-type-finish{color:var(--badge-finish-color)}.hair-type-card{background-color:color-mix(in srgb, var(--hair-type-color) 15%, transparent)}.finish-card{background-color:color-mix(in srgb, var(--finish-color) 15%, transparent)}.tone-card-strong{background-color:color-mix(in srgb, var(--hair-type-color) 20%, transparent)}.tone-card-strong-finish{background-color:color-mix(in srgb, var(--finish-color) 20%, transparent)}.hair-type-gradient-soft{background:linear-gradient(135deg, color-mix(in srgb, var(--hair-type-color) 20%, transparent) 0%, color-mix(in srgb, var(--finish-color) 20%, transparent) 100%)}[data-feme-theme=storefront] .store-section-ambient{background-color:hsl(var(--semantic-bg-base));background-image:none}[data-feme-theme=storefront] .store-fade-slide-up,[data-feme-theme=storefront] .store-card-pop{animation-duration:var(--animation-duration-normal)}[data-feme-theme=storefront] .store-badge-pop{animation-duration:var(--animation-duration-fast)}}@keyframes store-fade-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes store-tab-content-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes store-card-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes store-badge-pop{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}
@layer components{.role-nav-shell{background:hsl(var(--semantic-bg-elevated) / .84);position:relative;overflow:hidden}.role-nav-shell:before{content:"";pointer-events:none;background:radial-gradient(circle at 12% 0%, hsl(var(--brand-primary) / .12), transparent 42%), radial-gradient(circle at 88% 0%, hsl(var(--brand-accent) / .1), transparent 40%);position:absolute;inset:0}.role-nav-logo-link{isolation:isolate;position:relative}.role-nav-logo-link:after{content:"";z-index:-1;background:linear-gradient(135deg, hsl(var(--brand-primary) / .22), hsl(var(--brand-accent) / .22));opacity:0;transition:opacity var(--animation-duration-normal) var(--animation-ease-smooth);border-radius:9999px;position:absolute;inset:-6px}.role-nav-logo-link:hover:after,.role-nav-logo-link:focus-visible:after{opacity:1}.role-nav-primary-action{position:relative;overflow:hidden;box-shadow:0 8px 32px #00000014,0 2px 8px #0000000a}.dark .role-nav-primary-action{box-shadow:0 8px 32px #0000004d,0 2px 8px #00000026}.role-nav-primary-action:after{content:"";pointer-events:none;background:linear-gradient(90deg, transparent 5%, hsl(var(--brand-ink-inverted) / .22) 52%, transparent 95%);transition:transform var(--animation-duration-slow) var(--animation-ease-smooth);position:absolute;inset:0;transform:translate(-122%)}.role-nav-primary-action:hover:after,.role-nav-primary-action:focus-visible:after{transform:translate(122%)}.role-nav-secondary-link{white-space:nowrap;border:1px solid #0000}.role-nav-secondary-link:hover,.role-nav-secondary-link:focus-visible{border-color:hsl(var(--semantic-border-subtle));background:hsl(var(--semantic-bg-elevated) / .9)}.role-nav-utility-link{color:hsl(var(--semantic-text-primary) / .66)}.role-nav-utility-link:hover,.role-nav-utility-link:focus-visible{color:hsl(var(--semantic-text-primary))}.role-nav-desktop-primary{min-width:0}.role-nav-desktop-utility{white-space:nowrap;flex:none}.role-nav-menu-trigger{white-space:nowrap}.role-nav-search-shell{border:1px solid hsl(var(--semantic-border-subtle));background:hsl(var(--semantic-bg-elevated) / .84);border-radius:9999px;flex:0 11rem;width:11rem;min-width:0;box-shadow:0 1px 2px #00000008}@media (min-width:1280px){.role-nav-search-shell{flex-basis:12.5rem;width:12.5rem}}@media (min-width:1536px){.role-nav-search-shell{flex-basis:14rem;width:14rem}}.role-nav-mobile-primary{box-shadow:0 2px 6px hsl(var(--brand-primary) / .25)}[data-feme-theme=storefront] .role-nav-shell{background:hsl(var(--semantic-bg-elevated));-webkit-backdrop-filter:none;backdrop-filter:none}[data-feme-theme=storefront] .role-nav-shell:before,[data-feme-theme=storefront] .role-nav-logo-link:after{display:none}[data-feme-theme=storefront] .role-nav-primary-action{box-shadow:none}[data-feme-theme=storefront] .role-nav-primary-action:after{display:none}[data-feme-theme=storefront] .role-nav-secondary-link:hover,[data-feme-theme=storefront] .role-nav-secondary-link:focus-visible{-webkit-backdrop-filter:none;backdrop-filter:none;color:hsl(var(--semantic-text-primary));background:0 0;border-color:#0000}[data-feme-theme=storefront] .role-nav-search-shell{background:hsl(var(--semantic-bg-surface));-webkit-backdrop-filter:none;backdrop-filter:none}[data-feme-theme=storefront] .role-nav-mobile-primary{box-shadow:none}}
@layer components{.role-footer-shell{background:linear-gradient(165deg, hsl(var(--neutral-900)) 0%, #131d2a 45%, #0e1625 100%);color:hsl(var(--brand-ink-inverted));position:relative;overflow:hidden}.role-footer-shell:before{content:"";pointer-events:none;background:radial-gradient(circle at 6% 0%, hsl(var(--brand-primary) / .26), transparent 38%), radial-gradient(circle at 92% 8%, hsl(var(--brand-accent) / .22), transparent 42%), radial-gradient(circle at 50% 100%, hsl(var(--brand-accent-lime) / .16), transparent 40%);position:absolute;inset:0}.role-footer-content{z-index:1;position:relative}.role-footer-cta-band{border-bottom:1px solid hsl(var(--brand-ink-inverted) / .12);background:hsl(var(--brand-ink-inverted) / .02);position:relative}.role-footer-cta-primary{position:relative;overflow:hidden;box-shadow:0 8px 32px #00000014,0 2px 8px #0000000a}.dark .role-footer-cta-primary{box-shadow:0 8px 32px #0000004d,0 2px 8px #00000026}.role-footer-cta-primary:after{content:"";pointer-events:none;background:linear-gradient(90deg, transparent 8%, hsl(var(--brand-ink-inverted) / .26) 55%, transparent 92%);transition:transform var(--animation-duration-slow) var(--animation-ease-smooth);position:absolute;inset:0;transform:translate(-124%)}.role-footer-cta-primary:hover:after,.role-footer-cta-primary:focus-visible:after{transform:translate(124%)}.role-footer-cta-secondary{border:1px solid hsl(var(--brand-ink-inverted) / .2);background:hsl(var(--brand-ink-inverted) / .05);color:hsl(var(--brand-ink-inverted))}.role-footer-title{color:hsl(var(--brand-ink-inverted))}.role-footer-body{color:hsl(var(--brand-ink-inverted) / .82)}.role-footer-meta{color:hsl(var(--brand-ink-inverted) / .68)}.role-footer-divider{color:hsl(var(--brand-ink-inverted) / .28)}.role-footer-column-title{color:hsl(var(--brand-ink-inverted) / .64);border-bottom:1px solid hsl(var(--brand-ink-inverted) / .16)}.role-footer-link{color:hsl(var(--brand-ink-inverted) / .72)}.role-footer-link:hover,.role-footer-link:focus-visible{color:hsl(var(--brand-ink-inverted))}.role-footer-pill-link{border:1px solid hsl(var(--brand-ink-inverted) / .2);background:hsl(var(--brand-ink-inverted) / .06);color:hsl(var(--brand-ink-inverted) / .72)}.role-footer-pill-link:hover,.role-footer-pill-link:focus-visible{border-color:hsl(var(--brand-ink-inverted) / .32);background:hsl(var(--brand-ink-inverted) / .1);color:hsl(var(--brand-ink-inverted))}.role-footer-utility-link{color:hsl(var(--brand-ink-inverted) / .74)}.role-footer-utility-link:hover,.role-footer-utility-link:focus-visible{color:hsl(var(--brand-ink-inverted))}.role-footer-disclosure{border:1px solid hsl(var(--brand-ink-inverted) / .12);background:hsl(var(--brand-ink-inverted) / .04);border-radius:16px}.role-footer-disclosure-summary{cursor:pointer;color:hsl(var(--brand-ink-inverted));justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.125rem;list-style:none;display:flex}.role-footer-disclosure-summary::-webkit-details-marker{display:none}.role-footer-disclosure-icon{color:hsl(var(--brand-ink-inverted) / .56);transition:transform var(--animation-duration-normal) var(--animation-ease-smooth)}.role-footer-disclosure[open] .role-footer-disclosure-icon{transform:rotate(180deg)}.role-footer-disclosure-content{flex-direction:column;gap:.75rem;padding:0 1.125rem 1rem;display:flex}.role-footer-bottom{border-top:1px solid hsl(var(--brand-ink-inverted) / .12)}.role-footer-nav{border-top:1px solid hsl(var(--semantic-border-subtle));border-bottom:1px solid hsl(var(--semantic-border-subtle));background:hsl(var(--semantic-bg-base))}.role-footer-nav-link{color:hsl(var(--semantic-text-primary) / .6);white-space:nowrap}.role-footer-nav-link:hover,.role-footer-nav-link:focus-visible{color:hsl(var(--semantic-text-primary))}[data-feme-theme=storefront] .role-footer-shell:before{opacity:.4}[data-feme-theme=storefront] .role-footer-cta-primary{box-shadow:none}[data-feme-theme=storefront] .role-footer-cta-primary:after{display:none}[data-feme-theme=storefront] .role-footer-cta-secondary{-webkit-backdrop-filter:none;backdrop-filter:none}}
@layer components{@keyframes role-float-gentle{0%,to{transform:translate(0,0)}50%{transform:translateY(-6px)}}@keyframes role-breathe{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.55;transform:scale(1.06)}}.role-surface-atmosphere{isolation:isolate;position:relative;overflow:hidden}.role-gradient-veil{pointer-events:none;background:radial-gradient(circle at 20% 10%, hsl(var(--brand-primary) / .2), transparent 42%), radial-gradient(circle at 85% 12%, hsl(var(--brand-accent) / .18), transparent 44%), radial-gradient(circle at 60% 90%, hsl(var(--brand-accent-lime) / .16), transparent 48%);z-index:-1;position:absolute;inset:0}.role-glow-blob-primary,.role-glow-blob-accent,.role-glow-blob-lime{filter:blur(48px);pointer-events:none;mix-blend-mode:normal;animation:role-breathe var(--animation-duration-gradient) var(--animation-ease-smooth) infinite;border-radius:9999px;position:absolute}.role-glow-blob-primary{background:hsl(var(--brand-primary) / .28);width:17rem;height:17rem}.role-glow-blob-accent{background:hsl(var(--brand-accent) / .24);width:14rem;height:14rem;animation-delay:.12s}.role-glow-blob-lime{background:hsl(var(--brand-accent-lime) / .2);width:12rem;height:12rem;animation-delay:.24s}.role-cta-shine{position:relative;overflow:hidden}.role-cta-shine:after{content:"";pointer-events:none;background:linear-gradient(90deg, transparent 5%, hsl(var(--brand-ink-inverted) / .28) 52%, transparent 95%);transition:transform var(--animation-duration-slow) var(--animation-ease-smooth);position:absolute;inset:0;transform:translate(-120%)}.role-cta-shine:hover:after,.role-cta-shine:focus-visible:after{transform:translate(120%)}.role-luxury-shadow{box-shadow:0 8px 32px #00000014,0 2px 8px #0000000a}.dark .role-luxury-shadow{box-shadow:0 8px 32px #0000004d,0 2px 8px #00000026}.role-text-gradient-ocean{background:linear-gradient(135deg, hsl(var(--brand-primary)) 0%, hsl(var(--brand-accent)) 62%, hsl(var(--brand-accent-lime)) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.role-surface-panel{border:1px solid hsl(var(--semantic-border-subtle));background:hsl(var(--semantic-bg-elevated) / .92);box-shadow:0 2px 4px #0000000a}.role-float-gentle{animation:role-float-gentle var(--animation-duration-float-gentle-slow) var(--animation-ease-smooth) infinite}.role-blob-pos-top-left-soft{top:-6rem;left:-5rem}.role-blob-pos-top-left-deep{top:-7rem;left:-6rem}.role-blob-pos-top-left-wide{top:-6rem;left:-6rem}.role-blob-pos-right-high{top:3rem;right:-4rem}.role-blob-pos-right-mid{top:4rem;right:-4rem}.role-blob-pos-right-low{top:5rem;right:-4rem}.role-blob-pos-right-high-wide{top:3rem;right:-5rem}.role-blob-pos-right-lower-wide{top:18rem;right:-5rem}}
@layer components{.faq-category-tabs{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:1rem;display:flex}.faq-category-tab{background:hsl(var(--semantic-bg-elevated));border:1px solid hsl(var(--semantic-border-subtle));color:hsl(var(--semantic-text-secondary));cursor:pointer;transition:color var(--animation-duration-fast) var(--animation-ease-smooth), background-color var(--animation-duration-fast) var(--animation-ease-smooth), border-color var(--animation-duration-fast) var(--animation-ease-smooth), opacity var(--animation-duration-fast) var(--animation-ease-smooth), transform var(--animation-duration-fast) var(--animation-ease-smooth), box-shadow var(--animation-duration-fast) var(--animation-ease-smooth);border-radius:.5rem;align-items:center;gap:.125rem;padding:.125rem .5rem;font-size:.875rem;font-weight:500;display:inline-flex}.faq-category-tab:hover{border-color:hsl(var(--brand-primary) / .3);color:hsl(var(--semantic-text-primary))}.faq-category-tab[data-active=true]{background:hsl(var(--brand-primary) / .1);border-color:hsl(var(--brand-primary) / .3);color:hsl(var(--brand-primary))}.faq-category-tab-icon{flex-shrink:0;width:16px;height:16px}.faq-accordion{flex-direction:column;gap:.5rem;display:flex}.faq-accordion-item{background:hsl(var(--semantic-bg-elevated));border:1px solid hsl(var(--semantic-border-subtle));transition:color var(--animation-duration-fast) var(--animation-ease-smooth), background-color var(--animation-duration-fast) var(--animation-ease-smooth), border-color var(--animation-duration-fast) var(--animation-ease-smooth), opacity var(--animation-duration-fast) var(--animation-ease-smooth), transform var(--animation-duration-fast) var(--animation-ease-smooth), box-shadow var(--animation-duration-fast) var(--animation-ease-smooth);border-radius:.75rem;overflow:hidden}.faq-accordion-item:hover{border-color:hsl(var(--brand-primary) / .2)}.faq-accordion-item[data-state=open]{border-color:hsl(var(--brand-primary) / .3);box-shadow:0 4px 12px #0000000f}.faq-accordion-trigger{width:100%;color:hsl(var(--semantic-text-primary));text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem;font-weight:500;display:flex}.faq-accordion-trigger:hover{background:hsl(var(--semantic-bg-surface) / .5)}.faq-accordion-trigger-content{flex:1;align-items:flex-start;gap:.5rem;display:flex}.faq-accordion-trigger-icon{width:20px;height:20px;color:hsl(var(--brand-primary) / .7);flex-shrink:0;margin-top:2px}.faq-accordion-chevron{width:16px;height:16px;color:hsl(var(--semantic-text-muted));transition:transform var(--animation-duration-fast);flex-shrink:0}.faq-accordion-item[data-state=open] .faq-accordion-chevron{transform:rotate(180deg)}.faq-accordion-content{color:hsl(var(--semantic-text-secondary));padding:0 1rem 1rem calc(1.5rem + 20px);font-size:.875rem;line-height:1.75}.faq-claim-cta{background:hsl(var(--semantic-bg-elevated));border:1px solid hsl(var(--semantic-border-subtle));transition:color var(--animation-duration-fast) var(--animation-ease-smooth), background-color var(--animation-duration-fast) var(--animation-ease-smooth), border-color var(--animation-duration-fast) var(--animation-ease-smooth), opacity var(--animation-duration-fast) var(--animation-ease-smooth), transform var(--animation-duration-fast) var(--animation-ease-smooth), box-shadow var(--animation-duration-fast) var(--animation-ease-smooth);border-radius:1rem;align-items:center;gap:1rem;padding:1rem;display:flex;position:relative;overflow:hidden}.faq-claim-cta:hover{border-color:hsl(var(--brand-primary) / .3);box-shadow:0 4px 12px #0000000f}.faq-claim-cta:before{content:"";background:linear-gradient(180deg, hsl(var(--brand-primary)) 0%, hsl(var(--brand-accent)) 100%);width:4px;height:100%;position:absolute;top:0;left:0}.faq-claim-cta-icon{background:hsl(var(--brand-primary) / .1);width:48px;height:48px;color:hsl(var(--brand-primary));border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;display:flex}.faq-claim-cta-content{flex:1;min-width:0}.faq-claim-cta-title{color:hsl(var(--semantic-text-primary));margin-bottom:.125rem;font-size:1rem;font-weight:600}.faq-claim-cta-description{color:hsl(var(--semantic-text-secondary));font-size:.875rem;line-height:1.5}@media (max-width:640px){.faq-claim-cta{text-align:left;flex-direction:column;align-items:flex-start}.faq-claim-cta-icon{margin-left:.5rem}}.faq-contact-cta{text-align:center;border-radius:1.25rem;padding:1.5rem;position:relative;overflow:hidden}.faq-contact-cta-gradient{background:linear-gradient(135deg, hsl(var(--brand-primary)) 0%, hsl(var(--brand-accent)) 100%);position:absolute;inset:0}.faq-contact-cta-content{z-index:1;color:#fff;position:relative}.faq-contact-cta-title{margin-bottom:.5rem;font-size:1.25rem;font-weight:700}.faq-contact-cta-description{opacity:.9;margin-bottom:1rem;font-size:1rem}@media (prefers-reduced-motion:reduce){.faq-category-tab,.faq-accordion-item,.faq-accordion-chevron,.faq-claim-cta{transition:none}.faq-accordion-item:hover,.faq-claim-cta:hover{border-color:hsl(var(--semantic-border-subtle));box-shadow:none}}}
@layer components{.matrix-cell-animate{opacity:0;transition:opacity var(--animation-duration-slow) var(--animation-ease-smooth), transform var(--animation-duration-slow) var(--animation-ease-smooth);transform:translateY(20px)scale(.9)}.matrix-cell-animate.in-view,.matrix-cell-animate.matrix-in-view{opacity:1;transform:translateY(0)scale(1)}.axis-type-card,.axis-finish-card{border-color:hsl(var(--semantic-border-subtle) / .7);position:relative;overflow:hidden}.axis-type-card:before,.axis-finish-card:before{content:"";border-radius:.75rem .75rem 0 0;height:4px;position:absolute;top:0;left:0;right:0}.axis-type-card:before{background:var(--hair-type-color)}.axis-finish-card:before{background:var(--finish-color)}}@media (prefers-reduced-motion:reduce){.matrix-cell-animate{opacity:1;transition:none;transform:none}}

:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--store-ink:var(--feme-consumer-ink);--store-body:var(--feme-consumer-body);--store-muted:var(--feme-consumer-muted);--store-faint:var(--feme-consumer-faint);--store-line:var(--feme-consumer-line);--store-paper:var(--feme-consumer-paper);--store-card:var(--feme-consumer-card);--store-sunken:var(--feme-consumer-sunken);--store-radius:var(--feme-consumer-radius);--store-radius-sm:var(--feme-consumer-radius-sm);--store-prism:var(--feme-consumer-prism);--store-veil:var(--feme-consumer-veil);--store-rule:var(--feme-consumer-rule);--store-shadow:var(--feme-consumer-shadow);--store-shadow-lg:var(--feme-consumer-shadow-lg);--store-shadow-md:var(--feme-consumer-shadow-md);--store-action-hover:var(--feme-consumer-action-hover);--store-focus-ring:var(--feme-consumer-focus-ring);--store-ease-out:var(--feme-consumer-ease-out);--store-duration-fast:var(--feme-consumer-duration-fast);--store-duration-base:var(--feme-consumer-duration-base);--store-letter-heading:var(--feme-consumer-letter-heading);--store-letter-button:var(--feme-consumer-letter-button);--store-letter-eyebrow:var(--feme-consumer-letter-eyebrow);--store-danger:#ff5a4f;--store-success:#2fae74;--store-warning:#e6a008;--store-info:#4aa8e0;--store-shadow-xs:0 1px 2px #2318150d;--store-side-pad:clamp(20px, 5vw, 72px);--store-wrap-pad:max(var(--store-side-pad), calc((100% - 1120px) / 2))}*{box-sizing:border-box}html{background:var(--store-paper)}body{background:var(--store-paper);color:var(--store-body);font-family:var(--font-body,"Noto Sans JP", Inter, system-ui, sans-serif);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{max-width:100%}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--store-focus-ring);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.store-header{z-index:20;min-height:76px;padding:0 var(--store-wrap-pad);border-bottom:1px solid var(--store-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffd1;justify-content:space-between;align-items:center;gap:24px;display:flex;position:sticky;top:0}.store-brand{flex-shrink:0;align-items:center;gap:12px;display:inline-flex}.store-brand img{object-fit:contain;width:auto;display:block}.store-nav{color:var(--store-body);flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:clamp(16px,2.4vw,34px);font-size:.875rem;font-weight:500;display:flex}.store-actions{flex-shrink:0;align-items:center;gap:clamp(12px,1.6vw,18px);font-size:.875rem;font-weight:500;display:flex}.store-action{color:var(--store-body);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.store-nav a{white-space:nowrap;border-bottom:2px solid #0000;padding-bottom:4px}.store-nav a,.store-action,.footer-grid a,.section-link{transition:color var(--store-duration-base) var(--store-ease-out), border-color var(--store-duration-base) var(--store-ease-out)}.store-nav a:hover,.store-nav a.is-active,.store-action:hover{color:var(--store-ink)}.store-nav a.is-active{border-bottom-color:var(--store-ink)}.store-menu-toggle{width:44px;height:44px;color:var(--store-ink);transition:background var(--store-duration-base) var(--store-ease-out);background:0 0;border:0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:none}.store-menu-toggle:hover{background:var(--store-sunken)}.store-mobile-menu{display:none}.hero-band{min-height:min(680px,100vh - 76px);padding:clamp(56px, 8vw, 118px) var(--store-side-pad);background:var(--store-veil);align-items:center;display:grid;position:relative;overflow:hidden}.confetti-field{pointer-events:none;position:absolute;inset:0}.confetti-field span{left:var(--l);top:var(--t);width:var(--w);height:var(--h);clip-path:var(--clip,polygon(50% 0%, 0% 100%, 100% 100%));background:var(--c);opacity:var(--o,.9);transform:translate(-50%, -50%) rotate(var(--r));position:absolute}.hero-copy{z-index:1;max-width:650px;position:relative}.hero-copy.centered,.centered-heading,.centered-text{text-align:center;margin-left:auto;margin-right:auto}.hero-mark{width:clamp(76px,10vw,92px);margin-bottom:30px}.eyebrow{color:var(--store-muted);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-eyebrow);text-transform:uppercase;margin:0 0 12px;font-size:.76rem;font-weight:500}h1,h2,h3,p{overflow-wrap:anywhere}.hero-copy h1,.section-heading h1,.lab-surface h1{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);margin:0;font-size:clamp(2rem,6.4vw,3.5rem);font-weight:300;line-height:1.25}.hero-copy p:not(.eyebrow),.concept-list p,.diagnosis-band p,.lab-surface p,.checkout-surface p,.section-heading p,.store-footer p{color:var(--store-muted);font-size:1rem;line-height:1.78}.hero-copy p:not(.eyebrow){max-width:520px;margin:22px auto 0;font-size:1.06rem}.hero-actions,.chip-row{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px;display:flex}.hero-actions{margin-top:38px}.button-primary,.button-secondary,.button-prism,.icon-button{height:44px;font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-button);white-space:nowrap;transition:transform var(--store-duration-fast) var(--store-ease-out), background var(--store-duration-base) var(--store-ease-out), border-color var(--store-duration-base) var(--store-ease-out), box-shadow var(--store-duration-base) var(--store-ease-out), color var(--store-duration-base) var(--store-ease-out);-webkit-user-select:none;user-select:none;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:500;display:inline-flex}.button-sm{height:36px;padding:8px 16px;font-size:.8125rem}.button-lg{height:54px;padding:15px 30px;font-size:.9375rem}.button-primary{background:var(--store-ink);border-color:var(--store-ink);color:#fff}.button-primary:hover{background:var(--store-action-hover);border-color:var(--store-action-hover)}.button-prism{background:linear-gradient(var(--store-ink), var(--store-ink)) padding-box, var(--store-rule) border-box;color:#fff}.button-prism:hover{background:linear-gradient(var(--store-action-hover), var(--store-action-hover)) padding-box, var(--store-rule) border-box}.button-secondary,.icon-button{border-color:var(--store-ink);color:var(--store-ink);background:0 0}.button-secondary:hover,.icon-button:hover{background:var(--store-sunken)}.button-primary:active,.button-secondary:active,.button-prism:active,.icon-button:active{transform:scale(.97)}.button-primary:disabled,.button-secondary:disabled,.button-prism:disabled,.icon-button:disabled,.button-primary[aria-disabled=true],.button-secondary[aria-disabled=true],.button-prism[aria-disabled=true],.icon-button[aria-disabled=true]{cursor:not-allowed;opacity:.4}.icon-button{border-radius:50%;width:44px;padding:0}.concept-band,.content-band,.page-shell,.diagnosis-band,.signal-band,.type-band{padding:clamp(56px, 8vw, 100px) var(--store-side-pad)}.concept-band{padding-inline:var(--store-wrap-pad);background:var(--store-card);grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(36px,7vw,76px);display:grid}.concept-mark{justify-content:center;display:flex}.concept-mark img{filter:drop-shadow(0 18px 50px #a2eafc59)drop-shadow(0 8px 24px #ff82bb33);width:min(280px,70vw)}.concept-band h2,.section-heading h1,.section-heading h2,.diagnosis-band h2{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);margin:0;font-size:clamp(1.75rem,5vw,2.7rem);font-weight:300;line-height:1.2}.concept-band h2{font-size:clamp(1.6rem,3.4vw,2.25rem);line-height:1.4}.section-heading h2{font-size:clamp(1.6rem,3.4vw,2.25rem)}.concept-list{gap:22px;margin-top:30px;display:grid}.concept-list article{grid-template-columns:44px 1fr;align-items:start;gap:16px;display:grid}.concept-list svg{border-radius:var(--store-radius-sm);background:var(--store-sunken);width:44px;height:44px;color:var(--store-ink);padding:12px}.concept-list h3{color:var(--store-ink);letter-spacing:var(--store-letter-heading);margin:0 0 4px;font-size:1.06rem;font-weight:500}.concept-list p{margin:0;font-size:.92rem}.type-band{background:var(--store-paper)}.section-block{padding:clamp(48px, 7vw, 86px) var(--store-side-pad);background:var(--store-paper)}.section-block.alt{background:var(--store-card)}.section-block>*{max-width:1120px;margin-left:auto;margin-right:auto}.feature-grid{align-items:stretch;gap:22px;display:grid}.feature-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid h2,.feature-grid h3{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);margin:0;font-weight:300;line-height:1.25}.feature-grid p{color:var(--store-muted);line-height:1.78}.compact{margin-bottom:0}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px;display:flex}.centered-heading{max-width:680px;display:block}.centered-heading p:not(.eyebrow){margin:12px 0 0;font-size:.94rem}.section-heading a,.section-link{color:var(--store-ink);align-items:center;gap:6px;font-weight:700;display:inline-flex}.type-matrix{grid-template-columns:minmax(84px,120px) repeat(4,minmax(80px,1fr));align-items:center;gap:14px;max-width:1040px;margin:46px auto 0;display:grid}.type-chip{border:1px solid var(--store-line);background:var(--store-card);color:var(--store-ink);white-space:nowrap;border-radius:999px;justify-self:end;align-items:center;gap:7px;padding:4px 10px;font-size:.75rem;font-weight:500;line-height:1;display:inline-flex}.type-chip:not(.fill):before{background:var(--chip-color);content:"";border-radius:50%;flex-shrink:0;width:9px;height:9px}.type-chip.fill{background:var(--chip-color);border-color:#0000;justify-self:center}.type-gradient-cell{border-radius:var(--store-radius-sm);background:linear-gradient(100deg, var(--from), var(--to));height:clamp(46px,7vw,60px);box-shadow:var(--store-shadow-xs);transition:transform var(--store-duration-base) var(--store-ease-out)}.type-gradient-cell:hover{transform:scale(1.05)}.matrix-head{color:var(--store-muted);text-align:center;gap:6px;font-size:.78rem;display:grid}.matrix-head span{border-radius:999px;height:8px}.matrix-side{color:var(--store-muted);text-align:right;font-size:.82rem;font-weight:600}.matrix-cell{border-radius:var(--store-radius-sm);min-height:clamp(46px,7vw,60px);box-shadow:var(--store-shadow);transition:transform var(--store-duration-fast) var(--store-ease-out), box-shadow var(--store-duration-base) var(--store-ease-out);display:block}.matrix-cell:hover{box-shadow:var(--store-shadow-md);transform:translateY(-2px)}.floating-badge{color:var(--store-ink);background:#ffffffd1;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:.72rem;font-weight:700;display:inline-flex;position:absolute;top:14px;left:14px}.price-large{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);margin:0;font-size:clamp(2rem,4vw,2.7rem);font-weight:300}.avatar-large{background:var(--store-ink);width:92px;height:92px;box-shadow:var(--store-shadow-lg);color:#fff;font-family:var(--font-display,system-ui, sans-serif);border:4px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.45rem;font-weight:700;display:flex}.profile-row{border-top:1px solid var(--store-line);grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;padding:13px 0;display:grid}.profile-row:first-of-type{border-top:0}.profile-row span{color:var(--store-faint)}.profile-row small,.settings-row small{color:var(--store-muted);font-size:.8rem;line-height:1.6;display:block}.profile-row strong,.settings-row strong{color:var(--store-ink);font-size:.95rem;font-weight:600;display:block}.settings-row{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;display:grid}.settings-row>span{background:var(--store-sunken);color:var(--store-muted);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700}.diagnosis-band.dark{background:var(--store-ink);color:#fff;display:block}.diagnosis-band.dark h2{color:#fff;font-size:clamp(1.8rem,4.4vw,2.5rem)}.diagnosis-band.dark p{color:#ffffffb8;max-width:460px;margin:18px auto 36px}.diagnosis-band.dark .eyebrow{color:#ffffffb8}.feme-rule{background:var(--store-rule);border-radius:999px;width:80px;height:2px;margin:0 auto 28px}.product-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;display:grid}.featured-products{max-width:1120px;margin:0 auto}.product-card{border-radius:var(--store-radius);min-height:430px;box-shadow:var(--store-shadow);transition:transform var(--store-duration-base) var(--store-ease-out), box-shadow var(--store-duration-base) var(--store-ease-out);background:#fff;border:1px solid #0000;grid-template-rows:260px auto;display:grid;overflow:hidden}.product-card:hover{box-shadow:var(--store-shadow-md);transform:translateY(-2px)}.product-card img{object-fit:cover;background:var(--store-sunken);width:100%;height:100%}.gradient-card{grid-template-rows:200px auto}.product-gradient{background:var(--product-grad,var(--store-prism));align-items:flex-start;min-height:200px;padding:14px;display:flex;position:relative}.product-gradient span{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:.2em;background:#ffffffb3;border-radius:999px;padding:4px 10px;font-size:.625rem;font-weight:500;display:inline-flex}.product-card div:not(.product-gradient):not(.product-card-foot){padding:22px}.product-title-link{color:inherit;display:block}.product-card-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.product-card-foot span{font-size:1.125rem}.product-card p,.product-card h2,.product-card h3{margin:0 0 8px}.product-card p{color:var(--store-muted);font-size:.85rem}.product-card .stylist-note{align-items:center;gap:6px;margin-bottom:12px;font-size:.78rem;display:inline-flex}.product-card h2,.product-card h3{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);font-size:1.35rem;font-weight:300;line-height:1.28}.product-card span,.product-info strong{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);font-weight:600}.section-link{justify-content:center;width:max-content;margin:30px auto 0}.signal-band{background:var(--store-card)}.signal-band>.eyebrow{max-width:1120px;margin-left:auto;margin-right:auto}.signal-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1120px;margin:18px auto 0;padding:0;list-style:none;display:grid}.signal-list li{border:1px solid var(--store-line);border-radius:var(--store-radius-sm);box-shadow:var(--store-shadow);background:#fff;align-items:center;gap:12px;padding:16px;display:flex}.signal-list svg{color:#d4bff3}.next-step-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1120px;margin:0 auto;padding:0;list-style:none;display:grid}.next-step-list li{border-radius:var(--store-radius);background:var(--store-card);box-shadow:var(--store-shadow);align-items:center;gap:14px;padding:20px 22px;display:flex}.next-step-num{background:var(--store-sunken);width:38px;height:38px;color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:.06em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;display:inline-flex}.next-step-list li>span:last-child{color:var(--store-body);font-size:.95rem;font-weight:500}.next-step-cta{justify-content:center;margin-top:38px;display:flex}.product-detail{padding:clamp(36px, 6vw, 76px) var(--store-side-pad);grid-template-columns:minmax(280px,.9fr) minmax(320px,1fr);gap:clamp(24px,5vw,64px);display:grid}.product-media{border-radius:var(--store-radius);background:var(--store-sunken);min-height:520px;overflow:hidden}.product-media img{object-fit:cover;width:100%;height:100%}.product-info{align-self:center}.product-info h1{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);margin:0 0 18px;font-size:clamp(2.2rem,5vw,4.6rem);font-weight:300;line-height:1}.product-info p{color:var(--store-muted);line-height:1.75}.chip-row span{border:1px solid var(--store-line);color:var(--store-muted);background:#fff;border-radius:999px;padding:8px 10px;font-size:.82rem}.purchase-panel{border:1px solid var(--store-line);border-radius:var(--store-radius);background:#fff;margin-top:28px;padding:18px}.purchase-panel .button-primary{width:100%}.embedded-checkout-panel,.checkout-demo-panel{gap:16px;margin-top:18px;display:grid}.embedded-checkout-heading,.checkout-demo-total{color:var(--store-ink);justify-content:space-between;align-items:center;gap:14px;display:flex}.embedded-checkout-heading span{letter-spacing:var(--store-letter-button);text-transform:uppercase;align-items:center;gap:8px;font-size:.8rem;font-weight:700;display:inline-flex}.embedded-checkout-heading strong,.checkout-demo-total strong{font-family:var(--font-display,system-ui, sans-serif);font-size:1.05rem;font-weight:600}.embedded-checkout-frame{border:1px solid var(--store-line);border-radius:var(--store-radius-sm);background:#fff;min-height:560px;overflow:hidden}.checkout-demo-panel{border:1px solid var(--store-line);border-radius:var(--store-radius-sm);background:var(--store-sunken);padding:18px}.checkout-demo-icon{background:var(--store-prism);width:46px;height:46px;color:var(--store-ink);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;box-shadow:0 14px 32px #a2eafc3d}.checkout-demo-kicker{color:var(--store-faint);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-button);text-transform:uppercase;margin:0 0 6px;font-size:.72rem;font-weight:700}.checkout-demo-panel h2{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);margin:0;font-size:1.1rem;font-weight:500}.checkout-demo-panel p:not(.checkout-demo-kicker),.checkout-error{color:var(--store-muted);margin:0;font-size:.84rem;line-height:1.7}.checkout-demo-total{border-top:1px solid var(--store-line);border-bottom:1px solid var(--store-line);padding:13px 0;font-size:.84rem}.checkout-error{color:#a63a45}.checkout-spin{animation:.9s linear infinite checkout-spin}@keyframes checkout-spin{to{transform:rotate(360deg)}}.checkout-surface,.lab-surface{border:1px solid var(--store-line);border-radius:var(--store-radius);background:#fff;padding:clamp(24px,5vw,52px)}.lab-surface{grid-template-columns:minmax(0,1fr) minmax(260px,420px);gap:28px;display:grid}.lab-grid{gap:12px;display:grid}.lab-grid div{border-radius:var(--store-radius-sm);background:var(--store-sunken);padding:18px}.lab-grid span{color:var(--store-muted);font-size:.82rem;display:block}.lab-grid strong{margin-top:6px;display:block}.components-showcase{gap:34px;max-width:880px;margin:0 auto;display:grid}.demo-frame{border:1px solid var(--store-line);border-radius:var(--store-radius);background:var(--store-paper);padding:clamp(20px,4vw,28px)}.demo-frame>h2{color:var(--store-faint);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-button);text-transform:uppercase;margin:0 0 16px;font-size:.8rem;font-weight:700}.demo-row,.demo-stack{gap:12px;display:flex}.demo-row{flex-wrap:wrap;align-items:center}.demo-stack{flex-direction:column}.demo-card{border:1px solid var(--store-line);border-radius:var(--store-radius);min-width:min(100%,300px);box-shadow:var(--store-shadow);background:#fff;align-items:center;gap:14px;padding:18px;display:flex}.demo-avatar{background:var(--store-prism);width:44px;height:44px;box-shadow:0 0 0 2px var(--store-line);color:var(--store-ink);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.hair-tag{background:color-mix(in srgb, var(--tag-color) 16%, #fff);color:var(--store-ink);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:6px 13px;font-size:.8125rem;font-weight:500;display:inline-flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px;display:grid}.field{color:var(--store-muted);gap:7px;font-size:.82rem;font-weight:700;display:grid}.field input,.field select{border:1px solid var(--store-line);border-radius:var(--store-radius-sm);min-height:44px;color:var(--store-ink);background:#fff;padding:0 12px}.choice{color:var(--store-body);align-items:center;gap:9px;font-size:.9rem;display:inline-flex}.switch-track{background:var(--store-ink);border-radius:999px;width:42px;height:24px;position:relative}.switch-track:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;position:absolute;top:3px;right:3px}.diagnosis-flow,.result-page,.login-page,.result-empty{background:var(--store-veil);position:relative;overflow:hidden}.diagnosis-flow{min-height:calc(100vh - 76px);padding:clamp(36px, 5vw, 56px) var(--store-side-pad) clamp(84px, 10vw, 120px)}.diagnosis-panel{z-index:1;max-width:720px;margin:0 auto;position:relative}.progress-rail{gap:5px;margin-bottom:28px;display:flex}.progress-rail span{height:5px;transition:background var(--store-duration-base) var(--store-ease-out);background:#2318151f;border-radius:999px;flex:1}.progress-rail span.active{background:var(--store-ink)}.question-card,.karte-card,.routine-card,.type-meaning-card{border:1px solid var(--store-line);border-radius:var(--store-radius);background:var(--store-card);box-shadow:var(--store-shadow)}.question-card{padding:clamp(24px,5vw,40px)}.question-heading{text-align:center;margin-bottom:28px}.question-heading h1,.karte-step h1,.routine-card h2,.type-meaning-card h2,.login-form-card h2,.result-empty h1{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);margin:0;font-weight:300;line-height:1.24}.question-heading h1,.karte-step h1{font-size:clamp(1.8rem,5vw,2.15rem)}.question-heading>p:not(.eyebrow),.karte-note p,.karte-section-note,.diagnosis-footnote,.result-empty p,.type-meaning-card p,.karte-save-note p,.routine-row em,.login-form-card>p:not(.eyebrow),.login-brand-copy p,.login-register{color:var(--store-muted);line-height:1.76}.question-heading>p:not(.eyebrow){margin:8px 0 0;font-size:.92rem}.ai-badge,.routine-heading .eyebrow{align-items:center;gap:6px;display:inline-flex}.ai-badge{border:1px solid var(--store-line);color:var(--store-ink);border-radius:999px;margin-top:12px;padding:4px 12px;font-size:.72rem}.option-list,.karte-fields{gap:12px;display:grid}.option-row{border:1.5px solid var(--store-line);border-radius:var(--store-radius-sm);background:var(--store-card);width:100%;color:var(--store-body);text-align:left;transition:background var(--store-duration-base) var(--store-ease-out), border-color var(--store-duration-base) var(--store-ease-out), box-shadow var(--store-duration-base) var(--store-ease-out);align-items:center;gap:14px;padding:15px 18px;display:flex}.option-row[aria-pressed=true],.option-row[aria-checked=true]{border-color:var(--store-ink);background:var(--store-sunken);box-shadow:var(--store-shadow)}.option-row>span:first-child{flex:1;min-width:0}.option-row strong,.routine-row strong{color:var(--store-ink);font-weight:600;display:block}.option-row small{color:var(--store-muted);margin-top:3px;font-size:.82rem;line-height:1.65;display:block}.option-check{border:1.5px solid var(--store-line);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.option-row[aria-pressed=true] .option-check,.option-row[aria-checked=true] .option-check,.option-check.active{border-color:var(--store-ink);background:var(--store-ink)}.chip-grid{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.chip-grid.compact{justify-content:flex-start}.choice-chip{border:1.5px solid var(--store-line);background:var(--store-card);color:var(--store-body);transition:background var(--store-duration-base) var(--store-ease-out), border-color var(--store-duration-base) var(--store-ease-out), color var(--store-duration-base) var(--store-ease-out);border-radius:999px;padding:10px 17px;font-size:.84rem;font-weight:500}.choice-chip[aria-pressed=true],.choice-chip[aria-checked=true]{border-color:var(--store-ink);background:var(--store-ink);color:#fff}.scale-block{max-width:460px;margin:0 auto}.scale-block.compact{max-width:none;margin:0}.scale-row{justify-content:center;gap:12px;display:flex}.scale-row .scale-button{border:1.5px solid var(--store-line);background:var(--store-card);width:58px;height:58px;color:var(--store-body);font-family:var(--font-display,system-ui, sans-serif);border-radius:50%;padding:0;font-size:1.05rem}.compact .scale-row .scale-button{width:44px;height:44px}.scale-row .scale-button[aria-pressed=true],.scale-row .scale-button[aria-checked=true]{border-color:var(--store-ink);background:var(--store-ink);color:#fff}.scale-labels{color:var(--store-faint);justify-content:space-between;gap:12px;margin-top:10px;font-size:.75rem;display:flex}.diagnosis-actions,.result-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px;display:flex}.diagnosis-actions .button-prism,.diagnosis-actions .button-secondary{min-width:170px}.diagnosis-footnote{text-align:center;margin:22px 0 0;font-size:.78rem}.karte-step{gap:18px;display:grid}.karte-note,.karte-save-note{border-radius:var(--store-radius-sm);background:var(--store-sunken);align-items:flex-start;gap:11px;display:flex}.karte-note{padding:14px 18px}.karte-note p,.karte-save-note p{margin:0;font-size:.84rem}.karte-grid{gap:18px;display:grid}.karte-card{padding:24px}.karte-card h2{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);margin:0 0 8px;font-size:1.18rem;font-weight:400}.karte-card .eyebrow{margin-bottom:8px}.karte-section-note{margin:0 0 14px;font-size:.8rem}.karte-field{color:var(--store-body);gap:9px;font-size:.86rem;font-weight:600;display:grid}.textarea-field{border:1.5px solid var(--store-line);border-radius:var(--store-radius-sm);background:var(--store-card);width:100%;min-height:46px;color:var(--store-ink);font:inherit;resize:vertical;padding:12px 15px;font-weight:400;line-height:1.7}.photo-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.photo-slot{border:1.5px dashed var(--store-line);border-radius:var(--store-radius-sm);background:var(--store-card);min-height:112px;color:var(--store-faint);flex-direction:column;justify-content:center;align-items:center;gap:7px;display:inline-flex}.photo-slot[aria-pressed=true],.photo-slot[aria-checked=true]{border-color:var(--store-ink);background:var(--store-sunken);color:var(--store-ink)}.result-hero{background:var(--store-veil);position:relative;overflow:hidden}.result-hero-inner{z-index:1;max-width:720px;padding:clamp(52px, 8vw, 70px) var(--store-side-pad) clamp(46px, 7vw, 60px);text-align:center;margin:0 auto;position:relative}.type-orb{background:linear-gradient(100deg, var(--from), var(--to));border-radius:50%;display:inline-block;box-shadow:0 18px 50px #a2eafc59,0 8px 24px #ff82bb33}.type-orb.large{width:96px;height:96px;margin:24px 0}.result-hero h1{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);margin:0 0 10px;font-size:clamp(2rem,5.5vw,2.75rem);font-weight:300;line-height:1.2}.result-hero h1 span{color:var(--store-faint)}.result-hero-inner>p:not(.eyebrow){max-width:460px;color:var(--store-muted);margin:0 auto 18px;font-size:.97rem;line-height:1.85}.type-tags{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.result-body{max-width:820px;padding:clamp(44px, 7vw, 60px) var(--store-side-pad) clamp(80px, 9vw, 96px);margin:0 auto}.type-meaning-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:30px;display:grid}.type-meaning-card{padding:22px}.type-meaning-card>div{align-items:center;gap:10px;margin-bottom:10px;display:flex}.type-meaning-card>div span{background:var(--tag-color);border-radius:50%;width:14px;height:14px}.type-meaning-card small,.routine-row small{color:var(--store-faint);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:600}.type-meaning-card h2{margin-bottom:6px;font-size:1.35rem}.type-meaning-card p{margin:0;font-size:.86rem}.karte-save-note{margin-bottom:30px;padding:14px 18px}.result-persistence-note>div{gap:12px;display:grid}.result-persistence-note .button-secondary{width:fit-content;min-height:40px;padding:9px 16px}.routine-card{margin-bottom:30px;overflow:hidden;box-shadow:0 18px 50px #a2eafc59,0 8px 24px #ff82bb33}.routine-heading{padding:22px 26px 6px}.routine-heading .eyebrow{margin-bottom:8px}.routine-card h2{font-size:1.45rem}.routine-list{padding:14px 26px 24px}.routine-row{border-top:1px solid var(--store-line);grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 0;display:grid}.routine-row:first-child{border-top:0}.routine-swatch{border-radius:var(--store-radius-sm);background:var(--product-grad);width:56px;height:56px;box-shadow:var(--store-shadow)}.routine-row em{font-size:.8rem;font-style:normal;display:block}.routine-row b{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);font-size:1rem}.lab-inline-link{color:var(--store-muted);justify-content:center;align-items:center;gap:7px;font-size:.86rem;font-weight:600;display:flex}.result-empty{min-height:calc(100vh - 76px);padding:clamp(36px, 7vw, 72px) var(--store-side-pad);place-items:center;display:grid}.result-empty .checkout-surface{text-align:center;max-width:640px}.result-empty h1{font-size:clamp(2rem,5vw,2.55rem)}.result-empty p{margin:12px auto 24px}.login-page{background:var(--store-card);grid-template-columns:minmax(0,1.05fr) minmax(420px,1fr);min-height:100vh;display:grid}.login-brand-panel{background:var(--store-veil);flex-direction:column;justify-content:space-between;padding:clamp(38px,6vw,56px);display:flex;position:relative;overflow:hidden}.login-logo,.login-brand-copy,.login-brand-panel>p{z-index:1;position:relative}.login-logo{align-items:center;gap:12px;width:max-content;display:inline-flex}.login-brand-copy img{filter:drop-shadow(0 18px 50px #a2eafc59);margin-bottom:28px}.login-brand-copy h1{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:var(--store-letter-heading);margin:0 0 20px;font-size:clamp(2.55rem,6vw,3.05rem);font-weight:300;line-height:1.28}.login-brand-copy p{max-width:390px;margin:0}.login-brand-panel>p{color:var(--store-faint);margin:36px 0 0;font-size:.78rem}.login-form-panel{justify-content:center;align-items:center;padding:clamp(40px,6vw,64px) clamp(24px,5vw,48px);display:flex}.login-form-card{width:100%;max-width:400px}.login-form-card h2{margin:10px 0 6px;font-size:2rem}.login-form-card>p:not(.eyebrow){margin:0 0 30px;font-size:.9rem}.login-form{gap:18px;display:grid}.login-name-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.login-form-error,.login-form-notice{margin:0;font-size:.82rem;font-weight:700;line-height:1.7}.login-form-error{color:var(--store-danger)}.login-form-notice{color:var(--store-muted)}.login-legal-choice{align-items:flex-start;font-size:.78rem;line-height:1.75}.login-legal-choice input{margin-top:4px}.login-legal-choice a{color:var(--store-ink);font-weight:700}.text-field{color:var(--store-muted);gap:7px;font-size:.82rem;font-weight:700;display:grid}.text-field>span:last-child{border:1px solid var(--store-line);border-radius:var(--store-radius-sm);background:var(--store-card);min-height:48px;color:var(--store-faint);align-items:center;gap:9px;padding:0 13px;display:flex}.text-field input{width:100%;color:var(--store-ink);background:0 0;border:0;outline:0}.login-form-meta{color:var(--store-muted);justify-content:space-between;align-items:center;gap:16px;font-size:.82rem;display:flex}.login-form-meta a,.login-register a{color:var(--store-ink);font-weight:700}.login-form .button-prism,.login-form-card>.button-secondary{width:100%}.login-divider{color:var(--store-faint);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:.1em;align-items:center;gap:14px;margin:26px 0;font-size:.75rem;display:flex}.login-divider span{background:var(--store-line);flex:1;height:1px}.login-register{text-align:center;margin:28px 0 0;font-size:.86rem}.store-footer{padding:64px var(--store-side-pad) 40px;border-top:1px solid var(--store-line);background:var(--store-paper)}.footer-grid{grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,1fr));gap:40px;max-width:1120px;margin:0 auto 48px;display:grid}.footer-grid h2{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);letter-spacing:.14em;text-transform:uppercase;margin:0 0 16px;font-size:.75rem;font-weight:500}.footer-grid p{max-width:240px;margin-top:14px;font-size:.8125rem}.footer-grid a{color:var(--store-muted);margin:11px 0;font-size:.84rem;display:block}.footer-grid a:hover{color:var(--store-ink)}.footer-bottom{border-top:2px solid #0000;border-image:var(--store-rule) 1;max-width:1120px;color:var(--store-faint);justify-content:space-between;align-items:center;gap:20px;margin:0 auto;padding-top:24px;font-size:.78rem;display:flex}.footer-legal{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.footer-legal a{color:var(--store-muted);transition:color var(--store-duration-base) var(--store-ease-out)}.footer-legal a:hover{color:var(--store-ink)}@media (max-width:900px){:root{--store-side-pad:24px}.store-header{min-height:64px}.hero-copy h1{font-size:2.375rem}.section-heading h1,.lab-surface h1{font-size:2rem}.store-nav,.store-actions{display:none}.store-menu-toggle{display:inline-flex}.store-mobile-menu{padding:6px var(--store-side-pad) 18px;border-bottom:1px solid var(--store-line);box-shadow:var(--store-shadow-md);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffffa;flex-direction:column;display:none;position:absolute;top:100%;left:0;right:0}.store-mobile-menu.open{display:flex}.store-mobile-menu a{border-bottom:1px solid var(--store-line);color:var(--store-body);transition:color var(--store-duration-base) var(--store-ease-out);align-items:center;gap:10px;padding:13px 2px;font-size:1rem;font-weight:500;display:flex}.store-mobile-menu a:last-child{border-bottom:0}.store-mobile-menu a:hover,.store-mobile-menu a.is-active{color:var(--store-ink)}.store-mobile-divider{background:var(--store-line);height:1px;margin:8px 0}.concept-band,.product-detail,.lab-surface{grid-template-columns:1fr}.concept-band{text-align:center;gap:36px}.concept-mark img{width:180px}.concept-list article{text-align:left}.type-matrix{margin-inline:calc(-1 * var(--store-side-pad));padding-inline:var(--store-side-pad);-webkit-overflow-scrolling:touch;grid-template-columns:92px repeat(4,minmax(120px,1fr));padding-bottom:8px;overflow-x:auto}.signal-list,.next-step-list,.type-meaning-grid,.feature-grid.two,.feature-grid.three,.login-page,.form-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1}.login-page{min-height:100svh}.login-brand-panel{min-height:0;padding:18px 24px}.login-brand-copy,.login-brand-panel>p{display:none}.login-form-panel{align-items:flex-start;padding:24px 24px 40px}.login-form-card h2{font-size:1.7rem}.login-form-card>p:not(.eyebrow){margin-bottom:20px}}@media (max-width:760px){.section-heading{flex-direction:column;align-items:flex-start}.hero-band{min-height:610px}.hero-band .confetti-field span:not(:nth-child(3n+1)){display:none}.hero-band .confetti-field span{opacity:calc(var(--o,.9) * .8)}.hero-actions{flex-direction:column;align-items:stretch}.button-prism,.button-secondary,.button-primary{width:100%}.product-media{min-height:360px}.footer-bottom{flex-direction:column}.diagnosis-flow{padding-bottom:calc(130px + env(safe-area-inset-bottom,0px))}.diagnosis-actions{z-index:30;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--store-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;flex-wrap:nowrap;margin-top:0;position:fixed;bottom:0;left:0;right:0}.diagnosis-actions .button-secondary{flex:1;min-width:0}.diagnosis-actions .button-prism{flex:1.4;min-width:0}}@media (max-width:520px){.hero-copy h1{font-size:2rem}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
.legal-page-surface{background:var(--store-paper)}.legal-page-grid{grid-template-columns:minmax(0,760px) minmax(260px,.45fr);align-items:start;gap:36px;max-width:1120px;margin:0 auto;padding:48px clamp(20px,5vw,72px) 96px;display:grid}.legal-page-article{min-width:0}.legal-page-updated{border-bottom:1px solid var(--store-line);color:var(--store-faint);margin:0 0 38px;padding-bottom:24px;font-size:.8rem}.legal-page-section{margin-bottom:38px}.legal-page-section h2{color:var(--store-ink);font-family:var(--font-display,system-ui, sans-serif);margin:0 0 14px;font-size:clamp(1.15rem,2.4vw,1.32rem);font-weight:400;line-height:1.5}.legal-page-copy{color:var(--store-body);font-size:.92rem;line-height:1.95}.legal-page-copy p{margin:0 0 12px}.legal-page-copy p:last-child{margin-bottom:0}.legal-page-copy ul,.legal-info-value ul{gap:7px;margin:0 0 12px;padding-left:1.4rem;display:grid}.legal-page-copy a,.legal-info-value a{color:var(--store-ink);text-underline-offset:3px;overflow-wrap:anywhere;font-weight:700;text-decoration:underline;text-decoration-thickness:1px}.legal-page-aside{gap:18px;display:grid;position:sticky;top:96px}.legal-page-aside p,.legal-page-note-copy{color:var(--store-muted);margin:0;font-size:.86rem;line-height:1.75}.legal-page-note-title{color:var(--store-ink);align-items:center;gap:10px;margin-bottom:10px;font-weight:700;display:flex}.legal-page-related-link{color:var(--store-ink);align-items:center;gap:14px;padding:16px 18px;font-weight:700;display:flex}.legal-page-related-link.with-border,.legal-info-row.with-border{border-top:1px solid var(--store-line)}.legal-page-related-link>span{border-radius:var(--store-radius-sm);background:var(--store-sunken);flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.legal-info-row{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:24px;padding:18px 22px;display:grid}.legal-info-label{color:var(--store-ink);font-size:.86rem;font-weight:700}.legal-info-value{min-width:0;color:var(--store-body);font-size:.9rem;line-height:1.85}.legal-info-value ul{margin-bottom:0}.legal-info-value small{color:var(--store-faint);margin-top:8px;font-size:.78rem;display:block}@media (max-width:760px){.legal-page-grid,.legal-info-row{grid-template-columns:minmax(0,1fr)}.legal-page-grid{gap:30px;padding-top:36px;padding-bottom:72px}.legal-info-row{gap:8px;padding:18px}.legal-page-aside{position:static}}
