/* V17 final UX layer: compact affiliate placements, no horizontal-reading dependency, stronger contrast. */
:root{
  --v17-ink:#0a3442;
  --v17-text:#294f5b;
  --v17-muted:#496a74;
  --v17-link:#006b86;
  --v17-line:#c8e0e7;
  --v17-soft:#f3fafc;
  --v17-accent:#087d99;
}
html{max-width:100%;overflow-x:clip!important}
body{max-width:100%;overflow-x:clip!important;color:var(--v17-text)}
body *,body *::before,body *::after{box-sizing:border-box}
main,section,article,aside,header,footer,nav,.container{min-width:0}
img,svg,video,canvas,iframe{max-width:100%}
p,li,dd,dt,th,td,a,button,label,span,strong,b,small{overflow-wrap:anywhere;word-break:keep-all}
.quality-v7 .muted,.quality-v7 .section-title-row p,.quality-v7 .archive-card p,.quality-v7 .quality-card p,.quality-v7 .wiki-article p,.quality-v7 .wiki-article li{color:var(--v17-text)}
.quality-v7 a{color:inherit}
.quality-v7 .wiki-article a:not(.btn),.quality-v7 .content-section a:not(.btn){text-decoration-color:rgba(0,107,134,.28)}

/* The disclosure remains visible, but visually lighter than the content header. */
.affiliate-top-disclosure{background:#f7fbfc!important;color:#3f626d!important;border-color:#d5e7eb!important;font-size:11px!important}
.affiliate-top-disclosure .container{padding-top:5px!important;padding-bottom:5px!important}

/* AdPick: compact banner-like recommendation rows. No carousel / no drag. */
.affiliate-recommendations,.affiliate-placement-top,.affiliate-placement-bottom{
  padding:6px 0 7px!important;
  background:#f8fbfc!important;
  border-top:1px solid #d8e8ec!important;
  border-bottom:1px solid #d8e8ec!important;
}
.affiliate-placement-bottom{background:#fff!important}
.affiliate-shell{max-width:1040px!important}
.affiliate-head{display:block!important;margin:0 0 4px!important;min-height:0!important}
.affiliate-kicker{display:none!important}
.affiliate-head h2,.affiliate-placement-top .affiliate-head h2{
  margin:0!important;color:#315b66!important;font-size:11.5px!important;line-height:1.25!important;font-weight:850!important;letter-spacing:-.1px!important
}
.affiliate-head p,.affiliate-placement-top .affiliate-head p{display:none!important}
.affiliate-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px!important;overflow:visible!important;padding:0!important
}
.affiliate-card{
  display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;
  width:100%!important;min-width:0!important;height:72px!important;max-height:72px!important;
  overflow:hidden!important;border:1px solid #d5e5e9!important;border-radius:9px!important;
  background:#fff!important;box-shadow:none!important;transform:none!important
}
.affiliate-card:hover{border-color:#98cbd6!important;box-shadow:0 3px 10px rgba(8,80,105,.07)!important}
.affiliate-visual{width:62px!important;height:70px!important;min-width:62px!important;aspect-ratio:auto!important;overflow:hidden!important;background:#fff!important}
.affiliate-visual img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;background:#fff!important}
.affiliate-body{display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;min-width:0!important;min-height:0!important;height:70px!important;padding:6px 8px!important;overflow:hidden!important}
.affiliate-mall{font-size:8px!important;line-height:1.1!important;color:#5b7780!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.affiliate-body h3{display:-webkit-box!important;margin:2px 0!important;overflow:hidden!important;color:#153d48!important;font-size:10.5px!important;line-height:1.22!important;font-weight:750!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}
.affiliate-price{display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;min-width:0!important}
.affiliate-price strong{font-size:11px!important;line-height:1.1!important;color:#075f75!important;white-space:nowrap!important}
.affiliate-price del{display:none!important}
.affiliate-cta{margin-left:auto!important;margin-top:0!important;padding:0!important;border:0!important;color:#08758d!important;font-size:8.5px!important;line-height:1.1!important;white-space:nowrap!important}
.affiliate-disclosure{display:none!important}

/* Content-depth sections added only to previously thin articles. */
.v17-depth-section{margin:38px 0 0;padding-top:2px}
.v17-depth-section>h2{margin-top:0!important}
.v17-depth-section>h3{margin:24px 0 10px!important;color:var(--v17-ink);font-size:1.06rem}
.v17-compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0}
.v17-compare-grid>div{min-width:0;padding:14px;border:1px solid var(--v17-line);border-radius:12px;background:var(--v17-soft)}
.v17-compare-grid b{display:block;margin-bottom:6px;color:#075f78}
.v17-compare-grid p{margin:0!important;font-size:.92rem;line-height:1.68!important}
.v17-note{padding:13px 14px;border-left:4px solid #2aa4bb;background:#f0fafc;border-radius:0 10px 10px 0;color:#315864!important}
.v17-check-list{display:grid;gap:7px;margin:15px 0;padding:0;list-style:none}
.v17-check-list li{position:relative;margin:0!important;padding:11px 12px 11px 35px!important;border:1px solid var(--v17-line);border-radius:10px;background:#fbfdfe}
.v17-check-list li::before{content:"✓";position:absolute;left:12px;top:10px;color:#07809b;font-weight:900}
.v17-decision-table{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}
.v17-decision-table>div{padding:13px;border:1px solid var(--v17-line);border-radius:11px;background:#fbfdfe}
.v17-decision-table b,.v17-decision-table span{display:block}.v17-decision-table b{margin-bottom:5px;color:#075f78}.v17-decision-table span{font-size:.9rem;line-height:1.65;color:var(--v17-text)}

/* Static crawlable neighbor links improve hierarchy and user discovery. */
.v17-cluster-links{margin:34px 0 6px;padding:18px;border:1px solid var(--v17-line);border-radius:15px;background:#f8fcfd}
.v17-cluster-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}
.v17-cluster-head h2{margin:0!important;padding:0!important;border:0!important;font-size:18px!important;color:var(--v17-ink)!important}
.v17-cluster-head>a{color:var(--v17-link)!important;font-size:12px;font-weight:800;text-decoration:none}
.v17-cluster-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.v17-cluster-grid>a{display:block;min-width:0;padding:10px 11px;border:1px solid #d9e8ec;border-radius:10px;background:#fff;text-decoration:none!important}
.v17-cluster-grid span{display:block;margin-bottom:3px;color:#66818a;font-size:9px;font-weight:800}.v17-cluster-grid b{display:block;color:#174552;font-size:12px;line-height:1.35}

/* No "drag to read" patterns on normal content. Tables wrap rather than forcing a 560px canvas. */
.quality-v7 .table-scroll{max-width:100%}
.quality-v7 table{max-width:100%}
.quality-v7 .wiki-table,.quality-v7 .wiki-infobox,.quality-v7 .summary-table{width:100%!important;max-width:100%!important;table-layout:fixed!important}
.quality-v7 .wiki-table th,.quality-v7 .wiki-table td,.quality-v7 .wiki-infobox th,.quality-v7 .wiki-infobox td,.quality-v7 .summary-table th,.quality-v7 .summary-table td{min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:keep-all!important}

/* Higher-contrast text on pale cyan surfaces. */
.home-premium .editorial-link small,.home-premium .topic-link span,.qna-hub .qna-category-tile small,.points-explorer-body .spot-result-item p,.dashboard-page .muted,.tide-center-body .muted{color:#456872!important}
.home-premium .editorial-link,.home-premium .topic-link,.quality-v7 .archive-card,.quality-v7 .card{color:var(--v17-text)}

@media (max-width:900px){
  .affiliate-shell{max-width:none!important}
  .quality-v7 .main-nav .container,.quality-v7 .archive-tabs,.qna-hub .qna-filter-row,.home-premium .hero-keywords,.search-chips,.dashboard-page .dashboard-tabs,.dashboard-page .nifs-tabs,.dashboard-page .windy-layers,.dashboard-page .chart-switch,.tide-center-body .all-tabs,.tide-center-body .chart-buttons{overflow:visible!important;overflow-x:visible!important;scroll-snap-type:none!important}
  .quality-v7 .archive-tabs,.qna-hub .qna-filter-row,.home-premium .hero-keywords,.search-chips,.dashboard-page .dashboard-tabs,.dashboard-page .nifs-tabs,.dashboard-page .windy-layers,.dashboard-page .chart-switch,.tide-center-body .all-tabs,.tide-center-body .chart-buttons{flex-wrap:wrap!important}
  .quality-v7 .archive-tabs button,.qna-hub .qna-filter-row button,.home-premium .hero-keywords button,.search-chips button,.dashboard-page button,.tide-center-body button{white-space:normal!important}
}

@media (max-width:720px){
  .quality-v7 .container{width:min(100% - 22px,1180px)!important}
  .affiliate-recommendations,.affiliate-placement-top,.affiliate-placement-bottom{padding:5px 0 6px!important}
  .affiliate-grid{grid-template-columns:1fr!important;gap:0!important}
  .affiliate-card{grid-template-columns:58px minmax(0,1fr)!important;height:68px!important;max-height:68px!important}
  .affiliate-card:nth-child(n+2){display:none!important}
  .affiliate-visual{width:58px!important;height:66px!important;min-width:58px!important}
  .affiliate-body{height:66px!important;padding:5px 7px!important}
  .affiliate-body h3{font-size:10px!important;line-height:1.2!important;-webkit-line-clamp:2!important}
  .affiliate-price strong{font-size:10.5px!important}.affiliate-cta{font-size:8px!important}
  .affiliate-head h2,.affiliate-placement-top .affiliate-head h2{font-size:10.5px!important}

  .v17-compare-grid,.v17-decision-table,.v17-cluster-grid{grid-template-columns:1fr!important}
  .v17-cluster-links{padding:14px 12px}.v17-cluster-head{align-items:flex-start}.v17-cluster-head h2{font-size:16px!important}

  /* Tables stay inside the viewport. This favors readable wrapping over horizontal swipe. */
  .quality-v7 .table-scroll{overflow:visible!important;width:100%!important}
  .quality-v7 .wiki-table,.quality-v7 .wiki-infobox,.quality-v7 .summary-table,.forecast-table,.nifs-table{display:table!important;width:100%!important;min-width:0!important;table-layout:fixed!important;font-size:11px!important}
  .quality-v7 .wiki-table tbody,.quality-v7 .wiki-infobox tbody{display:table-row-group!important;width:auto!important;min-width:0!important}
  .quality-v7 table th,.quality-v7 table td,.forecast-table th,.forecast-table td,.nifs-table th,.nifs-table td{padding:7px 6px!important;font-size:11px!important;line-height:1.45!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .quality-v7 .wiki-infobox th{width:34%!important}

  .qna-related-grid small{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
  .points-explorer-body .region-point-list button small{white-space:normal!important;text-align:right}
  .home-premium .home-hero h1,.quality-v7 .quality-archive-hero h1,.quality-v7 .page-hero h1,.quality-v7 .wiki-title-row h1{overflow-wrap:anywhere!important;word-break:keep-all!important}
  .home-premium .luxe-route div,.home-premium .editorial-shell,.home-premium .topic-grid,.home-premium .home-qna-list a{min-width:0!important;max-width:100%!important}
}

@media (max-width:390px){
  .quality-v7 .container{width:min(100% - 18px,1180px)!important}
  .affiliate-card{grid-template-columns:52px minmax(0,1fr)!important;height:64px!important;max-height:64px!important}
  .affiliate-visual{width:52px!important;height:62px!important;min-width:52px!important}
  .affiliate-body{height:62px!important;padding:5px 6px!important}
  .affiliate-body h3{font-size:9.6px!important}.affiliate-mall{font-size:7.5px!important}.affiliate-price strong{font-size:10px!important}
}

/* Static crawl directories */
.v17-point-groups,.v17-sitemap-groups{display:grid;gap:9px}
.v17-point-groups details,.v17-sitemap-groups details{border:1px solid var(--v17-line);border-radius:12px;background:#fff;overflow:hidden}
.v17-point-groups summary,.v17-sitemap-groups summary{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;color:#174955;font-weight:850;background:#f7fbfc}
.v17-point-groups summary span,.v17-sitemap-groups summary span{color:#66828a;font-size:12px}
.v17-point-links,.v17-sitemap-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px}
.v17-point-links a,.v17-sitemap-links a{display:block;min-width:0;padding:10px;border:1px solid #e0ecef;border-radius:9px;background:#fff;text-decoration:none;color:#174955}
.v17-point-links b,.v17-point-links span{display:block}.v17-point-links span{margin-top:4px;color:#5b7680;font-size:11px;line-height:1.45}
.v17-sitemap-links a{font-size:12px;line-height:1.45}
.v17-hub-depth{border-top:1px solid #d7e8ec}
@media(max-width:900px){.v17-point-links,.v17-sitemap-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.v17-point-links,.v17-sitemap-links{grid-template-columns:1fr}.v17-point-groups summary,.v17-sitemap-groups summary{padding:11px 12px}.v17-point-links,.v17-sitemap-links{padding:8px}}
