/* psyho — спільні стилі застосунку. Адаптив: мобільний / планшет / десктоп. */
:root{
  --bg:#f4efe4; --ink:#231d16; --muted:#726557; --line:#e2d9c8;
  --accent:#2b5f49; --accent-ink:#1c4232; --accent-soft:#dde9e0;
  --warm:#e0a13a; --warm-soft:#f8ecd4; --warm-ink:#9a6a1d;
  --panel:#fffdf9; --danger:#b5502f; --ok:#2f7d4f;
  --shadow:0 18px 44px rgb(40 30 18/10%);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;color:var(--ink);
  background:radial-gradient(46% 38% at 90% -2%,#e8f0e6 0,transparent 58%),radial-gradient(42% 40% at 4% 8%,#f8ead0 0,transparent 60%),var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}

/* header */
header.top{position:sticky;top:0;z-index:30;background:rgba(244,239,228,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:20px;height:66px}
.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:20px}
.brand .d{width:30px;height:30px;border-radius:10px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:15px}
.menu{display:flex;gap:2px;margin:0 auto}
.menu a{font-size:14.5px;font-weight:600;color:#4c4335;padding:9px 12px;border-radius:9px;white-space:nowrap}
.menu a:hover{background:#ece2d0}
.nav .lang{font-size:13px;font-weight:700;border:1px solid var(--line);border-radius:999px;padding:7px 12px}
.lang--switch{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:999px;padding:5px 8px}
.lang--switch a{color:#8a7d6a;font-weight:800;padding:2px 6px;border-radius:6px}
.lang--switch a.on{color:var(--accent-ink);background:#e8ddc9}
.lang--switch .sep{color:#c9bfad}
.nav .enter{font-size:14px;font-weight:700;border:1.5px solid var(--accent);color:var(--accent-ink);border-radius:999px;padding:9px 16px}
.burger{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:11px;font-size:18px;background:var(--panel);cursor:pointer}

/* layout */
main{padding:34px 0 60px}
h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.02em;line-height:1.08}
h2{font-size:22px;letter-spacing:-.01em;margin-bottom:4px}
.sub{color:var(--muted);margin-bottom:22px}

/* card / forms */
.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:26px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:block;font-weight:600;font-size:14px;margin:12px 0 6px}
input,textarea,select{width:100%;font:inherit;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent)}
textarea{min-height:96px;resize:vertical}
.hint{font-size:12.5px;color:var(--muted);margin-top:5px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.chips label{display:inline-flex;align-items:center;gap:7px;margin:0;padding:9px 13px;border:1.5px solid var(--line);border-radius:999px;font-weight:600;cursor:pointer;background:#fff}
.chips input{width:auto}
.chk{display:flex;align-items:flex-start;gap:9px;margin-top:14px;font-size:13.5px;color:var(--muted)}
.chk input{width:auto;margin-top:3px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  background:linear-gradient(135deg,#317a56 0%,#2b5f49 100%);color:#fff;border:0;border-radius:14px;
  font:inherit;font-weight:800;font-size:16px;padding:15px 24px;cursor:pointer;
  box-shadow:0 14px 30px -8px rgb(43 95 73/45%);transition:transform .15s,box-shadow .15s,filter .15s}
.btn:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 18px 36px -8px rgb(43 95 73/52%)}
.btn:active{transform:translateY(0)}
.btn.block{width:100%}
.btn.ghost{background:#fbf4e7;color:var(--accent-ink);border:1.5px solid var(--accent);box-shadow:none}
.btn.ghost:hover{background:var(--warm-soft);filter:none;transform:translateY(-2px);box-shadow:0 10px 22px -12px rgb(43 95 73/40%)}
.alt{margin-top:16px;font-size:14px;color:var(--muted);text-align:center}
.msg{padding:12px 15px;border-radius:12px;font-size:14px;margin-bottom:16px}
.msg.err{background:#fbeae4;color:#8f3c20;border:1px solid #e7c3b2}
.msg.ok{background:#e2f0e6;color:#245c3a;border:1px solid #b8dbc4}

.narrow{max-width:560px;margin:0 auto}
.pill{display:inline-block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:5px 11px;border-radius:999px}
.pill.pending{background:#fdf1dc;color:#8a5b12}
.pill.verified{background:var(--accent-soft);color:var(--accent-ink)}
.pill.rejected{background:#fbeae4;color:#8f3c20}

footer.bot{border-top:1px solid var(--line);padding:26px 0;color:var(--muted);font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* support chat widget */
#support-btn{position:fixed;right:20px;bottom:20px;z-index:50;background:var(--accent);color:#fff;border:0;border-radius:999px;
  padding:14px 20px;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 14px 34px rgb(43 95 73/34%)}
/* Короткі екрани (телефон в альбомній) — компактна кнопка, щоб не перекривала контент */
@media(max-height:480px){
  #support-btn{padding:8px 12px;font-size:13px;bottom:10px;right:10px;opacity:.94}
  #support-panel{bottom:50px;max-height:84vh}
}
#support-panel{position:fixed;right:20px;bottom:78px;z-index:50;width:340px;max-width:calc(100vw - 32px);height:440px;max-height:70vh;
  background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 70px rgb(20 26 20/22%);display:none;flex-direction:column;overflow:hidden}
#support-panel.open{display:flex}
#support-panel .h{padding:14px 16px;border-bottom:1px solid var(--line);font-weight:800;display:flex;align-items:center;gap:8px;background:linear-gradient(180deg,#fff,#fbf6ee)}
#support-log{flex:1;padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:9px}
#support-log .b{max-width:82%;padding:10px 13px;border-radius:14px;font-size:14px}
#support-log .b.me{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:5px}
#support-log .b.them{align-self:flex-start;background:#f1ede3;border:1px solid var(--line);border-bottom-left-radius:5px}
#support-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}
#support-form input{border-radius:999px}
#support-form button{border:0;background:var(--accent);color:#fff;border-radius:999px;padding:0 16px;font-weight:800;cursor:pointer}

@media(max-width:900px){.menu,.nav .lang{display:none}.burger{display:grid;margin-left:auto}}
@media(max-width:600px){.grid2{grid-template-columns:1fr}main{padding:24px 0 48px}.card{padding:20px}}

/* Кнопка-посилання (напр. «Скасувати» у списку сесій) */
.linkbtn{background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--danger,#b5432f);cursor:pointer}
.linkbtn:hover{text-decoration:underline}
