*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-height) + 24px)}body,html{min-height:100%;background:var(--background)}body{margin:0;color:var(--foreground);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.6}::-moz-selection{color:white;background:var(--accent)}::selection{color:white;background:var(--accent)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,select,summary{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px}:where(button,a,input,select,textarea){transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s}:where(input,textarea)::-moz-placeholder{color:#777c73;opacity:1}:where(input,textarea)::placeholder{color:#777c73;opacity:1}:where(h1,h2,h3,p){overflow-wrap:anywhere}h1,h2,h3{line-height:1.25}summary{list-style:none}summary::-webkit-details-marker{display:none}details>summary:after{content:"+";margin-left:auto;padding-left:16px;color:var(--muted);font-size:18px;font-weight:400}details[open]>summary:after{content:"−"}details>summary{display:flex;align-items:center;min-height:44px}.page-shell{max-width:var(--page-width)}.page-shell,.page-shell-narrow{width:100%;margin-inline:auto;padding:36px 32px 72px}.page-shell-narrow{max-width:880px}.page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.page-title{font-family:Georgia,Times New Roman,serif;font-size:32px;font-weight:400;line-height:1.15;letter-spacing:-.025em}.page-description{margin-top:8px;color:var(--muted);font-size:14px}.section-heading{font-size:18px;font-weight:600;letter-spacing:-.015em}.section{border-top:1px solid var(--border);margin-top:28px;padding-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 16px;border:1px solid transparent;border-radius:var(--radius);font-size:14px;line-height:1.4;font-weight:600;text-align:center;flex-shrink:0}.button-primary{background:var(--accent);color:white}.button-primary:hover{background:#294b3a}.button-secondary{background:white;color:var(--foreground);border-color:var(--border)}.button-secondary:hover{background:#f0f1eb;border-color:#b4baaf}.button-ghost{color:var(--muted)}.button-ghost:hover{color:var(--foreground);background:#ebece5}.button-danger{color:#913c35;border-color:#e1c5bf;background:#fffaf8}.button-danger:hover{background:#f7e8e3}.button:disabled{opacity:.5}.field{display:block;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #babeb4;border-radius:var(--radius);background:white;color:var(--foreground);font-size:16px;font-weight:400;line-height:1.5;box-shadow:none}.field:hover{border-color:#8b9487}.field:focus{border-color:var(--accent)}.form-label{display:block;margin-bottom:6px;font-size:13px;line-height:1.5;font-weight:600;color:var(--foreground)}.text-link{color:var(--accent);text-decoration:underline;text-decoration-color:#a5b7aa;text-underline-offset:4px}.text-link:hover{text-decoration-color:currentColor}.message{padding:12px 14px;border-left:2px solid var(--border);border-radius:0 var(--radius) var(--radius) 0;font-size:14px;background:#efefe8}.message-error{color:#83392f;background:#f8ede8;border-color:#b66558}.message-success{color:#365b49;background:#eaf0e9;border-color:#75977d}.empty-state{display:grid;justify-items:center;align-content:center;gap:12px;min-height:220px;padding:40px 20px;text-align:center}.empty-state>p{color:var(--muted);max-width:42ch}.book-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));-moz-column-gap:28px;column-gap:28px;row-gap:32px}.book-card{display:block;min-width:0;border-radius:3px}.book-card .book-cover{transition:box-shadow .16s}.book-card:hover .book-cover{box-shadow:0 4px 10px rgba(37,41,35,.18)}.book-card:hover .book-title{color:var(--accent)}.book-title{font-size:14px;font-weight:600;line-height:1.4}.book-author{margin-top:4px;color:var(--muted);font-size:13px;line-height:1.45}.book-status{display:flex;align-items:center;gap:6px;margin-top:9px;font-size:11px;line-height:1.5;color:var(--muted)}.book-status:before{content:"";height:5px;width:5px;border-radius:50%;background:#a6ada1;flex-shrink:0}.book-status[data-status=reading]{color:var(--accent)}.book-status[data-status=reading]:before{background:var(--accent)}.book-status[data-status=dnf]:before{background:#a57664}.book-cover{position:relative;flex-shrink:0;overflow:hidden;border-radius:2px 5px 5px 2px;background:#e9e6de;box-shadow:0 2px 5px #2529231f,0 10px 18px -12px #25292340}.cover-placeholder{display:flex;height:100%;flex-direction:column;justify-content:center;border-left:5px solid #25292314;padding:14%;background:#e9e6de;text-align:center}.cover-placeholder p{font-family:Georgia,serif;font-size:clamp(11px,1.25vw,19px);line-height:1.4;color:#525b4d}.cover-placeholder:after,.cover-placeholder:before{content:"";width:28%;height:1px;background:#77816b70;align-self:center;margin-block:14%}.book-cover[data-size=compact] .cover-placeholder p,.book-cover[data-size=result] .cover-placeholder p{font-size:12px}.book-cover[data-size=detail] .cover-placeholder p{font-size:22px}.shelf-nav{display:flex;flex-wrap:wrap;gap:4px 20px;border-bottom:1px solid var(--border);margin-bottom:24px}.shelf-tab{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:8px 0 12px;margin-bottom:-1px;border-bottom:2px solid transparent;color:var(--muted);font-size:14px;white-space:nowrap}.shelf-tab[aria-current=page]{border-color:var(--accent);color:var(--accent);font-weight:600}.shelf-tab:hover{color:var(--foreground)}.shelf-tab span{font-size:12px;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}.shelf-tab-loading{width:12px;height:12px;border:2px solid;border-right:2px solid transparent;border-radius:999px;animation:shelf-tab-spin .65s linear infinite}.focus-ring{outline-offset:3px}.\!dialog{width:min(560px,calc(100% - 32px))!important;max-height:calc(100dvh - 48px)!important;margin:auto!important;padding:24px!important;border:1px solid var(--border)!important;border-radius:10px!important;color:var(--foreground)!important;background:var(--background)!important;box-shadow:0 16px 48px #25292329!important;overflow-y:auto!important}.dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 48px);margin:auto;padding:24px;border:1px solid var(--border);border-radius:10px;color:var(--foreground);background:var(--background);box-shadow:0 16px 48px #25292329;overflow-y:auto}.\!dialog::backdrop{background:#1d251c66!important}.dialog::backdrop{background:#1d251c66}.skip-link{position:fixed;z-index:100;left:16px;top:-80px;padding:12px 18px;border-radius:var(--radius);background:var(--accent);color:white}.skip-link:focus{top:12px}.app-header{position:sticky;top:0;z-index:30;border-bottom:1px solid var(--border);background:var(--background)}.app-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:var(--page-width);min-height:var(--header-height);margin-inline:auto;padding-inline:32px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:23px;letter-spacing:-.035em}.brand,.brand-mark{font-family:Georgia,serif}.brand-mark{display:grid;place-items:center;height:30px;width:26px;border:1px solid #9aa591;border-left:3px solid var(--accent);border-radius:1px 4px 4px 1px;font-size:14px;color:var(--accent)}.primary-nav{display:flex;align-self:stretch;gap:24px}.primary-nav a{display:flex;align-items:center;min-height:44px;padding:0 2px;border-bottom:2px solid transparent;color:var(--muted);font-size:14px}.primary-nav a:hover{color:var(--foreground)}.primary-nav a[aria-current=page]{color:var(--accent);border-color:var(--accent);font-weight:600}.activity-disclosure{margin-block:24px 36px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.activity-disclosure>summary{padding-block:12px;font-size:14px;font-weight:600}.activity-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:40px;padding-bottom:24px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.relative{position:relative}.z-10{z-index:10}.-my-2{margin-top:-.5rem;margin-bottom:-.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.\!mt-2{margin-top:.5rem!important}.-ml-3{margin-left:-.75rem}.-mr-2{margin-right:-.5rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{-webkit-line-clamp:3}.line-clamp-3,.line-clamp-5{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-5{-webkit-line-clamp:5}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-\[2\/3\]{aspect-ratio:2/3}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.max-h-64{max-height:16rem}.min-h-0{min-height:0}.min-h-11{min-height:2.75rem}.min-h-12{min-height:3rem}.min-h-16{min-height:4rem}.min-h-8{min-height:2rem}.min-h-screen{min-height:100vh}.\!w-auto{width:auto!important}.w-11{width:2.75rem}.w-16{width:4rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-32{width:8rem}.w-4{width:1rem}.w-56{width:14rem}.w-60{width:15rem}.w-8{width:2rem}.w-\[72px\]{width:72px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-28{min-width:7rem}.min-w-5{min-width:1.25rem}.min-w-9{min-width:2.25rem}.max-w-28{max-width:7rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.basis-40{flex-basis:10rem}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize-y{resize:vertical}.resize{resize:both}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-proximity{--tw-scroll-snap-strictness:proximity}.snap-start{scroll-snap-align:start}.scroll-mt-28{scroll-margin-top:7rem}.list-decimal{list-style-type:decimal}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-\[64px\2c minmax\(0\2c 1fr\)\]{grid-template-columns:64px minmax(0,1fr)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-7{gap:1.75rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-4{row-gap:1rem}.gap-y-5{row-gap:1.25rem}.-space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-.25rem * var(--tw-space-x-reverse));margin-left:calc(-.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-7>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.75rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-walnut\/10>:not([hidden])~:not([hidden]){border-color:rgb(41 59 49/.1)}.divide-walnut\/15>:not([hidden])~:not([hidden]){border-color:rgb(41 59 49/.15)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.overscroll-x-contain{overscroll-behavior-x:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-t{border-top-width:1px}.border-smoke{--tw-border-opacity:1;border-color:rgb(222 223 216/var(--tw-border-opacity,1))}.border-walnut\/10{border-color:rgb(41 59 49/.1)}.border-walnut\/15{border-color:rgb(41 59 49/.15)}.bg-cedar\/10{background-color:rgb(98 103 95/.1)}.bg-cedar\/15{background-color:rgb(98 103 95/.15)}.bg-ink{--tw-bg-opacity:1;background-color:rgb(37 41 35/var(--tw-bg-opacity,1))}.bg-lagoon{--tw-bg-opacity:1;background-color:rgb(54 91 73/var(--tw-bg-opacity,1))}.bg-lagoon\/5{background-color:rgb(54 91 73/.05)}.bg-walnut\/10{background-color:rgb(41 59 49/.1)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-2{padding:.5rem}.p-4{padding:1rem}.\!px-3{padding-left:.75rem!important;padding-right:.75rem!important}.\!py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-5{padding-bottom:1.25rem}.pl-5{padding-left:1.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-serif{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[7px\]{font-size:7px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-snug{line-height:1.375}.tracking-normal{letter-spacing:0}.tracking-tight{letter-spacing:-.025em}.text-cedar{--tw-text-opacity:1;color:rgb(98 103 95/var(--tw-text-opacity,1))}.text-cedar\/75{color:rgb(98 103 95/.75)}.text-fern{--tw-text-opacity:1;color:rgb(54 91 73/var(--tw-text-opacity,1))}.text-ink{--tw-text-opacity:1;color:rgb(37 41 35/var(--tw-text-opacity,1))}.text-lagoon{--tw-text-opacity:1;color:rgb(54 91 73/var(--tw-text-opacity,1))}.text-plum{--tw-text-opacity:1;color:rgb(145 60 53/var(--tw-text-opacity,1))}.text-walnut{--tw-text-opacity:1;color:rgb(41 59 49/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-lagoon{accent-color:#365b49}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-inset{--tw-ring-inset:inset}.ring-lagoon{--tw-ring-opacity:1;--tw-ring-color:rgb(54 91 73/var(--tw-ring-opacity,1))}.ring-lagoon\/20{--tw-ring-color:rgb(54 91 73/0.2)}.ring-lagoon\/35{--tw-ring-color:rgb(54 91 73/0.35)}.ring-white\/70{--tw-ring-color:rgb(255 255 255/0.7)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color-scheme:light;--background:#f8f7f4;--foreground:#252923;--muted:#62675f;--accent:#365b49;--border:#dedfd8;--radius:6px;--page-width:1200px;--header-height:72px}@keyframes shelf-tab-spin{to{transform:rotate(1turn)}}input[type=date]{display:block;inline-size:100%;min-inline-size:0;max-inline-size:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none}input[type=date]::-webkit-date-and-time-value{min-inline-size:0;text-align:left}[id]{scroll-margin-top:calc(var(--header-height) + 24px)}@media (max-width:1023px){.book-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px}}@media (max-width:767px){:root{--header-height:110px}.app-header-inner{flex-wrap:wrap;gap:0;padding:12px 20px 0}.brand{font-size:22px}.primary-nav{width:100%;justify-content:space-between;gap:10px;margin-top:8px}.primary-nav a{font-size:13px}.page-shell,.page-shell-narrow{padding:28px 20px 48px}.page-title{font-size:28px}.page-header{margin-bottom:24px}.book-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.activity-layout{grid-template-columns:minmax(0,1fr);gap:28px}.shelf-nav{gap:0 18px}.reading-shelves{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.reading-shelves .shelf-tab{flex-direction:column;align-items:center;justify-content:end;gap:3px;padding-bottom:9px;font-size:12px;white-space:normal;text-align:center}}@media (max-width:479px){.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}.cover-placeholder p{font-size:16px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media print{@page{size:landscape;margin:.35in}body,html{background:white!important}.tier-page-controls,body>header{display:none!important}.tier-page-heading{margin-bottom:12px!important;padding-bottom:12px!important}.page-shell{max-width:none!important;padding:0!important}.tier-page-heading h1{font-size:30px!important}.tier-chart{overflow:visible!important;border-radius:0!important;box-shadow:none!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.tier-row{min-height:0!important;display:block!important;padding-block:10px!important;-moz-column-break-inside:auto;break-inside:auto}.tier-row>div:first-child,.tier-unrated>div:first-child{display:flex;align-items:baseline;gap:8px}.tier-books{display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;overflow:visible!important;gap:.12in!important;padding:.08in 0 0!important}.tier-book{width:.78in!important;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.tier-book p:last-child{display:none!important}.tier-book p:first-of-type{display:-webkit-box!important;margin-top:4px!important;font-size:6.5pt!important;line-height:1.2!important}.tier-unrated{display:block!important;padding-block:10px!important;-moz-column-break-inside:auto;break-inside:auto}}.focus-within\:outline:focus-within{outline-style:solid}.focus-within\:outline-2:focus-within{outline-width:2px}.focus-within\:outline-offset-2:focus-within{outline-offset:2px}.focus-within\:outline-lagoon:focus-within{outline-color:#365b49}.hover\:bg-ink\/5:hover{background-color:rgb(37 41 35/.05)}.hover\:bg-smoke\/50:hover{background-color:rgb(222 223 216/.5)}.hover\:bg-walnut\/5:hover{background-color:rgb(41 59 49/.05)}.hover\:text-ink:hover{--tw-text-opacity:1;color:rgb(37 41 35/var(--tw-text-opacity,1))}.hover\:text-lagoon:hover{--tw-text-opacity:1;color:rgb(54 91 73/var(--tw-text-opacity,1))}.hover\:text-plum:hover{--tw-text-opacity:1;color:rgb(145 60 53/var(--tw-text-opacity,1))}.hover\:text-walnut:hover{--tw-text-opacity:1;color:rgb(41 59 49/var(--tw-text-opacity,1))}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-35:disabled{opacity:.35}.group:hover .group-hover\:text-lagoon{--tw-text-opacity:1;color:rgb(54 91 73/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:inline{display:inline}.sm\:w-24{width:6rem}.sm\:w-28{width:7rem}.sm\:w-36{width:9rem}.sm\:w-40{width:10rem}.sm\:w-48{width:12rem}.sm\:w-auto{width:auto}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[6rem\2c minmax\(0\2c 1fr\)\]{grid-template-columns:6rem minmax(0,1fr)}.sm\:grid-cols-\[minmax\(0\2c 1fr\)_9rem\]{grid-template-columns:minmax(0,1fr) 9rem}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-5{gap:1.25rem}.sm\:gap-6{gap:1.5rem}.sm\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.sm\:py-20{padding-top:5rem;padding-bottom:5rem}}@media (min-width:768px){.md\:sticky{position:sticky}.md\:top-28{top:7rem}.md\:w-full{width:100%}.md\:grid-cols-\[180px\2c minmax\(0\2c 1fr\)\]{grid-template-columns:180px minmax(0,1fr)}.md\:grid-cols-\[200px\2c minmax\(0\2c 1fr\)\]{grid-template-columns:200px minmax(0,1fr)}.md\:gap-10{gap:2.5rem}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}