/* Shared additions keep the existing page palettes and typography. */
.pl-mobile-nav { display:none; position:relative; margin-left:auto; }
.pl-mobile-nav summary { cursor:pointer; padding:10px 14px; border:1px solid var(--line,#8e7a5f); border-radius:10px; font-weight:700; min-height:44px; }
.pl-mobile-nav nav { position:absolute; right:0; top:calc(100% + 8px); width:min(260px,calc(100vw - 28px)); max-height:70vh; overflow:auto; padding:10px; background:var(--paper,#fbfaf6); border:1px solid var(--line,#8e7a5f); border-radius:12px; box-shadow:0 12px 30px #0002; z-index:30; }
.pl-mobile-nav nav a { display:block; padding:12px; border-radius:8px; }
.pl-mobile-nav nav a:hover, .pl-mobile-nav nav a[aria-current="page"] { background:var(--sage,#dfe8db); }
.pl-mobile-nav :focus-visible, .product-example a:focus-visible { outline:3px solid var(--accent,#355f45); outline-offset:3px; }
.directory .filters { grid-template-columns:repeat(4,minmax(0,1fr)); }
.directory .search-field { grid-column:span 2; }
.directory .checkline, .directory .filter-help { grid-column:1 / -1; }
.directory .filter-help { margin:0; color:var(--muted); font-size:14px; }
.directory .checkline label { display:flex; align-items:center; gap:8px; min-height:44px; }
.directory .results-bar { gap:16px; flex-wrap:wrap; }
.directory .empty-results { grid-column:1 / -1; padding:24px; border:1px solid var(--line); border-radius:14px; background:var(--paper); }
.product-examples { margin-bottom:22px; }
.product-examples > p { color:var(--muted); }
.product-example-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.product-example { padding:22px; border:1px solid var(--line); border-radius:14px; background:var(--paper); }
.product-example h3 { margin:0 0 12px; font-size:20px; }
.product-example p { margin:0 0 12px; }
.product-example a { text-decoration:underline; text-underline-offset:3px; font-weight:700; }
.product-example .checked { font-size:13px; color:var(--muted); }
@media(max-width:900px) {
  header .nav { gap:12px; flex-wrap:wrap; }
  header .links, header .nav-links { display:none; }
  .pl-mobile-nav { display:block; }
  header .back-link { display:none; }
  .directory .filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:620px) {
  .directory .filters, .product-example-grid { grid-template-columns:minmax(0,1fr); }
  .directory .search-field { grid-column:auto; }
}

.breakdown-item .score-explanation { margin:10px 0 0; color:var(--muted); font-size:14px; font-weight:400; line-height:1.5; }

.source-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:20px; }
.source-reference { padding:16px; border:1px solid var(--line); border-radius:12px; overflow-wrap:anywhere; }
.source-reference h3 { font-size:16px; margin:0 0 8px; }
.source-reference h3 a { text-decoration:underline; text-underline-offset:3px; }
.source-reference .source-kind { font-size:12px; font-weight:700; margin:0 0 8px; }
.source-reference p { font-size:14px; line-height:1.5; }
.score-card .score-review-status { font-size:14px; margin:12px 0 0; color:var(--muted); }
@media(max-width:620px) { .source-list { grid-template-columns:minmax(0,1fr); } }
