/* ============================================================
   GLASS BENTO — visual redesign overlay (v1.56)
   Loaded AFTER style.css so these rules win by source order.
   Remove the <link> in index.html to fully revert.
   ============================================================ */

/* ---- 1. Tokens: contrast lift (a11y audit) + glass palette ---- */
:root{
  --text-2:rgba(235,235,245,.68);
  --text-3:rgba(235,235,245,.50);
  --text-4:rgba(235,235,245,.34);
  --glass-bg:rgba(30,30,40,.55);
  --glass-bg-2:rgba(40,40,52,.50);
  --glass-brd:rgba(255,255,255,.17);
  --glass-hl:rgba(255,255,255,.13);
  --glass-shadow:0 10px 30px rgba(0,0,0,.34);
  --glass-blur:blur(32px) saturate(185%);
}
:root[data-theme=light]{
  --text-2:rgba(60,60,67,.76);
  --text-3:rgba(60,60,67,.56);
  --text-4:rgba(60,60,67,.40);
  --glass-bg:rgba(255,255,255,.58);
  --glass-bg-2:rgba(255,255,255,.46);
  --glass-brd:rgba(255,255,255,.7);
  --glass-hl:rgba(255,255,255,.9);
  --glass-shadow:0 10px 28px rgba(60,60,90,.13);
  --glass-blur:blur(30px) saturate(172%);
}

/* ---- 2. Ambient aurora backdrop (on the viewport canvas = fixed) ---- */
html{
  background:
    radial-gradient(58% 44% at 16% 6%, rgba(94,92,230,.34), transparent 60%),
    radial-gradient(52% 40% at 90% 2%, rgba(64,203,224,.24), transparent 60%),
    radial-gradient(75% 55% at 50% 104%, rgba(191,90,242,.20), transparent 64%),
    #07070C;
  background-attachment:fixed;
}
:root[data-theme=light] html{
  background:
    radial-gradient(58% 44% at 16% 6%, rgba(88,86,214,.18), transparent 60%),
    radial-gradient(52% 40% at 90% 2%, rgba(48,176,199,.16), transparent 60%),
    radial-gradient(75% 55% at 50% 104%, rgba(175,82,222,.12), transparent 64%),
    #ECECF2;
  background-attachment:fixed;
}
body{background:transparent}

/* sticky header glass over the gradient */
.app-header{background:rgba(16,16,22,.60);border-bottom:1px solid var(--glass-brd)}
:root[data-theme=light] .app-header{background:rgba(255,255,255,.60);border-bottom:1px solid var(--glass-brd)}

/* ---- 3. GLOBAL glass for standalone panels / cards / tiles ----
   (rows, swipe layers, dots and cutouts are intentionally excluded
    below so the swipe mechanic and opaque-ring effects keep working) */
.day-plate,.rings-card,.notes-input-wrap,.year-grid-wrap,.card-group,
.bs-tech-card,.bs-cycles-wrap,.exercise-card,.wf-stat,.routine-hero,
.routine-card,.routine-add-btn,.routine-empty,.chall-card,.chall-template-card,
.cc-stat,.stat-timeline,.stat-week-chart,.stat-month-cal,.stat-mod,.stats-empty,
.about-block,.mood-sticker,.mood-summary,.mood-top-list,.mood-timeline,
.mood-week-day,.mood-month-cal,.insight-card,.history-empty,.tt-task-card,
.tt-recent-list,.tt-stats-empty,.tt-pie-wrap,.tt-legend,.tt-week-bars,
.tt-month-list,.skill-card,.sk-stat,.sk-entry-list,.skills-empty,.eh-day,
.tw-list,.emo-card,.df-card,.ds-card,.diary-summary-empty,.diary-graph,
.pg-edit-preview,.pg-ex-row,.pg-ex-empty,.mood5-btn,.m5-sum,.diary-card,
.th-card,.now-card,.now-card.dash,.stat-hero,.day-card,.big-mod,.recap-card,
.pp-recap,.stats-notice,.hp-card,.stat-hours-card,.ins-hint,.ins-link,
.year-stats .ys,.wf-stat,.cc-stat{
  background:var(--glass-bg)!important;
  border:1px solid var(--glass-brd);
  box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-hl);
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
}

/* ---- 4. Hero greeting (slightly tighter) ---- */
.hero-greeting{letter-spacing:-.03em}

/* ---- 5. Home: today-summary glass + bento tiles ---- */
#view-menu .today-summary{
  margin:8px 16px 16px;padding:16px;border-radius:24px;
  background:var(--glass-bg);
  border:1px solid var(--glass-brd);
  box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-hl);
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
}
#view-menu .hero{padding:24px 22px 8px}
#view-menu .hero-greeting{font-size:33px}
#view-menu .section-h{padding:16px 24px 10px;color:var(--text-2);font-size:11px;letter-spacing:.10em}
#view-menu .section-h.first{padding-top:8px}
#view-menu .modules-wrap{margin:0 16px}
#view-menu .modules-list{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;
  background:transparent;overflow:visible;box-shadow:none;border-radius:0;
}
#view-menu .module-row{
  flex-direction:column;align-items:flex-start;justify-content:flex-start;
  gap:12px;padding:16px;min-height:132px;width:100%;border-radius:24px;
  background:var(--glass-bg);
  border:1px solid var(--glass-brd);
  box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-hl);
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
}
#view-menu .module-row:active{transform:scale(.97)}
#view-menu .module-icon{width:48px;height:48px;border-radius:15px;
  box-shadow:0 6px 16px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.22)}
#view-menu .module-text{width:100%}
#view-menu .module-name{font-size:16px;font-weight:600;letter-spacing:-.01em}
#view-menu .module-hint{font-size:12px;white-space:normal;line-height:1.3;color:var(--text-3)}
#view-menu .module-chevron{position:absolute;top:18px;right:18px;font-size:16px;color:var(--text-3)}

/* ---- 6. Keep rows / swipe layers / cutouts OPAQUE ----
   (translucent here would reveal the delete button behind a swipe row,
    or break the timeline-dot / indicator "punched hole" effect) */
.sw-content,.swipe-row .swipe-content,.swipe-content{background:var(--bg-card)!important}
/* match inner radii to the rounded swipe wrap so the red delete button
   can't fringe through the anti-aliased corner */
.sw-wrap .sw-content,.sw-wrap .sw-del-btn{border-radius:inherit}
.tw-row,.mood-entry,.m5-entry,.eat-day-row,.note-card,.diary-day-card,.eat-slot{
  -webkit-backdrop-filter:none;backdrop-filter:none;
}

/* ---- 7. Modals / sheets: keep opaque, refine depth ---- */
.modal-box{border:1px solid var(--glass-brd)}

/* ---- 8. Fallback: webviews without backdrop-filter -> solid cards ---- */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  :root{--glass-bg:rgba(24,24,31,.95);--glass-bg-2:rgba(30,30,40,.96);}
  :root[data-theme=light]{--glass-bg:rgba(255,255,255,.97);--glass-bg-2:#fff;}
  .app-header{background:rgba(14,14,20,.97)}
  :root[data-theme=light] .app-header{background:rgba(255,255,255,.97)}
}

/* ============================================================
   v1.57 polish — richer glass, accent-tinted tiles, press feel
   ============================================================ */

/* top-lit glass: subtle vertical gradient + deeper layered shadow */
:root{
  --glass-bg:linear-gradient(180deg,rgba(46,46,58,.52),rgba(23,23,31,.56));
  --glass-shadow:0 14px 36px rgba(0,0,0,.38),0 2px 8px rgba(0,0,0,.22);
  --glass-hl:rgba(255,255,255,.15);
}
:root[data-theme=light]{
  --glass-bg:linear-gradient(180deg,rgba(255,255,255,.70),rgba(255,255,255,.54));
  --glass-shadow:0 14px 32px rgba(60,60,90,.14),0 2px 6px rgba(60,60,90,.08);
}

/* gentle press feedback on tappable cards */
#view-menu .module-row,.skill-card,.bs-tech-card,.tt-task-card,.emo-card,
.chall-card,.chall-template-card,.th-card,.routine-card,.eat-slot,.mood5-btn,
.big-mod,.recap-card,.ins-link,.mood-sticker,.hp-card{
  transition:transform .15s var(--ease-spring),filter .16s,box-shadow .18s!important;
}
#view-menu .module-row:active,.skill-card:active,.bs-tech-card:active,
.tt-task-card:active,.emo-card:active,.chall-card:active,.th-card:active,
.routine-card:active,.eat-slot:active,.mood5-btn:active,.big-mod:active,
.ins-link:active,.mood-sticker:active,.hp-card:active{
  transform:scale(.975);filter:brightness(1.07);
}

