/* =========================================================
   AREAMOTORS PORTAL CLIENTE — VISUAL 3.0 PREMIUM
   Capa visual: no altera autenticación, estados ni reglas ERP.
   ========================================================= */
:root{
  --am-red:#ed1c24;
  --am-red-dark:#8d0d14;
  --am-blue:#2f8cff;
  --am-green:#25d982;
  --am-amber:#f5b942;
  --am-bg:#05080d;
  --am-panel:#0d131d;
  --am-panel-2:#111a27;
  --am-panel-3:#151f2e;
  --am-border:rgba(148,163,184,.20);
  --am-soft:rgba(255,255,255,.045);
  --am-text:#f8fafc;
  --am-muted:#9eacbd;
  --am-shadow:0 24px 70px rgba(0,0,0,.38);
}
html{scroll-behavior:smooth}
body.portal-premium,
body.portal-index{
  background:
    radial-gradient(circle at 8% 18%,rgba(237,28,36,.14),transparent 26%),
    radial-gradient(circle at 92% 18%,rgba(47,140,255,.08),transparent 24%),
    linear-gradient(180deg,#070b11 0%,#05080d 55%,#030508 100%);
}
body.portal-premium:before,
body.portal-index:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.32;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,#000,transparent 88%);
}
.portal-premium .site-bg,.portal-index .site-bg{opacity:.72}
.portal-premium .topbar,.portal-index .topbar{
  height:82px;background:rgba(4,7,11,.92);border-bottom:1px solid rgba(148,163,184,.14);
  box-shadow:0 8px 32px rgba(0,0,0,.22);backdrop-filter:blur(18px);
}
.portal-premium .brand-logo,.portal-index .brand-logo{width:190px;max-height:58px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.30))}
.portal-top-actions{display:flex;align-items:center;gap:10px}
.portal-top-action{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid var(--am-border);border-radius:10px;background:rgba(255,255,255,.025);color:#cbd5e1;text-decoration:none;font-size:.82rem;font-weight:700;transition:.18s ease}
.portal-top-action:hover{border-color:rgba(47,140,255,.46);background:rgba(47,140,255,.08);color:#fff;transform:translateY(-1px)}
.portal-top-action.danger:hover{border-color:rgba(237,28,36,.55);background:rgba(237,28,36,.10)}
.portal-secure-pill{display:inline-flex;align-items:center;gap:7px;color:#8fa0b4;font-size:.78rem;margin-right:4px}
.portal-secure-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--am-green);box-shadow:0 0 12px rgba(37,217,130,.72)}

/* Entrada */
.portal-index .shell{width:min(1180px,calc(100% - 36px));grid-template-columns:minmax(0,1.12fr) minmax(360px,.65fr);gap:58px;padding:72px 0 64px}
.portal-index .hero-copy{padding:12px 0}
.portal-index .hero-copy h1{max-width:760px;font-size:clamp(3rem,6vw,6rem);letter-spacing:-.065em;text-shadow:0 12px 42px rgba(0,0,0,.45)}
.portal-index .hero-copy p{font-size:1.02rem;max-width:680px}
.portal-index .eyebrow{color:#ff4a50}
.portal-index .trust-row span{background:rgba(13,19,29,.70);border-color:rgba(148,163,184,.20);box-shadow:0 9px 28px rgba(0,0,0,.20)}
.portal-index .login-card{position:relative;border-radius:22px;padding:30px;border:1px solid rgba(148,163,184,.22);background:linear-gradient(160deg,rgba(17,26,39,.98),rgba(7,12,20,.98));box-shadow:0 32px 85px rgba(0,0,0,.46);overflow:hidden}
.portal-index .login-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--am-red),#ff4a50 55%,transparent)}
.portal-index .login-card h2{font-size:1.7rem;margin:4px 0 10px}
.portal-index .login-card input{height:56px;border-radius:12px;background:#080e17;border-color:rgba(148,163,184,.22)}
.portal-index .login-card input:focus{border-color:rgba(47,140,255,.72);box-shadow:0 0 0 3px rgba(47,140,255,.12)}
.portal-index .login-card button,.portal-index .button-like{background:linear-gradient(135deg,#d7151d,#ed1c24 58%,#ff3941);box-shadow:0 12px 28px rgba(237,28,36,.24);transition:.18s ease}
.portal-index .login-card button:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(237,28,36,.34)}
.portal-index footer{opacity:.9}

/* Términos */
.portal-index .terms-overlay{background:rgba(2,5,9,.90);backdrop-filter:blur(12px)}
.portal-index .terms-modal{background:linear-gradient(160deg,#0e1622,#070c14);border-color:rgba(148,163,184,.24);box-shadow:0 35px 100px rgba(0,0,0,.60)}
.portal-index .terms-head{position:relative;background:linear-gradient(90deg,rgba(237,28,36,.08),transparent)}
.portal-index .terms-head:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--am-red)}
.portal-index .accept-box{background:#0b121d;border-color:rgba(148,163,184,.20)}
.portal-index .terms-actions button{background:linear-gradient(135deg,#c9141b,#ed1c24)}

/* Dashboard */
.portal-dashboard .dashboard-shell{width:min(1180px,calc(100% - 36px));padding:34px 0 58px}
.portal-page-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0 0 18px;padding:0 4px}
.portal-page-head h1{margin:0;font-size:clamp(2rem,4vw,3.05rem);letter-spacing:-.04em}
.portal-page-head p{margin:6px 0 0;color:var(--am-muted)}
.portal-page-head .tagline{align-self:center;display:flex;align-items:center;gap:12px;color:#cbd5e1;font-size:.84rem;font-style:italic;white-space:nowrap}
.portal-page-head .tagline:before{content:"";width:48px;height:2px;background:linear-gradient(90deg,transparent,var(--am-red))}
.portal-dashboard .vehicle-hero,.portal-dashboard .progress-card,.portal-dashboard .message-card,.portal-dashboard .privacy-note,.portal-dashboard .info-grid article{background:linear-gradient(155deg,rgba(18,27,41,.98),rgba(8,13,21,.98));border-color:rgba(148,163,184,.20);box-shadow:var(--am-shadow)}
.portal-dashboard .vehicle-hero{position:relative;align-items:center;min-height:210px;padding:30px 34px;border-radius:22px;overflow:hidden}
.portal-dashboard .vehicle-hero:after{content:"";position:absolute;width:420px;height:230px;right:-70px;bottom:-90px;border-radius:50%;background:radial-gradient(circle,rgba(237,28,36,.11),transparent 68%);pointer-events:none}
.vehicle-main{display:flex;align-items:center;gap:22px;min-width:0}
.vehicle-icon-card{width:76px;height:76px;display:grid;place-items:center;flex:0 0 76px;border-radius:18px;background:linear-gradient(145deg,rgba(47,140,255,.18),rgba(47,140,255,.05));border:1px solid rgba(47,140,255,.28);font-size:2.1rem;box-shadow:inset 0 0 28px rgba(47,140,255,.05)}
.portal-dashboard .vehicle-title{font-size:clamp(2.35rem,5vw,4.5rem);letter-spacing:-.055em}
.portal-dashboard .vehicle-meta span{background:rgba(255,255,255,.03);border-color:rgba(148,163,184,.20)}
.portal-dashboard .current-status{position:relative;z-index:2;min-width:190px;padding:18px 20px;border:1px solid rgba(148,163,184,.16);border-radius:16px;background:rgba(5,9,15,.52)}
.portal-dashboard .current-status strong{font-size:1.42rem;color:#ff3f46}
.portal-dashboard.status-ready .current-status{border-color:rgba(37,217,130,.28);background:rgba(37,217,130,.055)}
.portal-dashboard.status-ready .current-status strong{color:var(--am-green)}
.portal-dashboard .progress-card{padding:28px 30px 30px;border-radius:20px}
.portal-dashboard .progress-head h2{font-size:1.5rem;margin:4px 0 0}
.portal-dashboard .progress-head>strong{font-size:1.45rem}
.portal-dashboard .progress-track{height:8px;background:rgba(148,163,184,.11)}
.portal-dashboard .progress-track span{background:linear-gradient(90deg,#ae1118,#ed1c24);box-shadow:0 0 16px rgba(237,28,36,.32)}
.portal-dashboard.status-ready .progress-track span{background:linear-gradient(90deg,#16a85f,#25d982);box-shadow:0 0 16px rgba(37,217,130,.30)}
.portal-dashboard .timeline{position:relative;gap:12px}
.portal-dashboard .timeline-item{position:relative;min-height:118px;padding:16px 14px;border-color:rgba(148,163,184,.14);background:rgba(255,255,255,.022);transition:.18s ease}
.portal-dashboard .timeline-item.done{border-color:rgba(37,217,130,.18);opacity:1}
.portal-dashboard .timeline-item.current{border-color:rgba(47,140,255,.52);background:rgba(47,140,255,.075);box-shadow:inset 0 0 24px rgba(47,140,255,.05)}
.portal-dashboard.status-ready .timeline-item.current{border-color:rgba(37,217,130,.52);background:rgba(37,217,130,.075)}
.portal-dashboard .timeline-dot{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;border:1px solid currentColor;font-size:.76rem;color:#8292a6}
.portal-dashboard .timeline-item.done .timeline-dot{color:var(--am-green);background:rgba(37,217,130,.08)}
.portal-dashboard .timeline-item.current .timeline-dot{color:#fff;background:var(--am-blue);border-color:var(--am-blue);box-shadow:0 0 18px rgba(47,140,255,.36)}
.portal-dashboard.status-ready .timeline-item.current .timeline-dot{background:var(--am-green);border-color:var(--am-green);box-shadow:0 0 18px rgba(37,217,130,.32)}
.portal-dashboard .info-grid article{position:relative;padding:20px 22px;border-radius:15px;overflow:hidden}
.portal-dashboard .info-grid article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#26364b}
.portal-dashboard .info-grid article:first-child:before{background:var(--am-blue)}
.portal-dashboard .info-grid article:last-child:before{background:var(--am-red)}
.portal-dashboard .message-card{position:relative;padding:30px 34px;border-radius:20px;overflow:hidden}
.portal-dashboard .message-card:after{content:"";position:absolute;right:-40px;top:-80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(237,28,36,.11),transparent 65%);pointer-events:none}
.portal-dashboard.status-ready .message-card:after{background:radial-gradient(circle,rgba(37,217,130,.10),transparent 65%)}
.portal-dashboard .message-card h2{font-size:clamp(1.55rem,3vw,2.15rem);margin:6px 0 10px}
.portal-dashboard .message-card .button-like{position:relative;z-index:2;background:linear-gradient(135deg,#c9141b,#ed1c24);box-shadow:0 10px 24px rgba(237,28,36,.20)}
.portal-dashboard.status-ready .message-card .button-like{background:linear-gradient(135deg,#c9141b,#ed1c24)}
.portal-dashboard .privacy-note{display:flex;align-items:center;gap:16px;padding:18px 20px}
.portal-dashboard .privacy-note:before{content:"🔒";width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(47,140,255,.10);border:1px solid rgba(47,140,255,.22)}
.portal-dashboard .privacy-note p{margin:3px 0 0}

/* Encuesta */
body.portal-survey .sat-shell{width:min(860px,calc(100% - 28px));margin:34px auto 52px}
body.portal-survey .sat-card{border-color:rgba(148,163,184,.22);border-top:3px solid var(--am-red);background:linear-gradient(155deg,rgba(17,26,39,.98),rgba(7,12,20,.99));box-shadow:0 32px 90px rgba(0,0,0,.46)}
body.portal-survey .sat-head{padding:30px 34px 24px;background:linear-gradient(90deg,rgba(237,28,36,.07),transparent)}
body.portal-survey .sat-body{padding:28px 34px 34px}
body.portal-survey .question{padding:22px 0}
body.portal-survey .question-title{font-size:1rem}
body.portal-survey .stars label{font-size:38px;text-shadow:0 4px 12px rgba(0,0,0,.30)}
body.portal-survey .choice label{background:#0a111c;transition:.18s ease}
body.portal-survey .choice label:hover{border-color:rgba(237,28,36,.52);background:rgba(237,28,36,.06)}
body.portal-survey textarea{background:#070d15 !important;border-color:rgba(148,163,184,.22) !important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.01)}
body.portal-survey .consent{background:#0a111c !important;border-color:rgba(148,163,184,.22) !important}
body.portal-survey .submit-btn{min-height:54px;background:linear-gradient(135deg,#c9141b,#ed1c24 60%,#ff4148);box-shadow:0 12px 28px rgba(237,28,36,.23)}
body.portal-survey .state{padding:54px 34px 58px}

/* Cierre / Entregado */
.portal-closed .closed-shell{width:min(880px,calc(100% - 28px));min-height:calc(100vh - 150px);margin:0 auto;display:grid;place-items:center;padding:46px 0}
.portal-closed .closed-panel{width:100%;position:relative;overflow:hidden;border:1px solid rgba(148,163,184,.22);border-radius:24px;background:linear-gradient(155deg,rgba(18,27,41,.98),rgba(6,11,18,.99));box-shadow:0 35px 100px rgba(0,0,0,.50)}
.portal-closed .closed-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--am-green),rgba(37,217,130,.25),transparent)}
.portal-closed .closed-hero{padding:48px 42px 34px;text-align:center}
.portal-closed .closed-icon{width:76px;height:76px;margin:0 auto 20px;font-size:2rem;background:rgba(37,217,130,.10);border-color:rgba(37,217,130,.36);box-shadow:0 0 30px rgba(37,217,130,.10)}
.portal-closed .closed-hero h1{font-size:clamp(2.2rem,5vw,3.7rem);letter-spacing:-.045em;margin:8px 0 14px}
.portal-closed .closed-hero .muted{max-width:650px;margin:0 auto 12px}
.portal-closed .closed-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 28px 28px}
.portal-closed .closed-summary article{padding:18px;border:1px solid rgba(148,163,184,.16);border-radius:14px;background:rgba(255,255,255,.025);text-align:center}
.portal-closed .closed-summary small{display:block;color:var(--am-muted);margin-bottom:6px}
.portal-closed .closed-summary strong{font-size:.95rem}
.portal-closed .closed-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;padding:0 28px 36px}
.portal-closed .closed-actions .button-like{width:auto;min-width:230px;margin:0;padding:0 22px;background:linear-gradient(135deg,#c9141b,#ed1c24)}
.portal-closed .closed-actions .secondary-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;min-width:210px;margin:0;padding:0 20px;border:1px solid rgba(148,163,184,.20);border-radius:11px;background:rgba(255,255,255,.025)}
.portal-closed .closed-security{display:flex;align-items:center;gap:12px;padding:18px 26px;border-top:1px solid rgba(148,163,184,.14);background:rgba(0,0,0,.16);color:#91a1b4;font-size:.84rem}
.portal-closed .closed-security:before{content:"🔒"}

@media(max-width:860px){
  .portal-page-head{align-items:flex-start;flex-direction:column}.portal-page-head .tagline{white-space:normal}
  .vehicle-main{align-items:flex-start}.portal-dashboard .current-status{width:100%;text-align:left}
  .portal-closed .closed-summary{grid-template-columns:1fr}
}
@media(max-width:620px){
  .portal-premium .topbar,.portal-index .topbar{height:72px}.portal-premium .brand-logo,.portal-index .brand-logo{width:150px}
  .portal-secure-pill{display:none}.portal-top-action span{display:none}.portal-top-action{width:40px;padding:0;justify-content:center}
  .portal-index .shell{width:min(100% - 22px,1180px);padding:34px 0 42px}.portal-index .hero-copy h1{font-size:clamp(2.7rem,14vw,4.2rem)}
  .portal-dashboard .dashboard-shell{width:min(100% - 20px,1180px);padding-top:22px}
  .portal-dashboard .vehicle-hero{padding:24px 20px}.vehicle-main{gap:14px}.vehicle-icon-card{width:58px;height:58px;flex-basis:58px;font-size:1.6rem}.portal-dashboard .vehicle-title{font-size:2.25rem}
  .portal-dashboard .progress-card,.portal-dashboard .message-card{padding:23px 20px}.portal-dashboard .timeline{grid-template-columns:1fr}.portal-dashboard .timeline-item{min-height:auto}
  body.portal-survey .sat-head,body.portal-survey .sat-body{padding-left:20px;padding-right:20px}
  .portal-closed .closed-hero{padding:38px 22px 28px}.portal-closed .closed-summary{padding-left:18px;padding-right:18px}.portal-closed .closed-actions{padding-left:18px;padding-right:18px}.portal-closed .closed-actions .button-like,.portal-closed .closed-actions .secondary-link{width:100%;min-width:0}
}


/* ==========================================================================\n   AREAMOTORS PORTAL CLIENTE — VISUAL 3.1 FINAL\n   Referencia aprobada 2026-09-18\n   ========================================================================== */
.portal-dashboard{--stage-color:#2f8cff;--stage-rgb:47,140,255}
.portal-dashboard.status-step-1{--stage-color:#2f8cff;--stage-rgb:47,140,255}
.portal-dashboard.status-step-2{--stage-color:#22d3ee;--stage-rgb:34,211,238}
.portal-dashboard.status-step-3{--stage-color:#f59e0b;--stage-rgb:245,158,11}
.portal-dashboard.status-step-4{--stage-color:#8b5cf6;--stage-rgb:139,92,246}
.portal-dashboard.status-step-5{--stage-color:#25d982;--stage-rgb:37,217,130}
.portal-dashboard svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.portal-dashboard .vehicle-hero{border-color:rgba(var(--stage-rgb),.38);background:linear-gradient(115deg,rgba(12,24,39,.99),rgba(6,12,20,.98) 60%,rgba(var(--stage-rgb),.09));}
.portal-dashboard .vehicle-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,rgba(var(--stage-rgb),.05)),radial-gradient(circle at 78% 45%,rgba(var(--stage-rgb),.10),transparent 27%);pointer-events:none}
.portal-dashboard .vehicle-icon-card{color:var(--stage-color);border-color:rgba(var(--stage-rgb),.48);background:rgba(var(--stage-rgb),.10);box-shadow:0 0 26px rgba(var(--stage-rgb),.10),inset 0 0 25px rgba(var(--stage-rgb),.05)}
.portal-dashboard .vehicle-icon-card svg{width:42px;height:42px;stroke-width:1.7}
.portal-dashboard .current-status{display:flex;align-items:center;gap:14px;min-width:290px;border-color:rgba(var(--stage-rgb),.54);background:linear-gradient(145deg,rgba(var(--stage-rgb),.13),rgba(3,8,14,.72));box-shadow:0 0 28px rgba(var(--stage-rgb),.09)}
.portal-dashboard .current-status-icon{width:54px;height:54px;display:grid;place-items:center;flex:0 0 54px;border-radius:50%;color:var(--stage-color);border:2px solid var(--stage-color);background:rgba(var(--stage-rgb),.10);box-shadow:0 0 22px rgba(var(--stage-rgb),.30)}
.portal-dashboard .current-status-icon svg{width:28px;height:28px}
.portal-dashboard .current-status small{margin:0 0 3px;color:#9eacc0}
.portal-dashboard .current-status strong{display:block;color:var(--stage-color);font-size:1.43rem;line-height:1.12}
.portal-dashboard .current-status span{display:block;margin-top:4px;color:#aebacc;font-size:.76rem}
.portal-dashboard .progress-card{border-color:rgba(var(--stage-rgb),.30);background:linear-gradient(150deg,rgba(10,22,36,.99),rgba(5,12,20,.99))}
.portal-dashboard .progress-head{align-items:flex-start}
.portal-dashboard .progress-reference{display:flex;align-items:flex-end;gap:16px}
.portal-dashboard .progress-reference span{font-size:.75rem;font-weight:800;letter-spacing:.18em;color:#a9bad0;text-transform:uppercase}
.portal-dashboard .progress-reference strong{font-size:2rem;color:var(--stage-color);text-shadow:0 0 18px rgba(var(--stage-rgb),.22)}
.portal-dashboard .timeline{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:26px 0 18px}
.portal-dashboard .timeline:before{content:"";position:absolute;left:9%;right:9%;top:31px;height:2px;background:repeating-linear-gradient(90deg,#41536b 0 8px,transparent 8px 13px);opacity:.7}
.portal-dashboard .timeline-item{z-index:1;min-height:110px;padding:0 8px;border:0!important;background:transparent!important;box-shadow:none!important;text-align:center;opacity:1}
.portal-dashboard .timeline-item>div:last-child{margin-top:10px}
.portal-dashboard .timeline-item strong{font-size:.88rem;color:#dbe6f2;line-height:1.3}
.portal-dashboard .timeline-item span{margin-top:5px;font-size:.72rem;color:#8e9cb0}
.portal-dashboard .timeline-dot{width:62px;height:62px;margin:0 auto;display:grid;place-items:center;color:#72839a;border:2px solid #52657d;background:#0b1522;box-shadow:0 0 0 6px #08121e}
.portal-dashboard .timeline-dot svg{width:29px;height:29px}
.portal-dashboard .timeline-item.done .timeline-dot{color:#25d982;border-color:#25d982;background:rgba(37,217,130,.10);box-shadow:0 0 0 6px #08121e,0 0 20px rgba(37,217,130,.14)}
.portal-dashboard .timeline-item.done span{color:#25d982}
.portal-dashboard .timeline-item.current .timeline-dot{color:#fff;background:rgba(var(--stage-rgb),.16);border-color:var(--stage-color);box-shadow:0 0 0 6px #08121e,0 0 24px rgba(var(--stage-rgb),.42)}
.portal-dashboard .timeline-item.current span{color:var(--stage-color);font-weight:800}
.portal-dashboard .timeline-item.pending{opacity:.72}
.portal-dashboard .progress-track{height:8px;margin-top:4px;background:#15273a;border:1px solid rgba(148,163,184,.08)}
.portal-dashboard .progress-track span{background:linear-gradient(90deg,var(--stage-color),var(--stage-color));box-shadow:0 0 18px rgba(var(--stage-rgb),.38)}
.portal-dashboard .info-grid article{display:flex;align-items:center;gap:15px;padding:15px 18px}
.portal-dashboard .info-grid article:first-child:before{background:#2f8cff}.portal-dashboard .info-grid article:last-child:before{background:#ef3340}
.portal-dashboard .info-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:12px;background:rgba(47,140,255,.09);border:1px solid rgba(47,140,255,.25);color:#43a1ff}
.portal-dashboard .info-grid article:last-child .info-icon{background:rgba(239,51,64,.07);border-color:rgba(239,51,64,.23);color:#ff6570}
.portal-dashboard .info-icon svg{width:25px;height:25px}
.portal-dashboard .info-grid small{margin-bottom:4px}.portal-dashboard .info-grid strong{font-size:1rem}
.portal-dashboard .message-card{padding:26px 28px;border-color:rgba(var(--stage-rgb),.22);background:linear-gradient(140deg,rgba(10,23,38,.99),rgba(5,12,21,.99) 70%,rgba(237,28,36,.07))}
.portal-dashboard .message-card:after{right:-70px;top:auto;bottom:-95px;background:radial-gradient(circle,rgba(237,28,36,.13),transparent 67%)}
.portal-dashboard .message-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:stretch}
.portal-dashboard .message-main{min-width:0}
.portal-dashboard .message-title-row{display:flex;gap:17px;align-items:flex-start}
.portal-dashboard .message-icon{width:58px;height:58px;display:grid;place-items:center;flex:0 0 58px;border:1px solid rgba(47,140,255,.32);border-radius:14px;color:#69b1ff;background:rgba(47,140,255,.08)}
.portal-dashboard .message-icon svg{width:30px;height:30px}
.portal-dashboard .message-title-row h2{margin:0 0 7px}.portal-dashboard .message-title-row p{margin:0}
.portal-dashboard .state-note{display:flex;gap:10px;margin:16px 0 14px;padding:12px 14px;border:1px solid rgba(47,140,255,.20);border-radius:11px;background:rgba(47,140,255,.045);color:#aebbd0}
.portal-dashboard .state-note>span{color:#38a0ff;font-weight:900}.portal-dashboard .state-note strong{color:var(--stage-color)}
.portal-dashboard .state-note small{display:block;margin-top:2px;color:#8f9daf}
.portal-dashboard .contact-actions{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(190px,.7fr);gap:12px}
.portal-dashboard .message-card .button-like.whatsapp-action{display:flex;align-items:center;gap:10px;width:100%;min-height:50px;margin:0;padding:0 18px;background:linear-gradient(135deg,#0b8d4c,#19c96a);box-shadow:0 10px 24px rgba(25,201,106,.18)}
.portal-dashboard .whatsapp-action b{margin-left:auto;font-size:1.5rem;font-weight:500}
.portal-dashboard .call-action{min-height:50px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 16px;border:1px solid rgba(148,163,184,.25);border-radius:11px;background:#09131f;color:#e8eef7;text-decoration:none;font-weight:800}
.portal-dashboard .call-action:hover{border-color:rgba(47,140,255,.45);background:rgba(47,140,255,.06)}
.portal-dashboard .message-benefits{display:flex;flex-direction:column;justify-content:center;gap:18px;padding-left:24px;border-left:1px solid rgba(148,163,184,.17)}
.portal-dashboard .message-benefits>div{display:flex;align-items:center;gap:13px}.portal-dashboard .benefit-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;border-radius:10px;background:rgba(47,140,255,.08);border:1px solid rgba(47,140,255,.20);color:#72b7ff;font-weight:900}
.portal-dashboard .message-benefits p{margin:0;color:#fff;line-height:1.35}.portal-dashboard .message-benefits strong{display:block;font-size:.83rem}.portal-dashboard .message-benefits small{display:block;margin-top:3px;color:#8e9cb0;font-size:.72rem}
.portal-dashboard .privacy-note{padding:14px 18px;border-radius:13px;box-shadow:none}.portal-dashboard .privacy-note:before{display:none}.portal-dashboard .privacy-note strong{color:#bed0e4}.portal-dashboard .privacy-note p{margin:0 0 0 auto;font-size:.78rem}
.portal-footer{align-items:center}.portal-footer img{width:150px;max-height:42px;object-fit:contain}.portal-footer strong{font-size:.78rem;color:#aeb9c8;font-style:italic;font-weight:600}

@media(max-width:900px){
  .portal-dashboard .message-layout{grid-template-columns:1fr}.portal-dashboard .message-benefits{padding:20px 0 0;border-left:0;border-top:1px solid rgba(148,163,184,.17);display:grid;grid-template-columns:repeat(3,1fr)}
  .portal-dashboard .current-status{min-width:0;width:100%}
}
@media(max-width:700px){
  .portal-dashboard .timeline{display:flex;flex-direction:column;gap:12px;margin:20px 0}.portal-dashboard .timeline:before{left:30px;right:auto;top:31px;bottom:31px;width:2px;height:auto;background:repeating-linear-gradient(180deg,#41536b 0 8px,transparent 8px 13px)}
  .portal-dashboard .timeline-item{display:grid;grid-template-columns:62px 1fr;align-items:center;gap:14px;min-height:70px;padding:0;text-align:left}.portal-dashboard .timeline-dot{margin:0}.portal-dashboard .timeline-item>div:last-child{margin:0}.portal-dashboard .timeline-item strong{font-size:.92rem}
  .portal-dashboard .contact-actions{grid-template-columns:1fr}.portal-dashboard .message-benefits{grid-template-columns:1fr}.portal-dashboard .privacy-note{display:block}.portal-dashboard .privacy-note p{margin:5px 0 0}
  .portal-footer{gap:12px;text-align:center}.portal-footer img{width:125px}
}

/* ========================================================================== 
   AREAMOTORS PORTAL CLIENTE — VISUAL 3.1.2 PREMIUM BACKGROUND
   Capa exclusivamente visual sobre HOTFIX 3.1.1 estable.
   Referencia aprobada: fondo automotriz, glow azul/rojo y mayor profundidad.
   ========================================================================== */
.portal-dashboard{
  background:
    radial-gradient(circle at 52% -8%,rgba(29,110,190,.13),transparent 34%),
    radial-gradient(circle at 0% 42%,rgba(237,28,36,.12),transparent 28%),
    linear-gradient(180deg,#050a11 0%,#03070c 58%,#020408 100%);
}
.portal-dashboard .site-bg{
  opacity:1;
  background:
    radial-gradient(circle at 52% 6%,rgba(32,126,220,.16),transparent 31%),
    radial-gradient(circle at 2% 34%,rgba(237,28,36,.18),transparent 26%),
    radial-gradient(circle at 100% 62%,rgba(237,28,36,.14),transparent 25%),
    linear-gradient(180deg,#07111d 0%,#040a12 54%,#020509 100%);
}
.portal-dashboard .site-bg:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(116deg,transparent 0 78%,rgba(237,28,36,.16) 78.3%,transparent 79.1%),
    linear-gradient(116deg,transparent 0 91%,rgba(237,28,36,.32) 91.2%,rgba(237,28,36,.04) 92.1%,transparent 93%),
    radial-gradient(ellipse at 68% 18%,rgba(28,125,230,.10),transparent 35%);
  opacity:.92;
}
.portal-dashboard .site-bg:after{
  opacity:.82;
  background-image:
    linear-gradient(rgba(91,155,215,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(91,155,215,.035) 1px,transparent 1px);
  background-size:52px 52px;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.88) 58%,transparent 96%);
  mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.88) 58%,transparent 96%);
}
.portal-dashboard .glow-a{width:640px;height:640px;left:-270px;top:90px;opacity:.30;background:#bf111a;filter:blur(120px)}
.portal-dashboard .glow-b{width:620px;height:620px;right:-260px;top:180px;opacity:.20;background:#006dc8;filter:blur(125px)}
.portal-dashboard .road{opacity:.46;bottom:-8%;height:330px}
.portal-dashboard .car-outline{display:none}

/* Hero automotriz real, conservando los datos dinámicos por encima. */
.portal-dashboard .vehicle-hero{
  isolation:isolate;
  min-height:220px;
  border-color:rgba(var(--stage-rgb),.50);
  box-shadow:0 25px 72px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.025),0 0 35px rgba(var(--stage-rgb),.045);
}
.portal-dashboard .vehicle-main,.portal-dashboard .current-status{position:relative;z-index:3}
.portal-dashboard .vehicle-hero:before{
  z-index:1;
  background:
    linear-gradient(90deg,rgba(6,12,20,.98) 0%,rgba(6,12,20,.86) 34%,rgba(6,12,20,.24) 64%,rgba(6,12,20,.16) 100%),
    radial-gradient(circle at 79% 48%,rgba(var(--stage-rgb),.16),transparent 31%);
}
.portal-dashboard .vehicle-hero:after{
  content:"";position:absolute;z-index:0;
  left:39%;right:0;top:0;bottom:0;width:auto;height:auto;border-radius:0;
  background:url('../img/portal-hero-car.webp') center right/cover no-repeat;
  opacity:.82;pointer-events:none;mix-blend-mode:screen;
  filter:saturate(.86) contrast(1.08) brightness(.78);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.52) 20%,#000 48%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.52) 20%,#000 48%,#000 100%);
}
.portal-dashboard .vehicle-title{text-shadow:0 7px 28px rgba(0,0,0,.58)}
.portal-dashboard .current-status{backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}

/* Profundidad y brillo equivalente al mockup aprobado. */
.portal-dashboard .progress-card,
.portal-dashboard .message-card,
.portal-dashboard .info-grid article{
  box-shadow:0 20px 58px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.018);
}
.portal-dashboard .progress-card{
  background:
    radial-gradient(circle at 0% 10%,rgba(var(--stage-rgb),.075),transparent 29%),
    linear-gradient(150deg,rgba(8,21,36,.985),rgba(4,11,19,.99));
}
.portal-dashboard .timeline-item.current .timeline-dot{
  box-shadow:0 0 0 6px #07111c,0 0 30px rgba(var(--stage-rgb),.58),0 0 56px rgba(var(--stage-rgb),.13);
}
.portal-dashboard .info-grid article:first-child{
  background:linear-gradient(130deg,rgba(8,26,44,.99),rgba(7,15,26,.99) 70%,rgba(47,140,255,.08));
}
.portal-dashboard .info-grid article:last-child{
  background:linear-gradient(130deg,rgba(12,18,31,.99),rgba(8,13,23,.99) 70%,rgba(237,28,36,.10));
}
.portal-dashboard .message-card{
  background:
    radial-gradient(circle at 98% 90%,rgba(237,28,36,.15),transparent 25%),
    linear-gradient(140deg,rgba(8,23,39,.995),rgba(5,12,21,.995) 72%,rgba(237,28,36,.065));
}
.portal-dashboard .message-card:before{
  content:"";position:absolute;left:0;top:22px;bottom:22px;width:3px;border-radius:3px;
  background:linear-gradient(180deg,var(--stage-color),rgba(var(--stage-rgb),.18));
  box-shadow:0 0 16px rgba(var(--stage-rgb),.32);
}
.portal-dashboard .portal-page-head{position:relative}
.portal-dashboard .portal-page-head:after{
  content:"";position:absolute;right:1%;bottom:-10px;width:240px;height:1px;
  background:linear-gradient(90deg,transparent,var(--am-red),transparent);opacity:.55;
}
.portal-dashboard .portal-footer{position:relative}
.portal-dashboard .portal-footer:before{
  content:"";position:absolute;left:0;right:0;top:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(47,140,255,.23),rgba(237,28,36,.22),transparent);
}

@media(max-width:860px){
  .portal-dashboard .vehicle-hero:after{left:46%;opacity:.46}
}
@media(max-width:600px){
  .portal-dashboard .vehicle-hero:after{display:none}
  .portal-dashboard .site-bg:before{opacity:.55}
  .portal-dashboard .glow-a,.portal-dashboard .glow-b{opacity:.17}
}
