.lib-bleed{margin-inline:calc(-1 * var(--page-gutter));padding-inline:var(--page-gutter)}.lib-mast{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md);padding-block:var(--space-lg) var(--space-lg);border-block-end:1px solid var(--color-ink)}@media (min-width: 56rem){.lib-mast{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--space-2xl);align-items:end;padding-block-start:var(--space-2xl)}}.lib-eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs);margin:0 0 var(--space-sm);font-size:var(--text-2xs);line-height:var(--leading-snug);letter-spacing:.22em;color:var(--color-ink-faint)}.lib-eyebrow:before{content:"";inline-size:var(--space-xl);block-size:2px;flex:none;background:var(--color-accent)}.lib-mark{display:block;inline-size:var(--space-xl);block-size:3px;margin-block-end:var(--space-sm);background:var(--color-accent)}.lib-title{margin:0;font-family:var(--font-display);font-size:var(--text-4xl);line-height:var(--leading-tight);letter-spacing:-.04em;text-wrap:balance}.lib-deck{margin:0;max-width:var(--measure-cjk);font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--leading-body);letter-spacing:-.01em;color:var(--color-ink)}.lib-sub{margin:var(--space-sm) 0 0;max-width:var(--measure-cjk);font-size:var(--text-sm);line-height:var(--leading-body);color:var(--color-ink-soft)}.lib-actions{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-md)}.lib-rail{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs) var(--space-xs);padding-block:var(--space-sm);margin-block-end:var(--space-lg);background:var(--color-surface);border-block-end:1px solid var(--color-line)}@media (min-width: 48rem){.lib-rail{position:sticky;top:var(--topbar-h);z-index:calc(var(--z-sticky) - 1)}}.lib-chip{padding:var(--space-2xs) var(--space-sm);border:1px solid var(--color-line-strong);border-radius:var(--radius-xs);background:var(--color-surface-raised);color:var(--color-ink-soft);font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--leading-snug);text-decoration:none;cursor:pointer;transition:border-color var(--duration-fade) var(--ease-standard),color var(--duration-fade) var(--ease-standard),background-color var(--duration-fade) var(--ease-standard)}.lib-chip:hover{border-color:var(--color-ink-faint);color:var(--color-ink);text-decoration:none}.lib-chip.on{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.lib-chip .n{margin-left:var(--space-2xs);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;opacity:.75}.lib-index{list-style:none;margin:0;padding:0}.lib-index>li{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:var(--space-sm);padding-block:var(--space-md);border-block-start:1px solid var(--color-line)}.lib-index>li:last-child{border-block-end:1px solid var(--color-line)}@media (min-width: 48rem){.lib-index>li{grid-template-columns:4.5rem minmax(0,1fr);gap:var(--space-lg);padding-block:var(--space-lg)}}.lib-num{font-family:var(--font-display);font-size:var(--text-2xl);line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--color-ink-faint)}.lib-index h3{margin:0 0 var(--space-2xs);font-size:var(--text-lg);line-height:var(--leading-snug);letter-spacing:-.01em}.lib-index p{margin:0;max-width:var(--measure-cjk);font-size:var(--text-sm);line-height:var(--leading-body);color:var(--color-ink-soft)}.lib-marg{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.lib-marg+.lib-marg{margin-top:var(--space-2xl)}.lib-marg-head h2{margin:0;font-family:var(--font-display);font-size:var(--text-2xl);line-height:var(--leading-tight);letter-spacing:-.03em}.lib-marg-head p{margin:var(--space-xs) 0 0;max-width:var(--measure-narrow);font-size:var(--text-xs);line-height:var(--leading-body);color:var(--color-ink-faint)}@media (min-width: 60rem){.lib-marg{grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:var(--space-2xl)}.lib-marg-head{position:sticky;top:calc(var(--topbar-h) + var(--space-lg));align-self:start}}.lib-fig{position:relative;display:block;inline-size:100%;padding:0;border:none;background:var(--color-surface-sunken);line-height:0;overflow:hidden}.lib-fig>img{inline-size:100%;block-size:100%;aspect-ratio:var(--lib-ar, 3 / 2);object-fit:var(--lib-fit, cover);display:block}button.lib-fig,a.lib-fig{cursor:zoom-in}.lib-over{position:absolute;display:block;inset-inline:0;inset-block-end:0;padding:var(--space-lg) var(--space-md) var(--space-md);background:linear-gradient(to top,var(--color-scrim),color-mix(in oklab,var(--color-scrim) 55%,transparent) 55%,transparent);color:var(--color-on-scrim);line-height:var(--leading-snug);text-align:start}.lib-over-title{display:block;margin:0;font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--leading-snug);letter-spacing:-.02em;color:var(--color-on-scrim)}.lib-over-sub{display:block;margin:var(--space-2xs) 0 0;font-size:var(--text-xs);line-height:var(--leading-snug);color:color-mix(in oklab,var(--color-on-scrim) 78%,transparent)}.lib-badge{position:absolute;inset-block-start:var(--space-xs);inset-inline-start:var(--space-xs);padding:var(--space-3xs) var(--space-xs);border-radius:var(--radius-xs);background:color-mix(in oklab,var(--color-scrim) 88%,transparent);color:var(--color-on-scrim);font-size:var(--text-2xs);line-height:var(--leading-snug);letter-spacing:.06em}.lib-groups{display:grid;gap:var(--space-lg)}.lib-group{display:grid;gap:var(--space-sm);padding-block-end:var(--space-lg);border-block-end:1px solid var(--color-line);scroll-margin-block-start:calc(var(--topbar-h) + var(--space-3xl))}.lib-group-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2xs) var(--space-md)}.lib-group-head h2{margin:0;font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--leading-tight);letter-spacing:-.02em}.lib-group-head .n{margin-inline-start:var(--space-2xs);font-family:var(--font-sans);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--color-ink-faint)}.lib-more{flex:none;inline-size:max-content;padding:0;border:none;background:none;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-accent-ink);text-decoration:underline;cursor:pointer}.lib-groups.wall{grid-template-columns:repeat(auto-fill,minmax(min(20rem,100%),1fr));align-items:start;gap:var(--space-lg) var(--space-xl)}.lib-groups.wall>.lib-group.open{grid-column:1 / -1}.lib-colophon{margin-top:var(--space-2xl);padding-block:var(--space-lg) var(--space-2xl);border-block-start:1px solid var(--color-line);background:var(--color-surface-sunken)}.lib-colophon p{margin:0;max-width:var(--measure-cjk);font-size:var(--text-2xs);line-height:var(--leading-body);color:var(--color-ink-faint)}.lib-colophon p+p{margin-top:var(--space-sm)}@media (forced-colors: active){.lib-chip{border-color:ButtonBorder}.lib-mark{background:CanvasText}.lib-chip.on{border-color:Highlight;border-width:2px}.lib-eyebrow:before{background:CanvasText}.lib-fig{border:1px solid CanvasText}.lib-over{background:Canvas;color:CanvasText;border-block-start:1px solid CanvasText}.lib-over-title,.lib-over-sub{color:CanvasText}.lib-badge{background:Canvas;color:CanvasText;border:1px solid CanvasText}.lib-colophon{border-block-start-color:CanvasText}}.kv{margin:0;line-height:var(--leading-body);line-break:strict}.kv dt{display:inline;font-weight:600;color:var(--color-ink)}.kv dt:after{content:"："}.kv dd{display:inline;margin:0}.kv dd:after{content:"";display:block;margin-block-end:var(--space-3xs)}.kv dd:last-of-type:after{margin-block-end:0}