/* per-module accent glow on home bento tiles (color identity) */
#view-menu .module-row[data-go="skills"]{background:radial-gradient(120% 95% at 0% 0%,rgba(94,92,230,.22),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="focus"],#view-menu .module-row[data-go="time-hub"]{background:radial-gradient(120% 95% at 0% 0%,rgba(64,203,224,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="mood"]{background:radial-gradient(120% 95% at 0% 0%,rgba(255,55,95,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="breathe"]{background:radial-gradient(120% 95% at 0% 0%,rgba(100,210,255,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="diary"]{background:radial-gradient(120% 95% at 0% 0%,rgba(191,90,242,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="eat"]{background:radial-gradient(120% 95% at 0% 0%,rgba(255,159,10,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="workout"]{background:radial-gradient(120% 95% at 0% 0%,rgba(48,209,88,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="challenge"]{background:radial-gradient(120% 95% at 0% 0%,rgba(255,159,10,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="stats"]{background:radial-gradient(120% 95% at 0% 0%,rgba(10,132,255,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="routine"]{background:radial-gradient(120% 95% at 0% 0%,rgba(255,214,10,.18),transparent 56%),var(--glass-bg)}

/* richer gradient icon tiles: crisper inner light + lift */
#view-menu .module-icon{box-shadow:0 8px 20px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.28),inset 0 -2px 6px rgba(0,0,0,.18)}

/* segmented control: glassier track */
.seg{background:var(--glass-bg)!important;border:1px solid var(--glass-brd);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}

/* hero greeting a touch larger & tighter for presence */
#view-menu .hero-greeting{font-size:34px;letter-spacing:-.035em}

/* ============================================================
   v1.60 — premium buttons + glassy inputs
   ============================================================ */
