@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Variable.ttf) format("truetype");font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-VariableItalic.ttf) format("truetype");font-style:italic;font-display:swap}html{font-family:Satoshi,-apple-system,Segoe UI,sans-serif;color-scheme:light;background-color:hsl(var(--background) / 1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}:root{--background: 240 5% 97%;--foreground: 240 6% 10%;--card: 0 0% 100%;--popover: 0 0% 100%;--primary: 220 8% 36%;--primary-foreground: 0 0% 98%;--secondary: 240 5% 94%;--muted: 240 5% 94%;--muted-foreground: 240 4% 38%;--accent: 240 5% 94%;--destructive: 0 40% 44%;--border: 240 5% 88%;--input: 240 5% 90%;--ring: 220 8% 36%}.dark{--background: 240 6% 6%;--foreground: 220 8% 88%;--card: 240 5% 9%;--popover: 240 5% 9%;--primary: 220 8% 72%;--primary-foreground: 240 6% 10%;--secondary: 240 4% 14%;--muted: 240 4% 14%;--muted-foreground: 220 6% 56%;--accent: 240 4% 14%;--destructive: 0 40% 52%;--border: 240 4% 18%;--input: 240 4% 18%;--ring: 220 8% 72%}body{background-color:hsl(var(--background) / 1);color:hsl(var(--foreground) / 1);line-height:1.6;letter-spacing:-.01em}html.dark{color-scheme:dark}html.dark body{background-color:hsl(var(--background) / 1);color:hsl(var(--foreground) / 1)}a{transition:color .18s ease;word-wrap:break-word;word-break:break-word;overflow-wrap:anywhere;text-decoration-thickness:1px;text-underline-offset:2px;&:hover{color:hsl(var(--primary) / var(--un-text-opacity, 1))}}body{--reading-surface-bg: hsl(var(--background) / 1);--reading-surface-text: hsl(var(--muted-foreground) / 1)}body.paper-reading-enabled{--reading-surface-bg: transparent;--reading-surface-text: hsl(var(--foreground) / .8);background-color:#d9c3a0}html.dark body.paper-reading-enabled{--reading-surface-bg: transparent;--reading-surface-text: hsl(213 19% 82% / 1);background-color:#22272e}body.paper-reading-enabled .reading-surface{border:0;background-image:none;box-shadow:none;backdrop-filter:none}body.paper-reading-enabled #sidebar{background-color:transparent;border:0;border-radius:0;backdrop-filter:none}body.paper-reading-enabled #highlight-gradient{opacity:0!important}#paper-background-layer{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;opacity:0;transition:opacity .26s ease;will-change:opacity}body.paper-reading-webgl-ready #paper-background-layer{opacity:1}#paper-background-canvas{width:100%;height:100%;display:block}body.paper-reading-enabled:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:1;transition:opacity .26s ease;will-change:opacity;background:#d4c0a11f}html.dark body.paper-reading-enabled:before{background:#1d232a38;animation:none}body.paper-reading-webgl-ready:before{opacity:0}body.paper-reading-static:before{opacity:1}@media(prefers-reduced-motion:reduce){body.paper-reading-enabled:before{animation:none}#paper-background-layer{transition:none}}@media(max-width:768px){body.paper-reading-enabled .reading-surface{box-shadow:none;backdrop-filter:none}}#page-skeleton{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease;background:hsl(var(--background) / 1)}body.page-skeleton-active #page-skeleton{opacity:1;visibility:visible}body.paper-reading-enabled.page-skeleton-active #page-skeleton{background:#d4c0a1}html.dark body.paper-reading-enabled.page-skeleton-active #page-skeleton{background:#272c35}body.page-skeleton-active #page-root{opacity:0}.page-skeleton-shell{width:min(70rem,100%);margin-inline:auto;padding:6.5rem 1.5rem 2rem}.page-skeleton-line,.page-skeleton-chip,.page-skeleton-card{border-radius:.6rem;background:hsl(var(--muted) / .35);animation:page-skeleton-pulse 1.5s ease-in-out infinite}@keyframes page-skeleton-pulse{0%,to{opacity:.5}50%{opacity:.8}}.page-skeleton-line--lg{height:2rem;width:min(100%,48rem);margin-bottom:1.3rem}.page-skeleton-chip-row{display:flex;gap:.6rem;margin-bottom:1.4rem}.page-skeleton-chip{width:4rem;height:1.4rem}.page-skeleton-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.85rem}.page-skeleton-card{height:14rem}@media(max-width:1024px){.page-skeleton-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:768px){.page-skeleton-shell{padding-top:6rem}.page-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-skeleton-card{height:11rem}}@media(prefers-reduced-motion:reduce){.page-skeleton-line,.page-skeleton-chip,.page-skeleton-card{animation:none}}body.notebook-access-gate-open{overflow:hidden}.notebook-access-gate{position:fixed;inset:0;z-index:160;display:grid;place-items:center;padding:1.2rem;opacity:0;pointer-events:none;transition:opacity .18s ease}.notebook-access-gate.is-open{opacity:1;pointer-events:auto}.notebook-access-gate__overlay{position:absolute;inset:0;background:#0d1017b8;backdrop-filter:blur(10px)}.notebook-access-gate__panel{position:relative;width:min(100%,28rem);border-radius:1.1rem;border:1px solid hsl(var(--border) / .52);background:hsl(var(--card) / .96);box-shadow:0 16px 48px #0c101852;padding:1.18rem 1.18rem 1.12rem;transform:translateY(10px) scale(.985);transition:transform .18s ease}.notebook-access-gate.is-open .notebook-access-gate__panel{transform:translateY(0) scale(1)}.notebook-access-gate__close{position:absolute;top:.62rem;right:.62rem;width:2rem;height:2rem;border-radius:999px;border:1px solid hsl(var(--border) / .6);background:hsl(var(--background) / .75);color:hsl(var(--muted-foreground) / 1);line-height:1;transition:all .18s ease}.notebook-access-gate__close:hover:enabled{border-color:hsl(var(--primary) / .7);color:hsl(var(--foreground) / 1);background:hsl(var(--muted) / .76)}.notebook-access-gate__kicker{margin:0;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:hsl(var(--primary) / .86)}.notebook-access-gate__title{margin:.46rem 0 0;font-size:1.22rem;line-height:1.25;color:hsl(var(--foreground) / 1)}.notebook-access-gate__form{margin-top:.72rem}.notebook-access-gate__label{display:block;margin-bottom:.38rem;font-size:.82rem;color:hsl(var(--foreground) / .98)}.notebook-access-gate__input{width:100%;border-radius:.7rem;border:1px solid hsl(var(--border) / .82);background:hsl(var(--background) / .78);color:hsl(var(--foreground) / 1);padding:.7rem .8rem;font-size:.95rem;transition:border-color .15s ease,box-shadow .15s ease}.notebook-access-gate__input:focus-visible{outline:none;border-color:hsl(var(--primary) / .9);box-shadow:0 0 0 3px hsl(var(--primary) / .2)}.notebook-access-gate__status{min-height:1.3em;margin:.5rem 0 0;font-size:.8rem;color:hsl(var(--muted-foreground) / .94)}.notebook-access-gate__status[data-tone=error]{color:hsl(var(--destructive) / .96)}.notebook-access-gate__actions{margin-top:.78rem;display:flex;justify-content:flex-end;gap:.58rem}.notebook-access-gate__button{border-radius:.68rem;border:1px solid hsl(var(--border) / .74);background:hsl(var(--background) / .72);color:hsl(var(--foreground) / 1);min-height:2.1rem;padding:0 .92rem;font-size:.86rem;transition:all .15s ease}.notebook-access-gate__button:disabled,.notebook-access-gate__close:disabled{opacity:.65;cursor:not-allowed}.notebook-access-gate__button--quiet:hover:enabled{background:hsl(var(--muted) / .8)}.notebook-access-gate__button--primary{border-color:hsl(var(--primary) / .84);background:hsl(var(--primary) / .85);color:hsl(var(--primary-foreground) / 1);box-shadow:0 10px 26px hsl(var(--primary) / .24)}.notebook-access-gate__button--primary:hover:enabled{filter:brightness(1.04);box-shadow:0 12px 30px hsl(var(--primary) / .33)}@media(max-width:640px){.notebook-access-gate{padding:.9rem}.notebook-access-gate__panel{padding:1rem .92rem}}.notebook-access-gate-loading{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:hsl(var(--background) / .6);backdrop-filter:blur(4px);animation:.18s ease both notebook-gate-fade-in}.notebook-access-gate-loading--exit{animation:.18s ease both notebook-gate-fade-out}.notebook-access-gate-loading__spinner{width:2rem;height:2rem;border:2px solid hsl(var(--border) / .5);border-top-color:hsl(var(--primary) / .7);border-radius:50%;animation:.6s linear infinite notebook-gate-spin}@keyframes notebook-gate-fade-in{0%{opacity:0}to{opacity:1}}@keyframes notebook-gate-fade-out{0%{opacity:1}to{opacity:0}}@keyframes notebook-gate-spin{to{transform:rotate(360deg)}}
