@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}:root[data-theme=yuan]{--theme:#a8dff0;--theme-dark:#24566a;--text-light:#f2fcff;--text-outline:#294c5b}:root[data-theme=yan]{--theme:#b8e6c1;--theme-dark:#285c35;--text-light:#f2fff4;--text-outline:#294b32}:root[data-theme=huang]{--theme:#f3b6c8;--theme-dark:#713448;--text-light:#fff3f7;--text-outline:#593342}:root[data-theme=ying]{--theme:#f3dda0;--theme-dark:#66501b;--text-light:#fff9ea;--text-outline:#57471f}:root{--wheel-yuan:#a8dff0;--wheel-yan:#b8e6c1;--wheel-huang:#f3b6c8;--wheel-ying:#f3dda0;--text:#fff;--text-muted:#ffffffc7;--panel:color-mix(in srgb, var(--theme) 24%, transparent);--panel-border:color-mix(in srgb, var(--theme) 30%, white 55%);--overlay:#00000005;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0}body{color:var(--text);background:0 0;line-height:1.6}html::-webkit-scrollbar{width:7px;height:7px}html::-webkit-scrollbar-track{background:0 0!important}html::-webkit-scrollbar-thumb{background:var(--theme);border-radius:999px}.shelf-list::-webkit-scrollbar,.article-viewport::-webkit-scrollbar,pre::-webkit-scrollbar,.table-wrap::-webkit-scrollbar{width:6px;height:6px}.shelf-list::-webkit-scrollbar-track,.article-viewport::-webkit-scrollbar-track,pre::-webkit-scrollbar-track,.table-wrap::-webkit-scrollbar-track{background:0 0}.shelf-list::-webkit-scrollbar-thumb,.article-viewport::-webkit-scrollbar-thumb,pre::-webkit-scrollbar-thumb,.table-wrap::-webkit-scrollbar-thumb{background:#ffffff3d;border-radius:999px;transition:background .2s}.shelf-list::-webkit-scrollbar-thumb:hover,.article-viewport::-webkit-scrollbar-thumb:hover,pre::-webkit-scrollbar-thumb:hover,.table-wrap::-webkit-scrollbar-thumb:hover{background:var(--theme)}.wallpaper-background{object-fit:cover;z-index:-2;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .4s;position:fixed;inset:0}.wallpaper-visible{opacity:1}.wallpaper-hidden{opacity:0}.wallpaper-overlay{background:var(--overlay);z-index:-1;pointer-events:none;position:fixed;inset:0}.page{width:min(1000px,100% - 40px);color:var(--text-light);min-height:100vh;margin:0 auto;padding:clamp(100px,15vh,160px) 0 32px;position:relative}.panel{background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(2px);border-radius:18px}.hero-panel{box-sizing:border-box;border-radius:22px;padding:clamp(28px,5vw,52px)}.hero-panel h1{letter-spacing:-.04em;margin:0;font-size:clamp(36px,6vw,56px);line-height:1.15}.hero-intro{max-width:540px;color:var(--text-muted);margin:18px 0 0;font-size:14px;line-height:1.9}.hero-bottom-bar{box-sizing:content-box;border-top:1px solid var(--panel-border);height:25px;color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:30px;padding-top:20px;font-size:12px;display:flex}.hero-count{color:var(--text-muted);align-items:baseline;gap:10px;font-size:12px;display:inline-flex}.hero-count .count-number{color:var(--text-light);font-variant-numeric:tabular-nums;font-size:25px;line-height:1}.theme-indicator{color:var(--text-light);align-items:center;gap:8px;font-size:13px;font-weight:500;display:inline-flex}.eyebrow{letter-spacing:.12em;color:var(--text-muted);margin:0 0 14px;font-size:12px}.status-dot{background:var(--theme);width:7px;height:7px;box-shadow:0 0 8px var(--theme);border-radius:50%;flex:none;display:inline-block}.tag-badge{border:1px solid var(--panel-border);color:var(--text-light);white-space:nowrap;background:#ffffff0a;border-radius:6px;align-items:center;padding:4px 8px;font-size:11px;display:inline-flex}.page-footer{border-top:1px solid var(--panel-border);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:32px;padding:18px 2px;font-size:12px;display:flex}.page-footer a{color:var(--text-light);align-items:center;gap:5px;text-decoration:none;transition:color .16s;display:inline-flex}.page-footer a:hover{color:var(--theme)}.empty-state{text-align:center;color:var(--text-muted);border-radius:18px;grid-column:1/-1;padding:48px}.theme-wheel-stage{z-index:20;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;width:150px;height:150px;transition:transform .45s cubic-bezier(.2,.75,.25,1);position:fixed;top:0;left:50%;transform:translate(-50%,-112.5px)}.theme-wheel-stage.is-expanded{transform:translate(-50%)}.theme-wheel-stage:active{cursor:grabbing}.theme-wheel-stage:focus-visible{outline:none}.theme-wheel-stage:focus-visible .theme-wheel-disc{box-shadow:0 0 0 3px #ffffffe6,0 8px 28px #00000038}.theme-wheel-rotor{width:100%;height:100%;transform:rotate(var(--rotation,0deg));transform-origin:50%;transition:transform .42s cubic-bezier(.2,.75,.25,1)}.theme-wheel-rotor.is-dragging{transition:none}.theme-wheel-rotor.is-snapping{transition:transform .42s cubic-bezier(.2,.75,.25,1)}.theme-wheel-disc{background:conic-gradient(from -45deg, color-mix(in srgb, var(--wheel-huang) var(--wheel-alpha,24%), transparent) 0deg 90deg, color-mix(in srgb, var(--wheel-ying) var(--wheel-alpha,24%), transparent) 90deg 180deg, color-mix(in srgb, var(--wheel-yuan) var(--wheel-alpha,24%), transparent) 180deg 270deg, color-mix(in srgb, var(--wheel-yan) var(--wheel-alpha,24%), transparent) 270deg 360deg);border:1px solid var(--panel-border);border-radius:50%;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 4px 14px #00000014;-webkit-mask:radial-gradient(circle,#0000 0 21px,#000 21px);mask:radial-gradient(circle,#0000 0 21px,#000 21px)}.theme-wheel-stage{--wheel-alpha:24%}.theme-wheel-stage.is-expanded{--wheel-alpha:42%}.wheel-sector{color:#fff;text-shadow:0 1px 4px #0000007a;background:color-mix(in srgb, var(--theme) 24%, transparent);cursor:pointer;border:1px solid #ffffffa6;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:17px;font-weight:650;transition:background .2s,box-shadow .2s;display:flex;position:absolute;transform:translate(-50%,-50%)}.wheel-sector span{text-align:center;transform:rotate(calc(0deg - var(--rotation,0deg)));pointer-events:none;line-height:1;display:block}.wheel-sector[data-theme=huang]{top:19%;left:50%}.wheel-sector[data-theme=ying]{top:50%;left:81%}.wheel-sector[data-theme=yuan]{top:81%;left:50%}.wheel-sector[data-theme=yan]{top:50%;left:19%}.wheel-sector:hover{background:#ffffff59}.wheel-sector.active{background:#ffffff59;box-shadow:0 0 0 2px #ffffffe6,0 2px 12px #0000001f}.wheel-pointer{pointer-events:none;z-index:5;width:24px;height:36px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.wheel-pointer-line{background:var(--theme-dark);border-radius:999px;width:3px;height:36px;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 1px 5px #00000059}.wheel-pointer-tip{border-left:6px solid #0000;border-right:6px solid #0000;border-top:10px solid var(--theme-dark);filter:drop-shadow(0 1px 3px #0006);width:0;height:0;position:absolute;top:26px;left:50%;transform:translate(-50%)}.wheel-pointer-center{box-sizing:border-box;background:color-mix(in srgb, var(--theme) var(--wheel-alpha), transparent);border:1px solid var(--panel-border);z-index:5;pointer-events:none;border-radius:50%;width:42px;height:42px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.theme-status{z-index:21;color:#fff;text-align:center;-webkit-backdrop-filter:blur(8px);opacity:0;visibility:hidden;pointer-events:none;background:#1e232894;border:1px solid #ffffff59;border-radius:999px;max-width:calc(100vw - 32px);padding:7px 14px;font-size:13px;transition:opacity .2s,transform .2s,visibility .2s;position:fixed;top:82px;left:50%;transform:translate(-50%,-5px)}.theme-status.is-visible{opacity:1;visibility:visible;transform:translate(-50%)}.site-header{z-index:15;pointer-events:none;padding:12px 24px;position:fixed;top:0;left:0;right:0}.site-nav{justify-content:space-between;align-items:flex-start;gap:16px;width:100%;display:flex}.nav-links{box-sizing:border-box;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(2px);pointer-events:auto;border-radius:12px;flex:0 0 33.333vw;justify-content:space-around;align-items:center;gap:10px;min-width:0;padding:6px 12px;display:flex}.nav-tools{box-sizing:border-box;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(2px);pointer-events:auto;border-radius:12px;flex:none;justify-content:center;align-items:center;gap:14px;padding:6px 12px;display:flex}.nav-link,.nav-tool{box-sizing:border-box;color:#ffffffeb;white-space:nowrap;text-shadow:0 1px 5px #00000073;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;margin:0;padding:0;font-family:inherit;font-size:15px;line-height:20px;text-decoration:none;transition:color .2s,opacity .2s;display:inline-flex}.nav-link:hover,.nav-tool:hover{color:var(--theme)}.nav-link.active{color:var(--theme);font-weight:650}.nav-admin{gap:7px}.shield-icon{flex:none;width:20px;height:20px}.language-switcher{flex:none;align-items:center;display:inline-flex;position:relative}.nav-tools .language-switcher>#language-trigger{box-sizing:border-box;color:#ffffffeb;width:42px;min-width:42px;max-width:42px;height:20px;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:0 0 42px;justify-content:flex-start;align-items:center;gap:5px;margin:0;padding:0;line-height:20px;display:inline-flex}.nav-tools .language-switcher>#language-trigger:hover{color:var(--theme)}.nav-tools .language-switcher>#language-trigger:focus-visible{outline:2px solid var(--theme);outline-offset:3px;border-radius:4px}.nav-language svg{fill:none;stroke:currentColor;stroke-width:1.5px;flex:0 0 13px;width:13px;height:13px}.language-menu[hidden]{display:none!important}.language-menu{z-index:1000;box-sizing:border-box;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(8px);border-radius:10px;width:88px;padding:4px;position:absolute;top:calc(100% + 10px);right:-10px;box-shadow:0 8px 24px #0003}.language-menu button{box-sizing:border-box;width:100%;min-height:34px;color:var(--text-light);white-space:nowrap;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:4px;padding:6px 7px;font-family:inherit;font-size:13px;line-height:20px;display:flex}.language-menu button:hover,.language-menu button[aria-checked=true]{background:color-mix(in srgb, var(--theme) 22%, transparent)}.language-check{width:12px;color:var(--text-light);text-align:center;flex:0 0 12px;font-weight:600}.language-menu button[aria-checked=true] .language-check:after{content:"✓"}#mobile-wallpaper{display:none}.nav-menu-toggle{width:42px;height:34px;color:var(--text-light);background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(2px);cursor:pointer;pointer-events:auto;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;display:none}.nav-menu-toggle span{background:currentColor;border-radius:2px;width:19px;height:2px;transition:transform .2s,opacity .2s;display:block}.nav-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px)rotate(-45deg)}.nav-drawer-backdrop{display:none}@media (width<=640px){.page{width:calc(100% - 28px);padding-top:112px}}@media (width<=600px){#mobile-wallpaper{object-fit:cover;z-index:-2;pointer-events:none;width:100vw;height:100dvh;display:block;position:fixed;inset:0}.wallpaper-background{display:none}.theme-wheel-stage{top:env(safe-area-inset-top,0px);width:150px;height:150px;transform:translate(-50%, calc(-75% - env(safe-area-inset-top,0px)))}.theme-wheel-stage.is-expanded{transform:translate(-50%)}.wheel-sector{width:34px;height:34px;font-size:16px}.theme-status{top:76px}.site-header{z-index:30;padding:10px 12px}.site-nav{justify-content:space-between;align-items:flex-start;gap:10px}.nav-menu-toggle{z-index:2;flex:0 0 42px;display:flex;position:relative}.nav-links{z-index:1;width:min(50vw,320px);min-width:0;height:100dvh;padding:calc(env(safe-area-inset-top,0px) + 72px) 16px 24px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(2px);visibility:hidden;pointer-events:none;border-left:none;border-radius:0 18px 18px 0;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:8px;transition:transform .25s,visibility .25s;display:flex;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-105%)}.nav-links.is-open{visibility:visible;pointer-events:auto;transform:translate(0)}.nav-link{border-radius:10px;justify-content:flex-start;width:100%;min-height:42px;padding:10px 12px;font-size:15px}.nav-link.active{background:color-mix(in srgb, var(--theme) 18%, transparent)}.nav-drawer-backdrop{z-index:0;opacity:0;visibility:hidden;pointer-events:none;background:#00000040;transition:opacity .25s,visibility .25s;display:block;position:fixed;inset:0}.nav-drawer-backdrop.is-visible{opacity:1;visibility:visible;pointer-events:auto}.nav-tools{z-index:2;flex:none;gap:10px;padding:6px 10px;position:relative}.language-menu{width:88px;top:calc(100% + 8px);right:-10px}.nav-link,.nav-tool{font-size:13px}.shield-icon{width:18px;height:18px}}@media (prefers-reduced-motion:reduce){.theme-wheel-stage,.theme-wheel-rotor,.wallpaper-background,.theme-status{transition-duration:.01ms}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
