/* ===== Base + tokens ===== */
@import url("//cdn.web-fonts.ge/fonts/bpg-glaho-arial/css/bpg-glaho-arial.min.css");
@import url("//cdn.web-fonts.ge/fonts/arial-geo/css/arial-geo.min.css");
@import url("//cdn.web-fonts.ge/fonts/bpg-banner-caps/css/bpg-banner-caps.min.css");
@import url("//cdn.web-fonts.ge/fonts/bpg-arial/css/bpg-arial.min.css");


body, button, a , p, h1,h2,h3,h4,h5,h6, span{
    font-family:"BPG Banner Caps", "sans-serif" !important;
}

:root{
  --bg:#0a0d12;
  --ink:#eaf0f7;
  --muted:#99a3ad;
  --line:#222732;
  --glass:#0f131a;
  --card:#141922;
  --accent:#F4971E;
  --accent-ink:#06111d;
  --radius:22px;
  --shadow-lg:0 18px 50px rgba(0,0,0,.45);
  --shadow-sm:0 6px 20px rgba(0,0,0,.25);
}

html.light-mode {
  --bg: #f5f7fa !important;
  --ink: #101820 !important;
  --muted: #6b7280 !important;
  --line: #d1d5db !important;
  --glass: rgba(255,255,255,0.8) !important;
  --card: #ffffff !important;
  --accent: #F4971E !important;
  --accent-ink: #eaf0f7 !important;
  --radius: 22px !important;
  --shadow-lg: 0 18px 50px rgba(0,0,0,0.15) !important;
  --shadow-sm: 0 6px 20px rgba(0,0,0,0.1) !important;

  /* Custom colors for your design */
  --header-color: rgba(55, 110, 37, 0.9) !important;
  --icon-color: rgba(247, 243, 238, 0.9) !important;
  --icon-accent: #F4971E !important;
  --tile-shadow: 0 0 25px rgba(31, 77, 56, 0.18) !important;
  --btn-bg: #F4971E !important;
  --btn-color: #ffffff !important;
  --btn-shadow: 0 6px 20px rgba(31, 77, 56, 0.35) !important;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
img{max-width:100%;display:block}
body{background:var(--bg);color:var(--ink);font:16px/1.6 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif}
.container{max-width:1160px;margin:0 auto;padding:28px}
/* Header styling */
html.light-mode header:not(.section__header) {
  background-color: var(--header-color);
}
html.light-mode .wc-block-cart  *{
    color:black !important;
}
html.light-mode .brand__name{
    color:#F4971E;
}
/* Icon styling */
html.light-mode .icon {
  color: var(--icon-color);
  fill: var(--icon-accent);
}
html.light-mode .chip{
    background: rgba(247, 243, 238, 0.9);
    border-color: #376E25;
    color:black;
}
html.light-mode .chip--active{
    background: rgba(244, 151, 30, 0.9);
    border-color: #376E25;
    color:black;
    box-shadow:none;
}
html.light-mode .cat-slide{
    background: rgba(247, 243, 238, 0.9);
    border-color: #376E25;
    color:black;
}
html.light-mode .cat-slide.active{
    background: rgba(244, 151, 30, 0.9);
    border-color: #376E25;
    color:black;
    box-shadow:none;
}
html.light-mode .chips__nav{
    background:#F4971E;
}
html.light-mode .topbar__actions .btn-icon, html.light-mode .topbar__actions .btn-outline{
    background:rgba(247, 243, 238, 0.9);
}
html.light-mode .topbar__actions .badge{
    background:#F4971E;
    box-shadow:none;
}
html.light-mode .topbar__actions .btn-icon svg{
    fill:#F4971E;
}
/* Tiles */
html.light-mode .tile {
  background: #F7F3EE;
  border-radius: var(--radius);
  box-shadow: var(--tile-shadow);
}
html.light-mode .landing__bg{
    background:#F7F3EE;
}
html.light-mode .gl_link{
    color:black;
}
html.light-mode .site-footer{
    border-top:1px solid #376E25;
   background: #f8f2ea;
}
/* Landing search */
html.light-mode .landing__search {
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgb(255 253 253 / 75%);
  border: 1px solid #376E25;
  border-radius: 999px;
  padding: 10px 10px 10px 14px;
  box-shadow: var(--shadow-lg);
  max-width: 740px;
}

/* Button search */
html.light-mode .landing__search .btn-primary {
    background: #F4971E;
   color: white;
   box-shadow: 0 6px 20px rgba(31, 77, 56, 0.35);

}

html.light-mode .btn-search:hover {
  filter: brightness(1.1);
}
.see-more{
    font-size:.875rem;color:#F4971E;text-decoration:none;
}
html.light-mode .see-more{
    color:#F4971E;
}
/* ===== Landing background ===== */
.landing{position:relative;min-height:92vh;display:flex;align-items:center}
.landing__bg{position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(900px 420px at 15% 20%, rgba(46,163,255,.16), transparent 60%),
    radial-gradient(800px 360px at 85% 30%, rgba(120,70,255,.14), transparent 60%),
    radial-gradient(700px 320px at 50% 85%, rgba(45,220,160,.12), transparent 60%);
  filter:saturate(115%);
}
.landing__noise{position:absolute;inset:0;pointer-events:none;opacity:.06;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E");
  mix-blend-mode:soft-light;
}
.landing__wrap{position:relative;z-index:1;width:100%}
.landing__title{font-size:2.4rem;margin:0 0 8px;font-weight:800;letter-spacing:.2px}
.landing__subtitle{margin:0 0 18px;color:var(--muted)}

/* ===== Search ===== */
.landing__search{
  display:flex;align-items:center;gap:10px;
  background:rgba(20,25,34,.75); border:1px solid var(--line); border-radius:999px;
  padding:10px 10px 10px 14px; box-shadow:var(--shadow-lg); max-width:740px;
}
.landing__search input[type=search]{
  flex:1;background:transparent;border:0;outline:none;color:var(--ink);
  padding:12px 10px;font-size:1rem;
}
.btn-primary{
  border:0;border-radius:999px;background:var(--accent);color:var(--accent-ink);
  padding:10px 18px;font-weight:700;cursor:pointer;
  transition:transform .08s ease, filter .14s ease;
}
.btn-primary:hover{filter:brightness(1.06)}
.btn-primary:active{transform:translateY(1px)}
.landing__searchIcon{width:20px;height:20px;fill:#6d7783;flex:0 0 auto}

/* ===== Tiles grid (glass + glow) ===== */
.tiles{
  margin-top:22px;
  display:grid;gap:18px;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
}
.tile{
  position:relative;display:flex;align-items:center;gap:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.06);
  border-radius:var(--radius); padding:14px 16px; text-decoration:none; color:var(--ink);
  box-shadow:var(--shadow-sm); transition:transform .12s ease, border-color .12s ease, background .12s ease, box-shadow .12s ease;
  overflow:hidden;
}
.tile:hover{
  transform:translateY(-3px);
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  box-shadow:0 18px 40px rgba(0,0,0,.35);
}
.tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.tile__ring{
  position:absolute; inset:-20%; background:radial-gradient(600px 200px at -10% -10%, rgba(46,163,255,.18), transparent 50%);
  opacity:0; transition:opacity .2s ease;
}
.tile:hover .tile__ring{opacity:1}
.tile__icon{
  display:flex;align-items:center;justify-content:center;width:80px;height:64px;
  border-radius:16px;background:#0f131a;outline:1px solid var(--line); font-size:30px; flex:0 0 auto;
}
.tile__icon img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.tile__icon svg{width:28px;height:28px}
.tile__text{display:flex;flex-direction:column;gap:4px}
.tile__label{font-weight:700;font-size:1.02rem}
.tile__meta{color:var(--muted);font-size:.86rem}

/* ===== Empty state ===== */
.empty{ color:var(--muted); background:rgba(255,255,255,.03); border:1px dashed var(--line);
  padding:18px; border-radius:var(--radius); }

/* ===== Responsive ===== */
@media (max-width: 640px){
  .landing__title{font-size:1.8rem}
  .landing__search{max-width:100%}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ===== Header (sticky, blur) ===== */
.site-topbar{
  position:sticky; top:0; z-index:50;
  background:rgba(12,16,22,.55); backdrop-filter:saturate(130%) blur(10px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.site-topbar .container{
    padding-top:10px;
    padding-bottom:10px;
}
.topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand__dot{width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 18px rgba(46,163,255,.9)}
.brand__name{font-weight:800;letter-spacing:.25px}

.topnav__list{display:flex;gap:16px;list-style:none;margin:0;padding:0}
.topnav__list a{
  color:var(--ink); text-decoration:none; opacity:.85; padding:8px 10px; border-radius:10px;
}
.topnav__list a:hover{opacity:1;background:rgba(255,255,255,.06)}

.topbar__actions{display:flex;align-items:center;gap:10px}
.btn-outline{
  display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px;
  border:1px solid rgba(255,255,255,.14); color:var(--ink); text-decoration:none;
}
.btn-outline:hover{background:rgba(255,255,255,.06)}
.btn-icon{
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  width:38px;height:38px;border-radius:999px;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1); text-decoration:none; color:var(--ink);
}
.btn-icon svg{width:20px;height:20px;fill:currentColor}
.badge{
  position:absolute; top:-6px; right:-6px; background:var(--accent); color:var(--accent-ink);
  border-radius:999px; font-size:.72rem; padding:2px 6px; font-weight:800;
}
.brand__logo {
  display: block;
}

/* ===== Footer (glass grid) ===== */
.site-footer{
  margin-top:40px;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  border-top:1px solid rgba(255,255,255,.06);
}
.footer__grid{
  display:grid; gap:24px; padding-top:28px; padding-bottom:10px;
  grid-template-columns:2fr 1fr 1fr 2fr;
}
.footer__text{color:var(--muted); margin:10px 0 0}
.footer__links h4, .footer__newsletter h4{margin:0 0 10px; font-size:1rem}
.footer__links ul{list-style:none; padding:0; margin:0; display:grid; gap:8px}
.footer__links a{color:var(--ink); text-decoration:none; opacity:.85}
.footer__links a:hover{opacity:1; text-decoration:underline}
.newsletter{display:flex; gap:8px}
.newsletter input{
  flex:1; background:#0f131a; border:1px solid var(--line); border-radius:10px;
  color:var(--ink); padding:10px 12px; outline:none;
}
.footer__bottom{
  border-top:1px solid rgba(255,255,255,.06);
  display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 0 24px;
  color:var(--muted); font-size:.92rem;
}
.footer__mini{color:var(--ink); text-decoration:none; opacity:.85}
.footer__mini:hover{opacity:1}
.mobile-header{
    background:#242424;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px;position:sticky;top:0;z-index:10;
}
html.light-mode .mobile-header{
    color:black;
    background-color:#f8f2ea !important;
}
#mobile-product-list {
    display:flex;overflow-x:auto;padding:10px;background:#242424;
}

html.light-mode #mobile-product-list{
    background:#f8f2ea;
    border-bottom: 1px solid #376E25;
}

/* Responsive */
@media (max-width:900px){
  .footer__grid{grid-template-columns:1fr 1fr}
  .topnav{display:none} /* collapse nav; keep brand + actions */
  .card .button, .card a.button, .card .add_to_cart_button, .card a.add_to_cart_button, .card .ajax_add_to_cart, .card a.ajax_add_to_cart, .card .wp-element-button, .card a.wp-element-button{
    justify-content: center !important;
  }
}
@media (max-width:520px){
  .footer__grid{grid-template-columns:1fr}
}

/* ===== Mobile header / hamburger / slide-down nav ===== */
.hamburger{
  display:none; background:none; border:0; width:40px; height:40px;
  border-radius:10px; cursor:pointer; align-items:center; justify-content:center;
}
.hamburger span{
  display:block; width:22px; height:2px; background:#cfd6df; margin:3.5px 0;
  transition:transform .2s ease, opacity .2s ease;
}
.nav-open .hamburger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-open .hamburger span:nth-child(2){opacity:0}
.nav-open .hamburger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.mobile-nav{
  display:none; background:rgba(15,20,28,.96);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.mobile-nav__list{list-style:none; margin:0; padding:10px}
.mobile-nav__list li a{
  display:block; padding:12px 10px; color:var(--ink); text-decoration:none; border-radius:10px;
}
.mobile-nav__list li a:hover{background:rgba(255,255,255,.06)}
.mobile-nav__cta{
  display:block; margin:8px 10px 14px; padding:10px 14px; text-align:center;
  border:1px solid rgba(255,255,255,.14); border-radius:12px; color:var(--ink); text-decoration:none;
}
.nav-open .mobile-nav{display:block}

/* Show hamburger on small screens, hide desktop nav */
.hide-sm{display:inline-flex}
.hide-xl{
    display:none !important;
}
@media (max-width:900px){
  .topnav{display:none}
  .hamburger{display:inline-flex}
  .hide-sm{display:none}
  .hide-xl{display:inline-flex !important;}
}

/* ===== Mobile polish for hero + tiles ===== */
@media (max-width:640px){
  .container{padding:20px}
  .landing{min-height:88vh}
  .landing__title{font-size:1.9rem}
  .landing__subtitle{font-size:.98rem}
  .landing__search{max-width:100%; padding:8px 8px 8px 12px}
  .landing__search input[type=search]{padding:10px 8px}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px}
  .tile{padding:12px 12px}
  .tile__icon{width:76px; height:48px; border-radius:14px; font-size:28px}
  .tile__label{font-size:.98rem}
  .tile__meta{font-size:.8rem}
}

/* Tiny phones */
@media (max-width:380px){
  .tiles{grid-template-columns:1fr 1fr}
  .btn-primary{padding:9px 14px}
}

/* ===== Disease page polish ===== */
.section{margin:24px 0 32px}
.section__title{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;font-size:1.25rem}
.section__hint{color:var(--muted);font-size:.9rem}

.chips{display:flex;gap:10px;overflow:auto;padding:8px 2px 10px;margin:4px 0 18px}
.chip{display:inline-flex;gap:8px;align-items:center;padding:9px 12px;border-radius:14px;
  background:rgba(255,255,255,.04);outline:1px solid rgba(255,255,255,.08);
  text-decoration:none;color:var(--ink);white-space:nowrap;transition:transform .1s ease, outline-color .1s ease}
.chip:hover{transform:translateY(-1px);outline-color:rgba(255,255,255,.14)}
.chip--active{background:rgba(46,163,255,.14);outline-color:rgba(46,163,255,.35)}

.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}

.card{background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.06);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm)}
.card__img{width:100%;height:160px;object-fit:cover;display:block}
.card__body{padding:12px 14px}
.card__title{margin:0 0 6px;font-size:1rem}
.price{font-weight:700}
.card__actions{display:flex;gap:8px;align-items:center;padding:0 14px 14px}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:12px;text-decoration:none;cursor:pointer}
.btn-primary{background:var(--accent);color:var(--accent-ink);border:0}
.btn-outline{background:transparent;color:var(--ink);border:1px solid rgba(255,255,255,.14)}
.btn:hover{filter:brightness(1.04)}

/* Tame Woo default buttons and quantity on cards */
.card .quantity{display:none}
.card .button, .card .add_to_cart_button, .card .ajax_add_to_cart{
  all:unset; display:inline-flex; padding:10px 14px; border-radius:12px;
  background:var(--accent); color:var(--accent-ink); cursor:pointer
}
.card .added_to_cart{display:none}

/* Responsive tweaks */
@media (max-width:680px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .card__img{height:140px}
}

/* ===== Fancy buttons ===== */
.btn{
  --h: 44px;
  display:inline-flex; align-items:center; gap:10px; height:var(--h);
  padding:0 14px; border-radius:12px; font-weight:700; text-decoration:none; cursor:pointer;
  border:1px solid transparent; transition:transform .08s ease, filter .14s ease, border-color .14s ease;
}
.btn svg{width:18px;height:18px;fill:currentColor}
.btn:hover{filter:brightness(1.06)}
.btn:active{transform:translateY(1px)}