.btn{border-radius:16px;transition:transform .15s var(--ease-spring),filter .16s,box-shadow .2s,opacity .12s}
.btn:active{opacity:1;transform:scale(.97);filter:brightness(1.07)}
.btn-primary{
  background:linear-gradient(135deg,#0A84FF,#6E5CF0)!important;color:#fff;
  box-shadow:0 8px 22px rgba(10,132,255,.34),inset 0 1px 0 rgba(255,255,255,.28);
}
.btn-green{
  background:linear-gradient(135deg,#30D158,#34C7B5)!important;color:#fff;
  box-shadow:0 8px 22px rgba(48,209,88,.30),inset 0 1px 0 rgba(255,255,255,.28);
}
.btn-red-solid{
  background:linear-gradient(135deg,#FF5247,#FF375F)!important;color:#fff;
  box-shadow:0 8px 22px rgba(255,69,58,.28),inset 0 1px 0 rgba(255,255,255,.22);
}
.btn-neutral{
  background:var(--glass-bg)!important;border:1px solid var(--glass-brd);color:var(--text);
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
}
.btn-red{background:rgba(255,69,58,.16)!important;color:var(--red)}
.btn-tinted{background:rgba(10,132,255,.16)!important;color:var(--blue)}

/* glassy text inputs with a clear focus ring */
.focus-task-input,.focus-finish-desc,.mtg-input,.pg-name-input,
.search-box input,.dlg-input,.modal-box input,.modal-box textarea{
  background:var(--glass-bg)!important;border:1px solid var(--glass-brd)!important;
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border-radius:14px;transition:border-color .15s,box-shadow .15s;
}
.focus-task-input:focus,.focus-finish-desc:focus,.mtg-input:focus,.pg-name-input:focus,
.search-box input:focus,.dlg-input:focus,.modal-box input:focus,.modal-box textarea:focus{
  border-color:rgba(10,132,255,.55)!important;box-shadow:0 0 0 3px rgba(10,132,255,.20)!important;outline:none;
}

/* ============================================================
   v1.61 — splash screen on-brand (aurora + glowing logo badge)
   ============================================================ */
.splash-screen{
  background:
    radial-gradient(60% 45% at 18% 12%,rgba(94,92,230,.42),transparent 60%),
    radial-gradient(55% 42% at 85% 8%,rgba(64,203,224,.30),transparent 60%),
    radial-gradient(70% 50% at 50% 100%,rgba(191,90,242,.28),transparent 64%),
    #07070C !important;
}
:root[data-theme=light] .splash-screen{
  background:
    radial-gradient(60% 45% at 18% 12%,rgba(88,86,214,.20),transparent 60%),
    radial-gradient(55% 42% at 85% 8%,rgba(48,176,199,.18),transparent 60%),
    radial-gradient(70% 50% at 50% 100%,rgba(175,82,222,.14),transparent 64%),
    #ECECF2 !important;
}
.splash-logo{
  width:104px;height:104px;font-size:56px;line-height:1;
  background:linear-gradient(135deg,#0A84FF,#6E5CF0)!important;
  -webkit-background-clip:border-box!important;background-clip:border-box!important;
  -webkit-text-fill-color:#fff;color:#fff;
  border-radius:28px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 18px 54px rgba(94,92,230,.55),inset 0 2px 0 rgba(255,255,255,.32)!important;
}
.splash-name{color:var(--text-2);letter-spacing:.22em}

/* ============================================================
   v1.62 — active-session readability
   ============================================================ */
/* brighter, crisper focus timer (was a murky dark-blue gradient) */
#runTime{
  background:linear-gradient(180deg,#ffffff,#cfe0ff)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  text-shadow:0 2px 20px rgba(120,150,255,.25);
}

/* ============================================================
   v1.63 — light-theme accent-as-text contrast (a11y audit)
   Light green/orange/yellow text was ~2.2:1 on white; darken to ~5:1.
   Dark theme is untouched (these only apply under [data-theme=light]).
   ============================================================ */
:root[data-theme=light] .qs-total,
:root[data-theme=light] .sync-delta.up,
:root[data-theme=light] .mt-delta.up{color:#197A33!important}
:root[data-theme=light] .sync-delta.down,
:root[data-theme=light] .mt-delta.down{color:#C01B12!important}
:root[data-theme=light] .mt-delta.zone{color:#0061D8!important}
:root[data-theme=light] .mt-delta.rec{color:#9A5200!important}
:root[data-theme=light] .ts-chip[data-c="green"]{color:#197A33!important;background:rgba(48,209,88,.18)}
:root[data-theme=light] .ts-chip[data-c="orange"]{color:#9A5200!important;background:rgba(255,159,10,.20)}
:root[data-theme=light] .ts-chip[data-c="blue"]{color:#0061D8!important;background:rgba(10,132,255,.16)}
:root[data-theme=light] .cta{color:#8A6D00!important}

/* ============================================================
   v1.66 — home "next action" coaching card
   ============================================================ */
#nextAction{margin:0 16px 14px}
#nextAction:empty{display:none}
.next-action{
  display:flex;align-items:center;gap:13px;width:100%;text-align:left;
  padding:14px 16px;border-radius:22px;
  background:radial-gradient(130% 130% at 0% 0%,var(--na-c),transparent 62%),var(--glass-bg);
  border:1px solid var(--glass-brd);
  box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  transition:transform .15s var(--ease-spring),filter .16s;
}
.next-action:active{transform:scale(.98);filter:brightness(1.07)}
.na-em{font-size:23px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:var(--na-c);flex-shrink:0}
.na-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.na-title{font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.01em}
.na-sub{font-size:12px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.na-arr{font-size:18px;color:var(--text-3);flex-shrink:0}

/* ============================================================
   v1.69 — "day closed" moment in today-summary
   ============================================================ */
.day-done{
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:14px;border-radius:20px;
  background:linear-gradient(135deg,rgba(48,209,88,.18),rgba(64,203,224,.12));
  border:1px solid rgba(48,209,88,.30);color:#5BE584;font-weight:600;font-size:15px;letter-spacing:-.01em;
}
.day-done .dd-mark{font-size:16px}
:root[data-theme=light] .day-done{color:#177A30;background:linear-gradient(135deg,rgba(48,209,88,.16),rgba(64,203,224,.10));border-color:rgba(48,209,88,.40)}
.day-done.pop{animation:ddPop .5s var(--ease-spring)}
@keyframes ddPop{0%{transform:scale(.92);opacity:0}60%{transform:scale(1.04)}100%{transform:scale(1);opacity:1}}

/* ============================================================
   v1.70 — undo toast (soft-delete recovery)
   ============================================================ */
.toast.toast-act{display:flex;align-items:center;gap:14px;white-space:nowrap;padding-right:8px}
.toast .toast-undo{
  background:rgba(94,140,255,.30);color:#cfe0ff;border:none;border-radius:100px;
  padding:6px 15px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;
  -webkit-tap-highlight-color:transparent;flex-shrink:0;transition:transform .12s,background .15s;
}
.toast .toast-undo:active{transform:scale(.94);background:rgba(94,140,255,.45)}

/* ============================================================
   MIDNIGHT GOLD — warm luxe color theme (v1.73, user-selected)
   Recolors the cool aurora/accents to warm gold / amber / rose.
   ============================================================ */
:root{
  --glass-bg:linear-gradient(180deg,rgba(50,42,30,.42),rgba(28,22,14,.46));
  --glass-hl:rgba(255,243,220,.32);
  --glass-shadow:0 14px 36px rgba(0,0,0,.42),0 2px 8px rgba(20,12,0,.30);
}
:root[data-theme=light]{
  --glass-bg:linear-gradient(180deg,rgba(255,252,244,.58),rgba(255,249,238,.46));
  --glass-hl:rgba(255,255,255,.92);
  --glass-shadow:0 14px 34px rgba(120,90,40,.16),0 2px 6px rgba(120,90,40,.10);
}
html{
  background:
    radial-gradient(60% 46% at 14% 4%,rgba(245,158,11,.34),transparent 60%),
    radial-gradient(54% 42% at 92% 2%,rgba(251,113,133,.28),transparent 60%),
    radial-gradient(78% 56% at 50% 106%,rgba(250,204,21,.20),transparent 64%),
    #0c0a07 !important;
  background-attachment:fixed;
}
:root[data-theme=light]{
  background:
    radial-gradient(62% 48% at 12% 2%,rgba(245,158,11,.20),transparent 60%),
    radial-gradient(56% 44% at 94% 1%,rgba(251,113,133,.16),transparent 60%),
    radial-gradient(82% 58% at 50% 108%,rgba(250,204,21,.16),transparent 64%),
    #FAF6EE !important;
  background-attachment:fixed;
}
.app-header{background:rgba(22,16,9,.62)!important}
:root[data-theme=light] .app-header{background:rgba(255,252,244,.64)!important}
.hero-greeting{background:linear-gradient(100deg,#fff 0%,#FBBF24 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important}
#runTime{background:linear-gradient(180deg,#fff,#FBE6B0)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;text-shadow:0 2px 22px rgba(245,180,80,.28)}
.splash-screen{background:radial-gradient(60% 45% at 18% 12%,rgba(245,158,11,.40),transparent 60%),radial-gradient(55% 42% at 85% 8%,rgba(251,113,133,.30),transparent 60%),radial-gradient(70% 50% at 50% 100%,rgba(250,204,21,.24),transparent 64%),#0c0a07 !important}
.splash-logo{background:linear-gradient(135deg,#F5B547,#E8702E)!important;box-shadow:0 18px 54px rgba(245,158,11,.50),inset 0 2px 0 rgba(255,255,255,.32)!important}
#view-menu .module-row[data-go="skills"]{background:radial-gradient(120% 95% at 0% 0%,rgba(245,185,90,.22),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="focus"],#view-menu .module-row[data-go="time-hub"]{background:radial-gradient(120% 95% at 0% 0%,rgba(251,191,36,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="mood"]{background:radial-gradient(120% 95% at 0% 0%,rgba(251,113,133,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="breathe"]{background:radial-gradient(120% 95% at 0% 0%,rgba(252,176,140,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="diary"]{background:radial-gradient(120% 95% at 0% 0%,rgba(226,140,170,.18),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="eat"]{background:radial-gradient(120% 95% at 0% 0%,rgba(255,159,10,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="workout"]{background:radial-gradient(120% 95% at 0% 0%,rgba(212,196,92,.18),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="stats"]{background:radial-gradient(120% 95% at 0% 0%,rgba(224,168,104,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="challenge"]{background:radial-gradient(120% 95% at 0% 0%,rgba(255,159,10,.18),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="routine"]{background:radial-gradient(120% 95% at 0% 0%,rgba(250,204,21,.18),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="skills"] .module-icon{background:linear-gradient(135deg,#F5C45A,#E8902E)!important}
#view-menu .module-row[data-go="focus"] .module-icon,#view-menu .module-row[data-go="time-hub"] .module-icon{background:linear-gradient(135deg,#FBBF24,#F59E0B)!important}
#view-menu .module-row[data-go="breathe"] .module-icon{background:linear-gradient(135deg,#FCB382,#F97316)!important}
#view-menu .module-row[data-go="stats"] .module-icon{background:linear-gradient(135deg,#E8B36A,#B45309)!important}
.header-title::before{background:linear-gradient(135deg,#F5B547,#E8702E)!important;box-shadow:0 1px 6px rgba(245,158,11,.45)!important}
.header-action{color:#F0A93C!important}
.splash-logo,.about-logo{background:linear-gradient(135deg,#F5B547,#E8702E)!important}
/* warm the primary accent everywhere (links, nav arrows, tints) */
:root{--blue:#F0A93C!important}
:root[data-theme=light]{--blue:#B5560B!important}
.btn-primary{background:linear-gradient(135deg,#F5B547,#E8702E)!important;box-shadow:0 8px 22px rgba(245,158,11,.34),inset 0 1px 0 rgba(255,255,255,.28)!important}
.btn-tinted{background:rgba(245,158,11,.16)!important;color:#F0A93C!important}
.toast .toast-undo{background:rgba(245,158,11,.32)!important;color:#FBE6B0!important}
#view-menu .module-row[data-go="diary"] .module-icon{background:linear-gradient(135deg,#E8A0C0,#C2410C)!important}
/* warm the cool gradient icon classes globally (stats, other screens) */
.g-focus{background:linear-gradient(135deg,#F5C45A,#E8902E)!important}
.g-time{background:linear-gradient(135deg,#FBBF24,#F59E0B)!important}
.g-stats{background:linear-gradient(135deg,#E8B36A,#B45309)!important}
.g-diary{background:linear-gradient(135deg,#E8A0C0,#C2410C)!important}
.timer-phase-label.free{color:#F0A93C!important}

/* ============================================================
   v1.77 — Achievements view
   ============================================================ */
.hero-streak{cursor:pointer}
.hs-chev{color:var(--text-3);font-weight:700;margin-left:2px}
.ach-hero{text-align:center;padding:16px 0 20px}
.ach-hero-num{font-size:52px;font-weight:800;letter-spacing:-.04em;line-height:1;background:linear-gradient(135deg,#F5B547,#E8702E);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ach-hero-num span{font-size:24px;color:var(--text-3);-webkit-text-fill-color:var(--text-3)}
.ach-hero-sub{font-size:13px;color:var(--text-2);margin-top:6px;letter-spacing:.02em}
.ach-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 16px 24px}
.ach-card{position:relative;padding:16px 14px;border-radius:20px;background:var(--glass-bg);border:1px solid var(--glass-brd);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);opacity:.6;transition:opacity .2s,transform .15s var(--ease-spring)}
.ach-card.done{opacity:1}
.ach-card.done:active{transform:scale(.98)}
.ach-em{font-size:30px;line-height:1;filter:grayscale(.75);margin-bottom:9px}
.ach-card.done .ach-em{filter:none}
.ach-t{font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.01em}
.ach-d{font-size:11px;color:var(--text-3);margin-top:2px}
.ach-badge{position:absolute;top:14px;right:14px;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#30D158,#34C7B5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;box-shadow:0 4px 10px rgba(48,209,88,.35)}
.ach-bar{height:6px;border-radius:3px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:11px}
.ach-bar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#F5B547,#E8702E)}
.ach-prog{font-size:11px;color:var(--text-3);margin-top:5px;font-variant-numeric:tabular-nums}

/* ============================================================
   v1.78 — Ясность (dopamine detox)
   ============================================================ */
.g-clarity{background:linear-gradient(135deg,#34D399,#10B981)!important}
#detoxContent{padding:0 16px 28px}
.dtx-hero{text-align:center;padding:14px 0 18px}
.dtx-hero-num{font-size:52px;font-weight:800;letter-spacing:-.04em;line-height:1;background:linear-gradient(135deg,#34D399,#0EA5A0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.dtx-hero-sub{font-size:13px;color:var(--text-2);margin-top:6px;letter-spacing:.01em}
.dtx-empty{text-align:center;padding:26px 18px 8px}
.dtx-empty-em{font-size:46px;line-height:1;margin-bottom:10px}
.dtx-empty-t{font-size:19px;font-weight:700;color:var(--text);letter-spacing:-.02em}
.dtx-empty-d{font-size:13px;line-height:1.5;color:var(--text-2);margin-top:7px;max-width:300px;margin-left:auto;margin-right:auto}
.dtx-card{position:relative;padding:16px;border-radius:22px;margin-top:12px;background:var(--glass-bg);border:1px solid var(--glass-brd);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.dtx-card-top{display:flex;align-items:center;gap:11px}
.dtx-em{font-size:26px;line-height:1;flex:none}
.dtx-card-h{flex:1;min-width:0}
.dtx-name{font-size:16px;font-weight:600;color:var(--text);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dtx-meta{font-size:11px;color:var(--text-3);margin-top:1px}
.dtx-x{flex:none;width:28px;height:28px;border:none;background:rgba(255,255,255,.06);color:var(--text-3);border-radius:9px;font-size:13px;cursor:pointer}
.dtx-x:active{transform:scale(.9)}
.dtx-streak{margin-top:13px;font-size:14px;color:var(--text-2)}
.dtx-streak b{font-size:30px;font-weight:800;letter-spacing:-.03em;color:var(--text);margin-right:4px}
.dtx-bar{height:7px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:10px}
.dtx-bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#34D399,#10B981);transition:width .4s var(--ease-spring,ease)}
.dtx-next{font-size:11px;color:var(--text-3);margin-top:6px}
.dtx-acts{display:flex;gap:9px;margin-top:14px}
.dtx-btn{flex:1;padding:12px 0;border:none;border-radius:14px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:transform .12s,opacity .2s}
.dtx-btn:active{transform:scale(.97)}
.dtx-clean{background:linear-gradient(135deg,#34D399,#10B981);color:#04241c}
.dtx-clean.done{background:rgba(52,211,153,.16);color:#34D399}
.dtx-relapse{background:rgba(255,255,255,.06);color:var(--text-2)}
.dtx-add-title{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin:24px 2px 12px}
.dtx-presets{display:flex;flex-wrap:wrap;gap:9px}
.dtx-chip{padding:10px 14px;border-radius:14px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;transition:transform .12s}
.dtx-chip:active{transform:scale(.95)}
.dtx-chip-custom{border-style:dashed;color:var(--text-2)}

/* ============================================================
   v1.79 — Путь (уровни · ранги · XP)
   ============================================================ */
.lvl-card{display:flex;align-items:center;gap:13px;margin:8px 16px 2px;padding:14px;border-radius:22px;background:var(--glass-bg);border:1px solid var(--glass-brd);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);cursor:pointer;transition:transform .14s var(--ease-spring,ease);position:relative;overflow:hidden}
.lvl-card::before{content:"";position:absolute;inset:0;background:radial-gradient(140px 90px at 12% 50%,rgba(var(--rankrgb,240,169,60),.20),transparent 72%);pointer-events:none}
.lvl-card:active{transform:scale(.985)}
.lvl-badge{position:relative;z-index:1;flex:none;width:50px;height:50px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(var(--rankrgb,240,169,60),.18);border:1px solid rgba(var(--rankrgb,240,169,60),.42);box-shadow:0 6px 18px rgba(var(--rankrgb,240,169,60),.28)}
.lvl-em{font-size:26px;line-height:1}
.lvl-body{flex:1;min-width:0;z-index:1}
.lvl-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.lvl-rank{font-size:16px;font-weight:700;color:var(--text);letter-spacing:-.01em}
.lvl-num{font-size:13px;font-weight:700;color:var(--rank,#F0A93C)}
.lvl-bar{height:7px;border-radius:4px;background:rgba(255,255,255,.09);overflow:hidden;margin-top:8px}
.lvl-bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,rgba(var(--rankrgb,240,169,60),.65),var(--rank,#F0A93C));transition:width .5s var(--ease-spring,ease)}
.lvl-sub{font-size:11px;color:var(--text-3);margin-top:5px}
.lvl-chev{z-index:1;flex:none;color:var(--text-3);font-size:20px;font-weight:700}
#pathContent{padding:0 16px 28px}
.path-hero{text-align:center;padding:18px 0 22px}
.path-badge{width:90px;height:90px;margin:0 auto 14px;border-radius:28px;display:flex;align-items:center;justify-content:center;font-size:46px;background:rgba(var(--rankrgb,240,169,60),.16);border:1px solid rgba(var(--rankrgb,240,169,60),.42);box-shadow:0 12px 40px rgba(var(--rankrgb,240,169,60),.32)}
.path-rank{font-size:26px;font-weight:800;letter-spacing:-.03em;color:var(--rank,#F0A93C)}
.path-level{font-size:14px;color:var(--text-2);margin-top:3px}
.path-bar{height:10px;border-radius:5px;background:rgba(255,255,255,.09);overflow:hidden;margin:16px auto 0;max-width:280px}
.path-bar-fill{height:100%;border-radius:5px;background:linear-gradient(90deg,rgba(var(--rankrgb,240,169,60),.6),var(--rank,#F0A93C));transition:width .7s var(--ease-flow)}
.path-xp{font-size:12px;color:var(--text-3);margin-top:9px;font-variant-numeric:tabular-nums}
.path-sec{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin:22px 2px 12px}
.path-ladder{display:flex;flex-direction:column;gap:8px}
.rk-row{display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-brd);opacity:.48;transition:opacity .2s}
.rk-row.reached{opacity:1}
.rk-row.cur{border-color:rgba(var(--rankrgb),.5);box-shadow:0 0 0 1px rgba(var(--rankrgb),.4),0 6px 20px rgba(var(--rankrgb),.18)}
.rk-em{font-size:22px;flex:none}
.rk-name{flex:1;font-size:15px;font-weight:600;color:var(--text)}
.rk-lvl{font-size:11px;color:var(--text-3)}
.rk-now{font-size:11px;font-weight:700;color:var(--rank);background:rgba(var(--rankrgb),.16);padding:3px 9px;border-radius:8px;margin-left:6px}
.rk-ok{color:#30D158;font-weight:700;margin-left:6px}
.path-parts{display:flex;flex-direction:column;gap:1px;border-radius:16px;overflow:hidden}
.pp-row{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;background:var(--glass-bg);border:1px solid var(--glass-brd)}
.pp-k{font-size:14px;color:var(--text-2)}
.pp-v{font-size:14px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}
.path-share{width:100%;margin-top:22px;padding:15px;border:none;border-radius:16px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;color:#1a1205;background:linear-gradient(135deg,#FBBF24,#F0A93C);box-shadow:0 8px 24px rgba(240,169,60,.3)}
.path-share:active{transform:scale(.98)}
.card-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.74);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:24px;animation:cardFade .22s ease}
@keyframes cardFade{from{opacity:0}to{opacity:1}}
.card-ov-inner{position:relative;width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center;gap:14px}
.card-img{width:100%;border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.65);aspect-ratio:1080/1920;object-fit:contain;background:#0c0a07}
.card-ov-acts{display:flex;gap:10px;width:100%}
.card-btn{flex:1;padding:14px;border:none;border-radius:14px;font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;background:rgba(255,255,255,.1);color:var(--text);transition:transform .12s}
.card-btn.primary{color:#1a1205;background:linear-gradient(135deg,#FBBF24,#F0A93C)}
.card-btn:active{transform:scale(.97)}
.card-ov-close{position:absolute;top:-48px;right:0;width:38px;height:38px;border:none;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:15px;cursor:pointer}
.levelup-overlay{position:fixed;inset:0;z-index:1100;background:radial-gradient(circle at 50% 36%,rgba(var(--rankrgb,240,169,60),.24),rgba(0,0,0,.88) 70%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px;animation:luFade .3s ease}
@keyframes luFade{from{opacity:0}to{opacity:1}}
.lu-inner{text-align:center;animation:luPop .55s cubic-bezier(.2,.9,.3,1.45)}
@keyframes luPop{0%{transform:scale(.55);opacity:0}60%{transform:scale(1.07);opacity:1}100%{transform:scale(1)}}
.lu-label{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--rank,#F0A93C)}
.lu-badge{width:140px;height:140px;margin:18px auto;border-radius:38px;display:flex;align-items:center;justify-content:center;font-size:74px;background:rgba(var(--rankrgb,240,169,60),.18);border:1px solid rgba(var(--rankrgb,240,169,60),.5);box-shadow:0 18px 54px rgba(var(--rankrgb,240,169,60),.42)}
.lu-rank{font-size:40px;font-weight:800;letter-spacing:-.03em;color:var(--rank,#F0A93C)}
.lu-sub{font-size:15px;color:var(--text-2);margin-top:5px}
.lu-btn{margin-top:28px;padding:14px 36px;border:none;border-radius:16px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;color:#1a1205;background:linear-gradient(135deg,rgba(var(--rankrgb,240,169,60),.95),var(--rank,#F0A93C));box-shadow:0 8px 26px rgba(var(--rankrgb,240,169,60),.36)}
.lu-btn:active{transform:scale(.97)}

/* ============================================================
   v1.84 — «Живое стекло»: объёмные иконки меню со свечением + дыханием
   ============================================================ */
#view-menu .module-icon{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.16);box-shadow:0 7px 22px rgba(var(--icrgb,240,169,60),.44),inset 0 1px 0 rgba(255,255,255,.42),inset 0 -7px 14px rgba(0,0,0,.16);animation:iconFloat 3.8s ease-in-out infinite}
#view-menu .module-icon::before{content:"";position:absolute;left:0;right:0;top:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,255,255,0));border-radius:inherit;pointer-events:none;z-index:0}
#view-menu .module-icon::after{content:"";position:absolute;left:14%;right:14%;bottom:0;height:42%;background:radial-gradient(ellipse at 50% 120%,rgba(0,0,0,.28),transparent 70%);border-radius:inherit;pointer-events:none;z-index:0}
#view-menu .module-icon svg{position:relative;z-index:1;filter:drop-shadow(0 1.5px 2px rgba(0,0,0,.28))}
@keyframes iconFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.03)}}
@media (prefers-reduced-motion:reduce){#view-menu .module-icon{animation:none}}
#view-menu .module-row[data-go="skills"] .module-icon{--icrgb:124,108,255;background:linear-gradient(140deg,#7B6CFF,#4F46E5)!important;animation-delay:-.2s}
#view-menu .module-row[data-go="focus"] .module-icon{--icrgb:245,176,71;background:linear-gradient(140deg,#FBBF24,#F59E0B)!important;animation-delay:-1.4s}
#view-menu .module-row[data-go="mood"] .module-icon{--icrgb:251,113,133;background:linear-gradient(140deg,#FB7185,#E0457E)!important;animation-delay:-.8s}
#view-menu .module-row[data-go="breathe"] .module-icon{--icrgb:90,209,255;background:linear-gradient(140deg,#5AD1FF,#2BA8E6)!important;animation-delay:-2.1s}
#view-menu .module-row[data-go="diary"] .module-icon{--icrgb:167,139,250;background:linear-gradient(140deg,#A78BFA,#7C5CF0)!important;animation-delay:-1.1s}
#view-menu .module-row[data-go="eat"] .module-icon{--icrgb:251,146,60;background:linear-gradient(140deg,#FB923C,#F2741A)!important;animation-delay:-2.6s}
#view-menu .module-row[data-go="workout"] .module-icon{--icrgb:255,107,107;background:linear-gradient(140deg,#FF6B6B,#E8453C)!important;animation-delay:-.5s}
#view-menu .module-row[data-go="detox"] .module-icon{--icrgb:52,211,153;background:linear-gradient(140deg,#34D399,#10B981)!important;animation-delay:-1.8s}
#view-menu .module-row[data-go="stats"] .module-icon{--icrgb:240,194,74;background:linear-gradient(140deg,#F0C24A,#E0922E)!important;animation-delay:-3s}

/* ============================================================
   v1.84 — больше стекла: прозрачнее + фростнее; стекло на новых поверхностях
   ============================================================ */
/* old webviews w/o backdrop-filter: re-assert readable solid cards
   (Midnight Gold redefined --glass-bg after the original @supports) */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){
  :root{--glass-bg:rgba(24,20,13,.97);--glass-bg-2:rgba(30,25,16,.98)}
  :root[data-theme=light]{--glass-bg:rgba(255,252,245,.98);--glass-bg-2:#fff}
}

/* ============================================================
   v1.85 — «всё стеклом»: поля ввода, сегменты, модалки, нейтр. кнопки
   (свайп-строки и мелкие пилюли-заливки остаются плотными — для свайпа/ясности)
   ============================================================ */
.seg,.foc-mode-seg,.modal-box,.focus-task-input,.focus-finish-desc,.df-textarea,.btn-neutral{
  background:var(--glass-bg)!important;
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-brd)!important;
}
.modal-box{box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl)}
.seg-btn.active{background:rgba(255,255,255,.16)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
:root[data-theme=light] .seg-btn.active{background:rgba(255,255,255,.64)!important}
.focus-task-input:focus,.focus-finish-desc:focus,.df-textarea:focus{box-shadow:0 0 0 2px var(--blue),inset 0 1px 0 var(--glass-hl)!important}

/* живые знаки рангов (вместо эмодзи) */
.rank-gl{display:block;fill:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}
.lvl-em{display:inline-flex;align-items:center;justify-content:center}
.lvl-em .rank-gl{width:28px;height:28px}
.path-badge .rank-gl{width:52px;height:52px}
.lu-badge .rank-gl{width:80px;height:80px}
.rk-em{display:inline-flex;align-items:center;justify-content:center;width:24px}
.rk-em .rank-gl{width:23px;height:23px;fill:var(--rank);filter:none}

/* ============================================================
   v1.87 — премиум-анимации: переходы экранов + каскад контента
   ============================================================ */
body{overflow-x:hidden}
.view.active{animation:none}
.view.enter-fwd{animation:vEnter .46s var(--ease-flow) both}
.view.enter-back{animation:vEnterBack .46s var(--ease-flow) both}
@keyframes vEnter{from{opacity:0;transform:translate3d(24px,0,0) scale(.955)}to{opacity:1;transform:none}}
@keyframes vEnterBack{from{opacity:0;transform:translate3d(-24px,0,0) scale(.955)}to{opacity:1;transform:none}}
.view.enter-fwd .view-body>*,.view.enter-back .view-body>*{animation:cRise .54s var(--ease-flow) both}
.view-body>*:nth-child(2){animation-delay:.055s}
.view-body>*:nth-child(3){animation-delay:.11s}
.view-body>*:nth-child(4){animation-delay:.165s}
.view-body>*:nth-child(n+5){animation-delay:.22s}
@keyframes cRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.view.enter-fwd,.view.enter-back,.view.enter-fwd .view-body>*,.view.enter-back .view-body>*{animation:none!important}}

/* ============================================================
   v1.88 — Задания дня (daily quests)
   ============================================================ */
.quests-card{margin:8px 16px 2px;padding:13px 12px 9px;border-radius:22px;background:var(--glass-bg);border:1px solid var(--glass-brd);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.quests-head{display:flex;align-items:center;justify-content:space-between;margin:2px 4px 6px}
.quests-title{font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.01em}
.quests-prog{font-size:13px;font-weight:700;color:var(--text-3);font-variant-numeric:tabular-nums}
.quests-prog.all{color:#34D399}
.quest-row{display:flex;align-items:center;gap:12px;width:100%;padding:9px 8px;border:none;background:transparent;border-radius:14px;cursor:pointer;font-family:inherit;transition:transform .12s,background .15s;-webkit-tap-highlight-color:transparent}
.quest-row:active{transform:scale(.985);background:rgba(255,255,255,.05)}
.quest-ic{flex:none;width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(var(--qrgb,245,176,71),.18);border:1px solid rgba(var(--qrgb,245,176,71),.34);box-shadow:0 4px 12px rgba(var(--qrgb,245,176,71),.22)}
.quest-ic svg{width:21px;height:21px;fill:#fff}
.quest-t{flex:1;text-align:left;font-size:15px;color:var(--text);letter-spacing:-.01em}
.quest-ck{flex:none;width:24px;height:24px;border-radius:50%;border:2px solid var(--glass-brd);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:transparent}
.quest-row.done .quest-ck{border-color:transparent;background:rgba(var(--qrgb),.92);color:#0c0a07}
.quest-row.done .quest-t{color:var(--text-2)}
.quest-row.done .quest-ic{opacity:.85}
/* emoji -> sprite glyphs (achievements etc.) */
.ach-em{display:flex;align-items:center;justify-content:flex-start}
.ach-em .em-gl{width:30px;height:30px;fill:#fff;opacity:.5}
.ach-card.done .ach-em .em-gl{opacity:1}
.dtx-empty-em svg{width:46px;height:46px;fill:#34D399;opacity:.9}

/* ============================================================
   v1.91 — Итоги недели (Weekly Wrapped)
   ============================================================ */
.wk-entry{display:flex;align-items:center;gap:10px;width:100%;margin:0 0 14px;padding:14px 16px;border-radius:18px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);cursor:pointer;font-family:inherit;transition:transform .12s}
.wk-entry:active{transform:scale(.985)}
.wk-entry-tx{flex:1;text-align:left}
.wk-entry-t{font-size:15px;font-weight:600;color:var(--text)}
.wk-entry-s{font-size:12px;color:var(--text-3);margin-top:1px}
.wk-entry-ch{color:var(--text-3);font-size:20px;font-weight:700}
#weekContent{padding:0 16px 28px}
.wk-hero{text-align:center;padding:18px 0 20px}
.wk-hero-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}
.wk-hero-num{font-size:48px;font-weight:800;letter-spacing:-.04em;line-height:1;margin-top:8px;background:linear-gradient(135deg,#FBBF24,#F0A93C);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.wk-delta{font-size:13px;font-weight:600;margin-top:8px}
.wk-delta.up{color:#34D399}
.wk-delta.down{color:var(--text-2)}
.wk-tiles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:4px}
.wk-tile{text-align:center;padding:14px 6px;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-brd);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.wk-tv{font-size:24px;font-weight:800;color:var(--text);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.wk-tl{font-size:11px;color:var(--text-3);margin-top:3px;line-height:1.2}
.wk-sec{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin:22px 2px 12px}
.wk-rows{display:flex;flex-direction:column;gap:1px;border-radius:16px;overflow:hidden}
.wk-row{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;background:var(--glass-bg);border:1px solid var(--glass-brd)}
.wk-rk{font-size:14px;color:var(--text-2)}
.wk-rv{font-size:14px;font-weight:700;color:var(--text);text-transform:capitalize}
.wk-share{width:100%;margin-top:22px;padding:15px;border:none;border-radius:16px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;color:#1a1205;background:linear-gradient(135deg,#FBBF24,#F0A93C);box-shadow:0 8px 24px rgba(240,169,60,.3)}
.wk-share:active{transform:scale(.98)}
.wk-empty{text-align:center;padding:30px 18px;font-size:14px;line-height:1.5;color:var(--text-2)}

/* ============================================================
   v1.92 — светлая тема: полировка контраста (бел.→тёплый градиент)
   ============================================================ */
:root[data-theme=light] .hero-greeting{background-image:linear-gradient(100deg,#E8702E,#F59E0B)!important}
:root[data-theme=light] #runTime{background-image:linear-gradient(180deg,#F59E0B,#E8702E)!important;text-shadow:none!important}
:root[data-theme=light] .wk-hero-num,:root[data-theme=light] .dtx-hero-num,:root[data-theme=light] .ach-hero-num,:root[data-theme=light] .path-rank{filter:saturate(1.05) brightness(.92)}
:root[data-theme=light] .lvl-em .rank-gl,:root[data-theme=light] .path-badge .rank-gl,:root[data-theme=light] .lu-badge .rank-gl{fill:#fff}

/* theme picker row in Settings */
.theme-row{padding:14px 16px}
.theme-row .seg{margin:0}
.skin-pick{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.skin-opt{display:flex;align-items:center;gap:9px;padding:11px 13px;border:1px solid var(--glass-brd);border-radius:13px;background:rgba(128,128,128,.08);color:var(--text-2);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .1s,border-color .15s,color .15s}
.skin-opt:active{transform:scale(.97)}
.skin-opt.active{border-color:var(--blue);color:var(--text);background:rgba(128,128,128,.14)}
.skin-sw{width:22px;height:22px;border-radius:7px;flex:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}

/* ============================================================
   v1.93 — Трекеры (Custom Trackers)
   ============================================================ */
.g-tracker{background:linear-gradient(135deg,#2DD4BF,#0E9488)!important}
#view-menu .module-row[data-go="trackers"]{--icrgb:45,212,191;background:radial-gradient(120% 95% at 0% 0%,rgba(45,212,191,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="trackers"] .module-icon{background:linear-gradient(135deg,#2DD4BF,#0E9488)!important}

#trackersContent{padding:14px 16px 28px}
.trk-add{width:100%;padding:14px;margin-bottom:14px;border:1px dashed var(--glass-brd);border-radius:16px;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--text);font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .12s}
.trk-add:active{transform:scale(.985)}
.trk-empty{text-align:center;padding:38px 22px}
.trk-empty-gl{width:54px;height:54px;fill:#2DD4BF;opacity:.85}
.trk-empty-t{font-size:18px;font-weight:700;color:var(--text);margin-top:14px}
.trk-empty-d{font-size:14px;line-height:1.5;color:var(--text-2);margin-top:6px;max-width:300px;margin-left:auto;margin-right:auto}
.trk-card{border-radius:18px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);padding:14px;margin-bottom:12px;position:relative;overflow:hidden}
.trk-card::before{content:"";position:absolute;top:0;bottom:0;left:0;width:3px;background:var(--trk);opacity:.85}
.trk-card.hit{box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl),0 6px 22px rgba(45,212,191,.16)}
.trk-card-top{display:flex;align-items:center;gap:12px;cursor:pointer}
.trk-ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 6px 16px rgba(0,0,0,.22)}
.trk-gl{width:23px;height:23px;fill:#fff}
.trk-meta{flex:1;min-width:0}
.trk-name{font-size:15px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:5px}
.trk-hit-gl{width:15px;height:15px;fill:var(--trk)}
.trk-val{font-size:13px;color:var(--text-2);margin-top:2px}
.trk-chev{color:var(--text-3);font-size:20px;font-weight:700}
.trk-bar{height:6px;border-radius:4px;background:rgba(128,128,128,.18);margin-top:11px;overflow:hidden}
.trk-bar-fill{height:100%;border-radius:4px;transition:width .35s var(--ease-flow,ease)}
.trk-spark{margin-top:10px;opacity:.92}
.trk-spark .sync-spark,.trk-spark>svg{width:100%;height:30px}
.trk-ctrl{display:flex;align-items:center;gap:10px;margin-top:13px}
.trk-btn{width:46px;height:46px;border:none;border-radius:13px;background:rgba(128,128,128,.16);color:var(--text);font-size:24px;font-weight:600;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s}
.trk-btn:active{transform:scale(.9)}
.trk-btn.plus{background:var(--trkd,var(--trk));color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.32);margin-left:auto;font-size:27px}
.trk-count{flex:1;text-align:center;font-size:26px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}
.trk-toggle{width:100%;padding:14px;border:none;border-radius:13px;background:rgba(128,128,128,.16);color:var(--text);font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;transition:transform .1s}
.trk-toggle:active{transform:scale(.985)}
.trk-toggle.on{background:var(--trkd,var(--trk));color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.32)}
.trk-tg-gl{width:18px;height:18px;fill:#fff}
.trk-wide{width:100%;padding:14px;border:1px solid var(--glass-brd);border-radius:13px;background:rgba(128,128,128,.1);color:var(--text);font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .1s}
.trk-wide:active{transform:scale(.985)}
/* tracker modals */
.trk-modal{padding:6px 2px}
.trk-modal-h{font-size:18px;font-weight:700;color:var(--text);text-align:center;margin-bottom:16px}
.trk-input{width:100%;padding:13px 14px;border:1px solid var(--glass-brd);border-radius:13px;background:rgba(128,128,128,.1);color:var(--text);font-size:15px;font-family:inherit;margin-bottom:4px;outline:none;box-sizing:border-box}
.trk-input:focus{border-color:#2DD4BF}
.trk-lbl{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin:14px 2px 8px}
.trk-typeseg{margin-bottom:2px}
.trk-row2{display:flex;gap:8px;margin-top:8px}
.trk-row2 .trk-input{margin-bottom:0}
.trk-swatches{display:flex;gap:9px;flex-wrap:wrap}
.trk-sw{width:34px;height:34px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}
.trk-sw.sel{border-color:var(--text);box-shadow:0 0 0 3px rgba(45,212,191,.25)}
.trk-glyphs{display:flex;gap:8px;flex-wrap:wrap}
.trk-gp{width:42px;height:42px;border-radius:12px;border:1px solid var(--glass-brd);background:rgba(128,128,128,.1);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.trk-gp.sel{background:var(--trkd,var(--trk));border-color:transparent}
.trk-gp-gl{width:21px;height:21px;fill:var(--text-2)}
.trk-gp.sel .trk-gp-gl{fill:#fff}
.trk-modal-btns{display:flex;gap:10px;margin-top:20px}
.trk-modal-btns .btn{flex:1}
.trk-save{background:linear-gradient(135deg,#14B8A6,#0E8074)!important;color:#fff!important;border:none!important}
.trk-stepper{display:flex;align-items:center;gap:12px;justify-content:center;margin:10px 0 4px}
.trk-step{width:52px;height:52px;border:none;border-radius:14px;background:rgba(128,128,128,.16);color:var(--text);font-size:26px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .1s}
.trk-step:active{transform:scale(.92)}
#trkValIn{width:120px;text-align:center;font-size:30px;font-weight:800;background:transparent;border:none;color:var(--text);font-family:inherit;outline:none;font-variant-numeric:tabular-nums}
.trk-unit{font-size:16px;color:var(--text-2);font-weight:600}

/* ============================================================
   v1.94 — Трекер сна (Sleep)
   ============================================================ */
.g-sleep{background:linear-gradient(135deg,#818CF8,#4338CA)!important}
#view-menu .module-row[data-go="sleep"]{--icrgb:129,140,248;background:radial-gradient(120% 95% at 0% 0%,rgba(129,140,248,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="sleep"] .module-icon{background:linear-gradient(135deg,#818CF8,#4338CA)!important}
#sleepContent{padding:14px 16px 28px}
.slp-hero{text-align:center;padding:18px 0}
.slp-hero-l{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}
.slp-hero-num{font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1;margin-top:8px;background:linear-gradient(135deg,#A5B4FC,#6366F1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.slp-num-empty{-webkit-text-fill-color:var(--text-3);color:var(--text-3)}
.slp-hero-sub{font-size:13px;color:var(--text-2);margin-top:8px}
.slp-add{width:100%;padding:14px;border:none;border-radius:16px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;color:#fff;background:linear-gradient(135deg,#6366F1,#4338CA);box-shadow:0 8px 22px rgba(67,56,202,.32)}
.slp-add:active{transform:scale(.985)}
.slp-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.slp-tile{text-align:center;padding:14px 6px;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-brd);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.slp-tv{font-size:22px;font-weight:800;color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.slp-tl{font-size:11px;color:var(--text-3);margin-top:3px}
.slp-sec{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin:22px 2px 12px}
.slp-bars{display:flex;align-items:flex-end;gap:5px;height:120px;padding:0 2px}
.slp-bcol{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;cursor:pointer}
.slp-btrack{flex:1;width:100%;display:flex;align-items:flex-end;border-radius:7px;background:rgba(128,128,128,.1);overflow:hidden}
.slp-bfill{width:100%;border-radius:7px;transition:height .4s var(--ease-flow,ease);min-height:6px}
.slp-blbl{font-size:10px;color:var(--text-3)}
.slp-modal{padding:6px 2px}
.slp-modal-h{font-size:18px;font-weight:700;color:var(--text);text-align:center;margin-bottom:18px}
.slp-times{display:flex;align-items:center;justify-content:space-between;gap:8px}
.slp-tlabel{flex:1;display:flex;flex-direction:column;gap:6px;text-align:center}
.slp-tlabel span{font-size:12px;color:var(--text-3);font-weight:600}
.slp-tlabel input[type=time]{width:100%;padding:12px 4px;border:1px solid var(--glass-brd);border-radius:13px;background:rgba(128,128,128,.1);color:var(--text);font-size:18px;font-weight:700;font-family:inherit;text-align:center;outline:none;-webkit-appearance:none}
.slp-durwrap{text-align:center;padding:0 2px;flex:none}
.slp-dur{font-size:17px;font-weight:800;color:#A5B4FC;font-variant-numeric:tabular-nums;white-space:nowrap}
.slp-durl{font-size:10px;color:var(--text-3);margin-top:2px}
.slp-lbl{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin:18px 2px 9px}
.slp-qrow{display:flex;gap:8px}
.slp-q{flex:1;height:46px;border:1px solid var(--glass-brd);border-radius:12px;background:rgba(128,128,128,.1);color:var(--text-2);font-size:17px;font-weight:700;font-family:inherit;cursor:pointer;transition:transform .1s}
.slp-q:active{transform:scale(.92)}
.slp-q.sel{background:var(--qcd,var(--qc));border-color:transparent;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.slp-qlbl{text-align:center;font-size:13px;color:var(--text-2);margin-top:9px;font-weight:600}
.slp-note{width:100%;padding:12px 14px;margin-top:16px;border:1px solid var(--glass-brd);border-radius:13px;background:rgba(128,128,128,.1);color:var(--text);font-size:14px;font-family:inherit;outline:none;box-sizing:border-box}
.slp-modal-btns{display:flex;gap:10px;margin-top:20px}
.slp-modal-btns .btn{flex:1}
.slp-save{background:linear-gradient(135deg,#6366F1,#4338CA)!important;color:#fff!important;border:none!important}
.dc-gl{width:16px;height:16px;fill:var(--dc);vertical-align:-3px}
/* native controls follow the theme (fixes time-picker glyph in dark + diary inputs) */
:root{color-scheme:dark}
:root[data-theme=light]{color-scheme:light}
@media (prefers-reduced-motion:reduce){.slp-bfill{transition:none}}

/* ============================================================
   v1.95 — Ритуалы дня (Daily Rituals)
   ============================================================ */
.g-rituals{background:linear-gradient(135deg,#FBBF24,#F97316)!important}
#view-menu .module-row[data-go="rituals"]{--icrgb:251,146,60;background:radial-gradient(120% 95% at 0% 0%,rgba(251,146,60,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="rituals"] .module-icon{background:linear-gradient(135deg,#FBBF24,#F97316)!important}
#ritualsContent{padding:14px 16px 28px}
.rit-head{display:flex;align-items:baseline;justify-content:space-between;margin:4px 2px 14px}
.rit-head-t{font-size:20px;font-weight:800;color:var(--text);letter-spacing:-.02em}
.rit-head-c{font-size:13px;font-weight:700;color:var(--text-3);font-variant-numeric:tabular-nums}
.rit-card{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:15px;margin-bottom:12px;border-radius:18px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);cursor:pointer;font-family:inherit;position:relative;overflow:hidden;transition:transform .12s}
.rit-card:active{transform:scale(.985)}
.rit-card::before{content:"";position:absolute;top:0;bottom:0;left:0;width:3px;background:var(--rc);opacity:.85}
.rit-card.done{box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl),0 6px 20px rgba(251,146,60,.12)}
.rit-ic{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 6px 16px rgba(0,0,0,.22)}
.rit-gl{width:24px;height:24px;fill:#fff}
.rit-meta{flex:1;min-width:0}
.rit-name{font-size:15px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:5px}
.rit-done-gl{width:14px;height:14px;fill:var(--rc)}
.rit-sub{font-size:13px;color:var(--text-2);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.rit-chev{color:var(--text-3);font-size:14px;font-weight:600;flex:none}
.rit-card.done .rit-chev{color:var(--rc)}
.rit-modal{padding:6px 2px}
.rit-modal-h{font-size:18px;font-weight:700;color:var(--text);text-align:center;margin-bottom:14px}
.rit-lbl{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);margin:14px 2px 8px}
.rit-ta{width:100%;min-height:62px;padding:12px 14px;border:1px solid var(--glass-brd);border-radius:13px;background:rgba(128,128,128,.1);color:var(--text);font-size:15px;font-family:inherit;outline:none;resize:vertical;box-sizing:border-box;line-height:1.4}
.rit-ta:focus,.rit-input:focus{border-color:var(--text-3)}
.rit-input{width:100%;padding:11px 14px;margin-bottom:8px;border:1px solid var(--glass-brd);border-radius:12px;background:rgba(128,128,128,.1);color:var(--text);font-size:14px;font-family:inherit;outline:none;box-sizing:border-box}
.rit-rrow{display:flex;gap:8px}
.rit-r{flex:1;height:46px;border:1px solid var(--glass-brd);border-radius:12px;background:rgba(128,128,128,.1);color:var(--text-2);font-size:17px;font-weight:700;font-family:inherit;cursor:pointer;transition:transform .1s}
.rit-r:active{transform:scale(.92)}
.rit-r.sel{background:#6366F1;border-color:transparent;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.rit-modal-btns{display:flex;gap:10px;margin-top:20px}
.rit-modal-btns .btn{flex:1}
.rit-save{background:var(--rcd,var(--rc))!important;color:#fff!important;border:none!important;text-shadow:0 1px 2px rgba(0,0,0,.25)}

/* ============================================================
   v1.96 — Задачи дня (Daily Tasks)
   ============================================================ */
.g-tasks{background:linear-gradient(135deg,#5E9EFF,#2B6FE0)!important}
#view-menu .module-row[data-go="tasks"]{--icrgb:94,158,255;background:radial-gradient(120% 95% at 0% 0%,rgba(94,158,255,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="tasks"] .module-icon{background:linear-gradient(135deg,#5E9EFF,#2B6FE0)!important}
#tasksContent{padding:14px 16px 28px}
.tsk-add-row{display:flex;gap:9px;margin-bottom:16px}
.tsk-add-in{flex:1;padding:13px 15px;border:1px solid var(--glass-brd);border-radius:14px;background:rgba(128,128,128,.1);color:var(--text);font-size:15px;font-family:inherit;outline:none}
.tsk-add-in:focus{border-color:#5E9EFF}
.tsk-add-btn{width:48px;flex:none;border:none;border-radius:14px;background:linear-gradient(135deg,#5E9EFF,#2B6FE0);color:#fff;font-size:26px;font-weight:300;font-family:inherit;cursor:pointer;line-height:1}
.tsk-add-btn:active{transform:scale(.92)}
.tsk-empty{text-align:center;padding:38px 22px}
.tsk-empty-gl{width:50px;height:50px;fill:#5E9EFF;opacity:.85}
.tsk-empty-t{font-size:18px;font-weight:700;color:var(--text);margin-top:14px}
.tsk-empty-d{font-size:14px;line-height:1.5;color:var(--text-2);margin-top:6px;max-width:300px;margin-left:auto;margin-right:auto}
.tsk-list{display:flex;flex-direction:column;gap:8px}
.tsk-row{display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:14px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.tsk-ck{width:26px;height:26px;flex:none;border:2px solid var(--text-3);border-radius:8px;background:transparent;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:transform .1s}
.tsk-ck:active{transform:scale(.86)}
.tsk-ck.on{background:#34D399;border-color:#34D399}
.tsk-ck-gl{width:16px;height:16px;fill:#fff}
.tsk-text{flex:1;font-size:15px;color:var(--text);line-height:1.35;word-break:break-word}
.tsk-row.done .tsk-text{color:var(--text-3);text-decoration:line-through}
.tsk-star{width:30px;height:30px;flex:none;border:none;background:transparent;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.tsk-star-gl{width:18px;height:18px;fill:var(--text-3);opacity:.5}
.tsk-star.on .tsk-star-gl{fill:#FBBF24;opacity:1}
.tsk-del{width:28px;height:28px;flex:none;border:none;background:transparent;color:var(--text-3);font-size:15px;cursor:pointer;padding:0;border-radius:8px}
.tsk-del:active{background:rgba(255,69,58,.15);color:#FF6B6B}
.tsk-done-h{display:flex;align-items:center;justify-content:space-between;margin:20px 2px 10px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}
.tsk-clear{border:none;background:transparent;color:var(--text-3);font-size:12px;font-weight:600;text-transform:none;letter-spacing:0;cursor:pointer;font-family:inherit;text-decoration:underline}
.tsk-done-list{opacity:.7}

/* ============================================================
   v1.97 — Цели (Objectives / personal goals)
   ============================================================ */
.g-objectives{background:linear-gradient(135deg,#F0A93C,#D4791E)!important}
#view-menu .module-row[data-go="objectives"]{--icrgb:240,169,60;background:radial-gradient(120% 95% at 0% 0%,rgba(240,169,60,.20),transparent 56%),var(--glass-bg)}
#view-menu .module-row[data-go="objectives"] .module-icon{background:linear-gradient(135deg,#F0A93C,#D4791E)!important}
#objContent{padding:14px 16px 28px}
.obj-add{width:100%;padding:14px;margin-bottom:14px;border:1px dashed var(--glass-brd);border-radius:16px;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--text);font-size:15px;font-weight:600;font-family:inherit;cursor:pointer}
.obj-add:active{transform:scale(.985)}
.obj-empty{text-align:center;padding:38px 22px}
.obj-empty-gl{width:52px;height:52px;fill:#F0A93C;opacity:.85}
.obj-empty-t{font-size:18px;font-weight:700;color:var(--text);margin-top:14px}
.obj-empty-d{font-size:14px;line-height:1.5;color:var(--text-2);margin-top:6px;max-width:300px;margin-left:auto;margin-right:auto}
.obj-card{border-radius:18px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);padding:15px;margin-bottom:12px;position:relative;overflow:hidden}
.obj-card::before{content:"";position:absolute;top:0;bottom:0;left:0;width:3px;background:var(--oc);opacity:.85}
.obj-card.done{opacity:.72}
.obj-top{display:flex;align-items:center;gap:12px;cursor:pointer}
.obj-ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 6px 16px rgba(0,0,0,.22)}
.obj-gl{width:23px;height:23px;fill:#fff}
.obj-meta{flex:1;min-width:0}
.obj-title{font-size:15px;font-weight:700;color:var(--text);line-height:1.3}
.obj-card.done .obj-title{text-decoration:line-through;color:var(--text-2)}
.obj-val{font-size:13px;color:var(--text-2);margin-top:3px}
.obj-dl{color:var(--text-3)}
.obj-dl.over{color:#FF6B6B}
.obj-chev{color:var(--text-3);font-size:20px;font-weight:700;flex:none}
.obj-bar{height:7px;border-radius:5px;background:rgba(128,128,128,.18);margin-top:13px;overflow:hidden}
.obj-bar-fill{height:100%;border-radius:5px;transition:width .4s var(--ease-flow,ease)}
.obj-ctrl{margin-top:13px;display:flex;justify-content:flex-end}
.obj-plus{min-width:66px;padding:11px 20px;border:none;border-radius:12px;background:var(--ocd,var(--oc));color:#fff;font-size:16px;font-weight:700;font-family:inherit;cursor:pointer;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.obj-plus:active{transform:scale(.94)}
.obj-complete{width:100%;padding:13px;border:1px solid var(--glass-brd);border-radius:12px;background:rgba(128,128,128,.1);color:var(--text);font-size:15px;font-weight:600;font-family:inherit;cursor:pointer}
.obj-complete:active{transform:scale(.985)}
.obj-done-tag{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:700;color:var(--oc);width:100%;justify-content:center}
.obj-done-gl{width:18px;height:18px;fill:var(--oc)}
@media (prefers-reduced-motion:reduce){.obj-bar-fill{transition:none}}

/* ============================================================
   v1.98 — Глубокая аналитика (Insights)
   ============================================================ */
#insightsContent{padding:8px 16px 28px}
.anl-empty{text-align:center;padding:40px 22px}
.anl-empty-gl{width:52px;height:52px;fill:#F0A93C;opacity:.8}
.anl-empty-t{font-size:18px;font-weight:700;color:var(--text);margin-top:14px}
.anl-empty-d{font-size:14px;line-height:1.55;color:var(--text-2);margin-top:6px;max-width:320px;margin-left:auto;margin-right:auto}
.anl-sec{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin:22px 2px 11px}
.anl-tiles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px}
.anl-tile{text-align:center;padding:14px 4px;border-radius:15px;background:var(--glass-bg);border:1px solid var(--glass-brd);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.anl-tv{font-size:21px;font-weight:800;color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.anl-tl{font-size:10.5px;color:var(--text-3);margin-top:3px;line-height:1.2}
.anl-card{border-radius:17px;background:var(--glass-bg);border:1px solid var(--glass-brd);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);padding:16px 15px 13px}
.anl-bars{display:flex;align-items:flex-end;gap:5px;height:110px}
.anl-bars-24{gap:2px}
.anl-bcol{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;min-width:0}
.anl-btrack{flex:1;width:100%;display:flex;align-items:flex-end;border-radius:5px;background:rgba(128,128,128,.08);overflow:hidden}
.anl-bars-24 .anl-btrack{border-radius:3px}
.anl-bfill{width:100%;border-radius:5px 5px 4px 4px;transition:height .4s var(--ease-flow,ease)}
.anl-blbl{font-size:10px;color:var(--text-3);white-space:nowrap}
.anl-bars-24 .anl-blbl{font-size:9px}
.anl-note{font-size:13px;color:var(--text-2);margin-top:11px;text-align:center;font-weight:500}
.anl-insight{display:flex;align-items:flex-start;gap:11px;padding:14px 15px;margin-bottom:10px;border-radius:15px;background:var(--glass-bg);border:1px solid var(--glass-brd);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);font-size:14px;line-height:1.45;color:var(--text)}
.anl-ins-gl{width:20px;height:20px;flex:none;fill:#F0A93C;margin-top:1px}
@media (prefers-reduced-motion:reduce){.anl-bfill{transition:none}}

/* ============================================================
   v1.99 — Напоминания (Reminders)
   ============================================================ */
#remindersContent{padding:14px 16px 28px}
.rem-intro{font-size:14px;line-height:1.5;color:var(--text-2);margin:2px 2px 16px}
.rem-master{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-radius:16px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);margin-bottom:14px}
.rem-master-t{font-size:15px;font-weight:700;color:var(--text)}
.rem-master-s{font-size:12px;color:var(--text-3);margin-top:1px}
.rem-list{display:flex;flex-direction:column;gap:10px;transition:opacity .2s}
.rem-list.rem-off{opacity:.4;pointer-events:none}
.rem-row{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:15px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.rem-ic{width:38px;height:38px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 14px rgba(0,0,0,.2)}
.rem-gl{width:21px;height:21px;fill:#fff}
.rem-meta{flex:1;min-width:0}
.rem-name{font-size:14px;font-weight:600;color:var(--text)}
.rem-sub{font-size:12px;color:var(--text-3);margin-top:1px}
.rem-time{flex:none;padding:7px 8px;border:1px solid var(--glass-brd);border-radius:10px;background:rgba(128,128,128,.1);color:var(--text);font-size:14px;font-weight:700;font-family:inherit;font-variant-numeric:tabular-nums;outline:none;-webkit-appearance:none}
.rem-foot{font-size:12.5px;line-height:1.5;color:var(--text-3);margin-top:18px;padding:0 2px}
.rem-nudge{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:13px 15px;margin-bottom:12px;border-radius:16px;border:1px solid var(--glass-brd);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);cursor:pointer;animation:remPulse 2.6s ease-in-out infinite}
@keyframes remPulse{0%,100%{box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl)}50%{box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl),0 0 0 1.5px rgba(240,169,60,.28)}}
.rem-nudge-ic{width:40px;height:40px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(0,0,0,.22)}
.rem-nudge-gl{width:22px;height:22px;fill:#fff}
.rem-nudge-tx{flex:1;min-width:0}
.rem-nudge-t{font-size:15px;font-weight:700;color:var(--text)}
.rem-nudge-s{font-size:12px;color:var(--text-3);margin-top:1px}
.rem-nudge-go{color:var(--text-3);font-size:20px;font-weight:700;flex:none}
@media (prefers-reduced-motion:reduce){.rem-nudge{animation:none}}

/* ============================================================
   v2.0 — ТОТАЛЬНОЕ СТЕКЛО: frost the remaining flat surfaces
   (audit-driven; keeps active/accent states, swipe-rows, data-viz opaque)
   ============================================================ */
/* cards & panels */
.breathe-pulse,.bs-adapt,.cmp-card,.cmp-now,.cmp-week,.eat-top3,.gl-card,.link-row,.lp-actions,.lp-preview,.metric-tile,.mood-tl,.tt-mega-timer,.year-stats .ys,.stat-hours-card,.search-row,.lp-menu-wrap{background:var(--glass-bg)!important;border:1px solid var(--glass-brd);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.eat-slot:not(.filled){background:var(--glass-bg)!important;border:1px solid var(--glass-brd);box-shadow:inset 0 1px 0 var(--glass-hl);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.ptr{background:var(--glass-bg)!important;border:1px solid var(--glass-brd);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
/* inputs + neutral controls */
.f-input,.f-select,.exg-type-seg,.bs-step-btn,.bs-sound,.sk-edit{background:var(--glass-bg)!important;border:1px solid var(--glass-brd)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
/* toggle controls — frost the inactive base only; active keeps its accent */
.foc-pill:not(.active),.foc-imp-btn:not(.active),.exg-type-btn:not(.active),.bs-cyc-preset:not(.active),.imp-btn:not(.active),.mood5-btn:not(.sel),.diary-rating-btn:not(.active),.exg-tempo button:not(.on),.exg-diff .dot:not(.on){background:var(--glass-bg)!important;border:1px solid var(--glass-brd)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
/* chrome: frost toasts; deepen modal/menu scrims */
.toast{background:var(--glass-bg)!important;border:1px solid var(--glass-brd);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hl);-webkit-backdrop-filter:var(--glass-blur)!important;backdrop-filter:var(--glass-blur)!important}
.modal-bg,.lp-menu-bg{-webkit-backdrop-filter:blur(20px) saturate(145%)!important;backdrop-filter:blur(20px) saturate(145%)!important}
