.rv-product{--ink:#241b1f;--line:#e6d9d3;--muted:#6b5c62;--accent:#a82b5c;--paper:#fffaf6;padding-bottom:30px}.rv-product *{box-sizing:border-box}.rv-product .rv-wrap{max-width:1240px;padding:0 28px}.rv-product .crumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:18px 0}.rv-product a{color:var(--ink)}.rv-product .product-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center;min-height:0}.rv-product figure{margin:0}.rv-product .product-photo{min-width:0;background:#fff;border-radius:18px;overflow:hidden}.rv-product .product-photo>img{display:block;width:100%;height:min(530px,43vw);object-fit:contain;padding:24px}.rv-product figcaption{padding:9px 14px;font:11px/1.4 system-ui;color:var(--muted);background:var(--paper)}.rv-product .product-copy{min-width:0;padding:15px 0}.rv-product .eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.rv-product h1{font-size:clamp(34px,4vw,52px);line-height:1.04;max-width:14ch;margin:0 0 18px}.rv-product .intro{font-size:15px;line-height:1.6;color:var(--muted);max-width:35ch}.rv-product .switcher{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 20px}.rv-product .switcher a{min-height:44px;min-width:70px;padding:10px 18px;text-decoration:none;border-radius:100px;border:1px solid var(--line);font-size:13px;text-align:center}.rv-product .switcher a[aria-current=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.rv-product .shade-caption h2{font-size:27px;margin-bottom:6px}.rv-product .shade-caption p{font-size:14px;margin-bottom:6px}.rv-product .micro{font-size:11px;color:var(--muted);line-height:1.5}.rv-product .actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:22px}.rv-product .rv-btn{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:100px;min-height:44px}.rv-product .rv-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.rv-product .quiet-link{font-size:12px;color:var(--muted);padding:12px 0;min-height:44px;display:inline-flex;align-items:center}.rv-product .shade-index{margin-top:20px;border-top:1px solid var(--line)}.rv-product .shade-index>summary{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.rv-product .shade-index__count{color:var(--muted);white-space:nowrap}.rv-product .shade-reference{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;font-size:11px;padding:0 0 10px}.rv-product .shade-reference>span{display:flex;gap:6px;align-items:baseline;border-top:1px dashed var(--line);padding-top:6px}.rv-product .shade-reference>span>span{color:var(--muted)}.rv-product .shade-index__note{font-size:11px;color:var(--muted);margin:0 0 12px}.rv-product .brief-fact{font-size:13px}.rv-product .visual-section{padding:40px 0 30px}.rv-product .section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:16px}.rv-product .section-heading h2{font-size:29px;margin:0}.rv-product .section-heading>a{font-size:12px;white-space:nowrap}.rv-product .visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.rv-product .visual-card>a{display:block;text-decoration:none}.rv-product .visual-card figure{border-radius:14px;overflow:hidden;background:#f4e5e9}.rv-product .visual-card img{width:100%;height:290px;display:block;object-fit:cover}.rv-product .visual-card img.packaging{object-fit:contain;background:#fff;padding:20px}.rv-product .visual-card h3{font:500 17px/1.3 system-ui;margin:11px 0 3px}.rv-product .visual-card>a>span{font-size:11px;color:var(--muted)}.rv-product .notes-section{padding-top:12px}.rv-product .notes{border-top:1px solid var(--line)}.rv-product .notes:last-child{border-bottom:1px solid var(--line)}.rv-product summary{cursor:pointer;font-size:14px;padding:20px 0;min-height:56px}.rv-product .notes-body{max-width:850px;padding:0 0 24px;font-size:13px;line-height:1.7}.rv-product .notes-body h3{font-size:23px;margin:20px 0 12px}.rv-product .source-line{border-top:1px solid var(--line);padding:18px 0 0;margin-top:18px}.rv-product .source-line p{font-size:12px;color:var(--muted);margin:8px 0}.rv-product fieldset{margin:0;padding:0;border:0;min-width:0}.rv-product legend{font-size:17px;margin-bottom:12px}.rv-product .filter-row{display:flex;gap:14px;flex-wrap:wrap;align-items:end;margin-bottom:12px}.rv-product .filter-row label{font-size:12px;flex:1 1 170px}.rv-product select{display:block;width:100%;padding:10px;border:1px solid var(--line);background:#fff;min-height:44px;border-radius:6px;margin-top:6px;color:var(--ink)}.rv-product .photo-empty{min-height:400px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:35px;background:#f1e8e4;text-align:center}.rv-product .photo-empty>span{font:italic 35px Georgia}.rv-product .photo-empty>p{margin-top:20px;font-size:14px}.rv-product :is(a,button,select,summary):focus-visible{outline:3px solid var(--accent);outline-offset:4px}
@media(max-width:760px){.rv-product .rv-wrap{padding:0 20px}.rv-product .product-hero{grid-template-columns:1fr;gap:20px}.rv-product .product-photo>img{height:330px;padding:16px}.rv-product .product-copy{padding:0}.rv-product h1{font-size:36px;max-width:18ch}.rv-product .intro{max-width:none;font-size:14px;margin-bottom:10px}.rv-product .switcher{margin:18px 0 15px}.rv-product .shade-reference{grid-template-columns:1fr}.rv-product .visual-section{padding-top:30px}.rv-product .section-heading h2{font-size:25px}.rv-product .visual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.rv-product .visual-card img{height:220px}.rv-product .visual-card h3{font-size:14px}.rv-product .visual-card figcaption{font-size:10px;padding:8px}.rv-product .photo-empty{min-height:290px}}
.rv-product .product-photo{min-height:0}

/* D04 dossier display: status, decision brief, signal band */
.rv-product .status-line{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px;font-size:13px;line-height:1.4}
.rv-product .status-line__text{color:var(--ink);font-weight:600}
.rv-product .status-line__badge{display:inline-block;padding:3px 10px;border-radius:100px;border:1px solid var(--line);font-size:11px;color:var(--muted);background:var(--paper)}
.rv-product .status-line[data-analysis-status="FACTS_ONLY"] .status-line__badge{border-color:#c9b8a8}
.rv-product .status-line[data-analysis-status="ANALYZED_LIMITED"] .status-line__badge{border-color:var(--accent);color:var(--accent)}
.rv-product .short-answer{font-size:15px;line-height:1.55;color:var(--ink);margin:0 0 14px;max-width:38ch}
.rv-product .decision-brief{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin:18px 0 8px;padding:14px 0;border-top:1px solid var(--line)}
.rv-product .decision-brief__title{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-weight:600}
.rv-product .decision-brief ul{margin:0;padding-left:18px}
.rv-product .decision-brief li{font-size:13px;line-height:1.5;margin:0 0 6px;color:var(--ink)}
.rv-product .signal-band{margin:28px 0 8px;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}
.rv-product .signal-band__title{font-size:18px;margin:0 0 10px}
.rv-product .signal-empty{margin:0;font-size:14px;line-height:1.55;color:var(--muted)}
.rv-product .signal-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.rv-product .signal-card{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}
.rv-product .signal-card h3{margin:0 0 6px;font-size:14px}
.rv-product .signal-card p{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}
.rv-product .consumer-verdict{margin:12px 0 0;font-size:14px;line-height:1.55;color:var(--ink);border-left:3px solid var(--accent);padding-left:12px}
@media(max-width:760px){
  .rv-product .decision-brief{grid-template-columns:1fr;gap:14px}
  .rv-product .status-line{margin-bottom:10px}
  .rv-product .short-answer{font-size:14px;max-width:none}
  .rv-product .signal-band{padding:14px}
}

/* T04 decision note + signal reason */
.rv-product .decision-note{grid-column:1 / -1;margin:0;font-size:14px;line-height:1.55;color:var(--muted)}
.rv-product .signal-reason{margin:8px 0 0}
