:root{--sidebar-width:17.75rem;--sidebar-collapsed-width:3.25rem;--sidebar-bg:#f7f7f8;--sidebar-border:#e7e7e9;--surface-hover:#ececef;--surface-active:#e4e4e7;--text:#202123;--text-muted:#6f7075;--page-bg:#fff;--heading:#171719;--nav-text:#45464b;--brand-bg:#202123;--brand-text:#fff;--inline-code-bg:#f1f1f3;--quote-border:#d4d4d8;--quote-text:#55565b;--callout-bg:#f5f7ff;--callout-border:#dfe5ff;--callout-text:#414762;--accent:#2563eb;--content-width:47.5rem;background:var(--page-bg);color:var(--text);color-scheme:light;font-synthesis:none;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans TC,sans-serif}:root[data-theme=dark]{--sidebar-bg:#18181a;--sidebar-border:#2b2b2e;--surface-hover:#28282c;--surface-active:#303034;--text:#ececee;--text-muted:#99999f;--page-bg:#202022;--heading:#f5f5f6;--nav-text:#c7c7cb;--brand-bg:#f0f0f2;--brand-text:#18181a;--inline-code-bg:#303034;--quote-border:#47474c;--quote-text:#b9b9be;--callout-bg:#242938;--callout-border:#343d59;--callout-text:#d4d9ed;--accent:#8ab4ff;color-scheme:dark}*{box-sizing:border-box}html{min-width:20rem}body{background:var(--page-bg);margin:0;transition:background-color .3s,color .3s}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;transition:grid-template-columns .24s cubic-bezier(.2,0,0,1);display:grid}:root[data-sidebar=collapsed] .app-shell{grid-template-columns:var(--sidebar-collapsed-width) minmax(0, 1fr)}.sidebar{background:var(--sidebar-bg);border-right:.0625rem solid var(--sidebar-border);min-width:0;height:100vh;position:sticky;top:0;overflow:hidden}.sidebar-inner{height:100%;width:var(--sidebar-width);flex-direction:column;padding:.625rem;display:flex}.sidebar-header{justify-content:space-between;align-items:center;height:2.5rem;margin-bottom:.75rem;display:flex}.workspace{color:var(--text);align-items:center;gap:.625rem;min-width:0;text-decoration:none;display:flex}.workspace-mark{object-fit:cover;border-radius:.5rem;flex:0 0 1.875rem;width:1.875rem;height:1.875rem}.theme-toggle{cursor:pointer;z-index:30;background:#202123;border:0;border-radius:62.4375rem;width:2.75rem;min-width:2.75rem;height:1.5rem;padding:.1875rem;transition:background-color .5s ease-in;position:fixed;top:1.25rem;right:2.5rem}.mobile-menu-toggle,.mobile-menu-backdrop{display:none}:root[data-theme=dark] .theme-toggle{background:#d6d6d6}.theme-toggle:focus-visible{outline:.125rem solid var(--accent);outline-offset:.125rem}.theme-toggle-thumb{color:#111;pointer-events:none;background:#fff;border-radius:62.4375rem;justify-content:center;align-items:center;width:1.125rem;height:1.125rem;transition:transform .3s ease-out,background-color .3s ease-out;display:flex;transform:translate(0)}:root[data-theme=dark] .theme-toggle-thumb{color:#fff;background:#111;transform:translate(1.25rem)}.theme-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:.75rem;height:.75rem}.moon-icon,:root[data-theme=dark] .sun-icon{display:none}:root[data-theme=dark] .moon-icon{display:block}.workspace-name{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.sidebar-toggle{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:.5rem;flex:0 0 2rem;justify-content:center;align-items:center;height:2rem;padding:0;transition:background-color .12s,color .12s;display:flex}.sidebar-toggle:hover{background:var(--surface-hover);color:var(--text)}.sidebar-toggle:focus-visible{outline:.125rem solid var(--accent);outline-offset:.0625rem}.sidebar-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:1.1875rem;height:1.1875rem}:root[data-sidebar=collapsed] .sidebar-header{justify-content:flex-start}:root[data-sidebar=collapsed] .workspace{display:none}:root[data-sidebar=collapsed] .sidebar-toggle svg{transform:scaleX(-1)}.note-navigation{min-height:0;overflow-y:auto}.navigation-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;margin:0 .5rem .375rem;font-size:.6875rem;font-weight:600}.note-navigation ul{margin:0;padding:0;list-style:none}.note-navigation li{margin:.125rem 0}.note-navigation a{color:var(--nav-text);white-space:nowrap;border-radius:.5rem;align-items:center;gap:.5625rem;min-height:2.25rem;padding:.4375rem .5625rem;font-size:.875rem;text-decoration:none;display:flex;overflow:hidden}.note-navigation a:hover{background:var(--surface-hover)}.note-navigation a[aria-current=page]{background:var(--surface-active);color:var(--text);font-weight:550}.note-navigation a>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.note-navigation svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.35px;flex:0 0 1.125rem;width:1.125rem;height:1.125rem}.note-category{margin:.125rem 0 .375rem}.note-category summary{color:var(--text-muted);cursor:pointer;user-select:none;white-space:nowrap;border-radius:.5rem;align-items:center;gap:.375rem;min-height:2rem;padding:.3125rem .5rem;font-size:.8125rem;font-weight:600;list-style:none;display:flex}.note-category summary:hover{background:var(--surface-hover);color:var(--text)}.note-category summary:focus-visible{outline:.125rem solid var(--accent);outline-offset:.0625rem}.note-category summary::marker,.note-category summary::-webkit-details-marker{display:none}.note-category .category-chevron{flex-basis:.875rem;width:.875rem;height:.875rem;margin-left:auto;transition:transform .16s}.note-category[open]>summary .category-chevron{transform:rotate(90deg)}.note-category .category-icon{flex-basis:1rem;width:1rem;height:1rem}.category-name{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.category-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.6875rem}.note-category ul{padding-left:.75rem}.note-navigation .uncategorized-notes{margin-top:.375rem}:root[data-sidebar=collapsed] .note-navigation{opacity:0;pointer-events:none;transition:opacity 80ms}.main-content{min-width:0;padding:4.5rem 2rem 7.5rem}.note-content{max-width:var(--content-width);margin:0 auto}.note-content h1,.note-content h2,.note-content h3{color:var(--heading);scroll-margin-top:1.5rem;line-height:1.25}.note-content h1{letter-spacing:-.035em;margin:0 0 1.75rem;font-size:clamp(2rem,5vw,2.6rem)}.note-content h2{margin:2.3em 0 .7em;font-size:1.45rem}.note-content h3{margin:2em 0 .6em;font-size:1.15rem}.note-content p,.note-content li{font-size:1rem;line-height:1.8}.note-content a{color:var(--accent);text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent);text-underline-offset:.1875rem}.note-content code{background:var(--inline-code-bg);border-radius:.3125rem;padding:.15em .35em;font-size:.9em}.note-content pre{border-radius:.75rem;margin:1.5rem 0;padding:1.125rem;overflow:auto}.note-content pre code{background:0 0;padding:0}.note-content blockquote{border-left:.1875rem solid var(--quote-border);color:var(--quote-text);margin:1.5rem 0;padding:.1rem 0 .1rem 1.15rem}.note-content table{border-collapse:collapse;max-width:100%;margin:1.5rem 0;display:block;overflow-x:auto}.note-content th,.note-content td{border:.0625rem solid var(--sidebar-border);text-align:left;vertical-align:top;min-width:8rem;padding:.75rem 1rem;line-height:1.6}.note-content th{background:var(--inline-code-bg);color:var(--heading);white-space:nowrap;font-size:.875rem;font-weight:650}.note-content tbody tr:nth-child(2n){background:color-mix(in srgb, var(--sidebar-bg) 55%, transparent)}.note-content .callout{background:var(--callout-bg);border:.0625rem solid var(--callout-border);color:var(--callout-text);border-radius:.625rem;margin:1.5rem 0;padding:.75rem 1rem}.note-content .callout p{margin:0}.note-content img{border-radius:.75rem;max-width:100%;height:auto}.note-header{border-bottom:.0625rem solid var(--sidebar-border);margin-bottom:2rem;padding-bottom:1.375rem}.note-header h1{margin-bottom:.875rem}.tags{flex-wrap:wrap;gap:.375rem;display:flex}.tags span{background:var(--inline-code-bg);color:var(--text-muted);border-radius:62.4375rem;padding:.25rem .5625rem;font-size:.75rem}.note-pagination{border-top:.0625rem solid var(--sidebar-border);grid-template-columns:repeat(5,minmax(0,1fr));gap:.875rem;margin-top:4rem;padding-top:1.5rem;display:grid}.note-pagination-link{background:var(--sidebar-bg);border:.0625rem solid var(--sidebar-border);color:var(--text);border-radius:.75rem;flex-direction:column;gap:.5rem;min-width:0;padding:1rem;text-decoration:none;transition:background-color .16s,border-color .16s,transform .16s;display:flex}.note-pagination-link:hover{background:var(--surface-hover);border-color:color-mix(in srgb, var(--accent) 38%, var(--sidebar-border));transform:translateY(-.125rem)}.note-pagination-link:focus-visible{outline:.125rem solid var(--accent);outline-offset:.125rem}.note-pagination-link--previous{grid-column:1/3}.note-pagination-link--next{text-align:right;grid-column:4/6}.note-pagination-direction{color:var(--text-muted);align-items:center;gap:.25rem;font-size:.75rem;display:flex}.note-pagination-link--next .note-pagination-direction{justify-content:flex-end}.note-pagination-direction svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:.875rem;height:.875rem}.note-pagination-title{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}@media (width<=47.5rem){:root{--sidebar-width:min(17.75rem, calc(100vw - 2.75rem))}.app-shell,:root[data-sidebar=collapsed] .app-shell{display:block}.sidebar{width:var(--sidebar-width);z-index:20;transition:transform .24s cubic-bezier(.2,0,0,1);position:fixed;left:0;transform:translate(-100%);box-shadow:.625rem 0 1.875rem #00000014}:root[data-mobile-menu=open] .sidebar{transform:translate(0)}:root[data-sidebar=collapsed] .sidebar-header{justify-content:space-between}:root[data-sidebar=collapsed] .workspace{display:flex}:root[data-sidebar=collapsed] .sidebar-toggle svg{transform:none}:root[data-sidebar=collapsed] .note-navigation{opacity:1;pointer-events:auto}.main-content{padding:4.5rem 1.375rem 5.5rem}.theme-toggle{top:1rem;right:1.5rem}.mobile-menu-toggle{background:var(--page-bg);border:.0625rem solid var(--sidebar-border);color:var(--text);cursor:pointer;z-index:30;border-radius:.5rem;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;padding:0;transition:background-color .12s,opacity .12s;display:flex;position:fixed;top:.75rem;left:1.25rem}.mobile-menu-toggle:hover{background:var(--surface-hover)}.mobile-menu-toggle:focus-visible{outline:.125rem solid var(--accent);outline-offset:.125rem}.mobile-menu-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.6px;width:1.25rem;height:1.25rem}:root[data-mobile-menu=open] .mobile-menu-toggle{opacity:0;pointer-events:none}.mobile-menu-backdrop{opacity:0;pointer-events:none;z-index:15;background:#00000052;transition:opacity .24s;display:block;position:fixed;inset:0}:root[data-mobile-menu=open] .mobile-menu-backdrop{opacity:1;pointer-events:auto}:root[data-mobile-menu=open] body{overflow:hidden}}@media (prefers-reduced-motion:reduce){.app-shell,.sidebar,.mobile-menu-backdrop{transition:none}}
