/* «Аврелий» — камень и бронза.
   Палитра: графит #14161A · камень #1E2127 · пергамент #E8E2D5 ·
   бронза #B08D57 · приглушённый #8A8578 */

:root{
  --bg:#14161A; --stone:#1E2127; --stone-2:#262A31;
  --ink:#E8E2D5; --muted:#8A8578; --bronze:#B08D57; --bronze-dim:#7d6540;
  --danger:#b0575c;
  --serif:'PT Serif',Georgia,serif; --sans:'Inter',-apple-system,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px}
body{padding-bottom:76px;min-height:100vh}

.screen{display:none;padding:18px 18px 8px;max-width:560px;margin:0 auto}
.screen.active{display:block}

.top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px}
.brand{font-family:var(--serif);font-weight:700;letter-spacing:.35em;font-size:.95rem;color:var(--bronze)}
.streak{font-family:var(--serif);font-size:1.05rem;color:var(--ink);display:flex;gap:6px;align-items:baseline}
.streak .flame{color:var(--bronze);font-size:.7rem;transform:translateY(-1px)}

.loading{color:var(--muted);text-align:center;padding:48px 0;font-size:.95rem}

/* ---- карточка дня ---- */
.day-label{display:flex;justify-content:space-between;color:var(--muted);
  font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
.quote-block{border-left:2px solid var(--bronze);padding:4px 0 4px 16px;margin-bottom:6px}
.quote{font-family:var(--serif);font-size:1.28rem;line-height:1.5;font-style:italic}
.quote-src{margin-top:10px;color:var(--bronze);font-size:.82rem;letter-spacing:.04em}
.rule{border:none;height:1px;background:linear-gradient(90deg,var(--bronze-dim),transparent);margin:22px 0}

.section-label{color:var(--bronze);font-size:.72rem;letter-spacing:.22em;
  text-transform:uppercase;margin-bottom:10px}
.razbor p{line-height:1.62;margin-bottom:12px;font-size:.98rem}
.question{font-family:var(--serif);font-size:1.12rem;line-height:1.5;margin-bottom:14px}

textarea.answer{width:100%;min-height:110px;background:var(--stone);color:var(--ink);
  border:1px solid var(--stone-2);border-radius:10px;padding:12px 14px;
  font-family:var(--sans);font-size:.95rem;line-height:1.5;resize:vertical}
textarea.answer:focus{outline:none;border-color:var(--bronze-dim)}
.btn{display:block;width:100%;margin-top:10px;padding:13px;border:none;border-radius:10px;
  background:var(--bronze);color:#14161A;font-family:var(--sans);font-weight:600;
  font-size:.95rem;cursor:pointer}
.btn:active{transform:translateY(1px)}
.btn.secondary{background:var(--stone-2);color:var(--ink)}
.btn:disabled{opacity:.5}
.saved-note{color:var(--muted);font-size:.82rem;text-align:center;margin-top:8px;min-height:1em}

.practice{background:var(--stone);border:1px solid var(--stone-2);border-radius:12px;
  padding:16px;line-height:1.55;font-size:.95rem}
.practice::before{content:"Практика на сегодня";display:block;color:var(--bronze);
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;margin-bottom:8px}

.commandment{background:var(--stone);border:1px solid var(--bronze-dim);border-radius:12px;
  padding:16px;margin-top:22px;font-size:.92rem;line-height:1.55}
.commandment h4{font-family:var(--serif);font-size:1rem;margin-bottom:10px;color:var(--bronze)}
.commandment .trad{margin-top:10px}
.commandment .trad b{color:var(--bronze);font-weight:600;font-size:.8rem;
  letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:3px}
.commandment .life{margin-top:12px;font-family:var(--serif);font-style:italic}

/* ---- путь ---- */
.path-item{display:flex;align-items:center;gap:14px;background:var(--stone);
  border:1px solid var(--stone-2);border-radius:12px;padding:13px 15px;margin-bottom:9px;cursor:pointer}
.path-item .num{font-family:var(--serif);color:var(--bronze);min-width:44px;font-size:1.05rem}
.path-item .meta{flex:1}
.path-item .theme{font-size:.95rem}
.path-item .sub{color:var(--muted);font-size:.78rem;margin-top:2px}
.path-item .mark{color:var(--bronze);font-size:.85rem}
.path-item.locked{opacity:.55}
.paywall{background:var(--stone);border:1px dashed var(--bronze-dim);border-radius:12px;
  padding:16px;margin:14px 0;color:var(--muted);font-size:.88rem;line-height:1.5;text-align:center}

/* ---- профиль ---- */
.p-row{display:flex;justify-content:space-between;align-items:center;background:var(--stone);
  border:1px solid var(--stone-2);border-radius:12px;padding:14px 16px;margin-bottom:10px}
.p-row .label{font-size:.95rem}
.p-row .hint{color:var(--muted);font-size:.78rem;margin-top:2px}
select.hour{background:var(--stone-2);color:var(--ink);border:1px solid var(--bronze-dim);
  border-radius:8px;padding:7px 10px;font-family:var(--sans);font-size:.9rem}
.switch{position:relative;width:46px;height:26px;flex-shrink:0}
.switch input{opacity:0;width:0;height:0}
.slider{position:absolute;inset:0;background:var(--stone-2);border-radius:26px;transition:.15s;cursor:pointer}
.slider:before{content:"";position:absolute;height:20px;width:20px;left:3px;top:3px;
  background:var(--muted);border-radius:50%;transition:.15s}
input:checked + .slider{background:var(--bronze-dim)}
input:checked + .slider:before{transform:translateX(20px);background:var(--bronze)}
.stat-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;margin-bottom:16px}
.stat{background:var(--stone);border:1px solid var(--stone-2);border-radius:12px;
  padding:13px 8px;text-align:center}
