/* nexus-live — mobil (≤1023): zdieľanie (spodný hárok, rail preč), chat bublina nad sticky lištou, auth/registračné formuláre.
   Skupina F, 2026-10-11. Desktop ≥1024 sa NEMENÍ — všetko je v media query. Spec: docs/landing-mobile-20261011/SPEC.md §4.17, §6. */

/* zatvorený panel nesmie existovať ani pre čítačky/metriky (aj keď A fix v theme.css chýba) */
.nx-shr-panel[hidden],.nx-shr-backdrop[hidden]{display:none!important}

@media (max-width:1023px){
  /* ---------- Zdieľanie ---------- */
  /* rail prekrýva text → keď existuje sticky lišta (B, .nx-mbar so share tlačidlom), rail skryť úplne */
  body:has(.nx-mbar) .nx-shr-rail{display:none!important}
  /* fallback bez lišty: len malé hlavné tlačidlo pri pravom okraji, nad chat bublinou */
  .nx-shr-rail{bottom:calc(88px + env(safe-area-inset-bottom));padding:4px;box-shadow:0 8px 22px rgba(22,22,29,.22)}
  .nx-shr-rail .nx-shr-rb.-main{width:var(--m-tap,44px);height:var(--m-tap,44px);font-size:.92rem}
  .nx-shr-rail .nx-shr-rb{min-width:var(--m-tap,44px);min-height:var(--m-tap,44px)}

  .nx-shr-backdrop{visibility:hidden;transition:opacity .3s,visibility 0s .3s}
  .nx-shr.is-open .nx-shr-backdrop{visibility:visible;transition:opacity .3s,visibility 0s}
  .nx-shr-panel{top:auto;left:0;right:0;bottom:0;width:100%;max-height:86vh;max-height:86dvh;border-radius:24px 24px 0 0;
    transform:translateY(104%);visibility:hidden;transition:transform .3s cubic-bezier(.22,.8,.3,1),visibility 0s .3s;
    box-shadow:0 -20px 60px rgba(22,22,29,.25);padding-bottom:env(safe-area-inset-bottom)}
  .nx-shr.is-open .nx-shr-panel{transform:none;visibility:visible;transition:transform .3s cubic-bezier(.22,.8,.3,1),visibility 0s}
  .nx-shr-panel::before{content:"";display:block;flex:0 0 auto;width:36px;height:4px;border-radius:999px;background:var(--line-2,#cfd2df);margin:10px auto 0}
  .nx-shr-hd{padding:6px var(--m-gutter,20px) 6px;touch-action:none}
  .nx-shr-hd h2{font-size:20px}
  .nx-shr-x{width:44px;height:44px;font-size:1.05rem;margin-right:-6px}
  .nx-shr-body{padding:0 var(--m-gutter,20px) 22px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .nx-shr-lbl{font-size:13.5px;margin:12px 0 8px}
  .nx-shr-sel select{min-height:48px;font-size:16px}
  .nx-shr-prev{padding:10px 12px;border-radius:var(--m-r,16px)}
  .nx-shr-prev span{font-size:13px}
  .nx-shr-all{min-height:44px;margin-bottom:0;font-size:14px}
  .nx-shr:not(.is-all) .nx-shr-grps,.nx-shr-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 4px}
  .nx-shr-ch{min-height:76px;padding:2px 0;gap:6px;-webkit-tap-highlight-color:transparent}
  .nx-shr-ch:active .nx-shr-ic{transform:scale(.94)}
  .nx-shr-ic{width:52px;height:52px;font-size:1.25rem}
  .nx-shr-ch-l{font-size:13px;line-height:1.2;color:var(--text,#1c1c28);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 2px}
  /* natívny hárok systému (len s Web Share API) ako prvá dlaždica */
  .nx-shr-ch[data-shr-ch="native"]{order:-1}
  .nx-shr-grp-lbl{font-size:13px}
  .nx-shr-link{margin-top:18px}
  .nx-shr-link input{min-height:48px;font-size:16px;border-radius:14px}
  .nx-shr-link .nx-btn{min-height:48px;border-radius:14px}
  .nx-shr-toast{bottom:calc(var(--m-sticky-off,76px) + 8px)}

  /* chat bublina /nexus-widget.js (cudzí skript) — nad sticky lištou, nie cez obsah */
  body:has(.nx-mbar) #nxw-root{bottom:var(--m-sticky-off,76px)!important;right:12px!important}
  body:has(.nx-mbar) #nxw-root .nxw-panel{bottom:calc(var(--m-sticky-off,76px) + 68px)!important;right:12px!important;max-height:calc(100vh - var(--m-sticky-off,76px) - 140px)!important}
  body.nx-shr-lock #nxw-root{visibility:hidden}
  body:has(.nx-mbar) #nxw-root .nxw-btn{width:48px!important;height:48px!important;box-shadow:0 8px 20px -6px rgba(22,22,29,.35)!important}
  body:has(.nx-mbar) #nxw-root .nxw-btn svg{width:22px;height:22px}

  /* ---------- Auth karty (login / zabudnuté heslo / reset / overenie / onboarding) ---------- */
  .nx-auth-wrap{padding:24px var(--m-gutter,20px) 40px;min-height:0}
  .nx-auth-card{border-radius:var(--m-r-xl,24px);box-shadow:var(--m-shadow,0 1px 2px rgba(22,22,29,.05),0 8px 24px -12px rgba(22,22,29,.18));padding:4px}
  .nx-auth-card .login-card,.nx-auth-card .card,.nx-auth-card .lp-auth-card{padding:24px 18px}
  .nx-auth-card h1{font-size:26px;line-height:1.15}
  .nx-auth-card label,.nx-auth .lp-auth-card label{font-size:14px;font-weight:600;margin-bottom:6px}
  .nx-auth-card input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.nx-auth-card select,
  .nx-auth .lp-auth-card input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.nx-auth .lp-auth-card select{
    min-height:52px;font-size:16px!important;border-radius:14px;padding-block:12px}
  .nx-auth-card textarea{font-size:16px!important;border-radius:14px;min-height:96px}
  .nx-auth-card .btn,.nx-auth-card button[type=submit],.nx-auth .lp-auth-card .btn,.nx-auth .lp-auth-card button[type=submit]{min-height:52px;font-size:17px;font-weight:700;border-radius:14px;width:100%}
  .nx-auth .password-toggle,.nx-auth .pw-toggle{min-width:44px;min-height:44px;display:grid;place-items:center;right:4px}
  .nx-auth .password-wrapper input,.nx-auth .pw-wrap input{padding-right:52px}
  .nx-auth-card .footer-links a,.nx-auth-card a.logo{display:inline-flex;align-items:center;min-height:var(--m-tap,44px)}
  .nx-auth .lp-auth-foot{line-height:1.7}.nx-auth .lp-auth-foot a{display:inline-flex;align-items:center;min-height:var(--m-tap,44px)}
  .nx-auth-card .error-msg,.nx-auth .lp-alert,.nx-auth #regFormError:not(:empty){font-size:13.5px;border-radius:14px}
  .nx-auth input[type=checkbox],.nx-auth input[type=radio]{width:22px;height:22px;flex:0 0 22px}
  .nx-auth label:has(> input[type=checkbox]),.nx-auth label:has(> input[type=radio]){min-height:44px;display:flex;align-items:center;gap:10px}

  /* ---------- Registrácia (index.php, lp-reg) — formulár hneď pod nadpisom ---------- */
  .nx-auth .lp-auth{padding:20px 0 40px}
  .nx-auth .lp-container{width:auto;padding-inline:var(--m-gutter,20px)}
  .nx-auth .lp-reg-grid{display:flex;flex-direction:column;gap:0}
  .nx-auth .lp-reg-info{display:contents}
  .nx-auth .lp-reg-info > *{order:3}
  .nx-auth .lp-reg-info > .lp-badge,.nx-auth .lp-reg-info > h1,.nx-auth .lp-reg-info > .lp-reg-lead{order:0}
  .nx-auth .lp-badge{align-self:flex-start;height:28px;font-size:12px}
  .nx-auth .lp-reg-info h1{font-size:var(--m-h1,clamp(32px,9.4vw,38px));line-height:1.06;letter-spacing:-.025em;margin:14px 0 10px}
  .nx-auth .lp-reg-lead{font-size:var(--m-lead,17px);line-height:1.5;color:var(--m-text-2,#3b3f4a);margin:0 0 20px;--m-lines:3}
  .nx-auth .lp-auth-card{order:2;padding:24px 18px;border-radius:var(--m-r-xl,24px);box-shadow:var(--m-shadow-l,0 18px 40px -18px rgba(22,22,29,.28));margin-bottom:28px}
  .nx-auth .lp-auth-card h1{font-size:24px}
  .nx-auth .lp-auth-sub{margin-bottom:18px}
  .nx-auth .lp-auth-card .lp-row{grid-template-columns:1fr!important;gap:0}
  .nx-auth .lp-auth-card details > summary{min-height:44px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;line-height:1.35}
  .nx-auth .plan-options{gap:10px}
  .nx-auth .plan-option{min-height:60px;justify-content:center;padding:10px 12px;border-radius:14px}
  .nx-auth .plan-name{font-size:15px}.nx-auth .plan-price{font-size:13px}
  .nx-auth .lp-reg-checks{gap:12px;margin:0 0 18px;background:#fff;border:1px solid var(--line,#e3e5ee);border-radius:var(--m-r-l,20px);padding:18px 16px;box-shadow:var(--m-shadow,none)}
  .nx-auth .lp-reg-checks li{align-items:flex-start;font-size:15px;line-height:1.45;justify-content:flex-start!important}
  .nx-auth .lp-reg-checks li i{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--m-tint-2,#eef0ff);display:grid;place-items:center;font-size:11px;margin-top:1px}
  .nx-auth .lp-reg-note{font-size:13.5px;margin:0 0 12px;text-align:left}
  .nx-auth .lp-reg-trust{justify-content:flex-start!important;gap:8px}
  .nx-auth .lp-reg-trust span{min-height:36px}
}
@media (max-width:389px){
  .nx-auth .plan-options{grid-template-columns:1fr}
  .nx-shr-ic{width:48px;height:48px}
}
@media (prefers-reduced-motion:reduce){.nx-shr-panel,.nx-shr-backdrop{transition:none!important}}
