/* اپ درون — «سلامت» و چرخه‌ی ماهانه (a/habits/mod-health.js). فقط وقتی settings.feat_health روشن است بار می‌شود (app.php).
   چهار فصل: زمستان (پریود)، بهار، تابستان، پاییز؛ رنگ‌ها آرام و خاکی، نه صورتیِ تند. شب پیش‌فرض، کاغذ (paper) دومی.
   برای مرورگرِ قدیمی health.legacy.css از همین ساخته می‌شود (tools/compat/legacy-css.mjs)؛ رنگِ کم‌رنگ با opacity است نه color-mix. */

.dapp{--hl-m:#df8a86;--hl-f:#93c08c;--hl-o:#e3b062;--hl-l:#d9925a;--hl-ink:#1b1512}
:root[data-theme="paper"] .dapp{--hl-m:#b9525a;--hl-f:#4b8a57;--hl-o:#a8741f;--hl-l:#b2652a;--hl-ink:#fff}
.dapp .ph-m{--ph:var(--hl-m)}.dapp .ph-f{--ph:var(--hl-f)}.dapp .ph-o{--ph:var(--hl-o)}.dapp .ph-l{--ph:var(--hl-l)}.dapp .ph-x{--ph:var(--d-sub)}

.dapp .hl{display:flex;flex-direction:column;max-width:1180px;margin:0 auto;padding-bottom:24px}
.dapp .hl .hl-i{width:20px;height:20px}
.dapp .hl-muted{color:var(--d-sub);font-size:13.5px;line-height:1.9;margin:4px 0}
.dapp .hl-muted.sm{font-size:12.5px;color:var(--d-faint)}
.dapp .hl-est{display:inline-flex;align-items:center;padding:0 9px;height:21px;border-radius:99px;border:1px dashed var(--d-line2);
  font-size:11px;font-weight:500;color:var(--d-sub);margin-inline-start:7px;vertical-align:middle;white-space:nowrap}
.dapp .hl-ib{flex:none;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;color:var(--d-ink2);transition:background .15s,color .15s}
.dapp .hl-ib:hover{background:var(--d-surf2)}
.dapp .hl-ib .ic,.dapp .hl-ib .hl-i{width:19px;height:19px}
.dapp .hl-ib[disabled]{opacity:.3;pointer-events:none}
.dapp[dir="ltr"] .hl-ib > svg.ic:not(.hl-i){transform:scaleX(-1)}
.dapp .hl-go{width:16px;height:16px;color:var(--d-faint);flex:none}
.dapp[dir="ltr"] .hl-go{transform:scaleX(-1)}
.dapp .hl-sp{width:36px;flex:none}
.dapp .hl-skel{display:flex;flex-direction:column;gap:14px}
.dapp .hl-skel i{display:block;height:150px;border-radius:var(--d-r);background:var(--d-surf);animation:hlPulse 1.4s ease-in-out infinite}
.dapp .hl-skel i + i{height:90px}
@keyframes hlPulse{50%{opacity:.55}}

/* ——— کاشیِ فصل ——— */
.dapp .hl-tile{position:relative;flex:none;width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:var(--ph,var(--d-acc))}
.dapp .hl-tile::before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--ph,var(--d-acc));opacity:.16}
.dapp .hl-tile .hl-i{position:relative;width:21px;height:21px}
.dapp .hl-tile.sm{width:34px;height:34px;border-radius:11px}
.dapp .hl-tile.sm .hl-i{width:18px;height:18px}

/* ——— چیدمان ——— */
.dapp .hl-cyc{display:flex;flex-direction:column}
.dapp .hl-col{display:flex;flex-direction:column;min-width:0}
@media (min-width:1100px){
  .dapp .hl-cyc{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:16px;align-items:start}
}

