/* Первая волна «вау»: «Плачет», «Особый день», «Как мы спали», «План дня», «Звуки», «Ночник-часы».
   Использует те же переменные, что styles.css (--ink, --card, --acc, --soft ...), поэтому день и ночь работают сами. */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* --- Ряд «Плачет · Особый день · Звуки» */
.more.care{margin-top:-6px}
.more.care button.cry{background:rgba(249,213,221,.7);border-color:rgba(224,87,106,.28);color:#8F2C45}
body[data-sky=night] .more.care button.cry{background:rgba(120,52,84,.45);border-color:rgba(255,140,170,.3);color:#FFC4D3}
.more.care button.on{background:linear-gradient(160deg,var(--acc2),var(--acc));color:var(--acc-ink);border-color:transparent}
.pair3{grid-template-columns:repeat(3,1fr)}
.pair3 button{display:grid;gap:6px;justify-items:center;padding:14px 6px;font-size:13px}
.pair3 svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* --- Карточка «Как мы спали» */
.morning{position:relative;padding:18px 20px 16px;overflow:hidden}
.morning::before{content:"";position:absolute;right:-30px;top:-40px;width:150px;height:150px;border-radius:50%;background:radial-gradient(closest-side,var(--acc2),transparent 72%);opacity:.28;pointer-events:none}
.morning h3{font-family:var(--serif);font-style:italic;font-weight:500;font-size:22px}
.morning .m-line{font-size:13px;color:var(--mute);margin-top:2px}
.nbar{position:relative;height:46px;margin:16px 2px 4px;border-radius:16px;background:linear-gradient(180deg,rgba(60,50,120,.16),rgba(60,50,120,.06));overflow:hidden}
body[data-sky=night] .nbar{background:rgba(255,255,255,.06)}
.nbar i{position:absolute;top:8px;bottom:8px;border-radius:10px;background:linear-gradient(160deg,#B9A9EE,#7E6BC4);box-shadow:0 6px 16px -8px #5C49A8}
.nbar::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 30%,#fff 0 1px,transparent 2px),radial-gradient(circle at 38% 70%,#fff 0 1px,transparent 2px),radial-gradient(circle at 63% 25%,#fff 0 1px,transparent 2px),radial-gradient(circle at 86% 65%,#fff 0 1px,transparent 2px);opacity:.5;pointer-events:none}
.nax{display:flex;justify-content:space-between;font-size:11px;color:var(--mute);margin:0 4px;font-feature-settings:"tnum"}
.nstats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.nstats div{padding:10px 12px;border-radius:18px;background:var(--soft)}
.nstats small{display:block;font-size:11px;color:var(--mute);letter-spacing:.04em}
.nstats b{display:block;margin-top:2px;font-size:17px;font-weight:700;font-feature-settings:"tnum";letter-spacing:-.01em}
.morning .m-ref{font-size:12.5px;line-height:1.5;color:var(--mute);margin-top:12px}
.morning .m-x{position:absolute;right:10px;top:8px;padding:8px 10px;font-size:12px;color:var(--mute);border-radius:99px;min-height:36px}

/* --- Листы «Плачет», «Особый день», «Звуки» */
.cry-h{text-align:center;margin-bottom:8px}
.cry-h h2{font-size:25px}
.cry-timer{display:flex;align-items:center;justify-content:center;gap:10px;margin:2px 0 10px;font-size:13px;color:var(--mute)}
.cry-timer b{font-size:26px;font-weight:300;color:var(--ink);font-feature-settings:"tnum";letter-spacing:-.01em}
.cry-timer i{width:9px;height:9px;border-radius:50%;background:#E0576A;animation:pulse 1.4s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
.chk-list{display:grid;gap:8px;margin:6px 0 12px}
.chk{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:22px;background:var(--soft);text-align:left}
.chk.first{background:linear-gradient(160deg,rgba(255,195,107,.35),rgba(255,181,71,.18));box-shadow:inset 0 0 0 1.5px rgba(242,154,60,.55)}
.chk .hi{width:44px;height:44px;border-radius:15px;background:var(--sheet);display:grid;place-items:center;color:var(--atx)}
.chk .hi svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chk b{display:block;font-size:15px}
.chk small{display:block;margin-top:2px;font-size:12.5px;line-height:1.4;color:var(--mute)}
.chk em{display:inline-block;font-style:normal;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--atx);margin-bottom:2px}
.chk button{padding:10px 14px;border-radius:99px;background:var(--acc);color:var(--acc-ink);font-weight:700;font-size:13px;min-height:44px;white-space:nowrap}
.chk.first button{box-shadow:0 8px 20px -10px var(--acc)}
.cry-tips{padding:14px 16px;border-radius:22px;background:var(--soft);margin-bottom:10px}
.cry-tips h4{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-weight:600;margin-bottom:6px}
.cry-tips li{list-style:none;position:relative;padding:5px 0 5px 20px;font-size:14px;line-height:1.45}
.cry-tips li::before{content:"";position:absolute;left:2px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--acc)}
.cry-act{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.cry-act button{padding:13px 10px;border-radius:20px;background:var(--soft);font-weight:700;font-size:14px;min-height:50px}
.cry-act button.pri{background:linear-gradient(160deg,var(--acc2),var(--acc));color:var(--acc-ink)}
.cry-doc{border-top:1px solid var(--line);padding-top:10px;margin-top:4px}
.cry-doc summary{cursor:pointer;font-size:13.5px;font-weight:600;color:var(--mute);list-style:none;min-height:36px;display:flex;align-items:center}
.cry-doc summary::-webkit-details-marker{display:none}
.cry-doc ul{margin:6px 0 4px;padding-left:18px}.cry-doc li{font-size:13.5px;line-height:1.5;color:var(--ink);margin:3px 0}
.cry-doc p{font-size:13px;color:var(--mute);margin-top:6px}
.cry-note{font-size:12px;color:var(--mute);text-align:center;margin-top:10px}
.mode-sub{font-size:13.5px;line-height:1.5;color:var(--mute);text-align:center;margin:2px 4px 14px}
.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mode-grid button{display:grid;gap:4px;justify-items:center;padding:16px 8px;border-radius:22px;background:var(--soft);font-weight:700;font-size:15px;min-height:64px;align-content:center}
.mode-grid button[aria-pressed=true]{background:var(--acc);color:var(--acc-ink)}
.mode-grid button.wide{grid-column:1/-1}
.mode-grid button small{font-size:11.5px;font-weight:500;opacity:.8}
.mode-hint{text-align:center;font-size:12.5px;color:var(--mute);margin-top:12px}

/* --- Звуки */
.snd-sub{text-align:center;font-size:13.5px;color:var(--mute);margin:2px 0 14px}
.snd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.snd-t{display:grid;gap:6px;justify-items:center;padding:14px 4px 12px;border-radius:22px;background:var(--soft);font-size:12.5px;font-weight:600;min-height:84px;align-content:center}
.snd-t svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.snd-t[aria-pressed=true]{background:var(--acc);color:var(--acc-ink);box-shadow:0 10px 22px -12px var(--acc)}
.snd-row{margin-top:14px}
.snd-row label{display:flex;justify-content:space-between;font-size:13px;color:var(--mute);margin-bottom:2px}
.snd-row label b{color:var(--ink);font-weight:600;font-feature-settings:"tnum"}
.snd-safe{font-size:12px;line-height:1.5;color:var(--mute);text-align:center;margin-top:12px}
.snd-go{margin-top:12px}

/* --- Ползунки */
.rng{-webkit-appearance:none;appearance:none;width:100%;height:40px;background:transparent;margin:0;touch-action:pan-y}
.rng::-webkit-slider-runnable-track{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--soft) 0 var(--lo,0%),var(--acc) var(--lo,0%) var(--hi,50%),var(--soft) var(--hi,50%) 100%)}
.rng::-moz-range-track{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--soft) 0 var(--lo,0%),var(--acc) var(--lo,0%) var(--hi,50%),var(--soft) var(--hi,50%) 100%)}
.rng::-webkit-slider-thumb{-webkit-appearance:none;width:32px;height:32px;margin-top:-12px;border-radius:50%;background:#fff;border:3px solid var(--acc);box-shadow:0 6px 16px -4px rgba(60,40,120,.45)}
.rng::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid var(--acc);box-shadow:0 6px 16px -4px rgba(60,40,120,.45)}
.rng:focus-visible{outline:none}.rng:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(242,154,60,.4)}
.rng:disabled{opacity:.4}

