/* Component skin, bkc- prefixed.
   GENERATED from design/system/tokens/components.css — do not hand-edit.
   Markup that uses these classes lives in the WooCommerce template
   overrides under woocommerce/. */

/* Bankrupt & Co. component skin. Class names are prefixed bkc-. */
.bkc-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-4);height:var(--control-h-md);padding:0 var(--space-7);border:var(--border-hair) solid transparent;border-radius:var(--radius-2);font:var(--type-label);font-size:var(--fs-200);letter-spacing:var(--ls-wide);text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;transition:var(--transition-control),transform var(--dur-instant) var(--ease-stiff);position:relative}
.bkc-btn:active{transform:translateY(1px)}
.bkc-btn--sm{height:var(--control-h-sm);padding:0 var(--space-5);font-size:var(--fs-100)}
.bkc-btn--lg{height:var(--control-h-lg);padding:0 var(--space-9);font-size:var(--fs-300)}
.bkc-btn--primary{background:var(--action-primary-bg);color:var(--action-primary-fg);box-shadow:var(--shadow-raised)}
.bkc-btn--primary:hover{background:var(--action-primary-bg-hover)}
.bkc-btn--accent{background:var(--action-accent-bg);color:var(--action-accent-fg);box-shadow:var(--shadow-raised)}
.bkc-btn--accent:hover{background:var(--action-accent-bg-hover)}
.bkc-btn--secondary{background:transparent;color:var(--action-secondary-fg);border-color:var(--line-strong)}
.bkc-btn--secondary:hover{background:rgba(34,30,25,var(--opacity-hover-veil));border-color:var(--text-strong)}
.bkc-btn--ghost{background:transparent;color:var(--text-muted)}
.bkc-btn--ghost:hover{background:rgba(34,30,25,.06);color:var(--text-strong)}
.bkc-btn--danger{background:var(--alarm-500);color:var(--action-accent-fg)}
.bkc-btn--danger:hover{background:#72302a}
.bkc-btn[disabled],.bkc-btn[aria-disabled=true]{background:var(--action-disabled-bg);color:var(--action-disabled-fg);border-color:transparent;box-shadow:none;cursor:not-allowed;transform:none}
.bkc-btn--block{width:100%}

.bkc-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:var(--control-h-md);height:var(--control-h-md);padding:0;border:var(--border-hair) solid var(--line-hairline);border-radius:var(--radius-2);background:transparent;color:var(--text-body);cursor:pointer;transition:var(--transition-control)}
.bkc-iconbtn:hover{background:rgba(34,30,25,.07);border-color:var(--line-strong);color:var(--text-strong)}
.bkc-iconbtn--sm{width:var(--control-h-sm);height:var(--control-h-sm)}
.bkc-iconbtn--lg{width:var(--control-h-lg);height:var(--control-h-lg)}
.bkc-iconbtn--bare{border-color:transparent}
.bkc-iconbtn--solid{background:var(--action-primary-bg);color:var(--action-primary-fg);border-color:transparent}
.bkc-iconbtn--solid:hover{background:var(--action-primary-bg-hover);color:var(--action-primary-fg)}
.bkc-iconbtn[disabled]{opacity:var(--opacity-disabled);cursor:not-allowed}

.bkc-field{display:flex;flex-direction:column;gap:var(--space-3)}
.bkc-field__label{font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-muted)}
.bkc-field__hint{font:var(--type-body-sm);color:var(--text-faint)}
.bkc-field__error{font:var(--type-body-sm);color:var(--text-danger)}
.bkc-input{height:var(--control-h-md);width:100%;padding:0 var(--space-5);border:var(--border-hair) solid var(--line-strong);border-radius:var(--radius-2);background:var(--surface-sunken);box-shadow:var(--shadow-inset-well);color:var(--text-strong);font:var(--type-body);transition:var(--transition-control)}
.bkc-input::placeholder{color:var(--text-faint)}
.bkc-input:hover{border-color:var(--text-muted)}
.bkc-input[data-invalid=true]{border-color:var(--alarm-500)}
.bkc-input[disabled]{opacity:var(--opacity-disabled);cursor:not-allowed}
textarea.bkc-input{height:auto;padding:var(--space-5);resize:vertical;line-height:var(--lh-normal)}

