.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.dock-container[data-astro-cid-xuahrkkb]{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1000;pointer-events:none}.dock-panel[data-astro-cid-xuahrkkb]{display:flex;align-items:flex-end;padding:10px 16px;background:#141a2659;border:1px solid rgba(255,255,255,.08);border-radius:24px;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 10px 30px #00000040,inset 0 1px #ffffff1a;pointer-events:auto;transition:background-color .4s,border-color .4s}html[data-theme=light] .dock-panel[data-astro-cid-xuahrkkb]{background:#ffffff73;border-color:#b5835a26;box-shadow:0 10px 30px #b5835a0f,inset 0 1px #fff3}.dock-item[data-astro-cid-xuahrkkb]{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 6px;text-decoration:none;color:var(--text-secondary);transition:margin .2s ease,color .3s}.dock-item[data-astro-cid-xuahrkkb]:hover,.dock-item[data-astro-cid-xuahrkkb].active{color:var(--accent)}.dock-item[data-astro-cid-xuahrkkb].active:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--accent);border-radius:50%}.dock-icon[data-astro-cid-xuahrkkb]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#ffffff08;border:1px solid rgba(255,255,255,.04);border-radius:12px;transition:transform .2s cubic-bezier(.25,1,.5,1),background-color .3s,border-color .3s}.dock-item[data-astro-cid-xuahrkkb]:hover .dock-icon[data-astro-cid-xuahrkkb]{background:#d4a3731f;border-color:var(--accent)}html[data-theme=light] .dock-icon[data-astro-cid-xuahrkkb]{background:#b5835a08;border-color:#b5835a0f}html[data-theme=light] .dock-item[data-astro-cid-xuahrkkb]:hover .dock-icon[data-astro-cid-xuahrkkb]{background:#b5835a1f;border-color:var(--accent)}.dock-item[data-astro-cid-xuahrkkb] svg[data-astro-cid-xuahrkkb]{width:20px;height:20px;transition:transform .2s}.dock-tooltip[data-astro-cid-xuahrkkb]{position:absolute;bottom:60px;left:50%;transform:translate(-50%) translateY(10px);background:#141a26f2;border:1px solid rgba(255,255,255,.08);color:#f3f4f6;font-size:11px;padding:6px 10px;border-radius:8px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .25s,transform .25s,visibility .25s;pointer-events:none;box-shadow:0 4px 12px #0000004d}html[data-theme=light] .dock-tooltip[data-astro-cid-xuahrkkb]{background:#fffffffa;border-color:#b5835a26;color:#2b2927;box-shadow:0 4px 12px #b5835a14}.dock-item[data-astro-cid-xuahrkkb]:hover .dock-tooltip[data-astro-cid-xuahrkkb]{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.theme-toggle-btn[data-astro-cid-sckkx6r4]{position:absolute;top:40px;right:24px;width:44px;height:44px;border-radius:50%;border:1px solid var(--card-border);background:var(--card-bg);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--card-shadow);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .3s cubic-bezier(.4,0,.2,1);z-index:100}.theme-toggle-btn[data-astro-cid-sckkx6r4]:hover{transform:scale(1.08) rotate(15deg);border-color:var(--accent);color:var(--accent);box-shadow:var(--card-hover-shadow)}.theme-toggle-btn[data-astro-cid-sckkx6r4] svg[data-astro-cid-sckkx6r4]{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}html[data-theme=dark] .sun-icon[data-astro-cid-sckkx6r4]{display:block}html[data-theme=dark] .moon-icon[data-astro-cid-sckkx6r4],html[data-theme=light] .sun-icon[data-astro-cid-sckkx6r4]{display:none}html[data-theme=light] .moon-icon[data-astro-cid-sckkx6r4]{display:block}@media (min-width: 1024px){.theme-toggle-btn[data-astro-cid-sckkx6r4]{position:fixed;top:40px;right:40px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}:root[data-theme=dark]{--bg-color: #0b0e14;--dot-color: rgba(255, 255, 255, .04);--glow-1: rgba(212, 163, 115, .08);--glow-2: rgba(72, 102, 172, .06);--card-bg: rgba(20, 26, 38, .45);--card-border: rgba(255, 255, 255, .06);--card-shadow: 0 8px 32px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .05);--card-hover-border: rgba(212, 163, 115, .25);--card-hover-shadow: 0 12px 40px rgba(212, 163, 115, .12), inset 0 1px 0 rgba(255, 255, 255, .08);--text-primary: #f3f4f6;--text-secondary: #9ca3af;--text-muted: #6b7280;--accent: #d4a373;--accent-hover: #faedcd;--divider: rgba(255, 255, 255, .06);--link-bg: rgba(255, 255, 255, .03);--link-hover-bg: rgba(212, 163, 115, .1);--qr-bg: rgba(255, 255, 255, .01);--qr-border: rgba(255, 255, 255, .06);--decor-line: rgba(255, 255, 255, .08)}:root[data-theme=light]{--bg-color: #faf7f0;--dot-color: rgba(181, 131, 90, .1);--glow-1: rgba(212, 163, 115, .06);--glow-2: rgba(160, 180, 200, .05);--card-bg: rgba(255, 255, 255, .65);--card-border: rgba(181, 131, 90, .12);--card-shadow: 0 8px 30px rgba(181, 131, 90, .04), 0 1px 2px rgba(0, 0, 0, .02);--card-hover-border: rgba(181, 131, 90, .35);--card-hover-shadow: 0 16px 36px rgba(181, 131, 90, .08);--text-primary: #2d2a26;--text-secondary: #5f5a54;--text-muted: #9e9790;--accent: #b5835a;--accent-hover: #d4a373;--divider: rgba(181, 131, 90, .1);--link-bg: rgba(181, 131, 90, .04);--link-hover-bg: rgba(181, 131, 90, .12);--qr-bg: rgba(181, 131, 90, .02);--qr-border: rgba(181, 131, 90, .15);--decor-line: rgba(181, 131, 90, .2)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Noto Sans SC,sans-serif;color:var(--text-primary);background-color:var(--bg-color);background-image:radial-gradient(circle at 15% 20%,var(--glow-1) 0%,transparent 45%),radial-gradient(circle at 85% 75%,var(--glow-2) 0%,transparent 45%);background-attachment:fixed;min-height:100vh;transition:background-color .4s ease,color .4s ease;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(var(--dot-color) 1.2px,transparent 1.2px);background-size:24px 24px;pointer-events:none;z-index:-1;transition:opacity .4s ease}#starfield-canvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.page{position:relative;z-index:10;max-width:800px;margin:0 auto;padding:40px 24px 120px;min-height:100vh;display:flex;flex-direction:column;gap:24px}@media (min-width: 1024px){.page{max-width:1200px;display:grid;grid-template-columns:340px 1fr;grid-template-areas:"sidebar main" "footer footer";gap:36px;padding:60px 24px 130px}}.card{background:var(--card-bg);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:20px;padding:36px 32px;border:1px solid var(--card-border);box-shadow:var(--card-shadow);transition:transform .4s cubic-bezier(.165,.84,.44,1),box-shadow .4s cubic-bezier(.165,.84,.44,1),border-color .4s ease,background-color .4s ease}.card:hover{transform:translateY(-4px);border-color:var(--card-hover-border);box-shadow:var(--card-hover-shadow)}.card-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;border-bottom:1px solid var(--divider);padding-bottom:14px}.card-header .icon{font-size:20px;line-height:1;color:var(--accent)}.card-header h2{font-family:Outfit,Inter,sans-serif;font-size:14px;font-weight:600;color:var(--accent);letter-spacing:4px;text-transform:uppercase}.card-header .count{margin-left:auto;font-family:Outfit,sans-serif;font-size:12px;color:var(--text-muted);font-weight:500}.btn{font-family:Inter,sans-serif;font-size:11.5px;font-weight:600;padding:7px 14px;border-radius:8px;cursor:pointer;border:none;transition:all .2s ease}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-secondary{background:var(--divider);color:var(--text-primary)}.btn-secondary:hover{background:var(--link-hover-bg);transform:translateY(-1px)}.particle{position:fixed;pointer-events:none;z-index:9999;border-radius:50%}.transition-fade{transition:.3s opacity}html.is-animating .transition-fade{opacity:0}
