/* Кольори й шрифти — з погодженого макету (розд. 12.7), один стиль із лід-магнітом. */
:root{
  --bg:#F6F9F3; --ink:#17283A; --ink2:#34465A; --muted:#4A5866; --blue:#00448B; --blue-d:#002F61;
  --green:#4E8F2A; --green-d:#2F5E17; --line:#D4DDCC; --soft:#F1F6EC; --card:#FFFFFF; --warn:#8A3B12;
  --ring-off:#DCE4D5;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:'Manrope',system-ui,sans-serif;-webkit-text-size-adjust:100%}
body{min-height:100vh;padding-bottom:84px}
main{max-width:480px;margin:0 auto;padding:18px 18px 16px;display:flex;flex-direction:column;gap:14px}
h1{margin:0;font-family:'Montserrat',sans-serif;font-weight:700;font-size:26px;line-height:1.2;color:var(--blue)}
h2{margin:0;font-size:15px;font-weight:700}
p{margin:0}
a{color:var(--blue)}
.top{display:flex;align-items:center;justify-content:space-between;min-height:32px}
.brand{font-family:'Montserrat',sans-serif;font-weight:700;font-size:13px;letter-spacing:1.5px;color:var(--blue)}
.brand i{font-style:normal;color:var(--green)}
.back{font-size:14px;font-weight:700;color:var(--blue);background:none;border:none;padding:8px 0;font-family:inherit;cursor:pointer;min-height:44px}
.sub{font-size:14px;line-height:1.45;color:var(--ink2)}
.muted{color:var(--muted);font-size:12px}
.center{text-align:center}.pad{padding:40px 0}
.card{background:var(--card);border:1.5px solid var(--line);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px}
.row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.ok{font-size:13px;font-weight:700;color:var(--green)}
.weeks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.wk{display:flex;flex-direction:column;align-items:center;gap:4px}
.ring{width:42px;height:42px;border-radius:21px;display:flex;align-items:center;justify-content:center}
.ring b{width:28px;height:28px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:12px}
.ring.pause{outline:2px dashed var(--blue);outline-offset:1px}
.wk span{font-size:11px;font-weight:600;color:var(--muted)}
.nudge{background:var(--soft);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.4;color:var(--ink2)}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.big{font-family:'Montserrat',sans-serif;font-size:34px;font-weight:700;color:var(--blue)}
.label{font-size:13px;font-weight:600;color:var(--muted)}
.chk{display:flex;align-items:center;justify-content:space-between;font-size:14px}
.chk b{font-family:'Montserrat',sans-serif}.chk .a{color:var(--green)}
.thought{background:var(--blue);color:#fff;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:6px}
.thought small{font-size:11px;font-weight:700;letter-spacing:1px;color:#BFD4EC}
.thought q{font-family:'Montserrat',sans-serif;font-size:17px;font-weight:600;line-height:1.4;quotes:none}
.thought span{font-size:12px;color:#DCE8F5}
.btn{display:block;width:100%;text-align:center;text-decoration:none;font-family:inherit;font-weight:700;font-size:15px;padding:13px;border-radius:14px;cursor:pointer;min-height:48px}
.btn.line{background:#fff;color:var(--blue);border:1.5px solid var(--blue)}
.btn.fill{background:var(--blue);color:#fff;border:none;font-family:'Montserrat',sans-serif;font-size:16px}
.btn.go{background:var(--green);color:#fff;border:none;font-family:'Montserrat',sans-serif}
.btn.warn{background:transparent;color:var(--warn);border:1.5px solid #E4C7B8;font-size:14px}
.btn.plain{background:transparent;border:none;color:var(--blue);font-size:14px}
.pair{display:flex;gap:10px}.pair>*{flex:1}
.choices{display:grid;gap:8px}
.choice{font-family:inherit;font-size:15px;font-weight:700;line-height:1.2;padding:12px 6px;border-radius:14px;cursor:pointer;min-height:56px;color:var(--ink);background:#fff;border:1.5px solid var(--line)}
.choice[aria-pressed="true"]{background:#E3F1DC;border-color:var(--green)}
.opt{display:block;text-align:left;width:100%;font-family:inherit;font-size:15px;font-weight:600;padding:12px 14px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;min-height:48px}
.opt[aria-pressed="true"]{background:#E3F1DC;border-color:var(--green)}
.fact{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #E2E8DC}
.fact:last-child{border-bottom:none}
.fact div{flex:1;font-size:14px;line-height:1.35}
.x{width:44px;height:44px;flex-shrink:0;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center}
.note{background:var(--soft);border-radius:12px;padding:12px;font-size:13px;line-height:1.45;color:var(--ink2)}
.alert{background:#FBE3D9;border:1.5px solid #E4C7B8;border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px;font-size:15px;line-height:1.45}
.progress{height:6px;border-radius:3px;background:var(--ring-off);overflow:hidden}
.progress i{display:block;height:100%;background:var(--green)}
.bottom{position:fixed;left:0;right:0;bottom:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--bg);display:flex;gap:10px;max-width:480px;margin:0 auto}
.ask{flex:3;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:#fff;font-family:'Montserrat',sans-serif;font-weight:700;font-size:15px;padding:15px;border-radius:14px;border:none;cursor:pointer;min-height:48px}
.menubtn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-size:15px;font-weight:700;color:var(--blue);background:#fff;border:1.5px solid var(--blue);border-radius:14px;padding:13px;cursor:pointer;min-height:48px}
.menu{position:fixed;left:12px;right:12px;bottom:84px;max-width:456px;margin:0 auto;background:#fff;border:1.5px solid var(--line);border-radius:18px;padding:8px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(23,40,58,.18);z-index:5}
.menu button{text-align:left;font-family:inherit;color:var(--ink);font-size:15px;font-weight:600;padding:14px 12px;border-radius:12px;border:none;background:none;cursor:pointer;min-height:48px}
.menu button[aria-current="page"]{font-weight:700}
.menu .sos{color:var(--warn)}
.menu[hidden]{display:none}
.scale{display:grid;grid-template-columns:repeat(11,1fr);gap:4px}.scale button{font-family:inherit;font-size:14px;font-weight:700;min-height:40px;padding:0;border-radius:10px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}.scale button:active{background:#E3F1DC;border-color:var(--green)}
