/* Cosmic Burger premium dynamic appearance system v7.3.26 */
:root {
  --brand-vulcan: #0F1521;
  --brand-lavender: #BF69EB;
  --brand-shamrock: #27C887;
  --brand-studio: #5D46AF;
  --app-bg: #0F1521;
  --app-surface: #111827;
  --app-card: #151B29;
  --app-text: #FFFFFF;
  --app-muted: #B8C4D8;
  --app-border: rgba(255,255,255,.12);
  --app-success: #27C887;
  --app-danger: #FF4D5D;
  --app-warning: #F59E0B;
  --app-font: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --app-heading-font: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --app-base-font-size: 15px;
  --app-button-font-size: 13px;
  --app-field-font-size: 14px;
  --app-button-radius: 12px;
  --app-field-radius: 12px;
  --app-field-radius-none: none;
  --app-card-radius: 22px;
  --app-form-max-width: 760px;
  --app-input-height: 44px;
  --app-button-height: 40px;
  --app-logo-width: 190px;
  --app-logo-height: auto;
  --app-admin-sidebar-width: 270px;
  --app-table-button-size: 38px;
  --app-field-bg: #0B1020;
  --app-field-text: #FFFFFF;
  --app-field-border: rgba(255,255,255,.12);
  --app-field-focus: #27C887;
  --app-button-bg: #27C887;
  --app-button-text: #07110C;
  --app-button-hover-bg: #BF69EB;
  --app-button-hover-text: #FFFFFF;
  --home-hero-bg: #0F1521;
  --home-hero-text: #FFFFFF;
  --home-section-bg: #0F1521;
  --home-section-text: #FFFFFF;
  --home-card-bg: #151B29;
  --home-card-text: #FFFFFF;
  --home-accent: #27C887;
  --menu-page-bg: #0F1521;
  --menu-page-text: #FFFFFF;
  --menu-filter-bg: #111827;
  --menu-filter-text: #FFFFFF;
  --menu-card-bg: #151B29;
  --menu-card-text: #FFFFFF;
  --menu-card-price: #27C887;
  --menu-card-button-bg: #27C887;
  --menu-card-button-text: #07110C;
  --load-more-bg: #5D46AF;
  --load-more-text: #FFFFFF;
  --load-more-hover-bg: #BF69EB;
  --product-detail-bg: #0F1521;
  --product-detail-card: #151B29;
  --product-detail-text: #FFFFFF;
  --product-detail-price: #27C887;
  --reserve-bg: #0F1521;
  --reserve-card-bg: #151B29;
  --reserve-text: #FFFFFF;
  --reserve-slot-bg: #111827;
  --reserve-slot-text: #FFFFFF;
  --reserve-slot-active-bg: #27C887;
  --reserve-slot-active-text: #07110C;
  --reserve-status-available: #27C887;
  --reserve-status-selected: #BF69EB;
  --reserve-status-booked: #FF4D5D;
  --auth-bg: #0F1521;
  --auth-card-bg: #151B29;
  --auth-text: #FFFFFF;
  --auth-tab-bg: #111827;
  --auth-tab-active-bg: #27C887;
  --auth-tab-text: #FFFFFF;
  --auth-tab-active-text: #07110C;
  --form-bg: #151B29;
  --form-text: #FFFFFF;
  --form-border: rgba(255,255,255,.12);
  --form-label: #B8C4D8;
  --form-placeholder: #8090A8;
  --backend-sidebar-bg: #0B1020;
  --backend-sidebar-text: #C8D6EA;
  --backend-sidebar-active-bg: rgba(39,200,135,.14);
  --backend-sidebar-active-text: #FFFFFF;
  --backend-topbar-bg: #0B1020;
  --backend-table-header-bg: #0F1726;
  --backend-table-row-bg: #171D2D;
  --backend-table-border: rgba(255,255,255,.10);
  --backend-action-view: #3B82F6;
  --backend-action-edit: #60A5FA;
  --backend-action-delete: #FF4D5D;
}

html { font-size: var(--app-base-font-size) !important; }
body { font-family: var(--app-font) !important; color: var(--app-text) !important; }
h1,h2,h3,h4,h5,h6,.text-display { font-family: var(--app-heading-font) !important; }

