/* ===== Marca Sembradores Plataforma (solo este tenant) ===== */
/* Paleta sembradorespanama.com: verde #1d5c3f/#2a7a55, dorado #c9973f/#e8c170, crema #fbf5e6 */
:root{ --sp-green:#1d5c3f; --sp-green2:#2a7a55; --sp-gold:#c9973f; --sp-gold2:#e8c170; --sp-cream:#fbf5e6; --sp-ink:#223a2e; }
.sp-hide{ display:none !important; }

/* ---------- LOGO lockup (emblema + "Sembradores / PANAMÁ"), como el sitio ---------- */
.sp-lockup{ display:inline-flex !important; align-items:center; gap:12px; background:transparent !important; }
.sp-lockup .sp-lk-img{ object-fit:contain !important; display:block; flex:none; }
.sp-lockup .sp-lk-txt{ display:flex; flex-direction:column; line-height:1; }
.sp-lockup .sp-lk-txt b{ color:var(--sp-green) !important; font-weight:800; letter-spacing:-.01em; }
.sp-lockup .sp-lk-txt small{ color:var(--sp-gold) !important; font-weight:700; text-transform:uppercase; letter-spacing:.22em; margin-top:3px; }
/* tamaños por contexto */
.login-card .brand.sp-lockup .sp-lk-img{ width:52px; height:52px; }
.login-card .brand.sp-lockup .sp-lk-txt b{ font-size:1.42rem; }
.login-card .brand.sp-lockup .sp-lk-txt small{ font-size:.72rem; }
.sp-lockup-hero .sp-lk-img{ width:100px; height:100px; background:#fff; border-radius:22px; padding:12px; box-shadow:0 14px 38px rgba(0,0,0,.28); }
.sp-lockup-hero .sp-lk-txt b{ color:#fff !important; font-size:2.1rem; }
.sp-lockup-hero .sp-lk-txt small{ color:var(--sp-gold2) !important; font-size:.95rem; }
.sp-home-logo .sp-lk-img{ width:76px; height:76px; }
.sp-home-logo .sp-lk-txt b{ font-size:1.9rem; }
.sp-home-logo .sp-lk-txt small{ font-size:.9rem; }

/* ---------- LOGIN a pantalla dividida ---------- */
.login-wrap.sp-split{ display:flex !important; align-items:stretch !important; justify-content:stretch !important; min-height:100vh; width:100%; padding:0 !important; gap:0 !important; background:var(--sp-cream) !important; }
.sp-visual{ position:relative; flex:1 1 56%; min-width:0; overflow:hidden; color:#fff; display:flex; align-items:center; justify-content:center; padding:48px;
  background:radial-gradient(130% 120% at 15% 10%, rgba(232,193,112,.30), transparent 55%), radial-gradient(120% 140% at 95% 95%, rgba(201,151,63,.35), transparent 50%), linear-gradient(140deg, #184e36 0%, #1d5c3f 42%, #2a7a55 100%); }
.sp-visual::after{ content:""; position:absolute; inset:0; opacity:.14; pointer-events:none; background:repeating-linear-gradient(115deg, rgba(255,255,255,.6) 0 1px, transparent 1px 26px); }
.sp-visual-in{ position:relative; max-width:470px; }
.sp-lockup-hero{ margin-bottom:26px; }
.sp-visual-in p{ font-size:1.02rem; line-height:1.55; margin:0 0 26px; color:rgba(255,255,255,.92); max-width:42ch; }
.sp-verse{ display:block; border-left:3px solid var(--sp-gold2); padding:10px 0 10px 16px; font-style:italic; color:#fdf4df; font-size:.98rem; line-height:1.5; }
.sp-verse small{ display:block; font-style:normal; font-weight:700; color:var(--sp-gold2); margin-top:6px; letter-spacing:.04em; }

.login-wrap.sp-split .login-card{ flex:1 1 44%; max-width:none !important; margin:0 !important; border-radius:0 !important; display:flex !important; flex-direction:column; justify-content:center; padding:48px clamp(28px,6vw,84px) !important; box-shadow:none !important; background:#fff !important; }
.login-wrap.sp-split .login-card > *{ width:100%; max-width:380px; margin-left:auto; margin-right:auto; }
.login-card .brand.sp-lockup{ margin-bottom:10px; }
.login-card .subtitle{ color:#5e7268 !important; margin:.2rem 0 1.4rem !important; }
.login-card .field > span{ color:var(--sp-ink) !important; font-weight:600; }
.login-card .form-control{ border:1.5px solid #d8e4dc !important; border-radius:10px !important; padding:11px 13px !important; transition:border-color .15s, box-shadow .15s; }
.login-card .form-control:focus{ border-color:var(--sp-green2) !important; box-shadow:0 0 0 3px rgba(42,122,85,.16) !important; outline:none !important; }
.login-card .btn-login{ background:linear-gradient(135deg, var(--sp-green2), var(--sp-green)) !important; border:0 !important; border-radius:10px !important; font-weight:700 !important; padding:12px 16px !important; letter-spacing:.02em; box-shadow:0 8px 20px rgba(29,92,63,.28) !important; transition:filter .15s, transform .05s; }
.login-card .btn-login:hover:not(:disabled){ filter:brightness(1.06) saturate(1.05) !important; }
.login-card .btn-login:active:not(:disabled){ transform:translateY(1px); }
.login-card .legacy-note{ color:#8aa093 !important; }

@media (max-width:860px){ .sp-visual{ display:none !important; } .login-wrap.sp-split{ align-items:center !important; justify-content:center !important; } .login-wrap.sp-split .login-card{ padding:30px 22px !important; } }

/* ---------- SHELL: barra lateral (isotipo) ---------- */
.brand-main .brand-logo.sp-logo, .neo-brand .neo-brand-logo.sp-logo{ background:#fff !important; border-radius:9px; width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; padding:3px; overflow:visible; color:transparent !important; font-size:0 !important; }
.brand-main .brand-logo.sp-logo svg{ display:none; }
.brand-main .brand-logo.sp-logo img, .neo-brand .neo-brand-logo.sp-logo img{ width:100%; height:100%; object-fit:contain !important; }

/* ---------- INICIO (Bienvenido): logo completo arriba ---------- */
.home .hh{ text-align:center; }
.home .hh .sp-home-logo{ justify-content:center; margin:0 auto 16px; }
