/* EE_R11C1A customer portal visual bridge
   Presentation only. No authentication, cart, order, entitlement or payment logic. */

:root{
  --ee-cp-blue:#315ee8;
  --ee-cp-nav:#111827;
  --ee-cp-ink:#101828;
  --ee-cp-muted:#667085;
  --ee-cp-line:#e4e7ec;
  --ee-cp-bg:#f5f7fb;
  --ee-cp-good:#079455;
}

body{
  background:var(--ee-cp-bg)!important;
  color:var(--ee-cp-ink);
}

/* Existing customer dashboards */
.udb-card{
  border:1px solid var(--ee-cp-line)!important;
  border-radius:16px!important;
  box-shadow:0 10px 28px rgba(15,23,42,.055)!important;
  background:#fff!important;
}
.udb-btn,.qa,.btn,button,input[type=submit]{
  border-radius:9px!important;
}
.udb-btn:not(.outline),.btn-primary,input[type=submit],button[type=submit]{
  background:var(--ee-cp-blue)!important;
  border-color:var(--ee-cp-blue)!important;
}
.udb-btn.outline{
  background:#fff!important;
  border:1px solid #d0d5dd!important;
  color:#344054!important;
}
.t-search,.udb-search{
  border-color:#d0d5dd!important;
  box-shadow:0 1px 2px rgba(16,24,40,.03);
}

/* Login / account authentication */
.login-section{
  max-width:540px!important;
  margin:0 auto!important;
  padding:56px 18px 70px!important;
}
.login-card{
  padding:32px!important;
  border:1px solid var(--ee-cp-line)!important;
  border-radius:20px!important;
  box-shadow:0 18px 45px rgba(15,23,42,.09)!important;
}
.login-card h1,.login-card h2{
  font-size:30px!important;
  letter-spacing:-.02em;
  margin:0 0 20px!important;
}
.login-card label{
  display:block;
  margin-top:13px;
  margin-bottom:6px;
  color:#344054;
  font-weight:800;
  font-size:13px;
}
.login-card input[type=email],
.login-card input[type=password],
.login-card input[type=text]{
  width:100%!important;
  min-height:46px!important;
  border:1px solid #d0d5dd!important;
  border-radius:9px!important;
  padding:10px 12px!important;
  outline:0;
  background:#fff!important;
}
.login-card input:focus{
  border-color:var(--ee-cp-blue)!important;
  box-shadow:0 0 0 3px rgba(49,94,232,.12)!important;
}
.login-card button{
  min-height:46px!important;
  font-weight:850!important;
  margin-top:17px!important;
}
.login-card a{color:#214fca;font-weight:700;text-decoration:none}

/* Orders + account data tables */
table{
  border-collapse:separate!important;
  border-spacing:0!important;
}
.udb-card table,
.orders-table,
.order-table{
  width:100%;
  border:1px solid var(--ee-cp-line)!important;
  border-radius:12px!important;
  overflow:hidden;
  background:#fff;
}
.udb-card th,.orders-table th,.order-table th{
  background:#f8fafc!important;
  color:#344054!important;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.udb-card th,.udb-card td,.orders-table th,.orders-table td,.order-table th,.order-table td{
  border-bottom:1px solid #edf0f3!important;
  padding:12px 13px!important;
}

/* Cart + checkout pages: intentionally generic because historical files use mixed class names. */
.cart-page,.checkout-page,.cart-wrap,.checkout-wrap,.cart-container,.checkout-container,
[class*="cart-card"],[class*="checkout-card"],[class*="order-summary"]{
  border-radius:16px!important;
}
.cart-page,.checkout-page,.cart-wrap,.checkout-wrap,.cart-container,.checkout-container{
  max-width:1180px;
  margin-left:auto!important;
  margin-right:auto!important;
}
[class*="cart-card"],[class*="checkout-card"],[class*="order-summary"]{
  background:#fff!important;
  border:1px solid var(--ee-cp-line)!important;
  box-shadow:0 10px 28px rgba(15,23,42,.055)!important;
}
.cart-page input,.checkout-page input,
.cart-wrap input,.checkout-wrap input,
.cart-container input,.checkout-container input,
.cart-page select,.checkout-page select,
.cart-wrap select,.checkout-wrap select{
  border:1px solid #d0d5dd!important;
  border-radius:9px!important;
  min-height:42px;
}
.cart-page h1,.checkout-page h1,.cart-wrap h1,.checkout-wrap h1{
  letter-spacing:-.025em;
}

/* A subtle application-host identity treatment without rewriting functional templates. */
.udb-card h1,.udb-card h2,.udb-card h3,.udb-card h4{color:var(--ee-cp-ink)}
.small,.muted,.sub{color:var(--ee-cp-muted)}

@media(max-width:760px){
  .login-section{padding-top:28px!important}
  .login-card{padding:22px!important}
}


/* EE_R11C1C broad legacy customer-page skin */
body{
  margin:0!important;
  background:#f5f7fb!important;
  color:#101828!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;
}
header, .header, .site-header, .topbar, .navbar, nav{
  box-sizing:border-box;
}
header, .site-header, .topbar, .navbar{
  background:#111827!important;
  color:#fff!important;
}
header a, .site-header a, .topbar a, .navbar a, nav a{
  text-decoration:none;
}
nav{
  min-height:64px;
}
nav a{
  color:inherit;
}
.container, main, .main, .content, .page-content{
  box-sizing:border-box;
}
main, .main, .page-content{
  max-width:1180px;
  margin-left:auto!important;
  margin-right:auto!important;
}
form{
  box-sizing:border-box;
}
input,select,textarea,button{
  font:inherit!important;
  box-sizing:border-box;
}
input[type=text],input[type=email],input[type=password],input[type=number],
select,textarea{
  border:1px solid #d0d5dd!important;
  border-radius:9px!important;
  background:#fff!important;
  min-height:44px;
  padding:10px 12px!important;
}
button,.btn,input[type=submit]{
  border-radius:9px!important;
  min-height:42px;
  font-weight:800!important;
}
table{
  width:100%;
  background:#fff;
}
footer,.footer,footer.site-footer{
  background:#0b1020!important;
  color:#d0d5dd!important;
}
footer a,.footer a{color:#fff!important}

/* Legacy login page */
body:has(form[action*="login"]) main,
body:has(input[type=password]) main{
  padding:50px 18px 70px!important;
}
body:has(input[type=password]) form{
  max-width:520px!important;
  margin:0 auto!important;
  padding:30px!important;
  background:#fff!important;
  border:1px solid #e4e7ec!important;
  border-radius:18px!important;
  box-shadow:0 18px 45px rgba(15,23,42,.09)!important;
}
body:has(input[type=password]) form h1,
body:has(input[type=password]) form h2{
  margin-top:0!important;
  font-size:30px!important;
}
body:has(input[type=password]) form button,
body:has(input[type=password]) form input[type=submit]{
  width:100%!important;
  background:#315ee8!important;
  color:#fff!important;
  border-color:#315ee8!important;
}

/* Legacy cart/checkout */
body:has(.cart-item) main,
body:has([class*="cart"]) main,
body:has([class*="checkout"]) main{
  padding:34px 18px 70px!important;
}
.cart-item,[class*="cart-card"],[class*="checkout-card"],[class*="summary-card"],[class*="order-summary"]{
  background:#fff!important;
  border:1px solid #e4e7ec!important;
  border-radius:14px!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
}
