/* Swarm QA fixes (2026-09-25). Loaded after main.css + mobile.css. */

/* I13 cart page: td.actions must stay a table cell (display:flex broke colspan) */
.woocommerce-cart table.shop_table.cart{table-layout:auto}
.woocommerce-cart table.shop_table td.actions{display:table-cell!important}
.woocommerce-cart td.actions .coupon{display:flex;flex-wrap:wrap;gap:8px;align-items:center;float:none}
.woocommerce-cart td.actions .coupon input#coupon_code{flex:1 1 200px;min-width:160px;width:auto;height:46px}
.woocommerce-cart td.actions .coupon .button{white-space:nowrap;height:46px;border-radius:999px}
.woocommerce-cart td.actions > .button[name=update_cart]{float:right;margin-top:6px}
.woocommerce-cart table.shop_table .product-remove{width:44px}
.woocommerce-cart table.shop_table .product-thumbnail{width:96px}
.woocommerce-cart table.shop_table .product-thumbnail img{width:72px!important;height:72px!important;object-fit:contain;background:var(--bg,#f4f6fb)}
.woocommerce-cart table.shop_table .product-name{min-width:200px}
.woocommerce-cart .woocommerce-error,.woocommerce-cart .woocommerce-message,.woocommerce-cart .woocommerce-info{border-radius:14px}
@media (min-width:901px){.woocommerce-cart .woocommerce{grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}}
@media (max-width:760px){
  .woocommerce-cart table.shop_table td.actions{display:block!important}
  .woocommerce-cart td.actions > .button[name=update_cart]{float:none;width:100%}
  .woocommerce-cart table.shop_table .product-name{min-width:0}
  /* I40 mobile totals alignment */
  .woocommerce-cart .cart_totals th{width:auto;padding-right:10px}
  .woocommerce-cart .cart_totals td{word-break:break-word}
  .woocommerce-cart .cart_totals tr.fee th,.woocommerce-cart .cart_totals tr.fee td{font-size:.88rem}
}

/* I21 mobile cookie bar */
@media (max-width:600px){
  .cookiebar{flex-direction:column;align-items:stretch;gap:10px}
  .cookiebar p{flex:1 1 auto;width:100%;min-width:0}
  .cookiebar p a{display:inline-block;padding:10px 4px;margin:-10px 0}
  .cookiebar > div{display:flex;flex-direction:row;gap:8px;width:100%}
  .cookiebar > div .btn{flex:1 1 0;min-height:46px;white-space:normal}
}

/* I29 closed drawer shadow band on the right edge */
.fb-drawer{box-shadow:none;visibility:hidden;transition:transform .4s cubic-bezier(.2,.7,.2,1),visibility 0s linear .4s}
body.cart-open .fb-drawer{box-shadow:-20px 0 60px rgba(0,0,0,.2);visibility:visible;transition:transform .4s cubic-bezier(.2,.7,.2,1),visibility 0s}

/* I14 mobile search */
.bd-msearch-btn{display:none;width:44px;height:44px;border:0;background:none;color:inherit;align-items:center;justify-content:center;cursor:pointer;border-radius:50%}
.bd-msearch-btn .ic{width:22px;height:22px}
.bd-msearch{display:none;padding:10px 16px;background:var(--bg,#fff);border-bottom:1px solid var(--line)}
.bd-msearch.open{display:block}
.bd-msearch form{display:flex;gap:8px}
.bd-msearch input[type=search]{flex:1;min-width:0;height:46px;border:1px solid var(--line);border-radius:999px;padding:0 16px;font:inherit;font-size:16px}
.bd-msearch button{height:46px;border:0;border-radius:999px;padding:0 18px;background:var(--fg,#0b1220);color:#fff;font-weight:600}
@media (max-width:1000px){.bd-msearch-btn{display:inline-flex}}

/* I53 skip link + focus */
.bd-skip{position:absolute;left:12px;top:-60px;z-index:200;background:#0b1220;color:#fff;padding:10px 16px;border-radius:10px;font-weight:600;text-decoration:none}
.bd-skip:focus{top:12px}
.hdr-search input:focus-visible,.hdr-search button:focus-visible,.bd-msearch input:focus-visible{outline:3px solid #1c4ed8;outline-offset:2px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #1c4ed8;outline-offset:2px}

/* I33 variation hint instead of alert */
.bd-var-hint{margin:8px 0 0;color:#b42318;font-weight:600;font-size:.9rem}
.bd-var-flash select{outline:3px solid #e11d48;outline-offset:2px;border-radius:10px}

/* I55 review star picker (WooCommerce CSS is off) */
.comment-form-rating p.stars{margin:6px 0 14px}
.comment-form-rating p.stars span{display:inline-flex;gap:4px}
.comment-form-rating p.stars a{position:relative;display:inline-block;width:32px;height:32px;overflow:hidden;text-indent:-999px;color:#cbd5e1;text-decoration:none}
.comment-form-rating p.stars a::before{content:"\2605";position:absolute;inset:0;text-indent:0;font-size:30px;line-height:32px;text-align:center;color:#cbd5e1}
.comment-form-rating p.stars:hover a::before,.comment-form-rating p.stars.selected a::before{color:#f59e0b}
.comment-form-rating p.stars a:hover ~ a::before,.comment-form-rating p.stars.selected a.active ~ a::before{color:#cbd5e1}
.comment-form-rating select#rating{display:none}
.woocommerce-product-gallery__image img{aspect-ratio:1;object-fit:contain}
.flex-control-thumbs img{aspect-ratio:1;object-fit:contain;width:100%;height:auto}

/* I57 size guide */
.bd-sizeguide{margin:14px 0;border:1px solid var(--line);border-radius:14px;background:#fff}
.bd-sizeguide summary{cursor:pointer;padding:12px 16px;font-weight:600;list-style:none;min-height:44px;display:flex;align-items:center}
.bd-sizeguide summary::-webkit-details-marker{display:none}
.bd-sizeguide summary::after{content:"+";margin-left:auto;font-size:1.2rem}
.bd-sizeguide[open] summary::after{content:"\2212"}
.bd-sizeguide .sg-in{padding:0 16px 14px;overflow-x:auto}
.bd-sizeguide table{border-collapse:collapse;font-size:.9rem;min-width:320px;width:100%}
.bd-sizeguide th,.bd-sizeguide td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left;font-variant-numeric:tabular-nums}
.bd-sizeguide p{font-size:.85rem;color:var(--muted);margin:8px 0 0}

/* I79 shoe size/qty/add-to-cart row */
.single-product form.variations_form .woocommerce-variation-add-to-cart{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
.single-product form.variations_form .woocommerce-variation-add-to-cart .quantity input{height:100%;min-height:48px}
.single-product form.variations_form .single_add_to_cart_button{flex:1 1 200px;min-height:48px}

/* I35 archive heading */
.bd-arch-head{margin:0 0 22px}
.bd-arch-head .woocommerce-breadcrumb{font-size:.85rem;color:var(--muted);margin-bottom:8px}
.bd-arch-head h1{margin:0 0 6px}

/* I54 toast must not cover drawer buttons */
body.cart-open .toast{bottom:auto;top:calc(env(safe-area-inset-top,0px) + 12px)}

/* I59 VAT note */
.incl-btw{display:block;font-weight:400;font-size:.78rem;color:var(--muted)}

/* I66/I67 tap targets and contrast */
.woocommerce-cart table.shop_table .product-remove a{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center}
.woocommerce-form__label-for-checkbox input[type=checkbox],#terms,.bd-bump input[type=checkbox]{width:20px;height:20px}
.ftr .nl input[type=email]{min-height:44px}
.nl-note{margin-top:8px;opacity:.85}
.nl-note a{color:inherit;text-decoration:underline}
.bd-cookie-settings{cursor:pointer}
.stars i.on{background:#e0a100}
.star-rating{color:#c98f00}
/* sale page: second H1 became a styled paragraph */
.sale-hero .sale-h1{font:700 clamp(2.2rem,5vw,4rem)/1.05 var(--serif,var(--sans));margin:8px 0 12px}
.sale-hero .sale-h1 em{color:#c9f24b;font-style:normal}
/* mobile header with the added search button */
@media (max-width:1000px){
  .hdr .wrap{gap:8px}
  .hdr-r{gap:4px}
  .hdr .burger{flex:none;margin-left:-6px}
  .hdr .logo{flex:1 1 auto;min-width:0}
  .hdr .logo svg{height:34px;max-width:100%}
  .hdr .tel{width:44px;height:44px;justify-content:center}
  .hdr .cart-btn{width:44px;height:44px;flex:none}
}
@media (max-width:360px){.hdr .logo svg{height:28px}}
