/* ══ LoginModal.css — Модалка входу клієнта (телефон → код / пароль).
   Правити тут; сторінка підключає чанк через site_css() у шаблоні. ══ */

.lm-overlay { position:fixed; inset:0; background:rgba(0,0,0,.45); z-index:220;
              display:flex; align-items:flex-start; justify-content:center;
              padding:64px 16px 24px; overflow-y:auto; }
.lm-card { position:relative; background:#fff; border-radius:14px;
           width:100%; max-width:480px; padding:38px 40px 30px;
           box-shadow:0 18px 60px rgba(0,0,0,.22); }
.lm-x { position:absolute; top:14px; right:14px; width:34px; height:34px;
        border:0; background:none; cursor:pointer; color:#676767;
        display:grid; place-items:center; }
.lm-x svg { width:20px; height:20px; }
.lm-title { font-size:21px; font-weight:700; text-align:center; margin:0 0 20px; }
.lm-sub { text-align:center; color:#676767; font-size:14px; margin:-10px 0 16px; }
.lm-input { width:100%; border:1px solid var(--line); border-radius:10px;
            padding:13px 15px; font-size:16px; font-family:inherit; outline:none; }
.lm-input:focus { border-color:var(--green); }
.lm-code { text-align:center; letter-spacing:14px; font-size:24px; font-weight:700; }
.lm-btn { width:100%; margin-top:14px; background:var(--green); color:#fff;
          border:0; border-radius:10px; padding:14px; font-size:15px;
          font-weight:700; letter-spacing:.4px; cursor:pointer; }
.lm-btn[disabled] { opacity:.6; cursor:default; }
.lm-err { color:#E53935; font-size:13px; margin:10px 0 0; }
.lm-terms { color:#676767; font-size:12px; line-height:1.55; margin:14px 0 0; }
.lm-terms a { color:#0071BC; }
.lm-again { display:block; margin:14px auto 0; background:none; border:0;
            color:#0071BC; font-size:14px; cursor:pointer; }
.lm-card { max-width:640px; padding:44px 56px 36px; }
.lm-btn-line { background:#fff; color:#0071BC; border:1.4px solid #0071BC;
               border-radius:8px; padding:12px 26px; font-size:13px;
               font-weight:700; letter-spacing:.4px; cursor:pointer; }
.lm-btn-sm { width:auto; margin-top:0; padding:13px 34px; }
.lm-row { display:flex; justify-content:flex-end; gap:12px; margin-top:22px; }
.lm-left { text-align:left; margin:12px 0 0; }
.lm-passrow { display:flex; }
.lm-passrow .lm-input { border-radius:10px 0 0 10px; }
.lm-btn-join { width:auto; margin-top:0; border-radius:0 10px 10px 0;
               white-space:nowrap; padding:13px 22px; }
.lm-hint { color:#9b9b9b; font-size:13px; text-align:center; margin:12px 0 0; }
.lm-overlay[hidden] { display:none; }
.lm-btn-grey { background:#f3f4f6; color:#9b9b9b; }
.lm-btn-grey:not([disabled]) { background:var(--green); color:#fff; }
.lm-card { max-width:600px; padding:40px 40px 50px; border-radius:6px; }
.lm-x { top:26px; right:26px; width:30px; height:30px; color:#676767; }
.lm-x svg { width:24px; height:24px; }
.lm-title { font-family:'Poppins', sans-serif; font-size:26px; font-weight:600;
            color:#414141; line-height:1.35; margin:20px auto 40px; max-width:440px; }
.lm-title-via { font-size:22px; max-width:520px; margin-bottom:44px; }
#lmStepIdent, #lmStepPass, #lmStepCode, #lmStepSetPass { max-width:340px; margin:0 auto; }
.lm-input { height:40px; margin-bottom:16px; }
.lm-btn { margin-top:0; font-family:'Poppins', sans-serif; font-size:16px; font-weight:700; }
.lm-terms { font-size:14px; line-height:1.5; margin-top:16px; color:#676767; }
.lm-via { display:flex; justify-content:center; gap:112px; padding:10px 0 30px; }
.lm-via-b { background:none; border:0; cursor:pointer; display:flex; flex-direction:column;
            align-items:center; gap:20px; padding:0; font:inherit; }
.lm-via-ic { width:100px; height:100px; border-radius:50%; border:1px solid #0071BC;
             display:grid; place-items:center; color:#0071BC; }
.lm-via-ic svg { width:38px; height:38px; }
.lm-via-b b { font-family:'Poppins', sans-serif; font-size:16px; font-weight:700;
              color:#0071BC; }
.lm-via-b:hover .lm-via-ic { background:#F1F7FC; }
