:root{--buckram: #17261f;--buckram-2: #1f3229;--buckram-3: #2a4235;--manila: #e9dfc7;--manila-2: #a99c7c;--card: #ded1ae;--violet: #b08be0;--violet-deep: #4a2e7a;--overdue: #d2694e;--typewriter: "American Typewriter", "Courier New", ui-monospace, monospace;--engraved: Copperplate, "Copperplate Gothic Light", "Gill Sans", sans-serif;--prose: Baskerville, "Hoefler Text", Palatino, Georgia, serif}*{box-sizing:border-box}body{margin:0;background:var(--buckram);color:var(--manila);font-family:var(--typewriter);font-size:15px;line-height:1.5;background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.16) 0 1px,transparent 1px 3px),repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}a{color:var(--violet)}.wrap{max-width:1180px;margin:0 auto;padding:0 24px 96px}header.masthead{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap;padding:34px 0 22px;border-bottom:2px solid var(--buckram-3)}.masthead h1{font-family:var(--engraved);font-size:25px;letter-spacing:.34em;text-transform:uppercase;margin:0;font-weight:400}.accession{font-size:12px;letter-spacing:.16em;color:var(--manila-2);text-transform:uppercase}.callslip{display:flex;gap:10px;margin:26px 0 4px;flex-wrap:wrap}.callslip input{flex:1 1 320px;min-width:0;background:transparent;border:0;border-bottom:2px solid var(--buckram-3);color:var(--manila);font-family:var(--typewriter);font-size:17px;padding:8px 2px}.callslip input::placeholder{color:#6c7d72}.callslip input:focus{outline:none;border-bottom-color:var(--violet)}button{font-family:var(--engraved);font-size:11.5px;letter-spacing:.17em;text-transform:uppercase;color:var(--manila);background:var(--buckram-2);border:1px solid var(--buckram-3);padding:9px 15px;cursor:pointer}button:hover{background:var(--buckram-3)}button.primary{background:var(--violet-deep);border-color:var(--violet);color:#f2e9ff}button.primary:hover{background:#5c3a99}button.quiet{background:transparent}:focus-visible{outline:2px solid var(--violet);outline-offset:2px}.tabs{display:flex;gap:3px;margin:28px 0 0;flex-wrap:wrap;align-items:flex-end}.tab{font-family:var(--engraved);font-size:11px;letter-spacing:.15em;text-transform:uppercase;background:var(--buckram-2);border:1px solid var(--buckram-3);border-bottom:none;padding:8px 14px 7px;cursor:pointer;color:var(--manila-2);clip-path:polygon(7px 0,calc(100% - 7px) 0,100% 100%,0 100%)}.tab:hover{color:var(--manila)}.tab[aria-selected=true]{background:var(--card);color:#33291a;border-color:var(--card)}.tab .n{opacity:.6;margin-left:7px}.rack{border-top:3px solid var(--card);padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.rack select{font-family:var(--typewriter);background:var(--buckram-2);color:var(--manila);border:1px solid var(--buckram-3);padding:7px 9px}.count{font-size:12px;letter-spacing:.1em;color:var(--manila-2);text-transform:uppercase}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:30px 22px;margin-top:26px}.book{cursor:pointer;text-align:left;background:none;border:0;padding:0;font-family:inherit;color:inherit;text-transform:none;letter-spacing:normal;font-size:inherit}.book .jacket{position:relative;aspect-ratio:2 / 3;background:var(--buckram-2);box-shadow:0 2px #00000080,inset 0 0 0 1px #e9dfc717;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease}.book:hover .jacket,.book:focus-visible .jacket{transform:translateY(-4px);box-shadow:0 8px 14px #00000073,inset 0 0 0 1px #e9dfc733}.book img{width:100%;height:100%;object-fit:cover;display:block}.jacket.blank{display:flex;align-items:center;padding:14px 12px;border-left:7px solid var(--violet-deep)}.jacket.blank span{font-family:var(--engraved);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--manila-2)}.book h3{font-size:13.5px;font-weight:400;margin:9px 0 1px;line-height:1.3}.book p{font-size:12px;color:var(--manila-2);margin:0}.marks{font-size:14px;letter-spacing:.22em;color:var(--violet);margin-top:5px;min-height:19px}.marks .off{color:#4a6155}.empty{border:1px dashed var(--buckram-3);padding:44px 24px;text-align:center;color:var(--manila-2);margin-top:26px}.lookup{margin-top:22px;border-left:3px solid var(--violet-deep);padding-left:16px}.lookup h2{font-family:var(--engraved);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--manila-2);margin:0 0 12px;font-weight:400}.slip{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--buckram-2)}.slip div{min-width:0}.slip strong{font-weight:400}.slip em{font-style:normal;color:var(--manila-2);font-size:12.5px;display:block}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#060c09c7;display:flex;justify-content:center;align-items:flex-start;padding:40px 20px;overflow:auto;z-index:20}.overlay[hidden]{display:none}.circcard{width:min(760px,100%);background:var(--card);color:#2c2416;font-family:var(--typewriter);padding:30px 34px 26px;position:relative;box-shadow:0 26px 50px #00000080;background-image:repeating-linear-gradient(180deg,transparent 0 25px,rgba(70,52,20,.14) 25px 26px)}.circcard .pocket{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:2px solid rgba(70,52,20,.35);padding-bottom:14px}.circcard h2{font-family:var(--prose);font-size:27px;margin:0 0 3px;font-weight:400;line-height:1.15}.circcard .byline{font-size:13px;letter-spacing:.05em}.circcard .callno{font-family:var(--engraved);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#6b5a35}.stamp{font-family:var(--engraved);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--violet-deep);border:2.5px double var(--violet-deep);padding:7px 13px;transform:rotate(-7deg);white-space:nowrap;opacity:.82;flex:none}.stamp.overdue{color:#9c3a22;border-color:#9c3a22}@media(prefers-reduced-motion:no-preference){.stamp{animation:press .32s cubic-bezier(.2,1.4,.4,1) both}}@keyframes press{0%{transform:rotate(-16deg) scale(1.5);opacity:0}to{transform:rotate(-7deg) scale(1);opacity:.82}}.ledger{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:2px 18px;margin:16px 0 4px}.ledger div{font-size:13px}.ledger dt,.ledger .k{font-family:var(--engraved);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#6b5a35;display:block}.rateline{display:flex;align-items:center;gap:14px;margin:20px 0 6px;flex-wrap:wrap}.rateline .k{font-family:var(--engraved);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#6b5a35}#marks{display:flex;gap:7px}.mark{width:26px;height:26px;border:2px solid var(--violet-deep);background:transparent;padding:0;cursor:pointer;opacity:.5}.mark:hover{opacity:.85}.mark.on{background:var(--violet-deep);opacity:1}.shelfpick{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 2px}.chip{font-family:var(--engraved);font-size:10px;letter-spacing:.14em;text-transform:uppercase;border:1px solid #8a7648;background:transparent;color:#5b4d2c;padding:6px 11px;cursor:pointer}.chip.on{background:#4a2e7a;border-color:#4a2e7a;color:#efe6ff}.series{margin:20px 0 2px}.series h3{font-family:var(--engraved);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#6b5a35;margin:0 0 7px;font-weight:400}.series h3 .gap{font-family:var(--engraved);font-size:8.5px;letter-spacing:.12em;padding:3px 7px;margin-left:8px;vertical-align:1px;background:transparent;border:1px solid #9c8a5d;color:#6b5a35}.series h3 .gap:hover{background:#4a2e7a1f;color:#3b3120}.voltab.suggested{border-style:dashed}.voltab.suggested .n:after{content:" suggested";opacity:.7}.universe .vol.suggested{stroke-dasharray:4 2}.series ol{list-style:none;margin:0 0 12px;padding:0}.series li{display:flex;align-items:baseline;gap:10px;padding:3px 0;font-size:13.5px;border-bottom:1px dotted rgba(70,52,20,.22)}.series li .num{font-family:var(--engraved);font-size:10px;letter-spacing:.1em;color:#6b5a35;min-width:26px;flex:none}.series li .yr{color:#7a6840;font-size:12px;flex:none}.series li .t{flex:1;min-width:0}.series li.me{font-weight:600}.series li.me .t:after{content:" — you are here";font-weight:400;color:#6b5a35;font-size:12px}.series li.held .t:after{content:" — on your shelves";color:#4a2e7a;font-size:12px}.series li.unverified{opacity:.62}.series li.unverified .t:after{content:" — unverified";color:#8a5a2c;font-size:12px}.series button{font-family:var(--engraved);font-size:9.5px;letter-spacing:.12em;padding:6px 11px;background:transparent;border:1px solid #9c8a5d;color:#5b4d2c;flex:none}.series li button{font-size:9px;padding:3px 8px}.series button:hover{background:#4a2e7a1f}.voltabs{display:flex;flex-wrap:wrap;gap:3px;margin:4px 0 2px;align-items:flex-end}.voltab{font-family:var(--typewriter);text-transform:none;letter-spacing:normal;font-size:12.5px;text-align:left;line-height:1.25;background:#ffffff4d;border:1px solid #b3a175;color:#4a3f26;padding:7px 12px 6px;cursor:pointer;position:relative;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 100%,0 100%)}.voltab:hover{background:#fff9}.voltab .n{font-family:var(--engraved);font-size:9px;letter-spacing:.1em;color:#7a6840;display:block}.voltab.held{border-color:var(--violet-deep);box-shadow:inset 0 -3px #4a2e7a59}.voltab.me{background:var(--violet-deep);border-color:var(--violet-deep);color:#f2e9ff}.voltab.me .n{color:#c9b4ec}.voltab.next{border-color:#9c3a22;box-shadow:inset 0 -3px #9c3a22}.voltab.next .flag{font-family:var(--engraved);font-size:8.5px;letter-spacing:.16em;color:#9c3a22;display:block;margin-top:2px}.voltab.unverified{opacity:.5;cursor:default;border-style:dashed}.voltab.unverified:hover{background:#ffffff4d}.universe{margin:6px 0 2px;overflow-x:auto}.universe svg{display:block}.universe text{font-family:var(--typewriter);fill:#4a3f26}.universe .wire{fill:none;stroke:#9c8a5d;stroke-width:1.2}.universe .hub{fill:var(--violet-deep)}.universe .hub-label{fill:#f2e9ff;font-family:var(--engraved);letter-spacing:.1em}.universe .grp{fill:#ffffff57;stroke:#b3a175}.universe .grp-label{font-size:12px}.universe .grp-count{font-size:9.5px;fill:#7a6840;font-family:var(--engraved);letter-spacing:.1em}.universe .vol{fill:#ffffff4d;stroke:#b3a175}.universe .vol.held{fill:#4a2e7a38;stroke:var(--violet-deep)}.universe .vol.read{fill:var(--violet-deep);stroke:var(--violet-deep)}.universe .vol.next{stroke:#9c3a22;stroke-width:2.2}.universe .vol.unverified{stroke-dasharray:3 2;opacity:.55}.universe .vol-label{font-size:10px;text-anchor:middle}.universe .vol.read+.vol-label{fill:#f2e9ff}.universe g.node{cursor:pointer}.universe g.node.flat{cursor:default}.upnext{background:#4a2e7a1a;border-left:3px solid var(--violet-deep);padding:9px 12px;margin:16px 0 0;font-size:13.5px}.upnext .k{font-family:var(--engraved);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#6b5a35;display:block}.queue{border-left:3px solid var(--violet-deep);padding:2px 0 2px 16px;margin:24px 0 0}.queue h2{font-family:var(--engraved);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--manila-2);margin:0 0 10px;font-weight:400}.queue .row{display:flex;gap:12px;align-items:baseline;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--buckram-2);flex-wrap:wrap}.queue .row span.after{color:var(--manila-2);font-size:12.5px}.queue .row .title{color:var(--manila)}.queue[hidden]{display:none}.circcard .blurb{font-family:var(--prose);font-size:15.5px;line-height:1.62;margin:18px 0 0}.circcard textarea{width:100%;min-height:96px;margin-top:8px;background:#ffffff6b;border:1px solid #9c8a5d;color:#2c2416;font-family:var(--prose);font-size:15px;padding:10px;line-height:1.55;resize:vertical}.cardfoot{display:flex;gap:8px;justify-content:flex-end;margin-top:20px;flex-wrap:wrap}.cardfoot button{color:#3b3120;background:transparent;border-color:#8a7648}.cardfoot button:hover{background:#4a2e7a1f}.cardfoot button.danger{color:#8e3320;border-color:#b06450}.cardfoot button.primary{background:#4a2e7a;border-color:#4a2e7a;color:#f2e9ff}.spin{display:inline-block;width:10px;height:10px;vertical-align:-1px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;margin-right:7px;opacity:.85;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spin{animation:none;border-right-color:currentColor;opacity:.45}}.universe g.adding rect{opacity:.45}@media(prefers-reduced-motion:no-preference){.universe g.adding rect{animation:pulse 1.1s ease-in-out infinite}}@keyframes pulse{50%{opacity:.8}}.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%);background:var(--card);color:#2c2416;padding:10px 18px;font-family:var(--engraved);font-size:11px;letter-spacing:.16em;text-transform:uppercase;box-shadow:0 10px 24px #00000080;z-index:40}.toast[hidden]{display:none}@media(max-width:620px){.circcard{padding:22px 18px 20px}.stamp{display:none}.grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:24px 16px}}.kindtabs{display:flex;gap:3px;align-items:flex-end;margin:8px 0 0;flex-wrap:wrap}.kindtab{font-family:var(--engraved);font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:6px 13px 5px;background:#ffffff42;border:1px solid #b3a175;border-bottom:none;color:#6b5a35;cursor:pointer;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 100%,0 100%)}.kindtab:hover{background:#ffffff80;color:#3b3120}.kindtab[aria-selected=true]{background:var(--violet-deep);border-color:var(--violet-deep);color:#f2e9ff}.kindtab .n{opacity:.65;margin-left:7px}.grouppanel{overflow:hidden;border-top:2px solid var(--violet-deep);padding-top:10px}.groupchoose{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 8px}.grouppanel .via{font-family:var(--engraved);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#7a6840;margin:2px 0 8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.voltab.me .flag{color:#ffc4b3}.lobby{min-height:100vh;display:grid;place-items:center;padding:48px 20px}.ticket{width:100%;max-width:430px;background:var(--card);color:#3b3120;padding:30px 30px 22px;border-radius:2px;box-shadow:0 22px 48px #00000080;position:relative}.ticket .perf{position:absolute;left:0;right:0;top:8px;border-top:2px dotted rgba(59,49,32,.28)}.ticket .issuing{font-family:var(--engraved);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#7a6840;margin:6px 0 14px}.ticket h1{font-family:var(--engraved);font-size:17px;letter-spacing:.26em;text-transform:uppercase;font-weight:400;margin:0 0 22px;padding-bottom:12px;border-bottom:2px solid rgba(59,49,32,.3)}.ticket label{display:block;margin:0 0 18px}.ticket label span{display:block;font-family:var(--engraved);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#7a6840;margin-bottom:2px}.ticket input{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(59,49,32,.42);color:#2c2418;font-family:var(--typewriter);font-size:16px;padding:5px 1px}.ticket input::placeholder{color:#9a8a62}.ticket input:focus{outline:none;border-bottom-color:var(--violet-deep);border-bottom-width:2px;padding-bottom:4px}.ticket .refused{font-size:13px;color:#9c3a22;border-left:3px solid #9c3a22;padding-left:10px;margin:-4px 0 16px}.ticket .issue{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}.ticket .issue button:disabled{opacity:.45;cursor:not-allowed}.ticket .issue .quiet{color:#6b5a35;border-color:#3b31204d}.ticket .issue .quiet:hover{background:#4a2e7a1a;color:#3b3120}.ticket .smallprint{font-size:11.5px;line-height:1.55;color:#7a6840;margin:20px 0 0;padding-top:14px;border-top:1px solid rgba(59,49,32,.22)}.borrower{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.08em;color:var(--manila-2)}.borrower .who{text-transform:none;letter-spacing:.03em}.desk{margin:26px 0 4px;border-left:3px solid var(--overdue);padding-left:16px}.desk h2{font-family:var(--engraved);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--manila);margin:0 0 4px;font-weight:400}.desk h2 .n{background:var(--overdue);color:#23140f;padding:1px 7px;margin-left:8px;border-radius:2px;font-size:11px}.deskwhy{font-size:12.5px;color:var(--manila-2);margin:0 0 12px;max-width:62ch}.desknote{display:block;margin:0 0 14px;max-width:420px}.desknote span{display:block;font-family:var(--engraved);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--manila-2);margin-bottom:2px}.desknote input{width:100%;background:transparent;border:0;border-bottom:1px solid var(--buckram-3);color:var(--manila);font-family:var(--typewriter);font-size:14px;padding:5px 2px}.desknote input:focus{outline:none;border-bottom-color:var(--violet)}.slipcase{background:var(--buckram-2);border:1px solid var(--buckram-3);border-left:2px solid var(--manila-2);padding:12px 14px;margin-bottom:8px}.slipcase.stale{border-left-color:var(--overdue)}.slipcase .what{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:6px}.slipcase .bookref{font-size:14px}.slipcase .field{font-family:var(--engraved);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--violet);border:1px solid var(--violet-deep);padding:1px 6px}.slipcase .diff{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:13.5px;margin-bottom:6px}.slipcase .was{color:var(--manila-2);text-decoration:line-through}.slipcase .arrow{color:var(--manila-2);flex:none}.slipcase .now{color:var(--manila)}.slipcase .warn{font-size:12px;color:#f0a68f;margin:6px 0;max-width:62ch}.slipcase .by{font-size:11.5px;color:var(--manila-2);margin-bottom:10px}.slipcase .verdict{display:flex;gap:8px;flex-wrap:wrap}.ticketclass{font-family:var(--engraved);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--violet);border:1px solid var(--violet-deep);padding:1px 7px}.fixopen{margin:6px 0 2px;color:#6b5a35;border-color:#3b312052}.fixopen:hover{background:#4a2e7a1a;color:#3b3120}.fixform{border-top:1px solid rgba(59,49,32,.22);border-bottom:1px solid rgba(59,49,32,.22);padding:12px 0;margin:12px 0 4px}.fixform .k{font-size:12px;color:#6b5a35;margin:0 0 12px;max-width:58ch;font-family:var(--typewriter);letter-spacing:normal;text-transform:none}.fixform label{display:block;margin-bottom:10px}.fixform label span{display:block;font-family:var(--engraved);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#7a6840;margin-bottom:1px}.fixform input{width:100%;background:#ffffff6b;border:1px solid #9c8a5d;color:#2c2416;font-family:var(--typewriter);font-size:14px;padding:6px 8px}.fixform input:focus{outline:none;border-color:var(--violet-deep)}.fixfoot{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.kindtab.seek{border-style:dashed;color:var(--violet);text-transform:none;letter-spacing:.04em}.kindtab.seek:hover:not(:disabled){background:#4a2e7a24;color:#3b3120}.kindtab.seek:disabled{opacity:.6;cursor:progress}