.stat .v{font-family:var(--serif);font-size:1.35rem;color:var(--bronze)}
.stat .k{color:var(--muted);font-size:.7rem;margin-top:3px;letter-spacing:.04em}

/* ---- таббар ---- */
.tabbar{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--stone);
  border-top:1px solid var(--stone-2);padding-bottom:env(safe-area-inset-bottom)}
.tab{flex:1;padding:15px 0;background:none;border:none;color:var(--muted);
  font-family:var(--sans);font-size:.85rem;cursor:pointer}
.tab.active{color:var(--bronze);font-weight:600}

/* ---- модалка архива ---- */
.modal{position:fixed;inset:0;background:rgba(10,11,13,.82);display:flex;
  align-items:flex-end;justify-content:center;z-index:50}
.modal.hidden{display:none}
.modal-card{background:var(--bg);border-top:1px solid var(--bronze-dim);border-radius:18px 18px 0 0;
  width:100%;max-width:560px;max-height:86vh;overflow-y:auto;padding:22px 18px 30px;position:relative}
.modal-close{position:absolute;top:12px;right:14px;background:none;border:none;
  color:var(--muted);font-size:1.05rem;cursor:pointer;padding:6px}
.archive-answer{background:var(--stone);border-radius:10px;padding:13px 15px;
  margin-top:10px;font-size:.93rem;line-height:1.55;white-space:pre-wrap}

.caught-up{text-align:center;padding:40px 10px;color:var(--muted);line-height:1.6}
.caught-up .big{font-family:var(--serif);font-size:1.3rem;color:var(--ink);margin-bottom:10px}

@media (prefers-reduced-motion: reduce){*{transition:none !important}}

/* ---- экран подписки ---- */
.pw-title{font-family:var(--serif);font-size:1.45rem;text-align:center;margin:6px 0 4px}
.pw-sub{color:var(--muted);text-align:center;font-size:.88rem;margin-bottom:20px}
.pw-list{margin:0 0 22px}
.pw-item{display:flex;gap:12px;align-items:flex-start;padding:10px 0;
  border-bottom:1px solid var(--stone-2);font-size:.94rem;line-height:1.45}
.pw-item:last-child{border-bottom:none}
.pw-item .ico{color:var(--bronze);font-size:.8rem;margin-top:4px}
.pw-item .sub{color:var(--muted);font-size:.8rem;margin-top:2px}
.pw-prices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.pw-price{background:var(--stone);border:1px solid var(--stone-2);border-radius:12px;
  padding:14px 10px;text-align:center;cursor:pointer;position:relative}
.pw-price.selected{border-color:var(--bronze)}
.pw-price .per{font-family:var(--serif);font-size:1.3rem}
.pw-price .lbl{color:var(--muted);font-size:.75rem;margin-top:3px}
.pw-price .badge{position:absolute;top:-9px;left:50%;transform:translateX(-50%);
  background:var(--bronze);color:#14161A;font-size:.66rem;font-weight:600;
  padding:2px 9px;border-radius:8px;white-space:nowrap}
.pw-note{color:var(--muted);font-size:.76rem;text-align:center;margin-top:10px;line-height:1.5}
