/* Pantallas de acceso (login + alta): panel de marca a la izquierda, formulario
   a la derecha. Variables con prefijo --a- para no pisar las de alta.html. */
:root{
  --a-green:#123528; --a-green2:#0b241b; --a-green3:#1c4a37;
  --a-terra:#D9603B; --a-terra-d:#bd4d2b; --a-brass:#C9A24B;
  --a-cream:#FBF8F3; --a-ink:#15110D; --a-mut:#6e6457; --a-line:#e7ded1; --a-card:#fffdf9;
  --a-ok:#3ec98a;
}
.auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh;}

/* ───── Panel de marca ───── */
.auth-brand{position:sticky;top:0;height:100vh;overflow:hidden;isolation:isolate;
  background:radial-gradient(900px 700px at 85% 95%,var(--a-green3) 0%,rgba(28,74,55,0) 60%),
             linear-gradient(160deg,var(--a-green) 0%,var(--a-green2) 100%);
  color:var(--a-cream);padding:56px clamp(32px,5vw,84px) 0;display:flex;flex-direction:column;}
.auth-brand::before{content:"";position:absolute;inset:0;z-index:-1;
  background-image:radial-gradient(rgba(251,248,243,.07) 1px,transparent 1.2px);background-size:22px 22px;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.2) 100%);mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.2) 100%);}
/* Ondas de voz concéntricas: el «globo» de esta marca es el sonido */
.auth-waves{position:absolute;z-index:-1;right:-180px;bottom:-200px;width:720px;height:720px;pointer-events:none;}
.auth-waves circle{fill:none;stroke:var(--a-brass);stroke-dasharray:2 7;stroke-linecap:round;}
.auth-waves circle:nth-child(1){stroke-opacity:.55;stroke-width:1.6;}
.auth-waves circle:nth-child(2){stroke-opacity:.38;stroke-width:1.4;}
.auth-waves circle:nth-child(3){stroke-opacity:.24;stroke-width:1.2;}
.auth-waves circle:nth-child(4){stroke-opacity:.14;stroke-width:1;}

.a-logo{display:inline-flex;align-items:center;gap:11px;font-family:'Fraunces',serif;font-weight:700;font-size:23px;color:var(--a-cream);text-decoration:none;letter-spacing:-.01em;}
.a-logo .mic{width:38px;height:38px;border-radius:11px;background:var(--a-terra);display:grid;place-items:center;flex:none;}
.a-logo .mic svg{width:19px;height:19px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.a-logo b{color:var(--a-brass);font-weight:700;}

.a-badge{display:inline-flex;align-items:center;gap:9px;margin:44px 0 22px;padding:7px 14px;border:1px solid rgba(201,162,75,.55);border-radius:8px;
  font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--a-brass);background:rgba(201,162,75,.06);align-self:flex-start;}
.a-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--a-terra);box-shadow:0 0 0 0 rgba(217,96,59,.6);animation:aPulse 1.8s infinite;}
@keyframes aPulse{70%{box-shadow:0 0 0 8px rgba(217,96,59,0)}100%{box-shadow:0 0 0 0 rgba(217,96,59,0)}}

