/* =====================================================================
   theme_coffee — account / auth / cart / checkout / order sweep
   Owner: account (DESIGN.md §3). Tokens + components come from coffee.css.
   Loaded per page via @push('css_or_js') after coffee-layout.css.
   Logical properties only (RTL). Mobile first, ≥992 desktop.
   ===================================================================== */

/* ---------- 0. Shared page shell ------------------------------------- */
.cz-page { padding-block: 28px 48px; }
@media (min-width: 992px) { .cz-page { padding-block: 40px 64px; } }
.cz-page__head { margin-bottom: 18px; }
.cz-page__head .cz-h2 { margin-bottom: 4px; }
.cz-page__sub { color: var(--cz-ink-60); font-size: 14px; margin: 0; }
@media (min-width: 992px) { .cz-page__head { margin-bottom: 26px; } }

/* Legacy helpers that carried the old blue theme */
.theme-coffee .__color-0f9d58, .theme-coffee .text-success { color: var(--cz-ok) !important; }
.theme-coffee .text-secondary-50 { color: var(--cz-ink-60) !important; }
.theme-coffee .bg-aliceblue { background: var(--cz-cream) !important; }
.theme-coffee .border-aliceblue, .theme-coffee .border-lighter { border-color: var(--cz-ink-12) !important; }
.theme-coffee .__shadow, .theme-coffee .box-shadow, .theme-coffee .box-shadow-lg { box-shadow: var(--cz-shadow-sm) !important; border: 1px solid var(--cz-ink-12) !important; }
.theme-coffee .__card { background: var(--cz-white); border: 1px solid var(--cz-ink-12); box-shadow: var(--cz-shadow-sm); border-radius: var(--cz-radius); }
.theme-coffee .__card .card-header, .theme-coffee .__card .form-control { border-color: var(--cz-ink-12); }
.theme-coffee .btn--primary, .theme-coffee .btn--primary:focus { background: var(--cz-lacquer) !important; border-color: var(--cz-lacquer) !important; color: #fff !important; border-radius: var(--cz-radius-sm); font-weight: 700; box-shadow: none !important; }
.theme-coffee .btn--primary:hover { background: var(--cz-lacquer-2) !important; border-color: var(--cz-lacquer-2) !important; }
.theme-coffee .btn-outline--primary, .theme-coffee .btn-outline--info, .theme-coffee .btn-outline-info { color: var(--cz-lacquer) !important; border-color: var(--cz-lacquer) !important; background: transparent !important; }
.theme-coffee .btn-outline--primary:hover, .theme-coffee .btn-outline--info:hover { background: var(--cz-lacquer) !important; color: #fff !important; }
.theme-coffee .btn-outline-success { color: var(--cz-ok) !important; border-color: var(--cz-ok) !important; background: transparent !important; }
.theme-coffee .btn-outline-success:hover { background: var(--cz-ok) !important; color: #fff !important; }
.theme-coffee .btn-shadow { box-shadow: none !important; }
.theme-coffee .text-underline, .theme-coffee .text-force-underline { text-decoration: underline; text-underline-offset: 2px; }
.theme-coffee .password-toggle-btn .custom-control-input:checked ~ .password-toggle-indicator { color: var(--cz-lacquer); }
.theme-coffee .password-toggle-indicator { color: var(--cz-ink-40); }
.theme-coffee .custom-control-label::before { border-color: var(--cz-ink-22); background: var(--cz-white); }
.theme-coffee .custom-checkbox .custom-control-input:checked ~ .custom-control-label::before { background-color: var(--cz-lacquer); border-color: var(--cz-lacquer); }
.theme-coffee .custom-control-input:focus ~ .custom-control-label::before { box-shadow: 0 0 0 3px rgba(158, 43, 37, .15); }
.theme-coffee .form-control.text-align-direction { text-align: start; }
.theme-coffee .invalid-feedback { color: var(--cz-danger); }
.theme-coffee .feature_header { margin: 0; }
.theme-coffee .feature_header span { font: 400 28px/1.15 var(--cz-font-display); color: var(--cz-ink); text-transform: none; background: transparent; }
@media (max-width: 767.98px) { .theme-coffee .feature_header span { font-size: 22px; } }
.theme-coffee .nav-tabs { border-bottom: 1px solid var(--cz-ink-12); }
.theme-coffee .nav-tabs .nav-link { border: 0; border-bottom: 2px solid transparent; color: var(--cz-ink-60); font-weight: 700; padding: 10px 14px; background: transparent !important; border-radius: 0; }
.theme-coffee .nav-tabs .nav-link.active { color: var(--cz-lacquer) !important; border-bottom-color: var(--cz-lacquer); }
.theme-coffee .__inline-54 .nav-tabs .nav-link { color: var(--cz-ink-60) !important; font-size: 15px !important; border-radius: 0; }
.theme-coffee .__inline-54 .nav-tabs .nav-link.active { color: var(--cz-lacquer) !important; background: transparent !important; }
.theme-coffee .modal-header .close { color: var(--cz-cream); opacity: 1; text-shadow: none; }
.theme-coffee .list-group-item { border-color: var(--cz-ink-12); background: var(--cz-white); }
.theme-coffee .list-group-item.active { background: var(--cz-cream); color: var(--cz-ink); border-color: var(--cz-ink-12); }

/* ---------- 1. Auth pages (login / register / forgot / reset / verify) */
.cz-auth { padding-block: 36px 64px; }
@media (min-width: 992px) { .cz-auth { padding-block: 56px 88px; } }
.cz-auth__card { max-width: 440px; margin-inline: auto; background: var(--cz-white); border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius-lg); box-shadow: var(--cz-shadow); padding: 28px 22px 26px; }
.cz-auth__card--wide { max-width: 760px; }
@media (min-width: 576px) { .cz-auth__card { padding: 36px 38px 32px; } }
.cz-auth__brand { display: flex; align-items: center; gap: 10px; margin-bottom: 22px; }
.cz-auth__brand-name { font: 700 16px/1 var(--cz-font-display); color: var(--cz-ink); }
.cz-auth__title { font: 400 28px/1.2 var(--cz-font-display); color: var(--cz-ink); margin: 0 0 6px; letter-spacing: -.01em; text-wrap: balance; }
.cz-auth__sub { color: var(--cz-ink-60); font-size: 14px; margin: 0 0 24px; }
.cz-auth .form-group { margin-bottom: 16px; }
.cz-auth .form-label, .cz-auth label.form-label { display: block; font: 600 12px/1 var(--cz-font-body); letter-spacing: .06em; text-transform: uppercase; color: var(--cz-ink-60); margin-bottom: 8px; }
.cz-auth .form-label small { text-transform: none; letter-spacing: 0; font-weight: 400; }
.cz-auth .form-control { min-height: 46px; padding: 12px 14px; border: 1px solid var(--cz-ink-22); border-radius: var(--cz-radius-sm); background: var(--cz-white); font-size: 14.5px; }
.cz-auth .password-toggle .form-control { padding-inline-end: 44px; }
.cz-auth .password-toggle-btn { inset-inline-end: 12px; }
.cz-auth__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-size: 13.5px; margin-bottom: 18px; }
.cz-auth__row .custom-control-label { color: var(--cz-ink); font-weight: 600; cursor: pointer; }
.cz-auth__link { color: var(--cz-lacquer); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.cz-auth__captcha { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: stretch; margin-bottom: 18px; }
.cz-auth__captcha .form-control { min-height: 44px; }
.cz-auth__captcha .input-icons { display: flex; align-items: center; gap: 6px; background: var(--cz-paper); border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius-sm); padding-inline: 4px; }
.cz-auth__captcha .input-icons img { height: 40px; border-radius: var(--cz-radius-sm); }
.cz-auth__captcha .input-icons .icon { color: var(--cz-lacquer); }
.cz-auth__submit { width: 100%; min-height: 48px; font-size: 15px; }
.cz-auth__or { display: flex; align-items: center; gap: 12px; margin: 22px 0 14px; color: var(--cz-ink-60); font: 600 11px/1 var(--cz-font-mono); letter-spacing: .14em; text-transform: uppercase; }
.cz-auth__or::before, .cz-auth__or::after { content: ""; flex: 1; height: 1px; background: var(--cz-ink-12); }
.cz-auth__social { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; }
.cz-auth__social a { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 1px solid var(--cz-ink-22); border-radius: var(--cz-radius-sm); background: var(--cz-white); transition: border-color .15s, box-shadow .15s; }
.cz-auth__social a:hover { border-color: var(--cz-ink); box-shadow: var(--cz-shadow-sm); }
.cz-auth__social img { width: 22px; height: 22px; object-fit: contain; }
.cz-auth__foot { margin-top: 22px; padding-top: 18px; border-top: 1px dashed var(--cz-ink-22); text-align: center; font-size: 13.5px; color: var(--cz-ink-60); }
.cz-auth__foot a { color: var(--cz-lacquer); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.cz-auth__steps { list-style: none; padding: 0; margin: 0 0 22px; display: flex; flex-direction: column; gap: 10px; }
.cz-auth__steps li { display: flex; gap: 12px; font-size: 14px; color: var(--cz-ink); }
.cz-auth__steps li span:first-child { font: 600 12px/1.6 var(--cz-font-mono); color: var(--cz-brass); }
.cz-auth__timer { text-align: center; margin-bottom: 18px; }
.cz-auth__timer p { margin: 0 0 4px; color: var(--cz-ink-60); font-size: 13px; }
.cz-auth__timer .verifyTimer { font: 600 22px/1 var(--cz-font-mono); color: var(--cz-lacquer); margin: 0; }
.cz-auth__otp #divOuter { display: flex; justify-content: center; margin: 8px 0 18px; }
.cz-auth__otp #partitioned { font: 600 26px/1 var(--cz-font-mono); letter-spacing: 22px; text-align: center; padding-inline-start: 22px; border: 0; border-bottom: 2px solid var(--cz-ink-22); border-radius: 0; background: transparent; width: 200px; }
.cz-auth__otp #partitioned:focus { box-shadow: none; border-bottom-color: var(--cz-lacquer); }
.cz-auth__actions { display: flex; gap: 10px; flex-wrap: wrap; }
.cz-auth__actions > * { flex: 1 1 160px; }
.cz-auth__success { text-align: center; padding-block: 10px; }
.cz-auth__success .fa { font-size: 56px; color: var(--cz-ok); }
.cz-auth__success-name { margin-top: 14px; font-size: 14px; color: var(--cz-ink-60); }
.cz-auth__success-title { font: 400 24px/1.2 var(--cz-font-display); margin: 6px 0 0; }
.cz-auth .form-control[disabled], .cz-auth span.form-control { background: var(--cz-paper); color: var(--cz-ink-60); }
.cz-auth .iti { width: 100%; }
.cz-auth .iti__selected-flag { border-inline-end: 1px solid var(--cz-ink-12); }
.cz-auth #recaptcha_element { margin-bottom: 16px; }

/* ---------- 2. Account shell (profile aside + content) ---------------- */
.theme-coffee .user-profile-container { background: transparent !important; padding-block: 28px 56px !important; }
@media (min-width: 992px) { .theme-coffee .user-profile-container { padding-block: 40px 72px !important; } }
.theme-coffee .user-profile-container > .row { row-gap: 16px; }
.theme-coffee .__customer-sidebar { padding: 10px 10px 14px; background: var(--cz-white); border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius); box-shadow: var(--cz-shadow-sm); }
.theme-coffee .cz-acct-nav__head { padding: 12px 12px 14px; margin-bottom: 6px; border-bottom: 1px solid var(--cz-ink-12); display: flex; align-items: center; gap: 12px; }
.theme-coffee .cz-acct-nav__head .cz-eyebrow { margin: 0; }
.theme-coffee .cz-acct-nav__name { font: 400 17px/1.2 var(--cz-font-display); color: var(--cz-ink); margin-top: 3px; }
.theme-coffee .__customer-sidebar .widget-title { margin: 0; }
.theme-coffee .__customer-sidebar .widget-title a { display: flex; align-items: center; gap: 12px; min-height: 42px; padding: 8px 12px; border: 0 !important; border-radius: var(--cz-radius-sm); color: var(--cz-ink-60); font: 600 14px/1.2 var(--cz-font-body); text-transform: none; transition: background .15s, color .15s; position: relative; }
.theme-coffee .__customer-sidebar .widget-title a svg { width: 18px; height: 18px; flex: none; opacity: .75; }
.theme-coffee .__customer-sidebar .widget-title a:hover { background: var(--cz-cream); color: var(--cz-ink); }
.theme-coffee .__customer-sidebar .widget-title a.active-menu { background: var(--cz-cream); color: var(--cz-lacquer) !important; }
.theme-coffee .__customer-sidebar .widget-title a.active-menu::before { content: ""; position: absolute; inset-block: 8px; inset-inline-start: 0; width: 3px; border-radius: 2px; background: var(--cz-lacquer); }
.theme-coffee .__customer-sidebar .widget-title a.active-menu svg { opacity: 1; }
.theme-coffee .__customer-sidebar .widget-title a .aside-link { font-size: 14px; font-weight: inherit; line-height: 1.2; }
.theme-coffee .__customer-sidebar .widget-title a.customer-account-delete-by-route { color: var(--cz-danger); }
.theme-coffee .__customer-sidebar .cz-acct-nav__group { height: 1px; background: var(--cz-ink-12); margin: 6px 12px; }
.theme-coffee .profile-aside-close-btn { color: var(--cz-ink); }
@media (max-width: 991.98px) { .theme-coffee .__customer-sidebar { border-radius: 0; padding-top: 6px; } }
}
.theme-coffee .profile-aside-btn { width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; }
.theme-coffee .__customer-profile { color: var(--cz-ink); }
.theme-coffee .__customer-profile > .card, .theme-coffee .__customer-profile .card.h-100, .theme-coffee .__customer-profile > .bg-white, .theme-coffee .__customer-profile > .card.card-body { background: var(--cz-white); border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius); box-shadow: var(--cz-shadow-sm); }
.theme-coffee .__customer-profile .card-body { padding: 20px 18px; }
@media (min-width: 992px) { .theme-coffee .__customer-profile .card-body { padding: 26px 28px; } }
.theme-coffee .__customer-profile label { font: 700 12px/1.2 var(--cz-font-body); letter-spacing: .02em; color: var(--cz-ink); }
.theme-coffee .__customer-profile .form-control { min-height: 44px; }
.theme-coffee .cz-acct-title { font: 400 24px/1.2 var(--cz-font-display); color: var(--cz-ink); margin: 0; letter-spacing: -.01em; }
.theme-coffee .cz-acct-title--sm { font-size: 20px; }
.theme-coffee .cz-acct-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.theme-coffee .cz-acct-head .cz-eyebrow { display: block; margin-bottom: 6px; }
.theme-coffee .profile--info .profile-img { border-color: var(--cz-sand); }
.theme-coffee .change-profile-icon { background: var(--cz-lacquer); }
.theme-coffee .delete-account-dropdown-menu .dropdown-item { color: var(--cz-danger); }
.theme-coffee .border-base { border-color: var(--cz-ink-22) !important; color: var(--cz-ink); }

