:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors: active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;top:0;right:0;bottom:0;left:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;top:100%;right:0;bottom:0;left:0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors: active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--bg: #f6f7f9;--surface: #ffffff;--border: #e3e5ea;--text: #1a1d23;--text-dim: #61697a;--accent: #2657d9;--accent-dark: #1c40a8;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0}button,input{font-family:inherit}a{color:inherit}code{font-family:ui-monospace,SFMono-Regular,monospace;background:#0000000f;padding:.1em .4em;border-radius:4px;font-size:.9em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{min-height:100dvh;display:flex;flex-direction:column}.navbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem 1rem;padding:1rem clamp(1.25rem,4vw,3rem);background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.navbar__sections{display:flex;gap:.3rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.2rem}.navbar__section-btn{border:none;background:transparent;color:var(--text-dim);font-size:.82rem;font-weight:500;padding:.4rem .7rem;border-radius:6px;cursor:pointer;white-space:nowrap}.navbar__section-btn[data-active]{background:var(--surface);color:var(--text);font-weight:700;box-shadow:0 1px 2px #1018281a}.navbar__brand{display:flex;align-items:center;gap:.75rem}.navbar__logo{font-size:1.6rem;line-height:1}.navbar__title{margin:0;font-size:1.05rem;font-weight:700}.navbar__subtitle{margin:0;font-size:.8rem;color:var(--text-dim)}.navbar__right{display:flex;align-items:center;gap:1rem}.navbar__count{font-size:.85rem;color:var(--text-dim);white-space:nowrap}.hero{padding:clamp(2rem,6vw,3.5rem) clamp(1.25rem,4vw,3rem) 1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem}.hero__title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;letter-spacing:-.01em}.hero__subtitle{margin:0 0 1.25rem;color:var(--text-dim);font-size:1rem;max-width:32rem}.search-bar{width:100%;max-width:34rem;display:flex;align-items:center;gap:.6rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.15rem .9rem;box-shadow:0 1px 2px #1018280a}.search-bar__icon{color:var(--text-dim);flex:none}.search-bar__input{flex:1;border:none;background:transparent;color:var(--text);font-size:.98rem;padding:.75rem 0}.search-bar__input:focus{outline:none}.search-bar__input::placeholder{color:#9aa1b0}.search-bar__count{font-size:.8rem;color:var(--text-dim);white-space:nowrap}.tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1.25rem}.tab{border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font-size:.85rem;font-weight:500;padding:.45rem .9rem;border-radius:999px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.tab:hover{border-color:var(--accent);color:var(--accent)}.tab[data-active]{background:var(--accent);border-color:var(--accent);color:#fff}.content{flex:1;padding:.5rem clamp(1.25rem,4vw,3rem) 3rem;max-width:76rem;width:100%;margin:0 auto}.grid-section__title{font-size:1.1rem;font-weight:700;margin:1.5rem 0 1rem}.grid-section__count{font-weight:500;font-size:.85rem;color:var(--text-dim)}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem 1.25rem}.book-card{display:flex;flex-direction:column;gap:.5rem;border:none;background:none;padding:0;cursor:pointer;text-align:left;color:var(--text)}.book-card__cover{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:2 / 3;border-radius:8px;padding:.9rem .85rem;overflow:hidden;background:linear-gradient(160deg,var(--cover-color) 0%,color-mix(in srgb,var(--cover-color) 70%,black) 100%);box-shadow:0 1px 2px #10182814,0 1px 3px #1018281a;transition:transform .15s ease,box-shadow .15s ease}.book-card__poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}.book-card:hover .book-card__cover,.book-card:focus-visible .book-card__cover{transform:translateY(-4px);box-shadow:0 10px 20px #1018282e}.book-card__badge{position:absolute;top:.6rem;right:.6rem;z-index:2;background:#fff;color:var(--accent-dark);font-size:.65rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:.2rem .45rem;border-radius:999px}.book-card__volume{position:absolute;top:.6rem;left:.6rem;z-index:2;background:#0000008c;color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.02em;padding:.2rem .45rem;border-radius:999px}.book-card__cover-title{color:#fff;font-weight:700;font-size:.92rem;line-height:1.25;text-shadow:0 1px 3px rgba(0,0,0,.25)}.book-card__cover-author{color:#ffffffd1;font-size:.72rem;margin-top:.3rem}.book-card__title{font-size:.88rem;font-weight:600;line-height:1.3}.book-card__author{font-size:.78rem;color:var(--text-dim)}.empty-state{color:var(--text-dim);padding:2.5rem 0;text-align:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14182180;display:flex;align-items:center;justify-content:center;padding:1.25rem;z-index:20}.modal{position:relative;width:min(60rem,100%);height:min(85vh,640px);display:flex;overflow:hidden;background:var(--surface);border-radius:14px;box-shadow:0 24px 48px #10182840}.modal__close{position:absolute;top:1rem;right:1rem;z-index:3;border:1px solid var(--border);background:var(--surface);width:2.2rem;height:2.2rem;border-radius:50%;font-size:1.2rem;line-height:1;cursor:pointer;color:var(--text-dim);box-shadow:0 2px 6px #1018282e}.modal__close:hover{background:var(--bg)}.modal__top{display:flex;width:100%;height:100%}.modal__cover{flex:0 0 46%;width:auto;height:100%;aspect-ratio:unset;border-radius:14px 0 0 14px;display:flex;align-items:flex-end;overflow:hidden;background:linear-gradient(160deg,var(--cover-color) 0%,color-mix(in srgb,var(--cover-color) 70%,black) 100%)}.modal__poster{width:100%;height:100%;padding:.6rem;object-fit:cover;object-position:center;box-sizing:border-box;display:block}.modal__cover-title{display:block;padding:1.5rem;color:#fff;font-weight:800;font-size:1.35rem;line-height:1.3;text-shadow:0 2px 6px rgba(0,0,0,.3)}.modal__info{flex:1;min-width:0;height:100%;overflow-y:auto;padding:2rem 2rem 2rem 1.75rem}.modal__badge{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--badge-color);background:color-mix(in srgb,var(--badge-color) 14%,white);padding:.25rem .55rem;border-radius:999px;margin-bottom:.6rem}.modal__title{font-size:1.4rem;font-weight:800;line-height:1.2;margin-bottom:.3rem}.modal__meta{color:var(--text-dim);font-size:.9rem;margin:0 0 .75rem}.modal__description{font-size:.88rem;line-height:1.5;color:#3a4051;margin:0 0 .4rem}.modal__description--clamped{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.modal__read-more{display:inline-block;border:none;background:none;color:var(--accent);font-size:.83rem;font-weight:700;cursor:pointer;padding:0;margin:0 0 1.1rem}.modal__read-more:hover{color:var(--accent-dark)}.modal__actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.1rem}.btn{font-size:.85rem;font-weight:600;text-decoration:none;padding:.6rem 1rem;border-radius:8px;text-align:center;cursor:pointer;border:1px solid transparent}.btn--primary{background:var(--accent);color:#fff}.btn--primary:hover{background:var(--accent-dark)}.btn--secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.btn--secondary:hover{background:var(--bg)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none}.modal__note{margin:.85rem 0 0;font-size:.82rem;color:var(--text-dim);line-height:1.5}.reader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#eceef2;display:flex;flex-direction:column}.reader__bar{display:flex;align-items:center;gap:1rem;padding:.75rem clamp(1rem,3vw,2rem);background:var(--surface);border-bottom:1px solid var(--border)}.reader__close{border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.85rem;font-weight:600;padding:.5rem .85rem;border-radius:8px;cursor:pointer;flex:none}.reader__close:hover{background:var(--bg)}.reader__title{flex:1;min-width:0;font-weight:700;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reader__controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;flex:none}.reader__modes{display:flex;gap:.25rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.2rem}.reader__mode-btn{border:none;background:transparent;color:var(--text-dim);font-size:.78rem;font-weight:500;padding:.35rem .6rem;border-radius:6px;cursor:pointer}.reader__mode-btn[data-active]{background:var(--surface);color:var(--text);font-weight:700;box-shadow:0 1px 2px #1018281a}.reader__zoom,.reader__pager{display:flex;align-items:center;gap:.4rem;flex:none}.reader__zoom-level{font-size:.78rem;color:var(--text-dim);width:3.2rem;text-align:center;white-space:nowrap}.reader__page-btn{border:1px solid var(--border);background:var(--surface);width:2rem;height:2rem;border-radius:6px;font-size:1.1rem;line-height:1;cursor:pointer;color:var(--text)}.reader__page-btn:disabled{opacity:.35;cursor:not-allowed}.reader__page-form{display:flex;align-items:center;gap:.35rem}.reader__page-input{width:2.6rem;text-align:center;border:1px solid var(--border);border-radius:6px;padding:.3rem .2rem;font-size:.85rem;color:var(--text)}.reader__page-total{font-size:.8rem;color:var(--text-dim);white-space:nowrap}.reader__share{white-space:nowrap}.reader__viewport{flex:1;overflow-y:auto;display:flex;justify-content:center;padding:1.5rem 1rem 3rem}.reader__viewport .react-pdf__Document{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.reader__spread{display:flex;gap:1rem}.reader__scroll-page:first-child{margin-top:0}.reader__viewport .react-pdf__Page{box-shadow:0 4px 16px #10182826}.reader__status,.reader__error{color:var(--text-dim);font-size:.9rem;margin-top:3rem;text-align:center}.reader__error a{color:var(--accent);font-weight:600}@media (max-width: 560px){.reader__title{display:none}}.footer{font-size:.8rem;color:var(--text-dim);border-top:1px solid var(--border);padding:1.25rem clamp(1.25rem,4vw,3rem);text-align:center}@media (max-width: 700px){.navbar__subtitle{display:none}.navbar{padding:.85rem 1rem}.navbar__sections{width:100%;max-width:100%;overflow-x:auto}.navbar__section-btn{font-size:.76rem;padding:.35rem .6rem}.modal{width:100%;height:min(92vh,100%)}.modal__top{flex-direction:column;height:100%;overflow-y:auto}.modal__cover{flex:none;width:100%;height:15rem;border-radius:14px 14px 0 0;justify-content:center;text-align:center}.modal__info{width:100%;height:auto;overflow-y:visible;padding:1.25rem 1.25rem 1.75rem}.book-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1.25rem .85rem}.content{padding-left:1rem;padding-right:1rem}.reader__controls{gap:.5rem}.reader__bar{padding:.6rem .85rem}}.admin{min-height:100dvh;display:flex;flex-direction:column}.admin__bar{display:flex;align-items:center;gap:1rem;padding:1rem clamp(1.25rem,4vw,3rem);background:var(--surface);border-bottom:1px solid var(--border)}.admin__title{flex:1;font-size:1.05rem;font-weight:700}.admin__content{max-width:44rem;width:100%;margin:0 auto;padding:1.5rem clamp(1.25rem,4vw,3rem) 3rem}.admin__error{background:#fde8e6;color:#7a2a20;padding:.7rem 1rem;border-radius:8px;font-size:.85rem;margin-bottom:1.25rem}.admin__unlock label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.4rem}.admin__unlock-row{display:flex;gap:.6rem}.admin__unlock-row input{flex:1;border:1px solid var(--border);border-radius:8px;padding:.6rem .75rem}.admin__form{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem;margin-bottom:2rem}.admin__form-title{font-size:1rem;font-weight:700;margin-bottom:1rem}.admin__grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.admin__grid label{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:600;color:var(--text-dim)}.admin__grid input,.admin__grid select,.admin__grid textarea{border:1px solid var(--border);border-radius:8px;padding:.55rem .7rem;font-size:.9rem;color:var(--text);font-weight:400;font-family:inherit}.admin__field-wide{grid-column:1 / -1}.admin__checkbox{flex-direction:row!important;align-items:center;gap:.5rem!important}.admin__form-actions{display:flex;gap:.6rem;margin-top:1.1rem}.admin__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.admin__row{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.8rem 1rem}.admin__row-title{font-weight:700;font-size:.92rem}.admin__row-meta{font-size:.78rem;color:var(--text-dim);margin-top:.2rem}.admin__row-actions{display:flex;gap:.5rem;flex:none}.admin__note{color:var(--text-dim);font-size:.9rem}@media (max-width: 560px){.admin__grid{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.book-card__cover{transition:none}}