/* ——— کارتِ اصلی و حلقه ——— */
.dapp .hl-hero{padding:16px 16px 18px;text-align:center}
.dapp .hl-hero-top{display:flex;align-items:center;gap:6px;margin:-4px 0 0}
.dapp .hl-hero-top h2{flex:1;margin:0;font-size:16.5px;font-weight:600;text-align:start}
.dapp .hl-hero-tools{display:flex;gap:2px}
.dapp .hl-ring-w{position:relative;width:min(290px,80vw);margin:2px auto 4px}
.dapp .hl-ring{display:block;width:100%;height:auto;overflow:visible}
.dapp .hl-r-track{stroke:var(--d-line2)}
.dapp .hl-r-seg{stroke:var(--ph);opacity:.3}
.dapp .hl-r-past{stroke:var(--ph);opacity:.95}
.dapp .hl-r-ic{color:var(--ph);opacity:.9}
.dapp .hl-r-tick{fill:var(--d-faint);opacity:.55}
.dapp .hl-r-tick.past{opacity:.25}
.dapp .hl-r-now{fill:var(--d-surf);stroke:var(--d-ink);stroke-width:2.5;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35))}
.dapp .hl-r-now2{fill:var(--d-ink)}
.dapp .hl-r-late{stroke:var(--hl-m);opacity:.8}
.dapp .hl-ring-c{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;pointer-events:none}
.dapp .hl-ring-c small{font-size:13px;color:var(--d-sub);line-height:1.2}
.dapp .hl-ring-n{font-size:56px;font-weight:700;line-height:1.05;color:var(--d-ink);font-variant-numeric:tabular-nums;letter-spacing:-.5px}
.dapp .hl-ring-ph{display:flex;flex-direction:column;align-items:center;gap:1px;margin-top:4px}
.dapp .hl-ring-ph em{font-style:normal;font-size:13.5px;font-weight:700;color:var(--ph)}
.dapp .hl-ring-ph span{font-size:12px;color:var(--d-sub)}
.dapp .hl-h-lines{display:flex;flex-direction:column;align-items:center;gap:4px;margin:6px 0 2px}
.dapp .hl-h-l{margin:0;font-size:15px;line-height:1.9;color:var(--d-ink2)}
.dapp .hl-h-l b{color:var(--d-ink);font-weight:700}
.dapp .hl-h-d{color:var(--d-sub);font-size:13px;margin-inline-start:7px}
.dapp .hl-h-f{display:flex;align-items:center;gap:6px;margin:0;font-size:13px;color:var(--d-sub)}
.dapp .hl-h-f .hl-i{width:16px;height:16px;color:var(--hl-f)}
.dapp .hl-h-today{display:inline-flex;align-items:center;gap:8px;margin:8px auto 0;padding:6px 14px;border-radius:99px;background:var(--d-surf2);
  font-size:13px;color:var(--d-sub);max-width:100%}
.dapp .hl-h-today b{font-weight:600;color:var(--d-ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dapp .hl-h-act{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.dapp .hl-h-act .dbtn{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 18px;border-radius:14px}
.dapp .hl-h-act .dbtn .hl-i{width:18px;height:18px}
.dapp .hl-h-act .dbtn.primary{background:var(--hl-m);border-color:transparent;color:var(--hl-ink)}
:root[data-theme="paper"] .dapp .hl-h-act .dbtn.primary{color:#fff}
.dapp .hl-say{margin:10px auto 0;max-width:420px;font-size:14px;line-height:1.95;color:var(--d-ink2);text-align:center}
.dapp .hl-mood{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--d-surf2);color:var(--d-sub);
  border:1px dashed var(--d-line2);transition:transform .2s var(--d-spring)}
.dapp .hl-mood:active{transform:scale(.9)}
.dapp .hl-mood .hl-i{width:22px;height:22px}
.dapp .hl-mood.set{border-style:solid;border-color:transparent;background:transparent}
.dapp .hl-mood .hb-face-svg{width:40px;height:40px}
.dapp .hl-moodm{padding:4px 12px 14px;display:flex;justify-content:center}
.dapp .hl-faces{justify-content:center}

/* ——— پنهان تا لمس ——— */
.dapp .hl-veil{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;min-height:240px;text-align:center;color:var(--d-sub)}
.dapp .hl-veil b{font-size:16px;color:var(--d-ink2)}
.dapp .hl-veil > span:last-child{display:inline-flex;align-items:center;gap:6px;font-size:13px}
.dapp .hl-veil > span:last-child .hl-i{width:17px;height:17px}
.dapp .hl-veil-art{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;border:10px solid var(--d-line2);color:var(--d-faint)}
.dapp .hl-veil-art .hl-i{width:22px;height:22px}

/* ——— تقویم ——— */
.dapp .hl-cal-h{display:flex;align-items:center;justify-content:space-between;margin:-6px 0 6px}
.dapp .hl-cal-h b{font-size:15px;font-weight:600}
.dapp .hl-cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));row-gap:4px}
.dapp .hl-cal-w{text-align:center;font-size:11.5px;color:var(--d-faint);padding:2px 0 4px}
.dapp .hl-cal-w.fri{color:var(--d-bad);opacity:.75}
/* هر وضعیت یک شکل: پریود = دایره‌ی پر، پریودِ احتمالی = دایره‌ی خط‌چین، امروز = قابِ چهارگوشِ گرد دورِ دایره،
   و زیرِ عدد یک ردیفِ جدا برای نشانه‌های ریز: ثبت‌شده = نقطه‌ی کهربایی، تخمک‌گذاری = لوزی، باروری = حلقه. هیچ‌کدام روی هم نمی‌نشینند. */