.bkc-select{position:relative;display:block}
.bkc-select select{appearance:none;height:var(--control-h-md);width:100%;padding:0 var(--space-9) 0 var(--space-5);border:var(--border-hair) solid var(--line-strong);border-radius:var(--radius-2);background:var(--surface-sunken);box-shadow:var(--shadow-inset-well);color:var(--text-strong);font:var(--type-body);cursor:pointer;transition:var(--transition-control)}
.bkc-select select:hover{border-color:var(--text-muted)}
.bkc-select__caret{position:absolute;right:var(--space-5);top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-muted);font:var(--type-label)}

.bkc-check{display:inline-flex;align-items:flex-start;gap:var(--space-4);cursor:pointer;font:var(--type-body);color:var(--text-body)}
.bkc-check input{position:absolute;opacity:0;width:0;height:0}
.bkc-check__box{flex:0 0 auto;width:16px;height:16px;margin-top:2px;border:var(--border-hair) solid var(--line-strong);background:var(--surface-sunken);box-shadow:var(--shadow-inset-well);display:grid;place-items:center;transition:var(--transition-control)}
.bkc-check__box--radio{border-radius:var(--radius-pill)}
.bkc-check:hover .bkc-check__box{border-color:var(--text-strong)}
.bkc-check input:checked+.bkc-check__box{background:var(--action-primary-bg);border-color:var(--action-primary-bg)}
.bkc-check__glyph{width:8px;height:8px;background:var(--rust-400);opacity:0;transition:opacity var(--dur-fast) var(--ease-mech)}
.bkc-check__box--radio .bkc-check__glyph{border-radius:var(--radius-pill)}
.bkc-check input:checked+.bkc-check__box .bkc-check__glyph{opacity:1}
.bkc-check input:focus-visible+.bkc-check__box{box-shadow:var(--ring-focus)}
.bkc-check[data-disabled=true]{opacity:var(--opacity-disabled);cursor:not-allowed}

.bkc-switch{display:inline-flex;align-items:center;gap:var(--space-5);cursor:pointer;font:var(--type-body)}
.bkc-switch__track{position:relative;width:40px;height:20px;border:var(--border-hair) solid var(--line-strong);background:var(--surface-sunken);box-shadow:var(--shadow-inset-well);transition:var(--transition-control)}
.bkc-switch__knob{position:absolute;top:1px;left:1px;width:16px;height:16px;background:var(--ash-600);transition:transform var(--dur-base) var(--ease-stiff),background-color var(--dur-fast) var(--ease-mech)}
.bkc-switch[data-on=true] .bkc-switch__track{background:var(--steel-600);border-color:var(--steel-700)}
.bkc-switch[data-on=true] .bkc-switch__knob{transform:translateX(20px);background:var(--rust-400)}
.bkc-switch[data-disabled=true]{opacity:var(--opacity-disabled);cursor:not-allowed}

.bkc-card{background:var(--surface-card);background-image:var(--grime-noise),var(--grime-blotch),var(--grime-soot);border:var(--border-hair) solid var(--line-hairline);border-radius:var(--radius-2);box-shadow:var(--shadow-plate)}
.bkc-card--flat{box-shadow:none}
.bkc-card--raised{box-shadow:var(--shadow-raised)}
.bkc-card--plate{background:var(--surface-plate);background-image:var(--grime-noise),var(--grime-blotch),var(--grime-hatch),var(--grime-soot);border-color:var(--steel-300)}
.bkc-card--inverse{background:var(--surface-inverse);background-image:var(--grime-scanlines);border-color:var(--line-inverse);color:var(--text-inverse)}
.bkc-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-5) var(--space-6);border-bottom:var(--border-hair) solid var(--line-hairline)}
.bkc-card__title{font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-muted)}
.bkc-card__body{padding:var(--space-6)}