.brand-logo-link, .sidebar-logo a { display:inline-flex !important; align-items:center !important; gap:10px !important; text-decoration:none !important; min-width:0 !important; }
.brand-logo-img { width:var(--app-logo-width) !important; height:var(--app-logo-height) !important; max-height:68px !important; object-fit:contain !important; display:block !important; }
.brand-logo-img + .brand-logo-text { display:none !important; }
.brand-logo-text { color:var(--brand-shamrock) !important; font-weight:900 !important; }

body:not(.admin-body) { background:linear-gradient(180deg,var(--app-bg),#ffffff 72%,var(--app-bg)) !important; color:var(--app-text) !important; }
body:not(.admin-body) .navbar { background:rgba(8,10,14,.94) !important; border-bottom:1px solid rgba(255,255,255,.08) !important; backdrop-filter:blur(16px); }
body:not(.admin-body) .nav-link { color:rgba(255,255,255,.78) !important; }
body:not(.admin-body) .nav-link:hover { color:#ffffff !important; }

.btn,button.btn,a.btn,.agent-btn,.filter-btn,.account-auth-tab,.res-step-btn,.reserve-submit,.checkout-submit,.customer-login-btn,.product-actions .btn,.menu-card .btn,.menu-actions .btn,.home-product-card .btn,.card-actions .btn {
  min-height:var(--app-button-height) !important;
  height:auto !important;
  padding:0 16px !important;
  border-radius:var(--app-button-radius) !important;
  font-size:var(--app-button-font-size) !important;
  font-weight:850 !important;
  letter-spacing:.02em !important;
  border:1px solid rgba(255,255,255,.12) !important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease !important;
}
.btn:hover,button.btn:hover,a.btn:hover,.agent-btn:hover,.filter-btn:hover,.account-auth-tab:hover,.res-step-btn:hover,.reserve-submit:hover,.checkout-submit:hover,.customer-login-btn:hover,.product-actions .btn:hover,.menu-card .btn:hover,.menu-actions .btn:hover,.home-product-card .btn:hover,.card-actions .btn:hover { transform:translateY(-1px) !important; box-shadow:0 16px 34px rgba(39,200,135,.15),0 10px 28px rgba(93,70,175,.14) !important; }
.btn-primary,.btn-green,.btn-blue,.customer-login-btn,.checkout-submit,.reserve-submit,.home-product-card .add-to-cart,.menu-card .add-to-cart { color:var(--app-button-text) !important; background:linear-gradient(135deg,var(--app-button-bg),var(--brand-shamrock)) !important; border-color:rgba(39,200,135,.65) !important; }
.btn-gray-outline,.btn-outline,.home-product-card .view-details,.menu-card .view-details { color:var(--app-text) !important; background:linear-gradient(180deg,#1C2637,#121B29) !important; border-color:rgba(255,255,255,.12) !important; }
.btn-red,.admin-logout-icon { color:#fff !important; background:rgba(255,77,93,.13) !important; border-color:rgba(255,77,93,.42) !important; }
.btn-red:hover,.admin-logout-icon:hover { background:rgba(255,77,93,.23) !important; border-color:rgba(255,77,93,.68) !important; }

.product-actions,.menu-actions,.card-actions { gap:10px !important; align-items:center !important; }
.product-actions .btn,.menu-card .btn,.menu-actions .btn,.home-product-card .btn { min-height:40px !important; height:40px !important; padding:0 14px !important; font-size:12.5px !important; white-space:nowrap !important; }

body:not(.admin-body) .hero, body:not(.admin-body) .home-hero { background:var(--home-hero-bg) !important; color:var(--home-hero-text) !important; }
body:not(.admin-body) .section, body:not(.admin-body) .home-section { background:var(--home-section-bg); color:var(--home-section-text) !important; }
body:not(.admin-body) .product-card, body:not(.admin-body) .home-product-card { background:var(--home-card-bg) !important; color:var(--home-card-text) !important; }

body:not(.admin-body) .menu-page, body:not(.admin-body) .menu-archive, body:not(.admin-body) .menu-category-page { background:var(--menu-page-bg) !important; color:var(--menu-page-text) !important; }
body:not(.admin-body) .menu-search, body:not(.admin-body) .menu-filter, body:not(.admin-body) .sort-select { background:var(--menu-filter-bg) !important; color:var(--menu-filter-text) !important; }
body:not(.admin-body) .menu-card, body:not(.admin-body) .product-card { background:var(--menu-card-bg) !important; color:var(--menu-card-text) !important; }
body:not(.admin-body) .menu-card .price, body:not(.admin-body) .product-card .price { color:var(--menu-card-price) !important; }
body:not(.admin-body) .load-more, body:not(.admin-body) #load-more { background:var(--load-more-bg) !important; color:var(--load-more-text) !important; }
body:not(.admin-body) .load-more:hover, body:not(.admin-body) #load-more:hover { background:var(--load-more-hover-bg) !important; }
body:not(.admin-body) .product-detail, body:not(.admin-body) .menu-detail-page { background:var(--product-detail-bg) !important; color:var(--product-detail-text) !important; }
body:not(.admin-body) .product-detail-card, body:not(.admin-body) .menu-detail-card { background:var(--product-detail-card) !important; color:var(--product-detail-text) !important; }
body:not(.admin-body) .product-detail .price, body:not(.admin-body) .menu-detail-page .price { color:var(--product-detail-price) !important; }

.account-page,.order-page,.checkout-page,.reservation-cosmic-shell,.auth-page-section { color:var(--app-text) !important; }
.premium-account-auth,.account-auth-box,.order-auth-box,.checkout-card,.reservation-panel,.reservation-form-card,.cosmic-reservation-card,.auth-card,.customer-login-card,.premium-auth-form {
  max-width:var(--app-form-max-width) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  background:linear-gradient(180deg,var(--form-bg),rgba(12,18,31,.98)) !important;
  border:1px solid var(--form-border) !important;
  border-radius:var(--app-card-radius) !important;
  color:var(--form-text) !important;
  box-shadow:0 30px 80px rgba(0,0,0,.34) !important;
}
.account-auth-tabs { background:var(--auth-tab-bg) !important; border:1px solid var(--app-border) !important; }
.account-auth-tab { color:var(--auth-tab-text) !important; }
.account-auth-tab.active { background:var(--auth-tab-active-bg) !important; color:var(--auth-tab-active-text) !important; }

body:not(.admin-body) input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="file"]), body:not(.admin-body) select, body:not(.admin-body) textarea, body:not(.admin-body) .country-select, body:not(.admin-body) .iti {
  min-height:var(--app-input-height) !important;
  border-radius:var(--app-field-radius) !important;
  color:rgb(154 156 157) !important;
  font-size:var(--app-field-font-size) !important;
  font-weight:700 !important;
  box-shadow:none !important;
}
body:not(.admin-body) label, body:not(.admin-body) .form-label { color:var(--form-label) !important; }
body:not(.admin-body) input::placeholder, body:not(.admin-body) textarea::placeholder { color:var(--form-placeholder) !important; opacity:1 !important; }
body:not(.admin-body) .iti input[type="tel"], body:not(.admin-body) .country-select > input[type="text"] { background:transparent !important; border:0 !important; box-shadow:none !important; }
body:not(.admin-body) .iti__selected-flag, body:not(.admin-body) .country-select .flag-dropdown { background:rgba(255,255,255,.06) !important; border-right:1px solid var(--app-field-border) !important; }
.address-input-wrap::before,.address-field-wrap::before,.google-address-wrap::before,.place-autocomplete-wrap::before { display:none !important; content:none !important; }

.reservation-cosmic-shell { background:var(--reserve-bg) !important; color:var(--reserve-text) !important; }
.reservation-cosmic-shell .reservation-card,.reservation-cosmic-shell .cosmic-reservation-card,.reservation-cosmic-shell .reservation-panel,.reservation-cosmic-shell .reservation-summary { background:var(--reserve-card-bg) !important; color:var(--reserve-text) !important; }
.reservation-cosmic-shell .slot-btn,.reservation-cosmic-shell .time-slot,.reservation-cosmic-shell .res-time-slot { background:var(--reserve-slot-bg) !important; color:var(--reserve-slot-text) !important; border-color:var(--app-border) !important; }
.reservation-cosmic-shell .slot-btn.active,.reservation-cosmic-shell .time-slot.active,.reservation-cosmic-shell .res-time-slot.active,.reservation-cosmic-shell .slot-btn.selected { background:var(--reserve-slot-active-bg) !important; color:var(--reserve-slot-active-text) !important; }
.reservation-cosmic-shell .status-available,.reservation-cosmic-shell .available { color:var(--reserve-status-available) !important; }
.reservation-cosmic-shell .status-selected,.reservation-cosmic-shell .selected { color:var(--reserve-status-selected) !important; }
.reservation-cosmic-shell .status-booked,.reservation-cosmic-shell .booked { color:var(--reserve-status-booked) !important; }

.admin-body { background:var(--app-bg) !important; color:var(--app-text) !important; }
.admin-body .sidebar { width:var(--app-admin-sidebar-width) !important; background:var(--backend-sidebar-bg) !important; color:var(--backend-sidebar-text) !important; }
.admin-body .main-content,.admin-body .admin-main,.admin-body .content-area { background:var(--app-bg) !important; color:var(--app-text) !important; }
.admin-body .top-bar,.admin-body .admin-header { background:var(--backend-topbar-bg) !important; }
.admin-body .card,.admin-body .settings-card,.admin-body .admin-card,.admin-body .modal-content { background:var(--app-card) !important; color:var(--app-text) !important; border-color:var(--app-border) !important; border-radius:var(--app-card-radius) !important; }
.admin-body .nav-item,.admin-body .nav-subitem,.admin-body .nav-childitem { color:var(--backend-sidebar-text) !important; }
.admin-body .nav-item.active,.admin-body .nav-item:hover,.admin-body .nav-subitem.active,.admin-body .nav-subitem:hover,.admin-body .nav-childitem.active,.admin-body .nav-childitem:hover { background:var(--backend-sidebar-active-bg) !important; color:var(--backend-sidebar-active-text) !important; }
.admin-body .admin-table thead th { background:var(--backend-table-header-bg) !important; color:var(--app-muted) !important; }
.admin-body .admin-table tbody tr,.admin-body .data-table tbody tr { background:var(--backend-table-row-bg) !important; border-color:var(--backend-table-border) !important; }
.admin-body input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="file"]), .admin-body select, .admin-body textarea { min-height:var(--app-input-height) !important; border-radius:var(--app-field-radius) !important; background:var(--app-field-bg) !important; color:var(--app-field-text) !important; border:1px solid var(--app-field-border) !important; font-size:var(--app-field-font-size) !important; }
.admin-body input:focus,.admin-body select:focus,.admin-body textarea:focus { border-color:var(--app-field-focus) !important; box-shadow:0 0 0 3px color-mix(in srgb,var(--app-field-focus) 20%,transparent) !important; outline:none !important; }
.admin-body .icon-btn,.admin-body .table-action-btn,.admin-body .admin-action-btn { width:var(--app-table-button-size) !important; height:var(--app-table-button-size) !important; min-width:var(--app-table-button-size) !important; min-height:var(--app-table-button-size) !important; }
.admin-body .btn:not(.btn-red),.admin-body button.btn:not(.btn-red) { background:var(--app-button-bg) !important; color:var(--app-button-text) !important; min-height:var(--app-button-height) !important; font-size:var(--app-button-font-size) !important; }
.admin-body .btn:not(.btn-red):hover,.admin-body button.btn:not(.btn-red):hover { background:var(--app-button-hover-bg) !important; color:var(--app-button-hover-text) !important; }

.appearance-settings-card .appearance-section-block { margin:18px 0 0; padding:18px; border:1px solid rgba(255,255,255,.10); border-radius:18px; background:rgba(255,255,255,.025); }
.appearance-section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.appearance-section-head h4 { margin:0; font-size:15px; color:var(--app-text); }
.appearance-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:14px !important; }
.appearance-grid .full-width { grid-column:1 / -1 !important; }
.appearance-settings-card input[type="color"] { height:42px !important; padding:4px !important; border-radius:12px !important; background:#0B1020 !important; border:1px solid rgba(255,255,255,.14) !important; cursor:pointer; }
.appearance-settings-card input[type="file"] { background:#0B1020 !important; color:#fff !important; border:1px dashed rgba(255,255,255,.18) !important; padding:10px !important; border-radius:12px !important; }
.appearance-preview-row { display:grid; grid-template-columns:minmax(180px,280px) 1fr; gap:18px; align-items:stretch; margin-bottom:18px; }
.appearance-logo-preview,.appearance-palette-preview { background:#0B1020; border:1px solid rgba(255,255,255,.10); border-radius:18px; overflow:hidden; }
.appearance-logo-preview { display:flex; align-items:center; justify-content:center; padding:18px; min-height:104px; }
.appearance-logo-preview img { max-width:100%; max-height:86px; object-fit:contain; }
.appearance-palette-preview { display:grid; grid-template-columns:repeat(4,1fr); min-height:104px; }
.appearance-palette-preview span { display:flex; flex-direction:column; justify-content:flex-end; padding:14px; color:#fff; font-size:12px; text-shadow:0 2px 8px rgba(0,0,0,.35); }
@media (max-width: 1100px) { .appearance-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; } }
@media (max-width: 760px) { .appearance-grid,.appearance-preview-row { grid-template-columns:1fr !important; } }

#contact-form input,
#contact-form textarea,
#menu-search-main input,
#menu-search-main select{

  background: var(--app-field-text) !important; color: var(--app-field-bg) #0b1020 !important; box-shadow: 1px 1px 6px 0px rgba(0, 0, 0, 0.1) !important;}

#contact-form label{color: var(--app-field-bg) !important; pddding:5px 10px !important; }
#contact-form input:focus,
#contact-form textarea:focus{
    border: none !important;
    box-shadow: 3px 3px 18px 2px rgba(0, 0, 0, 0.2) !important;
 }
#menu-search-main input::placeholder,
select#menu-sort option{
  color: #000000 !important;
  background-color: #ffffff !important;
}
 .form-footer .btn-primary, .form-footer button.btn-primary, .form-footer a.btn-primary, {
    background: linear-gradient(180deg, var(--app-field-text), var(--cb-green-2)) !important;
  
    border-color: rgba(255, 255, 255, .14) !important;
}
.btn:hover{

    -ms-transform: scale(1.4) !important; /* IE 9 */
  -webkit-transform: scale(1.4) !important; /* Safari 3-8 */
  transform: scale(1.4) !important; 
}
/* Force Chrome autofill background */
html body input:-webkit-autofill,
html body input[type="tel"]:-webkit-autofill,
html body input[autocomplete="name"]:-webkit-autofill,
input[autocomplete="tel"]:-webkit-autofill,
html body input[type="email"]:-webkit-autofill,
html body input[type="text"]:-webkit-autofill,
html body input:-webkit-autofill:hover,
html body input:-webkit-autofill:focus,
html body input:-webkit-autofill:active {
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffffff !important;

    background-color: transparent !important;
    background-image: none !important;

    -webkit-box-shadow: 0 0 0 1000px #070b13 inset !important;
    box-shadow: 0 0 0 1000px #070b13 inset !important;

    transition: background-color 999999s ease-in-out 0s !important;
}
/* Fix autofill background for international phone input */
html body .auth-phone-field .iti {
    background: #070b13 !important;
    color-scheme: dark;
}

html body .auth-phone-field .iti input.iti__tel-input:-webkit-autofill,
html body .auth-phone-field .iti input.iti__tel-input:-webkit-autofill:hover,
html body .auth-phone-field .iti input.iti__tel-input:-webkit-autofill:focus,
html body .auth-phone-field .iti input.iti__tel-input:-webkit-autofill:active {
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffffff !important;
    background-image: none !important;
    -webkit-box-shadow: 0 0 0 1000px #070b13 inset !important;
    box-shadow: 0 0 0 1000px #070b13 inset !important;
    transition: background-color 999999s ease-in-out 0s !important;
}

/* Phone flag section */
html body .auth-phone-field .iti__flag-container,
html body .auth-phone-field .iti__selected-flag {
    background: #070b13 !important;
}

/* Remove any white background applied by the phone library */
html body .auth-phone-field input.iti__tel-input {
    background-color: #070b13 !important;
    color: #ffffff !important;
}
/* Firefox and standard browsers */
html body input:autofill,
html body input:autofill:hover,
html body input:autofill:focus {
    color: #ffffff !important;
    caret-color: #ffffff !important;
    background: #000000 !important;
    box-shadow: 0 0 0 1000px #070b13 inset !important;
}
.newsletter-form { display: flex !important;}
.newsletter-form input[type="email"] {flex: 1; border-radius: var(--app-field-radius-none) !important;}

.btn-in-cart {
  background-color: #000000 !important;
  border-color: #fff !important;
  pointer-events: none;
  opacity: 0.4 !important;
}