.btn-primary{
  background:linear-gradient(180deg,#F4971E,#F4971E); color:var(--accent-ink);
}
.btn-primary:focus-visible{outline:2px solid rgba(46,163,255,.6); outline-offset:2px}

.btn-outline{
  background:rgba(255,255,255,.04); color:var(--ink);
  border-color:rgba(255,255,255,.14);
}
.btn-outline:hover{border-color:rgba(255,255,255,.24); background:rgba(255,255,255,.06)}

/* ===== Make Woo's default button look like ours on product cards ===== */
.card .button, .card .add_to_cart_button, .card .ajax_add_to_cart{
  all:unset; /* reset Woo styles */
  display:inline-flex; align-items:center; gap:10px; height:44px; padding:0 14px;
  border-radius:12px; font-weight:700; cursor:pointer; text-decoration:none;
  background:linear-gradient(180deg,#F4971E,#1f7ed1); color:var(--accent-ink);
  box-shadow:0 8px 24px rgba(46,163,255,.35);
}
.card .added_to_cart{display:none} /* hide “View cart” link Woo appends */

/* Cart icon + spinner + success check */
.btn-cart-icon, .btn-check-icon{
  width:18px;height:18px;display:inline-block;flex:0 0 auto;
  background:currentColor; -webkit-mask:center/contain no-repeat; mask:center/contain no-repeat;
}
.btn-cart-icon{ -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 4h-2l-1 2v2h2l3.6 7.59-1.35 2.41c-.2.36-.25.78-.13 1.17.19.63.78 1.08 1.46 1.08h9v-2h-8.42l.93-1.69h5.74c.75 0 1.41-.41 1.75-1.07l3.58-6.51c.08-.14.12-.3.12-.47 0-.55-.45-1-1-1h-14.31l-.94-2z"/></svg>'); mask-image:var(--mask);}
.btn-check-icon{ -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 16.17l-3.88-3.88-1.41 1.41L9 19 20.29 7.71 18.88 6.3z"/></svg>'); mask-image:var(--mask); display:none }

.btn-spinner{
  width:16px;height:16px;border-radius:50%;
  border:2px solid rgba(255,255,255,.55); border-top-color:transparent;
  animation:spin .7s linear infinite; display:none;
}
@keyframes spin{to{transform:rotate(360deg)}}

/* States */
.btn-adding .btn-spinner{display:inline-block}
.btn-adding .btn-cart-icon{display:none}
.btn-added .btn-check-icon{display:inline-block}
.btn-added .btn-cart-icon{display:none}

/* Customize button – “sliders” icon and subtle glow on hover */
.btn-customize{position:relative}
.btn-customize::before{
  content:""; width:18px; height:18px; margin-right:8px; background:currentColor; display:inline-block;
  -webkit-mask:center/contain no-repeat; mask:center/contain no-repeat;
  -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6h10v2H10V6zM4 6h2v2H4V6zm6 10h10v2H10v-2zM4 16h2v2H4v-2zm6-5h10v2H10v-2zM4 11h2v2H4v-2z"/></svg>');
          mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6h10v2H10V6zM4 6h2v2H4V6zm6 10h10v2H10v-2zM4 16h2v2H4v-2zm6-5h10v2H10v-2zM4 11h2v2H4v-2z"/></svg>');
}
.btn-customize:hover{box-shadow:0 10px 26px rgba(255,255,255,.08)}

/* --- FORCE pretty Add to cart on product cards --- */
.card .button,
.card a.button,
.card .add_to_cart_button,
.card a.add_to_cart_button,
.card .ajax_add_to_cart,
.card a.ajax_add_to_cart,
.card .wp-element-button,
.card a.wp-element-button {
  all: unset; /* nuke Woo/Block styles */
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 44px;
  padding: 0 6px;
  border-radius: 12px;
  font-size:15px;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  color: var(--accent-ink) !important;
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 8px 24px rgba(46,163,255,.35);
  transition: transform .08s ease, filter .14s ease, box-shadow .14s ease;
}

.card .button:hover,
.card a.button:hover,
.card .add_to_cart_button:hover,
.card a.add_to_cart_button:hover,
.card .ajax_add_to_cart:hover,
.card a.ajax_add_to_cart:hover,
.card .wp-element-button:hover,
.card a.wp-element-button:hover {
  filter: brightness(1.06);
}

.card .added_to_cart { display:none !important; } /* hide "View cart" link */

/* optional: icon + spinner + success check (works with the JS I gave) */
.card .btn-cart-icon, .card .btn-check-icon{
  width:18px;height:18px;display:inline-block;flex:0 0 auto;
  background:currentColor; -webkit-mask:center/contain no-repeat; mask:center/contain no-repeat;
}
.card .btn-cart-icon{ -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 4h-2l-1 2v2h2l3.6 7.59-1.35 2.41c-.2.36-.25.78-.13 1.17.19.63.78 1.08 1.46 1.08h9v-2h-8.42l.93-1.69h5.74c.75 0 1.41-.41 1.75-1.07l3.58-6.51c.08-.14.12-.3.12-.47 0-.55-.45-1-1-1h-14.31l-.94-2z"/></svg>'); }
.card .btn-check-icon{ display:none; -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 16.17l-3.88-3.88-1.41 1.41L9 19 20.29 7.71 18.88 6.3z"/></svg>'); }

.card .btn-spinner{
  width:16px;height:16px;border-radius:50%;
  border:2px solid rgba(255,255,255,.55); border-top-color:transparent;
  animation:spin .7s linear infinite; display:none;
}
@keyframes spin{to{transform:rotate(360deg)}}

.card .btn-adding .btn-spinner{display:inline-block}
.card .btn-adding .btn-cart-icon{display:none}
.card .btn-added  .btn-check-icon{display:inline-block}
.card .btn-added  .btn-cart-icon{display:none}

/* Customize button matches style */
.btn-customize{
  display:inline-flex; align-items:center; gap:10px; height:44px; padding:0 14px;
  border-radius:12px; font-weight:700; border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04); color:var(--ink); cursor:pointer;
}
.btn-customize:hover{border-color:rgba(255,255,255,.24); background:rgba(255,255,255,.06)}
.btn-customize::before{
  content:""; width:18px;height:18px;background:currentColor;
  -webkit-mask:center/contain no-repeat; mask:center/contain no-repeat;
  -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6h10v2H10V6zM4 6h2v2H4V6zm6 10h10v2H10v-2zM4 16h2v2H4v-2zm6-5h10v2H10v-2zM4 11h2v2H4v-2z"/></svg>');
  margin-right:2px;
}

/* Fix weird wrapping/overflow on Woo buttons (block theme resets) */
.card__actions{display:flex;gap:10px;align-items:center;padding:0 14px 14px}

.card .add_to_cart_button,
.card .wp-element-button{
  /* nuke inherited styles that cause the split */
  all: unset;
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 44px;
  min-width: 130px;              /* keep enough width for “Add to cart” */
  padding: 0 14px;
  border-radius: 12px;
  font: 700 14px/1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif; /* lock line-height */
  white-space: nowrap;            /* prevent breaking into "Add / to / cart" */
  overflow: hidden;               /* clip anything weird */
  text-decoration: none;
  color: var(--accent-ink) !important;
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 8px 24px rgba(46,163,255,.35);
  cursor: pointer;
  transition: transform .08s ease, filter .14s ease;
}
.card .add_to_cart_button:hover,
.card .wp-element-button:hover{ filter: brightness(1.06); }
.card .added_to_cart{ display:none !important; } /* hide Woo “View cart” link */

.card .btn-label{ white-space: nowrap; display:inline-block; }
.card .btn-cart-icon, .card .btn-check-icon{
  width:18px;height:18px;flex:0 0 auto;background:currentColor;
  -webkit-mask:center/contain no-repeat; mask:center/contain no-repeat;
}
.card .btn-cart-icon{ -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 4h-2l-1 2v2h2l3.6 7.59-1.35 2.41c-.2.36-.25.78-.13 1.17.19.63.78 1.08 1.46 1.08h9v-2h-8.42l.93-1.69h5.74c.75 0 1.41-.41 1.75-1.07l3.58-6.51c.08-.14.12-.3.12-.47 0-.55-.45-1-1-1h-14.31l-.94-2z"/></svg>'); }
.card .btn-check-icon{ display:none; -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 16.17l-3.88-3.88-1.41 1.41L9 19 20.29 7.71 18.88 6.3z"/></svg>'); }
.card .btn-spinner{
  width:16px;height:16px;border-radius:50%;
  border:2px solid rgba(255,255,255,.55); border-top-color:transparent;
  animation:spin .7s linear infinite; display:none;
}
@keyframes spin{to{transform:rotate(360deg)}}
.card .btn-adding .btn-spinner{display:inline-block}
.card .btn-adding .btn-cart-icon{display:none}
.card .btn-added  .btn-check-icon{display:inline-block}
.card .btn-added  .btn-cart-icon{display:none}

/* Match Customize button */
.btn.btn-customize{
  display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 14px;
  border-radius:12px;font-weight:700;border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);color:var(--ink);white-space:nowrap;
}
.btn.btn-customize:hover{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.06)}
.btn.btn-customize::before{
  content:"";width:18px;height:18px;background:currentColor;margin-right:2px;
  -webkit-mask:center/contain no-repeat;mask:center/contain no-repeat;
  -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6h10v2H10V6zM4 6h2v2H4V6zm6 10h10v2H10v-2zM4 16h2v2H4v-2zm6-5h10v2H10v-2zM4 11h2v2H4v-2z"/></svg>');
}

/* Card actions: keep buttons inside the card */
.card__actions{
  display:grid;
  grid-template-columns: 1fr 1fr;  /* two equal lanes */
  gap:10px;
  padding:0 14px 14px;
}

/* Make both buttons fill their lane and never overflow */
.card__actions .add_to_cart_button,
.card__actions .wp-element-button,
.card__actions .btn.btn-customize{
  width:100%;
  min-width:0;           /* allow shrinking */
  justify-content:center;/* keep labels centered */
  white-space:nowrap;    /* no multi-line breaks */
}

/* On tiny screens stack vertically */
@media (max-width: 380px){
  .card__actions{ grid-template-columns: 1fr; }
}
/* ==== Card actions container ==== */
.card__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 0 14px 14px;
}

@media (max-width: 420px) {
  .card__actions { grid-template-columns: 1fr; }
}

/* ==== Base button styling ==== */
.card__actions .add_to_cart_button,
.card__actions .wp-element-button,
.card__actions .btn.btn-customize {
  all: unset;
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
  height: 44px;
  padding: 0 14px;
  border-radius: 12px;
  font: 700 14px/1 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
  transition: transform .08s ease, filter .14s ease, border-color .14s ease, box-shadow .14s ease;
}

/* ==== Add to cart (primary) ==== */
.card__actions .add_to_cart_button,
.card__actions .wp-element-button {
  color: var(--accent-ink) !important;
  background: linear-gradient(180deg, #F4971E, #1f7ed1);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 8px 24px rgba(46,163,255,.35);
}
.card__actions .add_to_cart_button:hover,
.card__actions .wp-element-button:hover {
  filter: brightness(1.06);
}
.card .added_to_cart { display: none !important; }

/* Icon placeholders */
.card .btn-cart-icon, .card .btn-check-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  background: currentColor;
  -webkit-mask: center/contain no-repeat;
  mask: center/contain no-repeat;
}
.card .btn-cart-icon {
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 4h-2l-1 2v2h2l3.6 7.59-1.35 2.41c-.2.36-.25.78-.13 1.17.19.63.78 1.08 1.46 1.08h9v-2h-8.42l.93-1.69h5.74c.75 0 1.41-.41 1.75-1.07l3.58-6.51c.08-.14.12-.3.12-.47 0-.55-.45-1-1-1h-14.31l-.94-2z"/></svg>');
}
.card .btn-check-icon {
  display: none;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 16.17l-3.88-3.88-1.41 1.41L9 19 20.29 7.71 18.88 6.3z"/></svg>');
}
.card .btn-spinner {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,.55);
  border-top-color: transparent;
  animation: spin .7s linear infinite;
  display: none;
}
@keyframes spin { to { transform: rotate(360deg); } }
.card .btn-adding .btn-spinner { display: inline-block; }
.card .btn-adding .btn-cart-icon { display: none; }
.card .btn-added .btn-check-icon { display: inline-block; }
.card .btn-added .btn-cart-icon { display: none; }

/* ==== Customize (ghost style) ==== */
.card__actions .btn.btn-customize {
  color: var(--ink);
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 6px 20px rgba(0,0,0,.25);
}
.card__actions .btn.btn-customize:hover {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.24);
  box-shadow: 0 8px 24px rgba(255,255,255,.08);
}
/* Customize icon */
.card__actions .btn.btn-customize::before {
  content: "";
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  background: currentColor;
  -webkit-mask: center/contain no-repeat;
  mask: center/contain no-repeat;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6h10v2H10V6zM4 6h2v2H4V6zm6 10h10v2H10v-2zM4 16h2v2H4v-2zm6-5h10v2H10v-2zM4 11h2v2H4v-2z"/></svg>');
}

/* === Widen the main page container a bit (optional but helps) === */
.container{ max-width: 1320px; }

/* === Give product cards more breathing room so two buttons fit === */
/* Desktop/tablet: wider minimum card width */
.grid{
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); /* was 230px */
}

/* Buttons: small bump in padding so label never feels cramped */
.card__actions .add_to_cart_button,
.card__actions .wp-element-button,
.card__actions .btn.btn-customize{
  height: 46px;                 /* same height for both */
  padding: 0 16px;              /* a touch more inner space */
  border-radius: 14px;          /* matches card look */
  font: 700 15px/1 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
}

/* On medium screens, still keep cards wide enough */
@media (max-width: 1024px){
  .grid{ grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
}

/* On phones: stack buttons vertically so they never overflow */
@media (max-width: 480px){
  .card__actions{ grid-template-columns: 1fr; }
}

/* (Safety) Prevent any weird wrap inside labels */
.card__actions .add_to_cart_button .btn-label,
.card__actions .wp-element-button .btn-label{
  white-space: nowrap;
}
/* Give cards enough room for two full-width buttons */
.container{ max-width: 1320px; } /* optional, more breathing room site-wide */


/* Action row: two lanes by default, stack on small screens */
.card__actions{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 0 14px 14px;
}
@media (max-width: 600px){
  .card__actions{ grid-template-columns: 1fr; } /* stack on phones */
}

/* Buttons: consistent size, NEVER truncate label */
.card__actions .add_to_cart_button,
.card__actions .wp-element-button,
.card__actions .btn.btn-customize{
  all: unset;
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-width: 150px;     /* ensure “Customize” never clips */
  height: 46px;
  padding: 0 18px;      /* a bit more inner room */
  border-radius: 14px;
  font: 700 15px/1 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
  white-space: nowrap;  /* keep label on one line */
  overflow: visible;    /* stop clipping */
  text-overflow: clip;  /* no ellipsis */
  cursor: pointer;
  transition: transform .08s ease, filter .14s ease, border-color .14s ease, box-shadow .14s ease;
}

/* Primary (Add to cart) */
.card__actions .add_to_cart_button,
.card__actions .wp-element-button{
  color: var(--accent-ink) !important;
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 8px 24px rgba(46,163,255,.35);
}
.card__actions .add_to_cart_button:hover,
.card__actions .wp-element-button:hover{ filter: brightness(1.06); }
.card .added_to_cart{ display: none !important; }

/* Ghost (Customize) */
.card__actions .btn.btn-customize{
  color: var(--ink);
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 6px 20px rgba(0,0,0,.25);
}
.card__actions .btn.btn-customize:hover{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.24);
  box-shadow: 0 8px 24px rgba(255,255,255,.08);
}
.card__actions .btn.btn-customize::before{
  content:"";
  width:18px;height:18px;flex:0 0 auto;background:currentColor;
  -webkit-mask:center/contain no-repeat;mask:center/contain no-repeat;
  -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6h10v2H10V6zM4 6h2v2H4V6zm6 10h10v2H10v-2zM4 16h2v2H4v-2zm6-5h10v2H10v-2zM4 11h2v2H4v-2z"/></svg>');
}

/* Keep the add-to-cart icon/spinner working with your JS */
.card .btn-cart-icon,.card .btn-check-icon{width:18px;height:18px;flex:0 0 auto;background:currentColor;-webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}
.card .btn-cart-icon{-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 4h-2l-1 2v2h2l3.6 7.59-1.35 2.41c-.2.36-.25.78-.13 1.17.19.63.78 1.08 1.46 1.08h9v-2h-8.42l.93-1.69h5.74c.75 0 1.41-.41 1.75-1.07l3.58-6.51c.08-.14.12-.3.12-.47 0-.55-.45-1-1-1h-14.31l-.94-2z"/></svg>')}
.card .btn-check-icon{display:none;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 16.17l-3.88-3.88-1.41 1.41L9 19 20.29 7.71 18.88 6.3z"/></svg>')}
.card .btn-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.55);border-top-color:transparent;animation:spin .7s linear infinite;display:none}
@keyframes spin{to{transform:rotate(360deg)}}
.card .btn-adding .btn-spinner{display:inline-block}
.card .btn-adding .btn-cart-icon{display:none}
.card .btn-added .btn-check-icon{display:inline-block}
.card .btn-added .btn-cart-icon{display:none}
/* --- Compact action buttons so both fit side-by-side --- */
:root{
  --btn-fs: 14px;   /* base font size for action buttons */
  --btn-h:  42px;   /* button height */
  --btn-px: 12px;   /* horizontal padding */
  --btn-ic: 16px;   /* icon size */
}

/* two equal lanes already (keep) */
.card__actions{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }

/* shrink font, height, padding, icons; remove any min-widths */
.card__actions .add_to_cart_button,
.card__actions .wp-element-button,
.card__actions .btn.btn-customize{
  height: var(--btn-h);
  padding: 0 var(--btn-px);
  border-radius: 12px;
  font: 700 var(--btn-fs)/1 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
  gap: 8px;
  min-width: 0 !important;   /* override earlier min-widths */
  white-space: nowrap;
}

/* icon sizes */
.card .btn-cart-icon,
.card .btn-check-icon,
.card__actions .btn.btn-customize::before{
  width: var(--btn-ic);
  height: var(--btn-ic);
}

/* a touch tighter on medium screens */
@media (max-width: 1180px){
  :root{ --btn-fs: 13px; --btn-px: 10px; --btn-ic: 15px; }
}

/* stack on very small screens so nothing ever clips */
@media (max-width: 520px){
  .card__actions{ grid-template-columns: 1fr; }
}

/* Flex text area can shrink/wrap instead of getting clipped */
.tile{ display:flex; align-items:center; gap:12px; overflow:hidden; }
.tile__text{ display:flex; flex-direction:column; gap:4px; min-width:0; } /* ← key */
.tile__label{ font-weight:700; font-size:1.02rem; white-space:normal; word-break:break-word; }

/* Remove the forced 2-column layout on small screens */
@media (max-width: 640px){
  /* previously: .tiles{grid-template-columns:repeat(2,minmax(0,1fr))} */
  .tiles{ grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
}

/* If you want single column on very small phones */
@media (max-width: 360px){
  .tiles{ grid-template-columns: 1fr; }
}


/* =========================
   CART — compact + balanced
   (WooCommerce Blocks)
   ========================= */

/* Page width — stop any runaway widths */
.wc-block-cart .wc-block-cart__container{
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 28px;
}
@media (max-width: 980px){
  .wc-block-cart .wc-block-cart__container{ grid-template-columns: 1fr; gap: 18px; }
}

/* Panels */
.wc-block-cart-items,
.wc-block-components-totals-wrapper{
  background: #0d1117;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  box-shadow: none;
  overflow: hidden;
}

/* Header (PRODUCT | TOTAL) */
.wc-block-cart-items__header{
  display: grid;
  grid-template-columns: 1fr 120px;
  align-items: center;
  padding: 10px 14px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  color: #99a3ad;
  font: 600 .8rem/1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  letter-spacing:.03em;
  text-transform: uppercase;
}

/* Each row = 72 image | details | 120 total */
.wc-block-cart-items__row{
  display: grid !important;
  grid-template-columns: 72px 1fr 120px !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 12px 14px !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
}
.wc-block-cart-items__row:last-child{ border-bottom:0 !important; }

/* Column placement */
.wc-block-cart-item__image{ grid-column: 1; width:72px; height:72px; }
.wc-block-cart-item{ grid-column: 2; display:flex; align-items:flex-start; gap:12px; }
.wc-block-cart-item__total-price{ grid-column: 3; justify-self:end; font-weight:800; font-size:1rem; white-space:nowrap; }

/* Thumbnail (exactly 72 x 72) */
.wc-block-cart-item__image img{
  width:72px !important; height:72px !important; object-fit:cover !important;
  border-radius: 10px; outline:1px solid rgba(255,255,255,.10); background:#0f131a;
  display:block;
}

/* Text hierarchy */
.wc-block-cart-item__product a{
  color:#eaf0f7; text-decoration:none; font-weight:800; font-size:1rem; line-height:1.25;
}
.wc-block-cart-item__product a:hover{ text-decoration:underline; }
.wc-block-cart-item__summary{ color:#99a3ad; margin:2px 0 8px; font-size:.9rem; }

/* Quantity — compact */
.wc-block-components-quantity-selector{
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px; background:transparent; overflow:hidden;
}
.wc-block-components-quantity-selector input{
  width:44px; height:34px; background:transparent; color:#eaf0f7; border:0; text-align:center; font-weight:700;
}
.wc-block-components-quantity-selector__button{
  width:34px; height:34px; background:transparent; color:#eaf0f7; border-left:1px solid rgba(255,255,255,.10);
}
.wc-block-components-quantity-selector__button:first-child{ border-left:0 }

/* Unit price (muted) */
.wc-block-cart-item__prices{ color:#99a3ad; font-weight:600; font-size:.9rem; }

/* Remove link */
.wc-block-cart-item__remove-link{ background:none; border:0; padding:0; color:#99a3ad; font-size:.88rem; }
.wc-block-cart-item__remove-link:hover{ color:#eaf0f7; text-decoration:underline; }

/* ---------- Right column: flat, single-border card ---------- */
.wc-block-components-totals-wrapper{ padding:14px; position:sticky; top:84px; align-self:start; }
.wc-block-components-totals-wrapper h2{ margin:0 0 8px; color:#99a3ad; font:800 .95rem/1.2 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif; }

/* Coupon: no “border inside border” */
.wc-block-components-panel__button{
  background:transparent !important; border:0 !important; padding:0 !important; height:auto !important;
  color:#eaf0f7 !important; text-align:left !important; font-weight:700;
}
.wc-block-components-panel__content{
  background:transparent; padding-top:10px; margin-top:10px; border-top:1px dashed rgba(255,255,255,.10);
}
.wc-block-components-text-input input{
  background:#0f131a; color:#eaf0f7; border:1px solid rgba(255,255,255,.10); border-radius:10px; padding:10px 12px;
}
.components-button.is-secondary,
.wc-block-components-button.is-secondary{
  height:38px; padding:0 12px; border-radius:10px;
  background:transparent; border:1px solid rgba(255,255,255,.10); color:#eaf0f7;
}

/* Totals list */
.wc-block-components-totals-item{
  display:flex; justify-content:space-between; align-items:center;
  padding:10px 0; border-bottom:1px dashed rgba(255,255,255,.10);
}
.wc-block-components-totals-item:last-child{ border-bottom:0; }
.wc-block-components-totals-item__value{ font-weight:900; font-size:1.05rem; }

/* Checkout button stays blue (already fine) */
.wc-block-cart__submit-container{ margin-top:12px; }
.wc-block-cart__submit-container a,
.wc-block-cart__submit-container .wc-block-components-checkout-button{
  display:inline-flex; align-items:center; justify-content:center;
  width:100%; height:46px; border-radius:12px;
  background: var(--accent) !important; color: var(--accent-ink) !important;
  text-decoration:none; border:0;
}

/* =======================================================
   WooCommerce BLOCKS Cart — Clean Table Layout (final)
   ======================================================= */

/* ---- Page width (no runaway stretch) ---- */
:where(.woocommerce-cart) :where(.wc-block-cart__container){
  max-width: 1120px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1.4fr 1fr !important;
  gap: 28px !important;
}
@media (max-width: 980px){
  :where(.woocommerce-cart) :where(.wc-block-cart__container){
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
}

/* ---- Left card: remove big top gap, make rows start immediately ---- */
:where(.woocommerce-cart) :where(.wc-block-cart-items){
  background: #0d1117 !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Header row (PRODUCT | QTY | TOTAL) */
:where(.woocommerce-cart) :where(.wc-block-cart-items__header){
  display: grid !important;
  grid-template-columns: 72px 1fr 120px 120px !important; /* img | title | qty | total */
  align-items: center !important;
  padding: 10px 14px !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
  color: #99a3ad !important;
  font: 600 .78rem/1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif !important;
  letter-spacing: .03em !important;
  text-transform: uppercase !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-items__header) .wc-block-cart-items__header-product{
  grid-column: 2 !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-items__header) .wc-block-cart-items__header-quantity{
  grid-column: 3 !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-items__header) .wc-block-cart-items__header-total{
  grid-column: 4 !important; justify-self: end !important;
}

/* Each row: 72 image | details | 120 qty | 120 total */
:where(.woocommerce-cart) :where(.wc-block-cart-items__row){
  display: grid !important;
  grid-template-columns: 72px 1fr 120px 120px !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 12px 14px !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
  min-height: 0 !important; height: auto !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-items__row):last-child{
  border-bottom: 0 !important;
}

/* Thumbnail — exactly 72x72 (not tiny, not huge) */
:where(.woocommerce-cart) :where(.wc-block-cart-item__image){
  width: 72px !important; height: 72px !important; flex: 0 0 72px !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__image) img{
  width: 72px !important; height: 72px !important;
  object-fit: cover !important; border-radius: 10px !important;
  outline: 1px solid rgba(255,255,255,.10) !important; background:#0f131a !important;
  display: block !important;
}

/* Details column */
:where(.woocommerce-cart) :where(.wc-block-cart-item){ grid-column: 2 !important; display: block !important; }
:where(.woocommerce-cart) :where(.wc-block-cart-item__product) a{
  color: #eaf0f7 !important; text-decoration: none !important;
  font-weight: 800 !important; font-size: 1rem !important; line-height: 1.25 !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__product) a:hover{ text-decoration: underline !important; }
:where(.woocommerce-cart) :where(.wc-block-cart-item__summary){
  color: #99a3ad !important; margin: 4px 0 8px !important; font-size: .9rem !important;
}

/* Quantity column */
:where(.woocommerce-cart) :where(.wc-block-components-quantity-selector){
  grid-column: 3 !important;
  justify-self: start !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 10px !important; background: transparent !important; overflow: hidden !important;
}
:where(.woocommerce-cart) :where(.wc-block-components-quantity-selector) input{
  width: 44px !important; height: 34px !important; border: 0 !important; background: transparent !important;
  color:#eaf0f7 !important; text-align: center !important; font-weight: 700 !important;
}
:where(.woocommerce-cart) :where(.wc-block-components-quantity-selector__button){
  width: 34px !important; height: 34px !important; background: transparent !important; color:#eaf0f7 !important;
  border-left: 1px solid rgba(255,255,255,.10) !important;
}
:where(.woocommerce-cart) :where(.wc-block-components-quantity-selector__button):first-child{ border-left: 0 !important; }

/* Unit price (subtle, under title) */
:where(.woocommerce-cart) :where(.wc-block-cart-item__prices){
  color:#99a3ad !important; font-weight: 600 !important; font-size: .9rem !important; margin-top: 2px !important;
}

/* Line total column (bold, right-aligned) */
:where(.woocommerce-cart) :where(.wc-block-cart-item__total-price){
  grid-column: 4 !important; justify-self: end !important;
  font-weight: 900 !important; font-size: 1rem !important; white-space: nowrap !important;
}

/* Remove link — text-only */
:where(.woocommerce-cart) :where(.wc-block-cart-item__remove-link){
  background: none !important; border: 0 !important; padding: 0 !important; color:#99a3ad !important; font-size: .88rem !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__remove-link):hover{ color:#eaf0f7 !important; text-decoration: underline !important; }

/* ---- Right: flat totals card; remove inner rounded boxes ---- */
:where(.woocommerce-cart) :where(.wc-block-components-totals-wrapper){
  background:#0d1117 !important; border:1px solid rgba(255,255,255,.10) !important;
  border-radius:12px !important; padding:14px !important; position:sticky !important; top:84px !important;
}
:where(.woocommerce-cart) :where(.wc-block-components-totals-wrapper) h2{
  margin: 0 0 8px !important; color:#99a3ad !important; font:800 .95rem/1.2 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif !important;
}

/* Coupon header = plain text row (no pill, no second border) */
:where(.woocommerce-cart) :where(.wc-block-components-panel__button){
  background: transparent !important; border: 0 !important; padding: 0 !important; height: auto !important;
  color:#eaf0f7 !important; text-align: left !important; font-weight: 700 !important; width: 100% !important;
}
/* Coupon content with only a thin divider on top */
:where(.woocommerce-cart) :where(.wc-block-components-panel__content){
  background: transparent !important; padding-top: 10px !important; margin-top: 10px !important;
  border-top: 1px dashed rgba(255,255,255,.10) !important;
}
:where(.woocommerce-cart) :where(.wc-block-components-text-input) input{
  background:#0f131a !important; color:#eaf0f7 !important;
  border:1px solid rgba(255,255,255,.10) !important; border-radius:10px !important; padding:10px 12px !important;
}
:where(.woocommerce-cart) :where(.components-button.is-secondary),
:where(.woocommerce-cart) :where(.wc-block-components-button.is-secondary){
  height:38px !important; padding:0 12px !important; border-radius:10px !important;
  background: transparent !important; border:1px solid rgba(255,255,255,.10) !important; color:#eaf0f7 !important;
}

/* Totals list */
:where(.woocommerce-cart) :where(.wc-block-components-totals-item){
  display:flex !important; justify-content:space-between !important; align-items:center !important;
  padding:10px 0 !important; border-bottom:1px dashed rgba(255,255,255,.10) !important;
}
:where(.woocommerce-cart) :where(.wc-block-components-totals-item):last-child{ border-bottom:0 !important; }
:where(.woocommerce-cart) :where(.wc-block-components-totals-item__value){ font-weight:900 !important; font-size:1.05rem !important; }

/* Checkout button (keeps your blue) */
:where(.woocommerce-cart) :where(.wc-block-cart__submit-container){
  margin-top:12px !important; padding:0 !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart__submit-container) a,
:where(.woocommerce-cart) :where(.wc-block-cart__submit-container) .wc-block-components-checkout-button{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  width:100% !important; height:46px !important; border-radius:12px !important;
  background: var(--accent) !important; color: var(--accent-ink) !important; text-decoration:none !important; border:0 !important;
}

/* === Bigger thumbnails in cart rows === */
:where(.woocommerce-cart) :where(.wc-block-cart-item__image){
  width: 96px !important;
  height: 96px !important;
  flex: 0 0 96px !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__image) img{
  width: 96px !important;
  height: 96px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  outline: 1px solid rgba(255,255,255,.10) !important;
  background: #0f131a !important;
  display: block !important;
}

/* =============== Cart product row balanced =============== */

/* Row layout: image + details share same height */
:where(.woocommerce-cart) :where(.wc-block-cart-items__row){
  display: flex !important;
  align-items: stretch !important;
  gap: 18px !important;
  padding: 18px !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
}

/* Thumbnail fills same vertical height as text block */
:where(.woocommerce-cart) :where(.wc-block-cart-item__image){
  flex: 0 0 140px !important; /* adjust width */
  display: flex !important;
  align-items: stretch !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__image) img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 12px !important;
}

/* Details column takes rest of space */
:where(.woocommerce-cart) :where(.wc-block-cart-item){
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: 6px 0 !important;
}

/* Title */
:where(.woocommerce-cart) :where(.wc-block-cart-item__product) a{
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #eaf0f7 !important;
  text-decoration: none !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__product) a:hover{
  text-decoration: underline !important;
}

/* Description */
:where(.woocommerce-cart) :where(.wc-block-cart-item__summary){
  font-size: .92rem !important;
  color: #99a3ad !important;
  margin: 6px 0 12px !important;
}

/* Quantity + remove neatly inline under text */
:where(.woocommerce-cart) :where(.wc-block-components-quantity-selector){
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  margin-bottom: 6px !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__remove-link){
  color: #99a3ad !important;
  font-size: .85rem !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__remove-link):hover{
  color: #eaf0f7 !important;
}

/* Line total aligned right */
:where(.woocommerce-cart) :where(.wc-block-cart-item__total-price){
  align-self: flex-start !important;
  margin-left: auto !important;
  font-weight: 800 !important;
  font-size: 1.05rem !important;
}

/* ===============================
   Cart row: image = same height as text
   (WooCommerce Blocks)
   =============================== */

/* Make each row a 3-col grid and STRETCH the columns */
:where(.woocommerce-cart) :where(.wc-block-cart-items__row){
  display: grid !important;
  grid-template-columns: 180px 1fr 130px !important; /* image | details | total */
  align-items: stretch !important;                   /* ← key: columns match height */
  gap: 18px !important;
  padding: 18px !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
}

/* Let the details column occupy full row height */
:where(.woocommerce-cart) :where(.wc-block-cart-item){
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  height: 100% !important;
  min-height: 0 !important;
}

/* IMAGE: make wrapper and img fill the entire row height */
:where(.woocommerce-cart) :where(.wc-block-cart-item__image){
  grid-column: 1 !important;
  height: 100% !important;              /* ← same height as text column */
  width: 100% !important;
  min-height: 0 !important;
  display: block !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__image) img{
  height: 100% !important;              /* ← stretches with the row */
  width: 100% !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 14px !important;
}

/* TOTAL: right column, vertically centered */
:where(.woocommerce-cart) :where(.wc-block-cart-item__total-price){
  grid-column: 3 !important;
  justify-self: end !important;
  align-self: center !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

/* Optional: tidy spacing inside the details column */
:where(.woocommerce-cart) :where(.wc-block-cart-item__product) a{
  font-size: 1.08rem !important;
  font-weight: 800 !important;
}
:where(.woocommerce-cart) :where(.wc-block-cart-item__summary){
  margin: 6px 0 12px !important;
  line-height: 1.5 !important;
}

/* Cart row: image column same height as text column */
.wc-block-cart-items__row {
  display: flex !important;
  align-items: stretch !important;
  gap: 18px !important;
  padding: 20px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
}

/* Image wrapper grows full height of row */
.wc-block-cart-item__image {
  flex: 0 0 160px !important; /* width of the image column */
  display: flex !important;
}
.wc-block-cart-item__image img {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  align-self: stretch !important; /* key: stretch image to match row */
}

/* Details area takes remaining space */
.wc-block-cart-item {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

/* Product title */
.wc-block-cart-item__product a {
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: #eaf0f7 !important;
  text-decoration: none !important;
}
.wc-block-cart-item__product a:hover {
  text-decoration: underline !important;
}

/* Description text */
.wc-block-cart-item__summary {
  font-size: .95rem !important;
  color: #99a3ad !important;
  margin: 4px 0 10px !important;
}

/* Line total aligned right */
.wc-block-cart-item__total-price {
  margin-left: auto !important;
  font-weight: 800 !important;
  font-size: 1.05rem !important;
  align-self: center !important;
}

/* ================================
   Cart: beautiful qty & remove
   (WooCommerce Blocks)
   ================================ */

/* Wrap: keep controls in one neat row under the description */
.wc-block-cart-item__wrap-controls{
  display:flex; align-items:center; gap:16px; flex-wrap:wrap;
}

/* ---------- Quantity control ---------- */
.wc-block-components-quantity-selector{
  --h: 44px;
  --r: 14px;
  display:inline-flex !important;
  align-items:center !important;
  height: var(--h) !important;
  border-radius: var(--r) !important;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  overflow: hidden !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.06) inset !important;
}

.wc-block-components-quantity-selector input{
  width:64px !important; height:var(--h) !important;
  border:0 !important; background:transparent !important; color:#eaf0f7 !important;
  text-align:center !important; font: 800 1.05rem/1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif !important;
}

/* Buttons: soft-ghost, icon-like, with press feedback */
.wc-block-components-quantity-selector__button{
  width:48px !important; height:var(--h) !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  background: transparent !important; color:#eaf0f7 !important;
  border-left: 1px solid rgba(255,255,255,.10) !important;
  transition: background .15s ease, transform .06s ease, filter .15s ease !important;
}
.wc-block-components-quantity-selector__button:first-child{
  border-left: 0 !important; border-right: 1px solid rgba(255,255,255,.10) !important;
}
.wc-block-components-quantity-selector__button:hover{
  background: rgba(255,255,255,.06) !important; filter: brightness(1.02) !important;
}
.wc-block-components-quantity-selector__button:active{
  transform: translateY(1px) !important;
}

/* Focus ring for keyboard users */
.wc-block-components-quantity-selector:focus-within{
  outline: 2px solid rgba(46,163,255,.55) !important; outline-offset: 2px !important;
}

/* ---------- Remove item (text + trash icon) ---------- */
.wc-block-cart-item__remove-link{
  position:relative !important;
  display:inline-flex !important; align-items:center !important; gap:10px !important;
  color:#cfd6df !important; text-decoration:none !important; font-weight:700 !important;
  padding: 10px 12px !important; border-radius: 12px !important;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  transition: background .15s ease, border-color .15s ease, transform .06s ease !important;
}
.wc-block-cart-item__remove-link:hover{
  background: rgba(255,255,255,.06) !important; border-color: rgba(255,255,255,.2) !important;
}
.wc-block-cart-item__remove-link:active{ transform: translateY(1px) !important; }

/* Trash icon via mask (no extra HTML needed) */
.wc-block-cart-item__remove-link::before{
  content:""; width:18px; height:18px; background: currentColor;
  -webkit-mask: center/contain no-repeat; mask: center/contain no-repeat;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M9 3h6l1 2h4v2H3V5h4l1-2zm1 6h2v9h-2V9zm4 0h2v9h-2V9zM7 9h2v9H7V9z"/></svg>');
          mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M9 3h6l1 2h4v2H3V5h4l1-2zm1 6h2v9h-2V9zm4 0h2v9h-2V9zM7 9h2v9H7V9z"/></svg>');
}

/* Text inside remove link */
.wc-block-cart-item__remove-link span,
.wc-block-cart-item__remove-link .wc-block-cart-item__remove-link-text{
  /* handle both possible markups */
  color:inherit !important; text-decoration:none !important; font-weight:700 !important; font-size:.95rem !important;
}

/* Optional: keep qty + remove aligned on one line under the description */
.wc-block-cart-item__summary + .wc-block-cart-item__wrap-controls,
.wc-block-cart-item__summary + .wc-block-components-quantity-selector{
  margin-top: 10px !important;
}

/* === Cart quantity + remove alignment === */
.wc-block-cart-item__quantity {
  display: flex !important;
  justify-content: center !important;   /* center them horizontally */
  align-items: center !important;
  gap: 24px !important;                 /* gap between qty and remove */
  margin-top: 14px !important;
}

/* Make both controls visually consistent in height */
.wc-block-components-quantity-selector,
.wc-block-cart-item__remove-link {
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
}

/* Refined "Remove item" look */
.wc-block-cart-item__remove-link {
  padding: 0 16px !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  font-weight: 600 !important;
  color: #e06b6b !important;            /* subtle red */
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.wc-block-cart-item__remove-link:hover {
  background: rgba(255,0,0,.08) !important;
  border-color: rgba(255,0,0,.25) !important;
  color: #ff7a7a !important;
}

.wp-block-woocommerce-cart-order-summary-coupon-form-block{
  margin-bottom:15px;
}

/* =========================
   CART — Mobile responsiveness
   ========================= */

/* ≤ 680px: stack columns, shrink paddings, tame images, keep totals readable */
@media (max-width: 680px){

  /* Stack left/right columns */
  .wc-block-cart .wc-block-cart__container{
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .wc-block-cart-items{
    margin-bottom:15px !important;
  }
  /* Totals card shouldn't be sticky on phones */
  .wc-block-components-totals-wrapper{
    position: static !important;
    top: auto !important;
    padding: 12px !important;
  }

  /* Hide the cart table header row on mobile (labels are obvious) */
  .wc-block-cart-items__header{ display: none !important; }

  /* Each row: image + details; total moves to the right of details */
  .wc-block-cart-items__row{
    display: grid !important;
    grid-template-columns: 72px 1fr !important;   /* image | details */
    gap: 12px !important;
    padding: 12px !important;
  }

  /* Thumbnail size on phones */
  .wc-block-cart-item__image{ width:72px !important; height:72px !important; flex:0 0 72px !important; }
  .wc-block-cart-item__image img{ width:72px !important; height:72px !important; border-radius:10px !important; }

  /* Details block: tighter text rhythm */
  .wc-block-cart-item{ padding: 0 !important; }
  .wc-block-cart-item__product a{ font-size: 1rem !important; }
  .wc-block-cart-item__summary{ font-size: .92rem !important; margin: 4px 0 8px !important; }

  /* Line total sits at top-right of the details column */
  .wc-block-cart-item__total-price{
    grid-column: 2 !important;
    justify-self: end !important;
    align-self: start !important;
    font-weight: 900 !important;
  }

  /* Qty + Remove: centered row with breathing room */
  .wc-block-cart-item__quantity{
    justify-content: center !important;
    gap: 16px !important;
    margin-top: 12px !important;
  }

  /* Inputs: avoid iOS zoom by using 16px minimum font */
  .wc-block-components-text-input input,
  .wc-block-components-quantity-selector input{
    font-size: 16px !important;
  }

  /* Checkout button: comfy tap target */
  .wc-block-cart__submit-container a,
  .wc-block-cart__submit-container .wc-block-components-checkout-button{
    height: 48px !important;
    font-weight: 800 !important;
  }
}

/* ≤ 420px: stack the actions vertically; full-width remove button */
@media (max-width: 420px){

  /* Action row stacks */
  .wc-block-cart-item__quantity{
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  /* Qty control stays first; Remove becomes full-width button */
  .wc-block-cart-item__remove-link{
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  /* Slightly smaller qty control on tiny phones */
  .wc-block-components-quantity-selector{
    --h: 40px;
  }
  .wc-block-components-quantity-selector__button{ width: 44px !important; }
}

/* Optional: soften page edges on very small screens */
@media (max-width: 360px){
  .wc-block-components-totals-wrapper{ padding: 10px !important; }
  .wc-block-cart-items__row{ padding: 10px !important; gap: 10px !important; }
}

/* =========================
   CART — Better mobile row
   ========================= */
@media (max-width: 480px){

  /* Card padding/shape */
  :where(.woocommerce-cart) :where(.wc-block-cart-items){
    border-radius: 16px !important;
  }

  /* Row becomes: [img | title/price] then actions below */
  :where(.woocommerce-cart) :where(.wc-block-cart-items__row){
    display: grid !important;
    grid-template-columns: 84px 1fr !important;  /* image | text */
    grid-auto-rows: auto;
    gap: 12px !important;
    padding: 14px !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
  }

  /* Thumbnail a touch larger for clarity */
  :where(.woocommerce-cart) :where(.wc-block-cart-item__image){
    width: 84px !important; height: 84px !important; flex: 0 0 84px !important;
  }
  :where(.woocommerce-cart) :where(.wc-block-cart-item__image) img{
    width: 84px !important; height: 84px !important; border-radius: 12px !important;
  }

  /* Title + description rhythm */
  :where(.woocommerce-cart) :where(.wc-block-cart-item){
    grid-column: 2 !important;
    padding: 0 !important;
  }
  :where(.woocommerce-cart) :where(.wc-block-cart-item__product) a{
    font-size: 1.06rem !important; line-height: 1.25 !important;
  }
  :where(.woocommerce-cart) :where(.wc-block-cart-item__summary){
    margin: 6px 0 10px !important; font-size: .95rem !important;
  }

  /* Price sits at the top-right, compact and bold */
  :where(.woocommerce-cart) :where(.wc-block-cart-item__total-price){
    grid-column: 2 !important;
    justify-self: end !important;
    align-self: start !important;
    font-size: 1.05rem !important;
    font-weight: 900 !important;
    margin-top: 2px !important;
  }

  /* Actions: stack, full-width, centered */
  :where(.woocommerce-cart) :where(.wc-block-cart-item__quantity){
    grid-column: 1 / -1 !important;                 /* span both columns */
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 6px !important;
  }

  /* Quantity: full-width pill, bigger tap targets */
  :where(.woocommerce-cart) :where(.wc-block-components-quantity-selector){
    --h: 46px;
    width: 100% !important;
    height: var(--h) !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
  }
  :where(.woocommerce-cart) :where(.wc-block-components-quantity-selector__button){
    width: 52px !important; height: var(--h) !important;
  }
  :where(.woocommerce-cart) :where(.wc-block-components-quantity-selector) input{
    font-size: 18px !important; width: 70px !important; /* prevents iOS zoom */
  }

  /* Remove: quiet destructive, full-width */
  :where(.woocommerce-cart) :where(.wc-block-cart-item__remove-link){
    width: 100% !important;
    justify-content: center !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    background: rgba(232,76,61,.08) !important;                 /* soft red */
    border: 1px solid rgba(232,76,61,.22) !important;
    color: #ff8a80 !important;
    font-weight: 800 !important;
  }
  :where(.woocommerce-cart) :where(.wc-block-cart-item__remove-link)::before{
    margin-right: 8px !important;
  }
  :where(.woocommerce-cart) :where(.wc-block-cart-item__remove-link:hover){
    background: rgba(232,76,61,.12) !important;
    border-color: rgba(232,76,61,.32) !important;
    color: #ff9c92 !important;
  }

  /* Totals card: simpler spacing on phones */
  :where(.woocommerce-cart) :where(.wc-block-components-totals-wrapper){
    padding: 12px !important;
    border-radius: 14px !important;
  }
  :where(.woocommerce-cart) :where(.wc-block-cart__submit-container) a,
  :where(.woocommerce-cart) :where(.wc-block-cart__submit-container) .wc-block-components-checkout-button{
    height: 50px !important; border-radius: 14px !important; font-weight: 800 !important;
  }
}

/* Even smaller phones */
@media (max-width: 360px){
  :where(.woocommerce-cart) :where(.wc-block-components-quantity-selector){
    --h: 44px;
  }
  :where(.woocommerce-cart) :where(.wc-block-cart-item__image){
    width: 78px !important; height: 78px !important;
  }
}

/* =========================
   CHECKOUT UX REFINEMENTS
   ========================= */

/* --- Page container layout --- */
.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: 1.6fr 1fr; /* left form | right order summary */
  gap: 28px;
  max-width: 1160px;
  margin: 0 auto;
}
@media (max-width: 900px) {
  .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr; /* stack on mobile */
  }
}

/* --- Section headers (Contact, Billing) --- */
.woocommerce-checkout h3,
.woocommerce-checkout .wc-block-checkout__contact-fields h2,
.woocommerce-checkout .wc-block-checkout__billing-fields h2 {
  font-size: 1.2rem;
  font-weight: 800;
  margin-bottom: 6px;
}
.woocommerce-checkout .form-row label {
  font-size: .9rem;
  font-weight: 600;
  color: #cfd6df;
}

/* --- Inputs --- */
.woocommerce-checkout input,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
  width: 100%;
  background: #0f131a;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 10px;
  padding: 12px 14px;
  color: #eaf0f7;
  font-size: .95rem;
  transition: border-color .2s ease, background .2s ease;
}
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  outline: none;
  border-color: var(--accent);
  background: #121822;
}

/* --- Form grid (2 cols for name, city, etc.) --- */
.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last {
  width: 100%;
}
@media (min-width: 640px) {
  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last {
    width: calc(50% - 8px);
    display: inline-block;
  }
}

/* --- Order summary card (right) --- */
.woocommerce-checkout .wc-block-components-totals-wrapper {
  background: #0d1117;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  padding: 16px;
  position: sticky;
  top: 80px;
}
.woocommerce-checkout .wc-block-components-totals-wrapper h2 {
  font-size: 1.05rem;
  font-weight: 700;
  margin-bottom: 10px;
  color: #cfd6df;
}

/* Order item row */
.woocommerce-checkout .wc-block-components-order-summary-item {
  display: flex;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.woocommerce-checkout .wc-block-components-order-summary-item:last-child {
  border-bottom: 0;
}
.woocommerce-checkout .wc-block-components-order-summary-item img {
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 10px;
}
.woocommerce-checkout .wc-block-components-order-summary-item__name {
  font-weight: 700;
  font-size: .95rem;
}
.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
  background: var(--accent);
  color: var(--accent-ink);
  font-weight: 800;
  font-size: .75rem;
  border-radius: 999px;
  padding: 2px 8px;
  margin-right: 6px;
}

/* Totals rows */
.woocommerce-checkout .wc-block-components-totals-item {
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
  border-bottom: 1px dashed rgba(255,255,255,.08);
}
.woocommerce-checkout .wc-block-components-totals-item:last-child {
  border-bottom: 0;
}
.woocommerce-checkout .wc-block-components-totals-item__value {
  font-weight: 800;
  font-size: 1.05rem;
}

/* --- Checkout button --- */
.woocommerce-checkout .wc-block-checkout__place-order .wc-block-components-button {
  display: inline-flex;
  justify-content: center;
  width: 100%;
  height: 50px;
  border-radius: 14px;
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  color: var(--accent-ink);
  font-weight: 800;
  font-size: 1rem;
  transition: filter .15s ease, transform .06s ease;
}
.woocommerce-checkout .wc-block-checkout__place-order .wc-block-components-button:hover {
  filter: brightness(1.06);
}
.woocommerce-checkout .wc-block-checkout__place-order .wc-block-components-button:active {
  transform: translateY(1px);
}

/* --- Mobile polish --- */
@media (max-width: 640px) {
  .woocommerce-checkout form.checkout {
    gap: 18px;
  }
  .woocommerce-checkout .wc-block-components-totals-wrapper {
    position: static;
    padding: 14px;
  }
}

/* =========================
   CHECKOUT — Woo Blocks
   Clean layout + mobile
   ========================= */

/* --- Layout: form | summary --- */
.wc-block-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
  max-width: 1160px;
  margin: 0 auto;
}
.wc-block-checkout .wc-block-components-sidebar-layout__container,
.wc-block-checkout .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: 1.6fr 1fr;
  gap: 28px;
}

.wc-block-checkout__main { min-width: 0; }
.wc-block-checkout__sidebar.is-sticky { position: sticky; top: 84px; align-self: start; }

/* Mobile stack */
@media (max-width: 900px){
  .wc-block-checkout .wc-block-components-sidebar-layout__container,
  .wc-block-checkout .wc-block-components-sidebar-layout {
    grid-template-columns: 1fr !important;
    gap: 18px;
  }
  .wc-block-checkout__sidebar.is-sticky { position: static; }
}

/* --- Section headings --- */
.wc-block-components-checkout-step__title{
  font: 800 1.15rem/1.2 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
  margin: 0 0 6px;
}
.wc-block-components-checkout-step__description{ color:#cfd6df; }

/* --- Inputs / selects --- */
.wc-block-checkout input,
.wc-block-checkout select,
.wc-block-checkout textarea{
  width:100%;
  background:#0f131a;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  color:#eaf0f7;
  padding:12px 14px;
  font-size:.95rem;
  transition:border-color .2s ease, background .2s ease;
}
.wc-block-checkout input:focus,
.wc-block-checkout select:focus,
.wc-block-checkout textarea:focus{
  outline:none;
  border-color:#F4971E;
  background:#121722;
}

/* Floating labels (Blocks text-input) */
.wc-block-components-text-input label{
  color:#9fb0bf;
}

/* Two-up rows on md+ */
@media (min-width:640px){
  #billing .wc-block-components-address-form__first_name,
  #billing .wc-block-components-address-form__last_name,
  #billing .wc-block-components-address-form__city,
  #billing .wc-block-components-address-form__state{
    width:calc(50% - 8px);
    display:inline-block;
    vertical-align:top;
  }
}

/* Country select shell */
.wc-blocks-components-select__container{
  background:#0f131a;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  padding:6px 10px;
}
.wc-blocks-components-select__select{
  background:transparent;
  color:#eaf0f7;
  border:0;
  height:38px;
}

/* Address line 2 toggle */
.wc-block-components-address-form__address_2-toggle{
  display:inline-block;
  margin:4px 0 10px;
  color:#9fb0bf;
  cursor:pointer;
}

/* --- Order summary card --- */
.wc-block-checkout__sidebar .wc-block-components-totals-wrapper,
.wc-block-components-checkout-order-summary__content,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block{
  background:#0d1117;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  padding:14px;
}

.wc-block-components-checkout-order-summary__title{
  display:flex; align-items:center; justify-content:space-between;
  background:#0d1117; border:1px solid rgba(255,255,255,.10);
  border-radius:14px; padding:12px 14px; margin-bottom:10px;
}
.wc-block-components-checkout-order-summary__title-text{
  font-weight:800; margin:0; color:#cfd6df;
}

/* Items */
.wc-block-components-order-summary-item{
  display:flex; gap:12px; padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.wc-block-components-order-summary-item:last-child{ border-bottom:0; }
.wc-block-components-order-summary-item__image img{
  width:56px; height:56px; object-fit:cover; border-radius:10px;
}
.wc-block-components-order-summary-item__name,
.wc-block-components-product-name{ font-weight:700; font-size:.95rem; }
.wc-block-components-order-summary-item__total-price{ font-weight:800; }

/* Quantity badge on thumb */
.wc-block-components-order-summary-item__quantity{
  position:absolute; transform:translate(-6px,-6px);
  background:#F4971E; color:#06111d; font:800 .7rem/1 Inter,system-ui;
  padding:2px 7px; border-radius:999px;
}

/* Coupon row (no inset border box) */
.wc-block-components-totals-coupon .wc-block-components-panel__button{
  background:transparent; border:0; padding:6px 0; width:100%;
  color:#eaf0f7; font-weight:700; text-align:left; cursor:pointer;
}
.wc-block-components-totals-coupon .wc-block-components-panel__content{
  margin-top:8px; padding-top:10px;
  border-top:1px dashed rgba(255,255,255,.10);
}
.wc-block-components-text-input input[type="text"]{
  background:#0f131a; border-color:rgba(255,255,255,.12);
}

/* Totals rows */
.wc-block-components-totals-item{
  display:flex; justify-content:space-between; align-items:center;
  padding:8px 0; border-bottom:1px dashed rgba(255,255,255,.08);
}
.wc-block-components-totals-item:last-child{ border-bottom:0; }
.wc-block-components-totals-item__value{ font-weight:900; font-size:1.05rem; }

/* --- Actions row (Return | Place Order) --- */
.wc-block-checkout__actions_row{
  display:flex; gap:12px; align-items:center; justify-content:space-between;
  margin-top:12px;
  flex-wrap:wrap;
}
.wc-block-components-checkout-return-to-cart-button{
  display:inline-flex; align-items:center; gap:8px;
  color:#cfd6df; text-decoration:none; padding:10px 12px;
  border:1px solid rgba(255,255,255,.12); border-radius:10px;
}
.wc-block-components-checkout-return-to-cart-button:hover{ background:rgba(255,255,255,.06); }

.wc-block-checkout__actions .wc-block-components-button.contained{
  display:inline-flex; justify-content:center; align-items:center;
  height:50px; min-width:200px; flex:1 1 260px;
  border-radius:14px; border:0;
  background:linear-gradient(180deg,#F4971E,#1f7ed1);
  color:#06111d; font-weight:800; font-size:1rem;
  box-shadow:0 10px 26px rgba(46,163,255,.35);
  transition:filter .15s ease, transform .06s ease;
}
.wc-block-checkout__actions .wc-block-components-button.contained:hover{ filter:brightness(1.06); }
.wc-block-checkout__actions .wc-block-components-button.contained:active{ transform:translateY(1px); }

/* --- Notices (error/info) --- */
.wc-block-components-notice-banner{
  border-radius:12px; padding:10px 12px;
  background:#2a1313; border:1px solid rgba(255,120,120,.25);
}

/* --- Tiny/mobile tweaks --- */
@media (max-width:640px){
  .wc-block-components-checkout-step__title{ font-size:1.05rem; }
  .wc-block-components-order-summary-item__image img{ width:48px; height:48px; }
  .wc-block-checkout__actions_row{ gap:10px; }
  .wc-block-components-checkout-return-to-cart-button{ width:100%; justify-content:center; }
  .wc-block-checkout__actions .wc-block-components-button.contained{ width:100%; }
}

/* Optional: smooth focus state on blocks checkboxes/radios */
.wc-block-components-checkbox__input:focus-visible + .wc-block-components-checkbox__mark,
.wc-block-components-radio-control__input:focus-visible + .wc-block-components-radio-control__mark{
  outline:2px solid #F4971E; outline-offset:2px;
}

/* === Checkout Layout Fix === */

/* Target only the sidebar layout wrapper */
.wc-block-checkout .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: 2fr 1fr;   /* main form wider */
  gap: 32px;
  align-items: start;
}

/* Sidebar sticky card */
.wc-block-checkout__sidebar {
  position: sticky;
  top: 80px;
}

/* Reset broken child flex/column styles */
.wc-block-checkout__sidebar,
.wc-block-checkout__sidebar > div {
  display: block !important;
  width: 100% !important;
}

/* Mobile: stack vertically */
@media (max-width: 900px) {
  .wc-block-checkout .wc-block-components-sidebar-layout {
    grid-template-columns: 1fr !important;
    gap: 24px;
  }
  .wc-block-checkout__sidebar {
    position: static;
  }
}

/* === Dark theme checkout inputs === */
.wc-block-checkout input,
.wc-block-checkout select,
.wc-block-checkout textarea {
  background: #11161d !important;      /* dark surface */
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 10px !important;
  color: #f1f5fa !important;           /* light text */
  padding: 12px 14px !important;
  font-size: 0.95rem !important;
  transition: border-color .2s ease, background .2s ease;
}

/* Placeholder + labels */
.wc-block-checkout input::placeholder,
.wc-block-checkout select::placeholder,
.wc-block-checkout textarea::placeholder {
  color: rgba(255,255,255,0.45) !important;
}
.wc-block-checkout label {
  color: #a5b3c6 !important;
  font-size: 0.85rem;
}

/* Focus state */
.wc-block-checkout input:focus,
.wc-block-checkout select:focus,
.wc-block-checkout textarea:focus {
  border-color: #F4971E !important;   /* brand blue glow */
  background: #141a23 !important;
  outline: none !important;
}

/* Dropdown arrow */
.wc-blocks-components-select__expand {
  fill: #a5b3c6 !important;
}

/* Error / invalid input */
.wc-block-checkout input:invalid {
  border-color: #e44 !important;
}

/* === CHECKOUT: stable 2-column layout === */
.wc-block-checkout .wc-block-components-sidebar-layout{
  display:grid !important;
  grid-template-columns: minmax(640px,1fr) 420px !important; /* form | summary */
  gap:28px !important;
  align-items:start !important;
  max-width:1120px !important;
  margin:0 auto !important;
}
.wc-block-checkout .wc-block-components-main{min-width:0 !important;}
.wc-block-checkout .wc-block-components-sidebar{min-width:360px !important;}
@media (max-width: 1024px){
  .wc-block-checkout .wc-block-components-sidebar-layout{
    grid-template-columns: 1fr !important;
  }
  .wc-block-checkout .wc-block-components-sidebar{min-width:0 !important;}
}

/* === Order summary card === */
.wc-block-checkout .wc-block-components-sidebar > .wp-block-woocommerce-checkout-totals-block{
  background:#0d1117; border:1px solid rgba(255,255,255,.10);
  border-radius:12px; padding:14px;
}

/* === Inputs should never shrink === */
.wc-block-checkout input,
.wc-block-checkout select,
.wc-block-checkout textarea{ width:100% !important; }

/* Fix the Woo select wrapper width (Country/Region) */
.wc-block-checkout .wc-blocks-components-select__container{ width:100% !important; }
.wc-block-checkout .wc-blocks-components-select__select{
  width:100% !important; background:#11161d !important;
  border:1px solid rgba(255,255,255,.12) !important; border-radius:10px !important;
  color:#f1f5fa !important; padding:12px 44px 12px 14px !important;  /* leave room for arrow */
  appearance:none !important; /* suppress native chrome bevel */
}
.wc-block-checkout .wc-blocks-components-select__expand{ right:12px; fill:#a5b3c6 !important; }

/* === Form grid: clean two-column with sensible spans === */
.wc-block-checkout .wc-block-components-address-form{
  display:grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap:14px !important;
}

/* Full-width rows */
.wc-block-checkout .wc-block-components-address-form__email,
.wc-block-checkout .wc-block-components-country-input,
.wc-block-checkout .wc-block-components-address-form__address_1,
.wc-block-checkout .wc-block-components-address-form__address_2,
.wc-block-checkout .wc-block-components-address-form__phone{
  grid-column: 1 / -1 !important;
}

/* Keep these side by side */
.wc-block-checkout .wc-block-components-address-form__first_name{ grid-column:1 / 2 !important; }
.wc-block-checkout .wc-block-components-address-form__last_name{  grid-column:2 / 3 !important; }
.wc-block-checkout .wc-block-components-address-form__city{       grid-column:1 / 2 !important; }
.wc-block-checkout .wc-block-components-address-form__state{      grid-column:2 / 3 !important; }
.wc-block-checkout .wc-block-components-address-form__postcode{   grid-column:1 / 2 !important; }

/* Single-column stack on small screens */
@media (max-width:700px){
  .wc-block-checkout .wc-block-components-address-form{
    grid-template-columns: 1fr !important;
  }
  .wc-block-checkout .wc-block-components-address-form > *{
    grid-column: 1 / -1 !important;
  }
}

/* === Dark inputs (no harsh white) === */
.wc-block-checkout input,
.wc-block-checkout textarea{
  background:#11161d !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:10px !important;
  color:#f1f5fa !important;
  padding:12px 14px !important;
  font-size:.95rem !important;
}
.wc-block-checkout input:focus,
.wc-block-checkout select:focus,
.wc-block-checkout textarea:focus{
  border-color:#F4971E !important;
  background:#141a23 !important;
  outline:none !important;
}

/* Tone down the red “invalid” look until there’s an actual error class */
.wc-block-checkout input:invalid{ border-color:rgba(255,255,255,.12) !important; }
.wc-block-checkout .has-error input,
.wc-block-checkout .has-error select,
.wc-block-checkout .has-error textarea{ border-color:#e45858 !important; }

/* Labels + placeholders */
.wc-block-checkout label{ color:#a5b3c6 !important; font-size:.86rem !important; }
.wc-block-checkout ::placeholder{ color:rgba(255,255,255,.45) !important; }

/* === Right column internal blocks (summary / coupons / totals) === */
.wc-block-checkout .wc-block-components-totals-wrapper{
  background:#0d1117; border:1px solid rgba(255,255,255,.10);
  border-radius:12px; padding:12px;
}
.wc-block-checkout .wc-block-components-panel__button{
  background:transparent !important; border:0 !important; padding:0 !important; height:auto !important;
  color:#eaf0f7 !important; font-weight:700 !important;
}
.wc-block-checkout .wc-block-components-panel__content{
  border-top:1px dashed rgba(255,255,255,.10) !important; margin-top:10px !important; padding-top:10px !important;
}

/* === CHECKOUT LAYOUT: balanced, not shrunk === */
.wc-block-checkout .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: 2fr 1fr !important;   /* main form wider than summary */
  gap: 40px !important;
  align-items: start !important;
  max-width: 1280px !important;  /* more breathing room overall */
  margin: 0 auto !important;
  width: 100% !important;
}

.wc-block-checkout .wc-block-components-main {
  min-width: 0 !important;   /* let it flex naturally */
}

.wc-block-checkout .wc-block-components-sidebar {
  min-width: 340px !important; /* enough for summary without squeezing */
  max-width: 420px !important; /* but not overly wide */
  width: 100% !important;
}

@media (max-width: 1024px) {
  .wc-block-checkout .wc-block-components-sidebar-layout {
    grid-template-columns: 1fr !important;
  }
  .wc-block-checkout .wc-block-components-sidebar {
    max-width: 100% !important;
    min-width: 100% !important;
  }
}

/* ===========================
   CHECKOUT — balanced layout
   =========================== */

/* 1) Overall two-column layout: big form + stable summary card */
.wc-block-checkout .wc-block-components-sidebar-layout{
  display:grid !important;
  grid-template-columns: minmax(720px, 1fr) minmax(420px, 520px) !important;
  gap:44px !important;
  align-items:start !important;
  max-width:1320px !important;
  margin:0 auto !important;
  padding:0 20px !important;
}
.wc-block-checkout .wc-block-components-main{min-width:0 !important;}
.wc-block-checkout .wc-block-components-sidebar{width:100% !important;}

/* 2) Summary card polish */
.wc-block-checkout .wc-block-components-totals-wrapper{
  background:#0f131a !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:14px !important;
  padding:14px !important;
}
.wc-block-checkout .wc-block-components-checkout-order-summary__title{
  background:transparent !important;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px; padding:12px 14px; color:#cfd6df;
}

/* 3) Form grid: clean two columns with sensible spans */
.wc-block-checkout .wc-block-components-address-form{
  display:grid !important;
  grid-template-columns: repeat(2, minmax(300px, 1fr)) !important;
  gap:16px !important;
}

/* Force key rows to span full width */
.wc-block-components-address-form__email,
.wc-block-components-address-form__country,
.wc-block-components-address-form__address_1,
.wc-block-components-address-form__address_2,
.wc-block-components-address-form__city + .wc-block-components-address-form__state + .wc-block-components-address-form__postcode, /* safety */
.wc-block-components-address-form__phone{
  grid-column:1 / -1 !important;
}

/* 4) Inputs/labels: dark, consistent, full width */
.wc-block-components-text-input,
.wc-blocks-components-select__container{
  width:100% !important;
}

.wc-block-components-text-input input{
  width:100% !important;
  height:48px !important;
  border-radius:12px !important;
  background:#0f131a !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:#eaf0f7 !important;
  padding:12px 14px !important;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.wc-block-components-text-input input:focus{
  outline:none !important;
  border-color:#F4971E !important;
  box-shadow:0 0 0 3px rgba(46,163,255,.18) !important;
}

/* Floating labels stay legible on dark fields */
.wc-block-components-text-input label{
  background:transparent !important;
  color:#9aa6b2 !important;
}

/* 5) Country select (dark) */
.wc-blocks-components-select__select{
  width:100% !important;
  height:48px !important;
  border-radius:12px !important;
  background:#0f131a !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:#eaf0f7 !important;
  padding:0 42px 0 14px !important;
  appearance:none !important;
}
.wc-blocks-components-select__expand{fill:#9aa6b2 !important}

/* 6) Field rows that should be halves (side-by-side) */
.wc-block-components-address-form__first_name,
.wc-block-components-address-form__last_name,
.wc-block-components-address-form__city,
.wc-block-components-address-form__state,
.wc-block-components-address-form__postcode{
  grid-column:auto !important; /* each occupies one of the two columns */
}

/* 7) Return/Place order buttons — keep strong CTA */
.wc-block-checkout__actions_row .wp-element-button,
.wc-block-checkout__actions_row .wc-block-components-button{
  height:48px; border-radius:12px; font-weight:800;
}
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button{
  background:#F4971E !important; color:#06111d !important; border:0 !important;
  box-shadow:0 10px 26px rgba(46,163,255,.32);
}

/* 8) Mobile: stack, full-width fields (no cramp) */
@media (max-width: 1100px){
  .wc-block-checkout .wc-block-components-sidebar-layout{
    grid-template-columns: 1fr !important;
    gap:28px !important;
  }
  .wc-block-checkout .wc-block-components-sidebar{max-width:100% !important}
}

@media (max-width: 720px){
  .wc-block-checkout .wc-block-components-address-form{
    grid-template-columns: 1fr !important;
  }
  .wc-block-components-address-form__first_name,
  .wc-block-components-address-form__last_name,
  .wc-block-components-address-form__city,
  .wc-block-components-address-form__state,
  .wc-block-components-address-form__postcode{
    grid-column:1 / -1 !important;
  }
  .wc-block-components-text-input input,
  .wc-blocks-components-select__select{height:46px !important}
}

/* ===== Checkout — Order Summary: ultra–minimal ===== */

/* ONE outer card (soft) */
:where(.wc-block-checkout) :where(.wc-block-checkout__sidebar){
  background: #0f131a !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.35) !important;
  padding: 18px 18px 14px !important;
}

/* Title row */
:where(.wc-block-checkout) :where(.wc-block-components-checkout-order-summary__title){
  background: transparent !important;
  border: 0 !important;
  padding: 0 0 10px !important;
  margin: 0 0 6px !important;
}

/* Kill ALL inner borders/boxes/shadows */
:where(.wc-block-checkout) :where(
  .wc-block-components-totals-wrapper,
  .wc-block-components-order-summary,
  .wc-block-components-panel,
  .wc-block-components-order-summary-item,
  .wc-block-components-totals-item,
  .wc-block-components-totals-footer-item
){
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Stack content with clean spacing */
:where(.wc-block-checkout) :where(.wc-block-components-checkout-order-summary__content){
  display: grid !important;
  gap: 14px !important;              /* section spacing */
}

/* Items list: spacing only, hairline dividers made with pseudo, not borders */
:where(.wc-block-checkout) :where(.wc-block-components-order-summary__content){
  display: grid !important;
  gap: 12px !important;
}
:where(.wc-block-checkout) :where(.wc-block-components-order-summary-item){
  padding: 8px 0 !important;
  position: relative !important;
}
:where(.wc-block-checkout) :where(.wc-block-components-order-summary-item:not(:last-child))::after{
  content:""; position:absolute; left:0; right:0; bottom:-6px;
  height:1px; background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);
}

/* Subtotal / misc rows: same idea */
:where(.wc-block-checkout) :where(.wp-block-woocommerce-checkout-order-summary-totals-block){
  display:grid !important; gap:10px !important;
}
:where(.wc-block-checkout) :where(.wc-block-components-totals-item){
  display:flex !important; justify-content:space-between !important; align-items:center !important;
  padding: 4px 0 !important;
}
:where(.wc-block-checkout) :where(.wc-block-components-totals-item__label){ color:#c8d0da !important; }

/* Coupon block: text row only */
:where(.wc-block-checkout) :where(.wc-block-components-totals-coupon){
  padding:6px 0 2px !important;
}
:where(.wc-block-checkout) :where(.wc-block-components-panel__button){
  background:transparent !important; border:0 !important; padding:0 !important;
  color:#9aa6b2 !important; font-weight:600 !important;
}

/* FINAL total: slight emphasis + single divider above (pseudo) */
:where(.wc-block-checkout) :where(.wc-block-components-totals-footer-item){
  padding-top:12px !important; margin-top:4px !important; position:relative !important;
  font-weight:800 !important; font-size:1.06rem !important;
}
:where(.wc-block-checkout) :where(.wc-block-components-totals-footer-item)::before{
  content:""; position:absolute; left:0; right:0; top:0; height:2px;
  background: rgba(255,255,255,.12);
}

/* Tiny polish for the mini thumbnail + name spacing */
:where(.wc-block-checkout) :where(.wc-block-components-order-summary-item__image){
  margin-right:10px !important;
}
:where(.wc-block-checkout) :where(.wc-block-components-order-summary-item__description h3){
  margin:0 0 2px !important; font-weight:700 !important;
}

/* === Order Summary — clean single card === */

/* Outer card */
.wc-block-checkout__sidebar {
  background: #11151d !important;
  border: none !important;
  border-radius: 14px !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.35) !important;
  padding: 20px !important;
}

/* Remove ALL nested borders and backgrounds */
.wc-block-components-order-summary,
.wc-block-components-totals-wrapper,
.wc-block-components-panel,
.wc-block-components-order-summary-item,
.wc-block-components-totals-item,
.wc-block-components-totals-footer-item {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Title */
.wc-block-components-checkout-order-summary__title {
  margin: 0 0 15px !important;
  padding: 0 !important;
  border: none !important;
  font-size: 1.1rem;
  font-weight: 600;
  color: #fff;
}

/* Items spacing */
.wc-block-components-order-summary__content {
  display: grid !important;
  gap: 14px !important;
}

/* Divider between items (soft, minimal) */
.wc-block-components-order-summary-item:not(:last-child)::after {
  content:""; display:block;
  height: 1px;
  margin-top: 12px;
  background: rgba(255,255,255,0.08);
}

/* Coupon + Subtotal + Total aligned cleanly */
.wc-block-components-totals-item {
  display: flex !important;
  justify-content: space-between !important;
  padding: 6px 0 !important;
  font-size: 0.95rem;
  color: #cfd6df;
}

.wc-block-components-totals-footer-item {
  margin-top: 10px;
  padding-top: 12px;
  font-size: 1.1rem;
  font-weight: 700;
  border-top: 1px solid rgba(255,255,255,0.12) !important;
}


/* === ORDER SUMMARY — single, clean card ======================= */
/* Outer card */
.wp-block-woocommerce-checkout-order-summary-block{
  background:#10141c !important;
  border-radius:14px !important;
  box-shadow:0 8px 28px rgba(0,0,0,.35) !important;
  padding:18px 18px 14px !important;
  border:none !important;
}

/* Kill ALL inner borders/backgrounds Woo adds */
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-order-summary,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-order-summary__content,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-order-summary-item,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-totals-item,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-panel {
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

/* Title row */
.wc-block-components-checkout-order-summary__title{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  margin:0 0 14px !important;
  padding:0 !important;
  border:0 !important;
}
.wc-block-components-checkout-order-summary__title-text{
  margin:0 !important;
  font:700 1.05rem/1.2 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  color:#eaf0f7;
}
.wc-block-components-checkout-order-summary__title-price{
  font-weight:800; color:#fff;
}

/* Items */
.wc-block-components-order-summary__content{ display:grid !important; gap:12px !important; }
.wc-block-components-order-summary-item{ padding:4px 0 !important; }

/* Soft divider between items only */
.wc-block-components-order-summary-item:not(:last-child)::after{
  content:""; display:block; height:1px; margin-top:12px;
  background:rgba(255,255,255,.08);
}

/* Product name + meta */
.wc-block-components-product-name{ margin:0 0 4px !important; color:#eaf0f7 !important; font-weight:700 !important; }
.wc-block-components-product-metadata__description p{ margin:4px 0 0 !important; color:#9fb0c1 !important; }

/* Coupon row → make it a clean, flat row link */
.wc-block-components-panel__button{
  display:flex; align-items:center; gap:10px;
  padding:10px 0 !important;
  color:#cfd6df !important; font-weight:600; background:transparent !important; border:0 !important;
}
.wc-block-components-panel__button:hover{ color:#fff !important; }

/* Subtotal + misc totals */
.wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-item{
  display:flex !important; justify-content:space-between !important; align-items:center !important;
  padding:8px 0 !important; color:#cfd6df !important;
}

/* TOTAL row — single divider above, bold */
.wc-block-components-totals-footer-item{
  margin-top:6px !important; padding-top:12px !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  font:800 1.05rem/1.2 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif; color:#eaf0f7;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font:800 1.05rem/1.2 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif; color:#fff;
}

/* Thumbnails in summary — crisp */
.wc-block-components-order-summary-item__image img{
  border-radius:10px; outline:1px solid rgba(255,255,255,.08);
  background:#0f131a;
}

/* Small screens: keep spacing airy, no extra borders introduced */
@media (max-width: 700px){
  .wp-block-woocommerce-checkout-order-summary-block{
    padding:16px 14px 12px !important;
    border-radius:12px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.32) !important;
  }
  .wc-block-components-checkout-order-summary__title-text{ font-size:1rem; }
}

/* === ORDER SUMMARY — minimal, informative ===================== */
/* One outer border, flat background */
.wp-block-woocommerce-checkout-order-summary-block{
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 10px !important;
  padding: 12px !important;
}

/* Remove *all* nested borders/backgrounds/shadows */
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-order-summary,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-order-summary__content,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-order-summary-item,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-totals-item,
.wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-panel {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Header row: title left, total right */
.wc-block-components-checkout-order-summary__title{
  display:flex !important; align-items:center !important; justify-content:space-between !important;
  margin:0 0 10px !important; padding:0 !important;
}
.wc-block-components-checkout-order-summary__title-text{ margin:0 !important; font-weight:700 !important; }
.wc-block-components-checkout-order-summary__title-price{ font-weight:800 !important; }

/* Items list — tight grid, no boxes */
.wc-block-components-order-summary__content{ display:grid !important; gap:8px !important; }
.wc-block-components-order-summary-item{ padding:0 !important; }

/* Item layout: thumbnail, info, line total (right) */
.wc-block-components-order-summary-item{
  display:grid !important;
  grid-template-columns: 48px 1fr auto !important; /* thumb | info | price */
  gap:10px !important; align-items:start !important;
}
.wc-block-components-order-summary-item__image img{
  width:48px !important; height:48px !important; border-radius:8px !important; object-fit:cover !important;
}
.wc-block-components-order-summary-item__description h3{
  margin:0 0 2px !important; font-weight:700 !important;
}
.wc-block-components-product-metadata__description p{
  margin:0 !important; opacity:.75 !important; font-size:.92rem !important;
}
.wc-block-components-order-summary-item__total-price{
  margin-left:12px !important; white-space:nowrap !important; font-weight:700 !important;
}

/* Section dividers (subtle, single line) */
.wc-block-components-checkout-order-summary__content + .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-order-summary-totals-block{
  border-top: 1px solid rgba(255,255,255,.12) !important;
  margin-top: 10px !important; padding-top: 10px !important;
}

/* Coupon row = plain text link */
.wc-block-components-panel__button{
  padding:6px 0 !important; background:transparent !important; border:0 !important;
  color:inherit !important; font-weight:600 !important;
}

/* Subtotal & misc rows: simple two-column */
.wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-item{
  display:flex !important; justify-content:space-between !important; padding:6px 0 !important;
}

/* Final total: one divider above, strong weight, no extra box */
.wc-block-components-totals-footer-item{
  border-top:1px solid rgba(255,255,255,.12) !important;
  margin-top:8px !important; padding-top:10px !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-weight:800 !important;
}

/* Keep full width on the sidebar; no shrinking */
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block{
  width:100% !important;
}

/* === Order Summary (minimal style) === */
.wp-block-woocommerce-checkout-order-summary-block {
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  padding: 16px;
  background: transparent;
}

/* Title row */
.wc-block-components-checkout-order-summary__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 12px;
  font-weight: 600;
}

/* Remove all inner borders/boxes */
.wp-block-woocommerce-checkout-order-summary-block 
  .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-order-summary-block 
  .wc-block-components-order-summary,
.wp-block-woocommerce-checkout-order-summary-block 
  .wc-block-components-order-summary__content,
.wp-block-woocommerce-checkout-order-summary-block 
  .wc-block-components-totals-item,
.wp-block-woocommerce-checkout-order-summary-block 
  .wc-block-components-panel {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Each product line */
.wc-block-components-order-summary-item {
  display: grid;
  grid-template-columns: 48px 1fr auto;
  gap: 12px;
  align-items: start;
  margin-bottom: 12px;
}

.wc-block-components-order-summary-item__image img {
  width: 48px;
  height: 48px;
  border-radius: 6px;
  object-fit: cover;
}

.wc-block-components-order-summary-item__description h3 {
  margin: 0 0 4px;
  font-weight: 600;
}

.wc-block-components-product-metadata__description p {
  margin: 0;
  font-size: 0.9rem;
  opacity: 0.75;
}

.wc-block-components-order-summary-item__total-price {
  font-weight: 600;
  white-space: nowrap;
}

/* Section divider (subtotal / total separation) */
.wp-block-woocommerce-checkout-order-summary-totals-block {
  border-top: 1px solid rgba(255,255,255,0.15);
  margin-top: 12px;
  padding-top: 12px;
}

/* Rows inside totals */
.wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-item {
  display: flex;
  justify-content: space-between;
  padding: 6px 0;
}

/* Final total highlighted */
.wc-block-components-totals-footer-item {
  border-top: 1px solid rgba(255,255,255,0.2);
  margin-top: 8px;
  padding-top: 10px;
  font-weight: 700;
}

/* Remove white background around the country select */
.wc-blocks-components-select__container {
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 6px;
  padding: 0;
  margin: 0;
}

/* Style the actual select field */
.wc-blocks-components-select__select {
  background: #111 !important;   /* same as other inputs */
  color: #fff !important;
  border: none !important;
  padding: 10px 12px;
  width: 100%;
  border-radius: 6px;
  appearance: none;
}

/* Arrow icon alignment */
.wc-blocks-components-select__expand {
  fill: rgba(255,255,255,0.6);
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  pointer-events: none;
}

.wc-blocks-components-select .wc-blocks-components-select__container{
  border:none;
}

.wc-block-components-totals-item__label{
  margin-top:15px;
}

/* ===========================
   WooCommerce – My Account
   =========================== */
/* ====== Align "No Orders" box with My Account styles ====== */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
  background: var(--card-soft) !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 16px 18px !important;
  color: var(--muted) !important;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.woocommerce-orders-table__cell-order-number a{
    color:white !important;
    text-decoration:none !important;
}
/* Style the WooCommerce "View" button on My Account > Orders */
.woocommerce-orders-table__cell-order-actions .button.view {
    background: linear-gradient(180deg, #F4971E, #1f7ed1);
    color: var(--accent-ink);
    box-shadow: 0 8px 24px rgba(46, 163, 255, .35);
    border: none;
    border-radius: 8px;
    padding: 10px 20px;
    font-weight: 600;
    text-transform: uppercase;
    transition: all 0.2s ease-in-out;
    height:35px;
}

.card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%; /* ensures all cards use the same full height inside the grid */
}

/* Make the content area flexible */
.card__body {
    flex-grow: 1;
}

/* Keep actions at the bottom */
.card__actions {
    margin-top: auto; /* pushes actions down */
    padding: 12px 14px 14px;
    display: flex;
    gap: 10px;
    align-items: center;
}

/* Hover effect for a smooth, interactive feel */
.woocommerce-orders-table__cell-order-actions .button.view:hover {
    filter: brightness(1.1);
    transform: translateY(-1px);
    box-shadow: 0 10px 28px rgba(46, 163, 255, .45);
    text-decoration: none;
}
/* Align text neatly */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before {
  display: none !important; /* hide WooCommerce’s default icon bubble */
}

/* Adjust "Browse products" button to match your style */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 0 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  color: #06111d !important;
  font-weight: 700;
  text-decoration: none;
  transition: filter .2s ease;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button:hover {
  filter: brightness(1.06);
}

/* Page container */
.woocommerce-account .woocommerce {
  --ink: #eaf0f7;
  --muted: #99a3ad;
  --line: rgba(255,255,255,.10);
  --card: #0d1117;
  --card-soft: #0f131a;
  --accent: #F4971E;
}

/* Two-column layout */
.woocommerce-account .woocommerce {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 24px;
  align-items: start;
}
@media (max-width: 900px){
  .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
}

/* Left nav */
.woocommerce-MyAccount-navigation {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
}
.woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}
.woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 10px 12px;
  border-radius: 10px;
  color: var(--ink);
  text-decoration: none;
  opacity: .9;
}
.woocommerce-MyAccount-navigation li a:hover {
  background: rgba(255,255,255,.06);
  opacity: 1;
}
.woocommerce-MyAccount-navigation .is-active a,
.woocommerce-MyAccount-navigation li.is-active a {
  background: rgba(46,163,255,.14);
  outline: 1px solid rgba(46,163,255,.35);
  opacity: 1;
}

/* Right content area */
.woocommerce-MyAccount-content {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 16px;
}

/* Headings + text */
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
  margin: 6px 0 12px;
}
.woocommerce-MyAccount-content p,
.woocommerce-MyAccount-content li,
.woocommerce-MyAccount-content dd,
.woocommerce-MyAccount-content dt {
  color: var(--muted);
}

/* Dashboard links inline list (first paragraph with links) */
.woocommerce-MyAccount-content p a {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Cards for addresses and small panels */
.woocommerce-Addresses .woocommerce-Address,
.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content .woocommerce-message {
  background: var(--card-soft);
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 12px;
}

/* Orders table */
.woocommerce-account table.shop_table,
.woocommerce-account table.my_account_orders {
  width: 100%;
  border-collapse: collapse;
  background: var(--card-soft);
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: hidden;
}
.woocommerce-account table.shop_table th,
.woocommerce-account table.shop_table td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  color: var(--ink);
}
.woocommerce-account table.shop_table th {
  color: var(--muted);
  text-transform: uppercase;
  font-size: .8rem;
  letter-spacing: .03em;
}
.woocommerce-account table.shop_table tr:last-child td {
  border-bottom: 0;
}

/* Buttons (View, Pay, Edit, Save) */
.woocommerce-account .button,
.woocommerce-account .woocommerce-button,
.woocommerce-account .woocommerce-Button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 40px;
  padding: 0 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  color: #06111d !important;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}
.woocommerce-account .button:hover,
.woocommerce-account .woocommerce-button:hover,
.woocommerce-account .woocommerce-Button:hover {
  filter: brightness(1.06);
}

/* Secondary / ghost actions */
.woocommerce-account .button.alt,
.woocommerce-account .woocommerce-Button--alt,
.woocommerce-account .edit {
  background: transparent;
  color: var(--ink) !important;
  border-color: var(--line);
}
.woocommerce-account .button.alt:hover,
.woocommerce-account .woocommerce-Button--alt:hover,
.woocommerce-account .edit:hover {
  background: rgba(255,255,255,.06);
}

/* Forms (addresses, account details) */
.woocommerce-account .form-row input.input-text,
.woocommerce-account .form-row textarea,
.woocommerce-account .form-row select {
  width: 100%;
  background: #111;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 10px 12px;
}
.woocommerce-account .form-row input:focus,
.woocommerce-account .form-row textarea:focus,
.woocommerce-account .form-row select:focus {
  outline: 2px solid rgba(46,163,255,.5);
  outline-offset: 2px;
}

/* Notices */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
  color: var(--ink);
}
.woocommerce-account .woocommerce-error {
  border-color: rgba(255,100,100,.35);
}

/* Paginate / small meta */
.woocommerce-account .woocommerce-pagination,
.woocommerce-account .woocommerce-MyAccount-content small {
  color: var(--muted);
}

/* ==== My Account: fix ordering + layout ==== */

/* Kill Woo's legacy floats so grid can take over */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}

/* Center the account area and set a proper two-column grid */
.woocommerce-account .woocommerce {
  max-width: 1180px;              /* center width */
  margin: 0 auto;                 /* center on page */
  display: grid !important;
  grid-template-columns: 260px minmax(0,1fr);  /* nav | content */
  gap: 24px;
  align-items: start;
}

/* Ensure the nav is actually on the left and content on the right */
.woocommerce-account .woocommerce-MyAccount-navigation { order: 1; }
.woocommerce-account .woocommerce-MyAccount-content    { order: 2; }

/* Keep the nav visible while scrolling (optional but nice) */
@media (min-width: 901px){
  .woocommerce-account .woocommerce-MyAccount-navigation {
    position: sticky;
    top: 84px;    /* adjust if your header height differs */
  }
}

/* Mobile: single column, content first for better UX */
@media (max-width: 900px){
  .woocommerce-account .woocommerce {
    grid-template-columns: 1fr;
  }
  .woocommerce-account .woocommerce-MyAccount-content    { order: 1; }
  .woocommerce-account .woocommerce-MyAccount-navigation  { order: 2; }
}

/* ===== Sign in (Woo) – clean dark style ===== */
:root{
  --ink: #eaf0f7;
  --muted:#9aa7b2;
  --line: rgba(255,255,255,.12);
  --card:#0f131a;
  --accent:#F4971E;
  --accent-ink:#06111d;
}

.container .woocommerce > h2{
  margin: 18px 0 14px;
  font: 800 1.6rem/1.2 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  color: var(--ink);
}

/* Center / constrain the auth card */
.woocommerce-form.login{
  max-width: 560px;
  margin: 0 auto;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 18px 18px 6px;
}

/* Form rows */
.woocommerce-form .form-row{
  margin: 0 0 14px;
}
.woocommerce-form label{
  display:block;
  margin: 2px 0 8px;
  font: 600 .95rem/1.1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  color: var(--muted);
}
.woocommerce-form .required{ color:#ff6b6b; margin-left:2px; }

/* Inputs */
.woocommerce-form .input-text,
.woocommerce-form .password-input input{
  width:100%;
  height:46px;
  border-radius:12px;
  background:#0b0f15;
  border:1px solid var(--line);
  color:var(--ink);
  padding:10px 14px;
  outline:none;
  transition:border-color .15s ease, background .15s ease;
}
.woocommerce-form .input-text:focus,
.woocommerce-form .password-input input:focus{
  border-color: rgba(46,163,255,.55);
  background:#0c121a;
}

/* Password toggle (eye) */
.woocommerce-form .password-input{
  position:relative;
  display:block;
}
.woocommerce-form .show-password-input{
  position:absolute;
  right:10px; top:50%; transform:translateY(-50%);
  width:36px; height:36px; border:0; background:transparent; cursor:pointer;
}
.woocommerce-form .show-password-input::before{
  content:"";
  display:block; width:20px; height:20px; margin:auto;
  background: #cfd6df;
  -webkit-mask: center/contain no-repeat;
          mask: center/contain no-repeat;
  -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M12 5c5.05 0 8.86 3.29 10 7-1.14 3.71-4.95 7-10 7S3.14 15.71 2 12C3.14 8.29 6.95 5 12 5zm0 2C8.42 7 5.52 9.14 4.46 12 5.52 14.86 8.42 17 12 17s6.48-2.14 7.54-5C18.48 9.14 15.58 7 12 7zm0 2.5A2.5 2.5 0 1 1 9.5 12 2.5 2.5 0 0 1 12 9.5z"/></svg>');
}
.woocommerce-form .show-password-input[aria-label*="Hide"]::before{
  -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M2.1 3.51 3.5 2.1l18.4 18.4-1.41 1.41-2.88-2.88A11.6 11.6 0 0 1 12 19c-5.05 0-8.86-3.29-10-7a11 11 0 0 1 4.06-5.29L2.1 3.51zM7.2 8.6A9.27 9.27 0 0 0 4.46 12C5.52 14.86 8.42 17 12 17c1.42 0 2.75-.3 3.93-.86l-2.2-2.2c-.5.36-1.12.56-1.78.56a2.5 2.5 0 0 1-2.5-2.5c0-.66.2-1.28.56-1.78L7.2 8.6zM12 7c3.58 0 6.48 2.14 7.54 5-.37 1.2-1.05 2.27-1.96 3.13l-1.44-1.44c.54-.5.98-1.12 1.27-1.82C16.63 9.38 14.46 8 12 8c-.7 0-1.33.12-1.93.34L8.74 6.99C9.6 6.38 10.74 7 12 7z"/></svg>');
}

/* Remember + submit row */
.woocommerce-form .form-row:last-of-type{
  display:flex; align-items:center; justify-content:space-between;
  gap:12px; margin-top:6px;
}
.woocommerce-form__label-for-checkbox{
  display:inline-flex; align-items:center; gap:8px; color:var(--muted);
}
.woocommerce-form__input-checkbox{
  width:18px; height:18px; accent-color: var(--accent);
}

/* Primary button */
.woocommerce-form-login__submit,
.woocommerce .button{
  border:0;
  border-radius:12px;
  height:44px; padding:0 18px;
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  color: var(--accent-ink);
  font: 800 .95rem/1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  cursor:pointer;
  transition: filter .14s ease, transform .06s ease;
}
.woocommerce-form-login__submit:hover{ filter:brightness(1.06); }
.woocommerce-form-login__submit:active{ transform:translateY(1px); }


/* Notices (errors/info) */
.woocommerce .woocommerce-notices-wrapper .woocommerce-error,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info{
  max-width:560px; margin: 10px auto 14px;
  background: rgba(255,255,255,.04); border:1px solid var(--line);
  color: var(--ink); border-radius:12px; padding:10px 12px;
}

/* Mobile tweaks */
@media (max-width:560px){
  .woocommerce-form.login{ padding:14px 14px 6px; }
  .woocommerce-form .form-row:last-of-type{ flex-wrap:wrap; }
}

/* ================================
   My Account – Login + Register FIX
   ================================= */

/* 1) Make the container a real grid and center it */
#customer_login.u-columns.col2-set{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(360px, 1fr));
  gap: 28px;
  max-width: 1120px;
  margin: 24px auto 60px;
  align-items: start;
}

/* 2) Neutralize Woo floats/widths that cause the skinny column */
#customer_login .u-column1,
#customer_login .u-column2{
  width: auto !important;
  float: none !important;
  margin: 0 !important;
}

/* 3) Simple card look (no heavy borders) */
#customer_login .u-column1 form,
#customer_login .u-column2 form{
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  padding: 18px;
  box-shadow: none;
}

/* Remove any inner fieldset/outline “stripe” */
#customer_login form fieldset{
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 4) Headings inside forms */
#customer_login .u-column1 h2,
#customer_login .u-column2 h2{
  margin: 0 0 12px;
  font-size: 1.25rem;
  font-weight: 800;
}

/* 5) Make every row full width */
#customer_login .woocommerce-form .form-row,
#customer_login .woocommerce-form .woocommerce-form-row,
#customer_login .woocommerce-form .form-row-wide{
  width: 100% !important;
  clear: both !important;
  margin: 10px 0 !important;
}

/* 6) Labels */
#customer_login label{
  display: block;
  margin: 0 0 6px;
  font-weight: 600;
}

/* 7) Inputs – full width, no shrink */
#customer_login input.input-text,
#customer_login .password-input input,
#customer_login select,
#customer_login textarea{
  width: 100% !important;
  box-sizing: border-box;
  height: 48px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.12);
  background: #0f131a;
  color: #eaf0f7;
  outline: none;
}
#customer_login input.input-text:focus,
#customer_login .password-input input:focus,
#customer_login select:focus,
#customer_login textarea:focus{
  border-color: rgba(46,163,255,.45);
  box-shadow: 0 0 0 2px rgba(46,163,255,.18);
}

/* 8) Password toggle positioning */
#customer_login .password-input{
  position: relative;
  display: block;
}
#customer_login .show-password-input{
  position: absolute !important;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  opacity: .85;
}

/* 9) Remember me + button on one line (wrap on mobile) */
#customer_login .form-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
#customer_login .woocommerce-form-login__rememberme{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}
#customer_login input[type="checkbox"]{
  width: 18px; height: 18px; border-radius: 4px;
}

/* 10) Primary button (clean, bold) */
#customer_login .woocommerce-button,
#customer_login .button{
  height: 46px;
  padding: 0 16px;
  border-radius: 12px;
  border: 0;
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  color: #06111d;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(46,163,255,.28);
}
#customer_login .woocommerce-button:hover,
#customer_login .button:hover{
  filter: brightness(1.06);
}

