/* coaching.css — общие стили для инструментов коучинга
   Каждая страница переопределяет --mxw в своём :root */

:root {
    --bg: #f7f7fb;
    --surf: #ffffff;
    --brd: rgba(78,79,115,.18);
    --txt: #4E4F73;
    --mute: rgba(78,79,115,.6);
    --acc: #4E4F73;
    --acch: #3b3d58;
    --acl: rgba(78,79,115,.08);
    --mxw: 820px;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box }
body { font-family:'Inter',sans-serif; background:var(--bg); color:var(--txt); min-height:100vh }

/* NAV */
.navbar { background:var(--acc); padding:14px 24px }
.nav-container { max-width:var(--mxw); margin:0 auto; display:flex; align-items:center; justify-content:center; gap:20px; flex-wrap:wrap }
.nav-link { color:rgba(255,255,255,.75); text-decoration:none; font-size:.85rem; transition:color .2s }
.nav-link:hover { color:#fff }

/* HEADER */
.hdr { background:var(--acc); color:#fff; padding:2rem 1.5rem; text-align:center }
.hdr-lbl { font-size:.68rem; letter-spacing:.18em; text-transform:uppercase; opacity:.45; margin-bottom:.5rem }
.hdr h1 { font-family:'Playfair Display',serif; font-size:clamp(1.3rem,4vw,1.9rem); font-weight:400; margin-bottom:.4rem }
.hdr p { opacity:.55; font-size:.82rem; max-width:480px; margin:0 auto }

/* BACK BAR */
.back-bar { background:var(--surf); border-bottom:1px solid var(--brd) }
.back-bar-inner { max-width:var(--mxw); margin:0 auto; padding:.55rem 1.5rem }
.back-link { color:var(--acc); text-decoration:none; font-size:.85rem; font-weight:500; display:inline-flex; align-items:center; gap:.35rem }
.back-link:hover { text-decoration:underline }

/* WRAP */
.wrap { max-width:var(--mxw); margin:0 auto; padding:2rem 1.5rem 5rem }

/* DISCLAIMER */
.disclaimer { background:rgba(120,100,0,.06); border:1.5px solid rgba(180,140,0,.25); border-radius:10px; padding:.7rem 1rem; font-size:.79rem; color:var(--mute); line-height:1.55; display:flex; align-items:flex-start; gap:.6rem; margin-bottom:1.2rem }
.disclaimer-icon { font-size:1rem; flex-shrink:0; margin-top:.05rem }
.disclaimer em { font-style:italic; color:var(--txt) }

/* ACTIONS & BUTTONS */
.actions { display:flex; gap:.75rem; flex-wrap:wrap; margin-top:1.4rem; margin-bottom:2rem }
.btn { padding:.7rem 1.8rem; border:none; border-radius:10px; font-family:'Inter',sans-serif; font-size:.9rem; font-weight:500; cursor:pointer; transition:all .2s }
.btn-primary { background:var(--acc); color:#fff }
.btn-primary:hover { background:var(--acch); transform:translateY(-1px) }
.btn-secondary { background:var(--acl); color:var(--acc); border:1.5px solid var(--brd) }
.btn-secondary:hover { border-color:var(--acc) }
.btn-word { background:#2b579a; color:#fff }
.btn-word:hover { background:#1e3f73; transform:translateY(-1px) }

/* TOAST */
.toast { position:fixed; bottom:24px; left:50%; transform:translateX(-50%) translateY(60px); background:var(--acc); color:#fff; padding:.65rem 1.4rem; border-radius:100px; font-size:.85rem; opacity:0; transition:all .3s; pointer-events:none; white-space:nowrap; z-index:1000 }
.toast.show { transform:translateX(-50%) translateY(0); opacity:1 }

/* HISTORY */
.history-section { margin-top:2.5rem }
.history-section h2 { font-family:'Playfair Display',serif; font-size:1.1rem; font-weight:400; margin-bottom:1rem }
.hist-item { background:var(--surf); border:1.5px solid var(--brd); border-radius:12px; padding:1rem 1.2rem; margin-bottom:.7rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap }
.hist-date { font-weight:600; font-size:.85rem }
.hist-btns { display:flex; gap:.5rem; flex-shrink:0 }
.hist-btn { background:none; border:1.5px solid var(--brd); border-radius:8px; padding:.3rem .8rem; font-size:.75rem; font-family:'Inter',sans-serif; color:var(--acc); cursor:pointer }
.hist-btn:hover { border-color:var(--acc) }
.hist-btn.danger { color:#b23a3a; border-color:rgba(180,60,60,.3) }
.hist-btn.danger:hover { border-color:#b23a3a }
.no-history { color:var(--mute); font-size:.84rem; font-style:italic }

/* FOOTER */
.footer { background:var(--acc); color:#fff; text-align:center; padding:22px 20px; margin-top:40px }
.footer a { color:rgba(255,255,255,.75); text-decoration:none; font-size:.84rem }
.footer a:hover { color:#fff }
.footer-nav-row { display:flex; flex-wrap:wrap; gap:.3rem 1.2rem; justify-content:center; margin-bottom:.9rem }
.footer-nav-row a { color:rgba(255,255,255,.6); text-decoration:none; font-size:.79rem }
.footer-nav-row a:hover { color:#fff }
.footer-contacts-row { display:flex; flex-wrap:wrap; gap:.8rem 1.5rem; justify-content:center }
.footer-tg { color:rgba(255,255,255,.8); text-decoration:none; font-size:.84rem; display:inline-flex; align-items:center; gap:.4rem }
.footer-tg:hover { color:#fff }
.footer-tg svg { flex-shrink:0 }

/* PRINT */
@media print {
    .navbar, .actions, .history-section, .footer, .toast, .back-bar { display:none }
    .wrap { padding:0 }
    body { background:#fff }
}