.bkc-badge{display:inline-flex;align-items:center;gap:var(--space-3);height:20px;padding:0 var(--space-4);border:var(--border-hair) solid currentColor;border-radius:var(--radius-1);font:var(--type-stencil);letter-spacing:var(--ls-wide);text-transform:uppercase;background:transparent}
.bkc-badge--neutral{color:var(--text-muted)}
.bkc-badge--ok{color:var(--status-ok)}
.bkc-badge--warn{color:var(--status-warn)}
.bkc-badge--bad{color:var(--status-bad)}
.bkc-badge--info{color:var(--status-info)}
.bkc-badge--solid{border-color:transparent;background:var(--action-primary-bg);color:var(--action-primary-fg)}
.bkc-badge--stencil{border-style:dashed}

.bkc-tag{display:inline-flex;align-items:center;gap:var(--space-3);height:24px;padding:0 var(--space-5);border:var(--border-hair) solid var(--line-hairline);border-radius:var(--radius-pill);background:var(--surface-panel);color:var(--text-body);font:var(--type-body-sm);cursor:default;transition:var(--transition-control)}
.bkc-tag[data-clickable=true]{cursor:pointer}
.bkc-tag[data-clickable=true]:hover{border-color:var(--text-strong);background:var(--ash-100)}
.bkc-tag[data-selected=true]{background:var(--action-primary-bg);border-color:var(--action-primary-bg);color:var(--action-primary-fg)}
.bkc-tag--accent{background:transparent;border-color:var(--rust-500);color:var(--rust-500);font:var(--type-label);font-size:var(--fs-100);letter-spacing:var(--ls-wide);text-transform:uppercase}
.bkc-tag__x{border:0;background:none;padding:0;margin-left:var(--space-2);color:inherit;cursor:pointer;font:var(--type-label);opacity:.7}
.bkc-tag__x:hover{opacity:1}

.bkc-tabs{display:flex;gap:0;border-bottom:var(--border-hair) solid var(--line-hairline)}
.bkc-tab{appearance:none;background:none;border:0;border-bottom:var(--border-plate) solid transparent;padding:var(--space-4) var(--space-6);font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-faint);cursor:pointer;transition:var(--transition-control)}
.bkc-tab:hover{color:var(--text-body)}
.bkc-tab[aria-selected=true]{color:var(--text-strong);border-bottom-color:var(--rust-500)}
.bkc-tab[disabled]{opacity:var(--opacity-disabled);cursor:not-allowed}

.bkc-dialog__scrim{position:fixed;inset:0;background:var(--surface-overlay);backdrop-filter:var(--blur-overlay);display:grid;place-items:center;padding:var(--space-8);z-index:60}
.bkc-dialog{width:100%;max-width:520px;background:var(--surface-panel);background-image:var(--grime-soot);border:var(--border-hair) solid var(--line-strong);box-shadow:var(--shadow-overlay)}
.bkc-dialog__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-5) var(--space-6);border-bottom:var(--border-hair) solid var(--line-hairline);background:var(--surface-sunken)}
.bkc-dialog__title{font:var(--type-h3);text-transform:uppercase;letter-spacing:var(--ls-wide)}
.bkc-dialog__body{padding:var(--space-8) var(--space-6);font:var(--type-body)}
.bkc-dialog__foot{display:flex;justify-content:flex-end;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-top:var(--border-hair) solid var(--line-hairline)}

.bkc-toast{display:flex;align-items:flex-start;gap:var(--space-5);width:360px;padding:var(--space-5) var(--space-6);background:var(--surface-inverse);background-image:var(--grime-scanlines);color:var(--text-inverse);border-left:3px solid var(--ash-500);box-shadow:var(--shadow-overlay);font:var(--type-body-sm)}
.bkc-toast--ok{border-left-color:var(--moss-400)}
.bkc-toast--warn{border-left-color:var(--amber-400)}
.bkc-toast--bad{border-left-color:var(--alarm-400)}
.bkc-toast__title{font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--ash-200);margin-bottom:var(--space-2)}
.bkc-toast__x{margin-left:auto;background:none;border:0;color:var(--ash-300);cursor:pointer;font:var(--type-label)}
.bkc-toast__x:hover{color:var(--text-inverse)}

