:root{color:#333;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f6f7;font-family:Arial,Helvetica,sans-serif;line-height:1.6}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:112.5%}body{min-width:20rem;min-height:100svh;margin:0}.skip-link{z-index:10;color:#fff;background:#111;padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.skip-link:focus-visible{outline-color:#fff;box-shadow:0 0 0 6px #003c71}.site-header{background:#003c71;border-bottom:.35rem solid #e9831f}.site-header a{color:#fff;align-items:center;width:min(100% - 2rem,70rem);min-height:4.5rem;margin:0 auto;font-size:1.25rem;font-weight:700;text-decoration:none;display:flex}.site-header strong{margin-left:.35rem;font-size:1.45rem}.site-header a:focus-visible{outline-offset:-4px;outline-color:#fff}main{width:min(100% - 2rem,70rem);margin:0 auto;padding:clamp(2rem,5vw,4rem) 0}.page-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}h1{color:#003c71;letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(2rem,5vw,3.25rem);line-height:1.15}.page-heading p{max-width:38rem;margin:.6rem 0 0;font-size:1.1rem}#result-count{color:#003c71;flex:none;font-weight:700}.filter-help{margin:0 0 .6rem}.controls{background:#fff;border:1px solid #b7c0c8;border-top:.3rem solid #003c71;grid-template-columns:minmax(14rem,1fr) repeat(2,minmax(12rem,.65fr));gap:.4rem 1rem;margin-bottom:2rem;padding:1.25rem;display:grid}.controls label{font-weight:700}.controls label:nth-of-type(2){grid-area:1/2}.controls label:nth-of-type(3){grid-area:1/3}input,select{color:#333;min-height:3.25rem;font:inherit;background:#fff;border:2px solid #66727c;border-radius:.2rem;padding:.7rem .8rem}.clear-button{color:#003c71;min-height:3rem;font:inherit;cursor:pointer;background:#fff;border:2px solid #003c71;border-radius:.2rem;grid-column:1/-1;justify-self:start;margin-top:.75rem;padding:.6rem 1rem;font-weight:700}.clear-button:hover{color:#fff;background:#003c71}.secondary-button{color:#fff;min-height:3rem;font:inherit;cursor:pointer;background:#003c71;border:2px solid #003c71;border-radius:.2rem;padding:.65rem 1rem;font-weight:700}.secondary-button:hover{background:#002b52}.message{background:#e8f1f8;border-left:.35rem solid #003c71;padding:1rem;font-weight:700}.message.error{background:#f8e9e9;border-color:#a31818}[hidden]{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.book-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,21rem),1fr));gap:1rem;display:grid}.book-card{background:#fff;border:1px solid #b7c0c8;border-top:.3rem solid #003c71;padding:1.25rem}.reading-status{border:2px solid;border-radius:999px;width:fit-content;margin-bottom:.8rem;padding:.2rem .55rem;font-size:1rem;font-weight:700;display:block}.reading-status.read{color:#00563f;background:#e5f2ed}.reading-status.current{color:#714100;background:#fff1db;border-color:#e9831f}.reading-status.proposed{color:#4e555b;background:#eef0f2}.themes{color:#4e555b;margin:0 0 1rem;font-weight:700}.book-heading h2{color:#003c71;margin:0;font-size:1.45rem;line-height:1.3}.author{margin:.3rem 0 1rem;font-size:1.05rem}.book-facts{border-block:1px solid #cbd1d6;grid-template-columns:repeat(3,1fr);margin:0;display:grid}.book-facts div{padding:.75rem .3rem}.book-facts dt{font-size:.9rem;line-height:1.3}.book-facts dd{color:#003c71;margin:.1rem 0 0;font-size:1.15rem;font-weight:700}.history,.no-history{margin-top:.8rem}.history summary{color:#003c71;cursor:pointer;align-items:center;min-height:3rem;padding:.55rem 0;font-weight:700;display:flex}.history ol{margin:0;padding-left:1.4rem}.history li{border-top:1px solid #cbd1d6;padding:.7rem 0}.history p{margin:0}.history-title{font-weight:700}.history-note{color:#714100;margin-top:.3rem!important}:focus-visible{outline-offset:3px;outline:3px solid #003c71}@media (width<=48rem){.page-heading{flex-direction:column;align-items:flex-start;gap:.4rem}.controls{grid-template-columns:1fr}.controls label:nth-of-type(2),.controls label:nth-of-type(3){grid-area:auto/1;margin-top:.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