/* 11) Lost password link tidy */
#customer_login .lost_password{
  margin: 6px 0 0;
  width: 100%;
  text-align: right;
}

/* 12) Mobile: stack columns */
@media (max-width: 760px){
  #customer_login.u-columns.col2-set{
    grid-template-columns: 1fr !important;
    gap: 18px;
    padding: 0 10px;
  }
  #customer_login .form-row{
    justify-content: flex-start;
  }
  #customer_login .lost_password{ text-align: left; }
}

/* ================ My Account: Login + Register layout ================ */
/* Make a real two-column grid and center it */
.woocommerce-account #customer_login.u-columns.col2-set{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(440px, 1fr));
  gap: 32px;
  max-width: 1120px;
  margin: 40px auto;
  align-items: start;
  justify-content: center;
}

/* Kill Woo floats / rogue widths / margins that create offsets */
.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2{
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block;
}

/* Unified card style for both forms (simple, no heavy borders) */
.woocommerce-account #customer_login .u-column1 form,
.woocommerce-account #customer_login .u-column2 form{
  max-width: 560px;        /* same visual width */
  width: 100%;
  margin: 0 auto;          /* center inside each grid column */
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  padding: 18px;
  box-shadow: none;
}

/* Headings */
.woocommerce-account #customer_login .u-column1 h2,
.woocommerce-account #customer_login .u-column2 h2{
  margin: 0 0 12px;
  font-size: 1.25rem;
  font-weight: 800;
}

