.lbpc-card{max-width:520px;margin:2rem auto;padding:clamp(1.25rem,4vw,2.25rem);background:#fff;border:1px solid #eadfe3;border-radius:16px;box-shadow:0 8px 28px rgba(0,0,0,.06);color:#2a2025;font-size:1rem;line-height:1.5}
.lbpc-card .lbpc-title,.lbpc-card h2.lbpc-title{color:#2a2025!important;margin:0 0 .5rem;font-size:clamp(1.5rem,5vw,1.9rem);line-height:1.2}
.lbpc-card .lbpc-intro{margin:0 0 1.5rem;color:#5b4a52}
.lbpc-card,.lbpc-card p,.lbpc-card label,.lbpc-card li{color:#2a2025}
.lbpc-card .lbpc-hint{color:#6d5c64}.lbpc-card .lbpc-error{color:#b3261e}
.lbpc-card a{color:#c4186a}
.lbpc-field{margin:0 0 1.15rem}
.lbpc-field label{display:block;margin-bottom:.35rem;font-weight:600}
.lbpc-field input[type=text],.lbpc-field input[type=email],.lbpc-field input[type=password]{width:100%;box-sizing:border-box;min-height:48px;padding:.65rem .85rem;font-size:1rem;border:1.5px solid #cdbfc5;border-radius:10px;background:#fff;color:inherit}
.lbpc-field input:focus-visible,.lbpc-button:focus-visible,.lbpc-toggle:focus-visible{outline:3px solid #f08a24;outline-offset:2px}
.lbpc-field input[aria-invalid=true]{border-color:#b3261e}
.lbpc-hint{margin:.35rem 0 0;font-size:.875rem;color:#6d5c64}
.lbpc-error{margin:.35rem 0 0;font-size:.9rem;font-weight:600;color:#b3261e}
.lbpc-password{display:flex;gap:.5rem}
.lbpc-password input{flex:1;min-width:0}
.lbpc-toggle{min-height:48px;padding:0 .9rem;border:1.5px solid #cdbfc5;border-radius:10px;background:#faf5f7;color:inherit;font-size:.9rem;cursor:pointer}
.lbpc-check{display:grid;grid-template-columns:auto 1fr;column-gap:.65rem;align-items:start}
.lbpc-check input{width:1.3rem;height:1.3rem;margin-top:.15rem}
.lbpc-check label{margin:0;font-weight:400}
.lbpc-check .lbpc-error{grid-column:1/-1}
.lbpc-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.lbpc-turnstile{margin:0 0 1.15rem;min-height:65px}
.lbpc-button{display:block;width:100%;min-height:52px;padding:.8rem 1.2rem;border:0;border-radius:12px;background:linear-gradient(90deg,#e8337a,#f08a24);color:#fff;font-size:1.05rem;font-weight:700;cursor:pointer}
.lbpc-button:hover{filter:brightness(1.05)}
.lbpc-button[disabled]{opacity:.6;cursor:not-allowed}.lbpc-button[aria-busy=true]{opacity:.8}
.lbpc-legal{margin:1.25rem 0 0;text-align:center;font-size:.95rem}
.lbpc-notice{margin:0 0 1.25rem;padding:.8rem 1rem;border-radius:10px;border:1px solid;color:#2a2025}
.lbpc-notice p{margin:0 0 .5rem}.lbpc-notice p:last-child{margin:0}
.lbpc-notice--ok{background:#f4f4f2;border-color:#dcd8d3}
.lbpc-notice--error{background:#fdf1ef;border-color:#efc9c4}
.lbpc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:no-preference){.lbpc-button{transition:filter .15s}}
.lbpc-card--wide{max-width:760px}
.lbpc-field textarea{width:100%;box-sizing:border-box;padding:.65rem .85rem;font-size:1rem;font-family:inherit;border:1.5px solid #cdbfc5;border-radius:10px;background:#fff;color:#2a2025;resize:vertical}
.lbpc-field input[type=search]{width:100%;box-sizing:border-box;min-height:48px;padding:.65rem .85rem;font-size:1rem;border:1.5px solid #cdbfc5;border-radius:10px;background:#fff;color:#2a2025}
.lbpc-field textarea:focus-visible,.lbpc-field input[type=search]:focus-visible,.lbpc-note:focus-visible,.lbpc-add:focus-visible,.lbpc-icon-btn:focus-visible,.lbpc-chip input:focus-visible+span{outline:3px solid #f08a24;outline-offset:2px}
.lbpc-choices{border:0;padding:0;margin:0 0 1.15rem}
.lbpc-choices legend{font-weight:600;margin-bottom:.5rem;padding:0}
.lbpc-chip{display:inline-block;margin:0 .4rem .45rem 0}
.lbpc-chip input{position:absolute;opacity:0;width:1px;height:1px}
.lbpc-chip span{display:inline-block;padding:.4rem .85rem;border:1.5px solid #cdbfc5;border-radius:999px;background:#fff;cursor:pointer;font-size:.95rem}
.lbpc-chip input:checked+span{background:linear-gradient(90deg,#e8337a,#f08a24);border-color:transparent;color:#fff;font-weight:600}
.lbpc-card .lbpc-subtitle{margin:1.4rem 0 .25rem;font-size:1.15rem;color:#2a2025}
.lbpc-count{font-weight:400;font-size:.95rem;color:#6d5c64}
.lbpc-results,.lbpc-tracks{list-style:none;margin:.5rem 0 0;padding:0}
.lbpc-result,.lbpc-track{display:flex;align-items:center;gap:.75rem;padding:.55rem .6rem;border:1px solid #eadfe3;border-radius:10px;margin:0 0 .45rem;background:#fff}
.lbpc-track{align-items:flex-start;background:#faf5f7}
.lbpc-cover{flex:none;width:44px;height:44px;border-radius:6px;object-fit:cover;background:#eadfe3}
.lbpc-track-body{flex:1;min-width:0;display:flex;flex-direction:column}
.lbpc-track-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2a2025}
.lbpc-track-artist{font-size:.9rem;color:#6d5c64;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lbpc-note{width:100%;box-sizing:border-box;margin-top:.4rem;min-height:40px;padding:.4rem .6rem;font-size:.9rem;border:1px solid #cdbfc5;border-radius:8px;background:#fff;color:#2a2025}
.lbpc-add{flex:none;min-height:44px;padding:0 1rem;border:0;border-radius:10px;background:#2a2025;color:#fff;font-weight:600;cursor:pointer}
.lbpc-add[disabled]{opacity:.5;cursor:default}
.lbpc-track-actions{flex:none;display:flex;gap:.3rem}
.lbpc-icon-btn{min-width:44px;min-height:44px;border:1px solid #cdbfc5;border-radius:8px;background:#fff;color:#2a2025;font-size:1rem;cursor:pointer}
.lbpc-icon-btn[disabled]{opacity:.35;cursor:default}
.lbpc-hint--box{padding:.6rem .8rem;background:#fff6ec;border-radius:8px}
.lbpc-button--link{text-align:center;text-decoration:none;box-sizing:border-box;color:#fff!important}
.lbpc-notice ul{margin:0;padding-left:1.2rem}
@media (max-width:520px){.lbpc-track{flex-wrap:wrap}.lbpc-track-actions{width:100%;justify-content:flex-end}}

.lbpc-chips{display:flex;flex-wrap:wrap;gap:.45rem .4rem}
.lbpc-card .lbpc-field .lbpc-chip{display:inline-block;width:auto;margin:0;font-weight:400;position:relative}
.lbpc-chip span{line-height:1.2}

.lbpc-success{text-align:center;padding:.5rem 0 0}
.lbpc-success-icon{width:64px;height:64px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(135deg,#e8337a,#f08a24);color:#fff;font-size:2rem;line-height:64px;font-weight:700}
.lbpc-card .lbpc-success-title{margin:0 0 .4rem;font-size:1.5rem;color:#2a2025}
.lbpc-success-sub{margin:0 0 1.25rem;color:#5b4a52}
.lbpc-steps{list-style:none;margin:1.25rem auto;padding:0;max-width:420px;text-align:left}
.lbpc-steps li{position:relative;padding:0 0 1.1rem 2.4rem;display:flex;flex-direction:column}
.lbpc-steps li::before{content:"";position:absolute;left:.55rem;top:1.4rem;bottom:0;width:2px;background:#eadfe3}
.lbpc-steps li:last-child::before{display:none}
.lbpc-steps li::after{content:"";position:absolute;left:0;top:.1rem;width:1.15rem;height:1.15rem;border-radius:50%;border:2px solid #cdbfc5;background:#fff;box-sizing:border-box}
.lbpc-steps li.is-done::after{background:#2e7d32;border-color:#2e7d32}
.lbpc-steps li.is-current::after{border-color:#e8337a;background:#fff;box-shadow:0 0 0 3px rgba(232,51,122,.2)}
.lbpc-steps strong{color:#2a2025}.lbpc-steps span{font-size:.92rem;color:#6d5c64}
.lbpc-success-actions{display:flex;flex-direction:column;gap:.6rem;max-width:360px;margin:1.5rem auto 0}
.lbpc-button--ghost{background:#fff!important;color:#2a2025!important;border:1.5px solid #cdbfc5;text-align:center;text-decoration:none;box-sizing:border-box}

/* ---- Pages publiques (fond sombre du site) ---- */
.lbpc-view,.lbpc-community,.lbpc-profile,.lbpc-account{max-width:1000px;margin:0 auto;padding:1rem 0 2rem;color:#f3eef0;font-size:1rem;line-height:1.55}
.lbpc-view-meta,.lbpc-profile-meta{margin:0 0 .75rem;color:#c9bfc4;font-size:.95rem}
.lbpc-view-desc,.lbpc-profile-bio{max-width:70ch;margin:1rem 0;color:#f3eef0}
.lbpc-view-desc p,.lbpc-profile-bio p{margin:0 0 .8rem}
.lbpc-view .lbpc-hint,.lbpc-community .lbpc-hint,.lbpc-profile .lbpc-hint{color:#c9bfc4}
.lbpc-view .lbpc-hint--box{color:#2a2025}
h2.lbpc-view-heading{margin:2rem 0 .75rem;font-size:1.4rem;color:#fff}
.lbpc-view a,.lbpc-community a:not(.lbpc-button):not(.lbpc-pill),.lbpc-profile a:not(.lbpc-button),.lbpc-account a:not(.lbpc-button):not(.lbpc-link-btn){color:#ff8fc0}
.lbpc-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:.6rem 0}
.lbpc-tag{display:inline-block;padding:.25rem .7rem;border-radius:999px;background:rgba(232,51,122,.16);border:1px solid rgba(232,51,122,.45);color:#ffd3e5!important;font-size:.85rem;text-decoration:none}
.lbpc-tag--occasion{background:rgba(240,138,36,.16);border-color:rgba(240,138,36,.5);color:#ffe1bd!important}
a.lbpc-tag:hover{filter:brightness(1.2)}
.lbpc-tracklist{list-style:none;margin:0;padding:0;counter-reset:lbpc}
.lbpc-tl{display:flex;align-items:center;gap:.85rem;padding:.65rem .8rem;margin:0 0 .5rem;background:#fff;border-radius:12px;color:#2a2025;counter-increment:lbpc}
.lbpc-tl::before{content:counter(lbpc);flex:none;width:1.6rem;text-align:center;font-weight:700;color:#b0a0a8}
.lbpc-tl .lbpc-cover{width:56px;height:56px}
.lbpc-tl-body{flex:1;min-width:0;display:flex;flex-direction:column}
.lbpc-tl-title{color:#2a2025}
.lbpc-tl-artist{font-size:.92rem;color:#6d5c64}
.lbpc-tl-note{font-size:.88rem;font-style:italic;color:#8a6b2a;margin-top:.15rem}
.lbpc-listen{flex:none;display:inline-flex;align-items:center;min-height:44px;padding:0 .9rem;border-radius:10px;background:#2a2025;color:#fff!important;text-decoration:none;font-weight:600;font-size:.9rem}
.lbpc-listen:hover{background:#443138}
.lbpc-view .lbpc-legal,.lbpc-community .lbpc-legal,.lbpc-profile .lbpc-legal,.lbpc-account .lbpc-legal{text-align:left;color:#c9bfc4}

.lbpc-community-head{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:flex-end;margin-bottom:1.25rem}
h2.lbpc-community-title{margin:0 0 .3rem;font-size:clamp(1.5rem,4vw,2.1rem);color:#fff}
.lbpc-community-intro{margin:0;color:#c9bfc4}
.lbpc-button--inline{display:inline-block;width:auto;padding:.7rem 1.3rem;min-height:48px;text-decoration:none;text-align:center;box-sizing:border-box;color:#fff!important}
.lbpc-button--ghost.lbpc-button--inline{color:#2a2025!important}
.lbpc-account .lbpc-button--ghost.lbpc-button--inline{background:transparent!important;color:#fff!important;border-color:#5b6475}
.lbpc-filter-label{margin:.9rem 0 .35rem;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#a89da3}
.lbpc-filter-row{display:flex;flex-wrap:wrap;gap:.4rem}
.lbpc-pill{display:inline-block;padding:.4rem .9rem;border:1.5px solid #3a4250;border-radius:999px;color:#e9e3e6!important;text-decoration:none;font-size:.92rem;line-height:1.2;min-height:20px}
.lbpc-pill:hover{border-color:#ff8fc0}
.lbpc-pill.is-active{background:linear-gradient(90deg,#e8337a,#f08a24);border-color:transparent;color:#fff!important;font-weight:600}
.lbpc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1.1rem;margin-top:1.5rem}
.lbpc-item{background:#fff;border-radius:14px;padding:.7rem .7rem .9rem;color:#2a2025;display:flex;flex-direction:column}
.lbpc-item-link{text-decoration:none;color:inherit!important;display:block}
.lbpc-mosaic{display:grid;gap:2px;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:linear-gradient(135deg,#e8337a,#f08a24)}
.lbpc-mosaic--1{grid-template-columns:1fr}
.lbpc-mosaic--2,.lbpc-mosaic--3,.lbpc-mosaic--4{grid-template-columns:1fr 1fr}
.lbpc-mosaic img{width:100%;height:100%;object-fit:cover;display:block}
.lbpc-mosaic--2 img,.lbpc-mosaic--3 img:first-child{grid-row:span 1}
.lbpc-mosaic-empty{display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff}
.lbpc-item-title{margin:.7rem 0 .15rem;font-size:1.05rem;line-height:1.25;color:#2a2025}
.lbpc-item-meta{margin:0 0 .4rem;font-size:.88rem;color:#6d5c64}
.lbpc-item .lbpc-tags{margin:.25rem 0 0}
.lbpc-item .lbpc-tag{background:#fdeaf2;border-color:#f3bcd3;color:#8f1d52!important;font-size:.78rem;padding:.15rem .55rem}
.lbpc-item .lbpc-tag--occasion{background:#fff2e1;border-color:#f3d3a6;color:#8a4b00!important}
.lbpc-pager{display:flex;gap:.8rem;align-items:center;justify-content:center;margin:1.75rem 0 0;flex-wrap:wrap}
.lbpc-pager-info{color:#c9bfc4}
.lbpc-empty{margin-top:1.5rem;padding:2rem 1rem;text-align:center;border:1.5px dashed #3a4250;border-radius:14px;color:#e9e3e6}

.lbpc-profile-head{display:flex;gap:1.2rem;align-items:center;margin-bottom:1rem}
.lbpc-avatar{flex:none;width:88px;height:88px;border-radius:50%;background:linear-gradient(135deg,#e8337a,#f08a24);color:#fff;font-size:2.4rem;font-weight:700;display:flex;align-items:center;justify-content:center}

.lbpc-account .lbpc-card{margin:1.2rem 0}
.lbpc-account-head{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:flex-end}
.lbpc-account-head .lbpc-title{color:#fff!important}
.lbpc-account-head .lbpc-intro{margin:0;color:#c9bfc4}
.lbpc-account-actions{display:flex;gap:.6rem;flex-wrap:wrap}
.lbpc-mylist{list-style:none;margin:0;padding:0}
.lbpc-mylist-item{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;padding:.8rem 0;border-bottom:1px solid #eadfe3}
.lbpc-mylist-item:last-child{border-bottom:0}
.lbpc-mylist-main{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.lbpc-mylist-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.lbpc-link-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 .8rem;border:1.5px solid #cdbfc5;border-radius:10px;background:#fff;color:#2a2025!important;text-decoration:none;font-size:.9rem;cursor:pointer;list-style:none}
.lbpc-link-btn::-webkit-details-marker{display:none}
.lbpc-link-btn--danger{color:#b3261e!important;border-color:#e3b5b1}
.lbpc-badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600}
.lbpc-badge--ok{background:#e2f3e4;color:#1d5e22}
.lbpc-badge--wait{background:#fff0d9;color:#8a4b00}
.lbpc-inline-details{position:relative}
.lbpc-inline-form{margin:.5rem 0 0;padding:.7rem;border:1px solid #eadfe3;border-radius:10px;background:#fff;max-width:260px}
.lbpc-inline-form p{margin:0 0 .5rem}
.lbpc-button--danger{background:#b3261e!important}
.lbpc-details{margin:.5rem 0}
.lbpc-details>summary{cursor:pointer;font-weight:600;padding:.6rem 0;color:inherit}
.lbpc-card .lbpc-details>summary{color:#2a2025}
.lbpc-danger-zone{border-color:#e3b5b1}
.lbpc-field select{width:100%;box-sizing:border-box;min-height:48px;padding:.6rem .85rem;font-size:1rem;border:1.5px solid #cdbfc5;border-radius:10px;background:#fff;color:#2a2025}
.lbpc-report{margin-top:2rem;padding:1rem;background:#fff;border-radius:12px;color:#2a2025}
.lbpc-report .lbpc-details>summary{color:#2a2025}
.lbpc-report .lbpc-hint{color:#6d5c64}
.lbpc-report a{color:#c4186a!important}
.lbpc-account-link{font-weight:600}
.lbpc-toast{position:fixed;left:50%;bottom:1.2rem;transform:translateX(-50%);z-index:9999;max-width:90vw;padding:.8rem 1.2rem;border-radius:10px;background:#2a2025;color:#fff;box-shadow:0 6px 24px rgba(0,0,0,.35)}
@media (max-width:600px){.lbpc-tl{flex-wrap:wrap}.lbpc-listen{margin-left:3.2rem}.lbpc-profile-head{flex-direction:column;align-items:flex-start}}

/* Playlists collaboratives */
.lbpc-collab{margin:1.6rem 0 0}
.lbpc-view-heading--dark{color:#2a2025!important;margin-top:0}
.lbpc-collab-opt .lbpc-check{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;cursor:pointer}
.lbpc-collab-opt input[type=checkbox]{flex:none;width:1.2rem;height:1.2rem;margin-top:.2rem}
.lbpc-tl-by{font-size:.82rem;color:#6d5c64;margin-top:.15rem}
.lbpc-tl-by a{color:#b4235f}
.lbpc-mylist-item .lbpc-collab-panel{flex-basis:100%;background:#faf5f7;border-radius:12px;padding:.8rem 1rem;color:#2a2025}
.lbpc-invite-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.lbpc-invite-input{flex:1 1 260px;min-width:0;padding:.55rem .7rem;border:1px solid #d9c9d0;border-radius:10px;background:#fff;font-size:.9rem}
.lbpc-sugg-list{list-style:none;margin:.6rem 0 0;padding:0}
.lbpc-sugg{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;padding:.6rem 0;border-top:1px solid #eadfe3}
.lbpc-sugg-main{display:flex;flex-direction:column;min-width:0}
.lbpc-sugg-actions{display:flex;gap:.4rem;align-items:center}
.lbpc-suggest-chosen{margin-top:.5rem}
.lbpc-share-links{margin:.5rem 0;display:flex;gap:.4rem;flex-wrap:wrap}
.lbpc-share-links a.lbpc-link-btn,.lbpc-account .lbpc-collab-panel .lbpc-link-btn{color:#2a2025!important}
.lbpc-summary-plain{cursor:pointer;list-style:none;text-decoration:underline;margin-top:.4rem}
.lbpc-collab-panel .lbpc-inline-form textarea{width:100%;box-sizing:border-box;padding:.55rem .7rem;border:1px solid #d9c9d0;border-radius:10px;font:inherit}
.lbpc-collab-panel .lbpc-inline-form label{display:block;font-weight:600;margin-bottom:.3rem}
.lbpc-collab-sub{margin:.8rem 0 .2rem}.lbpc-members .lbpc-sugg{padding:.4rem 0}

.lbpc-picked{list-style:none;margin:.6rem 0 0;padding:0}
.lbpc-picked li{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.5rem .6rem;border:1px solid #eadfe3;border-radius:10px;margin:0 0 .45rem;background:#fff;color:#2a2025}
.lbpc-picked .lbpc-picked-name{flex:1 1 200px;min-width:0}
.lbpc-picked input[type=text]{flex:1 1 100%;box-sizing:border-box;padding:.45rem .6rem;border:1px solid #d9c9d0;border-radius:8px;font:inherit}
.lbpc-picked-del{border:0;background:none;color:#b3261e;font-weight:600;cursor:pointer;padding:.4rem}
.lbpc-add[aria-pressed=true]{background:#eadfe3;color:#2a2025}