.a-claim{font-family:'Fraunces',serif;font-weight:700;font-size:clamp(40px,4.6vw,66px);line-height:1.02;letter-spacing:-.02em;margin:0 0 22px;}
.a-claim span{display:block;color:var(--a-terra);font-style:italic;}
.a-lead{font-size:17.5px;line-height:1.6;color:rgba(251,248,243,.82);max-width:520px;margin:0 0 30px;}
.a-feats{list-style:none;margin:0;padding:0;display:grid;gap:15px;}
.a-feats li{display:flex;align-items:center;gap:14px;font-size:16.5px;color:var(--a-cream);}
.a-feats svg{width:21px;height:21px;flex:none;fill:none;stroke:var(--a-brass);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

/* Maqueta del panel (ejemplo ilustrativo, marcado como tal) */
.a-mock{position:relative;margin-top:auto;transform:translateY(34px) rotate(-1.2deg);transform-origin:left bottom;
  display:grid;grid-template-columns:132px 1fr;max-width:620px;
  background:rgba(8,28,20,.72);border:1px solid rgba(251,248,243,.12);border-radius:16px 16px 0 0;
  box-shadow:0 -10px 60px rgba(0,0,0,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-size:12px;}
.a-mock-nav{border-right:1px solid rgba(251,248,243,.08);padding:14px 10px;display:flex;flex-direction:column;gap:4px;}
.a-mock-nav span{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:8px;color:rgba(251,248,243,.65);}
.a-mock-nav span.on{background:rgba(217,96,59,.18);color:var(--a-cream);font-weight:600;}
.a-mock-nav i{width:6px;height:6px;border-radius:2px;background:currentColor;opacity:.7;}
.a-mock-main{padding:16px 18px 22px;min-width:0;}
.a-mock-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.a-mock-head .ok{width:34px;height:34px;border-radius:50%;background:#2aa56f;display:grid;place-items:center;flex:none;}
.a-mock-head .ok svg{width:17px;height:17px;fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;}
.a-mock-head b{display:block;font-size:15px;color:var(--a-cream);}
.a-mock-head small{color:rgba(251,248,243,.6);}
.a-mock-tag{margin-left:auto;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:rgba(251,248,243,.5);border:1px solid rgba(251,248,243,.18);border-radius:6px;padding:3px 7px;}
.a-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px;}
.a-kpis div{border:1px solid rgba(251,248,243,.1);border-radius:10px;padding:10px 11px;background:rgba(251,248,243,.03);}
.a-kpis b{display:block;font-size:16px;color:var(--a-cream);}
.a-kpis span{color:rgba(251,248,243,.55);font-size:11px;}
.a-tbl{width:100%;border-collapse:collapse;}
.a-tbl th{text-align:left;font-weight:500;color:rgba(251,248,243,.5);padding:6px 6px;border-bottom:1px solid rgba(251,248,243,.1);}
.a-tbl td{padding:7px 6px;color:rgba(251,248,243,.86);border-bottom:1px solid rgba(251,248,243,.06);white-space:nowrap;}
.a-tbl .st::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--a-ok);margin-right:6px;vertical-align:1px;}
.a-toast{position:absolute;right:-26px;bottom:62px;display:flex;align-items:center;gap:11px;padding:12px 16px;border-radius:12px;
  background:#0a1f17;border:1px solid rgba(251,248,243,.16);box-shadow:0 18px 40px rgba(0,0,0,.4);color:var(--a-cream);font-size:13px;transform:rotate(1.2deg);}
.a-toast i{width:9px;height:9px;border-radius:50%;background:var(--a-ok);box-shadow:0 0 0 4px rgba(62,201,138,.2);flex:none;}
.a-toast b{display:block;font-size:13.5px;}
.a-toast small{color:rgba(251,248,243,.7);font-size:12.5px;}

/* ───── Lado del formulario ───── */
.auth-side{background:#f6f2ea;display:flex;flex-direction:column;padding:28px clamp(20px,5vw,72px) 40px;min-width:0;}
.a-switch{align-self:flex-end;font-size:15px;color:var(--a-mut);margin:0 0 28px;}
.a-switch a{color:#a8431f;font-weight:700;text-decoration:none;margin-left:6px;}
.a-switch a:hover{text-decoration:underline;}
.a-card{width:100%;max-width:520px;margin:auto;background:#fff;border:1px solid var(--a-line);border-radius:22px;padding:clamp(28px,4vw,50px);
  box-shadow:0 30px 70px rgba(18,53,40,.08);}
.a-card .a-logo{color:var(--a-ink);font-size:21px;margin-bottom:30px;}
.a-card .a-logo b{color:var(--a-terra-d);}
.a-card h1{font-family:'Fraunces',serif;font-size:clamp(30px,3.2vw,40px);line-height:1.08;letter-spacing:-.015em;margin:0 0 10px;color:var(--a-ink);}
.a-card .a-sub{color:var(--a-mut);font-size:16.5px;margin:0 0 30px;}
.a-field{margin-bottom:20px;}
.a-field label{display:block;font-size:14.5px;font-weight:600;color:var(--a-ink);margin:0 0 8px;}
.a-input{position:relative;display:flex;align-items:center;}
.a-input > svg{position:absolute;left:16px;width:18px;height:18px;fill:none;stroke:var(--a-mut);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}
.a-input input{width:100%;height:54px;padding:0 48px 0 46px;border:1.5px solid var(--a-line);border-radius:12px;font:inherit;font-size:16px;color:var(--a-ink);background:#fff;margin:0;transition:border-color .2s,box-shadow .2s;}
.a-input input::placeholder{color:#8f8576;}
.a-input input:focus{outline:none;border-color:var(--a-terra);box-shadow:0 0 0 4px rgba(217,96,59,.14);}
.a-eye{position:absolute;right:8px;width:38px;height:38px;border:0;background:transparent;border-radius:9px;display:grid;place-items:center;cursor:pointer;color:var(--a-mut);padding:0;}
.a-eye:hover{background:#f3ede2;color:var(--a-ink);}
.a-eye svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.a-eye:focus-visible{outline:3px solid var(--a-terra);outline-offset:1px;}
.a-btn{width:100%;height:56px;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:8px;border:0;border-radius:12px;
  background:var(--a-terra-d);color:#fff;font:inherit;font-size:17px;font-weight:600;cursor:pointer;box-shadow:0 14px 30px rgba(217,96,59,.28);transition:background .2s,transform .2s;}
.a-btn:hover{background:#a8431f;transform:translateY(-1px);}
.a-btn:focus-visible{outline:3px solid var(--a-ink);outline-offset:3px;}
.a-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.a-err{color:#b3261e;font-size:14.5px;min-height:22px;margin-top:12px;text-align:center;}
.a-help{text-align:center;font-size:14.5px;line-height:1.75;color:var(--a-mut);margin:10px 0 0;}
.a-help a{color:var(--a-green);font-weight:600;}

/* ───── Responsive ───── */
@media(max-width:1180px){ .a-toast{right:12px;} }
@media(max-width:980px){
  .auth{grid-template-columns:1fr;}
  .auth-brand{position:relative;height:auto;padding:26px 20px 30px;}
  .a-badge,.a-feats,.a-mock,.a-lead{display:none;}
  .a-claim{font-size:32px;margin:18px 0 0;}
  .auth-waves{width:420px;height:420px;right:-160px;bottom:-220px;}
  .auth-side{padding:20px 16px 36px;}
  .a-switch{align-self:center;margin-bottom:18px;}
  .a-card .a-logo{display:none;}
}
@media(prefers-reduced-motion:reduce){ .a-badge::before{animation:none;} }