/* Full-width rows/inputs; no shrinking */
.woocommerce-account #customer_login .woocommerce-form .form-row,
.woocommerce-account #customer_login .woocommerce-form .woocommerce-form-row,
.woocommerce-account #customer_login .woocommerce-form .form-row-wide{
  width: 100% !important;
  margin: 10px 0 !important;
  clear: both !important;
}
.woocommerce-account #customer_login input.input-text,
.woocommerce-account #customer_login .password-input input{
  width: 100% !important;
  height: 48px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.12);
  background: #0f131a;
  color: #eaf0f7;
}

/* Inline remember + button; tidy lost-password */
.woocommerce-account #customer_login .form-row{
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
}
.woocommerce-account #customer_login .lost_password{ margin-left: auto; }

/* Mobile: stack into one column */
@media (max-width: 900px){
  .woocommerce-account #customer_login.u-columns.col2-set{
    grid-template-columns: 1fr !important;
    gap: 18px;
    padding: 0 10px;
  }
  .woocommerce-account #customer_login .lost_password{ margin-left: 0; }
}

/* ===== My Account: Login + Register (fix layout + keep clean style) ===== */

/* Force a two-column grid for the login/register wrapper */
.woocommerce-account .woocommerce #customer_login.u-columns.col2-set{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(440px, 1fr)) !important;
  gap:28px !important;
  max-width:1120px !important;
  margin:40px auto !important;
  align-items:start !important;
  justify-content:center !important;
}

