:root{--bg: #000000;--text: #e6edf3;--muted: #a1a8b3;--link: #c084fc}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;background:radial-gradient(1200px 600px at 20% -10%,rgba(220,200,255,.15),transparent 60%),radial-gradient(1200px 600px at 120% 10%,rgba(58,160,255,.1),transparent 60%),var(--bg);color:var(--text);line-height:1.6}a{color:inherit;text-decoration:none;transition:color .15s ease}a:hover{color:var(--link);text-decoration:none}.container{max-width:980px;margin:0 auto;padding:24px}.header{position:sticky;top:0;z-index:1000;backdrop-filter:blur(10px);background:#0009;border-bottom:1px solid rgba(255,255,255,.06);width:100%}.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 24px;max-width:100%;position:relative}@media(max-width:768px){.nav{padding:4px 16px}}.nav.container{max-width:100%;padding:14px 24px}.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.2px;z-index:1001}.brand .logo{width:28px;height:28px;object-fit:contain;display:block}.nav-links{display:flex;gap:8px;align-items:center}.nav a{padding:8px 12px;transition:color .15s ease}.nav a[aria-current=page]{color:var(--link)}.mobile-menu-toggle{display:none;flex-direction:column;gap:4px;background:transparent;border:none;cursor:pointer;padding:8px;z-index:1001;position:relative}.mobile-menu-toggle span{display:block;width:24px;height:2px;background:var(--text);transition:all .3s ease;border-radius:2px}.mobile-menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}@media(max-width:768px){.mobile-menu-toggle{display:flex}.nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;background:#000000f2;backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.06);padding:0 24px;gap:0;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .3s ease,opacity .3s ease,padding .3s ease,visibility .3s ease;z-index:1000}.nav-links.mobile-open{max-height:500px;opacity:1;visibility:visible;padding:16px 24px}.nav-links a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06);width:100%;display:block}.nav-links a:last-child{border-bottom:none}.nav-links .shop-button{margin-top:8px;text-align:center;border-radius:6px}}.shop-button{padding:4px 20px!important;background:linear-gradient(135deg,#a78bfa,#8b5cf6,#7c3aed);border:1px solid rgba(167,139,250,.5);border-radius:6px;color:#fff!important;font-weight:600;text-decoration:none!important;box-shadow:0 0 20px #a78bfa66,0 0 40px #a78bfa33,inset 0 0 20px #ffffff1a;transition:all .3s ease;position:relative;overflow:hidden}.shop-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.shop-button:hover{transform:translateY(-2px);box-shadow:0 0 30px #a78bfa99,0 0 60px #a78bfa4d,0 4px 12px #a78bfa66,inset 0 0 30px #ffffff26;border-color:#a78bfacc;color:#fff!important}.shop-button:hover:before{left:100%}.shop-button:active{transform:translateY(0)}.main{padding:24px;max-width:100%}.main.container{max-width:100%;padding:24px}.hero{position:relative;min-height:calc(100vh - 64px);display:grid;align-items:end;padding:clamp(56px,8vw,120px) 0 48px;isolation:isolate;overflow:hidden}.hero-bg{position:absolute;inset:0;background-image:url(/hero.webp);background-size:cover;background-position:center;opacity:.7;z-index:-2;filter:saturate(.9) contrast(1.05);will-change:transform}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.6) 45%,var(--bg) 92%);z-index:-1}.hero .inner{max-width:100%;margin:0 auto;padding:0 24px;position:relative;z-index:1}.hero-title{font-size:clamp(2.6rem,6vw,4rem);margin:0 0 8px;letter-spacing:.2px;background:linear-gradient(to right,#a78bfa,#c084fc,#d8b4fe 60%,#e9d5ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:gradient-shift 4s ease infinite,title-glow 3s ease-in-out infinite;filter:drop-shadow(0 0 20px rgba(192,132,252,.3))}@keyframes title-glow{0%,to{filter:drop-shadow(0 0 20px rgba(192,132,252,.3))}50%{filter:drop-shadow(0 0 30px rgba(192,132,252,.5))}}@supports not (-webkit-background-clip: text){.hero-title{color:#c084fc;background:none;-webkit-text-fill-color:initial}}.hero p.lead{color:var(--muted);font-size:clamp(1.05rem,1.6vw,1.25rem);max-width:800px;margin:10px 0 20px}.server-ip-box{display:inline-flex;align-items:center;gap:12px;margin-top:8px;padding:12px 24px;background:#dcc8ff1a;border:1px solid rgba(220,200,255,.3);border-radius:8px;backdrop-filter:blur(10px);transition:all .3s ease;position:relative;animation:ip-box-pulse 3s ease-in-out infinite}@keyframes ip-box-pulse{0%,to{box-shadow:0 0 20px #c084fc4d,0 0 40px #c084fc26,inset 0 0 20px #c084fc1a}50%{box-shadow:0 0 30px #c084fc80,0 0 60px #c084fc40,inset 0 0 30px #c084fc26}}.server-ip-box:hover{box-shadow:0 0 40px #c084fc99,0 0 80px #c084fc4d,inset 0 0 40px #c084fc33;border-color:#c084fc99;transform:translateY(-2px);animation:none}.server-ip{font-family:Courier New,monospace;font-size:clamp(1rem,1.5vw,1.25rem);font-weight:600;color:#e6edf3;letter-spacing:1px;text-shadow:0 0 10px rgba(192,132,252,.5)}.copy-btn{background:transparent;border:none;color:#c084fcb3;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;opacity:.7}.copy-btn:hover{color:#c084fc;opacity:1;background:#c084fc1a;transform:scale(1.1)}.copy-btn:active{transform:scale(.95)}.copy-feedback{position:absolute;top:-35px;left:50%;transform:translate(-50%);background:#c084fce6;color:#000;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:600;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;white-space:nowrap}.copy-feedback.show{opacity:1;transform:translate(-50%) translateY(-5px)}.home-section{padding:28px 0;border-top:1px solid rgba(255,255,255,.08)}.home-section .inner{max-width:100%;margin:0 auto;padding:0 24px}.home-section h2{margin:0 0 12px;font-size:clamp(1.4rem,2vw,1.9rem)}.tiles{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}@media(max-width:980px){.tiles{grid-template-columns:1fr}}.tile{display:grid;gap:10px;transition:transform .3s ease}.tile:hover{transform:translateY(-4px)}.tile .media{position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:6px}.tile .media img{width:100%;height:100%;object-fit:cover;border-radius:6px;display:block;transition:transform .3s ease,box-shadow .3s ease}.tile .media:hover img{transform:scale(1.05);box-shadow:0 8px 24px #dcc8ff33}.tile h3{margin:6px 0 4px;font-size:1.15rem}.tile p{margin:0;color:var(--muted)}.steps{display:grid;gap:10px}.step{padding:14px 0;border-top:1px solid rgba(255,255,255,.08)}.step:first-child{border-top:none}.step .k{color:var(--muted);font-weight:700;margin-right:6px}.gallery{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}@media(max-width:980px){.gallery{grid-template-columns:repeat(2,1fr)}}.gallery img{width:100%;height:100%;object-fit:cover;border-radius:6px;display:block}.list-feed{list-style:none;padding:0;margin:0;display:grid;gap:16px}.list-feed .item-title{font-weight:700;margin:0}.list-feed .item-desc{margin:4px 0 0;color:var(--muted)}.list-meta{color:var(--muted);font-size:.9rem}.blog-shell{display:grid;grid-template-columns:260px 1fr;gap:32px;align-items:start}@media(max-width:980px){.blog-shell{grid-template-columns:1fr}}.blog-sidebar{position:sticky;top:64px;max-height:calc(100vh - 80px);overflow:auto;padding-right:8px}@media(max-width:980px){.blog-sidebar{position:static;max-height:none;overflow:visible;margin-bottom:32px;padding-right:0}}.blog-sidebar .sidebar-title{margin:0 0 8px;font-weight:700}.blog-sidebar .year{margin:18px 0}.blog-sidebar .year-label{color:var(--muted);font-weight:700;margin-bottom:6px}.blog-sidebar ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}.blog-sidebar a{display:block;opacity:.9}.blog-sidebar a:hover{color:var(--link);opacity:1}.feed h1{margin:0 0 12px}.post-card{display:grid;grid-template-columns:220px 1fr;gap:16px;padding:16px 0;border-top:1px solid rgba(255,255,255,.08)}.post-card:first-child{border-top:none}.post-card .thumb img{width:100%;height:150px;object-fit:cover;border-radius:6px;display:block}.post-card .meta{color:var(--muted);margin:0 0 6px;font-size:.95rem}.post-card .title{margin:0 0 6px;font-size:1.1rem}.post-card .desc{margin:0;color:var(--muted)}@media(max-width:720px){.post-card{grid-template-columns:1fr}.post-card .thumb img{height:200px}}.blog-post-content{min-width:0}.prose{max-width:65ch;line-height:1.7}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{background:linear-gradient(to right,#a78bfa,#c084fc,#d8b4fe 60%,#e9d5ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:gradient-shift 4s ease infinite}.prose h1{font-size:2rem;margin:0 0 16px;line-height:1.2}.prose h2{font-size:1.5rem;margin:32px 0 12px;line-height:1.3}.prose h3{font-size:1.25rem;margin:24px 0 8px}@supports not (-webkit-background-clip: text){.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{color:#c084fc}}@keyframes gradient-shift{0%,to{background-position:0% center}50%{background-position:100% center}}.prose p{margin:0 0 16px}.prose ul,.prose ol{margin:0 0 16px;padding-left:24px}.prose li{margin:4px 0}.prose img{width:100%;height:auto;border-radius:6px;margin:24px 0}.prose a{color:var(--link);text-decoration:underline}.prose a:hover{text-decoration:none}.prose code{background:#ffffff1a;padding:2px 6px;border-radius:3px;font-size:.9em}.prose pre{background:#0000004d;padding:16px;border-radius:6px;overflow-x:auto;margin:16px 0}.prose pre code{background:none;padding:0}.blog-nav{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.08)}.blog-nav-back{color:var(--muted);font-size:.9rem;transition:color .15s ease}.blog-nav-back:hover{color:var(--link)}.blog-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}.blog-nav-link{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:6px;transition:all .15s ease;text-decoration:none}.blog-nav-link:hover{border-color:#ffffff26;background:#ffffff08;transform:translateY(-2px)}.blog-nav-prev{text-align:left}.blog-nav-next{text-align:right}.blog-nav-label{font-size:.85rem;color:var(--muted);font-weight:500}.blog-nav-title{font-size:.95rem;color:var(--text);font-weight:600;line-height:1.3}.blog-nav-link:hover .blog-nav-title{color:var(--link)}@media(max-width:720px){.blog-post-nav{grid-template-columns:1fr;gap:16px}.blog-nav-next{text-align:left}}.hover-preview{position:fixed;width:280px;max-height:320px;background:#0b0f14fa;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-shadow:0 8px 32px #00000080,0 0 0 1px #dcc8ff1a;z-index:10000;pointer-events:auto;overflow:hidden;animation:previewFadeIn .2s ease-out;backdrop-filter:blur(10px)}@keyframes previewFadeIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.hover-preview-image{width:100%;height:140px;overflow:hidden;background:#0000004d;display:flex;align-items:center;justify-content:center}.hover-preview-image img{width:100%;height:100%;object-fit:cover;display:block}.hover-preview-content{padding:12px;color:var(--text, #e6edf3)}.hover-preview-title{margin:0 0 6px;font-size:1rem;font-weight:700;color:var(--text, #e6edf3);line-height:1.3}.hover-preview-description{margin:0 0 6px;font-size:.85rem;color:var(--link, #8ec1ff);font-weight:500;line-height:1.4}.hover-preview-text{margin:6px 0 0;font-size:.8rem;color:var(--muted, #a1a8b3);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hover-preview:not(:has(.hover-preview-image)) .hover-preview-content{padding-top:20px}@media(max-width:768px){.hover-preview{width:240px;max-height:280px}.hover-preview-image{height:120px}}a:hover+.hover-preview,.hover-preview:hover{pointer-events:auto}.footer:where(.astro-sz7xmlte){width:100%;border-top:1px solid rgba(255,255,255,.06);background:#0009;backdrop-filter:blur(10px);padding:48px 24px 24px;margin-top:48px}.footer-content:where(.astro-sz7xmlte){max-width:1200px;margin:0 auto 32px;display:grid;grid-template-columns:repeat(3,1fr);gap:48px}@media(max-width:768px){.footer-content:where(.astro-sz7xmlte){grid-template-columns:1fr;gap:32px}}.footer-column:where(.astro-sz7xmlte) h3:where(.astro-sz7xmlte){margin:0 0 16px;font-size:1rem;font-weight:700;color:var(--text);letter-spacing:.5px}.footer-column:where(.astro-sz7xmlte) ul:where(.astro-sz7xmlte){list-style:none;padding:0;margin:0;display:grid;gap:12px}.footer-column:where(.astro-sz7xmlte) a:where(.astro-sz7xmlte){color:var(--muted);font-size:.9rem;transition:color .15s ease;display:inline-flex;align-items:center;gap:4px}.footer-column:where(.astro-sz7xmlte) a:where(.astro-sz7xmlte):hover{color:var(--link)}.external-icon:where(.astro-sz7xmlte){font-size:.75rem;opacity:.7}.footer-bottom:where(.astro-sz7xmlte){max-width:1200px;margin:0 auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.06);text-align:center;display:flex;flex-direction:column;gap:8px}.footer-bottom:where(.astro-sz7xmlte) p:where(.astro-sz7xmlte){margin:0;color:var(--muted);font-size:.85rem}
