/* Typography and palette adapted from the Topreads design reference.
   This layer leaves page structure, source covers, and interactions intact. */
:root{--accent:#0e5c43;--ink:#14171a;--body-ink:#383e43;--muted:#5f645f;--rule:#dedfdb;--sans:'Libre Franklin',system-ui,sans-serif;--serif:'Source Serif 4',Georgia,serif}
body{background:#fff;color:var(--ink);font-family:var(--sans)}
header{border-bottom:2px solid #494e4b}
header span{font:800 20px/1.2 var(--sans);letter-spacing:-.055em}
body:not(.review-page) main>h1{font:800 clamp(40px,5.1vw,62px)/1.04 var(--sans);letter-spacing:-.055em;color:var(--ink)}
body:not(.review-page) main>h1 em{font:400 clamp(21px,2.4vw,28px)/1.4 var(--sans);letter-spacing:-.025em;color:var(--body-ink)}
.recommendations-emphasis{color:var(--accent);font-weight:800}
.intro{font:400 21px/1.55 var(--serif);color:var(--body-ink)}
.review-card{border-color:var(--rule)}
.review-card:last-child{border-color:var(--rule)}
.review-card h2{font:800 clamp(25px,2.8vw,32px)/1.12 var(--sans);letter-spacing:-.04em;color:var(--ink)}
.review-card p{font:400 18px/1.55 var(--serif);color:var(--body-ink)}
.review-card .byline,.essay .byline{font:500 13px/1.5 var(--sans);color:var(--muted)}
.review-card:hover{background:#f5f8f5}
.review-cta{font:700 13px/1.5 var(--sans);color:var(--accent)}
.review-card:hover h2,.review-card:hover .review-cta{color:var(--accent)}
.more-resources{font-family:var(--sans);color:var(--muted)}
#detail-copy h2{font:800 clamp(26px,3vw,34px)/1.12 var(--sans);letter-spacing:-.04em;color:var(--ink)}
#resource-detail-description p{font:400 18px/1.65 var(--serif);color:var(--body-ink)}
#resource-filter #resource-detail-meta{font:500 14px/1.5 var(--sans);color:var(--muted)}
#resource-detail-meta{font:500 14px/1.5 var(--sans);color:var(--muted)}
#resource-detail-link{font:700 14px/1.5 var(--sans);color:var(--accent)}
#resource-filter #resource-filter-count{font:700 italic clamp(28px,3vw,36px)/1.2 var(--serif);color:var(--accent)}
#back-to-shelf{font:600 14px/1.4 var(--sans);background:transparent;border:0;color:var(--accent);border-radius:0;box-shadow:none;padding:10px 0;min-height:44px}
#back-to-shelf:hover{background:transparent;color:#094a35}
#back-to-shelf:active{background:transparent;color:#073a2a}
.back-to-guide{font:600 14px/1.5 var(--sans);color:var(--accent)}
.answer{border-top:2px solid #494e4b}
.review-page .essay h2{font:800 clamp(32px,4vw,48px)/1.08 var(--sans);letter-spacing:-.045em;color:var(--ink)}
.essay p,.essay .editorial-section p:first-of-type{font:400 19px/1.65 var(--serif);color:var(--body-ink)}
.essay>div>p:first-of-type{font-size:22px;line-height:1.5}
.essay .editorial-section h3{font:800 25px/1.18 var(--sans);letter-spacing:-.035em;color:var(--ink)}
.essay .pick-limitation{font:400 17px/1.6 var(--serif);color:var(--muted);border-left-color:#b6cbbf}
.essay #essay-body a,.essay .editorial-resource-link{color:var(--accent)}
.essay .editorial-resource-link{font:700 14px/1.5 var(--sans)}
.essay #essay-body a:hover{color:#073a2a}
.author-bio{font:400 14px/1.5 var(--sans);color:var(--muted)}
.review-page .source{border-color:var(--rule)}
.source strong{font:700 14px/1.4 var(--sans);color:var(--ink)}
.source small{font:400 12px/1.5 var(--sans);color:var(--muted)}
.review-page .pick-note{font:700 12px/1.4 var(--sans);color:var(--accent)}
.source:hover strong{color:var(--accent)}
footer{font:400 13px/1.5 var(--sans);border-color:var(--rule);color:var(--muted)}
/* Muted walnut complements the warm paper background and green accents. */
.shelf::before{background:linear-gradient(180deg,#9a826a,#79614b);box-shadow:inset 0 1px 0 #b9a087}
.shelf::after{background:repeating-linear-gradient(2deg,transparent 0 4px,#49332220 5px,transparent 6px 10px),repeating-linear-gradient(178deg,transparent 0 8px,#e2c6a524 9px,transparent 10px 16px),linear-gradient(180deg,#715940,#866c50 35%,#654d38 88%,#4c3828);box-shadow:inset 0 1px 0 #ad906d,0 2px 2px #49382835,0 15px 19px -9px #4b392a66}
@media(max-width:700px){.intro{font-size:19px}.review-card p{font-size:17px}.essay p,.essay .editorial-section p:first-of-type{font-size:18px}.essay .editorial-section h3{font-size:23px}.review-card .byline{font-size:13px}}

/* A soft grey page separates pale covers without a boxed shelf panel. */
body{background:#edeae4}
.review-card:hover{background:#f5f2ec}
.review-cover-art,.mini-cover{outline:1px solid #253c2e14;outline-offset:-1px}

.pending-review{font:600 15px/1.4 var(--sans);color:var(--muted);padding:24px;border:1px solid var(--rule)}

/* Videos keep their source thumbnails and read as landscape media. */
.video-cover::after{content:'▶';position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:28px;height:28px;padding-left:2px;border-radius:50%;background:#14171ad9;color:#fff;font:12px/1 Arial,sans-serif;box-shadow:0 1px 5px #0003;pointer-events:none}
.mini-cover.video-cover,.mini-cover.video-cover:nth-child(2){width:120px;height:auto;aspect-ratio:4/3;flex-shrink:1;min-width:0;align-self:center}
.video-cover img{display:block;width:100%;height:100%;object-fit:cover}
#detail-cover .mini-cover.video-cover{width:220px;height:auto;aspect-ratio:4/3}
#detail-cover .video-cover img{object-fit:cover}
.review-cover-art.video-cover{width:100%;height:auto;aspect-ratio:4/3}
.video-book .spine-title{font-size:14px!important}
.video-book .spine-credit{font-size:8px!important}
@media(max-width:650px){#detail-cover .mini-cover.video-cover{width:120px}}
@media(max-width:420px){#detail-cover .mini-cover.video-cover{width:220px;max-width:100%}}

/* Shared studio lighting gives each original spine a tangible binding. */
.shelf{gap:7px;padding-left:30px;padding-right:30px}
.shelf-window{padding-top:48px}
.shelf .book{border-radius:3px 5px 3px 2px;box-shadow:1px 0 1px #171b1838,3px 2px 4px #171b182b,7px 5px 9px -5px #171b1860,0 1px 2px #171b1870;transition:width .42s cubic-bezier(.22,.75,.18,1),transform .42s cubic-bezier(.22,.75,.18,1),opacity .3s,filter .3s}
.shelf .book::before{content:'';position:absolute;inset:0;z-index:4;pointer-events:none;border-radius:inherit;background:linear-gradient(90deg,#00000035 0%,#0000000a 7%,#ffffff21 15%,#ffffff0b 35%,transparent 57%,#00000012 83%,#00000036 100%);box-shadow:inset 0 1px 0 #ffffff65,inset 0 -2px 2px #00000030,inset 1px 0 0 #ffffff24,inset -1px 0 0 #00000035;transition:opacity .3s}
.shelf .book .art{border-radius:inherit}
.shelf .book .spine-title{text-shadow:0 1px 1px #ffffff12;-webkit-font-smoothing:antialiased}
.shelf .book .spine-credit{bottom:14px;left:7px;right:7px;line-height:1.35;letter-spacing:.055em}
.shelf .book[data-id="iabied"] .spine-title{font-weight:800;font-size:22px;letter-spacing:-.035em;line-height:1.08}
.shelf .book[data-id="ai2027"] .spine-title{font-size:31px;letter-spacing:-.045em}
.shelf .book[data-id="anthropic"] .spine-title{font-size:24px;line-height:1.12}
.shelf .book[data-id="wbw"] .spine-title{background:#c5ccdd;padding:7px 10px}
.shelf .book[data-id="ruby"] .spine-title{font-weight:400;line-height:1.14}
.shelf .book[data-id="80000"] .spine-title{font-weight:600;font-size:16px;line-height:1.15}
.shelf .book.selected,.shelf .book:focus-visible{box-shadow:2px 3px 4px #171b1826,8px 12px 18px -7px #171b1860}
.shelf .book.selected::before,.shelf .book:focus-visible::before{opacity:.35}
@media(hover:hover) and (pointer:fine){.shelf .book:hover{box-shadow:2px 3px 4px #171b1826,8px 12px 18px -7px #171b1860;transform:translateY(-10px)}.shelf .book:hover::before{opacity:.35}}
@media(prefers-reduced-motion:reduce){.shelf .book,.shelf .book::before{transition:none}}

/* A cover-led reading room within the existing resource stage. */
#book-detail{margin-top:28px;padding:28px 32px 36px;grid-template-columns:280px minmax(0,1fr);column-gap:48px;row-gap:30px;background:transparent;border-top:0;border-bottom:0}
#detail-cover .mini-cover{width:280px;height:416px;border-radius:2px;box-shadow:1px 2px 3px #17201924,8px 15px 25px -10px #17201970;outline:1px solid #17201918}
#detail-cover iframe{transform:scale(1.474)}
#detail-cover .mini-cover.video-cover{width:280px;height:auto;aspect-ratio:4/3}
#detail-cover .text-cover strong{font-size:34px}
#detail-copy{padding-top:4px}
#detail-copy h2{font-size:clamp(26px,3vw,36px);line-height:1.13;margin:0 0 12px;max-width:560px}
#detail-copy #resource-detail-meta{font-size:13px;line-height:1.6;margin:0 0 22px;color:#50554f}
#detail-copy #resource-detail-description p{font-size:18px;line-height:1.65;max-width:550px;margin-bottom:16px}
#detail-copy #resource-detail-link{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;margin:8px 0 0;background:var(--accent);color:#fff;border-radius:2px;font:600 14px/1.4 var(--sans)}
#detail-copy #resource-detail-link:hover{filter:brightness(.88)}
.cover-group{gap:12px;align-items:center}
.cover-group .mini-cover{flex:none;width:88px;height:131px;box-shadow:2px 4px 7px #17201920}
.cover-group .mini-cover iframe{transform:scale(.4632)}
.cover-group .mini-cover:first-child{width:112px;height:166px;box-shadow:3px 8px 13px -4px #17201945}
.cover-group .mini-cover:first-child iframe{transform:scale(.5895)}
.cover-group .mini-cover.video-cover{width:88px;height:auto;aspect-ratio:4/3}
.cover-group .mini-cover.video-cover:first-child{width:128px;height:auto}
.cover-group .mini-cover .text-cover strong{font-size:13px}
.cover-group .mini-cover:first-child .text-cover strong{font-size:17px}
@media(max-width:800px){#book-detail{grid-template-columns:220px minmax(0,1fr);padding:24px;gap:26px}#detail-cover .mini-cover{width:220px;height:327px}#detail-cover iframe{transform:scale(1.158)}#detail-cover .mini-cover.video-cover{width:220px}#detail-cover .text-cover strong{font-size:28px}}
@media(max-width:600px){#book-detail{grid-template-columns:1fr;padding:22px;gap:24px}#detail-cover{justify-self:center}#detail-cover .mini-cover{width:200px;height:297px}#detail-cover iframe{transform:scale(1.053)}#detail-cover .mini-cover.video-cover{width:240px}#detail-copy h2{font-size:28px}#detail-copy #resource-detail-description p{font-size:17px}.cover-group{max-width:100%;gap:10px}.cover-group .mini-cover.video-cover:first-child{width:112px}}

/* Persistent title treatment for the expanded video, without browser tooltips. */
.video-hover-title{position:absolute;left:0;bottom:100%;width:var(--face-width);padding:0 0 12px;color:#14171a;text-align:left;font:700 17px/1.25 var(--sans);letter-spacing:-.025em;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s}
.shelf .video-book:focus-visible{overflow:visible}
.shelf .video-book:focus-visible .video-hover-title{opacity:1;visibility:visible}
@media(hover:hover) and (pointer:fine){.shelf .video-book:hover{overflow:visible}.shelf .video-book:hover .video-hover-title{opacity:1;visibility:visible}}
@media(prefers-reduced-motion:reduce){.video-hover-title{transition:none}}

/* Make the video format immediately recognizable at every thumbnail size. */
.video-cover::after{width:48px;height:48px;font-size:21px;right:12px;bottom:12px;padding-left:3px}
.cover-group .video-cover::after{width:36px;height:36px;font-size:16px;right:6px;bottom:6px;padding-left:2px}
.review-cover-art.video-cover::after{width:42px;height:42px;font-size:18px;right:8px;bottom:8px}

/* Preserve the complete lettering in the original Kurzgesagt thumbnail. */
.book .art img.kurz-thumbnail,.video-cover img.kurz-thumbnail,#detail-cover .video-cover img.kurz-thumbnail{object-fit:contain;background:#090438}

/* Hover never changes flex layout: only the cover's transform and opacity animate. */
.shelf .book,.shelf .book.selected,.shelf .book:focus-visible{width:var(--spine-width)!important;transition:transform .3s ease,opacity .25s ease;filter:none!important}
.shelf .book .art{transform:translateX(calc((var(--spine-width) - var(--face-width))/2)) scale(.96);transform-origin:center bottom;transition:transform .32s cubic-bezier(.22,.7,.2,1),opacity .18s;box-shadow:3px 10px 18px -6px #17201960;pointer-events:none}
.shelf .book:focus-visible{overflow:visible;z-index:5;transform:translateY(-10px)}
.shelf .book:focus-visible .art{transform:translateX(calc((var(--spine-width) - var(--face-width))/2)) scale(1);opacity:1}
.video-hover-title{left:calc((var(--spine-width) - var(--face-width))/2)}
@media(hover:hover) and (pointer:fine){.shelf .book:hover{width:var(--spine-width)!important;overflow:visible;z-index:5;filter:none!important}.shelf .book:hover .art{transform:translateX(calc((var(--spine-width) - var(--face-width))/2)) scale(1);opacity:1}}
.shelf-window{padding-left:145px;padding-right:145px;margin-left:0;margin-right:0}
.returning-cover{display:block;overflow:hidden;contain:paint}
.returning-cover iframe{width:190px;height:282px;border:0;transform:scale(1.474);transform-origin:top left;pointer-events:none}
.returning-cover img{width:100%;height:100%;object-fit:contain}
@media(max-width:800px){.returning-cover iframe{transform:scale(1.158)}}
@media(max-width:600px){.shelf-window{padding-left:20px;padding-right:145px;margin-left:0;margin-right:-20px}.shelf .book:first-child .art{transform:scale(.96);transform-origin:left bottom}.shelf .book:first-child:hover .art,.shelf .book:first-child:focus-visible .art{transform:scale(1)}.shelf .book:first-child .video-hover-title{left:0}.returning-cover iframe{transform:scale(1.053)}}
@media(prefers-reduced-motion:reduce){.shelf .book,.shelf .book .art{transition:none}}

.shelf .book:focus-visible .art{pointer-events:auto}
@media(hover:hover) and (pointer:fine){.shelf .book:hover .art{pointer-events:auto}.shelf .book:hover::before{opacity:0}}

/* Restore the opening-shelf composition without animating layout widths. */
.shelf .book{transform:translateX(var(--shelf-shift,0px));transition:transform .38s cubic-bezier(.22,.75,.18,1),opacity .25s}
.shelf .book.shelf-expanded,.shelf .book:focus-visible{transform:translateX(var(--shelf-shift,0px)) translateY(-10px);z-index:5;overflow:visible}
.shelf .book .art{transform:translateX(calc((var(--spine-width) - var(--face-width))/2)) scaleX(.3);transform-origin:center center;transition:transform .38s cubic-bezier(.22,.75,.18,1),opacity .2s}
.shelf .book.shelf-expanded .art,.shelf .book:focus-visible .art{transform:translateX(calc((var(--spine-width) - var(--face-width))/2)) scaleX(1);opacity:1;pointer-events:auto}
.shelf .book.shelf-expanded .spine-title,.shelf .book.shelf-expanded .spine-credit,.shelf .book.shelf-expanded .official-spine{opacity:0}
.shelf .book.shelf-expanded .video-hover-title{opacity:1;visibility:visible}
@media(hover:hover) and (pointer:fine){.shelf .book:hover{transform:translateX(var(--shelf-shift,0px)) translateY(-10px)}.shelf .book:hover .art{transform:translateX(calc((var(--spine-width) - var(--face-width))/2)) scaleX(1)}}

@media(prefers-reduced-motion:reduce){.shelf .book,.shelf .book .art{transition:none}}

/* Keep the cover, page block, and binding visible as one physical object. */
.shelf .book:not(.video-book) .art,#detail-cover .mini-cover:not(.video-cover),.returning-cover:not(.video-cover){overflow:visible;border-radius:2px 1px 1px 2px;box-shadow:1px 1px 1px #12161255,12px 12px 18px -7px #17201970,22px 25px 32px -19px #17201955}
.shelf .book:not(.video-book) .art::before,#detail-cover .mini-cover:not(.video-cover)::before,.returning-cover:not(.video-cover)::before{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;background:linear-gradient(90deg,#00000035,transparent 2%,#ffffff25 3%,#00000016 5%,transparent 8%,transparent 96%,#ffffff16);box-shadow:inset 0 1px 0 #ffffff45,inset 0 -1px 0 #00000025}
.shelf .book:not(.video-book) .art::after,#detail-cover .mini-cover:not(.video-cover)::after,.returning-cover:not(.video-cover)::after{content:'';position:absolute;left:100%;top:3px;bottom:1px;width:7px;pointer-events:none;transform:skewY(-14deg);transform-origin:left top;background:repeating-linear-gradient(90deg,#d9d5c9 0px,#d9d5c9 1px,#efede4 1px,#efede4 3px);border-right:2px solid var(--cover,#edeae4);border-bottom:0;box-shadow:inset 2px 0 3px #00000022}
#detail-cover .mini-cover:not(.video-cover)::after{width:10px;top:4px}
.shelf .book:not(.video-book) .art>iframe,#detail-cover .mini-cover:not(.video-cover)>iframe{border-radius:2px}
.returning-cover:not(.video-cover){contain:none}

/* Match the usual top-to-bottom direction on English-language book spines. */
.shelf .book .spine-title{transform:translate(-50%,-50%) rotate(90deg)}

/* Crisp typeset interpretation of the published black, cream, and red spine. */
.shelf .book[data-id="iabied"]{background:#171719}
.shelf .book[data-id="iabied"] .spine-title{visibility:visible;display:block;top:43%;width:252px;height:26px;padding:0;font:800 18px/26px 'Barlow Condensed','Arial Narrow',sans-serif;letter-spacing:-.025em;white-space:nowrap;text-align:center;color:#eee0d5}
.shelf .book[data-id="iabied"] .spine-red{color:#ce534d}
.shelf .book[data-id="iabied"] .spine-credit{visibility:visible;bottom:17px;left:6px;right:6px;font:700 9px/1.1 'Barlow Condensed','Arial Narrow',sans-serif;letter-spacing:.015em;color:#cfc4bb}

/* One coordinated motion curve; retain artwork while it closes instead of clipping it. */
.shelf .book{overflow:visible;transition:transform .5s cubic-bezier(.22,.61,.25,1),opacity .3s}
.shelf .book .art{transition:transform .5s cubic-bezier(.22,.61,.25,1),opacity .32s ease;backface-visibility:hidden}
.shelf .book.shelf-expanded .art{will-change:transform,opacity}
.shelf .book .spine-title,.shelf .book .spine-credit{transition:opacity .26s ease}
.video-hover-title{transition:opacity .26s ease}
@media(hover:hover) and (pointer:fine){
 .shelf .book:not(.shelf-expanded):not(:focus-visible):hover{transform:translateX(var(--shelf-shift,0px))}
 .shelf .book:not(.shelf-expanded):not(:focus-visible):hover .art{opacity:0;pointer-events:none}
 .shelf .book.shelf-expanded .art{opacity:1}
}
@media(prefers-reduced-motion:reduce){.shelf .book,.shelf .book .art,.shelf .book .spine-title,.shelf .book .spine-credit,.video-hover-title{transition:none}}

/* Extend the hover wash to the page edge without moving review content. */
.review-card{position:relative;isolation:isolate}
.review-card::before{content:'';position:absolute;top:0;bottom:0;right:0;left:calc((100% - 100vw)/2);z-index:-1;background:#f5f2ec;opacity:0;pointer-events:none;transition:opacity .18s ease}
.review-card:hover,.review-card:focus-visible{background:transparent}
.review-card:hover::before,.review-card:focus-visible::before{opacity:1}
@media(prefers-reduced-motion:reduce){.review-card::before{transition:none}}

/* Keep the long creator name within its narrow video spine. */
.shelf .book[data-id="kurz"] .spine-credit{left:3px;right:3px;font-size:6px!important;letter-spacing:0;white-space:nowrap;text-align:center}

/* Keep spine lighting behind the front cover, never across its center. */
.shelf .book::before{z-index:0}
.shelf .book .spine-title,.shelf .book .spine-credit{z-index:1}
.shelf .book .art{z-index:2}

/* Preserve the channel’s square logo within the video-shaped shelf card. */
.book .art img.channel-logo,.video-cover img.channel-logo,#detail-cover .video-cover img.channel-logo{object-fit:contain;background:#fff;padding:8%}

#resource-detail-description .resource-description-link{color:var(--accent,#115e48);font-weight:600;text-decoration:none;cursor:pointer}
#resource-detail-description .resource-description-link:hover{color:#183f33}

.resource-navigation{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;min-width:0}
#back-to-resource{border:0;background:transparent;color:#115e48;font:500 14px/1.4 Geist,system-ui,sans-serif;min-height:44px;padding:10px 0;text-align:left;cursor:pointer;max-width:100%}
#back-to-resource[hidden]{display:none}
#back-to-resource:hover{color:#183f33}

/* Navigation belongs to the cover column, aligned with the description heading. */
.resource-left{display:flex;flex-direction:column;gap:30px;min-width:0}
.resource-left .resource-navigation{flex-direction:column;align-items:flex-start;gap:4px}
#book-detail{padding-top:58px}
@media(max-width:800px){#book-detail{padding-top:50px}.resource-left{gap:26px}}
@media(max-width:600px){#book-detail{padding-top:22px}.resource-left{gap:24px}.resource-left #detail-cover{align-self:center}}

#detail-text>.resource-navigation{margin-top:24px;gap:8px 28px;justify-content:flex-start}
#back-to-shelf{color:#171a19;gap:10px;font-size:14px}
#back-to-shelf:hover,#back-to-shelf:active{color:#000;background:transparent}
#back-to-shelf .back-arrow{flex:none}
#detail-copy .resource-navigation #resource-detail-link{margin:0}
#detail-text>.resource-navigation #back-to-resource{flex-basis:100%}

/* Shelf navigation frames the whole resource detail. */
#book-detail>.resource-navigation{grid-column:1/-1;margin:0;gap:8px 24px}
/* A single quiet toolbar for shelf and resource navigation. */
#book-detail>.resource-navigation{padding:4px 8px 4px 24px;gap:8px 16px;background:transparent;border:0;border-radius:0;min-height:54px}
.resource-navigation #back-to-shelf{font:600 14px/1.4 var(--sans);padding:10px 0;min-height:44px;white-space:nowrap}
.resource-navigation #back-to-resource{font:500 14px/1.4 var(--sans);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:45%}
.resource-navigation #back-to-resource::before{content:'·';color:#b9b5ae;margin-right:16px}
.shelf-navigation-controls{display:flex;align-items:center;gap:10px;margin-left:auto}
#shelf-position{font:500 13px/1.4 var(--sans);color:#646962;white-space:nowrap}
#shelf-position strong{color:#171a19;margin-right:6px}
.resource-navigation .shelf-page-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #cec9c0;border-radius:1px;background:#fff;color:#171a19;font:500 21px/1 var(--sans);cursor:pointer}
.resource-navigation .shelf-page-link:hover{border-color:var(--accent);color:var(--accent)}
.resource-navigation .shelf-page-link:disabled{opacity:.3;cursor:default}
.resource-navigation .shelf-page-link:focus-visible{outline:2px solid #006bff;outline-offset:2px}
@media(max-width:600px){#book-detail>.resource-navigation{padding-left:12px;gap:4px 10px}.resource-navigation #back-to-resource{max-width:55%}.shelf-navigation-controls{flex-basis:100%;justify-content:flex-end}#shelf-position{margin-right:auto}}

/* Bring featured reviews closer to their heading. */
#resource-filter{margin-bottom:8px}
#resource-filter:not([hidden]) + #reviews > .review-card:nth-child(1 of :not([hidden])){padding-top:16px}