/* Kill Woo floats/widths that cause the offset + shrink */
.woocommerce-account .woocommerce #customer_login .u-column1,
.woocommerce-account .woocommerce #customer_login .u-column2{
  float:none !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
}

/* Headings tidy */
.woocommerce-account .woocommerce #customer_login .u-column1 h2,
.woocommerce-account .woocommerce #customer_login .u-column2 h2{
  margin:0 0 12px !important;
  font-size:1.25rem; font-weight:800;
}

/* Card style for both forms – simple, no heavy borders */
.woocommerce-account .woocommerce #customer_login .u-column1 form,
.woocommerce-account .woocommerce #customer_login .u-column2 form{
  width:100% !important;         /* full width of the grid column */
  max-width:none !important;     /* prevent narrow card */
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:18px;
  box-shadow:none;
}

/* Full-width rows & inputs */
.woocommerce-account .woocommerce #customer_login .woocommerce-form .form-row,
.woocommerce-account .woocommerce #customer_login .woocommerce-form .woocommerce-form-row{
  width:100% !important;
  margin:10px 0 !important;
  clear:both !important;
}
.woocommerce-account .woocommerce #customer_login input.input-text,
.woocommerce-account .woocommerce #customer_login .password-input input{
  width:100% !important;
  height:48px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:#0f131a; color:#eaf0f7;
}

/* Inline remember + button; lost password to the right */
.woocommerce-account .woocommerce #customer_login .form-row{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
}
.woocommerce-account .woocommerce #customer_login .lost_password{ margin-left:auto; }

/* Mobile: stack into a single column */
@media (max-width: 900px){
  .woocommerce-account .woocommerce #customer_login.u-columns.col2-set{
    grid-template-columns:1fr !important;
    gap:18px !important;
    padding:0 10px;
  }
  .woocommerce-account .woocommerce #customer_login .lost_password{ margin-left:0; }
}

/* =========================
   My Account → Login + Register
   Fix layout (no shrink), keep clean styling
   ========================= */

/* 1) Force a 2-column grid no matter what Woo/theme outputs */
.woocommerce-account .woocommerce .u-columns.col2-set,
.woocommerce-account .woocommerce #customer_login.u-columns.col2-set {
  display: grid !important;
  grid-template-columns: minmax(420px, 520px) minmax(420px, 520px) !important;
  gap: 32px !important;
  justify-content: center !important;
  align-items: start !important;
  max-width: 1120px !important;
  margin: 32px auto !important;
  padding: 0 12px;
}

/* 2) Nuke the floats / fixed column widths Woo sets */
.woocommerce-account .woocommerce .u-columns.col2-set > .u-column1,
.woocommerce-account .woocommerce .u-columns.col2-set > .u-column2,
.woocommerce-account .woocommerce #customer_login.u-columns.col2-set > .u-column1,
.woocommerce-account .woocommerce #customer_login.u-columns.col2-set > .u-column2 {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

/* 3) Headings and simple card look */
.woocommerce-account .woocommerce .u-columns.col2-set > .u-column1 h2,
.woocommerce-account .woocommerce .u-columns.col2-set > .u-column2 h2 {
  margin: 0 0 12px !important;
  font-size: 1.25rem;
  font-weight: 800;
}

.woocommerce-account .woocommerce .u-columns.col2-set > .u-column1 form,
.woocommerce-account .woocommerce .u-columns.col2-set > .u-column2 form {
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  padding: 18px;
  box-shadow: none;
}

/* 4) Full-width rows & inputs (no shrinking) */
.woocommerce-account .woocommerce .u-columns.col2-set .woocommerce-form .form-row,
.woocommerce-account .woocommerce .u-columns.col2-set .woocommerce-form .woocommerce-form-row {
  width: 100% !important;
  margin: 10px 0 !important;
  clear: both !important;
}

.woocommerce-account .woocommerce .u-columns.col2-set input.input-text,
.woocommerce-account .woocommerce .u-columns.col2-set .password-input input {
  width: 100% !important;
  height: 48px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.12);
  background: #0f131a;
  color: #eaf0f7;
}

/* Password eye stays aligned */
.woocommerce-account .woocommerce .u-columns.col2-set .password-input {
  position: relative;
}
.woocommerce-account .woocommerce .u-columns.col2-set .password-input .show-password-input {
  right: 10px !important;
}

/* Remember + button inline; link to the right */
.woocommerce-account .woocommerce .u-columns.col2-set .form-row {
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
}
.woocommerce-account .woocommerce .u-columns.col2-set .lost_password { margin-left: auto; }

/* 5) Mobile stacking */
@media (max-width: 900px) {
  .woocommerce-account .woocommerce .u-columns.col2-set,
  .woocommerce-account .woocommerce #customer_login.u-columns.col2-set {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    margin: 24px auto !important;
  }
  .woocommerce-account .woocommerce .u-columns.col2-set .lost_password { margin-left: 0; }
}

/* WooCommerce – Register button (Sign Up form only) */
.woocommerce form.woocommerce-form-register .woocommerce-Button.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;

  background: #2b6cb0;           /* brand primary */
  color: #fff;
  border: none;
  border-radius: 12px;

  padding: 12px 20px;
  font-weight: 600;
  font-size: 16px;
  line-height: 1;
  text-decoration: none;

  box-shadow: 0 6px 18px rgba(43,108,176,.25);
  transition: background-color .2s ease, box-shadow .2s ease, transform .06s ease;
  cursor: pointer;
}

.woocommerce form.woocommerce-form-register .woocommerce-Button.button:hover {
  background: #245a93;
  box-shadow: 0 8px 22px rgba(36,90,147,.35);
}

.woocommerce form.woocommerce-form-register .woocommerce-Button.button:focus {
  outline: 2px solid #1b416a;
  outline-offset: 2px;
}

.woocommerce form.woocommerce-form-register .woocommerce-Button.button:active {
  transform: translateY(1px);
}

.woocommerce form.woocommerce-form-register .woocommerce-Button.button:disabled,
.woocommerce form.woocommerce-form-register .woocommerce-Button.button[disabled] {
  background: #a0aec0;
  box-shadow: none;
  cursor: not-allowed;
}

/* Optional: add a subtle arrow without extra markup */
.woocommerce form.woocommerce-form-register .woocommerce-Button.button::after {
  content: "→";
  font-weight: 700;
  margin-left: .35rem;
  transform: translateY(-1px);
}

/* Optional: full-width on small screens */
@media (max-width: 480px) {
  .woocommerce form.woocommerce-form-register .woocommerce-Button.button {
    width: 100%;
  }
}