.dapp .hl-cd{position:relative;height:56px;padding-top:3px;display:flex;flex-direction:column;align-items:center;gap:3px;
  font-size:14px;font-variant-numeric:tabular-nums;color:var(--d-ink)}
.dapp .hl-cd-n{position:relative;width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;box-sizing:border-box;transition:transform .15s}
.dapp .hl-cd:active .hl-cd-n{transform:scale(.92)}
.dapp .hl-cd.per .hl-cd-n{background:var(--hl-m);color:var(--hl-ink);font-weight:700}
:root[data-theme="paper"] .dapp .hl-cd.per .hl-cd-n{color:#fff}
.dapp .hl-cd.fc .hl-cd-n{border:1.6px dashed var(--hl-m);color:var(--hl-m);font-weight:600}
.dapp .hl-cd.now .hl-cd-n::after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:12px;border:2px solid var(--d-ink);pointer-events:none}
.dapp .hl-cd.now .hl-cd-n{font-weight:700}
.dapp .hl-cd.fut{color:var(--d-sub);cursor:default}
.dapp .hl-cd.fut.fc .hl-cd-n{opacity:.9}
.dapp .hl-cd-m{display:flex;align-items:center;justify-content:center;gap:4px;height:7px;margin-top:4px}
.dapp .mk-log{display:block;width:5px;height:5px;border-radius:50%;background:var(--hl-l)}
.dapp .mk-ov{display:block;width:6px;height:6px;border-radius:1.5px;background:var(--hl-f);transform:rotate(45deg)}
.dapp .mk-fert{display:block;width:6px;height:6px;border-radius:50%;border:1.4px solid var(--hl-f);box-sizing:border-box}
.dapp .hl-cal-k{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:12px;padding-top:10px;border-top:1px solid var(--d-line);font-size:12px;color:var(--d-sub)}
.dapp .hl-cal-k > span{display:inline-flex;align-items:center;gap:6px}
.dapp .hl-cal-k i{flex:none}
.dapp .hl-cal-k .k-per{width:12px;height:12px;border-radius:50%;background:var(--hl-m)}
.dapp .hl-cal-k .k-fc{width:12px;height:12px;border-radius:50%;border:1.5px dashed var(--hl-m);box-sizing:border-box}
.dapp .hl-cal-k .k-now{width:12px;height:12px;border-radius:4px;border:1.8px solid var(--d-ink);box-sizing:border-box}

/* لایه‌ی تقویمِ «برنامه» (mod-plan.js) */
.dapp .pl-mc-dots i.hl-pd{background:var(--hl-m)}
.dapp .pl-mc-dots i.hl-pf{background:none;border:1.2px dashed var(--hl-m);box-sizing:border-box}

/* ——— بینش‌ها ——— */
.dapp .hl-figs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}
.dapp .hl-fig{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;border-radius:14px;background:var(--d-surf2);text-align:center}
.dapp .hl-fig b{font-size:21px;white-space:nowrap;font-weight:700;color:var(--d-ink);font-variant-numeric:tabular-nums}
.dapp .hl-fig span{font-size:11.5px;color:var(--d-sub);line-height:1.5}
.dapp .hl-bars{position:relative;display:flex;align-items:flex-end;gap:6px;height:118px;padding:0 2px;margin:4px 0 12px}
.dapp .hl-bars-band{position:absolute;left:0;right:0;border-top:1px dashed var(--d-line2);border-bottom:1px dashed var(--d-line2);background:var(--d-line);opacity:.6}
.dapp .hl-bar{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px}
.dapp .hl-bar em{font-style:normal;font-size:10.5px;color:var(--d-sub);font-variant-numeric:tabular-nums}
.dapp .hl-bar i{display:block;width:100%;max-width:26px;border-radius:7px 7px 3px 3px;background:var(--hl-f);opacity:.85}
.dapp .hl-bar.out i{opacity:.28}
.dapp .hl-bar:last-child i{opacity:1}
.dapp .hl-pat{border-top:1px solid var(--d-line);padding-top:12px;margin-top:4px}
.dapp .hl-pat h5{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--d-sub)}
.dapp .hl-pat-r{display:flex;align-items:center;gap:11px;padding:6px 0}
.dapp .hl-pat-t{display:flex;flex-direction:column;min-width:0}
.dapp .hl-pat-t b{font-size:14px;font-weight:600}
.dapp .hl-pat-t small{font-size:12.5px;color:var(--d-sub);line-height:1.7}
.dapp .hl-tip{display:flex;align-items:flex-start;gap:9px;margin:10px 0 0;padding:10px 12px;border-radius:14px;background:var(--d-surf2);font-size:13px;line-height:1.85;color:var(--d-ink2)}
.dapp .hl-tip .hl-i{flex:none;width:17px;height:17px;margin-top:3px;color:var(--d-blue)}

