.sd-wishlist-wrap { width: 100%; }
.sd-wishlist-filters { display: flex; align-items: end; flex-wrap: wrap; gap: 8px; margin: 0 0 10px; padding: 10px; border: 1px solid #dcdcde; border-radius: 6px; background: #f7f7f7; }
.sd-wishlist-filters label { display: grid; gap: 3px; margin: 0; font-size: .78rem; font-weight: 700; }
.sd-wishlist-filters select, .sd-wishlist-filters input { box-sizing: border-box; min-height: 34px; margin: 0; border: 1px solid #8c8f94; border-radius: 4px; padding: 5px 8px; background: #fff; font: inherit; font-size: .9rem; }
.sd-wishlist-filters select { min-width: 185px; }
.sd-wishlist-filters input { min-width: 220px; }
.sd-clear-filters { min-height: 34px; border: 1px solid #8c8f94; border-radius: 4px; padding: 5px 12px; background: #fff; color: #2c3338; font: inherit; font-size: .85rem; font-weight: 700; cursor: pointer; }
.sd-clear-filters:hover { background: #f0f0f1; }
.sd-wishlist-header, .sd-item-main { display: grid; grid-template-columns: minmax(125px, .9fr) minmax(220px, 2.4fr) minmax(70px, .55fr) minmax(80px, .65fr) minmax(105px, .85fr) minmax(110px, auto); gap: 12px; align-items: center; }
.sd-wishlist-header { padding: 7px 12px; border: 1px solid #dcdcde; border-bottom: 0; border-radius: 6px 6px 0 0; background: #2c3338; color: #fff; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
.sd-wishlist { width: 100%; border: 1px solid #dcdcde; border-radius: 0 0 6px 6px; overflow: hidden; }
.sd-wishlist-item { padding: 0; background: #fff; border-bottom: 1px solid #e2e2e2; }
.sd-wishlist-item:last-of-type { border-bottom: 0; }
.sd-wishlist-item:nth-child(even) { background: #fafafa; }
.sd-wishlist-item:hover { background: #f4f8fb; }
.sd-wishlist-item.is-fulfilled { background: #eeeeee; color: #6b6b6b; }
.sd-item-main { min-height: 45px; padding: 6px 12px; }
.sd-item-title-cell { min-width: 0; }
.sd-item-value { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; min-width: 0; }
.sd-mobile-label { display: none; }
.sd-item-title-cell h3 { margin: 0; font-size: .95rem; line-height: 1.25; }
.sd-status-badge { display: inline-block; max-width: 100%; border-radius: 999px; padding: 3px 8px; background: #e7f3ff; color: #135e96; font-size: .75rem; font-weight: 700; line-height: 1.2; }
.is-fulfilled .sd-status-badge { background: #ddd; color: #555; }
.sd-data-cell { font-size: .86rem; }
.sd-item-reason { padding: 7px 12px 9px; border-top: 1px solid #ececec; font-size: .84rem; line-height: 1.35; }
.sd-item-reason strong { margin-right: 4px; }
.sd-action-cell { display: flex; justify-content: flex-end; align-items: center; gap: 6px; }
.sd-item-link-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #8c8f94; border-radius: 5px; padding: 7px 11px; background: #fff; color: #2c3338; font-size: .83rem; font-weight: 700; line-height: 1.2; text-decoration: none; white-space: nowrap; }
.sd-item-link-button:hover, .sd-item-link-button:focus { background: #f0f0f1; border-color: #646970; color: #1d2327; text-decoration: none; }
.sd-signup-toggle, .sd-signup-form button { appearance: none; border: 1px solid transparent; border-radius: 5px; padding: 7px 13px; font: inherit; font-size: .83rem; font-weight: 700; line-height: 1.2; cursor: pointer; }
.sd-signup-toggle, .sd-signup-form button[type="submit"] { background: #2271b1; border-color: #2271b1; color: #fff; }
.sd-signup-toggle:hover, .sd-signup-form button[type="submit"]:hover { background: #135e96; border-color: #135e96; color: #fff; }
.sd-signup-toggle:disabled, .sd-signup-form button:disabled { background: #d5d5d5; border-color: #c7c7c7; color: #666; cursor: not-allowed; }
.sd-signup-form { display: grid; grid-template-columns: minmax(180px, 2fr) minmax(75px, .55fr) minmax(220px, 3fr) auto auto; gap: 8px; align-items: end; padding: 9px 12px; border-top: 1px solid #e2e2e2; background: #fff; }
.sd-signup-form[hidden] { display: none; }
.sd-signup-form label { display: block; margin: 0; font-size: .78rem; font-weight: 700; }
.sd-signup-form input, .sd-signup-form textarea { box-sizing: border-box; display: block; width: 100%; min-height: 34px; margin-top: 3px; border: 1px solid #8c8f94; border-radius: 4px; padding: 5px 8px; background: #fff; color: inherit; font: inherit; font-size: .88rem; }
.sd-signup-form textarea { height: 34px; min-height: 34px; resize: vertical; }
.sd-signup-form .sd-cancel { background: #fff; border-color: #8c8f94; color: #2c3338; }
.sd-form-message { grid-column: 1 / -1; margin: 0; font-size: .82rem; font-weight: 600; }
.sd-no-filter-results { margin: 0; padding: 18px; text-align: center; }
@media (max-width: 850px) {
  .sd-wishlist-header { display: none; }
  .sd-wishlist { border-radius: 6px; }
  .sd-wishlist-item { padding: 9px 10px; }
  .sd-item-main { grid-template-columns: 1fr auto; gap: 6px 12px; padding: 0; }
  .sd-status-cell, .sd-item-title-cell, .sd-data-cell { grid-column: 1; }
  .sd-status-cell, .sd-item-title-cell, .sd-data-cell { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 8px; align-items: baseline; }
  .sd-mobile-label { display: block; font-weight: 700; white-space: nowrap; }
  .sd-item-value { min-width: 0; }
  .sd-item-title-cell h3 { min-width: 0; }
  .sd-action-cell { grid-column: 2; grid-row: 1 / span 5; align-self: center; }
  .sd-data-cell { font-size: .82rem; }
  .sd-item-reason { margin-top: 8px; padding: 8px 0 0; }
  .sd-signup-form { margin-top: 8px; padding: 9px 0 0; grid-template-columns: 1fr 90px; }
  .sd-signup-form label:nth-of-type(3) { grid-column: 1 / -1; }
}
@media (max-width: 580px) {
  .sd-wishlist-filters { align-items: stretch; }
  .sd-wishlist-filters label, .sd-wishlist-filters select, .sd-wishlist-filters input, .sd-clear-filters { width: 100%; min-width: 0; }
  .sd-item-main { grid-template-columns: 1fr; }
  .sd-status-cell, .sd-item-title-cell, .sd-data-cell { grid-template-columns: 112px minmax(0, 1fr); }
  .sd-action-cell { grid-column: 1; grid-row: auto; justify-content: stretch; }
  .sd-action-cell { display: grid; grid-template-columns: 1fr 1fr; }
  .sd-action-cell .sd-signup-toggle, .sd-action-cell .sd-item-link-button { width: 100%; }
  .sd-action-cell .sd-signup-toggle:only-child { grid-column: 1 / -1; }
}
