/* The room's reading cues: soft daylight paper, blue-green fabric at night. */
body{--room-ui-bg:#dce2d4;--room-ui-ink:#273d36;--room-ui-muted:#53695e;--room-ui-line:#9dac96;--room-ui-accent:#786539;--room-ui-hover:#c6d4c4;--room-ui-shadow:0 8px 26px #172d2526}
body[data-daypart="twilight"]{--room-ui-bg:#b8c3bb;--room-ui-ink:#253934;--room-ui-muted:#40584e;--room-ui-line:#899e90;--room-ui-hover:#a6b8ac}
body[data-daypart="night"]{--room-ui-bg:#293b3e;--room-ui-ink:#f0e9d2;--room-ui-muted:#c1cbbb;--room-ui-line:#61766e;--room-ui-accent:#d9c391;--room-ui-hover:#3a5050;--room-ui-shadow:0 8px 28px #101e243b}
body .masthead nav button{font:15px/1.4 var(--song);letter-spacing:.12em}
body .region-spot{padding:10px 15px;background:var(--room-ui-bg);color:var(--room-ui-ink);border:1px solid var(--room-ui-line);border-radius:5px 5px 13px 5px;box-shadow:var(--room-ui-shadow);font:16px/1.45 var(--song);letter-spacing:.1em}
body .region-spot::before{width:4px;height:4px;background:var(--room-ui-accent);border-radius:50%}
body .region-spot::after{background:var(--room-ui-line)}
body .region-spot:hover,body .region-spot:focus-visible{background:var(--room-ui-hover);outline:2px solid var(--room-ui-accent);outline-offset:4px}
#selection{box-sizing:border-box;right:3.5vw;top:50%;width:clamp(260px,24vw,342px);max-height:calc(100svh - 210px);overflow:auto;padding:24px 25px;background:var(--room-ui-bg);color:var(--room-ui-ink);border:1px solid var(--room-ui-line);border-left:1px solid var(--room-ui-line);border-radius:3px 3px 18px 3px;box-shadow:var(--room-ui-shadow);transform:translateY(-50%)}
#selection .eyebrow{color:var(--room-ui-muted);font:12px/1.5 var(--sans);letter-spacing:.15em;margin:0 0 6px}
#selection h2{font:26px/1.4 var(--song);letter-spacing:.18em;margin:0 0 19px;color:var(--room-ui-ink)}
#selection #selection-body{display:block}
#selection button{box-sizing:border-box;display:flex;width:100%;gap:8px;align-items:center;justify-content:space-between;padding:12px 3px;border:0;border-top:1px solid var(--room-ui-line);background:transparent;color:var(--room-ui-ink);min-width:0;min-height:44px;text-align:left}
#selection button em{font:18px/1.45 var(--song);font-style:normal;color:inherit;letter-spacing:.03em}
#selection button span{font:12px/1.5 var(--sans);color:var(--room-ui-muted);flex-shrink:0}
#selection button:hover{background:var(--room-ui-hover)}
#selection button:focus-visible{outline:2px solid var(--room-ui-accent);outline-offset:2px}
#selection[data-place="shelf"] h2{margin-bottom:13px}
#selection .archive-index{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin-bottom:20px}
#selection .archive-group{min-width:0}
#selection .archive-group h3{font:18px/1.4 var(--song);letter-spacing:.14em;margin:0 0 9px}
#selection .archive-volume{display:block;padding:10px 0 9px;min-height:0}
#selection .archive-volume em{display:block;font:bold 19px/1.3 Georgia,serif;white-space:nowrap;letter-spacing:0}
#selection .archive-volume span{display:block;margin-top:5px;font:11px/1.4 var(--sans)}
#selection .literary-index{display:grid;grid-template-columns:1fr 1fr;gap:0 19px}
#selection .literary-index button{min-height:0}
#selection .literary-index button em{font:16px/1.5 var(--song);white-space:nowrap}
#selection .literary-index button span{font-size:11px}
#selection[data-place="models"],#selection[data-place="open-drawer"]{top:auto;bottom:16vh;transform:none;max-height:230px;width:280px}
#book-caption{box-sizing:border-box;position:fixed;z-index:8;width:max-content;max-width:min(286px,calc(100vw - 24px));padding:14px 18px 13px;background:var(--room-ui-bg);color:var(--room-ui-ink);border:1px solid var(--room-ui-line);border-left:1px solid var(--room-ui-line);border-radius:3px 3px 13px 3px;box-shadow:var(--room-ui-shadow);pointer-events:none;font-family:var(--song)}
#book-caption .caption-title{display:block;font:21px/1.5 var(--song);letter-spacing:.06em;overflow-wrap:anywhere}
#book-caption .caption-meta{display:block;margin-top:5px;font:13px/1.6 var(--sans);color:var(--room-ui-muted)}
#book-caption .caption-hint{display:block;margin-top:9px;font:12px/1.5 var(--song);color:var(--room-ui-muted);border-top:1px solid var(--room-ui-line);padding-top:7px}
@media(max-width:760px){
 body .masthead nav button{font-size:13px;letter-spacing:.05em}
 body .masthead nav{background:var(--room-ui-bg);color:var(--room-ui-ink);border-color:var(--room-ui-line);box-shadow:var(--room-ui-shadow)}
 body .region-spot{font-size:14px;padding:8px 11px}
 #selection{top:auto;bottom:129px;left:18px;right:18px;width:auto;max-height:min(37svh,290px);transform:none;padding:15px 18px 16px;border-radius:3px 3px 14px 3px}
 #selection h2{font-size:21px;margin-bottom:11px}
 #selection .eyebrow{display:none}
 #selection[data-place="shelf"]{max-height:230px;padding:12px 16px}
 #selection[data-place="shelf"] h2{font-size:18px;margin:0 0 7px}
 #selection .archive-index{gap:17px;margin-bottom:7px}
 #selection .archive-group h3{font-size:15px;margin-bottom:3px}
 #selection .archive-volume{display:flex;gap:3px;padding:5px 0}
 #selection .archive-volume em{font-size:17px}
 #selection .archive-volume span{margin:0;font-size:10px}
 #selection .literary-index{gap:0 17px}
 #selection .literary-index button{padding:7px 0}
 #selection .literary-index button em{font-size:14px}
 #selection .literary-index button span{display:none}
 #book-caption{padding:11px 14px;max-width:245px}
 #book-caption .caption-title{font-size:18px}
 #selection[data-place="models"],#selection[data-place="open-drawer"]{width:auto;bottom:129px;max-height:24svh}
}
@media(max-width:360px){#selection .archive-volume span{display:none}}
@media(prefers-reduced-motion:reduce){body .region-spot,#selection button{transition:none}}
