.b3dbook[data-v-11205c1a]{width:var(--cover-w);height:var(--bk-h);transform-style:preserve-3d;transform-origin:0 100%;pointer-events:none;--pd:calc(var(--depth) - var(--board)*2);--ph:calc(var(--bk-h) - var(--square)*2);--pw:calc(var(--cover-w) - var(--square)*2);--page-a:oklch(98% .015 90);--page-b:oklch(90% .03 88);background:0 0;border:0;margin:0;padding:0;position:absolute;bottom:0;left:0}.b3dbook.is-tucked[data-v-11205c1a]{visibility:hidden}.b3d-body[data-v-11205c1a]{transform-style:preserve-3d;transform-origin:0 100%;will-change:transform;transition:transform .4s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.b3d-body[data-v-11205c1a]>*{backface-visibility:hidden;position:absolute;top:50%;left:50%}.b3d-pg[data-v-11205c1a]{overflow:hidden}.b3d-pg-fore[data-v-11205c1a]{width:var(--pd);height:var(--ph);transform:translate(-50%,-50%) translate3d(calc(var(--pw)/2),0,0) rotateY(90deg);background:repeating-linear-gradient(90deg,var(--page-a) 0 1px,var(--page-b) 1px 2.5px)}.b3d-pg-top[data-v-11205c1a]{transform:translate(-50%,-50%) translate3d(0,calc(var(--ph)/-2),0) rotateX(90deg)}.b3d-pg-bottom[data-v-11205c1a],.b3d-pg-top[data-v-11205c1a]{width:var(--pw);height:var(--pd);background:repeating-linear-gradient(0deg,var(--page-a) 0 1px,var(--page-b) 1px 2.5px)}.b3d-pg-bottom[data-v-11205c1a]{transform:translate(-50%,-50%) translate3d(0,calc(var(--ph)/2),0) rotateX(-90deg)}.b3d-bd[data-v-11205c1a]{overflow:hidden}.b3d-bd-front[data-v-11205c1a],.b3d-edge[data-v-11205c1a]{background:var(--paper-2)}.b3d-bd-front[data-v-11205c1a]{width:var(--cover-w);height:var(--bk-h);transform:translate(-50%,-50%) translateZ(calc(var(--depth)/2));border-radius:1px 3px 3px 1px}.b3d-cover-blank[data-v-11205c1a],.b3d-cover-img[data-v-11205c1a]{-o-object-fit:cover;object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.b3d-cover-blank[data-v-11205c1a]{text-align:center;background:repeating-linear-gradient(135deg,oklch(94% .025 85) 0 12px,oklch(92% .03 85) 12px 24px);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px;display:flex}.b3d-placeholder-title[data-v-11205c1a]{font-family:var(--display);color:var(--ink);-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;font-size:clamp(11px,1.2vw,15px);font-weight:800;line-height:1.15;display:-webkit-box;overflow:hidden}.b3d-placeholder-label[data-v-11205c1a]{font-family:var(--hand);color:var(--ink-soft);font-size:15px}.b3d-gloss[data-v-11205c1a]{pointer-events:none;background:linear-gradient(108deg,#0000 56%,oklch(100% 0 0/.2) 72%,oklch(100% 0 0/.04) 82%,#0000 92%);position:absolute;inset:0}.b3d-front-top[data-v-11205c1a]{transform:translate(-50%,-50%) translate3d(0,calc(var(--bk-h)/-2),calc(var(--depth)/2 - var(--board)/2)) rotateX(90deg)}.b3d-front-bottom[data-v-11205c1a],.b3d-front-top[data-v-11205c1a]{width:var(--cover-w);height:var(--board)}.b3d-front-bottom[data-v-11205c1a]{transform:translate(-50%,-50%) translate3d(0,calc(var(--bk-h)/2),calc(var(--depth)/2 - var(--board)/2)) rotateX(-90deg)}.b3d-front-fore[data-v-11205c1a]{width:var(--board);height:var(--bk-h);transform:translate(-50%,-50%) translate3d(calc(var(--cover-w)/2),0,calc(var(--depth)/2 - var(--board)/2)) rotateY(90deg)}.b3d-bd-back[data-v-11205c1a]{height:var(--bk-h);transform:translate(-50%,-50%) translateZ(calc(var(--depth)/-2)) rotateY(180deg);border-radius:1px 3px 3px 1px}.b3d-back-top[data-v-11205c1a],.b3d-bd-back[data-v-11205c1a]{width:var(--cover-w);background:color-mix(in oklab,var(--c),#000 6%)}.b3d-back-top[data-v-11205c1a]{height:var(--board);transform:translate(-50%,-50%) translate3d(0,calc(var(--bk-h)/-2),calc(var(--depth)/-2 + var(--board)/2)) rotateX(90deg)}.b3d-back-bottom[data-v-11205c1a]{width:var(--cover-w);height:var(--board);transform:translate(-50%,-50%) translate3d(0,calc(var(--bk-h)/2),calc(var(--depth)/-2 + var(--board)/2)) rotateX(-90deg)}.b3d-back-bottom[data-v-11205c1a],.b3d-back-fore[data-v-11205c1a]{background:color-mix(in oklab,var(--c),#000 6%)}.b3d-back-fore[data-v-11205c1a]{width:var(--board);height:var(--bk-h);transform:translate(-50%,-50%) translate3d(calc(var(--cover-w)/2),0,calc(var(--depth)/-2 + var(--board)/2)) rotateY(90deg)}.b3d-sp-outer[data-v-11205c1a]{width:var(--depth);height:var(--bk-h);transform:translate(-50%,-50%) translate3d(calc(var(--cover-w)/-2),0,0) rotateY(-90deg);background:linear-gradient(90deg,oklch(100% 0 0/.16) 0 2px,transparent 2px 5px),linear-gradient(90deg,color-mix(in oklab,var(--c),#000 12%),var(--c) 55%,color-mix(in oklab,var(--c),#fff 14%));border-radius:2px 0 0 2px;justify-content:center;align-items:center;display:flex;overflow:hidden}.b3d-sp-title[data-v-11205c1a]{writing-mode:vertical-rl;font-family:var(--display);font-weight:700;font-size:clamp(8px,calc(var(--depth)*.32),13px);letter-spacing:-.01em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;opacity:.88;max-height:84%;overflow:hidden;transform:rotate(180deg)}.b3d-sp-top[data-v-11205c1a]{transform:translate(-50%,-50%) translate3d(calc(var(--cover-w)/-2 + var(--board)/2),calc(var(--bk-h)/-2),0) rotateX(90deg)}.b3d-sp-bottom[data-v-11205c1a],.b3d-sp-top[data-v-11205c1a]{width:var(--board);height:var(--depth);background:color-mix(in oklab,var(--c),#000 10%)}.b3d-sp-bottom[data-v-11205c1a]{transform:translate(-50%,-50%) translate3d(calc(var(--cover-w)/-2 + var(--board)/2),calc(var(--bk-h)/2),0) rotateX(-90deg)}.b3dbook-shadow[data-v-11205c1a]{z-index:-1;background:radial-gradient(closest-side,oklch(30% .02 75/.32),#0000 76%);height:12px;transition:opacity .4s,transform .4s,filter .4s;bottom:-5px;left:-2px;right:-10%}.b3dbook-cast[data-v-11205c1a],.b3dbook-shadow[data-v-11205c1a]{pointer-events:none;position:absolute}.b3dbook-cast[data-v-11205c1a]{width:var(--cover-w);height:var(--bk-h);transform:translateZ(calc(var(--depth)/-2 - 2px));transform-origin:0 100%;filter:blur(12px);opacity:0;z-index:-2;background:oklch(26% .02 70/.6);border-radius:2px 5px 5px 2px;transition:opacity .4s,transform .4s;bottom:0;left:0}.b3dbook.is-face .b3dbook-cast[data-v-11205c1a]{opacity:.16}.b3dbook.is-face.is-hovered .b3d-body[data-v-11205c1a]{transform:translateZ(calc(var(--depth)/-2)) rotateY(calc(var(--face-angle)*-1))}.b3dbook.is-face.is-hovered .b3d-bookmark[data-v-11205c1a]{--bm-hover-gap:12px;width:140px;height:40px;transform:translate(-50%,-50%) translate3d(0,calc(var(--bk-h)/-2 - var(--bm-hover-gap) - 20px),0);clip-path:none;border:1px solid var(--bm-dark);border-radius:6px}.b3dbook.is-face.is-hovered .b3d-bookmark-label[data-v-11205c1a]{writing-mode:horizontal-tb;white-space:nowrap;max-height:none;transform:none}.b3dbook.is-face.is-hovered .b3dbook-shadow[data-v-11205c1a]{opacity:.68;filter:blur(3px);transform:scale(1.2)translate(7px,2px)}.b3dbook.is-face.is-hovered .b3dbook-cast[data-v-11205c1a]{opacity:.5;transform:rotateY(calc(var(--face-angle)*-1)) translateZ(calc(var(--depth)/-2 - 2px)) translate(9px,13px) scale(1.06)}.b3dbook.is-spine.is-lean .b3d-body[data-v-11205c1a]{transform:rotate(-20deg)}.b3d-bookmark[data-v-11205c1a]{--bm-turn-rest:180deg;--bm-turn-hover:90deg;--bm-turn:var(--bm-turn-rest);width:40px;height:140px;transform:translate(-25%,-80%) translate3d(calc(var(--pw)/-2 + 22px),calc(var(--ph)/-2),0) rotate(var(--bm-turn));--bm:var(--sky);--bm-dark:color-mix(in oklab,var(--bm),#000 26%);background:linear-gradient(180deg,oklch(100% 0 0/.22) 0,transparent 22%),linear-gradient(90deg,color-mix(in oklab,var(--bm),#000 12%) 0,var(--bm) 30%,color-mix(in oklab,var(--bm),#fff 22%) 50%,var(--bm) 70%,color-mix(in oklab,var(--bm),#000 12%) 100%);border:1px solid var(--bm-dark);clip-path:polygon(0 0,100% 0,100% 100%,50% 90%,0 100%);backface-visibility:visible;--label-shift:10px;pointer-events:none;border-bottom:none;border-radius:4px 4px 0 0;justify-content:center;align-items:center;transition:transform .4s cubic-bezier(.22,1,.36,1);display:flex;box-shadow:.12rem .18rem .16rem oklch(0% 0 0/.32)}.b3d-bookmark-label[data-v-11205c1a]{writing-mode:vertical-rl;text-orientation:mixed;transform:translateY(var(--label-shift,0)) rotate(180deg);font-family:var(--display);letter-spacing:.03em;color:#fff;text-shadow:0 1px 1px oklch(0% 0 0/.45);white-space:nowrap;max-height:70px;font-size:11px;font-weight:800;line-height:1;overflow:hidden}.b3d-bookmark.bb-status--error[data-v-11205c1a]{--bm:var(--coral)}.b3d-bookmark.bb-status--review[data-v-11205c1a]{--bm:oklch(78% .15 75)}.b3d-bookmark.bb-status--progress[data-v-11205c1a]{--bm:var(--sky)}@media (prefers-reduced-motion:reduce){.b3d-body[data-v-11205c1a],.b3dbook-shadow[data-v-11205c1a]{transition:none}.b3dbook.is-face.is-hovered .b3d-body[data-v-11205c1a]{transform:translateZ(calc(var(--depth)/-2)) rotateY(calc(var(--face-angle)*-1));filter:none}}.lshelf[data-v-5d95d2a2]{position:relative}.bb-shelf-plaque[data-v-5d95d2a2]{background:var(--paper);border:2px solid var(--ink);box-shadow:.18rem .18rem 0 var(--ink);border-radius:999px;align-items:center;gap:10px;margin:0 0 14px;padding:5px 16px 6px;display:inline-flex;transform:rotate(-1.2deg)}.bb-shelf-plaque-title[data-v-5d95d2a2]{font-family:var(--hand);color:var(--ink);font-size:23px;font-weight:700;line-height:1}.bb-shelf-plaque-count[data-v-5d95d2a2]{font-family:var(--display);letter-spacing:.04em;color:var(--ink-soft);font-size:12px;font-weight:800}.bb-shelf-frame[data-v-5d95d2a2]{position:relative}.bb-slot-ghost[data-v-5d95d2a2]{aspect-ratio:2/3;background:oklch(94% .025 85/.5);border:2px dashed oklch(42% .02 75/.5);border-radius:3px 8px 8px 3px;flex:none;place-items:center;display:grid}.bb-slot-ghost svg[data-v-5d95d2a2]{color:oklch(42% .02 75/.55);width:26px;height:26px}.lshelf-stage[data-v-5d95d2a2]{z-index:1;height:calc(var(--bk-h) + 6px);opacity:0;margin:0;position:relative}.lshelf-stage.is-measured[data-v-5d95d2a2]{opacity:1;transition:opacity .2s}.lshelf-track[data-v-5d95d2a2]{position:absolute;inset:0}.lshelf-slot[data-v-5d95d2a2]{width:var(--cover-w);height:var(--bk-h);transform-origin:0 100%;pointer-events:none;position:absolute;bottom:0;left:0}.lshelf-slot--scene[data-v-5d95d2a2]{perspective:760px;perspective-origin:50%}.lshelf-slot--spine-scene[data-v-5d95d2a2]{perspective:1100px;perspective-origin:44%}.lshelf-hits[data-v-5d95d2a2]{z-index:5;touch-action:none;position:absolute;inset:0}.lshelf-hit[data-v-5d95d2a2]{height:var(--bk-h);transform-origin:0 100%;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;position:absolute;bottom:0;left:0}.lshelf-hit[data-v-5d95d2a2]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:5px}.lshelf-add[data-v-5d95d2a2]{width:var(--cover-w);height:var(--bk-h);aspect-ratio:auto;transform-origin:0 100%;place-items:center;text-decoration:none;transition:background-color .15s,transform .15s;display:grid;position:absolute;bottom:0;left:0}.lshelf-add[data-v-5d95d2a2]:hover{background:oklch(94% .025 85/.96)}.lshelf-add:hover svg[data-v-5d95d2a2]{color:var(--ink)}.lshelf-count[data-v-5d95d2a2]{bottom:calc(var(--bk-h) + 8px);z-index:120;font-family:var(--display);color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:1px 6px;font-size:12.5px;font-weight:800;position:absolute}.lshelf-count[data-v-5d95d2a2]:hover{color:var(--ink)}.lshelf-count[data-v-5d95d2a2]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.lshelf-count--l[data-v-5d95d2a2]{left:0}.lshelf-count--r[data-v-5d95d2a2]{right:0}.lshelf-cycle[data-v-5d95d2a2]{bottom:calc(var(--bk-h) + 4px);z-index:120;background:var(--paper);border:2px solid var(--ink);width:26px;height:26px;color:var(--ink);cursor:pointer;border-radius:999px;place-items:center;padding:0;display:grid;position:absolute}.lshelf-cycle svg[data-v-5d95d2a2]{fill:currentColor;width:13px;height:13px}.lshelf-cycle[data-v-5d95d2a2]:hover{background:var(--marigold)}.lshelf-cycle[data-v-5d95d2a2]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lshelf-cycle[data-v-5d95d2a2]{right:0}.lshelf--cycling .lshelf-count--r[data-v-5d95d2a2]{right:32px}@media (prefers-reduced-motion:reduce){.lshelf-add[data-v-5d95d2a2]{transition:none}}.ex-shelf[data-v-37f8ca63]{position:relative}.ex-shelf__reader[data-v-37f8ca63]{clip:rect(0 0 0 0);pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}
