/* Mur des gemmes v2 — moteur complet (charte velours) */
.pvw{--velvet:#0E0D12;--velvet2:#17161D;--ivory:#EFEAE0;--dim:#B0A99B;--gold:#C9A45C;--line:rgba(239,234,224,.14)}
.pvw-bar{position:sticky;top:0;z-index:30;background:rgba(14,13,18,.97);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);padding:12px 0}
.pvw-controls{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.pvw-search{flex:1 1 230px;background:var(--velvet2) !important;border:1px solid var(--line) !important;border-radius:100px !important;color:var(--ivory) !important;padding:11px 18px !important;font-family:inherit;font-size:.95rem;outline:none}
.pvw-search::placeholder{color:var(--dim)}
.pvw-search:focus{border-color:var(--gold)}
.pvw-fbtn{background:var(--velvet2);border:1px solid var(--line);border-radius:100px;color:var(--ivory);padding:10px 16px;font-family:inherit;font-size:.85rem;cursor:pointer}
.pvw-fbtn.on,.pvw-fbtn:hover{border-color:var(--gold);color:var(--gold)}
.pvw-count{color:var(--dim);font-size:.82rem;white-space:nowrap;margin-left:auto}
.pvw-reset{background:none;border:none;color:var(--gold);font-size:.8rem;cursor:pointer;font-family:inherit;text-decoration:underline}
.pvw-panel{display:none;background:var(--velvet,#0E0D12);border-bottom:1px solid var(--line);padding:16px 0 10px}
.pvw-panel .pvw-prow{max-width:1240px;margin:0 auto 14px;padding:0 24px}
.pvw-panel.open{display:block}
.pvw-prow{display:flex;gap:22px;flex-wrap:wrap;align-items:flex-start;margin-bottom:14px}
.pvw-plabel{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);margin:0 0 8px}
.pvw-colors{display:flex;gap:7px;flex-wrap:wrap;max-width:520px}
.pvw-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:100px;padding:5px 11px;font-size:.76rem;color:var(--dim);cursor:pointer;background:none;font-family:inherit}
.pvw-chip i{width:10px;height:10px;border-radius:50%;display:block;border:1px solid rgba(255,255,255,.25)}
.pvw-chip:hover{border-color:var(--gold);color:var(--gold)}
.pvw-chip.on{background:var(--gold);border-color:var(--gold);color:var(--velvet)}
.pvw-select{background:var(--velvet2) !important;color:var(--ivory) !important;border:1px solid var(--line);border-radius:8px;color:var(--ivory);padding:9px 12px;font-family:inherit;font-size:.85rem;outline:none;min-width:170px;max-width:210px}
.pvw-range{min-width:200px}
.pvw-range .vals{color:var(--ivory);font-size:.82rem;margin-bottom:4px}
.pvw-dual{position:relative;height:26px}
.pvw-dual input[type=range]{position:absolute;left:0;top:0;width:100%;margin:0;-webkit-appearance:none;appearance:none;background:none;pointer-events:none;height:26px}
.pvw-dual input[type=range]::-webkit-slider-runnable-track{height:3px;background:transparent}
.pvw-dual input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:15px;height:15px;border-radius:50%;background:var(--gold);border:2px solid var(--velvet);margin-top:-6px;pointer-events:auto;cursor:pointer}
.pvw-dual input[type=range]::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:var(--gold);border:2px solid var(--velvet);pointer-events:auto;cursor:pointer}
.pvw-dual .track{position:absolute;left:0;right:0;top:11px;height:3px;background:var(--line);border-radius:2px}
.pvw-dual .fill{position:absolute;top:11px;height:3px;background:var(--gold);border-radius:2px}
.pvw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-top:28px}
.pvw-alias{grid-column:1/-1;background:linear-gradient(120deg,rgba(201,164,92,.16),rgba(201,164,92,.04));border:1px solid rgba(201,164,92,.45);border-radius:10px;padding:16px 20px;color:var(--ivory);text-decoration:none;display:block}
.pvw-alias b{color:var(--gold);text-transform:capitalize;font-family:"Didot","Bodoni MT",Georgia,serif;font-weight:400;font-size:1.2rem}
.pvw-alias span{color:var(--dim);font-size:.9rem}
.pvw-tile{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background:var(--velvet2);border:1px solid var(--line);display:block;text-decoration:none;transition:transform .22s,border-color .22s}
.pvw-tile:hover{transform:translateY(-4px);border-color:rgba(201,164,92,.55)}
.pvw-tile img{width:100%;height:100%;object-fit:cover;display:block}
.pvw-tile .nm{position:absolute;inset:auto 0 0 0;padding:22px 10px 8px;background:linear-gradient(180deg,transparent,rgba(14,13,18,.94));color:var(--ivory);font-size:.85rem;letter-spacing:.04em;text-transform:capitalize;text-align:center}
.pvw-tile .why{position:absolute;top:8px;left:8px;right:8px;background:rgba(14,13,18,.85);border:1px solid rgba(201,164,92,.4);color:var(--gold);font-size:.68rem;padding:3px 8px;border-radius:100px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pvw-tile.noimg{background:radial-gradient(circle at 35% 30%,#3a4a5a,#16202a)}
.pvw-empty{text-align:center;color:var(--dim);padding:60px 0;display:none}
.pvw-corr{max-width:1240px;margin:14px auto 0;padding:0 24px;color:var(--dim);font-size:.9rem;display:none}
.pvw-corr b{color:var(--gold)}
@media (prefers-reduced-motion:reduce){.pvw-tile,.pvw-chip{transition:none}}
