/* THE INGREDIENT v4 — readability, visual contrast, real products & live reviews */
:root{--v4-ink:#2b2326;--v4-wine:#7b3450;--v4-pink:#d98ca5;--v4-blush:#f5e8ec;--v4-ivory:#fffaf5;--v4-sage:#edf3ef;--v4-butter:#fbf4de;--v4-lilac:#f0edf6;--v4-line:#e1d5d9;--v4-muted:#6e6267;--v4-shadow:0 22px 70px rgba(62,39,48,.09)}
html{font-size:16px}body:not(.adminBody){font-size:16px;color:var(--v4-ink);background:#fff}
/* Main copy is intentionally much larger than v3. Tiny utility text remains compact. */
body:not(.adminBody) main p,body:not(.adminBody) .magFooter p{font-size:clamp(18px,1.28vw,20px)!important;line-height:1.95!important;letter-spacing:.015em}
body:not(.adminBody) main li{font-size:clamp(15px,1.05vw,18px);line-height:1.8}
body:not(.adminBody) main small:not(.rankBadge),body:not(.adminBody) .magHeader small{font-size:clamp(11px,.78vw,13px)!important;line-height:1.55}
body:not(.adminBody) main a,body:not(.adminBody) main button{font-size:clamp(13px,.9vw,15px)}
.magHeader nav a,.headerActions a{font-size:13px!important}.brandLogo small{font-size:10px!important}

/* Top — clear section rhythm */
.magHero{background:linear-gradient(112deg,#fff 0 48%,#f7edf0 48% 100%);border-bottom:1px solid var(--v4-line)}
.magHeroCopy>p{max-width:760px;color:#66575d!important}.magHeroCopy h1{letter-spacing:-.045em}.heroMiniStats span{font-size:13px!important}.heroMiniStats b{font-size:25px!important}.memberNudge{background:#fff;border:1px solid #eadce1;box-shadow:0 14px 35px rgba(90,50,65,.08)}.memberNudge b{font-size:15px}.memberNudge span{font-size:14px!important}
.quickBeautySearch{background:#fff;padding-top:55px;padding-bottom:55px;border-bottom:1px solid var(--v4-line);box-shadow:0 16px 60px rgba(68,43,53,.04)}.quickBeautySearch h2{font-size:clamp(30px,3vw,48px)}.quickBeautySearch input{font-size:16px!important}.quickLinks a{font-size:13px!important}
.matomeSection{background:var(--v4-ivory)!important;padding-top:95px!important;padding-bottom:105px!important;border-top:1px solid #f1e8e3;border-bottom:1px solid #eadfde}.matomeSection:before{content:"01  BEAUTY EDIT";display:block;font-size:12px;letter-spacing:.18em;color:var(--v4-wine);margin-bottom:28px}.matomeTitle{align-items:end}.matomeTitle p{max-width:540px;color:var(--v4-muted)!important}.editorialCard{background:#fff!important;box-shadow:var(--v4-shadow);border:1px solid rgba(216,198,204,.8)!important}.editorialCopy p{color:#665b5f!important}.editorialCopy b{font-size:14px!important}.editorialCopy small{font-size:12px!important}
.concernHub{background:linear-gradient(135deg,#f1e1e6,#f9f1ed 56%,#f0edf7)!important;padding-top:100px!important;padding-bottom:105px!important;border-block:1px solid #e3d4da}.concernHub:before{content:"02  CONCERN NAVIGATOR";display:block;font-size:12px;letter-spacing:.18em;color:var(--v4-wine);margin-bottom:28px}.sectionMagazineHead p{max-width:760px;color:#6e6066!important}.concernTiles a{background:rgba(255,255,255,.86)!important;border:1px solid rgba(255,255,255,.95)!important;box-shadow:0 14px 35px rgba(85,51,64,.07);padding:26px!important}.concernTiles strong{font-size:clamp(22px,2vw,30px)!important}.concernTiles span{font-size:13px!important;color:#735365!important}
.diagnosisMagazine{background:#2b2427!important;color:#fff;border-block:1px solid #1f191b}.diagnosisMagazine:before{content:"03  PERSONAL DIAGNOSIS";position:absolute;z-index:2;left:6vw;top:42px;font-size:11px;letter-spacing:.2em;color:#e8b6c6}.diagnosisMagazine{position:relative;padding-top:90px!important;padding-bottom:90px!important}.diagnosisList>span{color:#e7afc0!important;font-size:12px!important}.diagnosisList h2{color:#fff!important;font-size:clamp(34px,4vw,58px)!important}.diagnosisList>a{border-color:#51454a!important}.diagnosisList>a strong{color:#fff!important;font-size:20px!important}.diagnosisList>a small{color:#c8b9bf!important;font-size:13px!important}.diagnosisList>a>b,.diagnosisList>a>i{color:#e8adc0!important}.diagnosisPhoto{box-shadow:0 30px 80px rgba(0,0,0,.25)}
.trendMagazine{background:var(--v4-sage)!important;border-block:1px solid #d8e3dc}.trendRanks{padding-top:80px!important;padding-bottom:80px!important}.trendHeader p{color:#59645e!important}.trendRanks>a{background:rgba(255,255,255,.72);margin-top:8px;padding:18px 20px!important;border:1px solid rgba(212,225,217,.9)!important;border-radius:12px}.trendRanks>a strong{font-size:18px!important}.trendRanks>a small{font-size:13px!important}
.dupeMagazine{background:linear-gradient(130deg,#30272b,#201a1d)!important;color:#fff!important;border-block:1px solid #171315}.dupeIntro p{color:#d5c8cd!important}.dupeIntro a{font-size:15px!important;color:#f0b9ca!important}.dupeVisualCard{background:#fff!important;color:var(--v4-ink);box-shadow:0 25px 80px rgba(0,0,0,.24)}
.productsMagazine,.resultProductsV3{background:var(--v4-butter)!important;padding-top:95px!important;padding-bottom:105px!important;border-block:1px solid #eee2bd}.productsMagazine:before{content:"05  REAL PRODUCT PICKS";display:block;font-size:12px;letter-spacing:.18em;color:#8b6745;margin-bottom:28px}
.communityFeature{background:var(--v4-lilac)!important;border:1px solid #ddd5e8!important;box-shadow:var(--v4-shadow)}.communityCopy p{color:#665c6f!important}

/* Product cards now show actual product imagery */
.v4Product{background:#fff!important;border:1px solid #e5d9dc!important;box-shadow:0 16px 46px rgba(68,43,51,.08)!important;border-radius:24px!important;overflow:hidden}.realProductVisual{height:330px!important;background:linear-gradient(180deg,#fff,#fbf8f7)!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:28px!important;position:relative}.realProductVisual>img{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 14px 15px rgba(35,27,30,.12));transition:transform .35s ease}.v4Product:hover .realProductVisual>img{transform:scale(1.035)}.officialPhotoBadge{position:absolute;left:18px;bottom:15px;background:rgba(255,255,255,.92);border:1px solid #eadfe2;border-radius:999px;padding:6px 9px;font-size:9px!important;letter-spacing:.11em;color:#8f747e}.productBody{padding:26px!important}.productBody h3{font-size:clamp(23px,2vw,30px)!important;line-height:1.45!important}.productCardLead{font-size:15px!important;line-height:1.8!important;color:#6c6265!important;margin:12px 0 18px!important}.matchRow span,.strength>span,.priceRow a{font-size:13px!important}.matchRow strong{font-size:36px!important}.tagRow span{font-size:12px!important;padding:7px 10px!important}.priceRow b{font-size:19px!important}.productSource{display:block;border-top:1px solid #eee5e7;padding-top:12px;margin-top:13px;color:#8b7c81!important}

/* Product detail */
.productPageV4{background:#fff}.v4ProductHero{background:linear-gradient(115deg,#fff 0 52%,#f3e7eb 52% 100%);min-height:680px;border-bottom:1px solid var(--v4-line)}.realProductHeroPhoto{background:#fff!important;min-height:610px;display:flex;align-items:center;justify-content:center;position:relative;padding:55px}.realProductHeroPhoto img{max-width:85%;max-height:520px;object-fit:contain;filter:drop-shadow(0 24px 25px rgba(43,32,36,.14))}.realProductHeroPhoto>span{position:absolute;left:30px;bottom:25px;font-size:11px;letter-spacing:.15em;color:#87777d}.productHeroInfo h1{font-size:clamp(42px,4.8vw,68px)!important}.productHeroInfo>small{font-size:13px!important}.productStats span{font-size:13px!important}.productStats b{font-size:23px!important}.productOfficialActions{margin-top:25px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.productOfficialActions small{color:#7e7075!important}.v4ContrastSection{background:var(--v4-sage)!important;padding-top:90px!important;padding-bottom:95px!important;border-block:1px solid #d9e5dd}.ingredientLine{background:rgba(255,255,255,.82)!important;border-color:#d9e1dc!important;padding:18px 20px!important}.ingredientLine strong{font-size:18px!important}.ingredientLine span{font-size:15px!important}.ingredientLine em{font-size:11px!important}.productRealReviews{background:#fff8f7;padding:95px clamp(22px,6vw,92px);border-bottom:1px solid var(--v4-line)}.productSourcePolicy{background:#282124;color:#fff;padding:60px clamp(22px,7vw,110px);display:grid;grid-template-columns:.7fr 1.3fr;gap:65px;align-items:start}.productSourcePolicy h2{font-family:var(--v3-serif);font-weight:500;font-size:34px;margin:7px 0}.productSourcePolicy span{font-size:11px;letter-spacing:.18em;color:#e9b1c3}.productSourcePolicy p{color:#d4c6cb!important;margin:0}

/* Real review stream */
.realReviewPanel{margin-top:36px}.reviewMetricTop{display:flex;justify-content:space-between;gap:30px;align-items:end;padding:26px 28px;border-radius:20px;background:#2b2427;color:#fff}.reviewMetricTop>div:first-child{display:grid;grid-template-columns:auto 1fr;gap:3px 13px;align-items:center}.reviewMetricTop>div:first-child small{grid-column:1/3;color:#e3adbd!important;letter-spacing:.15em}.reviewMetricTop>div:first-child strong{font-size:48px;line-height:1}.reviewMetricTop>div:first-child span{font-size:14px}.reviewMetricTop>p{color:#d4c6cb!important;margin:0;max-width:550px}.sentimentMini{display:flex;gap:8px}.sentimentMini span{display:flex;flex-direction:column;border:1px solid #53474c;border-radius:12px;padding:10px 13px;font-size:11px;color:#c9bbc0}.sentimentMini b{font-size:22px;color:#fff}.sentimentMini .positive b{color:#b6e0c5}.sentimentMini .negative b{color:#f2b3bc}.verifiedSnapshots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.verifiedSnapshots article{background:#fff;border:1px solid var(--v4-line);border-radius:18px;padding:24px;box-shadow:0 14px 35px rgba(70,43,53,.05)}.verifiedSnapshots article>div{display:flex;justify-content:space-between;align-items:center}.verifiedSnapshots h3{font-family:var(--v3-serif);font-size:24px;font-weight:500}.verifiedSnapshots>article>strong{font-size:38px;color:var(--v4-wine);margin-right:12px}.verifiedSnapshots>article>strong small{font-size:13px!important}.verifiedSnapshots article>b{font-size:13px}.verifiedSnapshots article p{font-size:15px!important;color:#675c60!important}.verifiedSnapshots a,.liveReviewList a,.crossReviewList a{font-size:13px!important;color:var(--v4-wine);font-weight:700}.sourcePill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;font-size:10px!important;font-style:normal;font-weight:800;letter-spacing:.07em;background:#eee;color:#444}.sourcePill.x{background:#161616;color:#fff}.sourcePill.instagram{background:#f4dfeb;color:#8f3163}.sourcePill.youtube{background:#ffebe9;color:#b22222}.sourcePill.web,.sourcePill.rss{background:#e8f1ec;color:#37604b}.liveReviewList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.liveReviewList article{border:1px solid #eadfe2;background:#fff;border-radius:18px;padding:22px}.reviewSourceLine{display:flex;gap:9px;align-items:center}.reviewSourceLine small{margin-left:auto}.sentimentTag{font-size:9px;font-style:normal;border-radius:999px;padding:4px 7px;background:#eee}.sentimentTag.positive{background:#e3f3e9;color:#33634a}.sentimentTag.negative{background:#f9e3e7;color:#913d50}.liveReviewList article p{font-size:15px!important;line-height:1.85!important;margin:18px 0}.reviewMeta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:11px;color:#887b80}.reviewMeta a{margin-left:auto}.reviewCopyrightNote{font-size:12px!important;color:#8c7d82!important;margin-top:14px}.reviewEmpty{margin-top:18px;padding:36px;border:1px dashed #d9c9ce;border-radius:20px;background:#fff}.reviewEmpty>span{font-size:10px;letter-spacing:.18em;color:var(--v4-wine)}.reviewEmpty h3{font-family:var(--v3-serif);font-size:28px;font-weight:500}.reviewEmpty p{max-width:760px;color:#6b5f64!important}.resultRealVoices{background:linear-gradient(135deg,#f0eaf4,#fff8f5);padding:90px clamp(22px,6vw,92px);border-block:1px solid #ded5e6}.crossReviewList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}.crossReviewList article{background:#fff;border:1px solid #e3dce8;border-radius:18px;padding:23px}.crossReviewList article>div{display:flex;align-items:center;gap:10px}.crossReviewList article p{font-size:15px!important}.resultSnapshots{margin-top:25px}

/* Result and diagnostic readability */
.resultMainCopy>p,.deepTitle p,.lockedResult p,.resultSectionTitle p{font-size:17px!important}.actionCards article>p,.actionCards article div p,.amPmGrid p{font-size:16px!important}.resultTags i{font-size:13px!important}.resultTags b{font-size:14px!important}.ingredientPick p{font-size:15px!important}.ingredientPick strong{font-size:20px!important}.radarLegend span{font-size:13px!important}.radarLegend b{font-size:15px!important}.wizardQuestionV3>p,.questionNote{font-size:17px!important}.optionGridV3 label span,.optionGridV3 label strong{font-size:16px!important}.wizardAsideV3 p{font-size:15px!important}

/* Feature/editorial pages readability */
.featuresHero p,.articleHeroCopy>p,.articleLeadBox p,.articleBody article>section p,.articleCta p{font-size:clamp(16px,1.15vw,19px)!important}.featuresGrid p{font-size:15px!important}.featuresGrid b,.articleBody>aside a{font-size:13px!important}.articleDisclaimer{font-size:12px!important}.searchHeroV3 input{font-size:16px!important}.ingredientHitGrid p{font-size:15px!important}.ingredientHitGrid article>a{font-size:13px!important}

/* Admin additions */
.adminBody{font-size:13px}.adminMain p{font-size:14px;line-height:1.7}.adminSidebar nav a{font-size:12px}.adminTop>div>span,.adminPanelHead span{font-size:9px}.dbStatusBar{display:flex;align-items:center;gap:15px;border-radius:13px;padding:13px 16px;margin-bottom:16px;border:1px solid}.dbStatusBar.isOn{background:#e8f5ed;border-color:#cce5d6}.dbStatusBar.isOff{background:#fff0e8;border-color:#efd8c8}.dbStatusBar b{font-size:9px;letter-spacing:.12em}.dbStatusBar span{font-size:12px}.dbStatusBar a{margin-left:auto;font-size:11px;font-weight:700}.syncLog{display:grid;gap:5px;background:#1f1b1d;color:#d9efdf;border-radius:12px;padding:15px;margin:12px 0}.syncLog code{font-size:11px}.adminCheckLine{display:flex!important;align-items:center!important;gap:10px}.adminCheckLine input{width:auto!important}.rowActions{display:flex;gap:5px}.rowActions form{margin:0}

@media(max-width:900px){body:not(.adminBody) main p,body:not(.adminBody) .magFooter p{font-size:18px!important}.verifiedSnapshots,.liveReviewList,.crossReviewList{grid-template-columns:1fr}.reviewMetricTop{display:block}.sentimentMini{margin-top:18px;overflow:auto}.productSourcePolicy{grid-template-columns:1fr;gap:16px}.v4ProductHero{grid-template-columns:1fr}.realProductHeroPhoto{min-height:420px}.productsMagazine:before,.matomeSection:before,.concernHub:before{margin-left:0}.diagnosisMagazine:before{left:6vw}}
@media(max-width:720px){.matomeSection,.concernHub,.productsMagazine,.productRealReviews,.resultRealVoices{padding-top:65px!important;padding-bottom:70px!important}.diagnosisMagazine{padding-top:75px!important;padding-bottom:60px!important}.realProductVisual{height:290px!important}.productBody{padding:22px!important}.productBody h3{font-size:25px!important}.productCardLead{font-size:16px!important}.reviewMetricTop{padding:22px}.reviewMetricTop>div:first-child strong{font-size:42px}.liveReviewList article p,.crossReviewList article p{font-size:16px!important}.realProductHeroPhoto{padding:35px 20px}.productSourcePolicy{padding:45px 6vw}.productHeroInfo h1{font-size:40px!important}.adminSidebar nav{grid-template-columns:1fr 1fr}.dbStatusBar{align-items:flex-start;flex-wrap:wrap}.dbStatusBar a{margin-left:0;width:100%}}
.homeRealVoice{background:#fff;padding:95px clamp(22px,6vw,92px) 105px;border-block:1px solid var(--v4-line)}.homeRealVoice:before{content:"06  REAL VOICE";display:block;font-size:12px;letter-spacing:.18em;color:var(--v4-wine);margin-bottom:28px}.homeVoiceGrid{margin-top:28px}.homeSnapshots{margin-top:28px}.homeRealVoice .reviewEmpty{background:linear-gradient(135deg,#fff8f6,#f3eef6)}.adminProductThumb{width:72px;height:72px;object-fit:contain;background:#fff;border:1px solid #eee;border-radius:10px;padding:5px}
@media(max-width:720px){.homeRealVoice{padding:65px 6vw 70px}}


/* ===== v4.1 contrast & readability hotfix =====
   Light-background sections must never inherit the white text used by v3 dark themes. */
:root{--v41-text:#2a2326;--v41-body:#51484b;--v41-muted:#6b6164;--v41-line:#d7dfda}

/* Ingredient signal: v4 changed this section from dark to sage, so lock all copy to dark ink. */
.trendMagazine{color:var(--v41-text)!important}
.trendRanks,.trendHeader{color:var(--v41-text)!important}
.trendHeader h2{color:#231f20!important;font-size:clamp(38px,3.8vw,56px)!important;line-height:1.35!important}
.trendHeader p{color:#4f5c56!important;font-size:clamp(18px,1.28vw,20px)!important;line-height:1.95!important;max-width:760px}
.trendRanks>a{color:var(--v41-text)!important;background:rgba(255,255,255,.9)!important;box-shadow:0 12px 30px rgba(57,74,65,.055)}
.trendRanks>a:hover{background:#fff!important;border-color:#c7d6cd!important;transform:translateY(-1px)}
.trendRanks>a strong{color:#272224!important;font-size:20px!important;line-height:1.45!important}
.trendRanks>a small{color:#66716b!important;font-size:14px!important;line-height:1.65!important}
.trendRanks>a>b,.trendRanks>a>span{color:#a84f6e!important;font-weight:700!important}
.trendRanks>a>i{color:#2f3532!important;font-size:20px!important}
.trendHeader>span{color:#b05b76!important;font-size:12px!important}

/* Contrast locks for every light magazine section. */
.matomeSection,.concernHub,.productsMagazine,.homeRealVoice,.quickBeautySearch,.communityFeature,.resultRealVoices,.productRealReviews,.v4ContrastSection{color:var(--v41-text)!important}
.matomeSection h2,.matomeSection h3,.concernHub h2,.concernHub h3,.productsMagazine h2,.productsMagazine h3,.homeRealVoice h2,.homeRealVoice h3,.quickBeautySearch h2,.communityFeature h2,.resultRealVoices h2,.productRealReviews h2,.v4ContrastSection h2{color:var(--v41-text)!important}
.matomeSection p,.concernHub p,.productsMagazine p,.homeRealVoice p,.quickBeautySearch p,.communityFeature p,.resultRealVoices p,.productRealReviews p,.v4ContrastSection p{color:var(--v41-body)!important}

/* Cards and product text on white surfaces. */
.editorialCard,.concernTiles a,.v4Product,.verifiedSnapshots article,.liveReviewList article,.crossReviewList article,.ingredientLine,.reviewEmpty{color:var(--v41-text)!important}
.editorialCard h3,.concernTiles strong,.v4Product h3,.verifiedSnapshots h3,.liveReviewList h3,.crossReviewList h3,.ingredientLine strong,.reviewEmpty h3{color:var(--v41-text)!important}
.editorialCard p,.v4Product p,.verifiedSnapshots p,.liveReviewList p,.crossReviewList p,.reviewEmpty p{color:var(--v41-body)!important}

/* Keep dark sections deliberately high-contrast after the light-section locks above. */
.diagnosisMagazine,.dupeMagazine,.productSourcePolicy,.reviewMetricTop{color:#fff!important}
.diagnosisMagazine h2,.diagnosisMagazine h3,.diagnosisMagazine strong,.dupeMagazine h2,.dupeMagazine h3,.productSourcePolicy h2,.productSourcePolicy h3,.reviewMetricTop h2,.reviewMetricTop h3{color:#fff!important}
.diagnosisMagazine p,.dupeMagazine p,.productSourcePolicy p,.reviewMetricTop p{color:#ddd0d5!important}

/* Long-form copy is intentionally generous for readability. */
.editorialCopy p,.matomeTitle p,.sectionMagazineHead p,.communityCopy p,.reviewEmpty p,.verifiedSnapshots article p,.crossReviewList article p,.liveReviewList article p{font-size:clamp(18px,1.2vw,20px)!important;line-height:1.95!important}
.productCardLead{font-size:17px!important;line-height:1.9!important}

/* Focus and link visibility. */
.trendRanks>a:focus-visible,.concernTiles a:focus-visible,.editorialCard:focus-visible{outline:3px solid #9c4564!important;outline-offset:3px}

@media(max-width:720px){
 .trendHeader h2{font-size:36px!important}
 .trendHeader p,.editorialCopy p,.matomeTitle p,.sectionMagazineHead p,.communityCopy p,.reviewEmpty p,.verifiedSnapshots article p,.crossReviewList article p,.liveReviewList article p{font-size:18px!important}
 .trendRanks>a{grid-template-columns:38px 1fr auto 18px!important;padding:18px 16px!important}
 .trendRanks>a strong{font-size:19px!important}
 .trendRanks>a small{font-size:13px!important}
}
.trendPhoto,.trendPhoto small,.trendPhoto strong{color:#fff!important}


/* ===== V4.2 / 100g ingredient amount visualization ===== */
.cardAmount100{margin:18px 0 4px;padding:14px 15px;border:1px solid rgba(41,76,64,.12);border-radius:14px;background:linear-gradient(135deg,#f4faf6 0%,#fff9f4 100%);display:grid;grid-template-columns:auto 1fr;gap:3px 12px;align-items:center}
.cardAmount100>span{grid-row:1/3;font-size:12px;font-weight:800;letter-spacing:.12em;color:#8a6b72;writing-mode:vertical-rl}
.cardAmount100>b{font-size:17px;line-height:1.4;color:#183b31}
.cardAmount100>small{font-size:12px;color:#7b817e}
.amount100Section{background:linear-gradient(180deg,#f4f8f5 0%,#fffdf9 100%)!important}
.amountPolicy{margin:28px 0 20px;padding:22px 24px;border-radius:18px;background:#183b31;color:white;display:grid;grid-template-columns:auto 1fr;gap:8px 20px;box-shadow:0 16px 42px rgba(23,55,46,.12)}
.amountPolicy b{grid-row:1/3;font-size:13px;letter-spacing:.16em;color:#f4c9d1}
.amountPolicy span{font-size:15px;line-height:1.75;color:rgba(255,255,255,.88)}
.ingredientAmountTable{display:grid;gap:10px}
.ingredientAmountRow{display:grid;grid-template-columns:54px minmax(250px,1.35fr) minmax(190px,.8fr) minmax(180px,.9fr);gap:16px;align-items:center;background:#fff;border:1px solid #e0e6e2;border-radius:18px;padding:18px 20px;box-shadow:0 8px 24px rgba(43,58,51,.04)}
.ingredientAmountRow.key{border-color:#d8b1bc;background:linear-gradient(90deg,#fff 0%,#fff8fa 100%)}
.ingNo{font-size:13px;color:#c47488;letter-spacing:.08em}
.ingIdentity{display:flex;flex-direction:column;gap:5px}
.ingIdentity strong{font-size:20px;line-height:1.35;color:#1d2421}
.ingIdentity span{font-size:14px;color:#6d7772}
.ingAmount{border-left:1px solid #e4e9e6;padding-left:18px;display:grid;gap:3px}
.ingAmount small{font-size:11px;letter-spacing:.12em;color:#929b97;font-weight:800}
.ingAmount strong{font-size:20px;color:#193e32}
.ingAmount em{font-size:11px;font-style:normal;color:#b56c80;font-weight:800}
.ingAmount.unknown strong{color:#8a918e;font-size:16px}
.ingSource{display:flex;flex-direction:column;gap:5px;align-items:flex-start}
.ingSource>a{font-size:13px;font-weight:800;color:#9b586b;text-decoration:none;border-bottom:1px solid rgba(155,88,107,.25)}
.ingSource>span{font-size:13px;color:#939b97}
.ingSource>small{font-size:12px;line-height:1.55;color:#777f7b}
.amountDisclaimer{margin-top:18px;padding:20px 22px;border:1px solid #eadde1;background:#fff8fa;border-radius:16px;display:flex;gap:18px;align-items:flex-start}
.amountDisclaimer>b{font-size:11px;letter-spacing:.14em;color:#bd7083;margin-top:4px}
.amountDisclaimer p{margin:0!important;font-size:15px!important;line-height:1.8!important;color:#595f5c!important}
@media(max-width:900px){.ingredientAmountRow{grid-template-columns:38px 1fr}.ingAmount,.ingSource{grid-column:2;border-left:0;padding-left:0}.ingAmount{border-top:1px solid #edf0ee;padding-top:10px}.amountPolicy{grid-template-columns:1fr}.amountPolicy b{grid-row:auto}.cardAmount100>span{writing-mode:initial;grid-row:auto;grid-column:1/3}}

/* ===== V4.3 catalog / category ranking / safety notices ===== */
.personalDifferenceNotice{margin:28px clamp(22px,6vw,92px);padding:22px 26px;border:1px solid #e8ccd4;border-radius:18px;background:linear-gradient(135deg,#fff7f8 0%,#fffdf8 52%,#f2f7f4 100%);display:grid;grid-template-columns:auto 1fr;gap:8px 18px;box-shadow:0 12px 34px rgba(75,48,57,.055);color:#372d31}
.personalDifferenceNotice b{font-size:11px;letter-spacing:.15em;color:#aa5b72;white-space:nowrap;margin-top:4px}.personalDifferenceNotice p{margin:0!important;font-size:16px!important;line-height:1.85!important;color:#5f5357!important}
.rankingPageV43{background:#fbf8f3;color:#2b2427}.rankingHero{padding:92px clamp(22px,7vw,108px) 70px;background:linear-gradient(125deg,#f7ebe9 0%,#fff9f1 45%,#eaf3ef 100%);border-bottom:1px solid #e7ded8}.rankingHero>span{font-size:12px;letter-spacing:.2em;color:#a6536d;font-weight:800}.rankingHero h1{font-family:serif;font-size:clamp(46px,5vw,78px);line-height:1.2;margin:20px 0 22px;color:#241d20}.rankingHero p{max-width:880px;font-size:19px!important;line-height:1.95!important;color:#5b5054!important}.rankingConcernNav{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.rankingConcernNav a{display:inline-flex;padding:10px 16px;border-radius:999px;border:1px solid #d8cbc7;background:rgba(255,255,255,.72);color:#5f5156;text-decoration:none;font-size:14px;font-weight:700}.rankingConcernNav a.active{background:#281f23;color:#fff;border-color:#281f23}.categoryRanking,.ingredientRankingV43{padding:82px clamp(22px,6vw,92px);border-bottom:1px solid #e7e0da}.categoryRanking:nth-of-type(even){background:#fff}.categoryRanking:nth-of-type(odd){background:#f6f1e9}.ingredientRankingV43{background:#eaf2ed}.ingredientRankingGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}.ingredientRankingGrid>a{display:grid;grid-template-columns:40px 1fr auto;gap:14px;align-items:center;padding:18px 20px;background:#fff;border:1px solid #d7e0da;border-radius:16px;color:#2d2729;text-decoration:none;box-shadow:0 8px 24px rgba(42,62,51,.035)}.ingredientRankingGrid>a:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(42,62,51,.08)}.ingredientRankingGrid>a>b{color:#b56a7f;font-size:12px}.ingredientRankingGrid strong{display:block;font-size:18px;line-height:1.35}.ingredientRankingGrid small{display:block;margin-top:4px;color:#77706f;font-size:12px;line-height:1.5}.ingredientRankingGrid em{font-style:normal;color:#315f50;font-size:12px;font-weight:800;white-space:nowrap}.rankingPolicy{margin:60px clamp(22px,6vw,92px) 90px;padding:28px 32px;background:#282124;color:#fff;border-radius:20px}.rankingPolicy b{display:block;color:#f2c1cd;letter-spacing:.12em;font-size:12px;margin-bottom:10px}.rankingPolicy p{margin:0!important;color:#e6dfe1!important;font-size:16px!important;line-height:1.9!important}
.resultCategoryPicks{padding:64px 0}.resultCategoryBlock{margin:0 0 55px}.resultCategoryHead{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;border-bottom:1px solid #ded7d4;padding-bottom:16px}.resultCategoryHead span{font-size:11px;letter-spacing:.18em;color:#a85870}.resultCategoryHead h3{margin:4px 0 0;font-size:30px;color:#2a2225}.resultCategoryHead p{max-width:520px;margin:0!important;font-size:15px!important;color:#71676a!important}.routineCompatibility{padding:70px clamp(22px,6vw,92px);background:linear-gradient(140deg,#272124 0%,#3a2d33 100%);color:#fff}.routineCompatibility .sectionMagazineHead h2,.routineCompatibility .sectionMagazineHead p{color:#fff!important}.routineSetGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}.routineSetCard{background:#fff;color:#2d2428;border-radius:20px;padding:25px;box-shadow:0 18px 50px rgba(0,0,0,.14)}.routineSetCard h3{font-size:24px;margin:0 0 16px;color:#2c2427}.routineSetProducts{display:grid;gap:10px}.routineSetProducts a{display:flex;justify-content:space-between;gap:10px;padding:12px;border-radius:12px;background:#f8f4f2;text-decoration:none;color:#41363a}.routineSetProducts a span{font-size:12px;color:#a85e74}.routineScore{display:flex;align-items:center;gap:12px;margin-top:18px}.routineScore strong{font-size:32px;color:#2e6655}.routineScore small{color:#756b6e}.routineNotes{margin-top:14px;padding-top:14px;border-top:1px solid #eee3e6}.routineNotes p{font-size:14px!important;line-height:1.7!important;color:#655a5e!important;margin:6px 0!important}.catalogSyncPanel .rowActions{display:flex;flex-wrap:wrap;gap:10px}.catalogSyncPanel button{min-height:42px}.sectionTextLink{display:inline-flex;margin-top:20px;font-weight:800;color:#8e4960;text-decoration:none;border-bottom:1px solid rgba(142,73,96,.3)}
@media(max-width:980px){.ingredientRankingGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.routineSetGrid{grid-template-columns:1fr}}
@media(max-width:720px){.personalDifferenceNotice{margin:18px 6vw;padding:18px;grid-template-columns:1fr}.rankingHero{padding:58px 6vw 48px}.rankingHero h1{font-size:42px}.rankingHero p{font-size:17px!important}.categoryRanking,.ingredientRankingV43{padding:58px 6vw}.ingredientRankingGrid{grid-template-columns:1fr}.ingredientRankingGrid>a{grid-template-columns:34px 1fr auto;padding:16px}.resultCategoryHead{display:block}.resultCategoryHead p{margin-top:10px!important}.routineCompatibility{padding:58px 6vw}.rankingPolicy{margin:45px 6vw 70px;padding:22px}.personalDifferenceNotice p{font-size:15px!important}}
.routineSetTop{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.routineSetTop>span{font-size:12px;letter-spacing:.14em;color:#a35a70;font-weight:800}.routineSetTop>strong{font-size:34px;line-height:1;color:#2e6655}.routineSetTop>strong small{font-size:11px;color:#847a7d}.routineSteps{display:grid;gap:9px;margin-bottom:16px}.routineSteps>div{display:grid;grid-template-columns:90px 1fr;gap:3px 10px;padding:12px 14px;background:#f8f4f2;border-radius:12px}.routineSteps b{grid-row:1/3;font-size:11px;color:#a15a6e;align-self:center}.routineSteps span{font-size:11px;color:#81777a}.routineSteps strong{font-size:15px;color:#332b2e}.comboGood,.comboCaution{font-size:14px!important;line-height:1.65!important;margin:7px 0!important}.comboGood{color:#346b59!important}.comboCaution{color:#a65b4f!important}.comboFootnote{max-width:900px;margin:24px auto 0!important;text-align:center;color:#ded2d6!important;font-size:14px!important;line-height:1.8!important}

/* V4.5 official catalog sync */
.catalogQualityGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.catalogQualityGrid>div{background:#fff;border:1px solid rgba(67,54,54,.12);border-radius:18px;padding:18px}.catalogQualityGrid b{display:block;font-size:24px;color:#2c2526}.catalogQualityGrid span{display:block;margin-top:5px;color:#716768}.catalogLogs{margin:18px 0;padding:16px;border-radius:16px;background:#f7f4f1;max-height:280px;overflow:auto}.catalogLogs div{padding:7px 0;border-bottom:1px solid rgba(0,0,0,.05);font-size:14px}.adminHint{font-size:14px;line-height:1.8;color:#716768}.productMetaMini{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.productMetaMini span{font-size:12px;font-weight:700;padding:5px 9px;border-radius:999px;background:#f5f0ec;color:#6f5c61}.productVerification{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:14px 0;padding:12px 14px;background:#f8f5f1;border-radius:14px}.productVerification b{font-size:13px;letter-spacing:.06em}.productVerification span{font-size:13px;color:#756c6d}@media(max-width:780px){.catalogQualityGrid{grid-template-columns:1fr 1fr}.catalogQualityGrid b{font-size:20px}}
