.app-shell[data-v-15dc0f7a]{min-height:100vh;min-height:100dvh;background:var(--color-canvas)}.app-shell--with-nav[data-v-15dc0f7a]{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px))}.app-shell__content[data-v-15dc0f7a]{width:min(100%,28rem);min-height:100%;margin:0 auto}.bottom-nav[data-v-15dc0f7a]{position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);width:min(100%,28rem);min-height:4rem;margin:0 auto;padding:.35rem .75rem calc(.35rem + env(safe-area-inset-bottom,0px));border-top:1px solid color-mix(in srgb,var(--color-border) 55%,transparent);background:color-mix(in srgb,var(--color-canvas) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom-nav__item[data-v-15dc0f7a]{display:flex;min-width:0;min-height:3.5rem;align-items:center;justify-content:center;flex-direction:column;gap:.15rem;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-xs);text-decoration:none}.bottom-nav__item svg[data-v-15dc0f7a]{width:1.45rem;height:1.45rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.bottom-nav__item.router-link-active[data-v-15dc0f7a]{color:var(--color-primary);font-weight:600}.bottom-nav__item.router-link-active[data-v-15dc0f7a]:after{content:"";width:4px;height:4px;border-radius:50%;background:var(--color-primary)}.not-found-page[data-v-a70553b8]{display:grid;min-height:100dvh;place-content:center;justify-items:center;gap:var(--space-4);padding:2rem var(--space-5);text-align:center}.not-found-page__code[data-v-a70553b8]{margin:0;color:var(--color-primary);font-size:4rem;font-weight:700;line-height:1}.not-found-page h1[data-v-a70553b8],.not-found-page p[data-v-a70553b8]{margin:0}.not-found-page p[data-v-a70553b8]:not(.not-found-page__code){color:var(--color-text-muted)}.not-found-page__action[data-v-a70553b8]{display:inline-flex;min-height:2.75rem;align-items:center;justify-content:center;padding:.7rem 1.25rem;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-weight:600;text-decoration:none}@font-face{font-family:Plus Jakarta Sans;src:url(/fonts/plus-jakarta-sans.ttf) format("truetype");font-style:normal;font-weight:400 800;font-display:swap}:root{color-scheme:light;--color-canvas: #fef8f6;--color-surface: #ffffff;--color-surface-soft: #f8f2f0;--color-surface-muted: #f2edeb;--color-text: #1d1b1a;--color-text-soft: #52443e;--color-text-muted: #736f6a;--color-primary: #834a32;--color-primary-soft: #a06248;--color-primary-pale: #ffdbce;--color-secondary: #546251;--color-secondary-pale: #d8e7d1;--color-border: #ebe6df;--color-outline: #85736d;--color-tertiary-pale: #ffdcc0;--color-danger: #ba1a1a;--color-danger-pale: #ffdad6;--font-sans: "Plus Jakarta Sans", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", system-ui, sans-serif;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-md: .875rem;--font-size-lg: 1rem;--font-size-xl: 1.1875rem;--font-size-title: 1.375rem;--line-height-body: 1.55;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-11: 2.75rem;--space-8: 2rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-card: 1.25rem;--radius-pill: 999px;--shadow-card: 0 .25rem 1.25rem -.125rem rgb(74 60 49 / 6%);--shadow-floating: 0 .75rem 2.25rem -.25rem rgb(45 43 42 / 10%);--duration-fast: .14s;--duration-normal: .22s}.library-page{display:grid;gap:var(--space-5);padding:max(var(--space-6),env(safe-area-inset-top)) var(--space-5) var(--space-6)}.library-page__header{display:grid;gap:var(--space-1)}.library-page__header h1{margin:0;font-size:20px}.library-page__header p{margin:0;font-size:13px;line-height:1.65;color:var(--color-text-muted)}.library-page__header .library-page__eyebrow,.library-page__eyebrow{color:var(--color-secondary);font-size:var(--font-size-xs);font-weight:700}.library-page__action{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;margin-top:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:#fff;text-decoration:none;font-weight:700}.library-page__toolbar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:center}.library-page__toolbar select,.library-page__toolbar input{min-width:0;min-height:2.75rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff}.library-page__section{display:grid;gap:var(--space-3)}.library-page__section>h2,.library-page__panel h2{margin:0;font-size:16px}.library-page__panel{display:grid;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-card);background:var(--color-surface);border:1px solid var(--color-surface-muted);overflow-wrap:anywhere}.library-page__empty{padding:var(--space-6) var(--space-4);border:1px solid var(--color-surface-muted);border-radius:var(--radius-card);background:var(--color-surface-soft)}.library-page__empty h2,.library-page__empty h3{margin:0 0 var(--space-2);font-size:var(--font-size-lg)}.library-page__empty p,.library-page__hint{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.library-page__badge{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--color-secondary-pale);color:var(--color-secondary);font-size:var(--font-size-xs)}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--color-canvas)}body{min-width:320px;min-height:100vh;margin:0;background:var(--color-canvas);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-md);line-height:var(--line-height-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-primary-pale);outline-offset:2px}a{color:inherit}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button,summary,label:has(input[type=radio]),label:has(input[type=checkbox]){cursor:pointer}button:disabled{cursor:not-allowed}svg{flex-shrink:0}img{max-width:100%}h1,h2,h3{letter-spacing:-.015em}input,select,textarea{max-width:100%}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