/* Your registration button */
.btn-registration {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;

  background: #2b6cb0;
  color: #fff;
  border: none;
  border-radius: 12px;

  padding: 12px 20px;
  font-weight: 600;
  font-size: 16px;
  line-height: 1;
  text-decoration: none;

  box-shadow: 0 6px 18px rgba(43,108,176,.25);
  transition: background-color .2s ease, box-shadow .2s ease, transform .06s ease;
  cursor: pointer;
}
.btn-registration:hover { background:#245a93; box-shadow:0 8px 22px rgba(36,90,147,.35); }
.btn-registration:focus { outline: 2px solid #1b416a; outline-offset: 2px; }
.btn-registration:active { transform: translateY(1px); }
.btn-registration:disabled { background:#a0aec0; box-shadow:none; cursor:not-allowed; }

/* Optional: add arrow */
.btn-registration::after { content:"→"; font-weight:700; margin-left:.35rem; transform:translateY(-1px); }

/* Optional: full width on small screens */
@media (max-width: 480px) {
  .btn-registration { width: 100%; }
}

/* ==== Medimeal: Cart/Checkout notice (Blocks) ==== */
.wc-block-components-notices .wc-block-components-notice-banner.is-error {
  --mm-accent: none;                   /* change to your brand color */
  background: #F4971E !important;         /* solid dark */
  border: 1px solid color-mix(in srgb, var(--mm-accent) 45%, transparent) !important;
  color: black !important;              /* bright text */
  border-radius: 12px !important;
  padding: 12px 14px !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.35) !important;
  position: relative;
}

html.light-mode .woocommerce-billing-fields * , html.light-mode .woocommerce-additional-fields, html.light-mode .woocommerce form .form-row label, html.light-mode .woocommerce-additional-fields *, html.light-mode .woocommerce-checkout #order_review_heading{
    color:black;
}

/* Left accent bar */
.wc-block-components-notices .wc-block-components-notice-banner.is-error::before {
  content: "";
  position: absolute; left: 0; top: 0; bottom: 0; width: 4px;
  background: var(--mm-accent);
  border-top-left-radius: 12px; border-bottom-left-radius: 12px;
}

/* Ensure text is fully visible (some themes set low opacity) */
.wc-block-components-notices .wc-block-components-notice-banner__content,
.wc-block-components-notices .wc-block-components-notice-banner__content > div {
  color: inherit !important;
  opacity: 1 !important;
  font-size: 15px;
  line-height: 1.5;
}

/* Icon + close button in brand color */

.wc-block-components-notices .wc-block-components-notice-banner__dismiss {
  color: var(--mm-accent) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 8px;
}
.wc-block-components-notices .wc-block-components-notice-banner__dismiss:hover {
  background: color-mix(in srgb, var(--mm-accent) 15%, transparent) !important;
}

/* Optional: tighten container margin */
.wc-block-components-notices { margin: 16px 0 !important; }

/* Classic notices (non-Blocks) */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
  background: #14171f !important;
  color: #eaf0ff !important;
  border: 1px solid color-mix(in srgb, var(--mm-accent, #3b82f6) 45%, transparent) !important;
  border-radius: 12px !important;
}
.woocommerce-error li,
.woocommerce-message li,
.woocommerce-info li { list-style: none; }

.wc-block-components-notice-banner.is-error>svg{
    background-color: var(--mm-accent) !important;
    transform: rotate(180deg);
    fill: white !important;
}

.wc-block-components-notice-banner__dismiss svg{
  fill: var(--mm-accent) !important;
}

/* =========================
   SIGN IN — Polished Glass Card
   ========================= */

/* Center the login card on the page */
.woocommerce-account .woocommerce .woocommerce-form.login,
.woocommerce-form.woocommerce-form-login.login {
  max-width: 560px;
  margin: 32px auto;
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  padding: 22px 20px 14px;
  box-shadow: var(--shadow-lg);
}

/* Title */
.woocommerce-account .woocommerce h2,
.woocommerce .woocommerce-form-login h2 {
  margin: 0 0 14px;
  font: 800 1.35rem/1.2 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
  letter-spacing: .2px;
}

/* Rows */
.woocommerce-form.login .form-row,
.woocommerce-form.woocommerce-form-login .form-row {
  margin: 0 0 14px;
}

/* Labels */
.woocommerce-form.login label {
  display: block;
  margin: 0 0 8px;
  color: var(--muted);
  font: 600 .95rem/1.1 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
}

/* Inputs */
.woocommerce-form.login .input-text,
.woocommerce-form.login .password-input input {
  width: 100%;
  height: 46px;
  border-radius: 12px;
  background: #0b1016;
  border: 1px solid var(--line);
  color: var(--ink);
  padding: 10px 14px;
  outline: none;
  transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.woocommerce-form.login .input-text:focus,
.woocommerce-form.login .password-input input:focus {
  border-color: color-mix(in srgb, var(--accent) 65%, transparent);
  background: #0d141c;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);
}

/* Password eye button (consistent, subtle) */
.woocommerce-form.login .password-input {
  position: relative;
  display: block;
}
.woocommerce-form.login .show-password-input {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 36px; height: 36px;
  border: 0; background: transparent; cursor: pointer; opacity: .9;
}
.woocommerce-form.login .show-password-input:hover { opacity: 1; }

/* Remember + Login button row */
.woocommerce-form.login .form-row:last-of-type {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin-top: 6px;
}
.woocommerce-form__label-for-checkbox {
  display: inline-flex; align-items: center; gap: 8px; color: var(--muted);
}
.woocommerce-form__input-checkbox { width: 18px; height: 18px; accent-color: var(--accent); }

/* Primary button */
.woocommerce-form-login__submit,
.woocommerce .button.login {
  border: 0; border-radius: 12px; height: 44px; padding: 0 18px;
  background: linear-gradient(180deg, #F4971E, #1f7ed1);
  color: var(--accent-ink);
  font: 800 .95rem/1 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
  cursor: pointer;
  box-shadow: 0 10px 26px rgba(46,163,255,.30);
  transition: filter .14s ease, transform .06s ease;
}
.woocommerce-form-login__submit:hover { filter: brightness(1.06); }
.woocommerce-form-login__submit:active { transform: translateY(1px); }


/* Notices (errors/info) – match card */
.woocommerce .woocommerce-notices-wrapper .woocommerce-error,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info {
  max-width: 560px;
  margin: 10px auto 14px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.12);
  color: var(--ink);
  border-radius: 12px;
  padding: 10px 12px;
}

/* Mobile */
@media (max-width: 560px) {
  .woocommerce-form.login { padding: 16px 14px 10px; }
  .woocommerce-form.login .form-row:last-of-type { flex-wrap: wrap; }
}

/* =========================
   Remove/neutralize RED circles
   ========================= */

/* Make asterisks subtle (or hide if you prefer) */
.woocommerce-form.login .required { color: color-mix(in srgb, var(--ink) 55%, transparent); }

/* Hide any theme/plugin field status bubbles/icons next to inputs */
.woocommerce-form.login .form-row .field-status,
.woocommerce-form.login .form-row .error-icon,
.woocommerce-form.login .form-row .validation-icon,
.woocommerce-form.login .form-row .wc-block-components-validation-error,
.woocommerce-form.login .form-row .woocommerce-input-wrapper > .status,
.woocommerce-form.login .form-row .help-tip,
.woocommerce-form.login .form-row .wc-block-components-text-input__validation-icon {
  display: none !important;
}

/* If your theme paints :invalid with red outlines, tone it down */
.woocommerce-form.login .input-text:invalid,
.woocommerce-form.login .password-input input:invalid {
  border-color: var(--line);
  box-shadow: none;
}

/* Remove button box-shadow */
.woocommerce-form-login__submit,
.woocommerce .button.login {
  box-shadow: none !important;
}


/* =============== Sign-in polish: button, checkbox, lost-password =============== */

/* 1) Login button — clean, tactile (no glow) */
.woocommerce-form-login__submit,
.woocommerce .button.login {
  width: 140px;                 /* tweak if you want full width */
  height: 44px;
  border-radius: 12px;
  border: 1px solid color-mix(in srgb, var(--accent) 55%, transparent);
  background: #F4971E;          /* solid brand (no gradient) */
  color: var(--accent-ink);
  font: 800 .95rem/1 Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;
  box-shadow: none !important;  /* remove glow */
  transition: transform .06s ease, filter .15s ease, border-color .15s ease;
}
.woocommerce-form-login__submit:hover { filter: brightness(1.05); }
.woocommerce-form-login__submit:active { transform: translateY(1px); }

/* Optional: want a ghost/outline button instead? Uncomment below
.woocommerce-form-login__submit{
  background: transparent; color: var(--ink);
  border: 1px solid rgba(255,255,255,.18);
}
.woocommerce-form-login__submit:hover{ background: rgba(255,255,255,.06); }
*/

/* 2) “Remember me” — custom checkbox + better alignment */
.woocommerce-form.login .form-row:last-of-type{
  display:flex; align-items:center; gap:14px; margin-top:8px;
}
.woocommerce-form__label-for-checkbox{
  display:inline-flex; align-items:center; gap:10px;
  color: var(--muted); font-weight: 600;
}

/* Hide the default look and draw our own */
.woocommerce-form__input-checkbox{
  appearance: none; -webkit-appearance: none; -moz-appearance: none;
  width: 20px; height: 20px; border-radius: 6px;
  margin-right:10px !important;
  background: #0b1016;
  border: 1px solid var(--line);
  display: inline-grid; place-content: center;
  cursor: pointer;
  transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.woocommerce-form__input-checkbox:hover{
  border-color: color-mix(in srgb, var(--accent) 45%, transparent);
}
.woocommerce-form__input-checkbox:focus-visible{
  outline: 2px solid color-mix(in srgb, var(--accent) 55%, transparent);
  outline-offset: 2px;
}
.woocommerce-form__input-checkbox:checked{
  background: var(--accent);
  border-color: var(--accent);
}
.woocommerce-form__input-checkbox:checked::after{
  content:"";
  width: 12px; height: 12px; background: var(--accent-ink);
  -webkit-mask: center/contain no-repeat;
          mask: center/contain no-repeat;
  -webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z"/></svg>');
          mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z"/></svg>');
}


/* (Bonus) Kill those red field icons completely if any remain */
.woocommerce-form.login .form-row .help-tip,
.woocommerce-form.login .form-row [class*="validation"],
.woocommerce-form.login .form-row [class*="error"],
.woocommerce-form.login .form-row .status,
.woocommerce-form.login .form-row .wc-block-components-text-input__validation-icon{
  display: none !important;
}

/* Align checkbox + label text vertically */
.woocommerce-form__label-for-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 8px;                 /* spacing between box + text */
  color: var(--muted);
  font-weight: 500;
  line-height: 1.2;         /* keeps label from being too tall */
  cursor: pointer;
}
.woocommerce-form__input-checkbox {
  flex-shrink: 0;
  margin: 0;                /* remove default offset */
  vertical-align: middle;
}
/* Lost password styling */
p.lost_password {
  width: 100%;
  margin: 14px 0 0;
}

p.lost_password a {
  color: #9fb6ff;           /* soft but visible blue */
  font-size: .95rem;
  font-weight: 600;
  text-decoration: none;
  transition: color .15s ease, opacity .15s ease;
}

p.lost_password a:hover {
  color: #ffffff;           /* bright white on hover */
  text-decoration: underline;
}

.woocommerce-form-login__submit{
  margin:20px 0;
}
.woocommerce-form-login__rememberme{
  margin-top:10px !important;
}

/* Keep actions inside the login card and aligned */
.woocommerce-form.login .login-extra-actions{
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px dashed rgba(255,255,255,.10);
  display: flex;
  justify-content: center;         /* center the button */
}

/* Register button – same visual language as Login, no glow */
.woocommerce-form.login .btn-register-inline{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 240px;                 /* adjust to taste; or 100% for full width */
  height: 44px;
  padding: 0 18px;
  border-radius: 12px;
  background: #F4971E;
  color: var(--accent-ink) !important;
  font: 800 .95rem/1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  text-decoration: none;
  border: 1px solid color-mix(in srgb, var(--accent) 55%, transparent);
  box-shadow: none;                 /* no glow */
  transition: filter .15s ease, transform .06s ease;
}
.woocommerce-form.login .btn-register-inline:hover{ filter: brightness(1.05); }
.woocommerce-form.login .btn-register-inline:active{ transform: translateY(1px); }

/* If you want full-width on phones */
@media (max-width: 560px){
  .woocommerce-form.login .btn-register-inline{ width: 100%; min-width: 0; }
}


/* =========================
   SIGN UP — match Sign In card
   Targets your exact HTML:
   <main class="container">
     <form class="woocommerce-form woocommerce-form-register register"> … </form>
   ========================= */

/* Card */
.container > form.woocommerce-form-register.register{
  max-width: 560px;
  margin: 32px auto;
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  padding: 22px 20px 18px;
  box-shadow: var(--shadow-lg);
}

/* Rows + labels */
.register .form-row{ margin:0 0 14px; }
.register label{
  display:block; margin:0 0 8px;
  color:var(--muted);
  font:600 .95rem/1.1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
}

/* Inputs = same as login */
.register input.input-text,
.register input.woocommerce-Input,
.register input[type="password"],
.register input[type="email"],
.register input[type="text"]{
  width:100%; height:46px; border-radius:12px;
  background:#0b1016; border:1px solid var(--line);
  color:var(--ink); padding:10px 14px; outline:none;
  transition:border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.register input:focus{
  border-color: color-mix(in srgb, var(--accent) 65%, transparent);
  background:#0d141c;
  box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);
}

/* First/Last in two columns on md+ */
@media (min-width:640px){
  .register .form-row-first,
  .register .form-row-last{
    width:calc(50% - 8px);
    display:inline-block;
    vertical-align:top;
  }
}

/* “Register” button — identical style to Login */
.register .btn-registration,
.register .woocommerce-Button.button{
  width:160px; height:44px; border-radius:12px;
  border:1px solid color-mix(in srgb, var(--accent) 55%, transparent);
  background:#F4971E; color:var(--accent-ink) !important;
  font:800 .95rem/1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  box-shadow:none !important;
  transition:transform .06s ease, filter .15s ease, border-color .15s ease;
}
.register .btn-registration:hover{ filter:brightness(1.05); }
.register .btn-registration:active{ transform:translateY(1px); }

/* Privacy copy inside the card */
.register .woocommerce-privacy-policy-text{
  color:var(--muted); font-size:.92rem;
  margin:8px 0 4px;
}
.register .woocommerce-privacy-policy-link{
  color:#9fb6ff; text-decoration:none; font-weight:600;
}
.register .woocommerce-privacy-policy-link:hover{
  color:#fff; text-decoration:underline;
}

/* Subtle asterisk, hide red field-status bubbles */
.register .required{ color:color-mix(in srgb, var(--ink) 55%, transparent); }
.register [class*="validation"], .register .help-tip, .register .status{ display:none !important; }

/* Footer action: “Already have an account?” link (inside card) */
.register .form-altlink{
  margin-top:16px; padding-top:12px;
  border-top:1px dashed rgba(255,255,255,.10);
  text-align:center;
}
.register .form-altlink a{
  color:#9fb6ff; font-weight:600; text-decoration:none;
  transition:color .15s ease;
}
.register .form-altlink a:hover{ color:#fff; text-decoration:underline; }

/* Mobile: card padding + full-width button if you like */
@media (max-width:560px){
  .container > form.woocommerce-form-register.register{ padding:16px 14px 14px; }
  .register .btn-registration{ width:100%; }
}

.gl_link{
  text-decoration: none;
  color:white;
}

/* wrapper: buttons on the sides, scroller in the middle */
.chips-wrap{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:10px;
  margin:12px 0 18px;
}

/* scroller */
.chips{
  display:flex;
  gap:10px;
  overflow:auto;
  scroll-behavior:smooth;
  padding:6px 4px;
  -ms-overflow-style:none;
  scrollbar-width:none;
}
.chips::-webkit-scrollbar{ display:none; }

/* chip */
.chip{
  display:inline-flex;
  align-items:center;
  padding:.55rem .9rem;
  border-radius:999px;
  background:#151a22;
  border:1px solid rgba(255,255,255,.10);
  color:#e7edf5;
  text-decoration:none;
  white-space:nowrap;
  transition:transform .12s ease, background .12s ease, border-color .12s ease;
}
.chip:hover{ transform:translateY(-1px); border-color:rgba(255,255,255,.18); }
.chip--active{
  background:#F4971E;
  border-color:#F4971E;
  box-shadow:0 0 0 2px rgba(46,163,255,.25) inset;
}

/* nav buttons (no overlapping) */
.chips__nav{
  width:36px;height:36px;
  display:grid;place-items:center;
  border-radius:999px;
  background:#0f131a;
  border:1px solid rgba(255,255,255,.14);
  color:#eaf0f7;
  cursor:pointer;
  margin-top:-10px;
}
.chips__nav[disabled]{ opacity:.35; pointer-events:none; }

/* mobile: keep same layout; buttons stay outside */
@media (max-width: 560px){
  .chips-wrap{ gap:8px; }
  .chips__nav{ width:32px;height:32px; }
}

/* Two main actions side-by-side */
.card__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:0 14px 10px;
}
.card__actions .add_to_cart_button,
.card__actions .wp-element-button,
.card__actions .btn.btn-customize{
  width:100%;
  min-width:0;
  height:46px;
  border-radius:14px;
  justify-content:center;
  white-space:nowrap;
}

/* TI Wishlist – full-width row under the actions */
.card__wishlist{ padding:0 14px 14px; }
.card__wishlist .tinvwl_add_to_wishlist_button,
.card__wishlist .tinvwl-button.tinvwl_add_to_wishlist_button{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  height:46px;
  padding:0 14px;
  border-radius:14px;
  text-decoration:none;
  color:var(--ink);
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 6px 20px rgba(0,0,0,.25);
}
.card__wishlist .tinvwl_add_to_wishlist_button:hover{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.24);
}

/* Optional: tidy text/icon inside TI button */
.card__wishlist .tinvwl_add_to_wishlist_button .tinvwl_add_to_wishlist-text{
  line-height:1; font-weight:600;
}
.card__wishlist .tinvwl-product-in-list,
.card__wishlist .tinvwl_added_to_wishlist{
  opacity:.9;
}

/* Phones: stack the two top buttons */
@media (max-width:520px){
  .card__actions{ grid-template-columns:1fr; }
}
/* Wishlist button distinct from Customize */
.card__wishlist .tinvwl_add_to_wishlist_button,
.card__wishlist .tinvwl-button.tinvwl_add_to_wishlist_button {
  display: flex;
  justify-content: center;     /* center text + icon */
  align-items: center;
  gap: 8px;
  width: 100%;
  height: 46px;
  padding: 0 14px;
  border-radius: 14px;

  font-weight: 600;
  text-align: center;

  background: transparent;                /* lighter look than Customize */
  border: 1px solid rgba(255, 255, 255, .25);
  color: #c9d6e3;
  transition: all .2s ease;
}

.card__wishlist .tinvwl_add_to_wishlist_button:hover {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.45);
  color: #fff;
}

/* When already in wishlist */
.card__wishlist .tinvwl-product-in-list,
.card__wishlist .tinvwl-product-in-list:hover {
  background: #28141a;
  border-color: #ff5e7a;
  color: #ff5e7a;
}

/* Wishlist icon in the top bar */
.topbar__wish {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding-inline: .75rem;
}

.topbar__wish svg { opacity: .9 }

.topbar__wishCount {
  position: absolute;
  top: -6px;
  right: -6px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  background: var(--brand, #F4971E);
  color: #0b1220;
  box-shadow: 0 6px 22px rgba(46,163,255,.45);
}

.visually-hidden{
  position:absolute !important;
  width:1px !important; height:1px !important;
  margin:-1px !important; padding:0 !important;
  overflow:hidden !important; clip:rect(0 0 0 0) !important; clip-path: inset(50%) !important;
  border:0 !important; white-space:nowrap !important;
}

/* helper for offscreen content we still want in the DOM */
.visually-hidden {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

/* wishlist button shell */
.site-topbar .topbar__actions .topbar__wish{
  display:inline-flex; align-items:center; gap:8px;
  padding:8px 12px; border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  text-decoration:none; color:var(--ink);
}
.site-topbar .topbar__actions .topbar__wish:hover{
  background:rgba(255,255,255,.10);
}
.site-topbar .topbar__actions .topbar__wish svg{
  width:18px; height:18px; display:block;
}

/* the numeric badge */
.site-topbar #wishCount{
  min-width:22px; height:18px; padding:0 6px; border-radius:999px;
  display:inline-flex; align-items:center; justify-content:center;
  font:800 11px/1 Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--accent-ink); background:var(--accent);
  box-shadow:0 4px 14px rgba(46,163,255,.6);
  transform:translateY(-1px);
}

/* little pulse when number changes */
#wishCount.pulse{ animation:wishPulse .45s ease; }
@keyframes wishPulse{
  0%{ transform:translateY(-1px) scale(.94); box-shadow:0 0 0 rgba(46,163,255,0) }
  40%{ transform:translateY(-1px) scale(1.08); box-shadow:0 6px 18px rgba(46,163,255,.55) }
  100%{ transform:translateY(-1px) scale(1); box-shadow:0 4px 14px rgba(46,163,255,.6) }
}

/* make wishlist button relative so badge can position absolutely */
.topbar__wish {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px; height: 38px; /* match your cart button size */
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: inherit;
  text-decoration: none;
}

.topbar__wish:hover {
  background: rgba(255,255,255,.12);
}

/* icon itself */
.topbar__wish svg {
  width: 22px; height: 22px;
}

/* the numeric badge */
.topbar__wishCount {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  background: #F4971E;  /* accent color */
  color: #0b0f15;
  box-shadow: 0 3px 8px rgba(46,163,255,.45);
}

/* pulse animation on update */
.topbar__wishCount.pulse {
  animation: wishPulse .4s ease;
}
@keyframes wishPulse {
  0% { transform: scale(.8); opacity:.6 }
  40%{ transform: scale(1.2); opacity:1 }
  100%{ transform: scale(1); opacity:1 }
}

/* wishlist button wrapper */
.topbar__wish {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;   /* was 38px */
  height: 44px;  /* was 38px */
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: inherit;
  text-decoration: none;
}

/* increase the svg heart icon */
.topbar__wish svg {
  width: 26px;   /* was 22px */
  height: 26px;  /* was 22px */
}

/* adjust badge position so it doesn’t overlap badly */
.topbar__wishCount {
  top: -6px;     /* was -4px */
  right: -6px;   /* was -4px */
  min-width: 20px;
  height: 20px;
  font-size: 12px;
}

/* ===== TI Wishlist — Dark Card Layout ===== */

.tinv-wishlist .tinv-header h2 {
  font-size: 28px;
  font-weight: 800;
  margin: 10px 0 20px;
}

/* Table becomes a card container */
.tinv-wishlist .tinvwl-table-manage-list{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  background:#11151c;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  overflow:hidden;
}

/* Hide plugin header row – we’ll present rows as cards */
.tinv-wishlist .tinvwl-table-manage-list thead{ display:none; }

/* Each row as a grid “card” */
.tinv-wishlist .tinvwl-table-manage-list tbody tr{
  display:grid;
  grid-template-columns: 40px 40px 84px 1fr 120px 150px 160px; /* cb | remove | thumb | name | price | date/stock | actions */
  align-items:center;
  gap:14px;
  padding:16px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.tinv-wishlist .tinvwl-table-manage-list tbody tr:last-child{ border-bottom:0; }

/* Checkbox + remove button */
.tinv-wishlist td.product-cb input[type="checkbox"]{
  width:18px;height:18px; accent-color:#F4971E;
}
.tinv-wishlist td.product-remove button{
  display:inline-flex;align-items:center;justify-content:center;
  width:32px;height:32px;border-radius:999px;
  background:#1a1f2a;border:1px solid rgba(255,255,255,.1);
  color:#94a3b8; transition:.15s;
}
.tinv-wishlist td.product-remove button:hover{ color:#e2e8f0; }

/* Thumbnail */
.tinv-wishlist td.product-thumbnail img{
  width:84px;height:84px;border-radius:12px;object-fit:cover;display:block;
  box-shadow:0 4px 16px rgba(0,0,0,.35);
}

/* Name */
.tinv-wishlist td.product-name a{
  color:#eaf0f7;font-weight:700;text-decoration:none;
}
.tinv-wishlist td.product-name a:hover{ opacity:.9; }

/* Price / Date / Stock */
.tinv-wishlist td.product-price{ color:#cbd5e1;font-weight:700; }
.tinv-wishlist td.product-date{ color:#9aa6b2; }
.tinv-wishlist td.product-stock .stock{
  display:flex;gap:8px;align-items:center;color:#a3e635;font-weight:700;
}
.tinv-wishlist td.product-stock .stock .ftinvwl-check{ color:#a3e635; }

/* Primary action button (“Add to Cart”) */
.tinv-wishlist td.product-action .button{
  background:#F4971E;color:#0b1220;border:0;
  padding:10px 14px;border-radius:12px;font-weight:800;
  box-shadow:0 12px 28px rgba(46,163,255,.25);
  transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.tinv-wishlist td.product-action .button .ftinvwl-shopping-cart{ margin-right:6px; }
.tinv-wishlist td.product-action .button:hover{
  transform:translateY(-1px);box-shadow:0 16px 40px rgba(46,163,255,.32);
}

/* Footer/bulk actions row */
.tinv-wishlist tfoot td{
  background:#0f131a;padding:14px; border-top:1px solid rgba(255,255,255,.06);
}
.tinv-wishlist .tinvwl-to-left.look_in{ display:flex; align-items:center; gap:10px; }
.tinv-wishlist select.tinvwl-break-input-filed{
  background:#0f131a;color:#eaf0f7;border:1px solid rgba(255,255,255,.14);
  padding:10px 12px;border-radius:12px; min-width:160px;
}
.tinv-wishlist .tinvwl-input-group-btn .button{
  background:#232a3b;color:#eaf0f7;border:1px solid rgba(255,255,255,.12);
  border-radius:12px;padding:10px 14px;font-weight:700;
}
.tinv-wishlist .tinvwl-to-right .button{
  background:#232a3b;color:#eaf0f7;border:1px solid rgba(255,255,255,.12);
  border-radius:12px;padding:10px 14px;font-weight:700;margin-left:10px;
}
.tinv-wishlist .tinvwl-to-right .button:hover{ opacity:.92; }

/* Global checkbox in header (still exists in DOM) */
.tinv-wishlist .global-cb{ accent-color:#F4971E; }

/* Responsive stacking */
@media (max-width: 980px){
  .tinv-wishlist .tinvwl-table-manage-list tbody tr{
    grid-template-columns: 32px 32px 70px 1fr;
  }
  .tinv-wishlist td.product-price,
  .tinv-wishlist td.product-date,
  .tinv-wishlist td.product-stock,
  .tinv-wishlist td.product-action{
    grid-column: 4 / -1;
  }
  .tinv-wishlist td.product-action{
    display:flex; justify-content:flex-start; margin-top:6px;
  }
}
/* Wishlist row grid adjustment */
.tinv-wishlist .tinvwl-table-manage-list tbody tr {
  display: grid;
  grid-template-columns: 40px 40px 84px 1fr 120px 150px 160px; 
  align-items: center;
  gap: 14px;
  padding: 16px;
  border-bottom: 1px solid rgba(255, 255, 255, .06);
}

/* Make sure action cell is at the end (right) */
.tinv-wishlist td.product-action {
  grid-column: -2 / -1; /* push it to last column */
  display: flex;
  justify-content: flex-end;
}

/* Style the Add to Cart button */
.tinv-wishlist td.product-action .button {
  background: #F4971E;
  color: #0b1220;
  border: 0;
  padding: 10px 18px;
  border-radius: 12px;
  font-weight: 700;
  font-size: 14px;
  box-shadow: 0 6px 18px rgba(46, 163, 255, .25);
  transition: transform .15s ease, box-shadow .15s ease;
}

.tinv-wishlist td.product-action .button:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(46, 163, 255, .35);
}

/* --- Wishlist Row Add to Cart Button --- */
.tinv-wishlist td.product-action .button {
  background: #F4971E !important;   /* your blue */
  color: black !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 10px 20px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;        /* prevents two-line wrapping */
  white-space: nowrap !important;   /* force single line */
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 18px rgba(46, 163, 255, 0.25) !important;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease !important;
}

/* Hover / active states */
.tinv-wishlist td.product-action .button:hover {
  background: #1a8fe0 !important;  /* darker blue on hover */
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(46, 163, 255, 0.35) !important;
}

.tinv-wishlist td.product-action .button:active {
  transform: translateY(0);
  box-shadow: 0 4px 12px rgba(46, 163, 255, 0.25) !important;
}

/* ===========================
   TI Wishlist – MOBILE ONLY
   (keeps desktop unchanged)
   =========================== */
@media (max-width: 640px) {

  /* Kill table chrome and overflow that cause horizontal scroll */
  .tinv-wishlist .tinvwl-table-manage-list {
    width: 100% !important;
    table-layout: fixed;
    border: 0;
  }
  .tinv-wishlist .tinvwl-table-manage-list thead,
  .tinv-wishlist .tinvwl-table-manage-list tfoot {
    display: none !important;
  }
  .tinv-wishlist .tinvwl-table-manage-list tr,
  .tinv-wishlist .tinvwl-table-manage-list td,
  .tinv-wishlist .tinvwl-table-manage-list th {
    overflow: visible;
    border: 0;
  }

  /* Each wishlist row becomes a clean card (no double borders) */
  .tinv-wishlist .tinvwl-table-manage-list .wishlist_item {
    display: grid !important;
    grid-template-columns: 72px 1fr;
    gap: 12px;
    background: #12161d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    padding: 14px;
    margin: 12px 0;
    box-shadow: 0 10px 28px rgba(0,0,0,.35);
  }
  .tinv-wishlist .tinvwl-table-manage-list .wishlist_item > td {
    display: block;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
  }

  /* Top controls: checkbox left, remove right (no extra line) */
  .tinv-wishlist .wishlist_item .product-cb,
  .tinv-wishlist .wishlist_item .product-remove {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
  }
  .tinv-wishlist .wishlist_item .product-cb { justify-content: flex-start; }
  .tinv-wishlist .wishlist_item .product-remove {
    justify-content: flex-end;
    margin-top: -28px; /* pulls the X into the corner */
  }
  .tinv-wishlist .wishlist_item .product-remove button {
    width: 32px; height: 32px; border-radius: 999px;
    background: #0f131a; border: 1px solid rgba(255,255,255,.14);
    display: grid; place-items: center; color: #e9eef6;
  }

  /* Thumbnail */
  .tinv-wishlist .wishlist_item .product-thumbnail {
    grid-row: 3 / span 3;
  }
  .tinv-wishlist .wishlist_item .product-thumbnail img {
    width: 72px; height: 72px; border-radius: 12px; object-fit: cover;
    box-shadow: 0 6px 18px rgba(0,0,0,.35);
  }

  /* Name / price */
  .tinv-wishlist .wishlist_item .product-name {
    font-weight: 800; font-size: 16px; line-height: 1.25;
    color: #e9eef6; margin-top: 4px;
  }
  .tinv-wishlist .wishlist_item .product-name a {
    color: inherit; text-decoration: none;
  }
  .tinv-wishlist .wishlist_item .product-price {
    font-weight: 800; color: #e9eef6; margin-top: 2px;
  }

  /* Date + stock on one line (no overlap) */
  .tinv-wishlist .wishlist_item .product-date,
  .tinv-wishlist .wishlist_item .product-stock {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 6px;
    color: #9aa5b1;
  }
  .tinv-wishlist .wishlist_item .product-stock .in-stock,
  .tinv-wishlist .wishlist_item .product-stock .tinvwl-txt.in-stock {
    color: #9BE24B;
    font-weight: 700;
  }

  /* Primary action full-width and blue (no purple) */
  .tinv-wishlist .wishlist_item .product-action {
    grid-column: 1 / -1;
    margin-top: 12px;
  }
  .tinv-wishlist .wishlist_item .product-action .button,
  .tinv-wishlist .wishlist_item .product-action .button.alt {
    width: 100%;
    height: 46px;
    border-radius: 12px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    background: #1e90ff !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: 0 12px 28px rgba(30,144,255,.35);
  }

  /* Bulk action block (stacked, fits screen, no overflow) */
  .tinv-wishlist .tinvwl-to-left.look_in,
  .tinv-wishlist .tinvwl-to-right.look_in {
    background: #12161d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    padding: 12px;
    margin: 10px 0 16px;
  }
  .tinv-wishlist .tinvwl-no-full {
    display: grid;
    grid-template-columns: 1fr 120px;
    gap: 10px;
  }
  .tinv-wishlist select.tinvwl-break-input-filed {
    width: 100%;
    height: 44px;
    background: #0f131a;
    border: 1px solid rgba(255,255,255,.12);
    color: #e9eef6;
    border-radius: 12px;
    padding: 0 12px;
  }
  .tinv-wishlist .tinvwl-input-group-btn .button {
    height: 44px;
    border-radius: 12px;
    background: #1e90ff;
    color: #fff;
    border: 0;
    width: 100%;
  }
  .tinv-wishlist .tinvwl-to-right.look_in .button {
    width: 100%;
    height: 46px;
    border-radius: 12px;
    background: #1b1f29;
    color: #e9eef6;
    border: 1px solid rgba(255,255,255,.12);
    margin-top: 10px;
  }
}
/* ------- TI Wishlist: mobile-only tidy card layout (desktop unchanged) ------- */
@media (max-width: 640px) {

  /* Kill the table chrome on phones */
  .tinv-wishlist .tinvwl-table-manage-list {
    width: 100%;
    border: 0;
    border-collapse: separate;
  }
  .tinv-wishlist .tinvwl-table-manage-list thead {
    display: none;
  }

  /* Each product = card */
  .tinv-wishlist .tinvwl-table-manage-list .wishlist_item {
    display: grid;
    grid-template-columns: 44px 1fr 36px;        /* cb | content | remove */
    grid-auto-rows: auto;
    gap: 12px 12px;
    align-items: center;

    background: #12161e;                        /* match your theme */
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    padding: 14px;
    margin: 0 0 14px 0;
  }

  /* Checkbox (top-left) */
  .tinv-wishlist .wishlist_item .product-cb {
    grid-column: 1;
    grid-row: 1;
    margin: 0 !important;
    padding: 0 !important;
  }
  .tinv-wishlist .wishlist_item .product-cb .input-checkbox {
    width: 20px; height: 20px; border-radius: 4px;
  }

  /* Remove button (top-right) */
  .tinv-wishlist .wishlist_item .product-remove {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    margin: 0 !important;
    padding: 0 !important;
  }
  .tinv-wishlist .wishlist_item .product-remove button {
    width: 28px; height: 28px; border-radius: 999px;
    background: #0f131a;
    border: 1px solid rgba(255,255,255,.14);
    color: #e9eef6; display: grid; place-items: center;
  }

  /* Title line (to the right of the checkbox) */
  .tinv-wishlist .wishlist_item .product-name {
    grid-column: 2 / 3;
    grid-row: 1;
    margin: 0; font-weight: 600;
  }
  .tinv-wishlist .wishlist_item .product-name a {
    color: #e9eef6; text-decoration: none;
  }

  /* Thumbnail + details row */
  .tinv-wishlist .wishlist_item .product-thumbnail {
    grid-column: 1 / 2; grid-row: 2; margin: 0;
  }
  .tinv-wishlist .wishlist_item .product-thumbnail img {
    width: 72px; height: 72px; object-fit: cover; border-radius: 10px;
  }

  /* Price, date, stock arranged inline and wrapping as needed */
  .tinv-wishlist .wishlist_item .product-price,
  .tinv-wishlist .wishlist_item .product-date,
  .tinv-wishlist .wishlist_item .product-stock {
    grid-column: 2 / 4; grid-row: 2;
    display: inline-flex; gap: 10px; align-items: center;
    color: #b7c0cc; margin: 0;
    flex-wrap: wrap;
  }
  .tinv-wishlist .wishlist_item .product-price { font-weight: 700; color: #e9eef6; }
  .tinv-wishlist .wishlist_item .product-stock .in-stock { color: #86efac; }

  /* Primary button full width on its own row */
  .tinv-wishlist .wishlist_item .product-action {
    grid-column: 1 / -1; grid-row: 3;
    margin-top: 4px; display: block;
  }
  .tinv-wishlist .wishlist_item .product-action .button {
    width: 100%;
    height: 44px; border-radius: 12px;
    background: #1d9bf0; color: #fff; border: 0;
    display: inline-flex; justify-content: center; align-items: center;
    gap: 8px;
  }
  .tinv-wishlist .wishlist_item .product-action .button:hover {
    filter: brightness(1.08);
  }

  /* Footer actions: stack and fill */
  .tinv-wishlist .tinvwl-to-left,
  .tinv-wishlist .tinvwl-to-right {
    width: 100%;
  }
  .tinv-wishlist .tinvwl-to-left .tinvwl-input-group {
    width: 100%; display: flex; gap: 10px;
  }
  .tinv-wishlist .tinvwl-to-left select {
    flex: 1 1 auto; min-height: 44px; border-radius: 10px;
    background: #0f131a; color: #e9eef6; border: 1px solid rgba(255,255,255,.14);
  }
  .tinv-wishlist .tinvwl-to-left .button {
    min-height: 44px; border-radius: 10px; padding: 0 16px;
    background: #242a33; color: #e9eef6; border: 1px solid rgba(255,255,255,.14);
  }
  .tinv-wishlist .tinvwl-to-right .button {
    width: 100%; min-height: 48px; border-radius: 12px;
    background: #242a33; color: #e9eef6; border: 1px solid rgba(255,255,255,.14);
    margin-top: 10px;
  }

  /* Remove leftover table spacing */
  .tinv-wishlist .tinvwl-table-manage-list tfoot td { padding: 0; }
}

@media (max-width: 640px) {
  /* Product info block */
  .tinv-wishlist .wishlist_item .product-name,
  .tinv-wishlist .wishlist_item .product-price,
  .tinv-wishlist .wishlist_item .product-date,
  .tinv-wishlist .wishlist_item .product-stock {
    grid-column: 1 / -1;   /* full width under checkbox/remove */
    margin: 2px 0;
    display: block;
    text-align: center;
  }

  /* Product name bigger and bold */
  .tinv-wishlist .wishlist_item .product-name a {
    display: inline-block;
    font-weight: 700;
    font-size: 1rem;
    color: #fff;
    text-decoration: none;
    margin-bottom: 4px;
  }

  /* Price styled clearly below name */
  .tinv-wishlist .wishlist_item .product-price {
    font-size: 0.95rem;
    font-weight: 600;
    color: #e9eef6;
  }

  /* Date aligned below price */
  .tinv-wishlist .wishlist_item .product-date {
    font-size: 0.8rem;
    color: #9ca3af;
  }

  /* Stock status below date */
  .tinv-wishlist .wishlist_item .product-stock {
    font-size: 0.85rem;
    font-weight: 600;
    color: #22c55e;
    margin-bottom: 10px;
  }

  /* Thumbnail stays centered above details */
  .tinv-wishlist .wishlist_item .product-thumbnail {
    grid-column: 1 / -1;
    justify-self: center;
    margin: 10px 0;
  }
  .tinv-wishlist .wishlist_item .product-thumbnail img {
    width: 96px;
    height: 96px;
    border-radius: 12px;
    object-fit: cover;
  }
}
@media (max-width: 640px) {
  /* Use grid for wishlist rows */
  .tinv-wishlist .wishlist_item {
    display: grid;
    grid-template-columns: 90px 1fr; /* left: image, right: text */
    grid-template-rows: auto auto auto auto;
    gap: 6px 12px;
    align-items: center;
    padding: 14px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
    background: #11151c;
  }

  /* Checkbox top-left, close top-right */
  .tinv-wishlist .wishlist_item .product-cb {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }
  .tinv-wishlist .wishlist_item .product-remove {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
  }

  /* Thumbnail left */
  .tinv-wishlist .wishlist_item .product-thumbnail {
    grid-column: 1;
    grid-row: 2 / span 3;
  }
  .tinv-wishlist .wishlist_item .product-thumbnail img {
    width: 72px;
    height: 72px;
    border-radius: 10px;
    object-fit: cover;
  }

  /* Texts stacked right of thumbnail */
  .tinv-wishlist .wishlist_item .product-name {
    grid-column: 2;
    grid-row: 2;
    font-weight: 600;
    font-size: 0.95rem;
    margin: 0;
  }
  .tinv-wishlist .wishlist_item .product-price {
    grid-column: 2;
    grid-row: 3;
    font-size: 0.9rem;
    color: #e9eef6;
    font-weight: 600;
  }
  .tinv-wishlist .wishlist_item .product-date {
    grid-column: 2;
    grid-row: 4;
    font-size: 0.8rem;
    color: #9ca3af;
  }
  .tinv-wishlist .wishlist_item .product-stock {
    grid-column: 2;
    grid-row: 5;
    font-size: 0.85rem;
    font-weight: 600;
    color: #22c55e;
  }

  /* Add to cart full width bottom */
  .tinv-wishlist .wishlist_item .product-action {
    grid-column: 1 / -1;
    grid-row: 6;
    margin-top: 10px;
    text-align: center;
  }
  .tinv-wishlist .wishlist_item .product-action .button {
    width: 100%;
    background: #0d6efd;
    border-radius: 8px;
    color: #fff;
    font-weight: 600;
  }
}
@media (max-width: 640px) {
  /* Use grid for wishlist rows */
  .tinv-wishlist .wishlist_item {
    display: grid;
    grid-template-columns: 90px 1fr; /* left: image, right: text */
    grid-template-rows: auto auto auto auto;
    gap: 6px 12px;
    align-items: center;
    padding: 14px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
    background: #11151c;
  }

  /* Checkbox top-left, close top-right */
  .tinv-wishlist .wishlist_item .product-cb {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }
  .tinv-wishlist .wishlist_item .product-remove {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
  }

  /* Thumbnail left */
  .tinv-wishlist .wishlist_item .product-thumbnail {
    grid-column: 1;
    grid-row: 2 / span 3;
  }
  .tinv-wishlist .wishlist_item .product-thumbnail img {
    width: 72px;
    height: 72px;
    border-radius: 10px;
    object-fit: cover;
  }

  /* Texts stacked right of thumbnail */
  .tinv-wishlist .wishlist_item .product-name {
    grid-column: 2;
    grid-row: 2;
    font-weight: 600;
    font-size: 0.95rem;
    margin: 0;
  }
  .tinv-wishlist .wishlist_item .product-price {
    grid-column: 2;
    grid-row: 3;
    font-size: 0.9rem;
    color: #e9eef6;
    font-weight: 600;
  }
  .tinv-wishlist .wishlist_item .product-date {
    grid-column: 2;
    grid-row: 4;
    font-size: 0.8rem;
    color: #9ca3af;
  }
  .tinv-wishlist .wishlist_item .product-stock {
    grid-column: 2;
    grid-row: 5;
    font-size: 0.85rem;
    font-weight: 600;
    color: #22c55e;
  }

  /* Add to cart full width bottom */
  .tinv-wishlist .wishlist_item .product-action {
    grid-column: 1 / -1;
    grid-row: 6;
    margin-top: 10px;
    text-align: center;
  }
  .tinv-wishlist .wishlist_item .product-action .button {
    width: 100%;
    background: #0d6efd;
    border-radius: 8px;
    color: #fff;
    font-weight: 600;
  }
}
@media (max-width: 640px) {
  .tinv-wishlist .wishlist_item {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    padding: 14px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
    background: #11151c;
    margin-bottom: 16px;
    position: relative;
  }

  /* Checkbox */
  .tinv-wishlist .wishlist_item .product-cb {
    position: absolute;
    top: 10px;
    left: 10px;
  }

  /* Remove (X) button */
  .tinv-wishlist .wishlist_item .product-remove {
    position: absolute;
    top: 10px;
    right: 10px;
  }

  /* Image fixed on left side */
  .tinv-wishlist .wishlist_item .product-thumbnail {
    flex: 0 0 35%;
    margin-right: 14px;
  }
  .tinv-wishlist .wishlist_item .product-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
  }

  /* Text column */
  .tinv-wishlist .wishlist_item .product-name,
  .tinv-wishlist .wishlist_item .product-price,
  .tinv-wishlist .wishlist_item .product-date,
  .tinv-wishlist .wishlist_item .product-stock {
    display: block;
    margin: 3px 0;
  }

  .tinv-wishlist .wishlist_item .product-name {
    font-weight: 600;
    font-size: 1rem;
    margin-top: 5px;
  }

  .tinv-wishlist .wishlist_item .product-price {
    font-size: 0.95rem;
    font-weight: 600;
  }

  .tinv-wishlist .wishlist_item .product-date {
    font-size: 0.8rem;
    color: #9ca3af;
  }

  .tinv-wishlist .wishlist_item .product-stock {
    font-size: 0.9rem;
    font-weight: 600;
    color: #22c55e;
  }

  /* Add to Cart button under texts */
  .tinv-wishlist .wishlist_item .product-action {
    margin-top: 8px;
  }
  .tinv-wishlist .wishlist_item .product-action .button {
    width: 100%;
    background: #0d6efd;
    border-radius: 8px;
    color: #fff;
    font-weight: 600;
    text-align: center;
  }
}

/* --- TI Wishlist: mobile cleanup (no overlap) --- */
@media (max-width: 640px) {

  /* Card container */
  .tinv-wishlist .wishlist_item {
    position: relative;
    display: grid;
    grid-template-columns: 92px 1fr; /* thumb | content */
    gap: 14px;
    align-items: start;
    padding: 14px;
    border-radius: 12px;
    background: #11151c;
    border: 1px solid rgba(255,255,255,.08);
    margin-bottom: 16px;
  }

  /* Checkbox top-left */
  .tinv-wishlist .wishlist_item .product-cb {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
  }

  /* Close (X) fixed top-right — never overlaps text */
  .tinv-wishlist .wishlist_item .product-remove {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 3;
  }
  .tinv-wishlist .wishlist_item .product-remove button {
    width: 32px;
    height: 32px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: #1a1f27;
    border: 1px solid rgba(255,255,255,.12);
  }

  /* Thumbnail column */
  .tinv-wishlist .wishlist_item .product-thumbnail {
    grid-column: 1 / 2;
  }
  .tinv-wishlist .wishlist_item .product-thumbnail img {
    width: 100%;
    height: 100%;
    min-height: 78px;
    object-fit: cover;
    border-radius: 10px;
    display: block;
  }

  /* Content column */
  .tinv-wishlist .wishlist_item .product-name,
  .tinv-wishlist .wishlist_item .product-price,
  .tinv-wishlist .wishlist_item .product-date,
  .tinv-wishlist .wishlist_item .product-stock,
  .tinv-wishlist .wishlist_item .product-action {
    grid-column: 2 / 3;
  }

  /* Title gets right padding so it never collides with the X */
  .tinv-wishlist .wishlist_item .product-name {
    font-weight: 700;
    font-size: 1rem;
    margin: 0 0 4px;
    padding-right: 48px; /* keep clear of the close button */
  }

  .tinv-wishlist .wishlist_item .product-price {
    font-weight: 600;
    margin: 0 0 2px;
  }

  .tinv-wishlist .wishlist_item .product-date {
    color: #9ca3af;
    font-size: .9rem;
    margin: 0 0 6px;
  }

  .tinv-wishlist .wishlist_item .product-stock {
    color: #22c55e;
    font-weight: 700;
    margin: 0 0 10px;
  }

  /* CTA full width under content (right column) */
  .tinv-wishlist .wishlist_item .product-action .button {
    width: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    background: #0d6efd;
    color: #fff;
    border-radius: 10px;
    padding: 12px 14px;
  }
  .tinv-wishlist .wishlist_item .product-action .button:hover {
    background: #2a7ffd;
  }
}
.modal__dialog {
    z-index:10000;
}
/* TI Wishlist – strict mobile layout using your classes */
@media (max-width: 768px){
    .modal__dialog{
        width:100% !important;
    }
html.light-mode .modal__actions button{
    margin-top:20px;
    font-size:18px;
}
.check,.pill{
    padding:5px!important;
}
  /* hide table chrome */
  .tinvwl-table-manage-list thead,
  .tinvwl-table-manage-list tfoot { display:none !important; }

  /* make each row a card */
  .tinvwl-table-manage-list tr.wishlist_item{
    display:grid !important;
    grid-template-columns: 150px 1fr;      /* image | content */
    grid-auto-rows: auto;
    gap:12px;
    padding:12px;                          /* internal spacing */
    margin:14px 0;
    position:relative;
    background:var(--card,#121318);
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    overflow:hidden;
    align-items:stretch;                    /* image = text height */
  }

  /* reset all TDs so they behave like grid items */
  .tinvwl-table-manage-list td{
    border:0 !important;
    padding:0 !important;
    margin:0 !important;
    background:none !important;
  }

  /* 1) IMAGE — bigger, with left margin, full height */
  .tinvwl-table-manage-list .product-thumbnail{
    grid-column:1 !important;
    grid-row:1 / span 10 !important;       /* span full card height */
    align-self:stretch !important;
    margin-left:6px !important;            /* margin from left border */
  }
  .tinvwl-table-manage-list .product-thumbnail a,
  .tinvwl-table-manage-list .product-thumbnail img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:12px !important;
  }

  /* 2) TEXT — everything on the right, stacked */
  .tinvwl-table-manage-list .product-name,
  .tinvwl-table-manage-list .product-price,
  .tinvwl-table-manage-list .product-date,
  .tinvwl-table-manage-list .product-stock{
    grid-column:2 !important;
  }

  .tinvwl-table-manage-list .product-name{
    padding-right:42px !important;          /* keep clear of the X */
  }
  .tinvwl-table-manage-list .product-name a{
    display:block !important;
    font-weight:800 !important;
    line-height:1.25 !important;
    color:var(--ink,#fff) !important;
    text-decoration:none !important;
  }
  .tinvwl-table-manage-list .product-price{
    margin-top:6px !important;
    font-weight:800 !important;
    color:var(--ink,#fff) !important;
  }
  .tinvwl-table-manage-list .product-date,
  .tinvwl-table-manage-list .product-stock{
    margin-top:4px !important;
    color:var(--muted,#98a2b3) !important;
  }

  /* CTA full width at bottom */
  .tinvwl-table-manage-list .product-action{
    grid-column:1 / -1 !important;
    padding-top:10px !important;
  }
  .tinvwl-table-manage-list .product-action .button{
    width:100% !important;
    height:46px !important;
    border-radius:14px !important;
  }

  /* 3) CLOSE BUTTON — top-right */
  .tinvwl-table-manage-list .product-remove{
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    z-index:5 !important;
    padding:0 !important;
    margin:0 !important;
  }
  .tinvwl-table-manage-list .product-remove button{
    width:28px !important;
    height:28px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.12) !important;
  }

  /* Optional: checkbox pinned top-left */
  .tinvwl-table-manage-list .product-cb{
    position:absolute !important;
    top:10px !important;
    left:10px !important;
    z-index:5 !important;
  }
}
@media (max-width: 768px){
    .brand__logo{
        height:55px !important;  
    }
  table.tinvwl-table-manage-list tr.wishlist_item { position: relative !important; }

  table.tinvwl-table-manage-list tr.wishlist_item > td.product-remove{
    position: absolute !important;
    inset: 10px 10px auto auto !important; /* top, right */
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    z-index: 5 !important;
    grid-column: auto !important;  /* take it out of the grid flow */
    grid-row: auto !important;
  }

  table.tinvwl-table-manage-list tr.wishlist_item > td.product-remove button{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    transform: none !important;
  }

  /* ensure title never sits under the X */
  table.tinvwl-table-manage-list tr.wishlist_item > td.product-name{
    padding-right: 48px !important;
  }
}
/* === TI Wishlist — single mobile source of truth === */
@media (max-width:768px){
    .additional-info-wrapper{
        position:relative;
    }
  /* hide table chrome */
  .tinvwl-table-manage-list thead,
  .tinvwl-table-manage-list tfoot{display:none !important;}

  /* card container */
  .tinvwl-table-manage-list .wishlist_item{
    position:relative;
    display:grid !important;
    grid-template-columns:150px 1fr;      /* image | content */
    gap:12px;
    padding:12px;
    margin:14px 0;
    background:var(--card,#121318);
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    align-items:stretch;
  }
  /* reset cells */
  .tinvwl-table-manage-list td{border:0 !important;padding:0 !important;background:transparent !important;}

  /* image (left, full height, slight offset from border) */
  .tinvwl-table-manage-list .product-thumbnail{
    grid-column:1; grid-row:1 / span 10; align-self:stretch; margin-left:6px;
  }
  .tinvwl-table-manage-list .product-thumbnail img{
    width:100% !important; height:100% !important; object-fit:cover !important; border-radius:12px;
  }

  /* text stack (right) */
  .tinvwl-table-manage-list .product-name,
  .tinvwl-table-manage-list .product-price,
  .tinvwl-table-manage-list .product-date,
  .tinvwl-table-manage-list .product-stock{ grid-column:2; }
  .tinvwl-table-manage-list .product-name{ padding-right:48px; }
  .tinvwl-table-manage-list .product-name a{ font-weight:800; line-height:1.25; text-decoration:none; color:var(--ink,#fff); }

  /* full-width button at bottom */
  .tinvwl-table-manage-list .product-action{ grid-column:1 / -1; padding-top:10px; }
  .tinvwl-table-manage-list .product-action .button{ width:100%; height:46px; border-radius:14px; }

  /* controls pinned */
  .tinvwl-table-manage-list .product-remove{ position:absolute !important; top:10px; right:10px; z-index:5; }
  .tinvwl-table-manage-list .product-remove button{ width:28px; height:28px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; }
  .tinvwl-table-manage-list .product-cb{ position:absolute !important; top:10px; left:10px; z-index:5; }
}
/* ===== TI Wishlist — final mobile card (no overlaps) ===== */
@media (max-width: 768px){
  .tinv-wishlist .product-thumbnail img{
    max-width: 100% !important;
  }
  .tinv-wishlist .product-name,   .tinv-wishlist .product-price,   .tinv-wishlist .product-date,    .tinv-wishlist .product-stock{
    text-align: left !important;
  }
  /* hide table chrome */
  .tinvwl-table-manage-list thead,
  .tinvwl-table-manage-list tfoot { display: none !important; }

  /* card container */
  .tinvwl-table-manage-list tr.wishlist_item{
    position: relative !important;
    display: grid !important;
    grid-template-columns: 160px 1fr !important;  /* image | content */
    grid-auto-rows: auto !important;
    gap: 12px !important;
    padding: 12px !important;
    margin: 14px 0 !important;
    background: var(--card,#121318) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 16px !important;
    align-items: stretch !important;             /* image matches content height */
    overflow: hidden !important;
  }

  /* neutralize cells */
  .tinvwl-table-manage-list td{
    border: 0 !important; padding: 0 !important; background: transparent !important;
  }

  /* IMAGE — left, full height, slight left margin */
  .tinvwl-table-manage-list td.product-thumbnail{
    grid-column: 1 !important;
    grid-row: 1 / -1 !important;                 /* span all card rows */
    align-self: stretch !important;
    margin-left: 6px !important;
  }
  .tinvwl-table-manage-list td.product-thumbnail img{
    width: 100% !important; height: 100% !important; object-fit: cover !important;
    border-radius: 12px !important; display: block !important;
  }

  /* RIGHT COLUMN — text stack */
  .tinvwl-table-manage-list td.product-name{ grid-column: 2 !important; padding-right: 48px !important; }
  .tinvwl-table-manage-list td.product-name a{
    display: block !important; font-weight: 800 !important; line-height: 1.25 !important;
    text-decoration: none !important; color: var(--ink,#fff) !important;
  }
  .tinvwl-table-manage-list td.product-price,
  .tinvwl-table-manage-list td.product-date,
  .tinvwl-table-manage-list td.product-stock{
    grid-column: 2 !important; margin-top: 6px !important; color: var(--muted,#98a2b3) !important;
  }
  .tinvwl-table-manage-list td.product-price{ color: var(--ink,#fff) !important; font-weight: 800 !important; }

  /* BUTTON — stays in right column only */
  .tinvwl-table-manage-list td.product-action{
    grid-column: 2 !important;                   /* <- key: right column only */
    margin-top: 12px !important;
  }
  .tinvwl-table-manage-list td.product-action .button{
    width: 100% !important; height: 46px !important; border-radius: 14px !important;
  }

  /* X — top-right */
  .tinvwl-table-manage-list td.product-remove{
    position: absolute !important; top: 10px !important; right: 10px !important;
    padding: 0 !important; margin: 0 !important; z-index: 5 !important;
  }
  .tinvwl-table-manage-list td.product-remove button{
    width: 28px !important; height: 28px !important;
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    border-radius: 999px !important; background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
  }

  /* checkbox (optional) */
  .tinvwl-table-manage-list td.product-cb{
    position: absolute !important; top: 10px !important; left: 10px !important; z-index: 5 !important;
  }
}

.card__actions {
  display: flex;
  gap: 10px;
}

.card__actions > * {
  flex: 1; /* make each child take equal width */
}

.card__actions .btn,
.card__actions .card__wishlist button,
.card__actions .card__wishlist a {
  width: 100%;          /* full width inside flex cell */
  justify-content: center;
  display: flex;
}
.card__wishlist{
  padding:0;
}

/* === Reset Checkout Page Layout === */
.woocommerce-checkout {
    width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
}

/* === Full-width Header & Footer === */
header, footer {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
}

/* === Reset Main Container === */
.woocommerce-checkout main.container {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* === Form Rows Responsive === */
.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last {
    width: 100% !important;
    display: block !important;
}

@media (min-width: 640px) {
    .woocommerce-checkout .form-row-first,
    .woocommerce-checkout .form-row-last {
        width: calc(50% - 10px) !important;
        display: inline-block !important;
        vertical-align: top !important;
    }
}

/* === Order Review Box === */
.woocommerce-checkout #order_review {
    flex: 0 0 35% !important;
    max-width: 400px !important;
    background: #0d1117 !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 12px !important;
    padding: 20px !important;
    position: sticky !important;
    top: 100px !important;
}
.woocommerce-checkout #customer_details{
  display: flex;
  flex-direction: column;
}
/* === Mobile Adjustments === */
@media (max-width: 900px) {
    .woocommerce-checkout #customer_details {
        flex-direction: column !important;
    }
    .woocommerce-checkout #order_review {
        position: static !important;
        margin-top: 20px !important;
        max-width: 100% !important;
    }
}
/* ========================= TRADITIONAL CHECKOUT STYLING ========================= */

/* --- Layout: form | order summary --- */
.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: 1.6fr 1fr; /* left form | right summary */
  gap: 28px;
  max-width: 1160px;
  margin: 0 auto;
}

@media (max-width: 900px) {
  .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr; /* stack on mobile */
  }
}

/* --- Section headers --- */
.woocommerce-checkout h3 {
  font-size: 1.2rem;
  font-weight: 800;
  margin-bottom: 6px;
  color: #cfd6df;
}

/* --- Labels --- */
.woocommerce-checkout .form-row label {
  font-size: .9rem;
  font-weight: 600;
  color: #cfd6df;
}

/* --- Inputs / selects / textarea --- */
.woocommerce-checkout input,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
  width: 100%;
  background: #0f131a;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 10px;
  padding: 12px 14px;
  color: #eaf0f7;
  font-size: .95rem;
  transition: border-color .2s ease, background .2s ease;
}

.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  outline: none;
  border-color: #F4971E;
  background: #121822;
}

/* --- Two-column fields (First/Last, City/State, etc.) --- */
.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last {
  width: 100%;
}
@media (min-width: 640px) {
  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last {
    width: calc(50% - 8px);
    display: inline-block;
  }
}

/* --- Order summary box --- */
.woocommerce-checkout #order_review {
  background: #0d1117;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  padding: 16px;
  position: sticky;
  top: 80px;
}

.woocommerce-checkout #order_review_heading {
  font-size: 1.05rem;
  font-weight: 700;
  margin-bottom: 10px;
  color: #cfd6df;
}

/* Order review table */
.woocommerce-checkout #order_review table.shop_table {
  width: 100%;
  border-collapse: collapse;
}
.woocommerce-checkout #order_review table.shop_table th,
.woocommerce-checkout #order_review table.shop_table td {
  padding: 10px 0;
  border-bottom: 1px solid rgba(255,255,255,.06);
  color: #eaf0f7;
}
.woocommerce-checkout #order_review table.shop_table th {
  font-weight: 700;
  font-size: .95rem;
}
.woocommerce-checkout #order_review table.shop_table tfoot td {
  font-weight: 800;
  font-size: 1.05rem;
}

/* --- Place order button --- */
.woocommerce-checkout #place_order {
  display: inline-flex;
  justify-content: center;
  width: 100%;
  height: 50px;
  border-radius: 14px;
  background: linear-gradient(180deg,#F4971E,#1f7ed1);
  color: #06111d;
  font-weight: 800;
  font-size: 1rem;
  transition: filter .15s ease, transform .06s ease;
}
.woocommerce-checkout #place_order:hover {
  filter: brightness(1.06);
}
.woocommerce-checkout #place_order:active {
  transform: translateY(1px);
}

/* --- Mobile adjustments --- */
@media (max-width: 640px) {
  .woocommerce-checkout form.checkout {
    gap: 18px;
  }
  .woocommerce-checkout #order_review {
    position: static;
    padding: 14px;
  }
}


/* Make whole checkout form grid */
.woocommerce-checkout form.checkout {
  display: flex;
  flex-wrap: wrap;
  max-width: 1180px;
  margin: 0 auto;
  gap: 32px;
}

/* Left: customer details */
#customer_details {
  flex: 1 1 60%;
  min-width: 0;
}

/* Right: order review (heading + box) */
#order_review_heading,
#order_review {
  flex: 1 1 35%;
  min-width: 280px;
}

