/* =========================================================================
   SPOJAK.sk — prihlasenie.css
   Iba sekcie pre prihlásenie/registráciu (aside s perks, panel s tabmi,
   formulárové polia, account-type toggle, B2B polia). Zdieľaný základ
   (tokeny, .btn/.btn-out/.btn-lg, header, nav, footer, toast, .crumbs,
   .site-shell) je v base.css.
   ========================================================================= */

/* ===== AUTH LAYOUT ===== */
.auth{display:grid;grid-template-columns:1fr 420px;min-height:560px}
.aside{background:var(--ink);color:#fff;padding:46px 44px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.aside::after{content:'';position:absolute;top:0;right:0;width:6px;height:100%;background:var(--red)}
.aside .grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:42px 42px}
.aside .inner{position:relative;max-width:440px}
.aside .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--red-on-dark);font-weight:500;margin-bottom:16px}
.aside h2{font-size:32px;font-weight:600;letter-spacing:-0.8px;line-height:1.12;margin-bottom:14px}
.aside p{font-size:14.5px;color:rgba(255,255,255,.66);line-height:1.6;margin-bottom:26px;max-width:380px}
.perks{display:flex;flex-direction:column;gap:15px}
.perk{display:flex;align-items:flex-start;gap:13px}
.perk .pic{width:38px;height:38px;border-radius:9px;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;flex-shrink:0}.perk .pic [data-ic]{font-size:20px;color:var(--lgreen)}
.perk .pt{font-size:14px;font-weight:600}.perk .ps{font-size:12.5px;color:rgba(255,255,255,.55);margin-top:2px;line-height:1.4}
.aside .b2bnote{margin-top:28px;font-size:12px;color:rgba(255,255,255,.5);border-top:1px solid rgba(255,255,255,.12);padding-top:18px}
.aside .b2bnote b{color:var(--b2b)}

.apanel{padding:40px 44px;display:flex;flex-direction:column;justify-content:center}
.atabs{display:flex;background:var(--bg);border-radius:10px;padding:4px;margin-bottom:26px}
.atab{flex:1;border:none;background:transparent;font:inherit;font-size:14px;font-weight:600;padding:11px;border-radius:7px;cursor:pointer;color:var(--muted)}
.atab.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.aform{display:none}.aform.on{display:block}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:15px}
.field label{font-size:12.5px;font-weight:600}
.field .ip{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:var(--rad);overflow:hidden;transition:.15s;background:#fff}
.field .ip:focus-within{border-color:var(--red)}
.field .ip [data-ic]{font-size:18px;color:var(--muted);margin:0 0 0 13px}
.field .ip input{flex:1;min-width:0;border:none;padding:12px 13px;font:inherit;font-size:14px;outline:none;color:var(--ink);background:transparent}
.field .ip .eye{border:none;background:none;cursor:pointer;color:var(--muted);padding:0 13px;display:flex}.field .ip .eye [data-ic]{margin:0;font-size:18px}
.field.err .ip{border-color:var(--red);background:#FEF3F3}
.field .emsg{font-size:11.5px;color:var(--red);display:none}.field.err .emsg{display:block}
/* minmax(0,…) + min-width:0 na inpute — inak 1fr nezmenší stĺpec pod prirodzenú šírku inputu
   a registračný formulár pretekal panel (scrollWidth 1 560 px pri okne 1 400 px). */
.row2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px}
.arow{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:12.5px}
.arow label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--ink)}.arow input{width:16px;height:16px;accent-color:var(--red)}
.arow a{color:var(--red);text-decoration:none}
.adiv{display:flex;align-items:center;gap:12px;margin:22px 0;color:var(--muted);font-size:12px}.adiv::before,.adiv::after{content:'';flex:1;height:1px;background:var(--line)}
.soc{display:flex;gap:10px}
.soc button{flex:1;border:1px solid var(--line);background:#fff;border-radius:var(--rad);padding:11px;font:inherit;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--ink)}.soc button:hover{border-color:var(--ink)}.soc button [data-ic]{font-size:18px}
.guest{margin-top:22px;background:var(--bg);border:1px solid var(--line);border-radius:var(--rad-lg);padding:16px;display:flex;align-items:center;gap:14px}
.guest .gic{width:40px;height:40px;border-radius:9px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0}.guest .gic [data-ic]{font-size:20px;color:var(--red)}
.guest .gt{flex:1}.guest .gtt{font-size:13.5px;font-weight:600}.guest .gts{font-size:12px;color:var(--muted);margin-top:2px;line-height:1.4}

/* account-type toggle (registrácia) */
.atype{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
.atopt{border:1.5px solid var(--line);border-radius:var(--rad);padding:13px;cursor:pointer;transition:.15s;display:flex;gap:10px;align-items:flex-start}
.atopt.sel{border-color:var(--red);background:var(--pink)}
.atopt .ar{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center}
.atopt.sel .ar{border-color:var(--red)}.atopt.sel .ar::after{content:'';width:9px;height:9px;border-radius:50%;background:var(--red)}
.atopt .att{font-size:13.5px;font-weight:600}.atopt .ats{font-size:11.5px;color:var(--muted);margin-top:2px;line-height:1.35}
.b2bfields{display:none}.b2bfields.show{display:block}
.b2bfields .co-note{display:flex;gap:9px;background:#FFF6EA;border:1px solid #F1DCB8;border-radius:var(--rad);padding:11px 13px;font-size:11.5px;line-height:1.45;color:#5c4a2e;margin-bottom:15px}.b2bfields .co-note [data-ic]{font-size:15px;color:#D97706;flex-shrink:0;margin-top:1px}.b2bfields .co-note b{color:#3a3a3a;font-weight:600}
.consent{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;margin-bottom:18px;cursor:pointer}.consent input{margin-top:2px;width:16px;height:16px;accent-color:var(--red);flex-shrink:0}.consent a{color:var(--red);text-decoration:none}
.pwhint{font-size:11px;color:var(--muted);margin-top:-9px;margin-bottom:15px}
/* chyba súhlasu (server aj JS) */
.consent.err{color:var(--red)}
.consent-msg{font-size:11.5px;color:var(--red);margin:-12px 0 16px}

/* hlášky servera (prihlásenie, registrácia, obnova hesla) */
.auth-flash{display:flex;gap:9px;align-items:flex-start;background:var(--greenbg);border:1px solid #c5e3cd;border-radius:var(--rad);padding:11px 13px;font-size:12.5px;line-height:1.5;color:#1f4a28;margin-bottom:18px}
.auth-flash [data-ic]{font-size:17px;color:var(--green);flex-shrink:0;margin-top:1px}
.auth-flash.err{background:#FEF3F3;border-color:#f1c5c5;color:#7a1f24}.auth-flash.err [data-ic]{color:var(--red)}
.auth-flash.warn{background:#FFF6EA;border-color:#F1DCB8;color:#5c4a2e}.auth-flash.warn [data-ic]{color:var(--amber)}

/* ===== MOBILE (prihlásenie) ===== */
@media(max-width:768px){
  .auth{grid-template-columns:minmax(0,1fr)}/* „1fr" pri 320 px pretekal o 29 px (min-content panelu) */
  .aside{display:none}
  .apanel{padding:28px 18px}
  .row2{grid-template-columns:1fr}
  .atype{grid-template-columns:1fr}
}
