/* TI Wishlist: use site tokens, without changing plugin templates or behaviour. */
.tinv-wishlist {
    --wl-primary:var(--e-global-color-primary,var(--brand-primary,#183921));
    --wl-hover:var(--e-global-color-secondary,var(--brand-secondary,#5d0609));
    --wl-border:var(--e-global-color-chlborder,var(--border-light,#ededed));
    --wl-muted:var(--e-global-color-chlmuted,var(--text-muted,#8f8f8f));
    --wl-white:var(--e-global-color-chlwhite,#fff);
    color:var(--e-global-color-text,var(--text-primary,#333));
    font-family:var(--e-global-typography-text-font-family,var(--font-body,Raleway)),sans-serif;
}
.tinv-wishlist *, .tinv-wishlist *::before, .tinv-wishlist *::after { box-sizing:border-box; }
body .tinv-wishlist a:not(.button) { color:var(--wl-primary); }
body .tinv-wishlist a:not(.button):hover { color:var(--wl-hover); }
body .tinv-wishlist table.tinvwl-table-manage-list { width:100%; border:0; border-collapse:collapse; font-size:16px; line-height:1.6; }
body .tinv-wishlist table.tinvwl-table-manage-list th,
body .tinv-wishlist table.tinvwl-table-manage-list td { border:0; border-bottom:1px solid var(--wl-border); background:transparent; padding:20px 16px; vertical-align:middle; text-align:left; }
body .tinv-wishlist table.tinvwl-table-manage-list thead th { padding-top:14px; padding-bottom:14px; color:var(--wl-muted); font-size:13px; font-weight:400; }
body .tinv-wishlist table.tinvwl-table-manage-list :is(.product-cb,.product-remove) { width:44px; padding-inline:6px; text-align:center; }
body .tinv-wishlist table.tinvwl-table-manage-list .product-thumbnail { width:112px; min-width:112px; }
body .tinv-wishlist table.tinvwl-table-manage-list .product-thumbnail img { display:block; width:80px; height:96px; max-width:100%; object-fit:contain; margin:0; }
body .tinv-wishlist table.tinvwl-table-manage-list .product-name { overflow-wrap:anywhere; }
body .tinv-wishlist table.tinvwl-table-manage-list .product-name a { text-decoration:none; }
body .tinv-wishlist table.tinvwl-table-manage-list .product-name a:hover { text-decoration:underline; }
body .tinv-wishlist table.tinvwl-table-manage-list .product-price { white-space:nowrap; }
body .tinv-wishlist table.tinvwl-table-manage-list .product-date { color:var(--wl-muted); font-size:13px; white-space:nowrap; }
body .tinv-wishlist input[type=checkbox] { accent-color:var(--wl-primary); width:16px; height:16px; cursor:pointer; }
body .tinv-wishlist .product-remove button { width:32px; height:32px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--wl-muted); display:flex; align-items:center; justify-content:center; }
body .tinv-wishlist .product-remove button:hover { background:var(--wl-border); color:var(--wl-hover); }
body .tinv-wishlist .product-remove button i { margin:0; }
/* Explicit border and hover colours also override Hello's default red outline. */
body .tinv-wishlist .button,
body .tinv-wishlist .tinv-modal button:not(.tinv-close-modal) {
    background:var(--wl-primary); color:var(--wl-white); border:1px solid var(--wl-primary);
    border-radius:4px; box-shadow:none; padding:14px 24px; min-height:48px;
    font-family:inherit; font-size:14px; font-weight:400; line-height:1.4;
    letter-spacing:.02em; text-transform:uppercase; text-decoration:none;
    white-space:normal; text-align:center; cursor:pointer;
}
body .tinv-wishlist .button:hover,
body .tinv-wishlist .tinv-modal button:not(.tinv-close-modal):hover { background:var(--wl-hover); border-color:var(--wl-hover); color:var(--wl-white); }
body .tinv-wishlist .button:focus,
body .tinv-wishlist .tinv-modal button:not(.tinv-close-modal):focus { border-color:var(--wl-primary); box-shadow:none; }
body .tinv-wishlist :is(a,button,input,select):focus-visible { outline:2px solid var(--wl-primary); outline-offset:3px; }
body .tinv-wishlist .button:disabled { opacity:.5; cursor:not-allowed; }
body .tinv-wishlist table.tinvwl-table-manage-list tfoot td { padding:24px 0 0; border:0; }
body .tinv-wishlist tfoot .tinvwl-to-right { float:none; width:auto; display:flex; justify-content:flex-end; flex-wrap:wrap; gap:12px; text-align:left; }
body .tinv-wishlist tfoot .tinvwl-to-right > * { margin:0; }
body .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right { margin-top:0; }
body .tinv-wishlist select { border:1px solid var(--wl-border); border-radius:4px; min-height:44px; background:var(--wl-white); color:inherit; font:inherit; padding:10px 12px; }
body .tinv-wishlist .cart-empty.woocommerce-info { background:var(--wl-white); border:1px solid var(--wl-border); border-top:2px solid var(--wl-primary); color:inherit; padding:24px 24px 24px 52px; margin-bottom:24px; }
body .tinv-wishlist .cart-empty.woocommerce-info::before { color:var(--wl-primary); top:24px; }
body .tinv-wishlist .tinv-modal .tinv-modal-inner { width:calc(100% - 32px); max-width:420px; padding:32px; border-radius:4px; background:var(--wl-white); box-shadow:0 12px 48px rgb(0 0 0 / .14); }
body .tinv-wishlist .tinv-modal .tinvwl-buttons-group { display:flex; flex-direction:column; gap:12px; margin-top:24px; }
body .tinv-wishlist .tinv-modal .tinvwl-buttons-group::before,
body .tinv-wishlist .tinv-modal .tinvwl-buttons-group::after { display:none; }
body .tinv-wishlist .tinv-modal .tinvwl-buttons-group > :is(button,.button) { width:100%; margin:0; }
body .tinv-wishlist .tinv-modal .tinv-close-modal { background:var(--wl-border); color:var(--wl-primary); border:0; }
body .tinv-wishlist .tinv-modal .tinvwl-txt { overflow-wrap:anywhere; }
@media(max-width:768px) {
    body .tinv-wishlist table.tinvwl-table-manage-list { display:block; }
    body .tinv-wishlist table.tinvwl-table-manage-list thead { display:none; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody { display:block; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody tr { display:grid; grid-template-columns:80px minmax(0,1fr); gap:8px 16px; position:relative; border:1px solid var(--wl-border); border-radius:4px; padding:48px 16px 20px; margin-bottom:16px; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody td { width:auto !important; min-width:0; max-width:none; padding:0; border:0; text-align:left; font-size:14px; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody .product-thumbnail { grid-column:1; grid-row:1 / span 4; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody .product-thumbnail img { width:80px; height:96px; margin:0; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody :is(.product-name,.product-price,.product-date,.product-stock) { grid-column:2; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody .product-date { font-size:12px; white-space:normal; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody .product-cb { position:absolute; top:12px; left:16px; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody .product-remove { display:block; position:absolute; top:5px; right:8px; }
    body .tinv-wishlist table.tinvwl-table-manage-list tbody .product-action { grid-column:1 / -1; }
    body .tinv-wishlist table.tinvwl-table-manage-list .product-action > .button { width:100%; }
    body .tinv-wishlist table.tinvwl-table-manage-list .product-stock p { margin:0; }
    body .tinv-wishlist table.tinvwl-table-manage-list tfoot,
    body .tinv-wishlist table.tinvwl-table-manage-list tfoot tr { display:block; }
    body .tinv-wishlist table.tinvwl-table-manage-list tfoot td { padding-top:8px; }
    body .tinv-wishlist table.tinvwl-table-manage-list tfoot .tinvwl-to-right { flex-direction:column; gap:12px; }
    body .tinv-wishlist table.tinvwl-table-manage-list tfoot .tinvwl-to-right > :is(button,.button) { margin:0; width:100%; }
    body .tinv-wishlist .tinv-modal .tinv-modal-inner { padding:28px 20px; }
}
