.user-tackle-sets-list {display: flex;flex-direction: column;gap: 20px}
.utackle-set {--utk-accent: #0284c7;--utk-tint: #e0f2fe;--utk-tint-strong: #bae6fd}
.utackle-set-header {display: flex;align-items: center;gap: 10px;margin-bottom: 14px}
.utackle-set-icon {display: flex;align-items: center;justify-content: center;width: 34px;height: 34px;flex-shrink: 0;border-radius: 10px;background: var(--gradient-aqua, linear-gradient(135deg, #06b6d4, #3b82f6));color: #fff;box-shadow: 0 4px 10px rgba(6, 132, 199, 0.28)}
.utackle-set-icon svg {width: 18px;height: 18px}
.utackle-set-name {font-size: 1.05rem;font-weight: 700;color: var(--color-text-primary, #1e293b);margin: 0;overflow-wrap: anywhere;min-width: 0}
.utackle-set-count {margin-left: auto;flex-shrink: 0;font-size: 12px;font-weight: 600;color: var(--color-text-muted, #64748b);background: var(--color-bg-secondary, #f1f5f9);padding: 3px 10px;border-radius: 999px}
.utackle-list {display: flex;flex-direction: column;background: #fff;border: 1px solid var(--color-border, #e2e8f0);border-radius: 14px;overflow: hidden}
.utackle-row {--utk-accent: #0284c7;--utk-tint: #e0f2fe;--utk-tint-strong: #bae6fd;position: relative;display: flex;align-items: center;gap: 14px;padding: 14px 16px;min-width: 0}
.utackle-row + .utackle-row {border-top: 1px solid var(--color-border-light, #f1f5f9)}
.utackle-card--rod {--utk-accent: #0284c7;--utk-tint: #e0f2fe;--utk-tint-strong: #bae6fd}
.utackle-card--reel {--utk-accent: #7c3aed;--utk-tint: #ede9fe;--utk-tint-strong: #ddd6fe}
.utackle-card--item {--utk-accent: #d97706;--utk-tint: #fef3c7;--utk-tint-strong: #fde68a}
.utackle-row.is-tappable {cursor: pointer}
@media (hover: hover) {.utackle-row.is-tappable:hover {background: var(--color-bg-muted, #f8fafc)}}
.utackle-row-trigger {position: absolute;inset: 0;z-index: 2;border: none;background: none;padding: 0;cursor: pointer;-webkit-appearance: none;appearance: none}
.utackle-row-trigger:focus-visible {outline: 2px solid var(--color-primary, #3b82f6);outline-offset: -2px;border-radius: 12px}
.utackle-row-media {position: relative;z-index: 1;flex-shrink: 0;display: block;width: 48px;height: 48px;border-radius: 10px;overflow: hidden}
.utackle-row-photo {width: 100%;height: 100%;object-fit: cover;display: block}
.utackle-row-icon {display: flex;align-items: center;justify-content: center;background: var(--utk-tint)}
.utackle-row-icon svg {width: 24px;height: 24px;stroke: var(--utk-accent);fill: none}
.utackle-row-body {position: relative;z-index: 1;display: flex;flex-direction: column;gap: 3px;min-width: 0;flex: 1}
.utackle-row-meta {display: flex;align-items: baseline;min-width: 0;font-size: 12px;line-height: 1.3}
.utackle-row-type {font-weight: 600;color: var(--utk-accent);flex-shrink: 0}
.utackle-row-maker {color: var(--color-text-muted, #64748b);overflow-wrap: anywhere;min-width: 0}
.utackle-row-maker::before {content: "·";margin: 0 6px;color: var(--color-text-light, #94a3b8)}
.utackle-row-name {font-size: 13.5px;font-weight: 600;color: var(--color-text-primary, #1e293b);line-height: 1.4;overflow-wrap: anywhere}
.utackle-card-type {align-self: flex-start;font-size: 10px;font-weight: 700;letter-spacing: 0.04em;color: var(--utk-accent);background: var(--utk-tint);padding: 2px 8px;border-radius: 999px;margin-bottom: 2px}
.utackle-row-chevron {position: relative;z-index: 1;flex-shrink: 0;display: flex;align-items: center;justify-content: center;color: var(--color-text-light, #94a3b8);transition: transform 0.2s ease, color 0.2s ease}
.utackle-row-chevron svg {width: 18px;height: 18px}
@media (hover: hover) {.utackle-row.is-tappable:hover .utackle-row-chevron {color: var(--utk-accent);transform: translateX(2px)}}
.utackle-row--report {flex-direction: column;align-items: stretch;gap: 8px}
.utackle-row-line {position: relative;display: flex;align-items: center;gap: 14px;width: 100%;min-width: 0}
.utackle-row-line.is-tappable {cursor: pointer}
@media (hover: hover) {.utackle-row-line.is-tappable:hover .utackle-row-name {color: var(--utk-accent)}
.utackle-row-line.is-tappable:hover .utackle-row-chevron {color: var(--utk-accent);transform: translateX(2px)}}
.utackle-row-rating {background: var(--color-bg-muted, #f8fafc);border: 1px solid var(--color-border-light, #f1f5f9);border-radius: 8px;padding: 8px 10px}
.utackle-row-rating-text {margin: 0;font-size: 12.5px;font-weight: 500;color: var(--color-text-secondary, #475569);line-height: 1.5;overflow-wrap: anywhere;white-space: pre-wrap}
@media (max-width: 480px) {.utackle-row {padding: 13px 14px;gap: 12px}
.utackle-row--report {gap: 7px}
.utackle-row-line {gap: 12px}
.utackle-row-rating {padding: 7px 9px}
.utackle-row-rating-text {font-size: 12px}}
.utackle-lb-overlay {position: fixed;inset: 0;z-index: 1100;display: flex;align-items: center;justify-content: center;padding: 20px;background-color: rgba(15, 23, 42, 0);transition: background-color 0.32s ease}
.utackle-lb-overlay.is-visible {background-color: rgba(15, 23, 42, 0.55)}
.utackle-lb-frame {position: relative;display: flex;flex-direction: column;width: 100%;max-width: 420px;max-height: 100%;overflow: hidden;border-radius: 18px;background: #fff;border: 1px solid rgba(15, 23, 42, 0.06);box-shadow: 0 24px 60px rgba(15, 23, 42, 0.28);transform-origin: center center}
.utackle-lb-photo-wrap {position: relative;width: 100%;aspect-ratio: 4 / 3;flex-shrink: 0;overflow: hidden;background: #f1f5f9;touch-action: none}
.utackle-lb-photo-wrap::before {content: "";position: absolute;top: 0;left: 0;right: 0;height: 72px;background: linear-gradient(to bottom, rgba(15, 23, 42, 0.3), rgba(15, 23, 42, 0));pointer-events: none;z-index: 1}
.utackle-lb-photo-wrap::after {content: "";position: absolute;left: 0;right: 0;bottom: 0;height: 60%;background: linear-gradient(to top, rgba(15, 23, 42, 0.72), rgba(15, 23, 42, 0.12) 55%, rgba(15, 23, 42, 0));pointer-events: none;z-index: 1}
.utackle-lb-photo {width: 100%;height: 100%;object-fit: cover;display: block;opacity: 0;transition: opacity 0.3s ease}
.utackle-lb-photo-wrap.is-loaded .utackle-lb-photo {opacity: 1}
.utackle-lb-placeholder {position: absolute;inset: 0;display: flex;align-items: center;justify-content: center;background: linear-gradient(145deg, var(--utk-tint) 0%, var(--utk-tint-strong) 100%);color: var(--utk-accent)}
.utackle-lb-placeholder svg {width: 56px;height: 56px;opacity: 0.5}
.utackle-lb-skeleton {position: absolute;inset: 0;background: linear-gradient(100deg, #eef2f7 30%, #f8fafc 50%, #eef2f7 70%);background-size: 200% 100%;animation: utackle-lb-shimmer 1.2s ease-in-out infinite}
.utackle-lb-photo-wrap.is-loaded .utackle-lb-skeleton {display: none}
@keyframes utackle-lb-shimmer {0% {background-position: 200% 0}
100% {background-position: -200% 0}}
.utackle-lb-drag-hint {position: absolute;top: 8px;left: 50%;transform: translateX(-50%);width: 34px;height: 4px;border-radius: 999px;background: rgba(255, 255, 255, 0.9);box-shadow: 0 1px 3px rgba(15, 23, 42, 0.3);z-index: 2}
.utackle-lb-close {position: absolute;top: 12px;right: 12px;z-index: 2;width: 40px;height: 40px;border-radius: 50%;border: none;background: rgba(255, 255, 255, 0.92);color: #334155;display: flex;align-items: center;justify-content: center;cursor: pointer;box-shadow: 0 2px 8px rgba(15, 23, 42, 0.25);transition: background-color 0.15s ease}
@media (hover: hover) {.utackle-lb-close:hover {background: #fff}}
.utackle-lb-close:focus-visible {outline: 2px solid #fff;outline-offset: 2px}
.utackle-lb-close svg {width: 18px;height: 18px}
.utackle-lb-caption {position: relative;padding: 16px 20px 20px;display: flex;flex-direction: column;gap: 10px;min-width: 0;overflow-y: auto}
.utackle-lb-hero {position: absolute;left: 0;right: 0;bottom: 0;z-index: 2;padding: 18px;display: flex;flex-direction: column;gap: 8px;min-width: 0}
.utackle-lb-hero-top {display: flex;align-items: center;gap: 8px;flex-wrap: wrap;min-width: 0}
.utackle-lb-hero .utackle-card-type {color: #fff;background: rgba(255, 255, 255, 0.22);backdrop-filter: blur(6px);-webkit-backdrop-filter: blur(6px)}
.utackle-lb-maker {font-size: 12px;font-weight: 500;color: rgba(255, 255, 255, 0.85);text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);overflow-wrap: anywhere;min-width: 0}
.utackle-lb-name {margin: 0;font-size: 20px;font-weight: 800;color: #fff;line-height: 1.35;letter-spacing: 0.01em;text-shadow: 0 1px 6px rgba(0, 0, 0, 0.5);overflow-wrap: anywhere;min-width: 0}
.utackle-lb-caption {position: relative;padding: 16px 18px 18px;display: flex;flex-direction: column;gap: 14px;min-width: 0;overflow-y: auto}
.utackle-lb-review {margin: 0;padding: 12px 14px;border-radius: 12px;background: var(--color-bg-muted, #f8fafc);border: 1px solid var(--color-border-light, #f1f5f9);min-width: 0}
.utackle-lb-review-head {display: flex;align-items: center;gap: 5px;margin-bottom: 6px;font-size: 11px;font-weight: 700;letter-spacing: 0.04em;color: var(--utk-accent, #64748b)}
.utackle-lb-review-head svg {width: 13px;height: 13px}
.utackle-lb-review-text {margin: 0;font-size: 13px;line-height: 1.75;color: var(--color-text-secondary, #475569);overflow-wrap: anywhere;min-width: 0}
.utackle-lb-actions {display: flex}
.utackle-lb-cta {display: flex;align-items: center;gap: 8px;width: 100%;padding: 13px 16px;min-height: 48px;border-radius: 14px;background: var(--utk-accent, #3b82f6);color: #fff;font-size: 14px;font-weight: 700;text-decoration: none;box-shadow: 0 6px 16px rgba(15, 23, 42, 0.16);transition: filter 0.15s ease, transform 0.15s ease}
.utackle-lb-cta > span {flex: 1;min-width: 0;text-align: left;overflow-wrap: anywhere}
.utackle-lb-cta-chevron {flex-shrink: 0;opacity: 0.85}
@media (hover: hover) {.utackle-lb-cta:hover {filter: brightness(1.06);transform: translateY(-1px)}}
.utackle-lb-cta:focus-visible {outline: 2px solid var(--utk-accent, #3b82f6);outline-offset: 2px}
.utackle-lb-cta svg {width: 18px;height: 18px}