/* --- Плеер звуков над вкладками */
.sndbar{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(88px + env(safe-area-inset-bottom));z-index:40;width:min(444px,calc(100% - 28px));display:flex;align-items:center;gap:12px;padding:8px 8px 8px 16px;border-radius:99px;background:var(--card);border:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 14px 34px -18px rgba(30,20,80,.6);font-size:13px}
.sndbar[hidden]{display:none}
.sndbar .eq{display:flex;align-items:flex-end;gap:3px;height:18px}
.sndbar .eq i{width:3px;border-radius:2px;background:var(--acc);height:40%}
@media (prefers-reduced-motion:no-preference){.sndbar .eq i{animation:eq 1.1s ease-in-out infinite}.sndbar .eq i:nth-child(2){animation-delay:-.4s}.sndbar .eq i:nth-child(3){animation-delay:-.8s}}
@keyframes eq{0%,100%{height:30%}50%{height:100%}}
.sndbar .tx{flex:1;min-width:0;text-align:left;line-height:1.25}
.sndbar .tx b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sndbar .tx small{color:var(--mute);font-size:11.5px}
.sndbar .stop{width:40px;height:40px;border-radius:50%;background:var(--acc);color:var(--acc-ink);display:grid;place-items:center}
.sndbar .stop svg{width:16px;height:16px;fill:currentColor}
body[data-active=settings] .sndbar{bottom:20px}