/* Stick the whole order summary */
#order_review {
  position: sticky;
  top: 80px;
}

/* Mobile: stack */
@media (max-width: 900px) {
  .woocommerce-checkout form.checkout {
    flex-direction: column;
  }
  #order_review_heading,
  #order_review {
    flex: 1 1 100%;
    position: static;
  }
}

/* Main checkout container */
.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: 1.6fr 1fr; /* left = customer_details | right = order summary */
  gap: 32px;
  max-width: 1180px;
  margin: 0 auto;
  align-items: flex-start;
}

/* Left side */
#customer_details {
  grid-column: 1;
}

/* Right side (our new wrapper) */
.checkout-right-column {
  grid-column: 2;
  position: sticky;
  top: 80px; /* adjust depending on header */
  align-self: start;
}

/* Mobile fallback */
@media (max-width: 900px) {
  .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr;
  }
  .checkout-right-column {
    grid-column: 1;
    position: static;
    margin-top: 20px;
  }
}

.checkout-grid {
    display: grid;
    grid-template-columns: 2fr 1fr; /* left wider, right smaller */
    gap: 30px;
    align-items: start;
}

.checkout-left {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.checkout-right {
    position: sticky;
    top: 20px;
    height: fit-content;
}
/* Make all traditional checkout inputs full width */
.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
    width: 100% !important;
    height: 48px !important;
    border-radius: 12px !important;
    background: # !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    color: #eaf0f7 !important;
    padding: 12px 14px !important;
    transition: border-color .15s ease, box-shadow .15s ease;
}

