/* Extensiones del Portal Cliente OLynx */
.olx-portal-private-section{display:grid;gap:24px;margin-top:28px}.olx-portal-dashboard-card,.olx-portal-service-card,.olx-portal-requests-card{padding:28px}.olx-portal-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.olx-portal-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.olx-portal-kpis>div{border:1px solid rgba(255,255,255,.10);border-radius:18px;padding:16px;background:rgba(255,255,255,.035)}.olx-portal-kpis span{display:block;color:rgba(230,245,255,.72);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.olx-portal-kpis strong{display:block;font-size:28px;margin-top:6px}.olx-portal-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}.olx-portal-list{display:grid;gap:12px}.olx-portal-list-item{border:1px solid rgba(255,255,255,.10);border-radius:16px;padding:14px 16px;background:rgba(0,0,0,.12)}.olx-portal-list-item strong{display:block}.olx-portal-list-item span,.olx-portal-list-item small{display:block;color:rgba(230,245,255,.72);margin-top:4px;line-height:1.45}.olx-portal-password-notice{border:1px solid rgba(255,193,7,.35);background:rgba(255,193,7,.10);border-radius:16px;padding:14px 16px;margin:14px 0;display:grid;gap:5px}.olx-portal-change-form{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end;margin:14px 0}.olx-portal-change-form label,.olx-portal-login-form label{display:grid;gap:8px;color:rgba(230,245,255,.82);font-weight:700}.olx-portal-change-form input,.olx-portal-login-form input,.olx-portal-request-summary textarea{width:100%;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.18);color:#fff;border-radius:14px;padding:13px 14px}.olx-portal-message{border-radius:14px;padding:13px 15px;margin-top:12px}.olx-portal-message.is-error{border:1px solid rgba(255,95,95,.35);background:rgba(255,95,95,.10);color:#ffdada}.olx-portal-message.is-success{border:1px solid rgba(25,210,150,.35);background:rgba(25,210,150,.10);color:#dfffee}.olx-portal-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.olx-service-option{display:flex;gap:14px;align-items:flex-start;border:1px solid rgba(255,255,255,.10);border-radius:18px;padding:16px;background:rgba(255,255,255,.035);cursor:pointer}.olx-service-option:hover{border-color:rgba(0,222,255,.35);background:rgba(0,222,255,.055)}.olx-service-option input{margin-top:5px;transform:scale(1.15)}.olx-service-option strong{display:block}.olx-service-option span,.olx-service-option small{display:block;color:rgba(230,245,255,.70);margin-top:4px;line-height:1.4}.olx-portal-request-summary{display:grid;grid-template-columns:minmax(180px,.35fr) 1fr auto;gap:16px;align-items:end;margin-top:20px;border-top:1px solid rgba(255,255,255,.08);padding-top:18px}.olx-portal-request-summary span{display:block;color:rgba(230,245,255,.70);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.olx-portal-request-summary strong{display:block;font-size:28px;margin-top:5px}.olx-portal-request-summary textarea{min-height:74px;resize:vertical}.olx-muted{color:rgba(230,245,255,.68);margin:0}@media(max-width:900px){.olx-portal-two-cols,.olx-portal-service-grid,.olx-portal-request-summary,.olx-portal-change-form{grid-template-columns:1fr}.olx-portal-kpis{grid-template-columns:1fr}.olx-portal-dashboard-head{flex-direction:column}}

/* =========================================================
   OLynx Portal Cliente - layout fix despues de solicitudes
   Mantiene header/footer global y restaura estructura aprobada
   ========================================================= */

.olx-portal-hero,
.olx-portal-top,
.olx-portal-hero-grid {
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 2.2fr) minmax(320px, 0.9fr);
  gap: 24px;
  align-items: stretch;
}

.olx-portal-hero > .olx-page-card,
.olx-portal-top > .olx-page-card,
.olx-portal-hero-grid > .olx-page-card {
  margin: 0;
}

.olx-portal-hero-card,
.olx-portal-info-card {
  height: 100%;
}

.olx-portal-info-card {
  max-width: 100%;
}

.olx-portal-login-section {
  width: min(1200px, calc(100% - 48px));
  margin: 28px auto 0;
}

.olx-portal-login-card {
  max-width: 760px;
  padding: 34px 34px 30px;
}

.olx-portal-login-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 22px;
}

.olx-portal-login-form {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.olx-portal-login-form label {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  font-size: 13px;
  line-height: 1;
  letter-spacing: .12em;
  font-weight: 800;
  text-transform: uppercase;
  color: #c8d8e7;
}

.olx-portal-login-form input {
  width: 100%;
  min-height: 58px;
  border-radius: 16px;
  border: 1px solid rgba(130, 170, 220, .20);
  background: rgba(3, 13, 23, .72);
  color: #eef7ff;
  padding: 0 18px;
  font-size: 16px;
  outline: none;
}

.olx-portal-login-form input:focus {
  border-color: rgba(36, 215, 242, .46);
  box-shadow: 0 0 0 3px rgba(36, 215, 242, .10);
}

.olx-portal-login-button {
  width: 100%;
  min-height: 58px;
  margin-top: 4px;
  border-radius: 16px;
  font-weight: 900;
}

.olx-portal-help {
  margin-top: 2px;
  color: #a9bbcb;
  line-height: 1.55;
}

.olx-portal-private-section {
  width: min(1200px, calc(100% - 48px));
  margin: 28px auto 0;
}

.olx-portal-dashboard-card {
  width: 100%;
}

.olx-portal-list-item strong {
  display: block;
  margin-bottom: 4px;
}

.olx-portal-list-item span {
  display: block;
  color: #a9bbcb;
}

/* Compatibilidad si el HTML quedo con secciones consecutivas */
main > section.olx-wrap:first-of-type {
  margin-top: 64px;
}

@media (max-width: 980px) {
  .olx-portal-hero,
  .olx-portal-top,
  .olx-portal-hero-grid {
    grid-template-columns: 1fr;
  }

  .olx-portal-login-card {
    max-width: 100%;
  }
}

@media (max-width: 640px) {
  .olx-portal-hero,
  .olx-portal-top,
  .olx-portal-hero-grid,
  .olx-portal-login-section,
  .olx-portal-private-section {
    width: min(100% - 28px, 1200px);
  }

  .olx-portal-login-card {
    padding: 24px;
  }
}

