/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.block{display:block}.table{display:table}}:root{--emerald:#3d7a63;--forest:#285947;--sage:#a9c3b2;--mint:#e8f3ed;--ivory:#fcfaf6;--cream:#f6f2ea;--champagne:#efe6d7;--sand:#e3d8c7;--gold:#c9a96b;--charcoal:#1f1f1f;--muted:#6d6b66;--border:#ece7df}*{box-sizing:border-box}html{background:var(--ivory)}body{color:var(--charcoal);background:var(--ivory);margin:0;font-family:Manrope,Avenir Next,Segoe UI,sans-serif}button,input,textarea{font:inherit}button{color:inherit}.app-shell{background:radial-gradient(circle at 92% 10%, #a9c3b224, transparent 26rem), var(--ivory);min-height:100vh;display:flex}.sidebar{z-index:20;border-right:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fcfaf6ed;flex-direction:column;width:244px;padding:35px 22px 24px;display:flex;position:fixed;inset:0 auto 0 0}.brand{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:100%;padding:0;display:flex}.brand-logo{object-fit:contain;width:152px;height:152px;display:block}.sidebar nav{flex-direction:column;flex:1;gap:6px;margin-top:24px;display:flex}.sidebar nav p{color:#aaa49c;letter-spacing:2.2px;margin:0 0 10px 13px;font-size:9px;font-weight:700}.sidebar nav button{color:#6a6a66;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:13px;align-items:center;gap:13px;width:100%;padding:12px 14px;font-size:13px;font-weight:500;transition:all .18s;display:flex}.sidebar nav button span{color:#8b8b86;place-items:center;width:20px;font-size:19px;display:grid}.sidebar nav button:hover{color:var(--forest);background:#e8f3eda6}.sidebar nav button.active{color:var(--forest);background:var(--mint);font-weight:700}.sidebar nav button.active span{color:var(--emerald)}.member-card{background:linear-gradient(135deg,#f7f0df,#fcf8f0);border:1px solid #e8ddc8;border-radius:16px;gap:11px;padding:14px;display:flex}.gold-dot{color:#fff;background:var(--gold);border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:12px;display:grid}.member-card strong,.profile-row strong{font-size:11px;display:block}.member-card small,.profile-row small{color:#86817a;margin-top:3px;font-size:9px;display:block}.profile-row{text-align:left;background:0 0;border:0;align-items:center;gap:10px;margin-top:18px;padding:0 5px;display:flex}.profile-row>span:nth-child(2){flex:1}.profile-row i{color:#9a958d;font-style:normal}.avatar{width:36px;height:36px;color:var(--forest);background:var(--champagne);border:1px solid #d6cdbf;border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:12px;display:grid}.main-stage{width:calc(100% - 244px);min-width:0;margin-left:244px}.topbar{justify-content:space-between;align-items:flex-end;padding:35px 4.3vw 26px;display:flex}.eyebrow{color:#848079;letter-spacing:2px;text-transform:uppercase;font-size:8px;font-weight:750;display:block}.topbar h1{color:var(--forest);letter-spacing:-1.4px;margin:6px 0 0;font-family:Georgia,serif;font-size:clamp(28px,3vw,40px);font-weight:400}h1 em,h2 em{font-style:italic;font-weight:400}.header-actions{align-items:center;gap:10px;display:flex}.icon-button{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:50%;place-items:center;width:43px;height:43px;font-size:20px;display:grid;position:relative}.notification-dot{background:#d85a5a;border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:8px;right:8px}.scan-cta,.primary-action{color:#fff;background:var(--emerald);cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:9px;padding:12px 18px;font-size:11px;font-weight:700;transition:all .18s;display:flex}.scan-cta:hover,.primary-action:hover{background:var(--forest);transform:translateY(-1px)}.dashboard,.content-view,.scanner-view,.chat-view{padding:0 4.3vw 55px}.view-enter{animation:.34s both enter}@keyframes enter{0%{opacity:0;transform:translateY(5px)}}.hero-card{color:#fff;background:radial-gradient(circle at 73% 24%,#c9a96b2b,#0000 16rem),linear-gradient(125deg,#285947,#3f7863 60%,#759681);border-radius:24px;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);min-height:290px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 50px #2859471f}.hero-card:before,.hero-card:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:320px;height:200px;position:absolute;bottom:-95px;right:-40px;transform:rotate(-35deg)}.hero-card:after{width:240px;bottom:-145px;right:135px}.hero-copy{z-index:2;padding:48px 0 42px 50px;position:relative}.eyebrow.light{color:#ffffff9e}.hero-copy h2,.page-intro h2,.scanner-copy h2,.ingredient-entry h2{letter-spacing:-1.7px;margin:14px 0 15px;font-family:Georgia,serif;font-size:clamp(32px,4vw,50px);font-weight:400;line-height:1.03}.hero-copy p{color:#ffffffb8;max-width:420px;margin:0 0 28px;font-family:Georgia,serif;font-size:14px;line-height:1.65}.hero-copy button,.text-link,.ai-tip button,.section-heading>button,.chat-context>button,.routine-fit>button,.back-link{color:inherit;letter-spacing:.6px;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:750}.hero-copy button span,.text-link span,.ai-tip button span{margin-left:8px;transition:transform .18s;display:inline-block}.hero-copy button:hover span,.text-link:hover span,.ai-tip button:hover span{transform:translate(4px)}.score-orbit{z-index:2;place-items:center;display:grid;position:relative}.score-center{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0f;border:1px solid #fff3;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:155px;height:155px;display:flex;position:relative}.score-center small{color:#fff9;letter-spacing:2px;font-size:7px}.score-center strong{letter-spacing:-4px;margin:2px 0 -2px;font-family:Georgia,serif;font-size:62px;font-weight:400}.score-center span{color:#dceadf;font-size:8px}.orbit{border:1px solid #ffffff2b;border-radius:50%;width:214px;height:120px;position:absolute;transform:rotate(-25deg)}.orbit-two{width:185px;height:225px;transform:rotate(40deg)}.spark{color:#e2d6b4;font-style:normal;position:absolute}.spark.one{transform:translate(95px,-58px)}.spark.two{font-size:8px;transform:translate(-93px,54px)}.spark.three{transform:translate(105px,72px)}.daily-grid{grid-template-columns:minmax(0,1.38fr) minmax(270px,.62fr);gap:18px;margin-top:18px;display:grid}.routine-card,.ai-tip,.weather-card,.recommendation-strip,.formula-card,.fit-card,.ingredient-list,.routine-fit,.progress-cards article,.timeline-card,.shop-product{border:1px solid var(--border);background:#ffffffc7;border-radius:20px}.routine-card{padding:26px 28px 22px}.section-heading{justify-content:space-between;align-items:flex-end;display:flex}.section-heading h3,.ai-tip h3,.ritual-note h3,.formula-card h3,.fit-card h3,.timeline-card h3{color:var(--forest);margin:6px 0 0;font-family:Georgia,serif;font-size:22px;font-weight:400}.progress-label{align-items:baseline;gap:5px;display:flex}.progress-label strong{color:var(--emerald);font-family:Georgia,serif;font-size:22px}.progress-label span{color:#99938a;font-size:8px}.progress-line,.scan-progress{background:#ebe9e4;border-radius:20px;height:3px;margin:17px 0 10px;overflow:hidden}.progress-line span,.scan-progress span{border-radius:inherit;background:var(--emerald);height:100%;transition:width .3s;display:block}.compact-steps{display:grid}.compact-steps>button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #f0ede7;grid-template-columns:21px 38px 1fr 12px;align-items:center;gap:11px;padding:11px 0;display:grid}.compact-steps>button:last-child{border-bottom:0}.compact-steps .check{color:#fff;border:1px solid #c9c6be;border-radius:50%;place-items:center;width:18px;height:18px;font-size:9px;display:grid}.compact-steps button.done .check{border-color:var(--emerald);background:var(--emerald)}.compact-steps button.done strong{color:#8b8b86;text-decoration:line-through}.compact-steps small,.full-routine article small{color:var(--emerald);letter-spacing:1.1px;text-transform:uppercase;margin-bottom:3px;font-size:7px;font-weight:800;display:block}.compact-steps strong{font-family:Georgia,serif;font-size:12px;font-weight:400;display:block}.compact-steps i{color:#aaa69e;font-style:normal}.product-orb{border:4px solid #fff;border-radius:50%;width:34px;height:34px;display:block;box-shadow:0 4px 12px #2859471a}.orb-1{background:linear-gradient(135deg,#b6cbb7,#eaf3e8)}.orb-2{background:linear-gradient(135deg,#e8b5ad,#f6e5df)}.orb-3{background:linear-gradient(135deg,#7aa48e,#cee0d5)}.orb-4{background:linear-gradient(135deg,#dcc99c,#faf1d7)}.text-link{color:var(--emerald);margin-top:15px}.insight-column{gap:18px;display:grid}.ai-tip{background:radial-gradient(circle at 100% 0,#a9c3b238,#0000 12rem),#f7faf7;gap:17px;padding:23px;display:flex}.tip-icon{color:#fff;background:var(--emerald);border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:11px;display:grid}.ai-tip p{color:#6c6c67;margin:9px 0 15px;font-family:Georgia,serif;font-size:11px;line-height:1.55}.ai-tip button{color:var(--emerald)}.weather-card{padding:20px 23px}.weather-card>div{align-items:center;gap:12px;display:flex}.weather-icon{color:#b48b39;background:#f9eed5;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.weather-card strong{font-family:Georgia,serif;font-size:18px;font-weight:400}.weather-card small{color:#8b8780;font-size:8px;display:block}.weather-card p{color:#6e6b65;margin:13px 0 0;font-size:9px;line-height:1.5}.mark{color:var(--forest);background:var(--mint);border-radius:100px;padding:4px 8px;font-size:8px;font-weight:750;display:inline-flex}.feature-row{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;display:grid}.feature-card{border:1px solid var(--border);text-align:left;cursor:pointer;background:#fff;border-radius:18px;grid-template-columns:40px 1fr 16px;align-items:center;gap:14px;padding:18px 20px;transition:all .18s;display:grid}.feature-card:hover{border-color:var(--sage);transform:translateY(-2px);box-shadow:0 12px 32px #28594712}.feature-icon{width:38px;height:38px;color:var(--forest);background:var(--mint);border-radius:13px;place-items:center;font-size:20px;display:grid}.feature-card small,.feature-card strong,.feature-card em{display:block}.feature-card small{color:#a09b93;letter-spacing:1px;font-size:6px;font-weight:800}.feature-card strong{color:var(--forest);margin:4px 0 3px;font-family:Georgia,serif;font-size:15px;font-weight:400}.feature-card em{color:#85827d;font-size:8px;font-style:normal}.feature-card>i{color:var(--emerald);font-style:normal}.recommendation-strip{margin-top:18px;padding:23px 27px}.section-heading>button{color:var(--emerald)}.product-row{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:17px;display:grid}.mini-product{background:#fdfcf9;border:1px solid #f0ede8;border-radius:15px;grid-template-columns:55px 1fr;align-items:center;gap:13px;padding:12px;display:grid;position:relative}.bottle{width:48px;height:57px;color:var(--forest);border-radius:14px 14px 18px 18px;flex-direction:column;justify-content:center;align-items:center;display:flex;box-shadow:inset 0 0 0 1px #fff9}.bottle:before{background:var(--forest);content:"";border-radius:3px 3px 0 0;width:19px;height:7px;margin-top:-10px;margin-bottom:10px}.bottle span{letter-spacing:1px;font-size:4px}.bottle i{font-family:Georgia,serif;font-size:13px;font-style:italic}.bottle.mint{background:#cfdfd3}.bottle.cream{background:#eee1b8}.bottle.rose{background:#eac5bc}.bottle.green{background:#a9c3b2}.mini-product small,.mini-product strong,.mini-product>div>span{display:block}.mini-product small{color:var(--emerald);font-size:7px;font-weight:700}.mini-product strong{margin:4px 0 3px;font-family:Georgia,serif;font-size:11px;font-weight:400}.mini-product>div>span{color:#85817a;font-size:8px}.mini-product>button,.heart{color:#99948b;cursor:pointer;background:0 0;border:0;position:absolute;top:9px;right:9px}.page-intro{background:radial-gradient(circle at 93% 20%, #a9c3b252, transparent 16rem), var(--cream);border-radius:22px;justify-content:space-between;align-items:center;gap:30px;min-height:180px;margin-bottom:24px;padding:32px 40px;display:flex}.page-intro h2,.ingredient-entry h2{max-width:700px;color:var(--forest);margin-bottom:10px}.page-intro p,.ingredient-entry>p,.scanner-copy>p{color:#706d68;max-width:620px;margin:0;font-family:Georgia,serif;font-size:13px;line-height:1.6}.routine-ring{border:8px solid #d9e7de;border-top-color:var(--emerald);border-radius:50%;flex-direction:column;flex:0 0 110px;justify-content:center;align-items:center;width:110px;height:110px;display:flex;transform:rotate(8deg)}.routine-ring strong,.routine-ring span{transform:rotate(-8deg)}.routine-ring strong{color:var(--forest);font-family:Georgia,serif;font-size:25px;font-weight:400}.routine-ring span{color:#8a8780;font-size:8px}.routine-layout{grid-template-columns:minmax(0,1fr) 280px;gap:20px;display:grid}.full-routine{border:1px solid var(--border);background:#fff;border-radius:20px;padding:22px}.routine-tabs{background:var(--cream);border-radius:13px;gap:4px;margin-bottom:15px;padding:4px;display:inline-flex}.routine-tabs button,.shop-filters button{color:#86817a;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 17px;font-size:9px}.routine-tabs button.selected,.shop-filters button.selected{color:var(--forest);background:#fff;font-weight:700;box-shadow:0 2px 8px #1f1f1f0d}.full-routine article{border-bottom:1px solid var(--border);grid-template-columns:35px 55px minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px 10px;display:grid}.full-routine article:last-child{border-bottom:0}.full-routine article.complete{opacity:.62}.step-number{color:#aaa69f;font-family:Georgia,serif;font-size:12px}.routine-product{border:5px solid var(--ivory);border-radius:50%;width:48px;height:48px}.full-routine h3{color:var(--forest);margin:0;font-family:Georgia,serif;font-size:16px;font-weight:400}.full-routine p{color:#8c8881;margin:4px 0 0;font-size:8px}.full-routine article>button{border:1px solid var(--sage);color:var(--emerald);cursor:pointer;background:#fff;border-radius:10px;padding:8px 12px;font-size:8px}.ritual-note{color:#fff;background:var(--forest);border-radius:20px;align-self:start;padding:29px}.ritual-note>span{width:36px;height:36px;color:var(--forest);background:var(--mint);border-radius:50%;place-items:center;margin-bottom:55px;display:grid}.ritual-note small{color:#ffffff8c;letter-spacing:1.4px;font-size:7px}.ritual-note h3{color:#fff}.ritual-note p{color:#ffffffb3;font-family:Georgia,serif;font-size:11px;line-height:1.65}.ritual-note button{color:#d8e8dd;background:0 0;border:0;padding:0;font-size:9px}.scanner-panel{background:var(--forest);border-radius:26px;grid-template-columns:1.1fr .9fr;min-height:620px;display:grid;overflow:hidden}.scanner-visual{background:radial-gradient(circle,#a9c3b238 0 1px,#0000 1px) 0 0/18px 18px,radial-gradient(circle,#567d6a,#234d3e 70%);place-items:center;display:grid;position:relative;overflow:hidden}.scanner-visual:before,.scanner-visual:after{content:"";border:1px solid #ffffff0f;border-radius:50%;width:520px;height:520px;position:absolute}.scanner-visual:after{width:390px;height:390px}.face-frame{z-index:2;aspect-ratio:.74;border:1px solid #ffffff47;border-radius:48% 48% 42% 42%/37% 37% 56% 56%;width:min(56%,310px);position:relative;box-shadow:0 0 55px #d1ebd91f}.face-frame:before,.face-frame:after{content:"";border-top:1px solid #e2f4e88c;border-radius:50%;width:27%;height:8%;position:absolute;top:42%}.face-frame:before{left:14%;transform:rotate(-4deg)}.face-frame:after{right:14%;transform:rotate(4deg)}.face-outline:before{content:"";border-bottom:1px solid #e2f4e873;border-right:1px solid #e2f4e873;border-radius:50%;width:8%;height:17%;position:absolute;top:49%;left:46%}.face-outline:after{content:"";border-bottom:1px solid #e2f4e873;border-radius:50%;width:30%;height:8%;position:absolute;bottom:19%;left:35%}.mesh{border:1px dashed #ccecd83d;border-radius:50%;position:absolute;inset:13% 7%;transform:rotate(23deg)}.mesh-two{transform:rotate(-31deg)}.scan-line{background:linear-gradient(90deg,#0000,#d1eadb,#0000);width:112%;height:1px;animation:3s ease-in-out infinite scan;position:absolute;top:20%;left:-6%;box-shadow:0 0 16px #bee2cc}@keyframes scan{50%{top:80%}}.scan-status{z-index:4;color:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1434298c;border:1px solid #ffffff26;border-radius:100px;align-items:center;gap:8px;padding:10px 15px;font-size:8px;display:flex;position:absolute;bottom:35px;left:50%;transform:translate(-50%)}.pulse{background:#87d3a1;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 5px #87d3a124}.scanner-copy{background:var(--cream);flex-direction:column;justify-content:center;padding:55px;display:flex}.scanner-copy h2{max-width:450px;color:var(--forest)}.scan-step{background:#ffffff8f;border:1px solid #ded7cd;border-radius:15px;align-items:center;gap:18px;margin-top:38px;padding:18px;display:flex}.scan-step>span{color:var(--emerald);font-family:Georgia,serif;font-size:13px}.scan-step small,.scan-step strong{display:block}.scan-step small{color:#9a958d;letter-spacing:1.2px;font-size:7px}.scan-step strong{color:var(--forest);margin-top:3px;font-family:Georgia,serif;font-size:14px;font-weight:400}.scanner-copy .scan-progress{margin:18px 0 26px}.scanner-copy .primary-action{align-self:flex-start}.privacy-note{color:#858079;margin-top:25px;font-size:8px;line-height:1.5;display:block}.ingredient-entry{text-align:center;max-width:920px;margin:0 auto;padding:36px 0}.ingredient-entry>p{margin:0 auto}.identify-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:34px;display:grid}.identify-grid button{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;min-height:135px;transition:all .18s;display:flex}.identify-grid button:hover{border-color:var(--sage);background:var(--mint);transform:translateY(-2px)}.identify-grid button>span{width:36px;height:36px;color:var(--forest);background:var(--mint);border-radius:12px;place-items:center;margin-bottom:12px;font-size:20px;display:grid}.identify-grid strong{color:var(--forest);font-family:Georgia,serif;font-size:14px;font-weight:400}.identify-grid small{color:#8d8982;margin-top:4px;font-size:7px}.paste-box{border:1px solid var(--border);text-align:left;background:#fff;border-radius:18px;margin-top:16px;padding:24px}.paste-box label{color:var(--forest);margin-bottom:10px;font-family:Georgia,serif;font-size:13px;display:block}.paste-box textarea{resize:vertical;width:100%;min-height:88px;color:var(--charcoal);background:var(--ivory);border:1px solid #d7cec1;border-radius:13px;outline:none;padding:14px;font-size:10px;line-height:1.55}.paste-box textarea:focus{border-color:var(--emerald)}.paste-box .primary-action{margin:14px 0 0 auto}.primary-action:disabled{cursor:not-allowed;background:var(--sage);transform:none}.analysis-title{color:#fff;background:var(--forest);border-radius:22px;justify-content:space-between;align-items:center;margin-bottom:22px;padding:28px 34px;display:flex}.analysis-title h2{margin:7px 0 4px;font-family:Georgia,serif;font-size:30px;font-weight:400}.analysis-title p{color:#ffffffa6;margin:0;font-size:9px}.analysis-title .eyebrow{color:#ffffff8c}.back-link{color:#ffffffb3;margin-bottom:25px;display:block}.match-score{background:#ffffff12;border:1px solid #ffffff3b;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:124px;height:124px;display:flex}.match-score small{letter-spacing:1.4px;font-size:7px}.match-score strong{font-family:Georgia,serif;font-size:46px;font-weight:400}.match-score span{color:#cce1d3;font-size:8px}.analysis-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.formula-card,.fit-card,.ingredient-list,.routine-fit{padding:25px}.metric{margin-top:17px}.metric>span{justify-content:space-between;display:flex}.metric strong{color:var(--forest);font-family:Georgia,serif;font-size:12px;font-weight:400}.metric small{color:#8c8881;font-size:8px}.metric>i{background:var(--cream);border-radius:10px;height:5px;margin-top:7px;display:block;overflow:hidden}.metric b{border-radius:inherit;background:var(--emerald);height:100%;display:block}.fit-card h3{margin-top:17px;font-size:24px}.fit-card p{color:#73706a;font-family:Georgia,serif;font-size:11px;line-height:1.65}.fit-card>div{flex-wrap:wrap;gap:6px;margin-top:20px;display:flex}.ingredient-list{grid-row:span 2}.ingredient-list>button{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;grid-template-columns:32px 1fr auto 10px;align-items:center;gap:10px;width:100%;padding:16px 0;display:grid}.ingredient-list>button>span{color:var(--gold);font-family:Georgia,serif;font-size:11px}.ingredient-list strong{color:var(--forest);font-family:Georgia,serif;font-size:13px;font-weight:400}.ingredient-list small{color:#8e8a83;font-size:8px}.ingredient-list i{color:#99948d;font-style:normal}.compatibility{background:var(--mint);border-radius:14px;align-items:center;gap:13px;margin:18px 0;padding:16px;display:flex}.compatibility>span{color:#fff;background:var(--emerald);border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.compatibility strong,.compatibility small{display:block}.compatibility strong{color:var(--forest);font-family:Georgia,serif;font-size:13px;font-weight:400}.compatibility small{color:#77736d;margin-top:3px;font-size:7px}.routine-fit>button{color:var(--emerald)}.chat-view{grid-template-columns:310px minmax(0,1fr);gap:18px;min-height:calc(100vh - 120px);display:grid}.chat-context{color:#fff;background:radial-gradient(circle at 100% 100%, #a9c3b23d, transparent 18rem), var(--forest);border-radius:22px;flex-direction:column;align-items:flex-start;padding:37px 32px;display:flex}.chat-context .eyebrow{color:#ffffff94}.chat-context h2{margin:23px 0 15px;font-family:Georgia,serif;font-size:34px;font-weight:400;line-height:1.05}.chat-context>p{color:#ffffffad;font-family:Georgia,serif;font-size:11px;line-height:1.8}.chat-context>button{color:#d6e8dc;margin-top:15px}.context-note{border-top:1px solid #ffffff1f;gap:12px;margin-top:auto;padding-top:25px;display:flex}.context-note p{color:#ffffff8c;margin:0;font-size:8px;line-height:1.55}.chat-panel{border:1px solid var(--border);background:#fff;border-radius:22px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.chat-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:18px 22px;display:flex}.chat-header strong,.chat-header small{display:block}.chat-header strong{color:var(--forest);font-family:Georgia,serif;font-size:15px;font-weight:400}.chat-header small{color:#8b8780;margin-top:3px;font-size:7px}.chat-header small span{background:#4caf72;border-radius:50%;width:5px;height:5px;margin-right:4px;display:inline-block}.messages{flex-direction:column;flex:1;gap:15px;min-height:250px;max-height:430px;padding:28px;display:flex;overflow:auto}.message{align-items:flex-start;gap:9px;max-width:77%;display:flex}.message>span{color:#fff;background:var(--emerald);border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;font-size:8px;display:grid}.message p{color:#4f504d;background:var(--mint);border-radius:4px 15px 15px;margin:0;padding:13px 15px;font-family:Georgia,serif;font-size:11px;line-height:1.6}.message.user{align-self:flex-end}.message.user p{color:#fff;background:var(--emerald);border-radius:15px 15px 4px}.suggestions{gap:7px;padding:0 22px 13px;display:flex;overflow-x:auto}.suggestions button{color:#6f6c66;cursor:pointer;background:#fff;border:1px solid #dcd6cc;border-radius:100px;flex:none;padding:8px 11px;font-size:8px}.suggestions button:hover{border-color:var(--sage);color:var(--forest);background:var(--mint)}.chat-input{background:var(--ivory);border:1px solid #d7cec1;border-radius:16px;grid-template-columns:32px 1fr 34px;align-items:center;margin:0 22px;padding:7px;display:grid}.chat-input input{background:0 0;border:0;outline:none;min-width:0;font-size:10px}.chat-input button{color:#fff;background:var(--emerald);cursor:pointer;border:0;border-radius:10px;place-items:center;width:30px;height:30px;display:grid}.chat-input button:first-child{color:#8a857e;background:0 0}.ai-disclaimer{color:#aaa59d;text-align:center;margin:8px 0 12px;font-size:7px}.progress-cards{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.progress-cards article{min-height:180px;padding:22px;position:relative;overflow:hidden}.progress-cards small{color:#827f79;font-size:8px;display:block}.progress-cards strong{color:var(--forest);margin-top:10px;font-family:Georgia,serif;font-size:38px;font-weight:400;display:block}.progress-cards span{color:var(--emerald);font-size:8px}.mini-chart{align-items:end;gap:5px;height:40px;display:flex;position:absolute;bottom:18px;left:18px;right:18px}.mini-chart i{background:linear-gradient(#a9c3b2,#e8f3ed);border-radius:3px 3px 0 0;flex:1}.timeline-card{margin-top:18px;padding:30px}.timeline{grid-template-columns:repeat(4,1fr);margin-top:35px;display:grid}.timeline>div{border-top:1px solid #d8d4cc;padding-top:26px;position:relative}.timeline>div>span{color:#fff;background:var(--sage);width:21px;height:21px;box-shadow:0 0 0 1px var(--sage);border:3px solid #fff;border-radius:50%;place-items:center;font-size:7px;display:grid;position:absolute;top:-11px;left:0}.timeline>div.current>span{background:var(--gold);box-shadow:0 0 0 1px var(--gold)}.timeline strong,.timeline small{display:block}.timeline strong{color:var(--forest);font-family:Georgia,serif;font-size:11px;font-weight:400}.timeline small{color:#8a867f;margin-top:4px;font-size:7px}.shop-view .page-intro{align-items:flex-end}.shop-filters{background:#ffffffa6;border-radius:13px;flex-wrap:wrap;gap:3px;padding:4px;display:flex}.shop-grid{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.shop-product{padding:15px;position:relative}.large-bottle{height:215px;color:var(--forest);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;display:flex}.large-bottle.mint{background:linear-gradient(140deg,#dae9df,#b4cebe)}.large-bottle.cream{background:linear-gradient(140deg,#f7edcf,#ddc894)}.large-bottle.rose{background:linear-gradient(140deg,#f4ded8,#dcafa6)}.large-bottle.green{background:linear-gradient(140deg,#c8dacd,#84a990)}.large-bottle:before{background:var(--forest);content:"";border-radius:6px 6px 1px 1px;width:46px;height:20px;margin-bottom:19px}.large-bottle>span{letter-spacing:2px;font-size:6px;font-weight:800}.large-bottle>i{margin:8px 0 4px;font-family:Georgia,serif;font-size:23px;font-style:italic}.large-bottle>small{letter-spacing:1px;text-transform:uppercase;font-size:7px}.match-chip{color:var(--forest);background:var(--mint);border-radius:100px;margin-top:14px;padding:5px 8px;font-size:7px;font-weight:700;display:inline-flex}.shop-product h3{color:var(--forest);margin:10px 0 5px;font-family:Georgia,serif;font-size:16px;font-weight:400}.shop-product p{color:#85817a;min-height:30px;font-family:Georgia,serif;font-size:9px;line-height:1.5}.shop-product>div:last-child{justify-content:space-between;align-items:center;margin-top:15px;display:flex}.shop-product>div:last-child strong{color:var(--forest);font-family:Georgia,serif;font-weight:400}.shop-product>div:last-child button{color:#fff;background:var(--emerald);border:0;border-radius:10px;padding:8px 10px;font-size:8px}.mobile-nav{display:none}@media (width<=1050px){.sidebar{width:205px}.main-stage{width:calc(100% - 205px);margin-left:205px}.feature-row,.product-row{grid-template-columns:1fr}.shop-grid,.progress-cards{grid-template-columns:repeat(2,1fr)}.scanner-copy{padding:38px}}@media (width<=760px){.app-shell{display:block}.sidebar{display:none}.main-stage{width:100%;margin-left:0}.topbar{align-items:center;padding:24px 20px 19px}.topbar .scan-cta{display:none}.topbar h1{font-size:28px}.dashboard,.content-view,.scanner-view,.chat-view{padding:0 16px 94px}.hero-card{grid-template-columns:1fr;min-height:500px}.hero-copy{padding:35px 28px 10px}.hero-copy h2{font-size:39px}.score-orbit{min-height:230px}.daily-grid,.routine-layout,.scanner-panel,.chat-view,.feature-row,.product-row,.identify-grid,.analysis-grid,.shop-grid,.progress-cards{grid-template-columns:1fr}.recommendation-strip{padding:22px 18px}.page-intro{flex-direction:column;align-items:flex-start;padding:28px 24px}.page-intro h2,.ingredient-entry h2{font-size:38px}.routine-layout{display:block}.ritual-note{margin-top:15px}.ritual-note>span{margin-bottom:25px}.full-routine article{grid-template-columns:25px 43px 1fr}.full-routine article>button{grid-column:3;justify-self:start}.scanner-panel{display:block}.scanner-visual{min-height:430px}.scanner-copy{padding:34px 25px}.ingredient-entry{padding:15px 0}.analysis-title{flex-direction:column;align-items:flex-start}.match-score{margin-top:25px}.chat-view{min-height:auto}.chat-context{min-height:310px}.context-note{margin-top:35px}.chat-panel{min-height:580px}.message{max-width:92%}.timeline{grid-template-columns:1fr;gap:22px}.timeline>div{border-top:0;border-left:1px solid #d8d4cc;padding-top:0;padding-left:32px}.timeline>div>span{top:0;left:-11px}.mobile-nav{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffed;border:1px solid #ece7dfcc;border-radius:20px;grid-template-columns:repeat(5,1fr);padding:7px;display:grid;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 12px 40px #1f1f1f1f}.mobile-nav button{color:#8d8982;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;padding:7px 2px;font-size:6px;display:flex}.mobile-nav button span{font-size:18px}.mobile-nav button.active{color:var(--emerald)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.investor-demo-badge{z-index:100;color:#285947;letter-spacing:.7px;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fcfaf6e6;border:1px solid #3d7a6329;border-radius:100px;align-items:center;gap:7px;padding:7px 10px;font-size:7px;font-weight:750;display:inline-flex;position:fixed;top:17px;right:4.3vw;box-shadow:0 8px 22px #28594714}.investor-demo-badge>span{background:#4caf72;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #4caf721f}.investor-demo-badge small{color:#8b867e;letter-spacing:.5px;border-left:1px solid #3d7a6326;padding-left:7px;font-size:6px;font-weight:700}@media (width<=760px){.investor-demo-badge{white-space:nowrap;top:auto;bottom:82px;right:50%;transform:translate(50%)}}