/* ——— فهرستِ چرخه‌ها ——— */
.dapp .hl-cyc-c .dcard-h .dlink{display:inline-flex;align-items:center;gap:4px;font-size:13px}
.dapp .hl-cyc-c .dcard-h .dlink .ic{width:15px;height:15px}
.dapp .hl-cys{display:flex;flex-direction:column}
.dapp .hl-cy{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:6px 2px;text-align:start;border-radius:12px}
.dapp .hl-cy + .hl-cy{border-top:1px solid var(--d-line)}
.dapp .hl-cy-d{flex:1;min-width:0;display:flex;flex-direction:column}
.dapp .hl-cy-d b{font-size:14.5px;font-weight:600}
.dapp .hl-cy-d small{font-size:12px;color:var(--d-sub)}
.dapp .hl-cy-n{font-size:14px;color:var(--d-ink2);font-variant-numeric:tabular-nums}
.dapp .hl-cy.out .hl-cy-n{color:var(--d-faint)}

/* ——— معرفی، خاموش، خطِ نرم، «حال» ——— */
.dapp .hl-intro{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 20px 22px}
.dapp .hl-intro h2{margin:6px 0 4px;font-size:20px;font-weight:700}
.dapp .hl-intro .dbtn.primary{margin-top:14px;min-width:150px}
.dapp .hl-art{width:220px;max-width:70vw;height:auto}
.dapp .hl-art-c{fill:var(--ph);opacity:0;animation:hlIn .6s var(--d-ease) forwards;animation-delay:var(--d,0s)}
.dapp .hl-art-i{color:var(--hl-ink);opacity:.9}
:root[data-theme="paper"] .dapp .hl-art-i{color:#fff}
.dapp .hl-art-arc{stroke:var(--d-line2);stroke-width:2;stroke-dasharray:3 6;stroke-linecap:round}
@keyframes hlIn{from{opacity:0;transform:translateY(6px)}to{opacity:.92;transform:none}}
@media (prefers-reduced-motion:reduce){.dapp .hl-art-c{animation:none;opacity:.92}}
.dapp .hl-priv{display:flex;align-items:flex-start;justify-content:center;gap:7px;margin:6px 0 0;font-size:12.5px;line-height:1.8;color:var(--d-sub);max-width:420px}
.dapp .hl-priv .hl-i{flex:none;width:15px;height:15px;margin-top:4px;color:var(--d-ok)}
.dapp .hl-offc-r{display:flex;align-items:center;gap:12px}
.dapp .hl-offc-r > span:nth-child(2){flex:1;display:flex;flex-direction:column;min-width:0}
.dapp .hl-offc-r small{font-size:12.5px;color:var(--d-sub)}
.dapp .hl-soft{display:flex;align-items:center;gap:12px;width:100%;text-align:start;padding:14px 16px}
.dapp .hl-soft > span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.dapp .hl-soft small{font-size:12.5px;color:var(--d-sub);line-height:1.7}
.dapp .hl-soft > .ic{width:18px;height:18px;color:var(--d-faint)}
.dapp[dir="ltr"] .hl-soft > .ic{transform:scaleX(-1)}
.dapp .hl-more{margin-top:2px}
.dapp .hl-link{width:100%;text-align:start}
.dapp .hl-link.danger .dfrow-l{color:var(--d-bad)}
.dapp .hl-face{display:inline-grid;width:26px;height:26px;flex:none}
.dapp .hl-face svg{width:100%;height:100%}

/* ——— صفحه‌های تمام (روز، پریود، آغاز، تنظیمات) ——— */
.dapp .hl-page .hbf-b{padding-top:6px}
.dapp .hl-form{display:flex;flex-direction:column;gap:16px;max-width:560px;margin:0 auto;width:100%}
.dapp .hl-stamp{min-width:36px;font-size:12px;color:var(--d-ok);text-align:end}
.dapp .hl-notew{display:flex}
.dapp .hl-day{display:flex;flex-direction:column;gap:20px;max-width:560px;margin:0 auto;width:100%;padding-bottom:18px}
.dapp .hl-dtop{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:22px;position:relative;overflow:hidden;background:var(--d-surf)}
.dapp .hl-dtop::before{content:"";position:absolute;inset:0;background:var(--ph);opacity:.09;pointer-events:none}
.dapp .hl-dsay{position:relative;display:flex;align-items:flex-start;gap:12px}
.dapp .hl-dsay p{margin:0;flex:1;font-size:15.5px;line-height:1.95;color:var(--d-ink)}
.dapp .hl-dper{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:46px;padding:6px 12px;border-radius:14px;
  background:var(--d-surf2);color:var(--d-ink2);text-align:start;font-size:14px}
.dapp .hl-dper > span{flex:1}
.dapp .hl-dper .hl-i{width:18px;height:18px;color:var(--hl-m)}
.dapp .hl-dper.on{background:transparent;box-shadow:inset 0 0 0 1.5px var(--hl-m)}
.dapp .hl-dper.on b{color:var(--d-ink)}
.dapp .hl-dper .hl-dper-go{color:var(--d-faint)}
.dapp .hl-dper .dbtn.sm{background:var(--hl-m);color:var(--hl-ink);border-color:transparent}
:root[data-theme="paper"] .dapp .hl-dper .dbtn.sm{color:#fff}
.dapp .hl-dsec{display:flex;flex-direction:column;gap:10px}
.dapp .hl-dsec > h3{margin:0;padding-inline:4px;font-size:13px;font-weight:600;color:var(--d-sub)}
.dapp .hl-dmood .hb-faces{justify-content:space-between;flex-wrap:nowrap;gap:2px}
.dapp .hl-dmood .hb-faces.big .hb-face{flex:1;min-width:0}
/* خونریزی: نوارِ پنج‌تایی */
.dapp .hl-seg{display:flex;gap:4px;padding:4px;border-radius:18px;background:var(--d-surf2)}
.dapp .hl-seg-b{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:9px 2px 7px;border-radius:14px;
  color:var(--d-sub);transition:background .15s,color .15s;position:relative}
.dapp .hl-seg-b small{font-size:11.5px;white-space:nowrap}
.dapp .hl-seg-ic{height:20px;display:grid;place-items:center;color:var(--hl-m)}
.dapp .hl-seg-b.f0 .hl-seg-ic{color:var(--d-faint)}
.dapp .hl-seg-ic .hl-i{width:18px;height:18px}
.dapp .hl-drops{display:flex;gap:0}
.dapp .hl-drops .hl-i{width:15px;height:15px;margin-inline:-1.5px}
.dapp .hl-seg-b.on{background:var(--d-surf);color:var(--d-ink);box-shadow:0 1px 0 rgba(255,255,255,.03) inset,0 4px 12px -6px rgba(0,0,0,.5)}
:root[data-theme="paper"] .dapp .hl-seg-b.on{box-shadow:0 2px 8px -3px rgba(60,45,20,.3)}
.dapp .hl-seg-b.on small{font-weight:600}
.dapp .hl-seg-b.sug::after{content:"";position:absolute;inset:2px;border-radius:12px;border:1.4px dashed var(--d-line2);pointer-events:none}
/* درد: لغزنده‌ی همین‌جا */
.dapp .hl-pain.inl{align-items:stretch;padding:14px 16px 10px;border-radius:18px;background:var(--d-surf2);gap:12px}
.dapp .hl-pain-h{display:flex;align-items:baseline;gap:10px}
.dapp .hl-pain.inl .hl-pain-v{font-size:30px}
.dapp .hl-pain.inl .hl-pain-w{margin:0;flex:1}
.dapp .hl-pain-h .dlink{font-size:13px}
.dapp .hl-pain.inl .hl-range{background-color:var(--d-line2)}
.dapp .hl-range.unset::-webkit-slider-thumb{border-style:dashed;opacity:.7}
.dapp .hl-range.unset::-moz-range-thumb{border-style:dashed;opacity:.7}
/* علائم: چند ردیفِ تیک‌دار */
.dapp .hl-chks{display:flex;flex-direction:column;border-radius:18px;background:var(--d-surf2);padding:2px 0}
.dapp .hl-chk{position:relative;display:flex;align-items:center;gap:10px;min-height:48px;padding:6px 16px;text-align:start;font-size:14.5px;color:var(--d-ink)}
.dapp .hl-chk + .hl-chk::before{content:"";position:absolute;top:0;left:16px;right:16px;height:1px;background:var(--d-line)}
.dapp .hl-chk > span{flex:1}
.dapp .hl-chk-b{flex:none;width:24px;height:24px;border-radius:50%;border:1.6px solid var(--d-line2);display:grid;place-items:center;transition:background .15s,border-color .15s}
.dapp .hl-chk-b .hl-i{width:15px;height:15px}
.dapp .hl-chk.on .hl-chk-b{background:var(--hl-l);border-color:transparent;color:var(--hl-ink)}
:root[data-theme="paper"] .dapp .hl-chk.on .hl-chk-b{color:#fff}
.dapp .hl-chk.more{color:var(--d-acc);font-weight:600;font-size:14px}
.dapp .hl-note{width:100%;min-height:112px;padding:12px 14px;border-radius:18px;border:1px solid transparent;background:var(--d-surf2);
  color:var(--d-ink);font:inherit;font-size:15px;line-height:1.9;resize:none}
.dapp .hl-note:focus{outline:none;border-color:var(--d-line2)}
.dapp .hl-foot{display:flex;flex-direction:column;gap:6px;max-width:560px;margin:0 auto;width:100%}
.dapp .hl-foot .danger{color:var(--d-bad)}
.dapp .hl-foot .dbtn .hl-i{width:17px;height:17px}

/* منوی شدت، درد و چرخ */
.dapp .hl-flow{display:inline-flex !important;gap:0;color:var(--hl-m)}
.dapp .hl-flow .hl-i{width:13px !important;height:13px !important}
.dapp .hl-flow.f0{color:var(--d-faint)}
.dapp .hl-pain{display:flex;flex-direction:column;align-items:center;gap:10px;padding:8px 18px 4px}
.dapp .hl-pain-v{font-size:44px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.dapp .hl-range{width:100%;-webkit-appearance:none;appearance:none;height:8px;border-radius:99px;background:var(--d-surf2);outline:none;
  background-image:linear-gradient(90deg,var(--hl-o),var(--hl-l),var(--hl-m));background-size:var(--p,0%) 100%;background-repeat:no-repeat}
.dapp[dir="rtl"] .hl-range{background-position:right center}
.dapp .hl-range::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:var(--d-surf);border:2px solid var(--d-ink);box-shadow:0 2px 8px rgba(0,0,0,.3)}
.dapp .hl-range::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--d-surf);border:2px solid var(--d-ink)}
.dapp .hl-pain-k{display:flex;justify-content:space-between;width:100%;font-size:12px;color:var(--d-sub)}
.dapp .hl-pain-w{font-size:13px;color:var(--d-sub);min-height:20px;margin-top:-4px}
.dapp .hl-wheel .hb-wh-c{width:140px}

/* انتخابگرِ روز */
.dapp .hl-dpm{padding:4px 12px 10px}
.dapp .hl-dp{width:100%;max-width:360px;margin:0 auto}
.dapp .hl-dp-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.dapp .hl-dp-h b{font-size:15px;font-weight:600}
.dapp .hl-dp-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}
.dapp .hl-dp-w{text-align:center;font-size:11.5px;color:var(--d-faint);padding:4px 0}
.dapp .hl-dp-d{height:40px;border-radius:12px;font-size:14px;font-variant-numeric:tabular-nums;color:var(--d-ink)}
.dapp .hl-dp-d:hover{background:var(--d-surf2)}
.dapp .hl-dp-d.per{color:var(--hl-m);font-weight:700}
.dapp .hl-dp-d.now{box-shadow:inset 0 0 0 1.5px var(--d-line2)}
.dapp .hl-dp-d.on{background:var(--d-acc);color:var(--d-acc-ink);font-weight:700}
.dapp .hl-dp-d[disabled]{opacity:.25;pointer-events:none}

