/* Вторая волна: раздел «Здоровье». Общий набор: плитки, панели, поля, чипы, списки, графики.
   Использует переменные styles.css (--ink, --card, --acc, --soft, --line ...), поэтому день и ночь работают сами. */

/* --- Пятая вкладка: чуть теснее */
.tabbar{gap:2px;padding:5px}
.tabbar button{padding:12px 13px;font-size:13px}

/* --- Главный экран «Здоровье» */
.hp-title .ptitle{margin-top:2px}
.hp-sub{font-size:13.5px;line-height:1.5;color:var(--mute);margin:4px 2px 12px}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tile{position:relative;display:grid;grid-template-rows:auto 1fr;gap:12px;align-content:start;text-align:left;padding:14px 14px 14px;border-radius:26px;background:var(--card);border:1px solid var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 16px 34px -26px rgba(30,20,80,.55);min-height:118px;overflow:hidden;transition:transform .15s}
.tile:active{transform:scale(.98)}
.tile .ti{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:var(--tint,#EFE9FB);color:var(--tink,#7A5CC8)}
.tile .ti svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tile .tt b{display:block;font-size:15px;font-weight:700;letter-spacing:-.01em}
.tile .tt small{display:block;margin-top:3px;font-size:12px;line-height:1.35;color:var(--mute)}
.tile[data-tone=a]{--tint:#FFE6C7;--tink:#B3641C}
.tile[data-tone=b]{--tint:#FFDDE0;--tink:#C0455A}
.tile[data-tone=c]{--tint:#D9F0E2;--tink:#2C8A5A}
.tile[data-tone=d]{--tint:#DCE8FF;--tink:#3D6BC4}
.tile[data-tone=e]{--tint:#F8E3D3;--tink:#A9581F}
.tile[data-tone=f]{--tint:#E9DFFB;--tink:#6B4DC0}
body[data-sky=night] .tile[data-tone]{--tint:rgba(255,255,255,.1);--tink:#FFD08A}
.tile.hero{grid-column:1/-1;grid-template-columns:auto 1fr;grid-template-rows:auto;align-items:center;min-height:0;background:linear-gradient(150deg,rgba(255,206,130,.55),rgba(255,181,71,.28));border-color:rgba(242,154,60,.5)}
.tile.hero .ti{width:48px;height:48px;background:rgba(255,255,255,.7)}
.hp-note{font-size:12px;line-height:1.5;color:var(--mute);text-align:center;margin:14px 8px 0}

/* --- Панель модуля */
.hp-head{display:flex;align-items:center;gap:12px;margin:2px 0 10px}
.hp-head h1{font-family:var(--serif);font-style:italic;font-weight:500;font-size:27px;line-height:1.1}
.hp-back{width:44px;height:44px;border-radius:50%;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;flex:none}
.hp-back svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hp-sec{margin-top:12px}
.hp-sec h3,.hp-h{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-weight:600;margin:0 0 8px}
.hp-lead{font-size:14px;line-height:1.55;color:var(--mute);margin:2px 2px 10px}
.hp-act{display:block;width:100%;padding:15px;border-radius:24px;background:linear-gradient(160deg,var(--acc2),var(--acc));color:var(--acc-ink);font-weight:700;font-size:15px;min-height:52px;box-shadow:0 12px 26px -14px var(--acc);text-align:center}
.hp-act.soft{background:var(--soft);color:var(--ink);box-shadow:none}
.hp-act:disabled{opacity:.5}
.hp-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* --- Поля, чипы, списки */
.fld{display:grid;gap:5px;margin:0 0 10px}
.fld>span{font-size:12px;color:var(--mute);letter-spacing:.04em}
.inp{width:100%;padding:13px 14px;border-radius:18px;border:1.5px solid transparent;background:var(--soft);color:var(--ink);font:inherit;font-size:16px;min-height:48px}
.inp:focus{outline:none;border-color:var(--acc);background:var(--sheet)}
textarea.inp{min-height:84px;resize:vertical;line-height:1.45}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.chip{padding:9px 14px;border-radius:99px;background:var(--soft);font-size:13.5px;font-weight:600;color:var(--ink);min-height:40px}
.chip[aria-pressed=true]{background:var(--acc);color:var(--acc-ink)}
.chip.small{padding:6px 11px;font-size:12.5px;min-height:34px}
.lilist{display:grid;gap:0;margin:0;padding:0;list-style:none}
.li{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}
.li:first-child{border-top:0}
.li .lic{width:36px;height:36px;border-radius:12px;background:var(--soft);display:grid;place-items:center;color:var(--atx)}
.li .lic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.li b{display:block;font-size:14.5px;font-weight:600}
.li small{display:block;font-size:12px;color:var(--mute);margin-top:1px}
.li .rt{font-size:12.5px;color:var(--mute);text-align:right;font-feature-settings:"tnum"}
.li button.x{width:36px;height:36px;border-radius:50%;color:var(--mute);font-size:20px;line-height:1}
.pill{display:inline-block;padding:3px 10px;border-radius:99px;font-size:11.5px;font-weight:700;background:var(--soft);color:var(--ink)}
.pill.ok{background:#D8F1E1;color:#1F7A4A}.pill.soon{background:#FFE6C7;color:#9A5410}.pill.late{background:#F9E1B7;color:#8A5A10}.pill.later{background:var(--soft);color:var(--mute)}
body[data-sky=night] .pill.ok{background:rgba(120,220,170,.2);color:#8FE3B4}body[data-sky=night] .pill.soon,body[data-sky=night] .pill.late{background:rgba(255,200,120,.2);color:#FFD08A}
.bigval{display:flex;align-items:baseline;justify-content:center;gap:6px;margin:6px 0}
.bigval b{font-size:48px;font-weight:300;letter-spacing:-.02em;font-feature-settings:"tnum"}
.bigval span{font-size:18px;color:var(--mute)}
.step2{display:flex;align-items:center;justify-content:center;gap:16px}
.step2 button{width:54px;height:54px;border-radius:50%;background:var(--soft);font-size:26px;font-weight:600;line-height:1}
.hp-msg{padding:12px 14px;border-radius:18px;background:var(--soft);font-size:13.5px;line-height:1.5;margin:8px 0}
.hp-msg.warm{background:rgba(255,206,130,.4)}
.hp-empty{text-align:center;color:var(--mute);font-size:14px;padding:18px 8px}
.chart{display:block;width:100%;height:auto}
.chart text{font-family:var(--sans);font-size:10px;fill:var(--mute);font-feature-settings:"tnum"}
.chart .band3{fill:rgba(142,124,195,.14)}.chart .band2{fill:rgba(142,124,195,.2)}
.chart .p50{fill:none;stroke:rgba(142,124,195,.8);stroke-width:1.6;stroke-dasharray:4 3}
.chart .ln{fill:none;stroke:var(--acc);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.chart .dot{fill:#fff;stroke:var(--acc);stroke-width:2.6}
.chart .grid{stroke:var(--line);stroke-width:1}
body[data-sky=night] .chart .band3{fill:rgba(160,150,230,.16)}body[data-sky=night] .chart .band2{fill:rgba(160,150,230,.24)}
.srcnote{font-size:11.5px;line-height:1.5;color:var(--mute);margin-top:8px}

/* --- Печатная сводка врачу */
#print-root{display:none}
@media print{
  body.printing>*:not(#print-root){display:none!important}
  body.printing #print-root{display:block;position:static;color:#000;background:#fff;padding:0}
  body.printing{background:#fff;padding:0;max-width:none}
  html{background:#fff}
  .doc{font:12pt/1.45 system-ui,sans-serif}
}

/* карточка на главном экране: «скоро прививка» */
.caretip{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px}
.caretip .ti{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:#DCE8FF;color:#3D6BC4}
.caretip .ti svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.caretip b{display:block;font-size:14.5px}.caretip small{display:block;font-size:12px;color:var(--mute);margin-top:1px}
.caretip[hidden]{display:none}
.li-tap{background:none;color:inherit}

/* прикорм: сетка продуктов */
.foodgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:0 0 10px}
.food{position:relative;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px 14px;border-radius:18px;background:var(--soft);font-size:14px;font-weight:600;text-align:left;min-height:48px;color:var(--ink)}
.food i{font-style:normal;font-size:10px;font-weight:800;width:16px;height:16px;border-radius:50%;background:#FFD08A;color:#6A3C00;display:grid;place-items:center;flex:none}
.food em{font-style:normal;font-weight:800;color:#1F7A4A;flex:none}
.food.tried{background:#D8F1E1;color:#14502F}.food.tried.r-mild{background:#FFE6C7;color:#7A4710}.food.tried.r-mild em{color:#9A5410}.food.tried.r-strong{background:#F9D5DB;color:#7E2335}.food.tried.r-strong em{color:#B3283F}
body[data-sky=night] .food.tried{background:rgba(120,220,170,.2);color:#BFF0D5}body[data-sky=night] .food.tried.r-mild{background:rgba(255,200,120,.2);color:#FFD9A0}body[data-sky=night] .food.tried.r-strong{background:rgba(255,130,150,.2);color:#FFC4CE}

/* симптомы: фото */
.thumb{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block}
.li.symli .lic{overflow:hidden;padding:0}
.bigphoto{display:block;width:100%;max-height:46vh;object-fit:contain;border-radius:18px;background:var(--soft);margin:6px 0 10px}
.syphoto{margin:4px 0 10px}
.sheet-acts .danger{background:#E0576A;color:#fff}
.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}

/* печатная сводка врачу: светлый лист с тёмным текстом, на экране и на бумаге */
.docv{background:#fff;color:#1b1830;border-radius:16px;padding:16px;max-height:62vh;overflow:auto;-webkit-overflow-scrolling:touch}
.doc h1{font-size:21px;margin:0 0 4px;font-family:var(--serif);font-style:italic;font-weight:500;color:#1b1830}
.doc .docmeta{color:#5a5578;font-size:13px;margin:0 0 10px}
.doc h2{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#5a5578;margin:14px 0 4px;font-weight:600}
.doc table{width:100%;border-collapse:collapse;font-size:14px}
.doc td{padding:5px 0;border-bottom:1px solid #eceaf5;vertical-align:top;color:#1b1830}.doc td:last-child{text-align:right;font-weight:600;padding-left:12px}
.doc .docq{white-space:pre-line;font-size:14px;margin:0}
.doc .docfoot{margin-top:14px;font-size:11.5px;color:#7a7596}
.hp-group{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-weight:600;margin:18px 4px 8px}
.hp-group:first-of-type{margin-top:6px}

/* запись фразой */
.head .hbtns{display:flex;gap:8px}
.ph-in{width:100%;min-height:76px}
.ph-out{display:grid;gap:6px;margin:10px 0 6px;min-height:20px}
.ph-row{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:11px 12px;border-radius:18px;background:var(--soft);text-align:left;width:100%}
.ph-row .ck{width:24px;height:24px;border-radius:8px;border:2px solid var(--mute);display:grid;place-items:center;color:transparent;font-size:15px;font-weight:800}
.ph-row[aria-pressed=true] .ck{background:var(--acc);border-color:var(--acc);color:var(--acc-ink)}
.ph-row[aria-pressed=false]{opacity:.55}
.ph-row b{font-size:14.5px;font-weight:600}.ph-row small{display:block;font-size:12px;color:var(--mute)}
.ph-row .tm{font-size:13px;font-weight:600;font-feature-settings:"tnum"}
.ph-unk{font-size:12.5px;color:var(--mute);padding:2px 4px}

/* ---------- Книга малыша: страницы А5 (на экране уменьшаются, на бумаге в натуральную величину) */
.bk-box{position:relative;width:100%;height:calc(210mm * var(--s,.6));margin:0 0 12px;border-radius:14px;box-shadow:0 18px 40px -22px rgba(30,20,80,.55);overflow:hidden;background:#FFFBF7}
.bk-box .bk-page{transform-origin:top left;transform:scale(var(--s,.6));position:absolute;left:0;top:0}
.bk-page{width:148mm;height:210mm;box-sizing:border-box;position:relative;overflow:hidden;background:#FFFBF7;color:#33284F;padding:13mm 12mm;font-family:Onest,system-ui,sans-serif;text-align:left}
.bk-page h2{font-family:SrcSerif,Georgia,serif;font-style:italic;font-weight:500;font-size:26pt;margin:0 0 3mm;line-height:1.1;color:#33284F}
.bk-page h3{font-size:9pt;letter-spacing:.1em;text-transform:uppercase;color:#8C82A8;margin:5mm 0 1mm;font-weight:600}
.bk-kicker{display:block;font-size:8pt;letter-spacing:.14em;text-transform:uppercase;color:#8C82A8;margin-bottom:1mm}
.bk-art{display:block;object-fit:contain;margin:0 auto}
.bk-art.mid{height:62mm;margin:4mm auto}.bk-art.sm{height:48mm;margin:1mm auto 3mm}
.bk-list{list-style:none;padding:0;margin:3mm 0;font-size:11.5pt;line-height:1.5}
.bk-list li{padding:1.6mm 0;border-bottom:.3mm solid #EFE9FB}.bk-list small{color:#8C82A8;font-size:9pt;margin-left:2mm}
.bk-quiet{font-size:11.5pt;line-height:1.55;color:#7A7096;font-style:italic;margin:6mm 0}
.bk-note{position:absolute;left:12mm;right:12mm;bottom:16mm;height:24mm;background:repeating-linear-gradient(transparent 0 7.4mm,#E4DCF3 7.4mm 7.8mm)}
.bk-n{position:absolute;bottom:7mm;left:0;right:0;text-align:center;font-size:8pt;color:#B3A9CC}
.bk-photos{display:grid;gap:2mm;margin-top:3mm}.bk-photos.p1{grid-template-columns:1fr}.bk-photos.p2,.bk-photos.p3,.bk-photos.p4{grid-template-columns:1fr 1fr}
.bk-photos img{width:100%;height:30mm;object-fit:cover;border-radius:3mm}.bk-photos.p1 img{height:44mm}
.bk-cover{background:linear-gradient(180deg,#FFE3C2 0,#F7DDF0 55%,#E4DCFA 100%);padding:0}
.bk-cover .bk-sky{position:absolute;inset:0;background:radial-gradient(60% 40% at 50% 30%,rgba(255,255,255,.7),transparent 70%)}
.bk-cover .bk-art.big{position:absolute;left:14mm;right:14mm;bottom:10mm;width:120mm;height:118mm}
.bk-ctitle{position:absolute;top:26mm;left:0;right:0;text-align:center}.bk-ctitle small{display:block;font-size:10pt;letter-spacing:.2em;text-transform:uppercase;color:#7A5CC8;margin-bottom:3mm}
.bk-ctitle h1{font-family:SrcSerif,Georgia,serif;font-style:italic;font-weight:500;font-size:40pt;line-height:1.05;color:#33284F;margin:0;padding:0 10mm;word-break:break-word}
.bk-brand{position:absolute;bottom:6mm;left:0;right:0;text-align:center;font-size:8pt;letter-spacing:.3em;text-transform:uppercase;color:#7A5CC8}
.bk-nums .bk-grid{display:grid;grid-template-columns:1fr 1fr;gap:4mm;margin-top:6mm}
.bk-nums .bk-grid div{padding:5mm;border-radius:4mm;background:#F3EEFC}.bk-nums .bk-grid b{display:block;font-size:24pt;font-weight:600;letter-spacing:-.02em;color:#33284F}.bk-nums .bk-grid span{font-size:9.5pt;color:#7A7096}
.bk-end{text-align:center;padding-top:26mm}.bk-end p{font-size:12pt;line-height:1.6;color:#5A5078;margin:0 8mm}.bk-end .bk-foot{position:absolute;bottom:14mm;left:12mm;right:12mm;font-size:8pt;color:#B3A9CC;margin:0}
@page book{size:148mm 210mm;margin:0}
@media print{
  body.printing-book{max-width:none;margin:0}
  .bk-print{page:book}
  .bk-print .bk-page{break-after:page;page-break-after:always;box-shadow:none;transform:none;position:relative}
}

.cdimg{display:block;width:100%;height:auto;border-radius:18px}

/* ритуал засыпания */
.rt-li{display:flex;align-items:center;gap:8px}.rt-sw{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left;background:none;border:0;padding:6px 0;color:inherit;font:inherit;opacity:.55}.rt-sw[aria-pressed=true]{opacity:1}.rt-sw .lic svg,.rt-sw .rt-ico{width:24px;height:24px}
.rt-mv{display:flex;gap:6px}.rt-mv button{width:40px;height:40px;border-radius:12px;border:1px solid var(--line,rgba(120,100,170,.25));background:transparent;color:inherit;font-size:18px}.rt-mv button:disabled{opacity:.3}
.rt-ov{position:fixed;inset:0;z-index:85;background:radial-gradient(90% 60% at 50% 40%,#2A2F72 0,#0B0D24 75%);color:#EEF0FF;display:flex;flex-direction:column;align-items:center;padding:calc(16px + env(safe-area-inset-top)) 22px calc(22px + env(safe-area-inset-bottom));opacity:0;transition:opacity .35s}
.rt-ov.open{opacity:1}.rt-ov[hidden]{display:none}
.rt-top{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:440px;font-size:14px;color:#A9AEDA}.rt-x{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:transparent;color:#EEF0FF;font-size:24px}
.rt-dots{display:flex;gap:8px;margin:14px 0;min-height:10px}.rt-dots i{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.18)}.rt-dots i.d{background:#F5B84A}.rt-dots i.c{background:#fff;transform:scale(1.25)}
.rt-card{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;text-align:center;animation:rtIn .5s ease both}.rt-card h2{font-family:var(--serif,Georgia,serif);font-style:italic;font-weight:500;font-size:34px;line-height:1.15;margin:0}
.rt-ico.big{width:min(52vw,210px);height:min(52vw,210px);color:#F5C777;filter:drop-shadow(0 0 28px rgba(245,184,74,.35))}.rt-card.end .rt-ico.big{color:#DDE0FF}
.rt-acts{width:100%;max-width:440px;display:flex;flex-direction:column;gap:10px}.rt-go{height:68px;border-radius:34px;border:0;background:linear-gradient(180deg,#FFC66B,#F0963A);color:#2B1B05;font-size:22px;font-weight:700}.rt-skip{height:44px;background:none;border:0;color:#A9AEDA;font-size:15px}
@keyframes rtIn{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.rt-card{animation:none}.rt-ov{transition:none}}

.gear.on{box-shadow:0 0 0 2px #F0963A inset}.kd-row small{display:block;font-size:12px;opacity:.7}.kd-link{width:100%;text-align:left}

.nwbars{display:flex;gap:8px;align-items:flex-end;justify-content:space-between;margin-top:12px;height:104px}.nwbars div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px}.nwbars i{width:70%;max-width:28px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#8E7CE8,#5D4BC4)}.nwbars b{font-size:13px}.nwbars small{font-size:11px;opacity:.65}
.li.plain{display:block}.li.plain small{display:block;line-height:1.4}

.gshint{font-size:12px;opacity:.6;max-width:300px;text-align:center;margin-top:6px}
.nightscr,[data-screen=night]{touch-action:none}html,body{overscroll-behavior-y:none}

.card.next[data-why]{cursor:pointer;position:relative}.card.next[data-why]::after{content:'?';position:absolute;top:10px;right:12px;width:20px;height:20px;border-radius:50%;border:1px solid currentColor;opacity:.45;font-size:12px;line-height:19px;text-align:center}

.ec-sheet h2{font-family:var(--serif,Georgia,serif);font-style:italic;font-weight:500;font-size:28px;margin:4px 0 10px}.ec-row{padding:9px 0;border-top:1px solid rgba(120,100,170,.2)}.ec-row small{display:block;font-size:12px;letter-spacing:.04em;text-transform:uppercase;opacity:.65}.ec-row b{display:block;font-size:18px;line-height:1.3}.ec-row span{display:block;font-size:17px}
.ec-sheet.big .ec-row b{font-size:22px}.ec-call{display:inline-block;margin-top:6px;padding:10px 16px;border-radius:22px;background:#F0963A;color:#2B1B05;font-weight:700;text-decoration:none}
@media print{body.printing #print-root .ec-sheet{color:#000}body.printing #print-root .ec-row{border-color:#999}}