.bkc-tooltip{position:relative;display:inline-flex}
.bkc-tooltip__bubble{position:absolute;z-index:50;padding:var(--space-3) var(--space-5);background:var(--soot-900);color:var(--ash-050);font:var(--type-label);letter-spacing:var(--ls-wide);text-transform:uppercase;white-space:nowrap;box-shadow:var(--shadow-raised);opacity:0;transition:opacity var(--dur-fast) var(--ease-mech)}
.bkc-tooltip[data-open=true] .bkc-tooltip__bubble{opacity:1}

.bkc-product{display:flex;flex-direction:column;background:var(--surface-card);border:var(--border-hair) solid var(--line-hairline);transition:border-color var(--dur-base) var(--ease-mech),box-shadow var(--dur-base) var(--ease-mech),transform var(--dur-base) var(--ease-mech)}
.bkc-product:hover{border-color:var(--text-strong);box-shadow:var(--shadow-raised);transform:translateY(-2px)}
.bkc-product__shot{position:relative;aspect-ratio:4/5;background:var(--surface-plate);background-image:var(--grime-hatch),var(--grime-vignette);display:grid;place-items:center;overflow:hidden;border-bottom:var(--border-hair) solid var(--line-hairline)}
.bkc-product__shot img{width:100%;height:100%;object-fit:cover}
.bkc-product__shot:has(img){background-image:none}
.bkc-product__slug{padding:0 var(--space-8);text-align:center;font:var(--type-h3);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--soot-700);text-wrap:balance;opacity:.92}
.bkc-product__meta{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);padding:var(--space-5) var(--space-6)}
.bkc-product__name{font:var(--type-body);font-weight:var(--fw-medium);color:var(--text-strong)}
.bkc-product__sub{font:var(--type-label);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-faint);margin-top:var(--space-2)}
.bkc-product__flag{position:absolute;top:0;left:0;padding:var(--space-2) var(--space-4);background:var(--soot-900);color:var(--ash-050);font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase}

.bkc-price{display:inline-flex;align-items:baseline;gap:var(--space-4);font:var(--type-code)}
.bkc-price__from{font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-faint)}
.bkc-price__now{font:var(--fw-semibold) var(--fs-500)/1 var(--font-mono);color:var(--text-strong)}
.bkc-price__was{font:var(--fw-regular) var(--fs-300)/1 var(--font-mono);color:var(--text-faint);text-decoration:line-through}
.bkc-price--sm .bkc-price__from{font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-faint)}
.bkc-price__now{font-size:var(--fs-400)}
.bkc-price--lg .bkc-price__from{font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-faint)}
.bkc-price__now{font-size:var(--fs-700)}

.bkc-stepper{display:inline-flex;align-items:stretch;border:var(--border-hair) solid var(--line-strong);background:var(--surface-sunken);box-shadow:var(--shadow-inset-well)}
.bkc-stepper button{width:30px;border:0;background:none;color:var(--text-body);cursor:pointer;font:var(--type-label);font-size:var(--fs-400);transition:var(--transition-control)}
.bkc-stepper button:hover{background:rgba(34,30,25,.08);color:var(--text-strong)}
.bkc-stepper button[disabled]{opacity:var(--opacity-disabled);cursor:not-allowed}
.bkc-stepper__val{min-width:34px;display:grid;place-items:center;font:var(--type-code);font-size:var(--fs-400);color:var(--text-strong);border-inline:var(--border-hair) solid var(--line-hairline)}
.bkc-stepper--sm{height:var(--control-h-sm)}.bkc-stepper--md{height:var(--control-h-md)}

.bkc-stock{display:flex;flex-direction:column;gap:var(--space-3);min-width:160px}
.bkc-stock__bar{height:6px;background:var(--surface-sunken);box-shadow:var(--shadow-inset-well);overflow:hidden}
.bkc-stock__fill{height:100%;background:var(--moss-500);transition:width var(--dur-slow) var(--ease-mech)}
.bkc-stock[data-level=low] .bkc-stock__fill{background:var(--amber-500)}
.bkc-stock[data-level=critical] .bkc-stock__fill{background:var(--alarm-500)}
.bkc-stock__label{font:var(--type-stencil);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-muted);display:flex;justify-content:space-between;gap:var(--space-5)}