/* آغاز */
.dapp .hl-ob{display:flex;flex-direction:column;align-items:stretch;gap:14px;max-width:460px;margin:0 auto;padding-top:8px}
.dapp .hl-ob h2{margin:6px 0 4px;text-align:center;font-size:21px;font-weight:700;line-height:1.6}
.dapp .hl-ob-v{margin:0;text-align:center;font-size:15px;font-weight:600;color:var(--d-ink2)}
.dapp .hl-ob-skip{align-self:center;font-size:13.5px}
.dapp .hl-ob .hl-priv{align-self:center}
.dapp .hl-ob-opts{display:flex;flex-direction:column;gap:10px}
.dapp .hl-opt{display:flex;align-items:center;gap:10px;width:100%;min-height:64px;padding:10px 16px;border-radius:18px;background:var(--d-surf2);
  border:1.5px solid transparent;text-align:start;transition:border-color .15s}
.dapp .hl-opt > span{flex:1;display:flex;flex-direction:column}
.dapp .hl-opt b{font-size:15.5px;font-weight:600}
.dapp .hl-opt small{font-size:12.5px;color:var(--d-sub)}
.dapp .hl-opt.on{border-color:var(--d-acc)}
.dapp .hl-ck{width:20px !important;height:20px !important;color:var(--d-acc)}

