/* Shared publication rules; no product-specific image substitution. */
[hidden]{display:none!important}
:root{color-scheme:light}
body{background:#fff;color:#171717}
:focus-visible{outline:2px solid #6e5130;outline-offset:5px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.site-header{background:#fff}
.drawer:not([hidden]),.search-panel:not([hidden]){display:block;max-height:75vh;overflow:auto;z-index:100}
.search-panel input{font-size:16px}
.search-panel [data-close-panel]{background:none;border:0;padding:12px 0;cursor:pointer;color:#666}
.search-results a{display:block;padding:12px 0;border-bottom:1px solid #eee}
.media{background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}
.media>img{width:100%;height:100%;object-fit:contain}
.media.lifestyle>img{object-fit:cover}
.rl-guide-collage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:20px;width:100%;height:100%;background:white}
.rl-collage-item{margin:0;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px}
.rl-collage-item img{content:normal!important;position:static!important;width:100%!important;height:calc(100% - 34px)!important;max-width:100%!important;max-height:calc(100% - 34px)!important;object-fit:contain!important;filter:none!important;transform:none!important}
.rl-collage-item figcaption{font:400 12px/1.35 Inter,Arial,sans-serif;text-align:center;color:#555;flex-shrink:0}
.rl-collage-item.software-comparison{border-top:1px solid #ddd;padding:16px;gap:12px}
.rl-collage-item.software-comparison figcaption{font:500 clamp(23px,3vw,40px)/1.08 'Cormorant Garamond',Georgia,serif;color:#171717;overflow-wrap:anywhere}
.rl-collage-item.software-comparison p{font:400 12px/1.5 Inter,Arial,sans-serif;color:#666;text-align:center;margin:0;max-width:22em}
.rl-guide-collage[data-count="3"] .rl-collage-item:first-child{grid-row:span 2}
.rl-guide-primary-media{height:490px;max-width:880px;margin:38px auto 46px}
.category-alternative{font:400 13px/1.5 Inter,sans-serif;color:#666;text-align:center}
.hero-product:not(:has(.hero-product-media)){display:block!important}
.read{max-width:1040px}
.read>p,.find-body p{font-size:16px;line-height:1.8}
.read .rl-ledger-note{font-size:12px;line-height:1.65}
.rl-ledger table,.rl-ledger-wrap table,table.rl-ledger{min-width:700px}
.table-scroll,.rl-ledger-wrap,div.rl-ledger{max-width:100%;overflow-x:auto}
body table th,body table td{font-size:13px!important;line-height:1.55!important;padding:14px 12px!important}
.related-reading{max-width:760px;margin:64px auto;padding:28px 0;border-top:1px solid #ddd}
.related-reading h2{font:500 30px/1.1 'Cormorant Garamond',Georgia,serif}
.related-reading ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:14px 28px}
.related-reading a{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.category-page{padding-top:60px;padding-bottom:70px}
.category-intro{max-width:650px;font-size:15px;line-height:1.7;color:#666}
.category-controls{display:flex;gap:24px;flex-wrap:wrap;margin:35px 0;font-size:13px;align-items:center}
.category-controls select{font:inherit;background:#fff;border:1px solid #ddd;padding:8px;margin-left:8px}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 32px}
.category-grid .feed-card{min-width:0;display:block;text-decoration:none}
.category-grid .media{height:280px;margin-bottom:24px}
.category-grid h2{font:500 30px/1.08 'Cormorant Garamond',Georgia,serif;margin:12px 0}
.category-grid p{font-size:13px;line-height:1.65;color:#666}
.category-grid .card-meta{font-size:10px;display:flex;justify-content:space-between;gap:12px}
html.rl-flow-enabled{scroll-snap-type:y proximity}
body.rl-flow-enabled .feed-card{scroll-snap-stop:normal}
body.rl-flow-enabled .feed-card p{font-size:15px!important;line-height:1.7!important}
body.rl-flow-enabled .feed-card .media:has(.rl-guide-collage){display:block}
@media(max-width:820px){
 .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 22px}
 .rl-guide-primary-media{height:430px}
 .rl-guide-collage{gap:10px}
 .rl-collage-item{padding:5px}
 .related-reading{margin:45px 20px}
 body.rl-flow-enabled .feed-card p{font-size:14px!important}
}
@media(max-width:540px){
 .category-grid{grid-template-columns:1fr}
 .category-grid .media{height:330px}
 .rl-guide-primary-media{height:400px}
 .rl-collage-item figcaption{font-size:11px}
 .rl-guide-collage[data-count="3"] .rl-collage-item:first-child{grid-row:auto;grid-column:span 2}
 .rl-guide-collage[data-count="3"]{grid-template-rows:1fr 1fr}
 .read>p,.find-body p{font-size:15px}
}
.category-grid>.feed-card{grid-column:auto}
.category-grid .media{width:100%;max-width:none;border:0}
.category-grid .software-comparison{padding:4px;gap:6px}
.category-grid .software-comparison figcaption{font-size:clamp(17px,1.55vw,22px)}
.category-grid .software-comparison p{font-size:12px;line-height:1.4}
.category-page{padding-inline:32px}
@media(max-width:820px){.category-page{padding-inline:18px}}
.footer-links{flex-wrap:wrap;gap:12px 20px}

/* Static pagination and controls reserve their space before interaction loads. */
.discovery-pagination{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;max-width:1176px;margin:48px auto;padding:24px 18px;border-top:1px solid #e9e9e9;font-size:14px}
.discovery-pagination a{text-decoration:underline;text-underline-offset:4px}
.discovery-pagination a[rel="next"]{margin-left:auto}

/* Authored reading paths are available on first paint, including without JavaScript. */
.reading-path{margin:28px 0;padding:18px 0;border-block:1px solid #e9e9e9;font:400 13px/1.6 Inter,Arial,sans-serif}
.reading-path>span{display:block;color:#666;margin-bottom:8px}
.reading-path ul{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;padding:0;margin:0}
.reading-path a{text-decoration:underline;text-underline-offset:4px}
.home-reading-path{max-width:1176px;margin:22px auto;padding-inline:18px;scroll-snap-align:start}

/* Native software marks remain crisp; interface illustrations retain their aspect ratio. */
.rl-collage-item img[data-image-kind="software-icon"],
body.rl-flow-enabled .feed-card .rl-collage-item img[data-image-kind="software-icon"]{width:auto!important;height:auto!important;max-width:min(80%,160px)!important;max-height:min(65%,160px)!important}

/* Reader-controlled measurement; static footer control avoids layout shifts. */
.reading-choice{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
#reading-dialog{background:#fff;color:#111;border:1px solid #e9e9e9;max-width:560px;width:calc(100% - 32px);box-sizing:border-box;padding:28px;font:14px/1.65 Inter,sans-serif}
#reading-dialog::backdrop{background:rgba(0,0,0,.3)}
#reading-dialog h2{font:400 32px/1.15 'Cormorant Garamond',serif;margin:0 0 20px}
.reading-actions{display:flex;gap:12px;flex-wrap:wrap}
.reading-actions button{font:inherit;border:1px solid #111;background:#fff;color:#111;padding:10px 14px;cursor:pointer}
#reading-allow{background:#1e2b23;color:#fff}

/* Photographed recommendations: preserve exact manufacturer composition. */
.read .curation-photo{margin:24px 0 20px;background:#fff}.read .curation-photo img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain}.read .curation-photo figcaption{font:11px/1.5 Inter,sans-serif;color:#777;margin-top:12px}.read .rl-role .curation-photo img{max-height:420px}@media(max-width:600px){.read .curation-photo img,.read .rl-role .curation-photo img{max-height:360px}}

/* Guide recommendations: object photography alongside the editorial judgment. */
.rl-row:has(.rl-product-story),.rl-ranking:has(.rl-product-story),.rl-ranks:has(.rl-product-story){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important}
main .rl-product-story{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;align-items:center;gap:32px!important;border:0!important;border-top:1px solid var(--line)!important;padding:32px 0!important;margin:0!important;background:white!important}
main .rl-product-story:nth-child(even) .rl-product-photo{order:2}
main .rl-product-story .rl-product-photo{display:flex;align-items:center;justify-content:center;margin:0!important;padding:16px;min-width:0;height:300px;background:white}
main .rl-product-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;max-height:100%;transform:none!important}
main .rl-product-photo img[data-image-kind="software-icon"]{width:auto;height:auto;max-width:96px;max-height:96px}
main .rl-product-copy{min-width:0}
main .rl-product-copy h3,main .rl-product-copy .rl-rank-product{font:500 29px/1.15 'Cormorant Garamond',serif!important;letter-spacing:0!important;margin:8px 0 12px!important}
main .rl-product-copy p,main .rl-product-copy .rl-rank-why{font:400 14px/1.7 'Inter',sans-serif!important;color:var(--muted);margin:8px 0!important}
main .rl-product-copy .role,main .rl-product-copy .rl-rank-verdict{font:500 10px/1.5 'Inter',sans-serif!important;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
main .rl-product-copy .rl-rank-num{font-size:12px!important;margin-bottom:12px;color:var(--soft)}
@media(max-width:640px){
 main .rl-product-story{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;padding:24px 0 30px!important}
 main .rl-product-story:nth-child(even) .rl-product-photo{order:0}
 main .rl-product-story .rl-product-photo{height:280px;padding:14px}
 main .rl-product-copy h3,main .rl-product-copy .rl-rank-product{font-size:27px!important}
}

/* Editorial context: preserve the original frame and separate imagery from comparison data. */
.read .curation-scene{margin:48px 0;max-width:100%;}.read .curation-scene img{display:block;width:100%;height:auto;max-height:640px;object-fit:contain}.read .curation-scene figcaption{max-width:760px;margin:12px 0 0;font:12px/1.6 Inter,sans-serif;color:#666}@media(max-width:600px){.read .curation-scene{margin:32px 0}.read .curation-scene img{max-height:440px}}
