body:has(.buna-app){margin:0;background:#f7f5ee}.buna-app{--ink:#293a2c;--muted:#6d7567;--green:#34553b;--line:#dddfd2;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:17px;line-height:1.5;min-height:100vh;min-height:100dvh}.buna-app *,.buna-app :after,.buna-app :before{box-sizing:border-box}.buna-app a{color:inherit;text-decoration:none}.buna-app a:hover{opacity:1}.buna-app button,.buna-app input,.buna-app select{font:inherit;color:inherit}.buna-app button,.buna-app select{cursor:pointer}.buna-app button{touch-action:manipulation}.buna-app button:disabled{opacity:.4;cursor:default}.buna-app :focus-visible{outline:3px solid #bc6a37;outline-offset:4px}.buna-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.buna-shelf{max-width:1080px;margin:auto;padding:clamp(32px,9vh,100px) 32px}.buna-shelf-title{margin:0 0 24px;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,4vw,36px);font-weight:400;letter-spacing:-.02em}.buna-bookcase{--book-height:280px;--row-height:348px;padding:0 28px;border-color:#c49b72 #956a45 #704b30;border-style:solid;border-width:14px;border-radius:3px;background-color:#d5bea3;background-image:repeating-linear-gradient(0deg,#ffffff04 0 2px,#60402705 2px 4px),linear-gradient(to bottom,#38241329,#a77f5510 36px,#b18a5d00 calc(var(--row-height) - 26px),#deb68a calc(var(--row-height) - 26px),#d4a579 calc(var(--row-height) - 20px),#9b6c43 calc(var(--row-height) - 18px),#815534 calc(var(--row-height) - 3px),#583820 var(--row-height));background-size:auto,100% var(--row-height);box-shadow:0 18px 35px #3624151c,inset 7px 0 12px #5b3b2224,inset -7px 0 12px #5b3b2224}.buna-book-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:var(--row-height);grid-gap:0 24px;gap:0 24px;align-items:end;min-height:var(--row-height)}.buna-book-card{min-width:0;display:block;margin-bottom:26px;border-radius:3px;-webkit-tap-highlight-color:transparent}.buna-cover{position:relative;height:var(--book-height);display:flex;align-items:center;justify-content:center;padding:28px 20px 28px 27px;text-align:center;border-radius:3px 7px 5px 2px;border-left:9px solid #00000025;border-right:3px solid #f0e5cd;box-shadow:4px 3px 0 #b9ab90,9px 4px 9px #38241540;background-image:linear-gradient(90deg,#ffffff13,transparent 9%,#00000008 93%,#00000028);transition:transform .18s ease}.buna-cover:after{content:"";position:absolute;inset:14px 12px 14px 14px;border:1px solid #dbc18a70;pointer-events:none}.buna-cover-title{font-family:Georgia,Times New Roman,serif;font-size:clamp(20px,2.3vw,27px);font-weight:400;line-height:1.45;overflow-wrap:anywhere}.buna-cover-0{background-color:#663b3a;color:#f2dfb6}.buna-cover-1{background-color:#354f43;color:#f2dfb6}.buna-cover-2{background-color:#525d72;color:#f2dfb6}.buna-cover-3{background-color:#8a6642;color:#f6e8cc}.buna-cover-4{background-color:#514558;color:#f2dfb6}.buna-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}.buna-book-card:focus-visible .buna-cover,.buna-book-card:hover .buna-cover{transform:translateY(-8px) rotate(-1deg)}@media (max-width:900px){.buna-book-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:600px){.buna-shelf{padding:36px 16px}.buna-bookcase{--book-height:230px;--row-height:286px;padding:0 16px;border-width:10px}.buna-book-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.buna-cover{padding:24px 12px 24px 15px;border-left-width:6px}.buna-cover-title{font-size:21px}.buna-cover:after{inset:10px 7px}}@media (max-width:360px){.buna-shelf{padding-left:10px;padding-right:10px}.buna-bookcase{padding:0 10px}.buna-book-grid{column-gap:12px}.buna-cover-title{font-size:18px}}.buna-button{background:var(--green);border:1px solid var(--green);color:#fff!important;border-radius:5px;min-height:48px;padding:11px 22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:16px;font-weight:500}.buna-button:hover:not(:disabled){background:#263e2b}.buna-button-secondary{background:transparent;color:var(--ink)!important;border-color:#c5cdbb}.buna-button-secondary:hover:not(:disabled){background:#e8eddf}.buna-reader{--ink:#292d29;--muted:#747873;--line:#e9ebe5;height:100vh;height:100dvh;display:flex;flex-direction:column;background:#fffefa;overflow:hidden}.buna-reader-header{position:relative;z-index:10;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:20px;gap:20px;padding:12px 24px;border-bottom:1px solid var(--line);flex-shrink:0;background:#fff;color:var(--ink)}.buna-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:0 12px;border-radius:12px;background:#f3f4f0;font-size:14px;font-weight:500;white-space:nowrap}.buna-back:hover{background:#e9ece5}.buna-back>span:first-child{font-size:24px;line-height:1}.buna-reader-title{min-width:0}.buna-reader-title h1{font-size:16px;line-height:1.3;font-weight:600;margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.buna-reader-title p{margin:2px 0 0;font-size:12px;color:var(--muted)}.buna-reader-content{flex:1 1;min-height:0;display:flex;flex-direction:column}.buna-reader-toolbar{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px}.buna-fit,.buna-font-size{min-height:44px;border:1px solid #e1e5dc;border-radius:12px;padding:8px 12px;background-color:#f6f7f3;font-size:16px}.buna-font-picker,.buna-font-size{position:relative}.buna-font-size{z-index:2;width:92px;display:flex;align-items:center;justify-content:space-between;gap:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.buna-font-size svg{flex-shrink:0;color:#656d61}.buna-font-size[aria-expanded=true]{border-color:#bcc8b0;background:#edf1e7}.buna-font-size[aria-expanded=true] svg{transform:rotate(180deg)}.buna-font-dismiss{position:fixed;inset:0;z-index:1}.buna-font-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:3;width:112px;max-height:min(320px,calc(100dvh - 150px));padding:5px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #e1e5dc;border-radius:14px;background:#fff;box-shadow:0 8px 28px #293a2c24}.buna-font-menu button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:8px 10px;border:0;border-radius:8px;background:transparent;text-align:left;font-size:16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.buna-font-menu button:focus-visible,.buna-font-menu button:hover{outline:none;background:#f0f3eb}.buna-font-menu button[aria-selected=true]{background:#e6eddd;color:#35482c;font-weight:600}.buna-font-menu button:focus-visible{box-shadow:inset 0 0 0 2px #819572}.buna-font-controls{display:flex;align-items:center;gap:4px;flex-shrink:0}.buna-font-controls button{width:44px;height:44px;border:1px solid #e1e5dc;background:#f6f7f3;border-radius:12px;font-size:22px}.buna-font-controls>span{min-width:24px;text-align:center;font-size:15px}.buna-reader-message{padding:48px 24px;text-align:center;margin:auto;max-width:660px}.buna-reader-message h2{font-family:Georgia,serif;font-weight:400;font-size:28px}.buna-reader-message p{color:var(--muted)}.buna-error-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:28px}.buna-epub-area{position:relative;flex:1 1;min-height:0;width:100%;max-width:940px;margin:auto}.buna-epub-viewport{height:100%;width:100%;overflow:hidden}.buna-epub-viewport iframe{border:0}.buna-reader-loading{position:absolute;z-index:2;inset:0;background:#fffefa;color:var(--ink);display:flex;align-items:center;justify-content:center}.buna-epub-reader{background:#fffefa}.buna-page-navigation{display:grid;grid-template-columns:1fr auto 1fr;flex-shrink:0;align-items:center;grid-gap:12px;gap:12px;padding:12px max(24px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));border-top:1px solid var(--line);background:#fff;color:var(--ink)}.buna-page-navigation .buna-button{min-height:48px;border:1px solid #e1e5dc;border-radius:14px;padding:10px 18px;background:#f3f4f0;color:var(--ink)!important;font-size:15px}.buna-page-navigation .buna-button:first-child{justify-self:start}.buna-page-navigation .buna-button:last-child{justify-self:end}.buna-page-navigation .buna-button:hover:not(:disabled){background:#e8ece3;border-color:#cdd5c5}.buna-page-navigation .buna-button>span[aria-hidden]{font-size:22px;line-height:1}.buna-navigation-error{margin:0;padding:8px 16px;color:#8e3a22;background:#fff5eb;font-size:14px;text-align:center}.buna-pdf-stage{flex:1 1;min-height:0;position:relative;overflow:auto;padding:16px;background:#e7e8e0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.buna-pdf-paper{margin:0 auto;position:relative;flex-shrink:0;background:#fff;box-shadow:0 3px 16px #26332418}.buna-pdf-paper canvas{display:block}.buna-pdf-loading{position:-webkit-sticky;position:sticky;top:0;left:0;z-index:5;width:-moz-fit-content;width:fit-content;margin:0 auto 12px;padding:7px 18px;border-radius:40px;background:#fffdf5;box-shadow:0 2px 12px #0001;font-size:14px}.buna-page-jump{display:flex;align-items:center;justify-content:center;gap:8px;padding:4px;border:1px solid #e1e5dc;border-radius:16px;background:#f6f7f3;font-size:15px;min-width:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.buna-page-jump input{width:58px;min-height:44px;border:1px solid #e1e5dc;border-radius:11px;padding:6px;text-align:center;background:#fff;font-size:18px;font-weight:600}.buna-page-total{white-space:nowrap;padding-right:4px;color:var(--muted)}.buna-page-total>span[aria-hidden]{padding-right:4px;color:#adb4a6}.buna-page-jump button{border:0;border-radius:11px;background:#e6ebdf;color:#35482c;min-height:44px;min-width:52px;padding:6px 10px;font-size:14px;font-weight:600}.buna-page-jump button:hover:not(:disabled){background:#d6dfcc}@media (max-width:900px){.buna-reader-header{gap:12px;padding:10px 16px}.buna-back{padding:0}.buna-back-label{display:none}}@media (max-width:700px){.buna-reader-header{gap:10px;padding:10px 12px}.buna-reader-title h1{font-size:14px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.buna-font-size{width:86px}.buna-reader-header:has(.buna-fit){grid-template-columns:44px minmax(0,1fr)}.buna-reader-toolbar:has(.buna-fit){grid-column:1/-1;justify-content:center}.buna-page-navigation{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));gap:8px}.buna-page-navigation .buna-button{padding:8px;width:44px;min-width:44px;min-height:48px}.buna-page-button-label{display:none}.buna-page-jump{gap:6px;font-size:14px}.buna-page-jump input{width:52px}}@media (max-height:500px) and (orientation:landscape){.buna-reader-header{padding-top:3px;padding-bottom:3px}.buna-page-navigation{padding-top:4px;padding-bottom:4px}}@media (prefers-reduced-motion:reduce){.buna-cover{transition:none}}