/* خلاصه برای پزشک */
.dapp .hl-doc{max-width:620px;margin:0 auto;padding:4px 0 20px;color:var(--d-ink)}
.dapp .hl-doc h1{font-size:22px;font-weight:700;margin:4px 0 2px}
.dapp .hl-doc h2{font-size:15px;font-weight:700;margin:18px 0 8px}
.dapp .hl-doc section{border-top:1px solid var(--d-line);padding-top:6px;margin-top:10px}
.dapp .hl-doc-kv{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:14px}
.dapp .hl-doc-kv span{color:var(--d-sub)}
.dapp .hl-doc-t{width:100%;border-collapse:collapse;font-size:13.5px;font-variant-numeric:tabular-nums}
.dapp .hl-doc-t th{text-align:start;font-weight:600;color:var(--d-sub);padding:6px 4px;border-bottom:1px solid var(--d-line2)}
.dapp .hl-doc-t td{padding:7px 4px;border-bottom:1px solid var(--d-line)}
@media print{
  body *{visibility:hidden !important}
  .dapp .hl-docp,.dapp .hl-docp *{visibility:visible !important}
  .dapp .hl-docp{position:absolute !important;inset:0 !important;background:#fff !important}
  .dapp .hl-docp .hbf-h,.dapp .hl-docp .hbf-f{display:none !important}
  .dapp .hl-docp .hbf-in{max-width:none;border:0;box-shadow:none;background:#fff}
  .dapp .hl-docp .hbf-b{overflow:visible}
  .dapp .hl-doc{color:#111;--d-sub:#555;--d-line:#ddd;--d-line2:#bbb}
}

/* ——— کارتِ «عادت ماهانه» در آراست (دورِ هفتم، طراحی؛ mod-health.js ← lifeCard) ———
   مثلِ کارت‌های دیگرِ آراست: تیترِ بخش با دیسکِ آیکن (hb4c-sh در habits.css)، حلقه‌ی کوچکِ همین چرخه، و دکمه‌ی گرد در سمتِ چپ. */
.dapp .hl-cy{position:relative;display:flex;align-items:center;gap:12px;padding:14px 16px;overflow:hidden;--hc:var(--ph,var(--hl-m))}
.dapp .hl-cy::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;background:radial-gradient(70% 130% at 92% 0,var(--ph,var(--hl-m)),transparent 70%)}
.dapp .hl-cy > *{position:relative}
.dapp .hl-cy-main{flex:1;min-width:0;display:flex;align-items:center;gap:14px;text-align:start;color:inherit;background:none;border:0;padding:0}
.dapp .hl-cy-ring{position:relative;flex:none;width:92px;height:92px}
.dapp .hl-cy-ring .hl-ring{display:block;width:100%;height:100%}
.dapp .hl-cy-ring .hl-r-ic,.dapp .hl-cy-ring .hl-r-tick{display:none}
.dapp .hl-cy-n{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}
.dapp .hl-cy-n b{font-size:27px;font-weight:700;line-height:1.1;color:var(--d-ink);font-variant-numeric:tabular-nums}
.dapp .hl-cy-n small{font-size:10.5px;line-height:1.2;color:var(--d-sub)}
.dapp .hl-cy-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.dapp .hl-cy-t b{font-size:16px;font-weight:600;line-height:1.55}
.dapp .hl-cy-t b em{font-style:normal;color:var(--ph)}
.dapp .hl-cy-t small{font-size:12.5px;line-height:1.8;color:var(--d-sub)}
.dapp .hl-cy-t small .hl-est{height:19px;margin-inline-start:6px;font-size:10.5px}
.dapp .hl-cy .hl-cy-go{flex:none;background:var(--hl-m);border-color:transparent;color:var(--hl-ink);box-shadow:0 8px 20px -8px var(--hl-m)}
.dapp .hl-cy .hl-cy-go .hl-i{width:22px;height:22px}
.dapp .hl-cy.ph-x{--ph:var(--hl-m)}
.dapp .hl-cy.off .hl-cy-go{background:var(--d-surf2);color:var(--d-ink2);box-shadow:none;border:1px solid var(--d-line2)}
.dapp .hb4c-csec .hl-veil,.dapp .hb4c-csec .hl-soft{margin:0}

/* ——— دورِ هشتم: کارتِ آراست بی‌تیتر، حلقه‌ی بزرگ‌تر و نوارِ یازده‌روزه ——— */
.dapp .hl-lifec{flex-direction:column;align-items:stretch;gap:0;padding:16px 16px 14px}
.dapp .hl-cy-top{display:flex;align-items:center;gap:12px}
.dapp .hl-lifec .hl-cy-ring{width:96px;height:96px}
.dapp .hl-lifec .hl-cy-n b{font-size:28px}
.dapp .hl-lifec .hl-cy-n small{font-size:11px}
.dapp .hl-lifec .hl-cy-go{width:54px;height:54px}
.dapp .hl-lifec .hl-cy-go .hl-i{width:22px;height:22px}
.dapp .hl-cy-t b.hl-cy-h{display:flex;flex-direction:column;gap:1px;line-height:1.4}
.dapp .hl-cy-t b.hl-cy-h em{font-size:18px;font-weight:700}
.dapp .hl-cy-t b.hl-cy-h span{font-size:13.5px;font-weight:500;color:var(--d-ink2)}
.dapp .hl-lifec .hl-cy-t small{font-size:12.5px;line-height:1.7}
.dapp .hl-cstrip{position:relative;margin-top:14px;display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:2px;padding-top:13px;border-top:1px solid var(--d-line)}
.dapp .hl-cs{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0}
.dapp .hl-cs u{text-decoration:none;font-size:10.5px;line-height:1;color:var(--d-faint)}
.dapp .hl-cs b{position:relative;display:grid;place-items:center;width:28px;height:28px;box-sizing:border-box;border-radius:50%;font-size:12.5px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;color:var(--d-ink2)}
.dapp .hl-cs.cs-past b{font-weight:500;color:var(--d-faint)}
.dapp .hl-cs.cs-per b{background:var(--hl-m);color:var(--hl-ink);font-weight:700}
.dapp .hl-cs.cs-fc b{border:1.6px dashed var(--hl-m);color:var(--hl-m)}
.dapp .hl-cs.cs-now b{font-weight:700;color:var(--d-ink);box-shadow:0 0 0 2px var(--d-surf),0 0 0 3.6px var(--d-ink)}
.dapp .hl-cs.cs-now.cs-per b{color:var(--hl-ink)}
.dapp .hl-cs-ph{display:block;width:100%;height:3px;border-radius:2px;background:var(--ph);opacity:.5}
.dapp .hl-cs.cs-now .hl-cs-ph{opacity:1}
.dapp .hl-cs.cs-past .hl-cs-ph{opacity:.28}
.dapp .hl-cs.cs-fert::after,.dapp .hl-cs.cs-ov::after{content:"";position:absolute;bottom:-10px;left:50%;margin-left:-3px;width:6px;height:6px;box-sizing:border-box}
.dapp .hl-cs.cs-fert::after{border-radius:50%;border:1.4px solid var(--hl-f)}
.dapp .hl-cs.cs-ov::after{border-radius:1.5px;background:var(--hl-f);transform:rotate(45deg)}
:root[data-theme="paper"] .dapp .hl-cs.cs-per b,:root[data-theme="paper"] .dapp .hl-cs.cs-now.cs-per b{color:#fff}
@media (max-width:359px){.dapp .hl-cs b{width:24px;height:24px;font-size:11.5px}.dapp .hl-lifec .hl-cy-ring{width:84px;height:84px}}