/* Focus state */
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
    outline: none !important;
    border-color: #F4971E !important;
    box-shadow: 0 0 0 3px rgba(46,163,255,.18) !important;
}

/* Optional: make select dropdown container match the input style */
.woocommerce-checkout select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;charset=US-ASCII,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12'><polygon points='0,0 12,0 6,6' fill='%23eaf0f7'/></svg>");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 12px 12px;
}
.woocommerce-checkout #place_order {
    display: flex;
    justify-content: center;  /* horizontal center */
    align-items: center;      /* vertical center */
    width: 100%;
    height: 50px;
    border-radius: 14px;
    background: linear-gradient(180deg, #F4971E, #1f7ed1);
    color: #06111d;
    font-weight: 800;
    font-size: 1rem;
    transition: filter .15s ease, transform .06s ease;
    cursor: pointer;
    border: none;
}

/* Mobile checkout layout */
@media (max-width: 768px) {
    .checkout-grid {
        display: flex;
        flex-direction: column; /* stack vertically */
        gap: 20px; /* optional spacing between left/right columns */
    }

    .checkout-left,
    .checkout-right {
        width: 100%; /* full width */
        order: unset; /* keep natural order if needed */
    }

    /* Optional: add spacing inside columns */
    .checkout-left {
        margin-bottom: 20px;
    }
    .footer__links h4, .footer__newsletter h4, .footer__text{
        font-size:12px !important;
    }
    .footer__brand{
        flex-direction:column;
        align-items:center;
        justify-content:center;
    }
}

/* Hide WooCommerce default icon bubble */
.tinv-wishlist .woocommerce-info::before {
  display: none !important;
}

/* Center everything nicely */
.tinv-wishlist .woocommerce-info {
  text-align: center;
  font-size: 18px;
  font-weight: 600;
  color: #06111d;
  margin-top: 30px;
}

/* Center the return section */
.tinv-wishlist .return-to-shop {
  text-align: center;
  margin-top: 25px;
}

/* Match WooCommerce gradient button style */
.tinv-wishlist .return-to-shop .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 0 18px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: linear-gradient(180deg, #F4971E, #1f7ed1);
  color: #06111d !important;
  font-weight: 700;
  text-decoration: none;
  transition: filter 0.2s ease;
}

.tinv-wishlist .return-to-shop .button:hover {
  filter: brightness(1.06);
}

.yith-wcwl-feedback-messages-container{
    display:none;
}
/* ===== YITH Wishlist — Dark Card Layout ===== */

.yith-wcwl-form .wishlist-title-container h2 {
  font-size: 28px;
  font-weight: 800;
  margin: 10px 0 20px;
  color: #eaf0f7;
}

/* Table becomes a card container */
.yith-wcwl-form .wishlist_table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #11151c;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  overflow: hidden;
}

/* Hide plugin header row – we'll present rows as cards */
.yith-wcwl-form .wishlist_table thead { 
  display: none !important; 
}

/* Each row as a grid "card" */
.yith-wcwl-form .wishlist_table tbody tr {
  display: grid;
  grid-template-columns: 40px 84px 1fr 120px 150px 160px; /* remove | thumb | name | price | stock | actions */
  align-items: center;
  gap: 14px;
  padding: 16px;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.yith-wcwl-form .wishlist_table tbody tr:last-child { 
  border-bottom: 0; 
}

/* Remove button */
.yith-wcwl-form td.product-remove a.remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: #1a1f2a;
  border: 1px solid rgba(255,255,255,.1);
  color: #94a3b8;
  text-decoration: none;
  font-size: 18px;
  transition: .15s;
}
.yith-wcwl-form td.product-remove a.remove:hover { 
  color: #e2e8f0; 
  background: #2a3142;
}

/* Thumbnail */
.yith-wcwl-form td.product-thumbnail img {
  width: 84px;
  height: 84px;
  border-radius: 12px;
  object-fit: cover;
  display: block;
  box-shadow: 0 4px 16px rgba(0,0,0,.35);
}

/* Name */
.yith-wcwl-form td.product-name a {
  color: #eaf0f7;
  font-weight: 700;
  text-decoration: none;
}
.yith-wcwl-form td.product-name a:hover { 
  opacity: .9; 
}

/* Price */
.yith-wcwl-form td.product-price { 
  color: #cbd5e1;
  font-weight: 700; 
}

/* Stock status */
.yith-wcwl-form td.product-stock-status .wishlist-in-stock {
  display: flex;
  gap: 8px;
  align-items: center;
  color: #a3e635;
  font-weight: 700;
}

/* Add to Cart button */
.yith-wcwl-form td.product-add-to-cart .add_to_cart_button {
  background: #F4971E !important;
  color: #0b1220 !important;
  border: none !important;
  padding: 10px 18px !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  box-shadow: 0 6px 18px rgba(46,163,255,.25) !important;
  transition: transform .15s ease, box-shadow .15s ease !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.yith-wcwl-form td.product-add-to-cart .add_to_cart_button:hover {
  background: #1a8fe0 !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(46,163,255,.35) !important;
}

.yith-wcwl-form td.product-add-to-cart .add_to_cart_button:active {
  transform: translateY(0);
  box-shadow: 0 4px 12px rgba(46,163,255,.25) !important;
}

/* Make sure action cell is at the end (right) */
.yith-wcwl-form td.product-add-to-cart {
  grid-column: -2 / -1;
  display: flex;
  justify-content: flex-end;
}

/* Footer area */
.yith_wcwl_wishlist_footer {
    display:none !important;
}

/* Bulk actions */
.yith-wcwl-form .yith_wcwl_wishlist_footer .wishlist-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.yith-wcwl-form select {
  background: #0f131a;
  color: #eaf0f7;
  border: 1px solid rgba(255,255,255,.14);
  padding: 10px 12px;
  border-radius: 12px;
  min-width: 160px;
}

.yith-wcwl-form .wishlist-actions .button {
  background: #232a3b;
  color: #eaf0f7;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  padding: 10px 14px;
  font-weight: 700;
}

.yith-wcwl-form .wishlist-actions .button:hover {
  opacity: .92;
}

/* ===========================
   YITH Wishlist – MOBILE ONLY
   (keeps desktop unchanged)
   =========================== */
@media (max-width: 640px) {
  /* Kill table chrome and overflow that cause horizontal scroll */
  .yith-wcwl-form .wishlist_table {
    width: 100% !important;
    table-layout: fixed;
    border: 0;
    padding:10px;
  }
  .wishlist_table.mobile li .item-wrapper{
      display:flex !important;
      width:100% !important;
  }
  .wishlist_table.mobile li .item-wrapper .product-thumbnail{
      max-width:100% !important;
  }
  .yith-wcwl-form .wishlist_table .product-thumbnail img{
      width:120px !important;
      height:120px !important;
  }
  .yith-wcwl-form .wishlist_table thead,
  .yith-wcwl-form .yith_wcwl_wishlist_footer {
    display: none !important;
  }
  
  .yith-wcwl-form .wishlist_table tr,
  .yith-wcwl-form .wishlist_table td,
  .yith-wcwl-form .wishlist_table th {
    overflow: visible;
    border: 0;
  }

  /* Each wishlist row becomes a clean card (no double borders) */
  .yith-wcwl-form .wishlist_table .wishlist_item {
    display: grid !important;
    grid-template-columns: 92px 1fr; /* thumb | content */
    gap: 14px;
    align-items: start;
    padding: 14px;
    border-radius: 12px;
    background: #11151c;
    border: 1px solid rgba(255,255,255,.08);
    margin-bottom: 16px;
    position: relative;
  }
  
  .yith-wcwl-form .wishlist_table .wishlist_item > td {
    display: block;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
  }

  /* Checkbox top-left */
  .yith-wcwl-form .wishlist_item .product-cb {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
  }

  /* Close (X) fixed top-right — never overlaps text */
  .yith-wcwl-form .wishlist_item .product-remove {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 3;
  }
  
  .yith-wcwl-form .wishlist_item .product-remove a.remove {
    width: 32px;
    height: 32px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: #1a1f27;
    border: 1px solid rgba(255,255,255,.12);
  }

  /* Thumbnail column */
  .yith-wcwl-form .wishlist_item .product-thumbnail {
    grid-column: 1 / 2;
  }
  
  .yith-wcwl-form .wishlist_item .product-thumbnail img {
    width: 100%;
    height: 100%;
    min-height: 78px;
    object-fit: cover;
    border-radius: 10px;
    display: block;
  }

  /* Content column */
  .yith-wcwl-form .wishlist_item .product-name,
  .yith-wcwl-form .wishlist_item .product-price,
  .yith-wcwl-form .wishlist_item .product-stock-status,
  .yith-wcwl-form .wishlist_item .product-add-to-cart {
    grid-column: 2 / 3;
  }

  /* Title gets right padding so it never collides with the X */
  .yith-wcwl-form .wishlist_item .product-name {
    font-weight: 700;
    font-size: 1rem;
    margin: 0 0 4px;
    padding-right: 48px; /* keep clear of the close button */
  }

  .yith-wcwl-form .wishlist_item .product-name a {
    color: #eaf0f7;
    text-decoration: none;
  }

  .yith-wcwl-form .wishlist_item .product-price {
    font-weight: 600;
    margin: 0 0 2px;
    color: #cbd5e1;
  }

  .yith-wcwl-form .wishlist_item .product-stock-status {
    color: #22c55e;
    font-weight: 700;
    margin: 0 0 10px;
  }

  /* CTA full width under content (right column) */
  .yith-wcwl-form .wishlist_item .product-add-to-cart {
    margin-top: 0;
  }
  
  .yith-wcwl-form .wishlist_item .product-add-to-cart .add_to_cart_button {
    width: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    background: #0d6efd !important;
    color: #fff !important;
    border-radius: 10px;
    padding: 12px 14px;
  }
  
  .yith-wcwl-form .wishlist_item .product-add-to-cart .add_to_cart_button:hover {
    background: #2a7ffd !important;
  }
}

/* YITH Wishlist – strict mobile layout */
@media (max-width: 768px){
  /* hide table chrome */
  .yith-wcwl-form .wishlist_table thead,
  .yith-wcwl-form .yith_wcwl_wishlist_footer { 
    display: none !important; 
  }

  /* make each row a card */
  .yith-wcwl-form .wishlist_table tr.wishlist_item {
    display: grid !important;
    grid-template-columns: 150px 1fr;      /* image | content */
    grid-auto-rows: auto;
    gap: 12px;
    padding: 12px;                         /* internal spacing */
    margin: 14px 0;
    position: relative;
    background: #121318;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    overflow: hidden;
    align-items: stretch;                   /* image = text height */
  }

  /* reset all TDs so they behave like grid items */
  .yith-wcwl-form .wishlist_table td {
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
  }

  /* 1) IMAGE — bigger, with left margin, full height */
  .yith-wcwl-form .wishlist_table .product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / span 10 !important;       /* span full card height */
    align-self: stretch !important;
    margin-left: 6px !important;            /* margin from left border */
  }
  
  .yith-wcwl-form .wishlist_table .product-thumbnail a,
  .yith-wcwl-form .wishlist_table .product-thumbnail img {
    object-fit: cover !important;
    border-radius: 12px !important;
    display:block;
    width:120px !important;
    height:120px !important;
  }
    .wishlist_table.mobile li table.additional-info{
        display:none;
    }
  /* 2) TEXT — everything on the right, stacked */
  .yith-wcwl-form .wishlist_table .product-name,
  .yith-wcwl-form .wishlist_table .product-price,
  .yith-wcwl-form .wishlist_table .product-stock-status {
    grid-column: 2 !important;
  }

  .yith-wcwl-form .wishlist_table .product-name {
    padding-right: 42px !important;         /* keep clear of the X */
  }
  
  .yith-wcwl-form .wishlist_table .product-name a {
    display: block !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    color: #fff !important;
    text-decoration: none !important;
  }
  
  .yith-wcwl-form .wishlist_table .product-price {
    margin-top: 6px !important;
    font-weight: 800 !important;
    color: #fff !important;
  }
  
  .yith-wcwl-form .wishlist_table .product-stock-status {
    margin-top: 4px !important;
    color: #98a2b3 !important;
  }

  .yith-wcwl-form .wishlist_table .product-stock-status .wishlist-in-stock {
    color: #a3e635 !important;
  }

  /* CTA full width at bottom */
  .yith-wcwl-form .wishlist_table .product-add-to-cart {
    grid-column: 1 / -1 !important;
    padding-top: 10px !important;
  }
  
  .yith-wcwl-form .wishlist_table .product-add-to-cart .add_to_cart_button {
    width: 100% !important;
    height: 46px !important;
    border-radius: 14px !important;
  }

  /* 3) CLOSE BUTTON — top-right */
  .yith-wcwl-form .wishlist_table .product-remove {
    position: absolute !important;
    top: -125px !important;
    right: 10px !important;
    z-index: 5 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .fa.fa-trash{
      color:red;
  }
  .wishlist-title-container .show-title-form{
      display:none !important;
  }
  .woocommerce .wishlist-title{
      margin-bottom:0;
  }
  .yith-wcwl-form .wishlist_table .product-remove a.remove {
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
  }
}

/* Final mobile card layout */
@media (max-width: 768px){
  .yith-wcwl-form .wishlist_table tr.wishlist_item {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 160px 1fr !important;  /* image | content */
    grid-auto-rows: auto !important;
    gap: 12px !important;
    padding: 12px !important;
    margin: 14px 0 !important;
    background: #121318 !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 16px !important;
    align-items: stretch !important;             /* image matches content height */
    overflow: hidden !important;
  }

  /* neutralize cells */
  .yith-wcwl-form .wishlist_table td {
    border: 0 !important; 
    padding: 0 !important; 
    background: transparent !important;
  }

  /* IMAGE — left, full height, slight left margin */
  .yith-wcwl-form .wishlist_table td.product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / -1 !important;                 /* span all card rows */
    align-self: stretch !important;
    margin-left: 6px !important;
  }
  
  .yith-wcwl-form .wishlist_table td.product-thumbnail img {
    width: 100% !important; 
    height: 100% !important; 
    object-fit: cover !important;
    border-radius: 12px !important; 
    display: block !important;
  }

  /* RIGHT COLUMN — text stack */
  .yith-wcwl-form .wishlist_table td.product-name { 
    grid-column: 2 !important; 
    padding-right: 48px !important; 
  }
  
  .yith-wcwl-form .wishlist_table td.product-name a {
    display: block !important; 
    font-weight: 800 !important; 
    line-height: 1.25 !important;
    text-decoration: none !important; 
    color: #fff !important;
  }
  
  .yith-wcwl-form .wishlist_table td.product-price,
  .yith-wcwl-form .wishlist_table td.product-stock-status {
    grid-column: 2 !important; 
    margin-top: 6px !important; 
    color: #98a2b3 !important;
  }
  
  .yith-wcwl-form .wishlist_table td.product-price { 
    color: #fff !important; 
    font-weight: 800 !important; 
  }

  /* BUTTON — stays in right column only */
  .yith-wcwl-form .wishlist_table td.product-add-to-cart {
    grid-column: 2 !important;                   /* <- key: right column only */
    margin-top: 12px !important;
  }
  
  .yith-wcwl-form .wishlist_table td.product-add-to-cart .add_to_cart_button {
    width: 100% !important; 
    height: 46px !important; 
    border-radius: 14px !important;
  }

  /* X — top-right */
  .yith-wcwl-form .wishlist_table td.product-remove {
    position: absolute !important; 
    top: 10px !important; 
    right: 10px !important;
    padding: 0 !important; 
    margin: 0 !important; 
    z-index: 5 !important;
  }
  
  .yith-wcwl-form .wishlist_table td.product-remove a.remove {
    width: 28px !important; 
    height: 28px !important;
    display: inline-flex !important; 
    align-items: center !important; 
    justify-content: center !important;
    border-radius: 999px !important; 
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
  }
}

/* Empty wishlist message */
.yith-wcwl-form .wishlist-empty {
  text-align: center;
  font-size: 18px;
  font-weight: 600;
  color: #06111d;
  margin-top: 30px;
}

.yith-wcwl-form .return-to-shop {
  text-align: center;
  margin-top: 25px;
}

.yith-wcwl-form .return-to-shop .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 0 18px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: linear-gradient(180deg, #F4971E, #1f7ed1);
  color: #06111d !important;
  font-weight: 700;
  text-decoration: none;
  transition: filter 0.2s ease;
}

.yith-wcwl-form .return-to-shop .button:hover {
  filter: brightness(1.06);
}
.woocommerce table.shop_table.wishlist_table tr td{
    background:none;
    border:none;
}

.wishlist-items-wrapper .product-price{
    color:white !important;
}

table.wishlist_table.shop_table .product-remove>div{
    display:block !important;
}

.wishlist-items-wrapper .product-thumbnail{
    padding:0 !important;
}
@media (max-width: 768px) {
  /* Full-width Add to Cart button for YITH Wishlist mobile */
  .wishlist_table.mobile li .additional-info-wrapper .product-add-to-cart a.add_to_cart_button {
    display: block;          /* make button full width */
    width: 100%;             /* take full container width */
    text-align: center;      /* center the text */
    padding: 12px 0;         /* vertical padding */
    font-size: 16px;         /* readable on mobile */
    font-weight: bold;
    color: black;             /* text color */
    background-color: #F4971E; /* primary button color */
    border: none;
    border-radius: 8px;      /* rounded corners */
    text-decoration: none;
    transition: background-color 0.3s ease;
    margin-top: 8px;      
    margin-bottom:16px;
  }

  .wishlist_table.mobile li .additional-info-wrapper .product-add-to-cart a.add_to_cart_button:hover {
    background-color: #F4971E; /* hover effect */
  }
  .wishlist_table.mobile li{
      margin-bottom:18px;
  }
}
.yith-wcwl-form .wishlist-empty{
    color:white !important;
}

.yith-wcwl-form .wishlist_table tbody tr:has(td.product-name) {
    display: grid;
    grid-template-columns: 40px 84px 1fr 120px 150px 160px;
    align-items: center;
    gap: 14px;
    padding: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .06);
}

/* Remove grid for empty state */
.yith-wcwl-form .wishlist_table tbody tr:not(:has(td.product-name)) {
    display: table-row;
    grid-template-columns: none;
    padding: 0;
}

.wp-block-woocommerce-cart-order-summary-coupon-form-block{
    display:none;
}

/* Container styling */
.mobile-nav__diseases {
    margin-top: 20px;
    padding-top: 10px;
    border-top: 1px solid rgba(255,255,255,0.1);
}

/* Section title */
.mobile-nav__diseases h4 {
    margin: 0 0 10px;
    font-size: 1rem;
    font-weight: 600;
    color: #ffffff;
}

/* List items */
.mobile-nav__disease-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mobile-nav__disease-list li {
    margin-bottom: 8px;
}

.mobile-nav__disease-list li a {
    display: block;
    padding: 8px 12px;
    color: #ffffff;
    text-decoration: none;
    border-radius: 6px;
    transition: background 0.15s ease, color 0.15s ease;
}

.mobile-nav__disease-list li a:hover {
    background: #F4971E;
    color: #fff;
}.mobile-sidebar {
  position: fixed;
  top: 0;
  left: 0;
  width: 280px;
  height: 100%;
  background: #fff;
  box-shadow: 2px 0 10px rgba(0,0,0,0.2);
  transform: translateX(-100%);
  transition: transform 0.3s ease;
  z-index: 9999;
  overflow-y: auto;
  padding: 1rem;
}

body.nav-open .mobile-sidebar {
  transform: translateX(0);
}

.mobile-sidebar__brand {
  margin-bottom: 1.5rem;
}

.mobile-sidebar__diseases ul {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem 0;
}

.mobile-sidebar__diseases li {
  margin-bottom: 0.75rem;
}

.mobile-sidebar__cta a {
  display: inline-block;
  padding: 0.5rem 1rem;
  background: #0073aa;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
}

.site-topbar .topbar__actions .topbar__wish{
        position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .1);
    text-decoration: none;
    color: var(--ink);
    padding:8px 8px;
}

article.card{
    background:#17181d;border-radius:18px;overflow:hidden;outline:1px solid #23262e;
}

html.light-mode article.card{
    background:#F7F3EE;
    outline:1px solid #376E25;
}

html.light-mode article .open-customize{
    background: #F4971E;
    color: white;
    box-shadow: 0 6px 20px rgba(31, 77, 56, 0.35);
}
html.light-mode .modal__close, html.light-mode .modal__actions button{
    background: #F4971E;
    box-shadow:none;
    color:black;
}
.pill input,.check input {
    accent-color:#bd7a00;
}
html.light-mode .modal__actions{
    background: transparent;
}
html.light-mode #customizeModal .modal__dialog, html.light-mode .modal__dialog{
    background:#F7F3EE !important;
}
html.light-mode .modal__img-wrapper , html.light-mode .pill, html.light-mode .check, html.light-mode{
    background:#F4971E;
}
.mobile-disease-page .modal__img{
    height: 200px;
    max-width: none;
    width: 100%;
    object-fit: cover;
}
html.light-mode .mobile-card{
    color:black;
    background:#F7F3EE;
    outline: 1px solid #376E25;
}
.mobile-card-title{
    font-weight:bold;
}
html.light-mode .mobile-card-ingredients{
    color:black;
}
.mobile-card-price{
    color:#F4971E !important;
}
#createaccount{
    display:none;
}
html.light-mode .woocommerce form .form-row .input-text{
    background: #F7F3EE !important;
    border: 1px solid green !important;
    color: black !important;
}

html.light-mode .woocommerce-form-login input{
       background: #F7F3EE !important;
    border: 1px solid green !important;
    color: black !important;
}
html.light-mode .woocommerce-form.login .btn-register-inline{
    color:black !important;
}
.woocommerce-form-login button, .login-extra-actions .btn-register-inline{
   background: #F4971E !important;
    box-shadow:none !important;
    color:black !important;
    border:none !important;
}
html.light-mode .register input.input-text{
        background: #F7F3EE !important;
    border: 1px solid green !important;
    color: black !important;
}
.woocommerce-privacy-policy-link{
    color:#F4971E !important;
}
p.lost_password a{
    color:#F4971E !important;
}

html.light-mode .woocommerce-checkout #order_review{
    background: #F7F3EE !important;
    border: 1px solid green !important;
    color: black !important;
}

html.light-mode #order_review * {
    color:black !important;
}

#place_order{
    background:#F4971E !important;
    color:black !important;
}

.woocommerce-checkout #order_review table.shop_table{
    border:none;
}

html.light-mode .woocommerce-MyAccount-navigation, html.light-mode .woocommerce-MyAccount-content{
    background:#f5f7fa !important;
    color:black !important;
    outline: 1px solid #376E25 !important;
}
html.light-mode .woocommerce-MyAccount-navigation-link a, html.light-mode .woocommerce-MyAccount-content p{
    color:black !important;
}
 html.light-mode .woocommerce-MyAccount-content a{
      color:#F4971E !important;
 }
html.light-mode .woocommerce-MyAccount-navigation .is-active a,html.light-mode .woocommerce-MyAccount-navigation li.is-active a{
    background:rgba(247, 243, 238, 0.9);
   outline: 1px solid #376E25 !important;
}

html.light-mode .wc-block-cart__main table.wc-block-cart-items,html.light-mode .wc-block-cart__sidebar{
    background: #f8f2ea !important;
    border-radius: 20px !important;
        box-shadow: 0 0 25px rgba(31, 77, 56, 0.08) !important;
}

html.light-mode .wc-block-components-quantity-selector:after{
    border:1px solid #376E25 !important;
    border-radius:10px !important;
    top: 1px !important;
    bottom: 1px !important;
    right: 1px !important;
    left: 1px !important;
}
html.light-mode .wc-block-cart__main .wc-block-cart-items td {
    border-top:none !important;
}
html.light-mode .wc-block-cart-item__quantity{
    justify-content:start;
}

.wp-block-button__link.wp-element-button{
    background: #F4971E !important;
    color: black !important;
}

.woocommerce-terms-and-conditions-link{
    color:#F4971E !important;
}
/* 1. Base style for the checkbox (Unchecked) */
.woocommerce form .form-row .input-checkbox {
    appearance: none; 
    -webkit-appearance: none; 
    background-color: white !important;
    border: 2px solid #555; 
    border-radius: 4px;
    width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    outline: none !important;
    position: relative;
    padding: 0 !important;
}

/* 2. Checked State (Orange Background) */
.woocommerce form .form-row .input-checkbox:checked {
    background-color: #fca311 !important; 
    border-color: #fca311 !important;
}

/* 3. The Custom Checkmark (We draw this one) */
.woocommerce form .form-row .input-checkbox:checked::before {
    content: '';
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0; 
    transform: rotate(45deg); 
    margin-bottom: 2px;
    display: block;
}

/* 4. HIDE the double checkmark from the theme */
.woocommerce form .form-row .input-checkbox::after {
    content: none !important;
    display: none !important;
}

html.light-mode .woocommerce-error{
    background:#F7F3EE !important;
    border:1px solid green !important;
}

html.light-mode .woocommerce-error li a{
    color: black !important;
    text-decoration:none !important;
}

.woocommerce form .form-row.woocommerce-validated input.input-text,.woocommerce form .form-row .input-text{
    color:black !important;
}
#modalNutrition{
    margin-top:10px;
}