/* tables & badges inside account */
.theme-coffee .__table .thead-light, .theme-coffee .__table thead { background: var(--cz-cream) !important; }
.theme-coffee .__table thead th, .theme-coffee .__table thead td { font: 600 10.5px/1.3 var(--cz-font-mono) !important; letter-spacing: .12em; text-transform: uppercase; color: var(--cz-ink-60) !important; padding-block: 12px; border-bottom: 1px solid var(--cz-ink-22) !important; }
.theme-coffee .__table * { border-color: var(--cz-ink-12) !important; }
.theme-coffee .__table tbody td { padding-block: 14px; font-size: 13.5px; vertical-align: middle; }
.theme-coffee .__table tbody tr:hover td { background: var(--cz-cream); }
.theme-coffee .__badge, .theme-coffee .status-badge { display: inline-flex; align-items: center; padding: 4px 10px !important; border-radius: var(--cz-radius-sm) !important; font: 700 10.5px/1.3 var(--cz-font-body) !important; letter-spacing: .06em; text-transform: uppercase; height: auto !important; border: 0 !important; }
.theme-coffee .__badge[class*="soft-success"] { color: var(--cz-ok); background: var(--cz-ok-bg); }
.theme-coffee .__badge[class*="soft-primary"], .theme-coffee .__badge[class*="soft-info"] { color: #8A6216; background: var(--cz-brass-bg); }
.theme-coffee .__badge[class*="soft-danger"] { color: var(--cz-danger); background: var(--cz-danger-bg); }
.theme-coffee .__badge[class*="soft-warning"] { color: #8A6216; background: var(--cz-brass-bg); }
.theme-coffee .__badge[class*="soft-secondary"], .theme-coffee .__badge[class*="soft-dark"] { color: var(--cz-ink); background: var(--cz-sand); }
.theme-coffee .badge-soft-success { color: var(--cz-ok) !important; background: var(--cz-ok-bg) !important; }
.theme-coffee .badge-soft-danger { color: var(--cz-danger) !important; background: var(--cz-danger-bg) !important; }
.theme-coffee .badge-soft-primary, .theme-coffee .badge-soft-info, .theme-coffee .badge-soft-warning { color: #8A6216 !important; background: var(--cz-brass-bg) !important; }
.theme-coffee .__action-btn { width: 34px; height: 34px; border-radius: var(--cz-radius-sm); border: 1px solid var(--cz-ink-22); color: var(--cz-ink) !important; background: var(--cz-white) !important; }
.theme-coffee .__action-btn:hover { border-color: var(--cz-ink); background: var(--cz-cream) !important; color: var(--cz-lacquer) !important; }
.theme-coffee .__action-btn.text-success { color: var(--cz-ok) !important; }
.theme-coffee .media-order img { border: 1px solid var(--cz-ink-12) !important; border-radius: var(--cz-radius-sm); background: var(--cz-paper); }
.theme-coffee .media-order .cont h6 a { color: var(--cz-ink); }
.theme-coffee .media-order .cont h6 a:hover { color: var(--cz-lacquer); }
.theme-coffee .customer-profile-orders .fs-13.font-bold, .theme-coffee .customer-profile-orders .text-dark.font-weight-bold { font-family: var(--cz-font-mono); font-weight: 600; }
.theme-coffee .card-footer.border-0 { background: transparent; padding-inline: 0; }

/* wishlist */
.theme-coffee .wishlist-item { border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius); background: var(--cz-white); padding: 14px; transition: box-shadow .15s; }
.theme-coffee .wishlist-item:hover { box-shadow: var(--cz-shadow); }
.theme-coffee .wishlist-item .wishlist-img img { border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius-sm); background: var(--cz-paper); }
.theme-coffee .wishlist-item .font-name a { color: var(--cz-ink); font-size: 13.5px !important; font-weight: 700; }
.theme-coffee .wishlist-item .font-name a:hover { color: var(--cz-lacquer); }
.theme-coffee .wishlist-item .amount { font-family: var(--cz-font-mono); font-weight: 600; }
.theme-coffee .wishlist-item .remove--icon { border: 1px solid var(--cz-ink-22); border-radius: var(--cz-radius-sm); filter: none; width: 36px; height: 36px; background: var(--cz-white); }
.theme-coffee .wishlist-item .remove--icon:hover { border-color: var(--cz-lacquer); background: var(--cz-danger-bg); }
.theme-coffee .wishlist-item .for-discount-value { background: var(--cz-lacquer); color: #fff; border-radius: var(--cz-radius-sm); }

/* address */
.theme-coffee .__account-address .card-header.bg-aliceblue { background: var(--cz-cream) !important; border-bottom: 1px solid var(--cz-ink-12) !important; }
.theme-coffee .__account-address .card-header h6 { font: 700 14px/1.3 var(--cz-font-body); color: var(--cz-ink); text-transform: capitalize; }
.theme-coffee .__account-address .card-header .fs-12 { color: var(--cz-ink-60); font-weight: 500; }
.theme-coffee .__account-address .font-nameA { color: var(--cz-ink) !important; font-size: 13.5px !important; font-weight: 400 !important; }
.theme-coffee .__account-address .font-nameA .fw-semibold { color: var(--cz-ink-60); font: 600 10.5px/1.6 var(--cz-font-mono); letter-spacing: .1em; text-transform: uppercase; display: inline-block; min-width: 64px; }
.theme-coffee .__account-address .remove-address-by-modal { background: transparent; border: 0; color: var(--cz-ink-60); }
.theme-coffee .__account-address .remove-address-by-modal:hover { color: var(--cz-danger); }
.theme-coffee .__account-address .donate-now li { width: auto; height: auto; padding: 0; float: none; }
.theme-coffee .__account-address .donate-now label { position: static; display: inline-flex; align-items: center; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--cz-ink-22); background: var(--cz-white); color: var(--cz-ink); font: 600 12.5px/1 var(--cz-font-body); cursor: pointer; margin: 0; }
.theme-coffee .__account-address .donate-now input[type="radio"] { position: absolute; opacity: 0; width: 0; height: 0; }
.theme-coffee .__account-address .donate-now input[type="radio"]:checked + label { background: var(--cz-espresso) !important; border-color: var(--cz-espresso) !important; color: var(--cz-cream) !important; }
.theme-coffee .__account-address .donate-now { margin-top: 0; }
.theme-coffee .__account-address .modal-body .tab-pane.container { padding-inline: 0; }
.theme-coffee .bootstrap-select > .dropdown-toggle { border: 1px solid var(--cz-ink-22); background: var(--cz-white) !important; color: var(--cz-ink) !important; border-radius: var(--cz-radius-sm); min-height: 44px; }
.theme-coffee .bootstrap-select .dropdown-menu li a.active, .theme-coffee .bootstrap-select .dropdown-menu li a:hover { background: var(--cz-cream); color: var(--cz-lacquer); }

/* wallet / loyalty / coupons / tickets misc */
.theme-coffee .bottom-sticky_ele, .theme-coffee .bottom-sticky3, .theme-coffee .bottom-sticky2, .theme-coffee .bottom-sticky4, .theme-coffee .bottom-sticky { border: 0; border-top: 1px solid var(--cz-ink-12); border-radius: 0; box-shadow: 0 -4px 16px rgba(36, 26, 20, .08); background: var(--cz-white) !important; }
.theme-coffee .__customer-profile .nav-pills .nav-link { border-radius: 999px; font-weight: 700; color: var(--cz-ink-60); }
.theme-coffee .__customer-profile .nav-pills .nav-link.active { background: var(--cz-espresso); color: var(--cz-cream); }
.theme-coffee .__customer-profile .bg-light { background: var(--cz-cream) !important; }
.theme-coffee .__customer-profile .text-base, .theme-coffee .__customer-profile .text-primary { color: var(--cz-lacquer) !important; }
.theme-coffee .__customer-profile .btn-square { border: 1px solid var(--cz-ink-22); border-radius: var(--cz-radius-sm); }
.theme-coffee .__customer-profile .pos-btn { background: var(--cz-brass-bg); color: #8A6216; border-radius: var(--cz-radius-sm); padding: 4px 10px; font-weight: 700; font-size: 12px; }
.theme-coffee .__customer-profile .order_table_td, .theme-coffee .__customer-profile .payment { border-color: var(--cz-ink-12) !important; }
.theme-coffee .__customer-profile .border-lg { border: 1px solid var(--cz-ink-12); }
.theme-coffee .__customer-profile .bg-white.border-lg { border-radius: var(--cz-radius); }
.theme-coffee .media-tab-title { color: var(--cz-ink); }
.theme-coffee .ticket-status, .theme-coffee .text-info { color: var(--cz-lacquer) !important; }

/* ---------- 3. Cart / checkout ---------------------------------------- */
.theme-coffee .cz-cart-head { margin: 8px 0 18px; }
@media (min-width: 992px) { .theme-coffee .cz-cart-head { margin: 18px 0 22px; } }
.theme-coffee .cart_information { background: var(--cz-white); border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius); box-shadow: var(--cz-shadow-sm); }
@media (max-width: 991.98px) { .theme-coffee .cart_information { border-radius: 0; border-inline: 0; padding-bottom: 0 !important; } }
.theme-coffee .cart_information .card-header { background: var(--cz-cream); border-bottom: 1px solid var(--cz-ink-12); }
.theme-coffee .cart_information .card-header a.text-primary { color: var(--cz-ink) !important; font-weight: 700; font-size: 14px !important; }
.theme-coffee .cart_information .card-header a.text-primary:hover { color: var(--cz-lacquer) !important; }
.theme-coffee .__cart-table thead th { font: 600 10.5px/1.3 var(--cz-font-mono) !important; letter-spacing: .12em; text-transform: uppercase; color: var(--cz-ink-60); border-bottom: 1px solid var(--cz-ink-22); background: transparent; }
.theme-coffee .__cart-table .thead-light th { background: transparent; }
.theme-coffee .__cart-table tbody td { border-top: 1px solid var(--cz-ink-12); font-size: 13.5px; }
.theme-coffee .__cart-table tbody tr:first-child td { border-top: 0; }
.theme-coffee .__cart-table .__img-62, .theme-coffee .cart_information .__img-48 { border: 1px solid var(--cz-ink-12); background: var(--cz-paper); }
.theme-coffee .__cart-table a.text-break, .theme-coffee .cart_information .fs-13 a, .theme-coffee .cart_information a.text-dark { color: var(--cz-ink); font-weight: 600; }
.theme-coffee .__cart-table a.text-break:hover { color: var(--cz-lacquer); }
.theme-coffee .qty_input { border: 1px solid var(--cz-ink-22) !important; border-radius: var(--cz-radius-sm); font-family: var(--cz-font-mono); font-weight: 600; text-align: center; background: var(--cz-white); }
.theme-coffee .qty_minus, .theme-coffee .qty_plus { color: var(--cz-ink); }
.theme-coffee .qty_minus:hover, .theme-coffee .qty_plus:hover { color: var(--cz-lacquer); }
.theme-coffee .cart_information .text-dark.font-weight-bold, .theme-coffee .__cart-table .font-weight-bold.text-dark, .theme-coffee .__cart-table td.text-end { font-family: var(--cz-font-mono); }
.theme-coffee .__cart-total { background: var(--cz-white); border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius); box-shadow: var(--cz-shadow-sm); padding: 22px; }
.theme-coffee .order-summery-aside .__cart-total_sticky { top: calc(var(--cz-sticky-top, var(--cz-header-h)) + 16px); }
.theme-coffee .__cart-total .cart_title { color: var(--cz-ink-60); font-size: 13.5px !important; }
.theme-coffee .__cart-total .cart_value { font: 600 14px/1.3 var(--cz-font-mono) !important; color: var(--cz-ink); font-variant-numeric: tabular-nums; }
.theme-coffee .__cart-total hr { border-top-color: var(--cz-ink-22); }
.theme-coffee .__cart-total .cart_title.text-primary { color: var(--cz-ink) !important; font-weight: 700 !important; }
.theme-coffee .__cart-total .cart_title.text-primary + .cart_value { font-size: 18px !important; }
.theme-coffee .__cart-total .form-control.rounded-pill { border-radius: var(--cz-radius-sm) !important; border-color: var(--cz-ink-22); min-height: 46px; }
.theme-coffee .__cart-total .form-control.rounded-pill .btn { border-radius: var(--cz-radius-sm) !important; }
.theme-coffee .__cart-total .input_code:focus { outline: none; box-shadow: none; }
.theme-coffee .__cart-total h6.text-primary { color: var(--cz-ok) !important; font-size: 13.5px; }
.theme-coffee .__cart-total .deal-title { font-size: 11.5px !important; color: var(--cz-ink-60); margin-top: 6px; }
.theme-coffee .__cart-total .order-summery-footer-image { width: 34px; height: 34px; object-fit: contain; opacity: .75; }
.theme-coffee .__cart-total .proceed_to_next_button { min-height: 48px; font-size: 15px; }
.theme-coffee .cz-cart-empty { padding: 40px 20px; text-align: center; }
.theme-coffee .cz-cart-empty img { width: 110px; opacity: .8; margin-bottom: 12px; }
.theme-coffee #order_note { border-color: var(--cz-ink-22) !important; min-height: 96px; }
.theme-coffee .input-label { color: var(--cz-ink); }
.theme-coffee .input-label-secondary { color: var(--cz-ink-60); font-weight: 400; }
.theme-coffee .pulse-button { color: var(--cz-danger) !important; }
/* checkout steps → cz-steps look, legacy class names kept for JS */
.theme-coffee .checkout-steps.steps-light { display: flex; align-items: center; gap: 8px; padding: 0 !important; margin: 0 0 20px; border: 0; }
.theme-coffee .checkout-steps .step-item { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; font: 600 12.5px/1 var(--cz-font-body) !important; color: var(--cz-ink-40) !important; text-decoration: none; background: transparent; padding: 0; }
.theme-coffee .checkout-steps .step-item + .step-item::before { content: ""; width: 28px; height: 1px; background: var(--cz-ink-22); margin-inline-end: 2px; }
.theme-coffee .checkout-steps .step-progress { width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--cz-ink-22); background: var(--cz-white) !important; color: var(--cz-ink-60) !important; display: inline-flex; align-items: center; justify-content: center; margin: 0; padding: 0; }
.theme-coffee .checkout-steps .step-count { display: inline-flex; align-items: center; justify-content: center; background: transparent !important; color: inherit !important; font-size: 12px; width: auto; height: auto; }
.theme-coffee .checkout-steps .step-count img { width: 14px; height: 14px; object-fit: contain; margin: 0 !important; filter: grayscale(1); opacity: .7; }
.theme-coffee .checkout-steps .step-item.active { color: var(--cz-ink) !important; }
.theme-coffee .checkout-steps .step-item.active .step-progress { background: var(--cz-espresso) !important; border-color: var(--cz-espresso); color: var(--cz-cream) !important; }
.theme-coffee .checkout-steps .step-item.active .step-count img { filter: grayscale(1) brightness(3); opacity: 1; }
.theme-coffee .checkout-steps .step-item.active.current { color: var(--cz-ink) !important; }
.theme-coffee .checkout-steps .step-item.active.current .step-progress { background: var(--cz-lacquer) !important; border-color: var(--cz-lacquer); color: #fff !important; }
.theme-coffee .checkout-steps .step-label { margin: 0; padding: 0; white-space: nowrap; }
.theme-coffee .checkout-steps .step-item::after { display: none !important; }
@media (max-width: 575.98px) { .theme-coffee .checkout-steps .step-item + .step-item::before { width: 12px; } .theme-coffee .checkout-steps .step-item:not(.current) .step-label { display: none; } }
.theme-coffee .checkout_details h2.h4, .theme-coffee .checkout_details h4 { font: 400 22px/1.2 var(--cz-font-display); color: var(--cz-ink); }
.theme-coffee .checkout_details .card { border-color: var(--cz-ink-12); }
.theme-coffee .checkout_details .list-group-item.add-another-address { background: var(--cz-cream); }
.theme-coffee .checkout_details .dropdown-toggle.form-control { text-align: start; }
.theme-coffee .checkout_details .saved-address-dropdown .dropdown-item.active { background: var(--cz-cream); color: var(--cz-ink); }
.theme-coffee .checkout_details .click-if-alone { justify-content: flex-start; border: 1px solid var(--cz-ink-22); border-radius: var(--cz-radius-sm); background: var(--cz-white); color: var(--cz-ink); font-weight: 600; padding: 12px 14px; }
.theme-coffee .checkout_details .click-if-alone:hover { border-color: var(--cz-ink); background: var(--cz-cream); }
.theme-coffee .checkout_details .card.cursor-pointer { border: 0; box-shadow: none; }
.theme-coffee .checkout_details .custom-radio { accent-color: var(--cz-lacquer); }
.theme-coffee .checkout_details .text-primary { color: var(--cz-lacquer) !important; }
.theme-coffee .checkout_details .btn-secondary { background: transparent !important; color: var(--cz-ink) !important; border-color: var(--cz-ink-22) !important; }
.theme-coffee .checkout_details .btn-secondary:hover { border-color: var(--cz-ink) !important; background: var(--cz-white) !important; }
.theme-coffee .cz-checkout-done { text-align: center; padding-block: 30px; }
.theme-coffee .cz-checkout-done .fa { font-size: 56px; color: var(--cz-ok); }
.theme-coffee .cz-checkout-done h6 { font: 400 26px/1.2 var(--cz-font-display); margin: 14px 0 8px; }
.theme-coffee .cz-checkout-done p { color: var(--cz-ink-60); font-size: 14px !important; max-width: 520px; margin-inline: auto; }

/* cart/checkout polish */
.theme-coffee .__cart-table thead th, .theme-coffee .__cart-table thead th.text-capitalize { text-transform: uppercase !important; }
@media (max-width: 767.98px) { .theme-coffee .cz-cart-head { padding-inline: 16px; } .theme-coffee #cart-summary > .row > .col-lg-8 > .px-3 { padding-inline: 16px !important; } }
@media (max-width: 575.98px) { .theme-coffee .__cart-total .row.justify-content-center > .col-sm-3 { flex: 0 0 50%; max-width: 50%; margin-bottom: 10px; } }
@media (max-width: 767.98px) { .theme-coffee .user-profile-container { padding-inline: 10px !important; } .theme-coffee .__customer-profile > .card, .theme-coffee .__customer-profile > .card.card-body { border-radius: var(--cz-radius); } }
.theme-coffee .__account-address .cz-addr-edit { color: var(--cz-ink-60); font-size: 15px; display: inline-flex; align-items: center; }
.theme-coffee .__account-address .cz-addr-edit:hover { color: var(--cz-lacquer); }
.theme-coffee .text-warning, .theme-coffee .rating .fa-star, .theme-coffee .fa-star.text-warning { color: var(--cz-brass) !important; }

/* ---------- 4. Tracking / order details --------------------------------- */
.theme-coffee .tracking-page .card, .theme-coffee .track-order-page .card { border: 1px solid var(--cz-ink-12) !important; box-shadow: var(--cz-shadow-sm) !important; }
.theme-coffee .tracking-page h3, .theme-coffee .track-order-page h3 { font: 400 26px/1.2 var(--cz-font-display) !important; }
.theme-coffee .tracking-page .opacity-50 { color: var(--cz-ink-60); opacity: 1; }
.theme-coffee .tracking-page .prepended-form-control, .theme-coffee .track-order-page .prepended-form-control { min-height: 44px; }

/* ---------- 5. Deals ----------------------------------------------------- */
.theme-coffee .__flash-deals-bg { padding: 30px; border-radius: var(--cz-radius) !important; position: relative; overflow: hidden; min-height: 180px; }
.theme-coffee .__flash-deals-bg::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(36, 26, 20, 0) 30%, rgba(36, 26, 20, .55) 100%); pointer-events: none; }
.theme-coffee .__flash-deals-bg > .row { position: relative; }
.theme-coffee .__inline-59 .countdown-background { background: var(--cz-espresso) !important; border-radius: var(--cz-radius); padding: 14px; }
.theme-coffee .__inline-59 .cz-countdown [class*="cz-countdown-"] { background: var(--cz-cream-15) !important; border: 1px solid var(--cz-cream-35) !important; border-radius: var(--cz-radius-sm); color: var(--cz-cream) !important; font-family: var(--cz-font-mono); }
.theme-coffee .__inline-59 .cz-countdown-value { color: var(--cz-cream); font-family: var(--cz-font-mono); font-weight: 600; }
.theme-coffee .__inline-59 .cz-countdown-text { color: var(--cz-cream-60); font: 600 9.5px/1 var(--cz-font-mono); letter-spacing: .12em; text-transform: uppercase; }
.theme-coffee .__inline-59 .__progress { background: var(--cz-cream-15); height: 4px; margin-top: 10px; }
.theme-coffee .__inline-59 .flash-deal-progress-bar { background: var(--cz-brass); }
.theme-coffee .__inline-59 .flash_deal_title { font: 400 28px/1.15 var(--cz-font-display); text-transform: none; color: var(--cz-ink); }
.theme-coffee .flash_deal_product_details .flash-product-price { color: var(--cz-lacquer); }

