.health-page { display:grid; gap:1.6rem; color:var(--color-text); }
.health-header { display:flex; align-items:flex-end; justify-content:space-between; gap:2rem; }
.health-kicker,.health-card__eyebrow,.health-section-title span { color:var(--color-accent); font-size:.68rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.health-header h1 { max-width:none; margin:.18rem 0 .35rem; font-size:clamp(2rem,4vw,3.1rem); letter-spacing:-.045em; }
.health-header p { color:var(--color-text-muted); }
.health-export-button { display:inline-flex; min-height:46px; align-items:center; justify-content:center; gap:.5rem; padding:.65rem 1rem; border:1px solid #eadfd7; border-radius:999px; background:#fffdfa; color:#765f55; font-size:.78rem; font-weight:700; box-shadow:0 8px 20px rgb(70 54 42/.04); }
.health-export-button:hover { border-color:#e1bdca; background:#fcf2f6; color:var(--color-accent); }
.health-export-button span { font-size:1.1rem; }
.health-primary { display:inline-flex; min-height:48px; align-items:center; justify-content:center; gap:.45rem; padding:.75rem 1.15rem; border-radius:999px; background:linear-gradient(135deg,#e779af,#d65ca2); color:white; font-weight:700; box-shadow:0 9px 22px rgb(215 125 171/.22); }
.health-primary:disabled { cursor:not-allowed; opacity:.42; box-shadow:none; }
.health-primary span { font-size:1.3rem; }
.health-primary--soft { background:#efc0ca; color:#533d37; box-shadow:none; }
.health-primary--soft:hover { background:#e9b2bf; }
.health-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.55rem 1rem; overflow:visible; border-bottom:0; }
.home-tabs.health-tabs button { min-width:0; border-bottom:1px solid var(--color-border); }
.health-tabs .icon,.health-tabs .health-inline-icon { width:19px; height:19px; }
.health-panel { display:grid; gap:1.25rem; animation:health-in 180ms ease-out; }
@keyframes health-in { from { opacity:0; transform:translateY(4px); } }
.health-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.health-stats--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.health-stat { display:grid; min-height:148px; grid-template-columns:52px minmax(0,1fr); align-items:start; gap:.85rem; padding:1.3rem 1.35rem 1.15rem; border:1px solid #eee7e0; border-radius:26px; background:rgb(255 255 255/.9); box-shadow:0 12px 30px rgb(70 54 42/.035); }
.health-stat__icon { display:grid; width:46px; height:46px; place-items:center; border-radius:15px; background:color-mix(in srgb,var(--tone) 13%,white); color:var(--tone); font-size:1.35rem; font-weight:700; }
.health-stat__icon .icon { width:24px; height:24px; }
.health-inline-icon { display:block; width:24px; height:24px; flex:0 0 auto; }
.health-stat p { min-height:34px; font-size:.78rem; font-weight:700; }
.health-stat strong { display:block; margin:.2rem 0 .32rem; overflow:hidden; font-size:clamp(1.25rem,2vw,1.8rem); letter-spacing:-.03em; text-overflow:ellipsis; }
.health-stat small { display:block; color:var(--color-text-faint); font-size:.72rem; line-height:1.35; }
.health-tone--pink { --tone:#e9579d; }.health-tone--purple { --tone:#985ce7; }.health-tone--blue { --tone:#4b96e8; }.health-tone--orange { --tone:#eb882a; }.health-tone--green { --tone:#58b749; }
.health-card { min-width:0; padding:1.35rem; border:1px solid #eee7e0; border-radius:28px; background:rgb(255 255 255/.9); box-shadow:0 12px 30px rgb(70 54 42/.035); }
.health-card > header { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.health-card h2,.health-section-title h2 { max-width:none; font-size:1.08rem; }
.health-card header span:last-child { color:var(--color-text-faint); font-size:.72rem; }
.health-split { display:grid; grid-template-columns:1.45fr 1fr; gap:1.15rem; }
.health-composition { display:grid; gap:1rem; margin-top:1.2rem; }
.health-composition > div { display:grid; grid-template-columns:150px minmax(70px,1fr) 75px; align-items:center; gap:.8rem; font-size:.78rem; }
.health-composition i { height:7px; overflow:hidden; border-radius:99px; background:#f3eee9; }
.health-composition b { display:block; height:100%; border-radius:inherit; background:var(--tone); }
.bar--pink { --tone:#ef77ac }.bar--purple { --tone:#9b66ef }.bar--blue { --tone:#67aef0 }.bar--orange { --tone:#f1ad59 }
.health-composition strong { text-align:right; }
.health-note { display:flex; align-items:center; gap:1rem; background:linear-gradient(135deg,#f8fff4,#fffdfa); }
.health-note > span { font-size:3rem; }
.health-note p { margin-top:.55rem; color:var(--color-text-muted); font-size:.8rem; line-height:1.65; }
.health-table-card { padding-bottom:.6rem; }
.health-table-wrap { overflow-x:auto; }
.health-table-card table { width:100%; min-width:760px; border-collapse:collapse; }
.health-table-card th { padding:.5rem .7rem; color:var(--color-text-faint); font-size:.68rem; text-align:left; }
.health-table-card td { padding:.72rem; border-top:1px solid #eee7e0; color:var(--color-text-muted); font-size:.76rem; }
.health-table-card td strong,.health-table-card td small { display:block; }.health-table-card td strong { color:var(--color-text); }.health-table-card td small { margin-top:.15rem; color:var(--color-text-faint); }
.medicine-actions { display:flex; align-items:center; gap:.25rem; }.medicine-actions button { display:grid; width:34px; height:34px; place-items:center; border-radius:50%; background:transparent; color:#654b42; }.medicine-actions button:last-child { color:#e47e80; }.medicine-actions button:hover { background:#f8f1ed; }.medicine-actions svg { width:17px; height:17px; }.medicine-actions span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.health-badge { display:inline-flex; width:max-content; padding:.28rem .56rem; border-radius:999px; background:#f7edf8; color:#9560c9; font-size:.68rem; font-weight:700; }
.health-empty { padding:2.5rem 1rem; color:var(--color-text-faint); text-align:center; }
.overview-heading { margin-bottom:.35rem; }
.overview-stats { align-items:stretch; }
.overview-recent > h3 { margin:.55rem 0 .75rem; color:#927f74; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; }
.overview-recent > div { overflow:hidden; border:1px solid #eee7e0; border-radius:28px; background:rgb(255 255 255/.9); box-shadow:0 12px 30px rgb(70 54 42/.035); }
.overview-recent article { display:flex; min-height:72px; align-items:center; gap:.85rem; padding:.75rem 1.2rem; border-top:1px solid #f0e9e4; }
.overview-recent article:first-child { border-top:0; }
.overview-recent article > span { display:grid; width:40px; height:40px; flex:0 0 40px; place-items:center; border-radius:50%; background:color-mix(in srgb,var(--tone) 14%,white); color:var(--tone); font-size:1.05rem; }
.overview-recent article > span .health-inline-icon { width:19px; height:19px; }
.overview-recent article p { display:grid; gap:.2rem; }
.overview-recent article strong { color:#5a4139; font-size:.82rem; font-weight:600; }
.overview-recent article small { color:#9a8478; font-size:.7rem; }
.measure-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:1.5rem; }
.measure-heading h2 { max-width:none; font-size:clamp(1.45rem,3vw,2rem); letter-spacing:-.035em; }
.measure-heading p { margin-top:.35rem; color:#9b897e; font-size:.83rem; }
.measure-evolution { min-height:340px; padding:1.5rem; }
.measure-evolution > header { align-items:flex-start; }
.measure-filters { display:flex; align-items:center; gap:.6rem; }
.measure-filters > span { display:flex; min-height:50px; align-items:center; padding:.65rem .9rem; border:1px solid var(--color-border); border-radius:15px; background:#fffdfa; color:var(--color-text-muted); font-size:.76rem; white-space:nowrap; }
.measure-metric-filter { width:210px; }
.measure-metric-filter .pending-category-picker__menu { right:0; left:auto; width:max(100%,230px); }
.measure-metric-filter .pending-category-option > button { padding-right:.75rem; font-size:.8rem; }
.measure-chart { position:relative; min-height:245px; }
.measure-chart svg { display:block; width:100%; height:auto; min-height:245px; overflow:visible; }
.measure-chart__grid { stroke:#eee7e0; stroke-width:.25; stroke-dasharray:1 1.5; }
.measure-chart__axis { stroke:#aa9487; stroke-width:.35; }
.measure-chart__axis-label,.measure-chart__date-label { fill:#9d887b; font-family:var(--font-ui); font-size:12px; }
.measure-chart__area { fill:url(#measure-fill); }
.measure-chart__line { fill:none; stroke:#cfa478; stroke-width:.75; stroke-linecap:round; stroke-linejoin:round; }
.measure-chart circle { fill:#fff; stroke:#cfa478; stroke-width:.7; }
.measure-records { margin-inline:-1.25rem; }
.measure-record { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1rem; padding:1rem 1.25rem; border-top:1px solid #eee7e0; }
.measure-record:first-child { border-top:0; }
.measure-record strong,.measure-record em,.measure-record p,.measure-record small { display:block; }
.measure-record strong { font-size:.95rem; }
.measure-record em { margin-top:.3rem; color:#d0a273; font-size:.77rem; font-style:normal; }
.measure-record p { margin-top:.3rem; color:#947f74; font-size:.72rem; line-height:1.5; }
.measure-record small { margin-top:.3rem; color:var(--color-text-faint); font-size:.7rem; font-style:italic; }
.measure-record__actions { display:flex; gap:.5rem; }
.measure-record__actions button { display:inline-flex; min-width:78px; min-height:40px; align-items:center; justify-content:center; gap:.4rem; padding:.5rem .65rem; border:1px solid #eadfd8; border-radius:10px; background:#fffdfa; color:#5c453d; font-size:.7rem; font-weight:700; }
.measure-record__actions button:hover { background:#faf2ed; }
.measure-record__actions button:last-child { color:#df8588; }
.measure-record__actions .health-inline-icon { width:17px; height:17px; }
.symptom-filters { display:flex; flex-wrap:wrap; gap:.65rem; }
.symptom-heading { margin-bottom:.55rem; }
.symptom-heading h2 { font-size:clamp(1.65rem,3vw,2.15rem); }
.symptom-heading p { margin-top:.45rem; font-size:.92rem; }
.symptom-heading .primary-button--new { min-width:168px; }
.symptom-heading .primary-button--new:disabled { cursor:not-allowed; opacity:.42; }
.symptom-stats { gap:1.15rem; }
.symptom-stat { min-height:148px; padding:1.3rem 1.35rem 1.15rem; border:1px solid #eee7e0; border-radius:26px; background:rgb(255 255 255/.9); box-shadow:0 12px 30px rgb(70 54 42/.035); }
.symptom-stat header { display:flex; align-items:center; gap:.8rem; }
.symptom-stat header > span { display:grid; width:46px; height:46px; flex:0 0 46px; place-items:center; border-radius:50%; background:color-mix(in srgb,var(--tone) 14%,white); color:var(--tone); }
.symptom-stat header .health-inline-icon { width:22px; height:22px; }
.symptom-stat header p { color:#927f74; font-size:.8rem; font-weight:700; }
.symptom-stat > strong { display:block; margin-top:.78rem; overflow:hidden; color:#513a33; font-size:clamp(1.35rem,2vw,1.75rem); letter-spacing:-.035em; text-overflow:ellipsis; white-space:nowrap; }
.symptom-stat > small { display:block; margin-top:.3rem; color:#a18c80; font-size:.76rem; }
.symptom-filters { gap:.75rem; margin:1rem 0 .5rem; }
.symptom-filter { width:240px; }
.symptom-filter .pending-category-picker__trigger { min-height:56px; grid-template-columns:minmax(0,1fr) 18px; border-radius:17px; color:#674f47; }
.symptom-filter .pending-category-picker__menu { width:max(100%,250px); }
.symptom-filter .pending-category-option > button { padding-right:.75rem; font-size:.82rem; }
.symptom-history { overflow:hidden; padding:0; border-radius:28px; box-shadow:0 12px 30px rgb(70 54 42/.035); }
.symptom-records { margin-inline:-1.25rem; }
.symptom-history .symptom-records { margin:0; }
.symptom-record { display:grid; min-height:84px; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1.25rem; padding:.9rem 1.4rem; border-top:1px solid #f0e9e4; }
.symptom-record:first-child { border-top:0; }
.symptom-record h3 { color:#513a33; font-size:1.02rem; }
.symptom-record h3 span { display:inline-flex; margin-left:.42rem; padding:.25rem .52rem; border-radius:999px; background:#e3f2fc; color:#4386b3; font-size:.7rem; vertical-align:middle; }
.symptom-record p,.symptom-record small { display:block; margin-top:.38rem; color:#9a8478; font-size:.78rem; line-height:1.45; }
.symptom-record small { font-style:italic; }
.symptom-record .measure-record__actions { gap:1rem; }
.symptom-record .measure-record__actions button { width:42px; min-width:42px; min-height:42px; padding:0; border:0; background:transparent; }
.symptom-record .measure-record__actions button:hover { background:#faf2ed; }
.symptom-record .measure-record__actions button span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.symptom-record .measure-record__actions .health-inline-icon { width:20px; height:20px; }
.health-coming { display:grid; min-height:410px; place-items:center; align-content:center; padding:3rem; border:1px dashed #e8d4de; border-radius:24px; background:radial-gradient(circle at 50% 20%,#fcedf5,transparent 48%),white; text-align:center; }
.health-coming > span { color:var(--color-accent); font-size:3rem; }.health-coming > p:first-of-type { margin:.6rem 0; color:var(--color-accent); font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.health-coming h2 { max-width:none; font-size:clamp(1.5rem,3vw,2.25rem); }.health-coming > p:last-child { max-width:580px; margin-top:.75rem; color:var(--color-text-muted); line-height:1.7; }
.mini-calendar__week,.mini-calendar__days { display:grid; grid-template-columns:repeat(7,1fr); gap:.35rem; text-align:center; }
.mini-calendar__week { margin-bottom:.5rem; color:var(--color-text-faint); font-size:.67rem; }
.mini-calendar__days span,.mini-calendar__days i { display:grid; aspect-ratio:1; place-items:center; border-radius:50%; font-size:.75rem; font-style:normal; }
.mini-calendar__days span.is-cycle { background:#ed72a9; color:white; font-weight:700; box-shadow:0 5px 12px rgb(233 87 157/.25); }
.cycle-record { display:flex; align-items:flex-start; gap:1rem; padding:1.15rem; border-radius:20px; background:#fff7fa; }.cycle-record > span { font-size:1.6rem; }.cycle-record p,.cycle-record small { display:block; margin-top:.35rem; color:var(--color-text-muted); font-size:.78rem; }
.cycle-notice { display:flex; min-height:78px; align-items:flex-start; gap:.9rem; padding:1.2rem 1.35rem; border:1px solid #eee7e0; border-radius:26px; background:rgb(255 255 255/.82); color:#927f74; box-shadow:0 10px 24px rgb(70 54 42/.025); }
.cycle-notice--progress { min-height:66px; align-items:center; }
.cycle-notice .health-inline-icon { width:22px; height:22px; flex:0 0 22px; color:#cba176; }
.cycle-notice p { font-size:.8rem; line-height:1.55; }
.cycle-notice strong { color:#6f574e; }
.cycle-history { overflow:hidden; padding:0; }
.cycle-history__record { display:grid; min-height:104px; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1rem; padding:1.05rem 1.35rem; border-top:1px solid #f0e9e4; }
.cycle-history__record:first-child { border-top:0; }
.cycle-history__record h3 { color:#513a33; font-size:1rem; }
.cycle-history__record p { display:flex; flex-wrap:wrap; gap:.45rem; margin-top:.5rem; }
.cycle-history__record p span { display:inline-flex; padding:.3rem .65rem; border-radius:999px; background:#fcf1f3; color:#927f74; font-size:.7rem; }
.cycle-history__record small { display:block; margin-top:.5rem; color:#9a8478; font-size:.74rem; }
.cycle-history__record .measure-record__actions button { width:42px; min-width:42px; min-height:42px; padding:0; border:0; background:transparent; }
.cycle-history__record .measure-record__actions button span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.cycle-history__record .measure-record__actions .health-inline-icon { width:20px; height:20px; }
.health-section-title { margin-bottom:.8rem; }
.doctor-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.doctor-card { display:grid; min-height:160px; grid-template-columns:50px minmax(0,1fr); align-content:center; align-items:center; gap:.75rem .9rem; padding:1.15rem 1.2rem; border:1px solid #eee7e0; border-radius:26px; background:rgb(255 255 255/.9); color:#513a33; text-align:left; box-shadow:0 12px 30px rgb(70 54 42/.035); transition:transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease; }
.doctor-card:hover { border-color:#e4cfd8; box-shadow:0 16px 34px rgb(70 54 42/.07); transform:translateY(-2px); }
.doctor-card__avatar { display:grid; width:50px; height:50px; flex:0 0 50px; place-items:center; border-radius:50%; font-size:1.45rem; }
.doctor-card__avatar--male,.doctor-avatar-choice--male { background:#e1f0fb; }.doctor-card__avatar--female,.doctor-avatar-choice--female { background:#f9e3ea; }
.doctor-card__identity { min-width:0; }.doctor-card__identity strong,.doctor-card__identity em { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.doctor-card__identity strong { font-size:.96rem; }.doctor-card__identity em { margin-top:.25rem; color:var(--tone); font-size:.74rem; font-style:normal; font-weight:700; }
.doctor-card__summary { display:grid; grid-column:1/-1; gap:.3rem; padding-top:.65rem; border-top:1px solid #f0e9e4; color:var(--color-text-muted); }
.doctor-card__summary small { overflow:hidden; font-size:.72rem; text-overflow:ellipsis; white-space:nowrap; }
.health-dialog { width:min(680px,calc(100vw - 2rem)); max-height:calc(100dvh - 2rem); padding:0; overflow:auto; border:1px solid var(--color-border); border-radius:22px; background:#fffdfa; color:var(--color-text); box-shadow:var(--shadow-overlay); }
.health-dialog--measures { width:min(760px,calc(100vw - 2rem)); }
.health-dialog--symptoms { width:min(700px,calc(100vw - 2rem)); }
.health-dialog--medicine { width:min(720px,calc(100vw - 2rem)); border-radius:28px; }
.health-dialog--medicine header { padding:1.55rem 1.75rem 1.1rem; border:0; }
.medicine-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.15rem; padding:1rem 1.75rem 1.5rem; }
.health-dialog--medicine .health-field { gap:.5rem; }
.health-dialog--medicine .health-field > span { color:#5a4139; font-size:.82rem; }
.health-dialog--medicine .health-field input,.health-dialog--medicine .health-field select,.health-dialog--medicine .health-field textarea { min-height:52px; padding:.8rem 1rem; border-color:#eadfd7; border-radius:16px; background:#fffdfa; }
.health-dialog--medicine .health-field textarea { min-height:112px; }
.medicine-reminder { display:grid; min-height:84px; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:.7rem; padding:1rem 1.15rem; border:1px solid #eee7e0; border-radius:18px; cursor:pointer; }
.medicine-reminder > span:first-child { color:#efb8c4; font-size:1.35rem; }
.medicine-reminder strong,.medicine-reminder small { display:block; }
.medicine-reminder strong { color:#5a4139; font-size:.86rem; }
.medicine-reminder small { margin-top:.25rem; color:#9a8478; font-size:.72rem; }
.medicine-reminder input { position:absolute; opacity:0; }
.medicine-reminder i { position:relative; width:50px; height:28px; border-radius:999px; background:#eee6df; }
.medicine-reminder i::after { position:absolute; top:3px; left:3px; width:22px; height:22px; border-radius:50%; background:white; box-shadow:0 2px 7px rgb(70 54 42/.18); content:''; transition:transform 160ms ease; }
.medicine-reminder input:checked + i { background:var(--color-accent-soft); }
.medicine-reminder input:checked + i::after { transform:translateX(22px); }
.health-dialog--medicine footer { padding:1rem 1.75rem 1.6rem; border:0; }
.health-dialog--cycle { width:min(720px,calc(100vw - 2rem)); border-radius:28px; }
.health-dialog--cycle header { padding:1.55rem 1.75rem 1.1rem; border:0; }
.cycle-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.15rem; padding:1rem 1.75rem 1.5rem; }
.health-dialog--cycle .health-field { gap:.5rem; }
.health-dialog--cycle .health-field > span,.cycle-symptoms legend { color:#5a4139; font-size:.82rem; font-weight:700; }
.health-dialog--cycle .health-field input,.health-dialog--cycle .health-field select,.health-dialog--cycle .health-field textarea { min-height:52px; padding:.8rem 1rem; border-color:#eadfd7; border-radius:16px; background:#fffdfa; }
.health-dialog--cycle .health-field textarea { min-height:120px; }
.cycle-symptoms { min-width:0; padding:0; border:0; }
.cycle-symptoms > div { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.75rem; }
.cycle-symptoms label input { position:absolute; opacity:0; }
.cycle-symptoms label span { display:inline-flex; min-height:34px; align-items:center; padding:.4rem .8rem; border:1px solid transparent; border-radius:999px; background:#fcf1f3; color:#927f74; font-size:.74rem; cursor:pointer; }
.cycle-symptoms label input:checked + span { border-color:#e6a8b9; background:#f8dfe5; color:#9f4f70; }
.cycle-symptoms label input:focus-visible + span { outline:3px solid rgb(215 125 171/.18); }
.health-dialog--cycle footer { padding:1rem 1.75rem 1.6rem; border:0; }
.health-form-picker { min-width:0; }
.health-form-picker > .pending-category-picker { margin-top:0; }
.health-form-picker .pending-category-picker__trigger { min-height:52px; border-color:#eadfd7; border-radius:16px; background:#fffdfa; color:#5a4139; }
.health-form-picker .pending-category-picker__trigger .icon { display:none; }
.health-form-picker .pending-category-picker__trigger::after { grid-column:2; color:#a29187; font-size:1rem; content:'⌄'; text-align:center; transform:translateY(-2px); }
.health-form-picker .pending-category-picker__menu { width:100%; min-width:210px; }
.health-form-picker .pending-category-option > button { padding-right:.75rem; font-size:.82rem; }
.appointments-section > h3 { margin-bottom:.8rem; color:#927f74; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; }
.appointment-list { display:grid; gap:.85rem; }
.appointment-record { display:grid; min-height:116px; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1rem; padding:1.15rem 1.35rem; border:1px solid #eee7e0; border-radius:28px; background:rgb(255 255 255/.9); box-shadow:0 12px 30px rgb(70 54 42/.035); }
.appointment-record h4 { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; color:#513a33; font-size:1rem; }
.appointment-return { display:inline-flex; padding:.28rem .65rem; border-radius:999px; background:#fcf1f3; color:#927f74; font-size:.7rem; font-weight:600; }
.appointment-record p,.appointment-record small { display:block; margin-top:.4rem; color:#9a8478; font-size:.76rem; }
.appointment-record__actions { display:flex; gap:.65rem; }
.appointment-record__actions button { display:grid; width:40px; height:40px; place-items:center; border-radius:10px; background:transparent; color:#5c453d; }
.appointment-record__actions button:hover { background:#faf2ed; }
.appointment-record__actions button:last-child { color:#df8588; }
.appointment-record__actions .health-inline-icon { width:19px; height:19px; }
.health-dialog--appointment { width:min(720px,calc(100vw - 2rem)); border-radius:28px; }
.health-dialog--appointment header { padding:1.55rem 1.75rem 1.1rem; border:0; }
.appointment-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.15rem; padding:1rem 1.75rem 1.5rem; }
.health-dialog--appointment .health-field { gap:.5rem; }
.health-dialog--appointment .health-field > span { color:#5a4139; font-size:.82rem; }
.health-dialog--appointment .health-field input,.health-dialog--appointment .health-field textarea { min-height:52px; padding:.8rem 1rem; border-color:#eadfd7; border-radius:16px; background:#fffdfa; }
.health-dialog--appointment .health-field textarea { min-height:112px; }
.appointment-return-toggle { display:grid; min-height:66px; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1rem; padding:.9rem 1.15rem; border:1px solid #eee7e0; border-radius:18px; cursor:pointer; }
.appointment-return-toggle strong { color:#5a4139; font-size:.84rem; }
.appointment-return-toggle input { position:absolute; opacity:0; }
.appointment-return-toggle i { position:relative; width:50px; height:28px; border-radius:999px; background:#eee6df; }
.appointment-return-toggle i::after { position:absolute; top:3px; left:3px; width:22px; height:22px; border-radius:50%; background:white; box-shadow:0 2px 7px rgb(70 54 42/.18); content:''; transition:transform 160ms ease; }
.appointment-return-toggle input:checked + i { background:var(--color-accent-soft); }
.appointment-return-toggle input:checked + i::after { transform:translateX(22px); }
.health-dialog--appointment footer { padding:1rem 1.75rem 1.6rem; border:0; }
.health-dialog--doctor { width:min(720px,calc(100vw - 2rem)); border-radius:28px; }
.health-dialog--doctor header { padding:1.35rem 1.75rem .75rem; border:0; }
.doctor-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem 1.15rem; padding:.65rem 1.75rem 1.15rem; }
.health-dialog--doctor .health-field { gap:.3rem; }
.health-dialog--doctor .health-field > span,.doctor-avatar-picker legend { color:#5a4139; font-size:.82rem; font-weight:700; }
.health-dialog--doctor .health-field input,.health-dialog--doctor .health-field textarea { min-height:48px; padding:.65rem 1rem; border-color:#eadfd7; border-radius:16px; background:#fffdfa; }
.health-dialog--doctor .health-field textarea { min-height:96px; }
.health-dialog--doctor footer { padding:.75rem 1.75rem 1.35rem; border:0; }
.doctor-avatar-picker { min-width:0; padding:0; border:0; }
.doctor-avatar-picker > div { display:flex; gap:.75rem; margin-top:.45rem; }
.doctor-avatar-picker label { display:flex; align-items:center; gap:.5rem; padding:.35rem .7rem .35rem .4rem; border:1px solid #eadfd7; border-radius:999px; color:#7f6a60; cursor:pointer; }
.doctor-avatar-picker input { position:absolute; opacity:0; }
.doctor-avatar-choice { display:grid; width:38px; height:38px; place-items:center; border:2px solid transparent; border-radius:50%; font-size:1.15rem; }
.doctor-avatar-picker input:checked + .doctor-avatar-choice { border-color:#d990aa; box-shadow:0 0 0 3px #faeaf0; }
.doctor-avatar-picker small { font-size:.72rem; font-weight:700; }
.doctor-detail-dialog { width:min(620px,calc(100vw - 2rem)); border-radius:28px; }
.doctor-detail-dialog > article > header { padding:1.4rem 1.55rem; border:0; }
.doctor-detail__identity { display:flex; min-width:0; align-items:center; gap:.9rem; }
.doctor-detail__identity h2 { overflow:hidden; font-size:1.15rem; text-overflow:ellipsis; white-space:nowrap; }
.doctor-detail__identity p { margin-top:.25rem; color:var(--color-accent); font-size:.76rem; font-weight:700; }
.doctor-detail__facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; padding:0 1.55rem .75rem; }
.doctor-detail__facts div { min-width:0; padding:.75rem 0; border-top:1px solid #f0e9e4; }
.doctor-detail__facts div:nth-child(odd) { padding-right:1rem; }.doctor-detail__facts div:last-child:nth-child(odd) { grid-column:1/-1; padding-right:0; }
.doctor-detail__facts span,.doctor-detail__facts strong { display:block; }
.doctor-detail__facts span { color:#9a8478; font-size:.68rem; }.doctor-detail__facts strong { margin-top:.25rem; overflow-wrap:anywhere; color:#513a33; font-size:.8rem; }
.doctor-detail-dialog footer { padding:.8rem 1.55rem 1.4rem; border:0; }
.doctor-detail-dialog footer button { display:inline-flex; align-items:center; gap:.4rem; }
.doctor-detail-dialog footer button:first-child { color:#d9787d; }
.doctor-detail-dialog footer .health-inline-icon { width:17px; height:17px; }
.workout-grid { align-items:start; }
.workout-card .custom-list-card__details { display:block; }
.workout-card .custom-list-card__toggle { cursor:default; }
.workout-card .custom-list-card__toggle:hover { background:transparent; }
.workout-card .custom-list-card__checklist { margin-top:.75rem; }
.workout-card .custom-list-card__checklist label { grid-template-columns:22px minmax(0,1fr) auto; }
.workout-card .custom-list-card__checklist label > strong { color:#765f55; }
.workout-card .custom-list-card__details > footer .health-inline-icon { width:16px; height:16px; }
.workout-empty-items { padding:.5rem 0; color:var(--color-text-faint); font-size:.76rem; }
.workout-quick-add { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) 34px; gap:.4rem; margin-top:.5rem; }
.workout-quick-add input { min-width:0; min-height:36px; padding:.45rem .55rem; border:1px dashed var(--color-border); border-radius:9px; outline:0; background:var(--color-surface); color:var(--color-text); font:400 .72rem var(--font-ui); }
.workout-quick-add input:first-child { grid-column:1/-1; }
.workout-quick-add input:focus { border-style:solid; border-color:var(--color-accent); }
.workout-quick-add button { display:grid; width:34px; height:34px; place-items:center; border-radius:9px; background:var(--color-accent-pale); color:var(--color-accent); font-size:1.15rem; }
.health-dialog--exercise { width:min(740px,calc(100vw - 2rem)); border-radius:28px; }
.health-dialog--exercise header { padding:1.35rem 1.75rem .75rem; border:0; }
.exercise-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem 1.15rem; padding:.65rem 1.75rem 1.15rem; }
.health-dialog--exercise .health-field { gap:.3rem; }
.health-dialog--exercise .health-field > span { color:#5a4139; font-size:.82rem; font-weight:700; }
.health-dialog--exercise .health-field input,.health-dialog--exercise .health-field textarea { min-height:48px; padding:.65rem 1rem; border-color:#eadfd7; border-radius:16px; background:#fffdfa; }
.health-dialog--exercise .habit-days-field { margin-top:.1rem; }
.health-dialog--exercise .habit-days-field.has-error label span { border-color:#df8588; }
.health-dialog--exercise .habit-days-field.has-error > small { color:#c9666d; }
.workout-items-field > small { color:#9a8478; font-size:.7rem; }
.workout-items-field > [data-workout-items] { display:grid; gap:.55rem; margin-top:.2rem; }
.workout-form-row { display:grid; grid-template-columns:minmax(150px,1fr) 76px 92px 96px 42px; align-items:center; gap:.45rem; }
.workout-form-row input { min-width:0; }
.workout-form-row button { display:grid; width:42px; height:42px; place-items:center; border:1px solid #f1d8d9; border-radius:12px; background:#fff5f5; color:#d9787d; }
.workout-form-row button .health-inline-icon { width:17px; height:17px; }
.workout-items-field > button { display:inline-flex; width:max-content; min-height:38px; align-items:center; gap:.35rem; margin-top:.15rem; padding:.45rem .7rem; border-radius:10px; background:#f8edf2; color:var(--color-accent); font-size:.72rem; font-weight:700; }
.health-dialog--exercise footer { padding:.75rem 1.75rem 1.35rem; border:0; }
.exam-switch { display:inline-flex; width:max-content; padding:.32rem; border-radius:999px; background:#f5f0eb; }
.exam-switch button { min-height:42px; padding:.55rem 1rem; border-radius:999px; color:#967f73; font-size:.8rem; font-weight:700; }
.exam-switch button.is-active { background:white; color:#513a33; box-shadow:0 3px 10px rgb(70 54 42/.08); }
.exam-records { display:grid; gap:.85rem; }
.exam-record { display:grid; min-height:112px; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1rem; padding:1rem 1.35rem; border:1px solid #eee7e0; border-radius:28px; background:rgb(255 255 255/.9); box-shadow:0 12px 30px rgb(70 54 42/.035); }
.exam-record h3 { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; color:#513a33; font-size:1rem; }
.exam-record p,.exam-record small { display:block; margin-top:.35rem; color:#9a8478; font-size:.76rem; line-height:1.45; }
.exam-record__actions { display:flex; gap:.65rem; }
.exam-record__actions button { display:grid; width:40px; height:40px; place-items:center; border-radius:10px; color:#5c453d; }
.exam-record__actions button:hover { background:#faf2ed; }.exam-record__actions button:last-child { color:#df8588; }
.exam-record__actions .health-inline-icon { width:19px; height:19px; }
.health-dialog--exam { width:min(740px,calc(100vw - 2rem)); border-radius:28px; }
.health-dialog--exam header { padding:1.35rem 1.75rem .75rem; border:0; }
.exam-form { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:.85rem 1rem; padding:.65rem 1.75rem 1.15rem; }
.exam-form > .health-field { grid-column:span 3; gap:.3rem; }
.exam-form > .health-field--full { grid-column:1/-1; }
.exam-form > .health-field:nth-of-type(2),.exam-form > .health-field:nth-of-type(3),.exam-form > .health-field:nth-of-type(4) { grid-column:span 2; }
.health-dialog--exam .health-field > span { color:#5a4139; font-size:.82rem; }
.health-dialog--exam .health-field input,.health-dialog--exam .health-field textarea { min-height:48px; padding:.65rem 1rem; border-color:#eadfd7; border-radius:16px; background:#fffdfa; }
.health-dialog--exam .health-field textarea { min-height:96px; }
.health-dialog--exam .health-field small { color:#9a8478; font-size:.7rem; }
.health-dialog--exam footer { padding:.75rem 1.75rem 1.35rem; border:0; }
.health-dialog--symptoms { border-radius:28px; }
.health-dialog--symptoms header { padding:1.55rem 1.75rem 1.15rem; border:0; }
.health-dialog--symptoms .symptom-form { gap:1.15rem; padding:1rem 1.75rem 1.5rem; }
.health-dialog--symptoms .health-field { gap:.5rem; }
.health-dialog--symptoms .health-field > span { color:#5a4139; font-size:.82rem; }
.health-dialog--symptoms .health-field input,.health-dialog--symptoms .health-field textarea { min-height:52px; padding:.8rem 1rem; border-color:#eadfd7; border-radius:16px; background:#fffdfa; }
.health-dialog--symptoms .health-field textarea { min-height:120px; }
.health-dialog--symptoms footer { padding:1rem 1.75rem 1.6rem; border:0; }
.health-report-dialog { width:min(920px,calc(100vw - 2rem)); border-radius:28px; }
.health-report-dialog > header { padding:1.3rem 1.5rem 1rem; }
.health-report-controls { display:flex; align-items:end; gap:1rem; padding:1rem 1.5rem; background:#fffdfa; }
.health-report-controls label { display:grid; flex:0 0 220px; gap:.35rem; color:#5a4139; font-size:.76rem; font-weight:700; }
.health-report-controls input { min-height:44px; padding:.65rem .8rem; border:1px solid #eadfd7; border-radius:13px; background:white; color:#5a4139; }
.health-report-controls p { color:#9a8478; font-size:.72rem; line-height:1.45; }
.health-report-preview { max-height:58vh; padding:1.25rem; overflow:auto; background:#f5f1ed; }
.health-report-print { max-width:760px; margin:auto; padding:2rem; background:white; color:#4f3b34; font-family:var(--font-ui); box-shadow:0 8px 28px rgb(70 54 42/.08); }
.health-report-dialog .health-report-print > header { display:block; padding:0 0 1.1rem; border-bottom:2px solid #edd7df; background:white; }
.health-report-print > header span { color:#c47797; font-size:.65rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.health-report-print > header h1 { margin:.25rem 0; font-size:1.65rem; }
.health-report-print > header p { color:#765f55; font-size:.9rem; font-weight:700; }
.health-report-print > header small { display:block; margin-top:.3rem; color:#a08b80; font-size:.65rem; }
.health-report__summary { display:grid; grid-template-columns:repeat(4,1fr); gap:.55rem; margin:1rem 0; }
.health-report__summary article { padding:.7rem; border-radius:12px; background:#faf2f5; }
.health-report__summary strong,.health-report__summary span { display:block; }.health-report__summary strong { font-size:1.25rem; }.health-report__summary span { margin-top:.15rem; color:#90796e; font-size:.65rem; }
.health-report-print > section:not(.health-report__summary) { margin-top:1.1rem; break-inside:avoid; }
.health-report-print h2 { padding-bottom:.35rem; border-bottom:1px solid #eadfd7; color:#5a4139; font-size:.9rem; }
.health-report__rows > div { display:grid; grid-template-columns:90px minmax(0,1fr); gap:.65rem; padding:.5rem 0; border-bottom:1px solid #f1ebe7; }
.health-report__rows time { color:#9a8478; font-size:.68rem; }.health-report__rows p { color:#684f46; font-size:.72rem; line-height:1.45; }.health-report__rows p small { display:block; margin-top:.15rem; color:#9a8478; }
.health-report__empty { padding:.55rem 0; color:#a18d82; font-size:.7rem; font-style:italic; }
.health-report-dialog .health-report-print > footer { display:block; margin-top:1.5rem; padding:.75rem 0 0; border-top:1px solid #eadfd7; background:white; color:#9a8478; font-size:.62rem; line-height:1.45; }
.health-report-dialog > footer { padding:.9rem 1.5rem 1.2rem; }
.medicine-form,.cycle-form,.appointment-form { gap:.85rem 1.15rem; padding-top:.65rem; padding-bottom:1.15rem; }
.medicine-doses { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:.55rem; margin-bottom:1rem; padding:1rem; }
.medicine-doses h3 { grid-column:1/-1; font-size:.92rem; }
.medicine-dose { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:.55rem; padding:.65rem .75rem; border:1px solid var(--color-border); border-radius:14px; background:#fffdfa; color:var(--color-text); text-align:left; }
.medicine-dose > span { display:grid; width:26px; height:26px; place-items:center; border:1px solid #d9ccc4; border-radius:50%; color:white; }
.medicine-dose small { color:var(--color-text-muted); }.medicine-dose.is-complete > span { border-color:var(--color-accent); background:var(--color-accent); }.medicine-dose.is-complete strong { color:var(--color-text-muted); text-decoration:line-through; }
.health-dialog--medicine .health-field,.health-dialog--cycle .health-field,.health-dialog--appointment .health-field,.health-dialog--symptoms .health-field { gap:.3rem; }
.health-dialog--medicine .health-field input,.health-dialog--medicine .health-field select,.health-dialog--medicine .health-field textarea,
.health-dialog--cycle .health-field input,.health-dialog--cycle .health-field select,.health-dialog--cycle .health-field textarea,
.health-dialog--appointment .health-field input,.health-dialog--appointment .health-field textarea,
.health-dialog--symptoms .health-field input,.health-dialog--symptoms .health-field textarea { min-height:48px; padding:.65rem 1rem; }
.health-dialog::backdrop { background:rgb(52 44 38/.36); backdrop-filter:blur(3px); }
.health-dialog header,.health-dialog footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.25rem 1.4rem; background:white; }
.health-dialog header { border-bottom:1px solid var(--color-border); }.health-dialog header span { color:var(--color-accent); font-size:.67rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.health-dialog header h2 { font-size:1.3rem; }.health-dialog header button { background:transparent; color:var(--color-text-faint); font-size:1.6rem; }
.health-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; padding:1.4rem; }
.symptom-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; padding:1.4rem; }
.symptom-intensity { display:grid; gap:.7rem; }
.symptom-intensity > span { color:var(--color-text); font-size:.8rem; font-weight:700; }
.symptom-intensity input { width:100%; height:8px; border-radius:999px; outline:none; background:linear-gradient(90deg,#efb8c4 0 50%,#d1a87e 50%); accent-color:#efb8c4; }
.health-form__heading { grid-column:1/-1; margin:.65rem 0 -.15rem; color:#948176; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; }
.measure-form-error { margin-top:-.25rem; color:#c9666d; font-size:.74rem; font-weight:700; }
.health-field { display:grid; gap:.4rem; }.health-field--full { grid-column:1/-1; }.health-field span { color:var(--color-text-muted); font-size:.75rem; font-weight:700; }
.health-field input,.health-field select,.health-field textarea { width:100%; min-height:44px; padding:.7rem .8rem; border:1px solid var(--color-border); border-radius:11px; background:white; color:var(--color-text); }.health-field textarea { resize:vertical; }
.health-field input:focus,.health-field select:focus,.health-field textarea:focus { border-color:var(--color-accent); outline:3px solid rgb(215 125 171/.13); }
.health-dialog footer { justify-content:flex-end; border-top:1px solid var(--color-border); }.health-dialog footer > button:first-child { padding:.7rem 1rem; background:transparent; color:var(--color-text-muted); }
@media (max-width:1000px) { .health-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }.health-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }.health-split { grid-template-columns:1fr; }.doctor-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px) {
  .health-header { align-items:stretch; flex-direction:column; gap:1rem; }.health-header .health-primary,.health-export-button { width:100%; }.health-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem .65rem; }.measure-heading { align-items:stretch; flex-direction:column; }.measure-heading .health-primary { width:100%; }
  .measure-evolution { min-height:300px; padding:1rem; }.measure-evolution > header { align-items:stretch; flex-direction:column; }.measure-filters { display:grid; grid-template-columns:minmax(0,1fr) auto; }.measure-metric-filter { width:100%; }.measure-chart { min-height:210px; overflow-x:auto; }.measure-chart svg { width:560px; max-width:none; min-height:0; }
  .measure-record { grid-template-columns:1fr; align-items:start; }.measure-record__actions { width:100%; }.measure-record__actions button { flex:1; }
  .symptom-heading { margin-bottom:.2rem; }.symptom-heading .primary-button--new { width:100%; min-width:0; }.symptom-filters { display:grid; grid-template-columns:1fr; }.symptom-filter { width:100%; }.symptom-record { grid-template-columns:minmax(0,1fr) auto; padding:1rem 1.1rem; }.symptom-record .measure-record__actions { width:auto; flex-direction:column; gap:.2rem; }.symptom-record .measure-record__actions button { flex:0 0 36px; width:36px; min-width:36px; min-height:36px; }.cycle-history__record { grid-template-columns:minmax(0,1fr) auto; padding:1rem 1.1rem; }.cycle-history__record .measure-record__actions { flex-direction:column; gap:.2rem; }
  .appointment-record,.exam-record { grid-template-columns:1fr; }.appointment-record__actions,.exam-record__actions { width:100%; justify-content:flex-end; }
  .health-stats,.doctor-grid { grid-template-columns:1fr; }.health-stat { min-height:112px; }.health-composition > div { grid-template-columns:1fr 80px; }.health-composition i { grid-row:2; grid-column:1/-1; }.health-form,.symptom-form,.medicine-form,.cycle-form,.appointment-form,.doctor-form { grid-template-columns:1fr; }.health-field--full { grid-column:auto; }.health-coming { min-height:350px; padding:2rem 1rem; }.doctor-detail__facts { grid-template-columns:1fr; }.doctor-detail__facts div { padding-right:0!important; }.doctor-detail__facts div:last-child:nth-child(odd) { grid-column:auto; }
  .exam-form,.exercise-form { grid-template-columns:1fr; }.exam-form > .health-field,.exam-form > .health-field--full,.exam-form > .health-field:nth-of-type(2),.exam-form > .health-field:nth-of-type(3),.exam-form > .health-field:nth-of-type(4) { grid-column:auto; }.workout-form-row { grid-template-columns:minmax(120px,1fr) repeat(3,70px) 38px; overflow-x:auto; }.workout-form-row button { width:38px; height:38px; }.health-report-controls { align-items:stretch; flex-direction:column; }.health-report-controls label { width:100%; flex-basis:auto; }.health-report__summary { grid-template-columns:repeat(2,1fr); }.health-report-print { padding:1.1rem; }.health-report__rows > div { grid-template-columns:1fr; gap:.2rem; }
}

@media print {
  @page { size:A4; margin:14mm; }
  body.printing-health-report * { visibility:hidden!important; }
  body.printing-health-report .health-report-dialog,body.printing-health-report .health-report-print,body.printing-health-report .health-report-print * { visibility:visible!important; }
  body.printing-health-report .health-report-dialog { position:absolute!important; inset:0!important; width:100%!important; max-width:none!important; max-height:none!important; margin:0!important; overflow:visible!important; border:0!important; background:white!important; box-shadow:none!important; }
  body.printing-health-report .health-report-dialog::backdrop,body.printing-health-report .health-report-dialog > header,body.printing-health-report .health-report-controls,body.printing-health-report .health-report-dialog > footer { display:none!important; }
  body.printing-health-report .health-report-preview { max-height:none!important; padding:0!important; overflow:visible!important; background:white!important; }
  body.printing-health-report .health-report-print { width:100%!important; max-width:none!important; margin:0!important; padding:0!important; box-shadow:none!important; }
}

/* A impressão continua branca; somente a interface acompanha o tema. */
:root[data-theme="dark"] :is(
  .health-export-button, .health-stat, .health-card, .overview-recent > div, .measure-filters > span,
  .measure-record__actions button, .symptom-stat, .cycle-notice, .doctor-card, .health-dialog,
  .health-dialog--medicine .health-field input, .health-dialog--medicine .health-field select,
  .health-dialog--medicine .health-field textarea, .health-dialog--cycle .health-field input,
  .health-dialog--cycle .health-field select, .health-dialog--cycle .health-field textarea,
  .health-form-picker .pending-category-picker__trigger, .appointment-record,
  .health-dialog--appointment .health-field input, .health-dialog--appointment .health-field textarea,
  .health-dialog--doctor .health-field input, .health-dialog--doctor .health-field textarea,
  .health-dialog--exercise .health-field input, .health-dialog--exercise .health-field textarea,
  .exam-record, .health-dialog--exam .health-field input, .health-dialog--exam .health-field textarea,
  .health-dialog--symptoms .health-field input, .health-dialog--symptoms .health-field textarea,
  .health-report-controls, .health-report-controls input, .medicine-dose, .health-dialog header,
  .health-dialog footer, .health-field input, .health-field select, .health-field textarea
) { border-color: var(--color-border); background: var(--color-surface); color: var(--color-text); }

:root[data-theme="dark"] .cycle-record { background: var(--color-soft); }
:root[data-theme="dark"] .exam-switch button.is-active { background: var(--color-surface); color: var(--color-text); }
:root[data-theme="dark"] :is(
  .health-badge, .symptom-record h3 span, .cycle-history__record p span,
  .cycle-symptoms label span, .appointment-return, .exam-switch
) { border-color: var(--color-border); background: var(--color-soft); color: var(--color-text-muted); }
:root[data-theme="dark"] :is(.health-tone--pink > span, .health-tone--purple > span, .health-tone--blue > span, .health-tone--green > span) { filter: brightness(.72) saturate(.8); }
:root[data-theme="dark"] :is(
  .health-report-controls label, .health-report-controls p, .health-form__heading,
  .health-dialog--exam .health-field small, .health-dialog--symptoms .health-field > span
) { color: var(--color-text-muted); }
:root[data-theme="dark"] .symptom-stat header > span { background: color-mix(in srgb, var(--tone) 26%, var(--color-soft)); color: color-mix(in srgb, var(--tone) 68%, var(--color-text)); filter: none; }
:root[data-theme="dark"] .symptom-stat header p { color: var(--color-text-muted); }
:root[data-theme="dark"] .symptom-stat > strong { color: var(--color-text); }
:root[data-theme="dark"] .symptom-stat > small { color: var(--color-text-faint); }
