/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/6c177e25b87fd9cd-s.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/6c9a125e97d835e1-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/4c285fdca692ea22-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/034d78ad42e9620c-s.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/fe0777f1195381cb-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/eafabf029ad39a43-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/db911767852bc875-s.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/f10b8e9d91f3edcb-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/8888a3826f4a3af4-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/29e7bbdce9332268-s.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/c3bc380753a8436c-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/0484562807a97172-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/29a4aea02fdee119-s.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/a1386beebedccca4-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/b957ea75a84b6ea7-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Poppins Fallback';src: local("Arial");ascent-override: 93.62%;descent-override: 31.21%;line-gap-override: 8.92%;size-adjust: 112.16%
}.__className_a1e0b2 {font-family: 'Poppins', 'Poppins Fallback';font-style: normal
}.__variable_a1e0b2 {--font-poppins: 'Poppins', 'Poppins Fallback'
}

/* arabic */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b261c59b2d76913d-s.p.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* math */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/140e5638e63f96c7-s.woff2) format('woff2');
  unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/8a6e4d7cd15e805a-s.woff2) format('woff2');
  unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* latin-ext */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/4b23ab4cc10b07bc-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b8c807255d58fc43-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* arabic */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b261c59b2d76913d-s.p.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* math */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/140e5638e63f96c7-s.woff2) format('woff2');
  unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/8a6e4d7cd15e805a-s.woff2) format('woff2');
  unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* latin-ext */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/4b23ab4cc10b07bc-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b8c807255d58fc43-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* arabic */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b261c59b2d76913d-s.p.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* math */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/140e5638e63f96c7-s.woff2) format('woff2');
  unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/8a6e4d7cd15e805a-s.woff2) format('woff2');
  unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* latin-ext */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/4b23ab4cc10b07bc-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b8c807255d58fc43-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* arabic */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b261c59b2d76913d-s.p.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* math */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/140e5638e63f96c7-s.woff2) format('woff2');
  unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/8a6e4d7cd15e805a-s.woff2) format('woff2');
  unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* latin-ext */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/4b23ab4cc10b07bc-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Noto Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b8c807255d58fc43-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Noto Sans Arabic Fallback';src: local("Arial");ascent-override: 113.22%;descent-override: 60.81%;line-gap-override: 0.00%;size-adjust: 121.35%
}.__className_7a0f81 {font-family: 'Noto Sans Arabic', 'Noto Sans Arabic Fallback';font-style: normal
}.__variable_7a0f81 {--font-noto-sans-arabic: 'Noto Sans Arabic', 'Noto Sans Arabic Fallback'
}

/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/7b19b489dc6743ba-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/28793f5c5e3d822d-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/c9c3823090ec8b55-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b3bf17a9041d9433-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/2801417b65625cf5-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/7b19b489dc6743ba-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/28793f5c5e3d822d-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/c9c3823090ec8b55-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b3bf17a9041d9433-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/2801417b65625cf5-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/7b19b489dc6743ba-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/28793f5c5e3d822d-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/c9c3823090ec8b55-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b3bf17a9041d9433-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/2801417b65625cf5-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/7b19b489dc6743ba-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/28793f5c5e3d822d-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/c9c3823090ec8b55-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b3bf17a9041d9433-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/2801417b65625cf5-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'IBM Plex Sans Fallback';src: local("Arial");ascent-override: 101.32%;descent-override: 27.18%;line-gap-override: 0.00%;size-adjust: 101.17%
}.__className_f04d51 {font-family: 'IBM Plex Sans', 'IBM Plex Sans Fallback';font-style: normal
}.__variable_f04d51 {--font-ibm-plex-sans: 'IBM Plex Sans', 'IBM Plex Sans Fallback'
}

/* arabic */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/9da48a48bf6500f8-s.p.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/9efac92d680e57b6-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/1323037a3e4ea9e8-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/17efc7caebbb6a73-s.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* arabic */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/f022b1629605b85c-s.p.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/18d6d756b83deaa1-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/101eb3c626c8a0e0-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/b729ad8c86c7d641-s.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* arabic */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/e4efb0298547fad0-s.p.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/c3d28d0a4af5320e-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/b096b166d47a2e73-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/79d9077e4fd7eddc-s.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* arabic */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/fb66eb17bf011c3b-s.p.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/3abc2a74bccacda0-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/20e170e88a69dd27-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/99dc19e540dbb87b-s.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'IBM Plex Sans Arabic Fallback';src: local("Arial");ascent-override: 107.25%;descent-override: 41.02%;line-gap-override: 0.00%;size-adjust: 101.17%
}.__className_92a6d2 {font-family: 'IBM Plex Sans Arabic', 'IBM Plex Sans Arabic Fallback';font-style: normal
}.__variable_92a6d2 {--font-ibm-plex-arabic: 'IBM Plex Sans Arabic', 'IBM Plex Sans Arabic Fallback'
}

/* vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/e1aab0933260df4d-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/b7387a63dd068245-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/36966cca54120369-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/e1aab0933260df4d-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/b7387a63dd068245-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/36966cca54120369-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/e1aab0933260df4d-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/b7387a63dd068245-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/36966cca54120369-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Space Grotesk Fallback';src: local("Arial");ascent-override: 89.71%;descent-override: 26.62%;line-gap-override: 0.00%;size-adjust: 109.69%
}.__className_7394d9 {font-family: 'Space Grotesk', 'Space Grotesk Fallback';font-style: normal
}.__variable_7394d9 {--font-space-grotesk: 'Space Grotesk', 'Space Grotesk Fallback'
}

/* cyrillic-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/f11ffaf03a80bc19-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/b818b0ea116ed117-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/ed89fb4fc238c6bf-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/e115bc1b6e48400d-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/fc9d3723ce3bfccb-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/597b6a5d799c44de-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/f11ffaf03a80bc19-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/b818b0ea116ed117-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/ed89fb4fc238c6bf-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/e115bc1b6e48400d-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/fc9d3723ce3bfccb-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/597b6a5d799c44de-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/f11ffaf03a80bc19-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/b818b0ea116ed117-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/ed89fb4fc238c6bf-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/e115bc1b6e48400d-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/fc9d3723ce3bfccb-s.p.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/597b6a5d799c44de-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Source Serif 4 Fallback';src: local("Times New Roman");ascent-override: 87.87%;descent-override: 28.41%;line-gap-override: 0.00%;size-adjust: 117.91%
}.__className_e427e5 {font-family: 'Source Serif 4', 'Source Serif 4 Fallback';font-style: normal
}.__variable_e427e5 {--font-source-serif: 'Source Serif 4', 'Source Serif 4 Fallback'
}


.ch-boot-splash {
  box-sizing: border-box;
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  margin: 0;
  padding: max(24px, env(safe-area-inset-top, 0px)) max(24px, env(safe-area-inset-right, 0px))
    max(24px, env(safe-area-inset-bottom, 0px)) max(24px, env(safe-area-inset-left, 0px));
  text-align: center;
  font-family: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, -apple-system, sans-serif;
  color: #ffffff;
  background: linear-gradient(145deg, #0F6CBD 0%, #0d5da3 42%, #0F172A 100%);
  opacity: 1;
  transition: opacity 0.28s ease;
  pointer-events: all;
}
.ch-boot-splash[hidden] {
  display: none !important;
}
.ch-boot-splash--exit {
  opacity: 0;
  pointer-events: none;
}
.ch-boot-splash__inner {
  display: grid;
  place-items: center;
  grid-gap: 18px;
  gap: 18px;
}
.ch-boot-splash__icon {
  display: block;
  width: 96px;
  height: 96px;
  border-radius: 26px;
  object-fit: cover;
  box-shadow: 0 16px 40px rgba(0, 18, 36, 0.28);
}
.ch-boot-splash__mark {
  display: block;
  width: min(220px, 64vw);
  height: auto;
  max-height: 56px;
  object-fit: contain;
  border-radius: 0;
  filter: drop-shadow(0 2px 8px rgba(0, 18, 36, 0.18));
}
.ch-boot-splash__orb {
  width: 40px;
  height: 40px;
}
.ch-boot-splash__spinner {
  width: 100%;
  height: 100%;
  display: block;
  animation: ch-boot-rotate 0.9s linear infinite;
  transform-origin: 50% 50%;
}
.ch-boot-splash__track {
  fill: none;
  stroke: rgba(255, 255, 255, 0.28);
  stroke-width: 3.25;
}
.ch-boot-splash__arc {
  fill: none;
  stroke: #ffffff;
  stroke-width: 3.25;
  stroke-linecap: round;
  stroke-dasharray: 28 72;
  animation: ch-boot-dash 1.15s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
  transform-origin: 50% 50%;
}
.ch-boot-splash__label {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
  opacity: 1;
}
@keyframes ch-boot-rotate {
  to { transform: rotate(360deg); }
}
@keyframes ch-boot-dash {
  0% { stroke-dasharray: 8 92; stroke-dashoffset: 0; }
  50% { stroke-dasharray: 42 58; stroke-dashoffset: -18; }
  100% { stroke-dasharray: 8 92; stroke-dashoffset: -100; }
}
@media (prefers-reduced-motion: reduce) {
  .ch-boot-splash__spinner,
  .ch-boot-splash__arc { animation: none; }
  .ch-boot-splash__arc { stroke-dasharray: 40 60; }
  .ch-boot-splash { transition: none; }
}

.ec-app-loading,
.auth-callback {
  box-sizing: border-box;
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  place-items: center;
  padding: max(24px, env(safe-area-inset-top, 0px)) max(24px, env(safe-area-inset-right, 0px))
    max(24px, env(safe-area-inset-bottom, 0px)) max(24px, env(safe-area-inset-left, 0px));
  text-align: center;
  font-family: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, -apple-system, sans-serif;
  background: #ffffff;
  color: #0F172A;
}
.med-loader {
  --med-ink: #0F172A;
  --med-accent: #0F6CBD;
  display: grid;
  place-items: center;
  grid-gap: 28px;
  gap: 28px;
  text-align: center;
}
.med-loader__mark {
  display: block;
  width: min(240px, 72vw);
  height: auto;
  max-height: 64px;
  object-fit: contain;
  border-radius: 0;
}
.med-loader__orb {
  width: 40px;
  height: 40px;
}
.med-loader__spinner {
  width: 100%;
  height: 100%;
  display: block;
  animation: med-spinner-rotate 0.9s linear infinite;
  transform-origin: 50% 50%;
}
.med-loader__track {
  fill: none;
  stroke: rgba(3, 96, 241, 0.14);
  stroke-width: 3.25;
}
.med-loader__arc {
  fill: none;
  stroke: #0360f1;
  stroke-width: 3.25;
  stroke-linecap: round;
  stroke-dasharray: 28 72;
  animation: med-spinner-dash 1.15s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
  transform-origin: 50% 50%;
}
.med-loader__label {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0c1a2e;
  opacity: 0.55;
}
@keyframes med-spinner-rotate {
  to { transform: rotate(360deg); }
}
@keyframes med-spinner-dash {
  0% { stroke-dasharray: 8 92; stroke-dashoffset: 0; }
  50% { stroke-dasharray: 42 58; stroke-dashoffset: -18; }
  100% { stroke-dasharray: 8 92; stroke-dashoffset: -100; }
}
@media (prefers-reduced-motion: reduce) {
  .med-loader__spinner,
  .med-loader__arc { animation: none; }
  .med-loader__arc { stroke-dasharray: 40 60; }
}


/* Static SEO landing — visible to crawlers / no-JS; hidden after SPA boot. */

.care-ssg {
  position: relative;
  z-index: 0;
  min-height: 40vh;
  padding: 28px 20px 48px;
  background:
    linear-gradient(180deg, #f4f8ff 0%, #ffffff 48%);
  color: #0F172A;
  font-family: var(--font-inter, 'Inter'), "Segoe UI", sans-serif;
}

.care-ssg__inner {
  max-width: 720px;
  margin: 0 auto;
}

.care-ssg__brand {
  margin: 0 0 18px;
  font-family: var(--font-sora, 'Sora'), sans-serif;
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.care-ssg__brand a {
  color: #0F6CBD;
  text-decoration: none;
}

.care-ssg__title {
  margin: 0 0 12px;
  font-family: var(--font-sora, 'Sora'), sans-serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  line-height: 1.15;
  letter-spacing: -0.03em;
  font-weight: 600;
}

.care-ssg__lead {
  margin: 0 0 20px;
  font-size: 1.05rem;
  line-height: 1.5;
  color: #475569;
}

.care-ssg__ar {
  margin: 0 0 22px;
  padding: 14px 16px;
  border-radius: 14px;
  background: rgba(0, 102, 255, 0.05);
  border: 1px solid rgba(0, 102, 255, 0.12);
  font-family: "IBM Plex Sans Arabic", "Noto Sans Arabic", "Segoe UI", sans-serif;
}

.care-ssg__title-ar {
  margin: 0 0 8px;
  font-size: 1.2rem;
  font-weight: 700;
}

.care-ssg__lead-ar {
  margin: 0;
  color: #475569;
  line-height: 1.5;
}

.care-ssg__nav-title {
  margin: 0 0 10px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}

.care-ssg__links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-ssg__links a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid #e2e8f0;
  background: #fff;
  color: #0b1f3a;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 600;
}

.care-ssg__links a:hover {
  border-color: rgba(0, 102, 255, 0.35);
  color: #0066ff;
}

.care-ssg__cta {
  margin: 24px 0 0;
}

.care-ssg__cta a {
  color: #0066ff;
  font-weight: 700;
}

html.is-spa-ready .care-ssg,
html.is-spa-ready #care-ssg-shell {
  display: none !important;
}


/* Native practice splash — medical blue, then CareOS splash continues the same beat. */

.ch-practice-splash {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: max(24px, env(safe-area-inset-top, 0px)) max(24px, env(safe-area-inset-right, 0px))
    max(24px, env(safe-area-inset-bottom, 0px)) max(24px, env(safe-area-inset-left, 0px));
  background: linear-gradient(145deg, #2563eb 0%, #2563eb 42%, #1e3a5f 100%);
  color: #fff;
  opacity: 1;
  transition: opacity 0.28s ease;
  pointer-events: all;
}

.ch-practice-splash.is-exiting {
  opacity: 0;
  pointer-events: none;
}

.ch-practice-splash__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  max-width: min(86vw, 360px);
  text-align: center;
  animation: ch-practice-splash-in 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.ch-practice-splash__logo {
  display: block;
  width: min(220px, 68vw);
  height: auto;
  max-height: 96px;
  object-fit: contain;
  border-radius: 20px;
  background: #fff;
  padding: 16px 20px;
  box-shadow: 0 16px 40px rgba(0, 18, 36, 0.22);
}

.ch-practice-splash__mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  border-radius: 26px;
  background: #fff;
  border: 0;
  font-family: var(--ec-font-display, 'Sora', sans-serif);
  font-size: 2.4rem;
  font-weight: 800;
  color: #2563eb;
  box-shadow: 0 16px 40px rgba(0, 18, 36, 0.22);
}

.ch-practice-splash__name {
  margin: 4px 0 0;
  font-family: var(--ec-font-display, 'Sora', sans-serif);
  font-size: clamp(1.35rem, 5.5vw, 1.75rem);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.03em;
  color: #fff;
  text-wrap: balance;
}

.ch-practice-splash__orb {
  width: 36px;
  height: 36px;
  margin-top: 8px;
}

.ch-practice-splash__spinner {
  width: 100%;
  height: 100%;
  display: block;
  animation: ch-practice-splash-rotate 0.9s linear infinite;
  transform-origin: 50% 50%;
}

.ch-practice-splash__track {
  fill: none;
  stroke: rgba(255, 255, 255, 0.28);
  stroke-width: 3.25;
}

.ch-practice-splash__arc {
  fill: none;
  stroke: #fff;
  stroke-width: 3.25;
  stroke-linecap: round;
  stroke-dasharray: 28 72;
  animation: ch-practice-splash-dash 1.15s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
  transform-origin: 50% 50%;
}

.ch-practice-splash__caption {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}

@keyframes ch-practice-splash-in {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes ch-practice-splash-rotate {
  to {
    transform: rotate(360deg);
  }
}

@keyframes ch-practice-splash-dash {
  0% {
    stroke-dasharray: 8 92;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 42 58;
    stroke-dashoffset: -18;
  }
  100% {
    stroke-dasharray: 8 92;
    stroke-dashoffset: -100;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ch-practice-splash,
  .ch-practice-splash__inner,
  .ch-practice-splash__spinner,
  .ch-practice-splash__arc {
    animation: none;
    transition: none;
  }

  .ch-practice-splash__arc {
    stroke-dasharray: 40 60;
  }
}

.med-loader {
  --med-ink: var(--ec-platform-ink, #0c1a2e);
  --med-accent: var(--ec-platform-blue, #0360f1);
  --med-track: color-mix(in srgb, var(--med-accent) 14%, transparent);
  display: grid;
  place-items: center;
  grid-gap: 18px;
  gap: 18px;
  padding: 28px 16px;
  text-align: center;
}

.med-loader--compact {
  padding: 12px 8px;
  gap: 10px;
}

.med-loader--splash {
  gap: 16px;
  padding: 0;
}

.med-loader__icon {
  display: block;
  width: 96px;
  height: 96px;
  border-radius: 26px;
  object-fit: cover;
  box-shadow: 0 16px 40px rgba(0, 18, 36, 0.22);
}

.med-loader__mark {
  display: block;
  width: min(240px, 72vw);
  height: auto;
  max-height: 64px;
  object-fit: contain;
  border-radius: 0;
}

.med-loader__mark--light {
  display: none;
}

.med-loader__orb {
  position: relative;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
}

.med-loader--compact .med-loader__orb {
  width: 32px;
  height: 32px;
}

.med-loader--splash .med-loader__orb {
  width: 40px;
  height: 40px;
}

.med-loader__spinner {
  width: 100%;
  height: 100%;
  display: block;
  animation: med-spinner-rotate 0.9s linear infinite;
  transform-origin: 50% 50%;
}

.med-loader__track {
  fill: none;
  stroke: var(--med-track);
  stroke-width: 3.25;
}

.med-loader__arc {
  fill: none;
  stroke: var(--med-accent);
  stroke-width: 3.25;
  stroke-linecap: round;
  stroke-dasharray: 28 72;
  stroke-dashoffset: 0;
  animation: med-spinner-dash 1.15s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
  transform-origin: 50% 50%;
}

.med-loader--compact .med-loader__track,
.med-loader--compact .med-loader__arc {
  stroke-width: 3.5;
}

.med-loader__label {
  margin: 0;
  max-width: 16rem;
  font-family: var(--ec-font-display, 'Inter', system-ui, sans-serif);
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--med-ink);
  opacity: 0.72;
}

.med-loader--splash .med-loader__label {
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.55;
}

@keyframes med-spinner-rotate {
  to {
    transform: rotate(360deg);
  }
}

@keyframes med-spinner-dash {
  0% {
    stroke-dasharray: 8 92;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 42 58;
    stroke-dashoffset: -18;
  }
  100% {
    stroke-dasharray: 8 92;
    stroke-dashoffset: -100;
  }
}

@media (prefers-reduced-motion: reduce) {
  .med-loader__spinner,
  .med-loader__arc {
    animation: none;
  }

  .med-loader__arc {
    stroke-dasharray: 40 60;
    stroke-dashoffset: 0;
  }
}


.cust-error-page {
  min-height: 100dvh;
  display: grid;
  place-items: center;
  padding:
    calc(24px + env(safe-area-inset-top, 0px))
    max(20px, env(safe-area-inset-right, 0px))
    calc(24px + env(safe-area-inset-bottom, 0px))
    max(20px, env(safe-area-inset-left, 0px));
  background: #fff;
  animation: cust-error-page-in 0.45s ease both;
}

.cust-error-page--embedded {
  min-height: min(72vh, 640px);
  width: 100%;
  padding: 28px 16px;
  border-radius: 18px;
  animation: none;
}

@keyframes cust-error-page-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes cust-error-card-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes cust-error-mark-pulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.55;
  }
  50% {
    transform: scale(1.08);
    opacity: 0.9;
  }
}

.cust-error {
  position: relative;
  width: min(440px, 100%);
  padding: 32px 24px 26px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid #e2e8f0;
  box-shadow: 0 12px 32px rgba(11, 31, 58, 0.08);
  text-align: center;
  overflow: hidden;
  animation: cust-error-card-in 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.cust-error--compact {
  width: 100%;
  margin: 12px 0;
  padding: 20px 16px;
  box-shadow: none;
  animation: none;
}

.cust-error__glow {
  position: absolute;
  inset: -40% auto auto 30%;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 102, 255, 0.18), transparent 70%);
  pointer-events: none;
}

.cust-error__art {
  margin: 0 auto 10px;
  display: flex;
  justify-content: center;
}

.cust-error__art .care-scene-art {
  width: 168px;
  height: 168px;
  object-fit: contain;
  display: block;
}

.cust-error--compact .cust-error__art .care-scene-art {
  width: 120px;
  height: 120px;
}

.cust-error__mark {
  position: relative;
  width: 56px;
  height: 56px;
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
}

.cust-error__mark-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid rgba(0, 102, 255, 0.2);
  animation: cust-error-mark-pulse 2.4s ease-in-out infinite;
}

.cust-error__mark-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #0066ff;
  box-shadow: 0 0 0 6px rgba(0, 102, 255, 0.1);
}

.cust-error__brand {
  margin: 0 0 10px;
  font-family:'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 700;
  color: #0066ff;
}

.cust-error__brand-logo {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  max-width: 200px;
  text-transform: none;
  letter-spacing: 0;
}

.cust-error__brand-logo .care-v2-brand-logo__mark {
  max-height: 36px;
  border-radius: 10px;
}

.cust-error__brand-logo .care-v2-brand-logo__word {
  max-height: 32px;
}

.cust-error__title {
  margin: 0;
  font-family:'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif;
  font-size: clamp(1.25rem, 2.5vw, 1.55rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #0b1f3a;
  line-height: 1.25;
}

.cust-error__body {
  margin: 10px 0 0;
  font-family:'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif;
  font-size: 0.95rem;
  line-height: 1.5;
  color: #64748b;
}

.cust-error__actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 22px;
}

.cust-error__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 20px;
  border-radius: 999px;
  font-family:'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif;
  font-weight: 700;
  font-size: 0.95rem;
  letter-spacing: -0.01em;
  text-decoration: none;
  border: 1.5px solid transparent;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    color 0.15s ease,
    opacity 0.15s ease;
}

.cust-error__btn--solid {
  background: #0066ff;
  color: #fff;
  box-shadow: 0 8px 20px rgba(0, 102, 255, 0.28);
}

.cust-error__btn--solid:hover:not(:disabled) {
  background: #0052cc;
  box-shadow: 0 10px 24px rgba(0, 102, 255, 0.34);
}

.cust-error__btn--solid:disabled {
  opacity: 0.72;
  cursor: wait;
  box-shadow: none;
}

.cust-error__btn--ghost {
  background: #fff;
  color: #0b1f3a;
  border-color: #e2e8f0;
  box-shadow: 0 2px 8px rgba(11, 31, 58, 0.04);
}

.cust-error__btn--ghost:hover:not(:disabled) {
  background: #ebf5ff;
  border-color: color-mix(in srgb, #0066ff 28%, #e2e8f0);
  color: #0066ff;
}

/* Avoid transform/scale on press — that shifts layout and feels like a jerk on mobile. */
.cust-error__btn:active {
  transform: none;
}

.cust-error.is-retrying {
  opacity: 0.96;
}

.cust-offline-banner {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 60;
  padding: 8px 14px;
  text-align: center;
  font-family:'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif;
  font-size: 0.82rem;
  font-weight: 600;
  color: #0b1f3a;
  background: #ebf5ff;
  border-bottom: 1px solid color-mix(in srgb, #0066ff 18%, #e2e8f0);
}

@media (prefers-reduced-motion: reduce) {
  .cust-error-page,
  .cust-error,
  .cust-error__mark-ring {
    animation: none;
  }
}

.public-print {
  --pp-ink: var(--ec-platform-ink, #0c1a2e);
  --pp-blue: var(--ec-platform-blue, #0360f1);
  --pp-blue-hover: var(--ec-platform-blue-hover, #0250d4);
  --pp-muted: var(--ec-platform-muted, #64748b);
  --pp-line: var(--ec-platform-line, #e8edf3);
  --pp-font: var(--ec-font, 'Inter', system-ui, sans-serif);
  --pp-display: var(--ec-font-display, 'Sora', system-ui, sans-serif);

  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px 20px;
  font-family: var(--pp-font);
  color: var(--pp-ink);
  box-sizing: border-box;
}

.public-print__bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 50% at 10% -10%, rgba(3, 96, 241, 0.14), transparent 55%),
    radial-gradient(ellipse 70% 45% at 100% 0%, rgba(7, 40, 84, 0.1), transparent 50%),
    linear-gradient(165deg, #f7fafc 0%, #eef3f9 48%, #f8fafc 100%);
  z-index: 0;
}

.public-print__card {
  position: relative;
  z-index: 1;
  width: min(440px, 100%);
  background: #fff;
  border: 1px solid var(--pp-line);
  border-radius: 16px;
  box-shadow: 0 18px 48px rgba(12, 26, 46, 0.08);
  padding: 28px 28px 22px;
  animation: public-print-in 0.45s ease-out both;
}

@keyframes public-print-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

.public-print__brand {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 20px;
}

.public-print__mark {
  font-family: var(--pp-display);
  font-weight: 700;
  font-size: 1.15rem;
  letter-spacing: -0.02em;
  color: var(--pp-ink);
}

.public-print__kind {
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--pp-blue);
}

.public-print__title {
  margin: 0 0 14px;
  font-family: var(--pp-display);
  font-size: 1.45rem;
  font-weight: 650;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.public-print__meta {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: 6px 14px;
  gap: 6px 14px;
  margin: 0 0 16px;
  font-size: 0.92rem;
}

.public-print__meta dt {
  margin: 0;
  color: var(--pp-muted);
  font-weight: 500;
}

.public-print__meta dd {
  margin: 0;
  font-weight: 600;
}

.public-print__hint {
  margin: 0 0 20px;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--pp-muted);
}

.public-print__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.public-print__btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  cursor: pointer;
  font-family: inherit;
  font-size: 0.92rem;
  font-weight: 600;
  border-radius: var(--ec-platform-btn-radius, 10px);
  padding: 11px 18px;
  transition: background 0.15s ease, box-shadow 0.15s ease, transform 0.12s ease;
}

.public-print__btn:disabled {
  opacity: 0.65;
  cursor: wait;
}

.public-print__btn--primary {
  background: var(--pp-blue);
  color: #fff;
  box-shadow: var(--ec-platform-btn-shadow, 0 4px 12px rgba(3, 96, 241, 0.22));
}

.public-print__btn--primary:hover:not(:disabled) {
  background: var(--pp-blue-hover);
  transform: translateY(-1px);
}

.public-print__btn--ghost {
  background: transparent;
  color: var(--pp-ink);
  border: 1px solid var(--pp-line);
}

.public-print__btn--ghost:hover:not(:disabled) {
  background: #f8fafc;
}

.public-print__muted {
  margin: 8px 0 0;
  color: var(--pp-muted);
  font-size: 0.95rem;
}

.public-print__error {
  margin: 8px 0 16px;
  padding: 12px 14px;
  border-radius: 10px;
  background: #fef2f2;
  color: #b91c1c;
  font-size: 0.9rem;
  line-height: 1.4;
}

.public-print__foot {
  margin-top: 22px;
  padding-top: 14px;
  border-top: 1px solid var(--pp-line);
  font-size: 0.75rem;
  color: var(--pp-muted);
  line-height: 1.4;
}

@media (max-width: 480px) {
  .public-print__card {
    padding: 22px 18px 18px;
  }

  .public-print__actions {
    flex-direction: column;
  }

  .public-print__btn {
    width: 100%;
    text-align: center;
  }
}

/* Platform design tokens — CareOS24: Sora (brand/headings) + Inter (UI/body) */
:root {
  --font-sora: 'Sora';
  --font-inter: 'Inter';
  /* Back-compat aliases (older CSS still references Poppins / Space Grotesk vars) */
  --font-poppins: 'Inter';
  --font-space-grotesk: 'Sora';

  --ec-font: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), 'saudi_riyal', system-ui, -apple-system, sans-serif;
  --ec-font-display: var(--font-sora, 'Sora'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), 'saudi_riyal', system-ui, sans-serif;
  --ec-font-serif: var(--font-sora, 'Sora'), Georgia, serif;
  --ec-font-data: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    system-ui, sans-serif;

  --ec-platform-ink: #0F172A;
  --ec-platform-navy: #0F172A;
  /* CareOS24 marketplace palette */
  --ec-platform-blue: #0F6CBD;
  --ec-platform-blue-hover: #0d5da3;
  --ec-brand-primary: #0F6CBD;
  --ec-brand-primary-dark: #0F172A;
  --ec-brand-primary-hover: #0d5da3;
  --ec-brand-secondary: #14B8A6;
  --ec-platform-accent-soft: #eff6ff;
  --ec-platform-btn-radius: 10px;
  --ec-platform-btn-shadow: 0 4px 12px rgba(15, 108, 189, 0.22);
  --ec-platform-danger: #dc2626;
  --ec-platform-danger-hover: #b91c1c;
  --ec-platform-mist: #ffffff;
  --ec-platform-paper: #ffffff;
  --ec-platform-line: #e2e8f0;
  --ec-platform-muted: #64748b;
  --ec-platform-card-radius: 10px;
  --ec-platform-card-shadow: 0 1px 3px rgba(12, 26, 46, 0.06);

  /* IPD bed status (ipd.png legend) */
  --ec-ipd-bed-occupied: #0040a0;
  --ec-ipd-bed-available: #b8d8c8;
  --ec-ipd-bed-reserved: #f59e0b;
  --ec-ipd-bed-maintenance: #c6cdd7;
  --ec-ipd-bed-discharged: #93c5fd;

  --ec-sidebar-width: 240px;
  --ec-sidebar-compact-width: 72px;
  /* Light CareOS sidebar — white / mist grey with dark ink */
  --ec-proposal-sidebar-start: #ffffff;
  --ec-proposal-sidebar-end: #f8fafc;
  --ec-proposal-sidebar-bg: #f8fafc;
  --ec-proposal-sidebar-active-bg: rgba(15, 108, 189, 0.1);
  --ec-proposal-sidebar-hover-bg: rgba(23, 43, 58, 0.05);
  --ec-proposal-sidebar-text: #172b3a;
  --ec-proposal-sidebar-text-muted: #64748b;
  --ec-proposal-sidebar-icon: #64748b;
  --ec-proposal-sidebar-border: #e2e8f0;
  --ch-topbar-bg: #ffffff;
  --ch-topbar-text: #0F172A;
  --ec-sidebar-active-bar: #0F6CBD;
  --ec-sidebar-nav-size: 13px;
  --ec-sidebar-sub-size: 12px;
  --ec-sidebar-icon-size: 15px;
  --ec-sidebar-item-py: 9px;
  --ec-sidebar-item-px: 14px;
  --ec-sidebar-item-min-h: 38px;
  --ec-sidebar-sub-indent: 38px;
  --ec-sidebar-brand-size: 12px;
  --ec-sidebar-brand-logo-max: 52px;
  --ec-sidebar-brand-py: 8px;
  --ec-sidebar-brand-px: 10px;
  --ec-sidebar-brand-gap: 4px;
  --ec-sidebar-nav-pt: 4px;
  --ec-sidebar-nav-pb: 12px;
  --ec-proposal-accent: #0F6CBD;
  --ec-proposal-page-bg: #F8FAFC;
  --ec-proposal-card-bg: #ffffff;
  --ec-proposal-card-border: #e2e8f0;
  --ec-proposal-success-bg: #dcfce7;
  --ec-proposal-success-text: #166534;
  --ec-proposal-info-bg: #dbeafe;
  --ec-proposal-info-text: #1e40af;
  --ec-proposal-warn-bg: #ffedd5;
  --ec-proposal-warn-text: #9a3412;
  --ec-proposal-danger-bg: #fee2e2;
  --ec-proposal-danger-text: #991b1b;

  --ec-opd-primary: #0F6CBD;
  --ec-opd-text: #0F172A;
  --ec-opd-muted: #475569;
  --ec-opd-border: #e2e8f0;

  /* OPD appointment status — soft fills used on calendar pills, dashboard, boards */
  --opd-st-schedule-bg: #e8f0fe;
  --opd-st-schedule-ink: #1e3a8a;
  --opd-st-schedule-line: #b6c9f5;
  --opd-st-schedule-accent: #2563eb;

  --opd-st-pending-bg: #fff4e8;
  --opd-st-pending-ink: #9a3412;
  --opd-st-pending-line: #fdba74;
  --opd-st-pending-accent: #ea580c;

  --opd-st-confirmed-bg: #e6fbff;
  --opd-st-confirmed-ink: #155e75;
  --opd-st-confirmed-line: #67e8f9;
  --opd-st-confirmed-accent: #0891b2;

  --opd-st-checkedin-bg: #e8f7ee;
  --opd-st-checkedin-ink: #166534;
  --opd-st-checkedin-line: #86efac;
  --opd-st-checkedin-accent: #2c7a46;

  --opd-st-engaged-bg: #f3eefe;
  --opd-st-engaged-ink: #5b21b6;
  --opd-st-engaged-line: #c4b5fd;
  --opd-st-engaged-accent: #6d28d9;

  --opd-st-checkedout-bg: #f1f5f9;
  --opd-st-checkedout-ink: #334155;
  --opd-st-checkedout-line: #cbd5e1;
  --opd-st-checkedout-accent: #475569;

  --opd-st-noshow-bg: #fcecee;
  --opd-st-noshow-ink: #7f1d1d;
  --opd-st-noshow-line: #f5c2c7;
  --opd-st-noshow-accent: #803e48;

  --opd-st-online-bg: #e8f6fe;
  --opd-st-online-ink: #075985;
  --opd-st-online-line: #7dd3fc;
  --opd-st-online-accent: #0284c7;

  --opd-st-cancelled-bg: #f1f5f9;
  --opd-st-cancelled-ink: #475569;
  --opd-st-cancelled-line: #cbd5e1;
  --opd-st-cancelled-accent: #64748b;

  --opd-st-walkin-bg: #fef9e7;
  --opd-st-walkin-ink: #854d0e;
  --opd-st-walkin-line: #fde047;
  --opd-st-walkin-accent: #ca8a04;

  --opd-st-block-bg: #f1f5f9;
  --opd-st-block-ink: #64748b;
  --opd-st-block-line: #cbd5e1;
  --opd-st-block-accent: #94a3b8;

  --opd-st-triage-bg: #ffedd5;
  --opd-st-triage-ink: #9a3412;
  --opd-st-triage-line: #fdba74;
  --opd-st-triage-accent: #f97316;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: var(--ec-font);
  background: var(--ec-proposal-page-bg);
  color: var(--ec-platform-ink);
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
  text-decoration: none;
}

/*
 * Global native <select> — CareOS control chrome (chevron, padding, focus).
 * Excludes multi-select / list-box variants. Module CSS may refine sizes.
 */
select:not([multiple]):not([size]) {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  box-sizing: border-box;
  max-width: 100%;
  min-height: 36px;
  margin: 0;
  padding: 8px 36px 8px 12px;
  border: 1px solid var(--ec-platform-line, #e2e8f0);
  border-radius: 8px;
  font: inherit;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.35;
  color: var(--ec-platform-ink, #0f172a);
  background-color: var(--ec-platform-paper, #fff);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2364748b' d='M1.4 0.6L6 5.2 10.6.6 12 2 6 8 0 2z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px 8px;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

select:not([multiple]):not([size]):hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--ec-platform-blue, #0360f1) 35%, #cbd5e1);
}

select:not([multiple]):not([size]):focus,
select:not([multiple]):not([size]):focus-visible {
  /* Single focus ring — avoid border + outline looking like a double frame */
  outline: none;
  border-color: var(--ec-platform-blue, #0360f1);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ec-platform-blue, #0360f1) 22%, transparent);
}

select:not([multiple]):not([size]):disabled {
  opacity: 0.6;
  cursor: not-allowed;
  background-color: #fff;
}

html[dir='rtl'] select:not([multiple]):not([size]) {
  padding: 8px 12px 8px 36px;
  background-position: left 12px center;
}

/*
 * Global native text fields — same CareOS chrome as selects (no chevron).
 * Covers bare <input>/<textarea> with no class so browser defaults never show.
 * Module/class rules still override via higher specificity.
 */
input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']):not([type='reset']):not([type='file']):not([type='hidden']):not([type='image']):not([type='range']):not([type='color']),
textarea {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  max-width: 100%;
  min-height: 36px;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid var(--ec-platform-line, #e2e8f0);
  border-radius: 8px;
  font: inherit;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.35;
  color: var(--ec-platform-ink, #0f172a);
  background-color: var(--ec-platform-paper, #fff);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

textarea {
  min-height: 88px;
  resize: vertical;
  line-height: 1.45;
}

input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']):not([type='reset']):not([type='file']):not([type='hidden']):not([type='image']):not([type='range']):not([type='color']):hover:not(:disabled),
textarea:hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--ec-platform-blue, #0360f1) 35%, #cbd5e1);
}

input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']):not([type='reset']):not([type='file']):not([type='hidden']):not([type='image']):not([type='range']):not([type='color']):focus,
input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']):not([type='reset']):not([type='file']):not([type='hidden']):not([type='image']):not([type='range']):not([type='color']):focus-visible,
textarea:focus,
textarea:focus-visible {
  outline: none;
  border-color: var(--ec-platform-blue, #0360f1);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ec-platform-blue, #0360f1) 22%, transparent);
}

/*
 * Date / time / datetime: WebKit draws an inner edit frame that stacks with our
 * CareOS border and looks like a double border on every form.
 */
input[type='date'],
input[type='time'],
input[type='datetime-local'],
input[type='month'],
input[type='week'] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
}

input[type='date']::-webkit-datetime-edit,
input[type='time']::-webkit-datetime-edit,
input[type='datetime-local']::-webkit-datetime-edit,
input[type='month']::-webkit-datetime-edit,
input[type='week']::-webkit-datetime-edit,
input[type='date']::-webkit-datetime-edit-fields-wrapper,
input[type='time']::-webkit-datetime-edit-fields-wrapper,
input[type='datetime-local']::-webkit-datetime-edit-fields-wrapper,
input[type='month']::-webkit-datetime-edit-fields-wrapper,
input[type='week']::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

input[type='date']::-webkit-calendar-picker-indicator,
input[type='time']::-webkit-calendar-picker-indicator,
input[type='datetime-local']::-webkit-calendar-picker-indicator,
input[type='month']::-webkit-calendar-picker-indicator,
input[type='week']::-webkit-calendar-picker-indicator {
  cursor: pointer;
  opacity: 0.7;
  -webkit-margin-start: 4px;
          margin-inline-start: 4px;
}

input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']):not([type='reset']):not([type='file']):not([type='hidden']):not([type='image']):not([type='range']):not([type='color']):disabled,
textarea:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  background-color: #fff;
}

input::placeholder,
textarea::placeholder {
  color: #94a3b8;
  font-weight: 500;
  opacity: 1;
}

/* Checkboxes / radios — theme accent instead of OS default */
input[type='checkbox'],
input[type='radio'] {
  accent-color: var(--ec-platform-blue, #0360f1);
  width: 1.05rem;
  height: 1.05rem;
  margin: 0;
  flex-shrink: 0;
  cursor: pointer;
  vertical-align: middle;
}

input[type='checkbox']:disabled,
input[type='radio']:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.ec-app-loading,
.auth-callback {
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  place-items: center;
  padding: max(24px, env(safe-area-inset-top, 0px)) max(24px, env(safe-area-inset-right, 0px))
    max(24px, env(safe-area-inset-bottom, 0px)) max(24px, env(safe-area-inset-left, 0px));
  text-align: center;
}

.ec-app-loading--animated,
.ec-app-loading--splash {
  background: #ffffff;
  color: var(--ec-platform-ink, #0c1a2e);
}

.ec-app-loading--animated .med-loader,
.ec-app-loading--splash .med-loader {
  padding: 0;
}

.updated-alert {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 10070;
  background: var(--ec-proposal-danger-bg);
  color: var(--ec-proposal-danger-text);
  padding: 12px 16px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 600;
}

.page-wrapper.is-loading {
  opacity: 0.72;
  pointer-events: none;
}

.d-block {
  display: block !important;
}

.d-none {
  display: none !important;
}

.text-danger {
  color: #dc2626;
}

/* Dot menu dropdown */
.dots-wrapper {
  position: relative;
}

.dot-dropdown-menu {
  position: absolute;
  right: 0;
  top: 100%;
  background: #fff;
  border: 1px solid var(--ec-proposal-card-border);
  border-radius: 10px;
  list-style: none;
  margin: 4px 0 0;
  padding: 8px 0;
  min-width: 180px;
  z-index: 100;
  box-shadow: var(--ec-platform-card-shadow);
}

.dot-dropdown-menu li button,
.dot-dropdown-menu li a {
  display: block;
  width: 100%;
  text-align: left;
  padding: 8px 16px;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: inherit;
  text-decoration: none;
  font-size: 13px;
}

.dot-dropdown-menu li:hover {
  background: #fff;
}

/* Triage table */
.traige_token_view {
  width: 100%;
  border-collapse: collapse;
}

.traige_token_view th,
.traige_token_view td {
  padding: 10px 12px;
  border-bottom: 1px solid #e2e8f0;
}

.traige_token_view th {
  background: #fff;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #0f172a;
}

.triage-appointments {
  cursor: pointer;
}

.triage-appointments:hover {
  background: #fff;
}

.no-doctor-state p {
  color: #64748b;
  font-size: 14px;
  padding: 24px;
}

body.ec-opd-revamp-page .modal.d-block {
  display: block !important;
}

body.ec-opd-revamp-page .modal .modal-content {
  position: relative;
}

@font-face {
  font-family: "saudi_riyal";
  src: url(/_next/static/media/saudi_riyal.6d991251.woff2) format("woff2"),
    url(/_next/static/media/saudi_riyal.57bf7997.woff) format("woff"),
    url(/_next/static/media/saudi_riyal.6477ab53.ttf) format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "saudi_riyal_bold";
  src: url(/_next/static/media/saudi_riyal.bd88fc31.woff2) format("woff2"),
    url(/_next/static/media/saudi_riyal.98299cc0.woff) format("woff"),
    url(/_next/static/media/saudi_riyal.747f7cd5.ttf) format("truetype");
  font-weight: bold;
  font-style: normal;
}

/* Ensure the icon class correctly loads the Riyal symbol */
.icon-saudi_riyal::before {
  content: "\e900";
  font-family: "saudi_riyal" !important;
  font-size: inherit;
  color: inherit;
}

.icon-saudi_riyal_bold::before {
  content: "\e900";
  font-family: "saudi_riyal_bold" !important;
  font-size: inherit;
  color: inherit;
}

.icon-saudi_riyal_new::after {
  content: "\20c1";
  font-family: "saudi_riyal" !important;
  font-size: inherit;
  color: inherit;
}

.icon-saudi_riyal_bold_new::after {
  content: "\20c1";
  font-family: "saudi_riyal_bold" !important;
  font-size: inherit;
  color: inherit;
}


/**
 * Phone-app style screen transitions (slide / fade) for compact + native shells.
 *
 * IMPORTANT: do not leave a lasting `transform` / `will-change: transform` on the
 * wrapper — that creates a containing block and breaks position:fixed bottom
 * action bars (they scroll away with the page).
 */

.ch-page-transition {
  width: 100%;
  min-height: 100%;
}

/* Clip horizontal travel while a screen is sliding in */
body.ch-no-sidebar .ch-page-transition--push,
body.ch-no-sidebar .ch-page-transition--pop,
body.ch-native-app .ch-page-transition--push,
body.ch-native-app .ch-page-transition--pop,
.care .ch-page-transition--push,
.care .ch-page-transition--pop,
.pp .ch-page-transition--push,
.pp .ch-page-transition--pop {
  overflow-x: clip;
}

/* Strong slide on phone / Capacitor / Care / Patient */
body.ch-no-sidebar .ch-page-transition--push,
body.ch-native-app .ch-page-transition--push,
.care .ch-page-transition--push,
.pp .ch-page-transition--push {
  animation: ch-page-push-in 320ms cubic-bezier(0.32, 0.72, 0, 1) both;
}

body.ch-no-sidebar .ch-page-transition--pop,
body.ch-native-app .ch-page-transition--pop,
.care .ch-page-transition--pop,
.pp .ch-page-transition--pop {
  animation: ch-page-pop-in 300ms cubic-bezier(0.32, 0.72, 0, 1) both;
}

body.ch-no-sidebar .ch-page-transition--fade,
body.ch-native-app .ch-page-transition--fade,
.care .ch-page-transition--fade,
.pp .ch-page-transition--fade {
  animation: ch-page-fade-in 220ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

/* Staff desktop only — Care / Patient keep the phone slides above. */
body:not(.ch-no-sidebar):not(.ch-native-app):not(:has(.care)):not(:has(.pp))
  .ch-page-transition--push,
body:not(.ch-no-sidebar):not(.ch-native-app):not(:has(.care)):not(:has(.pp))
  .ch-page-transition--pop,
body:not(.ch-no-sidebar):not(.ch-native-app):not(:has(.care)):not(:has(.pp))
  .ch-page-transition--fade {
  animation: ch-page-fade-in 160ms ease-out forwards;
}

/* Care: iOS-style stack even on a wide window */
body .care .ch-page-transition--push {
  animation: care-screen-push 380ms cubic-bezier(0.32, 0.72, 0, 1) both;
}

body .care .ch-page-transition--pop {
  animation: care-screen-pop 340ms cubic-bezier(0.32, 0.72, 0, 1) both;
}

body .care .ch-page-transition--fade {
  animation: ch-page-fade-in 240ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

body .care.care--phone .ch-page-transition--push {
  animation: ch-page-push-in 420ms cubic-bezier(0.32, 0.72, 0, 1) both;
}

body .care.care--phone .ch-page-transition--pop {
  animation: ch-page-pop-in 380ms cubic-bezier(0.32, 0.72, 0, 1) both;
}

[dir='rtl'] body .care.care--phone .ch-page-transition--push {
  animation-name: ch-page-push-in-rtl;
}

[dir='rtl'] body .care.care--phone .ch-page-transition--pop {
  animation-name: ch-page-pop-in-rtl;
}

@keyframes care-screen-push {
  from {
    opacity: 1;
    transform: translate3d(28%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes care-screen-pop {
  from {
    opacity: 1;
    transform: translate3d(-18%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

[dir='rtl'] body .care .ch-page-transition--push {
  animation-name: care-screen-push-rtl;
}

[dir='rtl'] body .care .ch-page-transition--pop {
  animation-name: care-screen-pop-rtl;
}

@keyframes care-screen-push-rtl {
  from {
    opacity: 1;
    transform: translate3d(-28%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes care-screen-pop-rtl {
  from {
    opacity: 1;
    transform: translate3d(18%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes ch-page-push-in {
  from {
    opacity: 0.96;
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes ch-page-pop-in {
  from {
    opacity: 0.96;
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes ch-page-fade-in {
  from {
    opacity: 0.96;
  }
  to {
    opacity: 1;
  }
}

/* RTL: reverse horizontal slides */
[dir='rtl'] body.ch-no-sidebar .ch-page-transition--push,
[dir='rtl'] body.ch-native-app .ch-page-transition--push,
[dir='rtl'] .care .ch-page-transition--push,
[dir='rtl'] .pp .ch-page-transition--push {
  animation-name: ch-page-push-in-rtl;
}

[dir='rtl'] body.ch-no-sidebar .ch-page-transition--pop,
[dir='rtl'] body.ch-native-app .ch-page-transition--pop,
[dir='rtl'] .care .ch-page-transition--pop,
[dir='rtl'] .pp .ch-page-transition--pop {
  animation-name: ch-page-pop-in-rtl;
}

@keyframes ch-page-push-in-rtl {
  from {
    opacity: 1;
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes ch-page-pop-in-rtl {
  from {
    opacity: 1;
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.ch-no-sidebar .ch-page-transition--push,
  body.ch-no-sidebar .ch-page-transition--pop,
  body.ch-no-sidebar .ch-page-transition--fade,
  body.ch-native-app .ch-page-transition--push,
  body.ch-native-app .ch-page-transition--pop,
  body.ch-native-app .ch-page-transition--fade,
  body:not(.ch-no-sidebar) .ch-page-transition--push,
  body:not(.ch-no-sidebar) .ch-page-transition--pop,
  body:not(.ch-no-sidebar) .ch-page-transition--fade,
  .care .ch-page-transition--push,
  .care .ch-page-transition--pop,
  .care .ch-page-transition--fade,
  body .care .ch-page-transition--push,
  body .care .ch-page-transition--pop,
  body .care .ch-page-transition--fade,
  .pp .ch-page-transition--push,
  .pp .ch-page-transition--pop,
  .pp .ch-page-transition--fade {
    animation: none !important;
  }
}

/* Dedicated SPA sign-in — CareOS brand-first, patient-simple */
.spa-login {
  --login-ink: #07192f;
  --login-mist: #e8f0fa;
  --login-accent: #0a7ea4;
  --login-accent-deep: #0360f1;
  --login-paper: rgba(255, 255, 255, 0.92);
  min-height: 100vh;
  min-height: 100dvh;
  position: relative;
  overflow: hidden;
  color: var(--login-ink);
  font-family: var(--ec-font);
  display: flex;
  flex-direction: column;
  padding-top: env(safe-area-inset-top, 0);
  padding-bottom: env(safe-area-inset-bottom, 0);
  padding-left: env(safe-area-inset-left, 0);
  padding-right: env(safe-area-inset-right, 0);
}

.spa-login__atmosphere {
  position: absolute;
  inset: 0;
  background: #fff;
  z-index: 0;
}

.spa-login__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(2px);
  pointer-events: none;
  opacity: 0.55;
  animation: spa-login-drift 14s ease-in-out infinite alternate;
}

.spa-login__orb--a {
  width: min(48vw, 280px);
  height: min(48vw, 280px);
  top: -6%;
  left: -8%;
  background: #fff;
}

.spa-login__orb--b {
  width: min(42vw, 240px);
  height: min(42vw, 240px);
  right: -6%;
  bottom: 18%;
  background: radial-gradient(circle, rgba(10, 180, 190, 0.28), transparent 70%);
  animation-delay: -4s;
  animation-duration: 18s;
}

@keyframes spa-login-drift {
  from {
    transform: translate3d(0, 0, 0) scale(1);
  }
  to {
    transform: translate3d(18px, 24px, 0) scale(1.08);
  }
}

.spa-login__top,
.spa-login__main {
  position: relative;
  z-index: 1;
}

.spa-login__top {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 20px clamp(20px, 4vw, 48px) 0;
}

.spa-login__top:has(.spa-login__back) {
  justify-content: space-between;
}

.spa-login__back {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(7, 25, 47, 0.1);
  border-radius: 999px;
  background: #fff;
  color: var(--login-ink);
  font-size: 1.55rem;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0 2px;
}

.spa-login__back:active {
  transform: scale(0.96);
  background: rgba(10, 126, 164, 0.08);
}

[dir='rtl'] .spa-login__back span {
  display: inline-block;
  transform: scaleX(-1);
}

.spa-login__locale {
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(7, 25, 47, 0.08);
}

.spa-login__locale button {
  border: 0;
  background: transparent;
  color: var(--login-ink);
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 999px;
  cursor: pointer;
}

.spa-login__locale button.is-active {
  background: #072854;
  color: #fff;
}

.spa-login__main {
  flex: 1 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 420px;
  width: 100%;
  margin: 0 auto;
  padding: 8px clamp(20px, 4vw, 40px) 36px;
}

.spa-login__hero {
  text-align: center;
  margin-bottom: 22px;
  animation: spa-login-rise 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes spa-login-rise {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.spa-login__logo-wrap {
  position: relative;
  width: min(148px, 42vw);
  height: min(148px, 42vw);
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
}

.spa-login__logo-ring {
  position: absolute;
  inset: 0;
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.55), rgba(10, 126, 164, 0.2));
  box-shadow:
    0 18px 40px rgba(7, 25, 47, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.5);
  animation: spa-login-pulse 2.8s ease-in-out infinite;
}

@keyframes spa-login-pulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow:
      0 18px 40px rgba(7, 25, 47, 0.22),
      0 0 0 0 rgba(10, 126, 164, 0.28);
  }
  50% {
    transform: scale(1.03);
    box-shadow:
      0 22px 48px rgba(7, 25, 47, 0.28),
      0 0 0 12px rgba(10, 126, 164, 0);
  }
}

.spa-login__logo {
  position: relative;
  z-index: 1;
  width: min(140px, 42vw);
  height: auto;
  aspect-ratio: 1;
  max-height: 140px;
  border-radius: 22px;
  object-fit: cover;
  background: transparent;
  animation: spa-login-float 4.5s ease-in-out infinite;
}

@keyframes spa-login-float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
}

.spa-login__brand-kicker {
  margin: 0 0 6px;
  font-family: var(--ec-font-display);
  font-size: clamp(1.75rem, 5vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.04em;
  color: var(--login-ink);
}

.spa-login__title {
  margin: 0 0 8px;
  font-family: var(--ec-font-display);
  font-size: clamp(1.15rem, 3.6vw, 1.35rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.spa-login__privacy {
  margin: 10px auto 0;
  max-width: 34ch;
  font-size: 0.78rem;
  line-height: 1.4;
  color: rgba(7, 25, 47, 0.62);
}

.spa-login__consent {
  display: flex !important;
  grid-template-columns: none;
  flex-direction: row;
  align-items: flex-start;
  gap: 10px;
  font-weight: 500 !important;
  font-size: 0.8125rem !important;
  line-height: 1.4;
}

.spa-login__consent input {
  width: auto !important;
  margin-top: 3px;
  flex-shrink: 0;
}

.spa-login__form {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
  padding: 18px 16px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.28);
  border: 1px solid rgba(255, 255, 255, 0.45);
  box-shadow:
    0 24px 50px rgba(7, 25, 47, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.55);
  backdrop-filter: blur(22px) saturate(1.35);
  -webkit-backdrop-filter: blur(22px) saturate(1.35);
}

.spa-login__panel {
  animation: spa-login-panel-in 0.45s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes spa-login-panel-in {
  from {
    opacity: 0;
    transform: translateY(14px) scale(0.985);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.spa-login__phone {
  display: flex;
  align-items: stretch;
  border: 1px solid rgba(7, 25, 47, 0.12);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.55);
  overflow: hidden;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.spa-login__phone:focus-within {
  border-color: var(--login-accent);
  box-shadow: 0 0 0 3px rgba(10, 126, 164, 0.2);
}

.spa-login__phone.is-locked {
  background: rgba(7, 25, 47, 0.04);
}

.spa-login__dial {
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  font-weight: 700;
  font-size: 0.95rem;
  letter-spacing: 0.02em;
  color: rgba(7, 25, 47, 0.72);
  background: rgba(10, 126, 164, 0.08);
  -webkit-border-end: 1px solid rgba(7, 25, 47, 0.1);
          border-inline-end: 1px solid rgba(7, 25, 47, 0.1);
  white-space: nowrap;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.spa-login__phone input {
  flex: 1 1;
  min-width: 0;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  background: transparent !important;
}

.spa-login__mode button {
  transition:
    background 0.25s ease,
    color 0.25s ease,
    box-shadow 0.25s ease,
    transform 0.2s ease;
}

.spa-login__mode button:active {
  transform: scale(0.98);
}

.spa-login__submit {
  transition:
    transform 0.2s ease,
    box-shadow 0.25s ease,
    opacity 0.2s ease;
}

.spa-login__submit:not(:disabled):hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 32px rgba(3, 96, 241, 0.34);
}

.spa-login__submit:not(:disabled):active {
  transform: translateY(0) scale(0.99);
}

.spa-login__logo-wrap {
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.spa-login__hero:hover .spa-login__logo-wrap {
  transform: scale(1.03);
}

.spa-login__error {
  margin: 0;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(180, 35, 24, 0.1);
  color: #8e1f16;
  font-size: 0.875rem;
  animation: spa-login-shake 0.4s ease both;
}

@keyframes spa-login-shake {
  0%,
  100% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-4px);
  }
  75% {
    transform: translateX(4px);
  }
}

.spa-login__field {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  font-size: 0.8125rem;
  font-weight: 600;
}

.spa-login__field input {
  width: 100%;
  border: 1px solid rgba(7, 25, 47, 0.12);
  border-radius: 12px;
  padding: 12px 14px;
  font-family: inherit;
  font-weight: 500;
  /* iOS Safari zooms when a focused input is smaller than 16px. */
  font-size: 16px;
  background: rgba(255, 255, 255, 0.55);
  color: var(--login-ink);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease;
}

.spa-login__field input:focus {
  outline: 2px solid rgba(10, 126, 164, 0.35);
  border-color: var(--login-accent);
}

.spa-login__field input:-moz-read-only {
  background: rgba(7, 25, 47, 0.04);
}

.spa-login__field input:read-only {
  background: rgba(7, 25, 47, 0.04);
}

.spa-login__optional {
  font-style: normal;
  font-weight: 500;
  color: rgba(7, 25, 47, 0.5);
}

.spa-login__resume {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin-bottom: 14px;
  padding: 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(7, 25, 47, 0.08);
}

.spa-login__resume p {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(7, 25, 47, 0.55);
}

.spa-login__resume button {
  border: 0;
  background: #fff;
  color: var(--login-ink);
  font: inherit;
  font-weight: 600;
  text-align: start;
  padding: 10px 12px;
  border-radius: 10px;
  cursor: pointer;
  box-shadow: 0 1px 0 rgba(7, 25, 47, 0.06);
}

.spa-login__mode {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 6px;
  gap: 6px;
  margin-bottom: 14px;
  padding: 4px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.45);
  border: 1px solid rgba(7, 25, 47, 0.08);
}

.spa-login__mode button {
  border: 0;
  background: transparent;
  color: rgba(7, 25, 47, 0.7);
  font: inherit;
  font-weight: 600;
  padding: 10px 8px;
  border-radius: 10px;
  cursor: pointer;
}

.spa-login__mode button.is-active {
  background: #fff;
  color: var(--login-ink);
  box-shadow: 0 6px 16px rgba(7, 25, 47, 0.1);
}

.spa-login__hint {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: rgba(7, 25, 47, 0.7);
}

.spa-login__hint--soft {
  color: var(--login-accent);
  font-weight: 600;
}

.spa-login__alt {
  border: 0;
  background: transparent;
  color: rgba(7, 25, 47, 0.65);
  font: inherit;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  padding: 4px;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.spa-login__alt:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.spa-login__password {
  display: flex;
  gap: 8px;
  align-items: stretch;
}

.spa-login__password input {
  flex: 1 1;
}

.spa-login__password button {
  border: 1px solid rgba(7, 25, 47, 0.14);
  background: #fff;
  border-radius: 12px;
  padding: 0 12px;
  font: inherit;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}

.spa-login__submit {
  border: 0;
  border-radius: 12px;
  padding: 14px 16px;
  font: inherit;
  font-weight: 700;
  font-size: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #0a7ea4 0%, #0360f1 100%);
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(3, 96, 241, 0.28);
}

.spa-login__submit:disabled {
  opacity: 0.65;
  cursor: wait;
}

.spa-login__staff-link {
  display: block;
  width: 100%;
  min-height: 48px;
  margin-top: 4px;
  border: 1.4px solid var(--login-accent-deep, #2563eb);
  border-radius: 14px;
  background: #fff;
  color: #1e3a5f;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

@media (prefers-reduced-motion: reduce) {
  .spa-login__orb,
  .spa-login__logo,
  .spa-login__logo-ring,
  .spa-login__hero,
  .spa-login__form,
  .spa-login__panel,
  .spa-login__error {
    animation: none !important;
  }

  .spa-login__submit,
  .spa-login__mode button,
  .spa-login__logo-wrap {
    transition: none !important;
  }
}

[dir='rtl'] .spa-login__main {
  text-align: right;
}

[dir='rtl'] .spa-login__hero {
  text-align: center;
}

@media (max-width: 991px) {
  .spa-login__top {
    padding: 12px max(16px, env(safe-area-inset-right, 0px)) 0 max(16px, env(safe-area-inset-left, 0px));
  }
}

@media (max-width: 420px) {
  .spa-login__title {
    font-size: 1.1rem;
  }
}

/* —— Web Hub desktop layout —— */
.spa-login__web-aside {
  display: none;
  margin: 14px 0 0;
  max-width: 36ch;
  font-size: 0.9rem;
  line-height: 1.45;
  color: rgba(7, 25, 47, 0.62);
}

.spa-login__web-aside a,
.spa-login__demo-cta a {
  color: var(--login-accent-deep);
  font-weight: 650;
  text-decoration: none;
}

.spa-login__web-aside a:hover,
.spa-login__demo-cta a:hover {
  text-decoration: underline;
}

.spa-login__demo-cta {
  margin: 0.85rem 0 0;
  text-align: center;
  font-size: 0.875rem;
  color: rgba(7, 25, 47, 0.72);
}

.spa-login__orb--c {
  width: min(52vw, 640px);
  height: min(52vw, 640px);
  top: 12%;
  left: 58%;
  background: radial-gradient(circle, rgba(3, 96, 241, 0.18), transparent 68%);
  animation-delay: -1.4s;
}

.spa-login__stage {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.spa-login__panel-col {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
}

@media (min-width: 960px) {
  .spa-login--web {
    --login-ink: #07192f;
  }

  .spa-login--web .spa-login__main {
    max-width: 1120px;
    margin: 0 auto;
    padding: 28px clamp(32px, 5vw, 72px) 56px;
    justify-content: center;
    flex: 1 1;
  }

  .spa-login--web .spa-login__stage {
    display: grid;
    grid-template-columns: minmax(280px, 1.05fr) minmax(340px, 0.95fr);
    grid-gap: clamp(36px, 6vw, 72px);
    gap: clamp(36px, 6vw, 72px);
    align-items: center;
    min-height: min(640px, calc(100dvh - 96px));
  }

  .spa-login--web .spa-login__hero {
    text-align: start;
    margin-bottom: 0;
  }

  .spa-login--web .spa-login__logo-wrap {
    margin: 0 0 18px;
    width: min(160px, 100%);
    height: 160px;
  }

  .spa-login--web .spa-login__logo {
    width: min(140px, 100%);
    max-height: 140px;
  }

  .spa-login--web .spa-login__brand-kicker {
    font-size: clamp(2.1rem, 3.2vw, 2.75rem);
  }

  .spa-login--web .spa-login__title {
    font-size: clamp(1.35rem, 2vw, 1.65rem);
    max-width: 18ch;
  }

  .spa-login--web .spa-login__lead {
    max-width: 34ch;
  }

  .spa-login--web .spa-login__web-aside {
    display: block;
  }

  .spa-login--web .spa-login__form {
    padding: 28px 26px;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.72);
    box-shadow:
      0 28px 64px rgba(7, 25, 47, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.7);
  }

  .spa-login--web .spa-login__mode {
    max-width: none;
  }

  [dir='rtl'] .spa-login--web .spa-login__hero {
    text-align: start;
  }
}

@media (min-width: 1200px) {
  .spa-login--web .spa-login__main {
    padding-top: 40px;
  }
}

@media (max-width: 767px) {
  .spa-login {
    --login-ink: #0f172a;
    --login-accent: #2563eb;
    --login-accent-deep: #1e3a5f;
  }

  .spa-login.spa-login--web {
    background: linear-gradient(135deg, #2563eb, #1e3a5f);
  }

  .spa-login.spa-login--web .spa-login__atmosphere {
    background: transparent;
  }

  .spa-login.spa-login--web .spa-login__title,
  .spa-login.spa-login--web .spa-login__lead,
  .spa-login.spa-login--web .spa-login__brand-kicker {
    color: #fff;
  }

  .spa-login.spa-login--web .spa-login__lead {
    color: rgba(255, 255, 255, 0.82);
  }

  .spa-login__top {
    padding: 12px 16px 0;
  }

  .spa-login__back {
    width: 48px;
    height: 48px;
    border-radius: 14px;
  }

  .spa-login__locale button {
    min-height: 48px;
    padding: 0 14px;
    font-size: 13px;
    border-radius: 14px;
  }

  .spa-login__main {
    max-width: none;
    padding: 8px 16px 28px;
    justify-content: flex-start;
  }

  .spa-login__title {
    font-size: 1.45rem;
  }

  .spa-login__lead,
  .spa-login__hint {
    font-size: 15px;
  }

  .spa-login__mode {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 8px;
    gap: 8px;
    margin-bottom: 14px;
    padding: 4px;
    overflow: visible;
    flex-wrap: unset;
    border-radius: 14px;
    background: #fff;
  }

  .spa-login__mode .staff-phone-chip,
  .spa-login__mode button {
    width: 100%;
    min-height: 48px !important;
    justify-content: center;
    padding: 0 12px !important;
    border-radius: 14px !important;
    font-size: 15px !important;
    font-weight: 700;
  }

  .spa-login__mode .staff-phone-chip.is-active,
  .spa-login__mode button.is-active {
    background: #eff6ff;
    color: #1e3a5f;
  }

  .spa-login__form,
  .spa-login__panel {
    padding: 18px 16px;
    border-radius: 14px;
  }

  .spa-login__field {
    font-size: 15px;
  }

  .spa-login__field input,
  .spa-login__phone {
    min-height: 48px;
    border-radius: 14px;
    font-size: 16px;
  }

  .spa-login__password button {
    min-height: 48px;
    border-radius: 14px;
  }

  .spa-login__submit,
  .spa-login__staff-link,
  .spa-login__alt,
  .spa-login__resume button {
    min-height: 48px;
    border-radius: 14px;
    font-size: 15px;
  }

  .spa-login__error.staff-phone-error,
  .spa-login__error {
    margin: 0 0 12px;
    padding: 14px 16px;
    border-radius: 14px;
    font-size: 15px;
  }
}


  html.ch-native-app .spa-login__mode .staff-phone-chip,
  html.ch-native-app .spa-login__mode button {
    min-height: 48px !important;
    border-radius: 14px !important;
    font-size: 15px !important;
  }

  html.ch-native-app .spa-login__back,
  html.ch-native-app .spa-login__locale button {
    min-height: 48px;
    width: auto;
  }

  html.ch-native-app .spa-login__back {
    width: 48px;
    height: 48px;
  }


/* Shared Platform UI primitives used across OPD and future modules */

.ec-panel-card {
  display: flex;
  flex-direction: column;
  min-height: 0;
  background: var(--ec-platform-paper);
  border: 1px solid var(--ec-platform-line);
  border-radius: var(--ec-platform-card-radius);
  box-shadow: var(--ec-platform-card-shadow);
  overflow: hidden;
}

.ec-panel-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--ec-platform-line);
}

.ec-panel-card__title {
  margin: 0;
  font-family: var(--ec-font-display);
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--ec-platform-ink);
  letter-spacing: -0.01em;
}

.ec-panel-card__body {
  padding: 14px 16px;
  flex: 1 1;
  min-height: 0;
}

.ec-panel-card__foot {
  padding: 10px 16px 14px;
  border-top: 1px solid var(--ec-platform-line);
}

.ec-stat-chip {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid var(--ec-platform-line);
  background: var(--ec-platform-mist);
  text-align: center;
  min-width: 0;
}

.ec-stat-chip__value {
  font-family: var(--ec-font-display);
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--ec-platform-ink);
  line-height: 1.1;
}

.ec-stat-chip__label {
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--ec-platform-muted);
}

.ec-stat-chip--info {
  border-color: #bfdbfe;
  background: #eff6ff;
}

.ec-stat-chip--success {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.ec-stat-chip--warn {
  border-color: #fed7aa;
  background: #fff7ed;
}

.ec-stat-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 14px;
}

.ec-status-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  font-weight: 600;
  font-size: 0.7rem;
  letter-spacing: 0.02em;
  padding: 4px 10px;
  line-height: 1.2;
}

.ec-status-pill--success {
  background: var(--ec-proposal-success-bg);
  color: var(--ec-proposal-success-text);
}

.ec-status-pill--info {
  background: var(--ec-proposal-info-bg);
  color: var(--ec-proposal-info-text);
}

.ec-status-pill--warn {
  background: var(--ec-proposal-warn-bg);
  color: var(--ec-proposal-warn-text);
}

.ec-status-pill--danger {
  background: var(--ec-proposal-danger-bg);
  color: var(--ec-proposal-danger-text);
}

.ec-kpi-card {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 16px 18px;
  background: var(--ec-platform-paper);
  border: 1px solid var(--ec-platform-line);
  border-radius: var(--ec-platform-card-radius);
  box-shadow: var(--ec-platform-card-shadow);
}

.ec-kpi-card__icon {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #dbeafe;
  color: var(--ec-platform-blue);
  flex-shrink: 0;
  font-size: 1.1rem;
}

.ec-kpi-card__label {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--ec-platform-muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.ec-kpi-card__value {
  margin: 4px 0 0;
  font-family: var(--ec-font-display);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--ec-platform-ink);
  letter-spacing: -0.02em;
}

.ec-kpi-card__meta {
  margin: 6px 0 0;
  font-size: 0.75rem;
  color: var(--ec-proposal-success-text);
  font-weight: 600;
}

.ec-platform-page {
  padding: 8px 0 28px;
  background: #fff;
}

/* Kill leftover silver/mist page shells across modules */
.page-wrapper--platform,
.hospital-platform-page,
.platform-page__body,
.ec-platform-page,
.page-wrapper--platform .ec-platform-page {
  background-color: #fff;
}

.ec-platform-page__toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

/* Title lives in the topbar; keep subtitle/actions compact when H1 is absent. */
.ec-platform-page__toolbar:not(:has(.ec-platform-page__title)) {
  align-items: center;
  margin-bottom: 12px;
}

.ec-platform-page__title {
  margin: 0;
  font-family: var(--ec-font-display);
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.25;
  color: var(--ec-platform-ink);
  overflow: visible;
}

.ec-platform-page__sub {
  margin: 4px 0 0;
  font-size: 0.875rem;
  color: var(--ec-platform-muted);
}

.ec-platform-page__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

/* OPD (and similar): keep filter/actions in the toolbar on phone instead of bottom dock */
body.ch-no-sidebar .ec-platform-page--actions-top.ec-platform-page--has-actions,
html.ch-native-app .ec-platform-page--actions-top.ec-platform-page--has-actions {
  padding-bottom: 0;
}

body.ch-no-sidebar .ec-platform-page--actions-top .ec-platform-page__actions,
html.ch-native-app .ec-platform-page--actions-top .ec-platform-page__actions {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  z-index: auto !important;
}

@media (max-width: 991px) {
  /*
   * Single bottom-chrome system (phone).
   * --ch-mobile-bottom-chrome is the only padding reservation pages should use.
   * Default = compact actions dock; modules with bottom nav override the token.
   */
  body.ch-no-sidebar {
    --ch-mobile-header-offset: calc(56px + env(safe-area-inset-top, 0px));
    --ch-opd-filter-bar: 56px;
    --ch-mobile-nav-height: 64px;
    --ch-mobile-actions-dock: 56px;
    --ch-mobile-actions-offset: calc(var(--ch-mobile-actions-dock) + env(safe-area-inset-bottom, 0px));
    --ch-mobile-bottom-chrome: var(--ch-mobile-actions-offset);
  }

  /* Module bottom nav alone */
  body.ch-no-sidebar .has-module-bottom-nav,
  body.ch-no-sidebar .opd-has-bottom-nav,
  body.ch-no-sidebar .ipd-has-bottom-nav {
    --ch-mobile-bottom-chrome: calc(var(--ch-mobile-nav-height) + env(safe-area-inset-bottom, 0px));
  }

  /* Bottom nav + page actions: one combined band; actions sit above the nav */
  body.ch-no-sidebar .has-module-bottom-nav.ec-platform-page--has-actions,
  body.ch-no-sidebar .has-module-bottom-nav .ec-platform-page--has-actions,
  body.ch-no-sidebar .opd-has-bottom-nav.ec-platform-page--has-actions,
  body.ch-no-sidebar .ipd-has-bottom-nav.ec-platform-page--has-actions {
    --ch-mobile-bottom-chrome: calc(
      var(--ch-mobile-nav-height) + var(--ch-mobile-actions-dock) + env(safe-area-inset-bottom, 0px)
    );
  }

  .ec-platform-page {
    padding: 6px 0 20px;
    max-width: 100%;
    overflow-x: hidden;
  }

  .ec-platform-page__toolbar {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    margin-bottom: 12px;
  }

  .ec-platform-page__title {
    font-size: 1.25rem;
    line-height: 1.3;
  }

  .ec-platform-page__actions {
    width: 100%;
  }

  .ec-platform-page__actions > *,
  .ec-platform-page__actions .rad-shot-btn {
    width: 100%;
    justify-content: center;
    box-sizing: border-box;
  }

  /* Phone web / no-sidebar: mirror native fixed chrome */
  body.ch-no-sidebar.ec-b2b-theme.ec-sidebar-layout .ec-app-topbar.ec-app-topbar--compact {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1200;
  }

  body.ch-no-sidebar.ec-b2b-theme.ec-sidebar-layout .ec-app-content {
    padding-top: calc(12px + var(--ch-mobile-header-offset)) !important;
    padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
  }

  body.ch-no-sidebar .ec-platform-page--has-actions {
    padding-bottom: var(--ch-mobile-bottom-chrome);
  }

  body.ch-no-sidebar .ec-platform-page__actions {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1100;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-height: var(--ch-mobile-actions-dock);
    margin: 0;
    padding: 8px max(12px, env(safe-area-inset-right, 0px))
      calc(8px + env(safe-area-inset-bottom, 0px)) max(12px, env(safe-area-inset-left, 0px));
    background: rgba(255, 255, 255, 0.96);
    -webkit-backdrop-filter: blur(12px);
            backdrop-filter: blur(12px);
    border-top: 1px solid var(--ec-proposal-card-border, #e2e8f0);
    box-shadow: 0 -6px 20px rgba(15, 23, 42, 0.06);
    box-sizing: border-box;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Sit the action dock above the module bottom nav when both are present */
  body.ch-no-sidebar .has-module-bottom-nav .ec-platform-page__actions,
  body.ch-no-sidebar .has-module-bottom-nav.ec-platform-page .ec-platform-page__actions,
  body.ch-no-sidebar .opd-has-bottom-nav .ec-platform-page__actions,
  body.ch-no-sidebar .ipd-has-bottom-nav .ec-platform-page__actions {
    bottom: calc(var(--ch-mobile-nav-height) + env(safe-area-inset-bottom, 0px));
    padding-bottom: 8px;
    z-index: 1090;
  }

  body.ch-no-sidebar .ec-platform-page__actions > *,
  body.ch-no-sidebar .ec-platform-page__actions .rad-shot-btn,
  body.ch-no-sidebar .ec-platform-page__actions .ec-btn {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    min-height: 44px;
    justify-content: center;
  }

  body.ch-no-sidebar .ch-bottom-actions {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1250;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-height: var(--ch-mobile-actions-dock);
    margin: 0 !important;
    padding: 8px max(12px, env(safe-area-inset-right, 0px))
      calc(8px + env(safe-area-inset-bottom, 0px)) max(12px, env(safe-area-inset-left, 0px));
    background: rgba(255, 255, 255, 0.96);
    -webkit-backdrop-filter: blur(12px);
            backdrop-filter: blur(12px);
    border-top: 1px solid var(--ec-proposal-card-border, #e2e8f0);
    box-shadow: 0 -6px 20px rgba(15, 23, 42, 0.06);
    box-sizing: border-box;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  body.ch-no-sidebar .has-module-bottom-nav .ch-bottom-actions,
  body.ch-no-sidebar .opd-has-bottom-nav .ch-bottom-actions,
  body.ch-no-sidebar .ipd-has-bottom-nav .ch-bottom-actions {
    bottom: calc(var(--ch-mobile-nav-height) + env(safe-area-inset-bottom, 0px));
    padding-bottom: 8px;
  }

  body.ch-no-sidebar .ch-bottom-actions > * {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 44px;
    justify-content: center;
  }

  body.ch-no-sidebar .page-wrapper:has(.ch-bottom-actions-spacer),
  body.ch-no-sidebar .rad-shot-detail:has(.ch-bottom-actions-spacer),
  body.ch-no-sidebar article:has(.ch-bottom-actions-spacer),
  body.ch-no-sidebar .inv-form:has(.ch-bottom-actions-spacer),
  body.ch-no-sidebar .page-wrapper:has(.ch-bottom-actions),
  body.ch-no-sidebar .rad-shot-detail:has(.ch-bottom-actions),
  body.ch-no-sidebar article:has(.ch-bottom-actions),
  body.ch-no-sidebar .inv-form:has(.ch-bottom-actions) {
    padding-bottom: var(--ch-mobile-bottom-chrome);
  }

  /* Phone web: same content-only scrollport as native (sticky chrome, no document PTR). */
  html:has(body.ch-no-sidebar) {
    height: 100%;
    max-height: 100%;
    overflow: hidden;
    overscroll-behavior: none;
    overscroll-behavior-y: none;
  }

  body.ch-no-sidebar,
  body.ch-no-sidebar.ec-b2b-theme {
    height: 100%;
    max-height: 100%;
    overflow: hidden;
    overscroll-behavior: none;
    overscroll-behavior-y: none;
  }

  body.ch-no-sidebar.ec-b2b-theme.ec-sidebar-layout .ec-app-shell,
  body.ch-no-sidebar.ec-b2b-theme.ec-sidebar-layout .ec-app-main {
    height: 100dvh;
    max-height: 100dvh;
    overflow: hidden !important;
  }

  body.ch-no-sidebar.ec-b2b-theme.ec-sidebar-layout .ec-app-content {
    height: 100%;
    max-height: 100%;
    min-height: 0 !important;
    overflow-x: clip !important;
    overflow-y: auto !important;
    overscroll-behavior-y: none;
    -webkit-overflow-scrolling: touch;
    overflow-anchor: none;
  }

  body.ch-no-sidebar .ec-platform-page,
  body.ch-no-sidebar .page-wrapper,
  body.ch-no-sidebar .page-wrapper--platform {
    overflow-x: clip !important;
    overflow-y: visible !important;
  }

}

html.ch-native-app .ec-platform-page,
body.ch-no-sidebar .ec-platform-page {
  max-width: 100%;
  overflow-x: clip;
}

.ec-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 16px;
  border-radius: 10px;
  font-family: var(--ec-font);
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
  border: 1px solid transparent;
  cursor: pointer;
  transition: transform 0.15s ease, filter 0.15s ease, background 0.15s ease;
}

.ec-btn:hover {
  text-decoration: none;
  transform: translateY(-1px);
}

.ec-btn--primary {
  color: #fff;
  background: var(--ec-platform-blue);
  border-color: var(--ec-platform-blue);
  box-shadow: 0 4px 12px rgba(3, 96, 241, 0.25);
}

.ec-btn--primary:hover {
  color: #fff;
  background: #0250d4;
  filter: brightness(1.02);
}

.ec-btn--ghost {
  color: var(--ec-platform-navy);
  background: rgba(255, 255, 255, 0.9);
  border-color: rgba(30, 58, 95, 0.2);
}

.ec-platform-grid {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
}

.ec-platform-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ec-platform-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ec-platform-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ec-platform-grid--main-side {
  grid-template-columns: minmax(0, 1fr) 320px;
}

@media (max-width: 1199px) {
  .ec-platform-grid--3,
  .ec-platform-grid--4,
  .ec-platform-grid--main-side {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .ec-platform-grid--2 {
    grid-template-columns: 1fr;
  }

  .ec-stat-row {
    grid-template-columns: 1fr;
  }
}

.ec-filter-tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 12px;
  padding: 5px;
  border: 1px solid color-mix(in srgb, var(--ec-platform-blue, #0360f1) 22%, #c7d7f5);
  border-radius: 14px;
  background: #fff;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.75),
    0 1px 2px rgba(7, 40, 84, 0.04);
}

.ec-filter-tabs__btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid transparent;
  background: transparent;
  color: var(--ec-platform-navy, #072854);
  border-radius: 10px;
  padding: 7px 13px;
  font-family: var(--ec-font, 'Inter', sans-serif);
  font-size: 0.75rem;
  font-weight: 650;
  letter-spacing: 0.015em;
  cursor: pointer;
  opacity: 0.78;
  transition:
    color 0.16s ease,
    background 0.16s ease,
    border-color 0.16s ease,
    box-shadow 0.16s ease,
    opacity 0.16s ease;
}

.ec-filter-tabs__btn:hover {
  opacity: 1;
  color: var(--ec-platform-blue, #0360f1);
  background: rgba(255, 255, 255, 0.72);
}

.ec-filter-tabs__btn.is-active {
  opacity: 1;
  color: #fff;
  background: #fff;
  border-color: color-mix(in srgb, var(--ec-platform-navy, #072854) 35%, var(--ec-platform-blue, #0360f1));
  box-shadow:
    0 2px 5px rgba(3, 96, 241, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.ec-text-link {
  color: var(--ec-platform-blue);
  font-weight: 600;
  font-size: 0.8125rem;
  text-decoration: none;
}

.ec-text-link:hover {
  text-decoration: underline;
}

.ec-module-table {
  width: 100%;
  border-collapse: collapse;
}

.ec-module-table th {
  background: #fff;
  color: #0f172a;
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  text-align: start;
  padding: 10px 12px;
  border-bottom: 1px solid var(--ec-platform-line);
}

.ec-module-table td {
  padding: 12px;
  border-bottom: 1px solid #f1f5f9;
  color: #475569;
  font-size: 0.875rem;
  vertical-align: middle;
}

.ec-module-table a {
  color: var(--ec-platform-blue);
  font-weight: 600;
}

/* Shared CareOS UI primitives — usable across all SPA modules */

.ui-form-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 0.875rem;
  color: #334155;
}

.ui-form-field__label {
  font-weight: 600;
  color: #0f172a;
}

.ui-form-field__required {
  color: #dc2626;
  -webkit-margin-start: 2px;
          margin-inline-start: 2px;
}

.ui-form-field__hint {
  font-size: 0.78rem;
  color: #64748b;
}

.ui-form-field__error {
  font-size: 0.78rem;
  color: #b91c1c;
}

.ui-form-field.has-error input,
.ui-form-field.has-error select,
.ui-form-field.has-error textarea {
  border-color: #f87171;
}

.ui-form-field input,
.ui-form-field select,
.ui-form-field textarea {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 8px 10px;
  font: inherit;
  background: #fff;
}

.ui-multi-check {
  display: flex;
  flex-direction: column;
  gap: 8px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 10px;
  background: #fff;
}

.ui-multi-check.is-disabled {
  opacity: 0.65;
  pointer-events: none;
}

.ui-multi-check__label {
  font-size: 0.85rem;
  font-weight: 600;
  color: #0f172a;
}

.ui-multi-check__toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.ui-multi-check__search {
  flex: 1 1 140px;
  min-width: 120px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 6px 10px;
  font: inherit;
}

.ui-multi-check__action {
  border: 1px solid #e2e8f0;
  background: #fff;
  border-radius: 8px;
  padding: 6px 10px;
  font: inherit;
  font-size: 0.8rem;
  cursor: pointer;
}

.ui-multi-check__action:hover:not(:disabled) {
  background: #fff;
}

.ui-multi-check__list {
  max-height: 180px;
  overflow: auto;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  grid-gap: 4px 10px;
  gap: 4px 10px;
}

.ui-multi-check__item {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  font-size: 0.85rem;
  cursor: pointer;
}

.ui-multi-check__empty,
.ui-multi-check__count {
  margin: 0;
  font-size: 0.8rem;
  color: #64748b;
}

.ui-empty-state {
  text-align: center;
  padding: 28px 16px;
  color: #64748b;
}

.ui-empty-state__title {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 600;
  color: #334155;
}

.ui-empty-state__hint {
  margin: 6px 0 0;
  font-size: 0.85rem;
}

.ui-empty-state__action {
  margin-top: 12px;
}

/* Buttons: see careos-module.css (.ui-btn aliased there). */

.ui-section-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 16px;
}

.ui-section-nav__tab {
  border: 1px solid #e2e8f0;
  background: #fff;
  border-radius: 999px;
  padding: 7px 14px;
  font: inherit;
  font-size: 0.85rem;
  color: #475569;
  cursor: pointer;
}

.ui-section-nav__tab.is-active {
  background: var(--ec-platform-blue, #0360f1);
  border-color: var(--ec-platform-blue, #0360f1);
  color: #fff;
  font-weight: 600;
}

.ui-flash {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  margin: 0 0 12px;
  font-size: 0.9rem;
}

.ui-flash--success {
  background: #ecfdf5;
  color: #065f46;
  border: 1px solid #a7f3d0;
}

.ui-flash--info {
  background: #eff6ff;
  color: #1e40af;
  border: 1px solid #bfdbfe;
}

.ui-flash--error {
  background: #fef2f2;
  color: #991b1b;
  border: 1px solid #fecaca;
}

.ui-flash__text {
  margin: 0;
  flex: 1 1;
}

.ui-flash__dismiss {
  border: 0;
  background: transparent;
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
  color: inherit;
  opacity: 0.7;
}

/* .ui-btn* → careos-module.css */

.ui-confirm-modal .inv-modal__title {
  font-weight: 700;
}

.ui-confirm-modal--error .inv-modal__title {
  color: #b91c1c;
}

.ui-flash-modal__text {
  margin: 0;
  line-height: 1.5;
  white-space: pre-wrap;
}

.ui-flash-modal__list,
.ui-flash__list {
  margin: 0;
  padding-left: 1.15rem;
  line-height: 1.55;
}

.ui-flash-modal__list li + li,
.ui-flash__list li + li {
  margin-top: 0.35rem;
}

/* —— Module page chrome —— moved to careos-module.css (imported before module dashboards).
 * Keep form/flash helpers below; page headers, KPIs, and buttons are shared there.
 */

/* Portaled module dialogs — always above CareOS sidebar (z-index 1000). */
.careos-portal-modal {
  position: fixed;
  inset: 0;
  z-index: 13000;
  display: grid;
  place-items: center;
  padding: 16px;
  box-sizing: border-box;
}

body.careos-portal-modal-open {
  overflow: hidden;
}


/* Shared shimmer skeleton — admin SPA */

.ch-skel {
  --ch-skel-base: color-mix(in srgb, var(--ec-platform-line, #e2e8f0) 70%, #fff);
  --ch-skel-shine: color-mix(in srgb, #fff 55%, var(--ec-platform-line, #e2e8f0));
  display: block;
  background: linear-gradient(
    105deg,
    var(--ch-skel-base) 0%,
    var(--ch-skel-base) 38%,
    var(--ch-skel-shine) 50%,
    var(--ch-skel-base) 62%,
    var(--ch-skel-base) 100%
  );
  background-size: 220% 100%;
  animation: ch-skel-shimmer 1.35s ease-in-out infinite;
  border-radius: 8px;
}

html[dir='rtl'] .ch-skel {
  animation-name: ch-skel-shimmer-rtl;
}

@keyframes ch-skel-shimmer {
  0% { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}

@keyframes ch-skel-shimmer-rtl {
  0% { background-position: -100% 0; }
  100% { background-position: 100% 0; }
}

@media (prefers-reduced-motion: reduce) {
  .ch-skel {
    animation: none;
    background: var(--ch-skel-base);
  }
}

.ch-skel--circle { border-radius: 999px; }
.ch-skel--pill { border-radius: 999px; }

.ch-skel-page {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 2px 0 8px;
}

.ch-skel-page__hero {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-end;
}

.ch-skel-page__hero-text {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: min(100%, 280px);
  flex: 1 1;
}

.ch-skel-page__hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.ch-skel-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.ch-skel-kpi {
  border: 1px solid var(--ec-platform-line, #e2e8f0);
  border-radius: 12px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: color-mix(in srgb, #fff 88%, var(--ec-platform-line, #e2e8f0));
}

.ch-skel-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  grid-gap: 16px;
  gap: 16px;
}

@media (max-width: 900px) {
  .ch-skel-grid { grid-template-columns: 1fr; }
}

.ch-skel-card {
  border: 1px solid var(--ec-platform-line, #e2e8f0);
  border-radius: 14px;
  padding: 16px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 160px;
}

.ch-skel-card__head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.ch-skel-rows {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.ch-skel-row {
  display: grid;
  grid-template-columns: 1.4fr 1fr 0.7fr 0.7fr;
  grid-gap: 12px;
  gap: 12px;
  align-items: center;
}

@media (max-width: 720px) {
  .ch-skel-row { grid-template-columns: 1fr 1fr; }
}

.ch-skel-table {
  border: 1px solid var(--ec-platform-line, #e2e8f0);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
}

.ch-skel-table__head,
.ch-skel-table__row {
  display: grid;
  grid-template-columns: 1.6fr 1fr 0.8fr 0.8fr 0.7fr;
  grid-gap: 12px;
  gap: 12px;
  padding: 12px 14px;
  align-items: center;
}

.ch-skel-table__head {
  background: color-mix(in srgb, var(--ec-platform-line, #e2e8f0) 35%, #fff);
  border-bottom: 1px solid var(--ec-platform-line, #e2e8f0);
}

.ch-skel-table__row + .ch-skel-table__row {
  border-top: 1px solid color-mix(in srgb, var(--ec-platform-line, #e2e8f0) 70%, transparent);
}

@media (max-width: 720px) {
  .ch-skel-table__head,
  .ch-skel-table__row {
    grid-template-columns: 1.4fr 1fr 0.8fr;
  }
  .ch-skel-table__head > :nth-child(n + 4),
  .ch-skel-table__row > :nth-child(n + 4) {
    display: none;
  }
}

.ch-skel-form {
  border: 1px solid var(--ec-platform-line, #e2e8f0);
  border-radius: 14px;
  padding: 16px;
  background: #fff;
  display: grid;
  grid-gap: 14px;
  gap: 14px;
}

.ch-skel-form__field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ch-skel-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* RTL / LTR layout — mirrors Rails css/locale_rtl.scss for the admin SPA */

html[dir='rtl'] body {
  direction: rtl;
  text-align: right;
  font-family: 'Noto Sans Arabic', var(--ec-font);
}

html[dir='ltr'] body {
  direction: ltr;
  text-align: left;
}

/* Keep locale toggle readable (EN | AR) */
html[dir='rtl'] .ec-locale-switcher,
html[dir='ltr'] .ec-locale-switcher {
  direction: ltr;
}

/* -------------------------------------------------------------------------- */
/* App shell                                                                  */
/* -------------------------------------------------------------------------- */

html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout .ec-app-shell {
  direction: rtl;
}

html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout .ec-sidebar-menu-list > li.open > a,
html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout .ec-sidebar-menu-list > li.active > a {
  /* Mirror LTR inset accent bar (shell.css uses inset 3px 0 0). */
  box-shadow: inset -3px 0 0 var(--ec-sidebar-active-bar, var(--ec-platform-blue, #0360f1));
}

/* Mirror LTR edge shadow from shell.css — keep the same softness, flip X only.
   Previous RTL override used -4px/24px @ 0.18 and looked like a heavy smear. */
html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout .ec-app-sidebar {
  box-shadow: -1px 0 0 rgba(12, 26, 46, 0.04), -4px 0 18px rgba(12, 26, 46, 0.04);
}

html[dir='rtl'] .ec-platform-grid--main-side {
  grid-template-columns: 320px minmax(0, 1fr);
}

@media (max-width: 1199px) {
  html[dir='rtl'] .ec-platform-grid--main-side {
    grid-template-columns: 1fr;
  }
}

html[dir='rtl'] .page-wrapper .left-aside {
  border-right: none;
}

html[dir='rtl'] .dot-dropdown-menu {
  right: auto;
  left: 0;
}

html[dir='rtl'] .dot-dropdown-menu li button,
html[dir='rtl'] .dot-dropdown-menu li a {
  text-align: right;
}


html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout .ec-sidebar-menu-arrow {
  margin-left: 0;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}

html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout .ec-sidebar-menu-list .sub-menu a {
  padding-block: 8px;
  padding-inline: 40px 16px !important;
}

html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout .ec-sidebar-toggle {
  -webkit-border-end: none;
          border-inline-end: none;
  -webkit-border-start: 1px solid var(--ec-proposal-card-border);
          border-inline-start: 1px solid var(--ec-proposal-card-border);
}

/* Compact rail — mirror Rails admin_rtl_layout compact flyouts */
html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout.ec-sidebar-compact .ec-sidebar-has-submenu > a > .ec-sidebar-menu-arrow {
  right: auto;
  left: 6px;
}

html[dir='rtl'] body.ec-b2b-theme.ec-sidebar-layout.ec-sidebar-compact .ec-sidebar-menu-list > li.open > .sub-menu {
  left: auto !important;
  right: 100% !important;
  border-radius: 8px 0 0 8px !important;
  /* Mirror LTR compact flyout (shell.css: 4px 4px 16px @ 0.1). */
  box-shadow: -4px 4px 16px rgba(15, 23, 42, 0.1) !important;
}

/* -------------------------------------------------------------------------- */
/* Top navigation                                                             */
/* -------------------------------------------------------------------------- */

/* Keep base navigation.css justify-content: flex-end — in RTL that packs the
   Create/actions cluster to the physical LEFT (mirror of LTR). Do NOT force
   flex-start here; that pins the whole header chrome back to the right. */

html[dir='rtl'] .ec-app-topbar .create-list-btn > li {
  padding: 6px 18px 6px 12px;
  margin-right: 0;
  margin-left: 20px;
}

html[dir='rtl'] .ec-app-topbar .create-list-btn > li span.arrow {
  right: auto;
  left: 20px;
}

html[dir='rtl'] .ec-app-topbar .create-sub-menu {
  right: auto;
  left: -9px;
}

html[dir='rtl'] .ec-app-topbar .more-actions {
  padding-left: 0;
  padding-right: 15px;
}

html[dir='rtl'] .ec-app-topbar .user-wrap {
  margin-left: 0;
  margin-right: 10px;
}

html[dir='rtl'] .ec-app-topbar .user-img {
  padding-right: 0;
  padding-left: 16px;
}

html[dir='rtl'] .ec-app-topbar .down-arrow {
  right: auto;
  left: 0;
}

html[dir='rtl'] .ec-app-topbar .user-dropdown {
  right: auto;
  left: -30px;
}

/* -------------------------------------------------------------------------- */
/* OPD page layout                                                            */
/* -------------------------------------------------------------------------- */

html[dir='rtl'] .page-wrapper {
  direction: rtl;
}

html[dir='rtl'] .page-wrapper .left-aside {
  border-right: none;
  border-left: 1px solid var(--ec-platform-line);
}

html[dir='rtl'] .page-wrapper .department-select,
html[dir='rtl'] .page-wrapper .department-dropdown {
  margin-right: 0;
  margin-left: 20px;
}

html[dir='rtl'] .page-wrapper button.show-share {
  margin-right: 0;
  margin-left: 20px;
}

html[dir='rtl'] .page-wrapper .add-patient svg,
html[dir='rtl'] .page-wrapper .add-patient img {
  margin-left: 0;
  margin-right: 8px;
}

html[dir='rtl'] .page-wrapper .three-dot-btn {
  margin-left: 0;
  margin-right: 8px;
}

html[dir='rtl'] .page-wrapper .walkin-section h4 {
  padding-left: 0;
  padding-right: 16px;
}

@media (max-width: 991px) {
  html[dir='rtl'] .page-wrapper .left-aside {
    border-left: none;
  }
}

/* -------------------------------------------------------------------------- */
/* OPD panels (walk-in, tokens, date picker)                                  */
/* -------------------------------------------------------------------------- */

html[dir='rtl'] .walk-in-items-list li > span {
  left: auto;
  right: 7px;
}

html[dir='rtl'] .walk-in-items-list .panel-heading {
  margin-left: 0;
  margin-right: 20px;
}

html[dir='rtl'] .walk-in-items-list .drag-btn {
  right: auto;
  left: 33px;
}

html[dir='rtl'] .walk-in-items-list .appt-btn {
  right: auto;
  left: 15px;
}

/* -------------------------------------------------------------------------- */
/* Modals & forms                                                             */
/* -------------------------------------------------------------------------- */

html[dir='rtl'] .close-reschedule-modal-btn,
html[dir='rtl'] .bulk-close,
html[dir='rtl'] .close-leave-btn,
html[dir='rtl'] .closeicon,
html[dir='rtl'] .closeicon-slot,
html[dir='rtl'] .close-btn {
  right: auto;
  left: 12px;
}

html[dir='rtl'] .closeicon-slot {
  left: -5px;
}

html[dir='rtl'] .appointment-modal .procedure-parent label,
html[dir='rtl'] .appointment-modal .vital-field label {
  text-align: right;
}

html[dir='rtl'] .appointment-modal .accordion.accordion-appt {
  text-align: right;
}

html[dir='rtl'] .leave-modal-wrapper .heading {
  padding-right: 0;
  padding-left: 24px;
}

html[dir='rtl'] .modal input[type='text'],
html[dir='rtl'] .modal input[type='number'],
html[dir='rtl'] .modal input[type='date'],
html[dir='rtl'] .modal input[type='time'],
html[dir='rtl'] .modal select,
html[dir='rtl'] .modal textarea {
  text-align: right;
}

html[dir='rtl'] .modal input[type='number'] {
  direction: ltr;
  text-align: end;
}

/* -------------------------------------------------------------------------- */
/* Dropdowns & alerts                                                         */
/* -------------------------------------------------------------------------- */

html[dir='rtl'] .dot-dropdown-menu {
  right: auto;
  left: 0;
}

html[dir='rtl'] .dot-dropdown-menu li button,
html[dir='rtl'] .dot-dropdown-menu li a {
  text-align: right;
}

html[dir='rtl'] .updated-alert {
  right: auto;
  left: 20px;
}

/* -------------------------------------------------------------------------- */
/* Calendar                                                                   */
/* -------------------------------------------------------------------------- */

html[dir='rtl'] .full-calendar-wrapper {
  direction: rtl;
}

html[dir='rtl'] .full-calendar-wrapper .opd-event-status-menu__dropdown {
  right: auto;
  left: 0;
}

html[dir='rtl'] .full-calendar-wrapper .opd-event-status-menu__option {
  text-align: right;
}

html[dir='rtl'] .full-calendar-wrapper .fc-v-event.CheckedIn,
html[dir='rtl'] .full-calendar-wrapper .fc-h-event.CheckedIn,
html[dir='rtl'] .full-calendar-wrapper .fc-daygrid-event.CheckedIn,
html[dir='rtl'] .full-calendar-wrapper .fc-timeline-event.CheckedIn {
  border-left: none !important;
  border-right: 4px solid #2c7a46 !important;
}

html[dir='rtl'] .full-calendar-wrapper .fc-v-event.NoShow,
html[dir='rtl'] .full-calendar-wrapper .fc-h-event.NoShow,
html[dir='rtl'] .full-calendar-wrapper .fc-daygrid-event.NoShow,
html[dir='rtl'] .full-calendar-wrapper .fc-timeline-event.NoShow {
  border-left: none !important;
  border-right: 4px solid #803e48 !important;
}

html[dir='rtl'] .full-calendar-wrapper .fc-v-event.CheckedOut,
html[dir='rtl'] .full-calendar-wrapper .fc-v-event.Engaged,
html[dir='rtl'] .full-calendar-wrapper .fc-h-event.CheckedOut,
html[dir='rtl'] .full-calendar-wrapper .fc-h-event.Engaged,
html[dir='rtl'] .full-calendar-wrapper .fc-daygrid-event.CheckedOut,
html[dir='rtl'] .full-calendar-wrapper .fc-daygrid-event.Engaged,
html[dir='rtl'] .full-calendar-wrapper .fc-timeline-event.CheckedOut,
html[dir='rtl'] .full-calendar-wrapper .fc-timeline-event.Engaged {
  border-left: none !important;
  border-right: 4px solid var(--ec-platform-navy) !important;
}

html[dir='rtl'] .full-calendar-wrapper .fc-v-event.Schedule,
html[dir='rtl'] .full-calendar-wrapper .fc-v-event.Confirmed,
html[dir='rtl'] .full-calendar-wrapper .fc-h-event.Schedule,
html[dir='rtl'] .full-calendar-wrapper .fc-h-event.Confirmed,
html[dir='rtl'] .full-calendar-wrapper .fc-daygrid-event.Schedule,
html[dir='rtl'] .full-calendar-wrapper .fc-daygrid-event.Confirmed,
html[dir='rtl'] .full-calendar-wrapper .fc-timeline-event.Schedule,
html[dir='rtl'] .full-calendar-wrapper .fc-timeline-event.Confirmed {
  border-left: none !important;
  border-right: 4px solid var(--ec-opd-primary) !important;
}

html[dir='rtl'] .general-doctor-col-header__share-panel ul {
  left: 50%;
  right: auto;
  transform: translateX(-50%);
}

html[dir='rtl'] .token-date-nav button svg {
  transform: scaleX(-1);
}

/* -------------------------------------------------------------------------- */
/* Token / consultation features                                              */
/* -------------------------------------------------------------------------- */

html[dir='rtl'] .token-slot.CheckedIn {
  border-left: none;
  border-right: 4px solid #2c7a46;
}

html[dir='rtl'] .token-slot.NoShow {
  border-left: none;
  border-right: 4px solid #803e48;
}

html[dir='rtl'] .token-slot.CheckedOut,
html[dir='rtl'] .token-slot.Engaged {
  border-left: none;
  border-right: 4px solid var(--ec-platform-navy);
}

html[dir='rtl'] .token-slot.Schedule,
html[dir='rtl'] .token-slot.Confirmed {
  border-left: none;
  border-right: 4px solid var(--ec-platform-blue);
}

html[dir='rtl'] .queue-modal-wrapper,
html[dir='rtl'] .queue-display-list {
  direction: rtl;
  text-align: right;
}

html[dir='rtl'] .patient-search-results {
  direction: rtl;
}

html[dir='rtl'] .patient-search-results li button {
  text-align: right;
}

/* -------------------------------------------------------------------------- */
/* Utility: embedded LTR islands (phone numbers, codes, times)                */
/* -------------------------------------------------------------------------- */

html[dir='rtl'] .dir-ltr,
html[dir='rtl'] [dir='ltr'] {
  direction: ltr;
  text-align: left;
}

/* Final Platform theme force — wins over leftover legacy rules */

body.ec-admin-theme-platform,
body.ec-b2b-theme {
  background: var(--ec-platform-mist) !important;
  color: var(--ec-platform-ink);
  font-family: var(--ec-font);
}

body.ec-admin-theme-platform button,
body.ec-admin-theme-platform .btn,
body.ec-admin-theme-platform input,
body.ec-admin-theme-platform select,
body.ec-admin-theme-platform textarea,
body.ec-admin-theme-platform .ec-searchable-select__control,
body.ec-b2b-theme button,
body.ec-b2b-theme .btn,
body.ec-b2b-theme input,
body.ec-b2b-theme select,
body.ec-b2b-theme textarea,
body.ec-b2b-theme .ec-searchable-select__control {
  border-radius: var(--ec-platform-btn-radius, 10px);
}

body.ec-admin-theme-platform .add-patient,
body.ec-admin-theme-platform .create-list-btn > li,
body.ec-admin-theme-platform .ec-btn--primary,
body.ec-admin-theme-platform .ui-btn--primary,
body.ec-admin-theme-platform button.primary,
body.ec-admin-theme-platform .btn-primary,
body.ec-b2b-theme .add-patient,
body.ec-b2b-theme .create-list-btn > li,
body.ec-b2b-theme .ec-btn--primary,
body.ec-b2b-theme .ui-btn--primary,
body.ec-b2b-theme button.primary,
body.ec-b2b-theme .btn-primary,
/* Module primary CTAs — always CareOS blue + white text (never white-on-white) */
body.ec-admin-theme-platform .hr-btn--primary,
body.ec-admin-theme-platform .pref-btn--primary,
body.ec-admin-theme-platform .ot-btn--primary,
body.ec-admin-theme-platform .er-btn--primary,
body.ec-admin-theme-platform .amb-btn--primary,
body.ec-admin-theme-platform .opd-btn--primary,
body.ec-admin-theme-platform .ehr-shot-btn--primary,
body.ec-admin-theme-platform .lab-shot-btn--primary,
body.ec-admin-theme-platform .rad-shot-btn--primary,
body.ec-admin-theme-platform .ipd-shot-btn--primary,
body.ec-admin-theme-platform .pat-shot-btn--primary,
body.ec-admin-theme-platform .users-shot-btn--primary,
body.ec-admin-theme-platform .pharm-shot-btn--primary,
body.ec-admin-theme-platform .pharm-btn--primary,
body.ec-admin-theme-platform .ums__btn--primary,
body.ec-b2b-theme .hr-btn--primary,
body.ec-b2b-theme .pref-btn--primary,
body.ec-b2b-theme .ot-btn--primary,
body.ec-b2b-theme .er-btn--primary,
body.ec-b2b-theme .amb-btn--primary,
body.ec-b2b-theme .opd-btn--primary,
body.ec-b2b-theme .ehr-shot-btn--primary,
body.ec-b2b-theme .lab-shot-btn--primary,
body.ec-b2b-theme .rad-shot-btn--primary,
body.ec-b2b-theme .ipd-shot-btn--primary,
body.ec-b2b-theme .pat-shot-btn--primary,
body.ec-b2b-theme .users-shot-btn--primary,
body.ec-b2b-theme .pharm-shot-btn--primary,
body.ec-b2b-theme .pharm-btn--primary,
body.ec-b2b-theme .ums__btn--primary,
body.ec-admin-theme-platform a.hr-btn--primary,
body.ec-admin-theme-platform a.pref-btn--primary,
body.ec-admin-theme-platform a.ot-btn--primary,
body.ec-admin-theme-platform a.ehr-shot-btn--primary,
body.ec-admin-theme-platform a.lab-shot-btn--primary,
body.ec-admin-theme-platform a.rad-shot-btn--primary,
body.ec-b2b-theme a.hr-btn--primary,
body.ec-b2b-theme a.pref-btn--primary,
body.ec-b2b-theme a.ot-btn--primary,
body.ec-b2b-theme a.ehr-shot-btn--primary,
body.ec-b2b-theme a.lab-shot-btn--primary,
body.ec-b2b-theme a.rad-shot-btn--primary {
  background: var(--ec-platform-blue, #0360f1) !important;
  background-color: var(--ec-platform-blue, #0360f1) !important;
  border-color: var(--ec-platform-blue, #0360f1) !important;
  color: #fff !important;
  border-radius: var(--ec-platform-btn-radius, 10px) !important;
  box-shadow: var(--ec-platform-btn-shadow, 0 4px 12px rgba(3, 96, 241, 0.22));
}

body.ec-admin-theme-platform .hr-btn--primary:hover,
body.ec-admin-theme-platform .pref-btn--primary:hover,
body.ec-admin-theme-platform .ot-btn--primary:hover,
body.ec-admin-theme-platform .er-btn--primary:hover,
body.ec-admin-theme-platform .amb-btn--primary:hover,
body.ec-admin-theme-platform .ehr-shot-btn--primary:hover,
body.ec-admin-theme-platform .lab-shot-btn--primary:hover,
body.ec-admin-theme-platform .rad-shot-btn--primary:hover,
body.ec-b2b-theme .hr-btn--primary:hover,
body.ec-b2b-theme .pref-btn--primary:hover,
body.ec-b2b-theme .ot-btn--primary:hover,
body.ec-b2b-theme .er-btn--primary:hover,
body.ec-b2b-theme .amb-btn--primary:hover,
body.ec-b2b-theme .ehr-shot-btn--primary:hover,
body.ec-b2b-theme .lab-shot-btn--primary:hover,
body.ec-b2b-theme .rad-shot-btn--primary:hover {
  background: var(--ec-platform-blue-hover, #0250d4) !important;
  background-color: var(--ec-platform-blue-hover, #0250d4) !important;
  border-color: var(--ec-platform-blue-hover, #0250d4) !important;
  color: #fff !important;
}

/* Departments hero sits on blue — keep inverted white primary there */
body.ec-admin-theme-platform .pref-dept__hero-actions .pref-btn--primary,
body.ec-b2b-theme .pref-dept__hero-actions .pref-btn--primary {
  background: #fff !important;
  background-color: #fff !important;
  border-color: #fff !important;
  color: var(--ec-platform-navy, #072854) !important;
  box-shadow: none !important;
}

body.ec-admin-theme-platform .pref-dept__hero-actions .pref-btn:not(.pref-btn--primary),
body.ec-b2b-theme .pref-dept__hero-actions .pref-btn:not(.pref-btn--primary) {
  background: rgba(255, 255, 255, 0.12) !important;
  background-color: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
  color: #fff !important;
}

/* Secondary / default module buttons: never white text on white fill */
body.ec-admin-theme-platform .hr-btn:not(.hr-btn--primary):not(.hr-btn--danger),
body.ec-admin-theme-platform .pref-btn:not(.pref-btn--primary):not(.pref-btn--danger),
body.ec-admin-theme-platform .ot-btn:not(.ot-btn--primary),
body.ec-admin-theme-platform .er-btn:not(.er-btn--primary),
body.ec-admin-theme-platform .amb-btn:not(.amb-btn--primary):not(.amb-btn--danger),
body.ec-admin-theme-platform .rad-shot-btn--ghost,
body.ec-admin-theme-platform .ehr-shot-btn--ghost,
body.ec-admin-theme-platform .lab-shot-btn--ghost,
body.ec-b2b-theme .hr-btn:not(.hr-btn--primary):not(.hr-btn--danger),
body.ec-b2b-theme .pref-btn:not(.pref-btn--primary):not(.pref-btn--danger),
body.ec-b2b-theme .ot-btn:not(.ot-btn--primary),
body.ec-b2b-theme .er-btn:not(.er-btn--primary),
body.ec-b2b-theme .amb-btn:not(.amb-btn--primary):not(.amb-btn--danger),
body.ec-b2b-theme .rad-shot-btn--ghost,
body.ec-b2b-theme .ehr-shot-btn--ghost,
body.ec-b2b-theme .lab-shot-btn--ghost,
body.ec-admin-theme-platform a.hr-btn:not(.hr-btn--primary):not(.hr-btn--danger),
body.ec-b2b-theme a.hr-btn:not(.hr-btn--primary):not(.hr-btn--danger) {
  background: #f1f5f9 !important;
  background-color: #f1f5f9 !important;
  border-color: rgba(7, 40, 84, 0.22) !important;
  color: var(--ec-platform-navy, #072854) !important;
  box-shadow: none !important;
}

body.ec-admin-theme-platform .modal-content,
body.ec-admin-theme-platform .dot-dropdown-menu,
body.ec-admin-theme-platform .user-dropdown {
  border-radius: 12px !important;
  border: 1px solid var(--ec-platform-line) !important;
  box-shadow: var(--ec-platform-card-shadow) !important;
}

body.ec-admin-theme-platform .fc .fc-button-primary {
  background: #fff !important;
  border: 1px solid var(--ec-platform-line) !important;
  border-radius: 10px !important;
  color: var(--ec-platform-navy, #072854) !important;
  box-shadow: none !important;
}

body.ec-admin-theme-platform .fc .fc-button-primary .fc-icon {
  color: inherit !important;
}

body.ec-admin-theme-platform .fc .fc-today-button {
  background: var(--ec-platform-blue) !important;
  border-color: var(--ec-platform-blue) !important;
  color: #fff !important;
}

body.ec-admin-theme-platform .fc .fc-today-button .fc-icon {
  color: #fff !important;
}

body.ec-admin-theme-platform .fc .fc-prev-button,
body.ec-admin-theme-platform .fc .fc-next-button {
  color: var(--ec-platform-blue) !important;
}

body.ec-admin-theme-platform .fc .fc-prev-button .fc-icon,
body.ec-admin-theme-platform .fc .fc-next-button .fc-icon {
  color: var(--ec-platform-blue) !important;
}

body.ec-admin-theme-platform .fc .fc-button-primary:not(:disabled).fc-button-active,
body.ec-admin-theme-platform .fc .fc-button-primary:not(:disabled):active {
  background: var(--ec-platform-blue) !important;
  border-color: var(--ec-platform-blue) !important;
  color: #fff !important;
}

body.ec-admin-theme-platform .fc .fc-button-primary:not(:disabled).fc-button-active .fc-icon,
body.ec-admin-theme-platform .fc .fc-button-primary:not(:disabled):active .fc-icon {
  color: #fff !important;
}

body.ec-admin-theme-platform .fc-theme-standard td,
body.ec-admin-theme-platform .fc-theme-standard th,
body.ec-admin-theme-platform .fc-theme-standard .fc-scrollgrid {
  border-color: var(--ec-platform-line) !important;
}

body.ec-admin-theme-platform .fc .fc-col-header-cell-cushion,
body.ec-admin-theme-platform .fc .fc-timegrid-slot-label-cushion {
  color: var(--ec-platform-ink) !important;
}

/* Kill leftover sharp corners on OPD chrome */
body.ec-admin-theme-platform .page-wrapper .left-aside,
body.ec-admin-theme-platform .page-wrapper .right-aside {
  border-radius: var(--ec-platform-card-radius) !important;
  border: 1px solid var(--ec-platform-line) !important;
  box-shadow: var(--ec-platform-card-shadow) !important;
  background: var(--ec-platform-paper) !important;
}

body.ec-admin-theme-platform .opd-inline-date-wrap {
  padding: 0 0 8px !important;
}

body.ec-admin-theme-platform .opd-inline-date-input {
  border: 1px solid var(--ec-platform-line) !important;
  border-radius: 10px !important;
  color: var(--ec-platform-ink) !important;
}

body.ec-admin-theme-platform .current-token-section .heading-area .heading,
body.ec-admin-theme-platform .walkin-section h4 {
  color: var(--ec-platform-ink) !important;
  font-weight: 600 !important;
}

/* Radiology filter / section pills — active = primary blue */
body.ec-admin-theme-platform .rad-shot-pill.is-all.is-active,
body.ec-b2b-theme .rad-shot-pill.is-all.is-active {
  background: var(--ec-platform-blue, #0360f1) !important;
  border-color: var(--ec-platform-blue, #0360f1) !important;
  color: #fff !important;
}

/* Pagination active page */
body.ec-admin-theme-platform .rad-shot-page.is-active,
body.ec-b2b-theme .rad-shot-page.is-active {
  background: var(--ec-platform-blue, #0360f1) !important;
  border-color: var(--ec-platform-blue, #0360f1) !important;
  color: #fff !important;
}

/**
 * Nested overlay stacking:
 * - Page sticky bars hide while any overlay is open
 * - Buried overlays hide their sticky footers so only the top sheet’s actions show
 */

/* Portaled page footers (StickyBottomActions → body) must not cover modals */
body.ch-overlay-open > .ch-bottom-actions,
body.ch-overlay-open > .ec-platform-page__actions,
body.careos-portal-modal-open > .ch-bottom-actions,
body.careos-portal-modal-open > .ec-platform-page__actions,
body.careos-modal-open > .ch-bottom-actions,
body.careos-modal-open > .ec-platform-page__actions,
body.inv-modal-open > .ch-bottom-actions,
body.inv-modal-open > .ec-platform-page__actions,
body:has(.ec-patient-modal) > .ch-bottom-actions,
body:has(.ec-patient-modal) > .ec-platform-page__actions,
body:has(.hr-modal-backdrop) > .ch-bottom-actions,
body:has(.hr-modal-backdrop) > .ec-platform-page__actions {
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Module bottom nav stays under overlays (already z-index 1180); hide while overlay open */
body.ch-overlay-open .module-bottom-nav,
body.careos-portal-modal-open .module-bottom-nav,
body.careos-modal-open .module-bottom-nav,
body.inv-modal-open .module-bottom-nav,
body:has(.ec-patient-modal) .module-bottom-nav {
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Previous modal sticky action rows — replaced by the top sheet */
[data-ch-overlay-buried] .ehr-modal__footer,
[data-ch-overlay-buried] .ehr-modal__actions,
[data-ch-overlay-buried] .lab-shot-modal__footer,
[data-ch-overlay-buried] .lab-shot-modal__actions,
[data-ch-overlay-buried] .rad-shot-modal__footer,
[data-ch-overlay-buried] .rad-shot-modal__actions,
[data-ch-overlay-buried] .ipd-shot-modal__footer,
[data-ch-overlay-buried] .ipd-shot-modal__actions,
[data-ch-overlay-buried] .inv-modal__actions,
[data-ch-overlay-buried] .inv-modal__footer,
[data-ch-overlay-buried] .hr-modal__actions,
[data-ch-overlay-buried] .ec-patient-modal__actions,
[data-ch-overlay-buried] .amb-modal__actions,
[data-ch-overlay-buried] .er-modal__actions,
[data-ch-overlay-buried] .bb-modal__actions,
[data-ch-overlay-buried] .ot-modal__actions,
[data-ch-overlay-buried] .opd-create-form__footer,
[data-ch-overlay-buried] .footer-area,
[data-ch-overlay-buried] .sticky-btn-group,
[data-ch-overlay-buried] .save-and-print,
[data-ch-overlay-buried] .opd-attach__footer,
[data-ch-overlay-buried] .opd-sms__footer,
[data-ch-overlay-buried] .opd-bulk-footer,
[data-ch-overlay-buried] .opd-care-transition__actions,
[data-ch-overlay-buried] .opd-care-transition__confirm-actions,
[data-ch-overlay-buried] .ch-bottom-actions,
[data-ch-overlay-buried] .pharm-shot-modal__actions,
[data-ch-overlay-buried] .pharm-shot-sheet__actions,
[data-ch-overlay-buried] .lab-shot-print-modal__actions,
[data-ch-overlay-buried] .ehr-pack-builder-modal__foot,
[data-ch-overlay-buried] .ehr-tpl-composer__footer,
[data-ch-overlay-buried] .ehr-tpl-snippet-modal__footer {
  visibility: hidden !important;
  pointer-events: none !important;
}

/**
 * Care + Patient chrome — square full-bleed bars.
 * Must load last.
 */
@media (max-width: 991px) {
  body .care-top,
  body .care-top__inner,
  body .care-top__row,
  body .care-top__row--brand,
  body .care-top__lead,
  body .care-top__tools,
  body .care-top__back,
  body .care-top__search-btn,
  body .care-top__more,
  body .care-top__logo,
  body .care-top__logo-link,
  body .care-top__title,
  body .care-top .ch-theme-toggle,
  body .pp-top,
  body .pp-top__actions,
  body .pp-top .ch-theme-toggle,
  html.ch-native-app .care-top,
  html.ch-native-app .care-top *,
  html.ch-native-app .pp-top {
    border-radius: 0 !important;
  }

  body nav.care-tabs,
  body .care-tabs,
  body .care-tabs .care-tabs__btn,
  body .care-tabs button,
  body .care-tabs button.is-active,
  body .care-tabs *,
  body .pp-tabs,
  body .pp-tabs a,
  body .pp-tabs a.is-active,
  html.ch-native-app nav.care-tabs,
  html.ch-native-app .care-tabs,
  html.ch-native-app .care-tabs .care-tabs__btn,
  html.ch-native-app .care-tabs button,
  html.ch-native-app .care-tabs *,
  html.ch-native-app .pp-tabs,
  html.ch-native-app .pp-tabs a,
  html.ch-native-app body nav.care-tabs,
  html.ch-native-app body .care-tabs .care-tabs__btn {
    border-radius: 0 !important;
  }

  body nav.care-tabs,
  body .care-tabs,
  body .care-top,
  body .pp-top,
  body .pp-tabs,
  html.ch-native-app nav.care-tabs,
  html.ch-native-app .care-tabs,
  html.ch-native-app .care-top,
  html.ch-native-app .pp-top,
  html.ch-native-app .pp-tabs {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    inset-inline: 0 !important;
  }
}

html.ch-native-app .care-top,
html.ch-native-app nav.care-tabs,
html.ch-native-app .care-tabs,
html.ch-native-app .care-tabs .care-tabs__btn,
html.ch-native-app .care-tabs button,
html.ch-native-app .pp-top,
html.ch-native-app .pp-tabs,
html.ch-native-app .pp-tabs a {
  border-radius: 0 !important;
}

/* Care + Patient marketplace: square tiles, photos, and invented icons.
   Beats the global phone rule that circles every avatar / classless img. */
@media (max-width: 991px) {
  body .care img,
  body .pp img,
  body .care [class*='avatar'],
  body .care [class*='Avatar'],
  body .pp [class*='avatar'],
  body .pp [class*='Avatar'],
  body .care-mico,
  body .care-mico-art,
  body .care-dept,
  body .care-dept__media,
  body .care-catalog-thumb,
  body .care-promo,
  body .care-market-hero,
  body .care-market-page-hero,
  body .pp-market-hero,
  body .pp-dash__stat,
  body .pp-dash__stat-media,
  body .pp-row__thumb,
  body .pp-pharmacy-card__thumb,
  body .care-scan-card,
  body .care-service-tile,
  body .care-service-tile__media,
  body .care-door,
  body .care-door__thumb,
  body .care-center,
  body .care-center__logo,
  body .care-doc,
  body .care-avatar,
  body .care-spec-chip,
  body .care-shelf-card,
  body .pp-doctor-avatar,
  html.ch-native-app .care img,
  html.ch-native-app .pp img,
  html.ch-native-app .care [class*='avatar'],
  html.ch-native-app .pp [class*='avatar'] {
    border-radius: 0 !important;
  }
}


.careos-care-strip {
  --careos-strip-border: color-mix(in srgb, var(--ec-platform-blue, #0360f1) 16%, #e2e8f0);
  --careos-strip-bg: color-mix(in srgb, var(--ec-platform-blue, #0360f1) 4%, #fff);
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin: 0 0 14px;
  padding: 10px 12px;
  border: 1px solid var(--careos-strip-border);
  border-radius: 12px;
  background: var(--careos-strip-bg);
  min-width: 0;
}

.careos-care-strip--compact {
  margin: 10px 0 0;
  padding: 8px 10px;
  background: #fff;
}

.careos-care-strip__title {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ec-navy, #072854);
}

.careos-care-strip__rail-wrap {
  position: relative;
  min-width: 0;
}

.careos-care-strip__links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.careos-care-strip__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.2;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 8px;
  border: 1px solid color-mix(in srgb, var(--ec-navy, #072854) 14%, #e2e8f0);
  background: #fff;
  color: var(--ec-navy, #072854);
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
}

.careos-care-strip__btn:hover {
  border-color: color-mix(in srgb, var(--ec-platform-blue, #0360f1) 45%, #e2e8f0);
  color: var(--ec-platform-blue, #0360f1);
}

.careos-care-strip__btn--primary {
  background: var(--ec-platform-blue, #0360f1);
  border-color: var(--ec-platform-blue, #0360f1);
  color: #fff;
  box-shadow: 0 1px 2px color-mix(in srgb, var(--ec-platform-blue, #0360f1) 35%, transparent);
}

.careos-care-strip__btn--primary:hover {
  color: #fff;
  filter: brightness(1.05);
}

.careos-care-strip__btn--more {
  background: color-mix(in srgb, var(--ec-navy, #072854) 4%, #fff);
}

.careos-care-strip__more {
  position: relative;
}

.careos-care-strip__menu {
  position: absolute;
  z-index: 20;
  top: calc(100% + 4px);
  inset-inline-end: 0;
  min-width: 180px;
  margin: 0;
  padding: 6px;
  list-style: none;
  border-radius: 10px;
  border: 1px solid var(--careos-strip-border);
  background: #fff;
  box-shadow: 0 8px 24px color-mix(in srgb, var(--ec-navy, #072854) 12%, transparent);
}

.careos-care-strip__menu-link {
  display: block;
  padding: 10px 12px;
  border-radius: 8px;
  color: var(--ec-navy, #072854);
  text-decoration: none;
  font-size: 0.84rem;
  font-weight: 600;
}

.careos-care-strip__menu-link:hover {
  background: color-mix(in srgb, var(--ec-platform-blue, #0360f1) 8%, #fff);
  color: var(--ec-platform-blue, #0360f1);
}

.careos-care-strip__fade {
  display: none;
  pointer-events: none;
}

@media (max-width: 800px) {
  .careos-care-strip {
    padding: 10px 12px;
  }

  .careos-care-strip__links {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    padding-bottom: 2px;
    -webkit-padding-end: 28px;
            padding-inline-end: 28px;
  }

  .careos-care-strip__links::-webkit-scrollbar {
    display: none;
  }

  .careos-care-strip__btn {
    flex: 0 0 auto;
    min-height: 44px;
    padding-inline: 14px;
    scroll-snap-align: start;
  }

  .careos-care-strip__fade {
    display: block;
    position: absolute;
    top: 0;
    bottom: 2px;
    inset-inline-end: 0;
    width: 36px;
    background: linear-gradient(
      to inline-end,
      color-mix(in srgb, var(--careos-strip-bg) 0%, transparent),
      var(--careos-strip-bg)
    );
  }

  .careos-care-strip--compact .careos-care-strip__fade {
    background: linear-gradient(to inline-end, transparent, #fff);
  }
}

/**
 * Care account shell + dashboard (logged-in patient).
 * Aligns with MedCare sharp tokens: 2px radius, no soft shadows.
 */

.hp-shell,
.care-account.hp-shell {
  --hp-navy: #0b1f3a;
  --hp-navy-soft: #16324f;
  --hp-action: #0066ff;
  --hp-action-soft: #ebf5ff;
  --hp-paper: #f7f9fc;
  --hp-surface: #ffffff;
  --hp-ink: #0f172a;
  --hp-muted: #64748b;
  --hp-line: #e2e8f0;
  --hp-success: #16a34a;
  --hp-success-soft: #dcfce7;
  --hp-radius: 2px;
  --hp-radius-lg: 2px;
  --hp-shadow: none;
  --hp-font: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, sans-serif;

  display: grid;
  grid-template-columns: 232px minmax(0, 1fr);
  grid-template-rows: 1fr;
  align-items: stretch;
  min-height: 100vh;
  min-height: 100dvh;
  width: 100%;
  background: var(--hp-paper);
  color: var(--hp-ink);
  font-family: var(--hp-font);
}

/* Hide marketplace top chrome when inside account shell */
.care--web:has(.hp-shell) .care-top,
.care--web:has(.hp-shell) .care-site-footer,
.care--web:has(.hp-shell) .care-top__search,
.care--web:has(.hp-shell) .care-dock {
  display: none !important;
}

.care--web:has(.hp-shell),
.care--web:has(.hp-shell) .care-main,
.care--web:has(.hp-shell) .care-stage {
  padding: 0 !important;
  max-width: none !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  background: var(--hp-paper) !important;
}

.care--web:has(.hp-shell) .care-stage {
  display: flex !important;
  flex-direction: column;
}

.care--web:has(.hp-shell) .hp-shell {
  flex: 1 1 auto;
  width: 100%;
}

/* —— Sidebar —— */
.hp-side {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 20px 12px 16px;
  background: var(--hp-navy);
  color: rgba(248, 250, 252, 0.88);
  -webkit-border-end: 1px solid color-mix(in srgb, #fff 8%, transparent);
          border-inline-end: 1px solid color-mix(in srgb, #fff 8%, transparent);
  align-self: stretch;
  min-height: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  height: auto;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  box-sizing: border-box;
}

.hp-side__brand {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 4px 8px 16px;
  text-decoration: none;
  color: #fff;
}

.hp-side__logo {
  max-width: 100%;
}

.hp-side__mark {
  width: 28px;
  height: 28px;
  border-radius: 2px;
  background:
    linear-gradient(#fff, #fff) center / 28% 72% no-repeat,
    linear-gradient(#fff, #fff) center / 72% 28% no-repeat,
    var(--hp-action);
}

.hp-side__word {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: -0.03em;
}

.hp-side__word span {
  color: #7eb6ff;
}

.hp-side__nav {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1 1;
}

.hp-side__link {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  padding: 0 12px;
  border-radius: 2px;
  color: rgba(248, 250, 252, 0.78);
  text-decoration: none;
  font-size: 0.88rem;
  font-weight: 500;
  -webkit-border-start: 2px solid transparent;
          border-inline-start: 2px solid transparent;
}

.hp-side__link:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}

.hp-side__link.is-active {
  background: rgba(0, 102, 255, 0.22);
  color: #fff;
  border-inline-start-color: var(--hp-action);
  font-weight: 600;
}

.hp-side__ico {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  opacity: 0.9;
}

.hp-side__browse,
.hp-side__logout {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  margin-top: 4px;
  padding: 0 12px;
  border: none;
  border-radius: 2px;
  background: transparent;
  color: rgba(248, 250, 252, 0.7);
  font: inherit;
  font-size: 0.88rem;
  cursor: pointer;
  text-align: start;
  text-decoration: none;
}

.hp-side__browse:hover,
.hp-side__logout:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

.hp-side__browse {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 10px;
  padding-top: 10px;
}

/* —— Top bar —— */
.hp-main {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 100%;
  background: var(--hp-paper);
}

.hp-top {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 60px;
  padding: 10px 24px;
  background: var(--hp-surface);
  border-bottom: 1px solid var(--hp-line);
}

.hp-top__search {
  flex: 1 1;
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 640px;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid var(--hp-line);
  border-radius: 2px;
  background: var(--hp-paper);
}

.hp-top__search:focus-within {
  border-color: var(--hp-action);
  background: var(--hp-surface);
}

.hp-top__search-ico {
  width: 18px;
  height: 18px;
  color: var(--hp-muted);
}

.hp-top__search input {
  flex: 1 1;
  border: none;
  background: transparent;
  font: inherit;
  font-size: 0.9rem;
  color: var(--hp-ink);
  outline: none;
}

.hp-top__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}

.hp-top__bell {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 2px;
  border: 1px solid var(--hp-line);
  background: var(--hp-surface);
  color: var(--hp-navy);
  cursor: pointer;
}

.hp-top__bell .care-ico {
  width: 18px;
  height: 18px;
}

.hp-top__user {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: var(--hp-ink);
  font-weight: 600;
  font-size: 0.9rem;
  padding: 4px 8px 4px 4px;
  border: 1px solid transparent;
  border-radius: 2px;
}

.hp-top__user:hover {
  border-color: var(--hp-line);
  background: var(--hp-paper);
}

.hp-top__avatar {
  width: 36px !important;
  height: 36px !important;
  border-radius: 2px !important;
  object-fit: cover;
  border: 1px solid var(--hp-line);
}

.hp-content {
  padding: 22px 28px 48px;
  max-width: 1100px;
}

/* —— Dashboard —— */
.hp-dash {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.hp-dash__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.hp-dash__hello {
  margin: 0 0 4px;
  font-size: clamp(1.35rem, 2vw, 1.65rem);
  font-weight: 700;
  color: var(--hp-navy);
  letter-spacing: -0.02em;
}

.hp-dash__hello em {
  font-style: normal;
  color: var(--hp-action);
}

.hp-dash__lead {
  margin: 0;
  color: var(--hp-muted);
  font-size: 0.92rem;
  max-width: 42ch;
}

.hp-dash__primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 2px;
  background: var(--hp-action);
  color: #fff;
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  white-space: nowrap;
}

.hp-dash__primary:hover {
  background: #0052cc;
}

.hp-dash__next {
  border: 1px solid var(--hp-line);
  border-radius: 2px;
  background: var(--hp-surface);
  overflow: hidden;
}

.hp-dash__next-kicker {
  padding: 10px 16px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--hp-muted);
  border-bottom: 1px solid var(--hp-line);
  background: var(--hp-paper);
}

.hp-dash__next-body {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px;
  text-decoration: none;
  color: var(--hp-ink);
}

.hp-dash__next.is-empty .hp-dash__next-body {
  color: var(--hp-ink);
}

.hp-dash__next-ico {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border-radius: 2px;
  background: var(--hp-action-soft);
  color: var(--hp-action);
}

.hp-dash__next-ico .care-ico {
  width: 22px;
  height: 22px;
}

.hp-dash__next-copy {
  flex: 1 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.hp-dash__next-copy strong {
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--hp-navy);
}

.hp-dash__next-copy span {
  font-size: 0.86rem;
  color: var(--hp-muted);
}

.hp-dash__next-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--hp-action);
  text-decoration: none;
}

.hp-dash__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.hp-dash__stat {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  grid-column-gap: 12px;
  column-gap: 12px;
  grid-row-gap: 2px;
  row-gap: 2px;
  align-items: center;
  padding: 14px;
  background: var(--hp-surface);
  border: 1px solid var(--hp-line);
  border-radius: 2px;
  text-decoration: none;
  color: var(--hp-ink);
}

.hp-dash__stat:hover {
  border-color: color-mix(in srgb, var(--hp-action) 40%, var(--hp-line));
  background: var(--hp-action-soft);
}

.hp-dash__stat-ico {
  grid-row: 1 / span 2;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 2px;
  background: var(--hp-paper);
  color: var(--hp-action);
  border: 1px solid var(--hp-line);
}

.hp-dash__stat-ico .care-ico {
  width: 18px;
  height: 18px;
}

.hp-dash__stat strong {
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--hp-navy);
  line-height: 1.1;
}

.hp-dash__stat > span:last-child {
  font-size: 0.8rem;
  color: var(--hp-muted);
  font-weight: 500;
}

.hp-dash__grid {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;
  grid-gap: 12px;
  gap: 12px;
}

.hp-card {
  background: var(--hp-surface);
  border: 1px solid var(--hp-line);
  border-radius: 2px;
  padding: 16px;
}

.hp-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--hp-line);
}

.hp-card__head h2 {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--hp-navy);
}

.hp-card__head a {
  color: var(--hp-action);
  font-weight: 600;
  font-size: 0.84rem;
  text-decoration: none;
}

.hp-card__empty {
  margin: 8px 0 0;
  color: var(--hp-muted);
  font-size: 0.9rem;
}

.hp-activity,
.hp-shortcuts {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.hp-activity a,
.hp-shortcuts a {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: var(--hp-ink);
  padding: 10px;
  border-radius: 2px;
  border: 1px solid transparent;
  background: var(--hp-paper);
}

.hp-activity a:hover,
.hp-shortcuts a:hover {
  border-color: var(--hp-line);
  background: var(--hp-surface);
}

.hp-activity strong,
.hp-shortcuts span {
  display: block;
  font-size: 0.9rem;
  font-weight: 600;
}

.hp-activity a > span:nth-child(2) {
  flex: 1 1;
  min-width: 0;
}

.hp-activity a > span:nth-child(2) span,
.hp-activity span span {
  display: block;
  font-size: 0.78rem;
  font-weight: 400;
  color: var(--hp-muted);
}

.hp-activity em,
.hp-shortcuts em {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  color: var(--hp-muted);
  font-style: normal;
  font-size: 1.1rem;
}

.hp-shortcuts a > span:nth-child(2) {
  flex: 1 1;
  font-weight: 600;
  font-size: 0.88rem;
}

.hp-quick {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 8px;
  gap: 8px;
}

.hp-quick a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  border-radius: 2px;
  border: 1px solid var(--hp-line);
  background: var(--hp-paper);
  text-decoration: none;
  color: var(--hp-ink);
  font-weight: 600;
  font-size: 0.86rem;
}

.hp-quick__ico {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border-radius: 2px;
  background: var(--hp-action-soft);
  color: var(--hp-action);
}

.hp-quick__ico .care-ico {
  width: 18px;
  height: 18px;
}

/* —— Shared account page chrome under shell —— */
.hp-shell .care-account-page,
.hp-shell .pp-section,
.hp-shell .care-v2-history,
.hp-content > .care-account-page,
.hp-content > section,
.hp-content > .pp-page {
  background: transparent;
}

.hp-shell .pp-section__head h1,
.hp-shell .care-account-id h1,
.hp-shell h1.pp-title {
  color: var(--hp-navy);
  font-weight: 700;
  letter-spacing: -0.02em;
}

.hp-shell .care-btn--primary,
.hp-shell .pp-btn--primary,
.hp-shell a.pp-link-btn {
  background: var(--hp-action) !important;
  border-color: var(--hp-action) !important;
  color: #fff !important;
  border-radius: 2px !important;
  font-weight: 600;
}

.hp-shell .pp-tabs,
.hp-shell .care-tabs {
  display: flex;
  gap: 6px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}

.hp-shell .pp-tabs a,
.hp-shell .pp-tabs button,
.hp-shell .care-tabs a {
  min-height: 36px;
  padding: 0 14px;
  border-radius: 2px;
  border: 1px solid var(--hp-line);
  background: var(--hp-surface);
  color: var(--hp-ink);
  font-weight: 500;
  text-decoration: none;
}

.hp-shell .pp-tabs a.is-active,
.hp-shell .pp-tabs button.is-active,
.hp-shell .care-tabs a.is-active {
  background: var(--hp-action);
  border-color: var(--hp-action);
  color: #fff;
}

.hp-shell .pp-card,
.hp-shell .care-account-card,
.hp-shell .pp-appt-card,
.hp-shell .care-v2-history-row {
  background: var(--hp-surface);
  border: 1px solid var(--hp-line);
  border-radius: 2px;
  box-shadow: none;
}

.hp-shell .pp-badge--success,
.hp-shell .is-delivered,
.hp-shell .is-completed,
.hp-shell .pp-status--available {
  background: var(--hp-success-soft);
  color: var(--hp-success);
  border-radius: 2px;
  padding: 4px 8px;
  font-size: 0.78rem;
  font-weight: 600;
}

.hp-shell .pp-badge--progress,
.hp-shell .is-progress {
  background: var(--hp-action-soft);
  color: var(--hp-action);
  border-radius: 2px;
  padding: 4px 8px;
  font-size: 0.78rem;
  font-weight: 600;
}

.hp-shell table.pp-table,
.hp-shell .pp-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--hp-surface);
  border: 1px solid var(--hp-line);
  border-radius: 2px;
  overflow: hidden;
  box-shadow: none;
}

.hp-shell .pp-table th {
  background: var(--hp-paper);
  color: var(--hp-muted);
  font-size: 0.78rem;
  font-weight: 600;
  text-align: start;
  padding: 12px 14px;
  border-bottom: 1px solid var(--hp-line);
}

.hp-shell .pp-table td {
  padding: 14px;
  border-bottom: 1px solid var(--hp-line);
  font-size: 0.9rem;
}

.hp-shell .pp-table tr:last-child td {
  border-bottom: none;
}

/* Login split (outside shell) — deferred to care-medcare-account.css */
.care-v2-login.hp-login {
  /* layout + photo handled by medcare-account login block */
}

.care-v2-login.hp-login .care-v2-login__submit {
  background: #0066ff !important;
  color: #fff !important;
  min-height: 48px;
  font-weight: 700;
}

.care-v2-login.hp-login .care-v2-login__title {
  color: #0b1f3a;
  font-weight: 700;
}

@media (max-width: 960px) {
  .hp-shell {
    grid-template-columns: 1fr;
  }

  .hp-side {
    display: none;
  }

  .hp-dash__stats,
  .hp-dash__grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px) {
  .hp-content {
    padding: 16px 14px 36px;
  }

  .hp-dash__stats,
  .hp-dash__grid {
    grid-template-columns: 1fr;
  }

  .hp-dash__next-body {
    flex-wrap: wrap;
  }
}

/* —— Account pages under shell: tabs, chips, tables, empty —— */
.hp-shell .hp-underline-tabs,
.hp-shell .care-v2-reports__tabs,
.hp-shell .care-v2-appts__tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0;
  margin: 0 0 16px;
  padding: 0;
  border: 1px solid var(--hp-line);
  border-radius: 2px;
  background: var(--hp-surface);
  overflow: hidden;
}

.hp-shell .hp-underline-tabs a,
.hp-shell .hp-underline-tabs button,
.hp-shell .care-v2-reports__tabs a,
.hp-shell .care-v2-reports__tabs button,
.hp-shell .care-v2-appts__tabs a,
.hp-shell .care-v2-appts__tabs button {
  min-height: 40px;
  padding: 0 16px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--hp-muted) !important;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  box-shadow: none !important;
}

.hp-shell .hp-underline-tabs a + a,
.hp-shell .hp-underline-tabs button + button,
.hp-shell .care-v2-reports__tabs a + a,
.hp-shell .care-v2-reports__tabs button + button {
  -webkit-border-start: 1px solid var(--hp-line) !important;
          border-inline-start: 1px solid var(--hp-line) !important;
}

.hp-shell .hp-underline-tabs a.is-active,
.hp-shell .hp-underline-tabs button.is-active,
.hp-shell .care-v2-reports__tabs a.is-active,
.hp-shell .care-v2-reports__tabs button.is-active,
.hp-shell .care-v2-appts__tabs a.is-active,
.hp-shell .care-v2-appts__tabs button.is-active,
.hp-shell .hp-underline-tabs [aria-selected='true'],
.hp-shell .care-v2-reports__tabs [aria-selected='true'] {
  background: var(--hp-action) !important;
  color: #fff !important;
}

.hp-shell .hp-underline-tabs--secondary {
  margin-bottom: 14px;
}

.hp-shell .pp-chips,
.hp-shell .pp-chips--inline {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 16px;
}

.hp-shell .pp-chips a,
.hp-shell .pp-chips button,
.hp-shell .pp-kind-pill,
.hp-shell .pp-status,
.hp-shell .pp-invoice-filter,
.hp-shell .hp-status-badge {
  min-height: 34px;
  padding: 0 12px !important;
  border: 1px solid var(--hp-line) !important;
  border-radius: 2px !important;
  background: var(--hp-surface) !important;
  color: var(--hp-ink) !important;
  font-size: 0.84rem !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  text-decoration: none;
}

.hp-shell .pp-chips a.is-active,
.hp-shell .pp-chips button.is-active,
.hp-shell .pp-chips [aria-pressed='true'] {
  background: var(--hp-action-soft) !important;
  border-color: color-mix(in srgb, var(--hp-action) 40%, var(--hp-line)) !important;
  color: var(--hp-action) !important;
}

.hp-shell .pp-btn,
.hp-shell .pp-btn--primary,
.hp-shell .care-account .pp-btn {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.hp-shell .pp-section,
.hp-shell .hp-reports,
.hp-shell .hp-appts,
.hp-shell .hp-orders {
  max-width: 920px;
}

.hp-shell .pp-section__head h1,
.hp-shell .care-v2-reports__title,
.hp-shell h1.pp-title {
  margin: 0 0 14px;
  font-size: clamp(1.35rem, 2vw, 1.7rem);
  color: var(--hp-navy);
}

.hp-shell .pp-empty,
.hp-shell .care-empty {
  margin: 28px 0;
  padding: 28px 20px;
  border: 1px dashed var(--hp-line);
  border-radius: 2px;
  background: var(--hp-surface);
  color: var(--hp-muted);
  text-align: center;
  font-size: 0.95rem;
}

.hp-shell .care-v2-reports__secure,
.hp-shell .pp-secure {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 28px;
  padding: 14px 16px;
  border: 1px solid color-mix(in srgb, var(--hp-action) 18%, var(--hp-line));
  border-radius: 2px;
  background: var(--hp-action-soft);
  color: var(--hp-navy);
  font-size: 0.88rem;
}

.hp-shell .hp-table-wrap,
.hp-shell .pp-table-wrap {
  border: 1px solid var(--hp-line);
  border-radius: 2px;
  overflow: auto;
  background: var(--hp-surface);
}

.hp-shell .hp-top__search {
  border-radius: 2px !important;
  box-shadow: none !important;
  max-width: min(720px, 100%);
}

.hp-shell .hp-side__brand {
  padding: 4px 4px 18px;
}

.hp-shell .hp-side__logo,
.hp-shell .hp-side__brand .care-v2-brand-logo {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  max-width: 100%;
}

.hp-shell .hp-side__logo .care-v2-brand-logo__word,
.hp-shell .hp-side__brand .care-v2-brand-logo__word {
  max-height: 28px;
  height: 28px;
}

.hp-shell .hp-side {
  width: 100%;
  min-width: 0;
  align-self: stretch;
  min-height: 100vh;
  min-height: 100dvh;
}

/* Patient portal — simple, informative, brand-first */
.pp {
  --pp-ink: #0c1a2e;
  --pp-muted: #64748b;
  --pp-line: #e8edf3;
  --pp-paper: #ffffff;
  --pp-bg: #eef3f8;
  --pp-accent: #2563EB;
  --pp-top-h: calc(56px + env(safe-area-inset-top, 0px));
  --pp-tabs-h: calc(72px + env(safe-area-inset-bottom, 0px));
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  background: #fff;
  color: var(--pp-ink);
  font-family: var(--ec-font,'Inter', sans-serif);
  box-sizing: border-box;
  /* Room for fixed header + bottom nav */
  padding-top: var(--pp-top-h);
  padding-bottom: var(--pp-tabs-h);
}

.pp-top {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 40;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding:
    calc(10px + env(safe-area-inset-top, 0px))
    max(16px, env(safe-area-inset-right, 0px))
    10px
    max(16px, env(safe-area-inset-left, 0px));
  background: rgba(247, 250, 252, 0.96);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--pp-line);
}

.pp-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.pp-brand__home {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  text-decoration: none;
  color: inherit;
  border-radius: 10px;
}

.pp-brand__home:focus-visible {
  outline: 2px solid var(--pp-accent, #0360f1);
  outline-offset: 2px;
}

.pp-brand__logo {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 1.05rem;
  font-weight: 750;
  letter-spacing: -0.03em;
  color: var(--pp-ink, #0c1a2e);
}

.pp-mark {
  width: 28px;
  height: 28px;
  border-radius: 7px;
  background: #fff;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.pp-mark img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.pp-brand__text {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.pp-brand__profile {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: min(52vw, 220px);
  margin-top: 1px;
  text-decoration: none;
  color: inherit;
  border-radius: 999px;
  padding: 2px 4px 2px 2px;
}

.pp-brand__profile:hover,
.pp-brand__profile:focus-visible {
  background: rgba(6, 26, 46, 0.06);
  outline: none;
}

.pp-brand__avatar {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #fff;
  background: #0b4f6c;
  object-fit: cover;
}

.pp-brand__avatar--photo {
  padding: 0;
  background: #dce8f2;
}

.pp-brand__name {
  display: none;
}

.pp-user-menu {
  position: relative;
  flex-shrink: 0;
}

.pp-user-menu__trigger {
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  border-radius: 999px;
  line-height: 0;
}

.pp-user-menu__trigger:focus-visible {
  outline: 2px solid var(--pp-accent, #0360f1);
  outline-offset: 2px;
}

.pp-user-menu__dropdown {
  position: absolute;
  top: calc(100% + 8px);
  inset-inline-end: 0;
  min-width: 160px;
  padding: 6px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--pp-line, #e2e8f0);
  box-shadow: 0 12px 28px rgba(7, 25, 47, 0.14);
  z-index: 40;
}

.pp-user-menu__item {
  display: block;
  padding: 10px 12px;
  border-radius: 8px;
  text-decoration: none;
  color: var(--pp-ink, #0f172a);
  font-size: 0.9rem;
  font-weight: 650;
}

.pp-user-menu__item:hover,
.pp-user-menu__item:focus-visible {
  background: rgba(3, 96, 241, 0.08);
  outline: none;
}

.pp-profile-photo {
  margin-bottom: 8px;
}

.pp-profile-photo__btn {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  border: 0;
  background: transparent;
  cursor: pointer;
  padding: 0;
  font: inherit;
  color: var(--pp-accent, #0360f1);
}

.pp-profile-photo__img,
.pp-profile-photo__placeholder {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  object-fit: cover;
}

.pp-profile-photo__placeholder {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #0b4f6c;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 700;
}

.pp-profile-photo__btn em {
  font-style: normal;
  font-size: 0.8rem;
  font-weight: 650;
}

.pp-report-tabs {
  display: flex;
  gap: 6px;
  margin: 0 0 14px;
  padding: 4px;
  border-radius: 12px;
  background: rgba(15, 23, 42, 0.04);
  border: 1px solid var(--pp-line, #e2e8f0);
}

.pp-report-tabs button {
  flex: 1 1;
  border: 0;
  background: transparent;
  border-radius: 9px;
  padding: 10px 12px;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 650;
  color: var(--pp-muted, #64748b);
  cursor: pointer;
}

.pp-report-tabs button.is-active {
  background: #fff;
  color: var(--pp-ink, #0f172a);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

.pp-kind-pill {
  display: inline-flex;
  align-items: center;
  -webkit-margin-end: 6px;
          margin-inline-end: 6px;
  padding: 1px 7px;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  background: #e0f2fe;
  color: #0369a1;
}

.pp-kind-pill--lab {
  background: #ccfbf1;
  color: #0f766e;
}

.pp-pharmacy-card {
  border: 1px solid var(--pp-line, #e2e8f0);
  border-radius: 12px;
  padding: 12px 14px;
  background: #fff;
  margin-bottom: 10px;
}

.pp-pharmacy-card__head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
  width: 100%;
  border: 0;
  background: transparent;
  text-align: start;
  cursor: pointer;
  padding: 0;
  font: inherit;
  color: inherit;
}

.pp-pharmacy-card__items {
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.pp-pharmacy-card__items li {
  display: grid;
  grid-template-columns: 52px 1fr auto;
  grid-gap: 10px;
  gap: 10px;
  align-items: center;
  padding: 8px;
  border-radius: 10px;
  background: rgba(15, 23, 42, 0.03);
}

.pp-pharmacy-card__thumb {
  width: 52px;
  height: 52px;
  border-radius: 0;
  object-fit: cover;
  background: #e2e8f0;
}

.pp-pharmacy-card__thumb.care-mico {
  display: grid;
}

.pp-pharmacy-card__item-body {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  min-width: 0;
}

.pp-pharmacy-card__item-body strong {
  font-size: 0.9rem;
  color: var(--pp-ink, #0f172a);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pp-pharmacy-card__generic,
.pp-pharmacy-card__qty {
  font-size: 0.75rem;
  color: var(--pp-muted, #64748b);
}

.pp-pharmacy-card__price {
  font-size: 0.85rem;
  font-weight: 650;
  color: var(--pp-ink, #0f172a);
  white-space: nowrap;
}

.pp-results-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.84rem;
}

.pp-results-table th,
.pp-results-table td {
  text-align: start;
  padding: 6px 8px;
  border-bottom: 1px solid var(--pp-line, #e2e8f0);
  vertical-align: top;
}

.pp-results-table th {
  color: var(--pp-muted, #64748b);
  font-weight: 650;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.pp-brand__text strong {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 1.05rem;
  letter-spacing: -0.03em;
}

.pp-top__actions {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

.pp-switch {
  border: 0;
  background: transparent;
  color: var(--pp-accent);
  font: inherit;
  font-size: 0.75rem;
  font-weight: 700;
  cursor: pointer;
  padding: 8px;
  white-space: nowrap;
}

.pp-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 16px;
}

.pp-chips button {
  border: 1px solid var(--pp-line);
  border-radius: 999px;
  background: transparent;
  color: var(--pp-muted);
  font: inherit;
  font-size: 0.75rem;
  font-weight: 650;
  padding: 8px 12px;
  cursor: pointer;
}

.pp-chips button.is-active {
  background: var(--pp-accent);
  border-color: var(--pp-accent);
  color: #fff;
}

.pp-dispute-form input {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--pp-line);
  border-radius: 12px;
  padding: 12px 14px;
  font: inherit;
  font-size: 16px;
  background: var(--pp-paper);
  color: var(--pp-ink);
}

.pp-hello {
  margin: 0 0 14px;
  font-size: 0.9375rem;
  color: var(--pp-muted);
}

.pp-tabs {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 50;
  display: flex;
  gap: 0;
  margin: 0;
  padding:
    8px max(8px, env(safe-area-inset-right, 0px))
    calc(8px + env(safe-area-inset-bottom, 0px))
    max(8px, env(safe-area-inset-left, 0px));
  border-top: 1px solid var(--pp-line);
  border-bottom: 0;
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  overflow: visible;
  box-shadow: 0 -4px 20px rgba(12, 26, 46, 0.06);
}

.pp-tabs a {
  flex: 1 1;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 6px;
  text-decoration: none;
  color: var(--pp-muted);
  border-bottom: 0;
  border-top: 2px solid transparent;
  border-radius: 12px;
}

.pp-tabs a.is-active {
  color: var(--pp-accent);
  border-top-color: var(--pp-accent);
  background: rgba(3, 96, 241, 0.08);
}

.pp-tabs__icon {
  display: block;
  flex-shrink: 0;
}

.pp-main {
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
  padding: 16px max(16px, env(safe-area-inset-right, 0px)) 20px
    max(16px, env(safe-area-inset-left, 0px));
  box-sizing: border-box;
}

.pp-section__head {
  margin-bottom: 18px;
}

.pp-section__head h1 {
  margin: 0 0 6px;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 1.5rem;
  letter-spacing: -0.03em;
  font-weight: 700;
}

.pp-section__head p {
  margin: 0;
  color: var(--pp-muted);
  font-size: 0.9375rem;
  line-height: 1.45;
}

.pp-filter {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  margin-bottom: 0;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

.pp-filters {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 14px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.pp-filters__body {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 10px;
  gap: 10px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

@media (min-width: 520px) {
  .pp-filters__body {
    grid-template-columns: 1fr 1fr;
    align-items: end;
  }

  .pp-filter--dates {
    grid-column: 1 / -1;
  }
}

.pp-filters--collapsible .pp-filters__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.pp-filters__toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  border: 1px solid var(--pp-line);
  border-radius: 999px;
  padding: 8px 12px;
  background: var(--pp-paper);
  color: var(--pp-ink);
  font: inherit;
  font-size: 0.8125rem;
  font-weight: 650;
  cursor: pointer;
}

.pp-filters__toggle.is-active {
  border-color: rgba(3, 96, 241, 0.35);
  background: rgba(3, 96, 241, 0.08);
  color: var(--pp-accent, #0360f1);
}

.pp-filters__toggle-icon {
  display: inline-flex;
  flex-shrink: 0;
}

.pp-filters--collapsible.is-open .pp-filters__body {
  margin-top: 2px;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid var(--pp-line);
  background: rgba(255, 255, 255, 0.92);
}

.pp-filter--dates {
  min-width: 0;
}

.pp-filter__dates {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 8px;
  gap: 8px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  align-items: stretch;
}

.pp-filter__date {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  min-width: 0;
  max-width: 100%;
}

.pp-filter__date em {
  font-style: normal;
  font-size: 0.65rem;
  font-weight: 650;
  color: var(--pp-muted);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.pp-filters .pp-filter input[type='date'] {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 44px; /* empty iOS date fields otherwise collapse */
  box-sizing: border-box;
  border: 1px solid var(--pp-line);
  border-radius: 10px;
  padding: 10px 10px;
  font: inherit;
  font-size: 16px; /* avoid iOS zoom + overflow */
  line-height: 1.25;
  background: var(--pp-paper);
  color: var(--pp-ink);
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.pp-filters .pp-filter input[type='date']::-webkit-datetime-edit,
.pp-filters .pp-filter input[type='date']::-webkit-datetime-edit-fields-wrapper {
  display: inline-flex;
  align-items: center;
  min-height: 1.25em;
  padding: 0;
}

.pp-filters .pp-filter input[type='date']::-webkit-calendar-picker-indicator {
  -webkit-margin-start: 4px;
          margin-inline-start: 4px;
  opacity: 0.65;
}

.pp-filters__clear {
  justify-self: start;
  border: 0;
  background: transparent;
  color: var(--pp-accent, #0360f1);
  font: inherit;
  font-size: 0.75rem;
  font-weight: 650;
  padding: 6px 2px;
  cursor: pointer;
  white-space: nowrap;
}

.pp-filters__status {
  grid-column: 1 / -1;
  min-width: 0;
}

.pp-chips--inline {
  margin: 0;
  flex-wrap: wrap;
}

.pp-filter span {
  font-size: 0.7rem;
  font-weight: 650;
  color: var(--pp-muted);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.pp-filter select,
.pp-dispute-form textarea {
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  box-sizing: border-box;
  border: 1px solid var(--pp-line);
  border-radius: 10px;
  padding: 10px 10px;
  font: inherit;
  font-size: 0.875rem;
  background: var(--pp-paper);
  color: var(--pp-ink);
}

.pp-group {
  margin-bottom: 22px;
}

.pp-group__title {
  margin: 0 0 8px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--pp-muted);
}

.pp-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.pp-list__item {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--pp-line);
}

.pp-list__item .pp-row {
  border-bottom: 0;
  padding-bottom: 0;
}

.pp-btn--row {
  justify-self: start;
  padding: 10px 14px;
  font-size: 0.8125rem;
  border-radius: 10px;
}

.pp-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--pp-line);
  text-decoration: none;
  color: inherit;
  min-width: 0;
}

.pp-row__main {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  min-width: 0;
  flex: 1 1;
}

.pp-row__main strong {
  font-size: 0.9375rem;
  overflow-wrap: anywhere;
}

.pp-row__main span {
  font-size: 0.75rem;
  color: var(--pp-muted);
}

.pp-row__reason {
  display: block !important;
  margin-top: 4px;
  color: var(--pp-ink) !important;
  font-size: 0.8125rem !important;
  line-height: 1.4;
}

.pp-status {
  flex-shrink: 0;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--pp-muted);
  max-width: 7.5rem;
  text-align: end;
  overflow-wrap: anywhere;
}

.pp-status--ready {
  color: #047857;
}

.pp-status--in_progress,
.pp-status--validation {
  color: #b45309;
}

.pp-status--disputed,
.pp-status--open,
.pp-status--in_review {
  color: #b91c1c;
}

.pp-status--confirmed,
.pp-status--checked_in,
.pp-status--engaged,
.pp-status--show,
.pp-status--online_token,
.pp-status--reserved_online,
.pp-status--walk_in_appointment,
.pp-status--upcoming,
.pp-status--today {
  color: #0360f1;
}

.pp-status--checked_out,
.pp-status--closed,
.pp-status--completed,
.pp-status--past {
  color: #047857;
}

.pp-status--cancelled,
.pp-status--reminder,
.pp-status--pnr,
.pp-status--cx_feedback_pending {
  color: #64748b;
}

.pp-status--cancelled,
.pp-status--cancelled_online,
.pp-status--no_show {
  color: #b91c1c;
}

.pp-row__hint {
  display: block;
  margin-top: 4px;
  font-size: 0.75rem;
  color: var(--pp-accent);
  font-weight: 650;
}

.pp-panel {
  margin: 0 0 18px;
  padding: 14px 16px;
  border-radius: 14px;
  background: var(--pp-paper);
  border: 1px solid var(--pp-line);
}

.pp-panel h2 {
  margin: 0 0 10px;
  font-size: 0.95rem;
  letter-spacing: -0.02em;
}

.pp-prose {
  margin: 0;
  color: var(--pp-ink);
  font-size: 0.9375rem;
  line-height: 1.5;
  white-space: pre-wrap;
}

.pp-finding__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.pp-finding__head h3 {
  margin: 0;
}

.pp-proc-list,
.pp-meds,
.pp-bullets {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.pp-proc,
.pp-med {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 0;
  border-bottom: 1px solid var(--pp-line);
}

.pp-proc {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.pp-proc-mini {
  list-style: none;
  margin: 6px 0 0;
  padding: 0;
  display: grid;
  grid-gap: 4px;
  gap: 4px;
}

.pp-proc-mini li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  font-size: 0.75rem;
  color: var(--pp-ink);
}

.pp-proc-mini em {
  font-style: normal;
  font-size: 0.65rem;
  max-width: 5.5rem;
  text-align: end;
}

.pp-proc-mini__more {
  color: var(--pp-muted) !important;
}

.pp-proc:last-child,
.pp-med:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.pp-med strong {
  font-size: 0.9375rem;
}

.pp-med span,
.pp-med em {
  font-size: 0.8125rem;
  color: var(--pp-muted);
  font-style: normal;
}

.pp-chips--static {
  margin-bottom: 14px;
}

.pp-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid var(--pp-line);
  background: #fff;
  color: var(--pp-muted);
  font-size: 0.75rem;
  font-weight: 650;
  padding: 6px 10px;
}

.pp-meta--grid {
  margin: 0;
}

.pp-top__actions .ec-locale-switcher {
  -webkit-margin-end: 2px;
          margin-inline-end: 2px;
}

.pp-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 14px 12px;
  gap: 14px 12px;
  margin: 8px 0 22px;
}

.pp-meta > div {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  min-width: 0;
}

.pp-meta span {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--pp-muted);
}

.pp-meta strong {
  font-size: 0.875rem;
  overflow-wrap: anywhere;
}

.pp-findings h2,
.pp-finding h3 {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  letter-spacing: -0.02em;
}

.pp-findings h2 {
  margin: 0 0 12px;
  font-size: 1.05rem;
}

.pp-finding {
  padding: 12px 0;
  border-top: 1px solid var(--pp-line);
}

.pp-finding h3 {
  margin: 0 0 6px;
  font-size: 0.9375rem;
}

.pp-finding p {
  margin: 0 0 8px;
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--pp-ink);
}

.pp-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.pp-actions--top {
  margin-top: 0;
  margin-bottom: 16px;
}

.pp-btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 12px;
  padding: 12px 18px;
  font: inherit;
  font-size: 0.9375rem;
  font-weight: 700;
  background: var(--pp-accent);
  color: #fff;
  cursor: pointer;
}

.pp-btn:disabled {
  opacity: 0.6;
  cursor: wait;
}

.pp-account-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1.25rem;
}

.pp-btn--ghost {
  background: transparent;
  color: var(--pp-muted);
  border: 1px solid var(--pp-line);
}

.pp-dispute-form {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  width: 100%;
}

.pp-dispute-form label {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.pp-dispute-form label span {
  font-size: 0.75rem;
  font-weight: 650;
  color: var(--pp-muted);
}

.pp-back {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--pp-accent);
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 650;
}

.pp-muted,
.pp-empty {
  color: var(--pp-muted);
  font-size: 0.9375rem;
  line-height: 1.45;
}

.pp-error {
  color: #b91c1c;
  font-size: 0.875rem;
}

.pp-dash__hero {
  margin-bottom: 20px;
  padding: 8px 0 4px;
}

.pp-dash__kicker {
  margin: 0 0 4px;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--pp-accent);
  font-size: 0.95rem;
}

.pp-dash__hero h1 {
  margin: 0 0 6px;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: clamp(1.6rem, 5vw, 2rem);
  letter-spacing: -0.045em;
  line-height: 1.1;
}

.pp-dash__hero p {
  margin: 0;
  color: var(--pp-muted);
}

.pp-dash__hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.pp-dash__next {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 18px;
  padding: 16px;
  border-radius: 16px;
  background: var(--pp-paper);
  border: 1px solid var(--pp-line);
  box-shadow: 0 8px 22px rgba(7, 25, 47, 0.05);
}

.pp-dash__next strong {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 1.15rem;
  letter-spacing: -0.03em;
}

.pp-dash__next > span {
  font-size: 0.88rem;
  color: var(--pp-muted);
}

.pp-dash__next .pp-btn {
  align-self: flex-start;
  margin-top: 6px;
}

.pp-row--block {
  display: block;
}

.pp-dash__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 22px;
}

.pp-dash__stat {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px 14px;
  border-radius: 16px;
  background: var(--pp-paper);
  border: 1px solid var(--pp-line);
  color: inherit;
  text-decoration: none;
}

.pp-dash__stat strong {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 1.6rem;
  letter-spacing: -0.04em;
  line-height: 1;
}

.pp-activity {
  display: grid;
  grid-template-columns: 36px 1fr;
  grid-template-rows: auto auto;
  grid-column-gap: 10px;
  column-gap: 10px;
  align-items: center;
  color: inherit;
  text-decoration: none;
}

.pp-activity__ico {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  color: #0b4f8a;
  background: linear-gradient(180deg, #d7e8f8, #eef5fb);
}

.pp-activity strong {
  font-size: 0.95rem;
  color: #16324a;
}

.pp-activity span {
  font-size: 0.8rem;
  color: #3d5470;
}

.pp-dash__stat span {
  font-size: 0.78rem;
  color: var(--pp-muted);
  text-transform: capitalize;
}

.pp-dash__section {
  margin-bottom: 22px;
}

.pp-dash__section h2 {
  margin: 0 0 10px;
  font-size: 1.05rem;
  letter-spacing: -0.02em;
}

.pp-dash__rowhead {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.pp-dash__rowhead h2 {
  margin: 0;
}

.pp-dash__rowhead a {
  color: var(--pp-accent);
  font-size: 0.85rem;
  font-weight: 700;
  text-decoration: none;
}

.pp-dash__shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pp-dash__shortcuts a {
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(3, 96, 241, 0.1);
  color: var(--pp-accent);
  font-weight: 700;
  font-size: 0.85rem;
  text-decoration: none;
}

.pp-dash__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.pp-dash__list li,
.pp-dash__list a {
  display: block;
  padding: 12px 14px;
  border-radius: 14px;
  background: var(--pp-paper);
  border: 1px solid var(--pp-line);
  color: inherit;
  text-decoration: none;
}

.pp-dash__list strong {
  display: block;
}

.pp-dash__list span {
  display: block;
  margin-top: 2px;
  font-size: 0.82rem;
  color: var(--pp-muted);
}

.pp-head {
  margin-bottom: 16px;
}

.pp-head h1 {
  margin: 0 0 6px;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  letter-spacing: -0.03em;
}

.pp-head p {
  margin: 0 0 12px;
  color: var(--pp-muted);
}

.pp-btn {
  display: inline-flex;
  padding: 10px 14px;
  border-radius: 999px;
  background: var(--pp-accent);
  color: #fff;
  font-weight: 700;
  font-size: 0.88rem;
  text-decoration: none;
}

.pp-list {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

html.ch-native-app.ch-phone-dark .pp {
  --pp-ink: #e8eef7;
  --pp-muted: #94a3b8;
  --pp-line: #243447;
  --pp-paper: #152234;
  --pp-bg: #0b1522;
  background: linear-gradient(180deg, #101c2c 0%, #0b1522 100%);
}

/* —— Visual polish pass —— */
.pp {
  --pp-sea: #0e7490;
  --pp-accent-soft: rgba(3, 96, 241, 0.1);
  --pp-shadow: 0 10px 28px rgba(10, 22, 40, 0.06);
  -webkit-font-smoothing: antialiased;
}

.pp-top {
  background: rgba(244, 248, 252, 0.86);
  backdrop-filter: saturate(1.2) blur(16px);
  -webkit-backdrop-filter: saturate(1.2) blur(16px);
}

.pp-mark {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(6, 26, 46, 0.22);
  background: #fff;
}

.pp-brand__text strong {
  font-size: 1.1rem;
  letter-spacing: -0.04em;
}

.pp-signout {
  border: 0;
  background: transparent;
  color: var(--pp-muted);
  font: inherit;
  font-size: 0.72rem;
  font-weight: 650;
  cursor: pointer;
  padding: 8px 10px;
  border-radius: 999px;
}

.pp-main {
  animation: pp-rise 0.38s ease both;
}

@keyframes pp-rise {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.pp-tabs {
  gap: 2px;
  padding:
    8px max(10px, env(safe-area-inset-right, 0px))
    calc(8px + env(safe-area-inset-bottom, 0px))
    max(10px, env(safe-area-inset-left, 0px));
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: saturate(1.15) blur(16px);
  -webkit-backdrop-filter: saturate(1.15) blur(16px);
  box-shadow: 0 -8px 28px rgba(10, 22, 40, 0.07);
}

.pp-tabs a {
  border-top: 0;
  border-radius: 14px;
  padding: 11px 6px;
  transition: color 0.18s ease, background 0.18s ease;
}

.pp-tabs a.is-active {
  border-top-color: transparent;
  background: var(--pp-accent-soft);
}

.pp-tabs a.is-active .pp-tabs__icon {
  transform: translateY(-1px) scale(1.06);
}

.pp-tabs__icon {
  transition: transform 0.2s ease;
}

.pp-group__title {
  margin-bottom: 12px;
  letter-spacing: 0.08em;
  color: var(--pp-sea);
}

.pp-list {
  gap: 10px;
}

.pp-list__item {
  border-bottom: 0;
  padding-bottom: 0;
  gap: 8px;
}

.pp-row {
  padding: 14px;
  border-radius: 16px;
  border: 1px solid var(--pp-line);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: var(--pp-shadow);
  border-bottom: 1px solid var(--pp-line);
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.pp-list__item .pp-row,
.pp-list > li > .pp-row {
  border-bottom-color: var(--pp-line);
}

.pp-row:active {
  transform: scale(0.985);
}

.pp-row__main strong {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 0.98rem;
  letter-spacing: -0.02em;
}

.pp-status {
  padding: 6px 8px;
  border-radius: 999px;
  text-align: center;
  background: rgba(100, 116, 139, 0.12);
  line-height: 1.2;
  letter-spacing: 0.04em;
  font-size: 0.65rem;
}

.pp-status--ready,
.pp-status--checked_out,
.pp-status--closed,
.pp-status--completed,
.pp-status--past {
  color: #047857;
  background: rgba(4, 120, 87, 0.12);
}

.pp-status--in_progress,
.pp-status--validation,
.pp-status--pending,
.pp-status--reminder {
  color: #b45309;
  background: rgba(180, 83, 9, 0.12);
}

.pp-status--upcoming,
.pp-status--today,
.pp-status--confirmed,
.pp-status--checked_in {
  color: var(--pp-accent);
  background: var(--pp-accent-soft);
}

.pp-status--cancelled,
.pp-status--cancelled_online,
.pp-status--no_show,
.pp-status--disputed {
  color: #b91c1c;
  background: rgba(185, 28, 28, 0.1);
}

.pp-btn,
.pp-head .pp-btn,
.pp-section__head .pp-btn {
  border-radius: 999px;
  box-shadow: 0 8px 18px rgba(3, 96, 241, 0.22);
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.pp-btn:active {
  transform: scale(0.97);
}

.pp-btn--row {
  border-radius: 999px;
  box-shadow: none;
  -webkit-margin-start: 2px;
          margin-inline-start: 2px;
}

.pp-panel,
.pp-dash__next,
.pp-dash__stat,
.pp-dash__list li,
.pp-dash__list a {
  border-radius: 16px;
  box-shadow: var(--pp-shadow);
  background: rgba(255, 255, 255, 0.9);
}

.pp-dash__hero {
  margin-bottom: 22px;
  padding: 4px 0 8px;
}

.pp-dash__kicker {
  font-size: 1.05rem;
  letter-spacing: -0.04em;
}

.pp-dash__hero h1 {
  font-size: clamp(1.7rem, 5.5vw, 2.15rem);
  letter-spacing: -0.05em;
}

.pp-dash__next {
  position: relative;
  overflow: hidden;
  padding: 18px 16px;
  border: 1px solid rgba(3, 96, 241, 0.12);
  background: #fff;
  animation: pp-rise 0.45s ease 0.05s both;
}

.pp-dash__next::before {
  content: '';
  position: absolute;
  inset: auto -20% -40% auto;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: #fff;
  pointer-events: none;
}

.pp-dash__stat {
  transition: transform 0.16s ease;
}

.pp-dash__stat:active {
  transform: scale(0.98);
}

.pp-dash__shortcuts a {
  background: rgba(255, 255, 255, 0.75);
  border: 1px solid var(--pp-line);
  color: var(--pp-ink);
  font-weight: 600;
  transition: background 0.16s ease, color 0.16s ease;
}

.pp-dash__shortcuts a:active {
  background: var(--pp-accent);
  color: #fff;
  border-color: var(--pp-accent);
}

.pp-chips button {
  background: rgba(255, 255, 255, 0.65);
  transition: background 0.18s ease, color 0.18s ease;
}

.pp-meta {
  gap: 10px;
}

.pp-meta > div {
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid var(--pp-line);
}

.pp-back {
  padding: 6px 0;
}

@media (prefers-reduced-motion: reduce) {
  .pp-main,
  .pp-dash__next,
  .pp-tabs__icon,
  .pp-row,
  .pp-btn {
    animation: none !important;
    transition: none !important;
  }
}

/* —— Customer detail layouts —— */
/* Light CareOS board — dark text on white (was navy-on-white = faded). */
.pp-live-board {
  position: relative;
  overflow: hidden;
  margin: 0 0 18px;
  padding: 18px 16px 16px;
  border-radius: 22px;
  color: #0b1f3a;
  background:
    linear-gradient(165deg, color-mix(in srgb, #0360f1 7%, #fff) 0%, #fff 48%),
    #fff;
  border: 1px solid color-mix(in srgb, #0360f1 14%, #e2e8f0);
  box-shadow: 0 14px 36px rgba(7, 20, 40, 0.08);
  animation: pp-live-in 0.45s cubic-bezier(0.34, 1.2, 0.64, 1) both;
}

.pp-live-board__glow {
  position: absolute;
  inset: auto -20% -40% auto;
  width: 60%;
  height: 70%;
  background: radial-gradient(circle, rgba(3, 96, 241, 0.14), transparent 70%);
  pointer-events: none;
  animation: pp-live-glow 4.5s ease-in-out infinite;
}

.pp-live-board__head {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.pp-live-board__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 6px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0360f1;
}

.pp-live-board__pulse {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #16a34a;
  box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.7);
  animation: pp-live-pulse 1.6s ease-out infinite;
}

.pp-live-board__head h2 {
  margin: 0;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 1.2rem;
  letter-spacing: -0.03em;
  font-weight: 750;
  color: #0b1f3a;
}

.pp-live-board__sub {
  margin: 4px 0 0;
  font-size: 0.86rem;
  line-height: 1.45;
  color: #475569;
  max-width: 46ch;
}

.pp-live-board__badge {
  flex-shrink: 0;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #052e1a;
  background: linear-gradient(180deg, #6ee7b7, #34d399);
  box-shadow: 0 0 0 4px rgba(52, 211, 153, 0.18);
}

.pp-live-board__meters {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 14px;
}

.pp-live-board__meter {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px 12px;
  border-radius: 16px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
}

.pp-live-board__meter span {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.pp-live-board__meter strong {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: clamp(2rem, 8vw, 2.6rem);
  font-weight: 780;
  letter-spacing: -0.04em;
  line-height: 1;
  color: #0b1f3a;
}

.pp-live-board__meter--yours {
  background: linear-gradient(180deg, #2b7cff 0%, #0360f1 100%);
  border-color: #0360f1;
  box-shadow: 0 10px 22px rgba(3, 96, 241, 0.28);
}

.pp-live-board__meter--yours span {
  color: rgba(239, 246, 255, 0.92);
}

.pp-live-board__meter--yours strong {
  color: #fff;
}

.pp-live-board--serving .pp-live-board__meter--yours {
  background: linear-gradient(180deg, #34d399 0%, #059669 100%);
  border-color: #059669;
  box-shadow: 0 10px 22px rgba(5, 150, 105, 0.28);
}

.pp-live-board--next .pp-live-board__meter--yours,
.pp-live-board--soon .pp-live-board__meter--yours {
  animation: pp-live-yours 1.8s ease-in-out infinite;
}

.pp-live-board__meta {
  position: relative;
  margin-bottom: 14px;
}

.pp-live-board__status {
  margin: 0 0 8px;
  font-size: 0.98rem;
  font-weight: 750;
  letter-spacing: -0.01em;
  color: #0b1f3a;
}

.pp-live-board__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  font-size: 0.82rem;
  color: #64748b;
  font-weight: 600;
}

.pp-live-board__facts em {
  font-style: normal;
  font-weight: 750;
  color: #0b1f3a;
}

.pp-live-board__tips {
  position: relative;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.pp-live-board__tip {
  padding: 14px 14px 12px;
  border-radius: 16px;
  border: 1px solid #e2e8f0;
  background: #fff;
}

.pp-live-board__tip--duration {
  border-color: color-mix(in srgb, #0360f1 22%, #e2e8f0);
  background: color-mix(in srgb, #0360f1 6%, #fff);
}

.pp-live-board__tip--arrive {
  border-color: color-mix(in srgb, #f59e0b 28%, #e2e8f0);
  background: color-mix(in srgb, #f59e0b 7%, #fff);
}

.pp-live-board__tip-label {
  display: block;
  margin-bottom: 4px;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #0360f1;
}

.pp-live-board__tip--arrive .pp-live-board__tip-label {
  color: #b45309;
}

.pp-live-board__tip strong {
  display: block;
  margin: 0 0 6px;
  font-size: 0.95rem;
  font-weight: 750;
  color: #0b1f3a;
  letter-spacing: -0.01em;
}

.pp-live-board__tip p {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.45;
  color: #475569;
}

.pp-live-board__tip ul {
  margin: 0;
  padding: 0 0 0 1.1rem;
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.pp-live-board__tip li {
  font-size: 0.84rem;
  line-height: 1.45;
  color: #334155;
}

@keyframes pp-live-in {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes pp-live-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.65);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(22, 163, 74, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(22, 163, 74, 0);
  }
}

@keyframes pp-live-glow {
  0%,
  100% {
    opacity: 0.55;
    transform: translate(0, 0);
  }
  50% {
    opacity: 1;
    transform: translate(-8%, -4%);
  }
}

@keyframes pp-live-yours {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.02);
  }
}

@media (prefers-reduced-motion: reduce) {
  .pp-live-board,
  .pp-live-board__glow,
  .pp-live-board__pulse,
  .pp-live-board--next .pp-live-board__meter--yours,
  .pp-live-board--soon .pp-live-board__meter--yours {
    animation: none;
  }
}

.pp-detail-hero {
  margin: 0 0 18px;
  padding: 4px 0 8px;
}

.pp-detail-hero__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.pp-detail-hero__kicker {
  margin: 0;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--pp-accent);
}

.pp-detail-hero h1 {
  margin: 0 0 8px;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: clamp(1.4rem, 5vw, 1.75rem);
  letter-spacing: -0.04em;
  line-height: 1.15;
}

.pp-detail-hero__lead {
  margin: 0 0 10px;
  color: var(--pp-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

.pp-chips--static {
  pointer-events: none;
}

.pp-chip {
  display: inline-flex;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(14, 116, 144, 0.1);
  color: var(--pp-sea, #0e7490);
  font-size: 0.72rem;
  font-weight: 650;
}

.pp-fact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 18px;
}

.pp-fact-grid--dense {
  margin-bottom: 0;
}

.pp-fact {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid var(--pp-line);
  box-shadow: 0 6px 16px rgba(10, 22, 40, 0.04);
  min-width: 0;
}

.pp-fact span {
  font-size: 0.68rem;
  font-weight: 650;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--pp-muted);
}

.pp-fact strong {
  font-size: 0.9rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.pp-detail-block {
  margin-bottom: 22px;
}

.pp-detail-block__title {
  margin: 0 0 12px;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 1.05rem;
  letter-spacing: -0.03em;
}

.pp-detail-stack {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.pp-detail-card {
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid var(--pp-line);
  box-shadow: var(--pp-shadow, 0 10px 28px rgba(10, 22, 40, 0.06));
}

.pp-detail-card h3 {
  margin: 0 0 10px;
  font-size: 0.95rem;
  letter-spacing: -0.02em;
}

.pp-detail-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.pp-detail-card__head h3 {
  margin: 0;
}

.pp-detail-field {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--pp-line);
}

.pp-detail-field span {
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--pp-sea, #0e7490);
}

.pp-tag-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pp-tag-list li {
  padding: 8px 12px;
  border-radius: 999px;
  background: #fff;
  color: var(--pp-ink);
  font-size: 0.8rem;
  font-weight: 600;
}

.pp-banner-note {
  margin: 0 0 16px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(14, 116, 144, 0.08);
  color: var(--pp-ink);
  font-size: 0.875rem;
  line-height: 1.45;
  border: 1px solid rgba(14, 116, 144, 0.15);
}

.pp-row--rich {
  align-items: flex-start;
}

.pp-row--doctor {
  gap: 14px;
}

.pp-doctor-avatar {
  flex-shrink: 0;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: cover;
  background: #dce8f2;
  border: 2px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 4px 14px rgba(7, 25, 47, 0.08);
}

.pp-doctor-avatar--lg {
  width: 64px;
  height: 64px;
}

.pp-dash__next-body {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  position: relative;
  z-index: 1;
}

.pp-dash__next-copy {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  flex: 1 1;
}

.pp-dash__next-copy .pp-btn {
  align-self: flex-start;
  margin-top: 6px;
}

.pp-detail-hero__doctor {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

.pp-detail-hero__copy {
  min-width: 0;
  flex: 1 1;
}

.pp-detail-hero__copy h1 {
  margin: 0 0 8px;
}

.pp-live-board__doctor {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  flex: 1 1;
}

.pp-live-board__doctor .pp-doctor-avatar {
  border-color: color-mix(in srgb, #0360f1 22%, #e2e8f0);
  box-shadow: 0 4px 14px rgba(3, 96, 241, 0.12);
}

.pp-row__place {
  font-weight: 600 !important;
  color: var(--pp-ink) !important;
  opacity: 0.75;
}

.pp-row__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin-top: 2px;
}

.pp-row__facts span {
  font-size: 0.72rem !important;
  color: var(--pp-muted) !important;
}

.pp-row__facts em {
  font-style: normal;
  font-weight: 700;
  color: var(--pp-sea, #0e7490);
  -webkit-margin-end: 4px;
          margin-inline-end: 4px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 0.62rem;
}

.pp-row__cta {
  display: block !important;
  margin-top: 8px !important;
  color: var(--pp-accent) !important;
  font-weight: 700 !important;
  font-size: 0.78rem !important;
}

.pp-group__title {
  display: flex;
  align-items: center;
  gap: 8px;
}

.pp-group__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.4rem;
  height: 1.4rem;
  padding: 0 6px;
  border-radius: 999px;
  background: rgba(14, 116, 144, 0.12);
  color: var(--pp-sea, #0e7490);
  font-size: 0.68rem;
  letter-spacing: 0;
  text-transform: none;
}

.pp-actions--sticky-end {
  margin-top: 8px;
  margin-bottom: 8px;
}

.pp-med strong {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  letter-spacing: -0.02em;
}

.pp-med em {
  display: block;
  margin-top: 4px;
  font-style: normal;
  font-size: 0.78rem;
  color: var(--pp-muted);
}

.pp-btn--danger {
  background: #b42318;
  color: #fff;
  border-color: #b42318;
}

.pp-btn--danger:disabled {
  opacity: 0.65;
}

.pp-confirm {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: end center;
  padding:
    16px
    max(16px, env(safe-area-inset-right, 0px))
    calc(16px + env(safe-area-inset-bottom, 0px))
    max(16px, env(safe-area-inset-left, 0px));
  background: rgba(8, 18, 32, 0.45);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}

.pp-confirm__card {
  width: min(440px, 100%);
  margin-bottom: 56px;
  padding: 22px 18px 18px;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(7, 25, 47, 0.22);
}

.pp-confirm__card h2 {
  margin: 0 0 10px;
  font-size: 1.15rem;
  letter-spacing: -0.02em;
  color: var(--pp-ink, #0c1a2e);
}

.pp-confirm__body {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.45;
  color: var(--pp-ink, #0c1a2e);
}

.pp-confirm__body--refund {
  color: #0f766e;
}

.pp-confirm__body--no-refund {
  color: #9a3412;
}

.pp-confirm__hint {
  margin: 10px 0 0;
  font-size: 0.8rem;
  line-height: 1.4;
  color: var(--pp-muted, #64748b);
}

.pp-confirm__actions {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin-top: 18px;
}

@media (min-width: 420px) {
  .pp-confirm__actions {
    grid-template-columns: 1fr 1fr;
  }
}

.pp-link-back {
  border: 0;
  background: transparent;
  color: var(--pp-accent, #0360f1);
  font: inherit;
  font-size: 0.875rem;
  font-weight: 650;
  padding: 0;
  margin-bottom: 8px;
  cursor: pointer;
}

.pp-track,
.pp-pickup {
  margin: 0 0 18px;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid var(--pp-line);
  background: var(--pp-paper);
}

.pp-track__title {
  margin: 0 0 12px;
  font-size: 0.95rem;
}

.pp-track__steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.pp-track__step {
  display: grid;
  grid-template-columns: 14px 1fr;
  grid-gap: 10px;
  gap: 10px;
  align-items: center;
  color: var(--pp-muted);
  font-size: 0.875rem;
}

.pp-track__step.is-done,
.pp-track__step.is-current {
  color: var(--pp-ink);
  font-weight: 650;
}

.pp-track__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgb(15 23 42 / 18%);
}

.pp-track__step.is-done .pp-track__dot {
  background: #16a34a;
}

.pp-track__step.is-current .pp-track__dot {
  background: #0360f1;
  box-shadow: 0 0 0 4px rgb(3 96 241 / 18%);
}

.pp-pickup__card {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  margin-bottom: 12px;
}

.pp-pickup__card span,
.pp-pickup__phone {
  font-size: 0.875rem;
  color: var(--pp-muted);
}

.pp-pickup__phone {
  color: var(--pp-accent, #0360f1);
  text-decoration: none;
  font-weight: 650;
}

.pp-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

.pp-visit-brief textarea {
  width: 100%;
  margin: 8px 0;
  padding: 10px;
  border: 1px solid var(--pp-line, rgba(12, 26, 46, 0.12));
  border-radius: 2px;
  font: inherit;
}

.pp-visit-brief__files {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  margin-top: 10px;
  font-size: 0.85rem;
  font-weight: 650;
}

.pp-visit-files {
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
}

.pp-visit-files li {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin: 0 0 6px;
  font-size: 0.88rem;
}

.pp-visit-files button {
  border: 0;
  background: none;
  color: #b42318;
  font: inherit;
  cursor: pointer;
}

.pp-invoice-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 20px 18px;
  border-radius: 22px;
  background: linear-gradient(135deg, #2563eb 0%, #1e3a5f 100%);
  color: #fff;
  box-shadow: 0 14px 32px rgba(30, 58, 95, 0.22);
}

.pp-invoice-hero::after {
  content: '';
  position: absolute;
  right: -12px;
  top: -18px;
  width: 120px;
  height: 120px;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.1);
  transform: rotate(18deg);
}

[dir='rtl'] .pp-invoice-hero::after {
  right: auto;
  left: -12px;
}

.pp-invoice-hero > div {
  position: relative;
  z-index: 1;
}

.pp-invoice-hero--clear {
  background: linear-gradient(135deg, #0f766e 0%, #115e59 100%);
  box-shadow: 0 14px 32px rgba(15, 118, 110, 0.18);
}

.pp-invoice-hero__kicker {
  margin: 0 0 4px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.84;
}

.pp-invoice-hero strong {
  display: block;
  font-size: 1.7rem;
  letter-spacing: -0.04em;
  line-height: 1.1;
}

.pp-invoice-hero span {
  display: block;
  margin-top: 4px;
  font-size: 0.9rem;
  opacity: 0.9;
}

.pp-invoice-filters {
  display: flex;
  gap: 8px;
  margin: 4px 0 12px;
}

.pp-invoice-filter {
  flex: 1 1;
  min-height: 48px;
  border: 1px solid var(--pp-line, rgba(18, 38, 58, 0.1));
  border-radius: 999px;
  background: #fff;
  color: var(--pp-muted, #64748b);
  font: inherit;
  font-size: 0.85rem;
  font-weight: 700;
  cursor: pointer;
}

.pp-invoice-filter.is-on {
  background: #eff6ff;
  border-color: transparent;
  color: #1e3a5f;
}

.pp-invoice-list {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pp-invoice-card {
  padding: 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  transition: box-shadow 0.16s ease, transform 0.16s ease;
}

.pp-invoice-card:hover {
  box-shadow: 0 10px 24px rgba(30, 58, 95, 0.12);
  transform: translateY(-1px);
}

.pp-invoice-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.pp-invoice-card__ref {
  margin: 0 0 2px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #2563eb;
}

.pp-invoice-card h2 {
  margin: 0;
  font-size: 1.05rem;
  letter-spacing: -0.03em;
}

.pp-invoice-card p {
  margin: 4px 0 0;
  color: var(--pp-muted, #64748b);
  font-size: 0.86rem;
}

.pp-invoice-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 8px;
  gap: 8px;
  margin: 14px 0 0;
}

.pp-invoice-facts > div {
  padding: 10px 8px;
  border-radius: 12px;
  background: #f8fafc;
}

.pp-invoice-facts dt {
  margin: 0;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.pp-invoice-facts dd {
  margin: 2px 0 0;
  font-size: 0.95rem;
  font-weight: 800;
  color: #0f172a;
}

.pp-invoice-facts > div:last-child {
  -webkit-margin-end: 0;
          margin-inline-end: 0;
}

.pp-invoice-pay {
  width: 100%;
  margin-top: 14px;
  min-height: 48px;
}

.pp-invoice-empty {
  display: grid;
  justify-items: center;
  grid-gap: 10px;
  gap: 10px;
  padding: 36px 16px 20px;
  text-align: center;
  color: var(--pp-muted, #64748b);
}

.pp-invoice-empty img {
  opacity: 0.88;
}

.pp-invoice-empty p {
  margin: 0;
  font-weight: 700;
}

.pp-unpaid-chip,
.pp-pending-pay {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #ffedd5;
  color: #c2410c;
  font-size: 0.75rem;
  font-weight: 700;
}

.pp-pending-pay {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin: 12px 0 16px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid #fdba74;
  background: #fff7ed;
  color: #9a3412;
}

.pp-pending-pay strong {
  display: block;
  font-size: 0.95rem;
}

.pp-pending-pay p {
  margin: 4px 0 0;
  font-size: 0.82rem;
  font-weight: 500;
  line-height: 1.4;
}

.pp-pending-pay em {
  display: block;
  margin-top: 6px;
  font-style: normal;
  font-weight: 800;
}

.pp-pending-pay .pp-btn-primary {
  flex-shrink: 0;
}

/* Care account — same shop language as the rest of the patient app. */

.care .care-account {
  padding: 0;
  min-height: 0;
  background: transparent;
  color: inherit;
  font-family: inherit;
}

.care-account-page,
.care-account .pp-section {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  padding: 4px 0 28px;
}

.care-account-id {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  grid-gap: 14px;
  gap: 14px;
  align-items: center;
  padding: 16px;
  text-decoration: none;
  color: inherit;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care-account-id--plain {
  grid-template-columns: minmax(0, 1fr);
}

.care-account-id--profile {
  align-items: center;
}

.care-account-id__photo,
.care-account-id__photo-btn {
  width: 76px;
  height: 76px;
  padding: 0;
  border: 0;
  background: #e8eef5;
  display: block;
}

.care-account-id__photo {
  width: 76px;
  height: 76px;
  object-fit: cover;
}

.care-account-id__photo-btn {
  cursor: pointer;
}

.care-account-id__copy {
  min-width: 0;
}

.care-account-id__hello,
.care-account-kicker {
  margin: 0 0 3px;
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-navy);
}

.care-account-id h1,
.care-account-heading {
  margin: 0;
  font-size: 1.28rem;
  font-weight: 780;
  letter-spacing: -0.03em;
  color: var(--care-navy);
}

.care-account-heading {
  margin: 4px 0 0;
  font-size: 1.02rem;
}

.care-account-id__copy span,
.care-account-id__copy em,
.care-account-lead {
  display: block;
  margin: 4px 0 0;
  font-size: 0.84rem;
  font-style: normal;
  font-weight: 500;
  color: #5d7390;
  line-height: 1.4;
}

.care-account-id__edit {
  margin-top: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--care-navy);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
  cursor: pointer;
}

.care-account-card {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  padding: 16px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  color: inherit;
  text-decoration: none;
}

.care-account-card h2 {
  margin: 0;
  font-size: 1rem;
  font-weight: 750;
  letter-spacing: -0.02em;
  color: var(--care-ink);
}

.care-account-card .care-account-lead {
  margin-top: 0;
}

.care-account-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.care-account-row::after {
  content: '';
  width: 8px;
  height: 8px;
  -webkit-border-end: 2px solid var(--care-navy);
          border-inline-end: 2px solid var(--care-navy);
  -webkit-border-after: 2px solid var(--care-navy);
          border-block-end: 2px solid var(--care-navy);
  transform: rotate(-45deg);
  flex-shrink: 0;
}

html[dir='rtl'] .care-account-row::after {
  transform: rotate(135deg);
}

.care-account-next__body,
.care-account-person {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: center;
}

.care-account-next__photo,
.care-account-person__photo {
  width: 56px;
  height: 56px;
  object-fit: cover;
  background: #e8eef5;
}

.care-account-next__body strong,
.care-account-next__body span,
.care-account-person strong,
.care-account-person span {
  display: block;
}

.care-account-next__body strong,
.care-account-person strong {
  font-size: 0.95rem;
  font-weight: 750;
}

.care-account-next__body span,
.care-account-person span {
  margin-top: 3px;
  font-size: 0.8rem;
  color: #5d7390;
}

.care-account-people {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-account-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
}

.care-account-tile {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 128px;
  padding: 12px;
  text-decoration: none;
  color: inherit;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care-account-tile__media {
  width: 44px;
  height: 44px;
  overflow: hidden;
  background: #e8eef5;
}

.care-account-tile__media .care-mico {
  width: 44px;
  height: 44px;
}

.care-account-tile strong {
  font-size: 0.88rem;
  font-weight: 750;
  line-height: 1.25;
  color: var(--care-ink);
}

.care-account-tile span {
  font-size: 0.74rem;
  line-height: 1.35;
  color: #5d7390;
}

.care-account-tile em {
  position: absolute;
  top: 10px;
  inset-inline-end: 10px;
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 750;
  color: var(--care-navy);
}

.care-account-field {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-account-field span {
  font-size: 0.78rem;
  font-weight: 700;
  color: #3d5470;
}

.care-account-field input {
  width: 100%;
  min-height: 44px;
  box-sizing: border-box;
  border: 1px solid rgba(30, 58, 95, 0.16);
  padding: 10px 12px;
  font: inherit;
  font-size: 0.92rem;
  background: #fff;
  color: var(--care-ink);
}

.care-account-field input:-moz-read-only {
  background: #f8fafc;
  color: #3d5470;
}

.care-account-field input:disabled,
.care-account-field input:read-only {
  background: #f8fafc;
  color: #3d5470;
}

.care-account-field small {
  font-size: 0.74rem;
  color: #5d7390;
}

.care-account-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-account-page .care-btn,
.care-account .pp-btn {
  min-height: 44px;
}

.care-account-alert,
.care-account-ok,
.care-account .pp-error,
.care-account .pp-empty {
  margin: 0;
  font-size: 0.84rem;
}

.care-account-alert,
.care-account .pp-error {
  color: #9b1c1c;
}

.care-account-ok {
  color: #0b6b62;
}

.care-account .pp-section__head {
  margin: 0;
  margin-bottom: 0;
  padding: 16px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care-account .pp-section__head h1 {
  margin: 0 0 6px;
  font-size: 1.25rem;
  font-weight: 780;
  letter-spacing: -0.03em;
  color: var(--care-navy);
}

.care-account .pp-section__head p {
  margin: 0 0 12px;
  color: #5d7390;
}

.care-account .pp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border: 0;
  background: var(--care-navy);
  color: #fff !important;
  font: inherit;
  font-weight: 650;
  text-decoration: none;
}

.care-account .pp-btn--ghost {
  background: #fff;
  color: var(--care-navy) !important;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.18);
}

.care-account .pp-dash__list,
.care-account .pp-list,
.care-account .pp-group {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-account .pp-dash__list li,
.care-account .pp-dash__list a,
.care-account .pp-row,
.care-account .pp-list__item {
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  padding: 14px;
  border: 0;
}

.care-account .pp-group__title,
.care-account .pp-dash__section h2 {
  margin: 4px 0 0;
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-navy);
}

@media (min-width: 768px) {
  .care-account-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .care-account-page,
  .care-account .pp-section {
    max-width: 920px;
  }
}

.care.care--phone .care-account-page,
.care.care--phone .care-account .pp-section {
  padding: 0 0 20px;
  gap: 12px;
}

.care.care--phone .care-account-id,
.care.care--phone .care-account-card,
.care.care--phone .care-account-tile,
.care.care--phone .care-account .pp-section__head,
.care.care--phone .care-account .pp-dash__list li,
.care.care--phone .care-account .pp-dash__list a,
.care.care--phone .care-account .pp-row,
.care.care--phone .care-account .pp-list__item {
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  border-radius: 14px;
}

.care.care--phone .care-account .pp-row,
.care.care--phone .care-account .pp-list__item {
  min-height: 56px;
  padding: 14px;
  font-size: 15px;
}

.care.care--phone .care-account-tile {
  min-height: 120px;
  padding: 14px;
  border-radius: 14px;
}

.care.care--phone .care-account-tile strong {
  font-size: 15px;
}

.care.care--phone .care-account-id h1,
.care.care--phone .care-account .pp-section__head h1 {
  font-size: 1.28rem;
}

.care.care--phone .care-account .pp-empty,
.care.care--phone .care-account .pp-error {
  margin: 8px 0;
  padding: 20px 16px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(30, 58, 95, 0.1);
  font-size: 15px;
  text-align: center;
}

.care.care--phone .care-account .pp-error {
  color: #c4453c;
  border-color: rgba(196, 69, 60, 0.2);
}

.care.care--phone .care-account-page .care-btn,
.care.care--phone .care-account .pp-btn {
  width: 100%;
  min-height: 48px;
  border-radius: 14px;
  font-size: 15px;
}

.care.care--phone .care-account-field input {
  min-height: 48px;
  border-radius: 14px;
  font-size: 16px;
}

.care.care--phone .care-account-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

html.ch-phone-dark .care-account-id,
html.ch-phone-dark .care-account-card,
html.ch-phone-dark .care-account-tile,
html.ch-phone-dark .care-account .pp-section__head,
html.ch-phone-dark .care-account .pp-dash__list li,
html.ch-phone-dark .care-account .pp-dash__list a,
html.ch-phone-dark .care-account .pp-row,
html.ch-phone-dark .care-account .pp-list__item {
  background: #152234;
  box-shadow: 0 0 0 1px rgba(148, 163, 184, 0.16);
  color: #e8eef7;
}

html.ch-phone-dark .care-account-id h1,
html.ch-phone-dark .care-account-heading,
html.ch-phone-dark .care-account-card h2,
html.ch-phone-dark .care-account-tile strong,
html.ch-phone-dark .care-account .pp-section__head h1 {
  color: #e8eef7;
}

html.ch-phone-dark .care-account-lead,
html.ch-phone-dark .care-account-id__copy span,
html.ch-phone-dark .care-account-tile span,
html.ch-phone-dark .care-account .pp-section__head p {
  color: #94a3b8;
}

html.ch-phone-dark .care-account-field input {
  background: #0f1a28;
  color: #e8eef7;
  border-color: rgba(148, 163, 184, 0.22);
}

/* Open-in-app + treatment plans (email CTA landings) */
.care-open-app {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  margin: 0 0 18px;
  padding: 14px 16px;
  background: linear-gradient(135deg, var(--care-header-start, #2563eb), var(--care-header-end, #1e3a5f));
  color: #fff;
  box-shadow: 0 10px 28px rgba(18, 58, 140, 0.22);
}

.care-open-app__kicker {
  margin: 0 0 4px;
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.85;
}

.care-open-app__title {
  margin: 0;
  font-size: 1.02rem;
  font-weight: 720;
  letter-spacing: -0.02em;
}

.care-open-app__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-open-app .care-btn--primary {
  background: #fff;
  color: var(--care-navy, #1e3a5f);
}

.care-open-app .care-btn--solid {
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.28);
}

.care-plans-hero {
  padding: 8px 0 6px;
}

.care-plans-hero__kicker {
  margin: 0 0 6px;
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-navy);
}

.care-plans-hero__lead {
  margin: 10px 0 0;
  max-width: 38rem;
  color: #475569;
  line-height: 1.55;
  font-size: 0.98rem;
}

.care-plans-grid {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  margin-top: 18px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.care-plans-card {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  padding: 16px;
  text-decoration: none;
  color: inherit;
  background: var(--care-card, #fff);
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.care-plans-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(18, 58, 140, 0.12);
}

.care-plans-card h2 {
  margin: 0;
  font-size: 1.05rem;
  color: var(--care-navy);
}

.care-plans-card p {
  margin: 0;
  color: #64748b;
  font-size: 0.9rem;
  line-height: 1.45;
}

.care-plans-card__icon {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  background: var(--care-mint, #eff6ff);
  color: var(--care-teal, #2563eb);
}

.care-plans-note {
  margin-top: 20px;
  padding: 14px 16px;
  background: var(--care-paper, #f8fafc);
  border-left: 3px solid var(--care-teal, #2563eb);
}

.care-plans-note p {
  margin: 0;
  color: #475569;
  line-height: 1.5;
  font-size: 0.92rem;
}

/* QA-HUB-11 */
.care-v2-hub {
  background: transparent;
}

.care:has(.care-v2-hub) {
  --care-paper: #f8fafc;
}


/* Care (B2C) — hospital website. Staff B2B chrome must not inherit these. */

html:has(.care) {
  scroll-padding-top: 88px;
  scroll-behavior: smooth;
}

/* Matches Rails B2C `_ch_tokens.scss` (--ch-primary / --ch-accent). */
body.care-app-active {
  --care-ink: #0f172a;
  --care-ink-soft: #64748b;
  --care-deep: #eff6ff;
  --care-navy: #1e3a5f;
  --care-teal: #0F6CBD;
  --care-mint: #eff6ff;
  --care-sky: #0F6CBD;
  --care-gold: #14B8A6;
  --care-line: rgba(15, 23, 42, 0.1);
  --care-glass: rgba(255, 255, 255, 0.92);
  --care-paper: #F8FAFC;
  --care-card: #ffffff;
  --care-paper-ink: #0F172A;
  --care-paper-muted: #475569;
  --care-accent: #0F6CBD;
  --care-success: #047857;
  --care-warning: #c48a0a;
  --care-error: #dc2626;
  --care-header-start: #0F6CBD;
  --care-header-end: #0F172A;
  --care-font: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, 'Segoe UI', Tahoma, sans-serif;
  --care-font-display: var(--font-sora, 'Sora'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, sans-serif;
  --care-serif: var(--care-font-display);
  --care-radius: 16px;
  --care-radius-btn: 14px;
  background: var(--care-paper);
}

@media (prefers-color-scheme: dark) {
  html:not([data-theme='light']) body.care-app-active,
  html:not([data-theme='light']) .care {
    --care-ink: #e8eef7;
    --care-ink-soft: #9aabc0;
    --care-deep: #1a2740;
    --care-navy: #8bb4ff;
    --care-teal: #5b9bff;
    --care-mint: #152036;
    --care-sky: #5b9bff;
    --care-gold: #5b9bff;
    --care-line: rgba(168, 196, 255, 0.2);
    --care-glass: rgba(21, 32, 54, 0.92);
    --care-paper: #0b1220;
    --care-card: #152036;
    --care-paper-ink: #e8eef7;
    --care-paper-muted: #9aabc0;
    --care-accent: #5b9bff;
    --care-success: #3dcf8e;
    --care-warning: #e0b34a;
    --care-error: #ff7a70;
    --care-header-start: #1e4fb8;
    --care-header-end: #0b1f4a;
    color: var(--care-ink);
    background: var(--care-paper);
  }
}

html[data-theme='dark'] body.care-app-active,
html[data-theme='dark'] .care {
  --care-ink: #e8eef7;
  --care-ink-soft: #9aabc0;
  --care-deep: #1a2740;
  --care-navy: #8bb4ff;
  --care-teal: #5b9bff;
  --care-mint: #152036;
  --care-sky: #5b9bff;
  --care-gold: #5b9bff;
  --care-line: rgba(168, 196, 255, 0.2);
  --care-glass: rgba(21, 32, 54, 0.92);
  --care-paper: #0b1220;
  --care-card: #152036;
  --care-paper-ink: #e8eef7;
  --care-paper-muted: #9aabc0;
  --care-accent: #5b9bff;
  --care-success: #3dcf8e;
  --care-warning: #e0b34a;
  --care-error: #ff7a70;
  --care-header-start: #1e4fb8;
  --care-header-end: #0b1f4a;
  color: var(--care-ink);
  background: var(--care-paper);
}

.care {
  --care-ink: #0f172a;
  --care-ink-soft: #64748b;
  --care-deep: #eff6ff;
  --care-navy: #1e3a5f;
  --care-teal: #0F6CBD;
  --care-mint: #eff6ff;
  --care-sky: #0F6CBD;
  --care-gold: #14B8A6;
  --care-line: rgba(15, 23, 42, 0.1);
  --care-glass: rgba(255, 255, 255, 0.92);
  --care-paper: #F8FAFC;
  --care-card: #ffffff;
  --care-paper-ink: #0F172A;
  --care-paper-muted: #475569;
  --care-accent: #0F6CBD;
  --care-success: #047857;
  --care-warning: #c48a0a;
  --care-error: #dc2626;
  --care-header-start: #0F6CBD;
  --care-header-end: #0F172A;
  --care-font: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, 'Segoe UI', Tahoma, sans-serif;
  --care-font-display: var(--font-sora, 'Sora'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, sans-serif;
  --care-serif: var(--care-font-display);
  --care-radius: 16px;
  --care-radius-btn: 14px;
  --care-shadow: 0 12px 40px rgba(30, 58, 95, 0.08);
  --care-stage: min(1200px, calc(100% - 40px));
  min-height: 100vh;
  min-height: 100dvh;
  color: var(--care-ink);
  font-family: var(--care-font);
  font-size: 1rem;
  line-height: 1.55;
  background: var(--care-paper);
  overflow-x: clip;
  max-width: 100%;
}

html[dir='rtl'] .care,
html[dir='rtl'] body.care-app-active {
  /* Match Ynmo (ynmodata.com): IBM Plex Sans Arabic for RTL UI */
  --care-font: var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), var(--font-inter, 'Inter'), Tahoma, 'Segoe UI',
    sans-serif;
  --care-font-display: var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), var(--font-sora, 'Sora'), Tahoma, sans-serif;
  --care-serif: var(--care-font-display);
}

html[dir='rtl'] .care {
  font-family: var(--care-font);
  line-height: 1.7;
}

.care h1,
.care h2,
.care h3,
.care .care-page__title,
.care .care-door strong,
.care .care-b2c-tile strong,
.care .care-doc__body strong,
.care .care-center__body strong,
.care .care-hero__brand {
  font-family: var(--care-serif);
  font-weight: 600;
  letter-spacing: -0.015em;
}

html[dir='rtl'] .care h1,
html[dir='rtl'] .care h2,
html[dir='rtl'] .care h3,
html[dir='rtl'] .care .care-page__title,
html[dir='rtl'] .care .care-door strong,
html[dir='rtl'] .care .care-b2c-tile strong,
html[dir='rtl'] .care .care-doc__body strong,
html[dir='rtl'] .care .care-center__body strong,
html[dir='rtl'] .care .care-hero__brand {
  letter-spacing: 0;
  line-height: 1.45;
}

.care.care--menu-open {
  overflow: visible;
}

.care-stage {
  width: 100%;
  min-width: 0;
  overflow-x: clip;
}

html:has(body.care-phone-shell),
body.care-phone-shell {
  height: 100%;
  height: 100dvh;
  overflow: hidden;
}

.care * {
  box-sizing: border-box;
}

.care a {
  color: inherit;
  text-decoration: none;
}

/* —— Top chrome —— */
.care-top {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 40;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding:
    calc(10px + env(safe-area-inset-top, 0px))
    max(16px, env(safe-area-inset-right, 0px))
    10px
    max(16px, env(safe-area-inset-left, 0px));
  background: #fff;
  border-bottom: 1px solid rgba(30, 58, 95, 0.1);
  box-shadow: 0 1px 0 rgba(30, 58, 95, 0.04), 0 8px 24px rgba(30, 58, 95, 0.05);
  max-width: 100%;
  overflow: visible;
}

.care-top__inner {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.care-top__nav,
.care-top__actions {
  display: none;
}

.care-top__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-width: 0;
}

.care-top__row--brand {
  position: relative;
  z-index: 1;
}

.care-top__lead {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1 1;
}

.care-top__back {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border: 1px solid var(--care-line);
  border-radius: var(--care-radius);
  background: var(--care-card);
  color: var(--care-ink);
  font-size: 1.55rem;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.care-top__back .care-ico {
  width: 18px;
  height: 18px;
}

.care-top__back:active {
  transform: scale(0.96);
  background: color-mix(in srgb, var(--care-teal) 8%, transparent);
}

html[dir='rtl'] .care-top__back .care-ico {
  transform: scaleX(-1);
}

.care-top__brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.care-top__wordmark {
  height: 34px;
  width: auto;
  max-width: min(220px, 46vw);
  object-fit: contain;
  display: block;
}

.care-top__tagline {
  display: block;
  font-size: 0.72rem;
  color: var(--care-ink-soft);
}

.care-top__mark {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: #2563eb url('/careos-mark.png') center / cover no-repeat;
  box-shadow: 0 6px 16px rgba(7, 25, 47, 0.12);
  flex-shrink: 0;
}

.care-top__brand strong {
  font-family: var(--care-font);
  font-size: 1.15rem;
  letter-spacing: -0.01em;
  display: block;
  line-height: 1.15;
  color: var(--care-navy);
}

.care-top__brand span {
  display: block;
  font-size: 0.72rem;
  color: var(--care-ink-soft);
}

.care-top__burger {
  width: 42px;
  height: 42px;
  border: 1px solid var(--care-line);
  border-radius: var(--care-radius);
  background: var(--care-card);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0;
  cursor: pointer;
  color: var(--care-ink);
  flex-shrink: 0;
  z-index: 62;
}

.care-top__burger span {
  display: block;
  width: 18px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transition:
    transform 0.22s ease,
    opacity 0.18s ease;
}

.care-top__burger.is-open span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.care-top__burger.is-open span:nth-child(2) {
  opacity: 0;
}

.care-top__burger.is-open span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.care-top__burger:active {
  transform: scale(0.96);
  background: color-mix(in srgb, var(--care-teal) 6%, transparent);
}

/* Side drawer (not a header dropdown — avoids clipping under the sticky bar). */
.care-drawer {
  position: fixed;
  inset: 0;
  z-index: 80;
  pointer-events: none;
}

.care-drawer.is-open {
  pointer-events: auto;
}

.care-drawer__scrim {
  position: absolute;
  inset: 0;
  border: 0;
  padding: 0;
  margin: 0;
  background: rgba(6, 26, 46, 0.45);
  opacity: 0;
  transition: opacity 0.28s ease;
  cursor: pointer;
}

.care-drawer.is-open .care-drawer__scrim {
  opacity: 1;
}

.care-drawer__panel {
  position: absolute;
  top: 0;
  bottom: 0;
  inset-inline-end: 0;
  width: min(320px, 86vw);
  background: var(--care-card);
  box-shadow: -12px 0 40px rgba(6, 26, 46, 0.18);
  display: flex;
  flex-direction: column;
  gap: 0;
  padding:
    calc(16px + env(safe-area-inset-top, 0px))
    max(16px, env(safe-area-inset-right, 0px))
    calc(20px + env(safe-area-inset-bottom, 0px))
    max(16px, env(safe-area-inset-left, 0px));
  transform: translateX(105%);
  transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

html[dir='rtl'] .care-drawer__panel {
  box-shadow: 12px 0 40px rgba(6, 26, 46, 0.18);
  transform: translateX(-105%);
}

.care-drawer.is-open .care-drawer__panel {
  transform: translateX(0);
}

.care-drawer__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 20px;
}

.care-drawer__brand {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.care-drawer__brand strong {
  font-family: var(--care-serif);
  font-size: 1.2rem;
  display: block;
  line-height: 1.1;
}

.care-drawer__brand span {
  display: block;
  font-size: 0.72rem;
  color: var(--care-ink-soft);
}

.care-drawer__close {
  width: 36px;
  height: 36px;
  border: 1px solid var(--care-line);
  border-radius: var(--care-radius);
  background: var(--care-card);
  font-size: 1.4rem;
  line-height: 1;
  color: var(--care-ink);
  cursor: pointer;
  flex-shrink: 0;
}

.care-drawer__lang {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid var(--care-line);
  border-bottom: 1px solid var(--care-line);
  margin-bottom: 12px;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--care-ink-soft);
}

.care-drawer__nav {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1 1;
}

.care-drawer__link--accent {
  background: var(--care-card);
  color: var(--care-accent) !important;
}

.care-scan-panel .care-btn {
  width: 100%;
  justify-content: center;
}

.care-drawer__actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 16px;
}

.care-drawer__actions .care-btn {
  width: 100%;
}

.care .ec-locale-switcher,
.care .ec-locale-switcher--compact {
  margin: 0;
  padding: 7px 12px;
  min-width: 42px;
  border: 1px solid var(--care-line);
  border-radius: var(--care-radius);
  background: var(--care-card);
  color: var(--care-ink);
  font: inherit;
  font-weight: 700;
  font-size: 0.82rem;
  cursor: pointer;
}

.care-ico {
  width: 1.1em;
  height: 1.1em;
  flex-shrink: 0;
  display: block;
}

img.care-ico,
.care-ico--art {
  object-fit: contain;
  background: transparent;
}

.care-drawer__link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 4px;
  font-weight: 600;
  border-radius: 0;
  border-bottom: 1px solid var(--care-line);
}

.care-drawer__link .care-ico {
  width: 20px;
  height: 20px;
  color: var(--care-navy);
}

.care-drawer__link--accent .care-ico {
  color: var(--care-accent);
}

.care-door-more a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care-top__nav a,
.care-top__cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care-top__nav .care-ico {
  width: 16px;
  height: 16px;
}

.care-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-radius: var(--care-radius-btn, 14px);
  padding: 12px 20px;
  font: inherit;
  font-weight: 650;
  font-size: 0.88rem;
  letter-spacing: 0.01em;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}

.care-btn:active {
  transform: scale(0.98);
}

/* `.care a { color: inherit }` must not win over button labels (esp. on photo hero). */
.care .care-btn--ghost {
  background: var(--care-card);
  color: var(--care-ink) !important;
  border: 1px solid var(--care-line);
}

.care .care-btn--primary {
  background: var(--care-teal);
  color: #fff !important;
  box-shadow: none;
}

.care .care-btn--primary:hover {
  background: var(--care-navy);
}

.care .care-btn--solid {
  background: transparent;
  color: var(--care-navy) !important;
  border: 1px solid var(--care-navy);
  box-shadow: none;
}

.care-drawer__actions .care-btn--ghost {
  background: var(--care-card);
  color: var(--care-ink) !important;
}

.care-drawer__actions .care-btn--primary {
  color: #fff !important;
}

.care .care-btn--dark {
  background: var(--care-navy);
  color: #fff;
}

.care .care-btn--light {
  background: var(--care-card);
  color: var(--care-paper-ink);
}

/* Secondary CTAs on the dark photo hero stay ink-on-white, never white-on-white. */
.care-hero--photo .care-btn--solid,
.care-hero--photo .care-btn--ghost,
.care-hero--photo .care-btn--light {
  color: var(--care-ink);
}

.care-hero--photo .care-btn--primary,
.care-hero--photo .care-btn--dark {
  color: #fff;
}

/* —— Hero (calm Care palette) —— */
.care-hero {
  position: relative;
  min-height: min(58vh, 480px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding:
    36px
    max(20px, env(safe-area-inset-right, 0px))
    28px
    max(20px, env(safe-area-inset-left, 0px));
  overflow: hidden;
  isolation: isolate;
}

.care-hero--calm {
  min-height: auto;
  justify-content: flex-start;
  background:
    radial-gradient(90% 80% at 100% 0%, color-mix(in srgb, var(--care-teal) 18%, transparent), transparent 55%),
    radial-gradient(70% 60% at 0% 0%, color-mix(in srgb, var(--care-gold) 12%, transparent), transparent 50%),
    linear-gradient(180deg, var(--care-mint) 0%, var(--care-paper) 78%);
  color: var(--care-ink);
}

.care-hero__stage {
  position: relative;
  z-index: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.care-hero--photo {
  color: #fff;
}

.care-hero--photo .care-hero__brand,
.care-hero--photo .care-hero__lead {
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(6, 26, 46, 0.55);
}

.care-hero__photo {
  position: absolute;
  inset: 0;
  z-index: -3;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 28%;
}

.care-hero--icon {
  background: linear-gradient(135deg, var(--care-header-start), var(--care-header-end));
}

.care-hero--icon .care-hero__photo {
  inset: auto 6% 10% auto;
  width: min(38vw, 260px);
  height: min(38vw, 260px);
  object-fit: contain;
  object-position: center;
  opacity: 0.95;
}

.care-hero__veil {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(180deg, rgba(18, 58, 140, 0.35) 0%, rgba(18, 38, 92, 0.72) 48%, rgba(12, 28, 80, 0.9) 100%),
    radial-gradient(70% 50% at 80% 10%, rgba(43, 123, 255, 0.28), transparent 60%);
}

.care-hero__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  background: var(--care-card);
}

.care-hero__bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, transparent 40%, rgba(238, 243, 248, 0.92) 100%),
    url('/careos-wordmark.png') 108% 8% / min(52vw, 420px) no-repeat;
  opacity: 0.12;
  mix-blend-mode: multiply;
  animation: care-breathe 10s ease-in-out infinite alternate;
}

@keyframes care-breathe {
  from {
    transform: scale(1) translate3d(0, 0, 0);
  }
  to {
    transform: scale(1.04) translate3d(-1.5%, 1%, 0);
  }
}

.care-hero__brand {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: clamp(1.85rem, 7vw, 2.7rem);
  font-weight: 700;
  letter-spacing: -0.045em;
  line-height: 1.12;
  margin: 0 0 14px;
  color: inherit;
  animation: care-rise 0.8s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.care-hero--calm .care-hero__brand {
  color: var(--care-navy);
}

.care-hero:not(.care-hero--photo) .care-hero__brand {
  color: var(--care-ink);
}

.care-hero__lead {
  max-width: 28rem;
  margin: 0 0 22px;
  font-size: 1.05rem;
  line-height: 1.45;
  color: inherit;
  opacity: 0.92;
  animation: care-rise 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.08s both;
}

.care-hero:not(.care-hero--photo) .care-hero__lead {
  color: var(--care-ink-soft);
  opacity: 1;
}

.care-doors {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  background: transparent;
  border: 0;
}

.care-doors--categories {
  gap: 10px;
}

.care-door {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  grid-gap: 12px;
  gap: 12px;
  min-height: 0;
  padding: 10px 12px;
  border-radius: 12px;
  background: var(--care-card);
  border: 1px solid var(--care-line);
  color: inherit;
  text-decoration: none;
  box-shadow: 0 1px 0 rgba(10, 58, 72, 0.04);
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.care-door:hover,
.care-door:focus-visible {
  transform: translateY(-1px);
  background: color-mix(in srgb, var(--care-mint) 45%, var(--care-card));
  border-color: color-mix(in srgb, var(--care-teal) 28%, var(--care-line));
  box-shadow: 0 6px 18px rgba(10, 58, 72, 0.08);
  outline: none;
}

.care-door__thumb {
  display: block;
  width: 72px;
  height: 72px;
  border-radius: 10px;
  overflow: hidden;
  background: color-mix(in srgb, var(--care-navy) 8%, #eef5fb);
  flex-shrink: 0;
}

.care-door__thumb img,
.care-door__thumb .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: grid;
}

.care-door--photo {
  position: relative;
  grid-template-columns: 1fr;
  min-height: 168px;
  padding: 0;
  overflow: hidden;
}

.care-door--photo .care-door__thumb {
  width: 100%;
  height: 168px;
  border-radius: 0;
}

.care-door--photo .care-door__copy {
  position: absolute;
  inset: auto 0 0;
  padding: 28px 14px 12px;
  background: linear-gradient(180deg, transparent, rgba(8, 28, 48, 0.78));
  color: #fff;
}

.care-door--photo .care-door__copy strong,
.care-door--photo .care-door__copy span {
  color: #fff;
}

.care-door__copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.care-door__icon,
.care-door__glyph,
.care-home-search {
  display: none;
}

.care-door__go {
  display: none;
}

.care-door strong {
  font-size: 0.98rem;
  font-weight: 750;
  letter-spacing: -0.02em;
  color: var(--care-navy);
  line-height: 1.25;
}

.care-door span {
  font-size: 0.78rem;
  line-height: 1.35;
  color: #4a6278;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care-door__go .care-ico,
.care-cta .care-ico,
.care-b2c-tile__go .care-ico {
  width: 14px;
  height: 14px;
}

.care-door-more {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin: 12px 0 0;
  font-size: 0.86rem;
}

.care-door-more a {
  color: var(--care-teal);
  font-weight: 700;
  text-decoration: none;
}

.care-done {
  padding: 20px 0 12px;
}

.care-done__kicker {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-teal);
}

.care-panel summary {
  cursor: pointer;
  font-weight: 700;
  list-style: none;
}

.care-panel summary::-webkit-details-marker {
  display: none;
}

.care.care--phone.care--patient-dash .care-top__cta {
  display: none;
}

.care-hero__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  animation: care-rise 1s cubic-bezier(0.22, 1, 0.36, 1) 0.14s both;
}

/* —— Smart search (hero + sticky header) —— */
.care-smart {
  position: relative;
  width: min(100%, 560px);
  max-width: 100%;
  margin: 0 0 20px;
  z-index: 5;
  animation: care-rise 0.95s cubic-bezier(0.22, 1, 0.36, 1) 0.1s both;
  overflow-x: clip;
}

.care-smart.is-dormant {
  visibility: hidden;
  pointer-events: none;
  height: 0;
  margin: 0;
  overflow: hidden;
  opacity: 0;
}

.care-smart--header {
  width: 100%;
  margin: 0;
  animation: none;
  z-index: 6;
  overflow: visible;
}

.care-smart__row {
  display: block;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

.care-smart__row .care-smart__field {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

/* City filter lives inside the search field — never a second column that can overflow. */
.care-smart__place-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  max-width: 7.5rem;
  min-width: 0;
  border: 1px solid var(--care-line);
  border-radius: 999px;
  background: rgba(247, 250, 252, 0.95);
  color: var(--care-ink);
  font: inherit;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 5px 9px;
  cursor: pointer;
  flex: 0 1 auto;
  overflow: hidden;
  line-height: 1.2;
}

.care-smart__place-btn > span {
  flex-shrink: 0;
}

.care-smart__place-btn em {
  font-style: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.care-smart__place-btn.is-active {
  border-color: color-mix(in srgb, var(--care-teal) 35%, transparent);
  background: color-mix(in srgb, var(--care-teal) 10%, transparent);
  color: var(--care-accent);
}

.care-smart__filters {
  margin-top: 10px;
  padding: 12px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid var(--care-line);
  box-shadow: 0 16px 40px rgba(6, 26, 46, 0.16);
  animation: care-panel-in 0.32s cubic-bezier(0.22, 1, 0.36, 1) both;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.care-smart__filters-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
  min-width: 0;
}

.care-smart__filters-head-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

.care-smart__filters-head strong {
  font-size: 0.9rem;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.care-smart__dismiss {
  border: 1px solid var(--care-line);
  background: var(--care-card);
  color: var(--care-ink);
  font: inherit;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 6px 10px;
  border-radius: 999px;
  cursor: pointer;
  flex-shrink: 0;
}

.care-smart__panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.care-smart__panel-head strong {
  font-size: 0.88rem;
  color: var(--care-ink);
}

.care-smart__filters-actions {
  margin-bottom: 10px;
}

.care-smart__filters-actions .care-btn {
  width: 100%;
  justify-content: center;
}

.care-smart__chip-block {
  margin-top: 10px;
  min-width: 0;
}

.care-smart__chip-label {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-ink-soft);
  margin-bottom: 6px;
}

html[dir='rtl'] .care-smart__chip-label {
  letter-spacing: 0;
  text-transform: none;
}

/* Overlay under brand row — does not change sticky header document height. */
.care-top__search {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  z-index: 39;
  margin: 0;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 8px max(16px, env(safe-area-inset-right, 0px)) 10px max(16px, env(safe-area-inset-left, 0px));
  background: rgba(247, 250, 252, 0.96);
  border-bottom: 1px solid var(--care-line);
  box-shadow: 0 10px 24px rgba(7, 25, 47, 0.08);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-6px);
  transition:
    opacity 0.18s ease,
    transform 0.18s ease,
    visibility 0.18s;
}

.care-top__search.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: none;
}

/* Phone shell: header is chrome, the stage is the only scroller. */
.care.care--phone {
  display: flex;
  flex-direction: column;
  height: 100dvh;
  max-height: 100dvh;
  min-height: 0;
  overflow: hidden;
}

.care.care--phone.care--menu-open {
  overflow: hidden;
}

.care.care--phone .care-top {
  position: relative;
  top: auto;
  flex: 0 0 auto;
  z-index: 40;
  border-radius: 0;
}

.care.care--phone .care-top__search {
  position: static;
  left: auto;
  right: auto;
  top: auto;
  transform: none;
  box-shadow: none;
  border-bottom: 0;
  background: transparent;
  padding: 8px 0 2px;
}

.care.care--phone .care-top__search:not(.is-visible) {
  display: none;
}

.care.care--phone .care-top__search.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: none;
}

.care.care--phone .care-top__back {
  width: 48px;
  height: 48px;
}

.care.care--phone .care-stage {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: contain;
}

.care.care--phone .ch-page-transition {
  min-height: 100%;
}

.care.care--phone .care-page,
.care.care--phone .care-main {
  min-height: 100%;
}

.care.care--phone .care-page__title {
  margin-top: 2px;
  font-size: clamp(1.35rem, 6vw, 1.7rem);
}

.care.care--phone .care-page__body {
  padding-top: 16px;
}

.care.care--phone .care-detail-hero {
  gap: 12px;
  margin: 10px 0 12px;
  padding: 14px;
  border-radius: 14px;
}

.care.care--phone .care-doc,
.care.care--phone .care-center,
.care.care--phone .care-row {
  padding: 14px;
  border-radius: 14px;
  min-height: 56px;
  font-size: 15px;
}

.care.care--phone .care-cta__full {
  display: none;
}

.care.care--phone .care-cta__short {
  display: inline;
}

.care.care--phone.care--patient-dash {
  padding-bottom: 0;
}

.care.care--phone.care--patient-dash .care-stage {
  padding-bottom: calc(var(--care-tabs-h) + 8px);
}

.care-top__search .care-smart__field {
  padding: 9px 12px;
  box-shadow: 0 6px 18px rgba(7, 25, 47, 0.08);
  border: 1px solid var(--care-line);
  background: var(--care-card);
}

.care-top__search .care-smart__panel,
.care-top__search .care-smart__filters {
  position: absolute;
  inset-inline: 0;
  left: 0;
  right: 0;
  z-index: 50;
  max-height: min(58vh, 440px);
  width: 100%;
  box-sizing: border-box;
}

html[dir='rtl'] .care-smart__place-btn {
  max-width: 6.75rem;
}

html[dir='rtl'] .care-smart__input {
  text-align: start;
}

.care-smart-sentinel {
  width: 100%;
  height: 1px;
  margin: 0;
  pointer-events: none;
}

.care-smart__field {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: var(--care-radius);
  background: linear-gradient(180deg, #d7e8f8 0%, #f4f9fd 100%);
  border: 1px solid color-mix(in srgb, var(--care-teal) 22%, #fff);
  box-shadow: 0 12px 40px rgba(6, 26, 46, 0.22);
  transition:
    box-shadow 0.25s ease,
    background 0.2s ease;
  min-width: 0;
}

.care-smart__field-main {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1 1;
  min-width: 0;
  cursor: text;
}

.care-smart.is-focused .care-smart__field,
.care-smart.is-open .care-smart__field {
  /* No horizontal scale — that was pushing the bar past the viewport. */
  transform: translateY(-1px);
  box-shadow:
    0 18px 48px rgba(6, 26, 46, 0.28),
    0 0 0 2px rgba(14, 165, 233, 0.45);
}

.care-smart__icon {
  width: 22px;
  height: 22px;
  color: var(--care-accent);
  flex-shrink: 0;
  display: grid;
  place-items: center;
}

.care-smart__icon svg {
  width: 100%;
  height: 100%;
}

.care-smart__input {
  flex: 1 1;
  min-width: 0;
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 1rem;
  font-weight: 500;
  color: var(--care-ink);
  outline: none;
}

.care-smart__input::placeholder {
  color: var(--care-ink-soft);
  transition: opacity 0.35s ease;
}

.care-smart__clear {
  border: 0;
  background: color-mix(in srgb, var(--care-teal) 10%, transparent);
  color: var(--care-accent);
  font: inherit;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 5px 8px;
  border-radius: 999px;
  cursor: pointer;
  flex-shrink: 0;
  white-space: nowrap;
}

.care-smart__pulse {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--care-accent);
  animation: care-pulse 1s ease-in-out infinite;
  flex-shrink: 0;
}

@keyframes care-pulse {
  0%,
  100% {
    opacity: 0.35;
    transform: scale(0.85);
  }
  50% {
    opacity: 1;
    transform: scale(1.15);
  }
}

.care-smart__hints {
  position: absolute;
  inset-inline-start: 48px;
  inset-inline-end: 7.75rem;
  top: 14px;
  height: 1.4em;
  pointer-events: none;
  overflow: hidden;
  opacity: 0;
}

.care-smart__hint {
  position: absolute;
  inset: 0;
  color: transparent;
  opacity: 0;
}

.care-smart__panel {
  margin-top: 12px;
  max-height: min(58vh, 480px);
  overflow: auto;
  padding: 12px;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.97);
  color: var(--care-paper-ink);
  border: 1px solid rgba(255, 255, 255, 0.7);
  box-shadow: 0 24px 60px rgba(6, 26, 46, 0.28);
  animation: care-panel-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) both;
  -webkit-overflow-scrolling: touch;
}

@keyframes care-panel-in {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.care-smart__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 10px;
}

.care-smart__group {
  margin-bottom: 14px;
}

.care-smart__group:last-child {
  margin-bottom: 0;
}

.care-smart__group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.care-smart__group-head h3 {
  margin: 0;
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-paper-muted);
  font-weight: 700;
}

.care-smart__hits {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-smart__hit {
  animation: care-hit-in 0.4s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes care-hit-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.care-smart__dot {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background:
    radial-gradient(circle at 30% 30%, rgba(14, 165, 233, 0.45), transparent 55%),
    linear-gradient(145deg, #e7f0fb, #d4e4f6);
  flex-shrink: 0;
}

.care-smart__thumb {
  width: 44px;
  height: 44px;
  border-radius: 0;
  object-fit: cover;
  flex-shrink: 0;
  background: color-mix(in srgb, var(--care-navy) 12%, var(--care-mint));
}

.care-smart__thumb--specialty {
  background: var(--care-card);
}

.care-smart__specialty-hits {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-smart__specialty-hit {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 14px;
  background: var(--care-card);
  border: 1px solid rgba(12, 26, 46, 0.06);
  text-decoration: none;
  color: inherit;
}

.care-smart__specialty-hit strong {
  font-size: 0.92rem;
  letter-spacing: -0.02em;
}

.care-hero--photo .care-smart {
  color: var(--care-ink);
}

@keyframes care-rise {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* —— Sections —— */
.care-main {
  background: transparent;
  color: var(--care-paper-ink);
  border-radius: 0;
  margin-top: 0;
  position: relative;
  z-index: 2;
  padding:
    8px
    max(16px, env(safe-area-inset-right, 0px))
    calc(40px + env(safe-area-inset-bottom, 0px))
    max(16px, env(safe-area-inset-left, 0px));
}

.care-section {
  max-width: 980px;
  margin: 0 auto 40px;
}

.care-section__head {
  margin-bottom: 16px;
}

.care-section__head h2 {
  margin: 0 0 6px;
  font-family: var(--care-serif);
  font-size: clamp(1.65rem, 4vw, 2.15rem);
  letter-spacing: -0.02em;
  font-weight: 600;
  line-height: 1.2;
  color: var(--care-navy);
}

.care-section__head p {
  margin: 0;
  color: var(--care-paper-muted);
  max-width: 36rem;
  line-height: 1.45;
}

/* Category destinations — full-bleed lanes, not card grids */
.care-lanes {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.care-lane {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  min-height: 148px;
  padding: 22px 20px;
  border-radius: 0;
  overflow: hidden;
  color: #fff;
  isolation: isolate;
  transition: transform 0.3s ease;
}

.care-lane--photo {
  min-height: 168px;
}

.care-lane__photo {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.02);
}

.care-lane__shade {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(105deg, rgba(6, 26, 46, 0.92) 0%, rgba(6, 26, 46, 0.62) 52%, rgba(6, 26, 46, 0.78) 100%);
}

.care-lane__copy {
  position: relative;
  z-index: 1;
  max-width: 85%;
  color: #fff;
  text-shadow: 0 1px 12px rgba(6, 26, 46, 0.45);
}

.care-lane strong,
.care-lane span,
.care-lane__blurb,
.care-lane em {
  color: #fff;
}

.care-lane--photo::before {
  display: none;
}

.care-lane:active {
  transform: scale(0.99);
}

.care-lane::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
}

.care-lane--hospitals::before {
  background:
    radial-gradient(80% 120% at 100% 0%, color-mix(in srgb, var(--care-gold) 28%, transparent), transparent 55%),
    linear-gradient(120deg, var(--care-navy), var(--care-teal));
}

.care-lane--labs::before {
  background:
    radial-gradient(80% 120% at 0% 100%, color-mix(in srgb, var(--care-teal) 35%, transparent), transparent 55%),
    linear-gradient(120deg, #0c4a52, #3d8b8a);
}

.care-lane--radiology::before {
  background: var(--care-card);
}

.care-lane--pharmacy::before {
  background:
    radial-gradient(80% 120% at 0% 0%, color-mix(in srgb, var(--care-success) 32%, transparent), transparent 50%),
    linear-gradient(120deg, #0a4a42, var(--care-success));
}

.care-lane strong {
  display: block;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-size: 1.35rem;
  letter-spacing: -0.03em;
  margin-bottom: 4px;
}

.care-lane span {
  font-size: 0.88rem;
  opacity: 0.8;
}

.care-lane em {
  font-style: normal;
  font-weight: 700;
  font-size: 0.85rem;
  opacity: 0.9;
  align-self: start;
}

/* Practice mosaic — logos as the visual story */
.care-mosaic {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
}

@media (min-width: 720px) {
  .care-mosaic {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.care-practice {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 14px 12px 16px;
  border-radius: 16px;
  background: var(--care-card);
  border: 1px solid rgba(12, 26, 46, 0.06);
  min-height: 148px;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.care-practice:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(7, 25, 47, 0.08);
}

.care-practice__logo {
  width: 52px;
  height: 52px;
  border-radius: 0;
  object-fit: cover;
  background: linear-gradient(145deg, #e8f4f8, #d5e4f0);
  display: block;
}

.care-practice__logo--empty {
  display: grid;
  place-items: center;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-weight: 700;
  color: var(--care-navy);
  font-size: 1.1rem;
}

.care-practice strong {
  font-size: 0.95rem;
  letter-spacing: -0.02em;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care-practice span {
  font-size: 0.78rem;
  color: var(--care-paper-muted);
}

.care-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: auto;
}

.care-chip {
  font-size: 0.68rem;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--care-teal) 8%, transparent);
  color: var(--care-accent);
}

/* Services strip */
.care-services {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-service {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  grid-gap: 12px;
  gap: 12px;
  padding: 16px;
  border-bottom: 1px solid rgba(12, 26, 46, 0.08);
}

.care-service:last-child {
  border-bottom: 0;
}

.care-service strong {
  display: block;
  font-size: 1.02rem;
  letter-spacing: -0.02em;
}

.care-service span {
  display: block;
  margin-top: 2px;
  font-size: 0.85rem;
  color: var(--care-paper-muted);
}

.care-service em {
  font-style: normal;
  font-weight: 700;
  color: var(--care-accent);
  font-size: 0.85rem;
}

/* Page interiors (list/search) */
.care-page {
  background: var(--care-paper);
  color: var(--care-paper-ink);
  min-height: 100vh;
  min-height: 100dvh;
  padding-bottom: calc(32px + env(safe-area-inset-bottom, 0px));
}

.care-page__body {
  max-width: 920px;
  margin: 0 auto;
  padding: 18px max(16px, env(safe-area-inset-right, 0px)) 0 max(16px, env(safe-area-inset-left, 0px));
}

.care-page__title {
  margin: 8px 0 6px;
  font-family: var(--care-serif);
  font-size: clamp(1.85rem, 5vw, 2.6rem);
  letter-spacing: -0.02em;
  font-weight: 600;
  color: var(--care-navy);
}

.care-page__lead {
  margin: 0 0 18px;
  color: var(--care-paper-muted);
}

.care-intro {
  margin: 0 0 18px;
}

.care-intro__kicker {
  margin: 0 0 6px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-teal);
}

.care-intro .care-page__title {
  margin-top: 0;
}

.care-intro__row--split {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}

.care-intro__action {
  flex-shrink: 0;
  margin-bottom: 18px;
}

.care-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex-shrink: 0;
  align-self: center;
  min-height: 40px;
  padding: 8px 14px;
  background: var(--care-navy);
  color: #fff !important;
  font-style: normal;
  font-weight: 650;
  font-size: 0.72rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  box-shadow: none;
  border-radius: var(--care-radius);
}

.care-cta__short {
  display: none;
}

.care-cta--block {
  display: flex;
  width: max-content;
  margin-top: 10px;
}

.care-btn--block {
  width: 100%;
}

.care-place__cities-wrap {
  margin-top: 10px;
}

.care-place__cities-wrap summary {
  cursor: pointer;
  font-weight: 700;
  font-size: 0.88rem;
  color: var(--care-navy);
  list-style: none;
}

.care-place__cities-wrap summary::-webkit-details-marker {
  display: none;
}

.care-place__cities-wrap[open] summary {
  margin-bottom: 8px;
}

.care-place__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}

.care-place__actions .care-btn--block {
  width: 100%;
}

.care-search {
  width: 100%;
  border: 1px solid color-mix(in srgb, var(--care-teal) 28%, #c5d8ea);
  border-radius: var(--care-radius);
  padding: 14px 16px;
  font: inherit;
  font-size: 1rem;
  color: var(--care-navy);
  background: linear-gradient(180deg, #dceaf7 0%, #f3f8fd 100%);
  margin-bottom: 14px;
}

.care-search:focus {
  outline: none;
  border-color: color-mix(in srgb, var(--care-teal) 55%, transparent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--care-teal) 15%, transparent);
}

.care-filters {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-bottom: 8px;
  margin-bottom: 14px;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}

.care-filters--wrap {
  flex-wrap: wrap;
  overflow: visible;
  padding-bottom: 2px;
  margin-bottom: 0;
}

/* Keep chip rows from expanding the page width (LTR/RTL). */
.care-smart__filters .care-filters,
.care-smart__tabs {
  max-width: 100%;
}

.care-filter {
  flex-shrink: 0;
  border: 1px solid rgba(12, 26, 46, 0.1);
  background: var(--care-card);
  border-radius: var(--care-radius);
  padding: 8px 14px;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--care-paper-muted);
  cursor: pointer;
}

.care-filter.is-active {
  background: var(--care-navy);
  color: #fff;
  border-color: var(--care-navy);
}

.care-list {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-list.is-refreshing {
  opacity: 0.72;
  transition: opacity 0.18s ease;
  pointer-events: none;
}

.care-row {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-gap: 12px;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border-radius: 16px;
  background: var(--care-card, #fff);
  border: 1px solid var(--care-line);
}

.care-avatar {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  object-fit: cover;
  background: color-mix(in srgb, var(--care-navy) 12%, var(--care-mint));
}

.care-avatar--sq {
  border-radius: 0;
}

.care-row strong {
  display: block;
  letter-spacing: -0.02em;
}

.care-row span {
  display: block;
  font-size: 0.82rem;
  color: var(--care-paper-muted);
  margin-top: 2px;
}

.care-muted {
  color: var(--care-paper-muted);
  font-size: 0.9rem;
}

.care-error {
  color: #b91c1c;
  background: #fef2f2;
  border-radius: 12px;
  padding: 12px 14px;
  margin-bottom: 12px;
}

.care-success {
  color: #065f46;
  background: #ecfdf5;
  border-radius: 12px;
  padding: 12px 14px;
  margin-bottom: 12px;
}

.care-panel {
  background: var(--care-card);
  border-radius: 0;
  padding: 22px 16px;
  border: 0;
  border-bottom: 1px solid var(--care-line);
  margin-bottom: 0;
}

.care-panel h3 {
  margin: 0 0 10px;
  font-family: var(--care-serif);
  letter-spacing: -0.02em;
  font-weight: 600;
  color: var(--care-navy);
}

.care-slots {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-slot {
  border: 1px solid rgba(12, 26, 46, 0.12);
  background: var(--care-card);
  border-radius: var(--care-radius);
  padding: 10px 12px;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}

.care-slot.is-active,
.care-slot:hover:not(:disabled) {
  border-color: var(--care-accent);
  color: var(--care-accent);
}

.care-slot.is-unavailable,
.care-slot:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  text-decoration: line-through;
}

.care-slots-empty {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  margin: 4px 0 8px;
  padding: 14px 16px;
  background: color-mix(in srgb, var(--care-gold, #c4a35a) 12%, #fff8ee);
  border: 1px solid color-mix(in srgb, var(--care-gold, #c4a35a) 28%, transparent);
}

.care-slots-empty .care-ico {
  width: 28px;
  height: 28px;
  color: #8a5a12;
}

.care-slots-empty strong {
  font-size: 0.95rem;
  font-weight: 750;
  color: var(--care-ink);
}

.care-slots-empty p {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.4;
  color: var(--care-ink-soft);
}

.care-token {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 18px 16px;
  border-radius: 0;
  background: transparent;
  color: var(--care-ink);
  border: 0;
  border-bottom: 1px solid var(--care-line);
}

.care-token strong {
  font-family: var(--care-serif);
  font-size: 2.4rem;
  letter-spacing: -0.05em;
  line-height: 1;
  color: var(--care-accent);
}

.care-hours h3 {
  margin: 0 0 10px;
  font-size: 1.05rem;
}

.care-hours__today {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 10px;
  margin: 0 0 12px;
  color: var(--care-ink);
}

.care-hours__today span {
  color: var(--care-paper-muted);
  font-size: 0.85rem;
}

.care-hours__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-hours__list li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 0.92rem;
  color: var(--care-ink);
}

.care-hours__list li.is-closed {
  color: var(--care-paper-muted);
}

.care-hours--compact .care-hours__list {
  font-size: 0.85rem;
}

.care-empty {
  text-align: center;
  padding: 40px 16px;
  color: var(--care-paper-muted);
}

.care-illustrated-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
  padding: 36px 20px 28px;
  color: var(--care-paper-muted);
}

.care-illustrated-empty .care-scene-art {
  width: 168px;
  height: 168px;
  object-fit: contain;
  display: block;
}

.care-illustrated-empty__title {
  font-size: 1.15rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--care-ink, #0c1a2e);
}

.care-illustrated-empty__msg {
  margin: 0;
  max-width: 28rem;
  line-height: 1.45;
  font-size: 0.95rem;
}

.care-illustrated-empty .care-btn {
  margin-top: 8px;
}

.care-qty {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.care-qty button {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  border: 1px solid rgba(12, 26, 46, 0.12);
  background: var(--care-card);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.care-qty button:last-child {
  background: var(--care-teal);
  border-color: var(--care-teal);
  color: #fff;
}

.care-qty button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.care-unit-select {
  display: block;
  margin-top: 6px;
}

.care-unit-select select {
  max-width: 100%;
  border: 1px solid rgba(12, 26, 46, 0.14);
  border-radius: 10px;
  padding: 6px 10px;
  font: inherit;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #0c1a2e;
  background: var(--care-card);
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.care-stock {
  display: block;
  margin-top: 4px;
  font-size: 0.78rem;
  font-weight: 600;
  color: #0b7a4b;
}

.care-stock--oos {
  color: #b42318;
}

.care-doc--oos {
  opacity: 0.72;
}

/* —— Redesign: status strip, rich centers, docs, infinite —— */
.care-status {
  max-width: 980px;
  margin: 0 auto 28px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  grid-gap: 14px;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid var(--care-line);
  box-shadow: 0 8px 24px rgba(7, 25, 47, 0.05);
  animation: care-rise 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.care-status__copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.care-status__copy strong {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  letter-spacing: -0.03em;
}

.care-status__copy span {
  font-size: 0.88rem;
  color: var(--care-ink-soft);
}

.care-section__head--row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}

.care-link {
  flex-shrink: 0;
  font-weight: 700;
  color: var(--care-accent);
  font-size: 0.9rem;
}

.care-lane__blurb {
  margin: 8px 0 0;
  font-size: 0.82rem;
  line-height: 1.35;
  opacity: 0.88;
  max-width: 22rem;
}

.care-centers {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-center {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-gap: 14px;
  gap: 14px;
  align-items: center;
  padding: 18px 16px;
  border-radius: 0;
  background: var(--care-card);
  border: 1px solid var(--care-line);
  transition: background 0.2s ease;
}

.care-center:hover {
  transform: none;
  background: color-mix(in srgb, var(--care-mint) 35%, var(--care-card));
  box-shadow: none;
}

.care-center__logo {
  width: 56px;
  height: 56px;
  border-radius: 0;
  object-fit: cover;
  background: linear-gradient(145deg, #e8f4f8, #d5e4f0);
  display: block;
}

.care-center__logo--empty {
  display: grid;
  place-items: center;
  font-family: var(--ec-font-display,'Sora', sans-serif);
  font-weight: 700;
  color: var(--care-navy);
  font-size: 1.15rem;
}

.care-center__body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.care-center__body strong {
  font-size: 1.15rem;
  letter-spacing: -0.02em;
  color: var(--care-navy);
}

.care-center__meta {
  font-size: 0.8rem;
  color: var(--care-paper-muted);
  display: block;
}

.care-center__cta {
  font-style: normal;
  font-weight: 700;
  color: var(--care-accent);
  font-size: 0.85rem;
}

.care-doc {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-gap: 16px;
  gap: 16px;
  align-items: center;
  padding: 20px 16px;
  border-radius: 0;
  background: var(--care-card);
  border: 1px solid var(--care-line);
}

.care-doc--check {
  grid-template-columns: auto 1fr;
  cursor: pointer;
}

.care-doc--cart {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.care-doc--cart .care-doc__meta {
  grid-column: 1;
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  -webkit-padding-start: calc(52px + 16px);
          padding-inline-start: calc(52px + 16px);
}

.care--web .care-page--pharmacy .care-doc--cart .care-doc__meta {
  -webkit-padding-start: calc(72px + 16px);
          padding-inline-start: calc(72px + 16px);
}

.care-doc__open {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-gap: 16px;
  gap: 16px;
  align-items: start;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: start;
  cursor: pointer;
}

.care-doc__view {
  display: inline-block;
  margin-top: 6px;
  font-size: 0.74rem;
  font-weight: 700;
  color: var(--care-teal);
}

.care-doc__price {
  display: block;
  margin-top: 6px;
  color: var(--care-navy);
  font-weight: 750;
}

.care-doc__body {
  min-width: 0;
}

.care-doc__body strong {
  display: block;
  letter-spacing: -0.02em;
}

.care-doc__body span {
  display: block;
  font-size: 0.82rem;
  color: var(--care-paper-muted);
  margin-top: 2px;
}

.care-doc > em,
.care-center__cta {
  font-style: normal;
  font-weight: 700;
  color: var(--care-accent);
  font-size: 0.85rem;
}

.care-doc .care-cta,
.care-center .care-cta {
  align-self: center;
}

.care-pill {
  display: inline-block;
  margin-top: 6px;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--care-teal) 10%, transparent);
  color: var(--care-accent);
}

.care-pill--quiet {
  background: rgba(12, 26, 46, 0.06);
  color: var(--care-ink-soft);
}

.care-detail-hero {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: 18px;
  gap: 18px;
  align-items: start;
  margin: 14px 0 16px;
  padding: 18px 20px;
  border-radius: 18px;
  background: linear-gradient(180deg, #eef5fc 0%, #fff 72%);
  border: 1px solid var(--care-line);
}

.care-profile {
  margin: 8px 0 20px;
}

.care-profile > h2 {
  margin: 0 0 12px;
  font-family: var(--care-serif);
  font-size: 1.2rem;
  color: var(--care-navy);
}

.care-profile-about {
  margin: 0 0 14px;
  padding: 16px 18px;
  border-radius: 16px;
  background: #f3f8fd;
  border: 1px solid rgba(10, 61, 115, 0.08);
}

.care-profile-about h3 {
  margin: 0 0 8px;
  font-size: 0.92rem;
  color: var(--care-navy);
}

.care-profile-about p {
  margin: 0;
  line-height: 1.55;
  color: var(--care-ink);
  white-space: pre-wrap;
}

.care-profile-about__clamp {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care-facts {
  margin: 12px 0 8px;
}

.care-facts__title {
  margin: 0 0 10px;
  font-size: 1.05rem;
  color: var(--care-navy);
}

.care-facts__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(158px, 1fr));
  grid-gap: 10px;
  gap: 10px;
}

.care-fact {
  min-width: 0;
  padding: 14px 15px;
  border-radius: 14px;
  background: linear-gradient(180deg, #f7fbff, #fff);
  border: 1px solid var(--care-line);
}

.care-fact h3 {
  margin: 0 0 6px;
  font-size: 0.7rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-accent);
}

.care-fact p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.45;
  color: var(--care-ink);
  overflow-wrap: anywhere;
}

.care-center-profile {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
  margin: 0 0 18px;
  padding: 16px;
  border-radius: 18px;
  background: linear-gradient(180deg, #f3f8fd 0%, #fff 70%);
  border: 1px solid var(--care-line);
}

.care-center-profile__hero {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: 14px;
  gap: 14px;
  align-items: start;
}

.care-center-profile__copy {
  min-width: 0;
}

.care-center-profile__kicker,
.care-selected-center > .care-selected-center__kicker {
  margin: 0 0 4px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-accent);
}

.care-center-profile__copy h2 {
  margin: 0 0 4px;
  font-family: var(--care-serif);
  font-size: 1.2rem;
  color: var(--care-navy);
}

.care-center-profile__contacts,
.care-center-profile__actions,
.care-practice-pick__actions,
.care-service-tiles {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-center-profile__contacts a {
  color: var(--care-accent);
  font-size: 0.88rem;
}

.care-service-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
}

.care-service-tile {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid var(--care-line);
  background: #fff;
  text-align: start;
  font: inherit;
  cursor: pointer;
}

.care-service-tile:hover,
.care-service-tile:focus-visible {
  border-color: color-mix(in srgb, var(--care-teal) 40%, transparent);
  background: #f7fbff;
}

.care-service-tile strong {
  color: var(--care-navy);
}

.care-service-tile span {
  font-size: 0.82rem;
  color: var(--care-ink-soft);
  line-height: 1.4;
}

.care-about {
  margin: 0;
  line-height: 1.5;
  color: var(--care-paper-ink);
  white-space: pre-wrap;
}

.care-detail-hero__copy {
  min-width: 0;
}

.care-meta-grid {
  display: grid;
  grid-template-columns: minmax(0, 7.5rem) minmax(0, 1fr);
  grid-gap: 10px 12px;
  gap: 10px 12px;
  margin: 0;
}

.care-meta-grid dt {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--care-ink-soft);
}

.care-meta-grid dd {
  margin: 0;
  font-size: 0.92rem;
  color: var(--care-ink);
  min-width: 0;
  overflow-wrap: anywhere;
}

.care-practice-picks {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-practice-pick {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  width: 100%;
  text-align: start;
  border: 1px solid var(--care-line);
  border-radius: var(--care-radius);
  background: var(--care-card);
  padding: 12px 14px;
  font: inherit;
}

.care-practice-pick > button {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  text-align: start;
  cursor: pointer;
}

.care-practice-pick strong {
  font-size: 0.92rem;
}

.care-practice-pick span {
  font-size: 0.8rem;
  color: var(--care-ink-soft);
}

.care-practice-pick.is-active {
  border-color: color-mix(in srgb, var(--care-teal) 45%, transparent);
  background: color-mix(in srgb, var(--care-teal) 6%, transparent);
}

.care-practice-pick--row {
  flex-direction: row;
  align-items: center;
  gap: 12px;
}

.care-practice-pick__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-width: 0;
  flex: 1 1;
}

.care-practice-picks--cards {
  gap: 14px;
}

.care-practice-pick--card {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  padding: 0;
  overflow: hidden;
  text-align: start;
  border-radius: 0;
}

.care-practice-pick__hero {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: color-mix(in srgb, var(--care-navy) 12%, var(--care-mint));
  overflow: hidden;
}

.care-practice-pick__hero img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care-practice-pick--card .care-practice-pick__copy {
  padding: 12px 16px 4px;
}

.care-practice-pick__dist {
  font-size: 0.75rem;
  color: var(--care-accent);
  font-weight: 650;
}

.care-practice-pick--card .care-map-thumb {
  margin: 0 16px 16px;
}

.care-map-thumb {
  display: block;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--care-line, #e2e8f0);
  text-decoration: none;
  color: inherit;
  background: var(--care-card);
}

.care-map-thumb__canvas {
  position: relative;
  display: block;
  height: 140px;
  overflow: hidden;
  background:
    radial-gradient(circle at 30% 35%, #d7efe3 0%, transparent 42%),
    radial-gradient(circle at 78% 70%, #cfe0f5 0%, transparent 45%),
    linear-gradient(160deg, #e7f1ea 0%, #dce7f2 48%, #e9eef5 100%);
}

.care-map-thumb--compact .care-map-thumb__canvas {
  height: 110px;
}

.care-map-thumb__grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgb(15 23 42 / 5%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(15 23 42 / 5%) 1px, transparent 1px);
  background-size: 18px 18px;
  opacity: 0.7;
}

.care-map-thumb__road {
  position: absolute;
  background: rgb(255 255 255 / 72%);
  box-shadow: 0 0 0 1px rgb(15 23 42 / 6%);
}

.care-map-thumb__road--h {
  left: -10%;
  right: -10%;
  top: 58%;
  height: 10px;
  transform: rotate(-8deg);
}

.care-map-thumb__road--v {
  top: -10%;
  bottom: -10%;
  left: 42%;
  width: 8px;
  transform: rotate(12deg);
}

.care-map-thumb__pin {
  position: absolute;
  left: 50%;
  top: 42%;
  width: 18px;
  height: 18px;
  margin: -18px 0 0 -9px;
  border-radius: 50% 50% 50% 4px;
  background: var(--care-teal);
  transform: rotate(-45deg);
  box-shadow: 0 6px 14px color-mix(in srgb, var(--care-navy) 28%, transparent);
}

.care-map-thumb__pin::after {
  content: '';
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: var(--care-card);
}

.care-map-thumb__coord {
  position: absolute;
  left: 10px;
  bottom: 8px;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgb(255 255 255 / 88%);
  font-size: 0.65rem;
  font-weight: 650;
  color: #334155;
  letter-spacing: 0.01em;
}

.care-map-thumb__label {
  display: block;
  padding: 8px 10px;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--care-ink-soft, #475569);
  background: var(--care-card);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.care-selected-center__main {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
}

.care-selected-center .care-map-thumb {
  margin-top: 10px;
  width: 100%;
}


.care-selected-center {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  margin: 0 0 14px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid color-mix(in srgb, var(--care-teal) 22%, transparent);
  background: var(--care-card);
}

.care-selected-center__main {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
}

.care-selected-center__main .care-center__logo,
.care-selected-center__main .care-avatar--practice {
  width: 44px;
  height: 44px;
  border-radius: 0;
  flex-shrink: 0;
  object-fit: cover;
}

.care-selected-center__main .care-selected-center__copy {
  flex: 1 1;
}

.care-selected-center__main .care-btn {
  flex-shrink: 0;
}

.care-selected-center__copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.care-selected-center__kicker {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-ink-soft);
}

.care-selected-center__meta {
  font-size: 0.8rem;
  color: var(--care-ink-soft);
}

.care-center-gate {
  margin-top: 4px;
}

.care-weekcal {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.care-weekcal__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 12px;
}

.care-weekcal__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  min-width: 0;
  text-align: center;
}

.care-weekcal__heading strong {
  font-size: 0.92rem;
}

.care-weekcal__nav {
  width: 36px;
  height: 36px;
  border: 1px solid var(--care-line);
  border-radius: 999px;
  background: var(--care-card);
  font-size: 1.35rem;
  line-height: 1;
  color: var(--care-ink);
  cursor: pointer;
  flex-shrink: 0;
}

.care-weekcal__nav:disabled {
  opacity: 0.35;
  cursor: default;
}

html[dir='rtl'] .care-weekcal__nav {
  transform: scaleX(-1);
}

html[dir='rtl'] .care-weekcal__nav:disabled {
  transform: scaleX(-1);
}

.care-weekcal__grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  grid-gap: 6px;
  gap: 6px;
  width: 100%;
}

.care-weekcal__day {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  min-width: 0;
  padding: 10px 2px 8px;
  border: 1px solid var(--care-line);
  border-radius: 14px;
  background: var(--care-card);
  font: inherit;
  cursor: pointer;
  position: relative;
}

.care-weekcal__dow {
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--care-ink-soft);
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[dir='rtl'] .care-weekcal__dow {
  text-transform: none;
  letter-spacing: 0;
}

.care-weekcal__num {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--care-ink);
}

.care-weekcal__today-dot {
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: var(--care-accent);
}

.care-weekcal__day.is-today {
  border-color: color-mix(in srgb, var(--care-teal) 35%, transparent);
}

.care-weekcal__day.is-selected {
  background: var(--care-navy);
  border-color: var(--care-navy);
}

.care-weekcal__day.is-selected .care-weekcal__dow,
.care-weekcal__day.is-selected .care-weekcal__num {
  color: #fff;
}

.care-weekcal__day.is-selected .care-weekcal__today-dot {
  background: var(--care-card);
}

.care-weekcal__day:disabled {
  opacity: 0.35;
  cursor: default;
}

.care-weekcal__selected {
  font-weight: 600;
  color: var(--care-ink) !important;
}

.care-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-rad-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(12, 26, 46, 0.06);
}

.care-rad-row .care-doc {
  border: 0;
  background: transparent;
  padding: 10px 16px;
}

.care-rad-row__detail {
  align-self: flex-start;
  -webkit-margin-start: 40px;
          margin-inline-start: 40px;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}

.care-rad-row__panel {
  margin: 0 0 8px;
  -webkit-margin-start: 40px;
          margin-inline-start: 40px;
}

.care-rad-row__panel h3 {
  margin: 0 0 8px;
  font-size: 1rem;
}

.care-meta-list {
  margin: 0;
  padding-left: 1.1rem;
  color: var(--care-paper-muted);
  line-height: 1.55;
}

.care-infinite {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 20px 0 8px;
}

.care-infinite__meta {
  margin: 0;
  font-size: 0.85rem;
  color: var(--care-paper-muted);
}

.care-infinite__sentinel {
  width: 100%;
  height: 1px;
}

.care-infinite__btn {
  min-width: 160px;
}

.care-infinite__done {
  margin: 0;
  font-size: 0.82rem;
  color: var(--care-paper-muted);
}

.care-sticky-bar {
  position: -webkit-sticky;
  position: sticky;
  bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 16px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid var(--care-line);
  box-shadow: 0 12px 32px rgba(7, 25, 47, 0.12);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
}

.care-home-address {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin-top: 8px;
}

.care-home-address__lead,
.care-home-address__preview,
.care-home-address__hint {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.4;
  color: var(--care-paper-muted, #5b6b7c);
}

.care-home-address__pin {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  color: #1b7a4a;
}

.care-home-address__actions,
.care-home-address__row {
  display: flex;
  gap: 8px;
}

.care-home-address__actions .care-btn,
.care-home-address__row label {
  flex: 1 1;
}

.care-home-address label {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--care-ink, #0f172a);
}

.care-home-address__map {
  position: fixed;
  inset: 12px;
  z-index: 90;
  display: grid;
  grid-template-rows: 1fr auto;
  grid-gap: 8px;
  gap: 8px;
  padding: 10px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(7, 25, 47, 0.22);
}

.care-home-address__map iframe {
  width: 100%;
  min-height: 320px;
  border: 0;
  border-radius: 12px;
}

.care-sticky-bar--jump {
  text-decoration: none;
  color: inherit;
}

.care-sticky-bar--jump .care-cta {
  box-shadow: none;
}

.care--patient-dash .care-sticky-bar {
  bottom: calc(72px + env(safe-area-inset-bottom, 0px) + 12px);
}

.care--patient-dash {
  padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px) + 16px);
}

.care-doc--pro {
  align-items: flex-start;
}

.care-doc__meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-top: 4px;
}

.care-doc__fee {
  display: inline-block;
  margin-top: 0;
  font-weight: 700;
  color: var(--care-navy);
  font-size: 0.88rem;
  letter-spacing: -0.01em;
}

.care-doc__quals {
  display: block;
  margin-top: 4px;
  font-size: 0.8rem;
  color: var(--care-paper-muted, #64748b);
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}

.care-doc__about {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-top: 4px;
  font-size: 0.82rem;
  color: var(--care-paper-muted);
  line-height: 1.35;
}

.care-mode-toggle {
  display: flex;
  gap: 8px;
  margin: 0 0 14px;
}

.care-mode-toggle button {
  flex: 1 1;
  min-height: 44px;
  border-radius: 12px;
  border: 1px solid var(--care-line);
  background: var(--care-card);
  font-weight: 600;
  color: var(--care-ink);
}

.care-mode-toggle button.is-active {
  background: var(--care-navy);
  border-color: var(--care-navy);
  color: #fff;
}

.care-mode-warn {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 16px;
  background: rgba(15, 23, 42, 0.42);
}

.care-mode-warn__card {
  width: min(440px, 100%);
  background: #fff;
  border-radius: 20px;
  padding: 22px 20px 18px;
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.18);
  border: 1px solid var(--care-line);
}

.care-mode-warn__badge {
  width: 56px;
  height: 56px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: #eff6ff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%232563EB' stroke-width='1.8' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3 10.5 12 4l9 6.5V20a1 1 0 0 1-1 1h-5v-6H9v6H4a1 1 0 0 1-1-1v-9.5Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 28px;
}

.care-mode-warn__badge.is-video {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%232563EB' stroke-width='1.8' viewBox='0 0 24 24'%3E%3Crect x='3' y='7' width='12' height='10' rx='2'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m15 10 6-3v10l-6-3'/%3E%3C/svg%3E");
}

.care-mode-warn__card h2 {
  margin: 0 0 6px;
  text-align: center;
  font-size: 1.25rem;
  color: #1e3a5f;
}

.care-mode-warn__lead,
.care-mode-warn__body,
.care-mode-warn__hint {
  margin: 0 0 10px;
  color: #64748b;
  line-height: 1.45;
  font-size: 0.92rem;
  text-align: center;
}

.care-mode-warn__body {
  text-align: start;
  background: #f8fafc;
  border-radius: 12px;
  padding: 12px 14px;
}

.care-mode-warn__hint {
  font-size: 0.82rem;
}

.care-mode-warn__actions {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin-top: 8px;
}

@media (min-width: 720px) {
  .care-mode-warn {
    align-items: center;
  }
}

.care-sticky-bar span {
  font-weight: 600;
  font-size: 0.9rem;
}

.care-filters a.care-filter {
  text-decoration: none;
}

.care-section-photo {
  margin: 0 0 14px;
  border-radius: 0;
  overflow: hidden;
  position: relative;
  isolation: isolate;
  aspect-ratio: 16 / 7;
  background: color-mix(in srgb, var(--care-navy) 12%, var(--care-mint));
}

.care-section-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care-section-photo figcaption {
  position: absolute;
  left: 14px;
  bottom: 12px;
  margin: 0;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 700;
  color: #fff;
  background: rgba(6, 26, 46, 0.55);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}

.care-page-banner {
  position: relative;
  height: min(28vh, 220px);
  overflow: hidden;
  isolation: isolate;
  border-radius: 0;
}

.care-page-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
  display: block;
  border-radius: 0;
}

.care-page-banner__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 20%, color-mix(in srgb, var(--care-paper) 92%, transparent) 100%);
}

.care-page-banner--art {
  height: 200px;
  min-height: 168px;
  background: linear-gradient(125deg, var(--care-navy) 0%, var(--care-teal) 72%, var(--care-gold) 160%);
}

.care-page-banner--art img {
  width: auto;
  max-width: 220px;
  height: 72%;
  margin: 14px auto 0;
  object-fit: contain;
  object-position: center;
}

.care-page-banner--art.care-page-banner--line {
  display: grid;
  place-items: center;
}

.care-page-banner--art.care-page-banner--line .care-mico {
  width: 96px;
  height: 96px;
  border-radius: 24px;
  margin: 0;
}

[dir='rtl'] .care-page-banner--art img {
  object-position: left center;
}

.care-page-banner--art .care-page-banner__shade {
  background: linear-gradient(180deg, transparent 42%, color-mix(in srgb, var(--care-paper) 90%, transparent) 100%);
}

.care-page-banner--art + .care-page__body {
  position: relative;
  z-index: 1;
}

.care-center__visual {
  position: relative;
  width: 64px;
  height: 64px;
  flex-shrink: 0;
}

.care-center__scene {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
}

.care-center__logo--overlay {
  position: absolute;
  inset: auto 4px 4px auto;
  width: 28px !important;
  height: 28px !important;
  font-size: 0.75rem !important;
  border: 2px solid #fff;
  box-shadow: 0 4px 10px rgba(7, 25, 47, 0.15);
}

.care-status {
  grid-template-columns: auto 1fr auto;
  display: grid;
  align-items: center;
}

.care-status__visual {
  width: 56px;
  height: 56px;
  border-radius: 0;
  overflow: hidden;
  flex-shrink: 0;
}

.care-status__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care-service--media {
  grid-template-columns: auto 1fr auto;
  align-items: center;
  padding: 12px 16px;
}

.care-service__photo {
  width: 64px;
  height: 48px;
  border-radius: 0;
  object-fit: cover;
  display: block;
}

.care-avatar--photo {
  position: relative;
  overflow: hidden;
  display: block;
}

.care-avatar--photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(0.92);
}

.care-avatar--photo em {
  position: absolute;
  right: 2px;
  bottom: 2px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--care-teal) 95%, transparent);
  color: #fff;
  font-style: normal;
  font-size: 0.65rem;
  font-weight: 700;
  display: grid;
  place-items: center;
  font-family: var(--ec-font-display,'Sora', sans-serif);
}

.care-avatar--mono {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: linear-gradient(145deg, #e7f0fb, #d4e4f6);
  color: var(--care-navy);
}

.care-avatar--doctor {
  border-radius: 999px;
}

.care-avatar--practice {
  border-radius: 0;
}

.care-avatar--practice-lg {
  width: 72px !important;
  height: 72px !important;
}

.care-avatar__icon {
  width: 46%;
  height: 46%;
  opacity: 0.55;
}

.care-avatar--mono em {
  position: absolute;
  inset: auto 4px 4px auto;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--care-teal) 95%, transparent);
  color: #fff;
  font-style: normal;
  font-size: 0.7rem;
  font-weight: 700;
  display: grid;
  place-items: center;
  font-family: var(--ec-font-display,'Sora', sans-serif);
}

.care-rating {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
  font-size: 0.78rem;
  color: var(--care-paper-muted);
}

.care-rating__score {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-weight: 700;
  color: #b45309;
}

.care-rating__star {
  color: #f59e0b;
  font-size: 0.85rem;
  line-height: 1;
}

.care-rating__count {
  font-weight: 600;
  color: var(--care-paper-muted);
}

.care-rating__xp {
  padding: 2px 8px;
  border-radius: 999px;
  background: var(--care-card);
  color: var(--care-accent);
  font-weight: 600;
}

.care-avatar--lg {
  width: 80px !important;
  height: 80px !important;
}

.care-avatar--med {
  position: relative;
  overflow: hidden;
}

.care-avatar--med img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care-place {
  max-width: 980px;
  margin: 0 auto 28px;
  display: grid;
  grid-template-columns: minmax(0, 140px) 1fr;
  grid-gap: 14px;
  gap: 14px;
  padding: 14px;
  border-radius: 0;
  background: var(--care-card);
  border: 1px solid var(--care-line);
  box-shadow: 0 10px 28px rgba(7, 25, 47, 0.06);
}

.care-place--compact {
  grid-template-columns: minmax(0, 96px) 1fr;
  margin: 0 0 14px;
  padding: 12px;
}

.care-place--compact .care-place__visual {
  min-height: 72px;
}

.care-place--compact .care-place__visual img,
.care-place--compact .care-place__visual .care-mico,
.care-place--compact .care-place__visual .care-mico-art {
  min-height: 72px;
}

.care-media {
  border-radius: 0;
}

.care-place__visual {
  position: relative;
  border-radius: 0;
  overflow: hidden;
  min-height: 110px;
}

.care-place__visual img,
.care-place__visual .care-mico,
.care-place__visual .care-mico-art {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: grid;
  min-height: 110px;
  border-radius: 0;
}

.care-place__body {
  min-width: 0;
}

.care-place__head {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: 8px;
}

.care-place__head strong {
  font-family: var(--ec-font-display,'Sora', sans-serif);
  letter-spacing: -0.03em;
  font-size: 1.05rem;
}

.care-place__head span {
  font-size: 0.85rem;
  color: var(--care-paper-muted);
  line-height: 1.4;
}

.care-place__active {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 10px;
  font-size: 0.88rem;
}

.care-place__active em {
  font-style: normal;
  color: var(--care-paper-muted);
}

.care-place__clear {
  border: 0;
  background: transparent;
  color: var(--care-accent);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  padding: 0;
}

.care-place__cities {
  margin-bottom: 0;
  padding-bottom: 0;
}

@media (max-width: 640px) {
  .care-place {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .care-status {
    grid-template-columns: auto 1fr;
  }
  .care-status .care-btn {
    grid-column: 1 / -1;
    width: 100%;
  }
}

/* —— Skeleton loaders (card-level shimmer) —— */
.care-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.care-skel-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 8px 0 18px;
  animation: care-skel-fade-in 280ms ease-out both;
}

.care-skel-list--lane {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.care-skel-list--chip {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
}

.care-skel {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--care-line);
  animation: care-skel-rise 360ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.care-skel-list--doctor .care-skel:nth-child(2),
.care-skel-list--practice .care-skel:nth-child(2),
.care-skel-list--lane .care-skel:nth-child(2) {
  animation-delay: 40ms;
}
.care-skel-list--doctor .care-skel:nth-child(3),
.care-skel-list--practice .care-skel:nth-child(3),
.care-skel-list--lane .care-skel:nth-child(3) {
  animation-delay: 80ms;
}
.care-skel-list--doctor .care-skel:nth-child(4),
.care-skel-list--practice .care-skel:nth-child(4),
.care-skel-list--lane .care-skel:nth-child(4) {
  animation-delay: 120ms;
}

.care-skel--lane {
  padding: 0;
  min-height: 118px;
  overflow: hidden;
}

.care-skel--service {
  min-height: 72px;
}

.care-skel__bone {
  display: block;
  border-radius: 8px;
  background: linear-gradient(
    90deg,
    rgba(12, 26, 46, 0.06) 0%,
    color-mix(in srgb, var(--care-teal) 12%, transparent) 45%,
    rgba(12, 26, 46, 0.06) 90%
  );
  background-size: 220% 100%;
  animation: care-skel-shimmer 1.15s ease-in-out infinite;
}

.care-skel__avatar {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  flex-shrink: 0;
}

.care-skel__avatar--sq {
  border-radius: 0;
}

.care-skel__col {
  flex: 1 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.care-skel__line {
  height: 10px;
  width: 78%;
}

.care-skel__line--lg {
  height: 12px;
  width: 62%;
}

.care-skel__line--sm {
  width: 42%;
}

.care-skel__pill {
  width: 52px;
  height: 28px;
  border-radius: 999px;
  flex-shrink: 0;
}

.care-skel__chips {
  display: flex;
  gap: 6px;
}

.care-skel__chip {
  width: 54px;
  height: 18px;
  border-radius: 999px;
}

.care-skel__filter {
  width: 88px;
  height: 34px;
  border-radius: 999px;
}

.care-skel__lane-fill,
.care-skel__banner-fill {
  width: 100%;
  height: 100%;
  min-height: 118px;
  border-radius: 16px;
}

.care-skel__thumb {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  flex-shrink: 0;
}

.care-skel--banner {
  padding: 0;
  min-height: 140px;
}

.care-skel--hero-block {
  flex-direction: column;
  align-items: stretch;
}

@keyframes care-skel-shimmer {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: -100% 0;
  }
}

@keyframes care-skel-rise {
  from {
    opacity: 0;
    transform: translate3d(0, 10px, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes care-skel-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* List | Map view toggle (shared across practice pickers) */
.care-view-toggle {
  display: inline-flex;
  gap: 2px;
  padding: 3px;
  margin: 0 0 0.85rem;
  border-radius: 10px;
  background: color-mix(in srgb, var(--care-ink, #0f172a) 6%, transparent);
}

.care-view-toggle button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  background: transparent;
  color: color-mix(in srgb, var(--care-ink, #0f172a) 72%, transparent);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 600;
  padding: 0.45rem 0.95rem;
  border-radius: 8px;
  cursor: pointer;
  transition: background 160ms ease, color 160ms ease, transform 160ms ease;
}

.care-view-toggle button.is-active {
  background: var(--care-card);
  color: var(--care-ink, #0f172a);
  box-shadow: 0 1px 2px rgb(15 23 42 / 10%);
}

.care-view-toggle button:active {
  transform: scale(0.97);
}

/* Shared practice map explorer */
.care-map-explorer {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  margin: 0 0 1.25rem;
  padding-bottom: 0.5rem;
}

.care--patient-dash .care-map-explorer {
  padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px));
}

.care-map-explorer__toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem;
}

.care-map-explorer__count {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  font-size: 0.82rem;
  color: color-mix(in srgb, var(--care-ink, #0f172a) 55%, transparent);
}

.care-map-explorer__err {
  margin: 0;
  font-size: 0.85rem;
  color: #b42318;
}

.care-map-explorer__frame {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  min-height: min(58vh, 520px);
  background: color-mix(in srgb, var(--care-ink, #0f172a) 4%, #fff);
  box-shadow: inset 0 0 0 1px rgb(15 23 42 / 6%);
}

.care-map-explorer__map {
  width: 100%;
  height: min(58vh, 520px);
  z-index: 0;
}

.care-map-explorer__chip {
  position: absolute;
  top: 0.75rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 500;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  background: rgb(255 255 255 / 92%);
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--care-ink, #0f172a);
  box-shadow: 0 4px 16px rgb(15 23 42 / 12%);
  animation: care-map-chip-in 220ms ease;
}

.care-map-pin-wrap,
.care-map-user-wrap {
  background: transparent !important;
  border: 0 !important;
}

.care-map-pin {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50% 50% 50% 4px;
  transform: rotate(-45deg);
  overflow: hidden;
  background: var(--care-card);
  box-shadow:
    0 0 0 2px var(--pin-ring, #0f172a),
    0 8px 18px rgb(15 23 42 / 28%);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.care-map-pin img,
.care-map-pin em {
  transform: rotate(45deg);
}

.care-map-pin img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care-map-pin--mono {
  background: #0f172a;
  color: #fff;
}

.care-map-pin--mono em {
  font-style: normal;
  font-weight: 700;
  font-size: 0.95rem;
}

.care-map-pin.is-selected {
  transform: rotate(-45deg) scale(1.12);
  box-shadow:
    0 0 0 3px var(--pin-ring, var(--care-teal)),
    0 10px 22px color-mix(in srgb, var(--care-navy) 28%, transparent);
}

.care-map-user {
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--care-teal);
  box-shadow:
    0 0 0 3px var(--care-card),
    0 0 0 6px color-mix(in srgb, var(--care-teal) 28%, transparent);
}

.care-map-user i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--care-card);
}

.care-map-route {
  filter: drop-shadow(0 1px 2px rgb(3 96 241 / 35%));
}

.care-map-sheet {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0.5rem;
  z-index: 55;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  border-radius: 16px;
  background: var(--care-card);
  box-shadow: 0 12px 40px rgb(15 23 42 / 18%);
  transform: translateY(12px);
  transition:
    max-height 280ms ease,
    opacity 220ms ease,
    transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
}

.care-map-sheet.is-open {
  position: fixed;
  left: max(12px, env(safe-area-inset-left, 0px));
  right: max(12px, env(safe-area-inset-right, 0px));
  bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  z-index: 70;
  max-height: 280px;
  opacity: 1;
  pointer-events: auto;
  transform: none;
  padding: 0.55rem 0.85rem 0.85rem;
}

/* Sit above the Care phone tab bar (z-index 60, --care-tabs-h). */
.care.care--phone .care-map-sheet.is-open,
.care--patient-dash .care-map-sheet.is-open {
  bottom: calc(var(--care-tabs-h, 56px) + 12px);
  z-index: 70;
}

.care-map-sheet__grab {
  width: 36px;
  height: 4px;
  margin: 0 auto 0.55rem;
  border-radius: 999px;
  background: rgb(15 23 42 / 14%);
}

.care-map-sheet__row {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  grid-gap: 0.7rem;
  gap: 0.7rem;
  align-items: center;
}

.care-map-sheet__photo {
  width: 56px;
  height: 56px;
  border-radius: 0;
  object-fit: cover;
  background: var(--care-card);
}

.care-map-sheet__copy {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  min-width: 0;
}

.care-map-sheet__copy strong {
  font-size: 0.98rem;
  line-height: 1.25;
}

.care-map-sheet__copy span {
  font-size: 0.8rem;
  color: color-mix(in srgb, var(--care-ink, #0f172a) 58%, transparent);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.care-map-sheet__dist {
  font-weight: 600;
  color: var(--care-teal) !important;
}

.care-map-sheet__close {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  background: rgb(15 23 42 / 6%);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-size: 1.2rem;
  line-height: 1;
  cursor: pointer;
  color: var(--care-ink, #0f172a);
}

.care-map-sheet__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-top: 0.75rem;
}

.care-map-sheet__actions .care-btn {
  flex: 1 1 auto;
  justify-content: center;
  text-align: center;
}

@keyframes care-map-chip-in {
  from {
    opacity: 0;
    transform: translate(-50%, -6px);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .care-hero__bg::after,
  .care-hero__photo,
  .care-hero__brand,
  .care-hero__lead,
  .care-hero__cta,
  .care-practice,
  .care-center,
  .care-lane,
  .care-status,
  .care-btn,
  .care-smart,
  .care-smart__panel,
  .care-smart__hit,
  .care-smart__pulse,
  .care-smart__field,
  .care-skel,
  .care-skel__bone,
  .care-skel-list,
  .care-view-toggle button,
  .care-map-pin,
  .care-map-sheet,
  .care-map-explorer__chip {
    animation: none !important;
    transition: none !important;
  }
}

/* ==========================================================================
   Web / desktop marketplace architecture
   Mobile + native keep the phone-first layout above.
   ========================================================================== */

@media (min-width: 768px) {
  .care-lanes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .care-centers,
  .care-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .care-page--pharmacy .care-list,
  .care-page--pharmacy .care-list:not(.care-list--directory),
  .care-page--pharmacy .care-list--catalog {
    grid-template-columns: minmax(0, 1fr);
  }

  .care-services--media {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .care-service--media {
    align-items: stretch;
    padding: 14px;
    border: 1px solid rgba(12, 26, 46, 0.06);
    border-radius: 16px;
    border-bottom: 1px solid rgba(12, 26, 46, 0.06);
    background: var(--care-card);
  }

  .care-services--media .care-service--media:last-child {
    border-bottom: 1px solid rgba(12, 26, 46, 0.06);
  }

  .care-service__photo {
    width: 72px;
    height: 56px;
  }

  .care-filters {
    flex-wrap: wrap;
    overflow: visible;
  }

  .care-section-photo {
    aspect-ratio: 21 / 6;
  }
}

@media (min-width: 960px) {
  .care--web {
    --care-stage: min(1200px, calc(100% - 64px));
  }

  .care--web .care-top {
    padding:
      12px
      max(24px, env(safe-area-inset-right, 0px))
      12px
      max(24px, env(safe-area-inset-left, 0px));
  }

  .care--web .care-top__inner {
    width: var(--care-stage);
    max-width: 100%;
    margin: 0 auto;
  }

  .care--web .care-top__row--brand {
    gap: 20px;
    align-items: center;
  }

  .care--web .care-top__lead {
    flex: 0 1 auto;
  }

  .care--web .care-top__nav {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    flex-wrap: wrap;
  }

  .care--web .care-top__nav a {
    padding: 8px 10px;
    border-radius: 0;
    font-size: 0.875rem;
    font-weight: 550;
    color: var(--care-ink);
    white-space: nowrap;
    border-bottom: 2px solid transparent;
    transition: color 0.15s ease, border-color 0.15s ease;
  }

  .care--web .care-top__nav a:hover,
  .care--web .care-top__nav a:focus-visible {
    color: var(--care-teal);
    background: var(--care-mint);
    outline: none;
  }

  .care--web .care-top__nav a.is-active {
    color: var(--care-navy);
    background: transparent;
    border-bottom-color: var(--care-navy);
  }

  .care--web .care-top__nav .care-ico {
    display: none;
  }

  .care--web .care-top__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
  }

  .care--web .care-top__cta {
    border: 0;
    border-radius: var(--care-radius);
    padding: 10px 16px;
    font: inherit;
    font-size: 0.84rem;
    font-weight: 650;
    letter-spacing: 0.01em;
    text-transform: none;
    color: #fff;
    background: var(--care-teal);
    cursor: pointer;
    white-space: nowrap;
  }

  .care--web .care-top__cta .care-ico {
    display: none;
  }

  .care--web .care-top__cta:hover {
    background: var(--care-navy);
    opacity: 1;
  }

  .care--web .care-top__burger {
    display: none;
  }

  .care--web .care-top__search.is-visible {
    margin-top: 0;
  }

  .care--web .care-top__search {
    left: 50%;
    right: auto;
    width: var(--care-stage);
    max-width: calc(100% - 48px);
    transform: translate(-50%, -6px);
    padding-inline: 0;
  }

  .care--web .care-top__search.is-visible {
    transform: translate(-50%, 0);
  }

  .care--web .care-top__search .care-smart {
    width: min(100%, 640px);
    margin-inline: auto;
  }

  /* Hide phone drawer chrome on desktop web (nav lives in header). */
  .care--web .care-drawer {
    display: none !important;
  }

  /* Bottom tabs are phone UX — desktop uses header. */
  .care--web .pp-tabs {
    display: none !important;
  }

  .care--web.care--patient-dash .care-main,
  .care--web.care--patient-dash .care-page {
    padding-bottom: 40px;
  }

  .care--web .care-hero {
    min-height: min(72vh, 640px);
    padding: 72px max(32px, env(safe-area-inset-right, 0px)) 56px max(32px, env(safe-area-inset-left, 0px));
  }

  .care--web .care-hero__stage {
    width: var(--care-stage);
    max-width: 100%;
    margin: 0 auto;
  }

  .care--web .care-hero__brand {
    font-size: clamp(3rem, 5vw, 4.25rem);
    max-width: 12ch;
  }

  .care--web .care-hero__lead {
    max-width: 36rem;
    font-size: 1.12rem;
  }

  .care--web .care-smart {
    width: min(100%, 920px);
  }

  .care--web .care-main {
    padding:
      28px
      max(32px, env(safe-area-inset-right, 0px))
      64px
      max(32px, env(safe-area-inset-left, 0px));
  }

  .care--web .care-section,
  .care--web .care-status,
  .care--web .care-place {
    max-width: var(--care-stage);
  }

  .care--web .care-section__head h2 {
    font-size: clamp(1.55rem, 2.2vw, 1.95rem);
  }

  .care--web .care-lanes {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
  }

  .care--web .care-doors {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
  }

  .care--web .care-door {
    padding: 12px 14px;
  }

  .care--web .care-door__thumb {
    width: 80px;
    height: 80px;
  }

  .care--web .care-lane,
  .care--web .care-lane--photo {
    min-height: 200px;
    grid-template-columns: 1fr;
    align-items: end;
    padding: 20px 18px;
  }

  .care--web .care-lane em {
    position: absolute;
    top: 16px;
    inset-inline-end: 16px;
  }

  .care--web .care-lane__blurb {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .care--web .care-lane:hover {
    transform: translateY(-3px);
  }

  .care--web .care-centers {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .care--web .care-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .care--web .care-list--directory {
    grid-template-columns: 1fr;
  }

  .care--web .care-services--media {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
  }

  .care--web .care-section-photo {
    aspect-ratio: 24 / 5;
    border-radius: 0;
    margin-bottom: 18px;
  }

  .care--web .care-page__body {
    max-width: var(--care-stage);
    width: 100%;
    margin: 0 auto;
    padding-top: 28px;
    padding-inline: 0;
  }

  .care--web .care-page {
    padding-left: max(32px, env(safe-area-inset-left, 0px));
    padding-right: max(32px, env(safe-area-inset-right, 0px));
  }

  .care--web .care-page-banner {
    height: min(34vh, 280px);
    border-radius: 0;
    overflow: hidden;
  }

  .care--web .care-page-banner--art {
    height: 240px;
  }

  .care--web .care-page__title {
    font-size: clamp(1.85rem, 2.6vw, 2.35rem);
  }

  .care--web .care-mosaic {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
  }

  .care--web .care-status {
    padding: 18px 20px;
  }
}

@media (min-width: 1200px) {
  .care--web {
    --care-stage: min(1240px, calc(100% - 80px));
  }

  .care--web .care-hero {
    min-height: min(58vh, 600px);
  }

  .care--web .care-centers {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .care--web .care-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .care--web .care-list--directory,
  .care--web .care-page .care-list--directory {
    grid-template-columns: 1fr;
  }

  /* Detail / catalog pages: keep readable columns without stretching rows. */
  .care--web .care-page .care-list:not(.care-list--directory),
  .care--web .care-page .care-centers {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .care--web .care-page .care-mosaic {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 960px) and (hover: hover) {
  .care--web .care-center:hover,
  .care--web .care-doc:hover,
  .care--web .care-row:hover,
  .care--web .care-service--media:hover {
    transform: none;
    box-shadow: none;
    background: color-mix(in srgb, var(--care-mint) 35%, var(--care-card));
  }
}

.care-smart__submit {
  display: none;
}

.care-smart__submit-ico {
  display: none;
}

.care-smart__place-btn--lead {
  display: none;
}

.care-b2c-panel {
  padding: 22px 20px;
  border-radius: 18px;
  background: var(--care-card);
  border: 1px solid rgba(12, 26, 46, 0.08);
}

.care-b2c-steps {
  margin: 0;
  -webkit-padding-start: 1.25rem;
          padding-inline-start: 1.25rem;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  color: var(--care-ink);
  line-height: 1.45;
}

.care-b2c-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
}

.care-b2c-tile {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px 14px;
  border-radius: 0;
  background: var(--care-card);
  border: 1px solid var(--care-line);
  text-decoration: none;
  color: inherit;
  min-height: 88px;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.care-b2c-tile strong {
  font-size: 1rem;
  letter-spacing: -0.02em;
}

.care-b2c-tile span {
  font-size: 0.8rem;
  color: var(--care-paper-muted);
}

.care-b2c-tile__go {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: auto;
  font-size: 0.78rem;
  font-weight: 800;
  font-style: normal;
  color: var(--care-teal);
}

@media (min-width: 960px) {
  .care--web .care-smart--hero {
    width: min(100%, 920px);
  }

  .care--web .care-smart--hero .care-smart__field {
    padding: 10px 10px 10px 14px;
    border-radius: var(--care-radius);
    gap: 12px;
    min-height: 64px;
  }

  .care--web .care-smart--hero .care-smart__input {
    font-size: 1.15rem;
    font-weight: 550;
  }

  .care--web .care-smart--hero .care-smart__icon {
    width: 26px;
    height: 26px;
  }

  .care--web .care-smart__place-btn--lead {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    max-width: 11rem;
    min-width: 7.5rem;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid rgba(12, 26, 46, 0.1);
    background: rgba(238, 243, 248, 0.95);
    font: inherit;
    cursor: pointer;
  }

  .care--web .care-smart__place-btn--lead em {
    font-style: normal;
    font-weight: 650;
    font-size: 0.92rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .care--web .care-smart__place-btn--compact {
    display: none;
  }

  .care--web .care-smart__submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 0;
    border-radius: var(--care-radius);
    padding: 14px 22px;
    font: inherit;
    font-size: 0.88rem;
    font-weight: 650;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #fff;
    background: var(--care-navy);
    cursor: pointer;
    box-shadow: none;
  }

  .care--web .care-smart__submit:hover {
    filter: brightness(1.04);
  }

  .care--web .care-top__search .care-smart {
    width: min(100%, 860px);
  }

  .care--web .care-top__search .care-smart__field {
    min-height: 52px;
    border-radius: var(--care-radius);
    padding: 8px 8px 8px 12px;
  }

  .care--web .care-top__search .care-smart__input {
    font-size: 1.05rem;
  }

  .care--web .care-top__search .care-smart__submit {
    padding: 11px 18px;
    font-size: 0.95rem;
  }

  .care--web .care-b2c-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
  }

  .care--web .care-b2c-tile:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 32px rgba(7, 25, 47, 0.08);
  }

  .care--web .care-top__nav a {
    padding: 7px 10px;
    font-size: 0.8125rem;
  }
}

@media (min-width: 1200px) {
  .care--web .care-smart--hero {
    width: min(100%, 980px);
  }

  .care--web .care-b2c-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* —— Hospital site: hero kicker, footer, toolbar, directory, booking —— */
.care-hero__kicker {
  margin: 0 0 12px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #fff;
}

.care-hero--photo .care-hero__kicker {
  color: rgba(255, 253, 248, 0.82);
}

.care-hero--photo .care-hero__veil {
  background:
    linear-gradient(180deg, rgba(18, 58, 140, 0.28) 0%, rgba(18, 38, 92, 0.72) 52%, rgba(12, 28, 80, 0.88) 100%);
}

.care-hero--photo .care-smart__field {
  border: 0;
}

.care-spec-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 0;
  gap: 0;
  border-top: 1px solid var(--care-line);
}

.care-spec-list__item {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--care-line);
  color: var(--care-navy);
  font-weight: 550;
}

.care-spec-list__item:hover,
.care-spec-list__item:focus-visible {
  color: var(--care-teal);
  outline: none;
}

.care-spec-list__item em {
  font-style: normal;
  font-size: 0.78rem;
  color: var(--care-ink-soft);
}

.care-toolbar {
  margin: 0 0 22px;
  padding: 18px 0 4px;
  border-bottom: 1px solid var(--care-line);
}

.care-filterbar {
  margin: 0 0 28px;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.care-filterbar__toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  margin-bottom: 0;
}

.care-filterbar__toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 14px;
  border: 1px solid var(--care-line);
  border-radius: 999px;
  background: var(--care-card);
  color: var(--care-navy);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.care-filterbar__toggle .care-ico {
  width: 18px;
  height: 18px;
}

.care-filterbar__toggle.is-active,
.care-filterbar__toggle.has-active {
  border-color: color-mix(in srgb, var(--care-teal) 40%, var(--care-line));
  background: color-mix(in srgb, var(--care-teal) 8%, var(--care-card));
}

.care-filterbar__badge {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--care-teal);
  color: #fff;
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
}

.care-filterbar__panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.28s cubic-bezier(0.32, 0.72, 0, 1);
  overflow: hidden;
}

.care-filterbar.is-open .care-filterbar__panel {
  grid-template-rows: 1fr;
  margin-top: 10px;
}

.care-filterbar__panel-inner {
  min-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity 0.22s ease, transform 0.28s cubic-bezier(0.32, 0.72, 0, 1);
}

.care-filterbar.is-open .care-filterbar__panel-inner {
  overflow: visible;
  opacity: 1;
  transform: translateY(0);
  padding: 16px 18px 14px;
  background: var(--care-card);
  border: 1px solid var(--care-line);
  border-radius: 16px;
  box-shadow: 0 1px 0 rgba(10, 58, 72, 0.04);
}

.care-filterbar__chips--inline {
  margin: 0;
  flex: 1 1 auto;
}

.care-filterbar__clear--inline {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  padding: 6px 0;
}

.care-filterbar__search {
  position: relative;
}

.care-filterbar__search .care-ico {
  position: absolute;
  left: 12px;
  top: 16px;
  width: 18px;
  height: 18px;
  color: var(--care-navy);
  pointer-events: none;
}

html[dir='rtl'] .care-filterbar__search .care-ico {
  left: auto;
  right: 12px;
}

.care-filterbar__search .care-search {
  margin-bottom: 14px;
  border-radius: var(--care-radius);
  padding-left: 40px;
}

html[dir='rtl'] .care-filterbar__search .care-search {
  padding-left: 16px;
  padding-right: 40px;
}

.care-filterbar__fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 12px;
  gap: 12px;
  align-items: end;
  margin-bottom: 12px;
}

.care-filterbar__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.care-filterbar__field span {
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--care-ink-soft);
}

html[dir='rtl'] .care-filterbar__field span {
  letter-spacing: 0;
  text-transform: none;
}

.care-filterbar__field select {
  width: 100%;
  border: 1px solid color-mix(in srgb, var(--care-teal) 24%, #c5d8ea);
  border-radius: var(--care-radius);
  background: linear-gradient(180deg, #e4f0fa 0%, #f7fbfe 100%);
  color: var(--care-navy);
  font: inherit;
  font-size: 0.92rem;
  padding: 11px 12px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--care-navy) 50%),
    linear-gradient(135deg, var(--care-navy) 50%, transparent 50%);
  background-position:
    calc(100% - 16px) calc(50% - 2px),
    calc(100% - 11px) calc(50% - 2px);
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

html[dir='rtl'] .care-filterbar__field select {
  background-position:
    11px calc(50% - 2px),
    16px calc(50% - 2px);
}

.care-filterbar__field select:focus {
  outline: 2px solid var(--care-teal);
  outline-offset: 1px;
}

.care-filterbar__clear {
  grid-column: 1 / -1;
  justify-self: start;
  border: 0;
  background: transparent;
  color: var(--care-teal);
  font: inherit;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 8px 0;
  cursor: pointer;
}

.care-filterbar__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 12px;
}

.care-filterbar__chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--care-navy);
  background: var(--care-paper);
  color: var(--care-navy);
  font: inherit;
  font-size: 0.8rem;
  padding: 6px 10px;
  border-radius: var(--care-radius);
  cursor: pointer;
}

.care-filterbar__extras .care-filters {
  margin-bottom: 4px;
}

@media (min-width: 960px) {
  .care--web .care-filterbar.is-open .care-filterbar__panel-inner {
    padding: 20px 22px 16px;
    border-radius: 12px;
  }

  .care--web .care-filterbar__fields {
    grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  }

  .care--web .care-filterbar__clear {
    grid-column: auto;
    padding-bottom: 12px;
  }

  .care--web .care-page--pharmacy .care-list,
  .care--web .care-page--pharmacy .care-list:not(.care-list--directory),
  .care--web .care-page--pharmacy .care-list--catalog {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  .care--web .care-page--pharmacy .care-doc--cart {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px 16px;
    padding: 14px 16px;
    align-items: center;
  }

  .care--web .care-page--pharmacy .care-doc--cart .care-doc__open {
    min-width: 0;
    align-items: center;
  }

  .care--web .care-page--pharmacy .care-avatar--med {
    width: 72px !important;
    height: 72px !important;
    flex: 0 0 72px;
  }

  .care--web .care-page--pharmacy .care-doc__body {
    min-width: 0;
  }

  .care--web .care-page--pharmacy .care-doc__body strong {
    font-size: 1rem;
    line-height: 1.3;
  }

  .care--web .care-page--pharmacy .care-doc__body span {
    font-size: 0.82rem;
  }

  .care--web .care-page--pharmacy .care-doc__price {
    margin-top: 6px;
    color: var(--care-navy);
    font-weight: 750;
  }

  .care--web .care-page--pharmacy .care-doc--cart .care-btn--cart,
  .care--web .care-page--pharmacy .care-doc--cart .care-qty {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    justify-self: end;
  }

  .care--web .care-page--pharmacy .care-qty {
    transform: none;
  }

  .care--web .care-practice-picks--cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .care--web .care-practice-pick--card {
    grid-template-columns: 120px minmax(0, 1fr);
    grid-template-rows: auto;
    align-items: stretch;
  }

  .care--web .care-practice-pick__hero {
    aspect-ratio: auto;
    height: 100%;
    min-height: 112px;
  }

  .care--web .care-practice-pick--card .care-practice-pick__copy {
    padding: 12px 14px 10px;
  }

  .care--web .care-practice-pick--card .care-map-thumb {
    display: none;
  }

  .care--web .care-practice-pick__actions {
    flex-wrap: wrap;
    gap: 6px;
  }

  .care--web .care-practice-pick__actions .care-btn {
    padding: 8px 10px;
    font-size: 0.78rem;
  }
}

@media (min-width: 1200px) {
  .care--web .care-page--pharmacy .care-list,
  .care--web .care-page--pharmacy .care-list:not(.care-list--directory),
  .care--web .care-page--pharmacy .care-list--catalog {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .care-filterbar__panel,
  .care-door {
    transition: none;
  }
}

.care-toolbar .care-search {
  margin-bottom: 12px;
}

.care-list--directory {
  gap: 0;
}

.care-list--directory .care-doc {
  border-left: 0;
  border-right: 0;
  border-top: 0;
  padding-inline: 16px;
}

.care-list--directory .care-doc__body strong {
  font-size: 1.2rem;
  color: var(--care-navy);
}

.care-doc--pro .care-chips,
.care-doc--pro .care-pill {
  display: none;
}

.care-doc--pro .care-doc__meta-row {
  margin-top: 8px;
}

.care-site-footer {
  margin-top: 48px;
  padding:
    40px max(20px, env(safe-area-inset-right, 0px))
    calc(36px + env(safe-area-inset-bottom, 0px))
    max(20px, env(safe-area-inset-left, 0px));
  background: var(--care-navy);
  color: #f4f8fc;
}

.care-site-footer__inner {
  width: var(--care-stage, min(1200px, 100%));
  max-width: 100%;
  margin: 0 auto;
  display: grid;
  grid-gap: 28px;
  gap: 28px;
}

.care-site-footer__seo {
  width: var(--care-stage, min(1200px, 100%));
  max-width: 100%;
  margin: 32px auto 0;
  padding-top: 28px;
  border-top: 1px solid rgba(244, 248, 252, 0.14);
  display: grid;
  grid-gap: 22px;
  gap: 22px;
  grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
}

.care-seo-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}

.care-seo-col h2 {
  margin: 0 0 2px;
  font-family: var(--care-serif);
  font-size: 0.95rem;
  color: #fff;
}

.care-seo-col a {
  color: rgba(244, 248, 252, 0.82);
  font-size: 0.86rem;
}

.care-seo-col a:hover,
.care-seo-col a:focus-visible {
  color: #fff;
  text-decoration: underline;
}

.care-site-footer__brand p {
  margin: 10px 0 0;
  max-width: 22rem;
  font-size: 0.9rem;
  line-height: 1.5;
  color: rgba(244, 248, 252, 0.78);
}

.care-site-footer__logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #fff;
}

.care-site-footer__logo strong {
  font-family: var(--care-serif);
  font-size: 1.25rem;
}

.care-site-footer__col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}

.care-site-footer__col h2 {
  margin: 0 0 4px;
  font-family: var(--care-serif);
  font-size: 1.05rem;
  color: #fff;
}

.care-site-footer__col a,
.care-site-footer__linkbtn {
  color: rgba(244, 248, 252, 0.86);
  font-size: 0.9rem;
}

.care-site-footer__linkbtn {
  display: inline;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  text-align: start;
  cursor: pointer;
}

.care-site-footer__col a:hover,
.care-site-footer__col a:focus-visible {
  color: #fff;
  text-decoration: underline;
  outline: none;
}

.care-site-footer .care-btn--primary {
  margin-top: 8px;
  background: #fff;
  color: var(--care-navy) !important;
}

.care-site-footer a.care-btn--primary {
  text-decoration: none;
}

.care-site-footer .ec-locale-switcher,
.care-site-footer .ec-locale-switcher--compact {
  background: transparent;
  color: #fff;
  border-color: rgba(244, 248, 252, 0.28);
}

.care.care--phone.care--patient-dash .care-site-footer {
  padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px));
}

.care-detail__book .care-btn {
  width: 100%;
}

@media (min-width: 720px) {
  .care-spec-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 28px;
  }

  .care-site-footer__inner {
    grid-template-columns: 1.3fr 1fr 1fr;
    gap: 32px;
    align-items: start;
  }
}

@media (min-width: 1080px) {
  .care-site-footer__inner {
    grid-template-columns: 1.3fr 1fr 1fr 1fr 1fr;
  }
}

@media (min-width: 960px) {
  .care--web .care-detail {
    display: grid;
    grid-template-columns: minmax(0, 1fr) min(380px, 34%);
    grid-gap: 48px 56px;
    gap: 48px 56px;
    align-items: start;
  }

  .care--web .care-detail__book {
    position: -webkit-sticky;
    position: sticky;
    top: 96px;
    padding: 24px 22px;
    background: var(--care-card);
    border: 1px solid var(--care-line);
  }

  .care--web .care-detail__book .care-panel {
    padding: 0 0 20px;
  }

  .care--web .care-detail__book .care-panel:last-of-type,
  .care--web .care-detail__book .care-token {
    border-bottom: 0;
    padding-bottom: 0;
  }

  .care--web .care-detail > .care-sticky-bar {
    display: none;
  }

  .care--web .care-hero__brand {
    max-width: 14ch;
  }
}



/* Native full-screen search picker (phone / Capacitor) — above PortalModal shells */
.ch-mobile-search.careos-mobile-screen {
  position: fixed !important;
  inset: 0 !important;
  z-index: calc(var(--ch-overlay-z, 13000) + 400) !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  background: rgba(15, 23, 42, 0) !important;
  overflow: hidden !important;
  transition: background-color 0.28s ease;
}

.ch-mobile-search.careos-mobile-screen.is-open {
  background: rgba(15, 23, 42, 0.45) !important;
}

.ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel,
.ch-mobile-search.careos-mobile-screen .careos-mobile-screen__panel {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: translate3d(100%, 0, 0);
  padding-bottom: var(--ch-kb-inset, 0px);
  transition:
    transform 0.3s cubic-bezier(0.32, 0.72, 0, 1),
    padding-bottom 0.22s ease;
  will-change: transform;
}

.ch-mobile-search.careos-mobile-screen.is-open .ch-mobile-search__panel,
.ch-mobile-search.careos-mobile-screen.is-open .careos-mobile-screen__panel {
  transform: translate3d(0, 0, 0);
}

.ch-mobile-search.careos-mobile-screen.is-leaving .ch-mobile-search__panel,
.ch-mobile-search.careos-mobile-screen.is-leaving .careos-mobile-screen__panel,
.ch-mobile-search.careos-mobile-screen.is-entering .ch-mobile-search__panel,
.ch-mobile-search.careos-mobile-screen.is-entering .careos-mobile-screen__panel {
  pointer-events: none;
}

.ch-mobile-search.careos-mobile-screen.is-leaving .ch-mobile-search__panel,
.ch-mobile-search.careos-mobile-screen.is-leaving .careos-mobile-screen__panel {
  transform: translate3d(100%, 0, 0);
}

[dir='rtl'] .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel,
[dir='rtl'] .ch-mobile-search.careos-mobile-screen .careos-mobile-screen__panel {
  transform: translate3d(-100%, 0, 0);
}

[dir='rtl'] .ch-mobile-search.careos-mobile-screen.is-open .ch-mobile-search__panel,
[dir='rtl'] .ch-mobile-search.careos-mobile-screen.is-open .careos-mobile-screen__panel {
  transform: translate3d(0, 0, 0);
}

[dir='rtl'] .ch-mobile-search.careos-mobile-screen.is-leaving .ch-mobile-search__panel,
[dir='rtl'] .ch-mobile-search.careos-mobile-screen.is-leaving .careos-mobile-screen__panel {
  transform: translate3d(-100%, 0, 0);
}

.ch-mobile-search__panel {
  display: flex !important;
  flex-direction: column !important;
  background: #fff !important;
  overflow: hidden !important;
  padding-top: env(safe-area-inset-top, 0px);
  padding-bottom: env(safe-area-inset-bottom, 0px);
  padding-left: env(safe-area-inset-left, 0px);
  padding-right: env(safe-area-inset-right, 0px);
  box-sizing: border-box;
}

.ch-mobile-search__head {
  display: grid;
  grid-template-columns: minmax(72px, auto) minmax(0, 1fr) minmax(72px, auto);
  align-items: center;
  min-height: 52px;
  padding: max(8px, env(safe-area-inset-top, 0px)) 8px 8px;
  background: #fff;
  color: #0f172a;
  border-bottom: 1px solid rgba(30, 58, 95, 0.1);
  flex-shrink: 0;
}

.ch-mobile-search__back,
.ch-mobile-search__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 64px;
  min-height: 44px;
  margin: 0;
  padding: 0 8px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #2563eb;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.ch-mobile-search__back:active,
.ch-mobile-search__close:active {
  background: #eff6ff;
}

.ch-mobile-search__close {
  justify-self: end;
}

html:not([dir='rtl']) .ch-mobile-search__back svg,
html:not([dir='rtl']) .ch-mobile-search__back .opd-icon {
  transform: scaleX(-1);
}

.ch-mobile-search__title {
  margin: 0;
  font-family: var(--ec-font-display, 'Sora', sans-serif);
  font-size: 1.0625rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #0f172a;
}

.ch-mobile-search__head-spacer {
  width: 40px;
  height: 40px;
}

.ch-mobile-search__field {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 10px 12px 8px;
  padding: 0 12px;
  min-height: 44px;
  border: 1px solid var(--ec-platform-line, #e8edf3);
  border-radius: 14px;
  background: transparent;
  color: var(--ec-platform-muted, #64748b);
  flex-shrink: 0;
}

.ch-mobile-search__input {
  flex: 1 1;
  min-width: 0;
  border: 0;
  outline: none;
  background: transparent;
  font-size: 16px !important;
  line-height: 1.35;
  color: var(--ec-platform-ink, #0c1a2e);
  padding: 10px 0;
}

.ch-mobile-search__input::placeholder {
  color: var(--ec-platform-muted, #64748b);
  opacity: 1;
  font-weight: 500;
}

.ch-mobile-search__clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 50%;
  background: rgba(12, 26, 46, 0.08);
  color: var(--ec-platform-ink, #0c1a2e);
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
}

.ch-mobile-search__body {
  flex: 1 1;
  min-height: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0 0 16px;
  overscroll-behavior: contain;
}

.ch-mobile-search__status {
  margin: 12px 16px;
  font-size: 0.875rem;
  color: var(--ec-platform-muted, #64748b);
}

.ch-mobile-search__list {
  display: flex;
  flex-direction: column;
  padding: 4px 12px 8px;
  box-sizing: border-box;
}

.ch-mobile-search__list > button,
.ch-mobile-search__option,
.ch-mobile-search__list .patient-picker__result,
.ch-mobile-search__list .ec-searchable-select__option {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 12px 16px;
  border: 0;
  border-bottom: 1px solid var(--ec-platform-line, #e8edf3);
  border-radius: 0 !important;
  background: #fff;
  color: var(--ec-platform-ink, #0c1a2e);
  text-align: start;
  font: inherit;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
}

.ch-mobile-search__list .patient-picker__result--card {
  gap: 0;
  min-height: 0;
  margin: 0 0 10px;
  padding: 0;
  border: 1px solid var(--ec-platform-line, #e8edf3);
  border-bottom: 1px solid var(--ec-platform-line, #e8edf3);
  border-radius: 14px !important;
  box-shadow: 0 4px 14px rgba(17, 24, 39, 0.05);
  overflow: hidden;
}

.ch-mobile-search__list .patient-picker__result--card .patient-result-card {
  padding: 14px;
}

.ch-mobile-search__option .ec-searchable-select__option-person.is-rich {
  width: 100%;
}

.ch-mobile-search__list > button:active,
.ch-mobile-search__option:active,
.ch-mobile-search__list .patient-picker__result:active {
  background: var(--ch-phone-accent-soft, #e8f0fe);
}

.ch-mobile-search__list .patient-picker__result--card:active {
  background: #fff;
  border-color: rgba(3, 96, 241, 0.4);
  box-shadow: 0 0 0 3px rgba(3, 96, 241, 0.12);
}

.ch-mobile-search__option.is-selected {
  background: var(--ch-phone-accent-soft, #e8f0fe);
  color: var(--ec-platform-blue, #0360f1);
  font-weight: 600;
}

.ch-mobile-search__option.is-disabled {
  opacity: 0.45;
  pointer-events: none;
}

.ch-mobile-search__footer {
  padding: 8px 16px 16px;
}

/* Readonly input trigger — looks like a search box, opens fullscreen sheet */
.ch-mobile-search-trigger-wrap {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.ch-mobile-search-trigger-wrap .ch-mobile-search-trigger-input {
  cursor: pointer;
  caret-color: transparent;
}

.ch-mobile-search-trigger-wrap .ch-mobile-search-trigger__chevron {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}

/* Trigger fields that open the fullscreen screen */
.ch-mobile-search-trigger {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid var(--ec-platform-line, #e8edf3);
  border-radius: 4px;
  background: #fff;
  color: var(--ec-platform-ink, #0c1a2e);
  text-align: start;
  font: inherit;
  cursor: pointer;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

.ch-mobile-search-trigger.is-placeholder,
.ch-mobile-search-trigger-input.is-placeholder {
  color: var(--ec-platform-muted, #64748b);
}

button.patient-picker__field.ch-mobile-search-trigger-wrap {
  font: inherit;
  text-align: start;
  cursor: pointer;
}

button.patient-picker__field.ch-mobile-search-trigger-wrap .ch-mobile-search-trigger-input {
  pointer-events: none;
}

.ch-mobile-search-trigger__value {
  flex: 1 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ch-mobile-search-trigger__chevron {
  flex-shrink: 0;
  width: 0.55em;
  height: 0.55em;
  -webkit-border-end: 2px solid currentColor;
          border-inline-end: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  opacity: 0.45;
  margin-top: -0.2em;
}

/*
 * Phone / Capacitor: keep Back + Close tappable and ink-on-paper.
 * Module sheets sometimes paint a white head and leave the chevron white.
 */
@media (max-width: 767px) {
  .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel {
    padding-top: 0 !important;
  }

  .ch-mobile-search.careos-mobile-screen .ch-mobile-search__head {
    position: relative !important;
    z-index: 8 !important;
    display: grid !important;
    grid-template-columns: minmax(64px, auto) minmax(0, 1fr) minmax(64px, auto) !important;
    min-height: calc(44px + env(safe-area-inset-top, 0px)) !important;
    padding: calc(4px + env(safe-area-inset-top, 0px)) 8px 4px !important;
    background: #fff !important;
    background-image: none !important;
    color: #0f172a !important;
    border-bottom: 1px solid rgba(30, 58, 95, 0.1) !important;
  }

  .ch-mobile-search.careos-mobile-screen .ch-mobile-search__title {
    color: #0f172a !important;
  }

  .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back,
  .ch-mobile-search.careos-mobile-screen .ch-mobile-search__close {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    z-index: 9 !important;
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
    min-width: 64px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #2563eb !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back *,
  .ch-mobile-search.careos-mobile-screen .ch-mobile-search__close * {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: inherit !important;
    font-size: inherit !important;
  }
}

html.ch-native-app .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel,
html.ch-native-app body.opd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel,
html.ch-native-app body.lab-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel,
html.ch-native-app body.pharm-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel,
html.ch-native-app body.pat-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel,
html.ch-native-app body.ipd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel,
html.ch-native-app body.rad-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__panel {
  padding-top: 0 !important;
}

html.ch-native-app .ch-mobile-search.careos-mobile-screen .ch-mobile-search__head,
html.ch-native-app body.opd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__head,
html.ch-native-app body.lab-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__head,
html.ch-native-app body.pharm-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__head,
html.ch-native-app body.pat-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__head,
html.ch-native-app body.ipd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__head,
html.ch-native-app body.rad-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__head {
  position: relative !important;
  z-index: 8 !important;
  display: grid !important;
  grid-template-columns: minmax(72px, auto) minmax(0, 1fr) minmax(72px, auto) !important;
  min-height: calc(44px + env(safe-area-inset-top, 0px)) !important;
  padding: calc(4px + env(safe-area-inset-top, 0px)) 8px 4px !important;
  background: #fff !important;
  background-image: none !important;
  color: #0f172a !important;
  border-bottom: 1px solid rgba(30, 58, 95, 0.1) !important;
}

html.ch-native-app .ch-mobile-search.careos-mobile-screen .ch-mobile-search__title,
html.ch-native-app body.opd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__title,
html.ch-native-app body.lab-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__title {
  color: #0f172a !important;
}

html.ch-native-app .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back,
html.ch-native-app .ch-mobile-search.careos-mobile-screen .ch-mobile-search__close,
html.ch-native-app body.opd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back,
html.ch-native-app body.opd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__close,
html.ch-native-app body.lab-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back,
html.ch-native-app body.lab-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__close,
html.ch-native-app body.pharm-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back,
html.ch-native-app body.pharm-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__close,
html.ch-native-app body.pat-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back,
html.ch-native-app body.ipd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back,
html.ch-native-app body.rad-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  z-index: 9 !important;
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  overflow: visible !important;
  min-width: 64px !important;
  min-height: 44px !important;
  color: #2563eb !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  background: transparent !important;
}

html.ch-native-app .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back *,
html.ch-native-app .ch-mobile-search.careos-mobile-screen .ch-mobile-search__close *,
html.ch-native-app body.opd-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back *,
html.ch-native-app body.lab-m-active .ch-mobile-search.careos-mobile-screen .ch-mobile-search__back * {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: inherit !important;
}

.ec-searchable-select {
  position: relative;
  width: 100%;
  min-width: 0;
  /* Layout shell only — chrome lives on __control (avoids double borders with filter/field classes) */
  border: none !important;
  padding: 0 !important;
  margin: 0;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  min-height: 0 !important;
  height: auto !important;
  line-height: normal;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/* Legacy / modal / filter input classes sit on the wrapper — size the control instead */
.ec-searchable-select.form-control,
.ec-searchable-select.department-select,
.ec-searchable-select.department-dropdown,
.ec-searchable-select.doctor_select2,
.ec-searchable-select.curved-input,
.ec-searchable-select.time-select,
.ec-searchable-select.token-select,
.ec-searchable-select.select-treatment,
.ec-searchable-select.opd-procedure,
.ec-searchable-select.appointment_status,
.ec-searchable-select.discount-type-invoices,
.ec-searchable-select.appointment-invoice-discount,
.ec-searchable-select.inv-discount__type,
.ec-searchable-select.pharm-pos-discount__type,
.ec-searchable-select.select_method_select2,
.ec-searchable-select.payment_method_select2,
.ec-searchable-select.rad-shot-input,
.ec-searchable-select.opd-input,
.ec-searchable-select.opd-input--compact,
.ec-searchable-select.opd-input--compact-select,
.ec-searchable-select.er-filter-input,
.ec-searchable-select.ipd-shot-search,
.ec-searchable-select.ipd-desk__filter-select,
.ec-searchable-select.pat-shot-select,
.ec-searchable-select.lab-shot-input,
.ec-searchable-select.pharm-shot-input {
  /* width / flex / min-width from these classes still apply; chrome does not */
  box-sizing: border-box;
}

/* Compact filter chrome (Emergency / roster toolbars) */
.ec-searchable-select.er-filter-input {
  min-width: 140px;
  width: auto;
  flex: 0 1 auto;
}

.ec-searchable-select.er-filter-input.er-filter-input--grow {
  flex: 1 1 220px;
  min-width: 180px;
  width: auto;
}

.ec-searchable-select.er-filter-input .ec-searchable-select__control {
  min-height: 34px;
  height: 34px;
  padding: 0 10px;
  border-radius: 8px;
  font-size: 0.8125rem;
}

.ec-searchable-select__control {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 36px;
  border: 1px solid var(--ec-platform-line);
  border-radius: 10px;
  padding: 6px 10px;
  background: #fff;
  color: var(--ec-platform-ink);
  font: inherit;
  font-size: 13px;
  line-height: 1.35;
  text-align: start;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
}

.ec-searchable-select--large .ec-searchable-select__control {
  min-height: 50px;
  padding: 6px 16px;
  font-size: 16px;
  font-weight: 600;
  line-height: 22px;
}

.ec-searchable-select--compact .ec-searchable-select__control {
  min-height: 28px;
  padding: 2px 8px;
  font-size: 11px;
}

.ec-searchable-select__value {
  flex: 1 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ec-searchable-select__value:has(.ec-searchable-select__option-subtitle) {
  white-space: normal;
}

.ec-searchable-select__control:has(.ec-searchable-select__option-subtitle) {
  min-height: 48px;
  align-items: flex-start;
  padding-top: 8px;
  padding-bottom: 8px;
}

.ec-searchable-select__value .ec-searchable-select__option-person.is-dense.is-rich {
  align-items: center;
}

.ec-searchable-select__value .ec-searchable-select__option-person.is-dense .ec-searchable-select__option-subtitle {
  font-size: 0.72em;
}

.ec-searchable-select__option-person,
.ec-searchable-select__value .ec-searchable-select__option-person {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}

.ec-searchable-select__option-person.is-rich {
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  padding: 2px 0;
}

.ec-searchable-select__option-copy {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  min-width: 0;
  flex: 1 1 auto;
}

.ec-searchable-select__option-title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 650;
  line-height: 1.25;
}

.ec-searchable-select__option-subtitle {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.78em;
  font-weight: 500;
  color: #64748b;
  line-height: 1.3;
}

.ec-searchable-select__option-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 3px;
}

.ec-searchable-select__option-meta em {
  font-style: normal;
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 0 8px;
  border-radius: 6px;
  border: 1px solid #e2e8f0;
  background: #fff;
  color: #94a3b8;
  font-size: 0.68em;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.2;
}

.ec-searchable-select__option.is-selected .ec-searchable-select__option-meta em,
.ec-searchable-select__option.is-highlighted .ec-searchable-select__option-meta em {
  border-color: #e2e8f0;
  background: #fff;
  color: #94a3b8;
}

.ec-searchable-select__option-person > span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ec-searchable-select__option-person.is-rich > .ec-searchable-select__option-copy {
  white-space: normal;
  overflow: visible;
  text-overflow: unset;
}

.ec-searchable-select__option .ec-searchable-select__option-person {
  width: 100%;
}

.ec-searchable-select__option {
  align-items: flex-start;
}

.ec-searchable-select__value.is-placeholder {
  color: #64748b;
}

.ec-searchable-select__clear {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  color: #64748b;
  font-size: 16px;
  line-height: 1;
}

.ec-searchable-select__clear:hover {
  background: #fff;
  color: var(--ec-platform-ink);
}

.ec-searchable-select__chevron {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border: solid #64748b;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  margin-top: -3px;
  transition: transform 0.15s ease;
}

.ec-searchable-select.is-open .ec-searchable-select__chevron {
  transform: rotate(225deg);
  margin-top: 3px;
}

.ec-searchable-select.is-open .ec-searchable-select__control {
  border-color: var(--ec-opd-primary);
  box-shadow: 0 0 0 1px rgba(17, 67, 143, 0.12);
}

.ec-searchable-select.is-disabled .ec-searchable-select__control {
  background: #fff;
  color: #94a3b8;
  cursor: not-allowed;
}

.ec-searchable-select__menu {
  position: absolute;
  z-index: 10050;
  top: calc(100% + 4px);
  inset-inline: 0;
  background: #fff;
  border: 1px solid var(--ec-platform-line);
  border-radius: 10px;
  box-shadow: 0 0.6px 1.8px rgba(0, 0, 0, 0.1), 0 3.2px 7.2px rgba(0, 0, 0, 0.13);
  overflow: hidden;
}

/* Desktop: escape overflow:hidden / auto ancestors (modals, sheets, tables). */
.ec-searchable-select__menu--portal {
  position: fixed;
  inset-inline: auto;
  top: 0;
  left: 0;
  z-index: 14000;
  display: flex;
  flex-direction: column;
}

.ec-searchable-select__search {
  padding: 8px;
  border-bottom: 1px solid var(--ec-platform-line);
  background: #fff;
}

.ec-searchable-select__search input {
  width: 100%;
  min-height: 32px;
  border: 1px solid var(--ec-platform-line);
  border-radius: 10px;
  padding: 6px 10px;
  font: inherit;
  font-size: 13px;
  color: var(--ec-platform-ink);
  background: #fff;
}

.ec-searchable-select__search input:focus {
  outline: none;
  border-color: var(--ec-opd-primary);
  box-shadow: 0 0 0 1px rgba(17, 67, 143, 0.12);
}

.ec-searchable-select__options {
  list-style: none;
  margin: 0;
  padding: 4px 0;
  max-height: 240px;
  overflow-y: auto;
}

.ec-searchable-select__menu--portal .ec-searchable-select__options {
  flex: 1 1 auto;
  min-height: 0;
}

.ec-searchable-select__virtual-list {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
}

.ec-searchable-select__option,
.ec-searchable-select__empty {
  padding: 8px 12px;
  font-size: 13px;
  line-height: 1.35;
  color: var(--ec-platform-ink);
  cursor: pointer;
}

.ec-searchable-select__option.is-selected {
  background: #f8fafc;
  color: var(--ec-platform-ink, #0f172a);
  font-weight: 500;
}

.ec-searchable-select__option.is-highlighted {
  background: #f1f5f9;
}

.ec-searchable-select__option.is-disabled {
  color: #94a3b8;
  cursor: not-allowed;
}

.ec-searchable-select__empty {
  color: #64748b;
  cursor: default;
}

.ec-searchable-select__validator {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 0;
  height: 0;
}

.page-wrapper .doctor-dropdown .ec-searchable-select {
  width: 100%;
}

.page-wrapper .ec-searchable-select.department-select,
.page-wrapper .ec-searchable-select.department-dropdown {
  width: 150px;
  margin-right: 20px;
}

.page-wrapper .ec-searchable-select.department-select .ec-searchable-select__control,
.page-wrapper .ec-searchable-select.department-dropdown .ec-searchable-select__control {
  height: 28px;
  min-height: 28px;
  padding: 0 12px;
  font-size: 12px;
}

.dr-select-area .ec-searchable-select {
  flex: 1 1;
  min-width: 0;
}

.appointment-modal .ec-searchable-select__control,
.leave-modal-wrapper .ec-searchable-select__control {
  width: 100%;
}

.full-calendar-wrapper .ec-searchable-select--compact .ec-searchable-select__menu {
  min-width: 140px;
}

html[dir='rtl'] .ec-searchable-select__control,
html[dir='rtl'] .ec-searchable-select__option,
html[dir='rtl'] .ec-searchable-select__search input {
  text-align: right;
}

.care-tax-breakdown {
  margin: 12px 0 0;
  padding: 12px 12px 10px;
  border: 1px solid rgba(12, 26, 46, 0.1);
  border-radius: 2px;
  background: color-mix(in srgb, var(--care-card, #fff) 92%, var(--care-mint, #eef5fb));
}

.care-tax-breakdown--compact {
  margin-top: 10px;
  padding: 10px 10px 8px;
}

.care-tax-breakdown__title {
  margin: 0 0 8px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-navy);
}

.care-tax-breakdown dl {
  margin: 0;
}

.care-tax-breakdown dl > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 4px;
  font-size: 0.86rem;
}

.care-tax-breakdown dt {
  margin: 0;
  font-weight: 500;
  color: var(--care-ink-soft, #5e6e72);
}

.care-tax-breakdown dd {
  margin: 0;
  font-weight: 650;
  color: var(--care-navy);
}

.care-tax-breakdown__total {
  margin-top: 6px !important;
  padding-top: 6px;
  border-top: 1px solid rgba(12, 26, 46, 0.1);
}

.care-tax-breakdown__total dt,
.care-tax-breakdown__total dd {
  font-weight: 750;
  color: var(--care-navy);
}

.care-tax-breakdown__hint {
  margin: 6px 0 0;
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--care-ink-soft, #5e6e72);
}

.care-shop-layout {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
}

.care-cart {
  padding: 16px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care-cart h2 {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0 0 12px;
  font-size: 1.15rem;
  color: var(--care-navy);
}

.care-cart h2 em {
  font-style: normal;
  font-size: 0.78rem;
  font-weight: 650;
  color: #5d7390;
}

.care-cart__lines {
  margin: 0 0 12px;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-cart__lines li {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(30, 58, 95, 0.08);
}

.care-cart__lines strong {
  font-size: 0.88rem;
}

.care-cart__lines span {
  font-size: 0.76rem;
  color: #5d7390;
}

.care .care-btn--cart {
  width: 100%;
  min-height: 48px;
  justify-content: center;
  background: var(--care-navy) !important;
  color: #fff !important;
  border: 0 !important;
  font-weight: 750;
  opacity: 1;
}

.care .care-btn--cart:disabled {
  background: #94a3b8 !important;
  color: #fff !important;
}

.care-doc--cart .care-btn--cart {
  width: auto;
  min-width: 132px;
  padding: 0 14px;
}

.care-doc--cart .care-btn--cart,
.care-doc--cart .care-qty {
  align-self: end;
}

@media (min-width: 900px) {
  .care-shop-layout {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
    align-items: start;
  }

  .care-cart {
    position: -webkit-sticky;
    position: sticky;
    top: 12px;
  }
}

.care-payment-handoff {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding:
    calc(24px + env(safe-area-inset-top, 0px))
    max(20px, env(safe-area-inset-right, 0px))
    calc(24px + env(safe-area-inset-bottom, 0px))
    max(20px, env(safe-area-inset-left, 0px));
  background: rgba(8, 22, 40, 0.42);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  animation: care-payment-handoff-in 220ms ease both;
}

.care-payment-handoff__card {
  width: min(360px, 100%);
  padding: 28px 22px;
  border-radius: 2px;
  background: var(--care-card, #ffffff);
  border: 1px solid var(--care-line, rgba(10, 58, 72, 0.09));
  box-shadow: 0 18px 48px rgba(7, 25, 47, 0.18);
}

@keyframes care-payment-handoff-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .care-payment-handoff {
    animation: none;
  }
}


/**
 * Care Hub B2C design v2 — mockups 10–15 (login → account → done).
 * Additive only. Prefer .care-v2-* so legacy chrome can coexist during rollout.
 */

.care,
.care-v2-login {
  --care-v2-primary: #0F6CBD;
  --care-v2-secondary: #14B8A6;
  --care-v2-navy: #0F172A;
  --care-v2-paper: #F8FAFC;
  --care-v2-surface: #ffffff;
  --care-v2-ink: #0F172A;
  --care-v2-muted: #475569;
  --care-v2-line: rgba(15, 23, 42, 0.1);
  --care-v2-radius: 12px;
  --care-v2-radius-lg: 20px;
  --care-v2-font-display: var(--font-sora, 'Sora'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, sans-serif;
  --care-v2-font: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, sans-serif;
  --care-v2-serif: var(--care-v2-font-display);
}

html[dir='rtl'] .care,
html[dir='rtl'] .care-v2-login {
  --care-v2-font-display: var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), var(--font-sora, 'Sora'), system-ui, sans-serif;
  --care-v2-font: var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), var(--font-inter, 'Inter'), system-ui, sans-serif;
  --care-v2-serif: var(--care-v2-font-display);
}

/* —— Desktop top nav wordmark (mockup 01) —— */
.care--web .care-top__brand .care-top__wordmark,
.care--web .care-top__brand .care-top__tagline {
  display: none;
}

.care-v2-mark {
  font-family: var(--care-v2-font-display);
  font-weight: 800;
  letter-spacing: -0.03em;
  color: var(--care-v2-primary);
  line-height: 1;
}

.care-v2-mark span {
  color: var(--care-v2-secondary);
}

.care--web .care-top__brand .care-v2-mark {
  font-size: 1.35rem;
}

.care--web .care-top__nav a {
  color: var(--care-v2-navy);
  font-weight: 500;
}

.care--web .care-top__nav a:hover,
.care--web .care-top__nav a:focus-visible {
  color: var(--care-v2-primary);
  background: transparent;
}

.care--web .care-top__nav a.is-active {
  color: var(--care-v2-primary);
  border-bottom-color: var(--care-v2-primary);
}

.care--web .care-top__profile {
  display: none;
}

/* —— Desktop home hero (mockup 01) —— */
.care-v2-home-hero {
  position: relative;
  isolation: isolate;
  min-height: min(68vh, 620px);
  display: grid;
  align-items: center;
  margin: 0;
  padding: 56px max(24px, env(safe-area-inset-right, 0px)) 64px max(24px, env(safe-area-inset-left, 0px));
  overflow: hidden;
  border-radius: 0;
  background: var(--care-v2-paper);
}

.care-v2-home-hero__ambient {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(
      105deg,
      rgba(248, 250, 252, 0.94) 0%,
      rgba(248, 250, 252, 0.78) 38%,
      rgba(248, 250, 252, 0.42) 62%,
      rgba(248, 250, 252, 0.12) 82%,
      transparent 100%
    ),
    url('/care/design/heroes/home-corridor.jpg') center / cover no-repeat;
  pointer-events: none;
}

.care-v2-home-hero__grid {
  position: relative;
  z-index: 1;
  width: min(1100px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(240px, 0.85fr);
  grid-gap: 28px;
  gap: 28px;
  align-items: center;
}

.care-v2-home-hero__copy {
  text-align: center;
  max-width: 540px;
  margin: 0 auto;
  display: block;
}

.care-v2-home-hero__brand {
  margin: 0 0 14px;
  font-family: var(--care-v2-font-display);
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care-v2-home-hero__brand span {
  color: var(--care-v2-primary);
}

.care-v2-home-hero__title {
  margin: 0 0 14px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(2.15rem, 4.2vw, 2.85rem);
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1.12;
  color: var(--care-v2-navy);
}

.care-v2-home-hero__lead {
  margin: 0 auto 22px;
  max-width: 34rem;
  font-size: 1.05rem;
  line-height: 1.55;
  color: var(--care-v2-navy);
  opacity: 0.82;
}

.care-v2-home-hero__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 999px;
  background: var(--care-v2-primary);
  color: #fff !important;
  font-family: var(--care-v2-font);
  font-size: 0.95rem;
  font-weight: 600;
  text-decoration: none;
  border: 0;
  cursor: pointer;
  margin-bottom: 18px;
  box-shadow: 0 10px 28px rgba(37, 99, 235, 0.28);
}

.care-v2-home-hero__cta svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.care-v2-home-hero__cta:hover {
  background: var(--care-v2-navy);
}

.care-v2-home-hero__search {
  width: min(520px, 100%);
  margin: 0 auto;
}

.care-v2-home-hero__search .care-smart__hints {
  display: none;
}

.care-v2-home-hero__search .care-smart__field {
  min-height: 56px;
  padding: 8px 8px 8px 16px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(30, 58, 95, 0.08);
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.1);
}

.care-v2-home-hero__search .care-smart__place-btn--lead,
.care-v2-home-hero__search .care-smart__place-btn--compact {
  display: none !important;
}

.care-v2-home-hero__search .care-smart__submit {
  display: inline-flex !important;
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 999px;
  background: var(--care-v2-primary);
  color: #fff;
}

.care-v2-home-hero__search .care-smart__submit-label {
  display: none;
}

.care-v2-home-hero__search .care-smart__submit-ico {
  width: 20px;
  height: 20px;
}

.care-v2-home-hero__search .care-smart__icon {
  color: var(--care-v2-muted);
}

.care-v2-home-hero__search .care-smart__input {
  font-size: 1rem;
  font-weight: 500;
  color: var(--care-v2-ink);
}

.care-v2-home-hero__photo {
  justify-self: end;
  width: min(100%, 400px);
  aspect-ratio: 5 / 4;
  border-radius: 22px;
  object-fit: cover;
  box-shadow: 0 28px 56px rgba(15, 23, 42, 0.14);
}

/* —— Find care by type strip (desktop) —— */
.care-v2-type-strip {
  width: min(880px, calc(100% - 48px));
  margin: 8px auto 48px;
  padding: 20px 8px 12px;
  text-align: center;
  background: transparent;
}

.care-v2-type-strip__eyebrow {
  margin: 0 0 20px;
  font-family: var(--care-v2-font);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care-v2-type-strip__row {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: stretch;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.care-v2-type-strip__row > li {
  flex: 1 1;
  max-width: 200px;
  min-width: 0;
}

.care-v2-type-strip__row > li + li {
  -webkit-border-start: 1px solid var(--care-v2-line);
          border-inline-start: 1px solid var(--care-v2-line);
}

.care-v2-type-strip a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 8px 16px 16px;
  color: var(--care-v2-primary);
  text-decoration: none;
  font-family: var(--care-v2-font);
  font-size: 0.95rem;
  font-weight: 600;
}

.care-v2-type-strip a:hover {
  opacity: 0.85;
}

.care-v2-type-strip__ico {
  width: 34px;
  height: 34px;
  color: var(--care-v2-primary);
}

.care-v2-type-strip__ico svg,
.care-v2-type-strip a svg {
  width: 34px;
  height: 34px;
  color: var(--care-v2-primary);
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.care-v2-mobile-hero,
.care-v2-doorstep,
.care-v2-trust {
  display: none;
}

.care-v2-home-below {
  background: var(--care-v2-paper);
}

.care-v2-mark-plus {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: #60a5fa;
}

.care--phone.care--v2-home .care-top {
  display: none;
}

.care--phone .care-v2-home-hero,
.care--phone .care-v2-type-strip {
  display: none !important;
}

.care--phone .care-v2-mobile-hero {
  display: block;
  position: relative;
  margin: 0;
  padding: 28px 20px 0;
  color: #fff;
  background: var(--care-v2-navy);
  border-radius: 0 0 36px 36px;
  overflow: hidden;
  min-height: 248px;
}

.care--phone .care-v2-mobile-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(100deg, #0F172A 0%, #0F172A 46%, rgba(30, 58, 95, 0.55) 68%, transparent 100%),
    url('/care/design/heroes/auth-phone.jpg') right center / cover no-repeat;
  pointer-events: none;
}

.care--phone .care-v2-mobile-hero__row {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(96px, 0.75fr);
  grid-gap: 8px;
  gap: 8px;
  align-items: end;
  min-height: 168px;
  padding-bottom: 8px;
}

.care--phone .care-v2-mobile-hero__copy {
  padding-bottom: 12px;
}

.care--phone .care-v2-mobile-hero__brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
}

.care--phone .care-v2-mobile-hero__brand span {
  color: #60a5fa;
}

.care--phone .care-v2-mobile-hero__title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: 1.7rem;
  line-height: 1.18;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #fff;
}

.care--phone .care-v2-mobile-hero__lead {
  margin: 0;
  max-width: 16rem;
  font-size: 0.92rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.88);
  font-weight: 400;
}

.care--phone .care-v2-mobile-hero__photo {
  display: none;
}

.care--phone .care-v2-mobile-hero__search {
  position: relative;
  z-index: 2;
  margin: 10px 4px -28px;
}

.care--phone .care-v2-mobile-hero__search .care-smart__hints {
  display: none;
}

.care--phone .care-v2-mobile-hero__search .care-smart__field {
  min-height: 52px;
  padding: 10px 16px;
  border-radius: 999px;
  background: #fff;
  border: 0;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.16);
}

.care--phone .care-v2-mobile-hero__search .care-smart__place-btn,
.care--phone .care-v2-mobile-hero__search .care-smart__submit {
  display: none !important;
}

.care--phone .care-v2-mobile-hero__search .care-smart__icon {
  color: var(--care-v2-muted);
}

.care--phone .care-v2-mobile-hero__search .care-smart__input {
  font-size: 0.95rem;
  color: var(--care-v2-ink);
}

.care--phone .care-v2-doorstep {
  display: block;
  padding: 44px 16px 8px;
  margin: 0;
}

.care--phone .care-v2-doorstep__title {
  margin: 0 0 4px;
  font-family: var(--care-v2-font-display);
  font-size: 1.28rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--phone .care-v2-doorstep__lead {
  margin: 0 0 18px;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  line-height: 1.4;
}

.care--phone .care-v2-doorstep__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.care--phone .care-v2-doorstep__grid a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 108px;
  padding: 18px 10px 16px;
  background: var(--care-v2-surface);
  border: 0;
  border-radius: 16px;
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
  color: var(--care-v2-navy);
  text-decoration: none;
  font-family: var(--care-v2-font);
  font-size: 0.86rem;
  font-weight: 600;
  text-align: center;
}

.care--phone .care-v2-doorstep__grid a svg {
  width: 28px;
  height: 28px;
  color: var(--care-v2-primary);
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.care--phone .care-v2-trust {
  display: flex;
  gap: 14px;
  align-items: center;
  margin: 18px 16px 28px;
  padding: 16px 18px;
  background: #eff6ff;
  border-radius: 18px;
}

.care--phone .care-v2-trust__badge {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: #dbeafe;
  color: var(--care-v2-primary);
  display: grid;
  place-items: center;
}

.care--phone .care-v2-trust__badge svg {
  width: 22px;
  height: 22px;
}

.care--phone .care-v2-trust strong {
  display: block;
  margin-bottom: 2px;
  color: var(--care-v2-navy);
  font-size: 0.98rem;
  font-weight: 700;
}

.care--phone .care-v2-trust span {
  color: var(--care-v2-muted);
  font-size: 0.72rem;
  line-height: 1.35;
}

.care--phone .care-v2-home-below {
  display: none;
}

.care--phone .care-home > .care-main {
  padding-top: 0;
  background: var(--care-v2-paper);
}

@media (max-width: 767px) {
  .care-v2-home-hero,
  .care-v2-type-strip {
    display: none !important;
  }

  .care-v2-mobile-hero {
    display: block;
    position: relative;
    margin: 0;
    padding: 28px 20px 0;
    color: #fff;
    background: var(--care-v2-navy);
    border-radius: 0 0 36px 36px;
    overflow: hidden;
    min-height: 248px;
  }

  .care-v2-mobile-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
      linear-gradient(100deg, #0F172A 0%, #0F172A 46%, rgba(30, 58, 95, 0.55) 68%, transparent 100%),
      url('/care/design/heroes/auth-phone.jpg') right center / cover no-repeat;
    pointer-events: none;
  }

  .care-v2-mobile-hero__row {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(96px, 0.75fr);
    grid-gap: 8px;
    gap: 8px;
    align-items: end;
    min-height: 168px;
    padding-bottom: 8px;
  }

  .care-v2-mobile-hero__brand {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 14px;
    font-size: 1.15rem;
    font-weight: 700;
    color: #fff;
  }

  .care-v2-mobile-hero__brand span {
    color: #60a5fa;
  }

  .care-v2-mobile-hero__title {
    margin: 0 0 8px;
    font-family: var(--care-v2-font-display);
    font-size: 1.7rem;
    line-height: 1.18;
    font-weight: 700;
    color: #fff;
  }

  .care-v2-mobile-hero__lead {
    margin: 0;
    max-width: 16rem;
    font-size: 0.92rem;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.88);
  }

  .care-v2-mobile-hero__photo {
    display: none;
  }

  .care-v2-mobile-hero__search {
    position: relative;
    z-index: 2;
    margin: 10px 4px -28px;
  }

  .care-v2-mobile-hero__search .care-smart__field {
    min-height: 52px;
    padding: 10px 16px;
    border-radius: 999px;
    background: #fff;
    border: 0;
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.16);
  }

  .care-v2-mobile-hero__search .care-smart__place-btn,
  .care-v2-mobile-hero__search .care-smart__submit,
  .care-v2-mobile-hero__search .care-smart__hints {
    display: none !important;
  }

  .care-v2-doorstep {
    display: block;
    padding: 44px 16px 8px;
    margin: 0;
  }

  .care-v2-doorstep__title {
    margin: 0 0 4px;
    font-family: var(--care-v2-font-display);
    font-size: 1.28rem;
    font-weight: 700;
    color: var(--care-v2-navy);
  }

  .care-v2-doorstep__lead {
    margin: 0 0 18px;
    color: var(--care-v2-muted);
    font-size: 0.9rem;
  }

  .care-v2-doorstep__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 12px;
    gap: 12px;
  }

  .care-v2-doorstep__grid a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 108px;
    padding: 18px 10px 16px;
    background: var(--care-v2-surface);
    border-radius: 16px;
    box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
    color: var(--care-v2-navy);
    text-decoration: none;
    font-size: 0.86rem;
    font-weight: 600;
    text-align: center;
  }

  .care-v2-doorstep__grid a svg {
    width: 28px;
    height: 28px;
    color: var(--care-v2-primary);
    stroke: currentColor;
    fill: none;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .care-v2-trust {
    display: flex;
    gap: 14px;
    align-items: center;
    margin: 18px 16px 28px;
    padding: 16px 18px;
    background: #eff6ff;
    border-radius: 18px;
  }

  .care-v2-trust__badge {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    background: #dbeafe;
    color: var(--care-v2-primary);
    display: grid;
    place-items: center;
  }

  .care-v2-trust__badge svg {
    width: 22px;
    height: 22px;
  }

  .care-v2-trust strong {
    display: block;
    margin-bottom: 2px;
    color: var(--care-v2-navy);
    font-size: 0.98rem;
    font-weight: 700;
  }

  .care-v2-trust span {
    color: var(--care-v2-muted);
    font-size: 0.72rem;
  }

  .care-v2-home-below {
    display: none;
  }
}

@media (min-width: 768px) {
  .care:not(.care--phone) .care-v2-mobile-hero,
  .care:not(.care--phone) .care-v2-doorstep,
  .care:not(.care--phone) .care-v2-trust {
    display: none !important;
  }
}

@media (max-width: 959px) and (min-width: 768px) {
  .care-v2-home-hero__grid {
    grid-template-columns: 1fr;
  }

  .care-v2-home-hero__photo {
    display: none;
  }
}

/* —— Login split (mockup 10) —— */
.care-v2-login {
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font-family: var(--care-v2-font);
}

.care-v2-login__brand {
  position: relative;
  display: grid;
  place-items: center;
  padding: 40px;
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.42), rgba(248, 250, 252, 0.72)),
    url('/care/design/heroes/login-ambient.jpg') center / cover no-repeat;
  text-align: center;
}

.care-v2-login__brand-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  justify-items: center;
}

.care-v2-login__plus {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: var(--care-v2-primary);
  color: #fff;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
}

.care-v2-login__brand-mark {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.85rem, 3vw, 2.35rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-primary);
}

.care-v2-login__tag {
  margin: 0;
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--care-v2-navy);
  font-weight: 650;
}

.care-v2-login__panel {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 48px clamp(24px, 6vw, 72px);
  background: var(--care-v2-surface);
}

.care-v2-login__locale {
  position: absolute;
  top: 20px;
  inset-inline-end: 24px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 0;
  background: transparent;
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
  padding: 8px;
}

.care-v2-login__locale svg {
  width: 18px;
  height: 18px;
}

.care-v2-login__back {
  position: absolute;
  top: 16px;
  inset-inline-start: 16px;
  width: 40px;
  height: 40px;
  border: 1px solid var(--care-v2-line);
  border-radius: 999px;
  background: #fff;
  color: var(--care-v2-navy);
  font-size: 1.4rem;
  cursor: pointer;
}

.care-v2-login__title {
  margin: 0 0 8px;
  font-family: var(--care-v2-serif);
  font-size: clamp(1.75rem, 2.4vw, 2.15rem);
  font-weight: 600;
  color: var(--care-v2-navy);
  letter-spacing: -0.02em;
}

.care-v2-login__title::after {
  content: '';
  display: block;
  width: 64px;
  height: 3px;
  margin-top: 12px;
  background: var(--care-v2-primary);
  border-radius: 2px;
}

.care-v2-login__lead {
  margin: 14px 0 0;
  font-size: 0.95rem;
  line-height: 1.5;
  color: var(--care-v2-muted);
}

.care-v2-login__form {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
  margin-top: 28px;
  max-width: 420px;
}

.care-v2-login__field {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-v2-login__field > span {
  font-size: 0.82rem;
  font-weight: 650;
  color: var(--care-v2-navy);
}

.care-v2-login__input {
  display: flex;
  align-items: stretch;
  border: 1px solid rgba(30, 58, 95, 0.16);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.care-v2-login__input:focus-within {
  border-color: var(--care-v2-primary);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

.care-v2-login__input.is-locked {
  background: var(--care-v2-paper);
}

.care-v2-login__input-ico {
  display: grid;
  place-items: center;
  width: 44px;
  color: var(--care-v2-muted);
  flex-shrink: 0;
}

.care-v2-login__dial {
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  font-weight: 700;
  font-size: 0.92rem;
  color: var(--care-v2-navy);
  background: rgba(37, 99, 235, 0.06);
  -webkit-border-end: 1px solid var(--care-v2-line);
          border-inline-end: 1px solid var(--care-v2-line);
  white-space: nowrap;
}

.care-v2-login__input input {
  flex: 1 1;
  min-width: 0;
  border: 0;
  outline: none;
  background: transparent;
  padding: 13px 14px;
  font: inherit;
  font-size: 16px;
  color: var(--care-v2-ink);
}

.care-v2-login__hint {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.45;
  color: var(--care-v2-muted);
}

.care-v2-login__hint a,
.care-v2-login__hint strong {
  color: var(--care-v2-primary);
  font-weight: 650;
}

.care-v2-login__error {
  margin: 0;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(185, 28, 28, 0.08);
  color: #9b1c1c;
  font-size: 0.875rem;
}

.care-v2-login__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 50px;
  border: 0;
  border-radius: 12px;
  padding: 0 18px;
  background: var(--care-v2-primary);
  color: #fff;
  font: inherit;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
}

.care-v2-login__submit:disabled {
  opacity: 0.65;
  cursor: wait;
}

.care-v2-login__submit:not(:disabled):hover {
  background: #1d4ed8;
}

.care-v2-login__alt {
  border: 0;
  background: transparent;
  color: var(--care-v2-primary);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 650;
  cursor: pointer;
  padding: 4px;
  text-decoration: underline;
  text-underline-offset: 3px;
  justify-self: center;
}

.care-v2-login__or {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  grid-gap: 12px;
  gap: 12px;
  margin: 4px 0;
  color: var(--care-v2-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.care-v2-login__or::before,
.care-v2-login__or::after {
  content: '';
  height: 1px;
  background: var(--care-v2-line);
}

.care-v2-login__nafath {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  align-items: center;
  grid-gap: 12px;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid rgba(30, 58, 95, 0.16);
  border-radius: 12px;
  background: #fff;
  text-align: start;
  cursor: pointer;
  color: inherit;
  font: inherit;
}

.care-v2-login__nafath:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.care-v2-login__nafath:not(:disabled):hover {
  border-color: var(--care-v2-primary);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.care-v2-login__nafath-ico {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: rgba(30, 58, 95, 0.08);
  color: var(--care-v2-navy);
}

.care-v2-login__nafath strong {
  display: block;
  font-size: 0.95rem;
  color: var(--care-v2-ink);
}

.care-v2-login__nafath span {
  display: block;
  margin-top: 2px;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-login__flag {
  width: 28px;
  height: 18px;
  border-radius: 2px;
  background: linear-gradient(180deg, #006c35 0 70%, #fff 70% 100%);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08);
  position: relative;
}

.care-v2-login__flag::after {
  content: '★';
  position: absolute;
  left: 4px;
  top: 1px;
  font-size: 9px;
  color: #fff;
}

.care-v2-login__footer {
  margin-top: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-login__consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 0.84rem;
  color: var(--care-v2-ink);
}

.care-v2-login__consent input {
  margin-top: 3px;
}

.care-v2-login__resume {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin-bottom: 4px;
  padding: 12px;
  border-radius: 12px;
  background: var(--care-v2-paper);
  border: 1px solid var(--care-v2-line);
}

.care-v2-login__resume p {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 650;
  color: var(--care-v2-muted);
}

.care-v2-login__resume button {
  border: 0;
  background: #fff;
  color: var(--care-v2-navy);
  font: inherit;
  font-weight: 650;
  text-align: start;
  padding: 10px 12px;
  border-radius: 10px;
  cursor: pointer;
  box-shadow: 0 0 0 1px var(--care-v2-line);
}

@media (max-width: 900px) {
  .care-v2-login {
    grid-template-columns: 1fr;
  }

  .care-v2-login__brand {
    min-height: 200px;
    padding: 36px 24px;
  }

  .care-v2-login__panel {
    padding: 28px 20px 40px;
    justify-content: flex-start;
  }

  .care-v2-login__locale {
    top: 12px;
    inset-inline-end: 12px;
  }

  .care-v2-login__form {
    max-width: none;
  }
}

/* —— Account hub (mockup 11) —— */
.care-v2-hub {
  display: grid;
  grid-gap: 18px;
  gap: 18px;
  padding: 8px 0 32px;
  max-width: 880px;
}

.care-v2-hub__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.care-v2-hub__hello {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.6rem, 3vw, 2rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-ink);
}

.care-v2-hub__hello em {
  font-style: normal;
  color: var(--care-v2-primary);
}

.care-v2-hub__welcome {
  margin: 8px 0 0;
  font-size: 0.95rem;
  color: var(--care-v2-muted);
}

.care-v2-hub__profile {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: var(--care-v2-muted);
  flex-shrink: 0;
}

.care-v2-hub__avatar {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  object-fit: cover;
  background: #e8eef5;
  flex-shrink: 0;
}

.care-v2-hub__profile-chev {
  width: 8px;
  height: 8px;
  -webkit-border-end: 2px solid currentColor;
          border-inline-end: 2px solid currentColor;
  -webkit-border-after: 2px solid currentColor;
          border-block-end: 2px solid currentColor;
  transform: rotate(45deg);
  -webkit-margin-before: -4px;
          margin-block-start: -4px;
  opacity: 0.75;
}

.care-v2-hub__tiles {
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-v2-hub__tile {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  grid-gap: 14px;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  text-decoration: none;
  color: inherit;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

.care-v2-hub__tile:hover {
  border-color: rgba(37, 99, 235, 0.35);
  box-shadow: 0 8px 24px rgba(30, 58, 95, 0.06);
}

.care-v2-hub__tile-ico {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: rgba(37, 99, 235, 0.1);
  color: var(--care-v2-primary);
  overflow: hidden;
}

.care-v2-hub__tile-ico .care-mico,
.care-v2-hub__tile-ico .care-mico--mark {
  width: 28px;
  height: 28px;
  background: transparent !important;
  color: inherit;
  border-radius: 0;
}

.care-v2-hub__tile-ico .care-mico svg {
  width: 100%;
  height: 100%;
}

.care-v2-hub__tile-copy {
  min-width: 0;
}

.care-v2-hub__tile strong {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: var(--care-v2-ink);
}

.care-v2-hub__tile-lead {
  display: block;
  margin-top: 3px;
  font-size: 0.84rem;
  color: var(--care-v2-muted);
  line-height: 1.4;
}

.care-v2-hub__chev {
  width: 10px;
  height: 10px;
  -webkit-border-end: 2px solid var(--care-v2-muted);
          border-inline-end: 2px solid var(--care-v2-muted);
  -webkit-border-after: 2px solid var(--care-v2-muted);
          border-block-end: 2px solid var(--care-v2-muted);
  transform: rotate(-45deg);
  opacity: 0.7;
}

html[dir='rtl'] .care-v2-hub__chev {
  transform: rotate(135deg);
}

.care-v2-hub__next {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  grid-gap: 14px;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  text-decoration: none;
  color: inherit;
}

.care-v2-hub__next-kicker {
  margin: 0 0 4px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  text-transform: none;
  color: var(--care-v2-ink);
}

.care-v2-hub__next-when {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 650;
  color: var(--care-v2-primary);
}

.care-v2-hub__next-meta {
  margin: 4px 0 0;
  font-size: 0.84rem;
  color: var(--care-v2-muted);
}

.care-v2-hub__next-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid rgba(37, 99, 235, 0.45);
  background: #fff;
  color: var(--care-v2-primary);
  font-size: 0.84rem;
  font-weight: 650;
  white-space: nowrap;
}

.care-v2-hub__next-btn-chev {
  width: 8px;
  height: 8px;
  -webkit-border-end: 2px solid currentColor;
          border-inline-end: 2px solid currentColor;
  -webkit-border-after: 2px solid currentColor;
          border-block-end: 2px solid currentColor;
  transform: rotate(-45deg);
  -webkit-margin-start: 2px;
          margin-inline-start: 2px;
}

html[dir='rtl'] .care-v2-hub__next-btn-chev {
  transform: rotate(135deg);
}

.care-v2-hub__secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 8px;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

@media (max-width: 640px) {
  .care-v2-hub__next {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .care-v2-hub__next-btn {
    grid-column: 1 / -1;
    justify-content: center;
  }
}

/* —— Appointments list (mockup 12) —— */
.care-v2-appts__head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}

.care-v2-appts__head h1 {
  margin: 0;
  font-size: clamp(1.4rem, 2.4vw, 1.75rem);
  font-weight: 780;
  letter-spacing: -0.03em;
  color: var(--care-v2-ink);
}

.care-v2-appts__tabs {
  display: inline-flex;
  gap: 8px;
  padding: 4px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
}

.care-v2-appts__tabs button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 16px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 650;
  cursor: pointer;
}

.care-v2-appts__tabs button.is-active {
  background: var(--care-v2-primary);
  color: #fff;
}

.care-v2-appts__cols {
  display: none;
  grid-template-columns: minmax(0, 2fr) minmax(120px, 1fr) 110px 140px;
  gap: 12px;
  padding: 0 16px 8px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care-v2-appts__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 0;
  gap: 0;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  overflow: hidden;
}

.care-v2-appts__list > li + li {
  border-top: 1px solid var(--care-v2-line);
}

.care-v2-appts__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  padding: 16px;
  text-decoration: none;
  color: inherit;
}

.care-v2-appts__who {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: center;
}

.care-v2-appts__who img,
.care-v2-appts__who .pp-doctor-avatar {
  width: 52px;
  height: 52px;
  border-radius: 999px;
  object-fit: cover;
  background: #e8eef5;
}

.care-v2-appts__who strong {
  display: block;
  font-size: 0.98rem;
  color: var(--care-v2-ink);
}

.care-v2-appts__who em {
  display: block;
  margin-top: 2px;
  font-style: normal;
  font-size: 0.84rem;
  font-weight: 650;
  color: var(--care-v2-primary);
}

.care-v2-appts__who span {
  display: block;
  margin-top: 2px;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-appts__when strong {
  display: block;
  font-size: 0.9rem;
  color: var(--care-v2-ink);
}

.care-v2-appts__when span {
  display: block;
  margin-top: 2px;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-appts__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.care-v2-appts__view {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  border-radius: 10px;
  border: 0;
  background: transparent;
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 650;
}

.care-v2-status {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 700;
  background: rgba(37, 99, 235, 0.1);
  color: var(--care-v2-primary);
}

.care-v2-status--ready {
  background: #16a34a;
  color: #fff;
}

.care-v2-status--confirmed {
  background: rgba(37, 99, 235, 0.12);
  color: var(--care-v2-primary);
}

.care-v2-status--scheduled {
  background: #eff6ff;
  color: var(--care-v2-primary);
}

@media (min-width: 900px) {
  .care-v2-appts__cols {
    display: grid;
  }

  .care-v2-appts__row {
    grid-template-columns: minmax(0, 2fr) minmax(120px, 1fr) 110px 140px;
    align-items: center;
  }
}

/* —— Reports list (mockup 13) —— */
.care-v2-reports__title {
  margin: 0 0 12px;
  font-size: clamp(1.4rem, 2.4vw, 1.75rem);
  font-weight: 780;
  letter-spacing: -0.03em;
  color: var(--care-v2-ink);
}

.care-v2-reports__tabs {
  display: flex;
  gap: 20px;
  margin-bottom: 16px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care-v2-reports__tabs button {
  position: relative;
  border: 0;
  background: transparent;
  padding: 10px 2px 12px;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 650;
  color: var(--care-v2-muted);
  cursor: pointer;
}

.care-v2-reports__tabs button.is-active {
  color: var(--care-v2-primary);
}

.care-v2-reports__tabs button.is-active::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  background: var(--care-v2-primary);
  border-radius: 2px 2px 0 0;
}

.care-v2-reports__cols {
  display: none;
  grid-template-columns: minmax(0, 2fr) minmax(100px, 1.2fr) 120px 100px 110px;
  gap: 12px;
  padding: 0 16px 8px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care-v2-reports__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  overflow: hidden;
}

.care-v2-reports__list > li + li {
  border-top: 1px solid var(--care-v2-line);
}

.care-v2-reports__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  padding: 14px 16px;
  text-decoration: none;
  color: inherit;
  align-items: center;
}

.care-v2-reports__type {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: center;
}

.care-v2-reports__type-ico {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: rgba(37, 99, 235, 0.1);
  overflow: hidden;
}

.care-v2-reports__type-ico .care-mico {
  width: 44px;
  height: 44px;
}

.care-v2-reports__type strong {
  display: block;
  font-size: 0.94rem;
  color: var(--care-v2-ink);
}

.care-v2-reports__type span {
  display: block;
  margin-top: 2px;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-reports__practice {
  color: var(--care-v2-primary);
  font-weight: 650;
  font-size: 0.88rem;
}

.care-v2-reports__date strong {
  display: block;
  font-size: 0.88rem;
  color: var(--care-v2-ink);
}

.care-v2-reports__date span {
  display: block;
  margin-top: 2px;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-reports__view {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid var(--care-v2-primary);
  background: #fff;
  color: var(--care-v2-primary);
  font-size: 0.84rem;
  font-weight: 650;
  text-decoration: none;
  white-space: nowrap;
}

@media (min-width: 900px) {
  .care-v2-reports__cols {
    display: grid;
  }

  .care-v2-reports__row {
    grid-template-columns: minmax(0, 2fr) minmax(100px, 1.2fr) 120px 100px 110px;
  }
}

/* —— Checkout sheet (mockup 14) —— */
.care-patient-step.care-v2-checkout {
  align-items: center;
  justify-content: center;
  background: rgba(15, 23, 42, 0.45);
  padding: 16px;
}

.care-patient-step.care-v2-checkout .care-patient-step__sheet {
  width: min(560px, 100%);
  height: auto;
  max-height: min(92dvh, 900px);
  margin: 0 auto;
  padding: 28px 24px 20px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 64px rgba(15, 23, 42, 0.22);
}

.care-v2-checkout__title {
  margin: 0 0 18px;
  font-size: 0.78rem;
  font-weight: 780;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-v2-ink);
}

.care-v2-checkout__steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 8px;
  gap: 8px;
  margin: 0 0 22px;
  list-style: none;
  padding: 0;
  counter-reset: care-v2-step;
}

.care-v2-checkout__steps li {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  font-size: 0.78rem;
  font-weight: 650;
  color: var(--care-v2-muted);
  text-align: center;
}

.care-v2-checkout__steps li::before {
  counter-increment: care-v2-step;
  content: counter(care-v2-step);
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 2px solid rgba(100, 116, 139, 0.45);
  background: #fff;
  font-size: 0.78rem;
  font-weight: 700;
}

.care-v2-checkout__steps li.is-done {
  color: var(--care-v2-primary);
}

.care-v2-checkout__steps li.is-done::before,
.care-v2-checkout__steps li.is-active::before {
  border-color: var(--care-v2-primary);
  background: var(--care-v2-primary);
  color: #fff;
}

.care-v2-checkout__steps li.is-active {
  color: var(--care-v2-primary);
}

.care-v2-checkout__steps li.is-active::before {
  background: #fff;
  color: var(--care-v2-primary);
}

.care-v2-checkout__section-label {
  margin: 0 0 10px;
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--care-v2-ink);
}

.care-v2-checkout__pick {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 16px;
}

.care-v2-checkout__pick-btn {
  position: relative;
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  padding: 16px 14px;
  border: 1.5px solid rgba(30, 58, 95, 0.14);
  border-radius: 14px;
  background: #fff;
  text-align: start;
  cursor: pointer;
  color: inherit;
  font: inherit;
}

.care-v2-checkout__pick-btn.is-selected {
  border-color: var(--care-v2-primary);
  box-shadow: 0 0 0 1px var(--care-v2-primary);
}

.care-v2-checkout__pick-btn strong {
  font-size: 0.95rem;
  color: var(--care-v2-ink);
}

.care-v2-checkout__pick-btn span {
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-checkout__check {
  position: absolute;
  top: 10px;
  inset-inline-start: 10px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: var(--care-v2-primary);
  color: #fff;
  font-size: 11px;
  display: grid;
  place-items: center;
  line-height: 1;
}

.care-v2-checkout__quote {
  margin: 0 0 16px;
  padding: 16px;
  border-radius: 14px;
  background: var(--care-v2-paper);
}

.care-v2-checkout__quote h3 {
  margin: 0 0 2px;
  font-size: 0.95rem;
  color: var(--care-v2-ink);
}

.care-v2-checkout__quote > p {
  margin: 0 0 12px;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-checkout__secure {
  margin: 10px 0 0;
  text-align: center;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-checkout__brand-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid var(--care-v2-line);
  font-size: 0.75rem;
  color: var(--care-v2-muted);
}

.care-v2-checkout__brand {
  font-weight: 700;
  color: var(--care-v2-navy);
}

@media (max-width: 640px) {
  .care-v2-checkout__pick {
    grid-template-columns: 1fr;
  }

  .care-patient-step.care-v2-checkout {
    padding: 0;
    align-items: stretch;
  }

  .care-patient-step.care-v2-checkout .care-patient-step__sheet {
    width: 100%;
    max-height: none;
    height: 100%;
    border-radius: 0;
  }
}

/* —— Done page (mockup 15) —— */
.care-v2-done {
  position: relative;
  min-height: min(70vh, 720px);
  display: grid;
  place-items: center;
  padding: 48px 20px 56px;
  border-radius: var(--care-v2-radius-lg);
  overflow: hidden;
  text-align: center;
}

.care-v2-done__ambient {
  position: absolute;
  inset: 0;
  /* Never use done-ambient.jpg — it is a UI screenshot and ghosts duplicate text. */
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--care-v2-primary) 8%, #f8fafc), #fff),
    url('/care/design/heroes/appointments-hero.jpg') center / cover no-repeat;
  filter: saturate(0.95);
  pointer-events: none;
  opacity: 0.35;
}

.care-v2-done__inner {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  grid-gap: 14px;
  gap: 14px;
  max-width: 32rem;
}

.care-v2-done__check {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border-radius: 999px;
  background: var(--care-v2-primary);
  color: #fff;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
  box-shadow: 0 12px 28px rgba(37, 99, 235, 0.28);
}

.care-v2-done__title {
  margin: 4px 0 0;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 750;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care-v2-done__lead {
  margin: 0;
  font-size: 1rem;
  line-height: 1.55;
  color: var(--care-v2-ink);
}

.care-v2-done__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  margin-top: 8px;
  padding: 0 22px;
  border-radius: 12px;
  background: var(--care-v2-primary);
  color: #fff;
  font-weight: 700;
  text-decoration: none;
}

.care-v2-done__cta:hover {
  background: #1d4ed8;
}

.care-v2-done__back {
  margin-top: 4px;
  color: var(--care-v2-primary);
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.care-v2-done__foot {
  margin: 18px 0 0;
  font-size: 0.82rem;
  color: var(--care-v2-muted);
}

.care-v2-checkout__quote .care-tax-breakdown__title {
  display: none;
}

.care-v2-checkout__quote .care-tax-breakdown__total dd {
  color: var(--care-v2-primary);
  font-size: 1.15rem;
  font-weight: 780;
}

.care-v2-checkout__quote .care-tax-breakdown {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

/* —— Shared catalog chrome —— */
.care-v2-page {
  background: var(--care-v2-paper);
  min-height: 60vh;
}

.care-v2-page .care-page__body {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 28px 0 64px;
}

.care-v2-eyebrow {
  margin: 0 0 6px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--care-v2-primary);
}

.care-v2-title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care-v2-lead {
  margin: 0 0 20px;
  max-width: 40rem;
  color: var(--care-v2-muted);
  line-height: 1.5;
}

.care-v2-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 12px;
  border: 0;
  background: var(--care-v2-primary);
  color: #fff !important;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.care-v2-btn:hover {
  background: var(--care-v2-navy);
}

.care-v2-btn--ghost {
  background: var(--care-v2-surface);
  color: var(--care-v2-primary) !important;
  border: 1px solid rgba(37, 99, 235, 0.35);
}

.care-v2-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}

.care-v2-pills button,
.care-v2-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
}

.care-v2-pills button.is-active,
.care-v2-pill.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care-v2-searchbar {
  display: flex;
  gap: 10px;
  align-items: stretch;
  margin-bottom: 14px;
}

.care-v2-searchbar__field {
  flex: 1 1;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.care-v2-searchbar__field input {
  flex: 1 1;
  border: 0;
  outline: 0;
  background: transparent;
  font: inherit;
  color: var(--care-v2-ink);
  min-width: 0;
}

.care-v2-searchbar__go {
  width: 52px;
  border-radius: 14px;
  border: 0;
  background: var(--care-v2-primary);
  color: #fff;
  cursor: pointer;
  font-size: 1.15rem;
}

/* —— Search (02) —— */
.care-v2-search-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
}

.care-v2-search-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 14px;
  color: var(--care-v2-muted);
  font-size: 0.92rem;
}

.care-v2-search-meta strong {
  color: var(--care-v2-ink);
}

.care-v2-search-map {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  min-height: 420px;
  border-radius: var(--care-v2-radius-lg);
  overflow: hidden;
  border: 1px solid var(--care-v2-line);
  background: #e8eef5;
}

.care-v2-search-map .care-map-explorer,
.care-v2-search-map .leaflet-container {
  min-height: 420px;
  height: 100%;
}

.care-v2-hit {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-gap: 14px;
  gap: 14px;
  align-items: start;
  padding: 16px;
  margin-bottom: 12px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  text-decoration: none;
  color: inherit;
}

.care-v2-hit strong {
  display: block;
  color: var(--care-v2-ink);
  font-size: 1.05rem;
}

.care-v2-hit em,
.care-v2-hit span {
  color: var(--care-v2-muted);
  font-style: normal;
  font-size: 0.9rem;
}

.care-v2-hit__cta {
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.9rem;
  white-space: nowrap;
}

/* —— Practices directory (03) —— */
.care-v2-practices-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-end;
  margin-bottom: 18px;
}

.care-v2-practices-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
}

.care-v2-practices-tools select,
.care-v2-practices-tools .care-v2-tool {
  min-height: 42px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font: inherit;
  font-weight: 600;
}

.care-v2-practices-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

.care-v2-practice-card {
  display: flex;
  flex-direction: column;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  min-height: 100%;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.care-v2-practice-card:hover {
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.08);
  transform: translateY(-2px);
}

.care-v2-practice-card__photo {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  width: 100%;
  background: #dbeafe;
}

.care-v2-practice-card__body {
  padding: 14px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1 1;
}

.care-v2-practice-card__body strong {
  color: var(--care-v2-navy);
  font-size: 1.02rem;
  line-height: 1.3;
}

.care-v2-practice-card__meta {
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care-v2-practice-card__foot {
  margin-top: auto;
  display: flex;
  justify-content: flex-end;
  color: var(--care-v2-primary);
  font-weight: 700;
}

/* —— Practice detail (04) —— */
.care-v2-practice-hero {
  position: relative;
  min-height: min(48vh, 420px);
  display: flex;
  align-items: flex-end;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(15, 23, 42, 0.15) 0%, rgba(15, 23, 42, 0.72) 100%),
    url('/care/design/heroes/practice-hero.jpg') center / cover no-repeat;
}

.care-v2-practice-hero__stage {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 40px 0 36px;
}

.care-v2-practice-hero__stage h1 {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-weight: 700;
}

.care-v2-practice-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin: 0;
  opacity: 0.95;
}

.care-v2-practice-tabs {
  position: -webkit-sticky;
  position: sticky;
  top: 72px;
  z-index: 5;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  padding: 12px 0;
  background: rgba(255, 255, 255, 0.96);
  border-bottom: 1px solid var(--care-v2-line);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}

.care-v2-practice-tabs a,
.care-v2-practice-tabs button {
  border: 0;
  background: transparent;
  color: var(--care-v2-muted);
  font: inherit;
  font-weight: 600;
  padding: 8px 2px;
  cursor: pointer;
  text-decoration: none;
  border-bottom: 2px solid transparent;
}

.care-v2-practice-tabs a.is-active,
.care-v2-practice-tabs button.is-active {
  color: var(--care-v2-primary);
  border-bottom-color: var(--care-v2-primary);
}

.care-v2-practice-tabs__cta {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}

.care-v2-practice-section {
  padding: 28px 0 8px;
}

.care-v2-service-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.care-v2-service-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 0;
  border-bottom: 1px solid var(--care-v2-line);
  color: var(--care-v2-ink);
  font-weight: 600;
}

.care-v2-service-list li::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary);
  flex: 0 0 auto;
}

.care-v2-doctor-row {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  padding-bottom: 8px;
}

.care-v2-doctor-chip {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 220px;
  padding: 10px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  text-decoration: none;
  color: inherit;
}

.care-v2-doctor-chip img,
.care-v2-doctor-chip .care-avatar {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  object-fit: cover;
}

/* —— Doctors browse (05) —— */
.care-v2-doctors-layout {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care-v2-spec-side {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  padding: 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
}

.care-v2-spec-side__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

.care-v2-spec-side__head strong {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--care-v2-navy);
  white-space: nowrap;
}

.care-v2-spec-side__head .care-link {
  flex: 0 0 auto;
  width: auto;
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  white-space: nowrap;
  cursor: pointer;
}

.care-v2-spec-side button:not(.care-link) {
  width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--care-v2-muted);
  font: inherit;
  text-align: start;
  cursor: pointer;
}

.care-v2-spec-side button.is-active {
  background: #eff6ff;
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care-v2-doctors-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 14px;
  gap: 14px;
}

.care-v2-doctors-grid .care-doc,
.care-v2-doc-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  padding: 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  text-decoration: none;
  color: inherit;
  min-height: 100%;
}

.care-v2-doctors-grid .care-doc .care-avatar,
.care-v2-doc-card .care-avatar {
  width: 104px;
  height: 104px;
}

.care-v2-doctors-grid .care-cta {
  margin-top: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 42px;
  border-radius: 10px;
  background: var(--care-v2-primary);
  color: #fff !important;
  font-weight: 600;
}

.care-v2-doctors-grid .care-cta__full {
  display: none;
}

.care-v2-doctors-grid .care-cta__short {
  display: inline;
}

/* —— Doctor detail (06) —— */
.care-v2-doctor-detail .care-detail {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care-v2-doctor-detail .care-detail-hero {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  padding: 20px;
  gap: 18px;
}

.care-v2-doctor-detail .care-detail-hero .care-avatar--lg {
  width: min(100%, 280px);
  height: auto;
  aspect-ratio: 4 / 5;
  border-radius: 18px;
  object-fit: cover;
}

.care-v2-book-panel {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  padding: 20px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
}

.care-v2-book-panel > h2 {
  margin: 0 0 4px;
  color: var(--care-v2-navy);
  font-size: 1.25rem;
}

.care-v2-book-panel > .care-v2-lead {
  margin-bottom: 14px;
  font-size: 0.92rem;
}

.care-v2-info-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 14px;
  gap: 14px;
  margin-top: 24px;
}

.care-v2-info-card {
  padding: 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
}

.care-v2-info-card strong {
  display: block;
  margin-bottom: 6px;
  color: var(--care-v2-navy);
}

.care-v2-info-card p {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

/* —— Lab (07) —— */
.care-v2-lab-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.95fr);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care-v2-lab-promo {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  border-radius: var(--care-v2-radius-lg);
  overflow: hidden;
  min-height: 480px;
  background:
    linear-gradient(160deg, rgba(30, 58, 95, 0.08), transparent 40%),
    url('/care/design/heroes/practice-hero.jpg') center / cover no-repeat;
}

.care-v2-lab-promo__card {
  margin: 20px;
  padding: 18px;
  max-width: 260px;
  background: var(--care-v2-navy);
  color: #fff;
  border-radius: 16px;
}

.care-v2-lab-promo__card strong {
  display: block;
  margin-bottom: 6px;
  font-size: 1.05rem;
}

.care-v2-lab-promo__card p {
  margin: 0 0 12px;
  opacity: 0.9;
  font-size: 0.9rem;
  line-height: 1.4;
}

.care-v2-lab-promo__card a {
  color: #fff;
  font-weight: 600;
  text-decoration: none;
}

.care-v2-lab-row {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-gap: 12px;
  gap: 12px;
  align-items: center;
  padding: 14px 16px;
  margin-bottom: 10px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
}

.care-v2-lab-row__price {
  text-align: end;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}

.care-v2-lab-row__price strong {
  color: var(--care-v2-ink);
}

.care-v2-add {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 10px;
  border: 0;
  background: var(--care-v2-primary);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
}

.care-v2-add.is-on {
  background: var(--care-v2-navy);
}

/* —— Radiology (08) —— */
.care-v2-rad-hero {
  padding: 48px 0 28px;
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.88), rgba(248, 250, 252, 0.96)),
    url('/care/design/heroes/radiology-hero.jpg') center / cover no-repeat;
}

.care-v2-rad-hero__inner {
  width: min(900px, calc(100% - 32px));
  margin: 0 auto;
  text-align: center;
}

.care-v2-rad-card {
  width: min(900px, calc(100% - 32px));
  margin: -8px auto 48px;
  padding: 24px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.06);
}

.care-v2-rad-row {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  grid-gap: 14px;
  gap: 14px;
  align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid var(--care-v2-line);
}

.care-v2-rad-row:last-child {
  border-bottom: 0;
}

.care-v2-rad-row__meta {
  color: var(--care-v2-muted);
  font-size: 0.88rem;
  text-align: end;
  white-space: nowrap;
}

/* —— Pharmacy (09) —— */
.care-v2-pharmacy .care-page__body {
  width: min(1240px, calc(100% - 32px));
}

.care-v2-pharmacy .care-shop-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
}

.care-v2-pharmacy .care-list--catalog {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 14px;
  gap: 14px;
}

.care-v2-pharmacy .care-list--catalog > .care-doc {
  display: flex;
  flex-direction: column;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  padding: 14px;
  margin: 0;
}

.care-v2-pharmacy .care-btn--cart,
.care-v2-pharmacy .care-cart .care-btn {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
}

.care-v2-pharmacy .care-cart {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  padding: 16px;
}

.care-v2-pharmacy .care-doc__price {
  color: var(--care-v2-primary);
  font-weight: 700;
}

/* —— Near (16) —— */
.care-v2-near-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.75fr);
  grid-gap: 16px;
  gap: 16px;
  min-height: 560px;
}

.care-v2-near-map {
  border-radius: var(--care-v2-radius-lg);
  overflow: hidden;
  border: 1px solid var(--care-v2-line);
  min-height: 520px;
  background: #e8eef5;
}

.care-v2-near-map .leaflet-container,
.care-v2-near-map .care-map-explorer {
  min-height: 520px;
  height: 100%;
}

.care-v2-near-side {
  background: var(--care-v2-paper);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  padding: 16px;
  max-height: 70vh;
  overflow: auto;
}

.care-v2-near-side__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 12px;
}

.care-v2-near-card {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-gap: 12px;
  gap: 12px;
  padding: 12px;
  margin-bottom: 8px;
  border-radius: 12px;
  border: 1px solid transparent;
  background: var(--care-v2-surface);
  text-decoration: none;
  color: inherit;
}

.care-v2-near-card.is-active,
.care-v2-near-card:hover {
  border-color: rgba(37, 99, 235, 0.35);
  box-shadow: inset 3px 0 0 var(--care-v2-primary);
}

.care-v2-near-foot {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-top: 16px;
  padding: 12px 14px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

/* —— Video (17) —— */
.care-v2-video-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.95fr);
  grid-gap: 40px;
  gap: 40px;
  align-items: center;
  width: min(1100px, calc(100% - 32px));
  margin: 0 auto;
  padding: 56px 0 48px;
}

.care-v2-video-hero__photo {
  width: 100%;
  border-radius: 0;
  object-fit: contain;
  aspect-ratio: 4 / 3;
  box-shadow: none;
  background: transparent;
}

.care-v2-video-steps {
  position: relative;
  width: 100%;
  margin: 0 0 72px;
  padding: 36px 0 56px;
  overflow: hidden;
  background:
    radial-gradient(ellipse 55% 70% at 92% 78%, rgba(37, 99, 235, 0.1) 0%, transparent 62%),
    radial-gradient(ellipse 40% 55% at 100% 40%, rgba(37, 99, 235, 0.06) 0%, transparent 55%),
    linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}

.care-v2-video-steps__inner {
  width: min(560px, calc(100% - 32px));
  margin: 0 auto;
  -webkit-margin-start: max(16px, calc((100% - 1100px) / 2));
          margin-inline-start: max(16px, calc((100% - 1100px) / 2));
}

.care-v2-video-steps ol {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  grid-gap: 18px;
  gap: 18px;
}

.care-v2-video-steps li {
  display: grid;
  grid-template-columns: 40px 1fr;
  grid-gap: 14px;
  gap: 14px;
  align-items: start;
}

.care-v2-video-steps li em {
  font-style: normal;
  font-family: var(--care-v2-font-display);
  font-size: 1.85rem;
  font-weight: 700;
  color: var(--care-v2-primary);
  line-height: 1;
}

.care-v2-video-steps li strong {
  display: block;
  color: var(--care-v2-navy);
  margin-bottom: 4px;
  font-size: 1.02rem;
}

.care-v2-video-steps li p {
  margin: 0;
  color: var(--care-v2-muted);
  line-height: 1.45;
  font-size: 0.95rem;
}

/* Hide legacy chrome when v2 page owns the hierarchy */
.care-v2-page .care-page-banner,
.care-v2-page > .care-page-banner,
.care-v2-hide-legacy .care-market-page-hero,
.care-v2-hide-legacy .care-market-shortcuts,
.care-v2-hide-legacy .care-page-intro {
  display: none !important;
}

@media (max-width: 1100px) {
  .care-v2-doctors-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .care-v2-pharmacy .care-list--catalog {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .care-v2-practices-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .care-v2-doctors-layout,
  .care-v2-search-layout,
  .care-v2-lab-layout,
  .care-v2-near-layout,
  .care-v2-doctor-detail .care-detail,
  .care-v2-video-hero,
  .care-v2-pharmacy .care-shop-layout {
    grid-template-columns: 1fr;
  }

  .care-v2-spec-side,
  .care-v2-search-map,
  .care-v2-lab-promo,
  .care-v2-near-map,
  .care-v2-pharmacy .care-cart {
    position: static;
  }
}

@media (max-width: 767px) {
  .care-v2-practices-grid,
  .care-v2-doctors-grid,
  .care-v2-pharmacy .care-list--catalog,
  .care-v2-info-cards {
    grid-template-columns: 1fr;
  }

  .care-v2-rad-row,
  .care-v2-lab-row {
    grid-template-columns: auto 1fr;
  }

  .care-v2-rad-row__meta,
  .care-v2-lab-row__price {
    grid-column: 2;
    text-align: start;
    align-items: flex-start;
  }

  .care-v2-practice-tabs__cta {
    width: 100%;
    -webkit-margin-start: 0;
            margin-inline-start: 0;
  }

  .care-v2-practice-hero {
    min-height: 280px;
  }
}

/* HUB8-NEAR-VIDEO */
.care-v2-near .care-page__body {
  padding-bottom: 28px;
}

.care-v2-near-place {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.95rem;
}

.care-v2-near-place .care-ico {
  width: 1rem;
  height: 1rem;
  color: var(--care-v2-primary);
}

.care-v2-near-filters-btn .care-ico {
  width: 1.05rem;
  height: 1.05rem;
}

.care-v2-near-filters {
  margin-bottom: 16px;
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.care-v2-near-filters .care-v2-searchbar__field {
  margin: 0;
}

.care-v2-near-side__head {
  align-items: center;
}

.care-v2-near-side__sub {
  margin: 2px 0 0;
  font-size: 0.85rem;
  color: var(--care-v2-muted);
}

.care-v2-near-side__head .care-v2-tool {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 0.85rem;
  font-weight: 600;
}

.care-v2-near-list {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-v2-near-card__body {
  min-width: 0;
}

.care-v2-near-card__body strong {
  display: block;
  color: var(--care-v2-navy);
  font-size: 0.98rem;
}

.care-v2-near-card__spec {
  display: block;
  margin-top: 2px;
  color: var(--care-v2-muted);
  font-style: normal;
  font-size: 0.88rem;
  line-height: 1.35;
}

.care-v2-near-card__meta {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 6px;
  color: var(--care-v2-muted);
  font-size: 0.85rem;
}

.care-v2-near-card__meta .care-ico {
  width: 0.9rem;
  height: 0.9rem;
  color: var(--care-v2-primary);
  flex-shrink: 0;
}

.care-v2-near-card__aside {
  display: grid;
  justify-items: end;
  align-content: start;
  grid-gap: 6px;
  gap: 6px;
  text-align: end;
}

.care-v2-near-card__chev {
  color: var(--care-v2-primary);
  font-weight: 700;
  line-height: 1;
}

.care-v2-near-foot__note {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 280px;
}

.care-v2-near-foot__note .care-ico,
.care-v2-near-foot .care-v2-btn .care-ico {
  width: 1.05rem;
  height: 1.05rem;
  flex-shrink: 0;
}

.care-v2-near-foot__note .care-ico {
  color: var(--care-v2-primary);
}

.care-v2-video .care-page__body {
  padding-top: 0;
  padding-bottom: 0;
}

.care-v2-video-hero__copy {
  max-width: 34rem;
}

.care-v2-video-hero .care-v2-title {
  font-size: clamp(2rem, 3.4vw, 2.55rem);
}

.care-v2-video-hero .care-v2-lead {
  max-width: 32rem;
  font-size: 1.02rem;
}

.care-v2-video-hero .care-v2-btn {
  margin-top: 4px;
}

.care-v2-video-steps__title {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.4rem, 2.5vw, 1.75rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care-v2-video-steps ol {
  gap: 0;
}

.care-v2-video-steps li {
  padding: 18px 0;
  border-bottom: 1px solid var(--care-v2-line);
}

.care-v2-video-steps li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.care-v2-video-steps li:first-child {
  padding-top: 8px;
}

[dir='rtl'] .care-v2-video-steps__inner {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  -webkit-margin-end: max(16px, calc((100% - 1100px) / 2));
          margin-inline-end: max(16px, calc((100% - 1100px) / 2));
}

[dir='rtl'] .care-v2-video-steps {
  background:
    radial-gradient(ellipse 55% 70% at 8% 78%, rgba(37, 99, 235, 0.1) 0%, transparent 62%),
    radial-gradient(ellipse 40% 55% at 0% 40%, rgba(37, 99, 235, 0.06) 0%, transparent 55%),
    linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}

@media (max-width: 900px) {
  .care-v2-near-foot {
    flex-direction: column;
    align-items: stretch;
    text-align: center;
  }

  .care-v2-near-foot__note {
    max-width: none;
    justify-content: center;
  }

  .care-v2-video-hero {
    padding-top: 28px;
    gap: 24px;
  }

  .care-v2-video-hero__photo {
    order: -1;
  }

  .care-v2-video-steps__inner {
    margin-inline: auto;
    width: min(560px, calc(100% - 32px));
  }

  .care-v2-video-steps {
    padding: 28px 0 48px;
  }
}

/* HUB5-LAB */
.care-v2-lab .care-v2-lab-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, 0.95fr);
  grid-gap: 28px;
  gap: 28px;
  align-items: start;
}

.care-v2-lab .care-v2-title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 2.4vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care-v2-lab .care-v2-lead {
  margin: 0 0 18px;
  max-width: 36rem;
  color: var(--care-v2-muted);
  font-size: 0.98rem;
  line-height: 1.5;
}

.care-v2-lab .care-v2-lab-search {
  margin: 14px 0 14px;
}

.care-v2-lab .care-v2-lab-search .care-v2-searchbar__field {
  flex: 1 1;
  width: 100%;
  min-height: 48px;
  border-radius: 14px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.care-v2-lab .care-v2-lab-cats {
  margin: 0 0 18px;
}

.care-v2-lab .care-v2-lab-cats button {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  font-family: var(--care-v2-font);
}

.care-v2-lab .care-v2-lab-cats button svg {
  flex: 0 0 auto;
}

.care-v2-lab .care-v2-lab-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.care-v2-lab .care-v2-lab-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  grid-gap: 14px 16px;
  gap: 14px 16px;
  align-items: center;
  padding: 14px 16px;
  margin: 0;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.care-v2-lab .care-v2-lab-row.is-on {
  border-color: rgba(37, 99, 235, 0.45);
  box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12);
}

.care-v2-lab .care-v2-lab-row__ico {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: rgba(37, 99, 235, 0.1);
  color: var(--care-v2-primary);
}

.care-v2-lab .care-v2-lab-row__body {
  min-width: 0;
}

.care-v2-lab .care-v2-lab-row__body strong {
  display: block;
  color: var(--care-v2-ink);
  font-size: 0.98rem;
  font-weight: 650;
  line-height: 1.3;
}

.care-v2-lab .care-v2-lab-row__blurb {
  display: block;
  margin-top: 3px;
  color: var(--care-v2-muted);
  font-size: 0.86rem;
  line-height: 1.4;
}

.care-v2-lab .care-v2-lab-row__prep {
  margin-top: 10px;
}

.care-v2-lab .care-v2-lab-row__prep-link {
  display: inline-block;
  margin-top: 6px;
  font-size: 0.84rem;
}

.care-v2-lab .care-v2-lab-row__turn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
  white-space: nowrap;
}

.care-v2-lab .care-v2-lab-row__turn--empty {
  min-width: 0;
}

.care-v2-lab .care-v2-lab-row__price {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  text-align: end;
}

.care-v2-lab .care-v2-lab-row__price strong {
  min-width: 4.5rem;
  color: var(--care-v2-ink);
  font-size: 0.95rem;
  font-weight: 700;
  white-space: nowrap;
}

.care-v2-lab .care-v2-add {
  min-height: 36px;
  padding: 0 14px;
  border-radius: 10px;
  border: 0;
  background: var(--care-v2-primary);
  color: #fff;
  font-family: var(--care-v2-font);
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  white-space: nowrap;
}

.care-v2-lab .care-v2-add.is-on {
  background: var(--care-v2-navy);
}

.care-v2-lab .care-v2-lab-note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 18px 0 0;
  color: var(--care-v2-muted);
  font-size: 0.86rem;
  line-height: 1.45;
}

.care-v2-lab .care-v2-lab-note svg {
  flex: 0 0 auto;
  margin-top: 2px;
  color: var(--care-v2-primary);
}

.care-v2-lab .care-v2-lab-promo {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  min-height: 520px;
  border-radius: 0 0 0 72px;
  overflow: hidden;
  background:
    linear-gradient(145deg, rgba(248, 250, 252, 0.2), rgba(248, 250, 252, 0.05) 35%),
    url('/care/design/heroes/lab-hero.jpg') center 28% / cover no-repeat,
    #e8eef5;
}

.care-v2-lab .care-v2-lab-promo__card {
  margin: 22px;
  padding: 18px 18px 16px;
  max-width: 270px;
  background: var(--care-v2-navy);
  color: #fff;
  border-radius: 18px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.18);
}

.care-v2-lab .care-v2-lab-promo__home {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: rgba(147, 197, 253, 0.28);
  color: #dbeafe;
}

.care-v2-lab .care-v2-lab-promo__home svg {
  width: 20px;
  height: 20px;
}

.care-v2-lab .care-v2-lab-promo__card strong {
  display: block;
  margin-bottom: 6px;
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.25;
}

.care-v2-lab .care-v2-lab-promo__card p {
  margin: 0 0 14px;
  opacity: 0.92;
  font-size: 0.9rem;
  line-height: 1.45;
}

.care-v2-lab .care-v2-lab-promo__cta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #fff;
  font-family: var(--care-v2-font);
  font-weight: 650;
  font-size: 0.92rem;
  cursor: pointer;
}

.care-v2-lab .care-v2-lab-promo__cta:hover {
  text-decoration: underline;
}

@media (max-width: 900px) {
  .care-v2-lab .care-v2-lab-layout {
    grid-template-columns: 1fr;
  }

  .care-v2-lab .care-v2-lab-promo {
    position: static;
    min-height: 320px;
    border-radius: 24px;
  }
}

@media (max-width: 767px) {
  .care-v2-lab .care-v2-lab-row {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .care-v2-lab .care-v2-lab-row__turn,
  .care-v2-lab .care-v2-lab-row__price {
    grid-column: 2;
    justify-self: start;
    text-align: start;
  }

  .care-v2-lab .care-v2-lab-row__price {
    width: 100%;
    justify-content: space-between;
  }

  .care-v2-lab .care-v2-lab-promo {
    border-radius: 20px;
    min-height: 260px;
  }
}

/* HUB2-SEARCH — CareSearchPage (mockup 02). Append-only; do not edit above. */
.care-search-page {
  --care-search-primary: var(--care-v2-primary, #0F6CBD);
  --care-search-navy: var(--care-v2-navy, #0F172A);
  --care-search-ink: var(--care-v2-ink, #0f172a);
  --care-search-muted: var(--care-v2-muted, #64748b);
  --care-search-line: var(--care-v2-line, rgba(30, 58, 95, 0.1));
  --care-search-surface: var(--care-v2-surface, #ffffff);
  --care-search-paper: var(--care-v2-paper, #f8fafc);
  background: var(--care-search-paper);
}

.care-search-page .care-page__body {
  width: min(1200px, calc(100% - 40px));
  margin: 0 auto;
  padding: 20px 0 48px;
}

.care-search-page__toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 10px;
  margin-bottom: 14px;
}

.care-search-page__field {
  flex: 1 1 280px;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 16px;
  background: var(--care-search-surface);
  border: 1px solid var(--care-search-line);
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.care-search-page__field .care-ico,
.care-search-page__field .care-ico--art {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  color: var(--care-search-muted);
  opacity: 0.85;
}

.care-search-page__field input {
  flex: 1 1;
  border: 0;
  outline: 0;
  background: transparent;
  font: inherit;
  font-size: 1rem;
  color: var(--care-search-ink);
  min-width: 0;
}

.care-search-page__clear {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 999px;
  background: rgba(30, 58, 95, 0.08);
  color: var(--care-search-muted);
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
}

.care-search-page__go {
  width: 52px;
  flex: 0 0 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 14px;
  background: var(--care-search-primary);
  color: #fff;
  cursor: pointer;
}

.care-search-page__go .care-ico,
.care-search-page__go .care-ico--art {
  width: 22px;
  height: 22px;
  color: #fff;
  filter: brightness(0) invert(1);
}

.care-search-page__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 16px;
  border-radius: 14px;
  border: 1px solid var(--care-search-line);
  background: var(--care-search-surface);
  color: var(--care-search-navy);
  font-weight: 600;
  font-size: 0.92rem;
  cursor: pointer;
  white-space: nowrap;
}

.care-search-page__more.is-active,
.care-search-page__more:hover {
  border-color: rgba(37, 99, 235, 0.45);
  color: var(--care-search-primary);
}

.care-search-page__more-ico {
  width: 18px;
  height: 18px;
}

.care-search-page__more-panel {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: -4px 0 14px;
  padding: 12px 14px;
  background: var(--care-search-surface);
  border: 1px solid var(--care-search-line);
  border-radius: 14px;
}

.care-search-page__more-panel button {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--care-search-line);
  background: var(--care-search-paper);
  color: var(--care-search-navy);
  font-weight: 600;
  font-size: 0.86rem;
  cursor: pointer;
}

.care-search-page__more-panel button.is-active {
  background: rgba(37, 99, 235, 0.1);
  border-color: rgba(37, 99, 235, 0.4);
  color: var(--care-search-primary);
}

.care-search-page__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}

.care-search-page__chips > button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--care-search-line);
  background: var(--care-search-surface);
  color: var(--care-search-navy);
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
}

.care-search-page__chips > button.is-active {
  background: #fff;
  border-color: var(--care-search-primary);
  color: var(--care-search-primary);
  box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12);
}

.care-search-page__chip-ico {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.care-search-page__chev {
  font-size: 0.7rem;
  opacity: 0.7;
  -webkit-margin-start: 2px;
          margin-inline-start: 2px;
}

.care-search-page__idle {
  padding: 8px 0 24px;
}

.care-search-page__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.9fr);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
}

.care-search-page__layout--solo {
  grid-template-columns: 1fr;
}

.care-search-page__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 10px 16px;
  margin-bottom: 14px;
}

.care-search-page__meta-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  color: var(--care-search-ink);
  font-size: 0.95rem;
  font-weight: 600;
}

.care-search-page__meta-range {
  color: var(--care-search-muted);
  font-weight: 500;
  font-size: 0.88rem;
}

.care-search-page__sort select {
  min-height: 38px;
  padding: 0 32px 0 12px;
  border-radius: 10px;
  border: 1px solid var(--care-search-line);
  background: var(--care-search-surface);
  color: var(--care-search-navy);
  font: inherit;
  font-weight: 600;
  font-size: 0.88rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, currentColor 50%),
    linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position:
    calc(100% - 16px) 55%,
    calc(100% - 11px) 55%;
  background-size:
    5px 5px,
    5px 5px;
  background-repeat: no-repeat;
  cursor: pointer;
}

.care-search-page__group {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.care-search-page__hit {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-gap: 12px;
  gap: 12px;
  align-items: stretch;
  padding: 16px 18px;
  background: var(--care-search-surface);
  border: 1px solid var(--care-search-line);
  border-radius: 14px;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.035);
}

.care-search-page__hit-main {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  grid-gap: 14px;
  gap: 14px;
  align-items: start;
  text-decoration: none;
  color: inherit;
  min-width: 0;
}

.care-search-page__avatar {
  width: 72px !important;
  height: 72px !important;
  border-radius: 999px !important;
  object-fit: cover;
  background: #e8eef5;
}

.care-search-page__hit-body {
  min-width: 0;
}

.care-search-page__hit-name {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 2px;
  font-family: var(--care-v2-font-display, 'Sora', system-ui, sans-serif);
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-search-primary);
  line-height: 1.25;
}

.care-search-page__verified {
  display: inline-flex;
  color: var(--care-search-primary);
  width: 16px;
  height: 16px;
}

.care-search-page__verified svg {
  width: 16px;
  height: 16px;
}

.care-search-page__hit-title,
.care-search-page__hit-quals {
  margin: 0;
  color: var(--care-search-muted);
  font-size: 0.88rem;
  line-height: 1.4;
}

.care-search-page__hit-quals {
  margin-top: 2px;
}

.care-search-page__hit-stats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  margin-top: 8px;
  color: var(--care-search-muted);
  font-size: 0.86rem;
}

.care-search-page__hit-stats .care-rating {
  margin: 0;
}

.care-search-page__hit-dist {
  font-weight: 600;
  color: var(--care-search-navy);
}

.care-search-page__open {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #15803d;
  font-weight: 600;
}

.care-search-page__open i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #22c55e;
}

.care-search-page__hit-place {
  color: var(--care-search-muted);
}

.care-search-page__hit-fee {
  width: 100%;
  color: var(--care-search-ink);
  font-weight: 600;
}

.care-search-page__hit-aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  min-width: 96px;
}

.care-search-page__bookmark {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--care-search-muted);
  cursor: pointer;
}

.care-search-page__bookmark:hover,
.care-search-page__bookmark.is-on {
  color: var(--care-search-primary);
  background: rgba(37, 99, 235, 0.08);
}

.care-search-page__bookmark svg {
  width: 20px;
  height: 20px;
}

.care-search-page__view {
  color: var(--care-search-primary);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  white-space: nowrap;
}

.care-search-page__view:hover {
  text-decoration: underline;
}

.care-search-page__catalog {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-gap: 14px;
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
  background: var(--care-search-surface);
  border: 1px solid var(--care-search-line);
  border-radius: 14px;
  text-decoration: none;
  color: inherit;
}

.care-search-page__catalog strong {
  display: block;
  color: var(--care-search-ink);
  font-size: 0.98rem;
}

.care-search-page__catalog em {
  display: block;
  margin-top: 2px;
  font-style: normal;
  color: var(--care-search-muted);
  font-size: 0.86rem;
}

.care-search-page__see-all {
  align-self: flex-start;
  margin-top: 4px;
  color: var(--care-search-primary);
  font-weight: 600;
  text-decoration: none;
}

.care-search-page__map {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  min-height: 520px;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid var(--care-search-line);
  background: #e8eef5;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
}

.care-search-page__map .care-map-explorer,
.care-search-page__map .leaflet-container {
  min-height: 520px;
  height: 100%;
}

@media (max-width: 900px) {
  .care-search-page__layout {
    grid-template-columns: 1fr;
  }

  .care-search-page__map {
    position: static;
    min-height: 320px;
    order: -1;
  }

  .care-search-page__map .care-map-explorer,
  .care-search-page__map .leaflet-container {
    min-height: 320px;
  }
}

@media (max-width: 640px) {
  .care-search-page .care-page__body {
    width: calc(100% - 24px);
    padding-top: 12px;
  }

  .care-search-page__more {
    flex: 1 1 100%;
  }

  .care-search-page__hit {
    grid-template-columns: 1fr;
  }

  .care-search-page__hit-main {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .care-search-page__avatar {
    width: 64px !important;
    height: 64px !important;
  }

  .care-search-page__hit-aside {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
  }
}

/* HUB3-PRACTICES — mockups 03 directory + 04 detail (overrides earlier v2 practices block) */

.care-v2-practices .care-page__body,
.care-v2-practice-detail .care-page__body {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 32px 0 72px;
}

.care-v2-practices {
  background: var(--care-v2-paper);
}

.care-v2-practices-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px 28px;
  margin-bottom: 22px;
}

.care-v2-practices-head .care-v2-title {
  margin-bottom: 6px;
}

.care-v2-practices-head .care-v2-lead {
  margin: 0;
  max-width: 36rem;
}

.care-v2-practices-all {
  flex: 0 0 auto;
  margin-top: 6px;
  color: var(--care-v2-primary);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}

.care-v2-practices-all:hover {
  text-decoration: underline;
}

.care-v2-practices-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 28px;
  align-items: stretch;
}

.care-v2-tool-pill {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 8px 14px;
  border-radius: 14px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04);
}

.care-v2-tool-pill .care-ico {
  width: 20px;
  height: 20px;
  color: var(--care-v2-muted);
  flex: 0 0 auto;
}

.care-v2-tool-pill__copy {
  display: flex;
  flex-direction: column;
  gap: 1px;
  line-height: 1.2;
  min-width: 0;
}

.care-v2-tool-pill__copy em {
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--care-v2-muted);
}

.care-v2-tool-pill__copy strong {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--care-v2-ink);
}

.care-v2-tool-pill--select {
  -webkit-padding-end: 28px;
          padding-inline-end: 28px;
}

.care-v2-tool-pill--select::after {
  content: '';
  position: absolute;
  right: 14px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-right: 2px solid var(--care-v2-muted);
  border-bottom: 2px solid var(--care-v2-muted);
  transform: translateY(-60%) rotate(45deg);
  pointer-events: none;
}

.care-v2-tool-pill--select select {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
  width: 100%;
  height: 100%;
  border: 0;
  background: transparent;
}

.care-v2-tool-pill--map {
  gap: 12px;
  font-weight: 600;
  color: var(--care-v2-navy);
}

.care-v2-tool-pill__rule {
  width: 1px;
  align-self: stretch;
  margin: 6px 0;
  background: var(--care-v2-line);
}

.care-v2-switch {
  width: 44px;
  height: 26px;
  padding: 3px;
  border: 0;
  border-radius: 999px;
  background: #cbd5e1;
  cursor: pointer;
  flex: 0 0 auto;
  transition: background 0.2s ease;
}

.care-v2-switch.is-on {
  background: var(--care-v2-primary);
}

.care-v2-switch__knob {
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.2);
  transition: transform 0.2s ease;
}

.care-v2-switch.is-on .care-v2-switch__knob {
  transform: translateX(18px);
}

.care-v2-tool-pill--search {
  flex: 1 1 180px;
  min-width: 160px;
  padding: 0 14px;
}

.care-v2-tool-pill--search input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  font: inherit;
  color: var(--care-v2-ink);
  min-height: 36px;
}

.care-v2-tool-pill--hours {
  min-width: 120px;
}

.care-v2-practices-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 20px;
  gap: 20px;
}

.care-v2-practice-card {
  display: flex;
  flex-direction: column;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 18px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  min-height: 100%;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.care-v2-practice-card:hover {
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.1);
  transform: translateY(-2px);
}

.care-v2-practice-card__photo {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  width: 100%;
  background: #dbeafe;
}

.care-v2-practice-card__body {
  position: relative;
  padding: 16px 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1 1;
}

.care-v2-practice-card__name {
  color: var(--care-v2-ink);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.care-v2-practice-card__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
}

.care-v2-practice-card__fact {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--care-v2-muted);
  font-size: 0.86rem;
}

.care-v2-practice-card__fact .care-ico {
  width: 15px;
  height: 15px;
  color: var(--care-v2-muted);
}

.care-v2-practice-card__specs {
  margin: 0;
  padding-top: 10px;
  border-top: 1px solid var(--care-v2-line);
  color: var(--care-v2-muted);
  font-size: 0.84rem;
  line-height: 1.45;
  -webkit-padding-end: 22px;
          padding-inline-end: 22px;
}

.care-v2-practice-card__foot {
  position: absolute;
  right: 14px;
  bottom: 14px;
  color: #94a3b8;
  font-size: 1.15rem;
  font-weight: 500;
  line-height: 1;
}

.care-v2-practices .care-infinite-footer,
.care-v2-practices .care-list-foot {
  margin-top: 24px;
}

/* —— Practice detail (04) —— */
.care-v2-practice-detail {
  background: var(--care-v2-paper);
}

.care-v2-practice-hero {
  position: relative;
  isolation: isolate;
  min-height: min(52vh, 460px);
  display: flex;
  align-items: flex-end;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(15, 23, 42, 0.08) 0%, rgba(15, 23, 42, 0.55) 55%, rgba(15, 23, 42, 0.78) 100%),
    url('/care/design/heroes/practice-hero.jpg') center / cover no-repeat;
}

.care-v2-practice-hero__stage {
  position: relative;
  z-index: 1;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 48px 0 40px;
}

.care-v2-practice-hero__stage h1 {
  margin: 0 0 12px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(2rem, 4.2vw, 2.85rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.1;
  text-shadow: 0 8px 28px rgba(15, 23, 42, 0.35);
}

.care-v2-practice-hero__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
}

.care-v2-practice-hero__loc {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 1rem;
  font-weight: 500;
  opacity: 0.96;
}

.care-v2-practice-hero__loc .care-ico {
  width: 18px;
  height: 18px;
  color: #fff;
}

.care-v2-practice-hero__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.95rem;
}

.care-v2-practice-hero__status strong {
  font-weight: 600;
}

.care-v2-practice-hero__status em {
  font-style: normal;
  opacity: 0.78;
  font-weight: 500;
}

.care-v2-practice-hero__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 0 4px rgba(74, 222, 128, 0.22);
  flex: 0 0 auto;
}

.care-v2-practice-tabs-wrap {
  position: -webkit-sticky;
  position: sticky;
  top: 64px;
  z-index: 8;
  background: rgba(255, 255, 255, 0.97);
  border-bottom: 1px solid var(--care-v2-line);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.care--phone .care-v2-practice-tabs-wrap {
  top: 0;
}

.care-v2-practice-detail .care-v2-practice-tabs {
  position: static;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 0;
  min-height: 64px;
  background: transparent;
  border: 0;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
  gap: 4px 28px;
}

.care-v2-practice-detail .care-v2-practice-tabs a:not(.care-v2-btn),
.care-v2-practice-detail .care-v2-practice-tabs button:not(.care-v2-btn) {
  min-height: 64px;
  display: inline-flex;
  align-items: center;
  padding: 0 2px;
  color: var(--care-v2-ink);
  font-weight: 600;
  border-bottom: 3px solid transparent;
}

.care-v2-practice-detail .care-v2-practice-tabs a.is-active {
  color: var(--care-v2-primary);
  border-bottom-color: var(--care-v2-primary);
}

.care-v2-practice-detail .care-v2-practice-tabs__cta {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  min-height: 44px;
  padding: 0 18px;
  border-bottom: 0 !important;
  border-radius: 12px;
}

.care-v2-practice-detail .care-v2-practice-tabs__cta .care-ico {
  width: 18px;
  height: 18px;
  color: #fff;
}

.care-v2-practice-crumb {
  margin: 0 0 8px;
  font-size: 0.85rem;
  color: var(--care-v2-muted);
}

.care-v2-practice-section {
  padding: 28px 0 24px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care-v2-practice-section:last-child {
  border-bottom: 0;
}

.care-v2-practice-section__title {
  margin: 0 0 10px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.45rem, 2.4vw, 1.85rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care-v2-practice-section__lead {
  margin: 0;
  max-width: 46rem;
  color: var(--care-v2-muted);
  line-height: 1.6;
  font-size: 1rem;
}

.care-v2-service-list {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}

.care-v2-service-list li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 0;
  border-bottom: 1px solid var(--care-v2-line);
  color: var(--care-v2-ink);
  font-weight: 600;
}

.care-v2-service-list li:last-child {
  border-bottom: 0;
}

.care-v2-service-list li::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary);
  flex: 0 0 auto;
}

.care-v2-service-list li button {
  border: 0;
  background: transparent;
  padding: 0;
  font: inherit;
  font-weight: 600;
  color: inherit;
  cursor: pointer;
  text-align: start;
}

.care-v2-service-list li button:hover {
  color: var(--care-v2-primary);
}

.care-v2-practice-doctors-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  margin-bottom: 16px;
}

.care-v2-practice-doctors-head .care-v2-practice-section__title {
  margin: 0;
}

.care-v2-practice-doctors-head .care-v2-btn--ghost {
  min-height: 42px;
}

.care-v2-doctor-row {
  display: flex;
  gap: 14px;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: thin;
}

.care-v2-doctor-chip {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 230px;
  max-width: 280px;
  padding: 12px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 16px;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
}

.care-v2-doctor-chip img,
.care-v2-doctor-chip .care-avatar {
  width: 80px;
  height: 80px;
  border-radius: 14px;
  object-fit: cover;
  flex: 0 0 auto;
}

.care-v2-doctor-chip strong {
  display: block;
  color: var(--care-v2-ink);
  font-size: 0.95rem;
  line-height: 1.25;
}

.care-v2-doctor-chip em {
  display: block;
  margin-top: 3px;
  color: var(--care-v2-muted);
  font-style: normal;
  font-size: 0.86rem;
}

.care-v2-practice-book {
  border-bottom: 0;
}

.care-v2-practice-book .care-service-tiles {
  margin-top: 18px;
}

.care-v2-practice-book__hint {
  margin: 20px 0 0;
}

.care-v2-practice-shelf {
  border-bottom: 1px solid var(--care-v2-line);
}

@media (max-width: 900px) {
  .care-v2-practices-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .care-v2-practice-detail .care-v2-practice-tabs__cta {
    width: auto;
  }
}

@media (max-width: 767px) {
  .care-v2-practices-grid {
    grid-template-columns: 1fr;
  }

  .care-v2-practices-head {
    flex-direction: column;
    align-items: stretch;
  }

  .care-v2-tool-pill--search,
  .care-v2-tool-pill--hours {
    flex: 1 1 100%;
  }

  .care-v2-practice-hero {
    min-height: 300px;
  }

  .care-v2-practice-detail .care-v2-practice-tabs {
    gap: 4px 16px;
    overflow-x: auto;
  }

  .care-v2-practice-detail .care-v2-practice-tabs a:not(.care-v2-btn) {
    min-height: 52px;
    white-space: nowrap;
  }

  .care-v2-practice-detail .care-v2-practice-tabs__cta {
    width: 100%;
    margin: 8px 0 12px;
    order: 99;
  }

  .care-v2-practice-doctors-head {
    align-items: stretch;
  }

  .care-v2-practice-doctors-head .care-v2-btn--ghost {
    width: 100%;
  }
}

/* HUB9-AUTH-DONE — login 10 + checkout 14 + done 15 (overrides earlier v2 blocks) */

.care-v2-login__brand {
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.28), rgba(248, 250, 252, 0.62)),
    url('/care/design/heroes/clinic-lounge.jpg') center / cover no-repeat;
}

.care-v2-login__brand-row {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.care-v2-login__plus {
  width: 44px;
  height: 44px;
  border-radius: 0;
  background: transparent;
  color: var(--care-v2-primary);
  display: grid;
  place-items: center;
}

.care-v2-login__plus-svg {
  width: 36px;
  height: 36px;
}

.care-v2-login__brand-mark {
  color: var(--care-v2-navy);
  font-size: clamp(1.9rem, 3.2vw, 2.45rem);
}

.care-v2-login__brand-mark span {
  color: var(--care-v2-primary);
}

.care-v2-login__tag {
  color: var(--care-v2-navy);
  opacity: 0.78;
  letter-spacing: 0.18em;
}

.care-v2-login__panel {
  align-items: center;
  text-align: center;
}

.care-v2-login__title {
  text-align: center;
}

.care-v2-login__title::after {
  margin-inline: auto;
}

.care-v2-login__lead {
  max-width: 28rem;
  margin-inline: auto;
}

.care-v2-login__form {
  width: min(420px, 100%);
  margin-inline: auto;
  text-align: start;
}

.care-v2-login__field--bare > span.care-v2-login__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.care-v2-login__dial {
  display: none;
}

.care-v2-login__footer {
  width: min(420px, 100%);
  margin-inline: auto;
}

.care-patient-step.care-v2-checkout .care-patient-step__layout {
  display: grid;
  grid-template-columns: 1fr;
  max-width: none;
  margin: 0;
  grid-gap: 18px;
  gap: 18px;
}

.care-patient-step.care-v2-checkout .care-patient-step__main,
.care-patient-step.care-v2-checkout .care-patient-step__summary {
  background: transparent;
  padding: 0;
  box-shadow: none;
}

.care-v2-checkout__section {
  margin-bottom: 4px;
}

.care-v2-checkout__section-title {
  margin: 0 0 4px;
  font-size: 1.05rem;
  font-weight: 750;
  color: var(--care-v2-ink);
}

.care-v2-checkout__section-label {
  margin: 0 0 12px;
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--care-v2-muted);
}

.care-v2-checkout__pick-btn {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  grid-gap: 10px 12px;
  gap: 10px 12px;
  padding: 18px 16px 16px;
  background: #fff;
}

.care-v2-checkout__pick-btn.is-selected {
  background: rgba(37, 99, 235, 0.06);
  border-color: var(--care-v2-primary);
  box-shadow: 0 0 0 1px var(--care-v2-primary);
}

.care-v2-checkout__pick-btn.is-selected .care-v2-checkout__person,
.care-v2-checkout__pick-btn.is-selected strong {
  color: var(--care-v2-primary);
}

.care-v2-checkout__person {
  width: 28px;
  height: 28px;
  color: var(--care-v2-muted);
  grid-row: 1 / span 2;
}

.care-v2-checkout__pick-copy {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  text-align: start;
}

.care-v2-checkout__pick-copy strong {
  font-size: 0.95rem;
  color: var(--care-v2-ink);
}

.care-v2-checkout__pick-copy span {
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-checkout__check {
  top: 8px;
  inset-inline-start: 8px;
}

.care-v2-checkout__quote .care-tax-breakdown__hint,
.care-v2-checkout__fees {
  margin: 8px 0 0;
  font-size: 0.75rem;
  color: var(--care-v2-muted);
}

.care-v2-checkout__quote .care-tax-breakdown__total dt {
  font-weight: 750;
}

.care-v2-checkout__footer {
  display: grid;
  grid-gap: 0;
  gap: 0;
  border-top: 0;
  padding-top: 4px;
}

.care-v2-checkout__pay {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 50px;
  border-radius: 12px;
  background: var(--care-v2-primary);
  color: #fff;
  font-weight: 700;
}

.care-v2-checkout__brand span {
  color: var(--care-v2-primary);
}

.care-page:has(> .care-page__body .care-v2-done),
.care-page:has(.care-v2-done) {
  background: transparent;
}

.care-page:has(.care-v2-done) .care-page__body {
  padding: 0;
  max-width: none;
}

.care-v2-done {
  position: relative;
  isolation: isolate;
  min-height: calc(100dvh - 72px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px 20px 28px;
  border-radius: 0;
  overflow: hidden;
  text-align: center;
}

.care-v2-done__ambient {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--care-v2-primary) 10%, #f8fafc), rgba(255, 255, 255, 0.9)),
    url('/care/design/heroes/appointments-hero.jpg') center / cover no-repeat;
  filter: saturate(0.92);
  transform: none;
  opacity: 0.32;
}

.care-v2-done__inner {
  gap: 16px;
}

.care-v2-done__check {
  width: 72px;
  height: 72px;
  background: #fff;
  color: var(--care-v2-primary);
  box-shadow:
    0 0 0 10px rgba(37, 99, 235, 0.1),
    0 12px 28px rgba(37, 99, 235, 0.16);
}

.care-v2-done__lead {
  color: var(--care-v2-muted);
  max-width: 28rem;
}

.care-v2-done__back {
  color: var(--care-v2-navy);
  font-weight: 650;
}

.care-v2-done__foot {
  position: relative;
  z-index: 1;
  margin-top: auto;
  padding-top: 36px;
}

@media (max-width: 900px) {
  .care-v2-login__brand-row {
    flex-direction: column;
    gap: 8px;
  }
}

/* HUB9-AUTH-DONE */

/* HUB4-DOCTORS */
/* Doctors browse (05) + doctor detail (06) — additive overrides */

.care-v2-doc__head {
  display: contents;
}

.care-v2-doc__avail {
  display: none;
}

.care-list--directory .care-v2-doc,
.care-v2-search-page .care-v2-doc,
.care-v2-near-page .care-v2-doc,
.care-smart-search .care-v2-doc {
  grid-template-columns: minmax(0, 1fr) auto;
}

.care-list--directory .care-v2-doc__head,
.care-v2-search-page .care-v2-doc__head,
.care-v2-near-page .care-v2-doc__head,
.care-smart-search .care-v2-doc__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-gap: 16px;
  gap: 16px;
  align-items: start;
  min-width: 0;
}

.care-list--directory .care-v2-doc__avail,
.care-v2-search-page .care-v2-doc__avail,
.care-v2-near-page .care-v2-doc__avail,
.care-smart-search .care-v2-doc__avail,
.care-list--directory .care-v2-doc__years,
.care-v2-search-page .care-v2-doc__years,
.care-v2-near-page .care-v2-doc__years,
.care-smart-search .care-v2-doc__years {
  display: none;
}

.care-v2-doctors-page .care-v2-doctors-layout {
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 28px;
}

.care-v2-doctors-page .care-v2-spec-side {
  padding: 18px 14px;
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
}

.care-v2-doctors-page .care-v2-spec-side__head {
  padding: 0 6px 4px;
}

.care-v2-doctors-page .care-v2-spec-side button:not(.care-link) {
  padding: 11px 12px;
  border-radius: 12px;
  font-size: 0.92rem;
}

.care-v2-doctors-page .care-v2-spec-side button.is-active {
  background: #eff6ff;
  color: var(--care-v2-primary);
}

.care-v2-doctors-page .care-v2-spec-side__clear {
  display: inline-flex;
  margin: 14px 6px 0;
  width: auto;
  padding: 0;
  justify-content: flex-start;
  color: var(--care-v2-primary);
  background: transparent;
}

.care-v2-doctors-main .care-v2-title {
  margin: 0 0 6px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 2.4vw, 2.15rem);
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care-v2-doctors-main .care-v2-lead {
  margin: 0 0 18px;
  max-width: 42rem;
  color: var(--care-v2-muted);
}

.care-v2-doctors-tools .care-filterbar {
  margin-bottom: 8px;
}

.care-v2-doctors-tools .care-filterbar__search {
  width: 100%;
  max-width: none;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  background: var(--care-v2-surface);
  padding: 4px 14px;
  min-height: 52px;
}

.care-v2-doctors-tools .care-filterbar__search input {
  font-size: 0.98rem;
}

.care-v2-doctors-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin: 4px 0 16px;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

.care-v2-doctors-page .care-v2-doctors-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.care-v2-doctors-page .care-v2-doc-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  padding: 18px 16px 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 18px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
  min-height: 100%;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.care-v2-doctors-page .care-v2-doc-card:hover {
  border-color: rgba(37, 99, 235, 0.28);
  box-shadow: 0 14px 32px rgba(37, 99, 235, 0.08);
  transform: translateY(-1px);
}

.care-v2-doctors-page .care-v2-doc-card .care-v2-doc__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.care-v2-doctors-page .care-v2-doc-card .care-avatar {
  width: 104px;
  height: 104px;
  border-radius: 999px;
  object-fit: cover;
  flex: 0 0 auto;
}

.care-v2-doctors-page .care-v2-doc-card .care-doc__body {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  min-width: 0;
}

.care-v2-doctors-page .care-v2-doc-card .care-doc__body > strong {
  font-size: 1.02rem;
  color: var(--care-v2-navy);
  letter-spacing: -0.02em;
}

.care-v2-doctors-page .care-v2-doc-card .care-v2-doc__specialty {
  color: var(--care-v2-muted);
  font-size: 0.88rem;
  line-height: 1.35;
}

.care-v2-doctors-page .care-v2-doc-card .care-v2-doc__years {
  color: var(--care-v2-muted);
  font-size: 0.84rem;
}

.care-v2-doctors-page .care-v2-doc-card .care-v2-doc__meta {
  display: none !important;
}

.care-v2-doctors-page .care-v2-doc-card .care-v2-doc__avail {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 2px;
  padding-top: 12px;
  border-top: 1px solid var(--care-v2-line);
  color: var(--care-v2-muted);
}

.care-v2-doctors-page .care-v2-doc-card .care-v2-doc__avail .care-ico {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  color: var(--care-v2-primary);
}

.care-v2-doctors-page .care-v2-doc-card .care-v2-doc__avail span {
  display: block;
  font-size: 0.78rem;
  line-height: 1.2;
}

.care-v2-doctors-page .care-v2-doc-card .care-v2-doc__avail strong {
  display: block;
  margin-top: 2px;
  color: var(--care-v2-ink);
  font-size: 0.9rem;
  font-weight: 600;
}

.care-v2-doctors-page .care-v2-doc-card .care-cta {
  margin-top: auto;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  border-radius: 999px;
  background: var(--care-v2-primary);
  color: #fff !important;
  font-weight: 700;
  font-size: 0.9rem;
  letter-spacing: 0;
  text-transform: none;
  white-space: nowrap;
  box-shadow: none;
}

.care-v2-doctors-page .care-v2-doc-card .care-cta__full {
  display: inline;
}

.care-v2-doctors-page .care-v2-doc-card .care-cta__short {
  display: none;
}

/* —— Doctor detail (06) —— */
.care-v2-doctor-detail .care-v2-dd {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.9fr);
  grid-gap: 28px;
  gap: 28px;
  align-items: start;
}

.care-v2-dd__profile {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  padding: 20px;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.05);
}

.care-v2-dd__photo-wrap {
  position: relative;
  margin-bottom: 18px;
}

.care-v2-dd__photo {
  display: block;
  width: 100%;
  max-height: 360px;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: 18px;
  background: #e2e8f0;
}

.care-v2-dd__shield {
  position: absolute;
  left: 16px;
  bottom: -14px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #0F172A;
  color: #fff;
  box-shadow: 0 8px 20px rgba(30, 58, 95, 0.35);
}

.care-v2-dd__shield .care-ico {
  width: 20px;
  height: 20px;
}

.care-v2-dd__name {
  margin: 18px 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.6rem, 2.2vw, 2rem);
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care-v2-dd__specialty,
.care-v2-dd__clinic {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 8px;
  font-size: 0.98rem;
}

.care-v2-dd__specialty {
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care-v2-dd__clinic {
  color: var(--care-v2-muted);
}

.care-v2-dd__specialty .care-ico,
.care-v2-dd__clinic .care-ico {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.care-v2-dd__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin: 16px 0 14px;
  padding: 14px 0;
  border-top: 1px solid var(--care-v2-line);
  border-bottom: 1px solid var(--care-v2-line);
  color: var(--care-v2-ink);
  font-size: 0.9rem;
}

.care-v2-dd__stats > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.care-v2-dd__stats em {
  font-style: normal;
  color: #f59e0b;
}

.care-v2-dd__stats .care-ico {
  width: 16px;
  height: 16px;
  color: var(--care-v2-primary);
}

.care-v2-dd__verified {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--care-v2-primary);
  font-size: 0.9rem;
  font-weight: 500;
}

.care-v2-dd__verified .care-ico {
  width: 18px;
  height: 18px;
}

.care-v2-doctor-detail .care-v2-info-cards {
  margin-top: 18px;
}

.care-v2-doctor-detail .care-v2-info-card {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  padding: 18px 16px;
  border-radius: 16px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}

.care-v2-doctor-detail .care-v2-info-card .care-ico {
  width: 22px;
  height: 22px;
  color: var(--care-v2-primary);
}

.care-v2-doctor-detail .care-v2-book-panel {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  padding: 22px 20px;
  border-radius: 22px;
}

.care-v2-doctor-detail .care-v2-book-panel > h2 {
  font-family: var(--care-v2-font-display);
  letter-spacing: -0.02em;
}

.care-v2-dd-weekcal .care-weekcal__grid {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(72px, 1fr);
  grid-gap: 8px;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.care-v2-dd-weekcal .care-weekcal__day {
  min-width: 72px;
  padding: 12px 8px 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  background: #fff;
}

.care-v2-dd-weekcal .care-weekcal__day.is-selected {
  border-color: var(--care-v2-primary);
  background: #eff6ff;
  color: var(--care-v2-primary);
  box-shadow: inset 0 0 0 1px var(--care-v2-primary);
}

.care-v2-dd-weekcal .care-weekcal__num {
  font-size: 0.82rem;
  font-weight: 600;
}

.care-v2-dd-weekcal .care-weekcal__today-dot {
  background: var(--care-v2-primary);
}

.care-v2-dd-slot-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
}

.care-v2-dd-slot-grid .care-slot {
  min-height: 44px;
  border-radius: 12px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  font-weight: 600;
}

.care-v2-dd-slot-grid .care-slot.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care-v2-dd-visit-kind {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin: 16px 0 14px;
}

.care-v2-dd-visit-kind > button {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 14px 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  background: #fff;
  text-align: start;
  cursor: pointer;
  font: inherit;
  color: inherit;
}

.care-v2-dd-visit-kind > button.is-active {
  border-color: var(--care-v2-primary);
  background: #eff6ff;
  box-shadow: inset 0 0 0 1px var(--care-v2-primary);
}

.care-v2-dd-visit-kind .care-ico {
  width: 22px;
  height: 22px;
  color: var(--care-v2-primary);
  flex: 0 0 auto;
}

.care-v2-dd-visit-kind strong {
  display: block;
  color: var(--care-v2-navy);
  font-size: 0.95rem;
}

.care-v2-dd-visit-kind em {
  display: block;
  margin-top: 2px;
  font-style: normal;
  color: var(--care-v2-muted);
  font-size: 0.82rem;
}

.care-v2-doctor-detail .care-v2-btn {
  width: 100%;
  min-height: 48px;
  margin-top: 4px;
  border-radius: 12px;
  font-weight: 600;
}

.care-v2-dd-secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 12px 0 0;
  color: var(--care-v2-muted);
  font-size: 0.82rem;
  text-align: center;
}

.care-v2-dd-secure .care-ico {
  width: 16px;
  height: 16px;
  color: var(--care-v2-primary);
}

.care-v2-dd-practices {
  margin-bottom: 14px;
}

.care-v2-dd-practices h3 {
  margin: 0 0 8px;
  font-size: 0.95rem;
  color: var(--care-v2-navy);
}

.care-v2-dd-token {
  margin-top: 16px;
}

.care-v2-dd-token .care-v2-btn {
  margin-top: 12px;
}

.care-v2-dd-hours {
  margin-top: 12px;
}

@media (max-width: 1100px) {
  .care-v2-doctors-page .care-v2-doctors-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .care-v2-doctors-page .care-v2-doctors-layout,
  .care-v2-doctor-detail .care-v2-dd {
    grid-template-columns: 1fr;
  }

  .care-v2-doctors-page .care-v2-spec-side,
  .care-v2-doctor-detail .care-v2-book-panel {
    position: static;
  }

  .care-v2-doctors-page .care-v2-doctors-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .care-v2-doctors-page .care-v2-doctors-grid,
  .care-v2-doctor-detail .care-v2-info-cards {
    grid-template-columns: 1fr;
  }

  .care-v2-dd__photo {
    max-height: 260px;
  }

  .care-v2-dd-slot-grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* HUB7-PHARM */
.care-v2-pharmacy .care-page__body {
  width: min(1240px, calc(100% - 32px));
  padding-bottom: 48px;
}

.care-v2-pharm-head {
  margin-bottom: 18px;
}

.care-v2-pharm-head .care-v2-title {
  margin-bottom: 4px;
}

.care-v2-pharm-searchrow {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: stretch;
  margin: 16px 0 14px;
}

.care-v2-pharm-searchrow .care-v2-searchbar__field {
  flex: 1 1 280px;
  min-height: 52px;
}

.care-v2-pharm-place {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 16px;
  border-radius: 14px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.care-v2-pharm-place:hover {
  border-color: rgba(37, 99, 235, 0.35);
  color: var(--care-v2-primary);
}

.care-v2-pharm-catrow {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 16px;
}

.care-v2-pharm-pills {
  flex: 1 1;
  margin: 0;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 4px;
  -webkit-overflow-scrolling: touch;
}

.care-v2-pharm-filter-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 40px;
  border-radius: 12px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  cursor: pointer;
}

.care-v2-pharm-filter-btn.is-active,
.care-v2-pharm-filter-btn.has-active {
  border-color: var(--care-v2-primary);
  color: var(--care-v2-primary);
  background: rgba(37, 99, 235, 0.08);
}

.care-v2-pharm-banners {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 16px;
}

.care-v2-pharm-banner {
  position: relative;
  overflow: hidden;
  min-height: 88px;
  border-radius: var(--care-v2-radius);
  background: linear-gradient(135deg, #0F172A, #0F6CBD);
  color: #fff;
}

.care-v2-pharm-banner__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.55;
}

.care-v2-pharm-banner__body {
  position: relative;
  padding: 14px 16px;
  display: grid;
  grid-gap: 4px;
  gap: 4px;
}

.care-v2-pharm-banner__body strong {
  font-size: 1.05rem;
}

.care-v2-pharm-banner__body span {
  font-size: 0.85rem;
  opacity: 0.92;
}

.care-v2-pharm-banner__body em {
  font-style: normal;
  font-weight: 700;
  margin-top: 4px;
}

.care-v2-pharmacy .care-shop-layout.care-v2-pharm-shop,
.care-v2-pharm-shop {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 320px);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
}

.care-v2-pharmacy .care-list--catalog.care-v2-pharm-grid,
.care-v2-pharm-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 14px;
  gap: 14px;
}

.care-v2-pharm-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 14px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
}

.care-v2-pharm-card.is-oos {
  opacity: 0.72;
}

.care-v2-pharm-card__open {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: start;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: start;
  color: inherit;
  cursor: pointer;
}

.care-v2-pharm-card__media {
  width: 96px;
  height: 96px;
  border-radius: 12px;
  overflow: hidden;
  background: #f1f5f9;
}

.care-v2-pharm-card__media img,
.care-v2-pharm-card__media .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care-v2-pharm-card__body {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  min-width: 0;
}

.care-v2-pharm-card__body strong {
  color: var(--care-v2-ink);
  font-size: 0.98rem;
  line-height: 1.25;
}

.care-v2-pharm-card__form,
.care-v2-pharm-card__vendor {
  color: var(--care-v2-muted);
  font-size: 0.82rem;
}

.care-v2-pharm-card__price {
  margin-top: 4px;
  color: var(--care-v2-primary) !important;
  font-weight: 700;
  font-size: 0.98rem;
}

.care-v2-pharm-card__price s {
  opacity: 0.55;
  font-weight: 500;
  -webkit-margin-end: 4px;
          margin-inline-end: 4px;
}

.care-v2-pharm-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.care-v2-pharmacy .care-v2-pharm-card__add,
.care-v2-pharmacy .care-v2-pharm-cart__checkout,
.care-v2-pharmacy .care-btn--cart {
  width: 100%;
  min-height: 44px;
  justify-content: center;
  gap: 8px;
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
  border-radius: 12px;
  font-weight: 700;
}

.care-v2-pharmacy .care-v2-pharm-card__qty {
  width: 100%;
  justify-content: space-between;
}

.care-v2-pharm-cart {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  padding: 18px 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}

.care-v2-pharm-cart__title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
  font-size: 1.1rem;
  color: var(--care-v2-ink);
}

.care-v2-pharm-cart__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--care-v2-primary);
  color: #fff;
  font-style: normal;
  font-size: 0.75rem;
  font-weight: 700;
}

.care-v2-pharm-cart__lines {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  margin: 0 0 14px;
  padding: 0;
  list-style: none;
}

.care-v2-pharm-cart__line {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  grid-gap: 10px;
  gap: 10px;
  align-items: start;
  padding: 0;
  border: 0;
}

.care-v2-pharm-cart__thumb {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  overflow: hidden;
  background: #f1f5f9;
}

.care-v2-pharm-cart__thumb img,
.care-v2-pharm-cart__thumb .care-mico {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.care-v2-pharm-cart__info {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  min-width: 0;
}

.care-v2-pharm-cart__info strong {
  font-size: 0.88rem;
  color: var(--care-v2-ink);
}

.care-v2-pharm-cart__info span {
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-pharm-cart__aside {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  justify-items: end;
  text-align: end;
}

.care-v2-pharm-cart__aside > strong {
  font-size: 0.88rem;
  color: var(--care-v2-ink);
}

.care-v2-pharm-cart__qty {
  min-height: 32px;
  border: 1px solid var(--care-v2-line);
  border-radius: 999px;
  padding: 0 4px;
  background: #f8fafc;
}

.care-v2-pharm-cart__summary {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin: 0 0 14px;
  padding: 12px 0 0;
  border-top: 1px solid var(--care-v2-line);
}

.care-v2-pharm-cart__summary > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 0.9rem;
}

.care-v2-pharm-cart__summary dt {
  margin: 0;
  color: var(--care-v2-muted);
  font-weight: 500;
}

.care-v2-pharm-cart__summary dd {
  margin: 0;
  font-weight: 650;
  color: var(--care-v2-ink);
}

.care-v2-pharm-cart__free {
  color: #16a34a !important;
  font-weight: 700 !important;
}

.care-v2-pharm-cart__total dt,
.care-v2-pharm-cart__total dd {
  color: var(--care-v2-primary) !important;
  font-weight: 750 !important;
  font-size: 1.02rem;
}

.care-v2-pharmacy .care-v2-pharm-cart .care-tax-breakdown {
  margin-top: 0;
  margin-bottom: 12px;
  border-radius: 12px;
  background: rgba(37, 99, 235, 0.04);
  border-color: rgba(37, 99, 235, 0.12);
}

.care-v2-pharm-cart__secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 12px 0 0;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
  text-align: center;
}

@media (max-width: 1100px) {
  .care-v2-pharmacy .care-list--catalog.care-v2-pharm-grid,
  .care-v2-pharm-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .care-v2-pharmacy .care-shop-layout.care-v2-pharm-shop,
  .care-v2-pharm-shop {
    grid-template-columns: 1fr;
  }

  .care-v2-pharm-cart {
    position: static;
  }
}

@media (max-width: 767px) {
  .care-v2-pharmacy .care-list--catalog.care-v2-pharm-grid,
  .care-v2-pharm-grid {
    grid-template-columns: 1fr;
  }

  .care-v2-pharm-searchrow .care-v2-pharm-place {
    flex: 1 1 100%;
    justify-content: center;
  }
}

/* HUB10-ACCOUNT */
.care-v2-appts__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  padding: 16px;
  color: inherit;
}

.care-v2-appts__who {
  text-decoration: none;
  color: inherit;
}

.care-v2-appts__view {
  text-decoration: none;
}

.care-v2-appts__join {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 10px;
  border: 0;
  background: var(--care-v2-primary);
  color: #fff;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 650;
  text-decoration: none;
  white-space: nowrap;
}

.care-v2-appts__join:hover {
  filter: brightness(1.05);
}

.care-v2-reports__crumb {
  margin: 0 0 6px;
  font-size: 0.78rem;
  font-weight: 650;
  letter-spacing: 0.04em;
  color: var(--care-v2-muted);
}

.care-v2-reports__secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 22px;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-reports__view svg {
  flex-shrink: 0;
}

.care-v2-history {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
  max-width: 880px;
  padding-bottom: 28px;
}

.care-v2-history__head h1 {
  margin: 0;
  font-size: clamp(1.4rem, 2.4vw, 1.75rem);
  font-weight: 780;
  letter-spacing: -0.03em;
  color: var(--care-v2-ink);
}

.care-v2-history__head p {
  margin: 8px 0 0;
  color: var(--care-v2-muted);
  font-size: 0.95rem;
}

.care-v2-history__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 0;
  gap: 0;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  overflow: hidden;
}

.care-v2-history__list > li + li {
  border-top: 1px solid var(--care-v2-line);
}

.care-v2-history__row {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto auto;
  align-items: center;
  grid-gap: 14px;
  gap: 14px;
  padding: 16px;
  text-decoration: none;
  color: inherit;
}

.care-v2-history__ico {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: rgba(37, 99, 235, 0.1);
  overflow: hidden;
}

.care-v2-history__ico .care-mico {
  width: 48px;
  height: 48px;
}

.care-v2-history__body strong {
  display: block;
  font-size: 0.98rem;
  color: var(--care-v2-ink);
}

.care-v2-history__body em {
  display: block;
  margin-top: 2px;
  font-style: normal;
  font-size: 0.84rem;
  font-weight: 650;
  color: var(--care-v2-primary);
}

.care-v2-history__body span {
  display: block;
  margin-top: 2px;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-history__back {
  display: inline-flex;
  margin-bottom: 8px;
  color: var(--care-v2-primary);
  font-weight: 650;
  text-decoration: none;
  font-size: 0.9rem;
}

.care-v2-history__detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.care-v2-history__detail-head h1 {
  margin: 0;
  font-size: clamp(1.35rem, 2.2vw, 1.65rem);
  font-weight: 780;
  letter-spacing: -0.03em;
  color: var(--care-v2-ink);
}

.care-v2-history__detail-head p {
  margin: 6px 0 0;
  color: var(--care-v2-muted);
}

.care-v2-history__kv {
  display: grid;
  grid-template-columns: minmax(120px, 160px) minmax(0, 1fr);
  grid-gap: 10px 16px;
  gap: 10px 16px;
  margin: 0;
  padding: 16px 18px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
}

.care-v2-history__kv dt {
  margin: 0;
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--care-v2-muted);
}

.care-v2-history__kv dd {
  margin: 0;
  font-size: 0.92rem;
  color: var(--care-v2-ink);
}

.care-v2-history__block {
  padding: 16px 18px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
}

.care-v2-history__block h2 {
  margin: 0 0 10px;
  font-size: 1rem;
  font-weight: 750;
  color: var(--care-v2-ink);
}

.care-v2-history__block ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-v2-history__block li strong {
  display: block;
  color: var(--care-v2-ink);
}

.care-v2-history__block li span {
  display: block;
  margin-top: 2px;
  font-size: 0.84rem;
  color: var(--care-v2-muted);
}

.care-v2-history__findings {
  margin: 0;
  white-space: pre-wrap;
  line-height: 1.5;
  color: var(--care-v2-ink);
}

@media (min-width: 900px) {
  .care-v2-appts__row {
    grid-template-columns: minmax(0, 2fr) minmax(120px, 1fr) 110px 160px;
    align-items: center;
  }
}

@media (max-width: 640px) {
  .care-v2-history__row {
    grid-template-columns: 44px minmax(0, 1fr);
  }

  .care-v2-history__row .care-v2-status,
  .care-v2-history__row .care-v2-hub__chev {
    grid-column: 2;
  }

  .care-v2-history__kv {
    grid-template-columns: 1fr;
  }
}

/* HUB6-RAD */
.care-v2-rad-hero {
  padding: 52px 0 64px;
  background-color: #f8fafc;
  background-image:
    linear-gradient(
      90deg,
      rgba(248, 250, 252, 0.98) 0%,
      rgba(248, 250, 252, 0.92) 38%,
      rgba(248, 250, 252, 0.45) 62%,
      rgba(248, 250, 252, 0.08) 82%,
      transparent 100%
    ),
    url('/care/design/heroes/radiology-hero.jpg');
  background-position: center, right center;
  background-size: auto, cover;
  background-repeat: no-repeat;
}

.care-v2-rad-hero__inner {
  width: min(1100px, calc(100% - 48px));
  max-width: 34rem;
  margin: 0;
  -webkit-margin-start: max(24px, calc((100% - 1100px) / 2));
          margin-inline-start: max(24px, calc((100% - 1100px) / 2));
  text-align: start;
}

.care-v2-rad-hero__lead {
  margin: 0 0 16px;
  max-width: 28rem;
}

.care-v2-rad-trust {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--care-v2-navy);
  font-size: 0.92rem;
  font-weight: 600;
}

.care-v2-rad-ico {
  width: 1.05rem;
  height: 1.05rem;
  flex: 0 0 auto;
  color: var(--care-v2-primary);
}

.care-v2-rad-card {
  width: min(960px, calc(100% - 32px));
  margin: -36px auto 48px;
  padding: 28px 28px 22px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  box-shadow: 0 22px 48px rgba(15, 23, 42, 0.07);
}

.care-v2-rad-card__head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px 20px;
  margin-bottom: 18px;
}

.care-v2-rad-card__title {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--care-v2-ink);
  letter-spacing: -0.01em;
}

.care-v2-rad-card__lead {
  margin: 4px 0 0;
  color: var(--care-v2-muted);
  font-size: 0.92rem;
}

.care-v2-rad-card__tools {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.care-v2-rad-sort {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 28px 0 12px;
  border-radius: 10px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
  cursor: pointer;
}

.care-v2-rad-sort strong {
  color: var(--care-v2-ink);
  font-weight: 700;
}

.care-v2-rad-sort::after {
  content: '';
  position: absolute;
  inset-inline-end: 12px;
  top: 50%;
  width: 6px;
  height: 6px;
  border-right: 2px solid var(--care-v2-muted);
  border-bottom: 2px solid var(--care-v2-muted);
  transform: translateY(-60%) rotate(45deg);
  pointer-events: none;
}

.care-v2-rad-sort select {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
  width: 100%;
}

.care-v2-rad-filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  color: var(--care-v2-muted);
  cursor: pointer;
}

.care-v2-rad-filter .care-ico {
  width: 1.1rem;
  height: 1.1rem;
}

.care-v2-rad-filter.is-on,
.care-v2-rad-filter:hover {
  border-color: rgba(37, 99, 235, 0.4);
  color: var(--care-v2-primary);
}

.care-v2-rad-list {
  display: grid;
}

.care-v2-rad-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  grid-gap: 16px;
  gap: 16px;
  align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid var(--care-v2-line);
}

.care-v2-rad-row:last-child {
  border-bottom: 0;
}

.care-v2-rad-thumb,
.care-v2-rad-row .care-catalog-thumb,
.care-v2-rad-row .care-mico {
  width: 88px;
  height: 88px;
  border-radius: 14px;
  overflow: hidden;
  flex: 0 0 auto;
}

.care-v2-rad-thumb .care-mico,
.care-v2-rad-row .care-catalog-thumb .care-mico {
  width: 88px;
  height: 88px;
  border-radius: 14px;
  background: #0F6CBD !important;
  color: #fff !important;
}

.care-v2-rad-thumb .care-mico svg,
.care-v2-rad-row .care-catalog-thumb .care-mico svg {
  stroke: #fff;
}

.care-v2-rad-row__body {
  min-width: 0;
}

.care-v2-rad-row__body strong {
  display: block;
  color: var(--care-v2-ink);
  font-size: 1.02rem;
  font-weight: 700;
}

.care-v2-rad-row__desc {
  display: block;
  margin-top: 4px;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

.care-v2-rad-row__body .care-rad-row__panel {
  margin-top: 10px;
}

.care-v2-rad-row__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
  white-space: nowrap;
  text-align: end;
}

.care-v2-rad-row__meta > div {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care-v2-rad-book {
  min-width: 104px;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 12px;
}

.care-v2-rad-book.is-on {
  background: var(--care-v2-navy);
}

.care-v2-rad-foot {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px 20px;
  align-items: center;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--care-v2-line);
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care-v2-rad-foot__trust,
.care-v2-rad-foot__help {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.care-v2-rad-foot__link {
  color: var(--care-v2-primary);
  font-weight: 700;
  text-decoration: none;
}

.care-v2-rad-foot__link:hover {
  text-decoration: underline;
}

@media (max-width: 900px) {
  .care-v2-rad-hero {
    background-image:
      linear-gradient(
        180deg,
        rgba(248, 250, 252, 0.88) 0%,
        rgba(248, 250, 252, 0.96) 70%,
        #f8fafc 100%
      ),
      url('/care/design/heroes/radiology-hero.jpg');
    background-position: center, center 30%;
    background-size: auto, cover;
    padding: 40px 0 48px;
  }

  .care-v2-rad-hero__inner {
    width: min(960px, calc(100% - 32px));
    max-width: none;
    margin-inline: auto;
  }
}

@media (max-width: 767px) {
  .care-v2-rad-card {
    margin-top: -24px;
    padding: 20px 16px 16px;
  }

  .care-v2-rad-row {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
  }

  .care-v2-rad-row__meta {
    grid-column: 2;
    align-items: flex-start;
    text-align: start;
  }

  .care-v2-rad-book {
    grid-column: 2;
    justify-self: start;
  }

  .care-v2-rad-foot {
    flex-direction: column;
    align-items: flex-start;
  }
}

[dir='rtl'] .care-v2-rad-hero {
  background-image:
    linear-gradient(
      270deg,
      rgba(248, 250, 252, 0.98) 0%,
      rgba(248, 250, 252, 0.92) 38%,
      rgba(248, 250, 252, 0.45) 62%,
      rgba(248, 250, 252, 0.08) 82%,
      transparent 100%
    ),
    url('/care/design/heroes/radiology-hero.jpg');
  background-position: center, left center;
}

[dir='rtl'] .care-v2-rad-hero__inner {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  -webkit-margin-end: max(24px, calc((100% - 1100px) / 2));
          margin-inline-end: max(24px, calc((100% - 1100px) / 2));
}

/* QA-HUB-13-APPTS */
.care-v2-appts__head {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 14px;
}

.care-v2-appts__toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
}

.care-v2-appts__tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-v2-appts__tabs button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.care-v2-appts__view {
  border: 1.5px solid rgba(30, 58, 95, 0.22) !important;
  background: #fff !important;
  color: var(--care-v2-navy) !important;
  border-radius: 10px;
  min-height: 36px;
  padding: 0 12px;
  text-decoration: none;
}

.care-v2-appts__view:hover {
  border-color: var(--care-v2-primary) !important;
  color: var(--care-v2-primary) !important;
}

.care-v2-appts__actions {
  min-width: 168px;
}

/* QA-HUB-14-REPORTS */
.care-v2-reports__crumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 0 0 8px;
  font-size: 0.78rem;
  font-weight: 650;
  color: var(--care-v2-muted);
}

.care-v2-reports__crumb a {
  color: var(--care-v2-primary);
  text-decoration: none;
}

.care-v2-reports__crumb a:hover {
  text-decoration: underline;
}

.care-v2-reports__secure {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 18px;
  margin-top: 22px;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care-v2-reports__secure p {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.care-v2-reports__secure a {
  color: var(--care-v2-primary);
  font-weight: 650;
  text-decoration: none;
}

.care-v2-reports__secure a:hover {
  text-decoration: underline;
}

/* QA-HUB-10-PHARM */
.care-v2-pharmacy .care-v2-pharm-cart__trash {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--care-v2-muted);
  cursor: pointer;
}

.care-v2-pharmacy .care-v2-pharm-cart__trash:hover {
  color: #dc2626;
  background: rgba(220, 38, 38, 0.08);
}

.care-v2-pharmacy .care-v2-pharm-cart__trash .care-ico {
  width: 16px;
  height: 16px;
}

.care-v2-pharmacy .care-v2-pharm-filter-btn .care-ico {
  width: 18px;
  height: 18px;
}

.care-v2-pharmacy .care-v2-pharm-cart__checkout .care-ico {
  width: 18px;
  height: 18px;
}

.care-v2-pharmacy .care-v2-pharm-cart__secure .care-ico {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

/* QA-HUB-11-LOGIN */
.care-v2-login__locale {
  color: var(--care-v2-primary);
}

.care-v2-login__hint-link {
  color: var(--care-v2-primary);
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.care-v2-login__brand {
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.22), rgba(248, 250, 252, 0.55)),
    url('/care/design/heroes/clinic-lounge.jpg') center / cover no-repeat;
}

.care-v2-login__title::after {
  width: 48px;
  height: 4px;
}

/* QA-HUB-09-RAD */

/* QA-HUB-11-LOGIN */

/* QA-HUB-10-PHARM */
/* QA-HUB-16-DONE */

/* QA-HUB-10-PHARM */

/* QA-HUB-06-DOCTORS */
.care-v2-doctors-page .care-v2-doctors-search {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 52px;
  padding: 4px 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  background: var(--care-v2-surface);
}

.care-v2-doctors-page .care-v2-doctors-search .care-ico {
  width: 18px;
  height: 18px;
  color: var(--care-v2-muted);
  flex: 0 0 auto;
}

.care-v2-doctors-page .care-v2-doctors-search input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 0.98rem;
  color: var(--care-v2-ink);
  outline: none;
}

.care-v2-doctors-page .care-v2-doctors-search__kbd {
  flex: 0 0 auto;
  padding: 4px 8px;
  border: 1px solid var(--care-v2-line);
  border-radius: 8px;
  background: #f8fafc;
  color: var(--care-v2-muted);
  font: inherit;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.care-v2-doctors-page .care-v2-doctors-meta__controls {
  display: flex;
  align-items: center;
  gap: 10px;
}

.care-v2-doctors-page .care-v2-doctors-sort {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

.care-v2-doctors-page .care-v2-doctors-sort select {
  border: 1px solid var(--care-v2-line);
  border-radius: 10px;
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font: inherit;
  font-weight: 600;
  padding: 8px 12px;
  min-height: 40px;
}

.care-v2-doctors-page .care-v2-doctors-filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid var(--care-v2-line);
  border-radius: 10px;
  background: var(--care-v2-surface);
  color: var(--care-v2-muted);
  cursor: pointer;
}

.care-v2-doctors-page .care-v2-doctors-filter-btn.is-active,
.care-v2-doctors-page .care-v2-doctors-filter-btn:hover {
  border-color: rgba(37, 99, 235, 0.35);
  color: var(--care-v2-primary);
  background: #eff6ff;
}

.care-v2-doctors-page .care-v2-doctors-advanced {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  margin: 0 0 16px;
  padding: 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  background: var(--care-v2-surface);
}

.care-v2-doctors-page .care-v2-doctors-advanced label {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  margin: 0;
  font-size: 0.82rem;
  color: var(--care-v2-muted);
}

.care-v2-doctors-page .care-v2-doctors-advanced select {
  min-height: 40px;
  border: 1px solid var(--care-v2-line);
  border-radius: 10px;
  background: #fff;
  font: inherit;
  color: var(--care-v2-ink);
  padding: 8px 10px;
}

.care-v2-doctors-page .care-v2-doctors-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
}

.care-v2-doctors-page .care-v2-doctors-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border: 1px solid var(--care-v2-line);
  border-radius: 999px;
  background: #eff6ff;
  color: var(--care-v2-primary);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 600;
  cursor: pointer;
}

.care-v2-doctors-page .care-v2-spec-side__clear {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 14px 6px 0;
  width: auto;
  padding: 0;
  justify-content: flex-start;
  color: var(--care-v2-primary);
  background: transparent;
  font-weight: 600;
}

.care-v2-doctors-page .care-v2-spec-side__clear .care-ico {
  width: 16px;
  height: 16px;
}

.care-v2-doctors-page .care-v2-doc--browse .care-v2-doc__meta {
  display: none !important;
}

@media (max-width: 900px) {
  .care-v2-doctors-page .care-v2-doctors-advanced {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .care-v2-doctors-page .care-v2-doctors-meta {
    flex-wrap: wrap;
  }

  .care-v2-doctors-page .care-v2-doctors-search__kbd {
    display: none;
  }
}

@media (max-width: 560px) {
  .care-v2-doctors-page .care-v2-doctors-advanced {
    grid-template-columns: 1fr;
  }
}

/* QA-HUB-19-CHROME */
/* Global Care marketplace chrome — mockups 01 (desktop nav) + 18 (phone tabs). */

.care--web .care-top__brand .care-v2-mark {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy, #0F172A);
}

.care--web .care-top__brand .care-v2-mark span {
  color: var(--care-v2-primary, #0F6CBD);
}

.care--web .care-top__nav--v2 {
  justify-content: flex-end;
  gap: 2px 6px;
}

.care--web .care-top__nav--v2 a {
  padding: 8px 12px;
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--care-v2-navy, #0F172A);
  border-bottom: 2px solid transparent;
  background: transparent;
}

.care--web .care-top__nav--v2 a:hover,
.care--web .care-top__nav--v2 a:focus-visible {
  color: var(--care-v2-primary, #0F6CBD);
  background: transparent;
}

.care--web .care-top__nav--v2 a.is-active {
  color: var(--care-v2-primary, #0F6CBD);
  border-bottom-color: var(--care-v2-primary, #0F6CBD);
  background: transparent;
}

.care--web .care-top__nav--v2 .care-ico {
  display: none;
}

.care--web .care-top__profile {
  display: none !important;
}

.care--web .care-v2-lang {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 2px 0 4px;
  color: var(--care-v2-navy, #0F172A);
  cursor: pointer;
}

.care--web .care-v2-lang-pair {
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--care-v2-navy, #0F172A);
  pointer-events: none;
  white-space: nowrap;
}

.care--web .care-v2-lang-globe {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% 50%, transparent 38%, var(--care-v2-navy, #0F172A) 39%, var(--care-v2-navy, #0F172A) 42%, transparent 43%),
    linear-gradient(var(--care-v2-navy, #0F172A), var(--care-v2-navy, #0F172A)) center / 18px 1.5px no-repeat,
    linear-gradient(var(--care-v2-navy, #0F172A), var(--care-v2-navy, #0F172A)) center / 1.5px 18px no-repeat;
  border: 1.75px solid var(--care-v2-navy, #0F172A);
  border-radius: 50%;
  box-sizing: border-box;
  opacity: 0.92;
}

.care--web .care-v2-lang-chevron {
  width: 0;
  height: 0;
  -webkit-margin-start: -2px;
          margin-inline-start: -2px;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid var(--care-v2-navy, #0F172A);
  opacity: 0.75;
  pointer-events: none;
}

.care--web .care-v2-lang .ec-locale-switcher,
.care--web .care-v2-lang .ec-locale-switcher--compact,
.care--web .care-v2-lang .ec-locale-switcher--pair {
  position: static;
  inset: auto;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0 12px;
  min-height: 40px;
  opacity: 1;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  z-index: 1;
}

/* Phone header CareOS24 wordmark */
.care.care--phone .care-top__logo-link--mark {
  text-decoration: none;
}

.care.care--phone .care-top__logo-link--mark .care-v2-mark {
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy, #0F172A);
}

.care.care--phone .care-top__logo-link--mark .care-v2-mark span {
  color: var(--care-v2-primary, #0F6CBD);
}

.care.care--phone.care--v2-home.care--tab-root .care-top__logo-link--mark .care-v2-mark {
  font-size: 1.12rem;
}

/* Phone bottom tabs — mockup 18 */
.care.care--phone .care-tabs--v2 {
  --care-tabs-h: calc(72px + env(safe-area-inset-bottom, 0px));
  gap: 0;
  padding: 4px 4px env(safe-area-inset-bottom, 0px);
  background: #fff;
  border-top: 1px solid rgba(30, 58, 95, 0.1);
  box-shadow: 0 -6px 20px rgba(15, 23, 42, 0.05);
}

.care.care--phone .care-tabs--v2 .care-tabs__btn {
  gap: 3px;
  min-height: 56px;
  padding: 8px 2px 6px;
  color: #94a3b8;
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.care.care--phone .care-tabs--v2 .care-tabs__btn .care-ico {
  width: 24px;
  height: 24px;
  stroke-width: 1.75;
}

.care.care--phone .care-tabs--v2 .care-tabs__btn .care-ico--art {
  filter: grayscale(1) opacity(0.45);
}

.care.care--phone .care-tabs--v2 .care-tabs__btn.is-active {
  color: var(--care-v2-primary, #0F6CBD);
  background: transparent;
}

.care.care--phone .care-tabs--v2 .care-tabs__btn.is-active .care-ico {
  color: var(--care-v2-primary, #0F6CBD);
  stroke: var(--care-v2-primary, #0F6CBD);
}

.care.care--phone .care-tabs--v2 .care-tabs__btn.is-active .care-ico--art {
  filter: none;
}

.care.care--phone .care-tabs--v2 .care-tabs__btn.is-active::before {
  content: none;
}

html.ch-phone-dark .care.care--phone .care-tabs--v2 {
  background: #0f172a;
  border-top-color: rgba(248, 250, 252, 0.12);
}

html.ch-phone-dark .care.care--phone .care-tabs--v2 .care-tabs__btn {
  color: #94a3b8;
}

html.ch-phone-dark .care.care--phone .care-tabs--v2 .care-tabs__btn.is-active {
  color: #60a5fa;
}

/* QA-HUB-06-DOCTORS */

/* QA-HUB-05-PRACTICE-DETAIL */
.care-v2-practice-detail {
  background: var(--care-v2-paper);
}

.care-v2-practice-detail > .care-v2-practice-hero {
  display: flex;
  width: 100%;
  max-width: none;
  margin: 0;
  min-height: min(52vh, 480px);
  align-items: flex-end;
  isolation: isolate;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(15, 23, 42, 0.06) 0%, rgba(15, 23, 42, 0.42) 48%, rgba(15, 23, 42, 0.82) 100%),
    url('/care/design/heroes/practice-hero.jpg') center / cover no-repeat;
}

.care-v2-practice-detail .care-v2-practice-hero__stage {
  position: relative;
  z-index: 1;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 56px 0 44px;
}

.care-v2-practice-detail .care-v2-practice-hero__stage h1 {
  margin: 0 0 14px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(2.05rem, 4.4vw, 2.95rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.08;
  text-shadow: 0 10px 32px rgba(15, 23, 42, 0.35);
}

.care-v2-practice-detail .care-v2-practice-hero__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
}

.care-v2-practice-detail .care-v2-practice-hero__loc {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 1.02rem;
  font-weight: 500;
}

.care-v2-practice-detail .care-v2-practice-hero__loc .care-ico {
  width: 18px;
  height: 18px;
  color: #fff;
}

.care-v2-practice-detail .care-v2-practice-hero__status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 0.96rem;
}

.care-v2-practice-detail .care-v2-practice-hero__status strong {
  font-weight: 600;
}

.care-v2-practice-detail .care-v2-practice-hero__status em {
  font-style: normal;
  font-weight: 500;
  opacity: 0.88;
}

.care-v2-practice-detail .care-v2-practice-hero__sep {
  width: 1px;
  height: 14px;
  background: rgba(255, 255, 255, 0.45);
  flex: 0 0 auto;
}

.care-v2-practice-detail .care-v2-practice-hero__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.22);
  flex: 0 0 auto;
}

.care-v2-practice-detail .care-v2-practice-tabs-wrap {
  position: -webkit-sticky;
  position: sticky;
  top: 64px;
  z-index: 30;
  background: #fff;
  border-bottom: 1px solid var(--care-v2-line);
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}

.care--phone .care-v2-practice-detail .care-v2-practice-tabs-wrap {
  top: 0;
  z-index: 20;
}

.care-v2-practice-detail .care-v2-practice-tabs {
  position: static;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 28px;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 0;
  min-height: 64px;
  background: transparent;
  border: 0;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}

.care-v2-practice-detail .care-v2-practice-tabs a:not(.care-v2-btn),
.care-v2-practice-detail .care-v2-practice-tabs button:not(.care-v2-btn) {
  min-height: 64px;
  display: inline-flex;
  align-items: center;
  padding: 0 2px;
  color: var(--care-v2-ink);
  font-weight: 600;
  border-bottom: 3px solid transparent;
  text-decoration: none;
}

.care-v2-practice-detail .care-v2-practice-tabs a.is-active {
  color: var(--care-v2-primary);
  border-bottom-color: var(--care-v2-primary);
}

.care-v2-practice-detail .care-v2-practice-tabs__cta {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  min-height: 44px;
  padding: 0 18px;
  border-bottom: 0 !important;
  border-radius: 12px;
  gap: 8px;
}

.care-v2-practice-detail .care-v2-practice-tabs__cta .care-ico {
  width: 18px;
  height: 18px;
  color: #fff;
}

.care-v2-practice-detail .care-v2-practice-crumb {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.care-v2-practice-detail .care-page__body {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 8px 0 80px;
}

.care-v2-practice-detail .care-v2-practice-section {
  padding: 36px 0 32px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care-v2-practice-detail .care-v2-practice-section:last-child {
  border-bottom: 0;
}

.care-v2-practice-detail .care-v2-eyebrow {
  margin: 0 0 8px;
}

.care-v2-practice-detail .care-v2-practice-section__title {
  margin: 0 0 12px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.5rem, 2.5vw, 1.9rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-ink);
}

.care-v2-practice-detail .care-v2-practice-section__lead {
  margin: 0;
  max-width: 46rem;
  color: var(--care-v2-muted);
  line-height: 1.65;
  font-size: 1.02rem;
}

.care-v2-practice-detail .care-v2-service-list {
  list-style: none;
  margin: 18px 0 0;
  padding: 0;
}

.care-v2-practice-detail .care-v2-service-list li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 0;
  color: var(--care-v2-ink);
  font-weight: 600;
}

.care-v2-practice-detail .care-v2-service-list li::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary);
  flex: 0 0 auto;
}

.care-v2-practice-detail .care-v2-practice-doctors-body {
  display: flex;
  align-items: center;
  gap: 16px 20px;
  margin-top: 8px;
}

.care-v2-practice-detail .care-v2-doctor-row {
  display: flex;
  flex: 1 1 auto;
  gap: 14px;
  min-width: 0;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: thin;
}

.care-v2-practice-detail .care-v2-practice-doctors-all {
  flex: 0 0 auto;
  min-height: 44px;
  white-space: nowrap;
}

.care-v2-practice-detail .care-v2-doctor-chip {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 220px;
  max-width: 270px;
  padding: 12px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  text-decoration: none;
  color: inherit;
  box-shadow: none;
}

.care-v2-practice-detail .care-v2-doctor-chip img,
.care-v2-practice-detail .care-v2-doctor-chip .care-avatar {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  object-fit: cover;
  flex: 0 0 auto;
}

.care-v2-practice-detail .care-v2-practice-book {
  border-bottom: 0;
}

@media (max-width: 900px) {
  .care-v2-practice-detail .care-v2-practice-doctors-body {
    flex-direction: column;
    align-items: stretch;
  }

  .care-v2-practice-detail .care-v2-practice-doctors-all {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 767px) {
  .care-v2-practice-detail > .care-v2-practice-hero {
    min-height: 300px;
  }

  .care-v2-practice-detail .care-v2-practice-tabs {
    gap: 0 16px;
    overflow-x: auto;
  }

  .care-v2-practice-detail .care-v2-practice-tabs a:not(.care-v2-btn) {
    min-height: 52px;
    white-space: nowrap;
  }

  .care-v2-practice-detail .care-v2-practice-tabs__cta {
    width: 100%;
    margin: 8px 0 12px;
    order: 99;
    justify-content: center;
  }
}

/* QA-HUB-03-SEARCH */
.care-search-page {
  --care-search-primary: #0F6CBD;
  --care-search-chip-active-bg: #eff6ff;
  --care-search-line: rgba(15, 23, 42, 0.1);
}

.care-search-page .care-page__body {
  width: min(1240px, calc(100% - 40px));
  padding: 18px 0 56px;
}

.care-search-page__toolbar {
  gap: 12px;
  margin-bottom: 12px;
}

.care-search-page__field {
  min-height: 52px;
  border-radius: 12px;
  border-color: rgba(15, 23, 42, 0.12);
  box-shadow: none;
}

.care-search-page__clear {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.06);
  font-size: 1.05rem;
}

.care-search-page__go {
  width: 52px;
  flex-basis: 52px;
  border-radius: 12px;
  background: #0F6CBD;
}

.care-search-page__more {
  min-height: 52px;
  border-radius: 12px;
  border-color: rgba(15, 23, 42, 0.12);
  color: #0F172A;
  font-weight: 600;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}

.care-search-page__chips {
  gap: 10px;
  margin: 0 0 20px;
  padding-bottom: 2px;
}

.care-search-page__chips > button {
  min-height: 40px;
  padding: 0 14px 0 12px;
  border-radius: 999px;
  border-color: rgba(15, 23, 42, 0.12);
  background: #fff;
  color: #475569;
  font-weight: 600;
  font-size: 0.9rem;
}

.care-search-page__chips > button.is-active {
  background: var(--care-search-chip-active-bg);
  border-color: #0F6CBD;
  color: #0F6CBD;
  box-shadow: none;
}

.care-search-page__chip-ico {
  width: 15px;
  height: 15px;
  opacity: 0.9;
}

.care-search-page__chev {
  font-size: 0.65rem;
  opacity: 0.55;
  -webkit-margin-start: 4px;
          margin-inline-start: 4px;
}

.care-search-page__layout {
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, 1fr);
  gap: 22px;
}

.care-search-page__meta {
  align-items: center;
  margin-bottom: 16px;
}

.care-search-page__meta-copy {
  gap: 4px;
  font-size: 0.98rem;
  font-weight: 600;
  color: #0f172a;
}

.care-search-page__meta-q {
  font-style: normal;
  font-weight: 700;
  color: #0f172a;
}

.care-search-page__meta-range {
  font-size: 0.875rem;
  font-weight: 500;
  color: #64748b;
}

.care-search-page__sort {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #334155;
  font-size: 0.9rem;
  font-weight: 600;
}

.care-search-page__sort-label {
  white-space: nowrap;
}

.care-search-page__sort select {
  min-height: 0;
  padding: 0 22px 0 0;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  color: #0F6CBD;
  font-weight: 700;
  font-size: 0.9rem;
  background-image: linear-gradient(45deg, transparent 50%, currentColor 50%),
    linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position:
    calc(100% - 8px) 55%,
    calc(100% - 3px) 55%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

.care-search-page__group {
  gap: 14px;
}

.care-search-page__hit {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  padding: 18px 18px 16px;
  border-radius: 14px;
  border-color: rgba(15, 23, 42, 0.1);
  box-shadow: none;
  background: #fff;
}

.care-search-page__hit-main {
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 16px;
}

.care-search-page__avatar {
  width: 76px !important;
  height: 76px !important;
}

.care-search-page__hit-name {
  margin: 0 0 4px;
  font-size: 1.06rem;
  font-weight: 700;
  color: #0F6CBD;
}

.care-search-page__verified {
  width: 15px;
  height: 15px;
  color: #0F6CBD;
}

.care-search-page__hit-title {
  margin: 0;
  color: #334155;
  font-size: 0.9rem;
  font-weight: 500;
}

.care-search-page__hit-quals {
  margin: 2px 0 0;
  color: #64748b;
  font-size: 0.84rem;
}

.care-search-page__hit-stats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  margin-top: 10px;
}

.care-search-page__rating {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #0f172a;
  font-size: 0.88rem;
  font-weight: 600;
}

.care-search-page__star {
  color: #f59e0b;
  font-size: 0.95rem;
  line-height: 1;
}

.care-search-page__reviews {
  color: #64748b;
  font-weight: 500;
}

.care-search-page__hit-dist {
  color: #64748b;
  font-weight: 500;
  font-size: 0.88rem;
}

.care-search-page__open {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 8px 0 0;
  color: #16a34a;
  font-size: 0.88rem;
  font-weight: 600;
}

.care-search-page__open i {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #22c55e;
}

.care-search-page__hit-place {
  margin: 6px 0 0;
  color: #64748b;
  font-size: 0.88rem;
  font-weight: 500;
}

.care-search-page__hit-fee {
  width: auto;
  margin: 6px 0 0;
  color: #0f172a;
  font-size: 0.9rem;
  font-weight: 600;
}

.care-search-page__hit-aside {
  min-width: 108px;
  padding-top: 2px;
}

.care-search-page__bookmark {
  width: 34px;
  height: 34px;
  color: #94a3b8;
}

.care-search-page__bookmark:hover,
.care-search-page__bookmark.is-on {
  color: #0F6CBD;
  background: transparent;
}

.care-search-page__view {
  color: #0F6CBD;
  font-weight: 650;
  font-size: 0.92rem;
}

.care-search-page__map {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  min-height: min(72vh, 640px);
  height: calc(100vh - 120px);
  max-height: 720px;
  border-radius: 16px;
  border-color: rgba(15, 23, 42, 0.1);
  box-shadow: none;
  background: #e8eef5;
}

.care-search-page__map .care-map-explorer {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: inherit;
}

.care-search-page__map .care-map-explorer__toolbar,
.care-search-page__map .care-map-explorer__err,
.care-search-page__map .care-map-explorer__count {
  display: none !important;
}

.care-search-page__map .care-map-explorer__frame {
  flex: 1 1;
  min-height: 0;
  position: relative;
}

.care-search-page__map .care-map-explorer__map,
.care-search-page__map .leaflet-container {
  min-height: 100% !important;
  height: 100% !important;
  border-radius: 16px;
}

.care-search-page__map .care-map-sheet {
  left: 12px;
  right: 12px;
  bottom: 56px;
  border-radius: 12px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.14);
}

.care-search-page__map .leaflet-bottom.leaflet-right {
  right: auto !important;
  left: 12px;
  bottom: 12px;
}

.care-search-page__map .leaflet-control-zoom {
  border: 0 !important;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.12) !important;
  border-radius: 10px;
  overflow: hidden;
}

.care-search-page__map .leaflet-control-zoom a {
  width: 36px !important;
  height: 36px !important;
  line-height: 36px !important;
  color: #0F172A !important;
  border-bottom-color: rgba(15, 23, 42, 0.08) !important;
}

@media (max-width: 900px) {
  .care-search-page__layout {
    grid-template-columns: 1fr;
  }

  .care-search-page__map {
    position: static;
    height: 320px;
    max-height: none;
    min-height: 320px;
    order: -1;
  }

  .care-search-page__more {
    -webkit-margin-start: 0;
            margin-inline-start: 0;
  }
}

@media (max-width: 640px) {
  .care-search-page .care-page__body {
    width: calc(100% - 24px);
  }

  .care-search-page__hit {
    grid-template-columns: 1fr;
  }

  .care-search-page__hit-main {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .care-search-page__avatar {
    width: 64px !important;
    height: 64px !important;
  }

  .care-search-page__hit-aside {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
  }
}

/* QA-HUB-07-DOCTOR-DETAIL */
.care-v2-doctor-detail .care-v2-dd {
  grid-template-columns: minmax(0, 1.2fr) minmax(340px, 0.85fr);
  gap: 24px;
}

.care-v2-dd__photo {
  max-height: none;
  aspect-ratio: 4 / 3;
  border-radius: 16px;
}

.care-v2-dd__shield {
  left: 18px;
  bottom: -16px;
  width: 48px;
  height: 48px;
  background: #0F172A;
}

.care-v2-dd__name {
  margin-top: 22px;
}

.care-v2-dd-weekcal__month {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.care-v2-dd-weekcal__month strong {
  color: var(--care-v2-navy);
  font-size: 0.92rem;
}

.care-v2-dd-weekcal__row {
  display: flex;
  align-items: stretch;
  gap: 8px;
}

.care-v2-dd-weekcal__row .care-weekcal__nav {
  align-self: center;
  width: 34px;
  height: 34px;
  border-color: var(--care-v2-line);
  background: #fff;
  color: var(--care-v2-navy);
}

.care-v2-dd-weekcal__row .care-weekcal__grid {
  flex: 1 1;
  min-width: 0;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(64px, 1fr);
  grid-gap: 8px;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 6px;
}

.care-v2-dd-weekcal .care-weekcal__day {
  min-width: 64px;
  padding: 10px 6px 12px;
  border-radius: 12px;
  background: #fff;
  color: var(--care-v2-ink);
}

.care-v2-dd-weekcal .care-weekcal__day.is-selected {
  border-color: var(--care-v2-primary);
  background: #fff;
  color: var(--care-v2-primary);
  box-shadow: inset 0 0 0 1px var(--care-v2-primary);
}

.care-v2-dd-weekcal .care-weekcal__day.is-selected .care-weekcal__dow,
.care-v2-dd-weekcal .care-weekcal__day.is-selected .care-weekcal__num {
  color: var(--care-v2-primary);
}

.care-v2-dd-weekcal .care-weekcal__today-dot {
  position: absolute;
  bottom: 6px;
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  background: var(--care-v2-primary);
}

.care-v2-dd-slot-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.care-v2-dd-visit-kind {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.care-v2-dd-radio {
  width: 16px;
  height: 16px;
  border-radius: 999px;
  border: 2px solid var(--care-v2-line);
  flex: 0 0 auto;
  background: #fff;
  box-shadow: inset 0 0 0 0 var(--care-v2-primary);
}

.care-v2-dd-visit-kind > button.is-active .care-v2-dd-radio {
  border-color: var(--care-v2-primary);
  box-shadow: inset 0 0 0 4px var(--care-v2-primary);
}

.care-v2-dd-book-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.care-v2-dd-book-cta .care-ico {
  width: 18px;
  height: 18px;
}

.care-v2-doctor-detail .care-v2-book-panel {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  border: 1px solid var(--care-v2-line);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
}

@media (max-width: 900px) {
  .care-v2-dd-slot-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .care-v2-doctor-detail .care-v2-book-panel {
    position: static;
  }
}

@media (max-width: 560px) {
  .care-v2-dd-visit-kind {
    grid-template-columns: 1fr;
  }
}

/* QA-HUB-08-LAB */
.care-v2-lab .care-v2-lab-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(300px, 0.92fr);
  grid-gap: 28px;
  gap: 28px;
  align-items: start;
}

.care-v2-lab .care-v2-lab-search {
  margin: 12px 0 14px;
}

.care-v2-lab .care-v2-lab-search .care-v2-searchbar__field {
  width: 100%;
  min-height: 50px;
  border-radius: 14px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.care-v2-lab .care-v2-lab-cats {
  gap: 10px;
  margin: 0 0 16px;
}

.care-v2-lab .care-v2-lab-cats button {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  gap: 8px;
}

.care-v2-lab .care-v2-lab-list {
  gap: 12px;
}

.care-v2-lab .care-v2-lab-row {
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  gap: 14px 16px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(30, 58, 95, 0.08);
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.care-v2-lab .care-v2-add {
  min-height: 36px;
  padding: 0 14px;
  border-radius: 8px;
  background: var(--care-v2-primary);
  font-weight: 650;
}

.care-v2-lab .care-v2-lab-promo {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  min-height: 540px;
  border-radius: 0 0 0 72px;
  overflow: hidden;
  background:
    linear-gradient(160deg, rgba(248, 250, 252, 0.12), transparent 42%),
    url('/care/design/heroes/lab-hero.jpg') center 28% / cover no-repeat,
    #e8eef5;
}

.care-v2-lab .care-v2-lab-promo__card {
  margin: 22px;
  padding: 18px 18px 16px;
  max-width: 280px;
  border-radius: 18px;
  background: var(--care-v2-navy);
  color: #fff;
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.22);
}

.care-v2-lab .care-v2-lab-promo__home {
  width: 42px;
  height: 42px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: var(--care-v2-primary);
  color: #fff;
}

.care-v2-lab .care-v2-lab-promo__cta {
  color: #fff;
  font-weight: 650;
}

.care-v2-lab .care-v2-lab-note {
  margin-top: 16px;
  color: var(--care-v2-muted);
}

@media (max-width: 900px) {
  .care-v2-lab .care-v2-lab-layout {
    grid-template-columns: 1fr;
  }

  .care-v2-lab .care-v2-lab-promo {
    position: static;
    min-height: 300px;
    border-radius: 24px;
  }
}

@media (max-width: 767px) {
  .care-v2-lab .care-v2-lab-row {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .care-v2-lab .care-v2-lab-row__turn,
  .care-v2-lab .care-v2-lab-row__price {
    grid-column: 2;
    justify-self: start;
  }

  .care-v2-lab .care-v2-lab-row__price {
    width: 100%;
    justify-content: space-between;
  }
}

/* QA-HUB-18-VIDEO */

/* QA-HUB-12-ACCOUNT */

/* QA-HUB-17-NEAR */
.care-v2-near-head {
  align-items: flex-start;
  margin-bottom: 14px;
}

.care-v2-near-layout {
  grid-template-columns: minmax(0, 1.4fr) minmax(320px, 0.72fr);
  gap: 18px;
  min-height: 580px;
}

.care-v2-near-map {
  min-height: 560px;
  border-radius: 18px;
  background: #e8eef5;
}

.care-v2-near-map .leaflet-container,
.care-v2-near-map .care-map-explorer,
.care-v2-near-map .care-map-explorer__frame,
.care-v2-near-map .care-map-explorer__map {
  min-height: 560px;
  height: 100%;
}

.care-v2-near .care-map-explorer__toolbar,
.care-v2-near .care-map-explorer__err {
  display: none;
}

.care-v2-near-side {
  padding: 18px 16px;
  max-height: min(70vh, 640px);
  border-radius: 18px;
  background: #fff;
}

.care-v2-near-side__head strong {
  color: var(--care-v2-navy);
  font-size: 1.05rem;
}

.care-v2-near-kind {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  flex-shrink: 0;
  color: #fff;
}

.care-v2-near-kind svg {
  width: 22px;
  height: 22px;
}

.care-v2-near-kind--blue { background: #0F6CBD; }
.care-v2-near-kind--violet { background: #7c3aed; }
.care-v2-near-kind--teal { background: #0d9488; }
.care-v2-near-kind--rose { background: #e11d48; }
.care-v2-near-kind--amber { background: #d97706; }

.care-v2-near-card {
  align-items: center;
  padding: 14px 12px;
  margin-bottom: 0;
  border: 1px solid rgba(30, 58, 95, 0.08);
  border-radius: 14px;
  background: #fff;
  box-shadow: none;
}

.care-v2-near-card.is-active,
.care-v2-near-card:hover {
  border-color: rgba(37, 99, 235, 0.28);
  box-shadow: inset 3px 0 0 var(--care-v2-primary);
}

.care-v2-near-card__dist {
  color: var(--care-v2-navy);
  font-weight: 700;
  font-size: 0.9rem;
}

.care-v2-near-card__area {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.care-v2-near-card__meta {
  gap: 10px;
}

.care-v2-near-foot {
  margin-top: 18px;
  padding: 14px 18px;
  border-radius: 16px;
  background: #fff;
}

.care-v2-near-foot__cta {
  min-height: 44px;
  padding: 0 18px;
  font-weight: 650;
}

.care-v2-near-foot__cta .care-ico {
  color: var(--care-v2-primary);
}

[dir='rtl'] .care-v2-near-card.is-active,
[dir='rtl'] .care-v2-near-card:hover {
  box-shadow: inset -3px 0 0 var(--care-v2-primary);
}

/* QA-HUB-15-CHECKOUT — mockup 14 Self/Family + Pay securely (overrides) */

.care-patient-step.care-v2-checkout .care-patient-step__close {
  top: 14px;
  inset-inline-end: 14px;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.1);
  font-size: 1.25rem;
  color: var(--care-v2-ink);
}

.care-v2-checkout__steps {
  position: relative;
  gap: 0;
  align-items: start;
}

.care-v2-checkout__steps li {
  z-index: 1;
}

.care-v2-checkout__steps li:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 14px;
  inset-inline-start: calc(50% + 18px);
  width: calc(100% - 36px);
  height: 2px;
  background: rgba(100, 116, 139, 0.28);
  pointer-events: none;
}

.care-v2-checkout__pick-btn {
  min-height: 88px;
  padding: 20px 16px 16px 18px;
  border-radius: 14px;
  border-width: 1.5px;
}

.care-v2-checkout__pick-btn.is-selected {
  background: rgba(37, 99, 235, 0.06);
  border-color: var(--care-v2-primary);
  box-shadow: 0 0 0 1px var(--care-v2-primary);
}

.care-v2-checkout__check {
  top: 10px;
  inset-inline-start: 10px;
  width: 20px;
  height: 20px;
  background: var(--care-v2-primary);
  color: #fff;
}

.care-v2-checkout__person {
  width: 30px;
  height: 30px;
  margin-top: 4px;
}

.care-v2-checkout__family-list {
  margin-top: 4px;
}

.care-patient-step.care-v2-checkout .care-patient-step__option {
  border-radius: 12px;
  border: 1.5px solid rgba(30, 58, 95, 0.12);
  box-shadow: none;
}

.care-patient-step.care-v2-checkout .care-patient-step__option.is-selected {
  border-color: var(--care-v2-primary);
  background: rgba(37, 99, 235, 0.06);
  box-shadow: 0 0 0 1px var(--care-v2-primary);
}

.care-patient-step.care-v2-checkout .care-patient-step__option-ico {
  border-radius: 10px;
  background: rgba(37, 99, 235, 0.08);
  color: var(--care-v2-primary);
}

.care-patient-step.care-v2-checkout .care-patient-step__add {
  border-radius: 12px;
  border-style: dashed;
  border-color: rgba(37, 99, 235, 0.35);
  color: var(--care-v2-primary);
}

.care-patient-step.care-v2-checkout .care-patient-step__form {
  border-radius: 12px;
  border: 1px solid rgba(30, 58, 95, 0.1);
  padding: 14px;
}

.care-v2-checkout__quote {
  background: var(--care-v2-paper, #f8fafc);
  border-radius: 14px;
}

.care-v2-checkout__quote .care-tax-breakdown__total {
  margin-top: 10px !important;
  padding-top: 10px;
}

.care-v2-checkout__quote .care-tax-breakdown__total dt {
  font-size: 1.05rem;
  font-weight: 750;
  color: var(--care-v2-ink);
}

.care-v2-checkout__quote .care-tax-breakdown__total dd {
  color: var(--care-v2-primary);
  font-size: 1.2rem;
  font-weight: 780;
}

.care-v2-checkout__fees {
  margin: 6px 0 0;
  text-align: end;
  font-size: 0.75rem;
  font-weight: 650;
  color: var(--care-v2-primary);
}

.care-v2-checkout__pay {
  min-height: 52px;
  border-radius: 12px;
  gap: 10px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.care-v2-checkout__secure {
  margin: 12px 0 0;
}

.care-v2-checkout__brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 750;
  color: var(--care-v2-navy);
}

.care-v2-checkout__brand img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}

.care-v2-checkout__brand span {
  color: var(--care-v2-primary);
}

@media (max-width: 640px) {
  .care-v2-checkout__pick {
    grid-template-columns: 1fr;
  }
}

/* QA-HUB-15-CHECKOUT */

/* QA-HUB-08-LAB */

/* QA-HUB-05-PRACTICE-DETAIL */
.care-v2-practice-detail {
  background: var(--care-v2-paper);
}

.care-v2-practice-detail > .care-v2-practice-hero {
  display: flex;
  width: 100%;
  max-width: none;
  margin: 0;
  min-height: min(52vh, 480px);
  align-items: flex-end;
  isolation: isolate;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(15, 23, 42, 0.06) 0%, rgba(15, 23, 42, 0.42) 48%, rgba(15, 23, 42, 0.82) 100%),
    url('/care/design/heroes/practice-hero.jpg') center / cover no-repeat;
}

.care-v2-practice-detail .care-v2-practice-hero__stage {
  position: relative;
  z-index: 1;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 56px 0 44px;
}

.care-v2-practice-detail .care-v2-practice-hero__stage h1 {
  margin: 0 0 14px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(2.05rem, 4.4vw, 2.95rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.08;
  text-shadow: 0 10px 32px rgba(15, 23, 42, 0.35);
}

.care-v2-practice-detail .care-v2-practice-hero__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
}

.care-v2-practice-detail .care-v2-practice-hero__loc {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 1.02rem;
  font-weight: 500;
}

.care-v2-practice-detail .care-v2-practice-hero__loc .care-ico {
  width: 18px;
  height: 18px;
  color: #fff;
}

.care-v2-practice-detail .care-v2-practice-hero__status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 0.96rem;
}

.care-v2-practice-detail .care-v2-practice-hero__status strong {
  font-weight: 600;
}

.care-v2-practice-detail .care-v2-practice-hero__status em {
  font-style: normal;
  font-weight: 500;
  opacity: 0.88;
}

.care-v2-practice-detail .care-v2-practice-hero__sep {
  width: 1px;
  height: 14px;
  background: rgba(255, 255, 255, 0.45);
  flex: 0 0 auto;
}

.care-v2-practice-detail .care-v2-practice-hero__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.22);
  flex: 0 0 auto;
}

.care-v2-practice-detail .care-v2-practice-tabs-wrap {
  position: -webkit-sticky;
  position: sticky;
  top: 64px;
  z-index: 30;
  background: #fff;
  border-bottom: 1px solid var(--care-v2-line);
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}

.care--phone .care-v2-practice-detail .care-v2-practice-tabs-wrap {
  top: 0;
  z-index: 20;
}

.care-v2-practice-detail .care-v2-practice-tabs {
  position: static;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 28px;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 0;
  min-height: 64px;
  background: transparent;
  border: 0;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}

.care-v2-practice-detail .care-v2-practice-tabs a:not(.care-v2-btn),
.care-v2-practice-detail .care-v2-practice-tabs button:not(.care-v2-btn) {
  min-height: 64px;
  display: inline-flex;
  align-items: center;
  padding: 0 2px;
  color: var(--care-v2-ink);
  font-weight: 600;
  border-bottom: 3px solid transparent;
  text-decoration: none;
}

.care-v2-practice-detail .care-v2-practice-tabs a.is-active {
  color: var(--care-v2-primary);
  border-bottom-color: var(--care-v2-primary);
}

.care-v2-practice-detail .care-v2-practice-tabs__cta {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  min-height: 44px;
  padding: 0 18px;
  border-bottom: 0 !important;
  border-radius: 12px;
  gap: 8px;
}

.care-v2-practice-detail .care-v2-practice-tabs__cta .care-ico {
  width: 18px;
  height: 18px;
  color: #fff;
}

.care-v2-practice-detail .care-v2-practice-crumb {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.care-v2-practice-detail .care-page__body {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 8px 0 80px;
}

.care-v2-practice-detail .care-v2-practice-section {
  padding: 36px 0 32px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care-v2-practice-detail .care-v2-practice-section:last-child {
  border-bottom: 0;
}

.care-v2-practice-detail .care-v2-eyebrow {
  margin: 0 0 8px;
}

.care-v2-practice-detail .care-v2-practice-section__title {
  margin: 0 0 12px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.5rem, 2.5vw, 1.9rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-ink);
}

.care-v2-practice-detail .care-v2-practice-section__lead {
  margin: 0;
  max-width: 46rem;
  color: var(--care-v2-muted);
  line-height: 1.65;
  font-size: 1.02rem;
}

.care-v2-practice-detail .care-v2-service-list {
  list-style: none;
  margin: 18px 0 0;
  padding: 0;
}

.care-v2-practice-detail .care-v2-service-list li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 0;
  color: var(--care-v2-ink);
  font-weight: 600;
}

.care-v2-practice-detail .care-v2-service-list li::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary);
  flex: 0 0 auto;
}

.care-v2-practice-detail .care-v2-practice-doctors-body {
  display: flex;
  align-items: center;
  gap: 16px 20px;
  margin-top: 8px;
}

.care-v2-practice-detail .care-v2-doctor-row {
  display: flex;
  flex: 1 1 auto;
  gap: 14px;
  min-width: 0;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: thin;
}

.care-v2-practice-detail .care-v2-practice-doctors-all {
  flex: 0 0 auto;
  min-height: 44px;
  white-space: nowrap;
}

.care-v2-practice-detail .care-v2-doctor-chip {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 220px;
  max-width: 270px;
  padding: 12px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  text-decoration: none;
  color: inherit;
  box-shadow: none;
}

.care-v2-practice-detail .care-v2-doctor-chip img,
.care-v2-practice-detail .care-v2-doctor-chip .care-avatar {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  object-fit: cover;
  flex: 0 0 auto;
}

.care-v2-practice-detail .care-v2-practice-book {
  border-bottom: 0;
}

@media (max-width: 900px) {
  .care-v2-practice-detail .care-v2-practice-doctors-body {
    flex-direction: column;
    align-items: stretch;
  }

  .care-v2-practice-detail .care-v2-practice-doctors-all {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 767px) {
  .care-v2-practice-detail > .care-v2-practice-hero {
    min-height: 300px;
  }

  .care-v2-practice-detail .care-v2-practice-tabs {
    gap: 0 16px;
    overflow-x: auto;
  }

  .care-v2-practice-detail .care-v2-practice-tabs a:not(.care-v2-btn) {
    min-height: 52px;
    white-space: nowrap;
  }

  .care-v2-practice-detail .care-v2-practice-tabs__cta {
    width: 100%;
    margin: 8px 0 12px;
    order: 99;
    justify-content: center;
  }
}

/* QA-HUB-17-NEAR */

/* QA-HUB-15-CHECKOUT */

/* QA-HUB-05-PRACTICE-DETAIL */

/* QA-HUB-04-PRACTICES */

/* Directory tools — city / sort / map pills (mockup 03) */
.care-v2-practices .care-v2-practices-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 14px;
  align-items: stretch;
}

.care-v2-practices .care-v2-practices-tools--extra {
  margin-bottom: 28px;
  opacity: 0.92;
}

.care-v2-practices .care-v2-tool-pill {
  min-height: 52px;
  border-radius: 14px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  box-shadow: none;
}

.care-v2-practices .care-v2-tool-pill--select {
  -webkit-padding-end: 32px;
          padding-inline-end: 32px;
}

.care-v2-practices .care-v2-tool-pill--map {
  font-weight: 650;
  color: var(--care-v2-navy, #0F172A);
}

.care-v2-practices .care-v2-switch.is-on {
  background: var(--care-v2-primary, #0F6CBD);
}

/* Photo cards + stacked meta rows */
.care-v2-practices .care-v2-practices-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 22px;
  gap: 22px;
}

.care-v2-practices .care-v2-practice-card {
  border-radius: 16px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.care-v2-practices .care-v2-practice-card__photo {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  width: 100%;
  display: block;
  background: #e2e8f0;
}

.care-v2-practices .care-v2-practice-card__body {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 16px 14px;
}

.care-v2-practices .care-v2-practice-card__name {
  font-size: 1.05rem;
  font-weight: 750;
  letter-spacing: -0.015em;
  color: var(--care-v2-ink, #0f172a);
  line-height: 1.3;
}

.care-v2-practices .care-v2-practice-card__facts {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 6px;
}

.care-v2-practices .care-v2-practice-card__fact {
  display: inline-flex;
  align-items: flex-start;
  gap: 7px;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.86rem;
  line-height: 1.4;
}

.care-v2-practices .care-v2-practice-card__fact .care-ico {
  width: 15px;
  height: 15px;
  margin-top: 2px;
  flex: 0 0 auto;
  color: var(--care-v2-muted, #64748b);
}

.care-v2-practices .care-v2-practice-card__hours {
  white-space: pre-line;
}

.care-v2-practices .care-v2-practice-card__specs-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid var(--care-v2-line);
}

.care-v2-practices .care-v2-practice-card__specs {
  flex: 1 1;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.84rem;
  line-height: 1.45;
  min-width: 0;
}

.care-v2-practices .care-v2-practice-card__specs--empty {
  min-height: 1.2em;
}

.care-v2-practices .care-v2-practice-card__foot {
  position: static;
  flex: 0 0 auto;
  color: #94a3b8;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
}

/* Results + numbered pager (mockup foot) */
.care-v2-practices-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px 20px;
  margin-top: 28px;
  padding-top: 4px;
}

.care-v2-practices-foot__meta {
  margin: 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.9rem;
}

.care-v2-practices-pager {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care-v2-practices-pager__chunk {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care-v2-practices-pager__btn,
.care-v2-practices-pager__num {
  min-width: 36px;
  height: 36px;
  padding: 0 8px;
  border-radius: 8px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  color: var(--care-v2-ink, #0f172a);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
}

.care-v2-practices-pager__btn:disabled,
.care-v2-practices-pager__num:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.care-v2-practices-pager__num.is-active {
  background: var(--care-v2-primary, #0F6CBD);
  border-color: var(--care-v2-primary, #0F6CBD);
  color: #fff;
}

.care-v2-practices-pager__ellipsis {
  color: var(--care-v2-muted, #64748b);
  padding: 0 2px;
}

@media (max-width: 991px) {
  .care-v2-practices .care-v2-practices-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .care-v2-practices .care-v2-practices-grid {
    grid-template-columns: 1fr;
  }

  .care-v2-practices-foot {
    flex-direction: column;
    align-items: flex-start;
  }
}

[dir='rtl'] .care-v2-practices .care-v2-tool-pill--select::after {
  right: auto;
  left: 14px;
  transform: translateY(-60%) rotate(-135deg);
}

[dir='rtl'] .care-v2-practices .care-v2-switch.is-on .care-v2-switch__knob {
  transform: translateX(-18px);
}

/* QA-HUB-15-CHECKOUT */

/* QA-HUB-20-HISTORY */
/* Patient admissions / operations portal — care_patient mock language (section cards, detail grids). */

.care-v2-history {
  --care-v2-history-accent: #eff6ff;
  --care-v2-history-primary: #0F6CBD;
  --care-v2-history-navy: #0F172A;
}

.care-v2-history__head--row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.care-v2-history__records {
  flex-shrink: 0;
  margin-top: 4px;
  color: var(--care-v2-history-primary, #0F6CBD);
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none;
}

.care-v2-history__records:hover {
  text-decoration: underline;
}

.care-v2-history__group {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-v2-history__section-title {
  margin: 8px 0 0;
  font-size: 0.78rem;
  font-weight: 780;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-v2-history-navy, #0F172A);
}

.care-v2-history__cards {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-v2-history__card {
  display: block;
  padding: 14px 16px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 16px;
  color: inherit;
  text-decoration: none;
}

.care-v2-history__card--link {
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.care-v2-history__card--link:hover {
  border-color: rgba(37, 99, 235, 0.35);
  box-shadow: 0 8px 24px rgba(30, 58, 95, 0.06);
}

.care-v2-history__card-top {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.care-v2-history__card-main {
  flex: 1 1;
  min-width: 0;
}

.care-v2-history__card-main strong {
  display: block;
  font-size: 1rem;
  font-weight: 800;
  color: var(--care-v2-ink);
}

.care-v2-history__place {
  display: block;
  margin-top: 2px;
  font-style: normal;
  font-size: 0.84rem;
  color: var(--care-v2-muted);
}

.care-v2-history__place::before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  -webkit-margin-end: 4px;
          margin-inline-end: 4px;
  border: 1.5px solid currentColor;
  border-radius: 50%;
  vertical-align: -1px;
  opacity: 0.7;
}

.care-v2-history__ico--sq {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--care-v2-history-accent, #eff6ff);
  flex-shrink: 0;
}

.care-v2-history__ico--sq.is-active {
  background: var(--care-v2-history-accent, #eff6ff);
}

.care-v2-history__ico--sq:not(.is-active) {
  background: #f1f5f9;
}

.care-v2-history__ico--circ {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: var(--care-v2-history-primary, #0F6CBD);
  flex-shrink: 0;
}

.care-v2-history__ico--circ .care-mico {
  filter: brightness(0) invert(1);
}

.care-v2-history__card-meta {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--care-v2-line);
}

.care-v2-history__meta-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.care-v2-history__meta-row > span:nth-child(2) {
  flex: 1 1;
  min-width: 0;
}

.care-v2-history__meta-row strong {
  display: block;
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--care-v2-ink);
}

.care-v2-history__meta-row span span {
  display: block;
  margin-top: 1px;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-history__meta-ico {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  flex-shrink: 0;
  border-radius: 4px;
  background: currentColor;
  color: var(--care-v2-muted);
  opacity: 0.35;
  mask: radial-gradient(circle at 50% 35%, transparent 28%, #000 30%) 0 0 / 100% 100%;
  -webkit-mask: radial-gradient(circle at 50% 40%, #000 32%, transparent 34%) center / 10px 10px no-repeat,
    linear-gradient(#000, #000);
  -webkit-mask-composite: destination-out;
  mask-composite: exclude;
}

.care-v2-history__meta-ico--cal,
.care-v2-history__meta-ico--clock {
  opacity: 0.45;
  background: transparent;
  border: 1.5px solid var(--care-v2-muted);
  border-radius: 3px;
  mask: none;
  -webkit-mask: none;
}

.care-v2-history__banner,
.care-v2-history__secure {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
}

.care-v2-history__banner-ico,
.care-v2-history__secure > span:first-child,
.care-v2-history__overview-bar > span:first-child,
.care-v2-history__hero-badge > span {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: var(--care-v2-history-accent, #eff6ff);
  flex-shrink: 0;
  position: relative;
}

.care-v2-history__banner-ico::after,
.care-v2-history__secure > span:first-child::after,
.care-v2-history__overview-bar > span:first-child::after {
  content: '';
  position: absolute;
  inset: 11px;
  border: 2px solid var(--care-v2-history-primary, #0F6CBD);
  border-radius: 999px;
}

.care-v2-history__banner strong {
  display: block;
  font-size: 0.84rem;
  font-weight: 800;
  color: var(--care-v2-history-primary, #0F6CBD);
}

.care-v2-history__banner p,
.care-v2-history__secure p {
  margin: 2px 0 0;
  font-size: 0.78rem;
  line-height: 1.35;
  color: var(--care-v2-history-navy, #0F172A);
}

.care-v2-history__secure--accent {
  background: var(--care-v2-history-accent, #eff6ff);
  border-color: transparent;
}

.care-v2-history__overview {
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 16px;
  overflow: hidden;
}

.care-v2-history__overview-top {
  display: flex;
  gap: 12px;
  padding: 14px 14px 10px;
}

.care-v2-history__overview-top h1 {
  margin: 0 0 6px;
  font-size: clamp(1.2rem, 2vw, 1.4rem);
  font-weight: 800;
  color: var(--care-v2-ink);
}

.care-v2-history__overview-meta {
  margin: 6px 0 0;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-history__labeled {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  padding: 0 14px 12px;
}

.care-v2-history__labeled span {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--care-v2-muted);
}

.care-v2-history__labeled strong {
  display: block;
  margin-top: 2px;
  font-size: 0.88rem;
  font-weight: 650;
  color: var(--care-v2-ink);
  line-height: 1.35;
}

.care-v2-history__overview-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  background: var(--care-v2-history-accent, #eff6ff);
}

.care-v2-history__overview-bar > span:first-child {
  width: 18px;
  height: 18px;
  border-radius: 4px;
}

.care-v2-history__overview-bar > span:first-child::after {
  inset: 3px;
  border-radius: 2px;
}

.care-v2-history__overview-bar p {
  margin: 0;
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--care-v2-history-navy, #0F172A);
}

.care-v2-history__block-head {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 12px;
}

.care-v2-history__block-head h2 {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 800;
  color: var(--care-v2-ink);
}

.care-v2-history__block-head p {
  margin: 2px 0 0;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-history__block-title--primary {
  color: var(--care-v2-history-primary, #0F6CBD) !important;
}

.care-v2-history__block-ico {
  width: 20px;
  height: 20px;
  margin-top: 2px;
  flex-shrink: 0;
  border-radius: 4px;
  background: var(--care-v2-history-navy, #0F172A);
  opacity: 0.85;
}

.care-v2-history__block-ico--circ {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: var(--care-v2-history-accent, #eff6ff);
  position: relative;
  opacity: 1;
}

.care-v2-history__block-ico--circ::after {
  content: '';
  position: absolute;
  inset: 10px;
  border-radius: 2px;
  background: var(--care-v2-history-primary, #0F6CBD);
}

.care-v2-history__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.care-v2-history__cell {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  min-width: 0;
}

.care-v2-history__cell-ico {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  background: var(--care-v2-history-primary, #0F6CBD);
  opacity: 0.9;
}

.care-v2-history__cell-label {
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--care-v2-muted);
}

.care-v2-history__cell strong {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--care-v2-ink);
  line-height: 1.3;
}

.care-v2-history__cell em {
  font-style: normal;
  font-size: 0.72rem;
  color: var(--care-v2-muted);
}

.care-v2-history__meds-head {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 1fr) minmax(0, 2fr);
  grid-gap: 8px;
  gap: 8px;
  padding: 8px 10px;
  background: #f1f5f9;
  border-radius: 10px;
  font-size: 0.72rem;
  font-weight: 800;
  color: var(--care-v2-muted);
}

.care-v2-history__meds {
  list-style: none;
  margin: 6px 0 0;
  padding: 0;
}

.care-v2-history__meds-row {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 1fr) minmax(0, 2fr);
  grid-gap: 8px;
  gap: 8px;
  padding: 10px 0;
  border-bottom: 1px solid var(--care-v2-line);
  font-size: 0.84rem;
}

.care-v2-history__meds-row:last-child {
  border-bottom: 0;
}

.care-v2-history__meds-row strong {
  color: var(--care-v2-ink);
  font-weight: 700;
  line-height: 1.3;
}

.care-v2-history__meds-row span {
  color: var(--care-v2-muted);
  font-size: 0.78rem;
  line-height: 1.3;
}

.care-v2-history__empty,
.care-v2-history__notes {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--care-v2-muted);
}

.care-v2-history__hep {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-v2-history__hep a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--care-v2-history-primary, #0F6CBD);
  font-weight: 700;
  text-decoration: none;
}

.care-v2-history__hep a:hover {
  text-decoration: underline;
}

.care-v2-history__card--op {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.care-v2-history__op-body {
  flex: 1 1;
  min-width: 0;
}

.care-v2-history__op-title {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.care-v2-history__op-title strong {
  flex: 1 1;
  font-size: 1rem;
  font-weight: 800;
  color: var(--care-v2-ink);
}

.care-v2-history__op-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin-top: 6px;
}

.care-v2-history__chip {
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-history__surgeon {
  margin-top: 8px;
}

.care-v2-history__surgeon strong {
  display: block;
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--care-v2-history-navy, #0F172A);
}

.care-v2-history__surgeon span {
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-history__detail-title h1 {
  margin: 0;
  font-size: clamp(1.35rem, 2.2vw, 1.65rem);
  font-weight: 800;
  color: var(--care-v2-history-navy, #0F172A);
}

.care-v2-history__rule {
  display: block;
  width: 40px;
  height: 3px;
  margin: 6px 0 16px;
  border-radius: 2px;
  background: var(--care-v2-history-primary, #0F6CBD);
}

.care-v2-history__hero {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  background: var(--care-v2-history-primary, #0F6CBD);
  border-radius: 16px;
  color: #fff;
}

.care-v2-history__hero-ico {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: #fff;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  overflow: hidden;
}

.care-v2-history__hero-body {
  flex: 1 1;
  min-width: 0;
}

.care-v2-history__hero-body h2 {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 800;
  color: #fff;
}

.care-v2-history__hero-body p {
  margin: 2px 0 0;
  font-size: 0.78rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.85);
}

.care-v2-history__hero-badge {
  display: grid;
  justify-items: center;
  grid-gap: 4px;
  gap: 4px;
  flex-shrink: 0;
}

.care-v2-history__hero-badge > span {
  width: 36px;
  height: 36px;
  background: #fff;
}

.care-v2-history__hero-badge > span::after {
  content: '';
  position: absolute;
  inset: 10px;
  border: 2px solid var(--care-v2-history-primary, #0F6CBD);
  border-top: 0;
  border-left: 0;
  transform: rotate(45deg);
  border-radius: 0;
}

.care-v2-history__hero-badge em {
  font-style: normal;
  font-size: 0.65rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.9);
}

.care-v2-history__divider {
  height: 1px;
  margin: 0 0 10px;
  background: var(--care-v2-line);
}

.care-v2-history__kv-row {
  display: grid;
  grid-template-columns: minmax(110px, 140px) minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  padding: 8px 0;
}

.care-v2-history__kv-row span {
  font-size: 0.84rem;
  color: var(--care-v2-muted);
}

.care-v2-history__kv-row strong {
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--care-v2-ink);
}

.care-v2-history__cta {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  text-decoration: none;
  color: inherit;
}

.care-v2-history__cta:hover {
  border-color: rgba(37, 99, 235, 0.35);
}

.care-v2-history__cta-ico {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: var(--care-v2-history-accent, #eff6ff);
  display: grid;
  place-items: center;
  flex-shrink: 0;
  overflow: hidden;
}

.care-v2-history__cta strong {
  display: block;
  font-weight: 800;
  color: var(--care-v2-ink);
}

.care-v2-history__cta em {
  display: block;
  margin-top: 2px;
  font-style: normal;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care-v2-history__cta > span:nth-child(2) {
  flex: 1 1;
  min-width: 0;
}

.care-v2-history__cta-action {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  color: var(--care-v2-history-primary, #0F6CBD);
  font-size: 0.78rem;
  font-weight: 700;
  flex-shrink: 0;
}

.care-v2-history__id {
  margin: 0;
  text-align: center;
  font-size: 0.72rem;
  color: var(--care-v2-muted);
}

@media (max-width: 640px) {
  .care-v2-history__head--row {
    flex-direction: column;
  }

  .care-v2-history__grid,
  .care-v2-history__labeled,
  .care-v2-history__meds-head,
  .care-v2-history__meds-row,
  .care-v2-history__kv-row {
    grid-template-columns: 1fr;
  }

  .care-v2-history__cta {
    flex-wrap: wrap;
  }
}

/* QA-HUB-10 */
.care-v2-login {
  background: #fff;
}

.care-v2-login__brand {
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.18), rgba(248, 250, 252, 0.5)),
    url('/care/design/heroes/clinic-lounge.jpg') center / cover no-repeat !important;
}

.care-v2-login__brand-row {
  display: inline-flex;
  align-items: center;
  gap: 14px;
}

.care-v2-login__plus {
  width: 48px;
  height: 48px;
  border-radius: 0;
  background: transparent !important;
  color: #0F6CBD !important;
}

.care-v2-login__plus-svg {
  width: 40px;
  height: 40px;
}

.care-v2-login__brand-mark {
  margin: 0;
  color: #0f172a !important;
  font-size: clamp(1.9rem, 3.2vw, 2.5rem);
  font-weight: 700;
  letter-spacing: -0.03em;
}

.care-v2-login__brand-mark span {
  color: #0f172a !important;
}

.care-v2-login__tag {
  margin: 10px 0 0;
  color: #0f172a !important;
  opacity: 0.78;
  letter-spacing: 0.18em;
  font-size: 0.7rem;
  font-weight: 650;
}

.care-v2-login__panel {
  background: #fff !important;
  align-items: center;
  text-align: center;
}

.care-v2-login__locale {
  top: 22px;
  inset-inline-end: 28px;
  color: #0F6CBD !important;
  gap: 8px;
  font-size: 0.92rem;
  font-weight: 600;
}

.care-v2-login__title {
  font-family: var(--care-v2-serif, 'Source Serif 4', Georgia, serif);
  color: #0F172A !important;
  font-size: clamp(1.85rem, 2.6vw, 2.25rem);
  font-weight: 600;
}

.care-v2-login__title::after {
  width: 56px;
  height: 4px;
  margin-top: 10px;
  margin-inline: auto;
  background: #0F6CBD;
  border-radius: 2px;
}

.care-v2-login__lead {
  color: #64748b !important;
  font-size: 0.95rem;
}

.care-v2-login__input {
  border-radius: 10px !important;
  border-color: #e2e8f0 !important;
  min-height: 52px;
}

.care-v2-login__hint {
  text-align: center;
  color: #64748b;
}

.care-v2-login__hint-link {
  color: #0F6CBD !important;
  font-weight: 650;
  text-decoration: none;
}

.care-v2-login__submit {
  min-height: 52px;
  border-radius: 10px !important;
  background: #0F6CBD !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-weight: 650;
}

.care-v2-login__submit span[aria-hidden] {
  -webkit-margin-start: 4px;
          margin-inline-start: 4px;
  font-size: 1.1rem;
  line-height: 1;
}

.care-v2-login__alt {
  color: #0F6CBD !important;
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 600;
  background: transparent;
  border: 0;
}

.care-v2-login__or {
  color: #94a3b8;
}

.care-v2-login__nafath {
  border-radius: 12px !important;
  border: 1px solid #e2e8f0 !important;
  min-height: 64px;
}

.care-v2-login__footer {
  color: #64748b !important;
  justify-content: center;
}

/* QA-HUB-11 */
.care-v2-hub {
  gap: 14px;
  padding: 4px 0 40px;
  max-width: 920px;
}

.care-v2-hub__hello {
  color: #0f172a !important;
  font-size: clamp(1.7rem, 3vw, 2.05rem);
}

.care-v2-hub__hello em {
  color: #0F6CBD !important;
}

.care-v2-hub__welcome {
  color: #64748b !important;
  font-size: 0.95rem;
}

.care-v2-hub__avatar {
  width: 44px;
  height: 44px;
}

.care-v2-hub__tiles {
  gap: 12px;
}

.care-v2-hub__tile {
  padding: 16px 18px;
  border-radius: 12px;
  border: 1px solid rgba(30, 58, 95, 0.08);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
  grid-template-columns: 48px minmax(0, 1fr) auto;
  gap: 16px;
}

.care-v2-hub__tile-ico {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: #eff6ff !important;
  border: 1px solid rgba(30, 58, 95, 0.08);
  color: #0F6CBD !important;
}

.care-v2-hub__tile strong {
  color: #0f172a !important;
  font-size: 1rem;
}

.care-v2-hub__tile-lead {
  color: #64748b !important;
  font-size: 0.84rem;
}

.care-v2-hub__chev {
  opacity: 0.45;
  border-color: #94a3b8;
}

.care-v2-hub__next {
  padding: 16px 18px;
  border-radius: 12px;
  border: 1px solid rgba(30, 58, 95, 0.08);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.care-v2-hub__next .care-v2-hub__tile-ico {
  border-radius: 999px;
}

.care-v2-hub__next-kicker {
  font-size: 0.95rem;
  font-weight: 700;
  color: #0f172a !important;
}

.care-v2-hub__next-when {
  color: #0F6CBD !important;
  font-weight: 700;
  font-size: 0.95rem;
}

.care-v2-hub__next-meta {
  color: #64748b !important;
}

.care-v2-hub__next-btn {
  border: 1px solid #e2e8f0 !important;
  border-radius: 10px;
  color: #0F6CBD !important;
  font-weight: 650;
  padding: 10px 14px;
}

.care-v2-hub__secure {
  color: #64748b !important;
  font-size: 0.78rem;
}

/* Account surface paper */
.care.care--web:has(.care-v2-hub) .care-main,
.care:has(.care-v2-hub) .care-main {
  background: #f8fafc;
}

/* QA-HUB-11 — account shell + sidebar */
.care-v2-hub-shell {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  grid-gap: 0;
  gap: 0;
  min-height: calc(100vh - 80px);
  margin: -8px -24px -32px;
  background: #f8fafc;
}

.care-v2-hub-side {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 22px 16px 24px;
  background: #fff;
  -webkit-border-end: 1px solid rgba(30, 58, 95, 0.08);
          border-inline-end: 1px solid rgba(30, 58, 95, 0.08);
}

.care-v2-hub-side__brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  padding: 4px 8px 12px;
}

.care-v2-hub-side__logo {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background:
    radial-gradient(circle at 35% 40%, #0F6CBD 0 38%, transparent 40%),
    radial-gradient(circle at 68% 62%, #60a5fa 0 34%, transparent 36%),
    #eff6ff;
  flex-shrink: 0;
}

.care-v2-hub-side__word {
  font-family: var(--care-v2-font-display, 'Sora', sans-serif);
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: #0f172a;
}

.care-v2-hub-side__word span {
  color: #0F6CBD;
}

.care-v2-hub-side__nav {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  flex: 1 1;
}

.care-v2-hub-side__link {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 0 12px;
  border-radius: 10px;
  text-decoration: none;
  color: #0F172A;
  font-size: 0.92rem;
  font-weight: 550;
}

.care-v2-hub-side__link svg {
  width: 20px;
  height: 20px;
  color: #64748b;
  flex-shrink: 0;
}

.care-v2-hub-side__link.is-active {
  background: #eff6ff;
  color: #0F6CBD;
  font-weight: 650;
}

.care-v2-hub-side__link.is-active svg {
  color: #0F6CBD;
}

.care-v2-hub-side__help {
  margin-top: auto;
  padding: 12px 10px 4px;
}

.care-v2-hub-side__help-ico {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  margin-bottom: 8px;
  border-radius: 999px;
  border: 1.5px solid #94a3b8;
  color: #64748b;
  font-size: 0.85rem;
  font-weight: 700;
}

.care-v2-hub-side__help p {
  margin: 0 0 4px;
  font-size: 0.78rem;
  color: #64748b;
}

.care-v2-hub-side__help a {
  color: #0F6CBD;
  font-size: 0.84rem;
  font-weight: 650;
  text-decoration: none;
}

.care-v2-hub-shell .care-v2-hub {
  max-width: none;
  padding: 28px 32px 40px;
  margin: 0;
}

@media (max-width: 900px) {
  .care-v2-hub-shell {
    grid-template-columns: 1fr;
    margin: 0;
  }

  .care-v2-hub-side {
    display: none;
  }

  .care-v2-hub-shell .care-v2-hub {
    padding: 8px 0 32px;
  }
}

/* QA-HUB-11 — hide marketplace top chrome over account shell */
.care:has(.care-v2-hub-shell) > .care-top,
.care:has(.care-v2-hub-shell) .care-top {
  display: none !important;
}

.care:has(.care-v2-hub-shell) .care-stage {
  padding: 0 !important;
  max-width: none !important;
}

.care:has(.care-v2-hub-shell) .care-site-footer {
  display: none !important;
}

.care-v2-hub-shell {
  margin: 0 !important;
  min-height: 100vh;
  min-height: 100dvh;
}


/* —— Booking / order success (medcare theme) —— */
.care--web .care-page--done {
  background: var(--care-v2-paper, #f5f7fb);
}

.care--web .care-page--done .care-page__body {
  max-width: 1080px;
  margin: 0 auto;
  padding: 28px 20px 48px;
}

.care--web .care-mc-done {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  min-height: min(72vh, 640px);
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid var(--care-v2-line, #e5eaf2);
  background: var(--care-v2-surface, #fff);
  box-shadow: 0 18px 48px rgba(11, 31, 58, 0.08);
}

.care--web .care-mc-done__media {
  position: relative;
  min-height: 280px;
  background: #0b1f3a;
}

.care--web .care-mc-done__photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
  display: block;
}

.care--web .care-mc-done__veil {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(160deg, rgba(11, 31, 58, 0.35) 0%, rgba(0, 102, 255, 0.28) 48%, rgba(11, 31, 58, 0.55) 100%);
  pointer-events: none;
}

.care--web .care-mc-done__media-copy {
  position: absolute;
  inset-inline-start: 28px;
  inset-inline-end: 28px;
  bottom: 28px;
  z-index: 1;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  color: #fff;
}

.care--web .care-mc-done__brand {
  display: inline-flex;
}

.care--web .care-mc-done__media-copy p {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.45;
  opacity: 0.92;
  max-width: 22rem;
}

.care--web .care-mc-done__panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  padding: 40px 36px 36px;
  background:
    radial-gradient(120% 80% at 100% 0%, color-mix(in srgb, #16a34a 10%, #fff) 0%, #fff 48%),
    var(--care-v2-surface, #fff);
}

.care--web .care-mc-done__check {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border-radius: 18px;
  background: color-mix(in srgb, #16a34a 14%, #fff);
  color: #15803d;
  border: 1px solid color-mix(in srgb, #16a34a 22%, transparent);
  box-shadow: 0 10px 24px rgba(22, 163, 74, 0.16);
}

.care--web .care-mc-done__kicker {
  margin: 8px 0 0;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #15803d;
}

.care--web .care-mc-done__title {
  margin: 0;
  font-family: var(--care-v2-font-display, inherit);
  font-size: clamp(1.85rem, 3.2vw, 2.35rem);
  font-weight: 750;
  letter-spacing: -0.03em;
  line-height: 1.15;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-mc-done__lead {
  margin: 0;
  max-width: 34rem;
  font-size: 1.02rem;
  line-height: 1.55;
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-mc-done__facts {
  list-style: none;
  margin: 8px 0 4px;
  padding: 0;
  display: grid;
  grid-gap: 0;
  gap: 0;
  border-radius: 16px;
  border: 1px solid var(--care-v2-line, #e5eaf2);
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 4%, #fff);
  overflow: hidden;
}

.care--web .care-mc-done__facts li {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: baseline;
  padding: 12px 16px;
  border-bottom: 1px solid var(--care-v2-line, #e5eaf2);
}

.care--web .care-mc-done__facts li:last-child {
  border-bottom: 0;
}

.care--web .care-mc-done__facts span {
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-mc-done__facts strong {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
  line-height: 1.35;
}

.care--web .care-mc-done__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 18px;
  margin-top: 10px;
}

.care--web .care-mc-done__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  background: linear-gradient(180deg, #2b7cff 0%, var(--care-v2-primary, #0066ff) 100%);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 70%, #0047b3);
  color: #fff !important;
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none;
  box-shadow: 0 10px 22px rgba(0, 102, 255, 0.26);
  transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
}

.care--web .care-mc-done__cta:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
  box-shadow: 0 14px 28px rgba(0, 102, 255, 0.32);
}

.care--web .care-mc-done__back {
  color: var(--care-v2-primary, #0066ff);
  font-weight: 650;
  text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, transparent);
  padding-bottom: 1px;
}

.care--web .care-mc-done__back:hover {
  border-bottom-color: var(--care-v2-primary, #0066ff);
}

/* Hide legacy full-bleed done chrome if still present from older CSS */
.care--web .care-page--done .care-v2-done,
.care--web .care-page--done .care-v2-done__ambient,
.care--web .care-page--done .care-v2-done__foot {
  display: none !important;
}

@media (max-width: 860px) {
  .care--web .care-mc-done {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .care--web .care-mc-done__media {
    min-height: 200px;
    max-height: 240px;
  }

  .care--web .care-mc-done__panel {
    padding: 28px 22px 32px;
  }

  .care--web .care-mc-done__facts li {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .care--web .care-mc-done__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .care--web .care-mc-done__cta {
    width: 100%;
  }

  .care--web .care-mc-done__back {
    text-align: center;
  }
}

/* Care marketplace — production storefront (phone + compact desktop). */

.care-market {
  display: none;
}

.care.care--phone .care-market {
  display: block;
}

.care-home-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0 4px;
}

.care-home-chips a {
  text-decoration: none;
}

.care-market-hero {
  position: relative;
  min-height: 196px;
  margin: 0 -16px 14px;
  overflow: hidden;
  background: linear-gradient(135deg, var(--care-header-start, #2563eb), var(--care-header-end, #1e3a5f));
  color: #fff;
}

.care-market-hero__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.55s ease;
}

.care-market-hero__slide.is-active {
  opacity: 1;
}

.care-market-hero__photo,
.care-market-hero .care-mico-art {
  width: 100%;
  height: 100%;
}

.care-market-hero__veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 28, 52, 0.15) 0%, rgba(8, 28, 52, 0.78) 100%);
}

.care-market-hero__stage {
  position: relative;
  z-index: 1;
  padding: 22px 16px 36px;
  min-height: 196px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 6px;
}

.care-market-hero__kicker {
  margin: 0;
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #d7e8ff;
}

.care-market-hero__title {
  margin: 0;
  max-width: 16ch;
  font-size: 1.45rem;
  font-weight: 780;
  letter-spacing: -0.03em;
  line-height: 1.15;
}

.care-market-hero__lead {
  margin: 0;
  max-width: 34ch;
  font-size: 0.78rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.86);
}

.care a.care-market-hero__cta,
.care-market-hero__cta {
  align-self: flex-start;
  margin-top: 6px;
  min-height: 48px;
  padding: 12px 16px;
  border-radius: 14px;
  background: #fff !important;
  color: var(--care-navy) !important;
  font-size: 15px;
  font-weight: 750;
  text-decoration: none;
}

.care-market-hero__dots {
  position: absolute;
  z-index: 2;
  left: 16px;
  bottom: 10px;
  display: flex;
  gap: 5px;
}

.care-market-hero__dots button {
  width: 16px;
  height: 3px;
  padding: 0;
  border: 0;
  background: rgba(255, 255, 255, 0.35);
}

.care-market-hero__dots button.is-active {
  background: #fff;
}

.care-depts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 12px 10px;
  gap: 12px 10px;
  margin: 0 0 16px;
}

.care-dept {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-decoration: none;
  color: inherit;
}

.care-dept__media {
  width: 58px;
  height: 58px;
  overflow: hidden;
  background: var(--care-mint, #eff6ff);
  border-radius: 16px;
  box-shadow: 0 6px 14px rgba(30, 58, 95, 0.1);
  display: grid;
  place-items: center;
  color: var(--care-v2-primary, #0066ff);
}

.care-dept__media img,
.care-dept__media .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: grid;
}

.care-dept__media .care-ico {
  width: 28px;
  height: 28px;
}

.care-mico {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  border-radius: 0;
}

.care-mico svg,
.care-mico img {
  width: 62%;
  height: 62%;
  display: block;
  object-fit: contain;
}

.care-mico--art {
  background: transparent !important;
}

.care-mico--art img {
  width: 86%;
  height: 86%;
}

.care-mico--hero,
.care-mico--promo {
  background: transparent !important;
  color: #fff !important;
  opacity: 0.3;
}

.care-mico--hero {
  width: 132px;
  height: 132px;
}

.care-mico--hero svg,
.care-mico--promo svg {
  width: 78%;
  height: 78%;
}

.care-mico-art {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: end flex-end;
  padding: 6px 8px;
  border-radius: 0;
}

.care-dept strong {
  font-size: 0.78rem;
  font-weight: 750;
  text-align: center;
  line-height: 1.25;
  color: var(--care-phone-ink, #0f172a);
}

.care-promos {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(78%, 260px);
  grid-gap: 10px;
  gap: 10px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  margin: 0 -16px 18px;
  padding: 0 16px;
}

.care-promos::-webkit-scrollbar {
  display: none;
}

.care-promo {
  position: relative;
  scroll-snap-align: start;
  min-height: 128px;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
  background: var(--care-navy);
}

.care-promo img,
.care-promo .care-mico-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care-promo .care-mico--hero {
  width: 96px;
  height: 96px;
}

.care-promo__copy {
  position: relative;
  z-index: 1;
  height: 100%;
  min-height: 128px;
  padding: 14px 14px 12px;
  background: linear-gradient(90deg, rgba(8, 28, 52, 0.82) 0%, rgba(8, 28, 52, 0.28) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
}

.care-promo em {
  font-style: normal;
  font-size: 0.66rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #d7e8ff;
}

.care-promo strong {
  font-size: 1.05rem;
  letter-spacing: -0.02em;
}

.care-promo span {
  font-size: 0.74rem;
  color: rgba(255, 255, 255, 0.86);
}

.care-shelf {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(148px, 42%);
  grid-gap: 10px;
  gap: 10px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  margin: 0 -16px;
  padding: 0 16px 2px;
}

.care-shelf--doctors {
  grid-auto-columns: minmax(168px, 46%);
}

.care-shelf--specs {
  grid-auto-columns: max-content;
}

.care-shelf::-webkit-scrollbar {
  display: none;
}

.care-shelf-card {
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 148px;
  padding: 12px;
  background: #fff;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care-shelf-card.care-kind-shelf-card--photo {
  padding: 0;
  gap: 0;
  min-height: 240px;
  overflow: hidden;
  border-radius: 16px;
}

.care-kind-shelf-card__photo {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  min-height: 148px;
  object-fit: cover;
  background: #e8f1fb;
}

.care-kind-shelf-card__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 12px 14px 14px;
}

.care-kind-shelf-card__body > strong {
  font-size: 0.95rem;
  font-weight: 750;
  line-height: 1.25;
  color: #0b1f3a;
}

.care-kind-shelf-card__body > span {
  font-size: 0.78rem;
  color: #5d7390;
  line-height: 1.35;
}

.care-shelf-card .care-center__logo,
.care-shelf-card:not(.care-kind-shelf-card--photo) .care-avatar {
  width: 52px;
  height: 52px;
  object-fit: cover;
}

.care-shelf-card:not(.care-kind-shelf-card--photo) strong {
  font-size: 0.86rem;
  font-weight: 750;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care-shelf-card:not(.care-kind-shelf-card--photo) > span {
  font-size: 0.72rem;
  color: #5d7390;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care-spec-chip {
  scroll-snap-align: start;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 8px 14px;
  background: #eef2f6;
  box-shadow: none;
  text-decoration: none;
  color: inherit;
  font-size: 13px;
  font-weight: 700;
  border-radius: 999px;
}

.care-spec-chip em {
  font-style: normal;
  font-size: 0.7rem;
  font-weight: 650;
  color: #5d7390;
}

html.ch-phone-dark .care-shelf-card,
html.ch-phone-dark .care-spec-chip {
  background: #152234;
  box-shadow: 0 0 0 1px rgba(148, 163, 184, 0.16);
  color: #e8eef7;
}

html.ch-phone-dark .care-dept strong,
html.ch-phone-dark .care-shelf-card > span,
html.ch-phone-dark .care-spec-chip em {
  color: #94a3b8;
}

@media (min-width: 768px) {
  .care.care--phone .care-market-hero {
    min-height: 240px;
  }
}

/* Inner Care pages — same storefront language as home. Hidden on desktop website. */
.care-market-page-hero,
.care-depts--page,
.care-scan-card {
  display: none;
}

.care-service-tile__media {
  display: none;
}

.care-service-tile__copy {
  display: contents;
}

.care.care--phone .care-page__body {
  padding-top: 0;
  padding-inline: 16px;
}

.care.care--phone .care-market-page-hero {
  display: block;
  position: relative;
  min-height: 148px;
  margin: 0 -16px 12px;
  overflow: hidden;
  background: var(--care-navy);
  color: #fff;
}

.care.care--phone .care-market-page-hero__photo,
.care.care--phone .care-market-page-hero .care-mico-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care.care--phone .care-market-page-hero__veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 28, 52, 0.18) 0%, rgba(8, 28, 52, 0.78) 100%);
}

.care.care--phone .care-market-page-hero__stage {
  position: relative;
  z-index: 1;
  min-height: 148px;
  padding: 18px 16px 16px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
}

.care.care--phone .care-market-page-hero__kicker {
  margin: 0;
  font-size: 0.66rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #d7e8ff;
}

.care.care--phone .care-market-page-hero__title {
  margin: 0;
  max-width: 18ch;
  font-size: 1.32rem;
  font-weight: 780;
  letter-spacing: -0.03em;
  line-height: 1.15;
}

.care.care--phone .care-market-page-hero__lead {
  margin: 0;
  max-width: 36ch;
  font-size: 0.76rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.86);
}

.care.care--phone .care-depts--page {
  display: grid;
  margin: 0 0 14px;
}

.care.care--phone .care-page .care-center-gate > .care-page__title,
.care.care--phone .care-page .care-center-gate > .care-page__lead,
.care.care--phone .care-page > .care-page__body > .care-page__title {
  display: none;
}

/* Product cards instead of grouped website lists */
.care.care--phone .care-page .care-list--directory,
.care.care--phone .care-page .care-centers,
.care.care--phone .care-page .care-spec-list,
.care.care--phone .care-page .care-list:not(.care-list--directory),
.care.care--phone .care-page .care-practice-picks,
.care.care--phone .care-page .care-list--catalog {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  border-radius: 0;
}

.care.care--phone .care-page .care-list--directory .care-doc,
.care.care--phone .care-page .care-center,
.care.care--phone .care-page .care-doc,
.care.care--phone .care-page .care-row,
.care.care--phone .care-page .care-practice-pick--card,
.care.care--phone .care-page .care-spec-list__item,
.care.care--phone .care-page .care-rad-row {
  border: 0;
  border-radius: 14px;
  border-bottom: 0;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  padding: 14px;
  font-size: 15px;
}

.care.care--phone .care-page .care-doc--pro {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: start;
}

.care.care--phone .care-page .care-doc--pro .care-avatar,
.care.care--phone .care-page .care-center .care-center__logo,
.care.care--phone .care-page .care-center .care-avatar {
  width: 76px;
  height: 76px;
  object-fit: cover;
}

.care.care--phone .care-page .care-doc__about,
.care.care--phone .care-page .care-doc__quals {
  display: none;
}

.care.care--phone .care-page .care-doc__body strong,
.care.care--phone .care-page .care-center__body strong {
  font-size: 15px;
  font-weight: 750;
  letter-spacing: -0.02em;
}

.care.care--phone .care-page .care-doc__body > span,
.care.care--phone .care-page .care-center__meta {
  font-size: 0.74rem;
  color: #5d7390;
}

.care.care--phone .care-page .care-doc__fee {
  font-size: 0.78rem;
  font-weight: 750;
  color: var(--care-navy);
}

.care.care--phone .care-page .care-cta {
  display: none;
}

.care.care--phone .care-page .care-spec-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
  gap: 10px;
}

.care.care--phone .care-page .care-spec-list__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 8px;
  min-height: 108px;
  padding: 12px;
  text-decoration: none;
  color: inherit;
}

.care.care--phone .care-page .care-spec-list__glyph {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  background: #e8eef5;
  color: var(--care-navy);
}

.care.care--phone .care-page .care-spec-list__item span {
  font-size: 15px;
  font-weight: 750;
  line-height: 1.25;
}

.care.care--phone .care-page .care-spec-list__item em {
  font-style: normal;
  font-size: 0.7rem;
  font-weight: 650;
  color: #5d7390;
}

.care.care--phone .care-page .care-rad-row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
}

.care.care--phone .care-page .care-catalog-thumb {
  width: 56px;
  height: 56px;
  overflow: hidden;
  background: #e8eef5;
  flex-shrink: 0;
}

.care.care--phone .care-page .care-catalog-thumb img,
.care.care--phone .care-page .care-catalog-thumb .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: grid;
}

.care.care--phone .care-page .care-rad-row .care-doc {
  display: grid;
  grid-template-columns: 56px auto minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  align-items: center;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.care.care--phone .care-page .care-rad-row .care-doc__body {
  min-width: 0;
}

.care.care--phone .care-page .care-list--catalog {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.care.care--phone .care-page .care-doc--cart {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 100%;
}

.care.care--phone .care-page .care-doc--cart .care-doc__open {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0;
  border: 0;
  background: none;
  text-align: start;
  color: inherit;
}

.care.care--phone .care-page .care-doc--cart .care-avatar--med {
  width: 100%;
  height: 132px;
}

.care.care--phone .care-page .care-doc--cart .care-avatar--med img,
.care.care--phone .care-page .care-doc--cart .care-avatar--med .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: grid;
}

.care.care--phone .care-page .care-practice-pick--card {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 10px;
  gap: 10px;
}

.care.care--phone .care-page .care-practice-pick__hero {
  display: block;
  height: 120px;
  overflow: hidden;
  margin: -12px -12px 0;
}

.care.care--phone .care-page .care-practice-pick__hero img,
.care.care--phone .care-page .care-practice-pick__hero .care-media {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care.care--phone .care-page .care-practice-pick .care-map,
.care.care--phone .care-page .care-practice-pick [class*='leaflet'],
.care.care--phone .care-page .care-practice-pick .care-practice-map,
.care.care--phone .care-page .care-selected-center .care-map,
.care.care--phone .care-page .care-selected-center .care-practice-map,
.care.care--phone .care-page .care-center-profile .care-map,
.care.care--phone .care-page .care-center-profile .care-practice-map {
  display: none !important;
}

.care.care--phone .care-page .care-center-gate .care-search {
  width: 100%;
  min-height: 48px;
  margin: 0 0 12px;
  padding: 0 14px;
  border: 0;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  font-size: 15px;
}

.care.care--phone .care-page .care-filterbar__search--pinned {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 48px;
  margin: 0 0 10px;
  padding: 0 14px;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care.care--phone .care-page .care-filterbar__search--pinned .care-search {
  flex: 1 1;
  border: 0;
  background: transparent;
  padding: 0;
  min-height: 48px;
  box-shadow: none;
}

.care.care--phone .care-page .care-filterbar__toolbar {
  margin-bottom: 10px;
}

.care.care--phone .care-page .care-view-toggle {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 0;
  gap: 0;
  margin: 0 0 12px;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care.care--phone .care-page .care-view-toggle button {
  min-height: 48px;
  border: 0;
  background: transparent;
  font-weight: 700;
  font-size: 15px;
}

.care.care--phone .care-page .care-view-toggle button.is-active {
  background: var(--care-navy);
  color: #fff;
}

.care.care--phone .care-page .care-service-tiles {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
  gap: 10px;
}

.care.care--phone .care-page .care-service-tile {
  position: relative;
  min-height: 118px;
  padding: 12px;
  overflow: hidden;
  border: 0;
  background: var(--care-navy);
  color: #fff;
  text-align: start;
}

.care.care--phone .care-page .care-service-tile__media {
  display: block;
  position: absolute;
  inset: 0;
}

.care.care--phone .care-page .care-service-tile__media img,
.care.care--phone .care-page .care-service-tile__media .care-mico-art,
.care.care--phone .care-page .care-service-tile__media .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care.care--phone .care-page .care-service-tile__copy {
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
  background: linear-gradient(180deg, rgba(8, 28, 52, 0.05) 0%, rgba(8, 28, 52, 0.78) 100%);
  margin: -12px;
  padding: 12px;
}

.care.care--phone .care-page .care-service-tile strong {
  font-size: 0.92rem;
}

.care.care--phone .care-page .care-service-tile span {
  font-size: 0.7rem;
  color: rgba(255, 255, 255, 0.86);
}

.care.care--phone .care-page .care-service-tile .care-ico {
  display: none;
}

.care.care--phone .care-page .care-detail-hero {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  padding: 14px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care.care--phone .care-page .care-detail-hero .care-avatar--lg {
  width: 88px;
  height: 88px;
  object-fit: cover;
}

.care.care--phone .care-scan-card {
  display: none;
}

.care.care--phone .care-page .care-scan-card {
  display: block;
  position: relative;
  min-height: 168px;
  margin: 0 0 14px;
  overflow: hidden;
  background: var(--care-navy);
  color: #fff;
}

.care.care--phone .care-page .care-scan-card img,
.care.care--phone .care-page .care-scan-card .care-mico-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care.care--phone .care-page .care-scan-card__copy {
  position: relative;
  z-index: 1;
  min-height: 168px;
  padding: 16px;
  background: linear-gradient(180deg, rgba(8, 28, 52, 0.2) 0%, rgba(8, 28, 52, 0.8) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 8px;
}

.care.care--phone .care-page .care-scan-card .care-btn {
  align-self: flex-start;
  min-height: 48px;
  border-radius: 14px;
  background: #fff;
  color: var(--care-navy);
  font-size: 15px;
}

.care.care--phone .care-page .care-scan-panel {
  display: none;
}

html.ch-phone-dark .care.care--phone .care-page .care-doc,
html.ch-phone-dark .care.care--phone .care-page .care-center,
html.ch-phone-dark .care.care--phone .care-page .care-spec-list__item,
html.ch-phone-dark .care.care--phone .care-page .care-rad-row,
html.ch-phone-dark .care.care--phone .care-page .care-practice-pick--card,
html.ch-phone-dark .care.care--phone .care-page .care-detail-hero,
html.ch-phone-dark .care.care--phone .care-page .care-filterbar__search--pinned,
html.ch-phone-dark .care.care--phone .care-page .care-view-toggle {
  background: #152234;
  box-shadow: 0 0 0 1px rgba(148, 163, 184, 0.16);
  color: #e8eef7;
}

html.ch-phone-dark .care.care--phone .care-page .care-doc__body > span,
html.ch-phone-dark .care.care--phone .care-page .care-center__meta,
html.ch-phone-dark .care.care--phone .care-page .care-spec-list__item em {
  color: #94a3b8;
}

html.ch-phone-dark .care.care--phone .care-page .care-spec-list__glyph {
  background: #1e2d42;
  color: #d7e8ff;
}

.care-search-page__field {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 48px;
  margin: 0 0 14px;
  padding: 0 14px;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.12);
}

.care-search-page__field .care-search {
  flex: 1 1;
  min-height: 48px;
  border: 0;
  background: transparent;
  padding: 0;
  box-shadow: none;
  font-size: 1rem;
}

.care-search-page__clear {
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 14px;
  background: #e8eef5;
  color: var(--care-navy);
  font-size: 1.2rem;
  line-height: 1;
}

.care-search-page__lead {
  margin: 0 0 14px;
  font-size: 0.86rem;
  line-height: 1.4;
  color: #5d7390;
}

.care-search-page .care-depts--page {
  display: grid;
}

.care-search-page__tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: none;
  margin: 0 0 14px;
  padding-bottom: 2px;
}

.care-search-page__tabs::-webkit-scrollbar {
  display: none;
}

.care-search-page__tabs button {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 8px 14px;
  border: 0;
  border-radius: 999px;
  background: #eef2f6;
  box-shadow: none;
  font-size: 13px;
  font-weight: 700;
}

.care-search-page__tabs button.is-active {
  background: var(--care-navy);
  color: #fff;
  box-shadow: none;
}

.care-search-page__group {
  margin: 0 0 22px;
}

.care-search-page .care-list,
.care-search-page .care-centers {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: transparent;
  box-shadow: none;
}

.care-search-hit {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: center;
  min-height: 56px;
  padding: 14px;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  text-decoration: none;
  color: inherit;
}

.care-search-hit .care-catalog-thumb {
  width: 80px;
  height: 80px;
  overflow: hidden;
  background: #e8eef5;
}

.care-search-hit .care-catalog-thumb img,
.care-search-hit .care-catalog-thumb .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: grid;
}

.care-search-hit__copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.care-search-hit__copy strong {
  font-size: 15px;
  font-weight: 750;
}

.care-search-hit__copy em {
  font-style: normal;
  font-size: 0.74rem;
  color: #5d7390;
}

html.ch-phone-dark .care-search-page__field,
html.ch-phone-dark .care-search-page__tabs button,
html.ch-phone-dark .care-search-hit {
  background: #152234;
  box-shadow: 0 0 0 1px rgba(148, 163, 184, 0.16);
  color: #e8eef7;
}

html.ch-phone-dark .care-search-page__lead,
html.ch-phone-dark .care-search-hit__copy em {
  color: #94a3b8;
}

.care-top__profile {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  max-width: min(220px, 46vw);
  padding: 4px 14px 4px 4px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: var(--care-navy);
  box-shadow: 0 8px 20px rgba(30, 58, 95, 0.16);
  cursor: pointer;
  font: inherit;
  text-align: start;
}

.care-top__profile-photo,
.care-top__profile .care-user-avatar,
.care-top__profile img {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  object-fit: cover;
  flex-shrink: 0;
  background: #e8f2fb;
}

.care-top__profile-copy {
  display: flex;
  flex-direction: column;
  min-width: 0;
  line-height: 1.15;
}

.care-top__profile-copy em {
  font-style: normal;
  font-size: 0.68rem;
  font-weight: 650;
  opacity: 0.7;
}

.care-top__profile-copy strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.92rem;
  font-weight: 780;
}

.care-top__account-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
}

.care-top__avatar,
.care-user-avatar {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  object-fit: cover;
  display: block;
  flex-shrink: 0;
  background: #e8eef5;
}

.care-top__avatar-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.15;
}

.care-top__avatar-copy em {
  display: none;
  font-style: normal;
  font-size: 0.68rem;
  font-weight: 600;
  opacity: 0.78;
}

.care-top__avatar-copy strong {
  font-size: 0.82rem;
  font-weight: 750;
}

.care--web .care-top__cta.care-top__account-btn {
  padding: 3px 12px 3px 3px;
  background: #fff;
  color: var(--care-navy);
}

.care--web .care-top__cta.care-top__account-btn:hover {
  background: #e8f2fb;
  color: var(--care-navy);
}

.care--web .care-top__avatar-copy em {
  display: block;
}

.care.care--phone .care-top__avatar {
  width: 28px;
  height: 28px;
}

.care-drawer__identity {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex: 1 1;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: start;
  cursor: pointer;
  font: inherit;
}

.care-drawer__photo {
  width: 44px;
  height: 44px;
  object-fit: cover;
  flex-shrink: 0;
  background: #e8eef5;
}

.care-drawer__identity strong,
.care-drawer__identity span {
  display: block;
}

.care-drawer__identity strong {
  font-size: 0.98rem;
  font-weight: 750;
  line-height: 1.2;
}

.care-drawer__identity span {
  margin-top: 2px;
  font-size: 0.74rem;
  color: var(--care-ink-soft, #3d5470);
}

.care-store .care-center-profile {
  margin: 0 0 16px;
  padding: 14px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care-store-cta {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  margin: 0 0 16px;
  padding: 16px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care-store-cta__kicker {
  margin: 0 0 4px;
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-navy);
}

.care-store-cta h2 {
  margin: 0 0 4px;
  font-size: 1.15rem;
  font-weight: 780;
  color: var(--care-navy);
}

.care-store-cta p {
  margin: 0;
  font-size: 0.86rem;
  color: #5d7390;
}

.care-store-cta .care-btn {
  justify-self: start;
}

.care-store-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.care-store-crumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 0 0 12px;
  font-size: 0.74rem;
  color: #5d7390;
}

.care-store-crumb a {
  color: var(--care-navy);
  text-decoration: none;
  font-weight: 650;
}

.care-store-crumb span:last-child {
  color: var(--care-navy);
  font-weight: 750;
}

.care-store-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-gap: 8px;
  gap: 8px;
  margin: 0 0 16px;
  padding: 12px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
  border-radius: 14px;
}

.care-store-search input {
  min-height: 48px;
  padding: 0 12px;
  border: 1px solid rgba(30, 58, 95, 0.16);
  border-radius: 14px;
  background: #f7fafc;
  color: var(--care-navy);
  font: inherit;
  font-size: 15px;
}

.care-store-card__price {
  margin-top: auto;
  font-style: normal;
  font-size: 0.86rem;
  font-weight: 780;
  color: var(--care-navy);
}

html.ch-phone-dark .care-store-cta,
html.ch-phone-dark .care-store-search,
html.ch-phone-dark .care-store .care-center-profile {
  background: #152234;
  box-shadow: 0 0 0 1px rgba(148, 163, 184, 0.16);
}

html.ch-phone-dark .care-store-search input {
  background: #0f1a28;
  border-color: rgba(148, 163, 184, 0.2);
  color: #e8eef7;
}

html.ch-phone-dark .care-store-card__price,
html.ch-phone-dark .care-store-crumb span:last-child,
html.ch-phone-dark .care-store-crumb a {
  color: #d7e8ff;
}

.care-store .care-shelf-card {
  min-width: 148px;
}

@media (min-width: 768px) {
  .care-store-cta {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }
}

.care-store .care-center-profile__hero {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: start;
}

.care-store .care-service-tile__media {
  display: block;
}

.care-store .care-service-tile__copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.care-store .care-service-tiles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
}

.care-store .care-service-tile {
  position: relative;
  min-height: 128px;
  padding: 12px;
  overflow: hidden;
  border: 0;
  background: var(--care-navy);
  color: #fff;
  text-align: start;
}

.care-store .care-service-tile__media {
  position: absolute;
  inset: 0;
}

.care-store .care-service-tile__copy {
  position: relative;
  z-index: 1;
  height: 100%;
  justify-content: flex-end;
  background: linear-gradient(180deg, rgba(8, 28, 52, 0.08) 0%, rgba(8, 28, 52, 0.78) 100%);
  margin: -12px;
  padding: 12px;
}

.care-store .care-service-tile .care-ico {
  display: none;
}

.care-store .care-list--directory {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

/* Practice storefront is a shop page on phone and desktop website. */
.care-store .care-page__body {
  padding-top: 0;
}

.care-store .care-market-page-hero {
  display: block;
  position: relative;
  min-height: 168px;
  margin: 0 0 16px;
  overflow: hidden;
  background: var(--care-navy);
  color: #fff;
}

.care-store .care-market-page-hero__photo,
.care-store .care-market-page-hero .care-mico-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care-store .care-market-page-hero__veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 28, 52, 0.18) 0%, rgba(8, 28, 52, 0.78) 100%);
}

.care-store .care-market-page-hero__stage {
  position: relative;
  z-index: 1;
  min-height: 168px;
  padding: 22px 18px 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
}

.care-store .care-market-page-hero__kicker {
  margin: 0;
  font-size: 0.66rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #d7e8ff;
}

.care-store .care-market-page-hero__title {
  margin: 0;
  max-width: 22ch;
  font-size: 1.45rem;
  font-weight: 780;
  letter-spacing: -0.03em;
  line-height: 1.15;
}

.care-store .care-market-page-hero__lead {
  margin: 0;
  max-width: 42ch;
  font-size: 0.8rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.86);
}

.care-store .care-depts--page {
  display: grid;
  margin: 0 0 16px;
}

.care.care--phone .care-store .care-market-page-hero {
  margin: 0 -16px 12px;
}

@media (min-width: 768px) {
  .care-store .care-service-tiles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .care-store .care-market-page-hero,
  .care-store .care-market-page-hero__stage {
    min-height: 220px;
  }

  .care-store .care-shelf--doctors {
    grid-auto-columns: minmax(180px, 22%);
  }
}

/* Ink on white — `.care a { color: inherit }` and primary !important must not bleach these CTAs. */
.care.care--phone .care-status .care-btn,
.care.care--phone .care-status a.care-btn {
  background: #fff !important;
  color: var(--care-navy) !important;
  border-color: #fff !important;
}

.care-hero--photo .care-hero__cta .care-btn--solid {
  background: #fff !important;
  color: var(--care-navy) !important;
  border-color: #fff !important;
}

.care-doc > .care-cta,
.care-center > .care-cta {
  background: var(--care-navy) !important;
  color: #fff !important;
}

.care-shop-layout {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
}

.care-cart {
  padding: 16px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

.care-cart-ico {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 6px 10px;
  border: 0;
  background: #fff;
  color: var(--care-navy);
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.14);
  font: inherit;
  font-size: 0.8rem;
  font-weight: 750;
  cursor: pointer;
}

.care-cart-ico.is-hot {
  background: var(--care-navy);
  color: #fff;
  box-shadow: none;
}

.care-cart-ico--compact {
  width: 40px;
  min-height: 40px;
  padding: 0;
  justify-content: center;
}

.care-cart-ico__count {
  position: absolute;
  top: -5px;
  inset-inline-end: -5px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #c2410c;
  color: #fff;
  font-size: 0.62rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1;
}

.care-cart__empty {
  margin: 0 0 12px;
  font-size: 0.84rem;
  color: #5d7390;
}

.care-pharm-cart-bar {
  display: none;
}

.care.care--phone .care-pharm-cart-bar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  align-items: center;
  position: fixed;
  left: 0;
  right: 0;
  bottom: var(--care-tabs-h, 56px);
  z-index: 28;
  margin: 0;
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
  background: var(--care-navy);
  box-shadow: 0 -8px 24px rgba(8, 28, 52, 0.18);
}

.care.care--phone .care-pharm-cart-bar .care-cart-ico {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  box-shadow: none;
}

.care.care--phone .care-pharm-cart-bar .care-btn--cart {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  background: #fff !important;
  color: var(--care-navy) !important;
}

.care.care--phone .care-page--has-cart {
  padding-bottom: 76px;
}

.care--web .care-top__actions .care-cart-ico {
  background: #fff;
  color: var(--care-navy);
}

.care.care--phone .care-top__tools .care-cart-ico {
  width: 48px;
  min-height: 48px;
  padding: 0;
  background: transparent;
  color: #fff;
  box-shadow: none;
}

.care.care--phone .care-top__tools .care-cart-ico.is-hot {
  background: rgba(255, 255, 255, 0.12);
}

.care-practice-pick__actions .care-cart-ico,
.care-map-sheet__actions .care-cart-ico,
.care-selected-center .care-cart-ico {
  align-self: start;
}

.care-service-tile__copy .care-cart-ico {
  margin-top: 8px;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  box-shadow: none;
}

.care-cart h2 {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0 0 12px;
  font-size: 1.15rem;
  color: var(--care-navy);
}

.care-cart h2 em {
  font-style: normal;
  font-size: 0.78rem;
  font-weight: 650;
  color: #5d7390;
}

.care-cart__lines {
  margin: 0 0 12px;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-cart__lines li {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(30, 58, 95, 0.08);
}

.care-cart__lines strong {
  font-size: 0.88rem;
}

.care-cart__lines span {
  font-size: 0.76rem;
  color: #5d7390;
}

.care .care-btn--cart {
  width: 100%;
  min-height: 48px;
  justify-content: center;
  background: var(--care-navy) !important;
  color: #fff !important;
  border: 0 !important;
  font-weight: 750;
  opacity: 1;
}

.care .care-btn--cart:disabled {
  background: #94a3b8 !important;
  color: #fff !important;
}

.care-doc--cart .care-btn--cart,
.care-doc--cart .care-qty {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: end;
  justify-self: end;
  width: auto;
  min-width: 132px;
  padding: 0 14px;
}

.care.care--phone .care-page .care-doc--cart .care-btn--cart,
.care.care--phone .care-page .care-doc--cart .care-qty {
  grid-column: auto;
  grid-row: auto;
  width: 100%;
  margin-top: auto;
}

.care.care--phone .care-shop-layout .care-cart {
  display: none;
}

html.ch-phone-dark .care.care--phone .care-pharm-cart-bar {
  background: #0f1a28;
  box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.35);
}

@media (min-width: 900px) {
  .care-shop-layout {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
    align-items: start;
  }

  .care-cart {
    position: -webkit-sticky;
    position: sticky;
    top: 12px;
  }
}

.care-kind-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
  margin: 0 0 18px;
}

.care-kind-card {
  position: relative;
  display: block;
  min-height: 132px;
  overflow: hidden;
  border-radius: 18px;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(30, 58, 95, 0.14);
}

.care-kind-card img {
  display: block;
  width: 100%;
  height: 132px;
  object-fit: cover;
}

.care-kind-card span {
  position: absolute;
  inset: auto 0 0;
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  padding: 28px 12px 10px;
  background: linear-gradient(180deg, transparent, rgba(8, 28, 48, 0.82));
}

.care-kind-card strong {
  font-size: 0.95rem;
  font-weight: 780;
  letter-spacing: -0.02em;
}

.care-kind-card em {
  font-style: normal;
  font-size: 0.68rem;
  line-height: 1.35;
  color: rgba(255, 255, 255, 0.84);
}

.care-kind-shelf__title {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.care-kind-shelf__title img {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  object-fit: cover;
  box-shadow: 0 4px 12px rgba(30, 58, 95, 0.16);
}

.care-centers--kind {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}

.care-center--kind {
  grid-template-columns: 56px minmax(0, 1fr);
}

@media (min-width: 720px) {
  .care-kind-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
  }

  .care-kind-card:not(.care-kind-card--photo),
  .care-kind-card:not(.care-kind-card--photo) img {
    min-height: 180px;
    height: 180px;
  }

  .care-kind-card--photo,
  .care-kind-card--photo img.care-kind-card__art {
    min-height: 0;
    height: auto;
  }

  .care-centers--kind {
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
  }

  .care-kind-shelf-card__photo {
    min-height: 172px;
  }
}

/**
 * CareOS24 B2C home (mockups 01 + 18).
 * Loaded after care-design-v2.css — overrides home hero / type strip / mobile doorstep.
 */

/* —— Desktop top nav wordmark —— */
.care--web .care-top__brand .care-top__wordmark,
.care--web .care-top__brand .care-top__tagline {
  display: none;
}

.care-v2-mark {
  font-family: var(--care-v2-font-display, 'Sora', 'Inter', system-ui, sans-serif);
  font-weight: 800;
  letter-spacing: -0.03em;
  color: var(--care-v2-primary, #0F6CBD);
  line-height: 1;
}

.care-v2-mark span {
  color: var(--care-v2-secondary, #14B8A6);
}

.care--web .care-top__brand .care-v2-mark {
  font-size: 1.35rem;
}

.care--web .care-top__nav a {
  color: var(--care-v2-navy, #0F172A);
  font-weight: 500;
}

.care--web .care-top__nav a:hover,
.care--web .care-top__nav a:focus-visible {
  color: var(--care-v2-primary, #0F6CBD);
  background: transparent;
}

.care--web .care-top__nav a.is-active {
  color: var(--care-v2-primary, #0F6CBD);
  border-bottom-color: var(--care-v2-primary, #0F6CBD);
}

.care--web .care-top__profile {
  display: none;
}

.care--web .care-top__lang {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care--web .care-v2-lang-pair {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--care-v2-navy, #0F172A);
  letter-spacing: 0.02em;
  pointer-events: none;
}

.care--web .care-top__lang .ec-locale-switcher {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.care-v2-mark-plus {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: #60a5fa;
}

/* —— Desktop home hero (MedCare split) —— */
.care-v2-home-hero {
  position: relative !important;
  isolation: isolate;
  min-height: min(72vh, 640px) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important;
  align-items: center !important;
  place-items: stretch !important;
  grid-gap: 32px !important;
  gap: 32px !important;
  margin: 0 !important;
  padding: 48px max(24px, calc((100% - 1200px) / 2 + 24px)) !important;
  overflow: hidden;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #f0f7ff 0%, #f7f9fc 70%) !important;
}

.care-v2-home-hero__ambient {
  display: none !important;
}

.care-v2-home-hero__photo {
  position: relative !important;
  z-index: 1 !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 520px !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  justify-self: end !important;
  order: 2 !important;
  object-fit: cover !important;
  object-position: center top !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 36px rgba(11, 31, 58, 0.14) !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
  pointer-events: none;
}

.care-v2-home-hero__copy {
  position: relative;
  z-index: 1;
  text-align: left !important;
  width: min(560px, 100%) !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column;
  align-items: flex-start !important;
  order: 1 !important;
}

.care-v2-home-hero__brand {
  margin: 0 0 12px !important;
  font-size: 1.1rem !important;
}

.care-v2-home-hero__title {
  margin: 0 0 12px !important;
  text-align: left !important;
  font-family: var(--care-v2-font-display, 'Sora', sans-serif) !important;
  font-size: clamp(2.1rem, 3.6vw, 3.25rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.12 !important;
  color: #0F172A !important;
}

.care-v2-home-hero__lead {
  margin: 0 0 22px !important;
  text-align: left !important;
  max-width: 42ch !important;
  color: #475569 !important;
}

.care-v2-home-hero__cta {
  align-self: flex-start !important;
  border-radius: 999px !important;
  background: #0F6CBD !important;
  min-height: 48px !important;
  margin-bottom: 20px !important;
}

.care-v2-home-hero__search {
  width: 100% !important;
  margin: 0 !important;
}

.care-v2-home-hero__brand .care-v2-mark {
  font-size: inherit;
  letter-spacing: -0.04em;
}

.care-v2-home-hero__cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  background: #0F6CBD !important;
  color: #fff !important;
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  font-size: 0.95rem;
  font-weight: 600;
  border: 0;
  cursor: pointer;
  margin: 0 0 20px !important;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.28);
}

.care-v2-home-hero__cta svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.care-v2-home-hero__cta:hover {
  background: var(--care-v2-navy, #0F172A) !important;
}

.care-v2-home-hero__search {
  width: 100% !important;
  max-width: min(920px, 100%) !important;
  margin: 0 !important;
}

.care-v2-home-hero__search .care-smart__hints {
  display: none;
}

.care-v2-home-hero__search .care-smart__field {
  min-height: 56px;
  padding: 8px 8px 8px 18px;
  border-radius: 16px !important;
  background: #fff !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 2px 8px rgba(11, 31, 58, 0.06) !important;
}

.care-v2-home-hero__search .care-smart__place-btn--lead,
.care-v2-home-hero__search .care-smart__place-btn--compact {
  display: none !important;
}

.care-v2-home-hero__search .care-smart__submit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0 !important;
  border-radius: 999px !important;
  background: #0F6CBD !important;
  color: #fff !important;
  flex-shrink: 0;
}

.care-v2-home-hero__search .care-smart__submit-label {
  display: none;
}

.care-v2-home-hero__search .care-smart__submit-ico {
  width: 20px;
  height: 20px;
}

.care-v2-home-hero__search .care-smart__icon {
  color: var(--care-v2-muted, #64748b);
  flex-shrink: 0;
}

.care-v2-home-hero__search .care-smart__input {
  font-size: 1rem;
  font-weight: 400;
  color: var(--care-v2-ink, #0f172a);
}

.care-v2-home-hero__search .care-smart__input::placeholder {
  color: var(--care-v2-muted, #64748b);
  opacity: 1;
}

/* —— Type strip (mockup 01 — paper band, icon + label row) —— */
.care-v2-home > .care-v2-type-strip {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 28px max(24px, env(safe-area-inset-right, 0px)) 36px max(24px, env(safe-area-inset-left, 0px)) !important;
  text-align: center;
  background: var(--care-v2-paper, #f8fafc) !important;
  border-top: 1px solid rgba(30, 58, 95, 0.04);
}

.care-v2-type-strip__eyebrow {
  margin: 0 0 20px !important;
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  font-size: 0.68rem !important;
  font-weight: 700;
  letter-spacing: 0.18em !important;
  text-transform: uppercase;
  color: var(--care-v2-muted, #64748b) !important;
}

.care-v2-type-strip__row {
  display: flex;
  flex-wrap: nowrap !important;
  justify-content: center;
  align-items: center;
  gap: 0;
  list-style: none;
  width: min(880px, 100%);
  margin: 0 auto;
  padding: 0;
}

.care-v2-type-strip__row > li {
  position: relative;
  flex: 1 1;
  max-width: 210px;
  min-width: 0;
}

.care-v2-type-strip__row > li + li {
  -webkit-border-start: 0 !important;
          border-inline-start: 0 !important;
}

.care-v2-type-strip__row > li + li::before {
  content: '';
  position: absolute;
  inset-inline-start: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 16px;
  background: rgba(30, 58, 95, 0.14);
  pointer-events: none;
}

.care-v2-type-strip a {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center;
  gap: 10px !important;
  padding: 12px 16px !important;
  color: var(--care-v2-navy, #0F172A) !important;
  text-decoration: none;
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  font-size: 0.95rem;
  font-weight: 600;
}

.care-v2-type-strip a:hover {
  opacity: 0.85;
}

.care-v2-type-strip a svg,
.care-v2-type-strip__ico {
  width: 28px !important;
  height: 28px !important;
  flex-shrink: 0;
  color: var(--care-v2-primary, #0F6CBD) !important;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.care-v2-home-below {
  background: var(--care-v2-paper, #f8fafc);
}

/* —— Mobile defaults (hidden on desk) —— */
.care-v2-mobile-hero,
.care-v2-doorstep,
.care-v2-trust {
  display: none;
}

/* Phone shell */
.care--phone.care--v2-home .care-top {
  display: none;
}

.care--phone .care-v2-home-hero,
.care--phone .care-v2-type-strip {
  display: none !important;
}

.care--phone .care-v2-mobile-hero {
  display: block !important;
  position: relative;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  background: transparent !important;
  border-radius: 0 !important;
  overflow: visible !important;
  min-height: 0 !important;
  gap: 0 !important;
}

.care--phone .care-v2-mobile-hero::after,
.care-v2-mobile-hero::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

.care--phone .care-v2-mobile-hero__stage {
  position: relative;
  z-index: 0;
  min-height: 272px;
  padding: 32px 20px 78px;
  overflow: hidden;
  border-radius: 0 !important;
  background: var(--care-v2-navy, #0F172A);
  /* Mockup 18: lower left, rises to right */
  -webkit-clip-path: ellipse(148% 100% at 36% 0%);
          clip-path: ellipse(148% 100% at 36% 0%);
}

.care--phone .care-v2-mobile-hero__photo {
  display: block !important;
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 78% 28%;
  pointer-events: none;
}

.care--phone .care-v2-mobile-hero__veil {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    102deg,
    #0F172A 0%,
    #0F172A 42%,
    rgba(30, 58, 95, 0.72) 58%,
    rgba(30, 58, 95, 0.28) 74%,
    transparent 92%
  );
  pointer-events: none;
}

.care--phone .care-v2-mobile-hero__copy {
  position: relative;
  z-index: 2;
  max-width: 15.5rem;
  padding-bottom: 4px;
}

.care--phone .care-v2-mobile-hero__brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 16px !important;
  font-size: 1.15rem !important;
  color: #fff !important;
}

.care--phone .care-v2-mobile-hero__brand .care-v2-mark {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #fff;
}

.care--phone .care-v2-mobile-hero__brand span,
.care--phone .care-v2-mobile-hero__brand .care-v2-mark span {
  color: #60a5fa !important;
}

.care--phone .care-v2-mobile-hero__title {
  margin: 0 0 10px !important;
  font-family: var(--care-v2-font-display, 'Sora', sans-serif);
  font-size: 1.75rem !important;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #fff !important;
}

.care--phone .care-v2-mobile-hero__lead {
  margin: 0 !important;
  max-width: 16rem;
  font-size: 0.94rem !important;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.9) !important;
  font-weight: 400;
}

.care--phone .care-v2-mobile-hero__search {
  position: relative;
  z-index: 3;
  margin: -44px 18px 0 !important;
}

.care--phone .care-v2-mobile-hero__search .care-smart__hints {
  display: none !important;
}

.care--phone .care-v2-mobile-hero__search .care-smart__field {
  min-height: 54px;
  padding: 10px 18px;
  border-radius: 999px !important;
  background: #fff !important;
  border: 0 !important;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.18) !important;
}

.care--phone .care-v2-mobile-hero__search .care-smart__place-btn,
.care--phone .care-v2-mobile-hero__search .care-smart__submit {
  display: none !important;
}

.care--phone .care-v2-mobile-hero__search .care-smart__icon {
  color: var(--care-v2-muted, #64748b);
}

.care--phone .care-v2-mobile-hero__search .care-smart__input {
  font-size: 0.95rem;
  color: var(--care-v2-ink, #0f172a);
}

.care--phone .care-v2-doorstep {
  display: block !important;
  padding: 36px 16px 8px;
  margin: 0 !important;
  background: var(--care-v2-paper, #f8fafc);
}

.care--phone .care-v2-doorstep__title {
  margin: 0 0 4px !important;
  font-family: var(--care-v2-font-display, 'Sora', sans-serif);
  font-size: 1.28rem !important;
  font-weight: 700;
  color: var(--care-v2-navy, #0F172A);
}

.care--phone .care-v2-doorstep__lead {
  margin: 0 0 18px !important;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.9rem;
  line-height: 1.4;
}

.care--phone .care-v2-doorstep__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.care--phone .care-v2-doorstep__grid a {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 112px;
  padding: 18px 10px 16px !important;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.06) !important;
  border-radius: 16px;
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.05);
  color: var(--care-v2-navy, #0F172A);
  text-decoration: none;
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  font-size: 0.86rem;
  font-weight: 600;
  text-align: center;
}

.care--phone .care-v2-doorstep__grid a svg {
  width: 28px;
  height: 28px;
  color: var(--care-v2-primary, #0F6CBD);
  stroke: currentColor;
  fill: none;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.care--phone .care-v2-trust {
  display: flex !important;
  grid-template-columns: none !important;
  gap: 14px;
  align-items: center;
  margin: 18px 16px 28px !important;
  padding: 16px 18px !important;
  background: #eff6ff !important;
  border: 1px solid rgba(37, 99, 235, 0.08);
  border-radius: 18px;
}

.care--phone .care-v2-trust__badge {
  flex-shrink: 0;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: var(--care-v2-primary, #0F6CBD) !important;
  color: #fff !important;
  display: grid;
  place-items: center;
}

.care--phone .care-v2-trust__badge svg {
  width: 22px;
  height: 22px;
}

.care--phone .care-v2-trust > div {
  min-width: 0;
}

.care--phone .care-v2-trust strong {
  display: block;
  margin-bottom: 2px;
  color: var(--care-v2-navy, #0F172A);
  font-size: 0.98rem;
  font-weight: 700;
}

.care--phone .care-v2-trust > div > span {
  color: var(--care-v2-muted, #64748b);
  font-size: 0.72rem;
  line-height: 1.35;
}

.care--phone .care-v2-home-below {
  display: none !important;
}

.care--phone .care-home > .care-main {
  padding-top: 0;
  background: var(--care-v2-paper, #f8fafc);
}

@media (max-width: 767px) {
  .care-v2-home-hero,
  .care-v2-type-strip {
    display: none !important;
  }

  .care-v2-mobile-hero {
    display: block !important;
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: visible !important;
    min-height: 0 !important;
  }

  .care-v2-mobile-hero::after {
    content: none !important;
    display: none !important;
    background: none !important;
  }

  .care-v2-mobile-hero__stage {
    position: relative;
    z-index: 0;
    min-height: 272px;
    padding: 32px 20px 78px;
    overflow: hidden;
    border-radius: 0 !important;
    background: var(--care-v2-navy, #0F172A);
    -webkit-clip-path: ellipse(148% 100% at 36% 0%);
            clip-path: ellipse(148% 100% at 36% 0%);
  }

  .care-v2-mobile-hero__photo {
    display: block !important;
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 78% 28%;
    pointer-events: none;
  }

  .care-v2-mobile-hero__veil {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(
      102deg,
      #0F172A 0%,
      #0F172A 42%,
      rgba(30, 58, 95, 0.72) 58%,
      rgba(30, 58, 95, 0.28) 74%,
      transparent 92%
    );
    pointer-events: none;
  }

  .care-v2-mobile-hero__copy {
    position: relative;
    z-index: 2;
    max-width: 15.5rem;
  }

  .care-v2-mobile-hero__brand {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 16px !important;
    color: #fff !important;
  }

  .care-v2-mobile-hero__brand .care-v2-mark {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fff;
  }

  .care-v2-mobile-hero__brand span,
  .care-v2-mobile-hero__brand .care-v2-mark span {
    color: #60a5fa !important;
  }

  .care-v2-mobile-hero__title {
    margin: 0 0 10px !important;
    font-family: var(--care-v2-font-display, 'Sora', sans-serif);
    font-size: 1.75rem !important;
    line-height: 1.15;
    font-weight: 700;
    color: #fff !important;
  }

  .care-v2-mobile-hero__lead {
    margin: 0 !important;
    max-width: 16rem;
    font-size: 0.94rem !important;
    color: rgba(255, 255, 255, 0.9) !important;
  }

  .care-v2-mobile-hero__search {
    position: relative;
    z-index: 3;
    margin: -44px 18px 0 !important;
  }

  .care-v2-mobile-hero__search .care-smart__field {
    min-height: 54px;
    padding: 10px 18px;
    border-radius: 999px !important;
    background: #fff !important;
    border: 0 !important;
    box-shadow: 0 14px 36px rgba(15, 23, 42, 0.18) !important;
  }

  .care-v2-mobile-hero__search .care-smart__place-btn,
  .care-v2-mobile-hero__search .care-smart__submit,
  .care-v2-mobile-hero__search .care-smart__hints {
    display: none !important;
  }

  .care-v2-doorstep {
    display: block !important;
    padding: 36px 16px 8px;
    margin: 0;
    background: var(--care-v2-paper, #f8fafc);
  }

  .care-v2-doorstep__title {
    margin: 0 0 4px !important;
    font-family: var(--care-v2-font-display, 'Sora', sans-serif);
    font-size: 1.28rem !important;
    font-weight: 700;
    color: var(--care-v2-navy, #0F172A);
  }

  .care-v2-doorstep__lead {
    margin: 0 0 18px !important;
    color: var(--care-v2-muted, #64748b);
    font-size: 0.9rem;
  }

  .care-v2-doorstep__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 12px;
    gap: 12px;
  }

  .care-v2-doorstep__grid a {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 112px;
    padding: 18px 10px 16px !important;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    border-radius: 16px;
    box-shadow: 0 6px 20px rgba(15, 23, 42, 0.05);
    color: var(--care-v2-navy, #0F172A);
    text-decoration: none;
    font-size: 0.86rem;
    font-weight: 600;
    text-align: center;
  }

  .care-v2-doorstep__grid a svg {
    width: 28px;
    height: 28px;
    color: var(--care-v2-primary, #0F6CBD);
    stroke: currentColor;
    fill: none;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .care-v2-trust {
    display: flex !important;
    gap: 14px;
    align-items: center;
    margin: 18px 16px 28px !important;
    padding: 16px 18px !important;
    background: #eff6ff !important;
    border: 1px solid rgba(37, 99, 235, 0.08);
    border-radius: 18px;
  }

  .care-v2-trust__badge {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    background: var(--care-v2-primary, #0F6CBD) !important;
    color: #fff !important;
    display: grid;
    place-items: center;
  }

  .care-v2-trust__badge svg {
    width: 22px;
    height: 22px;
  }

  .care-v2-trust > div {
    min-width: 0;
  }

  .care-v2-trust strong {
    display: block;
    margin-bottom: 2px;
    color: var(--care-v2-navy, #0F172A);
    font-size: 0.98rem;
    font-weight: 700;
  }

  .care-v2-trust > div > span {
    color: var(--care-v2-muted, #64748b);
    font-size: 0.72rem;
  }

  .care-v2-home-below {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .care:not(.care--phone) .care-v2-mobile-hero,
  .care:not(.care--phone) .care-v2-doorstep,
  .care:not(.care--phone) .care-v2-trust {
    display: none !important;
  }
}

@media (max-width: 959px) and (min-width: 768px) {
  .care-v2-home-hero {
    padding-top: 64px !important;
    padding-bottom: 56px !important;
    min-height: min(58vh, 520px) !important;
  }

  .care-v2-home-hero__photo {
    display: block !important;
    width: min(48%, 480px);
    opacity: 0.95;
  }

  .care-v2-home-hero__title {
    font-size: clamp(1.95rem, 3.6vw, 2.4rem) !important;
  }
}

/* QA-HUB-01-HOME — mockup 01 desktop polish */

/* QA-HUB-01 */
.care-v2-home-hero__title {
  color: #0f172a !important;
}

.care-v2-home-hero__brand .care-v2-mark {
  color: #0f172a;
}

.care-v2-home-hero__brand .care-v2-mark span {
  color: #0F6CBD;
}

.care-v2-home-hero__cta {
  border-radius: 8px !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.22) !important;
}

.care-v2-home-hero__search .care-smart__field {
  min-height: 64px !important;
  box-shadow: 0 12px 36px rgba(15, 23, 42, 0.12) !important;
}

.care-v2-home-hero__search .care-smart__submit {
  width: 48px !important;
  height: 48px !important;
  border-radius: 999px !important;
  background: #0F6CBD !important;
}

.care-v2-home > .care-v2-type-strip {
  background: #f8fafc !important;
}

.care-v2-type-strip a {
  color: #0F172A !important;
  font-weight: 600;
}

.care-v2-type-strip a svg {
  color: #0F6CBD !important;
}

/* QA-HUB-18 */
.care-v2-mark-plus {
  color: #0F6CBD !important;
}

.care--phone .care-v2-mobile-hero__brand .care-v2-mark span,
.care--phone .care-v2-mobile-hero__brand span {
  color: #0F6CBD !important;
}

.care--phone .care-v2-mobile-hero__stage {
  -webkit-clip-path: none !important;
          clip-path: none !important;
  border-radius: 0 0 50% 50% / 0 0 28px 28px !important;
  padding-bottom: 86px !important;
  min-height: 286px !important;
}

.care--phone .care-v2-mobile-hero__search {
  margin: -40px 16px 0 !important;
}

.care--phone .care-v2-doorstep__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.care--phone .care-v2-doorstep__grid a {
  min-height: 104px !important;
  padding: 16px 8px 14px !important;
  border-radius: 14px !important;
  font-size: 0.78rem !important;
  gap: 8px !important;
}

.care--phone .care-v2-doorstep__grid a svg {
  width: 26px !important;
  height: 26px !important;
}

.care--phone .care-v2-trust {
  background: #f8fafc !important;
  border: 0 !important;
  border-radius: 14px !important;
}

.care--phone .care-v2-doorstep {
  background: #f8fafc !important;
  padding-top: 32px !important;
}

.care--phone .care-v2-doorstep__title {
  color: #0f172a !important;
}

@media (max-width: 767px) {
  .care-v2-mobile-hero__brand .care-v2-mark span,
  .care-v2-mobile-hero__brand span {
    color: #0F6CBD !important;
  }

  .care-v2-mobile-hero__stage {
    -webkit-clip-path: none !important;
            clip-path: none !important;
    border-radius: 0 0 50% 50% / 0 0 28px 28px !important;
    padding-bottom: 86px !important;
    min-height: 286px !important;
  }

  .care-v2-mobile-hero__search {
    margin: -40px 16px 0 !important;
  }

  .care-v2-doorstep {
    background: #f8fafc !important;
    padding-top: 32px !important;
  }

  .care-v2-doorstep__title {
    color: #0f172a !important;
  }

  .care-v2-doorstep__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .care-v2-doorstep__grid a {
    min-height: 104px !important;
    padding: 16px 8px 14px !important;
    border-radius: 14px !important;
    font-size: 0.78rem !important;
    gap: 8px !important;
  }

  .care-v2-doorstep__grid a svg {
    width: 26px !important;
    height: 26px !important;
  }

  .care-v2-trust {
    background: #f8fafc !important;
    border: 0 !important;
    border-radius: 14px !important;
  }
}

/* QA-HUB-01 — type-strip line strokes + search pill depth */
.care-v2-type-strip a svg,
.care-v2-type-strip__ico {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.55 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.care-v2-home-hero__search .care-smart__field {
  border-radius: 999px !important;
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.14) !important;
}

.care-v2-home-hero__cta svg {
  width: 18px !important;
  height: 18px !important;
  -webkit-margin-end: 8px !important;
          margin-inline-end: 8px !important;
  flex-shrink: 0;
}

/* QA-HUB-11 — empty Next Visit chrome */
.care-v2-hub__next--empty {
  pointer-events: auto;
  opacity: 1;
}

.care-v2-hub__next--empty .care-v2-hub__next-when {
  color: #64748b;
}


/**
 * Care Hub — MedCare marketplace system (web).
 * Sharp theme: 2px corners, single borders, no soft card shadows.
 * Brand name stays CareOS24.
 */

.care,
.care-v2-login,
.care--web {
  --care-v2-primary: #0F6CBD;
  --care-v2-primary-hover: #0d5da3;
  --care-v2-primary-soft: #e8f2fa;
  --care-v2-primary-mist: #f0f7fc;
  --care-v2-secondary: #14B8A6;
  --care-v2-navy: #0F172A;
  --care-v2-navy-soft: #1e293b;
  --care-v2-paper: #F8FAFC;
  --care-v2-surface: #ffffff;
  --care-v2-ink: #0F172A;
  --care-v2-muted: #475569;
  --care-v2-line: #e2e8f0;
  --care-v2-success: #22c55e;
  --care-v2-success-soft: #dcfce7;
  --care-v2-warn: #f59e0b;
  --care-v2-radius: 12px;
  --care-v2-radius-md: 12px;
  --care-v2-radius-lg: 20px;
  --care-v2-radius-pill: 12px;
  --care-v2-shadow: 0 10px 25px rgba(15, 23, 42, 0.05);
  --care-v2-shadow-sm: 0 4px 12px rgba(15, 23, 42, 0.04);
  --care-v2-shadow-card: 0 15px 40px rgba(15, 23, 42, 0.08);
  --care-v2-font-display: var(--font-sora, 'Sora'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, sans-serif;
  --care-v2-font: var(--font-inter, 'Inter'), var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), system-ui, sans-serif;
  --care-v2-serif: var(--care-v2-font-display);

  /* Legacy aliases so older care-* chrome follows MedCare */
  --care-navy: var(--care-v2-navy);
  --care-teal: var(--care-v2-primary);
  --care-accent: var(--care-v2-primary);
  --care-paper: var(--care-v2-paper);
  --care-card: var(--care-v2-surface);
  --care-ink: var(--care-v2-ink);
  --care-ink-soft: var(--care-v2-muted);
  --care-radius: var(--care-v2-radius);
}

html[dir='rtl'] .care,
html[dir='rtl'] .care-v2-login,
html[dir='rtl'] .care--web {
  --care-v2-font-display: var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), var(--font-sora, 'Sora'), system-ui, sans-serif;
  --care-v2-font: var(--font-ibm-plex-arabic, 'IBM Plex Sans Arabic'),
    var(--font-noto-sans-arabic, 'Noto Sans Arabic'), var(--font-inter, 'Inter'), system-ui, sans-serif;
  --care-v2-serif: var(--care-v2-font-display);
}

/* —— Wordmark: CareOS24 + medical cross —— */
.care-v2-mark {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-family: var(--care-v2-font-display);
  font-weight: 800;
  letter-spacing: -0.03em;
  color: var(--care-v2-primary);
  line-height: 1;
}

.care-v2-mark::before {
  content: '';
  width: 1.15em;
  height: 1.15em;
  flex-shrink: 0;
  border-radius: 0.28em;
  background:
    linear-gradient(var(--care-v2-primary), var(--care-v2-primary)) center / 28% 72% no-repeat,
    linear-gradient(var(--care-v2-primary), var(--care-v2-primary)) center / 72% 28% no-repeat,
    var(--care-v2-primary-soft);
  box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--care-v2-primary) 35%, transparent);
}

.care-v2-mark span {
  color: var(--care-v2-secondary);
}

/* Shell chrome (nav, search, footer, bottom nav): care-medcare-shell.css */

/* —— Page canvas —— */
.care--web .care-main,
.care--web .care-stage,
.care--web .care-page,
.care--web .care-v2-page {
  background: var(--care-v2-paper);
  color: var(--care-v2-ink);
  font-family: var(--care-v2-font);
}

/* —— Buttons —— */
.care--web .care-btn--primary,
.care--web .care-v2-home-hero__cta,
.care--web .care-v2-doc-card__book,
.care--web .care-doc__book,
.care--web .care-v2-book-panel .care-btn--primary,
.care--web button.care-v2-primary,
.care--web .care-smart__go {
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
  border-radius: var(--care-v2-radius-pill) !important;
  font-weight: 600;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
}

.care--web .care-btn--ghost,
.care--web .care-btn--secondary {
  border-radius: var(--care-v2-radius-pill) !important;
  border: 1.5px solid var(--care-v2-primary);
  color: var(--care-v2-primary);
  background: transparent;
}

/* —— Home hero (MedCare split) —— */
.care--web .care-v2-home-hero {
  position: relative;
  isolation: isolate;
  min-height: min(72vh, 640px);
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  align-items: center;
  grid-gap: 32px;
  gap: 32px;
  margin: 0;
  padding: 48px max(24px, calc((100% - 1200px) / 2 + 24px));
  overflow: hidden;
  border-radius: 0;
  background: linear-gradient(180deg, var(--care-v2-primary-mist) 0%, var(--care-v2-paper) 72%);
}

.care--web .care-v2-home-hero__ambient {
  display: none;
}

.care--web .care-v2-home-hero__photo {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 520px;
  justify-self: end;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--care-v2-radius-lg);
  box-shadow: var(--care-v2-shadow);
  order: 2;
}

.care--web .care-v2-home-hero__copy {
  position: relative;
  z-index: 1;
  order: 1;
  max-width: 560px;
}

.care--web .care-v2-home-hero__brand {
  margin: 0 0 12px;
}

.care--web .care-v2-home-hero__title {
  margin: 0 0 12px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(2.1rem, 3.6vw, 3.25rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.12;
  color: var(--care-v2-navy);
}

.care--web .care-v2-home-hero__lead {
  margin: 0 0 22px;
  font-size: 1.05rem;
  line-height: 1.55;
  color: var(--care-v2-muted);
  max-width: 42ch;
}

.care--web .care-v2-home-hero__cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 24px;
  margin-bottom: 20px;
}

.care--web .care-v2-home-hero__search {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  padding: 10px;
}

.care--web .care-smart--hero,
.care--web .care-smart__row {
  border-radius: var(--care-v2-radius);
}

.care--web .care-smart__input {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  font-family: var(--care-v2-font);
}

/* —— Service type strip (icon squircles) —— */
.care--web .care-v2-type-strip {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 8px;
}

.care--web .care-v2-type-strip__eyebrow {
  color: var(--care-v2-muted);
  font-weight: 600;
  font-size: 0.85rem;
  text-transform: none;
  letter-spacing: 0;
}

.care--web .care-v2-type-strip__row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 16px;
  gap: 16px;
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}

.care--web .care-v2-type-strip__row a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 22px 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  color: var(--care-v2-ink);
  font-weight: 600;
  text-decoration: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.care--web .care-v2-type-strip__row a:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  box-shadow: var(--care-v2-shadow);
  transform: translateY(-2px);
}

.care--web .care-v2-type-strip__row a svg,
.care--web .care-v2-type-strip__row a .care-v2-type-icon {
  width: 52px;
  height: 52px;
  padding: 12px;
  border-radius: 16px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  box-sizing: border-box;
}

/* —— Doorstep / popular services —— */
.care--web .care-v2-doorstep {
  max-width: 1200px;
  margin: 0 auto;
  padding: 36px 24px 48px;
}

.care--web .care-v2-doorstep__title {
  margin: 0 0 8px;
  font-size: clamp(1.45rem, 2.2vw, 1.85rem);
  font-weight: 700;
  color: var(--care-v2-navy);
  letter-spacing: -0.02em;
}

.care--web .care-v2-doorstep__lead {
  margin: 0 0 22px;
  color: var(--care-v2-muted);
}

.care--web .care-v2-doorstep__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  grid-gap: 14px;
  gap: 14px;
}

.care--web .care-v2-doorstep__grid a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 18px 12px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  color: var(--care-v2-ink);
  font-weight: 600;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
}

.care--web .care-v2-doorstep__grid a svg {
  width: 44px;
  height: 44px;
  padding: 10px;
  border-radius: 14px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  box-sizing: border-box;
}

/* —— Doctors layout: filter rail + cards —— */
.care--web .care-v2-doctors-layout {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 56px;
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care--web .care-v2-spec-side,
.care--web .care-filters,
.care--web aside.care-v2-filters {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  padding: 18px 16px;
}

.care--web .care-v2-spec-side h2,
.care--web .care-v2-spec-side h3,
.care--web .care-filters__title {
  margin: 0 0 12px;
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-spec-side label,
.care--web .care-filters label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
  color: var(--care-v2-ink);
  font-size: 0.9rem;
}

.care--web .care-v2-spec-side input[type='checkbox'],
.care--web .care-filters input[type='checkbox'],
.care--web .care-v2-spec-side input[type='radio'],
.care--web .care-filters input[type='radio'] {
  accent-color: var(--care-v2-primary);
  width: 16px;
  height: 16px;
}

.care--web .care-v2-doctors-grid,
.care--web .care-docs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  grid-gap: 18px;
  gap: 18px;
}

/* Doctors browse page: collage vertical list (overrides generic grid). */
.care--web .care-v2-doctors-page .care-v2-doctors-grid {
  display: flex;
  flex-direction: column;
  gap: 14px;
  grid-template-columns: none;
}

.care--web .care-v2-doc-card,
.care--web .care-doc {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  box-shadow: var(--care-v2-shadow-card, var(--care-v2-shadow-sm));
  padding: 18px;
  overflow: hidden;
}

.care--web .care-v2-doc-card img,
.care--web .care-doc__photo,
.care--web .care-v2-doc-card__photo {
  width: 104px;
  height: 104px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--care-v2-primary-soft);
}

.care--web .care-v2-doc-card__book,
.care--web .care-doc .care-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  margin-top: 12px;
  padding: 0 16px;
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
  font-size: 0.9rem;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
  text-decoration: none;
}

.care--web .care-doc .care-cta__short {
  display: none;
}

.care--web .care-v2-doc__avail {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  background: var(--care-v2-primary-mist);
  border-radius: var(--care-v2-radius);
}

.care--web .care-v2-doc__avail span {
  display: block;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care--web .care-v2-doc__avail strong {
  display: block;
  font-size: 0.9rem;
  color: var(--care-v2-primary);
}

.care--web .care-rating__star {
  color: #f59e0b;
}

.care--web .care-rating__score {
  font-weight: 700;
  color: var(--care-v2-navy);
  font-size: 0.88rem;
}

/* —— Category pill chips (lab / rad) —— */
.care--web .care-v2-lab-chips,
.care--web .care-v2-rad-chips,
.care--web .care-chip-row,
.care--web .care-v2-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}

.care--web .care-v2-lab-chips a,
.care--web .care-v2-rad-chips a,
.care--web .care-chip,
.care--web .care-v2-chips button,
.care--web .care-v2-chips a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 16px;
  border-radius: var(--care-v2-radius-pill);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font-size: 0.88rem;
  font-weight: 500;
  text-decoration: none;
}

.care--web .care-v2-lab-chips a.is-active,
.care--web .care-v2-rad-chips a.is-active,
.care--web .care-chip.is-active,
.care--web .care-v2-chips .is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

/* —— Booking slots + stepper —— */
.care--web .care-v2-slot,
.care--web .care-slot,
.care--web .care-v2-book-panel [role='button'].slot {
  border-radius: var(--care-v2-radius-pill) !important;
  border: 1.5px solid var(--care-v2-line);
  min-height: 40px;
  padding: 0 14px;
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
}

.care--web .care-v2-slot.is-selected,
.care--web .care-slot.is-selected,
.care--web .care-slot.is-active,
.care--web .care-v2-slot[aria-pressed='true'] {
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
}

.care--web .care-v2-steps,
.care--web .care-checkout-steps {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.care--web .care-v2-steps__item.is-done,
.care--web .care-v2-steps__item.is-active {
  color: var(--care-v2-primary);
  font-weight: 600;
}

/* —— Pharmacy cards —— */
.care--web .care-v2-pharm-card,
.care--web .care-pharm-card {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  box-shadow: var(--care-v2-shadow-card, var(--care-v2-shadow-sm));
  overflow: hidden;
}

.care--web .care-v2-pharm-card img {
  border-radius: var(--care-v2-radius) var(--care-v2-radius) 0 0;
}

/* —— Status / available —— */
.care--web .care-badge--success,
.care--web .is-available,
.care--web .care-v2-avail {
  color: #15803d;
  background: var(--care-v2-success-soft);
  border-radius: var(--care-v2-radius-pill);
  padding: 4px 10px;
  font-size: 0.78rem;
  font-weight: 600;
}

/* —— Account / cards —— */
.care--web .care-v2-hub-tile,
.care--web .care-account-card,
.care--web .care-v2-card {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  box-shadow: var(--care-v2-shadow-card, var(--care-v2-shadow-sm));
}

/* —— Marketplace card consistency (12px + soft shadow) —— */
.care--web .care-mc-pkg-card,
.care--web .care-mc-article-card,
.care--web .care-v2-lab-card,
.care--web .care-v2-lab .care-v2-lab-card,
.care--web .care-v2-rad-mod,
.care--web .care-v2-rad-card,
.care--web .care-v2-type-strip__row a,
.care--web .care-v2-doorstep__grid a {
  border-radius: var(--care-v2-radius) !important;
  box-shadow: var(--care-v2-shadow-card, var(--care-v2-shadow-sm)) !important;
}

/* —— Forms —— */
.care--web input,
.care--web select,
.care--web textarea {
  border-radius: 10px;
  border-color: var(--care-v2-line);
  font-family: var(--care-v2-font);
}

.care--web input:focus,
.care--web select:focus,
.care--web textarea:focus {
  outline: 2px solid color-mix(in srgb, var(--care-v2-primary) 35%, transparent);
  border-color: var(--care-v2-primary);
}

/* —— Responsive: stack doctors filter —— */
@media (max-width: 960px) {
  .care--web .care-v2-home-hero {
    grid-template-columns: 1fr;
    padding: 32px 20px 40px;
  }

  .care--web .care-v2-home-hero__photo {
    max-width: 100%;
    aspect-ratio: 16 / 10;
    order: 0;
    justify-self: stretch;
  }

  .care--web .care-v2-doctors-layout {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-type-strip__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}

/* —— Lab / radiology pills + rows —— */
.care--web .care-v2-pills,
.care--web .care-v2-lab-cats,
.care--web .care-v2-pharm-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}

.care--web .care-v2-pills a,
.care--web .care-v2-pills button,
.care--web .care-v2-lab-cats a,
.care--web .care-v2-lab-cats button,
.care--web .care-v2-pharm-pills a,
.care--web .care-v2-pharm-pills button {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 16px;
  border-radius: var(--care-v2-radius-pill);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font-size: 0.88rem;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
}

.care--web .care-v2-pills .is-active,
.care--web .care-v2-lab-cats .is-active,
.care--web .care-v2-pharm-pills .is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-lab-row,
.care--web .care-v2-lab-list > * {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-add {
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  border: none !important;
  min-height: 40px;
  padding: 0 16px;
  font-weight: 600;
}

.care--web .care-v2-add.is-on {
  background: var(--care-v2-navy) !important;
}

.care--web .care-v2-title {
  font-family: var(--care-v2-font-display);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-lead {
  color: var(--care-v2-muted);
}

.care--web .care-v2-searchbar,
.care--web .care-v2-doctors-search,
.care--web .care-v2-lab-search {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-spec-side a.is-active {
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  border-radius: var(--care-v2-radius);
  font-weight: 600;
}

.care--web .care-v2-doctors-filter-btn,
.care--web .care-v2-pharm-filter-btn {
  border-radius: var(--care-v2-radius-pill);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  min-height: 40px;
  padding: 0 14px;
  font-weight: 500;
}

.care--web .care-v2-doctors-filter-btn.is-active,
.care--web .care-v2-pharm-filter-btn.is-active {
  background: var(--care-v2-primary-soft);
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

.care--web .care-v2-pharm-shop {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  grid-gap: 20px;
  gap: 20px;
}

@media (max-width: 960px) {
  .care--web .care-v2-pharm-shop {
    grid-template-columns: 1fr;
  }
}

.care--web .care-v2-pharm-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

.care--web .care-v2-book-panel {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  box-shadow: var(--care-v2-shadow);
  padding: 20px;
}

.care--web .care-v2-checkout,
.care--web .care-patient-step {
  border-radius: var(--care-v2-radius-lg);
}

.care--web .care-v2-hub-tile svg,
.care--web .care-v2-doorstep__grid a svg {
  color: var(--care-v2-primary);
}


/**
 * MedCare — home page scroll (below-fold) + skeletons + defaults.
 * Loaded via CareLayout after care-medcare.css (imported at end of that file? or CareLayout).
 * Import from CareLayout after care-medcare.css.
 */

/* —— Home below canvas —— */
.care--web .care-v2-home-below,
.care--web .care-home .care-main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 8px 24px 64px;
  background: transparent;
}

.care--web .care-v2-home .care-section,
.care--web .care-kind-directory,
.care--web .care-kind-shelf {
  margin: 0 0 36px;
  padding: 0;
}

.care--web .care-v2-home .care-section__head h2,
.care--web .care-kind-directory .care-section__head h2,
.care--web .care-kind-shelf .care-section__head h2 {
  margin: 0 0 6px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.35rem, 2vw, 1.65rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-home .care-section__head p,
.care--web .care-kind-directory .care-section__head p,
.care--web .care-kind-shelf .care-section__head p {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.95rem;
  line-height: 1.45;
}

.care--web .care-v2-home .care-section__head--row,
.care--web .care-kind-directory .care-section__head--row,
.care--web .care-kind-shelf .care-section__head--row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.care--web .care-v2-home .care-link,
.care--web .care-kind-shelf .care-link {
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  white-space: nowrap;
}

.care--web .care-v2-home .care-link:hover {
  text-decoration: underline;
}

/* —— Location bar —— */
.care--web .care-location,
.care--web .care-place-bar {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  padding: 12px 16px;
  margin-bottom: 24px;
}

/* —— Patient status strip —— */
.care--web .care-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  margin-bottom: 28px;
  background: var(--care-v2-primary-soft);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 18%, transparent);
  border-radius: var(--care-v2-radius-md);
}

.care--web .care-status__copy strong {
  display: block;
  color: var(--care-v2-navy);
  font-size: 1.05rem;
}

.care--web .care-status__copy span {
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

/* —— Kind directory cards (Hospitals / Clinics / Labs / Radiology) —— */
.care--web .care-kind-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 18px;
  gap: 18px;
}

.care--web .care-kind-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 0;
  overflow: hidden;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  text-decoration: none;
  color: var(--care-v2-ink);
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
  min-height: 280px;
}

.care--web .care-kind-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--care-v2-shadow);
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
}

.care--web .care-kind-card__art,
.care--web .care-kind-card > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  min-height: 168px;
  padding: 0;
  object-fit: cover;
  object-position: center;
  border-radius: 0;
  background: linear-gradient(180deg, #eef6ff 0%, #f8fbff 100%);
  box-sizing: border-box;
}

.care--web .care-kind-card__body {
  display: block;
  padding: 16px 18px 18px;
  background: linear-gradient(180deg, rgba(11, 31, 58, 0.02), rgba(11, 31, 58, 0.06));
}

.care--web .care-kind-card strong {
  display: block;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  margin-bottom: 4px;
}

.care--web .care-kind-card em {
  display: block;
  font-style: normal;
  font-size: 0.86rem;
  line-height: 1.4;
  color: var(--care-v2-muted);
}

/* —— Practice shelves / center rows —— */
.care--web .care-kind-shelf__title {
  display: flex;
  align-items: center;
  gap: 12px;
}

.care--web .care-kind-shelf__title > img {
  width: 44px;
  height: 44px;
  padding: 8px;
  object-fit: contain;
  border-radius: 14px;
  background: var(--care-v2-primary-soft);
  box-sizing: border-box;
}

.care--web .care-centers--kind,
.care--web .care-list--directory {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  grid-gap: 18px;
  gap: 18px;
}

.care--web .care-center,
.care--web .care-center--kind,
.care--web .care-shelf-card,
.care--web .care-kind-shelf-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  padding: 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  text-decoration: none;
  color: var(--care-v2-ink);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.care--web .care-center:hover,
.care--web .care-shelf-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--care-v2-shadow);
}

/* Home practice shelves: big photo cards (match hospitals / clinics directory) */
.care--web .care-kind-shelf-card.care-kind-shelf-card--photo,
.care--web .care-shelf-card.care-kind-shelf-card--photo {
  padding: 0;
  gap: 0;
  overflow: hidden;
  min-height: 300px;
}

.care--web .care-kind-shelf-card__photo {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  min-height: 188px;
  object-fit: cover;
  object-position: center;
  background: var(--care-v2-primary-mist);
}

.care--web .care-kind-shelf-card__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 16px 16px;
  flex: 1 1;
}

.care--web .care-kind-shelf-card__body > strong {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.3;
}

.care--web .care-kind-shelf-card__body > span {
  font-size: 0.88rem;
  color: var(--care-v2-muted);
  line-height: 1.35;
}

.care--web .care-center {
  flex-direction: row;
  align-items: center;
  gap: 14px;
}

.care--web .care-center .care-avatar,
.care--web .care-center img.care-avatar,
.care--web .care-shelf-card:not(.care-kind-shelf-card--photo) .care-avatar {
  width: 88px;
  height: 88px;
  border-radius: 16px;
  object-fit: cover;
  background: var(--care-v2-primary-mist);
  border: 1px solid var(--care-v2-line);
  flex-shrink: 0;
}

.care--web .care-center__body {
  min-width: 0;
  flex: 1 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.care--web .care-center__body strong,
.care--web .care-shelf-card:not(.care-kind-shelf-card--photo) > strong {
  font-size: 0.98rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-center__meta,
.care--web .care-shelf-card:not(.care-kind-shelf-card--photo) > span {
  font-size: 0.84rem;
  color: var(--care-v2-muted);
  line-height: 1.35;
}

@media (max-width: 900px) {
  .care--web .care-kind-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .care--web .care-kind-card__art,
  .care--web .care-kind-card > img {
    min-height: 140px;
  }

  .care--web .care-kind-shelf-card__photo {
    min-height: 160px;
  }
}

@media (max-width: 560px) {
  .care--web .care-kind-grid {
    grid-template-columns: 1fr;
  }

  .care--web .care-centers--kind {
    grid-template-columns: 1fr;
  }
}

/* —— Doctors on home (grid cards) —— */
.care--web .care-v2-home .care-list--doctor-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 18px;
  gap: 18px;
}

@media (max-width: 1100px) {
  .care--web .care-v2-home .care-list--doctor-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .care--web .care-v2-home .care-list--doctor-grid {
    grid-template-columns: 1fr;
  }
}

.care--web .care-v2-home .care-list--directory .care-doc.care-v2-doc--home-grid,
.care--web .care-v2-home .care-list--directory .care-v2-doc.care-v2-doc--home-grid {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 14px;
  grid-template-columns: none;
  padding: 18px;
  min-height: 0;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(11, 31, 58, 0.06);
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__main {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  min-width: 0;
  -webkit-padding-end: 0;
          padding-inline-end: 0;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-doc__body {
  min-width: 0;
  flex: 1 1;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__title-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px 10px;
  margin-bottom: 4px;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__name {
  flex: 1 1 8rem;
  min-width: 0;
  margin: 0;
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__aside {
  position: static;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  width: 100%;
  text-align: start;
  margin-top: auto;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__avail-badge {
  position: static;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: color-mix(in srgb, #16a34a 14%, #fff);
  color: #15803d;
  font-size: 0.75rem;
  font-weight: 700;
  white-space: nowrap;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__avail-badge::before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #16a34a;
  flex-shrink: 0;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc-card__book,
.care--web .care-v2-home .care-v2-doc--home-grid .care-cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0 !important;
  min-height: 44px;
  padding: 0 16px !important;
  border-radius: 12px !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font-family: var(--care-v2-font) !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  white-space: nowrap;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.26) !important;
  transform: none !important;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-cta__full {
  display: inline !important;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-cta__short {
  display: none !important;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__fee--inline {
  order: -1;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__fee--inline strong {
  font-size: 0.9rem;
  color: var(--care-v2-navy);
}

.care--web .care-v2-home .care-list--directory .care-doc.care-v2-doc--medcare:not(.care-v2-doc--home-grid),
.care--web .care-v2-home .care-list--directory .care-v2-doc.care-v2-doc--medcare:not(.care-v2-doc--home-grid) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(140px, 170px);
  align-items: stretch;
  grid-gap: 14px 18px;
  gap: 14px 18px;
  padding: 18px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 14px;
  box-shadow: var(--care-v2-shadow-sm);
  text-decoration: none;
  color: var(--care-v2-ink);
}

.care--web .care-v2-home .care-v2-doc--medcare .care-v2-doc__main {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  min-width: 0;
}

.care--web .care-v2-home .care-avatar,
.care--web .care-v2-home .care-doc img.care-avatar {
  width: 104px !important;
  height: 104px !important;
  border-radius: 50% !important;
  object-fit: cover;
  border: 2px solid var(--care-v2-primary-soft);
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-home .care-doc__body strong {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-home .care-v2-doc__specialty,
.care--web .care-v2-home .care-v2-doc__clinic,
.care--web .care-v2-home .care-v2-doc__speaks {
  display: block;
  font-size: 0.84rem;
  color: var(--care-v2-muted);
}

.care--web .care-v2-home .care-v2-doc__speaks {
  color: var(--care-v2-ink);
  font-weight: 500;
}

.care--web .care-v2-home .care-v2-doc__speaks:empty {
  display: none;
  margin: 0;
  padding: 0;
  min-height: 0;
}

.care--web .care-v2-home .care-v2-doc__aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  text-align: end;
}

.care--web .care-v2-home .care-v2-doc__avail-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 0 10px;
  border-radius: var(--care-v2-radius-pill);
  background: color-mix(in srgb, #16a34a 14%, #fff);
  color: #15803d;
  font-size: 0.78rem;
  font-weight: 700;
}

.care--web .care-v2-home .care-v2-doc__avail-badge::before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #16a34a;
}

.care--web .care-v2-home .care-v2-doc__fee strong {
  display: block;
  color: var(--care-v2-navy);
  font-size: 1rem;
}

.care--web .care-v2-home .care-v2-doc__fee span {
  display: block;
  color: var(--care-v2-muted);
  font-size: 0.78rem;
}

.care--web .care-v2-home .care-rating,
.care--web .care-v2-home .care-stars {
  color: #f59e0b;
}

.care--web .care-v2-home .care-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-size: 0.75rem;
  font-weight: 600;
}

.care--web .care-v2-home .care-pill--quiet {
  background: #f1f5f9;
  color: var(--care-v2-muted);
}

/* —— Specialties list —— */
.care--web .care-spec-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.care--web .care-spec-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 14px 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  text-decoration: none;
  color: var(--care-v2-ink);
  font-weight: 600;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.care--web .care-spec-list__row {
  display: inline-flex;
  align-items: center;
  gap: 0;
  min-width: 0;
}

.care--web .care-spec-list__item:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  box-shadow: var(--care-v2-shadow);
}

.care--web .care-spec-list__item em {
  font-style: normal;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--care-v2-primary);
  background: var(--care-v2-primary-soft);
  border-radius: var(--care-v2-radius-pill);
  padding: 2px 10px;
}

/* —— Trust band —— */
.care--web .care-v2-trust {
  max-width: 1200px;
  margin: 8px auto 28px;
  padding: 18px 22px;
  display: flex;
  align-items: center;
  gap: 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-trust__badge {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: var(--care-v2-success-soft);
  color: #15803d;
  flex-shrink: 0;
}

.care--web .care-v2-trust__badge svg {
  width: 26px;
  height: 26px;
}

.care--web .care-v2-trust strong {
  display: block;
  color: var(--care-v2-navy);
  font-size: 1rem;
}

.care--web .care-v2-trust span {
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

/* —— Type strip → MedCare quick-link cards (Find a Doctor / Lab / Radiology / Pharmacy) —— */
.care--web .care-v2-home > .care-v2-type-strip {
  background: transparent !important;
  border-top: none !important;
  text-align: left !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 28px 24px 8px !important;
}

.care--web .care-v2-type-strip__eyebrow {
  display: none !important;
}

.care--web .care-v2-type-strip__row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-gap: 16px !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: none !important;
  flex-wrap: unset !important;
}

.care--web .care-v2-type-strip__row > li {
  max-width: none !important;
}

.care--web .care-v2-type-strip__row a,
.care--web .care-v2-type-strip__link {
  display: flex !important;
  flex-direction: row;
  align-items: center;
  gap: 14px;
  padding: 16px 18px !important;
  background: var(--care-v2-surface) !important;
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 14px !important;
  box-shadow: var(--care-v2-shadow-sm) !important;
  color: var(--care-v2-ink) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.care--web .care-v2-type-strip__art {
  width: 68px;
  height: 68px;
  object-fit: cover;
  border-radius: 14px;
  background: var(--care-v2-primary-soft);
  flex-shrink: 0;
}

.care--web .care-v2-type-strip__copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.care--web .care-v2-type-strip__row a strong,
.care--web .care-v2-type-strip__copy strong {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-type-strip__row a > span:not(.care-v2-type-strip__circle),
.care--web .care-v2-type-strip__copy > span {
  display: block;
  font-size: 0.82rem;
  font-weight: 500;
  color: var(--care-v2-muted);
  line-height: 1.35;
}

.care--web .care-v2-type-strip__circle {
  display: none !important;
}

.care--web .care-v2-type-strip__ico,
.care--web .care-v2-type-strip__circle .care-v2-type-strip__ico,
.care--web .care-v2-type-strip__row a svg.care-v2-type-strip__ico,
.care--web .care-v2-type-strip__row a .care-v2-type-strip__circle svg {
  display: block !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  object-fit: contain;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--care-v2-primary) !important;
  stroke: currentColor;
  fill: none;
  box-sizing: border-box;
}

.care--web .care-v2-type-strip__row > li + li::before {
  display: none !important;
}

.care--web .care-v2-type-strip__row a:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line)) !important;
  box-shadow: var(--care-v2-shadow) !important;
  transform: translateY(-2px);
  opacity: 1 !important;
}

/* —— Popular Health Services — specialty circles —— */
.care--web .care-v2-doorstep,
.care--web .care-v2-popular {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 28px 24px 36px !important;
}

.care--web .care-v2-doorstep__title {
  font-family: var(--care-v2-font-display) !important;
  color: var(--care-v2-navy) !important;
  margin: 0 0 18px !important;
}

.care--web .care-v2-doorstep__lead {
  display: none !important;
}

.care--web .care-v2-popular__row {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  gap: 24px 32px;
  margin: 8px 0 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  padding: 4px 4px 8px;
}

.care--web .care-v2-popular__tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  width: 112px;
  flex: 0 0 auto;
  text-align: center;
  text-decoration: none;
  color: var(--care-v2-ink);
  transition: transform 0.15s ease;
}

.care--web .care-v2-popular__tile:hover {
  transform: translateY(-2px);
}

.care--web .care-v2-popular__circle {
  width: 88px;
  height: 88px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
  box-shadow: var(--care-v2-shadow-sm);
  color: var(--care-v2-primary);
  overflow: hidden;
}

.care--web .care-v2-popular__photo {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center 30%;
  display: block;
  border-radius: 50%;
}

.care--web .care-v2-popular__ico {
  display: grid;
  place-items: center;
  color: var(--care-v2-primary);
  width: 40px;
  height: 40px;
}

.care--web .care-v2-popular__ico--blue { color: #0066ff; }
.care--web .care-v2-popular__ico--sky { color: #0ea5e9; }
.care--web .care-v2-popular__ico--teal { color: #0d9488; }
.care--web .care-v2-popular__ico--indigo { color: #4f46e5; }
.care--web .care-v2-popular__ico--violet { color: #7c3aed; }
.care--web .care-v2-popular__ico--rose { color: #e11d48; }
.care--web .care-v2-popular__ico--amber { color: #d97706; }
.care--web .care-v2-popular__ico--emerald { color: #059669; }

.care--web .care-v2-popular__ico svg,
.care--web .care-v2-popular__circle svg {
  width: 36px !important;
  height: 36px !important;
  display: block;
  color: inherit;
  stroke: currentColor;
  fill: none;
}

.care--web .care-v2-popular__circle img.care-v2-popular__photo {
  display: block !important;
}

.care--web .care-v2-popular__circle img:not(.care-v2-popular__photo) {
  display: none !important;
}

.care--web .care-v2-popular__tile strong {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.25;
}

.care--web .care-v2-popular__tile em {
  font-style: normal;
  font-size: 0.78rem;
  font-weight: 500;
  color: var(--care-v2-muted);
}

.care--web .care-v2-popular__more {
  display: none !important;
}

.care--web .care-v2-popular__book {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  font: inherit;
}

/* —— MedCare dual search (query | location | Search) —— */
.care--web .care-v2-home-hero__search {
  max-width: min(920px, 100%) !important;
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__field--dual,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__field--dual {
  display: flex !important;
  align-items: stretch !important;
  gap: 0 !important;
  min-height: 56px !important;
  padding: 6px 6px 6px 18px !important;
  border-radius: 999px !important;
  border: 1px solid var(--care-v2-line) !important;
  box-shadow: 0 8px 28px rgba(11, 31, 58, 0.1) !important;
  background: #fff !important;
}

.care--web .care-smart--dual .care-smart__field-main {
  flex: 1.4 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.care--web .care-smart--dual .care-smart__icon {
  display: inline-grid !important;
  place-items: center;
  width: 20px;
  height: 20px;
  color: var(--care-v2-muted);
  flex-shrink: 0;
}

.care--web .care-smart--dual .care-smart__icon svg {
  width: 18px;
  height: 18px;
  display: block;
}

.care--web .care-smart--dual .care-smart__place-btn--dual {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  flex: 0.7 1;
  min-width: 7rem;
  max-width: 11rem;
  margin: 0;
  padding: 0 14px;
  border: none;
  -webkit-border-start: 1px solid var(--care-v2-line);
          border-inline-start: 1px solid var(--care-v2-line);
  background: transparent;
  color: var(--care-v2-navy);
  font-family: inherit;
  font-size: 0.92rem;
  font-weight: 600;
  cursor: pointer;
  text-align: start;
}

.care--web .care-smart--dual .care-smart__place-btn--dual em {
  font-style: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.care--web .care-smart--dual .care-smart__place-pin {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  color: var(--care-v2-primary);
  flex-shrink: 0;
}

.care--web .care-smart--dual .care-smart__place-pin svg {
  width: 18px;
  height: 18px;
  display: block;
}

.care--web .care-smart--dual .care-smart__place-btn--lead,
.care--web .care-smart--dual .care-smart__place-btn--compact {
  display: none !important;
}

.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__submit,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 108px;
  height: 44px;
  padding: 0 22px !important;
  border-radius: 999px !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  flex-shrink: 0;
  border: none;
  cursor: pointer;
  font-weight: 600;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.22);
}

.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__submit-label,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit-label {
  display: inline !important;
  font-size: 0.92rem;
}

.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__submit-ico,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit-ico {
  display: none !important;
}

.care--web .care-v2-home-hero__photo-wrap {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 520px;
  justify-self: end;
  order: 2;
}

.care--web .care-v2-home-hero__photo-wrap .care-v2-home-hero__photo {
  width: 100%;
  max-width: none;
  justify-self: stretch;
  order: unset;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--care-v2-radius-lg);
  box-shadow: var(--care-v2-shadow);
  display: block;
}

.care--web .care-v2-home-hero__badge {
  position: absolute;
  left: 8%;
  bottom: 14%;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--care-v2-shadow);
  color: var(--care-v2-navy);
  font-size: 0.82rem;
  font-weight: 600;
  z-index: 2;
  pointer-events: none;
}

.care--web .care-v2-home-hero__badge span[aria-hidden] {
  color: #16a34a;
}

.care--web .care-v2-home-hero__cta {
  display: none !important;
}

/* —— Home packages banner (collage: copy | photo | trust) —— */
.care--web .care-v2-home .care-mc-pkg-banner {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(140px, 200px) minmax(180px, 240px) !important;
  align-items: center;
  grid-gap: 22px 28px;
  gap: 22px 28px;
  max-width: 1200px;
  margin: 8px auto 28px;
  padding: 24px 28px;
  border-radius: 12px !important;
  background:
    radial-gradient(ellipse 80% 120% at 12% 50%, rgba(255, 255, 255, 0.55), transparent 55%),
    linear-gradient(105deg, #d4f1f4 0%, #c5ebf0 38%, #b8e4ec 100%);
  border: 1px solid color-mix(in srgb, #7ec8d4 35%, transparent);
  box-shadow: var(--care-v2-shadow-sm);
  overflow: hidden;
}

.care--web .care-v2-home .care-mc-pkg-banner__copy {
  order: 1;
  min-width: 0;
}

.care--web .care-v2-home .care-mc-pkg-banner__media {
  order: 2;
  position: relative;
  width: 100%;
  max-width: 200px;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(11, 31, 58, 0.12);
  justify-self: center;
}

.care--web .care-v2-home .care-mc-pkg-banner__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care--web .care-v2-home .care-mc-pkg-banner__trust-wrap {
  order: 3;
  min-width: 0;
}

.care--web .care-v2-home .care-mc-pkg-banner__trust-title {
  margin: 0 0 12px;
  font-family: var(--care-v2-font-display);
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.3;
}

.care--web .care-v2-home .care-mc-pkg-banner__title {
  margin: 0 0 6px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.25rem, 2.2vw, 1.65rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
  line-height: 1.25;
}

.care--web .care-v2-home .care-mc-pkg-banner__lead {
  margin: 0 0 16px;
  color: var(--care-v2-muted);
  font-size: 0.95rem;
  line-height: 1.45;
  max-width: 36ch;
}

.care--web .care-v2-home .care-mc-pkg-banner__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 22px;
  border-radius: 10px !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
  font-size: 0.92rem;
  text-decoration: none;
  border: none;
  box-shadow: 0 6px 16px color-mix(in srgb, var(--care-v2-primary) 28%, transparent);
}

.care--web .care-v2-home .care-mc-pkg-banner__cta:hover {
  background: var(--care-v2-primary-hover) !important;
}

.care--web .care-v2-home .care-mc-pkg-banner__trust {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.care--web .care-v2-home .care-mc-pkg-banner__trust li {
  display: flex;
  align-items: center;
  gap: 10px;
}

.care--web .care-v2-home .care-mc-pkg-banner__trust-ico {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, 0.9);
  color: var(--care-v2-primary);
  box-shadow: 0 1px 0 rgba(11, 31, 58, 0.04);
}

.care--web .care-v2-home .care-mc-pkg-banner__trust-ico svg {
  width: 18px;
  height: 18px;
  display: block;
}

.care--web .care-v2-home .care-mc-pkg-banner__trust strong {
  display: block;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.3;
}

@media (max-width: 900px) {
  .care--web .care-v2-home .care-mc-pkg-banner {
    grid-template-columns: 1fr !important;
    text-align: start;
  }

  .care--web .care-v2-home .care-mc-pkg-banner__media {
    max-width: 160px;
    justify-self: start;
  }
}

/* Skeletons, default avatars, dots, infinite footer → care-medcare-defaults.css */

/* —— Place / location bar —— */
.care--web .care-place {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: 18px;
  gap: 18px;
  align-items: start;
  padding: 20px;
  margin-bottom: 28px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-place__visual img,
.care--web .care-place__visual .care-mico,
.care--web .care-place__visual .care-mico-art {
  width: 64px !important;
  height: 64px !important;
  padding: 10px;
  object-fit: contain;
  border-radius: 16px;
  background: var(--care-v2-primary-soft);
  box-sizing: border-box;
}

.care--web .care-place__head strong {
  color: var(--care-v2-navy);
  font-size: 1.05rem;
}

.care--web .care-place__head span {
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

.care--web .care-place__active {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 14px;
  padding: 10px 12px;
  background: var(--care-v2-primary-mist);
  border-radius: var(--care-v2-radius);
}

.care--web .care-place__active em {
  font-style: normal;
  color: var(--care-v2-muted);
  font-size: 0.82rem;
}

.care--web .care-place__active strong {
  color: var(--care-v2-primary);
  font-size: 0.95rem;
}

.care--web .care-place__clear {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  border: none;
  background: transparent;
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.82rem;
  cursor: pointer;
}

.care--web .care-place__cities .care-filter {
  border-radius: var(--care-v2-radius-pill) !important;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  min-height: 34px;
  padding: 0 14px;
  font-size: 0.85rem;
}

.care--web .care-place__cities .care-filter.is-active,
.care--web .care-place__cities .staff-phone-chip.is-active,
.care--web .care-place__cities button[aria-pressed='true'] {
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
}

/* —— Line icons in soft blue circles (never 3D PNG) —— */
.care--web .care-v2-type-strip__ico {
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  object-fit: contain;
  border-radius: 0 !important;
  background: transparent !important;
  box-sizing: border-box;
}

/* —— Physician cards (home + directory) —— */
.care--web .care-list--directory {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

.care--web .care-list--directory .care-doc,
.care--web .care-list--directory .care-v2-doc {
  display: flex !important;
  flex-direction: column;
  gap: 12px;
  height: 100%;
  text-decoration: none;
  color: var(--care-v2-ink);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.care--web .care-list--directory .care-doc.care-v2-doc--medcare,
.care--web .care-list--directory .care-v2-doc.care-v2-doc--medcare {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(140px, 170px);
  flex-direction: unset;
  align-items: stretch;
  grid-gap: 14px 18px;
  gap: 14px 18px;
}

.care--web .care-list--directory .care-doc:hover {
  transform: translateY(-2px);
  box-shadow: var(--care-v2-shadow);
}

.care--web .care-v2-doc__avail .care-action-icon,
.care--web .care-v2-doc__avail img,
.care--web .care-v2-doc__avail svg {
  width: 28px;
  height: 28px;
  padding: 5px;
  border-radius: 10px;
  background: #fff;
  color: var(--care-v2-primary);
  box-sizing: border-box;
  flex-shrink: 0;
}

.care--web .care-v2-doc-card__book,
.care--web .care-list--directory .care-cta {
  margin-top: auto;
}

/* —— Specialty glyph —— */
.care--web .care-spec-list__glyph {
  width: 36px;
  height: 36px;
  display: inline-grid;
  place-items: center;
  border-radius: 12px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  -webkit-margin-end: 10px;
          margin-inline-end: 10px;
  flex-shrink: 0;
}

.care--web .care-spec-list__item--blue { --spec-tone: #0066ff; }
.care--web .care-spec-list__item--sky { --spec-tone: #0ea5e9; }
.care--web .care-spec-list__item--teal { --spec-tone: #0d9488; }
.care--web .care-spec-list__item--indigo { --spec-tone: #4f46e5; }
.care--web .care-spec-list__item--violet { --spec-tone: #7c3aed; }
.care--web .care-spec-list__item--rose { --spec-tone: #e11d48; }
.care--web .care-spec-list__item--amber { --spec-tone: #d97706; }
.care--web .care-spec-list__item--emerald { --spec-tone: #059669; }

.care--web .care-spec-list__item[class*='care-spec-list__item--'] .care-spec-list__glyph {
  color: var(--spec-tone);
  background: color-mix(in srgb, var(--spec-tone) 14%, #fff);
  border: 1px solid color-mix(in srgb, var(--spec-tone) 22%, transparent);
}

.care--web .care-spec-list__glyph--photo {
  width: 40px;
  height: 40px;
  padding: 0;
  overflow: hidden;
  border-radius: 12px;
  background: #eef2f7 !important;
}

.care--web .care-spec-list__glyph--photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center 30%;
  display: block !important;
}

.care--web .care-spec-list__glyph img,
.care--web .care-spec-list__glyph svg,
.care--web .care-spec-list__glyph .care-v2-popular__ico,
.care--web .care-spec-list__glyph .care-v2-popular__ico svg {
  width: 20px;
  height: 20px;
  display: block;
}

.care--web .care-spec-list__glyph .care-v2-popular__ico {
  width: 20px;
  height: 20px;
  color: inherit;
}

/* —— MedCare home pixel QA: beat care-design-v2-home.css —— */

/* Desktop hero — tokens #0F6CBD, Poppins, pill 999 */
.care--web .care-v2-home-hero__title {
  color: var(--care-v2-navy) !important;
  font-family: var(--care-v2-font-display) !important;
}

.care--web .care-v2-home-hero__brand .care-v2-brand-logo,
.care--web .care-v2-home-hero__logo {
  display: inline-flex !important;
  align-items: center;
  gap: 0.55rem;
  max-width: min(280px, 70vw);
}

.care--web .care-v2-home-hero__logo .care-v2-brand-logo__mark {
  max-height: 44px;
  border-radius: 12px;
}

.care--web .care-v2-home-hero__logo .care-v2-brand-logo__word {
  max-height: 40px;
}

.care--web .care-v2-mobile-hero__brand .care-v2-brand-logo,
.care--web .care-v2-mobile-hero__logo {
  display: inline-flex !important;
  align-items: center;
  gap: 0.45rem;
  max-width: min(220px, 78vw);
}

.care--web .care-v2-mobile-hero__logo .care-v2-brand-logo__mark {
  max-height: 36px;
  border-radius: 10px;
}

.care--web .care-v2-mobile-hero__logo .care-v2-brand-logo__word {
  max-height: 32px;
}

.care--web .care-v2-home-hero__brand .care-v2-mark,
.care--web .care-v2-home-hero__brand .care-v2-mark span {
  color: var(--care-v2-navy) !important;
}

.care--web .care-v2-home-hero__brand .care-v2-mark span {
  color: var(--care-v2-primary) !important;
}

.care--web .care-v2-home-hero__cta {
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.28) !important;
  font-family: var(--care-v2-font) !important;
}

.care--web .care-v2-home-hero__cta:hover {
  background: var(--care-v2-primary-hover) !important;
}

.care--web .care-v2-home-hero__search .care-smart__field {
  border-radius: 999px !important;
  border: 1px solid var(--care-v2-line) !important;
  box-shadow: 0 8px 28px rgba(11, 31, 58, 0.1) !important;
  min-height: 56px !important;
}

.care--web .care-v2-home-hero__search .care-smart__submit {
  background: var(--care-v2-primary) !important;
  border-radius: 999px !important;
}

/* Type strip hover already defined above */

/* Doorstep / popular — desktop scroll section */
@media (min-width: 768px) {
  .care--web:not(.care--phone) .care-v2-doorstep,
  .care--web:not(.care--phone) .care-v2-popular {
    display: block !important;
  }

  .care--web:not(.care--phone) .care-v2-trust {
    display: flex !important;
  }
}

.care--web .care-v2-doorstep__title {
  font-family: var(--care-v2-font-display) !important;
  color: var(--care-v2-navy) !important;
}

/* Location bar — pill chips, primary #0F6CBD active */
.care--web .care-place__cities .care-filter,
.care--web .care-place__cities .staff-phone-chip {
  border-radius: var(--care-v2-radius-pill) !important;
  border: 1px solid var(--care-v2-line) !important;
  background: var(--care-v2-surface) !important;
  color: var(--care-v2-ink) !important;
  font-family: var(--care-v2-font) !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
  min-height: 34px !important;
  padding: 0 14px !important;
}

.care--web .care-place__cities .care-filter:hover:not(.is-active),
.care--web .care-place__cities .staff-phone-chip:hover:not(.is-active) {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line)) !important;
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-place__cities .care-filter.is-active,
.care--web .care-place__cities .staff-phone-chip.is-active,
.care--web .care-place__cities button[aria-pressed='true'] {
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Mobile collage stack (narrow ≤767 / .care--phone)
   1 stacked dual search · 2 quick-link 2×2 circles · 3 specialty h-scroll
   ═══════════════════════════════════════════════════════════════════════════ */

/* Stacked dual search: query → location → full-width Search */
.care--web.care--phone .care-v2-mobile-hero__search .care-smart--dual .care-smart__field--dual,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__field--dual {
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 10px !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.care--web.care--phone .care-v2-mobile-hero__search .care-smart--dual .care-smart__field-main,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__field-main {
  position: relative;
  flex: 0 0 auto !important;
  width: 100%;
  min-height: 52px;
  padding: 0 14px;
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.1) !important;
}

.care--web.care--phone .care-v2-mobile-hero__search .care-smart--dual .care-smart__place-btn--dual,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__place-btn--dual {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 52px;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 1px solid var(--care-v2-line) !important;
  -webkit-border-start: 1px solid var(--care-v2-line) !important;
          border-inline-start: 1px solid var(--care-v2-line) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08) !important;
}

.care--web.care--phone .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 52px !important;
  height: 52px !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 24px rgba(0, 102, 255, 0.28) !important;
}

.care--web.care--phone .care-v2-mobile-hero__search .care-smart--dual .care-smart__clear,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__clear,
.care--web.care--phone .care-v2-mobile-hero__search .care-smart--dual .care-smart__pulse,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__pulse {
  position: absolute;
  inset-inline-end: 12px;
  top: 16px;
  transform: none;
  z-index: 2;
}

/* Quick links — restore strip (design-v2 hides it) as 2×2 circles */
@media (max-width: 767px) {
  .care--web .care-v2-home > .care-v2-type-strip {
    display: block !important;
    max-width: none !important;
    margin: 8px 0 0 !important;
    padding: 8px 16px 4px !important;
    background: var(--care-v2-paper) !important;
  }

  .care--web .care-v2-type-strip__row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-gap: 18px 12px !important;
    gap: 18px 12px !important;
  }

  .care--web .care-v2-type-strip__row a {
    align-items: center !important;
    text-align: center;
    gap: 10px !important;
    padding: 8px 6px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .care--web .care-v2-type-strip__row a:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  .care--web .care-v2-type-strip__circle {
    width: 72px;
    height: 72px;
    margin: 0 auto 2px;
    background: var(--care-v2-primary-soft) !important;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--care-v2-primary) 14%, transparent);
  }

  .care--web .care-v2-type-strip__ico {
    width: 32px !important;
    height: 32px !important;
  }

  .care--web .care-v2-type-strip__row a strong {
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--care-v2-navy);
  }

  .care--web .care-v2-type-strip__row a > span:not(.care-v2-type-strip__circle) {
    display: none !important;
  }
}

.care--web.care--phone .care-v2-home > .care-v2-type-strip {
  display: block !important;
  max-width: none !important;
  margin: 8px 0 0 !important;
  padding: 8px 16px 4px !important;
  background: var(--care-v2-paper) !important;
}

.care--web.care--phone .care-v2-type-strip__row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-gap: 18px 12px !important;
  gap: 18px 12px !important;
}

.care--web.care--phone .care-v2-type-strip__row a {
  align-items: center !important;
  text-align: center;
  gap: 10px !important;
  padding: 8px 6px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.care--web.care--phone .care-v2-type-strip__row a:hover {
  transform: none !important;
  box-shadow: none !important;
}

.care--web.care--phone .care-v2-type-strip__circle {
  width: 72px;
  height: 72px;
  margin: 0 auto 2px;
  background: var(--care-v2-primary-soft) !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--care-v2-primary) 14%, transparent);
}

.care--web.care--phone .care-v2-type-strip__ico {
  width: 32px !important;
  height: 32px !important;
}

.care--web.care--phone .care-v2-type-strip__row a strong {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web.care--phone .care-v2-type-strip__row a > span:not(.care-v2-type-strip__circle) {
  display: none !important;
}

@media (max-width: 767px) {
  .care--web .care-v2-mobile-hero__stage {
    background: var(--care-v2-navy) !important;
    -webkit-clip-path: none !important;
            clip-path: none !important;
    border-radius: 0 0 50% 50% / 0 0 28px 28px !important;
    min-height: 286px !important;
    padding: 32px 20px 86px !important;
  }

  .care--web .care-v2-mobile-hero__photo {
    object-fit: cover !important;
    object-position: 78% 28% !important;
  }

  .care--web .care-v2-mobile-hero__veil {
    background: linear-gradient(
      102deg,
      var(--care-v2-navy) 0%,
      var(--care-v2-navy) 42%,
      color-mix(in srgb, var(--care-v2-navy) 72%, transparent) 58%,
      color-mix(in srgb, var(--care-v2-navy) 28%, transparent) 74%,
      transparent 92%
    ) !important;
  }

  .care--web .care-v2-mobile-hero__brand .care-v2-mark span,
  .care--web .care-v2-mobile-hero__brand span,
  .care--web .care-v2-mark-plus {
    color: var(--care-v2-primary) !important;
  }

  .care--web .care-v2-mobile-hero__title {
    font-family: var(--care-v2-font-display) !important;
  }

  .care--web .care-v2-mobile-hero__search {
    margin: -40px 16px 12px !important;
  }

  .care--web .care-v2-doorstep,
  .care--web .care-v2-popular {
    display: block !important;
    padding: 20px 0 8px !important;
    background: var(--care-v2-paper) !important;
  }

  .care--web .care-v2-doorstep__title,
  .care--web .care-v2-doorstep__lead {
    padding-inline: 16px;
  }

  .care--web .care-v2-doorstep__lead {
    margin-bottom: 4px;
  }

  .care--web .care-v2-popular__row {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    margin: 8px 0 12px !important;
    padding: 4px 16px 12px !important;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  .care--web .care-v2-popular__row::-webkit-scrollbar {
    display: none;
  }

  .care--web .care-v2-popular__tile {
    flex: 0 0 auto;
    width: 84px;
    min-width: 84px;
    scroll-snap-align: start;
  }

  .care--web .care-v2-popular__circle {
    width: 72px;
    height: 72px;
    background: #fff !important;
    box-shadow:
      inset 0 0 0 1.5px color-mix(in srgb, var(--care-v2-primary) 22%, transparent),
      var(--care-v2-shadow-sm);
  }

  .care--web .care-v2-popular__more {
    padding-inline: 16px;
  }

  .care--web .care-v2-trust {
    display: flex !important;
    margin: 18px 16px 28px !important;
    padding: 16px 18px !important;
    background: var(--care-v2-primary-mist) !important;
    border: 1px solid color-mix(in srgb, var(--care-v2-primary) 12%, transparent) !important;
    border-radius: var(--care-v2-radius-md) !important;
    gap: 14px !important;
  }

  .care--web .care-v2-trust__badge {
    width: 42px !important;
    height: 42px !important;
    border-radius: var(--care-v2-radius-pill) !important;
    background: var(--care-v2-primary) !important;
    color: #fff !important;
  }

  .care--web .care-v2-trust__badge svg {
    width: 22px !important;
    height: 22px !important;
  }

  .care--web .care-v2-trust strong {
    font-family: var(--care-v2-font-display) !important;
    color: var(--care-v2-navy) !important;
    font-size: 0.98rem !important;
  }

  .care--web .care-v2-trust > div > span {
    color: var(--care-v2-muted) !important;
    font-size: 0.72rem !important;
    line-height: 1.35 !important;
  }
}

/* Capacitor / care--phone — mirror narrow MedCare home */
.care--web.care--phone .care-v2-mobile-hero__stage {
  background: var(--care-v2-navy) !important;
  -webkit-clip-path: none !important;
          clip-path: none !important;
  border-radius: 0 0 50% 50% / 0 0 28px 28px !important;
  min-height: 286px !important;
  padding: 32px 20px 86px !important;
}

.care--web.care--phone .care-v2-mobile-hero__veil {
  background: linear-gradient(
    102deg,
    var(--care-v2-navy) 0%,
    var(--care-v2-navy) 42%,
    color-mix(in srgb, var(--care-v2-navy) 72%, transparent) 58%,
    color-mix(in srgb, var(--care-v2-navy) 28%, transparent) 74%,
    transparent 92%
  ) !important;
}

.care--web.care--phone .care-v2-mobile-hero__brand .care-v2-mark span,
.care--web.care--phone .care-v2-mark-plus {
  color: var(--care-v2-primary) !important;
}

.care--web.care--phone .care-v2-mobile-hero__search {
  margin: -40px 16px 12px !important;
}

.care--web.care--phone .care-v2-doorstep,
.care--web.care--phone .care-v2-popular {
  display: block !important;
  padding: 20px 0 8px !important;
  background: var(--care-v2-paper) !important;
}

.care--web.care--phone .care-v2-doorstep__title,
.care--web.care--phone .care-v2-doorstep__lead,
.care--web.care--phone .care-v2-popular__more {
  padding-inline: 16px;
}

.care--web.care--phone .care-v2-popular__row {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  margin: 8px 0 12px !important;
  padding: 4px 16px 12px !important;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
}

.care--web.care--phone .care-v2-popular__row::-webkit-scrollbar {
  display: none;
}

.care--web.care--phone .care-v2-popular__tile {
  flex: 0 0 auto;
  width: 84px;
  min-width: 84px;
  scroll-snap-align: start;
}

.care--web.care--phone .care-v2-popular__circle {
  width: 72px;
  height: 72px;
  background: #fff !important;
  box-shadow:
    inset 0 0 0 1.5px color-mix(in srgb, var(--care-v2-primary) 22%, transparent),
    var(--care-v2-shadow-sm);
}

.care--web.care--phone .care-v2-trust {
  background: var(--care-v2-primary-mist) !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 12%, transparent) !important;
  border-radius: var(--care-v2-radius-md) !important;
}

.care--web.care--phone .care-v2-trust__badge {
  background: var(--care-v2-primary) !important;
  border-radius: var(--care-v2-radius-pill) !important;
  color: #fff !important;
}

@media (max-width: 960px) {
  .care--web .care-kind-grid,
  .care--web .care-v2-type-strip__row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .care--web .care-v2-home-hero {
    grid-template-columns: 1fr !important;
    padding: 28px 20px 36px !important;
  }

  .care--web .care-v2-home-hero__photo-wrap {
    max-width: 100%;
    justify-self: stretch;
    order: 0;
  }

  .care--web .care-v2-home-hero__photo {
    max-width: 100% !important;
    aspect-ratio: 16 / 10 !important;
    order: 0 !important;
    justify-self: stretch !important;
  }

  .care--web .care-v2-home-hero__copy {
    order: 1 !important;
  }

  .care--web .care-v2-home-hero__search .care-smart--dual .care-smart__field--dual {
    flex-wrap: wrap;
    border-radius: 12px !important;
  }

  .care--web .care-v2-home-hero__search .care-smart--dual .care-smart__place-btn--dual {
    -webkit-border-start: none;
            border-inline-start: none;
    flex: 1 1 auto;
  }
}

@media (max-width: 640px) {
  .care--web .care-kind-grid {
    grid-template-columns: 1fr !important;
  }

  .care--web .care-v2-home-below {
    padding-inline: 16px;
  }
}

/* —— Mobile below-fold: scroll-down location / physicians / specialties —— */
@media (max-width: 767px) {
  .care--web .care-v2-home-below {
    display: block !important;
    padding: 0 16px 48px !important;
    background: var(--care-v2-paper) !important;
  }

  .care--web .care-v2-home-below .care-section,
  .care--web .care-v2-home-below .care-kind-directory,
  .care--web .care-v2-home-below .care-kind-shelf {
    margin: 0 0 28px !important;
  }

  .care--web .care-v2-home-below .care-section__head h2,
  .care--web .care-v2-home-below .care-kind-directory .care-section__head h2,
  .care--web .care-v2-home-below .care-kind-shelf .care-section__head h2 {
    font-family: var(--care-v2-font-display) !important;
    font-size: 1.28rem !important;
    font-weight: 700 !important;
    color: var(--care-v2-navy) !important;
  }

  .care--web .care-v2-home-below .care-list--directory {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .care--web .care-v2-home-below .care-spec-list {
    gap: 8px !important;
  }
}

.care--web.care--phone .care-v2-home-below {
  display: block !important;
  padding: 0 16px 48px !important;
  background: var(--care-v2-paper) !important;
}

/* —— Hero dual search + city chip (MedCare) —— */
.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__field--dual,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__field--dual {
  gap: 8px !important;
  min-height: 60px !important;
  padding: 7px 7px 7px 16px !important;
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 32px rgba(11, 31, 58, 0.1) !important;
  background: #fff !important;
}

.care--web .care-smart--dual .care-smart__input {
  font-family: var(--care-v2-font) !important;
  font-size: 0.98rem !important;
  color: var(--care-v2-ink) !important;
}

.care--web .care-smart--dual .care-smart__input::placeholder {
  color: var(--care-v2-muted) !important;
}

.care--web .care-smart--dual .care-smart__icon {
  color: var(--care-v2-primary) !important;
}

.care--web .care-smart--dual .care-smart__clear {
  border: 0 !important;
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
  border-radius: 999px !important;
  min-height: 32px;
  padding: 0 12px !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
}

.care--web .care-smart--dual .care-smart__place-btn--dual {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  flex: 0 1 auto;
  min-width: 8.5rem;
  max-width: 12.5rem;
  margin: 0 2px;
  padding: 6px 10px 6px 8px !important;
  border: 1px solid var(--care-v2-line) !important;
  -webkit-border-start: 1px solid var(--care-v2-line) !important;
          border-inline-start: 1px solid var(--care-v2-line) !important;
  border-radius: 14px !important;
  background: #f8fbff !important;
  color: var(--care-v2-navy) !important;
  box-shadow: none;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.care--web .care-smart--dual .care-smart__place-btn--dual.is-active,
.care--web .care-smart--dual .care-smart__place-btn--dual[aria-expanded='true'] {
  background: var(--care-v2-primary-soft) !important;
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line)) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-smart--dual .care-smart__place-pin {
  display: inline-grid !important;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 18%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

.care--web .care-smart--dual .care-smart__place-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
  min-width: 0;
  flex: 1 1;
}

.care--web .care-smart--dual .care-smart__place-kicker {
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
  line-height: 1;
}

.care--web .care-smart--dual .care-smart__place-btn--dual em {
  font-style: normal;
  font-size: 0.9rem;
  font-weight: 700;
  color: inherit;
  line-height: 1.2;
}

.care--web .care-smart--dual .care-smart__place-chev {
  display: inline-grid;
  place-items: center;
  width: 16px;
  height: 16px;
  color: var(--care-v2-muted);
  flex-shrink: 0;
}

.care--web .care-smart--dual .care-smart__place-chev svg {
  width: 14px;
  height: 14px;
  display: block;
}

.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__submit,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit {
  min-width: 112px !important;
  height: 46px !important;
  padding: 0 22px !important;
  border-radius: 14px !important;
  background: var(--care-v2-primary) !important;
  box-shadow: 0 8px 18px rgba(0, 102, 255, 0.28) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-family: var(--care-v2-font) !important;
  font-weight: 700 !important;
}

.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__submit-label,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit-label {
  text-transform: none !important;
  font-size: 0.95rem !important;
}

/* City filter dropdown */
.care--web .care-smart--dual .care-smart__filters,
.care--web .care-v2-home-hero__search .care-smart__filters,
.care--web .care-v2-mobile-hero__search .care-smart__filters {
  margin-top: 12px;
  padding: 18px;
  border-radius: 20px;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 10%, var(--care-v2-line));
  background: linear-gradient(180deg, #f7fbff 0%, #fff 42%);
  box-shadow: 0 18px 48px rgba(11, 31, 58, 0.12);
}

.care--web .care-smart--dual .care-smart__filters-head strong,
.care--web .care-v2-home-hero__search .care-smart__filters-head strong {
  font-family: var(--care-v2-font);
  color: var(--care-v2-navy);
  font-size: 1.02rem;
}

.care--web .care-smart--dual .care-smart__dismiss,
.care--web .care-v2-home-hero__search .care-smart__dismiss {
  border-radius: 999px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  color: var(--care-v2-navy);
  font-weight: 700;
  min-height: 34px;
  padding: 0 14px;
}

.care--web .care-smart__locate {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 46px;
  margin: 0 0 16px;
  border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
  background: #fff;
  color: var(--care-v2-primary);
  font-weight: 700;
}

.care--web .care-smart__city {
  border-radius: 999px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  color: var(--care-v2-navy);
  min-height: 38px;
  font-weight: 650;
}

.care--web .care-smart__city.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
  box-shadow: 0 8px 18px rgba(0, 102, 255, 0.22);
}

/* Results panel */
.care--web .care-smart--dual .care-smart__panel,
.care--web .care-v2-home-hero__search .care-smart__panel {
  margin-top: 12px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  box-shadow: 0 18px 44px rgba(11, 31, 58, 0.14);
}

.care--web .care-smart--dual .care-smart__panel-head strong,
.care--web .care-v2-home-hero__search .care-smart__panel-head strong {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy);
  font-size: 1.05rem;
}

.care--web .care-smart--dual .care-smart__tabs,
.care--web .care-v2-home-hero__search .care-smart__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0 14px;
}

.care--web .care-smart--dual .care-smart__tabs .care-filter,
.care--web .care-v2-home-hero__search .care-smart__tabs .care-filter {
  border-radius: 999px !important;
  border: 1px solid var(--care-v2-line) !important;
  background: #fff !important;
  color: var(--care-v2-muted) !important;
  min-height: 34px;
  padding: 0 12px;
  font-weight: 600;
  font-size: 0.84rem;
}

.care--web .care-smart--dual .care-smart__tabs .care-filter.is-active,
.care--web .care-v2-home-hero__search .care-smart__tabs .care-filter.is-active {
  background: var(--care-v2-navy) !important;
  border-color: var(--care-v2-navy) !important;
  color: #fff !important;
}

.care--web .care-smart--dual .care-smart__panel .care-v2-doc--medcare .care-v2-doc-card__book,
.care--web .care-v2-home-hero__search .care-smart__panel .care-cta,
.care--web .care-smart--dual .care-smart__panel .care-cta {
  border-radius: 12px !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 700 !important;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.26);
  min-height: 40px;
  padding: 0 14px;
}

.care--web .care-smart--dual .care-smart__panel .care-v2-doc__avail-badge {
  background: color-mix(in srgb, #16a34a 14%, #fff);
  color: #15803d;
  border-radius: 999px;
  font-weight: 700;
}

@media (max-width: 700px) {
  .care--web .care-v2-home-hero__search .care-smart--dual .care-smart__field--dual,
  .care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__field--dual {
    flex-wrap: wrap;
    border-radius: 16px !important;
    padding: 10px !important;
  }

  .care--web .care-smart--dual .care-smart__place-btn--dual {
    max-width: none;
    flex: 1 1 auto;
  }

  .care--web .care-v2-home-hero__search .care-smart--dual .care-smart__submit,
  .care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit {
    flex: 1 1 100%;
    width: 100%;
  }
}

.care--web .care-smart--dual .care-smart__hits,
.care--web .care-v2-home-hero__search .care-smart__hits {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.care--web .care-smart--dual .care-smart__hit.care-v2-doc--home-grid,
.care--web .care-v2-home-hero__search .care-smart__hit.care-v2-doc--home-grid {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--care-v2-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(11, 31, 58, 0.05);
  text-decoration: none;
  color: inherit;
}

.care--web .care-smart--dual .care-smart__hit.care-v2-doc--home-grid .care-v2-doc__main {
  display: flex;
  gap: 12px;
  -webkit-padding-end: 0;
          padding-inline-end: 0;
}

.care--web .care-smart--dual .care-smart__hit.care-v2-doc--home-grid .care-v2-doc__title-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px 10px;
}

.care--web .care-smart--dual .care-smart__hit.care-v2-doc--home-grid .care-v2-doc__name {
  flex: 1 1 8rem;
  min-width: 0;
  overflow-wrap: anywhere;
}

.care--web .care-smart--dual .care-smart__hit.care-v2-doc--home-grid .care-v2-doc__avail-badge {
  position: static;
}

.care--web .care-smart--dual .care-smart__hit.care-v2-doc--home-grid .care-v2-doc__aside {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
}

.care--web .care-smart--dual .care-smart__hit.care-v2-doc--home-grid .care-cta,
.care--web .care-smart--dual .care-smart__hit.care-v2-doc--home-grid .care-v2-doc-card__book {
  width: 100%;
  min-height: 44px;
  border-radius: 12px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: 0.92rem !important;
  white-space: nowrap;
}

.care--web .care-smart--dual .care-smart__group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 4px 0 10px;
}

.care--web .care-smart--dual .care-smart__group-head strong {
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care--web .care-smart--dual .care-smart__group-head h3 {
  margin: 0;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
  font-weight: 700;
}

.care--web .care-smart--dual .care-smart__group-head .care-link {
  color: var(--care-v2-primary);
  font-weight: 700;
  font-size: 0.88rem;
}

/* —— Home doctor cards: richer meta + softer Book CTA —— */
.care--web .care-v2-home .care-v2-doc--home-grid .care-rating {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  margin: 2px 0 4px;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__city,
.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__xp,
.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__quals {
  display: block;
  font-size: 0.8rem;
  color: var(--care-v2-muted);
  line-height: 1.35;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__about {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 0.82rem;
  color: var(--care-v2-muted);
  line-height: 1.4;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__fee {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  justify-items: start;
  width: 100%;
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__fee strong {
  font-size: 1.05rem;
  color: var(--care-v2-navy);
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc__fee span {
  font-size: 0.75rem;
  color: var(--care-v2-muted);
}

.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc-card__book,
.care--web .care-v2-home .care-v2-doc--home-grid .care-cta,
.care--web .care-v2-home .care-list--doctor-grid .care-v2-doc-card__book,
.care--web .care-v2-home .care-list--doctor-grid .care-cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  padding: 0 18px !important;
  border-radius: 999px !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font-family: var(--care-v2-font) !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
  transition: background 0.15s ease;
}

.care--web .care-v2-home .care-list--doctor-grid .care-v2-doc-card__book:hover,
.care--web .care-v2-home .care-v2-doc--home-grid .care-v2-doc-card__book:hover {
  background: var(--care-v2-primary-hover) !important;
  transform: none;
  box-shadow: none !important;
}

.care--web .care-v2-doc-card__book-ico {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

/* —— Specialty browse tiles (matched SVG glyphs + tone wells) —— */
.care--web .care-section--browse-specialty {
  --spec-tone: #0066ff;
  --spec-tone-soft: color-mix(in srgb, var(--spec-tone) 14%, #fff);
  --spec-tone-ring: color-mix(in srgb, var(--spec-tone) 22%, transparent);
}

.care--web .care-spec-tiles {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 14px;
  gap: 14px;
}

@media (max-width: 1100px) {
  .care--web .care-spec-tiles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .care--web .care-spec-tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
}

.care--web .care-spec-tile--blue { --spec-tone: #0066ff; }
.care--web .care-spec-tile--sky { --spec-tone: #0ea5e9; }
.care--web .care-spec-tile--teal { --spec-tone: #0d9488; }
.care--web .care-spec-tile--indigo { --spec-tone: #4f46e5; }
.care--web .care-spec-tile--violet { --spec-tone: #7c3aed; }
.care--web .care-spec-tile--rose { --spec-tone: #e11d48; }
.care--web .care-spec-tile--amber { --spec-tone: #d97706; }
.care--web .care-spec-tile--emerald { --spec-tone: #059669; }

.care--web .care-spec-tile {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  min-height: 156px;
  padding: 18px 16px 16px;
  border-radius: 20px;
  border: 1px solid color-mix(in srgb, var(--spec-tone) 16%, var(--care-v2-line));
  background:
    radial-gradient(120% 100% at 100% 0%, var(--spec-tone-soft) 0%, #fff 58%),
    var(--care-v2-surface);
  box-shadow: 0 8px 22px rgba(11, 31, 58, 0.05);
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.care--web .care-spec-tile::before {
  content: '';
  position: absolute;
  inset-inline-end: -28px;
  top: -36px;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--spec-tone) 10%, transparent);
  pointer-events: none;
}

.care--web .care-spec-tile:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--spec-tone) 42%, var(--care-v2-line));
  box-shadow: 0 14px 32px color-mix(in srgb, var(--spec-tone) 18%, rgba(11, 31, 58, 0.08));
}

.care--web .care-spec-tile__icon {
  position: relative;
  z-index: 1;
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: var(--spec-tone);
  background:
    linear-gradient(160deg, color-mix(in srgb, var(--spec-tone) 18%, #fff) 0%, #fff 70%);
  border: 1px solid var(--spec-tone-ring);
  box-shadow: 0 6px 14px color-mix(in srgb, var(--spec-tone) 16%, transparent);
}

.care--web .care-spec-tile__photo {
  position: relative;
  z-index: 1;
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: 14px;
  overflow: hidden;
  background: color-mix(in srgb, var(--spec-tone) 8%, #eef2f7);
  border: 1px solid color-mix(in srgb, var(--spec-tone) 14%, var(--care-v2-line));
  box-shadow: 0 8px 18px rgba(11, 31, 58, 0.08);
}

.care--web .care-spec-tile__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 28%;
  display: block;
  transition: transform 0.28s ease;
}

.care--web .care-spec-tile--photo {
  min-height: 0;
  gap: 12px;
  padding: 12px 12px 14px;
}

.care--web .care-spec-tile--photo:hover .care-spec-tile__photo img {
  transform: scale(1.04);
}

.care--web .care-spec-tile__icon .care-specialty-ico,
.care--web .care-spec-tile__icon svg {
  width: 28px;
  height: 28px;
  display: block;
}

.care--web .care-spec-tile__body {
  position: relative;
  z-index: 1;
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  min-width: 0;
  -webkit-padding-end: 36px;
          padding-inline-end: 36px;
  margin-top: auto;
}

.care--web .care-spec-tile__body strong {
  font-size: 0.98rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  letter-spacing: -0.02em;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care--web .care-spec-tile__body em {
  font-style: normal;
  font-size: 0.8rem;
  font-weight: 600;
  color: color-mix(in srgb, var(--spec-tone) 72%, var(--care-v2-navy));
}

.care--web .care-spec-tile__count {
  position: absolute;
  z-index: 1;
  inset-inline-end: 12px;
  bottom: 12px;
  min-width: 30px;
  height: 30px;
  padding: 0 8px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: color-mix(in srgb, var(--spec-tone) 12%, #fff);
  color: var(--spec-tone);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  border: 1px solid var(--spec-tone-ring);
}

@media (max-width: 720px) {
  .care--web .care-spec-tile {
    min-height: 140px;
    padding: 14px 12px 12px;
    gap: 12px;
    border-radius: 16px;
  }

  .care--web .care-spec-tile--photo {
    min-height: 0;
    padding: 10px 10px 12px;
  }

  .care--web .care-spec-tile__icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
  }

  .care--web .care-spec-tile__icon .care-specialty-ico,
  .care--web .care-spec-tile__icon svg {
    width: 24px;
    height: 24px;
  }

  .care--web .care-spec-tile__body strong {
    font-size: 0.9rem;
  }
}

/* —— Home patient reviews —— */
.care--web .care-section--home-reviews {
  margin-top: 8px;
}

.care--web .care-home-reviews {
  display: grid;
  grid-template-columns: minmax(200px, 260px) minmax(0, 1fr);
  grid-gap: 22px;
  gap: 22px;
  align-items: start;
  padding: 22px;
  border-radius: 20px;
  border: 1px solid var(--care-v2-line);
  background:
    linear-gradient(160deg, color-mix(in srgb, var(--care-v2-primary) 8%, #fff) 0%, #fff 42%),
    var(--care-v2-surface);
  box-shadow: 0 12px 32px rgba(11, 31, 58, 0.05);
}

@media (max-width: 860px) {
  .care--web .care-home-reviews {
    grid-template-columns: 1fr;
  }
}

.care--web .care-home-reviews__summary {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.care--web .care-home-reviews__score {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
}

.care--web .care-home-reviews__score > strong {
  font-size: 3rem;
  line-height: 1;
  color: var(--care-v2-navy);
  font-weight: 750;
  letter-spacing: -0.04em;
}

.care--web .care-home-reviews__score > span {
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care--web .care-home-reviews__trust {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care--web .care-home-reviews__trust li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.84rem;
  color: var(--care-v2-ink);
  font-weight: 600;
}

.care--web .care-home-reviews__trust li::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary);
  flex-shrink: 0;
}

.care--web .care-home-reviews__cards {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

@media (max-width: 640px) {
  .care--web .care-home-reviews__cards {
    grid-template-columns: 1fr;
  }
}

.care--web .care-home-review {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  box-shadow: 0 6px 18px rgba(11, 31, 58, 0.04);
}

.care--web .care-home-review__head {
  display: flex;
  align-items: center;
  gap: 10px;
}

.care--web .care-home-review__avatar {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: inline-grid;
  place-items: center;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-size: 0.78rem;
  font-weight: 700;
  flex-shrink: 0;
}

.care--web .care-home-review__meta {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  min-width: 0;
}

.care--web .care-home-review__meta strong {
  color: var(--care-v2-navy);
  font-size: 0.92rem;
}

.care--web .care-home-review__meta em {
  font-style: normal;
  color: var(--care-v2-muted);
  font-size: 0.78rem;
}

.care--web .care-home-review p {
  margin: 0;
  color: var(--care-v2-ink);
  font-size: 0.9rem;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care--web .care-home-review__practice {
  margin-top: auto;
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--care-v2-primary);
  text-decoration: none;
}

.care--web .care-home-reviews__empty {
  padding: 18px;
  border-radius: 14px;
  border: 1px dashed color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  background: color-mix(in srgb, var(--care-v2-primary) 5%, #fff);
}

.care--web .care-home-reviews__empty p {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.92rem;
  line-height: 1.45;
}

/* required styles */

.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
	position: absolute;
	left: 0;
	top: 0;
	}
.leaflet-container {
	overflow: hidden;
	}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
	-webkit-user-select: none;
	   -moz-user-select: none;
	        user-select: none;
	  -webkit-user-drag: none;
	}
/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
	background: transparent;
}
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
	image-rendering: -webkit-optimize-contrast;
	}
/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
	width: 1600px;
	height: 1600px;
	-webkit-transform-origin: 0 0;
	}
.leaflet-marker-icon,
.leaflet-marker-shadow {
	display: block;
	}
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
	max-width: none !important;
	max-height: none !important;
	}
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
	max-width: none !important;
	max-height: none !important;
	width: auto;
	padding: 0;
	}

.leaflet-container img.leaflet-tile {
	/* See: https://bugs.chromium.org/p/chromium/issues/detail?id=600120 */
	mix-blend-mode: plus-lighter;
}

.leaflet-container.leaflet-touch-zoom {
	touch-action: pan-x pan-y;
	}
.leaflet-container.leaflet-touch-drag {
	/* Fallback for FF which doesn't support pinch-zoom */
	touch-action: none;
	touch-action: pinch-zoom;
}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
	touch-action: none;
}
.leaflet-container {
	-webkit-tap-highlight-color: transparent;
}
.leaflet-container a {
	-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}
.leaflet-tile {
	filter: inherit;
	visibility: hidden;
	}
.leaflet-tile-loaded {
	visibility: inherit;
	}
.leaflet-zoom-box {
	width: 0;
	height: 0;
	box-sizing: border-box;
	z-index: 800;
	}
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
	-moz-user-select: none;
	}

.leaflet-pane         { z-index: 400; }

.leaflet-tile-pane    { z-index: 200; }
.leaflet-overlay-pane { z-index: 400; }
.leaflet-shadow-pane  { z-index: 500; }
.leaflet-marker-pane  { z-index: 600; }
.leaflet-tooltip-pane   { z-index: 650; }
.leaflet-popup-pane   { z-index: 700; }

.leaflet-map-pane canvas { z-index: 100; }
.leaflet-map-pane svg    { z-index: 200; }

.leaflet-vml-shape {
	width: 1px;
	height: 1px;
	}
.lvml {
	behavior: url(#default#VML);
	display: inline-block;
	position: absolute;
	}


/* control positioning */

.leaflet-control {
	position: relative;
	z-index: 800;
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}
.leaflet-top,
.leaflet-bottom {
	position: absolute;
	z-index: 1000;
	pointer-events: none;
	}
.leaflet-top {
	top: 0;
	}
.leaflet-right {
	right: 0;
	}
.leaflet-bottom {
	bottom: 0;
	}
.leaflet-left {
	left: 0;
	}
.leaflet-control {
	float: left;
	clear: both;
	}
.leaflet-right .leaflet-control {
	float: right;
	}
.leaflet-top .leaflet-control {
	margin-top: 10px;
	}
.leaflet-bottom .leaflet-control {
	margin-bottom: 10px;
	}
.leaflet-left .leaflet-control {
	margin-left: 10px;
	}
.leaflet-right .leaflet-control {
	margin-right: 10px;
	}


/* zoom and fade animations */

.leaflet-fade-anim .leaflet-popup {
	opacity: 0;
	transition: opacity 0.2s linear;
	}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
	opacity: 1;
	}
.leaflet-zoom-animated {
	transform-origin: 0 0;
	}
svg.leaflet-zoom-animated {
	will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
	transition:         transform 0.25s cubic-bezier(0,0,0.25,1);
	}
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
	transition: none;
	}

.leaflet-zoom-anim .leaflet-zoom-hide {
	visibility: hidden;
	}


/* cursors */

.leaflet-interactive {
	cursor: pointer;
	}
.leaflet-grab {
	cursor: -webkit-grab;
	cursor:         grab;
	}
.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
	cursor: crosshair;
	}
.leaflet-popup-pane,
.leaflet-control {
	cursor: auto;
	}
.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
	cursor: move;
	cursor: -webkit-grabbing;
	cursor:         grabbing;
	}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
	pointer-events: none;
	}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}

/* visual tweaks */

.leaflet-container {
	background: #ddd;
	outline-offset: 1px;
	}
.leaflet-container a {
	color: #0078A8;
	}
.leaflet-zoom-box {
	border: 2px dotted #38f;
	background: rgba(255,255,255,0.5);
	}


/* general typography */
.leaflet-container {
	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	}


/* general toolbar styles */

.leaflet-bar {
	box-shadow: 0 1px 5px rgba(0,0,0,0.65);
	border-radius: 4px;
	}
.leaflet-bar a {
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	width: 26px;
	height: 26px;
	line-height: 26px;
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
	}
.leaflet-bar a,
.leaflet-control-layers-toggle {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: block;
	}
.leaflet-bar a:hover,
.leaflet-bar a:focus {
	background-color: #f4f4f4;
	}
.leaflet-bar a:first-child {
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	}
.leaflet-bar a:last-child {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom: none;
	}
.leaflet-bar a.leaflet-disabled {
	cursor: default;
	background-color: #f4f4f4;
	color: #bbb;
	}

.leaflet-touch .leaflet-bar a {
	width: 30px;
	height: 30px;
	line-height: 30px;
	}
.leaflet-touch .leaflet-bar a:first-child {
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	}
.leaflet-touch .leaflet-bar a:last-child {
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
	}

/* zoom control */

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
	font: bold 18px 'Lucida Console', Monaco, monospace;
	text-indent: 1px;
	}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out  {
	font-size: 22px;
	}


/* layers control */

.leaflet-control-layers {
	box-shadow: 0 1px 5px rgba(0,0,0,0.4);
	background: #fff;
	border-radius: 5px;
	}
.leaflet-control-layers-toggle {
	background-image: url(/_next/static/media/layers.ef6db872.png);
	width: 36px;
	height: 36px;
	}
.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(/_next/static/media/layers-2x.9859cd12.png);
	background-size: 26px 26px;
	}
.leaflet-touch .leaflet-control-layers-toggle {
	width: 44px;
	height: 44px;
	}
.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
	display: none;
	}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
	display: block;
	position: relative;
	}
.leaflet-control-layers-expanded {
	padding: 6px 10px 6px 6px;
	color: #333;
	background: #fff;
	}
.leaflet-control-layers-scrollbar {
	overflow-y: scroll;
	overflow-x: hidden;
	padding-right: 5px;
	}
.leaflet-control-layers-selector {
	margin-top: 2px;
	position: relative;
	top: 1px;
	}
.leaflet-control-layers label {
	display: block;
	font-size: 13px;
	font-size: 1.08333em;
	}
.leaflet-control-layers-separator {
	height: 0;
	border-top: 1px solid #ddd;
	margin: 5px -10px 5px -6px;
	}

/* Default icon URLs */
.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */
	background-image: url(/_next/static/media/marker-icon.d577052a.png);
	}


/* attribution and scale controls */

.leaflet-container .leaflet-control-attribution {
	background: #fff;
	background: rgba(255, 255, 255, 0.8);
	margin: 0;
	}
.leaflet-control-attribution,
.leaflet-control-scale-line {
	padding: 0 5px;
	color: #333;
	line-height: 1.4;
	}
.leaflet-control-attribution a {
	text-decoration: none;
	}
.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
	text-decoration: underline;
	}
.leaflet-attribution-flag {
	display: inline !important;
	vertical-align: baseline !important;
	width: 1em;
	height: 0.6669em;
	}
.leaflet-left .leaflet-control-scale {
	margin-left: 5px;
	}
.leaflet-bottom .leaflet-control-scale {
	margin-bottom: 5px;
	}
.leaflet-control-scale-line {
	border: 2px solid #777;
	border-top: none;
	line-height: 1.1;
	padding: 2px 5px 1px;
	white-space: nowrap;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.8);
	text-shadow: 1px 1px #fff;
	}
.leaflet-control-scale-line:not(:first-child) {
	border-top: 2px solid #777;
	border-bottom: none;
	margin-top: -2px;
	}
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
	border-bottom: 2px solid #777;
	}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	box-shadow: none;
	}
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	border: 2px solid rgba(0,0,0,0.2);
	background-clip: padding-box;
	}


/* popup */

.leaflet-popup {
	position: absolute;
	text-align: center;
	margin-bottom: 20px;
	}
.leaflet-popup-content-wrapper {
	padding: 1px;
	text-align: left;
	border-radius: 12px;
	}
.leaflet-popup-content {
	margin: 13px 24px 13px 20px;
	line-height: 1.3;
	font-size: 13px;
	font-size: 1.08333em;
	min-height: 1px;
	}
.leaflet-popup-content p {
	margin: 17px 0;
	margin: 1.3em 0;
	}
.leaflet-popup-tip-container {
	width: 40px;
	height: 20px;
	position: absolute;
	left: 50%;
	margin-top: -1px;
	margin-left: -20px;
	overflow: hidden;
	pointer-events: none;
	}
.leaflet-popup-tip {
	width: 17px;
	height: 17px;
	padding: 1px;

	margin: -10px auto 0;
	pointer-events: auto;
	transform: rotate(45deg);
	}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
	background: white;
	color: #333;
	box-shadow: 0 3px 14px rgba(0,0,0,0.4);
	}
.leaflet-container a.leaflet-popup-close-button {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	text-align: center;
	width: 24px;
	height: 24px;
	font: 16px/24px Tahoma, Verdana, sans-serif;
	color: #757575;
	text-decoration: none;
	background: transparent;
	}
.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
	color: #585858;
	}
.leaflet-popup-scrolled {
	overflow: auto;
	}

.leaflet-oldie .leaflet-popup-content-wrapper {
	-ms-zoom: 1;
	}
.leaflet-oldie .leaflet-popup-tip {
	width: 24px;
	margin: 0 auto;

	-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
	filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
	}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
	border: 1px solid #999;
	}


/* div icon */

.leaflet-div-icon {
	background: #fff;
	border: 1px solid #666;
	}


/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
	position: absolute;
	padding: 6px;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 3px;
	color: #222;
	white-space: nowrap;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	pointer-events: none;
	box-shadow: 0 1px 3px rgba(0,0,0,0.4);
	}
.leaflet-tooltip.leaflet-interactive {
	cursor: pointer;
	pointer-events: auto;
	}
.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	position: absolute;
	pointer-events: none;
	border: 6px solid transparent;
	background: transparent;
	content: "";
	}

/* Directions */

.leaflet-tooltip-bottom {
	margin-top: 6px;
}
.leaflet-tooltip-top {
	margin-top: -6px;
}
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
	left: 50%;
	margin-left: -6px;
	}
.leaflet-tooltip-top:before {
	bottom: 0;
	margin-bottom: -12px;
	border-top-color: #fff;
	}
.leaflet-tooltip-bottom:before {
	top: 0;
	margin-top: -12px;
	margin-left: -6px;
	border-bottom-color: #fff;
	}
.leaflet-tooltip-left {
	margin-left: -6px;
}
.leaflet-tooltip-right {
	margin-left: 6px;
}
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	top: 50%;
	margin-top: -6px;
	}
.leaflet-tooltip-left:before {
	right: 0;
	margin-right: -12px;
	border-left-color: #fff;
	}
.leaflet-tooltip-right:before {
	left: 0;
	margin-left: -12px;
	border-right-color: #fff;
	}

/* Printing */

@media print {
	/* Prevent printers from removing background-images of controls. */
	.leaflet-control {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
		}
	}

.care-close-page {
  --close-ink: #0f172a;
  --close-muted: #64748b;
  --close-line: #e2e8f0;
  --close-paper: #f8fafc;
  --close-surface: #ffffff;
  --close-primary: #2563eb;
  --close-deep: #1e3a5f;
  min-height: 100dvh;
  position: relative;
  background:
    radial-gradient(1200px 480px at 10% -10%, rgba(37, 99, 235, 0.16), transparent 60%),
    radial-gradient(900px 420px at 100% 0%, rgba(30, 58, 95, 0.12), transparent 55%),
    var(--close-paper);
  color: var(--close-ink);
  font-family:'Inter', 'IBM Plex Sans Arabic', system-ui, -apple-system, sans-serif;
}

.care-close-page__glow {
  pointer-events: none;
  position: absolute;
  inset: 0;
  background-image: linear-gradient(180deg, transparent, rgba(248, 250, 252, 0.85) 72%);
}

.care-close-page__top,
.care-close-page__main {
  position: relative;
  z-index: 1;
  width: min(720px, calc(100% - 32px));
  margin-inline: auto;
}

.care-close-page__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 28px 0 8px;
}

.care-close-page__top-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px 14px;
}

.care-close-page__brand {
  font-weight: 800;
  font-size: 1.15rem;
  letter-spacing: -0.03em;
  color: var(--close-deep);
  text-decoration: none;
}

.care-close-page__home {
  color: var(--close-primary);
  font-weight: 650;
  font-size: 0.9rem;
  text-decoration: none;
}

.care-close-page__main {
  padding: 24px 0 64px;
}

.care-close-page__eyebrow {
  margin: 0 0 8px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--close-primary);
}

.care-close-page__main h1 {
  margin: 0 0 12px;
  font-size: clamp(1.75rem, 4vw, 2.35rem);
  line-height: 1.15;
  letter-spacing: -0.03em;
  color: var(--close-deep);
}

.care-close-page__lead {
  margin: 0 0 28px;
  max-width: 54ch;
  font-size: 1.02rem;
  line-height: 1.55;
  color: var(--close-muted);
}

.care-close-page__card,
.care-close-page__contacts,
.care-close-page__note {
  background: var(--close-surface);
  border: 1px solid var(--close-line);
  border-radius: 18px;
  padding: 22px 22px 20px;
  margin-bottom: 16px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
}

.care-close-page__card h2,
.care-close-page__contacts h2 {
  margin: 0 0 14px;
  font-size: 1rem;
  font-weight: 750;
  color: var(--close-deep);
}

.care-close-page__steps {
  margin: 0;
  -webkit-padding-start: 1.2rem;
          padding-inline-start: 1.2rem;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  color: var(--close-ink);
  line-height: 1.5;
  font-size: 0.95rem;
}

.care-close-page__contacts ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-close-page__contact {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid var(--close-line);
  background: #f8fafc;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.care-close-page__contact:hover {
  border-color: color-mix(in srgb, var(--close-primary) 35%, var(--close-line));
  background: #eff6ff;
}

.care-close-page__contact strong {
  font-size: 0.95rem;
  color: var(--close-deep);
}

.care-close-page__email {
  font-weight: 700;
  color: var(--close-primary);
  font-size: 0.92rem;
}

.care-close-page__contact em {
  font-style: normal;
  color: var(--close-muted);
  font-size: 0.82rem;
  line-height: 1.4;
}

.care-close-page__note strong {
  display: block;
  margin-bottom: 6px;
  color: var(--close-deep);
}

.care-close-page__note p {
  margin: 0;
  color: var(--close-muted);
  line-height: 1.5;
  font-size: 0.9rem;
}

@media (max-width: 640px) {
  .care-close-page__card,
  .care-close-page__contacts,
  .care-close-page__note {
    padding: 18px 16px;
    border-radius: 14px;
  }
}

html[dir='rtl'] .care-close-page {
  font-family: 'IBM Plex Sans Arabic', 'Noto Sans Arabic','Inter', system-ui, sans-serif;
}


/* Shared legal / help document pages — Privacy, FAQ, and similar. */
.care-legal-page {
  --legal-ink: #0f172a;
  --legal-muted: #64748b;
  --legal-line: #e2e8f0;
  --legal-paper: #f8fafc;
  --legal-surface: #ffffff;
  --legal-primary: #2563eb;
  --legal-deep: #1e3a5f;
  --legal-wash: #eff6ff;
  min-height: 100dvh;
  position: relative;
  background:
    radial-gradient(1100px 420px at 8% -8%, rgba(37, 99, 235, 0.14), transparent 58%),
    radial-gradient(900px 400px at 100% 0%, rgba(30, 58, 95, 0.1), transparent 52%),
    var(--legal-paper);
  color: var(--legal-ink);
  font-family:'Inter', 'IBM Plex Sans Arabic', system-ui, -apple-system, sans-serif;
}

.care-legal-page__top,
.care-legal-page__wrap {
  position: relative;
  z-index: 1;
  width: min(1040px, calc(100% - 32px));
  margin-inline: auto;
}

.care-legal-page__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 28px 0 8px;
}

.care-legal-page__brand {
  font-weight: 800;
  font-size: 1.15rem;
  letter-spacing: -0.03em;
  color: var(--legal-deep);
  text-decoration: none;
}

.care-legal-page__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
}

.care-legal-page__nav a {
  color: var(--legal-primary);
  font-weight: 650;
  font-size: 0.88rem;
  text-decoration: none;
}

.care-legal-page__wrap {
  padding: 20px 0 72px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-gap: 22px;
  gap: 22px;
}

@media (min-width: 900px) {
  .care-legal-page__wrap--split {
    grid-template-columns: 220px minmax(0, 1fr);
    align-items: start;
  }
}

.care-legal-page__eyebrow {
  margin: 0 0 8px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--legal-primary);
}

.care-legal-page__hero h1 {
  margin: 0 0 10px;
  font-size: clamp(1.7rem, 3.6vw, 2.4rem);
  line-height: 1.15;
  letter-spacing: -0.03em;
  color: var(--legal-deep);
}

.care-legal-page__hero p {
  margin: 0;
  max-width: 58ch;
  color: var(--legal-muted);
  line-height: 1.55;
  font-size: 1.02rem;
}

.care-legal-page__meta {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-legal-page__chip {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: 999px;
  background: var(--legal-wash);
  color: var(--legal-deep);
  font-size: 0.75rem;
  font-weight: 650;
  border: 1px solid color-mix(in srgb, var(--legal-primary) 18%, var(--legal-line));
}

a.care-legal-page__chip {
  text-decoration: none;
  color: inherit;
}

.care-legal-page__toc {
  position: -webkit-sticky;
  position: sticky;
  top: 16px;
  background: var(--legal-surface);
  border: 1px solid var(--legal-line);
  border-radius: 16px;
  padding: 16px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.care-legal-page__toc h2 {
  margin: 0 0 10px;
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--legal-muted);
}

.care-legal-page__toc ol {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-legal-page__toc a {
  display: block;
  padding: 6px 8px;
  border-radius: 8px;
  color: var(--legal-deep);
  text-decoration: none;
  font-size: 0.86rem;
  font-weight: 550;
  line-height: 1.35;
}

.care-legal-page__toc a:hover {
  background: var(--legal-wash);
  color: var(--legal-primary);
}

.care-legal-page__body {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
}

.care-legal-page__section {
  background: var(--legal-surface);
  border: 1px solid var(--legal-line);
  border-radius: 16px;
  padding: 20px 22px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.03);
  scroll-margin-top: 20px;
}

.care-legal-page__section h2 {
  margin: 0 0 10px;
  font-size: 1.05rem;
  font-weight: 750;
  color: var(--legal-deep);
  letter-spacing: -0.02em;
}

.care-legal-page__section p,
.care-legal-page__section li {
  color: var(--legal-ink);
  line-height: 1.6;
  font-size: 0.95rem;
}

.care-legal-page__section p {
  margin: 0 0 10px;
}

.care-legal-page__section p:last-child {
  margin-bottom: 0;
}

.care-legal-page__section ul {
  margin: 0;
  -webkit-padding-start: 1.15rem;
          padding-inline-start: 1.15rem;
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-legal-page__section a {
  color: var(--legal-primary);
  font-weight: 650;
}

.care-legal-page__section:has(.care-legal-faq) {
  background: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
}

.care-legal-page__section:has(.care-legal-faq) > h2 {
  margin-bottom: 12px;
  padding-inline: 2px;
}

.care-legal-faq {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-legal-faq__item {
  background: var(--legal-surface);
  border: 1px solid var(--legal-line);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.03);
}

.care-legal-faq__item[open] {
  border-color: color-mix(in srgb, var(--legal-primary) 28%, var(--legal-line));
}

.care-legal-faq__item summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 18px;
  font-weight: 700;
  color: var(--legal-deep);
  font-size: 0.98rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.care-legal-faq__item summary::-webkit-details-marker {
  display: none;
}

.care-legal-faq__item summary::after {
  content: '+';
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--legal-wash);
  color: var(--legal-primary);
  display: grid;
  place-items: center;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1;
}

.care-legal-faq__item[open] summary::after {
  content: '−';
}

.care-legal-faq__answer {
  padding: 0 18px 16px;
  color: var(--legal-muted);
  line-height: 1.55;
  font-size: 0.92rem;
}

.care-legal-page__foot {
  margin-top: 8px;
  padding: 18px 20px;
  border-radius: 16px;
  background: linear-gradient(135deg, #1e3a5f, #2563eb);
  color: #fff;
}

.care-legal-page__foot strong {
  display: block;
  margin-bottom: 6px;
  font-size: 1rem;
}

.care-legal-page__foot p {
  margin: 0 0 12px;
  opacity: 0.92;
  line-height: 1.45;
  font-size: 0.9rem;
}

.care-legal-page__foot a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  background: #fff;
  color: var(--legal-deep);
  font-weight: 700;
  font-size: 0.88rem;
  text-decoration: none;
  -webkit-margin-end: 8px;
          margin-inline-end: 8px;
  margin-bottom: 6px;
}

@media (max-width: 640px) {
  .care-legal-page__section {
    padding: 16px;
  }

  .care-legal-page__toc {
    position: static;
  }
}

.care-legal-contact__heading {
  margin: 8px 0 0;
  font-size: 1.05rem;
  font-weight: 750;
  color: var(--legal-deep);
  letter-spacing: -0.02em;
}

.care-legal-contact__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  grid-gap: 14px;
  gap: 14px;
}

.care-legal-contact__card {
  background: var(--legal-surface);
  border: 1px solid var(--legal-line);
  border-radius: 16px;
  padding: 18px 18px 16px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.03);
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  align-content: start;
}

.care-legal-contact__team {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--legal-primary);
}

.care-legal-contact__card h3 {
  margin: 0;
  font-size: 1rem;
  font-weight: 750;
  color: var(--legal-deep);
  letter-spacing: -0.02em;
  line-height: 1.3;
}

.care-legal-contact__blurb {
  margin: 0;
  color: var(--legal-muted);
  font-size: 0.9rem;
  line-height: 1.5;
}

.care-legal-contact__email {
  margin-top: 4px;
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--legal-primary);
  text-decoration: none;
  word-break: break-all;
}

.care-legal-contact__email:hover {
  text-decoration: underline;
}

html[dir='rtl'] .care-legal-page {
  font-family: 'IBM Plex Sans Arabic', 'Noto Sans Arabic','Inter', system-ui, sans-serif;
}

.sell-biz {
  max-width: 860px;
  margin: 0 auto;
  padding: 36px 20px 72px;
  color: #142033;
}

.sell-biz__eyebrow {
  margin: 0 0 8px;
  color: #0b6b4f;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sell-biz__hero h1 {
  margin: 0 0 10px;
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  line-height: 1.15;
  letter-spacing: -0.03em;
}

.sell-biz__hero p {
  margin: 0;
  max-width: 62ch;
  color: #4b5568;
  font-size: 1.05rem;
  line-height: 1.55;
}

.sell-biz__card,
.sell-biz__thanks {
  margin-top: 28px;
  padding: 22px;
  border: 1px solid #e4e8ef;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 40px rgba(16, 32, 58, 0.06);
}

.sell-biz__banner,
.sell-biz__error {
  margin: 0 0 18px;
  padding: 12px 14px;
  border-radius: 12px;
  line-height: 1.45;
}

.sell-biz__banner {
  background: #eef8f3;
  color: #0b6b4f;
}

.sell-biz__error {
  background: #fdecea;
  color: #8c1d18;
}

.sell-biz__locked {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 18px;
  padding: 14px;
  border-radius: 12px;
  background: #fff7e8;
  color: #6b4a12;
}

.sell-biz__locked-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.sell-biz section + section {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid #eef1f5;
}

.sell-biz h2 {
  margin: 0 0 12px;
  font-size: 1.05rem;
}

.sell-biz__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.sell-biz label,
.sell-biz__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 0.86rem;
  font-weight: 650;
}

.sell-biz label span,
.sell-biz__field > span {
  color: #3c4658;
}

.sell-biz input,
.sell-biz select,
.sell-biz textarea {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #d5dbe6;
  border-radius: 10px;
  background: #fff;
  color: #142033;
  font: inherit;
  font-weight: 500;
}

.sell-biz textarea {
  min-height: 110px;
  resize: vertical;
}

.sell-biz input:focus,
.sell-biz select:focus,
.sell-biz textarea:focus {
  outline: 2px solid #0b6b4f;
  border-color: #0b6b4f;
}

.sell-biz label.sell-biz__bad > span,
.sell-biz section.sell-biz__bad > h2 {
  color: #8c1d18;
}

.sell-biz label.sell-biz__bad input,
.sell-biz label.sell-biz__bad select,
.sell-biz label.sell-biz__bad textarea,
.sell-biz__bad-input {
  border-color: #c5221f;
  background: #fff8f7;
  box-shadow: 0 0 0 3px rgba(197, 34, 31, 0.15);
}

.sell-biz__span2 {
  grid-column: 1 / -1;
}

.sell-biz__hint {
  margin: -4px 0 12px;
  color: #5c677a;
  font-size: 0.9rem;
}

.sell-biz__table-wrap {
  overflow-x: auto;
}

.sell-biz table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.92rem;
}

.sell-biz th,
.sell-biz td {
  padding: 8px 6px;
  text-align: start;
  white-space: nowrap;
}

.sell-biz th {
  color: #5c677a;
  font-size: 0.78rem;
  font-weight: 700;
}

.sell-biz td input {
  min-width: 120px;
}

.sell-biz__profit {
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}

.sell-biz__files {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
}

.sell-biz__files li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 8px 10px;
  border-radius: 10px;
  background: #f6f8fb;
}

.sell-biz__file-btn,
.sell-biz__text-btn {
  border: 0;
  background: transparent;
  color: #0b6b4f;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.sell-biz__submit {
  width: 100%;
  margin-top: 18px;
  min-height: 48px;
  border: 0;
  border-radius: 12px;
  background: #0b6b4f;
  color: #fff;
  font: inherit;
  font-size: 1rem;
  font-weight: 750;
  cursor: pointer;
}

.sell-biz__submit:disabled {
  opacity: 0.65;
  cursor: progress;
}

.sell-biz__hp {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.sell-biz__thanks {
  text-align: center;
}

.sell-biz__mark {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: #e7f6ef;
  color: #0b6b4f;
  font-size: 1.8rem;
}

.sell-biz__ref {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 12px;
  background: #f4f7fb;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: 0.04em;
}

@media (max-width: 720px) {
  .sell-biz__grid {
    grid-template-columns: 1fr;
  }
}

/**
 * Marketplace browse cards for lab / radiology / pharmacy catalogs.
 * Reuses doctors layout tokens where possible.
 */

.care-mkt-page .care-v2-doctors-layout {
  align-items: start;
}

/* Marketplace sidebars: show every filter option; page scrolls, sidebar does not. */
.care--web .care-mkt-page.care-v2-doctors-page .care-v2-spec-side,
.care-mkt-page .care-v2-spec-side {
  position: static;
  top: auto;
  max-height: none;
  overflow: visible;
  overflow-y: visible;
}

.care-mkt-page .care-v2-filter-block__list,
.care-mkt-page .care-mkt-practice-filter__list {
  max-height: none;
  overflow: visible;
}

.care-mkt-page .care-v2-spec-side__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.care-mkt-page .care-v2-spec-side__head strong {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
}

.care-mkt-page .care-v2-spec-side__head .care-link {
  flex: 0 0 auto;
  width: auto !important;
  padding: 0 !important;
  white-space: nowrap;
}

.care-mkt-pager {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 16px 0 8px;
}

.care-mkt-pager--side {
  margin-top: 10px;
  justify-content: space-between;
}

.care-mkt-pager__controls {
  display: flex;
  align-items: center;
  gap: 8px;
}

.care-mkt-pager__btn {
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: #fff;
  border-radius: 10px;
  padding: 7px 12px;
  font: inherit;
  font-weight: 600;
  font-size: 0.86rem;
  color: var(--care-v2-navy, #0b1f3a);
  cursor: pointer;
}

.care-mkt-pager__btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.care-mkt-pager__btn:hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--care-v2-blue, #2563eb) 40%, #e2e8f0);
}

.care-mkt-pager__meta,
.care-mkt-pager__range,
.care-mkt-pager__only {
  font-size: 0.86rem;
  color: var(--care-v2-muted, #64748b);
  margin: 0;
}

.care-mkt-grid {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.care-mkt-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-gap: 14px;
  gap: 14px;
  align-items: stretch;
  padding: 16px 16px 14px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius-lg, 16px);
  background: var(--care-v2-surface, #fff);
  box-shadow: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.care-mkt-card:hover {
  border-color: color-mix(in srgb, var(--care-v2-blue, #2563eb) 35%, var(--care-v2-line, #e2e8f0));
}

.care-mkt-card.is-selected {
  border-color: var(--care-v2-blue, #2563eb);
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 4%, #fff);
}

.care-mkt-card.is-disabled {
  opacity: 0.72;
}

.care-mkt-card__main {
  display: flex;
  gap: 12px;
  min-width: 0;
}

.care-mkt-card__media {
  flex: 0 0 120px;
  width: 120px;
  height: 120px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--care-v2-paper, #f1f5f9);
  display: grid;
  place-items: stretch;
  color: var(--care-v2-blue, #2563eb);
}

.care-mkt-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0;
  padding: 0;
}

/* Product / catalog thumbs fill the media tile (no circular inset) */
.care-mkt-card__media .care-avatar,
.care-mkt-card__media .care-avatar--sq,
.care-mkt-card__media .care-avatar--med,
.care-mkt-card__media .care-mico {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  flex: none !important;
  border-radius: 0 !important;
  overflow: hidden;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.care-mkt-card__media .care-avatar img,
.care-mkt-card__media .care-mico img,
.care-mkt-card__media .care-mico svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  padding: 0;
  border-radius: 0;
}

.care-mkt-card__body {
  min-width: 0;
}

.care-mkt-card__topline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-bottom: 4px;
}

.care-mkt-card__badge {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--care-v2-blue, #2563eb);
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 10%, #fff);
  padding: 3px 8px;
  border-radius: 999px;
}

.care-mkt-card__title {
  margin: 0;
  font-size: 1.05rem;
  line-height: 1.3;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-mkt-card__sub,
.care-mkt-card__clinic,
.care-mkt-card__place,
.care-mkt-card__stock {
  margin: 4px 0 0;
  font-size: 0.88rem;
  color: var(--care-v2-muted, #64748b);
  line-height: 1.35;
}

.care-mkt-card__clinic {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 600;
}

a.care-mkt-card__clinic--link {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin: 4px 0 0;
  padding: 2px 6px;
  margin-left: -6px;
  border-radius: 2px;
  text-decoration: none;
  transition: color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}

a.care-mkt-card__clinic--link:hover,
a.care-mkt-card__clinic--link:focus-visible {
  color: var(--care-v2-primary, #0b6bcb);
  background: color-mix(in srgb, var(--care-v2-primary, #0b6bcb) 12%, #fff);
  box-shadow: inset 0 -1px 0 color-mix(in srgb, var(--care-v2-primary, #0b6bcb) 55%, transparent);
  outline: none;
}

a.care-mkt-card__clinic--link .care-mkt-card__clinic-ico {
  color: currentColor;
}

.care-mkt-card__clinic-ico {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  color: var(--care-v2-muted, #64748b);
}

.care-mkt-card__aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  min-width: 7.5rem;
}

.care-mkt-card__price {
  font-size: 1.05rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-mkt-card__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  width: 100%;
  min-width: 8.5rem;
}

.care-mkt-card__details {
  border: 0;
  background: transparent;
  color: var(--care-v2-blue, #2563eb);
  font: inherit;
  font-weight: 600;
  font-size: 0.86rem;
  padding: 0;
  cursor: pointer;
  text-align: right;
  text-decoration: none;
}

.care-mkt-card__title-link {
  color: inherit;
  text-decoration: none;
}

.care-mkt-card__title-link:hover {
  color: var(--care-v2-blue, #2563eb);
}

.care-mkt-card__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid var(--care-v2-blue, #2563eb);
  background: var(--care-v2-blue, #2563eb);
  color: #fff;
  font: inherit;
  font-weight: 700;
  font-size: 0.9rem;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.care-mkt-card__add:hover:not(:disabled) {
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 88%, #000);
}

.care-mkt-card__add.is-added {
  background: #fff;
  color: var(--care-v2-blue, #2563eb);
}

.care-mkt-card__add:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.care-mkt-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: end;
  margin-bottom: 14px;
  padding: 12px 14px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 14px;
  background: var(--care-v2-paper, #f8fafc);
}

.care-mkt-strip label {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--care-v2-muted, #64748b);
}

.care-mkt-strip select,
.care-mkt-strip input[type='search'] {
  min-width: 10rem;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 10px;
  padding: 8px 10px;
  font: inherit;
  background: #fff;
}

.care-mkt-strip__search {
  flex: 1 1 16rem;
}

.care-mkt-strip__search input {
  width: 100%;
  min-width: 0;
}

.care-mkt-practice-filter__search {
  display: block;
  margin: 0 0 10px;
}

.care-mkt-practice-filter__search input {
  width: 100%;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 10px;
  padding: 8px 10px;
  font: inherit;
  background: #fff;
}

.care-mkt-practice-filter__list {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-mkt-practice-filter__row {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  width: 100%;
  text-align: start;
  padding: 10px 10px;
  border-radius: 12px;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  font: inherit;
  color: inherit;
}

.care-mkt-practice-filter__row:hover {
  background: var(--care-v2-paper, #f8fafc);
}

.care-mkt-practice-filter__row.is-active {
  border-color: color-mix(in srgb, var(--care-v2-blue, #2563eb) 40%, #e2e8f0);
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 8%, #fff);
}

.care-mkt-practice-filter__name {
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.9rem;
  line-height: 1.3;
}

.care-mkt-practice-filter__meta {
  font-size: 0.78rem;
  color: var(--care-v2-muted, #64748b);
}

.care-mkt-practice-filter__empty {
  margin: 4px 0 0;
  font-size: 0.85rem;
  color: var(--care-v2-muted, #64748b);
}

.care-mkt-cart-clinic {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 8%, #fff);
  border: 1px solid color-mix(in srgb, var(--care-v2-blue, #2563eb) 22%, #e2e8f0);
  font-size: 0.9rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-mkt-cart-clinic strong {
  font-weight: 700;
}

.care-mkt-cart-clinic button {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  border: 0;
  background: transparent;
  color: var(--care-v2-blue, #2563eb);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}

.care-mkt-detail__meta {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  margin: 8px 0 14px;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.92rem;
}

.care-mkt-detail__meta strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 1rem;
}

.care-mkt-switch {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(11, 31, 58, 0.45);
}

.care-mkt-switch__card {
  width: min(440px, 100%);
  border-radius: 18px;
  background: #fff;
  padding: 22px 20px 18px;
  box-shadow: 0 18px 50px rgba(11, 31, 58, 0.18);
}

.care-mkt-switch__eyebrow {
  margin: 0 0 6px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-blue, #2563eb);
}

.care-mkt-switch__card h2 {
  margin: 0;
  font-size: 1.25rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-mkt-switch__lead {
  margin: 10px 0 16px;
  color: var(--care-v2-muted, #64748b);
  line-height: 1.45;
  font-size: 0.95rem;
}

.care-mkt-switch__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 18px;
}

.care-mkt-switch__col {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  padding: 12px;
  border-radius: 12px;
  background: var(--care-v2-paper, #f8fafc);
  border: 1px solid var(--care-v2-line, #e2e8f0);
}

.care-mkt-switch__col.is-next {
  border-color: color-mix(in srgb, var(--care-v2-blue, #2563eb) 35%, #e2e8f0);
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 6%, #fff);
}

.care-mkt-switch__col span {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--care-v2-muted, #64748b);
}

.care-mkt-switch__col strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.95rem;
}

.care-mkt-switch__col em {
  font-style: normal;
  font-size: 0.82rem;
  color: var(--care-v2-muted, #64748b);
}

.care-mkt-switch__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

@media (max-width: 720px) {
  .care-mkt-card {
    grid-template-columns: 1fr;
  }

  .care-mkt-card__aside {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
  }

  .care-mkt-card__actions {
    flex-direction: row;
    align-items: center;
    min-width: 0;
    width: auto;
  }

  .care-mkt-switch__cols {
    grid-template-columns: 1fr;
  }
}

.care-auth-sheet {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: end center;
}

.care-auth-sheet__scrim {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(8, 24, 42, 0.52);
  opacity: 0;
  transition: opacity 0.28s ease;
}

.care-auth-sheet__card {
  position: relative;
  width: min(840px, 100%);
  max-height: min(94dvh, 760px);
  overflow: auto;
  display: grid;
  background: #fff;
  border-radius: 22px 22px 0 0;
  box-shadow: 0 -18px 48px rgba(30, 58, 95, 0.22);
  transform: translateY(110%);
  transition: transform 0.32s cubic-bezier(0.32, 0.72, 0, 1);
}

.care-auth-sheet.is-open .care-auth-sheet__scrim {
  opacity: 1;
}

.care-auth-sheet.is-open .care-auth-sheet__card {
  transform: translateY(0);
}

.care-auth-sheet__handle {
  display: none;
}

.care-auth-sheet__hero {
  margin: 0;
  position: relative;
  min-height: 200px;
  background: var(--care-navy);
  overflow: hidden;
}

.care-auth-sheet__hero-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
}

.care-auth-sheet__hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 28, 48, 0.15), rgba(8, 28, 48, 0.78));
  pointer-events: none;
}

.care-auth-sheet__hero img.care-auth-sheet__hero-ico,
.care-auth-sheet__hero-ico {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  margin: 28px auto 0;
  border-radius: 18px;
  background: color-mix(in srgb, #fff 18%, transparent);
  color: #fff;
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}

.care-auth-sheet__hero-ico .care-ico {
  width: 36px;
  height: 36px;
}

.care-auth-sheet__hero figcaption {
  position: absolute;
  inset: auto 0 0;
  z-index: 1;
  padding: 28px 20px 16px;
  background: linear-gradient(180deg, transparent, rgba(8, 28, 48, 0.72));
  color: #fff;
}

.care-auth-sheet__hero figcaption p {
  margin: 0 0 4px;
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.86;
}

.care-auth-sheet__hero figcaption strong {
  display: block;
  font-size: 1.25rem;
  line-height: 1.25;
}

.care-auth-sheet__body {
  padding: 18px 18px 22px;
}

.care-auth-sheet__card header {
  position: relative;
  margin-bottom: 16px;
}

.care-auth-sheet__close {
  position: absolute;
  top: -4px;
  inset-inline-end: 0;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 999px;
  background: #eef4fa;
  color: var(--care-ink);
  font-size: 1.4rem;
  line-height: 1;
}

.care-auth-sheet__card h2 {
  margin: 0 0 6px;
  font-size: 1.28rem;
  font-weight: 750;
  color: var(--care-navy);
}

.care-auth-sheet__card header p {
  margin: 0 0 4px;
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-teal);
}

.care-auth-sheet__card header span {
  display: block;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #2f4660;
}

.care-auth-sheet__card form,
.care-auth-sheet__welcome {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.care-auth-sheet__card label {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-auth-sheet__card label span {
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--care-ink);
}

.care-auth-sheet__card input[type='text'],
.care-auth-sheet__card input[type='email'],
.care-auth-sheet__card input[type='password'],
.care-auth-sheet__card input[type='tel'],
.care-auth-sheet__card input:not([type]) {
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid #c5d8ea;
  border-radius: 14px;
  background: #f7fbfe;
  color: var(--care-navy);
  font-family: inherit;
  font-weight: 500;
  /* iOS Safari zooms the page when a focused input is smaller than 16px. */
  font-size: 16px;
  line-height: 1.35;
}

.care-auth-sheet__card input:focus {
  outline: none;
  border-color: var(--care-teal);
  box-shadow: 0 0 0 3px rgba(26, 115, 200, 0.16);
}

.care-auth-sheet__switch {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 6px;
  gap: 6px;
  padding: 4px;
  border-radius: 14px;
  background: #eef4fa;
}

.care-auth-sheet__switch button {
  min-height: 40px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #3d5470;
  font: inherit;
  font-weight: 700;
}

.care-auth-sheet__switch button.is-active {
  background: #fff;
  color: var(--care-navy);
  box-shadow: 0 4px 12px rgba(30, 58, 95, 0.08);
}

.care-auth-sheet__error,
.care-auth-sheet__hint,
.care-auth-sheet__note {
  margin: 0 0 12px;
  font-size: 0.88rem;
  line-height: 1.45;
}

.care-auth-sheet__error {
  color: #7a1a12;
  background: #fdecea;
  border: 1px solid #f5c2c0;
  border-radius: 10px;
  padding: 0.65rem 0.75rem;
}

.care-auth-sheet__hint,
.care-auth-sheet__note {
  color: #2f4660;
}

.care-auth-sheet__toggle {
  border: 0;
  background: none;
  color: var(--care-teal);
  font: inherit;
  font-weight: 650;
  text-align: start;
  cursor: pointer;
}

.care-auth-sheet__photo-pick {
  position: relative;
  width: 84px;
  height: 84px;
  border-radius: 50%;
  overflow: hidden;
  background: #e8f2fb;
  color: var(--care-navy);
  display: grid;
  place-items: center;
}

.care-auth-sheet__photo-pick img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care-auth-sheet__photo-pick input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

@media (min-width: 720px) {
  .care-auth-sheet {
    place-items: center;
    padding: 24px;
  }

  .care-auth-sheet__card {
    grid-template-columns: minmax(260px, 0.9fr) minmax(320px, 1.1fr);
    border-radius: 22px;
    overflow: hidden;
    transform: translateY(24px) scale(0.98);
    opacity: 0;
    transition:
      transform 0.28s ease,
      opacity 0.28s ease;
  }

  .care-auth-sheet.is-open .care-auth-sheet__card {
    transform: none;
    opacity: 1;
  }

  .care-auth-sheet__hero,
  .care-auth-sheet__hero img {
    min-height: 100%;
    height: 100%;
  }

  .care-auth-sheet__body {
    padding: 28px 28px 24px;
  }

  .care-auth-sheet__card header span {
    display: none;
  }
}

body.care-phone-shell .care-auth-sheet__handle {
  display: block;
  width: 36px;
  height: 4px;
  margin: 10px auto 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.45);
  position: absolute;
  left: 50%;
  top: 8px;
  z-index: 2;
  transform: translateX(-50%);
}

body.care-phone-shell .care-auth-sheet__hero {
  min-height: 96px;
  height: auto;
  display: flex;
  align-items: flex-end;
  padding: 28px 20px 16px;
}

body.care-phone-shell .care-auth-sheet__hero img {
  display: none;
}

body.care-phone-shell .care-auth-sheet__hero figcaption {
  position: static;
  padding: 0;
  background: none;
}

body.care-phone-shell .care-auth-sheet__card header {
  position: static;
}

body.care-phone-shell .care-auth-sheet__body header p,
body.care-phone-shell .care-auth-sheet__body header h2 {
  display: none;
}

body.care-phone-shell .care-auth-sheet__close {
  position: absolute;
  top: 10px;
  inset-inline-end: 12px;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  z-index: 3;
}

@media (max-width: 767px) {
  .care-auth-sheet {
    z-index: 1220;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }

  .care-auth-sheet__body {
    padding-bottom: calc(22px + env(safe-area-inset-bottom, 0px));
  }
}

html.ch-native-app .care-auth-sheet,
body.care-phone-shell .care-auth-sheet {
  z-index: 1220;
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

html.ch-native-app .care-auth-sheet__body,
body.care-phone-shell .care-auth-sheet__body {
  padding-bottom: calc(22px + env(safe-area-inset-bottom, 0px));
}

@media (prefers-reduced-motion: reduce) {
  .care-auth-sheet__scrim,
  .care-auth-sheet__card {
    transition: none;
  }
}

/* QA-HUB-10 */
/* LoginPage owns desktop split auth; sheet stays phone overlay — no staff chrome. */

.care-auth-sheet .care-btn.care-btn--primary,
.care-auth-sheet .care-btn.care-btn--primary:hover,
.care-auth-sheet .care-btn.care-btn--primary:disabled {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.care-auth-sheet .care-btn.care-btn--primary .care-ico,
.care-auth-sheet .care-btn.care-btn--primary svg {
  color: #fff !important;
  stroke: #fff !important;
}

.care-patient-step {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: stretch;
  justify-content: stretch;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  max-width: 100%;
  margin: 0;
  padding: 0;
  pointer-events: auto;
  background: #f3f4f6;
}

.care-patient-step__scrim {
  display: none;
}

.care-patient-step__sheet {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  margin: 0;
  padding: 56px 16px calc(24px + env(safe-area-inset-bottom, 0px));
  background: #f3f4f6;
}

.care-patient-step__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  -webkit-padding-end: 48px;
          padding-inline-end: 48px;
}

.care-patient-step__eyebrow {
  margin: 0 0 4px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-teal);
}

.care-patient-step__head h2 {
  margin: 0;
  font-family: var(--care-font, var(--font-inter, 'Inter'), sans-serif);
  font-size: 1.35rem;
  letter-spacing: -0.02em;
  font-weight: 600;
  color: var(--care-navy);
}

.care-patient-step__head p {
  margin: 4px 0 0;
  font-size: 0.88rem;
  color: var(--care-ink-soft, #5e6e72);
}

.care-patient-step__close {
  position: absolute;
  top: calc(10px + env(safe-area-inset-top, 0px));
  inset-inline-end: 12px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border: 0;
  background: #fff;
  color: #0c1a2e;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.14);
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 500;
  cursor: pointer;
}

.care-patient-step__list {
  list-style: none;
  margin: 0 0 12px;
  padding: 0;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-patient-step__option {
  width: 100%;
  display: grid;
  grid-template-columns: 36px 1fr;
  grid-template-rows: auto auto;
  grid-column-gap: 10px;
  column-gap: 10px;
  align-items: center;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid rgba(12, 26, 46, 0.1);
  border-radius: 2px;
  background: var(--care-card, #ffffff);
  text-align: start;
  cursor: pointer;
  color: inherit;
}

.care-patient-step__option-ico {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  color: var(--care-navy);
  background: linear-gradient(180deg, #d7e8f8, #eef5fb);
}

.care-patient-step__nid {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  margin: 0 0 12px;
  font-size: 0.8rem;
  font-weight: 650;
  color: var(--care-ink);
}

.care-patient-step__nid input {
  padding: 10px 12px;
  border: 1px solid #c5d8ea;
  background: linear-gradient(180deg, #e8f2fb, #f7fbfe);
  color: var(--care-navy);
  font: inherit;
}

.care-patient-step__option strong {
  grid-column: 2;
  font-size: 0.95rem;
}

.care-patient-step__option span:not(.care-patient-step__option-ico) {
  grid-column: 2;
  font-size: 0.82rem;
  color: #2f4660;
}

.care-patient-step__option.is-selected {
  border-color: var(--care-teal);
  background: color-mix(in srgb, var(--care-teal) 10%, var(--care-card, #ffffff));
  box-shadow: inset 0 0 0 1px var(--care-teal);
}

.care-patient-step__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin: 0 0 12px;
  padding: 12px;
  border: 1px dashed color-mix(in srgb, var(--care-teal) 35%, transparent);
  border-radius: 2px;
  background: transparent;
  color: var(--care-teal);
  font-weight: 700;
  cursor: pointer;
}

.care-patient-step__form {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 12px;
  padding: 12px;
  border-radius: 2px;
  background: var(--care-card, #ffffff);
}

.care-patient-step__form h3 {
  margin: 0;
  font-size: 0.95rem;
}

.care-patient-step__form label {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  font-size: 0.8rem;
  font-weight: 650;
  color: #334155;
}

.care-patient-step__form input {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border-radius: 2px;
  border: 1px solid rgba(12, 26, 46, 0.12);
  font: inherit;
}

.care-patient-step__hint {
  font-size: 0.72rem;
  font-weight: 500;
  color: var(--care-ink-soft, #5e6e72);
}

.care-patient-step__form-actions,
.care-patient-step__footer {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.care-patient-step__footer {
  margin-top: 8px;
  padding-top: 12px;
  border-top: 1px solid rgba(12, 26, 46, 0.08);
}

.care-patient-step__footer .care-btn {
  width: 100%;
  min-height: 48px;
  justify-content: center;
}

.care-patient-step__summary h3 {
  margin: 0 0 10px;
  font-size: 1rem;
  color: var(--care-navy);
}

.care-patient-step__error {
  margin: 0 0 8px;
  color: #b42318;
  font-size: 0.85rem;
  font-weight: 600;
}

.care-patient-step__brief {
  margin: 12px 0;
  padding: 12px;
  border: 1px solid rgba(12, 26, 46, 0.1);
  background: color-mix(in srgb, var(--care-mint, #eef5fb) 55%, #fff);
}

.care-patient-step__brief h3 {
  margin: 0 0 4px;
  font-size: 0.95rem;
  color: var(--care-navy);
}

.care-patient-step__brief p {
  margin: 0 0 8px;
  font-size: 0.8rem;
  color: var(--care-ink-soft, #5e6e72);
}

.care-patient-step__brief textarea {
  width: 100%;
  min-height: 88px;
  margin: 0 0 8px;
  padding: 8px 10px;
  border: 1px solid rgba(12, 26, 46, 0.14);
  border-radius: 2px;
  font: inherit;
  resize: vertical;
}

.care-patient-step__files {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  font-size: 0.8rem;
  font-weight: 650;
  color: var(--care-navy);
}

.care-patient-step__file-list {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
}

.care-patient-step__file-list li {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 0.8rem;
}

.care-patient-step__file-list button {
  border: 0;
  background: none;
  color: #b42318;
  font: inherit;
  cursor: pointer;
}

.care-patient-step__layout {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
  max-width: 980px;
  margin: 0 auto;
}

.care-patient-step__main,
.care-patient-step__summary {
  background: #fff;
  padding: 16px;
  box-shadow: 0 0 0 1px rgba(30, 58, 95, 0.1);
}

@media (min-width: 800px) {
  .care-patient-step__sheet {
    padding: 64px 28px 32px;
  }

  .care-patient-step__layout {
    grid-template-columns: minmax(0, 1.4fr) minmax(260px, 0.8fr);
    align-items: start;
  }

  .care-patient-step__summary {
    position: -webkit-sticky;
    position: sticky;
    top: 16px;
  }
}

.care-patient-step__summary.is-compact {
  padding: 12px;
}

.care-patient-step--embedded.care-patient-step .care-patient-step__layout {
  max-width: none;
  margin: 0;
}

.care-patient-step--embedded .care-patient-step__main {
  box-shadow: none;
  padding: 0;
  background: transparent;
}

.care-pay-methods {
  margin-top: 16px;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-pay-methods h4 {
  margin: 0;
  font-size: 0.95rem;
  color: #0f172a;
}

.care-pay-methods p {
  margin: 0 0 4px;
  font-size: 0.8rem;
  color: #64748b;
  line-height: 1.4;
}

.care-pay-method {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  text-align: start;
  border: 1px solid #e2e8f0;
  background: #fff;
  border-radius: 12px;
  padding: 12px 14px;
  cursor: pointer;
  font: inherit;
  color: inherit;
}

.care-pay-method.is-selected {
  border-color: #2563eb;
  background: #eff6ff;
  box-shadow: 0 0 0 1px #2563eb;
}

.care-pay-method strong {
  color: #0f172a;
  font-size: 0.9rem;
}

.care-pay-method span {
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.35;
}

.care-cart-drawer {
  position: fixed;
  inset: 0;
  z-index: 95;
  display: grid;
  justify-items: end;
  pointer-events: none;
}

.care-cart-drawer.is-open {
  pointer-events: auto;
}

.care-cart-drawer__scrim {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(8, 24, 42, 0.48);
  opacity: 0;
  transition: opacity 0.28s ease;
  cursor: pointer;
}

.care-cart-drawer.is-open .care-cart-drawer__scrim {
  opacity: 1;
}

.care-cart-drawer__panel {
  position: relative;
  z-index: 1;
  width: min(400px, 100vw);
  height: 100%;
  max-height: 100dvh;
  display: flex;
  flex-direction: column;
  background: #fff;
  box-shadow: -18px 0 48px rgba(11, 31, 58, 0.22);
  transform: translateX(104%);
  transition: transform 0.34s cubic-bezier(0.32, 0.72, 0, 1);
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
}

.care-cart-drawer.is-open .care-cart-drawer__panel {
  transform: translateX(0);
}

[dir='rtl'] .care-cart-drawer {
  justify-items: start;
}

[dir='rtl'] .care-cart-drawer__panel {
  transform: translateX(-104%);
  box-shadow: 18px 0 48px rgba(11, 31, 58, 0.22);
}

[dir='rtl'] .care-cart-drawer.is-open .care-cart-drawer__panel {
  transform: translateX(0);
}

.care-cart-drawer__hero {
  position: relative;
  flex: 0 0 auto;
  min-height: 96px;
  overflow: hidden;
  color: #fff;
}

.care-cart-drawer__hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 35%;
}

.care-cart-drawer__hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 31, 58, 0.25), rgba(11, 31, 58, 0.82));
}

.care-cart-drawer__hero-copy {
  position: relative;
  z-index: 1;
  padding: 18px 52px 14px 16px;
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  max-width: 92%;
}

.care-cart-drawer__hero-copy p {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.88;
}

.care-cart-drawer__hero-copy h2 {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: -0.03em;
}

.care-cart-drawer__hero-copy span {
  font-size: 0.78rem;
  line-height: 1.35;
  opacity: 0.92;
}

.care-cart-drawer__close {
  position: absolute;
  top: 10px;
  inset-inline-end: 10px;
  z-index: 2;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  color: #0b1f3a;
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(8, 24, 42, 0.14);
}

.care-cart-drawer__tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 8px;
  gap: 8px;
  padding: 12px 14px;
  background: #f7f9fc;
  border-bottom: 1px solid #e2e8f0;
}

.care-cart-drawer__tabs button {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  justify-items: center;
  margin: 0;
  padding: 10px 6px;
  border: 1px solid transparent;
  border-radius: 14px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.care-cart-drawer__tabs button strong {
  font-size: 0.78rem;
  font-weight: 650;
}

.care-cart-drawer__tabs button em {
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 700;
  min-width: 1.4rem;
  padding: 1px 6px;
  border-radius: 999px;
  background: rgba(100, 116, 139, 0.12);
}

.care-cart-drawer__tabs button.is-active {
  background: #fff;
  border-color: color-mix(in srgb, #0066ff 28%, #e2e8f0);
  color: #0066ff;
  box-shadow: 0 4px 12px rgba(11, 31, 58, 0.06);
}

.care-cart-drawer__tabs button.is-active em {
  background: color-mix(in srgb, #0066ff 14%, transparent);
  color: #0066ff;
}

.care-cart-drawer__body {
  flex: 1 1 auto;
  overflow: auto;
  padding: 10px 12px 8px;
  background: #fff;
}

.care-cart-drawer__practices {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-cart-drawer__practice {
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #f7f9fc;
  overflow: hidden;
}

.care-cart-drawer__practice-head {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  align-items: start;
  padding: 10px 12px 8px;
}

.care-cart-drawer__practice-logo,
.care-cart-drawer__practice-logo.care-center__logo,
.care-cart-drawer__practice-logo.care-avatar {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  font-size: 0.85rem;
}

.care-cart-drawer__practice-copy {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  min-width: 0;
}

.care-cart-drawer__practice-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.care-cart-drawer__practice-title strong {
  font-size: 0.88rem;
  color: #0b1f3a;
  line-height: 1.25;
}

.care-cart-drawer__practice-title em {
  flex: 0 0 auto;
  font-style: normal;
  font-size: 0.7rem;
  font-weight: 700;
  color: #0066ff;
}

.care-cart-drawer__practice-addr {
  margin: 0;
  font-size: 0.72rem;
  line-height: 1.35;
  color: #64748b;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.care-cart-drawer__fulfill {
  list-style: none;
  margin: 2px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.care-cart-drawer__fulfill li {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 7px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e2e8f0;
  color: #334155;
  font-size: 0.68rem;
  font-weight: 650;
  line-height: 1.2;
}

.care-cart-drawer__fulfill .care-ico {
  width: 12px;
  height: 12px;
}

.care-cart-drawer__practice-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin-top: 2px;
}

.care-cart-drawer__locate,
.care-cart-drawer__practice-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #0066ff;
  font-size: 0.72rem;
  font-weight: 650;
  text-decoration: none;
  cursor: pointer;
}

.care-cart-drawer__locate .care-ico {
  width: 12px;
  height: 12px;
}

.care-cart-drawer__practice-link {
  color: #64748b;
}

.care-cart-drawer__section {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  padding: 0 10px 10px;
}

.care-cart-drawer__section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  padding: 0 2px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.care-cart-drawer__section-head strong {
  letter-spacing: 0;
  text-transform: none;
  color: #0b1f3a;
  font-size: 0.82rem;
}

.care-cart-drawer__pay {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  min-height: 44px;
  width: 100%;
  justify-content: center;
  font-size: 0.9rem;
  font-weight: 700;
  border: 0 !important;
  border-radius: 8px;
  background: #0f6cbd !important;
  color: #fff !important;
  cursor: pointer;
}

.care-cart-drawer__pay:hover:not(:disabled) {
  background: #0b5aa0 !important;
  color: #fff !important;
}

.care-cart-drawer__empty-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}

.care-cart-drawer__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-cart-drawer__list > li {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  grid-gap: 8px;
  gap: 8px;
  align-items: center;
  padding: 8px;
  border-radius: 10px;
  border: 1px solid #e2e8f0;
  background: #fff;
  animation: care-cart-line-in 0.32s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.care-cart-drawer__thumb {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  object-fit: cover;
  background: #f7f9fc;
  box-shadow: inset 0 0 0 1px rgba(11, 31, 58, 0.06);
}

.care-cart-drawer__meta {
  display: grid;
  grid-gap: 1px;
  gap: 1px;
  min-width: 0;
}

.care-cart-drawer__meta strong {
  font-size: 0.82rem;
  color: #0b1f3a;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.care-cart-drawer__meta span {
  color: #64748b;
  font-size: 0.72rem;
}

.care-cart-drawer__price {
  color: #0b1f3a !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
}

.care-cart-drawer__qty {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 2px;
  border-radius: 999px;
  background: #f7f9fc;
  border: 1px solid #e2e8f0;
}

.care-cart-drawer__qty button {
  width: 24px;
  height: 24px;
  border: 0;
  border-radius: 999px;
  background: #ebf5ff;
  color: #0066ff;
  font-size: 0.9rem;
  line-height: 1;
  cursor: pointer;
}

.care-cart-drawer__qty em {
  font-style: normal;
  min-width: 1.1rem;
  text-align: center;
  font-weight: 700;
  color: #0b1f3a;
  font-size: 0.78rem;
}

.care-cart-drawer__remove {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 999px;
  background: #f7f9fc;
  color: #64748b;
  font-size: 1.05rem;
  cursor: pointer;
  border: 1px solid #e2e8f0;
}

.care-cart-drawer__empty {
  display: grid;
  justify-items: center;
  grid-gap: 8px;
  gap: 8px;
  text-align: center;
  padding: 28px 16px;
  color: #64748b;
}

.care-cart-drawer__empty-ico {
  width: 56px;
  height: 56px;
  border-radius: 14px;
}

.care-cart-drawer__empty strong {
  color: #0b1f3a;
  font-size: 0.95rem;
}

.care-cart-drawer__empty p {
  margin: 0;
  max-width: 26ch;
  line-height: 1.4;
  font-size: 0.82rem;
}

.care-cart-drawer__foot {
  flex: 0 0 auto;
  padding: 10px 12px 14px;
  border-top: 1px solid #e2e8f0;
  background: linear-gradient(180deg, #fff, #f7f9fc);
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-cart-drawer__jump {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-cart-drawer__jump button {
  margin: 0;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, #0066ff 22%, #e2e8f0);
  background: #ebf5ff;
  color: #0066ff;
  font-size: 0.78rem;
  font-weight: 650;
  cursor: pointer;
}

.care-cart-drawer__jump em {
  font-style: normal;
  font-weight: 800;
}

.care-cart-drawer__total {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  color: #0b1f3a;
}

.care-cart-drawer__total span {
  color: #64748b;
  font-size: 0.88rem;
}

.care-cart-drawer__total strong {
  font-size: 1.2rem;
  letter-spacing: -0.02em;
}

.care-cart-drawer__cta {
  width: 100%;
  min-height: 48px;
  border-radius: 999px !important;
  font-weight: 700;
}

.care-cart-drawer__link {
  border: 0;
  background: transparent;
  color: #0066ff;
  font-weight: 650;
  font-size: 0.88rem;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.care-cart-drawer__note {
  margin: 0;
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.4;
  text-align: center;
}

.care-cart-mini-dock {
  position: fixed;
  inset-inline: 12px 12px;
  bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  z-index: 40;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  grid-gap: 8px;
  gap: 8px;
  padding: 10px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid #e2e8f0;
  box-shadow: 0 14px 36px rgba(11, 31, 58, 0.16);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.care-cart-mini-dock__peek {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  justify-items: start;
  margin: 0;
  padding: 8px 12px;
  border: 0;
  border-radius: 12px;
  background: #f0f7ff;
  color: #0b1f3a;
  text-align: start;
  cursor: pointer;
}

.care-cart-mini-dock__peek span {
  font-size: 0.82rem;
  font-weight: 650;
}

.care-cart-mini-dock__peek em {
  font-style: normal;
  color: #0066ff;
  font-weight: 700;
  font-size: 0.9rem;
}

.care-cart-mini-dock__cta {
  min-height: 44px;
  border-radius: 999px !important;
  font-weight: 700;
}

@keyframes care-cart-line-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (min-width: 960px) {
  .care-cart-mini-dock {
    inset-inline: auto 24px;
    bottom: 24px;
    width: min(420px, calc(100vw - 48px));
  }
}

@media (prefers-reduced-motion: reduce) {
  .care-cart-drawer__scrim,
  .care-cart-drawer__panel,
  .care-cart-drawer__list > li {
    transition: none;
    animation: none;
  }
}

.care-checkout-dock--inline {
  position: static;
  margin: 16px 0 88px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-paper, #f7f9fc);
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-checkout-dock--inline .care-checkout-dock__home {
  margin: 0;
}

/**
 * MedCare — Doctors browse + Smart search (CareDoctorsPage, CareSearchPage).
 * Loaded last from CareLayout; overrides care-design-v2*.css !important fights.
 */

/* —— Doctors browse layout —— */
.care--web .care-v2-doctors-page .care-v2-doctors-layout {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 56px;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 24px;
}

.care--web .care-v2-doctors-page .care-v2-doctors-main .care-v2-title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 2.4vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctors-page .care-v2-doctors-main .care-v2-lead {
  margin: 0 0 20px;
  max-width: 42rem;
  color: var(--care-v2-muted);
  line-height: 1.55;
}

/* —— Doctor name search (primary) —— */
.care--web .care-v2-doctors-page .care-v2-doctors-name-search {
  display: flex;
  align-items: stretch;
  gap: 10px;
  width: 100%;
  margin: 0 0 12px;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__field {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1 1 auto;
  min-width: 0;
  min-height: 54px;
  margin: 0;
  padding: 0 14px 0 16px;
  border: 1.5px solid var(--care-v2-line);
  border-radius: 2px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--care-v2-surface) 92%, #e8f1ff) 0%, var(--care-v2-surface) 100%);
  box-shadow: 0 1px 0 color-mix(in srgb, var(--care-v2-navy) 4%, transparent);
  transition:
    border-color 160ms ease,
    box-shadow 160ms ease,
    background 160ms ease;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search.is-focused .care-v2-doctors-name-search__field,
.care--web .care-v2-doctors-page .care-v2-doctors-name-search__field:focus-within {
  border-color: color-mix(in srgb, var(--care-v2-primary) 55%, var(--care-v2-line));
  background: var(--care-v2-surface);
  box-shadow:
    0 0 0 3px color-mix(in srgb, var(--care-v2-primary) 16%, transparent),
    0 8px 24px color-mix(in srgb, var(--care-v2-primary) 10%, transparent);
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search.has-query .care-v2-doctors-name-search__field {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__ico {
  display: inline-grid;
  place-items: center;
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-primary);
  transition: transform 180ms ease, background 160ms ease;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search.is-focused .care-v2-doctors-name-search__ico {
  transform: scale(1.06);
  background: color-mix(in srgb, var(--care-v2-primary) 18%, white);
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__field input {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  border: 0;
  background: transparent;
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 1.02rem;
  font-weight: 550;
  letter-spacing: -0.01em;
  outline: none;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__field input::placeholder {
  color: color-mix(in srgb, var(--care-v2-muted) 88%, transparent);
  font-weight: 500;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__field input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__clear {
  display: inline-grid;
  place-items: center;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
  transition: background 140ms ease, transform 140ms ease;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__clear:hover {
  background: color-mix(in srgb, var(--care-v2-primary) 22%, white);
  transform: scale(1.05);
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__hint {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-width: 36px;
  height: 26px;
  padding: 0 8px;
  border: 1px solid var(--care-v2-line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--care-v2-surface) 70%, #f3f6fb);
  color: var(--care-v2-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__go {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: 0 0 auto;
  min-width: 128px;
  min-height: 54px;
  margin: 0;
  padding: 0 22px;
  border: 0;
  border-radius: 2px;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  cursor: pointer;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--care-v2-primary) 28%, transparent);
  transition: transform 140ms ease, box-shadow 140ms ease, filter 140ms ease;
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__go:hover {
  filter: brightness(1.05);
  box-shadow: 0 10px 24px color-mix(in srgb, var(--care-v2-primary) 34%, transparent);
  transform: translateY(-1px);
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__go:active {
  transform: translateY(0);
}

.care--web .care-v2-doctors-page .care-v2-doctors-name-search__go-ico,
.care--web .care-v2-doctors-page .care-v2-doctors-name-search__go .care-ico {
  width: 18px;
  height: 18px;
  color: inherit;
}

/* —— Soft filter sidebar (Specialty / Gender / Languages / Rating) —— */
.care--web .care-v2-doctors-page .care-v2-spec-side {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  max-height: none;
  overflow: visible;
  padding: 18px 14px 20px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  box-shadow: none;
}

.care--web .care-v2-doctors-page .care-v2-spec-side__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  padding: 0 4px 10px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-doctors-page .care-v2-spec-side__head strong {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--care-v2-navy);
  white-space: nowrap;
}

.care--web .care-v2-doctors-page .care-v2-spec-side__head .care-link {
  flex: 0 0 auto;
  width: auto !important;
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0 !important;
  border: 0;
  background: transparent;
  color: var(--care-v2-primary);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.care--web .care-v2-doctors-page .care-v2-filter-block {
  padding: 12px 4px 6px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-doctors-page .care-v2-filter-block:last-child {
  border-bottom: 0;
}

.care--web .care-v2-doctors-page .care-v2-filter-block__title {
  margin: 0 0 8px;
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctors-page .care-v2-filter-block__list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.care--web .care-v2-doctors-page .care-v2-filter-check {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 8px 8px;
  border-radius: var(--care-v2-radius);
  cursor: pointer;
  color: var(--care-v2-ink);
  font-size: 0.9rem;
  font-weight: 500;
}

.care--web .care-v2-doctors-page .care-v2-filter-check:hover {
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-doctors-page .care-v2-filter-check.is-active {
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-v2-doctors-page .care-v2-filter-check input {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  accent-color: var(--care-v2-primary);
  cursor: pointer;
}

.care--web .care-v2-doctors-page .care-v2-filter-check span {
  flex: 1 1 auto;
  min-width: 0;
}

.care--web .care-v2-doctors-page .care-v2-filter-check em {
  font-style: normal;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--care-v2-muted);
}

.care--web .care-v2-doctors-page .care-v2-filter-block__more {
  display: inline-block;
  margin: 6px 8px 2px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--care-v2-primary);
  font: inherit;
  font-size: 0.86rem;
  font-weight: 600;
  cursor: pointer;
}

/* —— MedCare collage top strip: Location | Specialty | Gender | Availability | Search —— */
.care--web .care-v2-doctors-page .care-v2-doctors-strip {
  display: flex;
  align-items: stretch;
  gap: 0;
  width: 100%;
  margin: 0 0 16px;
  padding: 0;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
  box-shadow: none;
  overflow: hidden;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__field {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1;
  min-width: 0;
  min-height: 44px;
  margin: 0;
  padding: 0 12px;
  border: 0;
  -webkit-border-end: 1px solid var(--care-v2-line);
          border-inline-end: 1px solid var(--care-v2-line);
  background: transparent;
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: start;
  cursor: pointer;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__field:hover {
  background: var(--care-v2-primary-mist);
  border-radius: 0;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__place {
  font-weight: 600;
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__ico,
.care--web .care-v2-doctors-page .care-v2-doctors-strip__field .care-ico {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: var(--care-v2-muted);
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__value {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__field select {
  flex: 1 1 auto;
  min-width: 0;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: inherit;
  font-weight: inherit;
  padding: 0 18px 0 0;
  cursor: pointer;
  outline: none;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__chev {
  position: absolute;
  inset-inline-end: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.65rem;
  color: var(--care-v2-muted);
  pointer-events: none;
  line-height: 1;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: 0 0 auto;
  min-height: 48px;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  padding: 0 22px;
  border: 0;
  border-radius: 0;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font: inherit;
  font-size: 0.92rem;
  font-weight: 600;
  cursor: pointer;
  box-shadow: none;
  white-space: nowrap;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__submit:hover {
  filter: brightness(1.05);
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__submit-ico,
.care--web .care-v2-doctors-page .care-v2-doctors-strip__submit .care-ico {
  width: 18px;
  height: 18px;
  color: #fff;
}

.care--web .care-v2-doctors-page .care-v2-doctors-meta,
.care--web .care-v2-doctors-page .care-v2-search-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

.care--web .care-v2-doctors-page .care-v2-doctors-meta__controls {
  display: flex;
  align-items: center;
  gap: 10px;
}

.care--web .care-v2-doctors-page .care-v2-doctors-sort {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

.care--web .care-v2-doctors-page .care-v2-doctors-sort select {
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  background: var(--care-v2-surface);
  color: var(--care-v2-primary);
  font: inherit;
  font-weight: 600;
  padding: 8px 28px 8px 12px;
  min-height: 40px;
  accent-color: var(--care-v2-primary);
  cursor: pointer;
}

.care--web .care-v2-doctors-page .care-v2-doctors-filter-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-surface);
  color: var(--care-v2-muted);
  cursor: pointer;
}

.care--web .care-v2-doctors-page .care-v2-doctors-filter-btn.is-active,
.care--web .care-v2-doctors-page .care-v2-doctors-filter-btn:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  color: var(--care-v2-primary);
  background: var(--care-v2-primary-soft);
}

.care--web .care-v2-doctors-page .care-v2-doctors-filter-btn.is-active::after {
  content: '';
  position: absolute;
  top: 6px;
  inset-inline-end: 6px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary);
}

/* —— Advanced filters panel —— */
.care--web .care-v2-doctors-page .care-v2-doctors-advanced {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  margin: 0 0 16px;
  padding: 16px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-doctors-page .care-v2-doctors-advanced label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--care-v2-muted);
}

.care--web .care-v2-doctors-page .care-v2-doctors-advanced select {
  width: 100%;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.9rem;
  padding: 8px 12px;
  min-height: 40px;
  accent-color: var(--care-v2-primary);
}

/* —— Active filter chips (pills) —— */
.care--web .care-v2-doctors-page .care-v2-doctors-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 16px;
}

.care--web .care-v2-doctors-page .care-v2-doctors-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 36px;
  padding: 0 14px;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 25%, var(--care-v2-line));
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
}

.care--web .care-v2-doctors-page .care-v2-doctors-chip span {
  font-size: 1.1rem;
  line-height: 1;
  opacity: 0.7;
}

/* —— Results list + MedCare doctor cards —— */
.care--web .care-v2-doctors-page .care-v2-doctors-grid {
  display: flex !important;
  flex-direction: column;
  gap: 14px;
  grid-template-columns: none !important;
}

.care--web .care-v2-doctors-page .care-v2-doctors-grid.is-refreshing {
  opacity: 0.72;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.care--web .care-v2-doctors-page .care-v2-doc-card,
.care--web .care-v2-doc.care-v2-doc--medcare {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(168px, 200px);
  align-items: stretch;
  grid-gap: 16px 20px;
  gap: 16px 20px;
  padding: 18px 20px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  box-shadow: none;
  text-decoration: none;
  color: inherit;
  position: relative;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.care--web .care-v2-doc__stretch {
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  color: transparent;
  text-indent: -9999px;
  overflow: hidden;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__main,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__main,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__aside,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__aside {
  position: relative;
  z-index: 1;
  pointer-events: none;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__clinic--link,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__clinic--link,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__site-link,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__site-link {
  pointer-events: auto;
}

.care--web .care-v2-doctors-page .care-v2-doc-card:hover,
.care--web .care-v2-doc.care-v2-doc--medcare:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  box-shadow: none;
  transform: none;
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__main,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__main {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  min-width: 0;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-avatar,
.care--web .care-v2-doc.care-v2-doc--medcare .care-avatar {
  width: 104px !important;
  height: 104px !important;
  border-radius: 50% !important;
  object-fit: cover;
  flex-shrink: 0;
  border: 2px solid var(--care-v2-primary-soft);
  background: var(--care-v2-primary-soft);
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-doc__body,
.care--web .care-v2-doc.care-v2-doc--medcare .care-doc__body {
  display: grid;
  grid-gap: 4px;
  gap: 4px;
  min-width: 0;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-doc__body > strong,
.care--web .care-v2-doc.care-v2-doc--medcare .care-doc__body > strong {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  letter-spacing: -0.02em;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__specialty,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__specialty {
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  line-height: 1.35;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-rating,
.care--web .care-v2-doc.care-v2-doc--medcare .care-rating {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 2px;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__clinic,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__speaks,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__clinic,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__speaks {
  display: inline-flex;
  align-items: flex-start;
  gap: 6px;
  color: var(--care-v2-muted);
  font-size: 0.84rem;
  line-height: 1.4;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__clinic-row,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__clinic-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  min-width: 0;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__xp,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__xp {
  color: var(--care-v2-muted);
  font-size: 0.84rem;
  line-height: 1.4;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__clinic--link,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__clinic--link,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__site-link,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__site-link {
  max-width: 100%;
  margin: -2px -6px;
  padding: 2px 6px;
  border-radius: 2px;
  color: var(--care-v2-navy);
  font-weight: 600;
  text-decoration: none;
  transition: color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__clinic--link:hover,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__clinic--link:hover,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__clinic--link:focus-visible,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__clinic--link:focus-visible,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__site-link:hover,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__site-link:hover,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__site-link:focus-visible,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__site-link:focus-visible {
  color: var(--care-v2-primary);
  background: color-mix(in srgb, var(--care-v2-primary) 12%, #fff);
  box-shadow: inset 0 -1px 0 color-mix(in srgb, var(--care-v2-primary) 55%, transparent);
  outline: none;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__clinic--link .care-v2-doc__clinic-ico,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__clinic--link .care-v2-doc__clinic-ico {
  color: currentColor;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__clinic-ico,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__clinic-ico {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  margin-top: 2px;
  color: var(--care-v2-muted);
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__speaks,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__speaks {
  display: block;
  color: var(--care-v2-ink);
  font-weight: 500;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__chips,
.care--web .care-v2-doc.care-v2-doc--rich .care-v2-doc__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__chip,
.care--web .care-v2-doc.care-v2-doc--rich .care-v2-doc__chip {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border-radius: 2px;
  background: var(--care-v2-primary-mist, #f0f7ff);
  color: var(--care-v2-navy);
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.3;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__quals,
.care--web .care-v2-doc.care-v2-doc--rich .care-v2-doc__quals {
  display: block;
  color: var(--care-v2-muted);
  font-size: 0.82rem;
  line-height: 1.4;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__about,
.care--web .care-v2-doc.care-v2-doc--rich .care-v2-doc__about {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  color: var(--care-v2-ink);
  font-size: 0.86rem;
  font-weight: 400;
  line-height: 1.45;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__sites,
.care--web .care-v2-doc.care-v2-doc--rich .care-v2-doc__sites {
  list-style: none;
  margin: 6px 0 0;
  padding: 8px 0 0;
  border-top: 1px solid var(--care-v2-line);
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__sites li,
.care--web .care-v2-doc.care-v2-doc--rich .care-v2-doc__sites li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  font-size: 0.82rem;
  line-height: 1.35;
  color: var(--care-v2-ink);
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__sites strong,
.care--web .care-v2-doc.care-v2-doc--rich .care-v2-doc__sites strong {
  flex: 0 0 auto;
  font-weight: 700;
  color: var(--care-v2-navy);
  white-space: nowrap;
}

/* No reserved Speaks row — omit node when blank so collage grid gap collapses */
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__speaks:empty,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__speaks:empty {
  display: none;
  margin: 0;
  padding: 0;
  min-height: 0;
}

.care--web .care-v2-doctors-page .care-v2-filter-rating {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 auto;
  min-width: 0;
}

.care--web .care-v2-doctors-page .care-v2-filter-rating__stars {
  display: inline-flex;
  gap: 1px;
  color: #d1d5db;
  font-size: 0.78rem;
  letter-spacing: -0.04em;
  line-height: 1;
}

.care--web .care-v2-doctors-page .care-v2-filter-rating__stars .is-on {
  color: #f59e0b;
}

.care--web .care-v2-doctors-page .care-rating--stars .care-rating__stars {
  display: inline-flex;
  gap: 1px;
  -webkit-margin-end: 4px;
          margin-inline-end: 4px;
}

.care--web .care-v2-doctors-page .care-rating--stars .care-rating__star {
  color: #d1d5db !important;
  font-size: 0.92rem;
  line-height: 1;
}

.care--web .care-v2-doctors-page .care-rating--stars .care-rating__star.is-on {
  color: #f59e0b !important;
}

.care--web .care-v2-doc.care-v2-doc--medcare .care-rating--stars .care-rating__stars {
  display: inline-flex;
  gap: 1px;
  -webkit-margin-end: 4px;
          margin-inline-end: 4px;
}

.care--web .care-v2-doc.care-v2-doc--medcare .care-rating--stars .care-rating__star {
  color: #d1d5db !important;
  font-size: 0.92rem;
  line-height: 1;
}

.care--web .care-v2-doc.care-v2-doc--medcare .care-rating--stars .care-rating__star.is-on {
  color: #f59e0b !important;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__aside,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__aside {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 12px;
  text-align: end;
  min-width: 0;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__avail-badge,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__avail-badge {
  display: inline-flex;
  align-items: center;
  align-self: flex-end;
  gap: 6px;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: color-mix(in srgb, #16a34a 14%, #fff);
  color: #15803d;
  font-size: 0.78rem;
  font-weight: 700;
  white-space: nowrap;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__avail-badge::before,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__avail-badge::before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #16a34a;
  flex-shrink: 0;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__fee,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__fee {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  justify-items: end;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__fee strong,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__fee strong {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__fee span,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__fee span {
  font-size: 0.78rem;
  color: var(--care-v2-muted);
  font-weight: 500;
}

/* Book appointment — single-line pill CTA (not a stacked all-caps slab) */
.care--web .care-v2-doctors-page .care-v2-doc-card .care-cta,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc-card__book,
.care--web .care-v2-doc.care-v2-doc--medcare .care-cta,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc-card__book {
  margin-top: auto;
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  padding: 0 14px !important;
  border-radius: 999px !important;
  background: var(--care-v2-primary) !important;
  border: 1px solid var(--care-v2-primary) !important;
  color: #fff !important;
  font-family: var(--care-v2-font) !important;
  font-weight: 700;
  font-size: 0.9rem;
  letter-spacing: 0 !important;
  text-transform: none !important;
  white-space: nowrap;
  box-shadow: none !important;
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc-card__book:hover,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc-card__book:hover {
  background: var(--care-v2-primary-hover) !important;
  border-color: var(--care-v2-primary-hover) !important;
  transform: none;
  filter: none;
  box-shadow: none !important;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc-card__book-ico,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc-card__book-ico {
  width: 17px;
  height: 17px;
  flex-shrink: 0;
  opacity: 0.95;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-cta__full,
.care--web .care-v2-doc.care-v2-doc--medcare .care-cta__full {
  display: inline !important;
  white-space: nowrap;
}

.care--web .care-v2-doctors-page .care-v2-doc-card .care-cta__short,
.care--web .care-v2-doc.care-v2-doc--medcare .care-cta__short {
  display: none !important;
}

@media (max-width: 520px) {
  .care--web .care-v2-doctors-page .care-v2-doc-card .care-cta__full,
  .care--web .care-v2-doc.care-v2-doc--medcare .care-cta__full {
    display: none !important;
  }

  .care--web .care-v2-doctors-page .care-v2-doc-card .care-cta__short,
  .care--web .care-v2-doc.care-v2-doc--medcare .care-cta__short {
    display: inline !important;
  }
}

/* —— Skeletons: doctors list —— */
.care--web .care-v2-doctors-page .care-v2-doctors-skel.care-skel-list--doctor {
  display: flex !important;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 18px;
}

/* —— Infinite footer / pagination —— */
.care--web .care-v2-doctors-page .care-infinite {
  padding: 24px 0 8px;
}

.care--web .care-v2-doctors-page .care-infinite__meta,
.care--web .care-v2-doctors-page .care-infinite__done {
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care--web .care-v2-doctors-page .care-infinite__btn {
  min-height: 44px;
  padding: 0 24px;
  border-radius: 2px !important;
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
  box-shadow: none;
}

/* —— Empty states (soft blue) —— */
.care--web .care-v2-doctors-page .care-illustrated-empty,
.care--web .care-search-page .care-illustrated-empty {
  padding: 40px 24px 32px;
  background: var(--care-v2-primary-mist);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 12%, var(--care-v2-line));
  border-radius: var(--care-v2-radius-md);
  margin: 16px 0;
}

.care--web .care-v2-doctors-page .care-illustrated-empty__title,
.care--web .care-search-page .care-illustrated-empty__title {
  color: var(--care-v2-navy);
  font-family: var(--care-v2-font-display);
  font-weight: 700;
}

.care--web .care-v2-doctors-page .care-illustrated-empty__msg,
.care--web .care-search-page .care-illustrated-empty__msg {
  color: var(--care-v2-muted);
}

.care--web .care-v2-doctors-page .care-empty,
.care--web .care-search-page .care-empty {
  padding: 32px 20px;
  background: var(--care-v2-primary-mist);
  border-radius: var(--care-v2-radius-md);
  color: var(--care-v2-muted);
  font-size: 0.95rem;
}

/* ===================================================================
   Smart search page (CareSearchPage)
   =================================================================== */

.care--web .care-search-page {
  --care-search-primary: var(--care-v2-primary);
  --care-search-chip-active-bg: var(--care-v2-primary-soft);
  --care-search-line: var(--care-v2-line);
}

.care--web .care-search-page .care-page__body {
  max-width: 1200px;
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
  padding: 24px 0 56px;
}

/* —— Toolbar —— */
.care--web .care-search-page__toolbar {
  display: flex;
  align-items: stretch;
  gap: 12px;
  margin-bottom: 16px;
}

.care--web .care-search-page__field {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-search-page__field input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 0.98rem;
  color: var(--care-v2-ink);
  outline: none;
}

.care--web .care-search-page__clear {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-muted);
  font-size: 1.1rem;
  cursor: pointer;
}

.care--web .care-search-page__go {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  flex-shrink: 0;
  border: 0;
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-primary) !important;
  color: #fff;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
}

.care--web .care-search-page__more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 18px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font: inherit;
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}

.care--web .care-search-page__more.is-active,
.care--web .care-search-page__more:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
}

.care--web .care-search-page__more-panel {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
  padding: 14px;
  background: var(--care-v2-primary-mist);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 12%, var(--care-v2-line));
  border-radius: var(--care-v2-radius-md);
}

.care--web .care-search-page__more-panel button {
  min-height: 36px;
  padding: 0 16px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
}

.care--web .care-search-page__more-panel button.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-search-page__more-panel .care-link {
  align-self: center;
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.88rem;
}

/* —— Entity filter chips (pills) —— */
.care--web .care-search-page__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 20px;
}

.care--web .care-search-page__chips > button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 16px 0 12px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font: inherit;
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
}

.care--web .care-search-page__chips > button.is-active {
  background: var(--care-v2-primary-soft);
  border-color: var(--care-v2-primary);
  color: var(--care-v2-primary);
  box-shadow: none;
}

.care--web .care-search-page__chips > button.is-active::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary);
  flex-shrink: 0;
}

.care--web .care-search-page__chip-ico {
  width: 16px;
  height: 16px;
  opacity: 0.85;
}

.care--web .care-search-page__chev {
  font-size: 0.65rem;
  opacity: 0.5;
  -webkit-margin-start: 2px;
          margin-inline-start: 2px;
}

/* —— Results meta + sort —— */
.care--web .care-search-page__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, 1fr);
  grid-gap: 22px;
  gap: 22px;
  align-items: start;
}

.care--web .care-search-page__layout--solo {
  grid-template-columns: 1fr;
}

.care--web .care-search-page__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}

.care--web .care-search-page__meta-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 0.98rem;
  font-weight: 600;
  color: var(--care-v2-navy);
}

.care--web .care-search-page__meta-q {
  font-style: normal;
  font-weight: 700;
  color: var(--care-v2-primary);
}

.care--web .care-search-page__meta-range {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--care-v2-muted);
}

.care--web .care-search-page__sort {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  font-weight: 600;
}

.care--web .care-search-page__sort select {
  border: 0;
  background: transparent;
  color: var(--care-v2-primary);
  font: inherit;
  font-weight: 700;
  font-size: 0.9rem;
  cursor: pointer;
  accent-color: var(--care-v2-primary);
}

/* —— Search hit cards —— */
.care--web .care-search-page__group {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.care--web .care-search-page__hit {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-gap: 14px;
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-search-page__hit-main {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  grid-gap: 16px;
  gap: 16px;
  text-decoration: none;
  color: inherit;
}

.care--web .care-search-page__avatar {
  width: 76px !important;
  height: 76px !important;
  border-radius: 50% !important;
  object-fit: cover;
  border: 2px solid var(--care-v2-primary-soft);
  background: var(--care-v2-primary-soft);
}

.care--web .care-search-page__hit-name {
  margin: 0 0 4px;
  font-size: 1.06rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  display: flex;
  align-items: center;
  gap: 6px;
}

.care--web .care-search-page__verified {
  width: 16px;
  height: 16px;
  color: var(--care-v2-primary);
}

.care--web .care-search-page__hit-title {
  margin: 0;
  color: var(--care-v2-ink);
  font-size: 0.9rem;
  font-weight: 500;
}

.care--web .care-search-page__hit-quals {
  margin: 2px 0 0;
  color: var(--care-v2-muted);
  font-size: 0.84rem;
}

.care--web .care-search-page__hit-stats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  margin-top: 8px;
}

.care--web .care-search-page__rating {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--care-v2-navy);
  font-size: 0.88rem;
  font-weight: 600;
}

.care--web .care-search-page__star {
  color: #f59e0b !important;
  font-size: 0.95rem;
}

.care--web .care-search-page__reviews {
  color: var(--care-v2-muted);
  font-weight: 500;
}

.care--web .care-search-page__hit-dist {
  color: var(--care-v2-muted);
  font-weight: 500;
  font-size: 0.88rem;
}

.care--web .care-search-page__open {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 8px 0 0;
  color: #15803d;
  font-size: 0.88rem;
  font-weight: 600;
}

.care--web .care-search-page__open i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-success);
}

.care--web .care-search-page__hit-place {
  margin: 6px 0 0;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care--web .care-search-page__hit-fee {
  margin: 6px 0 0;
  color: var(--care-v2-navy);
  font-size: 0.9rem;
  font-weight: 600;
}

.care--web .care-search-page__hit-aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  min-width: 108px;
}

.care--web .care-search-page__bookmark {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: var(--care-v2-radius-pill);
  background: transparent;
  color: var(--care-v2-muted);
  cursor: pointer;
}

.care--web .care-search-page__bookmark:hover,
.care--web .care-search-page__bookmark.is-on {
  color: var(--care-v2-primary);
  background: var(--care-v2-primary-soft);
}

.care--web .care-search-page__view {
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.92rem;
  text-decoration: none;
  white-space: nowrap;
}

.care--web .care-search-page__view:hover {
  text-decoration: underline;
}

/* —— Catalog hits + see all —— */
.care--web .care-search-page__catalog {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  grid-gap: 14px;
  gap: 14px;
  padding: 14px 18px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  text-decoration: none;
  color: inherit;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-search-page__catalog strong {
  display: block;
  color: var(--care-v2-navy);
  font-weight: 700;
}

.care--web .care-search-page__catalog em {
  display: block;
  font-style: normal;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care--web .care-search-page__see-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 20px;
  margin-top: 4px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  align-self: flex-start;
}

.care--web .care-search-page__see-all:hover {
  background: var(--care-v2-primary);
  color: #fff;
}

/* —— Specialty chips (pills) —— */
.care--web .care-search-page .care-shelf--specs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care--web .care-search-page .care-spec-chip {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 16px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
  box-shadow: none;
}

.care--web .care-search-page .care-spec-chip:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
}

/* —— Map panel —— */
.care--web .care-search-page__map {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  min-height: min(72vh, 640px);
  height: calc(100vh - 120px);
  max-height: 720px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-primary-mist);
  box-shadow: var(--care-v2-shadow-sm);
  overflow: hidden;
}

/* —— Search skeletons (row hits) —— */
.care--web .care-search-page .care-search-page__skel.care-skel-list--search-hit {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 16px;
}

.care--web .care-skel--search-hit {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) 100px;
  align-items: center;
  grid-gap: 16px;
  gap: 16px;
  padding: 18px !important;
}

.care--web .care-skel--search-hit .care-skel__aside-btn {
  display: block;
  width: 88px;
  height: 32px;
  border-radius: var(--care-v2-radius-pill);
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}

/* —— Idle state —— */
.care--web .care-search-page__idle {
  padding: 8px 0 24px;
}

.care--web .care-search-page__idle .care-v2-lead {
  color: var(--care-v2-muted);
  margin-bottom: 20px;
}

/* —— Rating stars (shared CareRating on cards) —— */
.care--web .care-v2-doctors-page .care-rating__star,
.care--web .care-search-page .care-rating__star {
  color: #f59e0b !important;
}

.care--web .care-v2-doctors-page .care-rating__score,
.care--web .care-search-page .care-rating__score {
  font-weight: 700;
  color: var(--care-v2-navy);
}

/* —— Responsive —— */
@media (max-width: 960px) {
  .care--web .care-v2-doctors-page .care-v2-doctors-layout {
    grid-template-columns: 1fr;
    padding: 20px 16px 48px;
  }

  .care--web .care-v2-doctors-page .care-v2-spec-side {
    position: static;
    max-height: none;
    overflow: visible;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-advanced {
    grid-template-columns: 1fr 1fr;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-meta {
    flex-direction: column;
    align-items: flex-start;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-name-search {
    flex-direction: column;
    gap: 8px;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-name-search__field {
    min-height: 50px;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-name-search__hint {
    display: none;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-name-search__go {
    width: 100%;
    min-width: 0;
    min-height: 48px;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-strip {
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-strip__field {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: calc(50% - 8px);
    border: 1px solid var(--care-v2-line);
    border-radius: 8px;
    min-height: 44px;
  }

  .care--web .care-v2-doctors-page .care-v2-doctors-strip__submit {
    flex: 1 1 100%;
    -webkit-margin-start: 0;
            margin-inline-start: 0;
    width: 100%;
  }

  .care--web .care-search-page .care-page__body {
    width: calc(100% - 32px);
    padding: 16px 0 48px;
  }

  .care--web .care-search-page__toolbar {
    flex-wrap: wrap;
  }

  .care--web .care-search-page__more {
    width: 100%;
    -webkit-margin-start: 0;
            margin-inline-start: 0;
    justify-content: center;
  }

  .care--web .care-search-page__layout {
    grid-template-columns: 1fr;
  }

  .care--web .care-search-page__map {
    position: static;
    height: 360px;
    min-height: 360px;
  }

  .care--web .care-search-page__hit {
    grid-template-columns: 1fr;
  }

  .care--web .care-search-page__hit-aside {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }

  .care--web .care-skel--search-hit {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .care--web .care-skel--search-hit .care-skel__aside-btn {
    display: none;
  }
}

@media (max-width: 640px) {
  .care--web .care-v2-doctors-page .care-v2-doctors-advanced {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-doctors-page .care-v2-doc-card,
  .care--web .care-v2-doc.care-v2-doc--medcare {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__aside,
  .care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__aside {
    align-items: stretch;
    text-align: start;
  }

  .care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__fee,
  .care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__fee {
    justify-items: start;
  }

  .care--web .care-v2-doctors-page .care-v2-doc-card .care-v2-doc__avail-badge--aside,
  .care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__avail-badge--aside {
    align-self: flex-start;
  }
}


/**
 * Marketplace catalog item detail pages (lab / radiology / pharmacy).
 * Long-form sections + sticky buy panel — MedCare tokens, not Healthwire chrome.
 */

.care-cat-detail .care-page__body {
  max-width: 1180px;
  margin: 0 auto;
  padding: 16px 16px 48px;
}

.care-cat-detail__back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  margin: 0 0 12px;
  padding: 0;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  background: #fff;
  color: var(--care-v2-navy, #0b1f3a);
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.care-cat-detail__back:hover {
  border-color: color-mix(in srgb, var(--care-v2-blue, #2563eb) 40%, #e2e8f0);
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 4%, #fff);
}

.care-cat-detail__back .care-ico {
  width: 20px;
  height: 20px;
}

.care--web[dir='rtl'] .care-cat-detail__back .care-ico,
.care--web .care--rtl .care-cat-detail__back .care-ico {
  transform: scaleX(-1);
}

.care-cat-detail__crumb {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin: 0 0 10px;
  font-size: 0.82rem;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__crumb a {
  color: inherit;
  text-decoration: none;
}

.care-cat-detail__crumb a:hover {
  color: var(--care-v2-blue, #2563eb);
}

.care-cat-detail__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
  grid-gap: 32px;
  gap: 32px;
  align-items: start;
}

.care-cat-detail__hero {
  display: grid;
  grid-template-columns: minmax(120px, 180px) minmax(0, 1fr);
  grid-gap: 20px;
  gap: 20px;
  margin-bottom: 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--care-v2-line, #e2e8f0);
}

.care-cat-detail__hero--medicine {
  grid-template-columns: minmax(320px, 440px) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.care-cat-detail__photo {
  aspect-ratio: 1;
  border-radius: var(--care-v2-radius, 2px);
  overflow: hidden;
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 6%, #f8fafc);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  display: grid;
  place-items: center;
}

.care-cat-detail__photo--lg {
  aspect-ratio: 1;
  min-height: 400px;
  padding: 28px;
  background: #fff;
}

.care-cat-detail__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care-cat-detail__photo--lg img,
.care-cat-detail__photo--lg .care-mico {
  width: 100%;
  height: 100%;
  max-height: 440px;
  object-fit: contain;
}

.care-cat-detail__intro {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.care-cat-detail__badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  align-self: flex-start;
  padding: 4px 10px;
  border-radius: var(--care-v2-radius, 2px);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  font-size: 0.75rem;
  font-weight: 650;
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 10%, #fff);
  color: var(--care-v2-navy, #0b1f3a);
  margin-bottom: 0;
}

.care-cat-detail__title {
  margin: 0;
  font-size: clamp(1.55rem, 2.6vw, 2.05rem);
  line-height: 1.2;
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 750;
  letter-spacing: -0.02em;
}

.care-cat-detail__sub {
  margin: 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.95rem;
}

.care-cat-detail__stock {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 600;
  color: #15803d;
}

.care-cat-detail__stock--low {
  color: #b45309;
}

.care-cat-detail__stock--out {
  color: #b91c1c;
}

.care-cat-detail__facts {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-cat-detail__facts li {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  font-size: 0.9rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-cat-detail__facts .care-ico {
  width: 16px;
  height: 16px;
  margin-top: 2px;
  flex: 0 0 auto;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__specs {
  margin: 6px 0 0;
  padding: 14px 16px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px 20px;
  gap: 12px 20px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 3%, #fff);
}

.care-cat-detail__specs > div {
  min-width: 0;
  display: grid;
  grid-gap: 2px;
  gap: 2px;
}

.care-cat-detail__specs dt {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__specs dd {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--care-v2-navy, #0b1f3a);
  line-height: 1.35;
  word-break: break-word;
}

.care-cat-detail__meta {
  margin: 4px 0 0;
  font-size: 0.88rem;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__toc {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}

.care-cat-detail__toc a {
  display: inline-flex;
  padding: 6px 12px;
  border-radius: var(--care-v2-radius, 2px);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: #fff;
  color: var(--care-v2-navy, #0b1f3a);
  text-decoration: none;
  font-size: 0.82rem;
  font-weight: 600;
}

.care-cat-detail__toc a:hover,
.care-cat-detail__toc a.is-active {
  border-color: color-mix(in srgb, var(--care-v2-blue, #2563eb) 45%, #e2e8f0);
  background: color-mix(in srgb, var(--care-v2-blue, #2563eb) 6%, #fff);
}

.care-cat-detail__section {
  margin: 0 0 22px;
  padding: 0 0 22px;
  border-bottom: 1px solid var(--care-v2-line, #e2e8f0);
  scroll-margin-top: 88px;
}

.care-cat-detail__section:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

.care-cat-detail__section h2 {
  margin: 0 0 10px;
  font-size: 1.12rem;
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 700;
}

.care-cat-detail__section p,
.care-cat-detail__body {
  margin: 0 0 10px;
  color: #334155;
  line-height: 1.65;
  white-space: pre-wrap;
  font-size: 0.95rem;
}

.care-cat-detail__section ul {
  margin: 0;
  padding: 0 0 0 1.15rem;
  color: #334155;
  line-height: 1.6;
}

.care-cat-detail__section li + li {
  margin-top: 6px;
}

.care-cat-detail__buy {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  padding: 18px 16px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  background: #fff;
  box-shadow: none;
}

.care-cat-detail__buy h2 {
  margin: 0 0 6px;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--care-v2-muted, #64748b);
  font-weight: 700;
}

.care-cat-detail__price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
  margin: 0 0 14px;
}

.care-cat-detail__price strong {
  font-size: 1.45rem;
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 750;
}

.care-cat-detail__price s {
  color: var(--care-v2-muted, #64748b);
  font-size: 0.95rem;
}

.care-cat-detail__price em {
  font-style: normal;
  font-size: 0.78rem;
  font-weight: 700;
  color: #047857;
  background: color-mix(in srgb, #10b981 12%, #fff);
  padding: 2px 8px;
  border: 1px solid color-mix(in srgb, #10b981 28%, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
}

.care-cat-detail__price span {
  color: var(--care-v2-muted, #64748b);
  font-size: 0.85rem;
}

.care-cat-detail__pack {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  margin: 0 0 12px;
  font-size: 0.86rem;
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 600;
}

.care-cat-detail__pack select,
.care-cat-detail__pack .care-select,
.care-cat-detail__pack [class*='Select'] {
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
}

.care-cat-detail__actions {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-cat-detail__actions .care-qty {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  overflow: hidden;
}

.care-cat-detail__actions .care-qty button {
  width: 40px;
  height: 40px;
  border: 0;
  background: #f8fafc;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.care-cat-detail__actions .care-qty span {
  min-width: 2rem;
  text-align: center;
  font-weight: 650;
}

.care-cat-detail__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  border: 1px solid var(--care-v2-primary, #0066ff);
  border-radius: var(--care-v2-radius, 2px);
  background: var(--care-v2-primary, #0066ff);
  color: #fff;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.care-cat-detail__cta:hover:not(:disabled) {
  filter: brightness(1.05);
}

.care-cat-detail__cta:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.care-cat-detail__cta.is-added {
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 10%, #fff);
  color: var(--care-v2-navy, #0b1f3a);
  border: 1px solid var(--care-v2-line, #e2e8f0);
}

.care-cat-detail__clinic {
  margin: 12px 0 0;
  font-size: 0.86rem;
  color: var(--care-v2-muted, #64748b);
  line-height: 1.45;
}

.care-cat-detail__practice {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px 16px;
  margin-top: 4px;
  padding: 14px 16px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 4%, #fff);
}

.care-cat-detail__practice-copy {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  min-width: 0;
}

.care-cat-detail__practice-copy > span {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__practice-copy strong {
  font-size: 1rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-cat-detail__practice-copy strong a {
  color: inherit;
  text-decoration: none;
}

.care-cat-detail__practice-copy strong a:hover {
  color: var(--care-v2-primary, #0066ff);
}

.care-cat-detail__practice-copy em {
  font-style: normal;
  font-size: 0.84rem;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__practice-change {
  flex: 0 0 auto;
  font-size: 0.86rem;
  font-weight: 700;
  color: var(--care-v2-primary, #0066ff);
  text-decoration: none;
  padding: 6px 0;
}

.care-cat-detail__practice-change:hover {
  text-decoration: underline;
}

.care-cat-detail__buy-practice {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-gap: 10px;
  gap: 10px;
  align-items: center;
  margin: 0 0 14px;
  padding: 10px 12px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  background: #f8fafc;
}

.care-cat-detail__buy-practice .care-ico {
  width: 18px;
  height: 18px;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__buy-practice div {
  min-width: 0;
  display: grid;
  grid-gap: 2px;
  gap: 2px;
}

.care-cat-detail__buy-practice strong {
  font-size: 0.9rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-cat-detail__buy-practice span {
  font-size: 0.78rem;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__buy-practice a {
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--care-v2-primary, #0066ff);
  text-decoration: none;
}

.care-cat-detail__alts {
  margin: 0 0 28px;
  padding: 18px 16px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  background: #fff;
}

.care-cat-detail__alts-head {
  margin: 0 0 12px;
}

.care-cat-detail__alts-head h2 {
  margin: 0 0 4px;
  font-size: 1.05rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-cat-detail__alts-head p {
  margin: 0;
  font-size: 0.86rem;
  color: var(--care-v2-muted, #64748b);
  line-height: 1.45;
}

.care-cat-detail__alts-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-cat-detail__alt {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-gap: 4px 12px;
  gap: 4px 12px;
  padding: 12px 14px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  text-decoration: none;
  color: inherit;
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 3%, #fff);
  transition: border-color 0.15s ease, background 0.15s ease;
}

.care-cat-detail__alt:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, #e2e8f0);
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 7%, #fff);
}

.care-cat-detail__alt-name {
  grid-column: 1;
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-cat-detail__alt-place {
  grid-column: 1;
  font-size: 0.82rem;
  color: var(--care-v2-muted, #64748b);
}

.care-cat-detail__alt-price {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  font-weight: 750;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-cat-detail__error,
.care-cat-detail__empty {
  margin: 24px 0;
  color: var(--care-v2-muted, #64748b);
}

@media (max-width: 860px) {
  .care-cat-detail__grid {
    grid-template-columns: 1fr;
  }

  .care-cat-detail__buy {
    position: static;
    order: -1;
  }

  .care-cat-detail__hero,
  .care-cat-detail__hero--medicine {
    grid-template-columns: 1fr;
  }

  .care-cat-detail__photo,
  .care-cat-detail__photo--lg {
    max-width: none;
    min-height: 300px;
    width: 100%;
  }

  .care-cat-detail__photo--lg img,
  .care-cat-detail__photo--lg .care-mico {
    max-height: 360px;
  }

  .care-cat-detail__specs {
    grid-template-columns: 1fr;
  }
}

.care-prep {
  margin-top: 0;
  padding: 16px 16px 14px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-left: 4px solid var(--care-v2-primary, var(--care-teal, #0066ff));
  border-radius: var(--care-v2-radius, 2px);
  background: color-mix(in srgb, var(--care-v2-primary-soft, #ebf5ff) 70%, #fff);
}

.care-prep__eyebrow {
  margin: 0 0 4px;
  font-size: 0.7rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-v2-primary, var(--care-teal, #0066ff));
}

.care-prep__head h3 {
  margin: 0 0 4px;
  font-size: 1.05rem;
  font-weight: 650;
  color: var(--care-v2-navy, var(--care-navy, #0b1f3a));
}

.care-prep__head p {
  margin: 0 0 12px;
  font-size: 0.86rem;
  line-height: 1.45;
  color: var(--care-v2-muted, #64748b);
}

.care-prep__facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  grid-gap: 8px;
  gap: 8px;
  margin: 0 0 12px;
  padding: 0;
  list-style: none;
}

.care-prep__facts li {
  padding: 10px 12px;
  background: #fff;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
}

.care-prep__facts span {
  display: block;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-muted, #64748b);
}

.care-prep__facts strong {
  display: block;
  margin-top: 2px;
  font-size: 0.92rem;
  color: var(--care-v2-navy, var(--care-navy, #0b1f3a));
}

.care-prep__steps {
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
  counter-reset: care-prep-step;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  color: var(--care-v2-navy, var(--care-navy, #0b1f3a));
}

.care-prep__steps li {
  counter-increment: care-prep-step;
  position: relative;
  margin: 0;
  padding: 10px 12px 10px 44px;
  font-size: 0.9rem;
  line-height: 1.5;
  background: #fff;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
}

.care-prep__steps li::before {
  content: counter(care-prep-step);
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--care-v2-navy, var(--care-navy, #0b1f3a));
  color: #fff;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 24px;
  text-align: center;
}

[dir='rtl'] .care-prep__steps li {
  padding: 10px 44px 10px 12px;
}

[dir='rtl'] .care-prep__steps li::before {
  left: auto;
  right: 10px;
}

.care-prep__fallback {
  margin: 0 0 10px;
  padding: 10px 12px;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--care-v2-navy, var(--care-navy, #0b1f3a));
  background: #fff;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
}

.care-prep__bring {
  margin: 0;
  padding-top: 10px;
  border-top: 1px solid var(--care-v2-line, #e2e8f0);
  font-size: 0.78rem;
  font-weight: 650;
  color: var(--care-v2-muted, #64748b);
}

/* Nested on catalog detail: no double title chrome outside the card. */
.care-cat-detail__section--prep > h2 {
  display: none;
}

.care-cat-detail .care-prep {
  margin-top: 0;
}

/**
 * Dedicated Care checkout page — MedCare tokens, matches appointment book flow.
 */

.care-checkout-page__body {
  max-width: 820px;
  margin: 0 auto;
  padding-bottom: 48px;
}

.care-checkout-page__head {
  margin-bottom: 20px;
}

.care-checkout-page__lead {
  margin: 8px 0 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.95rem;
  line-height: 1.45;
  max-width: 42rem;
}

.care-checkout-page .care-book-stepper {
  margin: 18px 0 24px;
}

.care-checkout-page__panel {
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius-lg, 16px);
  padding: 20px 18px 22px;
  box-shadow: none;
}

.care-checkout-page__summary {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--care-v2-line, #e2e8f0);
}

.care-checkout-page__summary strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 1.05rem;
}

.care-checkout-page__summary span {
  color: var(--care-v2-muted, #64748b);
  font-size: 0.88rem;
}

.care-checkout-practice {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  grid-gap: 14px 16px;
  gap: 14px 16px;
  align-items: start;
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 16px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--care-v2-primary, #0066ff) 6%, #fff), #fff);
}

.care-checkout-practice__logo,
.care-checkout-practice__logo.care-center__logo,
.care-checkout-practice__logo.care-avatar {
  width: 72px;
  height: 72px;
  border-radius: 16px;
  object-fit: cover;
}

.care-checkout-practice__copy {
  min-width: 0;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-checkout-practice__title {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 6px 12px;
}

.care-checkout-practice__title h2 {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
  letter-spacing: -0.02em;
}

.care-checkout-practice__title em {
  font-style: normal;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.86rem;
  font-weight: 600;
}

.care-checkout-practice__addr {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
  color: var(--care-v2-ink, #0f172a);
  font-size: 0.9rem;
  line-height: 1.4;
}

.care-checkout-practice__addr .care-ico {
  flex: 0 0 auto;
  margin-top: 2px;
  color: var(--care-v2-primary, #0066ff);
}

.care-checkout-practice__meta {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care-checkout-practice__meta li,
.care-checkout-practice__meta a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: #fff;
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.8rem;
  font-weight: 600;
  text-decoration: none;
}

.care-checkout-practice__meta .care-ico {
  color: var(--care-v2-primary, #0066ff);
}

.care-checkout-practice__meta a:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, var(--care-v2-line, #e2e8f0));
  background: var(--care-v2-primary-soft, #ebf5ff);
}

@media (max-width: 520px) {
  .care-checkout-practice {
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 12px;
    padding: 12px;
  }

  .care-checkout-practice__logo,
  .care-checkout-practice__logo.care-center__logo,
  .care-checkout-practice__logo.care-avatar {
    width: 56px;
    height: 56px;
    border-radius: 14px;
  }

  .care-checkout-practice__title h2 {
    font-size: 1.05rem;
  }

  .care-checkout-page__lines--rich li {
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 10px;
  }

  .care-checkout-page__thumb {
    width: 44px;
    height: 44px;
  }
}

.care-checkout-page__block {
  margin-bottom: 8px;
}

.care-checkout-page__block-title {
  margin: 0 0 10px;
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-checkout-page__pkg-name {
  margin: 0 0 8px;
  font-size: 1.2rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-checkout-page__lines {
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-checkout-page__lines li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 12px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 12px;
  background: var(--care-v2-paper, #f8fafc);
}

.care-checkout-page__lines--rich li {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  grid-gap: 12px;
  gap: 12px;
  padding: 12px;
  background: #fff;
  box-shadow: 0 1px 0 rgba(11, 31, 58, 0.03);
}

.care-checkout-page__lines--rich li:has(.care-checkout-page__kind) {
  grid-template-columns: auto minmax(0, 1fr);
}

.care-checkout-page__lines--compact {
  margin-top: 0;
}

.care-checkout-page__thumb {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  object-fit: cover;
  background: var(--care-v2-paper, #f8fafc);
  display: grid;
  place-items: center;
  flex: 0 0 auto;
}

.care-checkout-page__thumb.care-mico,
.care-checkout-page__thumb.care-mico svg {
  width: 48px;
  height: 48px;
}

.care-checkout-page__line-copy {
  min-width: 0;
  display: grid;
  grid-gap: 2px;
  gap: 2px;
}

.care-checkout-page__line-copy strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.95rem;
  line-height: 1.35;
}

.care-checkout-page__line-copy span {
  color: var(--care-v2-muted, #64748b);
  font-size: 0.8rem;
}

.care-checkout-page__lines strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.95rem;
}

.care-checkout-page__lines em {
  font-style: normal;
  font-weight: 650;
  color: var(--care-v2-navy, #0b1f3a);
  white-space: nowrap;
}

.care-checkout-page__kind {
  display: inline-block;
  -webkit-margin-end: 8px;
          margin-inline-end: 8px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
  vertical-align: middle;
}

.care-checkout-page__kind--lab {
  background: #ecfdf5;
  color: #047857;
}

.care-checkout-page__kind--radiology {
  background: #f5f3ff;
  color: #6d28d9;
}

.care-checkout-page__kind--consultation {
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
}

.care-checkout-page__schedule {
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.care-checkout-page__schedule-card {
  padding: 14px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 12px;
  background: #fff;
}

.care-checkout-page__schedule-fields {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin-top: 12px;
}

@media (min-width: 640px) {
  .care-checkout-page__schedule-fields {
    grid-template-columns: 1fr 1fr;
  }
}

.care-checkout-page__schedule-fields label {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-checkout-page__schedule-fields input,
.care-checkout-page__schedule-fields select,
.care-checkout-page__addr textarea {
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 10px;
  font: inherit;
}

.care-checkout-page__fulfill {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin: 14px 0 18px;
}

.care-checkout-page__home {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--care-v2-line, #e2e8f0);
}

.care--web .care-checkout-page__home .care-checkout-dock__home,
.care-checkout-page__home .care-checkout-dock__home {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  font-weight: 600;
  color: #0b1f3a !important;
}

.care--web .care-checkout-page__home .care-checkout-dock__home span,
.care-checkout-page__home .care-checkout-dock__home span {
  color: #0b1f3a !important;
}

.care-checkout-page__home .care-checkout-dock__home input {
  accent-color: #0f6cbd;
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.care-checkout-page__addr {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  margin-bottom: 16px;
  font-weight: 600;
  color: var(--care-v2-navy, #0b1f3a);
}

.care-checkout-page__empty,
.care-checkout-page__auth {
  padding: 28px 18px;
  text-align: center;
  border: 1px dashed var(--care-v2-line, #e2e8f0);
  border-radius: 14px;
  background: var(--care-v2-paper, #f8fafc);
}

.care-checkout-page__auth {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
  justify-items: center;
}

.care-checkout-page__patient .care-patient-step,
.care-checkout-page__patient .care-v2-checkout {
  box-shadow: none;
  border: 0;
  padding: 0;
}

.care-book-review__pay-lead {
  margin: 0 0 10px;
  font-size: 0.85rem;
  color: var(--care-v2-muted, #64748b);
}

.care-demo {
  --demo-ink: #0f172a;
  --demo-muted: #64748b;
  --demo-line: #e2e8f0;
  --demo-primary: #0f6cbd;
  --demo-deep: #0f2942;
  --demo-paper: #f4f8fc;
  width: min(1120px, calc(100% - 32px));
  margin: 0 auto;
  padding: 28px 0 72px;
  color: var(--demo-ink);
}

.care-demo__hero h1 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.15;
  letter-spacing: -0.03em;
}

.care-demo__eyebrow {
  margin: 0 0 10px;
  color: var(--demo-primary);
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.care-demo__lead {
  max-width: 46rem;
  margin: 14px 0 0;
  color: var(--demo-muted);
  font-size: 1.08rem;
  line-height: 1.6;
}

.care-demo__films {
  display: grid;
  grid-gap: 28px;
  gap: 28px;
  margin-top: 36px;
}

.care-demo__film {
  display: grid;
  grid-gap: 18px;
  gap: 18px;
  padding: 16px;
  background: #fff;
  border: 1px solid var(--demo-line);
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

@media (min-width: 900px) {
  .care-demo__film {
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.8fr);
    align-items: center;
    padding: 18px;
  }
}

.care-demo__player {
  width: 100%;
  aspect-ratio: 16 / 9;
  background: var(--demo-deep);
  border-radius: 12px;
}

.care-demo__film-copy h2 {
  margin: 0 0 8px;
  font-size: 1.45rem;
}

.care-demo__film-copy p {
  margin: 0 0 12px;
  color: var(--demo-muted);
  line-height: 1.55;
}

.care-demo__film-copy ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care-demo__film-copy li {
  -webkit-padding-start: 14px;
          padding-inline-start: 14px;
  -webkit-border-start: 3px solid var(--demo-primary);
          border-inline-start: 3px solid var(--demo-primary);
  line-height: 1.45;
}

.care-demo__offer,
.care-demo__where {
  margin-top: 42px;
}

.care-demo__offer h2,
.care-demo__where h2 {
  margin: 0 0 16px;
  font-size: 1.6rem;
}

.care-demo__grid {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
}

@media (min-width: 760px) {
  .care-demo__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.care-demo__card {
  padding: 18px 18px 16px;
  background: #fff;
  border: 1px solid var(--demo-line);
  border-radius: 16px;
}

.care-demo__card h3 {
  margin: 0 0 8px;
  color: var(--demo-deep);
  font-size: 1.05rem;
}

.care-demo__card p {
  margin: 0;
  color: var(--demo-muted);
  line-height: 1.55;
}

.care-demo__where ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care-demo__where li {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  background: #fff;
  border: 1px solid var(--demo-line);
  border-radius: 14px;
}

.care-demo__where span {
  color: var(--demo-muted);
}

.care-demo__where strong {
  color: var(--demo-primary);
  font-weight: 700;
}

.care-picker-sheet {
  position: fixed;
  inset: 0;
  z-index: 85;
  display: grid;
  place-items: end center;
}

.care-picker-sheet__scrim {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(8, 24, 42, 0.46);
  opacity: 0;
  transition: opacity 0.28s ease;
}

.care-picker-sheet__card {
  position: relative;
  width: min(560px, 100%);
  max-height: min(86dvh, 640px);
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 22px 22px 0 0;
  box-shadow: 0 -18px 48px rgba(30, 58, 95, 0.2);
  transform: translateY(110%);
  transition: transform 0.32s cubic-bezier(0.32, 0.72, 0, 1);
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

.care-picker-sheet.is-open .care-picker-sheet__scrim {
  opacity: 1;
}

.care-picker-sheet.is-open .care-picker-sheet__card {
  transform: translateY(0);
}

.care-picker-sheet__handle {
  width: 36px;
  height: 4px;
  margin: 10px auto 0;
  border-radius: 999px;
  background: rgba(12, 26, 46, 0.18);
}

.care-picker-sheet__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px 8px;
}

.care-picker-sheet__head h2 {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 750;
  color: var(--care-navy);
}

.care-picker-sheet__done {
  min-height: 40px;
  padding: 0 12px;
  border: 0;
  border-radius: 12px;
  background: #e8f2fb;
  color: var(--care-navy);
  font: inherit;
  font-weight: 750;
}

.care-picker-sheet__list {
  margin: 0;
  padding: 4px 10px 16px;
  list-style: none;
  overflow: auto;
}

.care-picker-sheet__option {
  width: 100%;
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 0;
  border-radius: 14px;
  background: transparent;
  color: var(--care-ink);
  font: inherit;
  font-weight: 650;
  text-align: start;
}

.care-picker-sheet__option.is-selected {
  background: #e8f2fb;
  color: var(--care-navy);
}

.care-picker-sheet__option em {
  font-style: normal;
  font-weight: 800;
  color: var(--care-navy);
}

@media (prefers-reduced-motion: reduce) {
  .care-picker-sheet__scrim,
  .care-picker-sheet__card {
    transition: none;
  }
}


/**
 * Care Hub desktop top-nav mega menus (Rails B2C hover style, MedCare tokens).
 */

.care--web .care-top {
  overflow: visible;
  z-index: 40;
}

.care--web .care-top__inner,
.care--web .care-top__row--brand {
  overflow: visible;
}

.care--web .care-top__nav--v2.care-top-menu {
  display: flex;
  align-items: stretch;
  gap: 8px;
  flex: 1 1 auto;
  min-width: 0;
  overflow: visible;
  position: static;
}

.care--web .care-top-menu__item {
  position: relative;
  display: flex;
  align-items: center;
}

/* Climb to .care-top so the panel can span the full header width. */
.care--web .care-top-menu__item--mega {
  position: static;
}

.care--web .care-top-menu__trigger {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: var(--care-v2-radius, 2px);
  font: inherit;
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--care-v2-navy, #0b1f3a);
  text-decoration: none;
  white-space: nowrap;
  line-height: 1.45;
  background: transparent;
  transition:
    color 0.15s ease,
    background 0.15s ease;
}

.care--web .care-top-menu__trigger:hover,
.care--web .care-top-menu__trigger:focus-visible,
.care--web .care-top-menu__item:hover > .care-top-menu__trigger,
.care--web .care-top-menu__item:focus-within > .care-top-menu__trigger,
.care--web .care-top-menu__trigger.is-active {
  color: var(--care-v2-primary, #0066ff);
  background: var(--care-v2-primary-soft, #ebf5ff);
}

/* Full-width mega panel under sticky header (Rails drop-down-wrapper). */
.care--web .care-top-menu__panel {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 100%;
  padding: 0;
  background: #fff;
  border-bottom: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.12);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(4px);
  transition:
    opacity 0.16s ease,
    transform 0.16s ease,
    visibility 0.16s;
  z-index: 50;
}

/* Hover bridge so the cursor can travel into the panel. */
.care--web .care-top-menu__item--mega > .care-top-menu__trigger::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 16px;
}

.care--web .care-top-menu__item--mega > .care-top-menu__trigger {
  position: relative;
}

.care--web .care-top-menu__item--mega:hover > .care-top-menu__panel,
.care--web .care-top-menu__item--mega:focus-within > .care-top-menu__panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.care--web .care-top-menu__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 22px 24px 20px;
}

.care--web .care-top-menu__cols {
  display: grid;
  grid-gap: 18px 24px;
  gap: 18px 24px;
  align-items: start;
}

.care--web .care-top-menu__heading {
  margin: 0 0 12px;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-top-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.care--web .care-top-menu__list > li {
  position: relative;
  margin: 0 0 4px;
}

.care--web .care-top-menu__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 6px 4px !important;
  border-radius: 6px !important;
  color: var(--care-v2-navy, #0b1f3a);
  text-decoration: none;
  font-size: 0.875rem !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  white-space: normal !important;
  background: transparent !important;
}

.care--web .care-top-menu__row:hover,
.care--web .care-top-menu__list > li:hover > .care-top-menu__row {
  color: var(--care-v2-primary, #0066ff);
  background: var(--care-v2-primary-soft, #ebf5ff);
}

.care--web .care-top-menu__chev {
  width: 6px;
  height: 6px;
  border: solid currentColor;
  border-width: 0 1.5px 1.5px 0;
  transform: rotate(-45deg);
  flex: 0 0 auto;
  opacity: 0.55;
}

.care--web[dir='rtl'] .care-top-menu__chev,
.care--web .care--rtl .care-top-menu__chev {
  transform: rotate(135deg);
}

/* Nested city flyout — Rails desk-multi-level */
.care--web .care-top-menu__flyout {
  list-style: none;
  margin: 0;
  padding: 12px 14px;
  position: absolute;
  top: 0;
  left: calc(100% + 6px);
  min-width: 200px;
  max-width: 280px;
  background: var(--care-v2-navy, #0b1f3a);
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.18);
  display: none;
  z-index: 60;
}

.care--web[dir='rtl'] .care-top-menu__flyout,
.care--web .care--rtl .care-top-menu__flyout {
  left: auto;
  right: calc(100% + 6px);
}

.care--web .care-top-menu__list > li.has-flyout:hover > .care-top-menu__flyout,
.care--web .care-top-menu__list > li.has-flyout:focus-within > .care-top-menu__flyout {
  display: block;
}

.care--web .care-top-menu__flyout li + li {
  margin-top: 8px;
}

.care--web .care-top-menu__flyout a {
  display: block;
  color: #fff;
  text-decoration: none;
  font-size: 0.8125rem;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.care--web .care-top-menu__flyout a:hover {
  color: #93c5fd;
}

.care--web .care-top-menu__footer {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  grid-gap: 10px 16px;
  gap: 10px 16px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--care-v2-line, #e2e8f0);
}

.care--web .care-top-menu__footer a {
  color: var(--care-v2-primary, #0066ff);
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 600;
}

.care--web .care-top-menu__footer a:hover {
  text-decoration: underline;
}

@media (max-width: 1100px) {
  .care--web .care-top-menu__cols {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 960px) {
  .care--web .care-top__nav--v2.care-top-menu {
    display: none;
  }
}

/* Care phone + Capacitor — native hospital-app chrome. Desktop Care is unchanged. */

.care.care--phone {
  --care-tabs-h: calc(88px + env(safe-area-inset-bottom, 0px));
  --care-radius: 16px;
  --care-radius-btn: 14px;
  --care-shadow: none;
  --care-phone-navy: #1e3a5f;
  --care-phone-ink: #0f172a;
  --care-phone-muted: #64748b;
  --care-phone-line: rgba(30, 58, 95, 0.1);
  --care-phone-card: #fff;
  background: #f8fafc;
  color: var(--care-phone-ink);
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.care.care--phone button,
.care.care--phone a,
.care.care--phone input,
.care.care--phone select,
.care.care--phone textarea {
  touch-action: manipulation;
}

.care.care--phone .care-site-footer,
.care.care--phone .care-top__nav,
.care.care--phone .care-top__actions,
.care.care--phone .care-top__burger {
  display: none !important;
}

.care.care--phone .care-top {
  padding:
    calc(2px + env(safe-area-inset-top, 0px))
    max(4px, env(safe-area-inset-right, 0px))
    2px
    max(4px, env(safe-area-inset-left, 0px));
  background: #fff;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border: 0;
  border-bottom: 1px solid var(--care-phone-line);
  border-radius: 0 !important;
  box-shadow: 0 8px 24px rgba(18, 38, 58, 0.04);
  overflow: visible;
}

.care.care--phone .care-top__row--brand {
  min-height: 44px;
}

.care.care--phone .care-top__lead {
  flex: 1 1;
  min-width: 0;
}

.care.care--phone .care-top__brand span,
.care.care--phone.care--tab-root .care-top__brand strong {
  display: none;
}

.care.care--phone .care-top__title {
  flex: 1 1;
  min-width: 0;
  margin: 0;
  font-family: var(--care-font);
  font-size: 1.02rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-phone-ink);
  text-align: start;
  line-height: 1.2;
}

.care.care--phone.care--tab-root:not(.care--search-pinned) .care-top__title {
  text-align: start;
  font-size: 1.05rem;
}

.care.care--phone .care-top__logo-link {
  flex-shrink: 0;
  display: inline-flex;
  height: 28px;
  align-items: center;
  justify-content: center;
}

.care.care--phone .care-top__logo {
  width: auto;
  height: 22px;
  max-width: 148px;
  object-fit: contain;
  border-radius: 0;
  background: transparent;
}

.care.care--phone .care-top__tools {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.care.care--phone .care-top__profile {
  min-height: 48px;
  max-width: min(168px, 42vw);
  padding: 3px 12px 3px 3px;
  background: #fff;
  color: var(--care-phone-navy);
  box-shadow: 0 6px 16px rgba(30, 58, 95, 0.12);
}

.care.care--phone .care-top__profile-photo,
.care.care--phone .care-top__profile .care-user-avatar,
.care.care--phone .care-top__profile img {
  width: 38px;
  height: 38px;
}

.care.care--phone .care-top__search-btn,
.care.care--phone .care-top__back,
.care.care--phone .care-top__more {
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--care-phone-ink);
}

.care.care--phone .care-top__search-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.care.care--phone .care-top__search-btn .care-ico {
  width: 22px;
  height: 22px;
}

.care.care--phone .care-top__search-btn.has-query::after {
  content: '';
  position: absolute;
  top: 10px;
  right: 10px;
  width: 7px;
  height: 7px;
  background: var(--care-teal);
  box-shadow: 0 0 0 2px #fff;
}

.care.care--phone .care-top__search-btn.is-open {
  background: rgba(255, 255, 255, 0.12);
}

.care.care--phone.care--search-open .care-tabs {
  pointer-events: none;
  opacity: 0.35;
  transition: opacity 0.22s ease;
}

.care.care--phone .care-top__account {
  display: none !important;
}

.care.care--phone .care-top__more {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.care.care--phone .care-top__burger-bars {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 22px;
}

.care.care--phone .care-top__burger-bars span {
  display: block;
  height: 2.5px;
  border-radius: 999px;
  background: var(--care-phone-ink);
  transition:
    transform 0.22s ease,
    opacity 0.18s ease;
}

.care.care--phone .care-top__more.is-open .care-top__burger-bars span:nth-child(1) {
  transform: translateY(7.5px) rotate(45deg);
}

.care.care--phone .care-top__more.is-open .care-top__burger-bars span:nth-child(2) {
  opacity: 0;
}

.care.care--phone .care-top__more.is-open .care-top__burger-bars span:nth-child(3) {
  transform: translateY(-7.5px) rotate(-45deg);
}

.care.care--phone .care-top__account:active,
.care.care--phone .care-top__back:active,
.care.care--phone .care-tabs button:active,
.care.care--phone .care-door:active,
.care.care--phone .care-doc:active,
.care.care--phone .care-center:active,
.care.care--phone .care-service:active,
.care.care--phone .care-service-tile:active {
  transform: scale(0.97);
  opacity: 0.92;
}

.care.care--phone .care-top__lang {
  display: flex;
}

.care.care--phone .care-stage {
  padding-bottom: calc(var(--care-tabs-h) + 8px);
  scrollbar-width: none;
}

.care.care--phone .care-stage::-webkit-scrollbar {
  display: none;
}

/* Phone uses fixed top nav for titles — drop catalog page banners. Home uses the market slider. */
.care.care--phone .care-page-banner,
.care.care--phone .care-hero,
.care.care--phone .care-intro {
  display: none !important;
}

.care.care--phone .care-main > .care-section:not(.care-market-section) {
  display: block;
}

.care.care--phone .care-hero {
  min-height: 0;
  padding: 12px 16px 8px;
  border-radius: 0;
}

.care.care--phone .care-hero--photo {
  min-height: 0;
}

.care.care--phone .care-hero__photo,
.care.care--phone .care-hero__veil {
  display: none;
}

.care.care--phone .care-hero__kicker {
  margin: 0 0 4px;
  font-size: 0.72rem;
  letter-spacing: 0.04em;
}

.care.care--phone .care-hero {
  background: linear-gradient(135deg, var(--care-header-start, #2563eb), var(--care-header-end, #1e3a5f));
}

.care.care--phone .care-hero__kicker,
.care.care--phone .care-hero__brand {
  color: #fff;
}

.care.care--phone .care-hero__brand {
  max-width: none;
  font-size: 1.7rem;
  line-height: 1.15;
}

.care.care--phone .care-hero__lead,
.care.care--phone .care-door span,
.care.care--phone .care-door__go,
.care.care--phone .care-section__head p,
.care.care--phone .care-intro__kicker {
  display: none;
}

.care.care--phone .care-hero__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.care.care--phone .care-hero__cta .care-btn {
  min-height: 40px;
  padding: 8px 14px;
  border-radius: var(--care-radius);
  font-size: 0.84rem;
}

.care.care--phone .care-hero__cta .care-btn--solid {
  display: none;
}

.care.care--phone .care-main {
  padding: 0 16px 28px;
}

.care.care--phone .care-home-search {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 48px;
  margin: 10px 0 12px;
  padding: 0 14px;
  border: 0;
  border-radius: 14px;
  background: var(--care-phone-card);
  color: var(--care-phone-muted);
  font: inherit;
  font-size: 15px;
  font-weight: 500;
  text-align: start;
  box-shadow: 0 0 0 1px var(--care-phone-line);
}

.care.care--phone .care-home-search .care-ico {
  width: 18px;
  height: 18px;
  color: var(--care-phone-navy);
}

.care.care--phone .care-place {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  grid-gap: 8px 10px;
  gap: 8px 10px;
  margin: 0 0 14px;
  padding: 10px 12px;
  background: var(--care-phone-card);
  border: 0;
  border-radius: var(--care-radius);
  box-shadow: 0 0 0 1px var(--care-phone-line);
}

.care.care--phone .care-place__visual,
.care.care--phone .care-place__head,
.care.care--phone .care-place__actions .care-btn--solid {
  display: none !important;
}

.care.care--phone .care-place__body {
  display: contents;
}

.care.care--phone .care-place__active {
  display: flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
  margin: 0;
  padding: 0;
  background: transparent;
}

.care.care--phone .care-place__active em {
  font-size: 0.7rem;
  font-style: normal;
  font-weight: 650;
  color: var(--care-phone-muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.care.care--phone .care-place__active strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.92rem;
  color: var(--care-phone-ink);
}

.care.care--phone .care-place__clear {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  padding: 0;
  border: 0;
  background: none;
  color: var(--care-phone-navy);
  font-size: 0.75rem;
  font-weight: 700;
}

.care.care--phone .care-place__actions {
  margin: 0;
}

.care.care--phone .care-place__actions .care-btn--block {
  min-height: 48px;
  padding: 0 14px;
  border-radius: 14px;
  font-size: 15px;
}

.care.care--phone .care-place__cities-wrap {
  grid-column: 1 / -1;
  margin: 0;
}

.care.care--phone .care-place__cities-wrap summary {
  font-size: 0.78rem;
  font-weight: 650;
  color: var(--care-phone-navy);
}

.care.care--phone .care-section {
  margin-bottom: 22px;
}

.care.care--phone .care-section__head {
  margin-bottom: 8px;
}

.care.care--phone .care-section__head h2 {
  font-size: 1.02rem;
  font-weight: 750;
  letter-spacing: -0.02em;
  color: var(--care-phone-ink);
}

.care.care--phone .care-section__head--row {
  align-items: baseline;
}

.care.care--phone .care-link {
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--care-phone-navy);
}

.care.care--phone .care-doors,
.care.care--phone .care-doors--categories {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  background: transparent;
  border: 0;
}

.care.care--phone .care-door,
.care.care--phone .care-doors--categories .care-door {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  min-height: 56px;
  padding: 12px 14px;
  border-radius: 14px;
  background: var(--care-phone-card);
  border: 0;
  box-shadow: 0 0 0 1px var(--care-phone-line);
  text-align: start;
}

.care.care--phone .care-door__thumb,
.care.care--phone .care-doors--categories .care-door__thumb {
  display: grid;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 10px;
}

.care.care--phone .care-door__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care.care--phone .care-door__glyph {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: color-mix(in srgb, var(--care-phone-navy) 10%, #fff);
  color: var(--care-phone-navy);
}

.care.care--phone .care-door--lab .care-door__glyph {
  background: #e8f4fb;
  color: #0b6b8a;
}

.care.care--phone .care-door--pharmacy .care-door__glyph {
  background: #e8f7ef;
  color: #1b7a4a;
}

.care.care--phone .care-door--near .care-door__glyph {
  background: #eef0fb;
  color: #3b4db8;
}

.care.care--phone .care-door__glyph .care-ico {
  width: 22px;
  height: 22px;
}

.care.care--phone .care-doors--categories .care-door__copy {
  align-items: flex-start;
}

.care.care--phone .care-door strong,
.care.care--phone .care-doors--categories .care-door strong {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.25;
  color: var(--care-phone-ink);
}

.care.care--phone .care-door-more {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  margin-top: 8px;
  padding-bottom: 0;
}

.care.care--phone .care-door-more::-webkit-scrollbar {
  display: none;
}

.care.care--phone .care-door-more a {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 8px 14px;
  border-radius: 999px;
  background: #eef2f6;
  border: 0;
  box-shadow: none;
  font-size: 13px;
  font-weight: 650;
  color: var(--care-phone-ink);
  text-decoration: none;
}

.care.care--phone .care-status {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  margin-bottom: 16px;
  padding: 14px;
  border-radius: 14px;
  background: var(--care-phone-navy);
  color: #fff;
  box-shadow: none;
}

.care.care--phone .care-status__copy strong {
  color: #fff;
  font-size: 15px;
}

.care.care--phone .care-status__copy span {
  color: rgba(255, 255, 255, 0.72);
  font-size: 13px;
}

.care.care--phone .care-status .care-btn {
  min-height: 48px;
  padding: 0 14px;
  border-radius: 14px;
  background: #fff !important;
  color: var(--care-phone-navy) !important;
  font-size: 15px;
}

.care.care--phone .care-list--directory,
.care.care--phone .care-centers,
.care.care--phone .care-spec-list {
  display: grid;
  grid-gap: 0;
  gap: 0;
  margin: 0;
  background: var(--care-phone-card);
  border-radius: var(--care-radius);
  box-shadow: 0 0 0 1px var(--care-phone-line);
  overflow: hidden;
}

.care.care--phone .care-list--directory .care-doc,
.care.care--phone .care-center,
.care.care--phone .care-doc,
.care.care--phone .care-row,
.care.care--phone .care-practice-pick--card,
.care.care--phone .care-spec-list__item {
  border-radius: 0;
  border: 0;
  border-bottom: 0.5px solid var(--care-phone-line);
  box-shadow: none;
  background: transparent;
  min-height: 56px;
  padding: 14px 16px;
  font-size: 15px;
}

.care.care--phone .care-list--directory .care-doc:last-child,
.care.care--phone .care-center:last-child,
.care.care--phone .care-spec-list__item:last-child {
  border-bottom: 0;
}

.care.care--phone .care-spec-list {
  grid-template-columns: 1fr;
}

.care.care--phone .care-spec-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 56px;
  font-size: 15px;
  font-weight: 650;
}

.care.care--phone .care-cta {
  display: none;
}

.care.care--phone .care-page__title {
  font-size: 1.45rem;
  margin-top: 0;
}

.care.care--phone .care-intro .care-page__title {
  display: none;
}

.care.care--phone .care-page__lead {
  display: none;
}

.care.care--phone .care-filterbar {
  padding: 0;
  margin-bottom: 12px;
}

.care.care--phone .care-filterbar__toolbar {
  gap: 8px;
}

.care.care--phone .care-filterbar__toggle {
  min-height: 48px;
  border-radius: 14px;
  box-shadow: var(--care-shadow);
  font-size: 15px;
}

.care.care--phone .care-filterbar.is-open .care-filterbar__panel-inner {
  border-radius: 12px;
  box-shadow: 0 0 0 1px var(--care-phone-line);
}

.care.care--phone .care-filterbar__fields {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.care.care--phone .care-filterbar__pick {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  grid-gap: 10px;
  gap: 10px;
  width: 100%;
  min-height: 52px;
  padding: 10px 14px;
  border: 0;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 0 0 1px var(--care-phone-line);
  color: var(--care-ink);
  font: inherit;
  text-align: start;
}

.care.care--phone .care-filterbar__pick span {
  font-size: 0.78rem;
  font-weight: 750;
  color: #5d7590;
}

.care.care--phone .care-filterbar__pick strong {
  justify-self: end;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.95rem;
  font-weight: 750;
  color: var(--care-phone-navy);
}

.care.care--phone .care-filterbar__pick.is-set strong {
  color: var(--care-phone-navy);
}

.care.care--phone .care-filterbar__pick::after {
  content: '';
  width: 8px;
  height: 8px;
  -webkit-margin-start: 4px;
          margin-inline-start: 4px;
  -webkit-border-end: 2px solid var(--care-phone-navy);
          border-inline-end: 2px solid var(--care-phone-navy);
  border-bottom: 2px solid var(--care-phone-navy);
  transform: rotate(-45deg);
  flex-shrink: 0;
}

html[dir='rtl'] .care.care--phone .care-filterbar__pick::after {
  transform: rotate(135deg);
}

.care.care--phone .care-detail__book {
  position: -webkit-sticky;
  position: sticky;
  bottom: var(--care-tabs-h);
  z-index: 8;
  margin-inline: -16px;
  padding: 12px 16px 12px;
  background: rgba(255, 255, 255, 0.96);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  border-top: 0.5px solid var(--care-line);
  box-shadow: 0 -8px 24px rgba(30, 58, 95, 0.06);
}

.care.care--phone .care-btn,
.care.care--phone .care-cta {
  min-height: 48px;
  border-radius: var(--care-radius-btn, 14px);
  font-size: 15px;
}

.care.care--phone .care-drawer {
  z-index: 1220;
}

.care.care--phone .care-drawer__panel {
  top: auto;
  bottom: 0;
  inset-inline: 0;
  width: 100%;
  max-height: min(86dvh, 720px);
  border-radius: 22px 22px 0 0;
  transform: translateY(108%);
  box-shadow: 0 -16px 48px rgba(6, 26, 46, 0.2);
  padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px));
}

html[dir='rtl'] .care.care--phone .care-drawer__panel {
  transform: translateY(108%);
}

.care.care--phone .care-drawer.is-open .care-drawer__panel,
html[dir='rtl'] .care.care--phone .care-drawer.is-open .care-drawer__panel {
  transform: translateY(0);
}

.care.care--phone .care-drawer__head::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 8px;
  width: 36px;
  height: 4px;
  margin-left: -18px;
  border-radius: 999px;
  background: rgba(12, 26, 46, 0.18);
}

.care.care--phone .care-drawer__head {
  position: relative;
  padding-top: 10px;
}

.care.care--phone .care-drawer__link {
  min-height: 48px;
  border-radius: 14px;
}

.care-tabs {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 60;
  display: none;
  align-items: stretch;
  gap: 0;
  margin: 0;
  padding: 0 0 env(safe-area-inset-bottom, 0px);
  background: #fff;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border: 0;
  border-top: 1px solid var(--care-phone-line, rgba(30, 58, 95, 0.1));
  border-radius: 0 !important;
  box-shadow: 0 -8px 24px rgba(18, 38, 58, 0.06);
}

.care.care--phone .care-tabs {
  display: flex;
}

.care-tabs button,
.care-tabs .care-tabs__btn {
  position: relative;
  flex: 1 1;
  min-width: 0;
  min-height: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  margin: 0;
  padding: 8px 2px 6px;
  border: 0;
  border-radius: 0 !important;
  background: transparent;
  color: var(--care-phone-muted);
  font: inherit;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.1;
}

.care-tabs button .care-ico {
  width: 28px;
  height: 28px;
}

.care-tabs button .care-ico--art {
  filter: grayscale(1) opacity(0.55);
}

.care-tabs button.is-active {
  color: var(--care-teal);
  background: transparent;
}

.care-tabs button.is-active .care-ico--art {
  filter: none;
}

.care-tabs button.is-active::before {
  content: none;
}

.care-tabs button span {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.care.care--phone .care-doc,
.care.care--phone .care-center {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 12px;
}

.care.care--phone .care-doc > .care-cta,
.care.care--phone .care-center > .care-cta {
  grid-column: 1 / -1;
  width: 100%;
  min-height: 48px;
  justify-content: center;
}

.care.care--phone .care-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.care.care--phone .care-sticky-bar {
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: calc(var(--care-tabs-h) + 8px);
  margin: 0;
  z-index: 28;
}

.care.care--phone .leaflet-bottom {
  bottom: calc(var(--care-tabs-h) + 8px);
}

.care.care--phone .care-sticky-bar--jump {
  gap: 8px;
}

.care.care--phone .care-sticky-bar .care-cta {
  min-height: 48px;
  padding: 8px 14px;
}

.care.care--phone .care-center-profile,
.care.care--phone .care-detail-hero {
  padding: 14px;
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--care-shadow);
}

.care.care--phone .care-center-profile__hero,
.care.care--phone .care-detail-hero {
  gap: 12px;
}

.care.care--phone .care-center-profile__copy h2,
.care.care--phone .care-detail-hero__copy h1 {
  font-size: 1.15rem;
  line-height: 1.25;
}

.care.care--phone .care-center-profile__actions,
.care.care--phone .care-center-profile__contacts {
  display: grid;
  grid-template-columns: 1fr;
}

.care.care--phone .care-center-profile__actions .care-btn,
.care.care--phone .care-center-profile__contacts a {
  width: 100%;
  min-height: 48px;
  justify-content: center;
  text-align: center;
}

.care.care--phone .care-smart__field {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-height: 0;
  padding: 8px;
  border-radius: 18px;
  background: #fff;
  border: 0;
  box-shadow: 0 8px 24px rgba(8, 32, 58, 0.12);
}

.care.care--phone .care-top__search .care-smart__field,
.care.care--phone .care-hero .care-smart__field {
  box-shadow: none;
}

.care.care--phone .care-smart__place-btn--lead {
  display: inline-flex;
  width: 100%;
  max-width: none;
  min-height: 48px;
  padding: 8px 12px;
  border-radius: 14px;
  background: #e8f2fb;
  color: var(--care-phone-navy);
}

.care.care--phone .care-smart__place-btn--lead em {
  font-size: 0.88rem;
}

.care.care--phone .care-smart__place-btn--compact {
  display: none;
}

.care.care--phone .care-smart__field-main {
  flex: 1 1 160px;
  min-height: 48px;
}

.care.care--phone .care-smart__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 14px;
  background: var(--care-phone-navy);
  color: #fff;
}

.care.care--phone .care-smart__submit-label {
  display: none;
}

.care.care--phone .care-smart__submit-ico {
  display: block;
  width: 20px;
  height: 20px;
}

.care.care--phone .care-top__back .care-ico,
.care.care--phone .care-top__more .care-ico {
  color: #fff;
}

.care.care--phone .care-smart__clear {
  min-height: 36px;
}

.care.care--phone .care-smart__filters,
.care.care--phone .care-top__search .care-smart__filters,
.care.care--phone .care-top__search .care-smart__panel {
  position: fixed;
  inset: auto 0 0;
  top: auto;
  max-height: min(78dvh, 640px);
  border-radius: 22px 22px 0 0;
  padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -16px 48px rgba(6, 26, 46, 0.2);
  z-index: 70;
}

.care.care--phone .care-door__icon {
  background: color-mix(in srgb, var(--care-phone-navy) 12%, #fff);
  color: var(--care-phone-navy);
}

.care.care--phone .care-filterbar__extras .care-filters {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 2px 2px 6px;
}

.care.care--phone .care-filterbar__extras .care-filters::-webkit-scrollbar {
  display: none;
}

.care.care--phone .care-filters--desktop-only {
  display: none;
}

.care.care--phone .care-filter {
  min-height: 36px;
  border-radius: 999px;
  background: #eef2f6;
  border: 0;
  box-shadow: none;
  color: #0f172a;
  font-size: 13px;
  font-weight: 600;
  padding: 8px 14px;
}

.care.care--phone .care-filter.is-active {
  background: var(--care-phone-navy);
  color: #fff;
}

.care.care--phone .care-hero .care-smart,
.care.care--phone .care-top__search,
.care.care--phone .care-filterbar__search {
  display: none !important;
}

.care.care--phone .care-search-sheet {
  position: fixed;
  inset: 0;
  z-index: 80;
  pointer-events: none;
  visibility: hidden;
}

.care.care--phone .care-search-sheet.is-open {
  pointer-events: auto;
  visibility: visible;
}

.care.care--phone .care-search-sheet__scrim {
  position: absolute;
  inset: 0;
  border: 0;
  padding: 0;
  background: rgba(6, 22, 40, 0.42);
  opacity: 0;
  transition: opacity 0.28s ease;
}

.care.care--phone .care-search-sheet.is-open .care-search-sheet__scrim {
  opacity: 1;
}

.care.care--phone .care-search-sheet__panel {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  max-height: min(92dvh, 820px);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  background: #f4f8fc;
  border-radius: 0;
  padding:
    calc(8px + env(safe-area-inset-top, 0px))
    max(12px, env(safe-area-inset-right, 0px))
    16px
    max(12px, env(safe-area-inset-left, 0px));
  box-shadow: 0 18px 40px rgba(6, 26, 46, 0.22);
  transform: translate3d(0, -16%, 0);
  opacity: 0;
  transition:
    transform 0.36s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.22s ease;
}

.care.care--phone .care-search-sheet.is-open .care-search-sheet__panel {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

.care.care--phone .care-search-sheet__bar {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 8px;
}

.care.care--phone .care-search-sheet__cancel {
  min-height: 48px;
  border: 0;
  background: transparent;
  color: var(--care-phone-navy);
  font: inherit;
  font-weight: 700;
  padding: 0 4px;
}

.care.care--phone .care-search-sheet .care-smart {
  animation: care-search-rise 0.38s cubic-bezier(0.22, 1, 0.36, 1);
}

.care.care--phone .care-search-sheet .care-smart__field {
  background: #fff;
  box-shadow: 0 10px 28px rgba(8, 32, 58, 0.1);
}

@keyframes care-search-rise {
  from {
    transform: translate3d(0, 10px, 0) scale(0.98);
    opacity: 0;
  }
  to {
    transform: none;
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .care.care--phone .care-top__account:active,
  .care.care--phone .care-top__back:active,
  .care.care--phone .care-tabs button:active,
  .care.care--phone .care-door:active,
  .care.care--phone .care-doc:active,
  .care.care--phone .care-center:active {
    transform: none;
  }

  .care.care--phone .care-search-sheet__scrim,
  .care.care--phone .care-search-sheet__panel,
  .care.care--phone .care-search-sheet .care-smart {
    transition: none;
    animation: none;
  }
}

/* —— Dark theme (Care phone + mobile web) —— */
html.ch-phone-dark .care.care--phone {
  --care-phone-navy: #071d33;
  --care-phone-ink: #e8eef7;
  --care-phone-muted: #94a3b8;
  --care-phone-line: rgba(148, 163, 184, 0.16);
  --care-phone-card: #152234;
  --care-shadow: none;
  background: #0a1520;
  color: #e8eef7;
}

html.ch-phone-dark .care.care--phone .care-top,
html.ch-phone-dark .care.care--phone .care-tabs {
  background: #102038;
  color: #e8eef7;
}

html.ch-phone-dark .care.care--phone .care-top__title,
html.ch-phone-dark .care.care--phone .care-top__search-btn,
html.ch-phone-dark .care.care--phone .care-top__back,
html.ch-phone-dark .care.care--phone .care-top__more,
html.ch-phone-dark .care.care--phone .care-top__burger-bars span {
  color: #e8eef7;
  background-color: transparent;
}

html.ch-phone-dark .care.care--phone .care-top__burger-bars span {
  background: #e8eef7;
}

html.ch-phone-dark .care-tabs button {
  color: #94a3b8;
}

html.ch-phone-dark .care-tabs button.is-active {
  color: #6ea8ff;
}

html.ch-phone-dark .care.care--phone .care-home-search,
html.ch-phone-dark .care.care--phone .care-place,
html.ch-phone-dark .care.care--phone .care-door,
html.ch-phone-dark .care.care--phone .care-list--directory,
html.ch-phone-dark .care.care--phone .care-centers,
html.ch-phone-dark .care.care--phone .care-spec-list,
html.ch-phone-dark .care.care--phone .care-door-more a,
html.ch-phone-dark .care.care--phone .care-search-sheet .care-smart__field {
  background: var(--care-phone-card);
  color: #e8eef7;
}

html.ch-phone-dark .care.care--phone .care-door__glyph {
  background: rgba(255, 255, 255, 0.08);
  color: #dbeafe;
}

html.ch-phone-dark .care.care--phone .care-status {
  background: #0d2a4a;
}

html.ch-phone-dark .care.care--phone .care-door strong,
html.ch-phone-dark .care.care--phone .care-section__head h2,
html.ch-phone-dark .care.care--phone .care-page__title {
  color: #f1f5f9;
}

html.ch-phone-dark .care.care--phone .care-drawer__panel {
  background: #101c2c;
  color: #e8eef7;
}

html.ch-phone-dark .care.care--phone .care-drawer__theme {
  border-top-color: rgba(148, 163, 184, 0.18);
}

html.ch-phone-dark .care.care--phone .care-drawer__theme span,
html.ch-phone-dark .care.care--phone .care-drawer__link {
  color: #e8eef7;
}

/* Density — 16px gutters, 48px taps, 14px radius, 15px type. */
.care.care--phone .care-home-chips.staff-phone-chips,
.care.care--phone .care-doc .staff-phone-chips,
.care.care--phone .care-center .staff-phone-chips {
  display: flex;
  flex-wrap: wrap;
  overflow: visible;
  gap: 10px;
}

.care.care--phone .care-home-chips.staff-phone-chips {
  margin: 12px 0 14px;
}

.care.care--phone .staff-phone-error {
  margin: 0 0 14px;
  padding: 0;
  background: transparent;
  border: 0;
  text-align: start;
}

.care.care--phone .staff-phone-error .cust-error {
  margin: 0;
  border-radius: 14px;
}

.care.care--phone .staff-phone-error .cust-error__btn {
  min-height: 48px;
  border-radius: 14px;
  font-size: 15px;
}

.care.care--phone .staff-phone-empty,
.care.care--phone .care-empty.staff-phone-empty {
  margin: 16px 0;
  padding: 20px 16px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(30, 58, 95, 0.1);
  color: #64748b;
  text-align: center;
  font-size: 15px;
}

.care.care--phone .staff-phone-footer.care-infinite {
  position: static;
  padding: 20px 0 8px;
  background: transparent;
  box-shadow: none;
}

.care.care--phone .staff-phone-footer .care-btn,
.care.care--phone .staff-phone-footer .care-infinite__btn {
  min-height: 48px;
  border-radius: 14px;
  font-size: 15px;
}

.care.care--phone .care-section__head h2 {
  font-size: 17px;
}

.care.care--phone .care-place__active strong {
  font-size: 15px;
}

.care.care--phone .care-place__clear {
  min-height: 36px;
  font-size: 13px;
}

.care.care--phone .care-doc.staff-phone-row,
.care.care--phone .care-center.staff-phone-row,
.care.care--phone .care-search-hit.staff-phone-row {
  display: grid;
}

/**
 * MedCare — practices, near, lab, radiology, scan, center gate.
 * Loaded last from CareLayout after care-medcare-home.css.
 * Scope: .care--web only.
 */

/* —— Shared page canvas —— */
.care--web .care-v2-practices,
.care--web .care-v2-practice-detail,
.care--web .care-v2-near,
.care--web .care-v2-lab,
.care--web .care-v2-rad,
.care--web .care-v2-scan {
  background: var(--care-v2-paper);
}

.care--web .care-v2-practices .care-page__body,
.care--web .care-v2-practice-detail .care-page__body,
.care--web .care-v2-near .care-page__body,
.care--web .care-v2-lab .care-page__body,
.care--web .care-v2-rad .care-page__body,
.care--web .care-v2-scan .care-page__body {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 64px;
}

/* —— Practices directory: sidebar + list —— */
.care--web .care-v2-practices .care-page__body {
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px 24px 64px;
}

.care--web .care-v2-practices-layout {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care--web .care-v2-practices-side {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  max-height: none;
  overflow: visible;
  padding: 16px 12px 18px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
}

.care--web .care-v2-practices-side__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  padding: 0 4px 10px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-practices-side__head strong {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--care-v2-navy);
  white-space: nowrap;
}

.care--web .care-v2-practices-side__head .care-link {
  flex: 0 0 auto;
  width: auto !important;
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0 !important;
  border: 0;
  background: transparent;
  color: var(--care-v2-primary);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.care--web .care-v2-practices-side .care-v2-filter-block {
  padding: 12px 4px 6px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-practices-side .care-v2-filter-block:last-child {
  border-bottom: 0;
}

.care--web .care-v2-practices-side .care-v2-filter-block__title {
  margin: 0 0 8px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care--web .care-v2-practices-side .care-v2-filter-block__list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.care--web .care-v2-practices-side .care-v2-filter-check {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 0 8px;
  border-radius: 2px;
  border: 1px solid transparent;
  cursor: pointer;
  color: var(--care-v2-ink);
  font-size: 0.9rem;
  font-weight: 500;
}

.care--web .care-v2-practices-side .care-v2-filter-check input {
  accent-color: var(--care-v2-primary);
}

.care--web .care-v2-practices-side .care-v2-filter-check.is-active {
  background: var(--care-v2-primary-mist);
  border-color: color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-v2-practices-side__view {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 6px;
  gap: 6px;
}

.care--web .care-v2-practices-side__view-btn {
  min-height: 36px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: #fff;
  color: var(--care-v2-navy);
  font: inherit;
  font-weight: 600;
  font-size: 0.86rem;
  cursor: pointer;
}

.care--web .care-v2-practices-side__view-btn.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-practices-main {
  min-width: 0;
}

.care--web .care-v2-practices-head {
  margin-bottom: 16px;
}

.care--web .care-v2-practices-search {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  padding: 0 14px;
  min-height: 48px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
}

.care--web .care-v2-practices-search .care-ico {
  width: 18px;
  height: 18px;
  color: var(--care-v2-primary);
  flex-shrink: 0;
}

.care--web .care-v2-practices-search input {
  flex: 1 1;
  min-width: 0;
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  font: inherit;
  font-size: 0.95rem;
  color: var(--care-v2-ink);
}

.care--web .care-v2-practices-meta {
  margin: 0 0 12px;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care--web .care-v2-practices-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.care--web .care-v2-practice-row {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) auto;
  grid-gap: 16px;
  gap: 16px;
  align-items: center;
  padding: 14px 16px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.care--web .care-v2-practice-row:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-practice-row__logo,
.care--web .care-v2-practice-row__logo.care-center__logo,
.care--web .care-v2-practice-row__logo.care-avatar--practice {
  width: 96px !important;
  height: 96px !important;
  border-radius: 2px !important;
  object-fit: cover;
  background: var(--care-v2-primary-mist);
  border: 1px solid var(--care-v2-line);
}

.care--web .care-v2-practice-row__body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.care--web .care-v2-practice-row__title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.care--web .care-v2-practice-row__title strong {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.3;
}

.care--web .care-v2-practice-row__open {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #15803d;
  background: #dcfce7;
  border: 1px solid #bbf7d0;
  border-radius: 2px;
  padding: 2px 8px;
}

.care--web .care-v2-practice-row__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  color: var(--care-v2-muted);
  font-size: 0.86rem;
}

.care--web .care-v2-practice-row__facts span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care--web .care-v2-practice-row__facts .care-ico {
  width: 14px;
  height: 14px;
  color: var(--care-v2-primary);
}

.care--web .care-v2-practice-row__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.care--web .care-v2-practice-row__chips span {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--care-v2-primary);
  background: var(--care-v2-primary-soft);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 18%, var(--care-v2-line));
  border-radius: 2px;
  padding: 2px 8px;
}

.care--web .care-v2-practice-row__aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  flex-shrink: 0;
}

.care--web .care-v2-practice-row__cta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid var(--care-v2-primary);
  border-radius: 2px;
  background: var(--care-v2-primary);
  color: #fff;
  font-size: 0.86rem;
  font-weight: 600;
}

.care--web .care-v2-practice-row:hover .care-v2-practice-row__cta {
  background: var(--care-v2-primary-hover);
  border-color: var(--care-v2-primary-hover);
}

.care--web .care-v2-practices-foot {
  margin-top: 20px;
  display: flex;
  justify-content: center;
}

@media (max-width: 900px) {
  .care--web .care-v2-practices-layout {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-practices-side {
    position: static;
    max-height: none;
  }

  .care--web .care-v2-practice-row {
    grid-template-columns: 56px minmax(0, 1fr);
  }

  .care--web .care-v2-practice-row__aside {
    grid-column: 1 / -1;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}

/* —— Practices directory —— */
.care--web .care-v2-practices-head .care-v2-title {
  font-family: var(--care-v2-font-display);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-practices-all {
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-v2-tool-pill {
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-switch.is-on {
  background: var(--care-v2-primary);
}

.care--web .care-v2-practices-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  grid-gap: 18px;
  gap: 18px;
}

.care--web .care-v2-practice-card {
  display: flex;
  flex-direction: column;
  gap: 0;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.care--web .care-v2-practice-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--care-v2-shadow);
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
}

.care--web .care-v2-practice-card__photo {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  min-height: 180px;
  object-fit: cover;
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-practice-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.care--web .care-v2-practice-card__logo,
.care--web .care-v2-practice-card__logo.care-center__logo,
.care--web .care-v2-practice-card__logo.care-avatar--practice {
  width: 88px !important;
  height: 88px !important;
  border-radius: 14px !important;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--care-v2-primary-mist);
  border: 1px solid var(--care-v2-line);
}

.care--web .care-v2-practice-card__body {
  padding: 14px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1 1;
}

.care--web .care-v2-practice-card__name {
  color: var(--care-v2-navy);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}

.care--web .care-v2-practice-card__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
}

.care--web .care-v2-practice-card__fact {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--care-v2-muted);
  font-size: 0.84rem;
}

.care--web .care-v2-practice-card__fact .care-ico {
  width: 15px;
  height: 15px;
  color: var(--care-v2-primary);
}

.care--web .care-v2-practice-card__fact--hours .care-v2-practice-card__hours {
  color: #15803d;
  font-weight: 600;
}

.care--web .care-v2-practice-card__specs-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 8px;
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid var(--care-v2-line);
}

.care--web .care-v2-practice-card__specs {
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--care-v2-muted);
  font-size: 0.82rem;
  line-height: 1.4;
}

.care--web .care-v2-practice-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
}

.care--web .care-v2-practice-card__chip {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-size: 0.75rem;
  font-weight: 600;
}

.care--web .care-v2-practice-card__foot {
  position: static;
  color: var(--care-v2-primary);
  font-size: 1.1rem;
  line-height: 1;
}

.care--web .care-v2-practices-foot__meta {
  color: var(--care-v2-muted);
}

.care--web .care-v2-practices-pager__btn,
.care--web .care-v2-practices-pager__num {
  border-radius: var(--care-v2-radius);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
}

.care--web .care-v2-practices-pager__num.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-practices .care-skel-list--practice {
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}

/* —— Practice detail —— */
.care--web .care-v2-practice-detail > .care-v2-practice-hero {
  min-height: 0;
  align-items: stretch;
  color: var(--care-v2-ink);
  background: linear-gradient(180deg, var(--care-v2-primary-mist) 0%, var(--care-v2-paper) 100%);
}

.care--web .care-v2-practice-detail .care-v2-practice-hero__stage {
  width: min(1200px, calc(100% - 48px));
  padding: 36px 0 28px;
}

.care--web .care-v2-practice-detail .care-v2-practice-hero__stage h1 {
  color: var(--care-v2-navy);
  text-shadow: none;
}

.care--web .care-v2-practice-detail .care-v2-practice-hero__loc {
  color: var(--care-v2-muted);
  opacity: 1;
}

.care--web .care-v2-practice-detail .care-v2-practice-hero__loc .care-ico {
  color: var(--care-v2-primary);
}

.care--web .care-v2-practice-detail .care-v2-practice-hero__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-success-soft);
  color: #15803d;
  font-size: 0.88rem;
}

.care--web .care-v2-practice-detail .care-v2-practice-hero__status em {
  color: var(--care-v2-muted);
  opacity: 1;
}

.care--web .care-v2-practice-detail .care-v2-practice-hero__dot {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: var(--care-v2-primary) !important;
  box-shadow: none !important;
}

.care--web .care-v2-practice-detail .care-v2-practice-tabs-wrap {
  background: var(--care-v2-surface);
  border-bottom: 1px solid var(--care-v2-line);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-practice-detail .care-v2-practice-tabs a.is-active {
  color: var(--care-v2-primary);
  border-bottom-color: var(--care-v2-primary);
}

.care--web .care-v2-practice-detail .care-v2-practice-tabs__cta {
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
}

.care--web .care-v2-practice-section__title {
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctor-chip {
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-doctor-chip img,
.care--web .care-v2-doctor-chip .care-avatar {
  width: 80px !important;
  height: 80px !important;
  border-radius: 50%;
  border: 2px solid var(--care-v2-primary-soft);
  object-fit: cover;
}

.care--web .care-store .care-service-tiles {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 14px;
}

.care--web .care-store .care-service-tile {
  min-height: 140px;
  padding: 16px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-store .care-service-tile__media {
  position: static;
  display: block;
  width: 48px;
  height: 48px;
  margin-bottom: 10px;
}

.care--web .care-store .care-service-tile__media .care-mico-art,
.care--web .care-store .care-service-tile__media img {
  width: 48px;
  height: 48px;
  padding: 10px;
  border-radius: 14px;
  background: var(--care-v2-primary-soft);
  object-fit: contain;
  box-sizing: border-box;
}

.care--web .care-store .care-service-tile__copy {
  position: static;
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
  background: transparent;
  justify-content: flex-start;
  height: auto;
}

.care--web .care-store .care-service-tile .care-ico {
  display: none;
}

.care--web .care-store .care-service-tile strong {
  color: var(--care-v2-navy);
  font-size: 0.95rem;
}

.care--web .care-store .care-service-tile span {
  color: var(--care-v2-muted);
  font-size: 0.84rem;
}

.care--web .care-store .care-service-tile:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 30%, var(--care-v2-line));
  box-shadow: var(--care-v2-shadow);
}

.care--web .care-v2-practice-shelf .care-shelf-card,
.care--web .care-v2-practice-shelf .care-store-card {
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-practice-shelf .care-store-card__price {
  color: var(--care-v2-primary);
  font-weight: 700;
}

/* —— Near you —— */
.care--web .care-v2-near-head .care-v2-title {
  color: var(--care-v2-navy);
}

.care--web .care-v2-near-place {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--care-v2-muted);
}

.care--web .care-v2-near-filters {
  padding: 16px;
  margin-bottom: 20px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-near .care-v2-pills button {
  border-radius: var(--care-v2-radius-pill);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  min-height: 36px;
  padding: 0 14px;
  font-weight: 500;
}

.care--web .care-v2-near .care-v2-pills button.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-near-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
}

.care--web .care-v2-near-map {
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  box-shadow: var(--care-v2-shadow-sm);
  overflow: hidden;
  background: var(--care-v2-surface);
}

.care--web .care-v2-near-side {
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
  padding: 16px;
}

.care--web .care-v2-near-side__head strong {
  color: var(--care-v2-navy);
}

.care--web .care-v2-near-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.care--web .care-v2-near-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.care--web .care-v2-near-card.is-active,
.care--web .care-v2-near-card:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  box-shadow: var(--care-v2-shadow);
  inset: unset;
}

.care--web .care-v2-near-kind {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-v2-near-kind--blue,
.care--web .care-v2-near-kind--violet,
.care--web .care-v2-near-kind--teal,
.care--web .care-v2-near-kind--rose,
.care--web .care-v2-near-kind--amber {
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-v2-near-card__body strong {
  color: var(--care-v2-navy);
  font-size: 0.95rem;
}

.care--web .care-v2-near-card__spec {
  color: var(--care-v2-muted);
  font-size: 0.82rem;
}

.care--web .care-v2-near-card__dist {
  color: var(--care-v2-primary);
}

.care--web .care-v2-near-foot {
  margin-top: 20px;
  padding: 16px 18px;
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-near-foot__note .care-ico {
  color: var(--care-v2-primary);
}

/* —— Center gate (lab / rad pick) —— */
.care--web .care-center-gate {
  padding: 20px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-center-gate > .care-page__title {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy) !important;
  font-weight: 700 !important;
}

.care--web .care-center-gate .care-search {
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  box-shadow: var(--care-v2-shadow-sm);
  min-height: 48px;
  padding: 0 14px;
}

.care--web .care-view-toggle button {
  border-radius: var(--care-v2-radius-pill);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  min-height: 36px;
  padding: 0 14px;
  font-weight: 500;
}

.care--web .care-view-toggle button.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-practice-picks--cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

.care--web .care-practice-pick--card {
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
  overflow: hidden;
}

.care--web .care-practice-pick__hero {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  padding: 16px 16px 0;
  background: transparent;
}

.care--web .care-practice-pick__hero img,
.care--web .care-practice-pick__hero .care-center__logo,
.care--web .care-practice-pick__hero .care-avatar--practice {
  width: 64px !important;
  height: 64px !important;
  border-radius: 16px !important;
  object-fit: cover;
  background: var(--care-v2-primary-mist);
  border: 1px solid var(--care-v2-line);
}

.care--web .care-practice-pick__hero .care-media {
  width: 64px;
  height: 64px;
  padding: 10px;
  object-fit: contain;
  border-radius: 16px;
  background: var(--care-v2-primary-soft);
  box-sizing: border-box;
}

.care--web .care-practice-pick--card .care-practice-pick__copy strong {
  color: var(--care-v2-navy);
}

.care--web .care-practice-pick__actions .care-btn--primary {
  border-radius: var(--care-v2-radius-pill) !important;
}

/* —— Lab —— */
.care--web .care-v2-lab .care-v2-lab-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 300px);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care--web .care-v2-lab .care-v2-lab-layout:not(:has(.care-v2-lab-promo)) {
  grid-template-columns: minmax(0, 1fr);
}

.care--web .care-v2-lab .care-v2-lab-shop {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
  margin-top: 8px;
}

.care--web .care-v2-lab .care-v2-lab-side {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  max-height: none;
  overflow: visible;
  padding: 14px 10px 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  box-shadow: none;
}

.care--web .care-v2-lab .care-v2-lab-side__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  padding: 0 4px 10px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-lab .care-v2-lab-side__head strong {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 1rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  white-space: nowrap;
}

.care--web .care-v2-lab .care-v2-lab-side__head .care-link {
  flex: 0 0 auto;
  width: auto !important;
  padding: 0 !important;
  white-space: nowrap;
}

.care--web .care-v2-lab .care-v2-lab-side .care-v2-filter-block {
  padding: 12px 4px 6px;
}

.care--web .care-v2-lab .care-v2-lab-side .care-v2-filter-block__title {
  margin: 0 0 8px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care--web .care-v2-lab .care-v2-lab-side .care-v2-filter-block__list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.care--web .care-v2-lab .care-v2-lab-side .care-v2-filter-check {
  display: flex;
  align-items: center;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: 2px;
  background: transparent;
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: start;
  cursor: pointer;
}

.care--web .care-v2-lab .care-v2-lab-side .care-v2-filter-check.is-active {
  background: var(--care-v2-primary-mist);
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  color: var(--care-v2-primary);
  font-weight: 700;
}

.care--web .care-v2-lab .care-v2-lab-shop__main {
  min-width: 0;
}

.care--web .care-v2-lab .care-v2-lab-offer.care-v2-offer-banner {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 0 18px;
  padding: 16px 18px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-lab .care-v2-lab-offer .care-v2-offer-banner__copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-width: 40rem;
}

.care--web .care-v2-lab .care-v2-lab-offer .care-v2-offer-banner__copy em {
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-v2-primary);
}

.care--web .care-v2-lab .care-v2-lab-offer .care-v2-offer-banner__copy strong {
  font-size: 1.05rem;
  color: var(--care-v2-navy);
}

.care--web .care-v2-lab .care-v2-lab-offer .care-v2-offer-banner__copy p {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

.care--web .care-v2-lab .care-v2-lab-offer .care-v2-offer-banner__from {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--care-v2-primary);
}

.care--web .care-v2-lab .care-v2-lab-offer .care-v2-offer-banner__art {
  display: none !important;
}

.care--web .care-v2-lab .care-v2-lab-gate {
  margin-bottom: 16px;
}

.care--web .care-v2-lab .care-v2-lab-popular__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 14px;
}

.care--web .care-v2-lab .care-v2-lab-popular__head h2 {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-lab .care-v2-lab-cats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;
}

.care--web .care-v2-lab .care-v2-lab-cats button {
  gap: 8px;
  min-height: 38px;
  padding: 0 16px;
  border-radius: var(--care-v2-radius-pill);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  font-weight: 500;
  color: var(--care-v2-ink);
}

.care--web .care-v2-lab .care-v2-lab-cats button.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-lab .care-v2-lab-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

.care--web .care-v2-lab .care-v2-lab-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px 16px 16px;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: none;
  min-height: 220px;
}

.care--web .care-v2-lab .care-v2-lab-card.is-on {
  border-color: color-mix(in srgb, var(--care-v2-primary) 40%, var(--care-v2-line));
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--care-v2-primary) 15%, transparent);
}

.care--web .care-v2-lab .care-v2-lab-card__badge {
  position: absolute;
  top: 12px;
  inset-inline-end: 12px;
  margin: 0;
  padding: 4px 10px;
  border-radius: var(--care-v2-radius-pill);
  background: #dcfce7;
  color: #15803d;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 700;
}

.care--web .care-v2-lab .care-v2-lab-card__ico {
  display: inline-grid;
  place-items: center;
  width: 88px;
  height: 88px;
  border-radius: 14px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  overflow: hidden;
}

.care--web .care-v2-lab .care-v2-lab-card__ico img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care--web .care-v2-lab .care-v2-lab-card strong {
  color: var(--care-v2-navy);
  font-size: 1rem;
  line-height: 1.35;
}

.care--web .care-v2-lab .care-v2-lab-card__price {
  color: var(--care-v2-ink);
  font-weight: 700;
  font-size: 1.05rem;
  margin-top: auto;
}

.care--web .care-v2-lab .care-v2-lab-card__book {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border: none;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.2);
}

.care--web .care-v2-lab .care-v2-lab-card__book.is-on {
  background: var(--care-v2-navy);
}

.care--web .care-v2-lab .care-v2-lab-promo {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 300px;
  width: 100%;
  border-radius: 2px;
  overflow: hidden;
  box-shadow: none;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-navy);
}

.care--web .care-v2-lab .care-v2-lab-promo__media {
  position: relative;
  height: 160px;
  min-height: 160px;
  max-height: 160px;
  overflow: hidden;
  background: var(--care-v2-navy);
}

.care--web .care-v2-lab .care-v2-lab-promo__photo {
  display: block;
  width: 100%;
  height: 160px;
  max-height: 160px;
  object-fit: cover;
  object-position: center;
}

.care--web .care-v2-lab .care-v2-lab-promo__card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 22px 20px 24px;
  min-height: 0;
  border-radius: 0;
  background: linear-gradient(165deg, #0b66ff 0%, #0052cc 100%);
  color: #fff;
  box-shadow: none;
  border: none;
}

.care--web .care-v2-lab .care-v2-lab-promo__home {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
}

.care--web .care-v2-lab .care-v2-lab-promo__card strong {
  color: #fff;
  font-size: 1.15rem;
  line-height: 1.3;
}

.care--web .care-v2-lab .care-v2-lab-promo__card p {
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
  line-height: 1.5;
  flex: 1 1;
}

.care--web .care-v2-lab .care-v2-lab-promo__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 20px;
  border: none;
  border-radius: 2px;
  background: #fff;
  color: var(--care-v2-primary) !important;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
}

.care--web .care-v2-lab .care-v2-lab-promo__cta:hover {
  text-decoration: none;
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-lab .care-sticky-bar {
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow);
}

/* —— Radiology —— */
.care--web .care-v2-rad-hero {
  padding: 36px 24px 28px;
  background: linear-gradient(180deg, var(--care-v2-primary-mist) 0%, var(--care-v2-paper) 100%);
}

.care--web .care-v2-rad-hero__inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 360px);
  grid-gap: 28px;
  gap: 28px;
  align-items: center;
}

.care--web .care-v2-rad-hero__copy .care-v2-title {
  margin: 0 0 8px;
  color: var(--care-v2-navy);
}

.care--web .care-v2-rad-hero__lead {
  margin: 0 0 16px;
  max-width: 36rem;
}

.care--web .care-v2-rad-search {
  max-width: 420px;
}

.care--web .care-v2-rad-hero__art {
  position: relative;
  min-height: 180px;
  border-radius: var(--care-v2-radius, 12px);
  overflow: hidden;
  box-shadow: var(--care-v2-shadow-sm, 0 4px 18px rgba(11, 31, 58, 0.07));
  background: var(--care-v2-primary-soft);
}

.care--web .care-v2-rad-hero__photo {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 200px;
  max-height: 280px;
  object-fit: cover;
  object-position: 82% center;
}

.care--web .care-v2-rad-browse {
  max-width: 1200px;
  margin: 0 auto;
  padding: 8px 24px 8px;
}

.care--web .care-v2-rad-modalities {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 16px;
  gap: 16px;
  margin-bottom: 28px;
}

.care--web .care-v2-rad-mod {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  min-height: 168px;
  padding: 20px 18px;
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
  cursor: pointer;
  text-align: start;
  font: inherit;
  color: inherit;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.care--web .care-v2-rad-mod:hover,
.care--web .care-v2-rad-mod.is-active {
  border-color: color-mix(in srgb, var(--care-v2-primary) 40%, var(--care-v2-line));
  box-shadow: none;
  transform: none;
}

.care--web .care-v2-rad-mod__ico .care-mico {
  width: 52px;
  height: 52px;
  border-radius: 2px;
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-v2-rad-mod strong {
  color: var(--care-v2-navy);
  font-size: 1.05rem;
}

.care--web .care-v2-rad-mod span {
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  font-weight: 600;
}

.care--web .care-v2-rad-popular-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
  grid-gap: 20px;
  gap: 20px;
  align-items: stretch;
  margin-bottom: 24px;
}

.care--web .care-v2-rad-popular__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.care--web .care-v2-rad-popular__head h2 {
  margin: 0;
  color: var(--care-v2-navy);
  font-size: 1.2rem;
}

.care--web .care-v2-rad-popular__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.care--web .care-v2-rad-pop-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px;
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
  min-height: 200px;
}

.care--web .care-v2-rad-pop-card.is-on {
  border-color: color-mix(in srgb, var(--care-v2-primary) 40%, var(--care-v2-line));
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--care-v2-primary) 15%, transparent);
}

.care--web .care-v2-rad-pop-card strong {
  color: var(--care-v2-navy);
  font-size: 0.92rem;
  line-height: 1.35;
}

.care--web .care-v2-rad-pop-card__price {
  font-weight: 700;
  color: var(--care-v2-ink);
  margin-top: auto;
}

.care--web .care-v2-rad-pop-card__book {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border: none;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.18);
}

.care--web .care-v2-rad-pop-card__book.is-on {
  background: var(--care-v2-navy);
}

.care--web .care-v2-rad-reports {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 22px 18px;
  border-radius: var(--care-v2-radius-md);
  background: linear-gradient(165deg, #ebf5ff 0%, #d6ebff 100%);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 22%, transparent);
  color: var(--care-v2-navy);
}

.care--web .care-v2-rad-reports strong {
  font-size: 1.1rem;
  line-height: 1.3;
}

.care--web .care-v2-rad-reports p {
  margin: 0;
  color: var(--care-v2-muted);
  line-height: 1.45;
  flex: 1 1;
}

.care--web .care-v2-rad-reports__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary);
  color: #fff !important;
  font-weight: 600;
  text-decoration: none;
}

.care--web .care-v2-rad-gate-lead {
  margin: 0 0 16px;
}

.care--web .care-v2-rad-card {
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto 40px;
  padding: 24px;
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow);
}

.care--web .care-v2-rad-card__title {
  color: var(--care-v2-navy);
}

.care--web .care-v2-rad-sort,
.care--web .care-v2-rad-filter {
  border-radius: var(--care-v2-radius);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
}

.care--web .care-v2-rad-filter.is-on {
  background: var(--care-v2-primary-soft);
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

.care--web .care-v2-rad-list {
  gap: 12px;
}

.care--web .care-v2-rad-row {
  padding: 16px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
  border-bottom: 1px solid var(--care-v2-line);
  margin-bottom: 0;
}

.care--web .care-v2-rad-thumb,
.care--web .care-v2-rad-row .care-catalog-thumb,
.care--web .care-v2-rad-row .care-mico {
  width: 88px;
  height: 88px;
  border-radius: 14px;
  overflow: hidden;
}

.care--web .care-v2-rad-thumb .care-mico,
.care--web .care-v2-rad-row .care-catalog-thumb .care-mico {
  width: 88px;
  height: 88px;
  border-radius: 14px;
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-v2-rad-thumb img,
.care--web .care-v2-rad-row .care-catalog-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care--web .care-v2-rad-thumb .care-mico svg,
.care--web .care-v2-rad-row .care-catalog-thumb .care-mico svg {
  stroke: var(--care-v2-primary);
}

.care--web .care-v2-rad-row__body strong {
  color: var(--care-v2-navy);
}

.care--web .care-v2-rad-book {
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.2);
}

.care--web .care-v2-rad-book.is-on {
  background: var(--care-v2-navy) !important;
}

.care--web .care-v2-rad-foot {
  border-top: 1px solid var(--care-v2-line);
  padding-top: 16px;
}

.care--web .care-v2-rad-foot__link {
  color: var(--care-v2-primary);
}

.care--web .care-v2-rad .care-sticky-bar {
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow);
}

.care--web .care-v2-rad-detail-sheet {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  background: color-mix(in srgb, var(--care-v2-navy) 42%, transparent);
  padding: 20px;
}

.care--web .care-v2-rad-detail-panel {
  width: min(520px, 100%);
  max-height: min(80dvh, 720px);
  overflow: auto;
  padding: 20px;
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
}

/* —— Cart page —— */
.care--web .care-v2-cart .care-page__body {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 64px;
}

.care--web .care-v2-cart-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  margin: 0 0 32px;
  padding: 0;
  grid-gap: 0;
  gap: 0;
  position: relative;
}

.care--web .care-v2-cart-steps::before {
  content: '';
  position: absolute;
  top: 18px;
  left: 12.5%;
  right: 12.5%;
  height: 2px;
  background: var(--care-v2-line);
  z-index: 0;
}

.care--web .care-v2-cart-steps li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  position: relative;
  z-index: 1;
  color: var(--care-v2-muted);
  font-weight: 500;
  font-size: 0.88rem;
  text-align: center;
}

.care--web .care-v2-cart-steps li em {
  font-style: normal;
}

.care--web .care-v2-cart-steps__node {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  border: 2px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-muted);
  box-shadow: 0 0 0 4px var(--care-v2-paper, #f7f9fc);
}

.care--web .care-v2-cart-steps li.is-active {
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-v2-cart-steps li.is-active .care-v2-cart-steps__node {
  border-color: var(--care-v2-primary);
  background: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-cart-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care--web .care-v2-cart-main .care-v2-title {
  margin: 0 0 18px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.5rem, 2.5vw, 1.85rem);
  font-weight: 700;
  color: var(--care-v2-navy);
  letter-spacing: -0.02em;
}

.care--web .care-v2-cart-lines {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.care--web .care-v2-cart-line {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) auto auto;
  grid-gap: 14px;
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-cart-line__thumb {
  width: 64px;
  height: 64px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-cart-line__thumb img,
.care--web .care-v2-cart-line__thumb .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care--web .care-v2-cart-line__body strong {
  display: block;
  color: var(--care-v2-navy);
  font-size: 0.98rem;
}

.care--web .care-v2-cart-line__body span {
  color: var(--care-v2-muted);
  font-size: 0.85rem;
}

.care--web .care-v2-cart-line__qty {
  display: inline-flex;
  align-items: center;
  gap: 0;
  border: 1px solid var(--care-v2-line);
  border-radius: 10px;
  overflow: hidden;
  background: var(--care-v2-surface);
}

.care--web .care-v2-cart-line__qty button {
  width: 36px;
  height: 36px;
  border: none;
  background: transparent;
  color: var(--care-v2-navy);
  font-size: 1.1rem;
  cursor: pointer;
}

.care--web .care-v2-cart-line__qty span {
  min-width: 28px;
  text-align: center;
  font-weight: 700;
}

.care--web .care-v2-cart-line__price {
  color: var(--care-v2-navy);
  font-size: 1rem;
  min-width: 5.5rem;
  text-align: end;
}

.care--web .care-v2-cart-empty {
  padding: 32px;
  border-radius: 12px;
  border: 1px dashed var(--care-v2-line);
  background: var(--care-v2-surface);
  text-align: center;
}

.care--web .care-v2-cart-lead {
  margin: -8px 0 22px;
  color: var(--care-v2-muted);
  font-size: 0.95rem;
  line-height: 1.45;
  max-width: 52ch;
}

.care--web .care-v2-cart-empty__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-top: 14px;
}

.care--web .care-v2-cart-practices {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 18px;
  gap: 18px;
}

.care--web .care-v2-cart-practice {
  border: 1px solid var(--care-v2-line);
  border-radius: 12px;
  background: var(--care-v2-surface);
  padding: 18px 18px 16px;
}

.care--web .care-v2-cart-practice__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.care--web .care-v2-cart-practice__head h2 {
  margin: 0;
  font-size: 1.15rem;
  color: var(--care-v2-navy);
}

.care--web .care-v2-cart-practice__head span {
  color: var(--care-v2-primary);
  font-weight: 700;
  font-size: 0.85rem;
}

.care--web .care-v2-cart-section {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin-bottom: 16px;
}

.care--web .care-v2-cart-section:last-child {
  margin-bottom: 0;
}

.care--web .care-v2-cart-section__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.care--web .care-v2-cart-section__head h3 {
  margin: 0;
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care--web .care-v2-cart-section__pay {
  min-height: 44px;
  border: 0;
  border-radius: 10px;
  background: var(--care-v2-primary);
  color: #fff;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.care--web .care-v2-cart-summary {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  border-radius: 12px;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(247, 249, 252, 0.92) 0%, rgba(247, 249, 252, 0.97) 45%, #f7f9fc 100%),
    url('/care/design/heroes/centers-ambient.jpg') center / cover no-repeat;
  border: 1px solid var(--care-v2-line);
  box-shadow: var(--care-v2-shadow);
}

.care--web .care-v2-cart-summary__panel {
  padding: 22px 20px;
  background: rgba(255, 255, 255, 0.92);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
}

.care--web .care-v2-cart-summary h2 {
  margin: 0 0 16px;
  color: var(--care-v2-navy);
  font-size: 1.1rem;
}

.care--web .care-v2-cart-summary dl {
  margin: 0 0 18px;
}

.care--web .care-v2-cart-summary dl > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-cart-summary dt {
  color: var(--care-v2-muted);
}

.care--web .care-v2-cart-summary dd {
  margin: 0;
  font-weight: 600;
  color: var(--care-v2-ink);
}

.care--web .care-v2-cart-summary__total dt,
.care--web .care-v2-cart-summary__total dd {
  color: var(--care-v2-navy);
  font-size: 1.05rem;
  font-weight: 700;
}

.care--web .care-v2-cart-summary__cta {
  display: inline-flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  border: none;
  border-radius: 10px;
  background: var(--care-v2-primary);
  color: #fff;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.25);
}

.care--web .care-v2-cart-summary__cta:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
}

.care--web .care-v2-cart-summary__continue {
  display: inline-flex;
  justify-content: center;
  width: 100%;
  margin-top: 12px;
}

/* —— Scan —— */
.care--web .care-v2-scan .care-page-banner,
.care--web .care-v2-scan .care-market-page-hero,
.care--web .care-v2-scan .care-depts--page {
  display: none !important;
}

.care--web .care-v2-scan .care-scan-card {
  display: flex !important;
  align-items: center;
  gap: 20px;
  padding: 24px;
  margin-bottom: 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-scan .care-scan-card .care-mico-art,
.care--web .care-v2-scan .care-scan-card .care-v2-scan-ico {
  width: 64px;
  height: 64px;
  padding: 12px;
  border-radius: 16px;
  background: var(--care-v2-primary-soft);
  object-fit: contain;
  flex-shrink: 0;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  color: var(--care-v2-primary);
}

.care--web .care-v2-scan .care-scan-card .care-v2-scan-ico .care-ico {
  width: 36px;
  height: 36px;
}

.care--web .care-v2-scan .care-scan-card__copy {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.care--web .care-v2-scan .care-scan-card__copy strong {
  color: var(--care-v2-navy);
  font-size: 1.1rem;
}

.care--web .care-v2-scan .care-scan-card__copy span {
  color: var(--care-v2-muted);
  font-size: 0.92rem;
  line-height: 1.45;
}

.care--web .care-v2-scan .care-scan-panel {
  padding: 20px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-scan .care-page-intro h1 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy);
  font-weight: 700;
}

/* —— Selected center bar —— */
.care--web .care-selected-center {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  margin-bottom: 16px;
  background: var(--care-v2-primary-mist);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 18%, transparent);
  border-radius: var(--care-v2-radius-md);
}

.care--web .care-selected-center .care-center__logo,
.care--web .care-selected-center .care-avatar--practice {
  width: 40px !important;
  height: 40px !important;
  border-radius: 12px !important;
}

/* —— Responsive —— */
@media (max-width: 960px) {
  .care--web .care-v2-near-layout {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-lab .care-v2-lab-layout,
  .care--web .care-v2-rad-popular-row,
  .care--web .care-v2-cart-layout,
  .care--web .care-v2-rad-hero__inner {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-rad-modalities,
  .care--web .care-v2-rad-popular__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .care--web .care-v2-lab .care-v2-lab-promo,
  .care--web .care-v2-cart-summary {
    position: static;
  }

  .care--web .care-v2-cart-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 8px;
  }

  .care--web .care-v2-cart-steps::before {
    display: none;
  }

  .care--web .care-store .care-service-tiles {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px) {
  .care--web .care-v2-practices .care-page__body,
  .care--web .care-v2-near .care-page__body,
  .care--web .care-v2-lab .care-page__body,
  .care--web .care-v2-rad .care-page__body,
  .care--web .care-v2-scan .care-page__body,
  .care--web .care-v2-cart .care-page__body {
    padding-inline: 16px;
  }

  .care--web .care-v2-rad-browse {
    padding-inline: 16px;
  }

  .care--web .care-v2-rad-modalities,
  .care--web .care-v2-rad-popular__grid,
  .care--web .care-v2-lab .care-v2-lab-cards {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-cart-line {
    grid-template-columns: 56px minmax(0, 1fr);
  }

  .care--web .care-v2-cart-line__qty,
  .care--web .care-v2-cart-line__price {
    grid-column: 2;
    justify-self: start;
  }

  .care--web .care-v2-scan .care-scan-card {
    flex-direction: column;
    align-items: flex-start;
  }

  .care--web .care-store .care-service-tiles {
    grid-template-columns: 1fr;
  }
}

/* —— Center gate v2 (pharmacy / lab / radiology) —— */
.care--web .care-v2-center-gate.care-center-gate {
  padding: 0;
  border-radius: 2px;
  overflow: hidden;
  border: 1px solid var(--care-v2-line);
  box-shadow: none;
}

.care--web .care-v2-center-gate__hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 300px);
  grid-gap: 20px;
  gap: 20px;
  align-items: center;
  padding: 28px 28px 20px;
  background: linear-gradient(180deg, #f7fbff 0%, #fff 100%);
}

.care--web .care-v2-center-gate__badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  margin-bottom: 10px;
  border-radius: 2px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.care--web .care-v2-center-gate__title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.45rem, 2.2vw, 1.85rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-center-gate__lead {
  margin: 0;
  max-width: 44rem;
  color: var(--care-v2-muted);
  line-height: 1.55;
  font-size: 0.95rem;
}

.care--web .care-v2-center-gate__art {
  width: 100%;
  height: 220px;
  max-height: 220px;
  object-fit: cover;
  object-position: center 28%;
  justify-self: end;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
}

.care--web .care-v2-center-gate__toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  padding: 0 28px 20px;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.care--web .care-v2-center-gate__search {
  flex: 1 1 260px;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
  box-shadow: none;
}

.care--web .care-v2-center-gate__search:focus-within {
  border-color: var(--care-v2-primary);
}

.care--web .care-v2-center-gate__search .care-action-icon,
.care--web .care-v2-center-gate__search svg {
  width: 20px;
  height: 20px;
  color: var(--care-v2-primary);
  flex-shrink: 0;
}

.care--web .care-v2-center-gate__search input {
  flex: 1 1;
  min-width: 0;
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent;
  font: inherit;
  font-size: 0.98rem;
  color: var(--care-v2-ink);
}

.care--web .care-v2-center-gate__toggle {
  display: inline-flex;
  gap: 0;
  padding: 0;
  border-radius: 2px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  overflow: hidden;
  box-shadow: none;
}

.care--web .care-v2-center-gate__toggle button {
  border: 0;
  border-radius: 0;
  background: transparent;
  min-height: 44px;
  padding: 0 16px;
  font: inherit;
  font-weight: 600;
  font-size: 0.88rem;
  color: var(--care-v2-muted);
  cursor: pointer;
}

.care--web .care-v2-center-gate__toggle button + button {
  -webkit-border-start: 1px solid var(--care-v2-line);
          border-inline-start: 1px solid var(--care-v2-line);
}

.care--web .care-v2-center-gate__toggle button.is-active {
  background: var(--care-v2-primary);
  color: #fff;
  box-shadow: none;
}

.care--web .care-v2-center-gate__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  grid-gap: 12px;
  gap: 12px;
  padding: 8px 28px 28px;
}

.care--web .care-v2-center-card {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
  box-shadow: none;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.care--web .care-v2-center-card:hover {
  transform: none;
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  box-shadow: none;
}

.care--web .care-v2-center-card__top {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  min-width: 0;
}

.care--web .care-v2-center-card__logo,
.care--web .care-v2-center-card__logo.care-center__logo,
.care--web .care-v2-center-card__logo.care-avatar--practice {
  width: 96px !important;
  height: 96px !important;
  border-radius: 2px !important;
  object-fit: cover;
  background: var(--care-v2-primary-soft);
  border: 1px solid var(--care-v2-line);
  flex-shrink: 0;
}

.care--web .care-v2-center-card__meta {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.care--web .care-v2-center-card__name {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.25;
}

.care--web .care-v2-center-card__addr {
  font-size: 0.86rem;
  color: var(--care-v2-muted);
  line-height: 1.4;
}

.care--web .care-v2-center-card__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  margin-top: 4px;
}

.care--web .care-v2-center-card__dist {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--care-v2-primary);
}

.care--web .care-v2-center-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: auto;
}

.care--web .care-v2-center-card__primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border: 0;
  border-radius: 2px;
  background: var(--care-v2-primary);
  color: #fff;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  box-shadow: none;
}

.care--web .care-v2-center-card__ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: #fff;
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}

.care--web .care-v2-center-gate__empty {
  padding: 0 28px 24px;
  color: var(--care-v2-muted);
}

.care--web .care-v2-lab-gate,
.care--web .care-v2-rad-card:has(.care-v2-center-gate),
.care--web .care-v2-pharmacy .care-v2-center-gate {
  margin-top: 8px;
}

.care--web .care-v2-practices .care-v2-tool-pill {
  border-radius: 999px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  min-height: 40px;
  padding: 0 14px;
  font-weight: 600;
  color: var(--care-v2-navy);
}

.care--web .care-v2-practices .care-v2-tool-pill.is-on,
.care--web .care-v2-practices .care-v2-tool-pill[aria-pressed='true'] {
  background: var(--care-v2-primary-soft);
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

@media (max-width: 800px) {
  .care--web .care-v2-center-gate__hero {
    grid-template-columns: 1fr;
    padding: 22px 18px 12px;
  }

  .care--web .care-v2-center-gate__art {
    max-height: 140px;
    justify-self: center;
  }

  .care--web .care-v2-center-gate__toolbar,
  .care--web .care-v2-center-gate__grid {
    padding-inline: 18px;
  }
}


/**
 * MedCare cart page — clinic rail + stage + payment.
 * Loaded from CareLayout after centers; sharp.css still clamps radii.
 */

.care--web .care-v2-cart .care-page__body {
  max-width: 1180px;
  margin: 0 auto;
  padding: 24px 24px 72px;
}

/* —— Hero —— */
.care--web .care-v2-cart-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  grid-gap: 28px;
  gap: 28px;
  align-items: stretch;
  margin: 0 0 28px;
  min-height: 220px;
  overflow: hidden;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--care-v2-primary-mist) 70%, white) 0%, var(--care-v2-surface) 55%);
}

.care--web .care-v2-cart-hero__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 28px 8px 28px 28px;
}

.care--web .care-v2-cart-hero__eyebrow {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--care-v2-primary);
}

.care--web .care-v2-cart-hero .care-v2-title {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.85rem, 3vw, 2.35rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-cart-lead {
  margin: 0;
  max-width: 42ch;
  color: var(--care-v2-muted);
  font-size: 0.98rem;
  line-height: 1.55;
}

.care--web .care-v2-cart-hero__visual {
  position: relative;
  min-height: 220px;
}

.care--web .care-v2-cart-hero__visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.care--web .care-v2-cart-hero__visual::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, color-mix(in srgb, var(--care-v2-surface) 55%, transparent), transparent 38%);
  pointer-events: none;
}

/* —— Journey steps (lightweight theme icons) —— */
.care--web .care-v2-cart-journey {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  list-style: none;
  margin: 0 0 28px;
  padding: 0;
}

.care--web .care-v2-cart-journey li {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
  color: var(--care-v2-muted);
}

.care--web .care-v2-cart-journey li.is-active {
  border-color: color-mix(in srgb, var(--care-v2-primary) 45%, var(--care-v2-line));
  color: var(--care-v2-navy);
  background: color-mix(in srgb, var(--care-v2-primary-mist) 55%, var(--care-v2-surface));
}

.care--web .care-v2-cart-journey__media {
  position: relative;
  width: 52px;
  height: 52px;
  flex-shrink: 0;
}

.care--web .care-v2-cart-journey__ico {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 2px;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 18%, var(--care-v2-line));
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-primary);
}

.care--web .care-v2-cart-journey__ico .care-ico {
  width: 24px;
  height: 24px;
}

.care--web .care-v2-cart-journey li.is-active .care-v2-cart-journey__ico {
  border-color: color-mix(in srgb, var(--care-v2-primary) 40%, transparent);
  background: color-mix(in srgb, var(--care-v2-primary) 14%, white);
  color: var(--care-v2-primary);
}

.care--web .care-v2-cart-journey__media em {
  position: absolute;
  inset-inline-end: -4px;
  top: -4px;
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  border: 2px solid var(--care-v2-surface);
  background: var(--care-v2-navy);
  color: #fff;
  font-style: normal;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1;
}

.care--web .care-v2-cart-journey li.is-active .care-v2-cart-journey__media em {
  background: var(--care-v2-primary);
}

.care--web .care-v2-cart-journey strong {
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.3;
  color: inherit;
}

/* —— Empty —— */
.care--web .care-v2-cart-empty--rich {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  grid-gap: 0;
  gap: 0;
  padding: 0;
  overflow: hidden;
  text-align: start;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
}

.care--web .care-v2-cart-empty__visual {
  min-height: 280px;
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-cart-empty__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care--web .care-v2-cart-empty__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  padding: 32px 28px;
}

.care--web .care-v2-cart-empty__copy h2 {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: 1.55rem;
  color: var(--care-v2-navy);
}

.care--web .care-v2-cart-empty__copy p {
  margin: 0;
  max-width: 40ch;
  color: var(--care-v2-muted);
  line-height: 1.55;
}

.care--web .care-v2-cart-empty__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
}

/* —— Split shell —— */
.care--web .care-v2-cart-shell {
  display: grid;
  grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
}

.care--web .care-v2-cart-rail {
  position: -webkit-sticky;
  position: sticky;
  top: 92px;
  padding: 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
}

.care--web .care-v2-cart-rail__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 12px;
  padding: 0 4px 10px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-cart-rail__head strong {
  color: var(--care-v2-navy);
  font-size: 0.95rem;
}

.care--web .care-v2-cart-rail__head span {
  color: var(--care-v2-muted);
  font-size: 0.8rem;
  font-weight: 600;
}

.care--web .care-v2-cart-rail__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.care--web .care-v2-cart-rail__card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  width: 100%;
  margin: 0;
  padding: 12px 12px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: color-mix(in srgb, var(--care-v2-surface) 88%, #eef4ff);
  color: inherit;
  font: inherit;
  text-align: start;
  cursor: pointer;
  transition:
    border-color 140ms ease,
    background 140ms ease,
    box-shadow 140ms ease;
}

.care--web .care-v2-cart-rail__card:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  background: var(--care-v2-surface);
}

.care--web .care-v2-cart-rail__card.is-active {
  border-color: var(--care-v2-primary);
  background: var(--care-v2-surface);
  box-shadow: inset 3px 0 0 var(--care-v2-primary);
}

.care--web .care-v2-cart-rail__name {
  color: var(--care-v2-navy);
  font-weight: 700;
  font-size: 0.95rem;
  line-height: 1.3;
}

.care--web .care-v2-cart-rail__meta {
  color: var(--care-v2-muted);
  font-size: 0.82rem;
}

.care--web .care-v2-cart-rail__kinds {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.care--web .care-v2-cart-rail__kinds em {
  font-style: normal;
  padding: 3px 8px;
  border-radius: 2px;
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-primary);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.care--web .care-v2-cart-rail__kinds em[data-kind='lab'] {
  background: color-mix(in srgb, #0d9488 14%, white);
  color: #0f766e;
}

.care--web .care-v2-cart-rail__kinds em[data-kind='radiology'] {
  background: color-mix(in srgb, #0369a1 12%, white);
  color: #075985;
}

.care--web .care-v2-cart-rail__kinds em[data-kind='pharmacy'] {
  background: color-mix(in srgb, var(--care-v2-primary) 14%, white);
  color: var(--care-v2-primary);
}

/* —— Stage —— */
.care--web .care-v2-cart-stage {
  min-width: 0;
}

.care--web .care-v2-cart-stage__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
  padding: 18px 18px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--care-v2-primary-mist) 55%, white), var(--care-v2-surface));
}

.care--web .care-v2-cart-stage__eyebrow {
  margin: 0 0 4px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-v2-primary);
}

.care--web .care-v2-cart-stage__head h2 {
  margin: 0 0 4px;
  font-family: var(--care-v2-font-display);
  font-size: 1.35rem;
  color: var(--care-v2-navy);
}

.care--web .care-v2-cart-stage__head p {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

.care--web .care-v2-cart-stage__clinic {
  flex-shrink: 0;
  font-weight: 600;
}

.care--web .care-v2-cart-stage__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  grid-gap: 18px;
  gap: 18px;
  align-items: start;
}

.care--web .care-v2-cart-stage__items {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
}

.care--web .care-v2-cart-panel {
  padding: 14px 14px 12px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
}

.care--web .care-v2-cart-panel__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-cart-panel__head h3 {
  margin: 0;
  font-size: 0.82rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--care-v2-navy);
}

.care--web .care-v2-cart-panel__head span {
  display: block;
  margin-top: 2px;
  color: var(--care-v2-muted);
  font-size: 0.8rem;
  text-transform: none;
  letter-spacing: 0;
}

.care--web .care-v2-cart-panel__head strong {
  color: var(--care-v2-navy);
  font-size: 1rem;
}

.care--web .care-v2-cart-panel[data-kind='lab'] {
  -webkit-border-start: 3px solid #0d9488;
          border-inline-start: 3px solid #0d9488;
}

.care--web .care-v2-cart-panel[data-kind='radiology'] {
  -webkit-border-start: 3px solid #0284c7;
          border-inline-start: 3px solid #0284c7;
}

.care--web .care-v2-cart-panel[data-kind='pharmacy'] {
  -webkit-border-start: 3px solid var(--care-v2-primary);
          border-inline-start: 3px solid var(--care-v2-primary);
}

/* —— Lines —— */
.care--web .care-v2-cart-lines {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.care--web .care-v2-cart-line--rich {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  grid-template-areas:
    'thumb body price'
    'thumb body remove';
  grid-gap: 8px 14px;
  gap: 8px 14px;
  align-items: center;
  padding: 12px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: color-mix(in srgb, var(--care-v2-surface) 92%, #f3f7ff);
}

.care--web .care-v2-cart-line--qty {
  grid-template-columns: 72px minmax(0, 1fr) auto auto;
  grid-template-areas: 'thumb body qty price';
}

.care--web .care-v2-cart-line__thumb {
  grid-area: thumb;
  width: 72px;
  height: 72px;
  border-radius: 2px;
  overflow: hidden;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-cart-line__thumb img,
.care--web .care-v2-cart-line__thumb .care-mico {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.care--web .care-v2-cart-line__body {
  grid-area: body;
  min-width: 0;
}

.care--web .care-v2-cart-line__body strong {
  display: block;
  color: var(--care-v2-navy);
  font-size: 0.98rem;
  line-height: 1.35;
}

.care--web .care-v2-cart-line__body span {
  display: block;
  margin-top: 4px;
  color: var(--care-v2-muted);
  font-size: 0.82rem;
  line-height: 1.4;
}

.care--web .care-v2-cart-line__qty {
  grid-area: qty;
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  overflow: hidden;
  background: var(--care-v2-surface);
}

.care--web .care-v2-cart-line__qty button {
  width: 34px;
  height: 34px;
  border: 0;
  background: transparent;
  color: var(--care-v2-navy);
  font-size: 1.05rem;
  cursor: pointer;
}

.care--web .care-v2-cart-line__qty button:hover {
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-cart-line__qty span {
  min-width: 28px;
  text-align: center;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-cart-line__price {
  grid-area: price;
  color: var(--care-v2-navy);
  font-size: 1rem;
  font-weight: 700;
  min-width: 4.5rem;
  text-align: end;
}

.care--web .care-v2-cart-line__remove {
  grid-area: remove;
  justify-self: end;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--care-v2-muted);
  font: inherit;
  font-size: 0.78rem;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}

.care--web .care-v2-cart-line__remove:hover {
  color: var(--care-v2-primary);
}

/* —— Payment —— */
.care--web .care-v2-cart-pay {
  position: -webkit-sticky;
  position: sticky;
  top: 92px;
  overflow: hidden;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
}

.care--web .care-v2-cart-pay__visual {
  display: grid;
  place-items: center;
  height: 88px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--care-v2-primary-mist) 80%, white), var(--care-v2-surface));
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-cart-pay__ico {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 2px;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
  background: var(--care-v2-surface);
  color: var(--care-v2-primary);
}

.care--web .care-v2-cart-pay__ico .care-ico {
  width: 24px;
  height: 24px;
}

.care--web .care-v2-cart-pay__panel {
  padding: 18px 16px 16px;
}

.care--web .care-v2-cart-pay__panel h3 {
  margin: 0 0 8px;
  color: var(--care-v2-navy);
  font-size: 1.05rem;
}

.care--web .care-v2-cart-pay__note {
  margin: 0 0 14px;
  color: var(--care-v2-muted);
  font-size: 0.84rem;
  line-height: 1.45;
}

.care--web .care-v2-cart-pay__panel dl {
  margin: 0 0 16px;
}

.care--web .care-v2-cart-pay__panel dl > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-cart-pay__panel dt {
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

.care--web .care-v2-cart-pay__panel dd {
  margin: 0;
  font-weight: 700;
  color: var(--care-v2-ink);
}

.care--web .care-v2-cart-pay__total dt,
.care--web .care-v2-cart-pay__total dd {
  color: var(--care-v2-navy);
  font-size: 1.02rem;
}

.care--web .care-v2-cart-pay__actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.care--web .care-v2-cart-pay__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin: 0;
  padding: 0 14px;
  border: 1px solid var(--care-v2-primary);
  border-radius: 2px;
  background: var(--care-v2-surface);
  color: var(--care-v2-primary);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.care--web .care-v2-cart-pay__cta:hover {
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-cart-pay__cta--primary {
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  border-color: var(--care-v2-primary);
}

.care--web .care-v2-cart-pay__cta--primary:hover {
  filter: brightness(1.04);
}

.care--web .care-v2-cart-pay__continue {
  display: inline-flex;
  justify-content: center;
  width: 100%;
  margin-top: 12px;
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
}

.care--web .care-v2-cart-pay__continue:hover {
  text-decoration: underline;
}

@media (max-width: 980px) {
  .care--web .care-v2-cart-hero {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-cart-hero__copy {
    padding: 22px 20px 8px;
  }

  .care--web .care-v2-cart-hero__visual {
    min-height: 180px;
  }

  .care--web .care-v2-cart-hero__visual::after {
    background: linear-gradient(0deg, var(--care-v2-surface), transparent 40%);
  }

  .care--web .care-v2-cart-journey {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-cart-shell,
  .care--web .care-v2-cart-stage__grid,
  .care--web .care-v2-cart-empty--rich {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-cart-rail,
  .care--web .care-v2-cart-pay {
    position: static;
  }

  .care--web .care-v2-cart-rail__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    grid-gap: 8px;
    gap: 8px;
  }
}

@media (max-width: 640px) {
  .care--web .care-v2-cart .care-page__body {
    padding-inline: 16px;
  }

  .care--web .care-v2-cart-line--rich,
  .care--web .care-v2-cart-line--qty {
    grid-template-columns: 56px minmax(0, 1fr);
    grid-template-areas:
      'thumb body'
      'thumb price'
      'qty qty'
      'remove remove';
  }

  .care--web .care-v2-cart-line__thumb {
    width: 56px;
    height: 56px;
  }

  .care--web .care-v2-cart-line__price,
  .care--web .care-v2-cart-line__qty,
  .care--web .care-v2-cart-line__remove {
    justify-self: start;
  }

  .care--web .care-v2-cart-empty__copy {
    padding: 22px 18px;
  }
}

/**
 * MedCare collage — clinic / practice marketplace detail.
 * Loaded from CareLayout after care-medcare-centers.css.
 * Scope: .care--web .care-mc-clinic
 * Sharp MedCare: 2px radius, flat surfaces, Poppins / navy / primary.
 */

.care--web .care-mc-clinic {
  background: var(--care-v2-paper);
}

.care--web .care-mc-clinic > .care-v2-practice-hero,
.care--web .care-mc-clinic .care-v2-practice-tabs-wrap {
  display: none !important;
}

.care--web .care-v2-practice-detail.care-mc-clinic > .care-mc-clinic-crumb-wrap.care-page__body {
  max-width: 1200px;
  margin: 0 auto;
  padding: 16px 24px 12px;
}

.care--web .care-v2-practice-detail.care-mc-clinic > .care-mc-clinic-body.care-page__body {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 72px;
}

/* —— Building hero —— */
.care--web .care-mc-clinic-hero {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: var(--care-v2-primary-mist);
}

.care--web .care-mc-clinic-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.care--web .care-mc-clinic-hero__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care--web .care-mc-clinic-hero__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(11, 31, 58, 0.18) 0%,
    rgba(11, 31, 58, 0.55) 70%,
    rgba(11, 31, 58, 0.72) 100%
  );
  pointer-events: none;
}

.care--web .care-mc-clinic-hero__stage {
  position: relative;
  z-index: 1;
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
  padding: 40px 0 32px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
}

.care--web .care-mc-clinic-hero__card {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  max-width: min(720px, 100%);
  padding: 18px 20px;
  border-radius: 2px;
  background: color-mix(in srgb, #fff 94%, transparent);
  border: 1px solid color-mix(in srgb, #fff 55%, var(--care-v2-line));
  box-shadow: none;
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}

.care--web .care-mc-clinic-hero__logo,
.care--web .care-mc-clinic-hero__logo.care-center__logo,
.care--web .care-mc-clinic-hero__logo.care-avatar--practice {
  width: 112px !important;
  height: 112px !important;
  border-radius: 2px !important;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--care-v2-primary-mist);
  border: 1px solid var(--care-v2-line);
}

.care--web .care-mc-clinic-hero__copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.care--web .care-mc-clinic-hero__copy h1 {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.45rem, 2.4vw, 1.9rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
  line-height: 1.2;
}

.care--web .care-mc-clinic-hero__rating {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care--web .care-mc-clinic-hero__rating .care-rating__star,
.care--web .care-mc-clinic-hero__rating .care-rating__star.is-on {
  color: #f5a623;
}

.care--web .care-mc-clinic-hero__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.care--web .care-mc-clinic-hero__tags li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 2px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-size: 0.78rem;
  font-weight: 600;
}

.care--web .care-mc-clinic-hero__tags .care-ico {
  width: 14px;
  height: 14px;
  color: var(--care-v2-primary);
}

.care--web .care-mc-clinic-hero__hours {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.86rem;
  font-weight: 500;
}

.care--web .care-mc-clinic-hero__hours.is-open {
  color: #15803d;
}

.care--web .care-mc-clinic-hero__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  flex-shrink: 0;
}

.care--web .care-mc-clinic-hero__cta {
  flex-shrink: 0;
  padding-bottom: 4px;
}

.care--web .care-mc-clinic-book {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px !important;
  border-radius: 2px !important;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 700;
  box-shadow: none !important;
  text-decoration: none;
  white-space: nowrap;
  border: 0;
}

.care--web .care-mc-clinic-book:hover {
  background: var(--care-v2-primary-hover) !important;
  text-decoration: none;
}

/* —— Sticky section nav —— */
.care--web .care-mc-clinic-tabs-wrap {
  background: var(--care-v2-surface);
  border-bottom: 1px solid var(--care-v2-line);
  box-shadow: none;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 5;
}

.care--web .care-mc-clinic-tabs {
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
  display: flex;
  gap: 4px;
  overflow-x: auto;
  scrollbar-width: none;
}

.care--web .care-mc-clinic-tabs::-webkit-scrollbar {
  display: none;
}

.care--web .care-mc-clinic-tabs a,
.care--web .care-mc-clinic-tabs button {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  padding: 8px 14px;
  border: 0;
  border-radius: 2px;
  background: transparent;
  color: var(--care-v2-muted);
  font: inherit;
  font-weight: 600;
  font-size: 0.92rem;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.care--web .care-mc-clinic-tabs a:hover,
.care--web .care-mc-clinic-tabs button:hover {
  color: var(--care-v2-navy);
  background: var(--care-v2-primary-mist);
  text-decoration: none;
}

.care--web .care-mc-clinic-tabs a.is-active,
.care--web .care-mc-clinic-tabs button.is-active {
  color: var(--care-v2-primary);
  background: var(--care-v2-primary-soft);
}

/* —— Two-column layout —— */
.care--web .care-mc-clinic-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  grid-gap: 28px;
  gap: 28px;
  align-items: start;
}

.care--web .care-mc-clinic-main {
  display: flex;
  flex-direction: column;
  gap: 40px;
  min-width: 0;
}

.care--web .care-mc-clinic-section {
  scroll-margin-top: 72px;
}

.care--web .care-mc-clinic-section__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.care--web .care-mc-clinic-section__title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  letter-spacing: -0.02em;
}

.care--web .care-mc-clinic-section__head .care-mc-clinic-section__title {
  margin-bottom: 0;
}

.care--web .care-mc-clinic-section__lead {
  margin: 6px 0 16px;
  color: var(--care-v2-muted);
  font-size: 0.95rem;
  line-height: 1.55;
  max-width: 48rem;
}

.care--web .care-mc-clinic-section__head .care-mc-clinic-section__lead {
  margin-bottom: 0;
}

.care--web .care-mc-clinic-link {
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  white-space: nowrap;
}

.care--web .care-mc-clinic-link:hover {
  text-decoration: underline;
}

.care--web .care-mc-clinic-squircle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 2px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  flex-shrink: 0;
}

.care--web .care-mc-clinic-squircle .care-ico {
  width: 22px;
  height: 22px;
  color: var(--care-v2-primary);
  fill: none !important;
  stroke: currentColor;
}

.care--web .care-mc-clinic-squircle img,
.care--web .care-mc-clinic-features img,
.care--web .care-mc-clinic-services img,
.care--web .care-mc-clinic-contact img {
  display: none !important;
}

.care--web .care-mc-clinic-squircle--sm {
  width: 36px;
  height: 36px;
}

.care--web .care-mc-clinic-squircle--sm .care-ico {
  width: 18px;
  height: 18px;
}

.care--web .care-mc-clinic-features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.care--web .care-mc-clinic-features li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 2px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  box-shadow: none;
  color: var(--care-v2-navy);
  font-weight: 600;
  font-size: 0.9rem;
}

.care--web .care-mc-clinic-services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px 16px;
  gap: 10px 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.care--web .care-mc-clinic-service {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 10px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  text-align: start;
  cursor: pointer;
  color: var(--care-v2-navy);
  border-radius: 2px;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.care--web .care-mc-clinic-service:hover {
  background: var(--care-v2-primary-mist);
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
}

.care--web .care-mc-clinic-service strong {
  font-size: 0.95rem;
  font-weight: 600;
}

/* Doctor + marketplace grids */
.care--web .care-mc-clinic-doc-grid,
.care--web .care-mc-clinic-mkt-grid {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.care--web .care-mc-clinic-pkg-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.care--web .care-mc-clinic-pkg {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  padding: 16px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.care--web .care-mc-clinic-pkg:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  background: var(--care-v2-primary-mist);
}

.care--web .care-mc-clinic-pkg strong {
  color: var(--care-v2-navy);
  font-size: 1rem;
}

.care--web .care-mc-clinic-pkg span {
  color: var(--care-v2-muted);
  font-size: 0.86rem;
  line-height: 1.4;
}

.care--web .care-mc-clinic-pkg__price {
  font-style: normal;
  font-weight: 700;
  color: var(--care-v2-navy);
  font-size: 1.05rem;
}

.care--web .care-mc-clinic-pkg__cta {
  color: var(--care-v2-primary) !important;
  font-weight: 600;
}

.care--web .care-mc-clinic-tokens {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care--web .care-mc-clinic-tokens li {
  padding: 12px 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font-size: 0.92rem;
}

/* Hours */
.care--web .care-mc-clinic-hours {
  margin: 0 0 18px;
  padding: 14px 16px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
}

.care--web .care-mc-clinic-hours__title {
  margin: 0 0 10px;
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-mc-clinic-hours__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.care--web .care-mc-clinic-hours__list li {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-size: 0.88rem;
  color: var(--care-v2-ink);
}

.care--web .care-mc-clinic-hours__list strong {
  font-weight: 600;
  color: var(--care-v2-navy);
  white-space: nowrap;
}

/* Reviews */
.care--web .care-mc-clinic-reviews {
  display: grid;
  grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
  padding: 18px;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: none;
}

.care--web .care-mc-clinic-reviews__summary {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.care--web .care-mc-clinic-reviews__score {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-start;
}

.care--web .care-mc-clinic-reviews__score > strong {
  font-size: 2.4rem;
  line-height: 1;
  color: var(--care-v2-navy);
  font-weight: 700;
}

.care--web .care-mc-clinic-reviews__score > span {
  color: var(--care-v2-muted);
  font-size: 0.85rem;
}

.care--web .care-mc-clinic-reviews__bars {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
}

.care--web .care-mc-clinic-reviews__bars li {
  display: grid;
  grid-template-columns: 16px 1fr;
  grid-gap: 8px;
  gap: 8px;
  align-items: center;
  color: var(--care-v2-muted);
  font-size: 0.8rem;
}

.care--web .care-mc-clinic-reviews__bars i {
  display: block;
  height: 8px;
  border-radius: 2px;
  background: var(--care-v2-primary-mist);
  overflow: hidden;
}

.care--web .care-mc-clinic-reviews__bars b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #f5a623;
}

.care--web .care-mc-clinic-reviews__cards {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.care--web .care-mc-clinic-review {
  padding: 14px 16px;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  box-shadow: none;
}

.care--web .care-mc-clinic-review__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}

.care--web .care-mc-clinic-review__avatar {
  width: 40px;
  height: 40px;
  border-radius: 2px;
  display: inline-grid;
  place-items: center;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-size: 0.8rem;
  font-weight: 700;
  flex-shrink: 0;
}

.care--web .care-mc-clinic-review__meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.care--web .care-mc-clinic-review__meta strong {
  color: var(--care-v2-navy);
  font-size: 0.95rem;
  font-weight: 700;
}

.care--web .care-mc-clinic-review__meta em {
  font-style: normal;
  color: var(--care-v2-muted);
  font-size: 0.8rem;
}

.care--web .care-mc-clinic-review .care-rating--stars {
  display: inline-flex;
  margin-bottom: 8px;
}

.care--web .care-mc-clinic-review .care-rating--stars .care-rating__stars {
  display: inline-flex;
  gap: 2px;
}

.care--web .care-mc-clinic-review .care-rating--stars .care-rating__star {
  color: #d0d7e2;
  font-size: 0.85rem;
  line-height: 1;
}

.care--web .care-mc-clinic-review .care-rating--stars .care-rating__star.is-on {
  color: #f5a623;
}

.care--web .care-mc-clinic-review .care-rating__score {
  font-size: 0;
  gap: 0;
}

.care--web .care-mc-clinic-review .care-rating__score > :not(.care-rating__stars) {
  display: none;
}

.care--web .care-mc-clinic-review p {
  margin: 0;
  color: var(--care-v2-ink, #0f172a);
  font-size: 0.9rem;
  line-height: 1.5;
}

.care--web .care-mc-clinic-review__helpful {
  display: inline-block;
  margin-top: 10px;
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--care-v2-muted);
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  padding: 4px 10px;
  background: var(--care-v2-paper);
}

.care--web .care-mc-clinic-map {
  display: block;
  max-width: 100%;
  border-radius: 2px;
  overflow: hidden;
  border: 1px solid var(--care-v2-line);
}

/* —— Sidebar —— */
.care--web .care-mc-clinic-side {
  position: -webkit-sticky;
  position: sticky;
  top: 72px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.care--web .care-mc-clinic-side__card {
  padding: 18px;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: none;
}

.care--web .care-mc-clinic-side__book {
  padding: 16px;
}

.care--web .care-mc-clinic-side__book .care-mc-clinic-book {
  width: 100%;
}

.care--web .care-mc-clinic-side__card h2 {
  margin: 0 0 14px;
  font-size: 1rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-mc-clinic-contact {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.care--web .care-mc-clinic-contact li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: var(--care-v2-ink);
  font-size: 0.9rem;
  line-height: 1.4;
}

.care--web .care-mc-clinic-contact a {
  color: var(--care-v2-navy);
  text-decoration: none;
  word-break: break-word;
}

.care--web .care-mc-clinic-contact a:hover {
  color: var(--care-v2-primary);
}

.care--web .care-mc-clinic-side__map .care-map-thumb {
  display: block;
  width: 100%;
  margin-bottom: 10px;
  border-radius: 2px;
  overflow: hidden;
}

.care--web .care-mc-clinic-side__map .care-map-thumb__canvas {
  aspect-ratio: 1;
  min-height: 160px;
}

.care--web .care-mc-clinic-side__map .care-map-thumb__label {
  display: none;
}

/* —— Responsive —— */
@media (max-width: 960px) {
  .care--web .care-mc-clinic-layout {
    grid-template-columns: 1fr;
  }

  .care--web .care-mc-clinic-side {
    position: static;
    order: -1;
  }

  .care--web .care-mc-clinic-hero__stage {
    flex-direction: column;
    align-items: stretch;
  }

  .care--web .care-mc-clinic-hero__cta .care-mc-clinic-book {
    width: 100%;
  }

  .care--web .care-mc-clinic-features {
    grid-template-columns: 1fr;
  }

  .care--web .care-mc-clinic-pkg-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .care--web .care-v2-practice-detail.care-mc-clinic > .care-mc-clinic-crumb-wrap.care-page__body,
  .care--web .care-v2-practice-detail.care-mc-clinic > .care-mc-clinic-body.care-page__body {
    padding-inline: 16px;
  }

  .care--web .care-mc-clinic-hero {
    min-height: 360px;
  }

  .care--web .care-mc-clinic-hero__logo,
  .care--web .care-mc-clinic-hero__logo.care-center__logo,
  .care--web .care-mc-clinic-hero__logo.care-avatar--practice {
    width: 88px !important;
    height: 88px !important;
  }

  .care--web .care-mc-clinic-hero__stage {
    width: calc(100% - 32px);
  }

  .care--web .care-mc-clinic-tabs {
    width: calc(100% - 32px);
  }

  .care--web .care-mc-clinic-hero__card {
    flex-direction: column;
  }

  .care--web .care-mc-clinic-services {
    grid-template-columns: 1fr;
  }

  .care--web .care-mc-clinic-reviews {
    grid-template-columns: 1fr;
  }

  .care--web .care-mc-clinic-reviews__cards {
    gap: 10px;
  }
}

/**
 * MedCare — doctor detail + booking panel (CareDoctorDetailPage).
 * Loaded last from CareLayout; overrides care-design-v2 / care.css under .care--web.
 */

/* —— Layout —— */
.care--web .care-v2-doctor-detail .care-v2-dd {
  grid-template-columns: minmax(0, 1.2fr) minmax(340px, 0.85fr);
  gap: 24px;
  align-items: start;
}

.care--web .care-v2-doctor-detail .care-page__body {
  max-width: 1200px;
  margin: 0 auto;
  padding-inline: 24px;
}

/* —— Profile hero —— */
.care--web .care-v2-doctor-detail .care-v2-dd__profile {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  padding: 20px;
  box-shadow: var(--care-v2-shadow-sm);
  font-family: var(--care-v2-font);
}

.care--web .care-v2-doctor-detail .care-v2-dd__photo {
  display: block;
  width: 100%;
  max-height: none;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-line);
}

.care--web .care-v2-doctor-detail .care-v2-dd__shield {
  left: 18px;
  bottom: -16px;
  width: 48px;
  height: 48px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-navy);
  color: #fff;
  box-shadow: 0 8px 20px rgba(11, 31, 58, 0.28);
}

.care--web .care-v2-doctor-detail .care-v2-dd__name {
  margin: 22px 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.55rem, 2.1vw, 1.95rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctor-detail .care-v2-dd__specialty {
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-v2-doctor-detail .care-v2-dd__clinic {
  color: var(--care-v2-muted);
}

.care--web .care-v2-doctor-detail .care-v2-dd__stats {
  border-color: var(--care-v2-line);
  color: var(--care-v2-ink);
  font-size: 0.9rem;
}

.care--web .care-v2-doctor-detail .care-v2-dd__stats .care-ico {
  color: var(--care-v2-primary);
}

.care--web .care-v2-doctor-detail .care-v2-dd__verified {
  color: var(--care-v2-primary);
  font-weight: 500;
}

/* —— Info tabs / cards —— */
.care--web .care-v2-doctor-detail .care-v2-info-cards {
  margin-top: 18px;
  gap: 12px;
}

.care--web .care-v2-doctor-detail .care-v2-info-card {
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  padding: 18px 16px;
  box-shadow: var(--care-v2-shadow-sm);
  gap: 8px;
}

.care--web .care-v2-doctor-detail .care-v2-info-card strong {
  font-family: var(--care-v2-font-display);
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctor-detail .care-v2-info-card p {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
  line-height: 1.45;
}

.care--web .care-v2-doctor-detail .care-v2-info-card .care-ico {
  color: var(--care-v2-primary);
}

/* —— Booking panel —— */
.care--web .care-v2-doctor-detail .care-v2-book-panel {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-lg);
  box-shadow: var(--care-v2-shadow);
  padding: 22px 20px;
  font-family: var(--care-v2-font);
}

.care--web .care-v2-doctor-detail .care-v2-book-panel > h2 {
  margin: 0 0 6px;
  font-family: var(--care-v2-font-display);
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctor-detail .care-v2-book-panel .care-v2-lead {
  margin: 0 0 18px;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

/* —— Practice pickers —— */
.care--web .care-v2-doctor-detail .care-v2-dd-practices h3 {
  margin: 0 0 10px;
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-doctor-detail .care-practice-picks {
  gap: 10px;
}

.care--web .care-v2-doctor-detail .care-practice-pick {
  border: 1.5px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  background: var(--care-v2-surface);
  padding: 12px 14px;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.care--web .care-v2-doctor-detail .care-practice-pick strong {
  color: var(--care-v2-ink);
  font-weight: 600;
}

.care--web .care-v2-doctor-detail .care-practice-pick span {
  color: var(--care-v2-muted);
}

.care--web .care-v2-doctor-detail .care-practice-pick.is-active {
  border-color: var(--care-v2-primary);
  background: var(--care-v2-primary-soft);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--care-v2-primary) 28%, transparent);
}

.care--web .care-v2-doctor-detail .care-practice-pick .care-link {
  color: var(--care-v2-primary);
  font-size: 0.82rem;
  font-weight: 600;
}

/* —— Week calendar —— */
.care--web .care-v2-dd-weekcal__month {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.care--web .care-v2-dd-weekcal__month strong {
  color: var(--care-v2-navy);
  font-size: 0.92rem;
  font-weight: 700;
}

.care--web .care-v2-dd-weekcal__month .care-link {
  color: var(--care-v2-primary);
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}

.care--web .care-v2-dd-weekcal__month .care-link:disabled,
.care--web .care-v2-dd-weekcal__month .care-link[disabled] {
  opacity: 0.45;
  cursor: default;
}

.care--web .care-v2-dd-weekcal__row {
  display: flex;
  align-items: stretch;
  gap: 8px;
}

.care--web .care-v2-dd-weekcal__row .care-weekcal__nav {
  align-self: center;
  width: 36px;
  height: 36px;
  border: 1.5px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
}

.care--web .care-v2-dd-weekcal__row .care-weekcal__nav:disabled {
  opacity: 0.35;
  cursor: default;
}

.care--web .care-v2-dd-weekcal__row .care-weekcal__grid {
  flex: 1 1;
  min-width: 0;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(64px, 1fr);
  grid-gap: 8px;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 6px;
}

.care--web .care-v2-dd-weekcal .care-weekcal__day {
  position: relative;
  min-width: 64px;
  padding: 10px 6px 14px;
  border: 1.5px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font-family: var(--care-v2-font);
}

.care--web .care-v2-dd-weekcal .care-weekcal__day.is-today:not(.is-selected) {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-dd-weekcal .care-weekcal__day.is-selected {
  border-color: var(--care-v2-primary);
  background: var(--care-v2-surface);
  color: var(--care-v2-primary);
  box-shadow: inset 0 0 0 1px var(--care-v2-primary);
}

.care--web .care-v2-dd-weekcal .care-weekcal__day.is-selected .care-weekcal__dow,
.care--web .care-v2-dd-weekcal .care-weekcal__day.is-selected .care-weekcal__num {
  color: var(--care-v2-primary);
}

.care--web .care-v2-dd-weekcal .care-weekcal__dow {
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care--web .care-v2-dd-weekcal .care-weekcal__num {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--care-v2-ink);
}

/* 8px active dot — MedCare locked */
.care--web .care-v2-dd-weekcal .care-weekcal__today-dot {
  position: absolute;
  bottom: 6px;
  left: 50%;
  transform: translateX(-50%);
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #cbd5e1 !important;
  border: none !important;
  padding: 0 !important;
}

.care--web .care-v2-dd-weekcal .care-weekcal__day.is-selected .care-weekcal__today-dot {
  background: var(--care-v2-primary) !important;
  width: 8px !important;
  height: 8px !important;
}

/* —— Consultation mode toggle —— */
.care--web .care-v2-doctor-detail .care-mode-toggle {
  display: flex;
  gap: 8px;
  margin: 0 0 14px;
}

.care--web .care-v2-doctor-detail .care-mode-toggle button {
  flex: 1 1;
  min-height: 44px;
  border-radius: var(--care-v2-radius-pill);
  border: 1.5px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  font-weight: 600;
  font-family: var(--care-v2-font);
  color: var(--care-v2-ink);
  cursor: pointer;
}

.care--web .care-v2-doctor-detail .care-mode-toggle button.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

/* —— Slot pills —— */
.care--web .care-v2-dd-slot-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
  margin: 0 0 14px;
}

.care--web .care-v2-dd-slot-grid .care-slot {
  min-height: 44px;
  border-radius: var(--care-v2-radius-pill);
  border: 1.5px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font-weight: 600;
  font-family: var(--care-v2-font);
  font-size: 0.88rem;
  cursor: pointer;
}

.care--web .care-v2-dd-slot-grid .care-slot.is-active {
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
}

.care--web .care-v2-dd-slot-grid .care-slot.is-unavailable,
.care--web .care-v2-dd-slot-grid .care-slot:disabled {
  opacity: 0.42;
  cursor: not-allowed;
  text-decoration: line-through;
}

/* —— Empty slots —— */
.care--web .care-v2-doctor-detail .care-slots-empty {
  margin: 0 0 14px;
  padding: 14px 16px;
  border-radius: var(--care-v2-radius);
  border: 1px solid color-mix(in srgb, var(--care-v2-warn) 35%, var(--care-v2-line));
  background: color-mix(in srgb, var(--care-v2-warn) 8%, var(--care-v2-surface));
}

.care--web .care-v2-doctor-detail .care-slots-empty .care-ico {
  color: var(--care-v2-warn);
}

.care--web .care-v2-doctor-detail .care-slots-empty strong {
  color: var(--care-v2-ink);
  font-weight: 700;
}

.care--web .care-v2-doctor-detail .care-slots-empty p {
  color: var(--care-v2-muted);
}

/* —— Visit kind (patient type) —— */
.care--web .care-v2-dd-visit-kind {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
  margin: 16px 0 14px;
}

.care--web .care-v2-dd-visit-kind > button {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 14px;
  border: 1.5px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  background: var(--care-v2-surface);
  text-align: start;
  cursor: pointer;
  font: inherit;
  color: inherit;
}

.care--web .care-v2-dd-visit-kind > button.is-active {
  border-color: var(--care-v2-primary);
  background: var(--care-v2-primary-soft);
  box-shadow: inset 0 0 0 1px var(--care-v2-primary);
}

.care--web .care-v2-dd-radio {
  width: 16px;
  height: 16px;
  border-radius: var(--care-v2-radius-pill);
  border: 2px solid var(--care-v2-line);
  flex: 0 0 auto;
  background: var(--care-v2-surface);
  box-shadow: inset 0 0 0 0 var(--care-v2-primary);
}

.care--web .care-v2-dd-visit-kind > button.is-active .care-v2-dd-radio {
  border-color: var(--care-v2-primary);
  box-shadow: inset 0 0 0 4px var(--care-v2-primary);
}

.care--web .care-v2-dd-visit-kind .care-ico {
  color: var(--care-v2-primary);
}

.care--web .care-v2-dd-visit-kind strong {
  color: var(--care-v2-navy);
}

.care--web .care-v2-dd-visit-kind em {
  color: var(--care-v2-muted);
}

/* —— Book CTA —— */
.care--web .care-v2-doctor-detail .care-v2-btn,
.care--web .care-v2-doctor-detail .care-v2-dd-book-cta {
  width: 100%;
  min-height: 48px;
  margin-top: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border-radius: var(--care-v2-radius-pill) !important;
  border: none;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
  font-family: var(--care-v2-font);
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
  cursor: pointer;
}

.care--web .care-v2-doctor-detail .care-v2-btn:hover:not(:disabled),
.care--web .care-v2-doctor-detail .care-v2-dd-book-cta:hover:not(:disabled) {
  background: var(--care-v2-primary-hover) !important;
}

.care--web .care-v2-doctor-detail .care-v2-btn:disabled,
.care--web .care-v2-doctor-detail .care-v2-dd-book-cta:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
}

.care--web .care-v2-dd-secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 12px 0 0;
  color: var(--care-v2-muted);
  font-size: 0.82rem;
}

.care--web .care-v2-dd-secure .care-ico {
  color: var(--care-v2-primary);
}

/* —— Token booking —— */
.care--web .care-v2-doctor-detail .care-v2-dd-token {
  margin-top: 16px;
}

.care--web .care-v2-doctor-detail .care-v2-dd-token strong {
  color: var(--care-v2-primary);
  font-size: 1.35rem;
}

/* —— Checkout stepper (CarePatientStep from doctor book) —— */
.care--web .care-v2-checkout__steps li.is-done,
.care--web .care-v2-checkout__steps li.is-active {
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-v2-checkout__steps li.is-done::before,
.care--web .care-v2-checkout__steps li.is-active::before {
  border-color: var(--care-v2-primary);
}

.care--web .care-v2-checkout__steps li.is-done::before {
  background: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-checkout__steps li.is-active::before {
  background: var(--care-v2-surface);
  color: var(--care-v2-primary);
}

.care--web .care-v2-checkout__steps li:not(:last-child)::after {
  background: color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
}

.care--web .care-v2-checkout__steps li.is-done:not(:last-child)::after {
  background: var(--care-v2-primary);
}

/* —— Loading skeletons —— */
.care--web .care-v2-dd--loading .care-v2-book-panel {
  position: static;
}

.care--web .care-skel--dd-photo .care-skel--banner {
  border-radius: var(--care-v2-radius-md);
  overflow: hidden;
}

.care--web .care-skel--dd-book {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.care--web .care-skel--dd-book .care-skel__week {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  grid-gap: 8px;
  gap: 8px;
}

.care--web .care-skel--dd-book .care-skel__day {
  height: 72px;
  border-radius: var(--care-v2-radius);
}

.care--web .care-skel--dd-book .care-skel__slots {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 10px;
  gap: 10px;
}

.care--web .care-skel--dd-book .care-skel__slot {
  height: 44px;
  border-radius: var(--care-v2-radius-pill);
}

.care--web .care-skel--dd-book .care-skel__cta {
  height: 48px;
  border-radius: var(--care-v2-radius-pill);
}

@media (max-width: 900px) {
  .care--web .care-v2-doctor-detail .care-v2-dd,
  .care--web .care-v2-dd--loading {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-doctor-detail .care-v2-book-panel {
    position: static;
  }

  .care--web .care-v2-dd-slot-grid,
  .care--web .care-skel--dd-book .care-skel__slots {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .care--web .care-v2-dd-visit-kind {
    grid-template-columns: 1fr;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   MedCare 4-step book flow (collage parity)
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .care-medcare-book .care-book-flow__head {
  margin-bottom: 20px;
}

.care--web .care-medcare-book .care-book-flow__title {
  margin: 0 0 16px;
  font-family: var(--care-v2-font-display, 'Inter', system-ui, sans-serif);
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-book-stepper {
  list-style: none;
  margin: 0;
  padding: 12px 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 8px;
  gap: 8px;
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius-lg, 20px);
  box-shadow: var(--care-v2-shadow-sm, 0 2px 8px rgba(11, 31, 58, 0.06));
}

.care--web .care-book-stepper > li {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.82rem;
  font-weight: 500;
  position: relative;
}

.care--web .care-book-stepper > li:not(:last-child)::after {
  content: '';
  position: absolute;
  inset-inline-end: -4px;
  top: 50%;
  width: 8px;
  height: 2px;
  background: var(--care-v2-line, #e2e8f0);
  transform: translateY(-50%);
}

.care--web .care-book-stepper__num {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  border: 2px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  font-weight: 700;
  font-size: 0.8rem;
}

.care--web .care-book-stepper__label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.care--web .care-book-stepper > li.is-active {
  color: var(--care-v2-primary, #0066ff);
  font-weight: 600;
}

.care--web .care-book-stepper > li.is-active .care-book-stepper__num {
  border-color: var(--care-v2-primary, #0066ff);
  color: var(--care-v2-primary, #0066ff);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--care-v2-primary, #0066ff) 16%, transparent);
}

.care--web .care-book-stepper > li.is-done {
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-book-stepper > li.is-done .care-book-stepper__num {
  background: var(--care-v2-primary, #0066ff);
  border-color: var(--care-v2-primary, #0066ff);
  color: #fff;
}

.care--web .care-book-stepper > li.is-done:not(:last-child)::after {
  background: var(--care-v2-primary, #0066ff);
}

.care--web .care-book-flow__grid {
  display: grid;
  grid-template-columns: minmax(240px, 0.85fr) minmax(0, 1.4fr);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care--web .care-book-doctor-card {
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  padding: 20px;
  box-shadow: none;
  text-align: center;
}

.care--web .care-book-doctor-card__avail {
  display: inline-flex;
  margin: 0 0 10px;
  padding: 4px 8px;
  border: 1px solid color-mix(in srgb, #10b981 35%, var(--care-v2-line, #e2e8f0));
  border-radius: var(--care-v2-radius, 2px);
  background: color-mix(in srgb, #10b981 12%, #fff);
  color: #047857;
  font-size: 0.75rem;
  font-weight: 700;
}

.care--web .care-book-doctor-card__token {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: var(--care-v2-radius, 2px);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 28%, var(--care-v2-line, #e2e8f0));
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 8%, #fff);
  color: var(--care-v2-muted, #64748b);
  font-size: 0.78rem;
  font-weight: 600;
}

.care--web .care-book-doctor-card__token strong {
  color: var(--care-v2-primary, #0066ff);
  font-size: 1.45rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.1;
}

.care--web .care-book-doctor-card__booking {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 12px 0 0;
  padding: 12px;
  border-top: 1px solid var(--care-v2-line, #e2e8f0);
  text-align: start;
  font-size: 0.86rem;
  color: var(--care-v2-muted, #64748b);
  line-height: 1.4;
}

.care--web .care-book-doctor-card__booking strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.care--web .care-book-doctor-card__booking span:first-of-type {
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 650;
  font-size: 0.92rem;
}

.care--web .care-book-doctor-card__photo {
  width: 112px;
  height: 112px;
  border-radius: 999px;
  object-fit: cover;
  margin: 0 auto 14px;
  display: block;
  border: 3px solid var(--care-v2-soft, #ebf5ff);
}

.care--web .care-book-doctor-card__name {
  margin: 0 0 6px;
  font-family: var(--care-v2-font-display, 'Inter', system-ui, sans-serif);
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-book-doctor-card__specialty {
  margin: 0 0 6px;
  color: var(--care-v2-primary, #0066ff);
  font-weight: 600;
  font-size: 0.92rem;
}

.care--web .care-book-doctor-card__chips {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  margin: 0 0 8px;
}

.care--web .care-book-doctor-card__chip {
  display: inline-flex;
  padding: 3px 8px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius, 2px);
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.78rem;
  font-weight: 600;
}

.care--web .care-book-doctor-card__clinic,
.care--web .care-book-doctor-card__rating,
.care--web .care-book-doctor-card__meta {
  margin: 0 0 6px;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.86rem;
  line-height: 1.45;
}

.care--web .care-book-doctor-card__rating em {
  color: #f59e0b;
  font-style: normal;
}

.care--web .care-book-doctor-card__about {
  margin: 8px 0 0;
  padding-top: 10px;
  border-top: 1px solid var(--care-v2-line, #e2e8f0);
  color: var(--care-v2-muted, #64748b);
  font-size: 0.86rem;
  line-height: 1.5;
  text-align: start;
}

.care--web .care-book-doctor-card__fee {
  margin: 12px 0 0;
  padding-top: 12px;
  border-top: 1px solid var(--care-v2-line, #e2e8f0);
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.95rem;
}

.care--web .care-book-flow__about {
  margin-top: 14px;
  padding: 14px;
  border-radius: var(--care-v2-radius, 2px);
  background: var(--care-v2-paper, #f7f9fc);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  font-size: 0.88rem;
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-book-flow__about strong {
  display: block;
  margin-bottom: 6px;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-medcare-book .care-book-flow__panel {
  position: static;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.care--web .care-book-flow__datetime {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  grid-gap: 18px;
  gap: 18px;
}

.care--web .care-book-flow__datetime.is-later-step {
  grid-template-columns: minmax(0, 1fr);
}

.care--web .care-book-flow__datetime.is-later-step .care-book-flow__slots-col {
  min-width: 0;
  width: 100%;
}

.care--web .care-book-flow__cal h3,
.care--web .care-book-flow__slots-col h3,
.care--web .care-book-slot-period h4 {
  margin: 0 0 10px;
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-book-monthcal {
  padding: 12px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-paper, #f7f9fc);
}

.care--web .care-book-monthcal__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}

.care--web .care-book-monthcal__head strong {
  font-size: 0.95rem;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-book-monthcal__nav {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care--web .care-book-monthcal__dows {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  grid-gap: 4px;
  gap: 4px;
  margin-bottom: 6px;
  text-align: center;
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-book-monthcal__grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  grid-gap: 4px;
  gap: 4px;
}

.care--web .care-book-monthcal__day {
  aspect-ratio: 1;
  border: none;
  border-radius: 999px;
  background: transparent;
  color: var(--care-v2-ink, #0f172a);
  font: inherit;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
}

.care--web .care-book-monthcal__day:hover:not(:disabled) {
  background: var(--care-v2-soft, #ebf5ff);
}

.care--web .care-book-monthcal__day.is-selected {
  background: var(--care-v2-primary, #0066ff);
  color: #fff;
}

.care--web .care-book-monthcal__day.is-today:not(.is-selected) {
  box-shadow: inset 0 0 0 2px var(--care-v2-primary, #0066ff);
}

.care--web .care-book-monthcal__day.is-outside,
.care--web .care-book-monthcal__day:disabled {
  opacity: 0.28;
  cursor: default;
}

.care--web .care-book-slot-periods {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.care--web .care-book-slot-period h4 {
  color: var(--care-v2-muted, #64748b);
  font-weight: 600;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.care--web .care-book-flow__nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 8px;
  padding-top: 14px;
  border-top: 1px solid var(--care-v2-line, #e2e8f0);
}

.care--web .care-book-flow__back {
  min-height: 44px;
  padding: 0 20px;
  border-radius: var(--care-v2-radius-pill, 999px);
  background: var(--care-v2-paper, #f7f9fc);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-book-flow__continue {
  width: auto !important;
  min-width: 140px;
  min-height: 48px;
  border-radius: var(--care-v2-radius-pill, 999px) !important;
}

.care--web .care-book-flow__checkout {
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius-lg, 20px);
  padding: 8px;
  box-shadow: var(--care-v2-shadow-sm, 0 2px 8px rgba(11, 31, 58, 0.06));
}

.care--web .care-book-stepper__hit {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: start;
  cursor: pointer;
  border-radius: 12px;
  transition: background 0.2s ease, transform 0.2s ease;
}

.care--web .care-book-stepper__hit:hover {
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 8%, transparent);
}

.care--web .care-book-stepper__hit:focus-visible {
  outline: 2px solid var(--care-v2-primary, #0066ff);
  outline-offset: 2px;
}

.care--web .care-book-flow__stage-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 4px;
}

.care--web .care-book-flow__stage-head h2 {
  margin: 0 0 6px;
}

.care--web .care-book-flow__stage-head .care-v2-lead {
  margin: 0;
}

.care--web .care-book-flow__step-back {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  margin-top: 2px;
  border-radius: 999px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-paper, #f7f9fc);
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.care--web .care-book-flow__step-back:hover:not(:disabled) {
  background: #fff;
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, var(--care-v2-line, #e2e8f0));
  box-shadow: 0 6px 16px rgba(11, 31, 58, 0.08);
  transform: translateX(-2px);
}

.care--web[dir='rtl'] .care-book-flow__step-back:hover:not(:disabled),
.care--web .care--rtl .care-book-flow__step-back:hover:not(:disabled) {
  transform: translateX(2px);
}

.care--web[dir='rtl'] .care-book-flow__step-back span,
.care--web .care--rtl .care-book-flow__step-back span {
  display: inline-block;
  transform: scaleX(-1);
}

.care--web .care-book-flow__step-back:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.care--web .care-book-flow__datetime.is-later-step .care-book-flow__cal {
  display: none;
}

.care--web .care-book-flow__picked-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 16px;
  margin: 0 0 16px;
  padding: 14px 16px;
  border-radius: var(--care-v2-radius-md, 16px);
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 8%, #fff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 18%, transparent);
  color: var(--care-v2-navy, #0b1f3a);
  animation: care-book-stage-in 0.35s ease both;
}

.care--web .care-book-flow__picked-bar > div {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.care--web .care-book-flow__picked-bar strong {
  font-weight: 700;
  font-size: 0.98rem;
}

.care--web .care-book-flow__picked-bar span {
  color: var(--care-v2-muted, #64748b);
  font-size: 0.88rem;
}

.care--web .care-book-flow__picked-bar__mode {
  flex: 0 0 auto;
  padding: 6px 10px;
  border-radius: var(--care-v2-radius, 2px);
  background: #fff;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  color: var(--care-v2-navy, #0b1f3a) !important;
  font-size: 0.8rem !important;
  font-weight: 650;
}

.care--web .care-book-flow__picked-chip {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 12px 0 0;
  padding: 12px 14px;
  border-radius: 14px;
  background: color-mix(in srgb, var(--care-v2-primary, #0066ff) 8%, #fff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 18%, transparent);
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.9rem;
  animation: care-book-stage-in 0.35s ease both;
}

.care--web .care-book-flow__picked-chip strong {
  font-weight: 650;
}

.care--web .care-book-flow__picked-chip span {
  color: var(--care-v2-muted, #64748b);
}

@keyframes care-book-stage-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.care--web .care-book-flow__stage-pane {
  animation: care-book-stage-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.care--web .care-book-flow__stage-pane.is-parked {
  display: none;
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__sheet {
  display: block;
  background: transparent;
  padding: 0;
  border: none;
  box-shadow: none;
  overflow: visible;
  height: auto;
  max-height: none;
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__summary,
.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-v2-checkout__banner {
  display: none;
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__body,
.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__main {
  padding: 0;
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__scroll {
  padding: 0;
  overflow: visible;
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__layout {
  display: block;
  max-width: none;
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-v2-checkout__section-label.is-lead {
  margin: 0 0 12px;
  font-size: 0.95rem;
  font-weight: 650;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__brief {
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: var(--care-v2-radius-md, 16px);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-paper, #f7f9fc);
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__footer {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--care-v2-line, #e2e8f0);
  justify-content: flex-start;
}

.care--web .care-book-flow__slots-col .care-patient-step--embedded .care-patient-step__footer .care-btn {
  width: auto;
  min-width: 140px;
}

.care--web .care-book-flow__patient-pane {
  width: 100%;
  min-width: 0;
}

.care--web .care-book-review {
  display: flex;
  flex-direction: column;
  gap: 14px;
  animation: care-book-stage-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.care--web .care-book-review > h3 {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-book-review__lead {
  margin: -6px 0 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.9rem;
  line-height: 1.45;
}

.care--web .care-book-review__list {
  margin: 0;
  padding: 0;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.care--web .care-book-review__list > div {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  background: var(--care-v2-paper, #f7f9fc);
  border: 1px solid var(--care-v2-line, #e2e8f0);
}

.care--web .care-book-review__list dt {
  margin: 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.78rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  align-self: start;
  padding-top: 2px;
}

.care--web .care-book-review__list dd {
  margin: 0;
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.95rem;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.care--web .care-book-review__list dd strong {
  font-weight: 650;
}

.care--web .care-book-review__list dd span {
  color: var(--care-v2-muted, #64748b);
  font-size: 0.85rem;
}

.care--web .care-book-review__notes {
  white-space: pre-wrap;
  word-break: break-word;
}

.care--web .care-book-review__pay {
  margin-top: 4px;
}

.care--web .care-book-review__nav {
  margin-top: 4px;
}

@media (prefers-reduced-motion: reduce) {
  .care--web .care-book-flow__stage-pane,
  .care--web .care-book-review,
  .care--web .care-book-flow__picked-chip,
  .care--web .care-book-flow__picked-bar,
  .care--web .care-book-flow__step-back:hover:not(:disabled) {
    animation: none;
    transform: none;
  }
}

.care--web .care-patient-step--embedded {
  position: static;
  inset: auto;
  background: transparent;
  display: block;
  padding: 0;
}

.care--web .care-patient-step--embedded .care-patient-step__sheet {
  max-width: none;
  width: 100%;
  margin: 0;
  border-radius: var(--care-v2-radius-md, 16px);
  box-shadow: none;
  max-height: none;
}

.care--web .care-patient-step--embedded .care-v2-checkout__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

@media (max-width: 900px) {
  .care--web .care-book-flow__grid,
  .care--web .care-book-flow__datetime {
    grid-template-columns: 1fr;
  }

  .care--web .care-book-stepper {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .care--web .care-book-stepper > li:not(:last-child)::after {
    display: none;
  }
}

@media (max-width: 560px) {
  .care--web .care-book-stepper__label {
    white-space: normal;
  }

  .care--web .care-book-flow__nav {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .care--web .care-book-flow__continue,
  .care--web .care-book-flow__back {
    width: 100%;
    justify-content: center;
  }
}

/* —— Mobile collage: vertical stepper + full-width slots —— */
@media (max-width: 767px) {
  .care--web .care-medcare-book .care-book-stepper,
  .care--web.care--phone .care-medcare-book .care-book-stepper {
    display: flex;
    flex-direction: column;
    grid-template-columns: none;
    gap: 0;
    padding: 14px 16px;
  }

  .care--web .care-medcare-book .care-book-stepper > li,
  .care--web.care--phone .care-medcare-book .care-book-stepper > li {
    position: relative;
    align-items: flex-start;
    gap: 12px;
    padding: 10px 0 14px;
    min-height: 48px;
  }

  .care--web .care-medcare-book .care-book-stepper > li:not(:last-child)::after,
  .care--web.care--phone .care-medcare-book .care-book-stepper > li:not(:last-child)::after {
    display: block;
    content: '';
    position: absolute;
    inset-inline-start: 13px;
    inset-inline-end: auto;
    top: 38px;
    bottom: 0;
    width: 2px;
    height: auto;
    transform: none;
    background: var(--care-v2-line, #e2e8f0);
  }

  .care--web .care-medcare-book .care-book-stepper > li.is-done:not(:last-child)::after,
  .care--web.care--phone .care-medcare-book .care-book-stepper > li.is-done:not(:last-child)::after {
    background: var(--care-v2-primary, #0066ff);
  }

  .care--web .care-medcare-book .care-book-stepper__label,
  .care--web.care--phone .care-medcare-book .care-book-stepper__label {
    white-space: normal;
    padding-top: 4px;
    font-size: 0.9rem;
    line-height: 1.3;
  }

  .care--web .care-medcare-book .care-book-doctor-card,
  .care--web.care--phone .care-medcare-book .care-book-doctor-card {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    grid-gap: 12px 14px;
    gap: 12px 14px;
    text-align: start;
    align-items: center;
  }

  .care--web .care-medcare-book .care-book-doctor-card__photo,
  .care--web.care--phone .care-medcare-book .care-book-doctor-card__photo {
    width: 72px;
    height: 72px;
    margin: 0;
    grid-row: 1 / span 3;
  }

  .care--web .care-medcare-book .care-book-doctor-card__token,
  .care--web.care--phone .care-medcare-book .care-book-doctor-card__token,
  .care--web .care-medcare-book .care-book-doctor-card__booking,
  .care--web.care--phone .care-medcare-book .care-book-doctor-card__booking,
  .care--web .care-medcare-book .care-book-doctor-card__avail,
  .care--web.care--phone .care-medcare-book .care-book-doctor-card__avail {
    grid-column: 1 / -1;
    align-items: flex-start;
    text-align: start;
  }

  .care--web .care-medcare-book .care-v2-dd-slot-grid,
  .care--web .care-medcare-book .care-slots.care-v2-dd-slot-grid,
  .care--web.care--phone .care-medcare-book .care-v2-dd-slot-grid {
    grid-template-columns: 1fr !important;
    gap: 10px;
  }

  .care--web .care-medcare-book .care-v2-dd-slot-grid .care-slot,
  .care--web.care--phone .care-medcare-book .care-v2-dd-slot-grid .care-slot {
    width: 100%;
    min-height: 48px;
    border-radius: 12px;
  }
}

.care--web.care--phone .care-medcare-book .care-book-stepper {
  display: flex;
  flex-direction: column;
  grid-template-columns: none;
  gap: 0;
  padding: 14px 16px;
}

.care--web.care--phone .care-medcare-book .care-book-stepper > li {
  position: relative;
  align-items: flex-start;
  gap: 12px;
  padding: 10px 0 14px;
  min-height: 48px;
}

.care--web.care--phone .care-medcare-book .care-book-stepper > li:not(:last-child)::after {
  display: block;
  content: '';
  position: absolute;
  inset-inline-start: 13px;
  inset-inline-end: auto;
  top: 38px;
  bottom: 0;
  width: 2px;
  height: auto;
  transform: none;
  background: var(--care-v2-line, #e2e8f0);
}

.care--web.care--phone .care-medcare-book .care-book-stepper > li.is-done:not(:last-child)::after {
  background: var(--care-v2-primary, #0066ff);
}

.care--web.care--phone .care-medcare-book .care-v2-dd-slot-grid {
  grid-template-columns: 1fr !important;
}

.care--web.care--phone .care-medcare-book .care-v2-dd-slot-grid .care-slot {
  width: 100%;
  min-height: 48px;
  border-radius: 12px;
}

/**
 * MedCare — Video, specialties, diseases browse (CareVideoPage, CareSpecialtiesPage, CareDiseasesPage).
 * Loaded last from CareLayout after other care-medcare-*.css.
 */

/* —— Shared browse canvas —— */
.care--web .care-v2-browse {
  background: var(--care-v2-paper);
}

.care--web .care-v2-browse .care-page__body {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 64px;
}

.care--web .care-v2-browse-head {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 24px;
}

.care--web .care-v2-browse-head__icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-primary-soft);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 14%, var(--care-v2-line));
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-browse-head__icon .care-ico {
  width: 28px;
  height: 28px;
  color: var(--care-v2-primary);
}

.care--web .care-v2-browse-head .care-v2-eyebrow {
  margin: 0 0 6px;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-primary);
}

.care--web .care-v2-browse-head .care-v2-title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 2.4vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-browse-head .care-v2-lead {
  margin: 0;
  max-width: 42rem;
  color: var(--care-v2-muted);
  line-height: 1.55;
  font-size: 0.98rem;
}

.care--web .care-v2-browse-meta {
  margin: 0 0 16px;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
}

/* —— Filter bar (browse pages) —— */
.care--web .care-v2-browse .care-filterbar {
  margin-bottom: 20px;
}

.care--web .care-v2-browse .care-filterbar__search {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 4px 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-browse .care-filterbar__search .care-ico,
.care--web .care-v2-browse .care-filterbar__search .care-action-icon {
  width: 20px;
  height: 20px;
  color: var(--care-v2-muted);
  flex-shrink: 0;
}

.care--web .care-v2-browse .care-filterbar__search input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 0.98rem;
  color: var(--care-v2-ink);
  outline: none;
}

.care--web .care-v2-browse .care-filterbar__field select {
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.9rem;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-browse .care-filterbar__toggle.is-active,
.care--web .care-v2-browse .care-filterbar__toggle.has-active {
  border-color: var(--care-v2-primary);
  color: var(--care-v2-primary);
}

.care--web .care-v2-browse .care-filterbar__badge {
  background: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-browse .care-filterbar__clear {
  color: var(--care-v2-primary);
  font-weight: 600;
}

/* —— A–Z letter rail (diseases) —— */
.care--web .care-v2-browse-alpha {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care--web .care-v2-browse-alpha .care-filter {
  min-width: 36px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-browse-alpha .care-filter:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

.care--web .care-v2-browse-alpha .care-filter.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.25);
}

.care--web .care-v2-browse-alpha .care-filter.is-active::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #fff;
  -webkit-margin-end: 6px;
          margin-inline-end: 6px;
  vertical-align: middle;
}

/* —— Specialty / disease list rows —— */
.care--web .care-v2-browse .care-spec-list--browse {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.care--web .care-v2-browse .care-spec-list--browse .care-spec-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  text-decoration: none;
  color: var(--care-v2-ink);
  font-weight: 600;
  font-size: 0.95rem;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.care--web .care-v2-browse .care-spec-list--browse .care-spec-list__item:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  box-shadow: var(--care-v2-shadow);
  transform: translateY(-1px);
}

.care--web .care-v2-browse .care-spec-list--browse .care-spec-list__row {
  display: inline-flex;
  align-items: center;
  gap: 0;
  min-width: 0;
}

.care--web .care-v2-browse .care-spec-list--browse .care-spec-list__row > span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.care--web .care-v2-browse .care-spec-list--browse .care-spec-list__glyph {
  width: 40px;
  height: 40px;
  display: inline-grid;
  place-items: center;
  border-radius: var(--care-v2-radius);
  background: var(--care-v2-primary-soft);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 12%, transparent);
  -webkit-margin-end: 12px;
          margin-inline-end: 12px;
  flex-shrink: 0;
}

.care--web .care-v2-browse .care-spec-list--browse .care-spec-list__glyph .care-ico {
  width: 22px;
  height: 22px;
  color: var(--care-v2-primary);
}

.care--web .care-v2-browse .care-spec-list--browse .care-spec-list__item em {
  font-style: normal;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--care-v2-primary);
  background: var(--care-v2-primary-mist);
  border-radius: var(--care-v2-radius-pill);
  padding: 3px 10px;
  flex-shrink: 0;
}

.care--web .care-v2-browse .care-muted {
  color: var(--care-v2-muted);
  font-size: 0.92rem;
}

/* —— Browse-row skeletons —— */
.care--web .care-v2-browse .care-skel-list--browse-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  grid-gap: 12px;
  gap: 12px;
  margin-bottom: 16px;
}

.care--web .care-skel--browse-row {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 68px !important;
  padding: 14px 16px !important;
}

.care--web .care-skel--browse-row .care-skel__glyph {
  width: 40px !important;
  height: 40px !important;
  border-radius: var(--care-v2-radius) !important;
  flex-shrink: 0;
}

.care--web .care-skel--browse-row .care-skel__line--grow {
  flex: 1 1 auto;
  width: auto !important;
  min-width: 0;
}

.care--web .care-skel--browse-row .care-skel__count {
  width: 36px !important;
  height: 22px !important;
  border-radius: var(--care-v2-radius-pill) !important;
  flex-shrink: 0;
}

/* —— Video page hero + steps —— */
.care--web .care-v2-video .care-page__body {
  max-width: none;
  padding: 0;
}

.care--web .care-v2-video-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.95fr);
  grid-gap: 40px;
  gap: 40px;
  align-items: center;
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
  padding: 48px 0 40px;
}

.care--web .care-v2-video-hero__copy {
  max-width: 34rem;
}

.care--web .care-v2-video-hero .care-v2-title {
  margin: 0 0 12px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(2rem, 3.4vw, 2.55rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-video-hero .care-v2-lead {
  margin: 0 0 20px;
  max-width: 32rem;
  color: var(--care-v2-muted);
  line-height: 1.55;
  font-size: 1.02rem;
}

.care--web .care-v2-video-hero .care-v2-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 24px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary);
  border: 1px solid var(--care-v2-primary);
  color: #fff;
  font-weight: 600;
  font-size: 0.95rem;
  text-decoration: none;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
  transition: background 0.15s ease, transform 0.15s ease;
}

.care--web .care-v2-video-hero .care-v2-btn:hover {
  background: var(--care-v2-primary-hover);
  transform: translateY(-1px);
}

.care--web .care-v2-video-hero__photo {
  width: 100%;
  border-radius: var(--care-v2-radius-lg);
  object-fit: cover;
  aspect-ratio: 4 / 3;
  box-shadow: var(--care-v2-shadow);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-video-steps {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 36px 24px 48px;
  overflow: hidden;
  background:
    radial-gradient(ellipse 55% 70% at 92% 78%, rgba(0, 102, 255, 0.08) 0%, transparent 62%),
    radial-gradient(ellipse 40% 55% at 100% 40%, rgba(0, 102, 255, 0.05) 0%, transparent 55%),
    linear-gradient(180deg, #fff 0%, var(--care-v2-paper) 100%);
  border-top: 1px solid var(--care-v2-line);
}

.care--web .care-v2-video-steps__inner {
  width: min(560px, 100%);
  margin: 0 auto;
  -webkit-margin-start: max(24px, calc((100% - 1200px) / 2 + 24px));
          margin-inline-start: max(24px, calc((100% - 1200px) / 2 + 24px));
}

.care--web .care-v2-video-steps .care-v2-eyebrow {
  margin: 0 0 8px;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--care-v2-primary);
}

.care--web .care-v2-video-steps__title {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.4rem, 2.5vw, 1.75rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-video-steps ol {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  grid-gap: 0;
  gap: 0;
}

.care--web .care-v2-video-steps li {
  display: grid;
  grid-template-columns: 40px 1fr;
  grid-gap: 14px;
  gap: 14px;
  align-items: start;
  padding: 18px 0;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-video-steps li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.care--web .care-v2-video-steps li em {
  font-style: normal;
  font-family: var(--care-v2-font-display);
  font-size: 1.85rem;
  font-weight: 700;
  color: var(--care-v2-primary);
  line-height: 1;
}

.care--web .care-v2-video-steps li strong {
  display: block;
  color: var(--care-v2-navy);
  margin-bottom: 4px;
  font-size: 1.02rem;
}

.care--web .care-v2-video-steps li p {
  margin: 0;
  color: var(--care-v2-muted);
  line-height: 1.45;
  font-size: 0.95rem;
}

/* —— Video doctors grid —— */
.care--web .care-v2-video-doctors {
  max-width: 1200px;
  margin: 0 auto;
  padding: 36px 24px 64px;
}

.care--web .care-v2-video-doctors__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}

.care--web .care-v2-video-doctors__head .care-v2-title {
  margin: 0 0 6px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.35rem, 2vw, 1.65rem);
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-video-doctors__head p {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.92rem;
}

.care--web .care-v2-video-doctors__all {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  white-space: nowrap;
}

.care--web .care-v2-video-doctors__all:hover {
  text-decoration: underline;
}

.care--web .care-v2-video .care-v2-doctors-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  grid-gap: 18px;
  gap: 18px;
}

.care--web .care-v2-video .care-v2-doc-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  height: 100%;
  padding: 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  text-decoration: none;
  color: var(--care-v2-ink);
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.care--web .care-v2-video .care-v2-doc-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--care-v2-shadow);
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
}

.care--web .care-v2-video .care-v2-doc-card .care-v2-doc__avail .care-ico,
.care--web .care-v2-video .care-v2-doc-card .care-v2-doc__avail .care-action-icon,
.care--web .care-v2-video .care-v2-doc-card .care-v2-doc__avail img {
  width: 28px;
  height: 28px;
  padding: 5px;
  border-radius: 10px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  box-sizing: border-box;
  flex-shrink: 0;
  object-fit: contain;
}

.care--web .care-v2-video .care-v2-doc-card .care-cta,
.care--web .care-v2-video .care-v2-doc-card .care-v2-doc-card__book {
  margin-top: auto;
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 44px;
  padding: 0 16px;
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
  font-size: 0.9rem;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
}

.care--web .care-v2-video .care-v2-doctors-skel.care-skel-list--doctor {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  grid-gap: 18px;
  gap: 18px;
  margin-bottom: 18px;
}

.care--web .care-v2-video .care-infinite__btn {
  min-height: 44px;
  padding: 0 24px;
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
}

/* —— Infinite footer (browse lists) —— */
.care--web .care-v2-browse .care-infinite {
  padding: 24px 0 8px;
}

.care--web .care-v2-browse .care-infinite__meta,
.care--web .care-v2-browse .care-infinite__done {
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care--web .care-v2-browse .care-infinite__btn {
  min-height: 44px;
  padding: 0 24px;
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
}

.care--web .care-v2-browse .care-illustrated-empty,
.care--web .care-v2-video .care-illustrated-empty {
  padding: 40px 24px 32px;
  background: var(--care-v2-primary-mist);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 12%, var(--care-v2-line));
  border-radius: var(--care-v2-radius-md);
  margin: 16px 0;
  text-align: center;
}

.care--web .care-v2-browse .care-illustrated-empty__title,
.care--web .care-v2-video .care-illustrated-empty__title {
  color: var(--care-v2-navy);
  font-family: var(--care-v2-font-display);
  font-weight: 700;
}

.care--web .care-v2-browse .care-illustrated-empty__msg,
.care--web .care-v2-video .care-illustrated-empty__msg {
  color: var(--care-v2-muted);
}

[dir='rtl'] .care--web .care-v2-video-steps__inner {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  -webkit-margin-end: max(24px, calc((100% - 1200px) / 2 + 24px));
          margin-inline-end: max(24px, calc((100% - 1200px) / 2 + 24px));
}

[dir='rtl'] .care--web .care-v2-video-steps {
  background:
    radial-gradient(ellipse 55% 70% at 8% 78%, rgba(0, 102, 255, 0.08) 0%, transparent 62%),
    radial-gradient(ellipse 40% 55% at 0% 40%, rgba(0, 102, 255, 0.05) 0%, transparent 55%),
    linear-gradient(180deg, #fff 0%, var(--care-v2-paper) 100%);
}

@media (max-width: 900px) {
  .care--web .care-v2-video-hero {
    grid-template-columns: 1fr;
    padding-top: 28px;
    gap: 24px;
  }

  .care--web .care-v2-video-hero__photo {
    order: -1;
  }

  .care--web .care-v2-video-steps__inner {
    margin-inline: auto;
    width: min(560px, calc(100% - 32px));
  }

  .care--web .care-v2-video-doctors__head {
    flex-direction: column;
    align-items: flex-start;
  }

  .care--web .care-v2-browse .care-spec-list--browse,
  .care--web .care-v2-browse .care-skel-list--browse-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .care--web .care-v2-video .care-v2-doctors-grid,
  .care--web .care-v2-video .care-v2-doctors-skel.care-skel-list--doctor {
    grid-template-columns: 1fr;
  }
}

/* —— Global /care/search results —— */
.care--web .care-search-page__hit {
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(11, 31, 58, 0.05);
  padding: 16px;
}

.care--web .care-search-page__hit-name {
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 700;
}

.care--web .care-search-page__view {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 12px;
  background: var(--care-v2-primary, #0066ff);
  color: #fff !important;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 6px 14px rgba(0, 102, 255, 0.24);
}

.care--web .care-search-page__toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 16px;
  padding: 12px 14px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 14px;
  background: #fff;
}


/**
 * MedCare — checkout sheet, payment handoff/return, done page.
 * Loaded last from CareLayout after care-medcare-booking.css.
 */

/* —— Embedded patient step (doctor book flow) —— */
.care--web .care-patient-step.care-v2-checkout.care-patient-step--embedded {
  position: static;
  inset: auto;
  width: auto;
  height: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  display: block;
  pointer-events: auto;
}

.care--web .care-patient-step.care-v2-checkout.care-patient-step--embedded .care-patient-step__sheet {
  width: 100%;
  max-width: none;
  height: auto;
  max-height: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.care--web .care-patient-step.care-v2-checkout.care-patient-step--embedded .care-patient-step__scroll {
  padding: 0;
  overflow: visible;
}

.care--web .care-patient-step.care-v2-checkout.care-patient-step--embedded .care-patient-step__layout {
  display: block;
  max-width: none;
  margin: 0;
  gap: 0;
}

.care--web .care-patient-step.care-v2-checkout.care-patient-step--embedded .care-patient-step__main {
  padding: 0;
  background: transparent;
  box-shadow: none;
  border: none;
}

.care--web .care-patient-step.care-v2-checkout.care-patient-step--embedded .care-patient-step__summary {
  display: none;
}

.care--web .care-patient-step.care-v2-checkout.care-patient-step--embedded .care-v2-checkout__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  padding: 16px 0 0;
  border-top: 1px solid var(--care-v2-line);
  background: transparent;
}

.care--web .care-patient-step.care-v2-checkout.care-patient-step--embedded .care-v2-checkout__footer .care-btn {
  width: auto;
  min-width: 140px;
}

/* —— Checkout overlay + sheet —— */
.care--web .care-patient-step.care-v2-checkout {
  font-family: var(--care-v2-font);
  background: color-mix(in srgb, var(--care-v2-navy) 42%, transparent);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  padding: 20px;
}

.care--web .care-patient-step.care-v2-checkout:not(.care-patient-step--embedded) .care-patient-step__sheet {
  display: flex;
  flex-direction: column;
  width: min(560px, 100%);
  max-height: min(90dvh, 820px);
  padding: 0;
  border-radius: 2px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  box-shadow: none;
  overflow: hidden;
}

.care--web .care-patient-step.care-v2-checkout:not(.care-patient-step--embedded) .care-patient-step__scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 16px 22px 8px;
  overscroll-behavior: contain;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__layout {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 14px;
  gap: 14px;
  padding-inline: 0;
  margin: 0;
  max-width: none;
  min-width: 0;
}

.care--web .care-v2-checkout__banner {
  position: relative;
  flex: 0 0 auto;
  height: 96px;
  margin: 0;
  overflow: hidden;
  background: var(--care-v2-navy);
}

.care--web .care-v2-checkout__banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care--web .care-v2-checkout__banner-fade {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    105deg,
    color-mix(in srgb, var(--care-v2-navy) 62%, transparent) 0%,
    transparent 62%
  );
  pointer-events: none;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__close {
  top: 12px;
  inset-inline-end: 12px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: rgba(255, 255, 255, 0.94);
  color: var(--care-v2-navy);
  font-size: 1.35rem;
  line-height: 1;
  box-shadow: none;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__close:hover:not(:disabled) {
  background: var(--care-v2-primary-soft);
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

/* —— Headings —— */
.care--web .care-v2-checkout__title {
  margin: 0 0 14px;
  padding-inline: 0;
  font-family: var(--care-v2-font-display);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--care-v2-navy);
}

.care--web .care-v2-checkout__section-title {
  font-family: var(--care-v2-font-display);
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-checkout__section-label {
  color: var(--care-v2-muted);
  font-weight: 500;
}

/* —— Stepper (active/done primary; inactive muted) —— */
.care--web .care-v2-checkout__steps li {
  color: var(--care-v2-muted);
  font-weight: 500;
  min-width: 0;
}

.care--web .care-v2-checkout__steps {
  margin: 0 0 16px;
  padding-inline: 0;
  width: 100%;
  box-sizing: border-box;
}

.care--web .care-v2-checkout__steps li::before {
  width: 28px;
  height: 28px;
  border-radius: 2px;
  border: 1px solid color-mix(in srgb, var(--care-v2-muted) 45%, var(--care-v2-line));
  background: var(--care-v2-surface);
  color: var(--care-v2-muted);
  font-weight: 700;
}

.care--web .care-v2-checkout__steps li.is-done,
.care--web .care-v2-checkout__steps li.is-active {
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-v2-checkout__steps li.is-done::before {
  border-color: var(--care-v2-primary);
  background: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-v2-checkout__steps li.is-active::before {
  border-color: var(--care-v2-primary);
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
}

.care--web .care-v2-checkout__steps li:not(:last-child)::after {
  top: 14px;
  height: 2px;
  background: color-mix(in srgb, var(--care-v2-muted) 28%, var(--care-v2-line));
}

.care--web .care-v2-checkout__steps li.is-done:not(:last-child)::after {
  background: var(--care-v2-primary);
}

/* —— Self / family pick cards (medcare — clear radios, soft cards) —— */
.care--web .care-v2-checkout__pick {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 14px;
  gap: 14px;
  margin-bottom: 18px;
}

.care--web .care-v2-checkout__pick-btn {
  position: relative;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  grid-template-rows: auto auto;
  align-items: center;
  grid-column-gap: 12px;
  column-gap: 12px;
  grid-row-gap: 2px;
  row-gap: 2px;
  min-height: 96px;
  padding: 16px 14px 16px 16px !important;
  border: 1.5px solid color-mix(in srgb, var(--care-v2-primary) 12%, var(--care-v2-line)) !important;
  border-radius: 18px !important;
  background:
    radial-gradient(120% 100% at 100% 0%, color-mix(in srgb, var(--care-v2-primary) 8%, #fff) 0%, #fff 58%),
    var(--care-v2-surface) !important;
  box-shadow: 0 8px 20px rgba(11, 31, 58, 0.05);
  text-align: start;
  transition: border-color 0.16s ease, background 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.care--web .care-v2-checkout__pick-btn:hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--care-v2-primary) 42%, var(--care-v2-line)) !important;
  background: color-mix(in srgb, var(--care-v2-primary) 6%, #fff) !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0, 102, 255, 0.1);
}

.care--web .care-v2-checkout__pick-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.care--web .care-v2-checkout__pick-btn.is-selected {
  border-color: var(--care-v2-primary) !important;
  background:
    radial-gradient(120% 100% at 100% 0%, color-mix(in srgb, var(--care-v2-primary) 16%, #fff) 0%, #fff 55%),
    color-mix(in srgb, var(--care-v2-primary) 7%, #fff) !important;
  box-shadow:
    0 0 0 1px var(--care-v2-primary),
    0 12px 28px rgba(0, 102, 255, 0.14) !important;
}

.care--web .care-v2-checkout__pick-btn.is-selected strong,
.care--web .care-v2-checkout__pick-btn.is-selected .care-v2-checkout__person {
  color: var(--care-v2-primary) !important;
}

.care--web .care-v2-checkout__avatar {
  grid-row: 1 / span 2;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: color-mix(in srgb, var(--care-v2-primary) 12%, #fff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 18%, transparent);
  color: var(--care-v2-primary);
}

.care--web .care-v2-checkout__avatar--family {
  background: color-mix(in srgb, #7c3aed 12%, #fff);
  border-color: color-mix(in srgb, #7c3aed 20%, transparent);
  color: #7c3aed;
}

.care--web .care-v2-checkout__pick-btn--family.is-selected .care-v2-checkout__avatar--family {
  background: color-mix(in srgb, #7c3aed 18%, #fff);
  color: #6d28d9;
}

.care--web .care-v2-checkout__pick-btn--family.is-selected {
  border-color: #7c3aed !important;
  box-shadow:
    0 0 0 1px #7c3aed,
    0 12px 28px rgba(124, 58, 237, 0.14) !important;
  background:
    radial-gradient(120% 100% at 100% 0%, color-mix(in srgb, #7c3aed 14%, #fff) 0%, #fff 55%),
    color-mix(in srgb, #7c3aed 6%, #fff) !important;
}

.care--web .care-v2-checkout__pick-btn--family.is-selected strong,
.care--web .care-v2-checkout__pick-btn--family.is-selected .care-v2-checkout__person {
  color: #6d28d9 !important;
}

.care--web .care-v2-checkout__person {
  width: 24px !important;
  height: 24px !important;
  color: inherit;
}

.care--web .care-v2-checkout__pick-copy {
  display: grid;
  grid-gap: 3px;
  gap: 3px;
  min-width: 0;
  -webkit-padding-end: 22px;
          padding-inline-end: 22px;
}

.care--web .care-v2-checkout__pick-copy strong {
  font-size: 0.98rem;
  font-weight: 750;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
  line-height: 1.25;
}

.care--web .care-v2-checkout__pick-copy span {
  font-size: 0.8rem;
  font-weight: 550;
  color: var(--care-v2-muted);
  line-height: 1.35;
}

.care--web .care-v2-checkout__check {
  position: absolute;
  top: 12px;
  inset-inline-end: 12px;
  inset-inline-start: auto !important;
  width: 24px !important;
  height: 24px !important;
  display: grid;
  place-items: center;
  border-radius: 999px !important;
  background: var(--care-v2-primary) !important;
  color: #fff;
  box-shadow: 0 4px 10px rgba(0, 102, 255, 0.28);
}

.care--web .care-v2-checkout__pick-btn--family.is-selected .care-v2-checkout__check {
  background: #7c3aed !important;
  box-shadow: 0 4px 10px rgba(124, 58, 237, 0.28);
}

.care--web .care-v2-checkout__radio {
  position: absolute;
  top: 12px;
  inset-inline-end: 12px;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1.5px solid color-mix(in srgb, var(--care-v2-muted) 40%, var(--care-v2-line));
  background: #fff;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-rows: auto auto;
  grid-column-gap: 12px;
  column-gap: 12px;
  grid-row-gap: 2px;
  row-gap: 2px;
  align-items: center;
  width: 100%;
  padding: 14px 16px;
  border-radius: 16px !important;
  border: 1.5px solid color-mix(in srgb, var(--care-v2-primary) 12%, var(--care-v2-line)) !important;
  background: var(--care-v2-surface) !important;
  text-align: start;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__option.is-selected {
  border-color: var(--care-v2-primary) !important;
  background: color-mix(in srgb, var(--care-v2-primary) 7%, #fff) !important;
  box-shadow: 0 0 0 1px var(--care-v2-primary), 0 8px 20px rgba(0, 102, 255, 0.1) !important;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__option-ico {
  grid-row: 1 / span 2;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px !important;
  background: color-mix(in srgb, #7c3aed 12%, #fff) !important;
  color: #7c3aed !important;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__option strong {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__option span:not(.care-patient-step__option-ico) {
  font-size: 0.8rem;
  color: var(--care-v2-muted);
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  margin-top: 10px;
  border-radius: 999px !important;
  border: 1.5px dashed color-mix(in srgb, var(--care-v2-primary) 45%, var(--care-v2-line)) !important;
  color: var(--care-v2-primary) !important;
  font-weight: 700;
  background: color-mix(in srgb, var(--care-v2-primary) 4%, #fff);
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__add:hover:not(:disabled) {
  background: var(--care-v2-primary-mist);
  border-style: solid !important;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__form {
  border-radius: 16px !important;
  border: 1px solid var(--care-v2-line);
  background: color-mix(in srgb, var(--care-v2-primary) 3%, #fff);
  padding: 18px;
}

.care--web .care-patient-step.care-v2-checkout .care-v2-checkout__family-list {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

@media (max-width: 560px) {
  .care--web .care-v2-checkout__pick {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .care--web .care-v2-checkout__pick-btn {
    min-height: 84px;
  }
}

/* —— Form inputs —— */
.care--web .care-patient-step.care-v2-checkout input,
.care--web .care-patient-step.care-v2-checkout textarea,
.care--web .care-patient-step.care-v2-checkout select {
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font-family: var(--care-v2-font);
  transition: border-color 0.15s ease;
}

.care--web .care-patient-step.care-v2-checkout input:focus-visible,
.care--web .care-patient-step.care-v2-checkout textarea:focus-visible,
.care--web .care-patient-step.care-v2-checkout select:focus-visible {
  outline: none;
  border-color: var(--care-v2-primary);
  box-shadow: none;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__form {
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-paper);
  padding: 16px;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__form h3 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy);
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__brief {
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-primary-mist);
}

.care--web .care-patient-step.care-v2-checkout .care-btn--primary {
  border-radius: 2px;
  background: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-patient-step.care-v2-checkout .care-btn--primary:hover:not(:disabled) {
  background: var(--care-v2-primary-hover);
}

.care--web .care-patient-step.care-v2-checkout .care-btn--ghost {
  border-radius: 2px;
  color: var(--care-v2-navy);
}

/* —— Quote summary —— */
.care--web .care-v2-checkout__quote {
  border-radius: 2px;
  background: var(--care-v2-primary-mist);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 12%, var(--care-v2-line));
}

.care--web .care-v2-checkout__quote h3 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy);
}

.care--web .care-v2-checkout__quote .care-tax-breakdown__total dd {
  color: var(--care-v2-primary);
}

.care--web .care-v2-checkout__fees {
  color: var(--care-v2-primary);
}

/* —— Sticky pay footer (always visible on modal) —— */
.care--web .care-patient-step.care-v2-checkout:not(.care-patient-step--embedded) .care-v2-checkout__footer {
  flex: 0 0 auto;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin: 0;
  padding: 14px 22px 18px;
  border-top: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
}

.care--web .care-v2-checkout__pay {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 52px;
  border: 0;
  border-radius: 2px;
  background: var(--care-v2-primary);
  color: #fff;
  font-family: var(--care-v2-font);
  font-weight: 700;
  box-shadow: none;
  transition: background 0.15s ease, opacity 0.15s ease;
}

.care--web .care-v2-checkout__pay:hover:not(:disabled) {
  background: var(--care-v2-primary-hover);
}

.care--web .care-v2-checkout__pay:disabled {
  opacity: 0.72;
  cursor: wait;
}

.care--web .care-v2-checkout__secure {
  margin: 0;
  text-align: center;
  color: var(--care-v2-muted);
  font-size: 0.8rem;
}

.care--web .care-v2-checkout__brand-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 0;
  padding-top: 8px;
  border-top: 1px solid var(--care-v2-line);
  color: var(--care-v2-muted);
  font-size: 0.78rem;
  text-align: center;
}

.care--web .care-v2-checkout__brand-logo {
  flex: 0 0 auto;
}

/* —— Busy / pay-in-progress overlay —— */
.care--web .care-patient-step.care-v2-checkout.is-busy .care-patient-step__main {
  opacity: 0.55;
  pointer-events: none;
}

.care--web .care-patient-step.care-v2-checkout.is-busy .care-v2-checkout__quote {
  position: relative;
  overflow: hidden;
}

.care--web .care-patient-step.care-v2-checkout.is-busy .care-v2-checkout__quote::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(
    90deg,
    transparent 0%,
    color-mix(in srgb, var(--care-v2-primary) 8%, transparent) 50%,
    transparent 100%
  );
  background-size: 200% 100%;
  animation: care-medcare-checkout-shimmer 1.4s ease-in-out infinite;
  pointer-events: none;
}

@keyframes care-medcare-checkout-shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

/* —— Checkout skeleton (patient list load) —— */
.care--web .care-skel--checkout {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  margin: 8px 0 16px;
}

.care--web .care-skel--checkout .care-skel__pick-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
  gap: 10px;
}

.care--web .care-skel--checkout .care-skel__pick {
  height: 88px;
  border-radius: var(--care-v2-radius);
}

.care--web .care-skel--checkout .care-skel__row {
  height: 52px;
  border-radius: var(--care-v2-radius);
}

.care--web .care-skel--checkout .care-skel__quote {
  height: 120px;
  border-radius: var(--care-v2-radius-md);
}

/* —— Payment handoff modal —— */
.care--web .care-payment-handoff {
  background: color-mix(in srgb, var(--care-v2-navy) 48%, transparent);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.care--web .care-payment-handoff__card {
  width: min(380px, 100%);
  padding: 32px 26px;
  border-radius: var(--care-v2-radius-lg);
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  box-shadow: var(--care-v2-shadow);
}

.care--web .care-payment-handoff .med-loader {
  --med-accent: var(--care-v2-primary);
  --med-ink: var(--care-v2-navy);
  --med-track: color-mix(in srgb, var(--care-v2-primary) 16%, transparent);
  font-family: var(--care-v2-font);
}

.care--web .care-payment-handoff .med-loader__label {
  font-family: var(--care-v2-font);
  font-weight: 600;
  color: var(--care-v2-navy);
  opacity: 0.78;
}

/* —— Payment return (confirming) —— */
.care--web .care-v2-payment-return .care-page__body {
  max-width: 480px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  text-align: center;
}

.care--web .care-v2-payment-return .care-page__title {
  margin: 0 0 24px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.35rem, 2.5vw, 1.65rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-payment-return .med-loader {
  --med-accent: var(--care-v2-primary);
  --med-ink: var(--care-v2-navy);
  --med-track: color-mix(in srgb, var(--care-v2-primary) 16%, transparent);
  margin: 0 auto;
  padding: 24px 16px;
  font-family: var(--care-v2-font);
}

.care--web .care-v2-payment-return .med-loader__label {
  max-width: 20rem;
  font-family: var(--care-v2-font);
  font-weight: 600;
  color: var(--care-v2-muted);
}

.care--web .care-v2-payment-return .care-inline-error {
  margin-top: 20px;
  text-align: start;
}

/* —— Payment return progress dots (8px) —— */
.care--web .care-v2-payment-return__dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}

.care--web .care-v2-payment-return__dots li {
  width: 8px;
  height: 8px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-line);
}

.care--web .care-v2-payment-return__dots li.is-active {
  background: var(--care-v2-primary);
  animation: care-medcare-dot-pulse 1.1s ease-in-out infinite;
}

.care--web .care-v2-payment-return__dots li.is-done {
  background: var(--care-v2-primary);
}

@keyframes care-medcare-dot-pulse {
  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.55;
    transform: scale(0.88);
  }
}

/* —— Done page (soft green success + primary CTA) —— */
.care--web .care-page--done .care-v2-done {
  min-height: calc(100dvh - 72px);
  font-family: var(--care-v2-font);
}

.care--web .care-page--done .care-v2-done__ambient {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--care-v2-success-soft) 55%, #fff), rgba(255, 255, 255, 0.92)),
    url('/care/design/heroes/appointments-hero.jpg') center / cover no-repeat;
  filter: saturate(0.9);
  opacity: 0.28;
}

.care--web .care-page--done .care-v2-done__check {
  width: 72px;
  height: 72px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-success-soft);
  color: var(--care-v2-success);
  box-shadow:
    0 0 0 10px color-mix(in srgb, var(--care-v2-success) 12%, transparent),
    var(--care-v2-shadow-sm);
}

.care--web .care-page--done .care-v2-done__title {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy);
}

.care--web .care-page--done .care-v2-done__lead {
  color: var(--care-v2-muted);
}

.care--web .care-page--done .care-v2-done__cta {
  min-height: 52px;
  padding: 0 28px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary);
  font-family: var(--care-v2-font);
  font-weight: 700;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--care-v2-primary) 26%, transparent);
  transition: background 0.15s ease;
}

.care--web .care-page--done .care-v2-done__cta:hover {
  background: var(--care-v2-primary-hover);
}

.care--web .care-page--done .care-v2-done__back {
  color: var(--care-v2-primary);
  font-weight: 600;
}

.care--web .care-page--done .care-v2-done__foot {
  color: var(--care-v2-muted);
  font-size: 0.82rem;
}

/* —— MedicalLoader in checkout sheet —— */
.care--web .care-patient-step.care-v2-checkout .med-loader {
  --med-accent: var(--care-v2-primary);
  --med-ink: var(--care-v2-navy);
  --med-track: color-mix(in srgb, var(--care-v2-primary) 16%, transparent);
}

@media (max-width: 640px) {
  .care--web .care-patient-step.care-v2-checkout {
    padding: 0;
    align-items: stretch;
  }

  .care--web .care-patient-step.care-v2-checkout:not(.care-patient-step--embedded) .care-patient-step__sheet {
    width: 100%;
    max-height: 100%;
    height: 100%;
    border-radius: 0;
    border: none;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .care--web .care-skel--checkout .care-skel__pick-row {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .care--web .care-patient-step.care-v2-checkout.is-busy .care-v2-checkout__quote::after,
  .care--web .care-v2-payment-return__dots li.is-active {
    animation: none;
  }
}

/* —— Fulfillment confirm (pickup / delivery) — centered modal —— */
.care--web .care-v2-fulfill {
  position: fixed;
  inset: 0;
  z-index: 1400;
  display: grid;
  place-items: center;
  padding: max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));
  background: color-mix(in srgb, var(--care-v2-navy) 48%, transparent);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.care--web .care-v2-fulfill__card {
  width: min(440px, 100%);
  margin: 0;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: none;
  overflow: hidden;
}

.care--web .care-v2-fulfill__hero {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 72px;
  padding: 16px 20px;
  background: var(--care-v2-primary);
}

.care--web .care-v2-fulfill__body {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  padding: 22px 22px 20px;
}

.care--web .care-v2-fulfill__badge {
  display: inline-flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 2px;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.care--web .care-v2-fulfill__badge.is-delivery {
  background: color-mix(in srgb, var(--care-v2-success, #0f766e) 14%, transparent);
  color: var(--care-v2-success, #0f766e);
}

.care--web .care-v2-fulfill__body h2 {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--care-v2-navy);
}

.care--web .care-v2-fulfill__body > p {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.92rem;
  line-height: 1.45;
}

.care--web .care-v2-fulfill__place {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-primary-mist, #f5f9ff);
  color: var(--care-v2-navy);
}

.care--web .care-v2-fulfill__place strong {
  font-size: 0.95rem;
}

.care--web .care-v2-fulfill__addr {
  margin: 0;
  padding: 10px 12px;
  border-radius: 2px;
  background: var(--care-v2-paper, #f7f9fc);
  border: 1px solid var(--care-v2-line);
  color: var(--care-v2-ink);
  font-size: 0.88rem;
  line-height: 1.4;
}

.care--web .care-v2-fulfill__actions {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  grid-gap: 10px;
  gap: 10px;
  margin-top: 8px;
}

.care--web .care-v2-fulfill__actions .care-btn {
  min-height: 48px;
  border-radius: 2px;
  font-weight: 700;
}

.care--web .care-v2-fulfill__actions .care-btn--primary {
  background: var(--care-v2-primary);
  color: #fff;
}

@media (max-width: 480px) {
  .care--web .care-v2-fulfill__actions {
    grid-template-columns: 1fr;
  }
}

/**
 * MedCare — Pharmacy browse (CarePharmacyPage).
 * Loaded last from CareLayout after care-medcare-booking.css.
 * Scope: .care--web only.
 */

/* —— Page canvas —— */
.care--web .care-v2-pharmacy {
  background: var(--care-v2-paper);
}

.care--web .care-v2-pharmacy .care-page__body {
  max-width: 1320px;
  width: min(1320px, calc(100% - 48px));
  margin: 0 auto;
  padding: 28px 0 64px;
}

/* —— Header —— */
.care--web .care-v2-pharmacy .care-v2-pharm-head {
  margin-bottom: 20px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-head .care-v2-title {
  margin: 0 0 6px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 2.4vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-navy);
}

.care--web .care-v2-pharmacy .care-v2-pharm-head .care-v2-lead {
  margin: 0;
  max-width: 42rem;
  color: var(--care-v2-muted);
  line-height: 1.55;
}

/* —— Search + upload + place row —— */
.care--web .care-v2-pharmacy .care-v2-pharm-searchrow {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: stretch;
  margin: 18px 0 16px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-searchrow .care-v2-searchbar__field {
  flex: 1 1 280px;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 14px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharmacy .care-v2-pharm-searchrow .care-v2-searchbar__field input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 0.98rem;
  color: var(--care-v2-ink);
  outline: none;
}

.care--web .care-v2-pharmacy .care-v2-pharm-upload {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: 0 0 auto;
  min-height: 52px;
  padding: 0 20px;
  border: 0;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary);
  color: #fff;
  font: inherit;
  font-size: 0.92rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  box-shadow: 0 4px 14px rgba(0, 102, 255, 0.28);
  transition: background 0.15s ease, transform 0.15s ease;
}

.care--web .care-v2-pharmacy .care-v2-pharm-upload:hover {
  background: var(--care-v2-primary-hover);
}

.care--web .care-v2-pharmacy .care-v2-pharm-upload .care-ico {
  width: 20px;
  height: 20px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-place {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 16px;
  border-radius: var(--care-v2-radius-md);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: var(--care-v2-shadow-sm);
  transition: border-color 0.15s ease, color 0.15s ease;
}

.care--web .care-v2-pharmacy .care-v2-pharm-place:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

.care--web .care-v2-pharmacy .care-v2-pharm-toast {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  padding: 12px 16px;
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-primary-soft);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
  color: var(--care-v2-navy);
  font-size: 0.92rem;
  font-weight: 600;
}

.care--web .care-v2-pharmacy .care-v2-pharm-toast__link {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  color: var(--care-v2-primary);
  font-weight: 700;
  text-decoration: none;
}

.care--web .care-v2-pharmacy .care-v2-pharm-rxhint {
  margin: 0 0 12px;
  font-size: 0.85rem;
  color: var(--care-v2-muted);
}

/* —— Browse: category sidebar + content —— */
.care--web .care-v2-pharmacy .care-v2-pharm-browse {
  display: grid;
  grid-template-columns: minmax(200px, 240px) minmax(0, 1fr);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  max-height: none;
  overflow: visible;
  padding: 16px 12px 18px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats__head {
  margin-bottom: 10px;
  padding: 0 6px 10px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats__head strong {
  font-size: 1rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats__list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats__list > button {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 10px 12px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: start;
  cursor: pointer;
  position: relative;
  transition: background 0.15s ease, color 0.15s ease;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats__list > button:hover {
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-primary);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats__list > button.is-active {
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  font-weight: 650;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats__list > button.is-active::before {
  content: '';
  position: absolute;
  inset-inline-start: 0;
  top: 8px;
  bottom: 8px;
  width: 3px;
  border-radius: 999px;
  background: var(--care-v2-primary);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cat__ico {
  display: inline-flex;
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  color: #5b9fff;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cats__list > button.is-active .care-v2-pharm-cat__ico {
  color: var(--care-v2-primary);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cat__ico svg {
  width: 100%;
  height: 100%;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cat__more {
  margin-top: 6px !important;
  color: var(--care-v2-primary) !important;
  font-weight: 650 !important;
}

.care--web .care-v2-pharmacy .care-v2-pharm-desk-tools {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 12px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-desk-tools .care-v2-pharm-filter-btn {
  width: auto;
  min-width: 44px;
  padding: 0 14px;
  gap: 8px;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 600;
}

/* —— Category rail (mobile pills) —— */
.care--web .care-v2-pharmacy .care-v2-pharm-catrow {
  display: none;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 18px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-pills {
  flex: 1 1;
  margin: 0;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 4px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.care--web .care-v2-pharmacy .care-v2-pharm-pills::-webkit-scrollbar {
  display: none;
}

.care--web .care-v2-pharmacy .care-v2-pharm-pills button {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 16px;
  border-radius: var(--care-v2-radius-pill);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.care--web .care-v2-pharmacy .care-v2-pharm-pills button:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

.care--web .care-v2-pharmacy .care-v2-pharm-pills button.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
  font-weight: 600;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.22);
}

.care--web .care-v2-pharmacy .care-v2-pharm-pills .care-v2-pharm-cat__more {
  border-color: transparent;
  background: transparent;
  color: var(--care-v2-primary);
  box-shadow: none;
}

.care--web .care-v2-pharmacy .care-v2-pharm-filter-btn {
  position: relative;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 40px;
  border-radius: var(--care-v2-radius);
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  cursor: pointer;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharmacy .care-v2-pharm-filter-btn.is-active {
  background: var(--care-v2-primary-soft);
  border-color: color-mix(in srgb, var(--care-v2-primary) 35%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

.care--web .care-v2-pharmacy .care-v2-pharm-filter-btn.has-active::after {
  content: '';
  position: absolute;
  top: 6px;
  right: 6px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary);
}

/* —— Always-on MedCare promo —— */
.care--web .care-v2-pharmacy .care-v2-pharm-promo {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 200px);
  grid-gap: 16px;
  gap: 16px;
  align-items: center;
  min-height: 120px;
  margin-bottom: 18px;
  padding: 22px 24px;
  border-radius: var(--care-v2-radius-md);
  background: linear-gradient(120deg, #d8f3ef 0%, #e8f7f4 45%, #cfeee8 100%);
  border: 1px solid color-mix(in srgb, #7dd3c7 35%, var(--care-v2-line));
  overflow: hidden;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharmacy .care-v2-pharm-promo__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  min-width: 0;
}

.care--web .care-v2-pharmacy .care-v2-pharm-promo__copy strong {
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.25rem, 2.1vw, 1.65rem);
  font-weight: 750;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
  line-height: 1.2;
}

.care--web .care-v2-pharmacy .care-v2-pharm-promo__cta {
  margin-top: 10px;
  min-height: 36px;
  padding: 0 18px;
  border-radius: var(--care-v2-radius-pill);
  border: 0;
  background: #fff;
  color: var(--care-v2-primary);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 700;
  cursor: pointer;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharmacy .care-v2-pharm-promo__cta:hover {
  color: var(--care-v2-primary-hover);
}

.care--web .care-v2-pharmacy .care-v2-pharm-promo__art {
  justify-self: end;
  align-self: stretch;
  width: min(100%, 220px);
  min-height: 96px;
  border-radius: var(--care-v2-radius);
  overflow: hidden;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharmacy .care-v2-pharm-promo__art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* —— API promo banners —— */
.care--web .care-v2-pharmacy .care-v2-pharm-banners {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  margin-bottom: 18px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-banner {
  position: relative;
  overflow: hidden;
  min-height: 92px;
  border-radius: var(--care-v2-radius-md);
  background: linear-gradient(135deg, var(--care-v2-navy), var(--care-v2-primary));
  color: #fff;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharmacy .care-v2-pharm-banner__body strong {
  font-family: var(--care-v2-font-display);
}

.care--web .care-v2-pharmacy .care-v2-pharm-banner__body em {
  color: var(--care-v2-primary-mist);
}

.care--web .care-v2-pharmacy .care-v2-pharm-sectionhead {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin: 4px 0 14px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-sectionhead h2 {
  margin: 0;
  font-family: var(--care-v2-font-display);
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-pharmacy .care-v2-pharm-viewall {
  border: 0;
  background: transparent;
  color: var(--care-v2-primary);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 650;
  cursor: pointer;
  padding: 0;
}

/* —— Shop layout (grid + sticky cart) —— */
.care--web .care-v2-pharmacy .care-v2-pharm-shop {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 300px);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
}

.care--web .care-v2-pharmacy .care-v2-pharm-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

/* —— Product cards (vertical collage) —— */
.care--web .care-v2-pharmacy .care-v2-pharm-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 14px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow-sm);
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card:not(.is-oos):hover {
  transform: translateY(-2px);
  box-shadow: var(--care-v2-shadow);
  border-color: color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
}

.care--web .care-v2-pharmacy .care-v2-pharm-card.is-oos {
  opacity: 0.68;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__open {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: stretch;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: start;
  color: inherit;
  cursor: pointer;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__media {
  width: 100%;
  height: 220px;
  border-radius: var(--care-v2-radius-md);
  overflow: hidden;
  background: var(--care-v2-primary-soft);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 14%, transparent);
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
  padding: 0;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__media .care-mico {
  width: 100%;
  height: 100%;
  border-radius: var(--care-v2-radius-md);
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__media .care-mico img {
  object-fit: cover;
  padding: 0;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__media .care-mico svg {
  stroke: var(--care-v2-primary);
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__body strong {
  color: var(--care-v2-navy);
  font-size: 0.98rem;
  font-weight: 650;
  line-height: 1.3;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__form {
  color: var(--care-v2-muted);
  font-size: 0.82rem;
  line-height: 1.35;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__price {
  margin-top: 4px;
  color: var(--care-v2-navy) !important;
  font-weight: 750;
  font-size: 1rem;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__price s {
  color: var(--care-v2-muted);
  font-weight: 500;
  -webkit-margin-end: 6px;
          margin-inline-end: 6px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__meta .care-stock {
  font-size: 0.78rem;
  font-weight: 600;
  color: #15803d;
  background: var(--care-v2-success-soft);
  border-radius: var(--care-v2-radius-pill);
  padding: 4px 10px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__meta .care-stock--oos {
  color: #b45309;
  background: #fef3c7;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__add,
.care--web .care-v2-pharmacy .care-v2-pharm-cart__checkout {
  width: 100%;
  min-height: 42px;
  justify-content: center;
  gap: 8px;
  background: var(--care-v2-primary) !important;
  border: none !important;
  color: #fff !important;
  border-radius: var(--care-v2-radius-pill) !important;
  font-weight: 650;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.2);
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__add .care-ico {
  width: 18px;
  height: 18px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__add:hover:not(:disabled),
.care--web .care-v2-pharmacy .care-v2-pharm-cart__checkout:hover:not(:disabled) {
  background: var(--care-v2-primary-hover) !important;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__add:disabled {
  opacity: 0.5;
  box-shadow: none;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__qty {
  width: 100%;
  justify-content: space-between;
  min-height: 42px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary-mist);
  padding: 0 6px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__qty button {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 0;
  background: var(--care-v2-surface);
  color: var(--care-v2-primary);
  font-weight: 700;
  cursor: pointer;
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__qty button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.care--web .care-v2-pharmacy .care-v2-pharm-card__qty span {
  font-weight: 700;
  color: var(--care-v2-navy);
}

/* —— Cart sidebar —— */
.care--web .care-v2-pharmacy .care-v2-pharm-cart {
  position: -webkit-sticky;
  position: sticky;
  top: 96px;
  padding: 20px 18px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-md);
  box-shadow: var(--care-v2-shadow);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 16px;
  font-family: var(--care-v2-font-display);
  font-size: 1.08rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: var(--care-v2-radius-pill);
  background: var(--care-v2-primary);
  color: #fff;
  font-style: normal;
  font-size: 0.75rem;
  font-weight: 700;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__lines {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__line {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  grid-gap: 10px;
  gap: 10px;
  align-items: start;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__thumb {
  width: 48px;
  height: 48px;
  border-radius: var(--care-v2-radius);
  overflow: hidden;
  background: var(--care-v2-primary-soft);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 15%, transparent);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__thumb img,
.care--web .care-v2-pharmacy .care-v2-pharm-cart__thumb .care-mico {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__thumb .care-mico {
  background: var(--care-v2-primary-soft) !important;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__thumb .care-mico img {
  padding: 6px;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__info strong {
  font-size: 0.88rem;
  color: var(--care-v2-navy);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__info span {
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__aside > strong {
  font-size: 0.88rem;
  color: var(--care-v2-navy);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__qty {
  min-height: 32px;
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius-pill);
  padding: 0 4px;
  background: var(--care-v2-primary-mist);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__trash {
  border: 0;
  background: transparent;
  color: var(--care-v2-muted);
  cursor: pointer;
  padding: 4px;
  border-radius: var(--care-v2-radius-pill);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__trash:hover {
  color: #dc2626;
  background: #fef2f2;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__summary {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin: 0 0 16px;
  padding: 14px 0 0;
  border-top: 1px solid var(--care-v2-line);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__summary dt {
  color: var(--care-v2-muted);
  font-weight: 500;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__free {
  color: #15803d !important;
  font-weight: 700 !important;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__total dt,
.care--web .care-v2-pharmacy .care-v2-pharm-cart__total dd {
  color: var(--care-v2-primary) !important;
  font-weight: 700 !important;
  font-size: 1.02rem;
}

.care--web .care-v2-pharmacy .care-cart__empty {
  margin: 0 0 14px;
  padding: 16px;
  border-radius: var(--care-v2-radius);
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-muted);
  font-size: 0.88rem;
  line-height: 1.45;
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 14px 0 0;
  font-size: 0.78rem;
  color: var(--care-v2-muted);
}

.care--web .care-v2-pharmacy .care-v2-pharm-cart__secure .care-ico {
  color: var(--care-v2-primary);
}

/* —— Empty catalog —— */
.care--web .care-v2-pharmacy .care-empty {
  padding: 32px 20px;
  margin: 8px 0 0;
  background: var(--care-v2-primary-mist);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 12%, var(--care-v2-line));
  border-radius: var(--care-v2-radius-md);
  color: var(--care-v2-muted);
  font-size: 0.95rem;
  text-align: center;
}

/* —— Mobile sticky cart bar —— */
.care.care--phone .care-v2-pharmacy .care-pharm-cart-bar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  align-items: center;
  position: fixed;
  left: 0;
  right: 0;
  bottom: var(--care-tabs-h, 56px);
  z-index: 28;
  margin: 0;
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
  background: var(--care-v2-surface);
  border-top: 1px solid var(--care-v2-line);
  box-shadow: 0 -8px 24px rgba(11, 31, 58, 0.12);
}

.care.care--phone .care-v2-pharmacy .care-pharm-cart-bar .care-cart-ico {
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  box-shadow: none;
}

.care.care--phone .care-v2-pharmacy .care-pharm-cart-bar .care-btn--cart {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  border-radius: var(--care-v2-radius-pill) !important;
  font-weight: 600;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.22);
}

/* —— Pharmacy skeleton grid —— */
.care--web .care-v2-pharmacy .care-skel-list--pharmacy {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 16px;
  gap: 16px;
  flex-direction: unset !important;
  margin-bottom: 16px;
}

.care--web .care-v2-pharmacy .care-skel--pharm {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.care--web .care-v2-pharmacy .care-skel--pharm .care-skel__head {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: stretch;
}

.care--web .care-v2-pharmacy .care-skel--pharm .care-skel__avatar--sq {
  width: 100% !important;
  height: 180px !important;
  border-radius: var(--care-v2-radius-md) !important;
}

.care--web .care-v2-pharmacy .care-skel--pharm .care-skel__meta-row {
  width: 55% !important;
  height: 24px !important;
  border-radius: var(--care-v2-radius-pill) !important;
}

/* —— Responsive —— */
@media (max-width: 1200px) {
  .care--web .care-v2-pharmacy .care-v2-pharm-shop {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 280px);
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-grid,
  .care--web .care-v2-pharmacy .care-skel-list--pharmacy {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1100px) {
  .care--web .care-v2-pharmacy .care-v2-pharm-grid,
  .care--web .care-v2-pharmacy .care-skel-list--pharmacy {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .care--web .care-v2-pharmacy .care-v2-pharm-browse {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-cats {
    display: none;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-desk-tools {
    display: none;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-catrow--mobile {
    display: flex;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-shop {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-cart {
    position: static;
  }
}

@media (max-width: 767px) {
  .care--web .care-v2-pharmacy .care-page__body {
    width: min(1240px, calc(100% - 32px));
    padding-bottom: 48px;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-grid,
  .care--web .care-v2-pharmacy .care-skel-list--pharmacy {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-searchrow .care-v2-pharm-upload {
    flex: 1 1 auto;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-promo {
    grid-template-columns: 1fr;
    padding: 18px;
  }

  .care--web .care-v2-pharmacy .care-v2-pharm-promo__art {
    justify-self: stretch;
    width: 100%;
    max-width: none;
    min-height: 120px;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   CareMedicineDetailSheet — MedCare product detail overlay
   ═══════════════════════════════════════════════════════════════════════════ */

.care-med-sheet {
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  background: var(--care-v2-paper, #f7f9fc);
}

.care-med-sheet__card {
  background: var(--care-v2-surface, #fff);
}

.care-med-sheet__close {
  border-radius: var(--care-v2-radius-pill, 999px);
  border: 0 !important;
  box-shadow: none;
  color: #fff !important;
  background: transparent;
}

.care-med-sheet__crumb {
  color: rgba(255, 255, 255, 0.9);
  font-weight: 500;
}

.care-med-sheet__head-title {
  color: #fff;
}

.care-med-sheet__photo {
  border-radius: var(--care-v2-radius-md, 16px);
  border-color: var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-primary-soft, #ebf5ff);
  overflow: hidden;
}

.care-med-sheet__photo .care-mico {
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  color: var(--care-v2-primary, #0066ff) !important;
}

.care-med-sheet__summary h1 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a) !important;
  letter-spacing: -0.02em;
}

.care-med-sheet__badge {
  border-radius: var(--care-v2-radius-pill, 999px);
  font-weight: 700;
}

.care-med-sheet__badge--category {
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
}

.care-med-sheet__price strong {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care-med-sheet__price em {
  color: var(--care-v2-primary, #0066ff);
  background: var(--care-v2-primary-soft, #ebf5ff);
}

.care-med-sheet__tabs button {
  border-radius: var(--care-v2-radius-pill, 999px);
  border-color: var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  color: var(--care-v2-ink, #0f172a);
  font-weight: 600;
}

.care-med-sheet__tabs button.is-active {
  background: var(--care-v2-primary, #0066ff) !important;
  border-color: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
}

.care-med-sheet__panel {
  border-radius: var(--care-v2-radius-md, 16px);
  border-color: var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  box-shadow: var(--care-v2-shadow-sm);
}

.care-med-sheet__panel h2 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a);
}

.care-med-sheet__actions .care-qty {
  border-radius: var(--care-v2-radius-pill, 999px);
  border-color: var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-primary-mist, #f0f7ff);
}

.care-med-sheet__actions .care-qty button {
  color: var(--care-v2-primary, #0066ff);
}

.care-med-sheet__actions .care-btn--cart {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-primary, #0066ff) !important;
  font-weight: 650;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.22);
}

.care-med-sheet__actions .care-btn--cart:disabled {
  background: var(--care-v2-muted, #64748b) !important;
  opacity: 0.55;
}

@media (min-width: 960px) {
  .care-med-sheet {
    background: rgba(247, 249, 252, 0.96);
  }

  .care-med-sheet__card {
    border-radius: var(--care-v2-radius-md, 16px);
    box-shadow: var(--care-v2-shadow);
  }

  .care-med-sheet__photo {
    border-radius: var(--care-v2-radius-md, 16px);
  }
}

/* —— Pharmacy store header (after choose center) —— */
.care--web .care-v2-pharm-store {
  position: relative;
  display: grid;
  grid-gap: 0;
  gap: 0;
  margin: 0 0 20px;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-pharm-store__media {
  position: relative;
  min-height: 160px;
  background: linear-gradient(135deg, #e8f3ff, #f8fbff);
}

.care--web .care-v2-pharm-store__cover {
  width: 100%;
  height: 180px;
  object-fit: cover;
  display: block;
}

.care--web .care-v2-pharm-store__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 30%, rgba(11, 31, 58, 0.45));
}

.care--web .care-v2-pharm-store__stage {
  position: relative;
  padding: 18px 22px 20px;
  margin-top: -48px;
}

.care--web .care-v2-pharm-store__tools {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.care--web .care-v2-pharm-store__ghost {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
}

.care--web .care-v2-pharm-store__identity {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 16px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  box-shadow: 0 10px 28px rgba(11, 31, 58, 0.08);
}

.care--web .care-v2-pharm-store__logo,
.care--web .care-v2-pharm-store__logo.care-avatar--practice {
  width: 64px !important;
  height: 64px !important;
  border-radius: 16px !important;
  object-fit: cover;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-primary-soft);
  flex-shrink: 0;
}

.care--web .care-v2-pharm-store__title {
  margin: 0 0 4px;
  font-family: var(--care-v2-font-display);
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-pharm-store__addr,
.care--web .care-v2-pharm-store__serve {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.9rem;
  line-height: 1.4;
}

.care--web .care-v2-pharm-methods {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.care--web .care-v2-pharm-method {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--care-v2-line);
  background: #fff;
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
}

.care--web .care-v2-pharm-method.is-on {
  background: var(--care-v2-primary-soft);
  border-color: color-mix(in srgb, var(--care-v2-primary) 40%, var(--care-v2-line));
  color: var(--care-v2-primary);
}

.care--web .care-v2-pharm-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  padding: 8px 16px;
  margin: 0 0 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--care-v2-line);
  box-shadow: 0 8px 24px rgba(11, 31, 58, 0.1);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.care--web .care-v2-pharm-sticky__back {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid var(--care-v2-line);
  border-radius: 999px;
  background: #fff;
  color: var(--care-v2-navy);
  cursor: pointer;
}

.care--web .care-v2-pharm-sticky__name {
  flex: 1 1;
  min-width: 0;
  font-size: 0.98rem;
  color: var(--care-v2-navy);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* —— Pharmacy / catalog filter bar —— */
.care--web .care-v2-pharmacy .care-filterbar,
.care--web .care-v2-lab .care-filterbar,
.care--web .care-v2-rad .care-filterbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: 12px 0 18px;
  padding: 12px 14px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(11, 31, 58, 0.04);
}

.care--web .care-v2-pharmacy .care-filterbar__search,
.care--web .care-v2-lab .care-filterbar__search,
.care--web .care-v2-rad .care-filterbar__search {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 220px;
  min-height: 44px;
  padding: 0 12px;
  border-radius: 12px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: #f8fbff;
}

.care--web .care-v2-pharmacy .care-filterbar__toggle,
.care--web .care-v2-lab .care-filterbar__toggle,
.care--web .care-v2-rad .care-filterbar__toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: #fff;
  color: var(--care-v2-navy, #0b1f3a);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}

.care--web .care-v2-pharmacy .care-filterbar__toggle.is-active,
.care--web .care-v2-pharmacy .care-filterbar__toggle.has-active {
  background: var(--care-v2-primary-soft, #ebf5ff);
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, var(--care-v2-line, #e2e8f0));
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-v2-pharmacy .care-filterbar__field select {
  min-height: 40px;
  padding: 0 12px;
  border-radius: 12px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: #fff;
  font: inherit;
}

/**
 * MedCare — global skeletons, default images, dots, infinite footer.
 * Imported last from CareLayout (after page-specific care-medcare-*.css).
 * Scope: .care--web only. Brand: CareOS24.
 */

/* —— Skeleton shimmer + card shell —— */
.care--web .care-skel-list {
  margin: 8px 0 18px;
}

.care--web .care-skel {
  background: var(--care-v2-surface) !important;
  border: 1px solid var(--care-v2-line) !important;
  border-radius: var(--care-v2-radius-md) !important;
  box-shadow: var(--care-v2-shadow-sm);
  padding: 16px !important;
  min-height: 120px;
}

.care--web .care-skel__bone {
  display: block;
  border-radius: 8px;
  background: linear-gradient(90deg, #eef2f7 0%, #e0ebff 45%, #eef2f7 90%) !important;
  background-size: 220% 100% !important;
  animation: care-medcare-skel-shimmer 1.15s ease-in-out infinite;
}

html[dir='rtl'] .care--web .care-skel__bone {
  animation-name: care-medcare-skel-shimmer-rtl;
}

@keyframes care-medcare-skel-shimmer {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: -100% 0;
  }
}

@keyframes care-medcare-skel-shimmer-rtl {
  0% {
    background-position: -100% 0;
  }
  100% {
    background-position: 100% 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .care--web .care-skel__bone {
    animation: none;
    background: #eef2f7 !important;
  }
}

/* —— Skeleton list layouts —— */
.care--web .care-skel-list--doctor,
.care--web .care-skel-list--practice {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  grid-gap: 16px;
  gap: 16px;
  flex-direction: unset !important;
}

.care--web .care-skel-list--lane {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

.care--web .care-skel-list--chip {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap;
  gap: 8px;
}

.care--web .care-skel-list--service {
  display: flex !important;
  flex-direction: column;
  gap: 12px;
}

/* —— MedCare card shapes (all variants) —— */
.care--web .care-skel--medcare {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 12px !important;
}

.care--web .care-skel--medcare .care-skel__head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.care--web .care-skel--medcare.care-skel--center,
.care--web .care-skel--medcare.care-skel--search-hit {
  flex-direction: row !important;
  align-items: center !important;
}

.care--web .care-skel--doc {
  flex-direction: column;
  align-items: stretch;
}

.care--web .care-skel--lane {
  padding: 0 !important;
  min-height: 118px;
  overflow: hidden;
}

.care--web .care-skel--service {
  flex-direction: row;
  align-items: center;
  min-height: 88px;
}

.care--web .care-skel--banner {
  padding: 0 !important;
  min-height: 140px;
  overflow: hidden;
}

.care--web .care-skel--hero-block {
  flex-direction: column;
  align-items: stretch;
  min-height: 96px;
}

.care--web .care-skel--browse-row {
  flex-direction: row;
  align-items: center;
  gap: 14px;
  min-height: 56px;
}

.care--web .care-skel__avatar {
  width: 104px !important;
  height: 104px !important;
  border-radius: 50% !important;
  flex-shrink: 0;
}

.care--web .care-skel__avatar--sq {
  border-radius: 16px !important;
}

.care--web .care-skel__thumb {
  width: 96px;
  height: 96px;
  border-radius: 16px;
  flex-shrink: 0;
}

.care--web .care-skel__lane-fill,
.care--web .care-skel__banner-fill {
  width: 100%;
  height: 100%;
  min-height: 118px;
  border-radius: 16px;
}

.care--web .care-skel__banner-fill {
  min-height: 140px;
}

.care--web .care-skel__filter {
  width: 88px;
  height: 34px;
  border-radius: 999px;
}

.care--web .care-skel__glyph {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  flex-shrink: 0;
}

.care--web .care-skel__line--lg {
  width: 70%;
  height: 14px;
}

.care--web .care-skel__line {
  width: 55%;
  height: 12px;
}

.care--web .care-skel__line--sm {
  width: 40%;
  height: 10px;
}

.care--web .care-skel__line--grow {
  flex: 1 1;
  width: auto;
  min-width: 0;
}

.care--web .care-skel__count {
  width: 36px;
  height: 22px;
  border-radius: 999px;
  flex-shrink: 0;
}

.care--web .care-skel__avail {
  display: block;
  width: 100%;
  height: 48px;
  border-radius: var(--care-v2-radius);
}

.care--web .care-skel__pill {
  width: 100% !important;
  height: 44px !important;
  border-radius: 999px !important;
  margin-top: 8px;
}

.care--web .care-skel__chip {
  width: 64px;
  height: 22px;
  border-radius: 999px;
}

.care--web .care-skel__chips {
  display: flex;
  gap: 6px;
}

.care--web .care-skel__col {
  flex: 1 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* —— Default avatars / empty logos / product fallbacks —— */
.care--web .care-avatar,
.care--web img.care-avatar {
  background: var(--care-v2-primary-soft);
  object-fit: cover;
}

.care--web .care-avatar--empty,
.care--web .care-center__logo--empty,
.care--web .care-media--empty,
.care--web .care-smart__thumb--empty,
.care--web .care-smart__thumb--specialty {
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 20%, transparent);
}

.care--web .care-center__logo--empty,
.care--web .care-avatar--practice {
  display: inline-grid !important;
  place-items: center;
  position: relative;
  width: 88px !important;
  height: 88px !important;
  border-radius: 16px !important;
  flex-shrink: 0;
}

.care--web .care-avatar--practice-lg {
  width: 112px !important;
  height: 112px !important;
}

.care--web .care-avatar--practice .care-avatar__icon {
  width: 22px;
  height: 22px;
  opacity: 0.85;
}

.care--web .care-smart__thumb {
  width: 44px;
  height: 44px;
  border-radius: 16px;
  object-fit: cover;
  flex-shrink: 0;
}

.care--web .care-smart__thumb--empty,
.care--web .care-smart__thumb--specialty {
  display: inline-grid !important;
  place-items: center;
  box-sizing: border-box;
  border-radius: 14px !important;
  overflow: hidden;
}

.care--web .care-smart__thumb--specialty .care-specialty-ico,
.care--web .care-smart__thumb--specialty .care-specialty-ico svg {
  width: 22px;
  height: 22px;
  display: block;
  color: inherit;
}

.care--web .care-specialty-ico {
  display: inline-grid;
  place-items: center;
  color: inherit;
}

.care--web .care-specialty-ico svg {
  width: 100%;
  height: 100%;
}

.care--web .care-smart__specialty-hit {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 14px;
  text-decoration: none;
  color: inherit;
  border: 1px solid transparent;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.care--web .care-smart__specialty-hit:hover,
.care--web .care-smart__specialty-hit:focus-visible {
  background: var(--care-v2-primary-mist, #f0f7ff);
  border-color: color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
}

.care--web .care-smart__specialty-copy {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
  min-width: 0;
}

.care--web .care-smart__specialty-copy strong {
  font-size: 0.95rem;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-smart__specialty-copy em {
  font-style: normal;
  font-size: 0.78rem;
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-v2-pharm-card__media,
.care--web .care-avatar--sq.care-avatar--med {
  background: var(--care-v2-primary-soft) !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 18%, transparent);
  border-radius: var(--care-v2-radius-md) !important;
}

.care--web .care-mkt-card__media .care-avatar--sq.care-avatar--med {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}

.care--web .care-v2-pharm-card__media .care-mico,
.care--web .care-avatar--med .care-mico {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  background: var(--care-v2-primary-soft) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-v2-pharm-card__media .care-mico img,
.care--web .care-avatar--med .care-mico img {
  object-fit: contain;
  padding: 10px;
}

.care--web .care-mkt-card__media .care-avatar--med .care-mico img {
  object-fit: cover;
  padding: 0;
}

/* —— Global 8px dots (inactive #cbd5e1, active #0066FF) —— */
.care--web .care-market-hero__dots button,
.care--web .care-weekcal__today-dot,
.care--web .care-v2-practice-hero__dot,
.care--web .care-v2-payment-return__dots li {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #cbd5e1 !important;
  border: none !important;
  padding: 0 !important;
}

.care--web .care-market-hero__dots button.is-active,
.care--web .care-weekcal__day.is-selected .care-weekcal__today-dot,
.care--web .care-v2-practice-hero__dot,
.care--web .care-v2-payment-return__dots li.is-active,
.care--web .care-v2-payment-return__dots li.is-done {
  background: var(--care-v2-primary) !important;
  width: 8px !important;
  height: 8px !important;
}

/* Carousel: stretch active dot to pill */
.care--web .care-market-hero__dots button.is-active {
  width: 22px !important;
  border-radius: 999px !important;
}

.care--web .care-market-hero__dots {
  gap: 6px;
}

/* Pagination active page uses primary (numeric pager) */
.care--web .care-v2-practices-pager__num.is-active {
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
}

/* —— Infinite footer: primary pill load-more —— */
.care--web .care-infinite {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 24px 0 8px;
}

.care--web .care-infinite__meta,
.care--web .care-infinite__done {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 0.88rem;
}

.care--web .care-infinite__btn {
  min-width: 160px;
  min-height: 44px;
  padding: 0 24px;
  border-radius: var(--care-v2-radius-pill) !important;
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
  box-shadow: 0 6px 16px rgba(0, 102, 255, 0.22);
}

.care--web .care-infinite__btn:disabled {
  opacity: 0.72;
}

/* —— Smart search panel skeleton —— */
.care--web .care-smart__skel.care-skel-list--search-hit {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 8px 0 4px;
}

.care--web .care-smart__skel .care-skel--search-hit {
  min-height: 72px;
  padding: 12px 14px !important;
}


/**
 * MedCare — account hub, appointments, patients, profile, login.
 * Loaded last from CareLayout after all other care-medcare-*.css.
 */

/* ═══════════════════════════════════════════════════════════════════════════
   Login / signup — full-bleed care photo + focused form panel
   ═══════════════════════════════════════════════════════════════════════════ */

.care-v2-login {
  --care-login-photo: url('/care/design/heroes/login-ambient.jpg');
  position: relative;
  isolation: isolate;
  min-height: 100vh;
  min-height: 100dvh;
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 480px) !important;
  align-items: stretch;
  justify-content: stretch;
  padding: 0 !important;
  background: #0b1f3a !important;
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
  overflow: hidden;
}

.care-v2-login.care-v2-login--signup {
  --care-login-photo: url('/care/design/heroes/auth-phone.jpg');
}

.care-v2-login::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(105deg, rgba(11, 31, 58, 0.28) 0%, rgba(11, 31, 58, 0.55) 42%, rgba(11, 31, 58, 0.78) 100%),
    var(--care-login-photo) center / cover no-repeat;
  transform: scale(1.02);
}

.care-v2-login__brand {
  position: relative;
  z-index: 1;
  display: flex !important;
  align-items: flex-end;
  justify-content: flex-start;
  padding: clamp(28px, 5vw, 56px) !important;
  background: transparent !important;
  color: #fff;
  min-height: 0;
}

.care-v2-login__brand-inner {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
  max-width: 28rem;
  text-align: start;
  justify-items: start;
}

.care-v2-login__brand .care-v2-login__brand-logo,
.care-v2-login__brand .care-v2-brand-logo {
  filter: brightness(0) invert(1);
}

.care-v2-login__tag {
  margin: 0;
  color: rgba(255, 255, 255, 0.92) !important;
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 650;
  max-width: 18rem;
  line-height: 1.45;
}

.care-v2-login__brand-lead {
  margin: 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(1.35rem, 2.4vw, 1.85rem);
  font-weight: 650;
  letter-spacing: -0.03em;
  line-height: 1.25;
  max-width: 16ch;
}

.care-v2-login__panel {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(28px, 4vw, 48px) clamp(22px, 3.5vw, 40px) !important;
  border-radius: 0;
  background: rgba(255, 255, 255, 0.97) !important;
  border: 0;
  -webkit-border-start: 1px solid rgba(255, 255, 255, 0.35);
          border-inline-start: 1px solid rgba(255, 255, 255, 0.35);
  box-shadow: -24px 0 64px rgba(8, 24, 42, 0.28);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.care-v2-login__locale {
  top: 18px !important;
  inset-inline-end: 18px !important;
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  color: var(--care-v2-navy, #0b1f3a) !important;
  font-size: 0.82rem;
  font-weight: 600;
  white-space: nowrap;
}

.care-v2-login__locale span {
  color: var(--care-v2-muted, #64748b);
  font-weight: 500;
}

.care-v2-login__locale span.is-active {
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 700;
}

.care-v2-login__back {
  position: absolute;
  top: 18px;
  inset-inline-start: 18px;
  z-index: 2;
  width: 44px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
  background: #fff;
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 1.35rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: var(--care-v2-shadow-sm, 0 2px 8px rgba(11, 31, 58, 0.06));
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.care-v2-login__back:hover {
  transform: translateX(-2px);
  box-shadow: 0 8px 20px rgba(11, 31, 58, 0.1);
}

.care-v2-login[dir='rtl'] .care-v2-login__back:hover {
  transform: translateX(2px);
}

.care-v2-login[dir='rtl'] .care-v2-login__back span {
  display: inline-block;
  transform: scaleX(-1);
}

.care-v2-login__title {
  margin-top: 28px;
  font-family: var(--care-v2-font-display, 'Inter', system-ui, sans-serif) !important;
  font-weight: 700 !important;
  color: var(--care-v2-navy, #0b1f3a) !important;
  letter-spacing: -0.03em;
}

.care-v2-login__title::after {
  background: var(--care-v2-primary, #0066ff) !important;
}

.care-v2-login__lead {
  color: var(--care-v2-muted, #64748b) !important;
  line-height: 1.5;
}

.care-v2-login__input {
  border-radius: var(--care-v2-radius, 12px) !important;
  border-color: var(--care-v2-line, #e2e8f0) !important;
  background: var(--care-v2-paper, #f7f9fc);
}

.care-v2-login__input:focus-within {
  border-color: var(--care-v2-primary, #0066ff) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--care-v2-primary, #0066ff) 18%, transparent);
}

.care-v2-login__submit {
  min-height: 48px !important;
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em;
}

.care-v2-login__submit:not(:disabled):hover {
  background: var(--care-v2-primary-hover, #0052cc) !important;
  color: #fff !important;
}

.care-v2-login__alt,
.care-v2-login__hint-link {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care-v2-login__switch {
  margin: 18px 0 0;
  text-align: center;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.92rem;
}

.care-v2-login__switch a {
  color: var(--care-v2-primary, #0066ff);
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.care-v2-login__nafath {
  border-radius: var(--care-v2-radius-md, 16px) !important;
  border-color: var(--care-v2-line, #e2e8f0) !important;
}

.care-v2-login__footer {
  color: var(--care-v2-muted, #64748b) !important;
}

@media (max-width: 900px) {
  .care-v2-login {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    align-content: stretch;
    height: 100vh;
    height: 100dvh;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  .care-v2-login::before {
    position: fixed;
    inset: 0;
    height: 100%;
    z-index: 0;
    background:
      linear-gradient(180deg, rgba(11, 31, 58, 0.2) 0%, rgba(11, 31, 58, 0.55) 38%, rgba(11, 31, 58, 0.88) 100%),
      var(--care-login-photo) center / cover no-repeat;
  }

  .care-v2-login__brand {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    min-height: 34vh;
    padding: 28px 22px 20px !important;
  }

  .care-v2-login__brand-lead {
    max-width: 20ch;
  }

  .care-v2-login__panel {
    position: relative;
    z-index: 2;
    flex: 1 0 auto;
    border-radius: 28px 28px 0 0;
    -webkit-border-start: 0;
            border-inline-start: 0;
    box-shadow: 0 -18px 40px rgba(8, 24, 42, 0.28);
    min-height: 72vh;
    padding-top: 36px !important;
    padding-bottom: max(28px, env(safe-area-inset-bottom, 0px)) !important;
  }
}

@media (max-width: 480px) {
  .care-v2-login__panel {
    padding: 28px 18px 22px !important;
  }

  .care-v2-login__brand {
    min-height: 28vh;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Account hub shell + tiles
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web.care:has(.care-v2-hub-shell) .care-main,
.care.care--web:has(.care-v2-hub) .care-main {
  background: var(--care-v2-paper, #f7f9fc) !important;
}

.care--web .care-v2-hub-shell {
  min-height: 100dvh;
  margin: 0 !important;
  background: var(--care-v2-paper, #f7f9fc) !important;
}

.care--web .care-v2-hub-side {
  background: var(--care-v2-surface, #fff);
  -webkit-border-end: 1px solid var(--care-v2-line, #e2e8f0);
          border-inline-end: 1px solid var(--care-v2-line, #e2e8f0);
  padding: 24px 16px 28px;
}

.care--web .care-v2-hub-side__word {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-v2-hub-side__word span {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-v2-hub-side__logo {
  border-radius: var(--care-v2-radius, 12px);
  background:
    linear-gradient(var(--care-v2-primary, #0066ff), var(--care-v2-primary, #0066ff)) center / 28% 72% no-repeat,
    linear-gradient(var(--care-v2-primary, #0066ff), var(--care-v2-primary, #0066ff)) center / 72% 28% no-repeat,
    var(--care-v2-primary-soft, #ebf5ff);
  box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, transparent);
}

.care--web .care-v2-hub-side__link {
  border-radius: var(--care-v2-radius, 12px);
  color: var(--care-v2-navy-soft, #16324f);
  font-weight: 550;
}

.care--web .care-v2-hub-side__link svg {
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-v2-hub-side__link.is-active {
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  color: var(--care-v2-primary, #0066ff) !important;
  font-weight: 650;
}

.care--web .care-v2-hub-side__link.is-active svg {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-v2-hub-side__help a {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-v2-hub-shell .care-v2-hub {
  padding: 28px 32px 40px;
  max-width: none;
}

.care--web .care-v2-hub__hello {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a) !important;
  letter-spacing: -0.03em;
}

.care--web .care-v2-hub__hello em {
  color: var(--care-v2-primary, #0066ff) !important;
  font-style: normal;
}

.care--web .care-v2-hub__welcome {
  color: var(--care-v2-muted, #64748b) !important;
}

.care--web .care-v2-hub__avatar,
.care--web .care-user-avatar,
.care--web .care-avatar--sq {
  object-fit: cover;
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 18%, transparent);
}

.care--web .care-v2-hub__avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
}

.care--web .care-v2-hub__tiles {
  gap: 12px;
}

.care--web .care-v2-hub__tile,
.care--web .care-v2-hub__next {
  padding: 18px 20px;
  border-radius: var(--care-v2-radius-md, 16px) !important;
  background: var(--care-v2-surface, #fff) !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
  box-shadow: var(--care-v2-shadow-sm, 0 2px 8px rgba(11, 31, 58, 0.06)) !important;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.15s ease;
}

.care--web .care-v2-hub__tile:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, var(--care-v2-line, #e2e8f0)) !important;
  box-shadow: var(--care-v2-shadow, 0 8px 24px rgba(11, 31, 58, 0.08)) !important;
}

.care--web .care-v2-hub__tile-ico {
  width: 48px;
  height: 48px;
  border-radius: var(--care-v2-radius, 12px) !important;
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 14%, transparent);
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-v2-hub__tile strong,
.care--web .care-v2-hub__next-kicker {
  color: var(--care-v2-navy, #0b1f3a) !important;
  font-weight: 700;
}

.care--web .care-v2-hub__tile-lead,
.care--web .care-v2-hub__next-meta,
.care--web .care-v2-hub__secure {
  color: var(--care-v2-muted, #64748b) !important;
}

.care--web .care-v2-hub__next-when {
  color: var(--care-v2-primary, #0066ff) !important;
  font-weight: 700;
}

.care--web .care-v2-hub__next-btn {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, var(--care-v2-line, #e2e8f0)) !important;
  color: var(--care-v2-primary, #0066ff) !important;
  background: var(--care-v2-surface, #fff) !important;
  font-weight: 650;
  padding: 10px 16px !important;
}

.care--web .care-v2-hub__chev {
  border-color: var(--care-v2-muted, #64748b);
  opacity: 0.55;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Appointments list
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .care-v2-appts {
  max-width: 960px;
  padding: 4px 0 32px;
  container-type: inline-size;
}

.care--web .care-v2-appts__head h1 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a) !important;
  letter-spacing: -0.03em;
}

.care--web .care-v2-appts__head {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}

.care--web .care-v2-appts__head .care-btn {
  width: auto;
  flex: 0 0 auto;
  align-self: center;
}

@media (max-width: 640px) {
  .care--web .care-v2-appts__head {
    flex-direction: column;
    align-items: stretch;
  }

  .care--web .care-v2-appts__head .care-btn {
    width: 100%;
  }
}

.care--web .care-v2-appts__tabs {
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius-pill, 999px);
  padding: 4px;
}

.care--web .care-v2-appts__tabs button {
  border-radius: var(--care-v2-radius-pill, 999px);
  font-weight: 600;
  color: var(--care-v2-ink, #0f172a);
}

.care--web .care-v2-appts__tabs button.is-active {
  background: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
}

.care--web .care-v2-appts__list {
  display: grid !important;
  grid-gap: 12px !important;
  gap: 12px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

.care--web .care-v2-appts__list > li + li {
  border-top: 0 !important;
}

.care--web .care-v2-appts__row {
  padding: 18px 20px;
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow-sm, 0 2px 8px rgba(11, 31, 58, 0.06));
}

.care--web .care-v2-appts__who img,
.care--web .care-v2-appts__who .pp-doctor-avatar {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 16%, transparent);
  object-fit: cover;
}

.care--web .care-v2-appts__who strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 700;
}

.care--web .care-v2-appts__who em {
  color: var(--care-v2-primary, #0066ff) !important;
  font-weight: 600;
}

.care--web .care-v2-appts__who span,
.care--web .care-v2-appts__when span {
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-v2-appts__view {
  border-radius: var(--care-v2-radius-pill, 999px);
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 650;
}

.care--web .care-v2-appts__join {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-primary, #0066ff) !important;
  min-height: 36px;
  padding: 0 16px;
  font-weight: 650;
}

.care--web .care-v2-status {
  min-height: 28px;
  padding: 0 12px;
  border-radius: var(--care-v2-radius-pill, 999px);
  font-size: 0.75rem;
  font-weight: 700;
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-v2-status--confirmed,
.care--web .care-v2-status--scheduled,
.care--web .care-v2-status--upcoming,
.care--web .care-v2-status--today,
.care--web .care-v2-status--booked {
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-v2-status--completed,
.care--web .care-v2-status--ready {
  background: var(--care-v2-success-soft, #dcfce7) !important;
  color: var(--care-v2-success, #22c55e) !important;
}

.care--web .care-v2-status--cancelled,
.care--web .care-v2-status--no_show {
  background: #fee2e2 !important;
  color: #b91c1c !important;
}

.care--web .care-v2-appts__row > .care-v2-status {
  justify-self: start;
  width: -moz-fit-content;
  width: fit-content;
}

.care--web .care-v2-appts__actions {
  min-width: 0;
}

@media (min-width: 900px) {
  .care--web .care-v2-appts__cols,
  .care--web .care-v2-appts__row {
    grid-template-columns: minmax(0, 2.2fr) minmax(140px, 1fr) 110px 156px;
  }

  .care--web .care-v2-appts__actions {
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
  }
}

@container (max-width: 760px) {
  .care--web .care-v2-appts__cols {
    display: none;
  }

  .care--web .care-v2-appts__row {
    grid-template-columns: minmax(0, 1fr);
  }

  .care--web .care-v2-appts__actions {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
  }
}

.care--web .care-v2-appts__cols {
  color: var(--care-v2-muted, #64748b);
}

/* ═══════════════════════════════════════════════════════════════════════════
   Account pages — patients, profile tiles
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .care-account-page,
.care--web .care-account .pp-section {
  max-width: 920px;
  gap: 14px;
  padding: 4px 0 36px;
}

.care--web .care-account-id,
.care--web .care-account-card,
.care--web .care-account-tile,
.care--web .care-account .pp-section__head {
  border-radius: var(--care-v2-radius-md, 16px) !important;
  background: var(--care-v2-surface, #fff) !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
  box-shadow: var(--care-v2-shadow-sm, 0 2px 8px rgba(11, 31, 58, 0.06)) !important;
}

.care--web .care-account-id__hello,
.care--web .care-account-kicker {
  color: var(--care-v2-primary, #0066ff) !important;
  letter-spacing: 0.08em;
}

.care--web .care-account-id h1,
.care--web .care-account-heading,
.care--web .care-account-card h2,
.care--web .care-account .pp-section__head h1 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a) !important;
  letter-spacing: -0.03em;
}

.care--web .care-account-id__copy span,
.care--web .care-account-lead,
.care--web .care-account-person span,
.care--web .care-account-field small {
  color: var(--care-v2-muted, #64748b) !important;
}

.care--web .care-account-id__photo,
.care--web .care-account-id__photo-btn,
.care--web .care-account-person__photo {
  border-radius: var(--care-v2-radius-md, 16px) !important;
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 16%, transparent);
  object-fit: cover;
}

.care--web .care-account-id__edit {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-account-field span {
  color: var(--care-v2-navy-soft, #16324f);
  font-weight: 600;
}

.care--web .care-account-field input {
  border-radius: var(--care-v2-radius, 12px);
  border-color: var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-paper, #f7f9fc);
  min-height: 44px;
}

.care--web .care-account-field input:focus {
  outline: 2px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, transparent);
  border-color: var(--care-v2-primary, #0066ff);
}

.care--web .care-account-page .care-btn--primary,
.care--web .care-account .pp-btn {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
  border: 0;
  font-weight: 650;
  min-height: 44px;
}

.care--web .care-account-page .care-btn--ghost,
.care--web .care-account .pp-btn--ghost {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-surface, #fff) !important;
  color: var(--care-v2-navy, #0b1f3a) !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
  box-shadow: none !important;
}

.care--web .care-account-person strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 700;
}

.care--web .care-account-tile strong {
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-account-tile__media {
  border-radius: var(--care-v2-radius, 12px);
  background: var(--care-v2-primary-soft, #ebf5ff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 14%, transparent);
}

.care--web .care-account-row::after {
  border-color: var(--care-v2-muted, #64748b);
}

.care--web .care-account-people {
  gap: 12px;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Active dots (8px primary)
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .care-dot,
.care--web .care-unread-dot,
.care--web [class*='__dot'].is-active,
.care--web [class*='__dot--active'] {
  width: 8px !important;
  height: 8px !important;
  min-width: 8px !important;
  min-height: 8px !important;
  border-radius: 50% !important;
  background: var(--care-v2-primary, #0066ff) !important;
  border: 0 !important;
  padding: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Account skeletons
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .care-skel--hub-tile {
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) 12px;
  align-items: center;
  grid-gap: 16px;
  gap: 16px;
  padding: 18px 20px;
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-skel--hub-tile .care-skel__glyph {
  width: 48px;
  height: 48px;
  border-radius: var(--care-v2-radius, 12px);
}

.care--web .care-skel--hub-tile .care-skel__chev {
  width: 10px;
  height: 10px;
  border-radius: 2px;
  justify-self: end;
}

.care--web .care-skel--account-row {
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) 88px;
  align-items: center;
  grid-gap: 14px;
  gap: 14px;
  padding: 18px 20px;
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-skel--account-row .care-skel__avatar {
  width: 52px !important;
  height: 52px !important;
}

.care--web .care-skel--account-row .care-skel__status {
  width: 88px;
  height: 28px;
  border-radius: var(--care-v2-radius-pill, 999px);
}

.care--web .care-skel-list--hub-tile,
.care--web .care-skel-list--account-row {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.care--web .care-v2-appts__skel {
  margin-top: 8px;
}

.care--web .care-v2-hub__skel-head {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin-bottom: 4px;
}

.care--web .care-v2-hub__skel-head .care-skel__line--lg {
  width: min(280px, 70%);
  height: 28px;
}

@media (max-width: 900px) {
  .care--web .care-v2-hub-shell .care-v2-hub {
    padding: 8px 0 32px;
  }

  .care--web .care-skel--account-row {
    grid-template-columns: 52px minmax(0, 1fr);
  }

  .care--web .care-skel--account-row .care-skel__status {
    grid-column: 1 / -1;
    width: 120px;
    justify-self: start;
  }
}

@media (max-width: 640px) {
  .care--web .care-v2-hub__tile,
  .care--web .care-v2-hub__next,
  .care--web .care-v2-appts__row,
  .care--web .care-skel--hub-tile,
  .care--web .care-skel--account-row {
    padding: 16px;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Appointment detail — white 16px cards, primary pills
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .pp-detail {
  max-width: 920px;
  padding: 4px 0 36px;
}

.care--web .pp-detail .pp-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 14px;
  color: var(--care-v2-primary, #0066ff) !important;
  font-weight: 650;
  text-decoration: none;
}

.care--web .pp-detail-hero {
  padding: 18px 20px;
  margin-bottom: 14px;
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .pp-detail-hero__kicker {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-primary, #0066ff) !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.72rem;
}

.care--web .pp-detail-hero h1 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a) !important;
  letter-spacing: -0.03em;
}

.care--web .pp-detail-hero__lead {
  color: var(--care-v2-muted, #64748b) !important;
}

.care--web .pp-detail .pp-status {
  min-height: 28px;
  padding: 0 12px;
  border-radius: var(--care-v2-radius-pill, 999px);
  font-size: 0.75rem;
  font-weight: 700;
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
}

.care--web .pp-detail .pp-status--completed,
.care--web .pp-detail .pp-status--ready {
  background: var(--care-v2-success-soft, #dcfce7) !important;
  color: var(--care-v2-success, #22c55e) !important;
}

.care--web .pp-detail .pp-status--cancelled,
.care--web .pp-detail .pp-status--no_show {
  background: #fef2f2 !important;
  color: #dc2626 !important;
}

.care--web .pp-detail .pp-chip {
  padding: 6px 12px;
  border-radius: var(--care-v2-radius-pill, 999px);
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
  font-size: 0.75rem;
  font-weight: 650;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 14%, transparent);
}

.care--web .pp-detail .pp-fact {
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .pp-detail .pp-fact span {
  color: var(--care-v2-muted, #64748b);
}

.care--web .pp-detail .pp-fact strong {
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .pp-detail-block__title {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a);
  letter-spacing: -0.02em;
}

.care--web .pp-detail-card {
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .pp-detail-card h3 {
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .pp-detail .pp-banner-note {
  border-radius: var(--care-v2-radius, 12px);
  background: var(--care-v2-primary-mist, #f0f7ff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 18%, var(--care-v2-line, #e2e8f0));
  color: var(--care-v2-navy-soft, #16324f);
}

.care--web .pp-detail .pp-visit-brief textarea {
  border-radius: var(--care-v2-radius, 12px);
  border-color: var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-paper, #f7f9fc);
  min-height: 96px;
}

.care--web .pp-detail .pp-visit-brief textarea:focus {
  outline: 2px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, transparent);
  border-color: var(--care-v2-primary, #0066ff);
}

.care--web .pp-detail .pp-btn {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-primary, #0066ff) !important;
  border: 0;
  font-weight: 650;
  min-height: 44px;
}

.care--web .pp-detail .pp-btn--ghost {
  background: var(--care-v2-surface, #fff) !important;
  color: var(--care-v2-navy, #0b1f3a) !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
}

.care--web .pp-detail .pp-btn--danger {
  background: #dc2626 !important;
}

.care--web .pp-detail .pp-tag-list li {
  border-radius: var(--care-v2-radius-pill, 999px);
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-navy, #0b1f3a);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 12%, transparent);
}

.care--web .pp-detail .pp-confirm__card {
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow);
}

.care--web .pp-detail .pp-doctor-avatar {
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 16%, transparent) !important;
}

.care--web .pp-detail .pp-muted {
  color: var(--care-v2-muted, #64748b);
}

.care--web .pp-detail .pp-prose {
  color: var(--care-v2-navy-soft, #16324f);
  line-height: 1.55;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Account sub-routes — reports, invoices, orders, admissions
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .care-v2-reports,
.care--web .pp-invoices,
.care--web .care-v2-history,
.care--web .pp-section:has(.pp-pharmacy-card) {
  max-width: 960px;
  padding: 4px 0 36px;
}

.care--web .care-v2-reports__title,
.care--web .pp-invoices .pp-section__head h1,
.care--web .care-v2-history__head h1,
.care--web .pp-section__head h1 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a) !important;
  letter-spacing: -0.03em;
}

.care--web .care-v2-reports__crumb {
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-v2-reports__crumb a {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-v2-reports__tabs,
.care--web .pp-invoice-filters {
  display: flex;
  gap: 4px;
  padding: 4px;
  border-radius: var(--care-v2-radius-pill, 999px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
}

.care--web .care-v2-reports__tabs button,
.care--web .pp-invoice-filter {
  border: 0 !important;
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: transparent !important;
  color: var(--care-v2-ink, #0f172a);
  font-weight: 600;
  min-height: 36px;
  padding: 0 16px;
  box-shadow: none !important;
}

.care--web .care-v2-reports__tabs button.is-active,
.care--web .pp-invoice-filter.is-on {
  background: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
}

.care--web .care-v2-reports__tabs button.is-active::after {
  display: none;
}

.care--web .pp-chips button {
  border-radius: var(--care-v2-radius-pill, 999px);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  color: var(--care-v2-ink, #0f172a);
  font-weight: 600;
}

.care--web .pp-chips button.is-active {
  background: var(--care-v2-primary, #0066ff) !important;
  border-color: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
}

.care--web .care-v2-reports__list,
.care--web .pp-invoice-list,
.care--web .care-v2-history__cards,
.care--web .care-v2-history__list {
  display: grid !important;
  grid-gap: 12px !important;
  gap: 12px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

.care--web .care-v2-reports__list > li + li,
.care--web .care-v2-history__list > li + li {
  border-top: 0 !important;
}

.care--web .care-v2-reports__row,
.care--web .pp-invoice-card,
.care--web .pp-pharmacy-card,
.care--web .care-v2-history__card,
.care--web .care-v2-history__row {
  padding: 18px 20px;
  border-radius: var(--care-v2-radius-md, 16px) !important;
  background: var(--care-v2-surface, #fff) !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
  box-shadow: var(--care-v2-shadow-sm) !important;
  text-decoration: none;
  color: inherit;
}

.care--web .care-v2-reports__row:hover,
.care--web .care-v2-history__card:hover,
.care--web .care-v2-history__row:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 28%, var(--care-v2-line, #e2e8f0)) !important;
}

.care--web .care-v2-reports__type strong,
.care--web .pp-invoice-card h2,
.care--web .pp-pharmacy-card__head strong,
.care--web .care-v2-history__card-main strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 700;
}

.care--web .care-v2-reports__type span,
.care--web .care-v2-reports__practice,
.care--web .pp-invoice-card p,
.care--web .care-v2-history__place {
  color: var(--care-v2-muted, #64748b) !important;
}

.care--web .care-v2-reports__type-ico {
  border-radius: var(--care-v2-radius, 12px);
  background: var(--care-v2-primary-soft, #ebf5ff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 14%, transparent);
}

.care--web .care-v2-reports__view {
  border-radius: var(--care-v2-radius-pill, 999px);
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 650;
}

.care--web .pp-invoice-hero {
  border-radius: var(--care-v2-radius-md, 16px);
  background: linear-gradient(135deg, var(--care-v2-navy, #0b1f3a), var(--care-v2-primary, #0066ff));
  color: #fff;
  padding: 20px;
  margin-bottom: 14px;
}

.care--web .pp-invoice-hero--clear {
  background: linear-gradient(135deg, #15803d, var(--care-v2-success, #22c55e));
}

.care--web .pp-invoice-card .pp-status,
.care--web .pp-pharmacy-card .pp-status {
  border-radius: var(--care-v2-radius-pill, 999px);
  font-weight: 700;
  font-size: 0.75rem;
}

.care--web .pp-invoice-pay,
.care--web .pp-section .pp-btn {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-primary, #0066ff) !important;
  font-weight: 650;
  min-height: 44px;
}

.care--web .care-v2-history__ico {
  border-radius: var(--care-v2-radius, 12px);
  background: var(--care-v2-primary-soft, #ebf5ff);
}

.care--web .care-v2-history__ico.is-active {
  background: var(--care-v2-primary, #0066ff);
}

.care--web .care-v2-history__block,
.care--web .care-v2-history__kv {
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-surface, #fff);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow-sm);
}

.care--web .care-v2-reports__secure {
  margin-top: 20px;
  padding: 16px;
  border-radius: var(--care-v2-radius-md, 16px);
  background: var(--care-v2-primary-mist, #f0f7ff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 12%, var(--care-v2-line, #e2e8f0));
}

.care--web .care-v2-reports__secure a {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-account-page__skel {
  margin-bottom: 12px;
}

/* ═══════════════════════════════════════════════════════════════════════════
   CareAuthSheet — MedCare login/signup overlay
   ═══════════════════════════════════════════════════════════════════════════ */

.care-auth-sheet {
  font-family: var(--care-v2-font, 'Inter', system-ui, sans-serif);
}

.care-auth-sheet__card {
  border-radius: var(--care-v2-radius-lg, 20px) var(--care-v2-radius-lg, 20px) 0 0;
  box-shadow: 0 -18px 48px rgba(11, 31, 58, 0.16);
}

.care-auth-sheet__hero {
  background:
    linear-gradient(180deg, rgba(11, 31, 58, 0.2), rgba(11, 31, 58, 0.72)),
    url('/care/design/heroes/auth-signup.jpg') center 30% / cover no-repeat;
  min-height: 200px;
}

.care-auth-sheet__card header p {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care-auth-sheet__card h2 {
  font-family: var(--care-v2-font-display);
  color: var(--care-v2-navy, #0b1f3a) !important;
}

.care-auth-sheet__card header span {
  color: var(--care-v2-muted, #64748b);
}

.care-auth-sheet__close {
  border-radius: var(--care-v2-radius-pill, 999px);
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  color: var(--care-v2-navy, #0b1f3a) !important;
}

.care-auth-sheet__card label span {
  color: var(--care-v2-navy-soft, #16324f);
  font-weight: 600;
}

.care-auth-sheet__card input[type='text'],
.care-auth-sheet__card input[type='email'],
.care-auth-sheet__card input[type='password'],
.care-auth-sheet__card input[type='tel'],
.care-auth-sheet__card input:not([type]) {
  border-radius: var(--care-v2-radius, 12px);
  border-color: var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-paper, #f7f9fc);
  color: var(--care-v2-navy, #0b1f3a);
}

.care-auth-sheet__card input:focus {
  border-color: var(--care-v2-primary, #0066ff) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--care-v2-primary, #0066ff) 18%, transparent) !important;
}

.care-auth-sheet__switch {
  border-radius: var(--care-v2-radius, 12px);
  background: var(--care-v2-primary-mist, #f0f7ff);
}

.care-auth-sheet__switch button.is-active {
  color: var(--care-v2-primary, #0066ff);
  box-shadow: var(--care-v2-shadow-sm);
}

.care-auth-sheet__toggle {
  color: var(--care-v2-primary, #0066ff) !important;
}

.care-auth-sheet .care-btn--primary {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 650;
  min-height: 48px;
}

.care-auth-sheet .care-btn--primary .care-ico,
.care-auth-sheet .care-btn--primary svg,
.care-auth-sheet .care-btn--primary .care-action-icon {
  color: #fff !important;
  stroke: #fff !important;
}

.care-auth-sheet .care-btn--solid {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
  background: var(--care-v2-surface, #fff) !important;
  color: var(--care-v2-navy, #0b1f3a) !important;
  font-weight: 650;
  min-height: 48px;
}

.care-auth-sheet__photo-pick {
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
}

@media (min-width: 720px) {
  .care-auth-sheet__card {
    border-radius: var(--care-v2-radius-lg, 20px);
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Track Your Order — MedCare collage timeline
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .care-medcare-track {
  max-width: 920px;
}

.care--web .care-medcare-track__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
  padding: 6px;
  background: var(--care-v2-paper, #f7f9fc);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: var(--care-v2-radius-pill, 999px);
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
}

.care--web .care-medcare-track__tabs > button {
  border: none;
  background: transparent;
  color: var(--care-v2-muted, #64748b);
  font: inherit;
  font-size: 0.88rem;
  font-weight: 600;
  padding: 10px 16px;
  border-radius: var(--care-v2-radius-pill, 999px);
  cursor: pointer;
}

.care--web .care-medcare-track__tabs > button.is-active {
  background: var(--care-v2-primary, #0066ff);
  color: #fff;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.22);
}

.care--web .care-medcare-track__timeline {
  background: var(--care-v2-surface, #fff) !important;
  border-color: var(--care-v2-line, #e2e8f0) !important;
  border-radius: var(--care-v2-radius-lg, 20px) !important;
  padding: 20px 18px 24px !important;
}

.care--web .care-medcare-track__title {
  color: var(--care-v2-navy, #0b1f3a);
  font-family: var(--care-v2-font-display, 'Inter', system-ui, sans-serif);
}

.care--web .care-medcare-track__steps {
  list-style: none;
  margin: 0;
  padding: 18px 8px 4px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 8px;
  gap: 8px;
  position: relative;
}

.care--web .care-medcare-track__steps::before {
  content: '';
  position: absolute;
  top: 30px;
  left: 12%;
  right: 12%;
  height: 3px;
  background: var(--care-v2-line, #e2e8f0);
  z-index: 0;
}

.care--web .care-medcare-track__step {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
  position: relative;
  z-index: 1;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.82rem;
}

.care--web .care-medcare-track__node {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--care-v2-surface, #fff);
  border: 3px solid var(--care-v2-line, #e2e8f0);
  box-shadow: 0 0 0 4px var(--care-v2-surface, #fff);
  display: grid;
  place-items: center;
  color: #fff;
}

.care--web .care-medcare-track__node svg {
  width: 14px;
  height: 14px;
  display: none;
}

.care--web .care-medcare-track__step.is-done {
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 600;
}

.care--web .care-medcare-track__step.is-done .care-medcare-track__node {
  background: var(--care-v2-primary, #0066ff);
  border-color: var(--care-v2-primary, #0066ff);
}

.care--web .care-medcare-track__step.is-done .care-medcare-track__node svg {
  display: block;
}

.care--web .care-medcare-track__step.is-current {
  color: var(--care-v2-primary, #0066ff);
  font-weight: 700;
}

.care--web .care-medcare-track__step.is-current .care-medcare-track__node {
  background: var(--care-v2-primary, #0066ff);
  border-color: var(--care-v2-primary, #0066ff);
  box-shadow: 0 0 0 4px var(--care-v2-surface, #fff), 0 0 0 8px rgba(0, 102, 255, 0.18);
  animation: care-medcare-track-pulse 1.6s ease-in-out infinite;
}

.care--web .care-medcare-track__step.is-current .care-medcare-track__node svg {
  display: none;
}

.care--web .care-medcare-track__step.is-done.is-current .care-medcare-track__node svg {
  display: block;
}

.care--web .care-medcare-track__at {
  font-size: 0.72rem;
  font-weight: 500;
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-medcare-track__callout {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 18px;
  padding: 16px 18px;
  border-radius: 12px;
  background: var(--care-v2-soft, #ebf5ff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 22%, var(--care-v2-line, #e2e8f0));
}

.care--web .care-medcare-track__callout-ico {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: #fff;
  color: var(--care-v2-primary, #0066ff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 18%, var(--care-v2-line, #e2e8f0));
}

.care--web .care-medcare-track__callout-body {
  flex: 1 1 200px;
  color: var(--care-v2-navy, #0b1f3a);
  font-size: 0.92rem;
  line-height: 1.45;
}

.care--web .care-medcare-track__view {
  flex: 0 0 auto;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 10px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

@keyframes care-medcare-track-pulse {
  0%,
  100% {
    box-shadow: 0 0 0 4px var(--care-v2-surface, #fff), 0 0 0 8px rgba(0, 102, 255, 0.16);
  }
  50% {
    box-shadow: 0 0 0 4px var(--care-v2-surface, #fff), 0 0 0 12px rgba(0, 102, 255, 0.06);
  }
}

@media (max-width: 720px) {
  .care--web .care-medcare-track__steps {
    grid-template-columns: 1fr;
    padding: 4px 0;
    gap: 0;
  }

  .care--web .care-medcare-track__steps::before {
    display: none;
  }

  .care--web .care-medcare-track__step {
    flex-direction: row;
    align-items: flex-start;
    text-align: start;
    gap: 12px;
    padding: 12px 0 12px 6px;
    -webkit-border-start: 3px solid var(--care-v2-line, #e2e8f0);
            border-inline-start: 3px solid var(--care-v2-line, #e2e8f0);
    -webkit-margin-start: 12px;
            margin-inline-start: 12px;
  }

  .care--web .care-medcare-track__step.is-done,
  .care--web .care-medcare-track__step.is-current {
    border-inline-start-color: var(--care-v2-primary, #0066ff);
  }

  .care--web .care-medcare-track__step.is-current {
    border-inline-start-color: var(--care-v2-primary, #0066ff);
  }

  .care--web .care-medcare-track__node {
    -webkit-margin-start: -22px;
            margin-inline-start: -22px;
  }

  .care--web .care-medcare-track__step strong,
  .care--web .care-medcare-track__at {
    display: block;
  }
}


/**
 * MedCare — Health Packages page + home packages banner.
 * Loaded last among page medcare CSS from CareLayout (before shell).
 */

/* —— Home packages banner —— */
.care--web .care-mc-pkg-banner {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(140px, 200px) minmax(180px, 240px);
  align-items: center;
  grid-gap: 20px 28px;
  gap: 20px 28px;
  max-width: 1200px;
  margin: 8px auto 28px;
  padding: 22px 28px;
  border-radius: 12px;
  background:
    radial-gradient(ellipse 80% 120% at 12% 50%, rgba(255, 255, 255, 0.55), transparent 55%),
    linear-gradient(105deg, #d4f1f4 0%, #c5ebf0 38%, #b8e4ec 100%);
  border: 1px solid color-mix(in srgb, #7ec8d4 35%, transparent);
  box-shadow: var(--care-v2-shadow-sm);
  overflow: hidden;
}

.care--web .care-mc-pkg-banner__media {
  position: relative;
  width: 100%;
  max-width: 200px;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(11, 31, 58, 0.12);
  justify-self: center;
}

.care--web .care-mc-pkg-banner__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care--web .care-mc-pkg-banner__copy {
  min-width: 0;
}

.care--web .care-mc-pkg-banner__title {
  margin: 0 0 6px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.25rem, 2.2vw, 1.65rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy);
  line-height: 1.25;
}

.care--web .care-mc-pkg-banner__lead {
  margin: 0 0 16px;
  color: var(--care-v2-muted);
  font-size: 0.95rem;
  line-height: 1.45;
  max-width: 36ch;
}

.care--web .care-mc-pkg-banner__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 22px;
  border-radius: 10px;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font-weight: 600;
  font-size: 0.92rem;
  text-decoration: none;
  border: none;
  box-shadow: 0 6px 16px color-mix(in srgb, var(--care-v2-primary) 28%, transparent);
}

.care--web .care-mc-pkg-banner__cta:hover {
  background: var(--care-v2-primary-hover) !important;
  color: #fff !important;
}

.care--web .care-mc-pkg-banner__trust-wrap {
  min-width: 0;
}

.care--web .care-mc-pkg-banner__trust-title {
  margin: 0 0 12px;
  font-family: var(--care-v2-font-display);
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.3;
}

.care--web .care-mc-pkg-banner__trust {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}

.care--web .care-mc-pkg-banner__trust li {
  display: flex;
  align-items: center;
  gap: 10px;
}

.care--web .care-mc-pkg-banner__trust-ico {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, 0.85);
  color: var(--care-v2-primary);
  box-shadow: 0 1px 0 rgba(11, 31, 58, 0.04);
}

.care--web .care-mc-pkg-banner__trust-ico svg {
  width: 18px;
  height: 18px;
}

.care--web .care-mc-pkg-banner__trust strong {
  display: block;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.25;
}

.care--web .care-mc-pkg-banner__trust span {
  display: block;
  font-size: 0.75rem;
  color: var(--care-v2-muted);
  line-height: 1.3;
}

/* —— Packages page —— */
.care--web .care-mc-packages .care-page__body,
.care--web .care-mc-packages__body {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 72px;
}

.care--web .care-mc-packages__head {
  margin-bottom: 20px;
}

.care--web .care-mc-packages__title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 3vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-primary);
  line-height: 1.15;
}

.care--web .care-mc-packages__lead {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 1rem;
  line-height: 1.45;
}

.care--web .care-mc-packages__filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 28px;
}

.care--web .care-mc-packages__search {
  display: block;
  width: min(100%, 420px);
}

.care--web .care-mc-packages__search input {
  width: 100%;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 12px;
  border: 1.5px solid color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line));
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font-size: 0.95rem;
}

.care--web .care-mc-packages__search input:focus {
  outline: 2px solid color-mix(in srgb, var(--care-v2-primary) 45%, transparent);
  outline-offset: 1px;
  border-color: var(--care-v2-primary);
}

.care--web .care-mc-packages__empty {
  margin: 8px 0 24px;
  padding: 28px 22px;
  border-radius: var(--care-v2-radius, 12px);
  border: 1px dashed var(--care-v2-line);
  background: color-mix(in srgb, var(--care-v2-surface) 88%, var(--care-v2-primary));
  color: var(--care-v2-muted);
  text-align: center;
}

.care--web .care-mc-packages__empty p {
  margin: 0 0 14px;
  font-size: 0.98rem;
  line-height: 1.45;
  color: var(--care-v2-navy);
}

.care--web .care-mc-packages__empty-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  border-radius: 10px;
  background: var(--care-v2-primary);
  color: #fff !important;
  font-weight: 600;
  text-decoration: none;
}

.care--web .care-mc-packages__pill {
  min-height: 40px;
  padding: 0 18px;
  border-radius: var(--care-v2-radius-pill);
  border: 1.5px solid color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font-weight: 600;
  font-size: 0.88rem;
  cursor: pointer;
}

.care--web .care-mc-packages__pill.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
}

.care--web .care-mc-packages__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
  grid-gap: 24px;
  gap: 24px;
  align-items: start;
}

.care--web .care-mc-packages__grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

.care--web .care-mc-packages__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.care--web .care-mc-pkg-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 18px 18px 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius, 12px);
  box-shadow: var(--care-v2-shadow-card, var(--care-v2-shadow-sm));
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.care--web .care-mc-pkg-card:hover,
.care--web .care-mc-pkg-card:focus-within {
  border-color: color-mix(in srgb, var(--care-v2-primary) 42%, var(--care-v2-line));
  box-shadow: 0 10px 28px rgba(11, 31, 58, 0.1);
}

.care--web .care-mc-pkg-card__hit {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: start;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.care--web .care-mc-pkg-card__ico {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  margin-bottom: 14px;
}

.care--web .care-mc-pkg-card__ico--rose {
  background: #ffe4ec;
  color: #e11d48;
}
.care--web .care-mc-pkg-card__ico--sky {
  background: #dbeafe;
  color: #2563eb;
}
.care--web .care-mc-pkg-card__ico--mint {
  background: #d1fae5;
  color: #059669;
}
.care--web .care-mc-pkg-card__ico--amber {
  background: #fef3c7;
  color: #d97706;
}
.care--web .care-mc-pkg-card__ico--violet {
  background: #ede9fe;
  color: #7c3aed;
}
.care--web .care-mc-pkg-card__ico--coral {
  background: #ffedd5;
  color: #ea580c;
}

.care--web .care-mc-pkg-card__name {
  margin: 0 0 8px;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.3;
}

.care--web .care-mc-pkg-card__practice {
  margin: -4px 0 8px;
  font-size: 0.86rem;
  font-weight: 600;
  color: var(--care-v2-primary);
  line-height: 1.3;
}

.care--web .care-mc-pkg-card__includes {
  margin: 0 0 16px;
  flex: 1 1;
  font-size: 0.86rem;
  color: var(--care-v2-muted);
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care--web .care-mc-pkg-card__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
}

.care--web .care-mc-pkg-card__price {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  white-space: nowrap;
}

.care--web .care-mc-pkg-card__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 16px;
  flex: 0 0 auto;
  border: 0;
  border-radius: 10px;
  background: var(--care-v2-primary) !important;
  color: #fff !important;
  font: inherit;
  font-weight: 600;
  font-size: 0.88rem;
  text-decoration: none;
  cursor: pointer;
}

.care--web .care-mc-pkg-card__cta:hover {
  background: var(--care-v2-primary-hover) !important;
}

.care--web .care-mc-packages__promo {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  border-radius: var(--care-v2-radius-lg);
  overflow: hidden;
  background: linear-gradient(165deg, #0b1f3a 0%, #12355c 55%, #0b4a8a 100%);
  color: #fff;
  min-height: 420px;
  display: flex;
  flex-direction: column;
}

.care--web .care-mc-packages__promo-photo {
  width: 100%;
  height: 220px;
  object-fit: cover;
  object-position: top center;
  display: block;
}

.care--web .care-mc-packages__promo-copy {
  padding: 18px 18px 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1 1;
}

.care--web .care-mc-packages__promo-copy h2 {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.02em;
}

.care--web .care-mc-packages__promo-copy p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.82);
  flex: 1 1;
}

.care--web .care-mc-packages__promo-cta {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  margin-top: 4px;
  border-radius: 10px;
  background: var(--care-v2-primary);
  color: #fff !important;
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
}

.care--web .care-mc-packages__promo-cta:hover {
  background: var(--care-v2-primary-hover);
  color: #fff !important;
}

.care--web .care-mc-packages__skel.care-skel-list--pharmacy {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 16px;
  gap: 16px;
}

@media (max-width: 1024px) {
  .care--web .care-mc-packages__layout {
    grid-template-columns: 1fr;
  }

  .care--web .care-mc-packages__promo {
    position: static;
    min-height: 0;
    flex-direction: row;
    align-items: stretch;
  }

  .care--web .care-mc-packages__promo-photo {
    width: 42%;
    height: auto;
    min-height: 180px;
  }

  .care--web .care-mc-packages__grid,
  .care--web .care-mc-packages__skel.care-skel-list--pharmacy {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .care--web .care-mc-pkg-banner {
    grid-template-columns: 1fr;
    text-align: center;
    padding: 20px 18px;
    margin-left: 16px;
    margin-right: 16px;
  }

  .care--web .care-mc-pkg-banner__media {
    max-width: 140px;
  }

  .care--web .care-mc-pkg-banner__lead {
    max-width: none;
    margin-left: auto;
    margin-right: auto;
  }

  .care--web .care-mc-pkg-banner__trust {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    min-width: 0;
    gap: 10px 16px;
  }

  .care--web .care-mc-pkg-banner__trust li {
    flex: 1 1 140px;
    justify-content: center;
    text-align: start;
  }

  .care--web .care-mc-packages__grid,
  .care--web .care-mc-packages__skel.care-skel-list--pharmacy {
    grid-template-columns: 1fr;
  }

  .care--web .care-mc-packages__promo {
    flex-direction: column;
  }

  .care--web .care-mc-packages__promo-photo {
    width: 100%;
    height: 180px;
  }

  .care--web .care-mc-packages__filters {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 4px;
    -webkit-overflow-scrolling: touch;
  }

  .care--web .care-mc-packages__pill {
    flex: 0 0 auto;
  }
}

.care--web.care--phone .care-mc-pkg-banner {
  margin-left: 12px;
  margin-right: 12px;
}

/* —— Package detail sheet (portaled to body — do not nest under .care--web) —— */
.care-mc-pkg-sheet {
  position: fixed;
  inset: 0;
  z-index: 1600;
  display: grid;
  place-items: end center;
  padding: 0;
  isolation: isolate;
}

.care-mc-pkg-sheet__scrim {
  position: absolute;
  inset: 0;
  border: 0;
  padding: 0;
  background: color-mix(in srgb, #0b1f3a 48%, transparent);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  cursor: pointer;
}

.care-mc-pkg-sheet__card {
  position: relative;
  z-index: 1;
  width: min(520px, 100%);
  max-height: min(92dvh, 760px);
  overflow: hidden;
  padding: 22px 22px 0;
  border-radius: 16px 16px 0 0;
  border: 1px solid #dbe4f0;
  background: #fff;
  box-shadow: 0 24px 64px rgba(11, 31, 58, 0.22);
  display: flex;
  flex-direction: column;
}

.care-mc-pkg-sheet__body {
  overflow: auto;
  padding-bottom: 8px;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  min-height: 0;
}

.care-mc-pkg-sheet__close {
  position: absolute;
  top: 10px;
  inset-inline-end: 10px;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid #dbe4f0;
  background: #fff;
  font-size: 1.35rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}

.care-mc-pkg-sheet__kicker {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #2563eb;
}

.care-mc-pkg-sheet__card h2 {
  margin: 4px 0 0;
  -webkit-padding-end: 40px;
          padding-inline-end: 40px;
  font-size: 1.25rem;
  color: #0b1f3a;
}

.care-mc-pkg-sheet__practice {
  margin: 0;
  color: #0066ff;
  font-size: 0.9rem;
  font-weight: 700;
}

.care-mc-pkg-sheet__desc,
.care-mc-pkg-sheet__validity {
  margin: 0;
  color: #5b6b82;
  font-size: 0.9rem;
  line-height: 1.45;
}

.care-mc-pkg-sheet__price {
  font-size: 1.35rem;
  font-weight: 800;
  color: #0b1f3a;
}

.care-mc-pkg-sheet__includes h3 {
  margin: 8px 0 6px;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #0b1f3a;
}

.care-mc-pkg-sheet__includes ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.care-mc-pkg-sheet__includes li {
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid #dbe4f0;
  background: #f7f9fc;
  font-size: 0.88rem;
  color: #0b1f3a;
}

.care-mc-pkg-sheet__actions {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin: 0 -22px 0;
  padding: 12px 22px calc(16px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid #e8eef6;
  background: #fff;
}

.care-mc-pkg-sheet .care-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  width: 100%;
  padding: 0 18px;
  border-radius: 10px;
  font: inherit;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}

.care-mc-pkg-sheet .care-btn--primary {
  border: 0;
  background: #0066ff;
  color: #fff !important;
}

.care-mc-pkg-sheet .care-btn--primary:hover {
  background: #0052cc;
}

.care-mc-pkg-sheet .care-btn--ghost {
  background: #fff;
  color: #0b1f3a !important;
  border: 1px solid #dbe4f0;
}

.care--web .care-mc-pkg-card__desc {
  margin: 0 0 10px;
  color: var(--care-v2-muted);
  font-size: 0.82rem;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care--web .care-mc-packages__note {
  margin: 0 0 14px;
  padding: 10px 12px;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-primary-mist, #f5f9ff);
  color: var(--care-v2-navy);
  font-size: 0.88rem;
}

.care--web .care-mc-packages__empty-cta--ghost {
  -webkit-margin-start: 8px;
          margin-inline-start: 8px;
  background: transparent !important;
  color: var(--care-v2-primary) !important;
  border: 1px solid var(--care-v2-line);
}

@media (min-width: 721px) {
  .care-mc-pkg-sheet {
    place-items: center;
    padding: 24px;
  }

  .care-mc-pkg-sheet__card {
    border-radius: 12px;
    max-height: min(86dvh, 720px);
  }
}

/**
 * MedCare — Health Articles page.
 * Loaded from CareLayout with packages CSS (before shell).
 */

.care--web .care-mc-articles .care-page__body,
.care--web .care-mc-articles__body {
  max-width: 1100px;
  margin: 0 auto;
  padding: 28px 24px 72px;
}

.care--web .care-mc-articles__head {
  margin-bottom: 18px;
}

.care--web .care-mc-articles__title {
  margin: 0 0 8px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.75rem, 3vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--care-v2-primary);
  line-height: 1.15;
}

.care--web .care-mc-articles__lead {
  margin: 0;
  color: var(--care-v2-muted);
  font-size: 1rem;
  line-height: 1.45;
}

.care--web .care-mc-articles__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 28px;
  padding-bottom: 0;
  border-bottom: none;
}

.care--web .care-mc-articles__tab {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  min-height: 40px;
  padding: 0 18px;
  border-radius: var(--care-v2-radius-pill);
  border: 1.5px solid color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
  margin-bottom: 0;
}

.care--web .care-mc-articles__tab.is-active {
  background: var(--care-v2-primary);
  border-color: var(--care-v2-primary);
  color: #fff;
  border-bottom-color: var(--care-v2-primary);
}

.care--web .care-mc-articles__grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 20px;
  gap: 20px;
}

.care--web .care-mc-article-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: var(--care-v2-radius, 12px);
  overflow: hidden;
  box-shadow: var(--care-v2-shadow-card, var(--care-v2-shadow-sm));
}

.care--web .care-mc-article-card__media {
  display: block;
  line-height: 0;
}

.care--web .care-mc-article-card__img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
  background: var(--care-v2-primary-mist);
}

.care--web .care-mc-article-card__body {
  display: flex;
  flex-direction: column;
  flex: 1 1;
  padding: 16px 16px 18px;
}

.care--web .care-mc-article-card__meta {
  display: none;
}

.care--web .care-mc-article-card__title {
  margin: 0 0 8px;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--care-v2-navy);
  line-height: 1.35;
}

.care--web .care-mc-article-card__title a {
  color: inherit;
  text-decoration: none;
}

.care--web .care-mc-article-card__title a:hover {
  color: var(--care-v2-primary);
}

.care--web .care-mc-article-card__excerpt {
  margin: 0 0 14px;
  flex: 1 1;
  font-size: 0.88rem;
  color: var(--care-v2-muted);
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.care--web .care-mc-article-card__more {
  align-self: flex-start;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  padding: 0;
  color: var(--care-v2-primary);
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  text-decoration: none;
}

.care--web .care-mc-article-card__more:hover {
  text-decoration: underline;
}

.care--web .care-mc-article-page__back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  padding: 8px 12px 8px 8px;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  background: var(--care-v2-surface);
  color: var(--care-v2-navy);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  transition: border-color 140ms ease, background 140ms ease;
}

.care--web .care-mc-article-page__back:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary) 40%, var(--care-v2-line));
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-primary);
}

.care--web .care-mc-article-page__back-ico,
.care--web .care-mc-article-page__back .care-ico {
  width: 18px;
  height: 18px;
}

.care--web .care-mc-article-detail {
  margin: 0;
  padding: 0;
  border-bottom: 0;
}

.care--web .care-mc-article-detail--page {
  max-width: 760px;
}

.care--web .care-mc-article-detail__img {
  width: 100%;
  max-height: 380px;
  object-fit: cover;
  border-radius: 2px;
  margin-bottom: 18px;
  background: var(--care-v2-primary-mist);
  border: 1px solid var(--care-v2-line);
}

.care--web .care-mc-article-detail__meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
}

.care--web .care-mc-article-detail__cat {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 2px;
  background: var(--care-v2-primary-mist);
  color: var(--care-v2-primary);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.care--web .care-mc-article-detail__meta {
  margin: 0;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--care-v2-muted);
}

.care--web .care-mc-article-detail__title {
  margin: 0 0 16px;
  font-family: var(--care-v2-font-display);
  font-size: clamp(1.55rem, 2.8vw, 2.05rem);
  font-weight: 700;
  color: var(--care-v2-navy);
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.care--web .care-mc-article-detail__body {
  margin: 0 0 24px;
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--care-v2-ink);
  max-width: 68ch;
}

.care--web .care-mc-article-detail__body p {
  margin: 0 0 1em;
}

.care--web .care-mc-article-detail__body p:last-child {
  margin-bottom: 0;
}

.care--web .care-mc-article-detail__back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  border: none;
  border-radius: 2px;
  min-height: 42px;
  padding: 0 16px;
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  text-decoration: none;
}

.care--web .care-mc-article-detail__back .care-ico {
  width: 16px;
  height: 16px;
}

.care--web .care-mc-article-detail__back:hover {
  filter: brightness(0.98);
}

.care--web .care-mc-articles__skel.care-skel-list--pharmacy {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 20px;
  gap: 20px;
}

@media (max-width: 900px) {
  .care--web .care-mc-articles__grid,
  .care--web .care-mc-articles__skel.care-skel-list--pharmacy {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .care--web .care-mc-articles__tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 8px;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }

  .care--web .care-mc-articles__tab {
    flex: 0 0 auto;
    margin-bottom: 0;
  }

  .care--web .care-mc-articles__grid,
  .care--web .care-mc-articles__skel.care-skel-list--pharmacy {
    grid-template-columns: 1fr;
  }
}

/**
 * Professional line icons — soft blue squircles, monochrome stroke.
 * Never show 3D /care/icons PNG art in chrome.
 */
.care--web .care-ico,
.care--web .care-top__icon-btn .care-ico,
.care--web .care-mico--line,
.care--web .care-mico--mark {
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-top__icon-btn {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: #fff;
  display: inline-grid;
  place-items: center;
  color: var(--care-v2-navy, #0b1f3a);
  padding: 0;
}

.care--web .care-top__icon-btn .care-ico {
  width: 18px;
  height: 18px;
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-mico--line,
.care--web .care-mico--mark {
  display: inline-grid;
  place-items: center;
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  color: var(--care-v2-primary, #0066ff) !important;
  border-radius: 14px;
}

.care--web .care-mico--line svg,
.care--web .care-mico--mark svg {
  width: 55%;
  height: 55%;
}

.care--web .care-mico--art img {
  display: none !important;
}

.care--web .care-v2-type-strip__circle,
.care--web .care-v2-popular__ico {
  display: inline-grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-v2-type-strip__ico,
.care--web .care-v2-popular__ico svg {
  width: 26px;
  height: 26px;
  color: inherit;
}

.care--web .care-v2-type-strip__ico.care-ico {
  width: 26px;
  height: 26px;
}

/* Kind cards / shelves: soft-blue line icon squircles */
.care--web .care-kind-card__ico {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
  flex-shrink: 0;
}

.care--web .care-kind-card__ico .care-ico {
  width: 24px;
  height: 24px;
}

/* Hide legacy tiny icon imgs only — keep category cover art visible. */
.care--web .care-kind-card > img:not(.care-kind-card__art) {
  display: none;
}

.care--web .care-kind-card__art {
  display: block !important;
  width: 100% !important;
  height: 148px !important;
  object-fit: contain !important;
  object-position: center !important;
  padding: 12px 16px 4px !important;
  background: linear-gradient(180deg, #eef6ff 0%, #f8fbff 100%) !important;
  box-sizing: border-box !important;
}

.care--web .care-kind-card--photo {
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  height: auto !important;
  color: var(--care-v2-ink, #0f172a) !important;
  background: #fff !important;
}

.care--web .care-kind-card--photo .care-kind-card__body,
.care--web .care-kind-card--photo > span {
  position: static !important;
  inset: auto !important;
  display: block !important;
  padding: 12px 16px 16px !important;
  background: transparent !important;
  color: inherit !important;
}

.care--web .care-kind-card--photo strong {
  color: var(--care-v2-navy, #0b1f3a) !important;
}

.care--web .care-kind-card--photo em {
  color: var(--care-v2-muted, #64748b) !important;
}

.care--web .care-kind-shelf__title > img {
  display: block !important;
  width: 44px !important;
  height: 44px !important;
  object-fit: contain !important;
  padding: 6px !important;
  border-radius: 12px !important;
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
}

/**
 * One phone chrome for Care, login, and every staff module.
 * Desktop B2B is unchanged. Staff home launcher is unchanged.
 */

@media (max-width: 767px) {
  .care,
  html.ch-native-app .spa-login {
    --care-navy: #1e3a5f;
    --care-header-start: #2563eb;
    --care-header-end: #1e3a5f;
    --ch-phone-chrome-top: #ffffff;
    color-scheme: light;
  }

  .spa-login {
    --ch-phone-chrome-top: #2563eb;
  }

  .spa-login__field input {
    background: #eef2f6 !important;
    border: 0 !important;
    border-radius: 14px !important;
    box-shadow: none !important;
  }

  .spa-login__submit {
    min-height: 48px;
    border-radius: 14px !important;
    font-weight: 700 !important;
    background: #2563eb !important;
    color: #fff !important;
    box-shadow: none !important;
  }
}

html.ch-native-app .spa-login {
  --login-ink: #0f172a;
  --login-accent: #2563eb;
  --login-accent-deep: #1e3a5f;
  background: linear-gradient(135deg, #2563eb, #1e3a5f);
  overflow-x: hidden;
  overflow-y: auto;
}

html.ch-native-app .spa-login__atmosphere,
html.ch-native-app .spa-login__orb,
html.ch-native-app .spa-login__logo-ring,
html.ch-native-app .spa-login__brand-kicker {
  display: none;
}

html.ch-native-app .spa-login__hero {
  text-align: start;
  margin-bottom: 18px;
}

html.ch-native-app .spa-login__logo-wrap {
  width: auto;
  height: auto;
  background: none;
  box-shadow: none;
}

html.ch-native-app .spa-login__logo {
  width: 40px;
  height: 40px;
  filter: brightness(0) invert(1);
}

html.ch-native-app .spa-login__title,
html.ch-native-app .spa-login__lead {
  color: #fff;
}

html.ch-native-app .spa-login__title {
  font-size: 28px;
  font-weight: 800;
}

html.ch-native-app .spa-login__lead {
  font-size: 15px;
  color: rgba(255, 255, 255, 0.82);
}

html.ch-native-app .spa-login__main {
  justify-content: flex-start;
  overflow: visible;
  padding-bottom: 28px;
}

html.ch-native-app .spa-login__mode {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 6px;
  gap: 6px;
  margin-bottom: 12px;
  padding: 4px;
  border-radius: 14px;
  background: #fff;
  border: 0;
}

html.ch-native-app .spa-login__mode button {
  min-height: 44px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #64748b;
  font-weight: 700;
}

html.ch-native-app .spa-login__mode button.is-active {
  background: #eff6ff;
  color: #1e3a5f;
}

html.ch-native-app .spa-login__panel,
html.ch-native-app .spa-login__form {
  background: #fff;
  border-radius: 22px;
  border: 0;
  box-shadow: none;
  padding: 20px 18px 18px;
}

html.ch-native-app .spa-login__staff-link {
  display: block;
  width: 100%;
  min-height: 48px;
  margin-top: 8px;
  border: 1.4px solid #2563eb;
  border-radius: 14px;
  background: #fff;
  color: #1e3a5f;
  font-weight: 700;
}

html.ch-native-app .spa-login__submit {
  display: block !important;
  visibility: visible !important;
  width: 100%;
  min-height: 48px;
  margin-top: 8px;
  flex-shrink: 0;
  border: 0;
  border-radius: 14px !important;
  background: #2563eb !important;
  color: #fff !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  opacity: 1;
}

html.ch-native-app .spa-login__locale {
  background: rgba(255, 255, 255, 0.16);
  border-color: transparent;
}

html.ch-native-app .spa-login__locale button {
  color: #fff;
}

html.ch-native-app .spa-login__locale button.is-active {
  background: #fff;
  color: #1e3a5f;
}

html.ch-native-app .spa-login__back {
  background: rgba(255, 255, 255, 0.16);
  border-color: transparent;
  color: #fff;
}

@media (max-width: 767px) {
  .care,
  .pp,
  html.ch-native-app,
  html.ch-native-app body,
  html.ch-native-app body.ch-no-sidebar,
  html.opd-m-active,
  body.opd-m-active,
  html.pharm-m-active,
  body.pharm-m-active,
  html.lab-m-active,
  body.lab-m-active,
  html.rad-m-active,
  body.rad-m-active,
  html.pat-m-active,
  body.pat-m-active,
  html.ipd-m-active,
  body.ipd-m-active,
  .mod-m-app,
  .mod-m-app[data-mod-theme],
  .opd-mobile-app,
  .pharm-mobile-app,
  .lab-mobile-app,
  .rad-mobile-app,
  .pat-mobile-app,
  .ipd-mobile-app,
  .rehab-mobile-app,
  .bb-mobile-app,
  [class*='-mobile-app'] {
    --ec-platform-blue: #2563eb !important;
    --ec-brand-primary: #2563eb !important;
    --ec-platform-blue-hover: #1e3a5f !important;
    --ec-brand-primary-hover: #1e3a5f !important;
    --ec-proposal-accent: #2563eb !important;
    --ec-platform-mist: #eff6ff !important;
    --ec-proposal-page-bg: #f8fafc !important;
    --ec-proposal-card-bg: #ffffff !important;
    --ec-platform-paper: #ffffff !important;
    --ec-platform-ink: #0f172a !important;
    --ec-platform-muted: #64748b !important;
    --ec-platform-line: rgba(30, 58, 95, 0.1) !important;
    --ec-platform-btn-radius: 14px !important;
    --ch-phone-accent: #2563eb !important;
    --ch-phone-accent-strong: #1e3a5f !important;
    --ch-phone-accent-soft: #eff6ff !important;
    --ch-phone-accent-mist: #eff6ff !important;
    --ch-phone-chrome-top: #ffffff !important;
    --mbn-accent: #2563eb !important;
    --mbn-accent-soft: #eff6ff !important;
    --mod-m-accent: #2563eb !important;
    --mod-m-accent-mid: #2563eb !important;
    --mod-m-accent-deep: #1e3a5f !important;
    --mod-m-accent-soft: #eff6ff !important;
    --mod-m-atmosphere: #f8fafc !important;
    --mod-m-ink: #0f172a !important;
    --mod-m-muted: #64748b !important;
    --mod-m-line: rgba(30, 58, 95, 0.1) !important;
    --mod-m-radius: 14px !important;
    --mod-hub-accent: #2563eb !important;
    --mod-hub-accent-mid: #2563eb !important;
    --mod-hub-accent-deep: #1e3a5f !important;
    --mod-hub-soft: #eff6ff !important;
    --mod-hub-shadow: rgba(0, 18, 36, 0.04) !important;
    --opd-m-bg: #f8fafc !important;
    --opd-m-surface: #ffffff !important;
    --opd-m-ink: #0f172a !important;
    --opd-m-muted: #64748b !important;
    --opd-m-accent: #2563eb !important;
    --opd-m-accent-press: #1e3a5f !important;
    --opd-m-accent-soft: #eff6ff !important;
    --opd-m-chrome: #2563eb !important;
    --opd-m-chrome-deep: #1e3a5f !important;
    --opd-m-radius: 14px !important;
    --opd-m-font: 0.95rem !important;
    --pharm-m-bg: #f8fafc !important;
    --pharm-m-surface: #ffffff !important;
    --pharm-m-ink: #0f172a !important;
    --pharm-m-muted: #64748b !important;
    --pharm-m-accent: #2563eb !important;
    --pharm-m-accent-press: #1e3a5f !important;
    --pharm-m-accent-soft: #eff6ff !important;
    --pharm-m-chrome: #2563eb !important;
    --pharm-m-chrome-deep: #1e3a5f !important;
    --pharm-m-radius: 14px !important;
    --pharm-m-atmosphere: #f8fafc !important;
    --lab-m-bg: #f8fafc !important;
    --lab-m-surface: #ffffff !important;
    --lab-m-ink: #0f172a !important;
    --lab-m-muted: #64748b !important;
    --lab-m-accent: #2563eb !important;
    --lab-m-accent-press: #1e3a5f !important;
    --lab-m-accent-soft: #eff6ff !important;
    --lab-m-chrome: #2563eb !important;
    --lab-m-chrome-deep: #1e3a5f !important;
    --lab-m-radius: 14px !important;
    --lab-m-atmosphere: #f8fafc !important;
    --rad-m-bg: #f8fafc !important;
    --rad-m-surface: #ffffff !important;
    --rad-m-ink: #0f172a !important;
    --rad-m-muted: #64748b !important;
    --rad-m-accent: #2563eb !important;
    --rad-m-accent-press: #1e3a5f !important;
    --rad-m-accent-soft: #eff6ff !important;
    --rad-m-chrome: #2563eb !important;
    --rad-m-chrome-deep: #1e3a5f !important;
    --rad-m-radius: 14px !important;
    --rad-m-atmosphere: #f8fafc !important;
    --pat-m-bg: #f8fafc !important;
    --pat-m-surface: #ffffff !important;
    --pat-m-ink: #0f172a !important;
    --pat-m-muted: #64748b !important;
    --pat-m-accent: #2563eb !important;
    --pat-m-accent-press: #1e3a5f !important;
    --pat-m-accent-soft: #eff6ff !important;
    --pat-m-chrome: #2563eb !important;
    --pat-m-chrome-deep: #1e3a5f !important;
    --pat-m-radius: 14px !important;
    --pat-m-atmosphere: #f8fafc !important;
    --ipd-m-bg: #f8fafc !important;
    --ipd-m-surface: #ffffff !important;
    --ipd-m-ink: #0f172a !important;
    --ipd-m-muted: #64748b !important;
    --ipd-m-accent: #2563eb !important;
    --ipd-m-accent-press: #1e3a5f !important;
    --ipd-m-accent-soft: #eff6ff !important;
    --ipd-m-chrome: #2563eb !important;
    --ipd-m-chrome-deep: #1e3a5f !important;
    --ipd-m-radius: 14px !important;
    --ipd-m-atmosphere: #f8fafc !important;
    --rehab-m-bg: #f8fafc !important;
    --rehab-m-surface: #ffffff !important;
    --rehab-m-ink: #0f172a !important;
    --rehab-m-muted: #64748b !important;
    --rehab-m-accent: #2563eb !important;
    --rehab-m-accent-press: #1e3a5f !important;
    --rehab-m-accent-soft: #eff6ff !important;
    --rehab-m-chrome: #2563eb !important;
    --rehab-m-chrome-deep: #1e3a5f !important;
    --rehab-m-radius: 14px !important;
    --hr-accent: #2563eb !important;
    --hr-accent-hover: #1e3a5f !important;
    --hr-soft: #eff6ff !important;
    --hr-atmosphere: #f8fafc !important;
    --hr-ink: #0f172a !important;
    --bb-m-bg: #f8fafc !important;
    --bb-m-canvas: #f8fafc !important;
    --bb-m-ink: #0f172a !important;
    --bb-m-radius: 14px !important;
    --care-navy: #1e3a5f;
    --care-header-start: #2563eb;
    --care-header-end: #1e3a5f;
    color-scheme: light;
  }

  .mod-m-app,
  .opd-mobile-app,
  .pharm-mobile-app,
  .lab-mobile-app,
  .rad-mobile-app,
  .pat-mobile-app,
  .ipd-mobile-app,
  .rehab-mobile-app,
  [class*='-mobile-app'] {
    background: #f8fafc !important;
    color: #0f172a !important;
    font-family: system-ui, -apple-system, 'Segoe UI', sans-serif !important;
  }

  html.ch-native-app .ec-app-topbar--compact,
  html.ch-native-app .ec-app-topbar--compact .ec-app-topbar__appbar,
  html.ch-native-app body.mod-m-branded.ec-b2b-theme.ec-sidebar-layout .ec-app-topbar.ec-app-topbar--compact,
  html.ch-native-app body.mod-m-theme-ambulance .ec-app-topbar.ec-app-topbar--compact {
    background: #fff !important;
    color: #0f172a !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(30, 58, 95, 0.1) !important;
  }

  html.ch-native-app .ec-app-topbar--compact .ec-app-topbar__title,
  html.ch-native-app .ec-app-topbar--compact .ec-app-topbar__nav-btn,
  html.ch-native-app .ec-app-topbar--compact .ec-app-topbar__menu-btn,
  html.ch-native-app .ec-app-topbar--compact .ec-app-topbar__burger-bar {
    color: #0f172a !important;
    background: transparent !important;
  }

  html.ch-native-app .ec-app-topbar--compact .ec-app-topbar__burger-bar {
    background: #0f172a !important;
  }

  .care-hero--photo {
    display: none !important;
  }

  nav.module-bottom-nav,
  nav.opd-bottom-nav,
  nav.ipd-bottom-nav,
  nav.care-tabs,
  nav.pp-tabs,
  .rehab-dock__bar,
  .mod-float-dock__bar {
    background: #fff !important;
    box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) !important;
  }

  .mod-m-app .btn-primary,
  .mod-m-app button[type='submit'],
  .mod-m-app .ec-btn-primary,
  [class*='-mobile-app'] .btn-primary,
  [class*='-mobile-app'] button[type='submit'],
  [class*='-mobile-app'] .ec-btn-primary,
  .spa-login__submit {
    min-height: 48px;
    border-radius: 14px;
    font-weight: 700;
    background: #2563eb;
    color: #fff;
    box-shadow: none;
  }
}

html.ch-native-app .mod-m-app,
html.ch-native-app [class*='-mobile-app'] {
  --mod-m-accent: #2563eb !important;
  --mod-m-atmosphere: #f8fafc !important;
  --ch-phone-chrome-top: #ffffff !important;
  background: #f8fafc !important;
}

/* Native app always uses the same staff chrome (not only ≤767). Care top/tabs stay white. */
html.ch-native-app,
html.ch-native-app body,
html.ch-native-app .mod-m-app,
html.ch-native-app [class*='-mobile-app'] {
  --ch-phone-chrome-top: #ffffff !important;
  --ch-phone-accent: #2563eb !important;
  --mbn-accent: #2563eb !important;
  --mod-hub-accent: #2563eb !important;
}

html.ch-native-app .ec-app-topbar--compact,
html.ch-native-app .ec-app-topbar--compact .ec-app-topbar__appbar {
  background: #fff !important;
  color: #0f172a !important;
  border-bottom: 1px solid rgba(30, 58, 95, 0.1) !important;
}

html.ch-native-app .care-top,
html.ch-native-app .care-tabs,
html.ch-native-app .pp-top,
html.ch-native-app .pp-tabs {
  background: #fff !important;
  color: inherit !important;
}

html.ch-native-app .rehab-dock,
html.ch-native-app .mod-float-dock,
html.ch-native-app .mod-m-pill-dock {
  padding: 0 !important;
  max-width: none !important;
  justify-content: stretch !important;
}

html.ch-native-app .rehab-dock__bar,
html.ch-native-app .mod-float-dock__bar {
  background: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) !important;
  max-width: none !important;
  width: 100% !important;
  -webkit-backdrop-filter: none !important;
          backdrop-filter: none !important;
}

html.ch-native-app .careos-mobile-screen [class$='__head'],
html.ch-native-app .careos-mobile-screen [class$='__header'] {
  background: #fff !important;
  color: #0f172a !important;
  border-bottom: 1px solid rgba(30, 58, 95, 0.1) !important;
}

@media (max-width: 767px) {
  .module-bottom-nav__label,
  .rehab-dock__label {
    font-size: 11px !important;
  }

  .rehab-dock,
  .mod-float-dock,
  .mod-m-pill-dock {
    padding: 0 !important;
    max-width: none !important;
    justify-content: stretch !important;
  }

  .rehab-dock__bar,
  .mod-float-dock__bar {
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) !important;
    max-width: none !important;
    width: 100% !important;
    -webkit-backdrop-filter: none !important;
            backdrop-filter: none !important;
  }

  /* Bare utility only. Never steal display/padding from module cards. */
  .staff-phone-row:not([class*='card']):not([class*='__']):not(.care-doc):not(.care-center):not(.care-search-hit):not(.care-spec-list__item):not(.care-rad-row):not(.bb-group):not(.bb-life-row):not(.rad-m-slot):not(.hr-phone-row):not(.rehab-phone-row):not(.clinic-shot-patient-row):not(.pref-hub-card):not(.hospital-shot__hub):not(.opd-cw-choice):not(.opd-cw-doctor-trigger) {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-height: 56px;
    padding: 12px 14px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid rgba(30, 58, 95, 0.1);
    color: #0f172a;
  }

  .staff-phone-chips,
  .opd-m-chips {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    overflow-x: auto;
    padding: 2px 0 8px;
    -webkit-overflow-scrolling: touch;
  }

  .staff-phone-chip,
  .opd-m-chip,
  .opd-date-filter__chip {
    flex: 0 0 auto;
    min-height: 36px;
    padding: 6px 12px;
    border: 0;
    border-radius: 999px;
    background: #eef2f6;
    color: #0f172a;
    font-size: 13px;
    font-weight: 600;
  }

  .care-home-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0 8px;
  }

  .care-home-chips a {
    text-decoration: none;
  }

  .staff-phone-chip.is-active,
  .opd-m-chip.is-active,
  .opd-date-filter__chip.is-active {
    background: #eff6ff;
    color: #1e3a5f;
  }

  .staff-phone-footer {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
    background: #fff;
    box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08);
  }

  .staff-phone-empty,
  .staff-phone-error,
  .mod-m-hub__empty,
  .pharm-empty-state,
  .pharm-shot-empty,
  .ui-empty-state {
    margin: 24px 0;
    padding: 20px 16px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid rgba(30, 58, 95, 0.1);
    color: #64748b;
    text-align: center;
  }

  .staff-phone-error {
    color: #c4453c;
    border-color: rgba(196, 69, 60, 0.2);
  }
}

/*
 * Phone tab bars — Flutter Care patient.
 * Target the <nav> / dock bar only. Never [class*='-bottom-nav']
 * (that matches has-module-bottom-nav, __fab, __label, __sheet).
 */
@media (max-width: 767px) {
  :is([class*='-mobile-app'], .mod-m-app) nav.module-bottom-nav,
  :is([class*='-mobile-app'], .mod-m-app) nav.module-bottom-nav.module-bottom-nav--segmented,
  :is([class*='-mobile-app'], .mod-m-app) nav.opd-bottom-nav,
  :is([class*='-mobile-app'], .mod-m-app) nav.ipd-bottom-nav,
  .mod-m-pill-dock .module-bottom-nav,
  nav.care-tabs,
  nav.pp-tabs,
  .rehab-dock__bar,
  .mod-float-dock__bar {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    min-height: 56px !important;
    padding: 6px max(6px, env(safe-area-inset-right, 0px)) 0
      max(6px, env(safe-area-inset-left, 0px)) !important;
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-top: 1px solid rgba(30, 58, 95, 0.1) !important;
    background: #fff !important;
    box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    overflow: visible !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-around !important;
    gap: 0 !important;
    z-index: 1180 !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > a,
  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > .module-bottom-nav__more,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav > a,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav > .opd-bottom-nav__more,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav > a,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav > .ipd-bottom-nav__more,
  nav.care-tabs > button,
  nav.care-tabs > .care-tabs__btn,
  nav.pp-tabs > a,
  .rehab-dock__item,
  .mod-float-dock__item {
    flex: 1 1 !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: stretch !important;
    min-height: 48px !important;
    min-width: 0 !important;
    padding: 6px 4px 8px !important;
    gap: 2px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #64748b !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > a.is-active,
  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > .module-bottom-nav__more.is-active,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav > a.is-active,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav > .opd-bottom-nav__more.is-active,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav > a.is-active,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav > .ipd-bottom-nav__more.is-active,
  nav.care-tabs > button.is-active,
  nav.care-tabs > .care-tabs__btn.is-active,
  nav.pp-tabs > a.is-active,
  .rehab-dock__item.is-active,
  .mod-float-dock__item.is-active {
    color: #2563eb !important;
    background: transparent !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__label,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__label,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__label,
  nav.care-tabs button span,
  .rehab-dock__label,
  .mod-float-dock__label {
    display: block !important;
    max-width: 100% !important;
    margin: 0 !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    color: inherit !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__glyph,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__glyph,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__glyph,
  .rehab-dock__glyph,
  .mod-float-dock__glyph {
    width: 28px !important;
    height: 28px !important;
    background: transparent !important;
    color: inherit !important;
    border-radius: 0 !important;
    transform: none !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > a.is-active .module-bottom-nav__glyph,
  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > .module-bottom-nav__more.is-active .module-bottom-nav__glyph {
    width: 56px !important;
    height: 28px !important;
    border-radius: 14px !important;
    background: #eff6ff !important;
    color: #2563eb !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab-slot,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__fab-slot,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__fab-slot,
  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav--segmented > .module-bottom-nav__fab-slot {
    flex: 1 1 !important;
    width: auto !important;
    height: auto !important;
    min-height: 48px !important;
    padding: 0 2px 8px !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-end !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab,
  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav--segmented .module-bottom-nav__fab,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__fab,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__fab,
  .rehab-dock__fab,
  .mod-float-dock__fab,
  nav.pp-tabs .pp-tabs__fab {
    flex: 0 0 auto !important;
    width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
    margin: -22px 0 4px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 16px !important;
    background: #2563eb !important;
    color: #fff !important;
    box-shadow: 0 6px 14px rgba(30, 111, 234, 0.32) !important;
    display: grid !important;
    place-items: center !important;
    grid-gap: 0 !important;
    gap: 0 !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab.is-open,
  :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__fab.is-open,
  :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__fab.is-open,
  nav.pp-tabs .pp-tabs__fab.is-open {
    background: #1e3a5f !important;
    color: #fff !important;
    border-radius: 50% !important;
    transform: rotate(45deg) !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__label,
  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav--segmented .module-bottom-nav__fab .module-bottom-nav__label {
    display: none !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__fab-plus,
  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__fab-plus::before {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 18px !important;
    height: 2.5px !important;
    border-radius: 2px !important;
    background: #fff !important;
    transform: translate(-50%, -50%) !important;
    content: '' !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__fab-plus::before {
    width: 2.5px !important;
    height: 18px !important;
  }

  :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__fab-plus::after {
    content: none !important;
  }
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) nav.module-bottom-nav,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) nav.module-bottom-nav.module-bottom-nav--segmented,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) nav.opd-bottom-nav,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) nav.ipd-bottom-nav,
html.ch-native-app .mod-m-pill-dock .module-bottom-nav,
html.ch-native-app nav.care-tabs,
html.ch-native-app nav.pp-tabs,
html.ch-native-app .rehab-dock__bar,
html.ch-native-app .mod-float-dock__bar {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  min-height: 56px !important;
  padding: 6px max(6px, env(safe-area-inset-right, 0px)) 0
    max(6px, env(safe-area-inset-left, 0px)) !important;
  padding-bottom: env(safe-area-inset-bottom, 0px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  border-top: 1px solid rgba(30, 58, 95, 0.1) !important;
  background: #fff !important;
  box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  overflow: visible !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-around !important;
  gap: 0 !important;
  z-index: 1180 !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > a,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > .module-bottom-nav__more,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav > a,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav > .opd-bottom-nav__more,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav > a,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav > .ipd-bottom-nav__more,
html.ch-native-app nav.care-tabs > button,
html.ch-native-app nav.care-tabs > .care-tabs__btn,
html.ch-native-app nav.pp-tabs > a,
html.ch-native-app .rehab-dock__item,
html.ch-native-app .mod-float-dock__item {
  flex: 1 1 !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: stretch !important;
  min-height: 48px !important;
  min-width: 0 !important;
  padding: 6px 4px 8px !important;
  gap: 2px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #64748b !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > a.is-active,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > .module-bottom-nav__more.is-active,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav > a.is-active,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav > .opd-bottom-nav__more.is-active,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav > a.is-active,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav > .ipd-bottom-nav__more.is-active,
html.ch-native-app nav.care-tabs > button.is-active,
html.ch-native-app nav.care-tabs > .care-tabs__btn.is-active,
html.ch-native-app nav.pp-tabs > a.is-active,
html.ch-native-app .rehab-dock__item.is-active,
html.ch-native-app .mod-float-dock__item.is-active {
  color: #2563eb !important;
  background: transparent !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__label,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__label,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__label,
html.ch-native-app nav.care-tabs button span,
html.ch-native-app .rehab-dock__label,
html.ch-native-app .mod-float-dock__label {
  display: block !important;
  max-width: 100% !important;
  margin: 0 !important;
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  color: inherit !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__glyph,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__glyph,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__glyph,
html.ch-native-app .rehab-dock__glyph,
html.ch-native-app .mod-float-dock__glyph {
  width: 28px !important;
  height: 28px !important;
  background: transparent !important;
  color: inherit !important;
  border-radius: 0 !important;
  transform: none !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > a.is-active .module-bottom-nav__glyph,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav > .module-bottom-nav__more.is-active .module-bottom-nav__glyph {
  width: 56px !important;
  height: 28px !important;
  border-radius: 14px !important;
  background: #eff6ff !important;
  color: #2563eb !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab-slot,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__fab-slot,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__fab-slot,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav--segmented > .module-bottom-nav__fab-slot {
  flex: 1 1 !important;
  width: auto !important;
  height: auto !important;
  min-height: 48px !important;
  padding: 0 2px 8px !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: flex-end !important;
  background: transparent !important;
  box-shadow: none !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav--segmented .module-bottom-nav__fab,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__fab,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__fab,
html.ch-native-app .rehab-dock__fab,
html.ch-native-app .mod-float-dock__fab,
html.ch-native-app nav.pp-tabs .pp-tabs__fab {
  flex: 0 0 auto !important;
  width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  margin: -22px 0 4px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #2563eb !important;
  color: #fff !important;
  box-shadow: 0 6px 14px rgba(30, 111, 234, 0.32) !important;
  display: grid !important;
  place-items: center !important;
  grid-gap: 0 !important;
  gap: 0 !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab.is-open,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .opd-bottom-nav__fab.is-open,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .ipd-bottom-nav__fab.is-open,
html.ch-native-app nav.pp-tabs .pp-tabs__fab.is-open {
  background: #1e3a5f !important;
  color: #fff !important;
  border-radius: 50% !important;
  transform: rotate(45deg) !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__label,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav--segmented .module-bottom-nav__fab .module-bottom-nav__label {
  display: none !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__fab-plus,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__fab-plus::before {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 18px !important;
  height: 2.5px !important;
  border-radius: 2px !important;
  background: #fff !important;
  transform: translate(-50%, -50%) !important;
  content: '' !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__fab-plus::before {
  width: 2.5px !important;
  height: 18px !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .module-bottom-nav__fab .module-bottom-nav__fab-plus::after {
  content: none !important;
}

html.ch-native-app .care.care--phone .care-tabs {
  display: flex !important;
}

/*
 * One Care palette in every staff module.
 * Beats brand-opd / pharmacy teal / lab cyan / rad indigo / IPD blue / BB red chrome.
 * Blood type / critical / warn stay on their own tokens.
 */
@media (max-width: 767px) {
  html.ch-native-app body,
  html.ch-native-app body.ipd-m-active,
  html.ch-native-app body[data-ch-tone],
  body.ch-no-sidebar[data-ch-tone] {
    --ch-phone-chrome-top: #ffffff !important;
    --ch-phone-accent: #2563eb !important;
  }

  body.ec-b2b-theme.ec-sidebar-layout .ec-app-topbar.ec-app-topbar--compact[class*='--brand-'],
  body.ch-no-sidebar.ec-b2b-theme.ec-sidebar-layout
    .ec-app-topbar.ec-app-topbar--compact[class*='--brand-'],
  body:has([class*='-m-hero']) .ec-app-topbar--compact[class*='--brand-'],
  body[class*='-m-active'] .ec-app-topbar--compact[class*='--brand-'],
  body[class*='mod-m-theme-'] .ec-app-topbar.ec-app-topbar--compact,
  .ec-app-topbar--compact[class*='ec-app-topbar--brand'] {
    background: #fff !important;
    color: #0f172a !important;
    border-bottom: 1px solid rgba(30, 58, 95, 0.1) !important;
    box-shadow: none !important;
  }

  .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__title,
  .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__nav-btn,
  .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__menu-btn,
  .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__burger-bar {
    color: #0f172a !important;
    background: transparent !important;
  }

  .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__burger-bar {
    background: #0f172a !important;
  }

}

html.ch-native-app body,
html.ch-native-app body.ipd-m-active,
html.ch-native-app body[data-ch-tone] {
  --ch-phone-chrome-top: #ffffff !important;
  --ch-phone-accent: #2563eb !important;
}

html.ch-native-app body.ec-b2b-theme.ec-sidebar-layout
  .ec-app-topbar.ec-app-topbar--compact[class*='--brand-'],
html.ch-native-app body.ch-no-sidebar.ec-b2b-theme.ec-sidebar-layout
  .ec-app-topbar.ec-app-topbar--compact[class*='--brand-'],
html.ch-native-app body:has([class*='-m-hero']) .ec-app-topbar--compact[class*='--brand-'],
html.ch-native-app body[class*='-m-active'] .ec-app-topbar--compact[class*='--brand-'],
html.ch-native-app body[class*='mod-m-theme-'] .ec-app-topbar.ec-app-topbar--compact,
html.ch-native-app .ec-app-topbar--compact[class*='ec-app-topbar--brand'] {
  background: #fff !important;
  color: #0f172a !important;
  border-bottom: 1px solid rgba(30, 58, 95, 0.1) !important;
  box-shadow: none !important;
}

html.ch-native-app .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__title,
html.ch-native-app .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__nav-btn,
html.ch-native-app .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__menu-btn,
html.ch-native-app .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__burger-bar {
  color: #0f172a !important;
  background: transparent !important;
}

html.ch-native-app .ec-app-topbar--compact[class*='--brand-'] .ec-app-topbar__burger-bar {
  background: #0f172a !important;
}

html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .btn-primary,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) .rad-shot-btn--primary,
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) [class*='shot-btn--primary'],
html.ch-native-app :is([class*='-mobile-app'], .mod-m-app) [class*='-btn--primary'] {
  background: #2563eb !important;
  color: #fff !important;
  border-color: #2563eb !important;
}

/*
 * Care profile drawer + login sheet sit under nav.care-tabs (z-index 1180).
 * Phone / native only — desktop Care is a side drawer and a centered modal.
 */
@media (max-width: 767px) {
  .care-drawer,
  .care-auth-sheet {
    z-index: 1220 !important;
  }

  .care.care--phone.care--menu-open nav.care-tabs,
  body.care-auth-open nav.care-tabs {
    display: none !important;
  }
}

html.ch-native-app .care-drawer,
html.ch-native-app .care-auth-sheet,
body.care-phone-shell .care-auth-sheet {
  z-index: 1220 !important;
}

html.ch-native-app .care.care--phone.care--menu-open .care-tabs,
html.ch-native-app body.care-auth-open nav.care-tabs,
html.ch-native-app body.care-auth-open .care.care--phone .care-tabs,
body.care-phone-shell.care-auth-open nav.care-tabs {
  display: none !important;
}

/**
 * One-app phone skin — Flutter Care Staff.
 * Same canvas, cards, chips, fields, and primary actions in every module.
 * Color / radius / type only. Never display, flex, grid, or header offset.
 * Desktop ≥768 is unchanged. Login gradient and staff-home greeting stay.
 */

@media (max-width: 767px) {
  html.ch-native-app,
  html.ch-native-app body,
  html.ch-native-app body.ch-no-sidebar {
    --staff-phone-gutter: 12px;
    --staff-phone-section: 12px;
    --staff-phone-card-pad: 10px;
    --staff-phone-tap: 40px;
    --staff-phone-radius: 14px;
    --staff-phone-field: #eef2f6;
    --opd-m-pad-x: 12px;
    --pharm-m-pad-x: 12px;
    --lab-m-pad-x: 12px;
    --rad-m-pad-x: 12px;
    --pat-m-pad-x: 12px;
    --ipd-m-pad-x: 12px;
    --mod-m-pad-x: 12px;
    --ec-platform-btn-radius: 14px;
    --ch-mobile-radius: 14px;
    --ch-mobile-radius-lg: 14px;
  }

  html.ch-native-app body.ec-b2b-theme.ec-sidebar-layout .ec-app-content,
  html.ch-native-app body.ch-no-sidebar.ec-b2b-theme.ec-sidebar-layout .ec-app-content {
    background-image: none !important;
  }

  html.ch-native-app body.ec-b2b-theme.ec-sidebar-layout .ec-app-content:has([class*='-mobile-app']),
  html.ch-native-app body.ec-b2b-theme.ec-sidebar-layout .ec-app-content:has([data-branded-module-app]),
  html.ch-native-app body.ec-b2b-theme.ec-sidebar-layout .ec-app-content:has(.care) {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html.ch-native-app .staff-home__lede {
    display: block;
  }
}

/* —— Shared surfaces: white card, paper canvas, Care ink —— */
@media (max-width: 767px) {
  :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
    :is(
      .opd-m-card,
      .rad-m-card,
      .pat-m-card,
      .mod-m-hub__tile,
      .careos-kpi,
      .module-kpi,
      .ec-kpi-card,
      .rad-shot-kpi,
      .pharm-shot-kpi,
      .lab-shot-kpi,
      .opd-shot-kpi,
      .ipd-shot-kpi,
      .bb-kpi,
      .hr-kpi,
      .er-kpi,
      .ot-kpi,
      .amb-kpi,
      .er-card,
      .amb-trip-card,
      .pref-hub-card,
      .hospital-shot__hub,
      .hr-phone-row,
      .rehab-phone-row,
      .bb-life-row,
      .ehr-phone__row
    ) {
    background-color: #ffffff;
    border-radius: 14px;
    color: #0f172a;
    box-shadow: 0 4px 12px rgba(0, 18, 36, 0.04);
  }

  :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
    :is(
      .careos-kpi__value,
      .module-kpi__value,
      .rad-shot-kpi__value,
      .ec-kpi-card__value,
      .mod-m-hub__label,
      .mod-m-hub__title
    ) {
    color: #0f172a;
    font-weight: 800;
  }

  :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
    :is(
      .careos-kpi__meta,
      .rad-shot-kpi__meta,
      .ec-kpi-card__meta,
      .mod-m-hub__lede,
      .mod-m-hero__brand,
      .mod-m-hero__lede
    ) {
    color: #64748b;
  }

  .mod-m-hub__glyph {
    background: #eff6ff;
    color: #2563eb;
    box-shadow: none;
    border-radius: 12px;
  }

  /* In-page heroes — paper, not a second colored app. */
  :is(
    .mod-m-hero,
    .rad-m-hero,
    .pat-m-hero,
    .pharm-m-hero,
    .lab-m-hero,
    .ipd-m-hero,
    .rehab-m-hero,
    .bb-m-hero,
    .opd-m-doctor-hero,
    .opd-m-doctor-hero__card,
    .opd-m-doctor-hero__bg
  ) {
    background-color: #f8fafc;
    background-image: none;
    color: #0f172a;
    box-shadow: none;
  }

  :is(
    .mod-m-hero__title,
    .rad-m-hero__title,
    .pat-m-hero__title,
    .pharm-m-hero__title,
    .lab-m-hero__title,
    .ipd-m-hero__title,
    .rehab-m-hero__title,
    .bb-m-hero__title,
    .opd-m-doctor-hero__doctor-name,
    .opd-m-doctor-hero__doctor-name-btn
  ) {
    color: #0f172a;
    font-weight: 800;
  }

  :is(
    .mod-m-hero__lede,
    .rad-m-hero__lede,
    .pat-m-hero__lede,
    .pharm-m-hero__lede,
    .lab-m-hero__lede,
    .ipd-m-hero__lede,
    .rehab-m-hero__lede,
    .bb-m-hero__lede,
    .opd-m-doctor-hero__eyebrow,
    .opd-m-doctor-hero__summary
  ) {
    color: #64748b;
  }

  /* Chips — same pill in every module. Status / ABO chips are not listed. */
  :is(
    .staff-phone-chip,
    .opd-m-chip,
    .opd-date-filter__chip,
    .rad-m-chip,
    .lab-shot-pill,
    .pharm-shot-tabs__btn,
    .clinic-shot-tabs__btn,
    .bill-toolbar__chip,
    .bill-seg__btn,
    .ipd-my-work__queue
  ) {
    background: #eef2f6;
    color: #0f172a;
    border: 0;
    border-radius: 999px;
    font-weight: 600;
  }

  :is(
    .staff-phone-chip.is-active,
    .opd-m-chip.is-active,
    .opd-date-filter__chip.is-active,
    .rad-m-chip.is-active,
    .lab-shot-pill.is-active,
    .pharm-shot-tabs__btn.is-active,
    .clinic-shot-tabs__btn.is-active,
    .bill-toolbar__chip.is-active,
    .bill-seg__btn.is-active,
    .ipd-my-work__queue.is-active
  ) {
    background: #eff6ff;
    color: #1e3a5f;
  }

  /* Fields — Flutter filled control. */
  :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
    :is(input, select, textarea):not([type='checkbox']):not([type='radio']):not([type='range']):not(
      [type='hidden']
    ):not([type='file']):not([type='color']) {
    background: #eef2f6;
    border: 0;
    border-radius: 14px;
    box-shadow: none;
    min-height: 48px;
    font-size: 16px;
    color: #0f172a;
  }

  :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
    textarea {
    min-height: 96px;
  }

  /* Primary actions only — never every .btn */
  :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
    :is(
      .btn-primary,
      .ec-btn-primary,
      .rad-shot-btn--primary,
      .pharm-shot-btn--primary,
      .lab-shot-btn--primary,
      .opd-m-btn--primary,
      .pat-shot-btn--primary,
      .pat-m-btn--primary,
      .ipd-shot-btn--primary,
      .hr-btn--primary,
      .er-btn--primary,
      .amb-btn--primary,
      .bb-btn--primary,
      .inv-shot-btn--primary,
      .users-shot-btn--primary,
      .dl-btn--primary,
      .pref-btn--primary,
      button[type='submit']
    ) {
    background: #2563eb;
    color: #fff;
    border-color: #2563eb;
    border-radius: 14px;
    min-height: 48px;
    font-weight: 700;
    box-shadow: none;
  }

  :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
    :is(
      .btn-secondary,
      .btn-default,
      .rad-shot-btn--ghost,
      .pharm-shot-btn--ghost,
      .lab-shot-btn--ghost,
      .opd-m-btn--ghost,
      .hr-btn--ghost,
      .er-btn--ghost
    ) {
    background: #fff;
    color: #1e3a5f;
    border: 1.4px solid #2563eb;
    border-radius: 14px;
    min-height: 48px;
    font-weight: 700;
    box-shadow: none;
  }

  /* Staff home tiles — same white card as module hubs, not colored pills. */
  .staff-home__tile,
  .staff-home__tile[class*='staff-home__tile--'] {
    --tile-surface: #ffffff;
    --tile-border: rgba(30, 58, 95, 0.1);
    --tile-ink: #0f172a;
    --tile-icon-fg: #2563eb;
    --tile-icon-grad: #eff6ff;
    --tile-icon-glow: transparent;
    background: #ffffff;
    border: 1px solid rgba(30, 58, 95, 0.1);
    border-radius: 14px;
    color: #0f172a;
    box-shadow: 0 4px 12px rgba(0, 18, 36, 0.04);
  }

  .staff-home__tile-icon {
    background: #eff6ff;
    color: #2563eb;
    box-shadow: none;
  }

  .care.care--phone :is(.care-doc, .care-center, .care-door, .care-search-hit) {
    background-color: #ffffff;
    border-radius: 14px;
    color: #0f172a;
    box-shadow: 0 4px 12px rgba(0, 18, 36, 0.04);
  }
}

html.ch-native-app {
  --staff-phone-gutter: 12px;
  --staff-phone-field: #eef2f6;
  --pharm-m-pad-x: 12px;
  --lab-m-pad-x: 12px;
  --rad-m-pad-x: 12px;
  --pat-m-pad-x: 12px;
  --ipd-m-pad-x: 12px;
  --mod-m-pad-x: 12px;
  --ec-platform-btn-radius: 14px;
}

html.ch-native-app .opd-mobile-app {
  --opd-m-pad-x: 0px;
}

html.ch-native-app .ipd-mobile-app {
  --ipd-m-pad-x: 0px;
}

html.ch-native-app .staff-home__lede {
  display: block;
}

/* Native app uses the same skin at any width (iPhone is always native). */
html.ch-native-app :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
  :is(
    .opd-m-card,
    .rad-m-card,
    .pat-m-card,
    .mod-m-hub__tile,
    .careos-kpi,
    .module-kpi,
    .ec-kpi-card,
    .rad-shot-kpi,
    .pharm-shot-kpi,
    .lab-shot-kpi,
    .opd-shot-kpi,
    .ipd-shot-kpi,
    .bb-kpi,
    .hr-kpi,
    .er-kpi,
    .ot-kpi,
    .amb-kpi,
    .er-card,
    .amb-trip-card,
    .pref-hub-card,
    .hospital-shot__hub,
    .hr-phone-row,
    .rehab-phone-row,
    .bb-life-row,
    .ehr-phone__row
  ) {
  background-color: #ffffff;
  border-radius: 14px;
  color: #0f172a;
  box-shadow: 0 4px 12px rgba(0, 18, 36, 0.04);
}

html.ch-native-app :is(
    .mod-m-hero,
    .rad-m-hero,
    .pat-m-hero,
    .pharm-m-hero,
    .lab-m-hero,
    .ipd-m-hero,
    .rehab-m-hero,
    .bb-m-hero,
    .opd-m-doctor-hero,
    .opd-m-doctor-hero__card,
    .opd-m-doctor-hero__bg
  ) {
  background-color: #f8fafc;
  background-image: none;
  color: #0f172a;
  box-shadow: none;
}

html.ch-native-app :is(
    .mod-m-hero__title,
    .rad-m-hero__title,
    .pat-m-hero__title,
    .pharm-m-hero__title,
    .lab-m-hero__title,
    .ipd-m-hero__title,
    .rehab-m-hero__title,
    .bb-m-hero__title,
    .opd-m-doctor-hero__doctor-name,
    .opd-m-doctor-hero__doctor-name-btn
  ) {
  color: #0f172a;
  font-weight: 800;
}

html.ch-native-app .mod-m-hub__glyph,
html.ch-native-app .staff-home__tile-icon {
  background: #eff6ff;
  color: #2563eb;
  box-shadow: none;
}

html.ch-native-app .staff-home__tile,
html.ch-native-app .staff-home__tile[class*='staff-home__tile--'] {
  --tile-surface: #ffffff;
  --tile-border: rgba(30, 58, 95, 0.1);
  --tile-ink: #0f172a;
  --tile-icon-fg: #2563eb;
  --tile-icon-grad: #eff6ff;
  --tile-icon-glow: transparent;
  background: #ffffff;
  border: 1px solid rgba(30, 58, 95, 0.1);
  border-radius: 14px;
  color: #0f172a;
  box-shadow: 0 4px 12px rgba(0, 18, 36, 0.04);
}

html.ch-native-app :is(
    .opd-mobile-app,
    .pharm-mobile-app,
    .lab-mobile-app,
    .rad-mobile-app,
    .pat-mobile-app,
    .ipd-mobile-app,
    .rehab-mobile-app,
    .bb-mobile-app,
    .mod-m-app
  )
  :is(
    .btn-primary,
    .ec-btn-primary,
    .rad-shot-btn--primary,
    .pharm-shot-btn--primary,
    .lab-shot-btn--primary,
    .opd-m-btn--primary,
    .pat-shot-btn--primary,
    .pat-m-btn--primary,
    .ipd-shot-btn--primary,
    .hr-btn--primary,
    .er-btn--primary,
    .amb-btn--primary,
    .bb-btn--primary,
    button[type='submit']
  ) {
  background: #2563eb;
  color: #fff;
  border-color: #2563eb;
  border-radius: 14px;
  min-height: 48px;
  font-weight: 700;
}

html.ch-native-app .care.care--phone :is(.care-doc, .care-center, .care-door, .care-search-hit) {
  background-color: #ffffff;
  border-radius: 14px;
  color: #0f172a;
  box-shadow: 0 4px 12px rgba(0, 18, 36, 0.04);
}

/* Hide per-module mini-app tabs whenever the staff dock is mounted. */
body.ch-staff-global-nav nav.module-bottom-nav,
body.ch-staff-global-nav nav.opd-bottom-nav,
body.ch-staff-global-nav nav.ipd-bottom-nav,
body.ch-staff-global-nav .rehab-dock,
body.ch-staff-global-nav .mod-float-dock,
body.ch-staff-global-nav .mod-m-pill-dock {
  display: none !important;
}

/* Dock inset — phone web + native only. Tablet/desktop web keeps its own padding. */
@media (max-width: 767px) {
  body.ch-staff-global-nav .ec-app-content {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
  }

  .staff-home__menu-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 48px;
    padding: 0 16px;
    text-decoration: none;
    font-weight: 700;
    color: #fff;
    background: #2563eb;
    border: 0;
    border-radius: 14px;
  }
}

html.ch-native-app body.ch-staff-global-nav .ec-app-content {
  padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
}

html.ch-native-app .staff-home__menu-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 48px;
  padding: 0 16px;
  text-decoration: none;
  font-weight: 700;
  color: #fff;
  background: #2563eb;
  border: 0;
  border-radius: 14px;
}

.ch-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  width: 40px;
  height: 40px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}

.ch-theme-toggle__label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.ch-theme-toggle--inverted {
  color: #fff;
}

.ch-theme-toggle:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

.care.care--phone .care-top__tools .ch-theme-toggle {
  width: 44px;
  height: 44px;
}

.care-drawer__theme {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  border-top: 1px solid var(--care-line, #e2e8f0);
}

.care-drawer__theme span {
  font-size: 0.88rem;
  font-weight: 650;
  color: var(--care-ink, #0c1a2e);
}

.pp-top__actions .ch-theme-toggle {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}

.pp.pp--phone .pp-top__actions .ch-theme-toggle {
  color: #fff;
}


/**
 * Care Hub — MedCare shell chrome (web marketplace).
 * Top nav, sticky search, footer, phone bottom nav. Loaded last from CareLayout.
 * Scope: .care--web (+ .care--web.care--phone for dock). Brand CareOS24. No staff-fb-*.
 */

/* —— Top nav —— */
.care--web .care-top {
  background: var(--care-v2-surface, #fff);
  border-bottom: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: none;
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
}

.care--web .care-top__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding-inline: 16px;
}

.care--web .care-top__row--brand {
  min-height: 56px;
  align-items: center;
  gap: 12px;
  flex-wrap: nowrap !important;
}

.care--web .care-top__brand .care-top__wordmark,
.care--web .care-top__brand .care-top__tagline {
  display: none !important;
}

.care--web .care-top__brand {
  display: inline-flex !important;
  align-items: center;
  gap: 0;
  text-decoration: none;
  flex-shrink: 0;
}

.care--web .care-v2-brand-logo,
.care--web .care-v2-brand-logo--wordmark-white,
.care--web .care-top__brand-logo,
.care--web .care-drawer__brand-logo {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: 6px 10px;
  max-width: 148px;
  line-height: 0;
  background: linear-gradient(135deg, #0b1f3a 0%, #16324f 45%, #0066ff 130%);
  border-radius: 2px;
  border: 1px solid color-mix(in srgb, #0066ff 35%, transparent);
}

/* Blue wordmark on light chrome — no navy plate */
.care--web .care-v2-brand-logo--wordmark,
.care--web .care-top__brand-logo.care-v2-brand-logo--wordmark,
.care--web .care-drawer__brand-logo.care-v2-brand-logo--wordmark {
  padding: 0 !important;
  max-width: 160px;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}

.care--web .care-v2-brand-logo__mark,
.care--web .care-v2-brand-logo--mark,
.care--web .care-v2-brand-logo--badge,
.care--web .care-v2-brand-logo__text {
  display: none !important;
}

.care--web .care-v2-brand-logo__word,
.care--web .care-v2-brand-logo--wordmark .care-v2-brand-logo__word,
.care--web .care-v2-brand-logo--wordmark-white .care-v2-brand-logo__word {
  display: block !important;
  width: auto;
  height: var(--care-brand-h, 24px);
  max-height: 28px;
  object-fit: contain;
  object-position: left center;
}

.care--web .care-v2-brand-logo__text span {
  display: none !important;
}

.care--web .care-v2-brand-logo--white .care-v2-brand-logo__text {
  display: none !important;
}

.care--web .care-v2-brand-logo--white .care-v2-brand-logo__text span {
  color: #7dd3fc;
}

.care--web .care-top__logo-link--mark .care-v2-brand-logo {
  max-width: min(140px, 42vw);
}

.care--web .care-top__logo-link--mark .care-v2-brand-logo__mark {
  max-height: 28px;
}

.care--web .care-top__logo-link--mark .care-v2-brand-logo__word {
  max-height: 22px;
}

.care--web .care-top__nav--v2 {
  display: flex;
  flex: 1 1 auto;
  justify-content: flex-start !important;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap !important;
  min-width: 0;
  overflow: visible;
  padding-block: 4px;
  scrollbar-width: none;
}

.care--web .care-top__nav--v2::-webkit-scrollbar {
  display: none;
}

.care--web .care-top__nav--v2 > a,
.care--web .care-top-menu > .care-top-menu__item > .care-top-menu__trigger {
  display: inline-flex;
  align-items: center;
  gap: 0;
  flex: 0 0 auto;
  padding: 8px 10px;
  border-radius: 2px !important;
  border-bottom: none !important;
  color: var(--care-v2-ink, #0f172a);
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.45;
  overflow: visible;
  text-decoration: none;
  white-space: nowrap;
  background: transparent;
  transition:
    color 0.15s ease,
    background 0.15s ease;
}

.care--web .care-top__nav--v2 > a .care-action-icon,
.care--web .care-top__nav--v2 > a svg,
.care--web .care-top__nav--v2 > a .care-ico {
  display: none !important;
}

.care--web .care-top__nav--v2 > a:hover,
.care--web .care-top__nav--v2 > a:focus-visible,
.care--web .care-top-menu > .care-top-menu__item > .care-top-menu__trigger:hover,
.care--web .care-top-menu > .care-top-menu__item > .care-top-menu__trigger:focus-visible {
  color: var(--care-v2-primary, #0066ff);
  background: var(--care-v2-primary-soft, #ebf5ff);
}

.care--web .care-top__nav--v2 > a.is-active,
.care--web .care-top-menu > .care-top-menu__item > .care-top-menu__trigger.is-active {
  color: var(--care-v2-primary, #0066ff);
  background: var(--care-v2-primary-soft, #ebf5ff);
  font-weight: 600;
  border-bottom: none !important;
}

.care--web .care-top__actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.care--web .care-top__icon-row {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.care--web .care-top__icon-btn,
.care--web .care-top__search-btn--desk {
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  color: var(--care-v2-navy, #0b1f3a);
  cursor: pointer;
  flex-shrink: 0;
  padding: 0;
}

.care--web .care-top__icon-btn:hover,
.care--web .care-top__icon-btn:focus-visible,
.care--web .care-top__search-btn--desk:hover,
.care--web .care-top__search-btn--desk:focus-visible {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 40%, var(--care-v2-line, #e2e8f0));
  color: var(--care-v2-primary, #0066ff);
  background: var(--care-v2-primary-soft, #ebf5ff);
}

.care--web .care-top__icon-btn .care-action-icon,
.care--web .care-top__icon-btn svg,
.care--web .care-top__search-btn--desk .care-action-icon,
.care--web .care-top__search-btn--desk svg {
  width: 20px;
  height: 20px;
}

.care--web .care-top__icon-row .care-cart-ico {
  width: 44px;
  height: 44px;
  min-width: 44px;
  padding: 0;
  border-radius: 50%;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  color: var(--care-v2-navy, #0b1f3a);
  gap: 0;
}

.care--web .care-top__icon-row .care-cart-ico span {
  display: none;
}

.care--web .care-top__icon-row .care-cart-ico.is-hot {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, var(--care-v2-line, #e2e8f0));
}

.care--web .care-top__lang.care-v2-lang {
  display: inline-flex;
  align-items: center;
  width: auto;
  min-height: 40px;
  padding: 0;
  overflow: visible;
  border-radius: 2px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
}

.care--web .care-top__lang .ec-locale-switcher,
.care--web .care-top__lang .ec-locale-switcher--pair {
  position: static;
  inset: auto;
  width: auto;
  height: auto;
  min-height: 40px;
  opacity: 1;
  pointer-events: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  border: 0;
  border-radius: 2px;
  background: transparent;
  color: var(--care-v2-navy, #0b1f3a);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
}

.care--web .ec-locale-switcher__globe-ico {
  flex-shrink: 0;
  color: var(--care-v2-primary, #0066ff);
}

.care--web .ec-locale-switcher__lang {
  color: var(--care-v2-muted, #64748b);
  font-weight: 500;
}

.care--web .ec-locale-switcher__lang.is-active {
  color: var(--care-v2-navy, #0b1f3a);
  font-weight: 700;
}

.care--web .ec-locale-switcher__sep {
  color: var(--care-v2-line, #e2e8f0);
  font-weight: 400;
}

.care--web .care-top__lang .care-v2-lang-pair,
.care--web .care-top__lang .care-v2-lang-globe,
.care--web .care-top__lang .care-v2-lang-chevron {
  display: none !important;
}

.care--web .care-top__profile {
  display: none !important;
}

.care--web .care-top__profile.care-top__profile--desk {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 4px 12px 4px 4px;
  border-radius: var(--care-v2-radius-pill, 999px);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  cursor: pointer;
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
}

.care--web .care-top__profile--desk .care-top__profile-copy em {
  color: var(--care-v2-muted, #64748b);
  font-style: normal;
  font-size: 0.72rem;
}

.care--web .care-top__profile--desk .care-top__profile-copy strong {
  color: var(--care-v2-ink, #0f172a);
  font-size: 0.88rem;
}

.care--web .care-top__cta,
.care--web .care-top__cta--book {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  min-width: 0;
  padding: 0 12px;
  border-radius: 2px !important;
  background: var(--care-v2-primary, #0066ff);
  color: #fff !important;
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
  font-weight: 700;
  font-size: 0.8125rem;
  text-decoration: none;
  border: none;
  cursor: pointer;
  box-shadow: none !important;
  transition: background 0.15s ease;
  white-space: nowrap;
}

.care--web .care-top__cta-ico {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
}

.care--web .care-top__cta:hover,
.care--web .care-top__cta:focus-visible,
.care--web .care-top__cta--book:hover,
.care--web .care-top__cta--book:focus-visible {
  background: var(--care-v2-primary-hover, #0052cc);
  color: #fff !important;
}

.care--web .care-top__login {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 10px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  border-radius: 2px;
  background: var(--care-v2-surface, #fff);
  color: var(--care-v2-navy, #0b1f3a);
  font: inherit;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}

.care--web .care-top__login:hover {
  border-color: var(--care-v2-primary, #0066ff);
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-top__actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
}

.care--web .care-top__lang.care-v2-lang {
  border-radius: 2px;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  padding: 0;
  min-height: 36px;
  background: var(--care-v2-surface, #fff);
}

.care--web .care-top__lang .ec-locale-switcher--pair {
  min-height: 36px;
  padding: 0 8px;
  gap: 5px;
  font-size: 0.75rem;
}

.care--web .care-top__profile.care-top__profile--desk,
.care--web .care-top__profile.care-top__profile--compact {
  min-height: 36px;
  padding: 2px 8px 2px 2px;
  gap: 6px;
  border-radius: 2px !important;
}

.care--web .care-top__profile--compact .care-top__profile-photo,
.care--web .care-top__profile--desk.care-top__profile--compact .care-top__profile-photo {
  width: 28px !important;
  height: 28px !important;
}

.care--web .care-top__profile--compact .care-top__profile-copy em {
  display: none !important;
}

.care--web .care-top__profile--compact .care-top__profile-copy strong {
  font-size: 0.8125rem;
}

/* —— Header search strip removed (hero /care/search only) —— */
.care--web .care-top__search,
.care--web.care--search-pinned .care-top__search,
.care--web .care-top__search.is-visible {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.care--web .care-top__search .care-smart {
  width: min(100%, 860px);
  margin-inline: auto;
}

.care--web .care-top__search .care-smart__field {
  min-height: 52px;
  padding: 6px 6px 6px 14px;
  gap: 10px;
  border-radius: var(--care-v2-radius-md, 16px) !important;
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  box-shadow: var(--care-v2-shadow-sm, 0 2px 8px rgba(11, 31, 58, 0.06));
}

.care--web .care-top__search .care-smart__input {
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
  font-size: 1rem;
  color: var(--care-v2-ink, #0f172a);
}

.care--web .care-top__search .care-smart__input::placeholder {
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-top__search .care-smart__submit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-height: 40px;
  padding: 0 20px;
  border: 0;
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  color: #fff !important;
  background: var(--care-v2-primary, #0066ff) !important;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.24);
  cursor: pointer;
}

.care--web .care-top__search .care-smart__submit:hover,
.care--web .care-top__search .care-smart__submit:focus-visible {
  background: var(--care-v2-primary-hover, #0052cc) !important;
}

.care--web .care-top__search .care-smart__submit-label {
  display: inline;
}

.care--web .care-top__search .care-smart__place-btn--lead {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  max-width: 11rem;
  min-width: 7rem;
  padding: 8px 12px;
  border-radius: var(--care-v2-radius, 12px);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-paper, #f7f9fc);
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
  color: var(--care-v2-ink, #0f172a);
}

.care--web .care-top__search .care-smart__place-btn--lead.is-active {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 35%, var(--care-v2-line, #e2e8f0));
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-top__search .care-smart__panel,
.care--web .care-top__search .care-smart__filters {
  border-radius: var(--care-v2-radius-md, 16px);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow, 0 8px 24px rgba(11, 31, 58, 0.08));
}

/* —— Footer (navy #0B1F3A) —— */
.care--web .care-site-footer {
  background: var(--care-v2-navy, #0b1f3a) !important;
  color: rgba(248, 250, 252, 0.82);
  padding: 48px 24px 28px;
  margin-top: 48px;
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
}

.care--web .care-site-footer__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.35fr repeat(3, minmax(0, 1fr)) minmax(0, 1.05fr);
  grid-gap: 28px 28px;
  gap: 28px 28px;
}

.care--web .care-site-footer h2,
.care--web .care-site-footer__col h2,
.care--web .care-seo-col h2 {
  color: #fff;
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
  font-size: 0.95rem;
  font-weight: 700;
  margin: 0 0 14px;
}

.care--web .care-site-footer a,
.care--web .care-site-footer__linkbtn,
.care--web .care-seo-col a {
  color: rgba(248, 250, 252, 0.78);
  text-decoration: none;
  font-size: 0.9rem;
}

.care--web .care-site-footer a:hover,
.care--web .care-site-footer a:focus-visible,
.care--web .care-site-footer__linkbtn:hover,
.care--web .care-seo-col a:hover {
  color: #fff;
}

.care--web .care-site-footer__logo .care-v2-brand-logo,
.care--web .care-site-footer__brand-logo {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}
.care--web .care-site-footer__brand-logo {
  display: inline-flex !important;
  align-items: center;
  gap: 0.5rem;
  max-width: 220px;
}

.care--web .care-site-footer__brand-logo .care-v2-brand-logo__mark {
  max-height: 40px;
  border-radius: 10px;
}

.care--web .care-site-footer__brand-logo .care-v2-brand-logo__word {
  max-height: 34px;
  filter: none;
}

.care--web .care-site-footer__apps {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 16px 0 14px;
}

.care--web .care-site-footer__store {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  min-width: 148px;
  min-height: 44px;
  padding: 6px 14px 6px 12px;
  border-radius: 10px;
  border: 1px solid rgba(248, 250, 252, 0.28);
  background: #000;
  color: #fff !important;
  text-decoration: none !important;
  line-height: 1.15;
}

.care--web .care-site-footer__store:hover,
.care--web .care-site-footer__store:focus-visible {
  border-color: rgba(248, 250, 252, 0.55);
  color: #fff !important;
}

.care--web .care-site-footer__store-kicker {
  font-size: 0.62rem;
  font-weight: 500;
  opacity: 0.85;
}

.care--web .care-site-footer__store strong {
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.care--web .care-site-footer__social {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.care--web .care-site-footer__social-link {
  width: 36px;
  height: 36px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(248, 250, 252, 0.22);
  background: rgba(248, 250, 252, 0.06);
  color: #fff !important;
}

.care--web .care-site-footer__social-link:hover,
.care--web .care-site-footer__social-link:focus-visible {
  background: var(--care-v2-primary, #0066ff);
  border-color: var(--care-v2-primary, #0066ff);
  color: #fff !important;
}

.care--web .care-site-footer__legal-bar {
  max-width: 1200px;
  margin: 28px auto 0;
  padding-top: 18px;
  border-top: 1px solid rgba(248, 250, 252, 0.14);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.care--web .care-site-footer__sell {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 16px;
  border-radius: 999px;
  background: #fff;
  color: #0b1f44 !important;
  font-weight: 750;
  text-decoration: none;
}

.care--web .care-site-footer__sell:hover,
.care--web .care-site-footer__sell:focus-visible {
  background: #e7f6ef;
}

.care--web .care-site-footer__legal-bar p {
  margin: 0;
  font-size: 0.82rem;
  color: rgba(248, 250, 252, 0.55);
}

.care--web .care-site-footer__seo {
  max-width: 1200px;
  margin: 28px auto 0;
  padding-top: 28px;
  border-top: 1px solid rgba(248, 250, 252, 0.14);
}

.care--web .care-site-footer .care-btn--primary,
.care--web .care-site-footer a.care-btn--primary {
  margin-top: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  border-radius: var(--care-v2-radius-pill, 999px);
  background: var(--care-v2-primary, #0066ff) !important;
  border-color: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
  font-weight: 600;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.22);
}

.care--web .care-site-footer .ec-locale-switcher,
.care--web .care-site-footer .ec-locale-switcher--compact,
.care--web .care-site-footer .ec-locale-switcher--pair {
  background: transparent;
  color: rgba(248, 250, 252, 0.86);
  border-color: rgba(248, 250, 252, 0.22);
  border-radius: 2px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 12px;
}

.care--web .care-site-footer .ec-locale-switcher__lang {
  color: rgba(248, 250, 252, 0.55);
}

.care--web .care-site-footer .ec-locale-switcher__lang.is-active {
  color: #fff;
}

/* —— Web phone viewport: bottom nav —— */
.care.care--web.care--phone .care-tabs--v2 {
  --care-tabs-h: calc(72px + env(safe-area-inset-bottom, 0px));
  gap: 0;
  padding: 4px 4px env(safe-area-inset-bottom, 0px);
  background: var(--care-v2-surface, #fff) !important;
  border-top: 1px solid var(--care-v2-line, #e2e8f0) !important;
  box-shadow: 0 -6px 20px rgba(11, 31, 58, 0.06) !important;
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
}

.care.care--web.care--phone .care-tabs--v2 .care-tabs__btn {
  position: relative;
  gap: 3px;
  min-height: 56px;
  padding: 8px 2px 14px;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.care.care--web.care--phone .care-tabs--v2 .care-tabs__btn .care-ico {
  width: 24px;
  height: 24px;
  stroke-width: 1.75;
}

.care.care--web.care--phone .care-tabs--v2 .care-tabs__btn .care-ico--art {
  filter: grayscale(1) opacity(0.45);
}

.care.care--web.care--phone .care-tabs--v2 .care-tabs__btn.is-active {
  color: var(--care-v2-primary, #0066ff);
  background: transparent;
}

.care.care--web.care--phone .care-tabs--v2 .care-tabs__btn.is-active .care-ico {
  color: var(--care-v2-primary, #0066ff);
  stroke: var(--care-v2-primary, #0066ff);
}

.care.care--web.care--phone .care-tabs--v2 .care-tabs__btn.is-active .care-ico--art {
  filter: none;
}

/* 8px active indicator dot — MedCare locked (override design-v2 content:none) */
.care.care--web.care--phone .care-tabs--v2 .care-tabs__btn.is-active::before {
  content: '' !important;
  position: absolute;
  bottom: 4px;
  left: 50%;
  transform: translateX(-50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--care-v2-primary, #0066ff) !important;
  box-shadow: none;
}

/* —— Web phone viewport: header wordmark —— */
.care.care--web.care--phone .care-top {
  background: var(--care-v2-surface, #fff);
  border-bottom: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: var(--care-v2-shadow-sm, 0 2px 8px rgba(11, 31, 58, 0.06));
}

.care.care--web.care--phone .care-top__logo-link--mark .care-v2-brand-logo {
  max-width: min(150px, 46vw);
}

.care.care--web.care--phone .care-top__logo-link--mark .care-v2-brand-logo__mark {
  max-height: 30px;
}

.care.care--web.care--phone .care-top__logo-link--mark .care-v2-brand-logo__word {
  max-height: 26px;
}

.care.care--web.care--phone.care--tab-root .care-top__logo-link--mark .care-v2-brand-logo {
  max-width: min(168px, 52vw);
}

.care.care--web.care--phone .care-top__title {
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
  font-weight: 600;
  color: var(--care-v2-navy, #0b1f3a);
}

@media (max-width: 960px) {
  .care--web .care-site-footer__inner {
    grid-template-columns: 1fr 1fr;
  }

  .care--web .care-top__nav--v2 {
    display: none;
  }
}

@media (min-width: 1080px) {
  .care--web .care-site-footer__inner {
    grid-template-columns: 1.35fr repeat(3, minmax(0, 1fr)) minmax(0, 1.05fr);
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Mobile hamburger drawer — white panel, primary links, CareOS24 mark
   ═══════════════════════════════════════════════════════════════════════════ */

.care--web .care-drawer__panel {
  width: min(320px, 88vw);
  background: var(--care-v2-surface, #fff) !important;
  -webkit-border-start: 1px solid var(--care-v2-line, #e2e8f0);
          border-inline-start: 1px solid var(--care-v2-line, #e2e8f0);
  box-shadow: -12px 0 40px rgba(11, 31, 58, 0.12);
  font-family: var(--care-v2-font,'Inter', 'IBM Plex Sans Arabic', 'Noto Sans Arabic', system-ui, sans-serif);
  color: var(--care-v2-ink, #0f172a);
}

.care--web .care-drawer__head {
  padding: 18px 16px 12px;
  border-bottom: 1px solid var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-paper, #f7f9fc);
}

.care--web .care-drawer__nav {
  display: flex;
  flex-direction: column;
  padding: 10px 8px 16px;
  gap: 4px;
}

html[dir='rtl'] .care--web .care-drawer__panel {
  box-shadow: 12px 0 40px rgba(11, 31, 58, 0.12);
}

.care--web .care-drawer__brand {
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}

.care--web .care-drawer__brand .care-v2-brand-logo {
  display: inline-flex !important;
  max-width: 200px;
}

.care--web .care-drawer__brand .care-top__tagline {
  display: block !important;
  font-size: 0.78rem;
  color: var(--care-v2-muted, #64748b);
  font-weight: 500;
}

.care--web .care-drawer__brand .care-top__wordmark {
  display: none !important;
}

.care--web .care-drawer__identity strong {
  color: var(--care-v2-navy, #0b1f3a);
  font-family: var(--care-v2-font-display);
}

.care--web .care-drawer__identity span {
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-drawer__photo {
  border-radius: var(--care-v2-radius, 12px);
  background: var(--care-v2-primary-soft, #ebf5ff);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 16%, transparent);
}

.care--web .care-drawer__close {
  border-radius: var(--care-v2-radius-pill, 999px);
  border-color: var(--care-v2-line, #e2e8f0);
  background: var(--care-v2-surface, #fff);
  color: var(--care-v2-navy, #0b1f3a);
}

.care--web .care-drawer__lang,
.care--web .care-drawer__theme {
  border-color: var(--care-v2-line, #e2e8f0);
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-drawer__link {
  border-radius: var(--care-v2-radius, 12px);
  border-bottom: 0;
  padding: 12px 10px;
  color: var(--care-v2-navy-soft, #16324f);
  font-weight: 600;
  transition: background 0.15s ease, color 0.15s ease;
}

.care--web .care-drawer__link:hover,
.care--web .care-drawer__link:focus-visible {
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-drawer__link .care-ico,
.care--web .care-drawer__link .care-action-icon {
  color: var(--care-v2-primary, #0066ff);
}

.care--web .care-drawer__link--accent {
  background: var(--care-v2-primary-soft, #ebf5ff);
  color: var(--care-v2-primary, #0066ff) !important;
  font-weight: 650;
}

.care--web .care-drawer__actions .care-btn--primary {
  border-radius: var(--care-v2-radius-pill, 999px) !important;
  background: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 650;
  min-height: 48px;
  box-shadow: 0 4px 12px rgba(0, 102, 255, 0.22);
}

.care--web .care-drawer__actions .care-btn--ghost {
  border-radius: var(--care-v2-radius-pill, 999px);
  border: 1px solid var(--care-v2-line, #e2e8f0);
  color: var(--care-v2-navy, #0b1f3a);
}

/**
 * Care Hub — sharp theme overrides (load last).
 * 2px corners, no soft shadows, single borders, wider hero search,
 * profile menu, booking calendar, specialty chips.
 */

/* —— Global: kill soft elevation + force sharp corners —— */
.care--web,
.care--web * {
  --care-v2-radius: 2px;
  --care-v2-radius-md: 2px;
  --care-v2-radius-lg: 2px;
  --care-v2-radius-pill: 2px;
  --care-v2-shadow: none;
  --care-v2-shadow-sm: none;
  --care-v2-shadow-card: none;
}

.care--web .care-btn,
.care--web .care-v2-btn,
.care--web .care-filter,
.care--web .care-link.care-btn,
.care--web button.care-filter,
.care--web .care-top__cta,
.care--web .care-top__icon-btn,
.care--web .care-page input:not([type='checkbox']):not([type='radio']),
.care--web .care-page select,
.care--web .care-page textarea,
.care--web .care-smart__field,
.care--web .care-smart__panel,
.care--web .care-smart__filters,
.care--web .care-smart__submit,
.care--web .care-smart__clear,
.care--web .care-smart__dismiss,
.care--web .care-smart__place-btn,
.care--web .care-doctor-card,
.care--web .care-center,
.care--web .care-shelf-card,
.care--web .care-store-card,
.care--web .care-spec-list__item,
.care--web .care-v2-practice-card,
.care--web .care-v2-center-card,
.care--web .care-book-stepper,
.care--web .care-book-doctor-card,
.care--web .care-book-flow__about,
.care--web .care-book-monthcal,
.care--web .care-book-flow__panel,
.care--web .care-v2-dd__profile,
.care--web .care-skel-card,
.care--web .care-mc-pkg-card,
.care--web .care-mc-article-card,
.care--web .care-section,
.care--web .care-filters,
.care--web .care-filter-bar,
.care--web .care-list > *,
.care--web .care-v2-type-strip__link,
.care--web .care-kind-card {
  border-radius: 2px !important;
  box-shadow: none !important;
}

/* Avatars / doctor photos stay circular; product thumbs (--sq) stay rectangular */
.care--web .care-avatar:not(.care-avatar--sq),
.care--web .care-top__profile-photo,
.care--web .care-book-doctor-card__photo,
.care--web .care-doctor-card__photo,
.care--web .care-user-avatar,
.care--web img.care-avatar:not(.care-avatar--sq) {
  border-radius: 50% !important;
}

.care--web .care-avatar.care-avatar--sq,
.care--web img.care-avatar.care-avatar--sq {
  border-radius: var(--care-v2-radius-md, 12px) !important;
}

/* —— Top bar: less crowded —— */
.care--web:not(.care--phone) .care-top__icon-row {
  display: none !important;
}

.care--web .care-top {
  box-shadow: none !important;
}

.care--web .care-top__row--brand {
  min-height: 64px;
  gap: 12px;
}

.care--web .care-top__nav--v2 {
  gap: 2px;
}

.care--web .care-top__nav--v2 > a,
.care--web .care-top-menu > .care-top-menu__item > .care-top-menu__trigger {
  border-radius: 2px !important;
  padding: 8px 12px !important;
}

.care--web .care-top__cta {
  border-radius: 2px !important;
  box-shadow: none !important;
  min-height: 40px;
  padding: 0 16px !important;
}

.care--web .care-top__lang {
  border-radius: 2px !important;
}

/* —— Profile dropdown —— */
.care--web .care-top__profile-wrap {
  position: relative;
}

.care--web .care-top__profile {
  border-radius: 2px !important;
  gap: 8px;
  padding: 4px 8px 4px 4px;
  border: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
  box-shadow: none !important;
}

.care--web .care-top__profile--desk .care-top__profile-copy em {
  display: none;
}

.care--web .care-top__profile-menu {
  position: absolute;
  top: calc(100% + 6px);
  inset-inline-end: 0;
  z-index: 80;
  min-width: 220px;
  padding: 6px;
  margin: 0;
  list-style: none;
  background: #fff;
  border: 1px solid var(--care-v2-line);
  border-radius: 2px;
  box-shadow: none;
}

.care--web .care-top__profile-menu a,
.care--web .care-top__profile-menu button {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 0;
  border-radius: 2px;
  background: transparent;
  color: var(--care-v2-navy);
  font: inherit;
  font-size: 0.92rem;
  font-weight: 600;
  text-align: start;
  text-decoration: none;
  cursor: pointer;
}

.care--web .care-top__profile-menu a:hover,
.care--web .care-top__profile-menu button:hover,
.care--web .care-top__profile-menu a:focus-visible,
.care--web .care-top__profile-menu button:focus-visible {
  background: var(--care-v2-primary-soft);
  color: var(--care-v2-primary);
  outline: none;
}

.care--web .care-top__profile-menu__ico {
  width: 18px;
  height: 18px;
  color: var(--care-v2-primary);
  flex-shrink: 0;
}

.care--web .care-top__profile-menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.care--web .care-top__profile-menu__sep {
  height: 1px;
  margin: 4px 8px;
  background: var(--care-v2-line);
  border: 0;
  padding: 0;
  list-style: none;
}

.care--web .care-top__profile-menu__logout {
  color: #b91c1c !important;
}

.care--web .care-top__profile-menu__logout .care-top__profile-menu__ico {
  color: #b91c1c;
}

/* —— Hero search: wider, sharp, single border, no shadow —— */
.care--web .care-v2-home-hero__search {
  max-width: min(920px, 100%) !important;
  width: 100% !important;
}

.care--web .care-v2-home-hero__search .care-smart,
.care--web .care-v2-home-hero__search .care-smart--dual {
  width: 100% !important;
  max-width: none !important;
}

.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__field--dual,
.care--web .care-v2-home-hero__search .care-smart__field,
.care--web .care-smart.is-focused .care-smart__field,
.care--web .care-smart.is-open .care-smart__field {
  width: 100% !important;
  max-width: none !important;
  min-height: 52px !important;
  padding: 4px 4px 4px 14px !important;
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  background: #fff !important;
  transform: none !important;
  gap: 0 !important;
}

.care--web .care-smart--dual .care-smart__field-main {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

.care--web .care-smart--dual .care-smart__input,
.care--web .care-v2-home-hero__search .care-smart__input,
.care--web .care-smart__input {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  background: transparent !important;
  min-height: 44px;
  padding: 0 8px 0 0 !important;
}

.care--web .care-smart--dual .care-smart__place-btn--dual {
  margin: 0 !important;
  padding: 0 12px !important;
  min-height: 44px !important;
  border: 0 !important;
  -webkit-border-start: 1px solid var(--care-v2-line) !important;
          border-inline-start: 1px solid var(--care-v2-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.care--web .care-smart--dual .care-smart__place-btn--dual.is-active,
.care--web .care-smart--dual .care-smart__place-btn--dual[aria-expanded='true'] {
  background: var(--care-v2-primary-mist) !important;
  border-color: transparent !important;
  border-inline-start-color: var(--care-v2-line) !important;
  color: var(--care-v2-primary) !important;
}

.care--web .care-smart--dual .care-smart__place-pin {
  width: 22px !important;
  height: 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.care--web .care-v2-home-hero__search .care-smart--dual .care-smart__submit,
.care--web .care-v2-mobile-hero__search .care-smart--dual .care-smart__submit,
.care--web .care-v2-home-hero__search .care-smart__submit {
  min-width: 104px !important;
  height: 44px !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  background: var(--care-v2-primary) !important;
}

.care--web .care-smart--dual .care-smart__clear {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-smart--dual .care-smart__panel,
.care--web .care-v2-home-hero__search .care-smart__panel {
  margin-top: 8px !important;
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  background: #fff !important;
}

.care--web .care-smart--dual .care-smart__tabs .care-filter,
.care--web .care-v2-home-hero__search .care-smart__tabs .care-filter,
.care--web .care-smart--dual .care-smart__dismiss,
.care--web .care-smart__hit {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-smart__hit {
  border: 1px solid transparent;
  background: transparent;
}

.care--web .care-smart__hit:hover,
.care--web .care-smart__hit:focus-visible {
  background: var(--care-v2-primary-mist) !important;
  border-color: color-mix(in srgb, var(--care-v2-primary) 22%, var(--care-v2-line)) !important;
}

/* —— Specialty browse: no shadow, full names —— */
.care--web .care-section--browse-specialty,
.care--web .care-spec-list {
  box-shadow: none !important;
}

.care--web .care-spec-list {
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 8px !important;
}

.care--web .care-spec-list__item {
  border-radius: 2px !important;
  box-shadow: none !important;
  min-height: 52px;
  padding: 12px 14px !important;
}

.care--web .care-spec-list__item:hover {
  box-shadow: none !important;
  border-color: color-mix(in srgb, var(--care-v2-primary) 40%, var(--care-v2-line)) !important;
  background: var(--care-v2-primary-mist);
}

.care--web .care-spec-list__row {
  flex: 1 1;
  min-width: 0;
  gap: 10px !important;
}

.care--web .care-spec-list__row > span:last-child {
  overflow: visible !important;
  text-overflow: unset !important;
  white-space: normal !important;
  line-height: 1.25;
  font-size: 0.92rem;
}

.care--web .care-spec-list__item em {
  border-radius: 2px !important;
  flex-shrink: 0;
}

/* —— Listing filters / search —— */
.care--web .care-filter-bar,
.care--web .care-filters,
.care--web .care-v2-doctors-tools,
.care--web .care-v2-center-gate__tools {
  box-shadow: none !important;
  border-radius: 2px !important;
}

.care--web .care-filter-bar input,
.care--web .care-filters input,
.care--web .care-v2-doctors-tools input,
.care--web .care-page .care-search-field,
.care--web .care-page .care-filter-search {
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  outline: none !important;
}

.care--web .care-filter-bar input:focus,
.care--web .care-filters input:focus,
.care--web .care-v2-doctors-tools input:focus {
  border-color: var(--care-v2-primary) !important;
  box-shadow: none !important;
}

/* —— Booking calendar + slots —— */
.care--web .care-book-stepper,
.care--web .care-book-doctor-card,
.care--web .care-book-flow__about,
.care--web .care-medcare-book .care-book-flow__panel,
.care--web .care-v2-book-panel {
  border-radius: 2px !important;
  box-shadow: none !important;
  border: 1px solid var(--care-v2-line);
  background: #fff;
}

.care--web .care-book-stepper {
  padding: 10px 12px !important;
}

.care--web .care-book-stepper__num {
  border-radius: 2px !important;
  border-width: 1px !important;
  box-shadow: none !important;
}

.care--web .care-book-stepper > li.is-active .care-book-stepper__num {
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.care--web .care-book-flow__datetime {
  gap: 16px !important;
}

.care--web .care-book-monthcal {
  padding: 14px !important;
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 2px !important;
  background: #fff !important;
}

.care--web .care-book-monthcal__nav button,
.care--web .care-book-monthcal__head button {
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 2px !important;
  background: #fff !important;
  color: var(--care-v2-navy) !important;
  min-width: 32px;
  min-height: 32px;
  box-shadow: none !important;
}

.care--web .care-book-monthcal__nav button:hover,
.care--web .care-book-monthcal__head button:hover {
  border-color: var(--care-v2-primary) !important;
  color: var(--care-v2-primary) !important;
  background: var(--care-v2-primary-soft) !important;
}

.care--web .care-book-monthcal__day {
  border-radius: 2px !important;
  border: 1px solid transparent;
}

.care--web .care-book-monthcal__day.is-today:not(.is-selected) {
  box-shadow: none !important;
  border-color: var(--care-v2-primary) !important;
  color: var(--care-v2-primary) !important;
  background: var(--care-v2-primary-soft) !important;
}

.care--web .care-book-monthcal__day.is-selected {
  border-radius: 2px !important;
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
}

.care--web .care-slot,
.care--web .care-v2-dd-slot-grid .care-slot {
  border-radius: 2px !important;
  border: 1px solid var(--care-v2-line) !important;
  background: #fff !important;
  box-shadow: none !important;
  min-height: 40px;
  font-weight: 600;
}

.care--web .care-slot.is-active,
.care--web .care-v2-dd-slot-grid .care-slot.is-active {
  background: var(--care-v2-primary) !important;
  border-color: var(--care-v2-primary) !important;
  color: #fff !important;
}

.care--web .care-slot.is-unavailable {
  opacity: 0.4;
  text-decoration: line-through;
}

.care--web .care-book-flow__nav .care-btn,
.care--web .care-book-flow__continue,
.care--web .care-book-flow__back {
  border-radius: 2px !important;
  box-shadow: none !important;
  min-height: 44px;
}

.care--web .care-book-flow__panel {
  padding: 18px !important;
}

.care--web .care-book-flow__slots-col,
.care--web .care-book-flow__cal {
  min-width: 0;
}

.care--web .care-book-slot-period h4 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 8px;
  background: var(--care-v2-primary-mist);
  border: 1px solid color-mix(in srgb, var(--care-v2-primary) 18%, var(--care-v2-line));
  border-radius: 2px;
  color: var(--care-v2-primary);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* —— Misc cards / sections —— */
.care--web .care-v2-home-hero__photo,
.care--web .care-v2-home-hero__photo-wrap .care-v2-home-hero__photo {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-mc-pkg-banner,
.care--web .care-v2-type-strip__link,
.care--web .care-kind-card,
.care--web .care-doctor-card,
.care--web .care-v2-practice-card,
.care--web .care-center {
  box-shadow: none !important;
  border-radius: 2px !important;
}

.care--web .care-bottom-nav,
.care--web .care-site-footer {
  box-shadow: none !important;
}

.care--web .care-drawer__panel {
  box-shadow: none !important;
  -webkit-border-start: 1px solid var(--care-v2-line);
          border-inline-start: 1px solid var(--care-v2-line);
}

/* —— Language: globe + English · Arabic —— */
.care--web .care-top__lang,
.care--web .ec-locale-switcher--pair {
  border-radius: 2px !important;
}

.care--web .care-top__lang.care-top__lang--quiet {
  width: auto !important;
  height: auto !important;
  border-radius: 2px !important;
  overflow: visible !important;
}

/* —— Searchbars: kill double border (wrap + field) —— */
.care--web .care-v2-searchbar,
.care--web .care-v2-lab-search,
.care--web .care-v2-rad-search,
.care--web .care-v2-doctors-search {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

.care--web .care-v2-searchbar__field,
.care--web .care-v2-lab-search .care-v2-searchbar__field,
.care--web .care-v2-rad-search .care-v2-searchbar__field,
.care--web .care-v2-lab .care-v2-lab-search .care-v2-searchbar__field {
  border: 1px solid var(--care-v2-line) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  background: var(--care-v2-surface) !important;
  min-height: 48px;
}

.care--web .care-v2-searchbar__field:focus-within,
.care--web .care-v2-lab-search .care-v2-searchbar__field:focus-within,
.care--web .care-v2-rad-search .care-v2-searchbar__field:focus-within {
  border-color: var(--care-v2-primary) !important;
}

.care--web .care-v2-searchbar__field input,
.care--web .care-v2-lab-search .care-v2-searchbar__field input,
.care--web .care-v2-rad-search .care-v2-searchbar__field input {
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

.care--web .care-v2-searchbar__go {
  border-radius: 2px !important;
  box-shadow: none !important;
}

/* —— Center gate leftovers —— */
.care--web .care-v2-center-gate.care-center-gate,
.care--web .care-v2-center-gate__badge,
.care--web .care-v2-center-gate__search,
.care--web .care-v2-center-gate__toggle,
.care--web .care-v2-center-gate__toggle button,
.care--web .care-v2-center-card,
.care--web .care-v2-center-card .care-btn,
.care--web .care-v2-center-card a.care-btn {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-v2-center-gate__toggle {
  overflow: hidden;
  padding: 0 !important;
}

.care--web .care-v2-center-gate__toggle button {
  border-radius: 0 !important;
}

/* —— Checkout modal: sharp + sticky pay —— */
.care--web .care-patient-step.care-v2-checkout:not(.care-patient-step--embedded) .care-patient-step__sheet {
  display: flex !important;
  flex-direction: column !important;
  width: min(560px, 100%) !important;
  max-height: min(90dvh, 820px) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  border: 1px solid var(--care-v2-line) !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.care--web .care-patient-step.care-v2-checkout:not(.care-patient-step--embedded) .care-patient-step__scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden !important;
  overflow-y: auto;
  padding: 16px 22px 8px !important;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__layout {
  grid-template-columns: 1fr !important;
  padding-inline: 0 !important;
  margin: 0 !important;
  min-width: 0;
}

.care--web .care-patient-step.care-v2-checkout:not(.care-patient-step--embedded) .care-v2-checkout__banner {
  position: relative;
  flex: 0 0 auto;
  height: 96px !important;
  margin: 0 !important;
  overflow: hidden;
  background: var(--care-v2-navy);
}

.care--web .care-v2-checkout__banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.care--web .care-v2-checkout__banner-fade {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    color-mix(in srgb, var(--care-v2-navy) 55%, transparent) 0%,
    transparent 55%
  );
  pointer-events: none;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__close {
  top: 12px !important;
  inset-inline-end: 12px !important;
  z-index: 2;
  border-radius: 2px !important;
  box-shadow: none !important;
  background: rgba(255, 255, 255, 0.92) !important;
}

.care--web .care-v2-checkout__title,
.care--web .care-v2-checkout__steps {
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

.care--web .care-v2-checkout__steps li::before,
.care--web .care-v2-checkout__check {
  border-radius: 2px !important;
}

.care--web .care-patient-step.care-v2-checkout:not(.care-patient-step--embedded) .care-v2-checkout__footer {
  flex: 0 0 auto;
  padding: 14px 22px 18px !important;
  border-top: 1px solid var(--care-v2-line);
  background: var(--care-v2-surface);
}

.care--web .care-v2-checkout__pay {
  display: inline-flex !important;
  width: 100% !important;
  min-height: 52px !important;
  visibility: visible !important;
}

.care--web .care-v2-checkout__quote,
.care--web .care-v2-checkout__pay,
.care--web .care-patient-step.care-v2-checkout .care-btn,
.care--web .care-patient-step.care-v2-checkout input,
.care--web .care-patient-step.care-v2-checkout textarea,
.care--web .care-patient-step.care-v2-checkout select,
.care--web .care-patient-step.care-v2-checkout .care-patient-step__brief {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-patient-step.care-v2-checkout input,
.care--web .care-patient-step.care-v2-checkout textarea,
.care--web .care-patient-step.care-v2-checkout select {
  border: 1px solid var(--care-v2-line) !important;
  outline: none !important;
  background: var(--care-v2-surface) !important;
}

.care--web .care-patient-step.care-v2-checkout input:focus-visible,
.care--web .care-patient-step.care-v2-checkout textarea:focus-visible,
.care--web .care-patient-step.care-v2-checkout select:focus-visible {
  border-color: var(--care-v2-primary) !important;
  box-shadow: none !important;
}

/* —— Lab / rad modality chips & cards —— */
.care--web .care-v2-lab-cats button,
.care--web .care-v2-rad-mod,
.care--web .care-v2-rad-card,
.care--web .care-v2-lab-card,
.care--web .care-v2-offer-card,
.care--web .care-v2-rad-hero,
.care--web .care-v2-lab-hero {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-v2-rad-mod__ico,
.care--web .care-v2-lab-cats button .care-action-icon,
.care--web .care-v2-offer-card__ico {
  border-radius: 2px !important;
}

/* —— Lab / radiology shop side filters + wide search —— */
.care--web .care-v2-lab-shop,
.care--web .care-v2-rad-shop {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  grid-gap: 20px;
  gap: 20px;
  align-items: start;
  margin-top: 8px;
}

.care--web .care-v2-lab-side,
.care--web .care-v2-rad-side {
  position: -webkit-sticky;
  position: sticky;
  top: 88px;
  max-height: none;
  overflow: visible;
  padding: 14px 10px 16px;
  background: var(--care-v2-surface);
  border: 1px solid var(--care-v2-line);
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-v2-lab-side__head,
.care--web .care-v2-rad-side__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  padding: 0 4px 10px;
  border-bottom: 1px solid var(--care-v2-line);
}

.care--web .care-v2-lab-side__head .care-link,
.care--web .care-v2-rad-side__head .care-link {
  flex: 0 0 auto;
  width: auto !important;
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0 !important;
  border: 0;
  background: transparent;
  white-space: nowrap;
}

.care--web .care-v2-lab-side__head strong,
.care--web .care-v2-rad-side__head strong {
  font-size: 1rem;
  font-weight: 700;
  color: var(--care-v2-navy);
}

.care--web .care-v2-lab-side .care-v2-filter-block,
.care--web .care-v2-rad-side .care-v2-filter-block {
  padding: 12px 4px 6px;
}

.care--web .care-v2-lab-side .care-v2-filter-block__title,
.care--web .care-v2-rad-side .care-v2-filter-block__title {
  margin: 0 0 8px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--care-v2-muted);
}

.care--web .care-v2-lab-side .care-v2-filter-block__list,
.care--web .care-v2-rad-side .care-v2-filter-block__list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.care--web .care-v2-lab-side .care-v2-filter-check,
.care--web .care-v2-rad-side .care-v2-filter-check {
  display: flex;
  align-items: center;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: 2px !important;
  background: transparent;
  color: var(--care-v2-ink);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: start;
  cursor: pointer;
}

.care--web .care-v2-lab-side .care-v2-filter-check.is-active,
.care--web .care-v2-rad-side .care-v2-filter-check.is-active {
  background: var(--care-v2-primary-mist);
  border-color: color-mix(in srgb, var(--care-v2-primary) 28%, var(--care-v2-line));
  color: var(--care-v2-primary);
  font-weight: 700;
}

.care--web .care-v2-lab-search,
.care--web .care-v2-rad-search {
  max-width: none !important;
  width: 100% !important;
  margin: 0 0 16px !important;
}

.care--web .care-v2-lab-search .care-v2-searchbar__field,
.care--web .care-v2-rad-search .care-v2-searchbar__field {
  min-height: 56px !important;
  width: 100% !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-v2-rad-hero__copy .care-v2-rad-search {
  max-width: min(720px, 100%) !important;
}

.care--web .care-v2-rad-modalities--compact {
  display: none !important;
}

@media (max-width: 960px) {
  .care--web .care-v2-lab-shop,
  .care--web .care-v2-rad-shop {
    grid-template-columns: 1fr;
  }

  .care--web .care-v2-lab-side,
  .care--web .care-v2-rad-side {
    position: static;
    max-height: none;
  }

  .care--web .care-v2-rad-modalities--compact {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 10px;
    gap: 10px;
    margin-bottom: 16px;
  }

  .care--web .care-v2-rad-side {
    display: none;
  }
}

/* —— Clear checkout dock when tests selected —— */
.care--web .care-sticky-bar.care-checkout-dock,
.care--web .care-checkout-dock {
  position: -webkit-sticky;
  position: sticky;
  bottom: 12px;
  z-index: 30;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 20px;
  padding: 16px 18px;
  border: 1px solid var(--care-v2-primary) !important;
  border-radius: 2px !important;
  background: linear-gradient(180deg, #0b1f3a 0%, #16324f 100%) !important;
  color: #fff !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
          backdrop-filter: none !important;
}

.care--web .care-checkout-dock__copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  flex: 1 1 200px;
}

.care--web .care-checkout-dock__copy strong {
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
}

.care--web .care-checkout-dock__copy > span {
  font-size: 0.9rem;
  color: rgba(248, 250, 252, 0.78);
}

.care--web .care-checkout-dock__home {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  font-size: 0.86rem;
  color: rgba(248, 250, 252, 0.88);
  cursor: pointer;
}

.care--web .care-checkout-dock__cta,
.care--web .care-checkout-dock .care-btn--primary {
  min-height: 52px !important;
  padding: 0 22px !important;
  border-radius: 2px !important;
  background: #0066ff !important;
  border: 0 !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  box-shadow: none !important;
  white-space: nowrap;
}

.care--web .care-checkout-dock__cta:hover:not(:disabled),
.care--web .care-checkout-dock .care-btn--primary:hover:not(:disabled) {
  background: #0052cc !important;
}

/* —— Center gate force photo cover + sharp —— */
.care--web .care-v2-center-gate.care-center-gate,
.care--web .care-v2-center-gate__badge,
.care--web .care-v2-center-gate__search,
.care--web .care-v2-center-gate__toggle,
.care--web .care-v2-center-card,
.care--web .care-v2-center-card__primary,
.care--web .care-v2-center-card__ghost {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-v2-center-gate__art {
  height: 200px !important;
  max-height: 200px !important;
  object-fit: cover !important;
  border-radius: 2px !important;
}

.care--web .care-v2-center-gate__search {
  min-height: 56px !important;
  flex: 1 1 100% !important;
  max-width: none !important;
}

.care--web .care-v2-center-gate__toolbar {
  gap: 10px;
}

.care--web .care-v2-lab-layout {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px) !important;
}

.care--web .care-v2-lab-layout:not(:has(.care-v2-lab-promo)) {
  grid-template-columns: minmax(0, 1fr) !important;
}

.care--web .care-v2-lab .care-v2-lab-promo,
.care--web .care-v2-lab .care-v2-lab-promo__media,
.care--web .care-v2-lab .care-v2-lab-promo__photo {
  max-width: 100% !important;
  overflow: hidden !important;
}

.care--web .care-v2-lab .care-v2-lab-promo__photo {
  height: 160px !important;
  max-height: 160px !important;
  object-fit: cover !important;
}

.care--web .care-v2-lab .care-v2-lab-card,
.care--web .care-v2-lab .care-v2-lab-card__ico,
.care--web .care-v2-lab .care-v2-lab-card__book,
.care--web .care-v2-lab .care-v2-lab-offer {
  border-radius: 2px !important;
  box-shadow: none !important;
}

@media (max-width: 960px) {
  .care--web .care-v2-lab-layout,
  .care--web .care-v2-lab-layout:not(:has(.care-v2-lab-promo)) {
    grid-template-columns: 1fr !important;
  }

  .care--web .care-v2-lab .care-v2-lab-shop {
    grid-template-columns: 1fr !important;
  }
}

/* —— Brand + account shell hard overrides (load last) —— */
.care--web .care-site-footer .care-v2-brand-logo,
.care--web .hp-shell .hp-side .care-v2-brand-logo,
.care--web .care-v2-login__brand .care-v2-brand-logo {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

.care--web .hp-shell .pp-chips a,
.care--web .hp-shell .pp-chips button,
.care--web .hp-shell .pp-btn,
.care--web .hp-shell .care-v2-reports__tabs a,
.care--web .hp-shell .care-v2-reports__tabs button,
.care--web .hp-shell .hp-underline-tabs a,
.care--web .hp-shell .hp-underline-tabs button,
.care--web .hp-shell .hp-top__search {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-v2-lab-cats {
  display: none !important;
}

/* —— Doctors list: kill leftover rounds/shadows —— */
.care--web .care-v2-doctors-page .care-v2-spec-side,
.care--web .care-v2-doctors-page .care-v2-doctors-strip,
.care--web .care-v2-doctors-page .care-v2-doc-card,
.care--web .care-v2-doc.care-v2-doc--medcare,
.care--web .care-v2-doctors-page .care-v2-doc-card .care-cta,
.care--web .care-v2-doc.care-v2-doc--medcare .care-cta,
.care--web .care-v2-doctors-page .care-v2-doc__avail-badge,
.care--web .care-v2-doc.care-v2-doc--medcare .care-v2-doc__avail-badge,
.care--web .care-v2-doctors-page .care-infinite__btn,
.care--web .care-top__cta,
.care--web .care-top__cta--book,
.care--web .care-top__login,
.care--web .care-top__lang {
  border-radius: 2px !important;
  box-shadow: none !important;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__field {
  border-radius: 0 !important;
  box-shadow: none !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  -webkit-border-start: 0 !important;
          border-inline-start: 0 !important;
}

.care--web .care-v2-doctors-page .care-v2-doctors-strip__submit {
  border-radius: 0 !important;
  box-shadow: none !important;
  min-height: 48px !important;
}

.care--web .care-v2-brand-logo--bilingual {
  padding: 6px 12px !important;
}

.care--web .care-v2-brand-logo--bilingual .care-v2-brand-logo__word {
  height: var(--care-brand-h, 40px) !important;
  max-height: 48px !important;
}

/* —— Account sidebar: always full viewport height —— */
.care--web:has(.hp-shell) .care-stage,
.care--web:has(.hp-shell) .care-main {
  min-height: 100vh !important;
  min-height: 100dvh !important;
}

.care--web .hp-shell,
.care--web .care-account.hp-shell {
  align-items: stretch !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
}

.care--web .hp-shell > .hp-side,
.care--web .hp-side {
  align-self: stretch !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  height: auto !important;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

/* —— Top bar: single line, compact actions, real wordmark —— */
.care--web:not(.care--phone) .care-top__row--brand {
  min-height: 56px !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
}

.care--web:not(.care--phone) .care-top__nav--v2 {
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  gap: 8px !important;
}

.care--web:not(.care--phone) .care-top__nav--v2 > a,
.care--web:not(.care--phone) .care-top-menu > .care-top-menu__item > .care-top-menu__trigger {
  padding: 8px 9px !important;
  font-size: 0.8125rem !important;
  line-height: 1.45 !important;
  overflow: visible;
  border-radius: 2px !important;
  white-space: nowrap !important;
}

.care--web .care-top__brand-logo.care-v2-brand-logo {
  padding: 0 !important;
  max-width: 148px !important;
  background: transparent !important;
  border: 0 !important;
}

.care--web .care-top__brand-logo .care-v2-brand-logo__word {
  height: 22px !important;
  max-height: 22px !important;
}

.care--web .care-top__cta--book {
  min-width: 0 !important;
  min-height: 36px !important;
  padding: 0 12px !important;
}

.care--web .care-top__lang,
.care--web .care-top__login,
.care--web .care-top__profile--desk {
  min-height: 36px !important;
}

/* —— Fulfillment + package sheets + cart sharp —— */
.care--web .care-v2-fulfill__card,
.care--web .care-v2-fulfill__badge,
.care--web .care-v2-fulfill__place,
.care--web .care-v2-fulfill__addr,
.care--web .care-v2-fulfill__actions .care-btn,
.care--web .care-mc-pkg-sheet__card,
.care--web .care-mc-pkg-sheet__close,
.care--web .care-mc-pkg-sheet__includes li,
.care--web .care-mc-pkg-sheet__actions .care-btn,
.care--web .care-mc-pkg-card,
.care--web .care-mc-pkg-card__cta,
.care--web .care-v2-cart-line,
.care--web .care-v2-cart-summary,
.care--web .care-v2-cart-summary__cta,
.care--web .care-v2-cart-steps__node,
.care--web .care-v2-cart-hero,
.care--web .care-v2-cart-journey li,
.care--web .care-v2-cart-rail,
.care--web .care-v2-cart-rail__card,
.care--web .care-v2-cart-panel,
.care--web .care-v2-cart-pay,
.care--web .care-v2-cart-pay__cta,
.care--web .care-v2-cart-empty--rich {
  border-radius: 2px !important;
  box-shadow: none !important;
}

/* —— Location filter: soft modern panel (exempt from sharp chrome) —— */
.care--web .care-smart__filters,
.care--web .care-smart--dual .care-smart__filters,
.care--web .care-v2-home-hero__search .care-smart__filters,
.care--web .care-v2-mobile-hero__search .care-smart__filters,
.care--web .care-top__search .care-smart__filters {
  margin-top: 12px !important;
  padding: 18px 18px 16px !important;
  border-radius: 20px !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 10%, var(--care-v2-line, #e2e8f0)) !important;
  background:
    linear-gradient(180deg, #f7fbff 0%, #fff 42%) !important;
  box-shadow:
    0 18px 48px rgba(11, 31, 58, 0.12),
    0 1px 0 rgba(255, 255, 255, 0.8) inset !important;
  overflow: hidden;
}

.care--web .care-smart__filters-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.care--web .care-smart__filters-intro {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}

.care--web .care-smart__filters-mark {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex: 0 0 auto;
  border-radius: 14px;
  background: #fff;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 18%, var(--care-v2-line, #e2e8f0));
  color: var(--care-v2-primary, #0066ff);
  box-shadow: 0 6px 14px rgba(0, 102, 255, 0.1);
}

.care--web .care-smart__filters-mark svg {
  width: 20px;
  height: 20px;
  display: block;
}

.care--web .care-smart__filters-copy {
  min-width: 0;
  display: grid;
  grid-gap: 2px;
  gap: 2px;
}

.care--web .care-smart__filters-copy strong,
.care--web .care-smart--dual .care-smart__filters-head strong,
.care--web .care-v2-home-hero__search .care-smart__filters-head strong {
  display: block;
  font-family: var(--care-v2-font, inherit);
  font-size: 1.02rem !important;
  font-weight: 750 !important;
  letter-spacing: -0.02em;
  color: var(--care-v2-navy, #0b1f3a) !important;
  line-height: 1.25;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

.care--web .care-smart__filters-copy p {
  margin: 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.84rem;
  line-height: 1.35;
}

.care--web .care-smart__filters .care-smart__dismiss,
.care--web .care-smart--dual .care-smart__dismiss,
.care--web .care-v2-home-hero__search .care-smart__dismiss {
  flex: 0 0 auto;
  min-height: 34px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
  background: #fff !important;
  color: var(--care-v2-navy, #0b1f3a) !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
  box-shadow: none !important;
}

.care--web .care-smart__filters .care-smart__dismiss:hover {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 28%, var(--care-v2-line, #e2e8f0));
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-smart__locate {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 46px;
  margin: 0 0 16px;
  padding: 0 16px;
  border-radius: 14px !important;
  border: 1px solid color-mix(in srgb, var(--care-v2-primary, #0066ff) 22%, var(--care-v2-line, #e2e8f0)) !important;
  background: #fff !important;
  color: var(--care-v2-primary, #0066ff) !important;
  font: inherit;
  font-size: 0.92rem;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 1px 0 rgba(11, 31, 58, 0.03);
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.care--web .care-smart__locate .care-ico {
  color: inherit;
}

.care--web .care-smart__locate:hover:not(:disabled),
.care--web .care-smart__locate.is-active {
  background: var(--care-v2-primary-soft, #ebf5ff) !important;
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 42%, var(--care-v2-line, #e2e8f0)) !important;
  box-shadow: 0 8px 18px rgba(0, 102, 255, 0.12);
}

.care--web .care-smart__locate:disabled {
  opacity: 0.65;
  cursor: wait;
}

.care--web .care-smart__chip-block {
  margin-top: 0 !important;
  padding: 0;
  border: 0;
  background: transparent;
}

.care--web .care-smart__chip-label {
  display: block;
  margin: 0 0 10px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--care-v2-muted, #64748b);
}

.care--web .care-smart__city-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.care--web .care-smart__city {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 12px 0 14px;
  border-radius: 999px !important;
  border: 1px solid var(--care-v2-line, #e2e8f0) !important;
  background: #fff !important;
  color: var(--care-v2-navy, #0b1f3a) !important;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 650;
  cursor: pointer;
  box-shadow: none !important;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.care--web .care-smart__city:hover:not(.is-active) {
  border-color: color-mix(in srgb, var(--care-v2-primary, #0066ff) 30%, var(--care-v2-line, #e2e8f0)) !important;
  background: #f8fbff !important;
  color: var(--care-v2-primary, #0066ff) !important;
}

.care--web .care-smart__city.is-active {
  background: var(--care-v2-primary, #0066ff) !important;
  border-color: var(--care-v2-primary, #0066ff) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(0, 102, 255, 0.22) !important;
}

.care--web .care-smart__city-name {
  line-height: 1.2;
}

.care--web .care-smart__city-count {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: rgba(11, 31, 58, 0.06);
  color: var(--care-v2-muted, #64748b);
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 750;
  line-height: 1;
}

.care--web .care-smart__city.is-active .care-smart__city-count {
  background: rgba(255, 255, 255, 0.22);
  color: #fff;
}

.care--web .care-smart__filters-empty {
  margin: 4px 0 0;
  color: var(--care-v2-muted, #64748b);
  font-size: 0.88rem;
}

@media (max-width: 640px) {
  .care--web .care-smart__filters,
  .care--web .care-smart--dual .care-smart__filters,
  .care--web .care-v2-home-hero__search .care-smart__filters,
  .care--web .care-v2-mobile-hero__search .care-smart__filters {
    padding: 14px !important;
    border-radius: 16px !important;
  }

  .care--web .care-smart__filters-mark {
    width: 36px;
    height: 36px;
    border-radius: 12px;
  }

  .care--web .care-smart__filters-copy strong {
    font-size: 0.95rem !important;
  }
}

.care--web.care--phone .care-smart__filters,
.care--web.care--phone .care-top__search .care-smart__filters,
.care--web .care-v2-mobile-hero__search .care-smart__filters {
  border-radius: 22px 22px 0 0 !important;
  background: #fff !important;
  box-shadow: 0 -16px 48px rgba(11, 31, 58, 0.18) !important;
}

/* —— Soft self/family picker (wins over sharp 2px chrome) —— */
.care--web .care-v2-checkout__pick-btn,
.care--web .care-patient-step.care-v2-checkout .care-patient-step__option,
.care--web .care-patient-step.care-v2-checkout .care-patient-step__form,
.care--web .care-patient-step.care-v2-checkout .care-patient-step__option-ico {
  border-radius: 16px !important;
}

.care--web .care-v2-checkout__pick-btn {
  border-radius: 18px !important;
  box-shadow: 0 8px 20px rgba(11, 31, 58, 0.05) !important;
}

.care--web .care-v2-checkout__pick-btn.is-selected {
  box-shadow:
    0 0 0 1px var(--care-v2-primary),
    0 12px 28px rgba(0, 102, 255, 0.14) !important;
}

.care--web .care-v2-checkout__pick-btn--family.is-selected {
  box-shadow:
    0 0 0 1px #7c3aed,
    0 12px 28px rgba(124, 58, 237, 0.14) !important;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__option.is-selected {
  box-shadow: 0 0 0 1px var(--care-v2-primary), 0 8px 20px rgba(0, 102, 255, 0.1) !important;
}

.care--web .care-patient-step.care-v2-checkout .care-patient-step__add {
  border-radius: 999px !important;
}

.care--web .care-v2-checkout__check {
  border-radius: 999px !important;
}