/* --- План дня */
.plan-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.plan-seg{margin:12px 0 4px}
.plan-sum{display:grid;grid-template-columns:1.15fr 1fr .8fr;gap:8px;align-items:end;padding:16px 18px}
.plan-sum small{display:block;font-size:11px;color:var(--mute);letter-spacing:.08em;text-transform:uppercase}
.plan-sum b{display:block;margin-top:3px;font-size:28px;font-weight:700;letter-spacing:-.02em;font-feature-settings:"tnum"}
.plan-sum div:nth-child(n+2) b{font-size:20px}
.plan-sum .dl{display:block;font-size:11.5px;color:var(--atx);font-weight:600;margin-top:1px;min-height:14px}
.plan-legend{display:flex;gap:14px;font-size:11.5px;color:var(--mute);margin:10px 4px 0}
.plan-legend i{display:inline-block;width:14px;height:10px;border-radius:5px;vertical-align:-1px;margin-right:5px;background:linear-gradient(160deg,#B9A9EE,#8E7CC3)}
.plan-legend i.g{background:transparent;border:1.5px dashed var(--mute)}
.lane-card{padding:14px 12px 14px 8px}
.lane{position:relative;height:var(--lh,680px);margin:4px 0}
.lane .lh{position:absolute;left:0;width:38px;text-align:right;font-size:11px;color:var(--mute);transform:translateY(-50%);font-feature-settings:"tnum"}
.lane .lg{position:absolute;left:46px;right:0;border-top:1px dashed var(--line)}
.lane .lb{position:absolute;left:54px;right:2px;border-radius:18px;padding:0 14px;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#fff;transition:top .38s cubic-bezier(.2,.8,.2,1),height .38s cubic-bezier(.2,.8,.2,1),opacity .3s;white-space:nowrap;overflow:hidden}
.lane .lb.nap{background:linear-gradient(160deg,#B9A9EE,#8E7CC3);box-shadow:0 12px 26px -16px #5C49A8;z-index:2}
.lane .lb.nap.done{background:linear-gradient(160deg,#CDC4F0,#ABA0DA);opacity:.9}
.lane .lb.nap.ongoing{box-shadow:0 0 0 3px rgba(242,154,60,.55),0 12px 26px -16px #5C49A8}
.lane .lb.nap small{font-weight:500;opacity:.85;font-size:12px;font-feature-settings:"tnum"}
.lane .lb.pt{height:34px;border-radius:99px;padding:0 14px 0 10px;z-index:3}
.lane .lb.pt.sun{background:linear-gradient(160deg,#FFD58A,#FFA84D);color:#4A2A05;box-shadow:0 10px 22px -12px #F29A3C}
.lane .lb.pt.moon{background:linear-gradient(160deg,#4B4A8F,#2B2A63);color:#FFE9B0;box-shadow:0 10px 22px -12px #1B1A4A}
.lane .lb.pt svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.lane .lb.ghost{background:transparent;border:1.5px dashed var(--mute);color:var(--mute);box-shadow:none;opacity:.6;z-index:1;padding:0}
.lane .lb.ghost.nap small,.lane .lb.ghost span{display:none}
.lane .lb[hidden]{display:none}
.lane .lw{position:absolute;left:54px;right:2px;text-align:center;font-size:11.5px;color:var(--mute);transform:translateY(-50%);transition:top .38s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.lane .lw::before{content:"";position:absolute;left:50%;top:-12px;bottom:-12px;border-left:1.5px dotted var(--line)}
.lane .lw span{position:relative;background:var(--card);padding:1px 8px;border-radius:99px}
.lane .lnow{position:absolute;left:46px;right:0;height:0;border-top:2px solid var(--acc);z-index:4;transition:top .5s}
.lane .lnow::before{content:"";position:absolute;left:-5px;top:-6px;width:10px;height:10px;border-radius:50%;background:var(--acc)}
.lane .lnow em{position:absolute;right:0;top:-10px;font-style:normal;font-size:10.5px;font-weight:700;background:var(--acc);color:var(--acc-ink);padding:1px 7px;border-radius:99px}
.plan-ctl{position:sticky;bottom:calc(88px + env(safe-area-inset-bottom));z-index:20;padding:12px 18px 10px;box-shadow:0 -10px 34px -18px rgba(30,20,80,.5),0 18px 40px -28px rgba(30,20,80,.55)}
.plan-ctl .row2{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--mute)}
.plan-ctl .row2 b{font-weight:700;color:var(--ink);font-feature-settings:"tnum"}
.plan-ctl .row2 b em{font-style:normal;color:var(--atx);font-size:12px;margin-left:6px}
.plan-ctl .btns{display:grid;grid-template-columns:1fr 1.7fr;gap:8px;margin-top:6px}
.plan-ctl .btns button{padding:12px;border-radius:20px;font-weight:700;font-size:14px;min-height:46px;background:var(--soft)}
.plan-ctl .btns button.pri{background:linear-gradient(160deg,var(--acc2),var(--acc));color:var(--acc-ink)}
.plan-ctl .btns button:disabled{opacity:.45}
.plan-chg{font-size:13px;line-height:1.55;color:var(--ink)}
.plan-chg h4{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-weight:600;margin-bottom:4px}
.plan-chg li{list-style:none;position:relative;padding:3px 0 3px 18px}
.plan-chg li::before{content:"";position:absolute;left:2px;top:10px;width:7px;height:7px;border-radius:50%;background:var(--acc)}
.plan-chg p{color:var(--mute)}
.plan-guide{font-size:12px;color:var(--mute);text-align:center;margin:12px 6px 4px;line-height:1.5}
.plan-typ{font-size:12.5px;color:var(--mute);margin:8px 4px 0}

/* --- Ночник-часы */
.clockov{position:fixed;inset:0;z-index:80;background:#04050D;color:#C9CCEA;display:grid;grid-template-rows:auto 1fr auto auto auto;justify-items:center;align-items:center;padding:calc(14px + env(safe-area-inset-top)) 18px calc(22px + env(safe-area-inset-bottom));overflow:hidden;opacity:0;transition:opacity .5s}
.clockov.open{opacity:1}
.clockov[hidden]{display:none}
.clk-bg{position:absolute;inset:0;background:radial-gradient(90% 60% at 50% 35%,#10143A 0,#04050D 70%);transition:opacity 6s ease,background 6s ease;z-index:0}
.clockov[data-phase=wake] .clk-bg{background:radial-gradient(100% 70% at 50% 38%,#8A5A12 0,#3A220A 55%,#120A04 100%)}
.clockov>*{position:relative;z-index:1}
.clk-x{justify-self:end;padding:10px 14px;border-radius:99px;font-size:13px;color:#6F75A8;min-height:44px;opacity:.7}
.clk-stage{position:relative;width:min(72vw,320px);aspect-ratio:1}
.clk-orb{position:absolute;inset:0;left:0;top:0;width:100%;opacity:0;transition:opacity 3s ease}
.clk-orb.show{opacity:1}
.clockov[data-phase=night] .clk-moon{opacity:.85}
.clockov[data-phase=wake] .clk-sun{opacity:1}
.clockov[data-phase=night] .clk-sun,.clockov[data-phase=wake] .clk-moon{opacity:0}
.clk-time{font-size:56px;font-weight:200;letter-spacing:-.02em;color:#5A5F8C;font-feature-settings:"tnum";margin-top:6px;transition:color 6s}
.clockov[data-phase=wake] .clk-time{color:#F6D9A0}
.clk-msg{font-size:16px;text-align:center;color:#7B80AE;min-height:48px;max-width:300px;line-height:1.45;transition:color 6s}
.clockov[data-phase=wake] .clk-msg{color:#FFE6B0;font-weight:600}
.clk-set{display:flex;align-items:center;gap:18px;margin-top:6px}
.clk-set button{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.07);color:#A9AEDB;font-size:26px;line-height:1}
.clk-set div{text-align:center;min-width:120px}.clk-set small{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#5F648F}.clk-set b{display:block;font-size:24px;font-weight:300;color:#A9AEDB;font-feature-settings:"tnum"}
@media (prefers-reduced-motion:reduce){.clk-orb,.clk-bg,.clk-time,.clk-msg{transition:none}.lane .lb,.lane .lw{transition:none}}

body.has-snd .toast{bottom:calc(142px + env(safe-area-inset-bottom))}
.snd-t:last-child:nth-child(3n+1){grid-column:1/-1;display:flex;flex-direction:row;justify-content:center;gap:10px;min-height:60px}
.clk-msg{white-space:pre-line}
/* ряды быстрых кнопок не переносятся на узких телефонах (375 px) */
.more{flex-wrap:nowrap;gap:6px}
.more button{padding:10px 12px;gap:6px;flex:0 1 auto;min-width:0}
.more button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* «Плачет»: кнопка действия под текстом, список без лишнего отступа, понятная «шторка» врача */
.chk{grid-template-columns:44px 1fr}
.chk button{grid-column:2;justify-self:start;margin-top:2px;padding:10px 16px}
.chk>span:last-child:empty{display:none}
.cry-tips ul{margin:0;padding:0}
.cry-doc summary{font-family:var(--sans);font-style:normal;font-size:14px;font-weight:600;color:var(--ink);justify-content:space-between}
.cry-doc summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--mute);border-bottom:2px solid var(--mute);transform:rotate(45deg);transition:transform .25s;margin-right:4px}
.cry-doc[open] summary::after{transform:rotate(-135deg)}
.plan-what{font-family:var(--serif);font-style:italic;font-weight:500;font-size:19px;margin-bottom:0}
.clk-hint{font-size:12px;color:#4F5480;text-align:center;max-width:300px;line-height:1.45}
/* план: панель управления компактнее, чтобы лента дня оставалась видна */
.plan-sum{grid-template-columns:1fr 1.35fr .8fr}
.plan-sum div:nth-child(n+2) b{font-size:19px;white-space:nowrap}
.plan-ctl{padding:10px 16px 10px}
.plan-head{display:flex;justify-content:space-between;align-items:center}
.plan-head button{padding:6px 12px;border-radius:99px;background:var(--soft);font-size:12.5px;font-weight:600;min-height:36px}
.plan-head button:disabled{opacity:.4}
.plan-ctl .rng{height:34px}
.plan-ctl .row2{margin-top:-2px}
.plan-ctl>button.pri{width:100%;margin-top:4px;padding:11px;border-radius:20px;font-weight:700;font-size:14px;min-height:44px;background:linear-gradient(160deg,var(--acc2),var(--acc));color:var(--acc-ink)}
.nstats b{font-size:15.5px;white-space:nowrap}.nstats div{padding:10px}
.snd-t:last-child:nth-child(3n+1){align-items:center}
.clockov>*:not(.clk-bg){position:relative;z-index:1}
.clockov>.clk-bg{position:absolute;inset:0;z-index:0;background:radial-gradient(90% 60% at 50% 35%,#10143A 0,#04050D 70%)}
.clk-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(100% 70% at 50% 38%,#8A5A12 0,#3A220A 55%,#120A04 100%);opacity:0;transition:opacity 6s ease}
.clockov[data-phase=wake] .clk-bg::after{opacity:1}
.clockov[data-phase=wake] .clk-bg{background:radial-gradient(90% 60% at 50% 35%,#10143A 0,#04050D 70%)}
