/* e-man Front Custom — Checkout v1.4.0 */
#checkout-checkout.eman-checkout-shell,
#checkout-checkout {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 42px 0 82px;
}
#checkout-checkout > .row { margin:0; }
#checkout-checkout #content { width:100%; padding:0; }
#checkout-checkout .page-title {
  margin:0 0 30px;
  color:#fff;
  font-size:36px;
  font-weight:800;
  text-align:left;
}
#checkout-checkout #accordion {
  display:flex;
  flex-direction:column;
  gap:12px;
}
#checkout-checkout .panel {
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:15px;
  background:#222930;
  box-shadow:none;
}
#checkout-checkout .panel:has(.collapse.in) { border-color:rgba(132,167,255,.48); }
#checkout-checkout .panel-heading {
  min-height:62px;
  padding:0;
  border:0;
  background:#1e252c;
}
#checkout-checkout .panel-title { margin:0; }
#checkout-checkout .panel-title > a,
#checkout-checkout .panel-title > span {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:62px;
  padding:0 22px;
  color:#f3f6f8 !important;
  font-size:14px;
  font-weight:800;
  text-decoration:none !important;
}
#checkout-checkout .panel-title > a::after {
  content:'+';
  color:#84a7ff;
  font-size:22px;
  font-weight:400;
  line-height:1;
}
#checkout-checkout .panel:has(.collapse.in) .panel-title > a::after { content:'−'; }
#checkout-checkout .panel-title i { display:none; }
#checkout-checkout .panel-body {
  padding:28px 24px 30px;
  border-top:1px solid rgba(255,255,255,.08) !important;
  background:#222930;
  color:#d4dce3;
}
#checkout-checkout h2,
#checkout-checkout h3,
#checkout-checkout h4 { color:#fff; }
#checkout-checkout h2 { margin:0 0 18px; font-size:20px; }
#checkout-checkout p { color:#aeb8c2; line-height:1.65; }
#checkout-checkout .row { margin-left:-10px; margin-right:-10px; }
#checkout-checkout [class*='col-'] { padding-left:10px; padding-right:10px; }
#checkout-checkout .form-group { margin-bottom:16px; }
#checkout-checkout label,
#checkout-checkout .control-label { color:#cbd4dc; font-size:12px; font-weight:700; }
#checkout-checkout .form-control,
#checkout-checkout select.form-control,
#checkout-checkout textarea.form-control {
  min-height:44px;
  padding:10px 13px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:9px;
  background:#1b2228;
  color:#f4f6f8;
  box-shadow:none;
}
#checkout-checkout textarea.form-control { min-height:105px; resize:vertical; }
#checkout-checkout .form-control:focus {
  border-color:#84a7ff;
  box-shadow:0 0 0 3px rgba(132,167,255,.12);
}
#checkout-checkout .form-control::placeholder { color:#73808c; }
#checkout-checkout input[type='radio'],
#checkout-checkout input[type='checkbox'] { accent-color:#84a7ff; }
#checkout-checkout .radio,
#checkout-checkout .checkbox { color:#d6dde4; }
#checkout-checkout .buttons { margin-top:24px; }
#checkout-checkout .btn,
#checkout-checkout input[type='button'] {
  min-height:46px;
  padding:0 22px;
  border-radius:10px;
  font-weight:800;
}
#checkout-checkout .btn-primary,
#checkout-checkout #button-account,
#checkout-checkout #button-guest,
#checkout-checkout #button-register,
#checkout-checkout #button-login,
#checkout-checkout #button-payment-address,
#checkout-checkout #button-shipping-address,
#checkout-checkout #button-shipping-method,
#checkout-checkout #button-payment-method {
  border-color:#84a7ff;
  background:#84a7ff;
  color:#111820;
}
#checkout-checkout .btn-default { border-color:rgba(255,255,255,.18); background:transparent; color:#fff; }
#checkout-checkout .text-danger { margin-top:5px; color:#ff8f8f; font-size:11px; }
#checkout-checkout .has-error .form-control { border-color:#ff7777; }
#checkout-checkout .alert { border:0; border-radius:10px; }
#checkout-checkout a { color:#9bb6ff; }

/* Login / guest selection */
#collapse-checkout-option .panel-body > .row { display:grid; grid-template-columns:1fr 1fr; gap:34px; margin:0; }
#collapse-checkout-option .panel-body > .row > [class*='col-'] { width:auto; padding:0; }
#collapse-checkout-option .well { min-height:100%; margin:0; padding:22px; border:1px solid rgba(255,255,255,.09); border-radius:12px; background:#1d242b; box-shadow:none; }

/* Address forms */
#collapse-payment-address .panel-body > .row,
#collapse-shipping-address .panel-body > .row { align-items:start; }
#checkout-checkout fieldset legend {
  padding-bottom:11px;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:#fff;
  font-size:16px;
  font-weight:800;
}

/* Shipping / payment method cards */
#collapse-shipping-method .radio label,
#collapse-payment-method .radio label {
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:46px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  background:#1b2228;
}
#collapse-shipping-method .radio label:hover,
#collapse-payment-method .radio label:hover { border-color:rgba(132,167,255,.45); }

/* Confirmation table */
#collapse-checkout-confirm .table-responsive { border:1px solid rgba(255,255,255,.09); border-radius:12px; overflow:hidden; }
#collapse-checkout-confirm .table { margin:0; }
#collapse-checkout-confirm .table th,
#collapse-checkout-confirm .table td {
  padding:12px 14px;
  border-color:rgba(255,255,255,.07);
  background:transparent;
  color:#d8dfe5;
}
#collapse-checkout-confirm .table thead td { background:#1b2228; color:#9eabb6; font-size:11px; font-weight:800; text-transform:uppercase; }
#collapse-checkout-confirm .table tfoot tr:last-child td { color:#fff; font-size:16px; font-weight:800; }

.eman-checkout-intro {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin:0 0 20px;
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background:#1d242b;
  color:#aeb8c2;
  font-size:12px;
}
.eman-checkout-intro strong { color:#fff; }

@media (max-width: 767px) {
  #checkout-checkout { width:min(100% - 24px, 680px); padding:28px 0 60px; }
  #checkout-checkout .page-title { margin-bottom:20px; font-size:28px; }
  #checkout-checkout .panel-heading,
  #checkout-checkout .panel-title > a,
  #checkout-checkout .panel-title > span { min-height:56px; }
  #checkout-checkout .panel-title > a,
  #checkout-checkout .panel-title > span { padding:0 16px; font-size:13px; }
  #checkout-checkout .panel-body { padding:20px 16px 22px; }
  #collapse-checkout-option .panel-body > .row { grid-template-columns:1fr; gap:16px; }
  #checkout-checkout [class*='col-sm-'],
  #checkout-checkout [class*='col-md-'] { width:100%; float:none; }
  #checkout-checkout .buttons .pull-left,
  #checkout-checkout .buttons .pull-right { float:none !important; width:100%; }
  #checkout-checkout .buttons .btn { width:100%; }
  .eman-checkout-intro { align-items:flex-start; flex-direction:column; }
  #collapse-checkout-confirm .table-responsive { overflow-x:auto; }
}
