:root{
  --rav52-navy:#063b64;
  --rav52-blue:#0879b2;
  --rav52-teal:#11bea7;
  --rav52-ink:#17384a;
  --rav52-muted:#6d8592;
  --rav52-line:#dce8ee;
  --rav52-soft:#f4f9fb;
  --rav52-shadow:0 24px 60px rgba(30,73,94,.10);
}

/* ============================================================
   CENTRAL ACCOUNT
   ============================================================ */
.rav-account-body{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  background:
    radial-gradient(circle at 80% 0,rgba(17,190,167,.08),transparent 28%),
    linear-gradient(180deg,#fff,#f4f9fb);
  color:var(--rav52-ink);
}
.rav-account-header{
  background:rgba(255,255,255,.96);
  border-bottom:1px solid var(--rav52-line);
  backdrop-filter:blur(16px);
}
.rav-account-header>.container{
  min-height:76px;
}
.rav-account-brand img{
  width:190px;
  max-height:58px;
  object-fit:contain;
  object-position:left center;
}
.rav-account-user{
  display:flex;
  align-items:center;
  gap:12px;
}
.rav-account-user strong,
.rav-account-user small{
  display:block;
  text-align:right;
}
.rav-account-user strong{
  font-size:.77rem;
  color:#31586c;
}
.rav-account-user small{
  font-size:.61rem;
  color:#8196a1;
}
.rav-account-footer{
  margin-top:auto;
  padding:18px 0;
  background:#082f49;
  color:#95adb7;
  font-size:.67rem;
}
.rav-account-footer a{
  color:#c7d9df;
  text-decoration:none;
}
.rav-account-eyebrow{
  display:inline-block;
  color:var(--rav52-blue);
  font-size:.67rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.rav-account-login-section{
  padding:70px 0;
}
.rav-account-login-card{
  max-width:520px;
  margin:0 auto;
  padding:34px;
  border:1px solid var(--rav52-line);
  border-radius:24px;
  background:#fff;
  box-shadow:var(--rav52-shadow);
}
.rav-account-login-brand{
  margin-bottom:24px;
}
.rav-account-login-brand img{
  width:220px;
  max-height:76px;
  object-fit:contain;
  object-position:left center;
}
.rav-account-login-card h1{
  color:var(--rav52-navy);
  font-size:2rem;
  font-weight:850;
  letter-spacing:-.035em;
  margin:8px 0 9px;
}
.rav-account-login-card>p{
  color:var(--rav52-muted);
  line-height:1.7;
}
.rav-account-btn-primary{
  color:#fff;
  border:0;
  background:linear-gradient(135deg,var(--rav52-blue),var(--rav52-teal));
  box-shadow:0 10px 24px rgba(8,121,178,.16);
  font-weight:800;
}
.rav-account-btn-primary:hover{
  color:#fff;
  background:linear-gradient(135deg,#076e9f,#0da995);
}
.rav-account-transition-note{
  margin-top:20px;
  padding:12px 13px;
  border:1px solid #dce8ee;
  border-radius:12px;
  background:#f7fbfc;
}
.rav-account-transition-note strong,
.rav-account-transition-note span{
  display:block;
}
.rav-account-transition-note strong{
  color:#3b6678;
  font-size:.66rem;
}
.rav-account-transition-note span{
  margin-top:3px;
  color:#7c919b;
  font-size:.61rem;
  line-height:1.55;
}
.rav-account-text-link{
  color:var(--rav52-blue);
  font-size:.72rem;
  font-weight:750;
  text-decoration:none;
}

/* ============================================================
   MY PRODUCTS
   ============================================================ */
.rav-my-products-section{
  padding:52px 0 76px;
}
.rav-my-products-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:28px;
}
.rav-my-products-head h1{
  margin:5px 0 6px;
  color:var(--rav52-navy);
  font-size:clamp(2rem,4vw,3.2rem);
  font-weight:850;
  letter-spacing:-.04em;
}
.rav-my-products-head p{
  max-width:720px;
  margin:0;
  color:var(--rav52-muted);
  line-height:1.68;
}
.rav-product-access-card{
  padding:24px;
  border:1px solid var(--rav52-line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 34px rgba(31,77,96,.07);
}
.rav-product-access-card.is-disabled{
  opacity:.78;
}
.rav-product-access-top{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
}
.rav-product-code{
  display:inline-flex;
  padding:4px 7px;
  border-radius:999px;
  background:#eaf6fa;
  color:#24779d;
  font-size:.54rem;
  font-weight:900;
  letter-spacing:.07em;
}
.rav-product-access-top h2{
  margin:8px 0 5px;
  color:#2b566a;
  font-size:1.35rem;
  font-weight:830;
}
.rav-product-access-top p{
  margin:0;
  color:#7a909b;
  font-size:.76rem;
  line-height:1.55;
}
.rav-subscription-status{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  font-size:.55rem;
  font-weight:900;
}
.rav-subscription-status.active{
  background:#e8f8f0;
  color:#28765b;
}
.rav-subscription-status.pending,
.rav-subscription-status.pending_payment{
  background:#fff5df;
  color:#986614;
}
.rav-subscription-status.suspended,
.rav-subscription-status.inactive{
  background:#fff0ee;
  color:#a84842;
}
.rav-product-context{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:18px;
}
.rav-product-context>div{
  padding:10px;
  border-radius:11px;
  background:#f7fafb;
  border:1px solid #e7eef1;
}
.rav-product-context small,
.rav-product-context strong,
.rav-product-context span{
  display:block;
}
.rav-product-context small{
  color:#8da0a9;
  font-size:.5rem;
  font-weight:850;
  text-transform:uppercase;
}
.rav-product-context strong{
  margin-top:2px;
  color:#3b6173;
  font-size:.68rem;
}
.rav-product-context span{
  margin-top:2px;
  color:#8a9da6;
  font-size:.54rem;
}
.rav-product-period{
  margin-top:10px;
  color:#738b96;
  font-size:.61rem;
}
.rav-product-app-list{
  display:grid;
  gap:8px;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid #e7eef1;
}
.rav-product-app-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px;
  border:1px solid #e1eaee;
  border-radius:13px;
}
.rav-product-app-row strong,
.rav-product-app-row small{
  display:block;
}
.rav-product-app-row strong{
  color:#31586c;
  font-size:.72rem;
}
.rav-product-app-row small{
  margin-top:2px;
  color:#8799a2;
  font-size:.55rem;
}
.rav-provision-status{
  display:inline-flex;
  margin-top:5px;
  padding:3px 6px;
  border-radius:999px;
  font-size:.49rem;
  font-weight:850;
}
.rav-provision-status.provisioned{
  background:#e8f8f0;
  color:#28765b;
}
.rav-provision-status.pending,
.rav-provision-status.manual{
  background:#fff5df;
  color:#986614;
}
.rav-provision-status.failed{
  background:#fff0ee;
  color:#a84842;
}
.rav-launch-reason{
  display:block;
  margin:-3px 4px 3px;
  color:#9a7a5c;
}
.rav-no-app,
.rav-account-empty{
  padding:30px;
  border:1px dashed #cadde5;
  border-radius:15px;
  background:#f9fbfc;
  color:#7c929d;
  text-align:center;
}
.rav-account-empty strong,
.rav-account-empty span{
  display:block;
}
.rav-account-empty strong{
  color:#31586c;
}
.rav-account-empty span{
  margin-top:4px;
  font-size:.76rem;
}

/* ============================================================
   SUPER ADMIN v5.2
   ============================================================ */
.rav-v52-note{
  display:flex;
  gap:10px;
  padding:12px 14px;
  border:1px solid #dce9ef;
  border-radius:13px;
  background:#f7fbfd;
  color:#526f7e;
}
.rav-v52-note i{
  color:#1689bc;
  margin-top:1px;
}
.rav-v52-note strong,
.rav-v52-note span{
  display:block;
}
.rav-v52-note strong{
  font-size:.68rem;
}
.rav-v52-note span{
  margin-top:2px;
  color:#78909c;
  font-size:.57rem;
  line-height:1.5;
}
.rav-app-mode{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  background:#eef5f8;
  color:#4f7283;
  font-size:.52rem;
  font-weight:900;
}
.rav-secret-alert code{
  display:block;
  padding:10px 12px;
  border-radius:9px;
  background:#fff;
  border:1px dashed #d5bd7a;
  color:#7d5c10;
  overflow-wrap:anywhere;
}
.rav-provision-badge{
  display:inline-flex;
  padding:4px 7px;
  border-radius:999px;
  font-size:.51rem;
  font-weight:900;
}
.rav-provision-badge.provisioned{
  background:#e8f8f0;
  color:#28765b;
}
.rav-provision-badge.pending,
.rav-provision-badge.manual{
  background:#fff5df;
  color:#986614;
}
.rav-provision-badge.failed{
  background:#fff0ee;
  color:#a84842;
}
.rav-v52-kpi{
  height:100%;
  padding:13px;
  border:1px solid #e0eaf0;
  border-radius:14px;
  background:#fff;
}
.rav-v52-kpi small,
.rav-v52-kpi strong{
  display:block;
}
.rav-v52-kpi small{
  color:#8498a4;
  font-size:.54rem;
  font-weight:850;
  text-transform:uppercase;
}
.rav-v52-kpi strong{
  margin-top:3px;
  color:#31586c;
  font-size:.8rem;
}
.rav-app-mini{
  display:inline-flex;
  margin:2px;
  padding:4px 6px;
  border-radius:7px;
  background:#f0f6f8;
  color:#5b7887;
  font-size:.51rem;
}

/* Corporate /access transition helper */
.rav-transition-access{
  color:#8197a2;
  font-size:.69rem;
}
.rav-transition-access span{
  margin-right:6px;
}
.rav-transition-access a{
  color:#0879b2;
  font-weight:800;
  text-decoration:none;
}

@media(max-width:767.98px){
  .rav-account-user>div{display:none}
  .rav-my-products-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .rav-product-context{
    grid-template-columns:1fr;
  }
  .rav-product-app-row{
    align-items:flex-start;
    flex-direction:column;
  }
  .rav-product-app-row form,
  .rav-product-app-row button{
    width:100%;
  }
}
