        .list-show__header {
            margin-top: var(--space-3);
            display: flex;
            align-items: flex-start;
            gap: var(--space-3);
        }
        .list-show__title-block { flex: 1; min-width: 0; }
        .list-show__title {
            margin: 0;
            font-size: clamp(1.4rem, 4vw, 2rem);
            font-weight: 600;
            letter-spacing: -0.02em;
            line-height: 1.15;
        }
        .list-show__owner {
            margin-top: 8px;
            font-size: 0.9rem;
            color: var(--muted);
        }
        .list-show__owner a {
            color: var(--ink);
            border-bottom: 1px solid var(--border);
        }
        .list-show__owner a:hover { color: var(--violet); border-bottom-color: var(--violet); }
        .list-show__description {
            margin-top: var(--space-3);
            font-size: 0.98rem;
            line-height: 1.55;
            color: var(--ink);
            max-width: 60ch;
        }
        /* Like de liste : toggle (non-proprio) ou compteur discret (proprio) */
        .list-like-form { margin: var(--space-3) 0 0; }
        .list-likes-static {
            display: inline-flex;
            align-items: center;
            gap: 5px;
            margin: var(--space-3) 0 0;
            font-family: var(--font-mono);
            font-size: 0.78rem;
            color: var(--muted);
        }
        .list-likes-static svg { color: var(--orange); }

        /* ========== Menu propriétaire (burger) ========== */
        .list-menu {
            position: relative;
            flex-shrink: 0;
        }
        .list-menu__trigger {
            list-style: none;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 44px;
            height: 44px;
            border-radius: var(--radius-sm);
            border: 1px solid var(--border);
            background: var(--bg-elevated);
            color: var(--ink);
            cursor: pointer;
            transition: background 120ms, border-color 120ms;
        }
        .list-menu__trigger::-webkit-details-marker { display: none; }
        .list-menu__trigger:hover { background: var(--bg-paper); border-color: var(--border-strong); }
        .list-menu__trigger svg { width: 20px; height: 20px; }
        .list-menu__dropdown {
            position: absolute;
            top: calc(100% + 6px);
            right: 0;
            z-index: 20;
            min-width: 180px;
            padding: 6px;
            background: var(--bg-elevated);
            border-radius: var(--radius);
            box-shadow: var(--shadow-lg);
            display: flex;
            flex-direction: column;
            gap: 2px;
        }
        .list-menu__dropdown form { margin: 0; }
        .list-menu__option {
            display: flex;
            align-items: center;
            width: 100%;
            min-height: 40px;
            padding: 0 12px;
            border: 0;
            background: transparent;
            border-radius: var(--radius-sm);
            font-family: inherit;
            font-size: 0.92rem;
            font-weight: 500;
            color: var(--ink);
            text-align: left;
            text-decoration: none;
            cursor: pointer;
        }
        .list-menu__option:hover { background: var(--bg-paper); text-decoration: none; }
        .list-menu__option--danger { color: #C53030; }

        /* ========== Zone de gestion (turbo-frame) ========== */
        .list-manage { display: block; margin-top: var(--space-5); }
        .list-manage__bar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: var(--space-3);
            margin-bottom: var(--space-3);
            padding: 8px 8px 8px 14px;
            background: var(--bg-paper);
            border-radius: var(--radius);
        }
        .list-manage__hint { font-size: 0.85rem; color: var(--muted); }

        /* ========== Panneau d'ajout (recherche inline) ========== */
        .list-add {
            margin-bottom: var(--space-4);
            padding: var(--space-3);
            background: var(--bg-paper);
            border-radius: var(--radius);
        }
        .list-add__head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: var(--space-2);
        }
        .list-add__title { font-weight: 600; font-size: 0.95rem; }
        .list-add__close { font-size: 0.85rem; color: var(--muted); }
        .list-add__close:hover { color: var(--ink); }
        .list-add__search {
            display: flex;
            background: var(--bg-elevated);
            border: 1px solid var(--border-strong);
            border-radius: var(--radius-sm);
            padding: 3px;
            transition: border-color 120ms, box-shadow 120ms;
        }
        .list-add__search:focus-within { border-color: var(--violet); box-shadow: 0 0 0 3px var(--violet-soft); }
        .list-add__search input[type="search"] {
            flex: 1;
            border: 0;
            background: transparent;
            color: var(--ink);
            font-family: inherit;
            font-size: 16px;
            padding: 8px 10px;
            min-height: 38px;
        }
        .list-add__search input[type="search"]:focus { outline: none; box-shadow: none; }
        .list-add__search button {
            border: 0;
            background: var(--ink);
            color: var(--bg);
            border-radius: calc(var(--radius-sm) - 1px);
            font-family: inherit;
            font-size: 0.85rem;
            font-weight: 500;
            padding: 0 14px;
            min-height: 38px;
            cursor: pointer;
        }
        .list-add__results { list-style: none; margin: var(--space-3) 0 0; padding: 0; display: grid; gap: 6px; }
        .list-add__result {
            display: flex;
            align-items: center;
            gap: var(--space-2);
            padding: 6px;
            border-radius: var(--radius-sm);
        }
        .list-add__result:hover { background: var(--bg-elevated); }
        .list-add__cover {
            flex-shrink: 0;
            width: 32px;
            height: 46px;
            object-fit: cover;
            border-radius: 3px;
            background: var(--bg-elevated);
        }
        .list-add__cover--ph {
            display: inline-flex; align-items: center; justify-content: center;
            color: var(--subtle); border: 1px solid var(--border);
        }
        .list-add__cover--ph svg { width: 15px; height: 15px; }
        .list-add__info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
        .list-add__name {
            font-size: 0.9rem; font-weight: 500; color: var(--ink); line-height: 1.25;
            display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;
        }
        .list-add__meta {
            font-size: 0.78rem; color: var(--muted); line-height: 1.2;
            display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;
        }
        .list-add__btn {
            flex-shrink: 0;
            border: 1px solid var(--violet);
            background: transparent;
            color: var(--violet);
            border-radius: 999px;
            font-family: inherit;
            font-size: 0.8rem;
            font-weight: 600;
            padding: 6px 12px;
            min-height: 34px;
            cursor: pointer;
            white-space: nowrap;
            transition: background 120ms, color 120ms, border-color 120ms;
        }
        .list-add__btn:hover { background: var(--violet-soft); }
        .list-add__btn.is-added {
            border-color: var(--border-strong);
            color: var(--muted);
            background: var(--bg-elevated);
        }
        .list-add__empty { margin: var(--space-3) 0 0; font-size: 0.9rem; color: var(--muted); }

        /* ========== Grille de couvertures (100% visuel, 4 par ligne sur mobile) ========== */
        .list-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: var(--space-2);
        }
        @media (min-width: 600px) { .list-grid { grid-template-columns: repeat(6, 1fr); gap: var(--space-3); } }
        @media (min-width: 1024px) { .list-grid { grid-template-columns: repeat(8, 1fr); } }

        .list-grid-item { position: relative; }
        .list-grid-item__link {
            display: block;
            text-decoration: none;
            color: inherit;
            transition: transform 200ms;
        }
        .list-grid-item__link:active { transform: scale(0.97); }
        .list-grid-item__cover {
            width: 100%;
            aspect-ratio: 2/3;
            border-radius: var(--radius);
            object-fit: cover;
            background: var(--bg-paper);
            box-shadow: var(--shadow-cover), inset 0 0 0 1px var(--cover-ring);
        }
        .list-grid-item__cover--placeholder {
            display: flex; align-items: center; justify-content: center;
            color: var(--subtle);
            border: 1px solid var(--border);
        }
        /* × de retrait (mode organiser) */
        .list-grid-item__remove { margin: 0; }
        .list-grid-item__remove button {
            position: absolute;
            top: 4px;
            right: 4px;
            width: 30px;
            height: 30px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border: 0;
            border-radius: 50%;
            background: rgba(15, 15, 18, 0.78);
            color: #fff;
            cursor: pointer;
            box-shadow: var(--shadow-sm);
        }
        .list-grid-item__remove button:hover { background: #C53030; }
        .list-grid-item__remove svg { width: 16px; height: 16px; }

        /* ========== État vide ========== */
        .list-empty {
            padding: var(--space-5);
            text-align: center;
            color: var(--muted);
            background: var(--bg-paper);
            border-radius: var(--radius);
        }
        .list-empty__sub {
            margin: 6px 0 0;
            font-size: 0.88rem;
            color: var(--subtle);
        }
        .list-empty__cta {
            display: inline-block;
            margin-top: var(--space-3);
            color: var(--violet);
            font-weight: 500;
        }

        .flash-list { margin: var(--space-3) 0 0; padding: 0; list-style: none; }
        .flash {
            padding: 10px 14px;
            border-radius: var(--radius-sm);
            font-size: 0.92rem;
            border: 1px solid;
        }
        .flash--error { background: #FFE0E0; border-color: #C53030; color: #7A1D1D; }