/* ---------- 6. Supplier contact auth modal ------------------------------ */
.theme-coffee .cz-sca .modal-content { border-radius: var(--cz-radius) !important; border: 0; overflow: hidden; }
.theme-coffee .cz-sca .modal-header { background: var(--cz-espresso) !important; color: var(--cz-cream); padding: 14px 18px; }
.theme-coffee .cz-sca .modal-header .modal-title { color: var(--cz-cream) !important; font-size: 14px; }
.theme-coffee .cz-sca .modal-body { background: var(--cz-cream) !important; padding: 20px 18px 22px; }
.theme-coffee .cz-sca .form-control { min-height: 46px; border-radius: var(--cz-radius-sm); border-color: var(--cz-ink-22); font-size: 14.5px; }
.theme-coffee .cz-sca #sca_otp { font: 600 24px/1 var(--cz-font-mono); letter-spacing: 10px; text-align: center; }
.theme-coffee .cz-sca .btn-primary { border-radius: var(--cz-radius-sm) !important; min-height: 46px; }
.theme-coffee .cz-sca .cz-sca__eyebrow { display: block; margin-bottom: 8px; }
.theme-coffee .cz-sca .close { color: var(--cz-cream); opacity: .85; }

/* ---------- 7. Maintenance page ---------------------------------------- */
.cz-maint { min-height: 100vh; display: flex; align-items: center; justify-content: center; background: var(--cz-cream); color: var(--cz-ink); font-family: var(--cz-font-body); padding: 32px 20px; text-align: center; }
.cz-maint__inner { max-width: 560px; }
.cz-maint__mark { margin: 0 auto 24px; }
.cz-maint__title { font: 400 36px/1.1 var(--cz-font-display); margin: 14px 0 10px; letter-spacing: -.01em; }
.cz-maint__sub { color: var(--cz-ink-60); font-size: 16px; margin: 0; }
.cz-maint img { max-width: 260px; margin-bottom: 20px; opacity: .9; }

