/* Storefront homepage only. Shared checkout/profile/product routes keep their styles. */
.kai-store-home { --home-ink:#172239; --home-muted:#667085; --home-accent:#5746cf; --home-border:#e6e8ef; background:#fafafc; color:var(--home-ink); font-family:'Plus Jakarta Sans',sans-serif; overflow-x:clip; }
.kai-store-home h1,.kai-store-home h2,.kai-store-home h3 {font-family:inherit;text-transform:none;color:var(--home-ink);letter-spacing:-.035em;}
.kai-store-home button,.kai-store-home a {-webkit-tap-highlight-color:transparent;}
.kai-store-home :is(a,button,summary,select,input):focus-visible {outline:3px solid #9487ed;outline-offset:4px;}
.home-skip {position:fixed;inset-block-start:-100px;inset-inline-start:20px;z-index:2000000;background:#fff;padding:12px 20px;}
.home-skip:focus {inset-block-start:12px;}
.kai-store-home .global-nav {padding:0;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--home-border);}
.kai-store-home .header-container {height:88px;max-width:1280px;padding:0 40px;gap:28px;}
.kai-store-home .logo-text {font-size:23px;white-space:nowrap;}
.kai-store-home .logo-tagline {font-size:8px;letter-spacing:0;color:var(--home-muted);margin-top:1px;}
.kai-store-home .center-menu {gap:24px;flex:0 1 auto;}
.kai-store-home .nav-link {font-size:13px;letter-spacing:0;text-transform:none;white-space:nowrap;color:#475467;}
.kai-store-home .right-section {display:flex;gap:12px;align-items:center;flex:1;justify-content:flex-end;min-width:0;}
.kai-store-home .search-bar {display:block;width:240px;max-width:none;flex:1;min-width:120px;}
.kai-store-home .search-bar form {position:relative;width:100%;}
.kai-store-home .search-input {width:100%;height:42px;border-radius:10px;background:#f6f6f9;border:1px solid var(--home-border);font:500 12px/1.4 'Plus Jakarta Sans',sans-serif;letter-spacing:0;padding:10px 12px 10px 36px;color:var(--home-ink);text-transform:none;}
.kai-store-home .search-icon {width:14px;height:14px;left:12px;right:auto;stroke-width:2;color:#667085;}
.kai-store-home :is(.cart-btn,.user-btn) {width:42px;height:42px;min-width:42px;border-radius:12px;background:#fff;border:1px solid var(--home-border);color:var(--home-ink);}
.kai-store-home .profile-dropdown-container {padding:0;}
.kai-store-home .profile-dropdown-menu {border-radius:18px;box-shadow:0 12px 40px #17223914;margin-top:8px;width:260px;max-height:75vh;overflow-y:auto;}
.kai-store-home .profile-dropdown-container:hover .profile-dropdown-menu {opacity:0;visibility:hidden;}
.kai-store-home .home-menu-open .profile-dropdown-menu {opacity:1!important;visibility:visible!important;transform:none;}
.kai-store-home .dropdown-item {font-size:12px;letter-spacing:0;text-transform:none;border-radius:10px;padding:12px;}
#kai-home-language {position:relative;flex-shrink:0;}
.kai-store-home #kai-language-menu {position:relative!important;inset:auto!important;box-shadow:none!important;padding:0!important;border:0!important;font:500 12px/1.4 'Plus Jakarta Sans',sans-serif!important;max-width:none!important;direction:ltr;}
.kai-store-home #kai-language-menu summary {list-style:none;display:flex;align-items:center;min-height:42px;white-space:nowrap;max-width:112px;overflow:hidden;text-overflow:ellipsis;}
.kai-store-home #kai-language-menu summary::-webkit-details-marker {display:none;}
.kai-store-home #kai-language-menu[open] {position:absolute!important;top:-21px!important;right:0!important;min-width:240px!important;padding:12px!important;border:1px solid var(--home-border)!important;border-radius:14px!important;box-shadow:0 8px 30px #17223918!important;}
.kai-store-home #kai-language-menu[open] summary {min-height:30px;max-width:none;}
.home-container {width:calc(100% - 80px);max-width:1200px;margin-inline:auto;}
#home-main {padding-top:88px;}
.home-hero {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:72px;padding-block:52px 46px;}
.home-eyebrow {font-size:11px;font-weight:800;letter-spacing:.15em;color:var(--home-accent);margin:0 0 18px;}
.home-welcome {font-size:15px;color:var(--home-muted);margin-bottom:12px;overflow-wrap:anywhere;}
.home-intro h1 {font-size:clamp(32px,3.1vw,44px);line-height:1.25;font-weight:800;max-width:560px;margin:0 0 20px;word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance;}
.home-intro-copy {font-size:15px;line-height:1.8;color:var(--home-muted);max-width:455px;margin:0 0 28px;}
.home-main-actions {display:flex;gap:10px;flex-wrap:wrap;}
.home-primary,.home-secondary {display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 18px;border-radius:12px;font:700 14px/1.4 'Plus Jakarta Sans',sans-serif;text-align:center;text-decoration:none;cursor:pointer;transition:background .18s,border-color .18s;}
.home-primary {background:var(--home-accent);color:#fff;border:1px solid var(--home-accent);box-shadow:0 6px 16px #5746cf20;}
.home-primary:hover {background:#4635bc;}
.home-primary svg {flex-shrink:0;}
.home-secondary {background:#fff;color:var(--home-ink);border:1px solid #dcdfe8;}
.home-secondary:hover {border-color:var(--home-accent);background:#f7f6fe;}
.home-text-link {display:inline-flex;align-items:center;gap:8px;min-height:38px;color:var(--home-accent);font-size:13px;font-weight:700;text-decoration:none;text-align:start;background:none;border:0;cursor:pointer;}
.home-text-link:hover {text-decoration:underline;text-underline-offset:4px;}
.home-upload {margin-block:8px 0;font-size:12px;color:var(--home-muted);}
.home-weather {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--home-border);font-size:12px;color:var(--home-muted);}
.home-weather .home-text-link {font-size:12px;color:var(--home-muted);min-height:30px;}
.home-weather small {flex-basis:100%;font-size:12px;}
.home-region-trigger {display:inline-flex;align-items:center;gap:6px;border:0;border-bottom:1px dotted #94a3b8;background:transparent;padding:5px 0;color:var(--home-ink);font:inherit;font-weight:600;cursor:pointer;}
.home-region-dialog {margin:auto;border:1px solid var(--home-border);border-radius:20px;padding:0;width:min(440px,calc(100vw - 32px));max-height:80vh;color:var(--home-ink);background:#fff;box-shadow:0 20px 80px #0f172a33;}
.home-region-dialog::backdrop {background:#0f172a66;}
.home-region-content {padding:24px;}
.home-region-content header {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;}
.home-region-content h2 {font-size:20px;margin:0;}
.home-region-content button {border:1px solid var(--home-border);background:#fff;border-radius:10px;padding:10px 14px;font:inherit;cursor:pointer;}
.home-region-content header button {font-size:24px;line-height:1;}
.home-region-content label {display:block;font-size:13px;margin-bottom:8px;}
.home-region-content form>div {display:flex;gap:8px;}
.home-region-content input {width:0;min-width:0;flex:1;border:1px solid var(--home-border);border-radius:10px;padding:10px;font:inherit;}
.home-region-results {display:grid;gap:8px;margin-top:16px;}
.home-region-results button {text-align:start;line-height:1.5;}
.home-region-content p {font-size:13px;line-height:1.6;}
.home-region-content button:disabled {opacity:.55;cursor:wait;}

.home-analysis {padding:26px 28px 18px;border:1px solid #e2dfee;border-radius:24px;background:#fff;box-shadow:0 14px 44px #30255b06;min-width:0;}
.home-analysis-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.home-analysis-heading h2 {font-size:15px;line-height:1.4;letter-spacing:-.02em;font-weight:800;}
.home-analysis-heading time {font-size:11px;color:var(--home-muted);text-align:end;}
.home-score-row {display:flex;gap:24px;align-items:center;padding-block:22px 12px;}
.home-score-row h3 {font-size:15px;font-weight:700;line-height:1.6;}
.home-score-row p {font-size:12px;color:var(--home-muted);}
.home-score-ring {width:126px;min-width:126px;height:126px;position:relative;}
.home-score-ring svg {width:100%;height:100%;}
.home-score-ring>span {position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:38px;font-weight:800;line-height:1.1;letter-spacing:-.045em;}
.home-score-ring small {font-size:11px;line-height:1.7;letter-spacing:0;color:var(--home-muted);font-weight:500;}
.home-trend {border-top:1px solid #f0eff5;padding-top:12px;color:var(--home-muted);font-size:11px;}
.home-trend svg {display:block;width:100%;height:60px;}
.home-trend-dates {display:flex;justify-content:space-between;gap:8px;font-size:10px;}
.home-result-link {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:13px 16px;border-radius:10px;background:#f2f0fb;color:var(--home-accent);font-size:13px;font-weight:800;text-decoration:none;}
.home-result-link:hover {background:#e9e5fb;}
.home-disclaimer {font-size:10px;line-height:1.6;color:#757d8e;margin-top:12px;}
.home-empty {min-height:210px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-block:24px;}
.home-empty-mark {font-size:40px;color:#8c80d8;line-height:1;margin-bottom:16px;}
.home-empty h3 {font-size:19px;font-weight:700;margin-bottom:10px;}
.home-empty p {font-size:14px;color:var(--home-muted);line-height:1.8;}
.home-discovery {padding-bottom:28px;}
.home-section-heading {display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px;}
.home-section-heading h2 {font-size:24px;font-weight:800;line-height:1.35;margin:0 0 8px;}
.home-section-heading p {font-size:13px;line-height:1.7;color:var(--home-muted);}
.home-section-heading>a {flex-shrink:0;max-width:28%;}
.home-routines {padding-top:32px;border-top:1px solid var(--home-border);}
.home-routine-group {margin-bottom:20px;}
.home-routine-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start;}
.home-routine-item {padding:20px;border:1px solid var(--home-border);border-radius:18px;background:white;min-width:0;}
.home-step {color:var(--home-accent);font-size:11px;font-weight:800;letter-spacing:.08em;margin-bottom:16px;}
.home-routine-product {display:flex;gap:14px;text-align:start;align-items:center;width:100%;background:none;border:0;cursor:pointer;}
.home-routine-product img {height:72px;width:64px;object-fit:contain;flex-shrink:0;background:#fafafb;border-radius:10px;mix-blend-mode:multiply;}
.home-routine-product strong {font-size:13px;font-weight:700;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.home-routine-product>span {min-width:0;}
.home-brand {display:block;color:var(--home-muted);font-size:10px;font-weight:700;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase;}
.home-routine-actions {display:flex;gap:24px;align-items:center;justify-content:flex-end;padding-top:16px;}
.home-routine-actions .home-secondary {font-size:12px;min-height:42px;}
.home-evidence {margin-top:12px;font-size:11px;}
.home-evidence:empty {display:none;}
.home-evidence button {text-align:start;line-height:1.5;}
.home-products {margin-top:36px;padding-top:32px;border-top:1px solid var(--home-border);}
.home-categories {display:flex;gap:8px;overflow-x:auto;padding-bottom:18px;scrollbar-width:thin;margin-bottom:8px;}
.home-categories>button {padding:9px 16px!important;min-height:42px;border-radius:10px!important;box-shadow:none!important;transform:none!important;flex-shrink:0;}
.home-categories>button>span {font-size:12px;}
.home-categories>button[aria-pressed="false"] {color:#667085;border-color:var(--home-border);}
.home-categories>button[aria-pressed="true"] {background:var(--home-ink);border-color:var(--home-ink);}
.home-category-icon {display:none;}
.home-product-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px;align-items:start;}
.home-product-card {min-width:0;background:white;border:1px solid var(--home-border);border-radius:18px;overflow:hidden;transition:border-color .2s;}
.home-product-card:hover {border-color:#b4abde;}
.home-product-image {display:block;width:100%;aspect-ratio:1;position:relative;padding:20px;background:#f6f6f8;border:0;cursor:pointer;}
.home-product-image img {width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .25s;}
.home-product-image:hover img {transform:scale(1.035);}
.home-product-image>span {position:absolute;bottom:10px;right:10px;padding:2px 6px;background:#fff;font-size:10px;color:var(--home-muted);border-radius:4px;}
.home-product-info {padding:16px;}
.home-product-name {background:none;border:0;font-size:13px;font-weight:700;line-height:1.7;text-align:start;height:44px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;cursor:pointer;width:100%;}
.home-product-bottom {display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px;border-top:1px solid #f1f1f5;padding-top:12px;}
.home-product-bottom>span {font-size:15px;font-weight:800;white-space:nowrap;}
.home-add {display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:38px;min-height:38px;padding:6px 10px;border-radius:9px;color:var(--home-accent);background:#f2f0fb;font-size:11px;font-weight:700;border:1px solid #e9e5f8;cursor:pointer;line-height:1.4;}
.home-add>span {font-size:20px;line-height:1;}
.home-add:hover {background:#e7e1fb;}
.home-add:disabled {opacity:.5;cursor:not-allowed;}
.home-about {display:flex;align-items:center;justify-content:space-between;gap:32px;margin-block:40px 24px;padding:32px;background:#f0eff6;border-radius:20px;}
.home-about .home-eyebrow {margin-bottom:10px;display:block;}
.home-about h2 {font-size:24px;margin-bottom:8px;font-weight:800;}
.home-about p {font-size:13px;color:var(--home-muted);max-width:600px;line-height:1.8;}
.home-about a {flex-shrink:0;}
.home-footer {display:flex;flex-wrap:wrap;gap:24px;padding-block:20px 36px;font-size:11px;color:var(--home-muted);}
.home-footer>span {margin-inline-start:auto;}
.kai-store-home .home-mobile-dock {display:none!important;top:auto!important;}
@media(min-width:769px) and (max-width:1150px) {
    .kai-store-home .header-container {gap:18px;padding-inline:24px;}
    .kai-store-home .center-menu {gap:16px;}
    .kai-store-home .logo-text {font-size:20px;}
    .home-hero {gap:36px;}
    .home-routine-product {gap:8px;}
    .home-routine-item {padding:16px;}
}
@media(max-width:960px) {.kai-store-home .center-menu {display:none!important;}.home-hero {gap:28px;grid-template-columns:1fr 1fr;}.home-analysis {padding:22px;}.home-score-row {gap:14px;}.home-score-ring {width:100px;min-width:100px;height:100px;}.home-main-actions {flex-direction:column;align-items:stretch;}.home-product-grid {gap:14px;}}
@media(max-width:768px) {
    .kai-store-home .header-container {height:112px;display:grid;grid-template-columns:1fr auto;grid-template-rows:54px 48px;padding:0 20px;gap:0 10px;}
    .kai-store-home .logo-text {font-size:20px;}
    .kai-store-home .right-section {display:contents;}
    .kai-store-home .logo-group {grid-column:1;grid-row:1;}
    .kai-store-home .logo-tagline {display:none;}
    .kai-store-home .search-bar {grid-column:1/-1;grid-row:2;width:100%;min-width:0;}
    .kai-store-home #kai-home-language {position:absolute;inset-inline-end:110px;top:6px;}
    .kai-store-home #kai-language-menu summary {max-width:90px;font-size:11px;}
    .kai-store-home .cart-btn {position:absolute!important;inset-inline-end:62px;top:8px;width:36px;height:36px;min-width:36px;border:0;}
    .kai-store-home .profile-dropdown-container,.kai-store-home .right-section>.user-btn {position:absolute;inset-inline-end:20px;top:8px;}
    .kai-store-home .user-btn {width:36px;height:36px;min-width:36px;border:0;}
    .kai-store-home .profile-dropdown-menu {inset-inline-end:0;right:auto;}
    .home-container {width:calc(100% - 40px);}
    #home-main {padding-top:112px;}
    .home-hero {grid-template-columns:1fr;padding-block:30px 28px;gap:24px;}
    .home-eyebrow {font-size:10px;margin-bottom:12px;}
    .home-welcome {font-size:13px;margin-bottom:10px;}
    .home-intro h1 {font-size:30px;line-height:1.3;margin-bottom:14px;max-width:480px;}
    .home-intro-copy {font-size:14px;line-height:1.75;margin-bottom:20px;max-width:100%;}
    .home-main-actions {display:grid;grid-template-columns:1fr;gap:8px;}
    .home-primary,.home-secondary {font-size:13px;min-height:46px;}
    .home-upload {font-size:12px;}
    .home-weather {margin-top:10px;padding-top:10px;}
    .home-analysis {padding:20px;border-radius:20px;}
    .home-analysis-heading h2 {font-size:14px;}
    .home-score-row {padding-top:16px;gap:24px;}
    .home-score-ring {width:106px;min-width:106px;height:106px;}
    .home-score-ring>span {font-size:34px;}
    .home-empty {min-height:165px;}
    .home-section-heading {align-items:flex-start;gap:12px;margin-bottom:18px;}
    .home-section-heading h2 {font-size:21px;}
    .home-section-heading p {font-size:12px;}
    .home-section-heading>a {font-size:11px;max-width:27%;}
    .home-routines,.home-products {padding-top:24px;}
    .home-routine-grid {grid-template-columns:1fr;gap:10px;}
    .home-routine-item {padding:16px;}
    .home-step {margin-bottom:10px;}
    .home-routine-product img {height:58px;width:58px;}
    .home-routine-actions {gap:12px;justify-content:space-between;}
    .home-routine-actions .home-secondary {font-size:11px;}
    .home-products {margin-top:28px;}
    .home-product-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
    .home-product-card {border-radius:14px;}
    .home-product-image {padding:12px;}
    .home-product-info {padding:12px;}
    .home-product-name {font-size:12px;line-height:1.6;height:39px;}
    .home-product-bottom {gap:4px;margin-top:10px;padding-top:10px;}
    .home-product-bottom>span {font-size:13px;}
    .home-product-info .home-add {min-width:32px;padding:6px;}
    .home-categories {margin-inline-end:-20px;}
    .home-about {flex-direction:column;align-items:flex-start;padding:24px;margin-block:20px;gap:20px;}
    .home-about h2 {font-size:21px;}
    .home-footer {gap:14px;padding-bottom:132px;}
    .home-footer>span {width:100%;margin-inline-start:0;}
    .kai-store-home .home-mobile-dock {display:flex!important;}
}
@media(max-width:380px) {
    .kai-store-home .header-container {padding-inline:14px;}
    .kai-store-home .logo-text {font-size:17px;}
    .kai-store-home #kai-language-menu summary {max-width:68px;font-size:10px;}
    .kai-store-home #kai-home-language {inset-inline-end:94px;}
    .kai-store-home .cart-btn {inset-inline-end:50px;}
    .kai-store-home .profile-dropdown-container,.kai-store-home .right-section>.user-btn {inset-inline-end:14px;}
    .home-container {width:calc(100% - 28px);}
    .home-categories {margin-inline-end:-14px;}
    .home-intro h1 {font-size:27px;}
    .home-product-info {padding:9px;}
    .home-product-bottom>span {font-size:12px;}
}
@media(prefers-reduced-motion:reduce) {.kai-store-home * {animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
.care-context {display:flex;justify-content:space-between;gap:24px;padding:22px 24px;margin-bottom:22px;border:1px solid #dce8e2;border-inline-start:3px solid #326750;border-radius:14px;background:#f5faf7;color:#263c33;}
.care-context p {font-size:14px;line-height:1.7;margin:7px 0;max-width:660px;}
.care-context small {font-size:11px;color:#64746b;}
.care-context>button {align-self:flex-start;flex-shrink:0;}
.care-eyebrow {font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#326750;}
.care-sources,.care-controls,.care-goals {display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.care-sources {margin-top:12px;}
.care-sources>span {font-size:12px;border:1px solid #dce8e2;padding:5px 9px;border-radius:6px;background:white;}
.care-controls {justify-content:space-between;margin:16px 0 22px;}
.care-goals button {border:1px solid #dce2e8;padding:8px 12px;border-radius:8px;font-size:12px;background:white;min-height:40px;}
.care-goals button[aria-pressed=true] {background:#263c33;color:white;border-color:#263c33;}
.care-controls label {font-size:12px;color:#475569;display:flex;gap:7px;align-items:center;min-height:40px;}
.care-evidence {border-top:1px solid #edf1ee;margin-top:12px;padding-top:12px;font-size:12px;line-height:1.6;color:#475569;overflow-wrap:anywhere;}
.care-evidence>span {display:block;font-size:10px;color:#687a70;}
.care-evidence>strong {display:block;color:#326750;font-size:13px;margin:4px 0;}
.care-evidence p {margin:5px 0;}
.care-evidence summary {cursor:pointer;padding:8px 0;color:#263c33;font-weight:700;}
.care-note {font-size:11px;line-height:1.7;color:#64748b;margin:18px 0;max-width:800px;}
.care-more {display:block;margin:24px auto 0;}
.care-choice {margin-top:10px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;color:#475569;font-size:11px;line-height:1.6;}
.care-choice strong {display:block;color:#334155;font-size:12px;}
.care-choice p {margin:5px 0 0;}
.care-choice-intro {margin:0 0 18px;font-size:12px;line-height:1.7;color:#475569;max-width:800px;}
.care-empty {padding:30px;text-align:center;}
.home-channel-warning {margin:0 0 18px;padding:12px 14px;border:1px solid #f3d69b;border-radius:14px;background:#fff8e8;color:#755313;font-size:12px;line-height:1.55;}
.care-goals button:focus-visible,.care-evidence summary:focus-visible {outline:2px solid #326750;outline-offset:3px;}
@media(max-width:640px) {.care-context {flex-direction:column;gap:12px;padding:16px;}.care-context p {font-size:12px;}.care-evidence {font-size:11px;}.care-evidence>strong {font-size:12px;}}
