.turri-list-add {
    display: inline-flex; align-items: center; justify-content: center; gap: .35em;
    min-height: 44px; padding: .4em .65em; color: var(--turri-color-text-primary);
    font-size: var(--turri-text-s); line-height: 1.3; text-decoration: underline; text-underline-offset: .2em;
}
.turri-product-card > .turri-list-add { margin: 0 var(--turri-space-xs) var(--turri-space-xs); }
.turri-lists { display: grid; gap: var(--turri-space-m); min-width: 0; }
.turri-lists :where(*, *::before, *::after) { box-sizing: border-box; }
.turri-list-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: var(--turri-space-m); }
.turri-lists .turri-list-panel { border: 1px solid var(--turri-color-border-default); border-radius: var(--turri-control-radius); padding: var(--turri-space-m); margin: 0; min-width: 0; background: var(--turri-color-surface-subtle); }
.turri-lists :where(h2, h3, legend) { font-size: var(--turri-text-l); line-height: 1.3; overflow-wrap: anywhere; }
.turri-lists legend { font-weight: 700; padding-inline: .3em; }
.turri-list-editor { display: grid; gap: var(--turri-space-m); min-width: 0; }
.turri-lists .turri-list-field { display: grid; gap: .4em; margin-block: 0 var(--turri-space-m); min-width: 0; }
.turri-lists :where(input:not([type=hidden]):not([type=checkbox]), select) { width: 100%; max-width: 100%; min-width: 0; min-height: 44px; }
.turri-lists :where(button, .turri-list-link, summary) { min-height: 44px; display: inline-flex; align-items: center; padding: .65em .8em; white-space: normal; overflow-wrap: anywhere; line-height: 1.35; }
.turri-lists :where(button, summary) { cursor: pointer; }
.turri-lists :where(button:disabled) { cursor: not-allowed; opacity: .55; }
.turri-list-link { color: var(--turri-color-text-primary); text-decoration: underline; text-underline-offset: .2em; }
.turri-list-actions { display: flex; flex-wrap: wrap; gap: var(--turri-space-s); }
.turri-list-lines { display: grid; gap: var(--turri-space-s); list-style: none; padding: 0; margin: 0; }
.turri-list-line { display: grid; grid-template-columns: minmax(0, 1fr) 100px; gap: var(--turri-space-s); align-items: center; padding-block: var(--turri-space-s); border-bottom: 1px solid var(--turri-color-border-default); }
.turri-list-line > div { min-width: 0; overflow-wrap: anywhere; }
.turri-list-line p { margin: .3em 0; }
.turri-lists .turri-list-consent { display: flex; align-items: start; gap: .7em; margin-block: var(--turri-space-m); cursor: pointer; min-height: 44px; }
.turri-list-consent input { flex: 0 0 24px; width: 24px; height: 24px; margin-top: .25em; }
.turri-list-status { font-weight: 700; }
.turri-list-warning { border-inline-start: 3px solid currentColor; padding-inline-start: .8em; }
.turri-lists :where(a, button, input, select, summary):focus-visible, .turri-list-add:focus-visible { outline: 2px solid var(--turri-color-text-primary); outline-offset: 3px; }
@media (max-width: 480px) {
    .turri-lists .turri-list-panel { padding: var(--turri-space-s); }
    .turri-list-actions { flex-direction: column; align-items: stretch; }
    .turri-list-line { grid-template-columns: minmax(0, 1fr) 80px; }
}

/* Purchase and list actions share a row; the icon retains a full touch target. */
:is(.turri-storefront, .turri-product-single--v2, .turri-producer-products) .turri-product-card__action,
.turri-product-card .turri-product-card__action { display: grid; grid-template-columns: minmax(0, 1fr) 44px; align-items: end; gap: .55rem; }
.turri-product-card__buy { min-width: 0; }
.turri-list-add,
:is(.turri-storefront, .turri-product-single--v2, .turri-producer-products) .turri-product-card__action .turri-list-add {
    width: 44px; min-width: 44px; height: 44px; flex: 0 0 44px; padding: 10px; margin: 0;
    border: 1px solid var(--turri-color-border-default); border-radius: var(--turri-control-radius);
    background: var(--turri-color-surface-subtle); color: var(--turri-color-text-primary); text-decoration: none;
}
.turri-list-add svg { flex-shrink: 0; }
.turri-list-picker:not([open]) { display: none; }
.turri-list-picker[open] { display: grid; }
.turri-list-picker {
    position: fixed; inset: 0; margin: auto; width: min(480px, calc(100% - 32px)); max-height: calc(100dvh - 32px);
    overflow: auto; padding: var(--turri-space-m); border: 1px solid var(--turri-color-border-default);
    border-radius: var(--turri-control-radius); background: var(--turri-color-surface-subtle); color: var(--turri-color-text-primary);
}
.turri-list-picker::backdrop { background: rgb(0 0 0 / .45); }
.turri-list-picker-open { overflow: hidden; }
.turri-picker-form, .turri-picker-options, .turri-picker-new { display: grid; gap: .65rem; min-width: 0; }
.turri-picker-new[hidden] { display: none; }
.turri-picker-close { justify-self: end; }
.turri-list-picker p { margin: 0; overflow-wrap: anywhere; }
.turri-list-picker button { border: 1px solid var(--turri-color-border-default); border-radius: var(--turri-control-radius); color: inherit; background: transparent; text-align: start; }
@media (max-width: 480px) {
    .turri-product-single--v2 .summary form.cart:not(.variations_form),
    .turri-product-single--v2 .summary form.cart .woocommerce-variation-add-to-cart { flex-wrap: wrap; }
    .turri-product-single--v2 .summary form.cart .quantity { flex-basis: 100%; }
}
.turri-picker-header { display: flex; gap: var(--turri-space-s); align-items: center; justify-content: space-between; }
.turri-picker-header h2 { margin: 0; }
.turri-list-picker [role=status]:empty { display: none; }
.turri-list-picker label { color: var(--turri-color-text-primary); }
.turri-list-picker .turri-picker-close { flex: 0 0 44px; width: 44px; height: 44px; padding: 0; justify-content: center; font-size: 24px; }
.turri-product-card .turri-product-card__action:not(:has(> .turri-list-add)) { grid-template-columns: minmax(0, 1fr); }
