:root{
  --cb-bg:#070b12;
  --cb-panel:#0d1420;
  --cb-panel-2:#111a29;
  --cb-field:#0b111c;
  --cb-field-2:#0e1623;
  --cb-border:rgba(255,255,255,.12);
  --cb-border-soft:rgba(255,255,255,.08);
  --cb-text:#ffffff;
  --cb-muted:#9aa8bb;
  --cb-green:#55d493;
  --cb-green-2:#16c784;
  --cb-red:#ef4444;
  --cb-shadow:0 18px 45px rgba(0,0,0,.38);
  --cb-radius:16px;
  --cb-btn-h:40px;
  --cb-btn-sm-h:34px;
}

body:not(.admin-body){
  color:var(--cb-text);
}

body:not(.admin-body) .checkout-page,
body:not(.admin-body) .reservation-shell,
body:not(.admin-body) main.order-page{
  background:
    radial-gradient(circle at 88% 0%, rgba(85,212,147,.12), transparent 22%),
    linear-gradient(180deg,#060a11 0%,#0a101a 48%,#080c13 100%) !important;
}

.account-auth-card,
.account-auth-box,
.premium-auth-form,
.customer-login-card,
.checkout-card,
.order-checkout-card,
.order-summary-card,
.details-box,
.checkout-reservation-form,
.reservation-cosmic-shell .cosmic-flow-card,
.reservation-cosmic-shell .cosmic-summary-panel,
.reservation-cosmic-shell .cosmic-summary-card,
.reservation-cosmic-shell .reservation-account-panel,
.reservation-cosmic-shell .customer-login-head,
.reservation-cosmic-shell .cosmic-account-card{
  background:linear-gradient(180deg,rgba(17,26,41,.98),rgba(8,13,22,.98)) !important;
  color:var(--cb-text) !important;
  border:1px solid var(--cb-border-soft) !important;
  border-radius:22px !important;
  box-shadow:var(--cb-shadow) !important;
}
.account-auth-card,
.premium-account-auth{
  max-width:1120px !important;
  margin-inline:auto !important;
  padding:clamp(18px,3vw,32px) !important;
}
.account-auth-box{
  padding:clamp(16px,2.5vw,26px) !important;
}
.account-auth-copy h1,
.customer-login-head strong,
.auth-head-dark strong,
.order-card-head h3,
.checkout-card h3,
.reservation-cosmic-shell h1,
.reservation-cosmic-shell h2,
.reservation-cosmic-shell strong{
  color:#fff !important;
}
.account-auth-copy p,
.customer-login-head small,
.auth-head-dark small,
.order-card-head p,
.checkout-card p,
.reservation-cosmic-shell p,
.customer-login-field span,
.form-group label,
.reservation-cosmic-shell .customer-login-field span{
  color:var(--cb-muted) !important;
}
.customer-login-head span,
.auth-head-dark span,
.section-subtitle,
.reservation-cosmic-shell .cosmic-kicker,
.reservation-cosmic-shell label{
  color:var(--cb-green) !important;
}

.account-auth-tabs,
.account-tabs,
.cosmic-account-tabs{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:8px !important;
  width:min(520px,100%) !important;
  margin:0 auto 22px !important;
  padding:7px !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid var(--cb-border-soft) !important;
  border-radius:18px !important;
  box-shadow:0 12px 28px rgba(0,0,0,.18) !important;
}
.account-auth-tab,
.account-tab,
.reservation-cosmic-shell .account-tab{
  height:var(--cb-btn-h) !important;
  min-height:var(--cb-btn-h) !important;
  min-width:0 !important;
  width:100% !important;
  border:1px solid transparent !important;
  border-radius:13px !important;
  background:transparent !important;
  color:#dbe6f3 !important;
  font-size:.88rem !important;
  font-weight:850 !important;
  letter-spacing:.01em !important;
  box-shadow:none !important;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease !important;
}
.account-auth-tab.active,
.account-tab.active,
.account-tab.is-active,
.reservation-cosmic-shell .account-tab.active{
  background:linear-gradient(135deg,var(--cb-green),#8df0b7) !important;
  color:#03130b !important;
  border-color:rgba(255,255,255,.16) !important;
  box-shadow:0 12px 24px rgba(85,212,147,.22) !important;
}
.account-auth-tab:hover,
.account-tab:hover{
  transform:translateY(-1px) !important;
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
}

body:not(.admin-body) input[type="text"],
body:not(.admin-body) input[type="email"],
body:not(.admin-body) input[type="password"],
body:not(.admin-body) input[type="number"],
body:not(.admin-body) input[type="date"],
body:not(.admin-body) input[type="tel"],
body:not(.admin-body) input[type="search"],
body:not(.admin-body) textarea,
body:not(.admin-body) select,
body:not(.admin-body) .form-control,
.reservation-cosmic-shell .customer-login-field input,
.reservation-cosmic-shell .customer-login-field textarea,
.reservation-cosmic-shell .customer-login-field select{
  height:38px !important;
  min-height:36px !important;
  border-radius:14px !important;
  border:1px solid var(--cb-border);
  background:var(--cb-field) !important;
  color:#fff !important;
  font-weight:750 !important;
  padding:0 14px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease !important;
}
body:not(.admin-body) textarea,
.reservation-cosmic-shell textarea{
  height:auto !important;
  min-height:84px !important;
  padding:13px 14px !important;
  line-height:1.45 !important;
  resize:vertical !important;
}
body:not(.admin-body) input::placeholder,
body:not(.admin-body) textarea::placeholder{
  color:#7f8fa4 !important;
  opacity:1 !important;
}

body:not(.admin-body) select option{
  background:#000 !important;
  color:#fff !important;
}
.customer-login-field,
.form-group{
  display:flex !important;
  flex-direction:column !important;
  gap:7px !important;
}
.auth-grid-2,
.checkout-form-grid,
.order-phone-country-grid,
.premium-auth-two-cols,
.reservation-cosmic-shell .cosmic-form-grid.two-cols{
  display:grid !important;
  grid-template-columns:repeat(1,minmax(0,1fr)) !important;
  gap:20px !important;
}
.reservation-cosmic-shell .cosmic-full-field,
.reservation-cosmic-shell .customer-login-forgot{
  grid-column:1 / -1 !important;
}

.address-phone-form .iti,
.address-phone-form .country-select,
.country-select,
.country-select.inside{
  width:100% !important;
  height:46px !important;
  min-height:46px !important;
  border-radius:14px !important;
  background:var(--cb-field) !important;
  border:1px solid var(--cb-border) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  overflow:visible !important;
  position:relative !important;
  color:#fff !important;
}
.address-phone-form .iti input[type="tel"],
.address-phone-form .country-select > input[type="text"],
.address-phone-form input[name="country"],
.country-select > input[type="text"]{
  height:44px !important;
  min-height:44px !important;
  border:0 !important;
  background:transparent !important;
  color:#fff !important;
  border-radius:14px !important;
  box-shadow:none !important;
  font-size:.92rem !important;
  font-weight:800 !important;
}
.address-phone-form .iti input[type="tel"]{padding-left:92px !important;padding-right:14px !important;}
.address-phone-form .country-select > input[type="text"],
.address-phone-form input[name="country"],
.country-select > input[type="text"]{padding-left:62px !important;padding-right:14px !important;}
.address-phone-form .iti__selected-flag,
.address-phone-form .country-select .selected-flag,
.address-phone-form .country-select .flag-dropdown,
.country-select .selected-flag,
.country-select .flag-dropdown{
  height:44px !important;
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  background:rgba(255,255,255,.06) !important;
  border-right:1px solid rgba(255,255,255,.12) !important;
  border-radius:14px 0 0 14px !important;
  color:#fff !important;
}

.address-phone-form .country-select .country-list,
.country-select .country-list,
.reservation-cosmic-shell .country-select .country-list{
  width:100% !important;
  min-width:290px !important;
  max-width:min(430px,92vw) !important;
  max-height:300px !important;
  overflow:auto !important;
  margin-top:9px !important;
  padding:8px !important;
  border-radius:16px !important;
  background:#0a101a !important;
  border:1px solid var(--cb-border) !important;
  box-shadow:0 28px 70px rgba(0,0,0,.48) !important;
  color:#fff !important;
  z-index:2147483000 !important;
}
.country-select .country-list .cosmic-country-search-item,
.reservation-cosmic-shell .country-select .country-list .cosmic-country-search-item{
  position:sticky !important;
  top:0 !important;
  z-index:4 !important;
  padding:0 0 8px !important;
  margin:0 0 6px !important;
  background:#0a101a !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}
.country-select .country-list .cosmic-country-search,
.reservation-cosmic-shell .country-select .country-list .cosmic-country-search{
  height:38px !important;
  min-height:38px !important;
  width:100% !important;
  border-radius:12px !important;
  border:1px solid var(--cb-border) !important;
  background:#0f1725 !important;
  color:#fff !important;
  padding:0 12px !important;
  font-size:.88rem !important;
  font-weight:800 !important;
}
.country-select .country-list li.country,
.country-select .country-list .country,
.reservation-cosmic-shell .country-select .country-list li.country,
.reservation-cosmic-shell .country-select .country-list .country{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  min-height:36px !important;
  padding:9px 10px !important;
  border-radius:11px !important;
  background:transparent !important;
  color:#fff !important;
  font-size:.86rem !important;
  font-weight:750 !important;
}
.country-select .country-list li.country:hover,
.country-select .country-list li.country.highlight,
.country-select .country-list .country.highlight,
.reservation-cosmic-shell .country-select .country-list li.country:hover,
.reservation-cosmic-shell .country-select .country-list li.country.highlight{
  background:rgba(85,212,147,.14) !important;
  color:#fff !important;
}
.country-select .country-list .dial-code{color:#9fb1c7 !important;}
.country-select .country-list li.country.is-country-filter-hidden,
.country-select .country-list .country.is-country-filter-hidden{display:none !important;}
.iti__country-list{
  background:#0a101a !important;
  color:#fff !important;
  border:1px solid var(--cb-border) !important;
  border-radius:16px !important;
  box-shadow:0 28px 70px rgba(0,0,0,.48) !important;
  z-index:2147483000 !important;
}
.iti__country:hover,
.iti__country.iti__highlight{background:rgba(85,212,147,.14) !important;}

.btn,
button.btn,
a.btn,
.primary-btn,
.cosmic-main-btn,
.cosmic-outline-btn,
.customer-login-btn,
.btn-auth-dark,
.order-submit-btn,
.checkout-button,
.cart-button,
.reservation-cosmic-shell .cosmic-outline-btn{
  height:var(--cb-btn-h) !important;
  min-height:var(--cb-btn-h) !important;
  padding:0 18px !important;
  border-radius:14px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:linear-gradient(180deg,#1d2a3d 0%,#101827 100%) !important;
  color:#fff !important;
  font-size:.86rem !important;
  font-weight:900 !important;
  letter-spacing:.025em !important;
  line-height:1 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.24) !important;
  text-decoration:none !important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease !important;
}
.btn-primary,
button.btn-primary,
a.btn-primary,
.cosmic-main-btn,
.order-submit-btn,
.checkout-button,
.cart-button{
  background:linear-gradient(135deg,var(--cb-green),var(--cb-green-2)) !important;
  border-color:rgba(255,255,255,.14) !important;
}
.btn-outline,
.cosmic-outline-btn,
.reservation-cosmic-shell .cosmic-outline-btn{
  background:linear-gradient(180deg,#182335 0%,#0e1624 100%) !important;
  color:#e9f2ff !important;
  border-color:rgba(255,255,255,.14) !important;
}
.btn:hover,
button.btn:hover,
a.btn:hover,
.primary-btn:hover,
.cosmic-main-btn:hover,
.cosmic-outline-btn:hover,
.customer-login-btn:hover,
.btn-auth-dark:hover,
.order-submit-btn:hover,
.checkout-button:hover,
.cart-button:hover{
  transform:translateY(-1px) !important;
  border-color:rgba(85,212,147,.42) !important;
  box-shadow:0 15px 32px rgba(0,0,0,.32) !important;
}
.btn:active,
button.btn:active,
a.btn:active,
.cosmic-main-btn:active,
.cosmic-outline-btn:active{transform:translateY(0) scale(.99) !important;}

.menu-card .card-actions,
.home-product-card .card-actions,
#featured-menu-grid .menu-card .card-actions,
#popular-items-grid .menu-card .card-actions,
#most-wanted-grid .menu-card .card-actions{
  display:grid !important;
  grid-template-columns:minmax(96px,.82fr) minmax(112px,1fr) !important;
  gap:8px !important;
  width:100% !important;
  align-items:center !important;
  margin-top:auto !important;
  padding-top:10px !important;
}

.menu-card .card-actions .btn-outline,
.home-product-card .card-actions .btn-outline{
  background:#fff !important;
  color:#1f9d68 !important;
  border-color:rgba(85,212,147,.36) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.08) !important;
}

.menu-card .card-actions .btn:hover,
.home-product-card .card-actions .btn:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 14px 30px rgba(85,212,147,.24) !important;
}

.reservation-cosmic-shell{
  width:min(100%,1180px) !important;
  color:#fff !important;
}
.reservation-cosmic-shell .cosmic-reservation-hero{
  background:linear-gradient(180deg,#111a29,#0b111c) !important;
  border:1px solid var(--cb-border-soft) !important;
  box-shadow:var(--cb-shadow) !important;
}
.reservation-cosmic-shell .cosmic-map-legend span,
.reservation-cosmic-shell .cosmic-table-legend span{
  background:#0b111c !important;
  color:#f8fbff !important;
  border:1px solid var(--cb-border-soft) !important;
  box-shadow:none !important;
}
.reservation-cosmic-shell .cosmic-stepbar{
  background:linear-gradient(180deg,#131d2c,#0b111c) !important;
  border:1px solid var(--cb-border-soft) !important;
  box-shadow:var(--cb-shadow) !important;
}
.reservation-cosmic-shell .cosmic-step{
  color:#91a0b5 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.reservation-cosmic-shell .cosmic-step.is-active,
.reservation-cosmic-shell .cosmic-step.is-complete{
  color:#fff !important;
}
.reservation-cosmic-shell .cosmic-step b{
  background:#050913 !important;
  color:#9fb1c7 !important;
  border:1px solid var(--cb-border-soft) !important;
}
.reservation-cosmic-shell .cosmic-step.is-active b,
.reservation-cosmic-shell .cosmic-step.is-complete b{
  background:linear-gradient(135deg,var(--cb-green),var(--cb-green-2)) !important;
  color:#03130b !important;
}
.reservation-cosmic-shell .cosmic-details-form{
  max-width:760px !important;
  padding:24px !important;
}
.reservation-cosmic-shell .slot-chip{
  background:#0b111c !important;
  color:#fff !important;
  border:1px solid var(--cb-border) !important;
  box-shadow:none !important;
}
.reservation-cosmic-shell .slot-chip:hover,
.reservation-cosmic-shell .slot-chip.is-active,
.reservation-cosmic-shell .slot-chip.selected{
  background:rgba(85,212,147,.14) !important;
  border-color:rgba(85,212,147,.55) !important;
  color:#fff !important;
}
.reservation-cosmic-shell .slot-chip small{color:#aab8c9 !important;}
.reservation-cosmic-shell .cosmic-review-box,
.reservation-cosmic-shell .cosmic-review-seats,
.reservation-cosmic-shell .cosmic-review-note{
  background:#0b111c !important;
  border:1px solid var(--cb-border-soft) !important;
  color:#fff !important;
}

.account-auth-tab-panels,
.account-auth-tab-panels .premium-auth-form,
.premium-auth-forms-grid{
  width:100% !important;
  max-width:920px !important;
  margin-inline:auto !important;
}
.premium-auth-form{padding:24px !important;}
.customer-login-head,.auth-head-dark{padding:18px !important;margin-bottom:18px !important;}
.btn-auth-dark{width:100% !important;margin-top:4px !important;}
.customer-login-forgot{color:var(--cb-green) !important;font-weight:800 !important;}


.global-ajax-loader{
  background:rgba(0,0,0,.24) !important;
  backdrop-filter:blur(0.5px) !important;
}
.global-ajax-loader-box{
  width:54px !important;
  height:54px !important;
  padding:0 !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#030712 !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 18px 45px rgba(0,0,0,.5) !important;
}
.global-ajax-loader-box span{display:none !important;}
.global-ajax-loader-spinner{width:34px !important;height:34px !important;}
.global-ajax-loader-track{stroke:rgba(255,255,255,.14) !important;}
.global-ajax-loader-line{stroke:var(--cb-green) !important;}

.admin-body{
  --backend-btn-h:36px;
  --backend-btn-h-sm:34px;
  --backend-btn-radius:11px;
  --backend-btn-font:12px;
}
.admin-body .btn,
.admin-body button.btn,
.admin-body a.btn,
.admin-body .agent-btn,
.admin-body .agent-secondary-btn,
.admin-body .agent-clear-btn,
.admin-body .filter-btn,
.admin-body .admin-action-btn,
.admin-body .settings-actions button,
.admin-body .modal-actions button,
.admin-body .media-editor-actions button,
.admin-body .pagination-buttons button{
  height:36px !important;
  min-height:36px !important;
  padding:0 14px !important;
  border-radius:11px !important;
  font-size:12px !important;
  font-weight:850 !important;
}
.admin-body .btn-small,
.admin-body .admin-table .btn,
.admin-body .reservation-actions .btn,
.admin-body .compact-table .btn,
.admin-body .agent-small-btn{
  height:34px !important;
  min-height:34px !important;
  padding:0 11px !important;
  font-size:11.5px !important;
}
.admin-body .icon-btn,
.admin-body button.icon-btn,
.admin-body .kitchen-icon-btn,
.admin-body .admin-table .icon-btn{
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  border-radius:11px !important;
  background:#111827 !important;
  border:1px solid rgba(148,163,184,.2) !important;
}
.admin-body .icon-btn:hover,
.admin-body .admin-table .icon-btn:hover{
  transform:translateY(-1px) !important;
  border-color:rgba(85,212,147,.42) !important;
  box-shadow:0 12px 24px rgba(2,6,23,.32) !important;
}
.admin-body .admin-logout-icon,
.admin-body #logout-btn{
  background:rgba(239,68,68,.12) !important;
  border-color:rgba(239,68,68,.34) !important;
  color:#ff7b7b !important;
}
.admin-body .admin-logout-icon:hover,
.admin-body #logout-btn:hover{
  background:rgba(239,68,68,.20) !important;
  color:#fff !important;
}
.admin-body select,
.admin-body input,
.admin-body textarea,
.admin-body .form-control{
  background:#0b111c !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:12px !important;
}
.admin-body select option{background:#0b111c !important;color:#fff !important;}
.admin-body .admin-table select,
.admin-body .reservation-status-select,
.admin-body .reservation-payment-select{
  height:36px !important;
  min-height:36px !important;
  padding:0 34px 0 12px !important;
  font-size:12px !important;
  font-weight:800 !important;
}
.admin-body .admin-table th,
.admin-body .admin-table td{font-size:12px !important;}
.admin-body .admin-table th{font-size:11px !important;letter-spacing:.06em !important;}
.admin-body .admin-table .actions,
.admin-body .admin-table td:last-child{gap:7px !important;}

@media(max-width:900px){
  .auth-grid-2,
  .checkout-form-grid,
  .order-phone-country-grid,
  .premium-auth-two-cols,
  .reservation-cosmic-shell .cosmic-form-grid,
  .reservation-cosmic-shell .cosmic-form-grid.two-cols{grid-template-columns:1fr !important;}
  .account-auth-card,.premium-auth-form{padding:18px !important;}
  .menu-card .card-actions,.home-product-card .card-actions{grid-template-columns:1fr 1fr !important;}
}
@media(max-width:520px){
  :root{--cb-btn-h:38px;}
  .btn,button.btn,a.btn,.cosmic-main-btn,.cosmic-outline-btn,.customer-login-btn,.btn-auth-dark{font-size:.8rem !important;padding:0 14px !important;}
  .menu-card .card-actions .btn,.home-product-card .card-actions .btn{height:34px !important;min-height:34px !important;font-size:10px !important;padding:0 8px !important;}
}