:root{--bg: #0b0a1a;--bg-2: #12102a;--bg-3: #1a1733;--bg-4: #221d44;--border: rgba(180, 170, 255, .12);--border-strong: rgba(245, 197, 66, .35);--text: #e9e7f6;--muted: #9a96b8;--muted-2: #6f6b8e;--accent: #f5c542;--accent-2: #ffe79a;--accent-ink: #1a1405;--radius: 14px;--radius-sm: 9px;--maxw: 1180px;--nav-h: 60px;--shadow: 0 8px 30px rgba(0, 0, 0, .45);--glow: 0 0 24px rgba(245, 197, 66, .25);--font: "Inter", "Segoe UI", system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--font-display: "Space Grotesk", "Inter", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--text);background-color:var(--bg);background-image:radial-gradient(1200px 600px at 80% -10%,rgba(157,123,255,.16),transparent 60%),radial-gradient(900px 500px at 10% 0%,rgba(74,198,255,.1),transparent 55%),radial-gradient(700px 700px at 50% 120%,rgba(245,197,66,.08),transparent 60%);background-attachment:fixed;line-height:1.6;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(1.5px 1.5px at 20% 30%,rgba(255,255,255,.7),transparent),radial-gradient(1.5px 1.5px at 70% 60%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 40% 80%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 85% 20%,rgba(255,255,255,.5),transparent),radial-gradient(1.5px 1.5px at 55% 45%,rgba(255,255,255,.45),transparent);background-repeat:repeat;background-size:320px 320px,280px 280px,200px 200px,360px 360px,300px 300px;opacity:.6}a{color:var(--accent-2);text-decoration:none}a:hover{color:var(--accent)}.site-main{flex:1;position:relative;z-index:1}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 20px}img{max-width:100%}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.2}.site-header{position:sticky;top:0;z-index:50;height:var(--nav-h);display:flex;align-items:center;gap:18px;padding:0 20px;background:#0b0a1ad1;backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--text);white-space:nowrap}.brand .logo{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--accent-2),var(--accent) 60%,#b9892a);box-shadow:var(--glow)}.brand b{color:var(--accent)}.nav{display:flex;align-items:center;gap:4px;margin-left:auto;overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav a{color:var(--muted);padding:8px 12px;border-radius:var(--radius-sm);font-size:14px;white-space:nowrap;display:flex;align-items:center;gap:7px}.nav a:hover{color:var(--text);background:var(--bg-3)}.nav a.active{color:var(--accent);background:var(--bg-3)}.dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none;box-shadow:0 0 8px currentColor}.site-footer{position:relative;z-index:1;margin-top:56px;padding:32px 0 26px;border-top:1px solid var(--border);background:#08071499;color:var(--muted);font-size:13px}.site-footer .container{display:flex;flex-wrap:wrap;gap:18px 32px;align-items:flex-start;justify-content:space-between}.footer-links{display:flex;flex-wrap:wrap;gap:14px 22px}.footer-links a{color:var(--muted)}.footer-links a:hover{color:var(--accent)}.footer-copy{color:var(--muted-2);font-size:12px;max-width:560px;line-height:1.7}.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);font-weight:700;border:none;cursor:pointer;font-family:var(--font-display);transition:transform .12s ease,box-shadow .12s ease}.btn:hover{transform:translateY(-1px);box-shadow:var(--glow);color:var(--accent-ink)}.btn.ghost{background:var(--bg-3);color:var(--text);border:1px solid var(--border)}.btn.ghost:hover{background:var(--bg-4);color:var(--text)}.hero{position:relative;border-radius:20px;padding:54px 32px 40px;margin:28px 0 18px;overflow:hidden;background:radial-gradient(120% 140% at 50% -20%,rgba(157,123,255,.2),transparent 55%),linear-gradient(160deg,#141133,#0b0a1a 70%);border:1px solid var(--border);box-shadow:var(--shadow)}.hero-constellation{position:absolute;inset:0;width:100%;height:100%;opacity:.55;pointer-events:none}.hero-inner{position:relative;z-index:2;max-width:720px}.hero h1{font-size:clamp(28px,5vw,46px);margin:0 0 12px}.hero h1 .gold{color:var(--accent)}.hero p.lead{color:var(--muted);font-size:16px;max-width:560px;margin:0 0 22px}.hero-cta{display:flex;gap:12px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:14px;margin:26px 0}.stat{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.stat .num{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--accent-2)}.stat .lbl{color:var(--muted);font-size:13px}.section{margin:38px 0}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;gap:12px}.section-head h2{font-size:22px;margin:0}.section-head a{color:var(--muted);font-size:13px}.section-head a:hover{color:var(--accent)}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:10px;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease;position:relative;overflow:hidden}.card:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:var(--shadow)}.card .card-avatar{width:44px;height:44px;border-radius:12px;flex:none;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:18px;color:#0b0a1a;background:linear-gradient(135deg,var(--ec, #888),color-mix(in srgb,var(--ec, #888) 55%,#000))}.card .card-row{display:flex;align-items:center;gap:12px}.card .card-name{font-weight:700;font-size:15px;color:var(--text)}.card .card-sub{color:var(--muted);font-size:12px}.card .card-tags{display:flex;flex-wrap:wrap;gap:6px}.badge{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border);color:var(--muted);white-space:nowrap}.badge.el{color:#0b0a1a;font-weight:700;border:none}.badge.r5{color:var(--accent);border-color:var(--border-strong)}.badge.r4{color:#7ad6ff;border-color:#7ad6ff4d}.avatar-letter{width:44px;height:44px;border-radius:12px;flex:none;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:18px;color:#0b0a1a}.filter-bar{display:flex;flex-wrap:wrap;gap:18px;padding:14px 16px;margin-bottom:18px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius)}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group .fg-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted-2)}.filter-btns{display:flex;flex-wrap:wrap;gap:6px}.filter-btn{font-size:13px;padding:5px 11px;border-radius:999px;background:var(--bg-3);color:var(--muted);border:1px solid var(--border);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.filter-btn:hover{color:var(--text);background:var(--bg-4)}.filter-btn.active{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);font-weight:700}.btn-reset{align-self:flex-end;font-size:13px;padding:6px 12px;border-radius:999px;background:transparent;color:var(--muted);border:1px dashed var(--border);cursor:pointer}.btn-reset:hover{color:var(--accent);border-color:var(--border-strong)}.rail{display:flex;gap:14px;overflow-x:auto;padding:4px 2px 12px;scrollbar-width:thin}.rail .card{min-width:200px}.detail-head{display:flex;gap:22px;align-items:center;flex-wrap:wrap;padding:22px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:22px}.detail-head .avatar-lg{width:96px;height:96px;border-radius:18px;flex:none;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:38px;color:#0b0a1a;background:linear-gradient(135deg,var(--ec, #888),color-mix(in srgb,var(--ec, #888) 55%,#000))}.detail-head h1{margin:0 0 6px;font-size:30px}.detail-head .sub{color:var(--muted)}.detail-body{display:grid;grid-template-columns:1fr;gap:20px}@media(min-width:860px){.detail-body{grid-template-columns:280px 1fr}}.panel{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.panel h3{margin:0 0 12px;font-size:16px;color:var(--accent-2)}.info-grid{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;font-size:14px}.info-grid dt{color:var(--muted)}.info-grid dd{margin:0;color:var(--text)}.prose p{color:var(--muted);margin:0 0 12px}.prose p strong{color:var(--text)}.skill{padding:12px 0;border-top:1px solid var(--border)}.skill:first-of-type{border-top:none}.skill .sname{font-weight:700;color:var(--text)}.skill .stype{font-size:11px;color:var(--muted-2);text-transform:uppercase;letter-spacing:.06em}.skill .sdesc{color:var(--muted);font-size:14px;margin-top:4px}.timeline{position:relative;padding-left:22px}.timeline:before{content:"";position:absolute;left:7px;top:4px;bottom:4px;width:2px;background:var(--border)}.tl-item{position:relative;padding:0 0 22px 14px}.tl-item:before{content:"";position:absolute;left:-19px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:var(--glow)}.tl-item .tl-date{font-size:12px;color:var(--muted-2)}.tl-item h3{margin:2px 0 4px;font-size:17px}.tl-item p{margin:0;color:var(--muted);font-size:14px}.search-wrap{position:relative;max-width:460px}.search-wrap input{width:100%;padding:12px 42px 12px 16px;border-radius:999px;background:var(--bg-3);border:1px solid var(--border);color:var(--text);font-size:15px}.search-wrap input:focus{outline:none;border-color:var(--border-strong)}.search-wrap .ico{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--muted)}.search-results{position:absolute;z-index:30;top:52px;left:0;right:0;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-height:360px;overflow-y:auto;display:none}.search-results.open{display:block}.search-results a{display:flex;align-items:center;gap:10px;padding:10px 14px;color:var(--text);border-bottom:1px solid var(--border)}.search-results a:last-child{border-bottom:none}.search-results a:hover{background:var(--bg-3)}.search-results .sr-cat{margin-left:auto;font-size:11px;color:var(--muted-2)}.notfound{text-align:center;padding:80px 20px}.notfound .code{font-family:var(--font-display);font-size:96px;color:var(--accent);line-height:1}.notfound h1{margin:10px 0}.notfound .quick{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px}.seo-summary{color:var(--muted);font-size:15px;margin:0 0 18px;max-width:760px}.seo-summary strong{color:var(--accent-2)}.crumbs{font-size:13px;color:var(--muted-2);margin:18px 0 4px}.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--accent)}.page-title{font-size:30px;margin:6px 0 0}.faq details{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:10px}.faq summary{cursor:pointer;font-weight:700;color:var(--text)}.faq p{color:var(--muted);margin:10px 0 0}.code-row{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:10px}.code-row .c-code{font-family:var(--font-display);font-weight:700;letter-spacing:.04em;color:var(--accent-2)}.code-row .c-reward{color:var(--muted)}.code-row.expired{opacity:.55}.code-row .tag{margin-left:auto;font-size:11px;padding:2px 9px;border-radius:999px;border:1px solid var(--border)}.code-row .tag.ok{color:#5fe39a;border-color:#5fe39a66}.code-row .tag.bad{color:#ff8a8a;border-color:#ff8a8a66}.muted{color:var(--muted)}.center{text-align:center}.mt-0{margin-top:0}.elem-dots[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:7px;padding:0 10px;border-left:1px solid var(--border);border-right:1px solid var(--border);margin:0 4px}.elem-dots[data-astro-cid-3ef6ksr2] .dot[data-astro-cid-3ef6ksr2]{transition:transform .12s ease}.elem-dots[data-astro-cid-3ef6ksr2] .dot[data-astro-cid-3ef6ksr2]:hover{transform:scale(1.35)}@media(max-width:760px){.elem-dots[data-astro-cid-3ef6ksr2]{display:none}}