/* ---------- 8. Legacy sub-pages: refer & earn, inbox, wallet, loyalty, coupons, tickets ---- */
.theme-coffee .refer_and_earn_section .primary-heading { color: var(--cz-ink); font: 400 24px/1.2 var(--cz-font-display); }
.theme-coffee .refer_and_earn_section .secondary-heading { color: var(--cz-ink-60); font-weight: 400; }
.theme-coffee .refer_and_earn_section .text-secondary-color { color: var(--cz-ink-60); font: 600 10.5px/1.6 var(--cz-font-mono); letter-spacing: .12em; text-transform: uppercase; }
.theme-coffee .refer_and_earn_section .refer_code_box { border: 1px dashed var(--cz-brass); border-radius: var(--cz-radius-sm); background: var(--cz-cream); }
.theme-coffee .refer_and_earn_section .refer_code { font: 600 15px/1 var(--cz-font-mono); letter-spacing: .08em; color: var(--cz-ink); }
.theme-coffee .refer_and_earn_section .refer_code_copy { color: var(--cz-lacquer); cursor: pointer; }
.theme-coffee .refer_and_earn_section .refer_code_copy img, .theme-coffee .refer_and_earn_section .refer_code_copy svg { filter: grayscale(1) brightness(.4); }
.theme-coffee .refer_and_earn_section .share-icons-heading { font: 600 11px/1 var(--cz-font-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--cz-ink-60); }
.theme-coffee .refer_and_earn_section .share-on-social span, .theme-coffee .refer_and_earn_section .share-on-social a { box-shadow: none; border: 1px solid var(--cz-ink-22); background: var(--cz-white); }
.theme-coffee .refer_and_earn_section .information-section { background: var(--cz-cream) !important; border: 1px solid var(--cz-ink-12) !important; border-radius: var(--cz-radius) !important; }
.theme-coffee .refer_and_earn_section .information-section .custom-info-icon { border-color: var(--cz-brass); color: var(--cz-brass); }
.theme-coffee .refer_and_earn_section .information-section h4 { font: 700 15px/1.3 var(--cz-font-body); color: var(--cz-ink); }
.theme-coffee .refer_and_earn_section .information-section .item-custom-index { background: var(--cz-white) !important; border: 1px solid var(--cz-ink-22) !important; color: var(--cz-ink) !important; font-family: var(--cz-font-mono); font-weight: 600; }
.theme-coffee .refer_and_earn_section .information-section .item-custom-text { color: var(--cz-ink); }
.theme-coffee .chat--sidebar-card { background: var(--cz-cream) !important; border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius); }
.theme-coffee .chat--sidebar-card .nav--tabs .nav-link { color: var(--cz-ink-60) !important; }
.theme-coffee .chat--sidebar-card .nav--tabs .nav-link.active { color: var(--cz-lacquer) !important; border-color: var(--cz-lacquer) !important; }
.theme-coffee .inbox_chat .chat_list.active { background: var(--cz-paper); border-bottom-color: var(--cz-ink-12); }
.theme-coffee .inbox_chat .chat_list h5, .theme-coffee .inbox_chat .chat_list .active-text { color: var(--cz-ink); font: 700 14px/1.3 var(--cz-font-body); }
.theme-coffee .__color-92C6FF { color: var(--cz-ink-40); }
.theme-coffee .heading_search .form-inline { border: 1px solid var(--cz-ink-12); }
.theme-coffee .__customer-profile .card.btn--primary { background: var(--cz-espresso) !important; border-color: var(--cz-espresso) !important; color: var(--cz-cream) !important; border-radius: var(--cz-radius) !important; }
.theme-coffee .__customer-profile .card.btn--primary .text-white, .theme-coffee .__customer-profile .card.btn--primary h2, .theme-coffee .__customer-profile .card.btn--primary h3 { color: var(--cz-cream) !important; }
.theme-coffee .__customer-profile .card.btn--primary h2, .theme-coffee .__customer-profile .card.btn--primary h3 { font-family: var(--cz-font-mono); font-weight: 600; }
.theme-coffee .__customer-profile .card.btn--primary .fs-36 { color: var(--cz-brass-2) !important; }
.theme-coffee .wallet-card-bg { opacity: .25; filter: grayscale(1) brightness(1.6); }
.theme-coffee .my-wallet-card-content, .theme-coffee .how-to-use-hover-ele { background: var(--cz-cream); border: 1px solid var(--cz-ink-12); color: var(--cz-ink); border-radius: var(--cz-radius); }
.theme-coffee .my-wallet-card-content .subtitle { font: 700 15px/1.3 var(--cz-font-body); color: var(--cz-ink); }
.theme-coffee .add-fund-carousel-card { background: var(--cz-cream) !important; border-color: var(--cz-ink-12) !important; border-radius: var(--cz-radius) !important; }
.theme-coffee .add-fund-carousel-card .text-accent, .theme-coffee .add-fund-carousel-card h4 { color: var(--cz-lacquer) !important; }
.theme-coffee .loyalty-card { box-shadow: var(--cz-shadow-sm); border: 1px solid var(--cz-ink-12); }
.theme-coffee .loyalty-card .card-header { background: var(--cz-cream); }
.theme-coffee .bg--light { background: var(--cz-cream) !important; }
.theme-coffee .ticket-box { background: var(--cz-cream); border: 1px solid var(--cz-ink-12); border-radius: var(--cz-radius); }
.theme-coffee .ticket-box p { color: var(--cz-ink-60); }
.theme-coffee .ticket-amount { font-family: var(--cz-font-mono); color: var(--cz-lacquer); }
.theme-coffee .coupon__discount { color: var(--cz-ink-60); }
.theme-coffee .__ticket-table .thead-light { background: var(--cz-cream); }
.theme-coffee .__ticket-table * { border-color: var(--cz-ink-12) !important; }
.theme-coffee .__ticket-table thead th, .theme-coffee .__ticket-table thead td { font: 600 10.5px/1.3 var(--cz-font-mono) !important; letter-spacing: .12em; text-transform: uppercase; color: var(--cz-ink-60) !important; }
.theme-coffee .cz-empty-icon, .theme-coffee .__customer-profile img[src*="icons/coupon.svg"] { filter: grayscale(1) opacity(.45); }
