@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";.site-header[data-astro-cid-nen7h5rs]{z-index:100;border-radius:var(--radius-full);max-width:1200px;margin:16px auto;padding:12px 24px;position:sticky;top:16px}.header-container[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;display:flex}.brand[data-astro-cid-nen7h5rs]{align-items:center;gap:12px;text-decoration:none;display:flex}.brand-icon[data-astro-cid-nen7h5rs]{border-radius:var(--radius-full);background:var(--gradient-primary);width:42px;height:42px;box-shadow:var(--shadow-glow);justify-content:center;align-items:center;font-size:1.4rem;display:flex}.brand-text[data-astro-cid-nen7h5rs]{flex-direction:column;display:flex}.brand-name[data-astro-cid-nen7h5rs]{font-family:var(--font-heading);color:var(--text-bright);font-size:1.25rem;font-weight:800;line-height:1.2}.brand-subtitle[data-astro-cid-nen7h5rs]{color:var(--text-muted);font-size:.75rem}.nav-links[data-astro-cid-nen7h5rs]{align-items:center;gap:20px;display:flex}.nav-item[data-astro-cid-nen7h5rs]{color:var(--text-muted);font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s}.nav-item[data-astro-cid-nen7h5rs]:hover{color:var(--accent-pink)}.badge[data-astro-cid-nen7h5rs]{border:1px solid var(--accent-purple);color:var(--accent-purple);border-radius:var(--radius-full);background:#8b5cf633;padding:4px 12px;font-size:.8rem;font-weight:700}.passcode-overlay{-webkit-backdrop-filter:blur(24px);z-index:999999;background:#0a0e1aeb;justify-content:center;align-items:center;width:100vw;height:100vh;padding:24px;display:flex;position:fixed;top:0;left:0}html.passcode-unlocked .passcode-overlay{display:none!important}.passcode-card{border-radius:var(--radius-lg);border:1px solid var(--border-glow);text-align:center;background:linear-gradient(135deg,#1e293bd9 0%,#0f172af2 100%);flex-direction:column;align-items:center;gap:24px;width:100%;max-width:440px;padding:40px 32px;animation:.4s ease-out fadeIn;display:flex;box-shadow:0 20px 50px #0009,0 0 40px #6366f133}.lock-icon-container{justify-content:center;align-items:center;display:flex}.lock-icon-bg{border:1px solid var(--accent-purple);width:64px;height:64px;color:var(--accent-purple);background:#8b5cf626;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 0 20px #8b5cf64d}.passcode-header{flex-direction:column;align-items:center;gap:10px;display:flex}.passcode-badge{border:1px solid var(--accent-pink);color:var(--accent-pink);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.08em;background:#ec489926;padding:4px 14px;font-size:.75rem;font-weight:700}.passcode-title{color:var(--text-bright);font-size:2rem}.passcode-subtitle{color:var(--text-muted);font-size:.95rem;line-height:1.5}.passcode-form{flex-direction:column;gap:16px;width:100%;display:flex}.input-group{width:100%;position:relative}.passcode-input{border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-bright);font-size:1rem;font-family:var(--font-body);background:#0f172acc;outline:none;padding:14px 44px 14px 18px;transition:all .2s}.passcode-input:focus{border-color:var(--accent-purple);box-shadow:0 0 15px #8b5cf64d}.toggle-password-btn{cursor:pointer;opacity:.7;background:0 0;border:none;padding:4px;font-size:1.1rem;transition:opacity .2s;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.toggle-password-btn:hover{opacity:1}.passcode-error{border:1px solid var(--accent-red);color:#fca5a5;border-radius:var(--radius-sm);text-align:center;background:#ef444426;padding:10px 14px;font-size:.85rem}.unlock-btn{justify-content:center;width:100%;padding:14px 20px}.passcode-footer{color:var(--text-muted);border-top:1px solid var(--border-color);width:100%;padding-top:16px;font-size:.8rem}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.shake-animation{animation:.4s ease-in-out shake}.unlock-success{border-color:var(--accent-green);transition:all .3s;transform:scale(1.03);box-shadow:0 0 50px #10b98166}:root{--bg-dark:#0a0e1a;--bg-card:#161c2db3;--bg-card-hover:#202a44d9;--border-color:#ffffff1a;--border-glow:#6366f14d;--accent-purple:#8b5cf6;--accent-pink:#ec4899;--accent-cyan:#06b6d4;--accent-green:#10b981;--accent-red:#ef4444;--accent-amber:#f59e0b;--text-main:#f8fafc;--text-muted:#94a3b8;--text-bright:#fff;--gradient-primary:linear-gradient(135deg, #6366f1 0%, #a855f7 50%, #ec4899 100%);--gradient-card:linear-gradient(180deg, #1e293bcc 0%, #0f172ae6 100%);--gradient-correct:linear-gradient(135deg, #059669 0%, #10b981 100%);--gradient-wrong:linear-gradient(135deg, #dc2626 0%, #ef4444 100%);--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--shadow-glow:0 0 25px #6366f140;--font-heading:"Outfit", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);font-family:var(--font-body);background-image:radial-gradient(circle at 15% 15%,#6366f126 0%,#0000 40%),radial-gradient(circle at 85% 85%,#ec489926 0%,#0000 40%),radial-gradient(circle,#06b6d414 0%,#0000 60%);background-attachment:fixed;min-height:100vh;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-bright);letter-spacing:-.02em;font-weight:700}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 8px 32px #0000005e}.gradient-text{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;display:inline-block}.btn-primary{background:var(--gradient-primary);color:#fff;border-radius:var(--radius-full);font-family:var(--font-heading);cursor:pointer;box-shadow:var(--shadow-glow);border:none;align-items:center;gap:8px;padding:14px 28px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 0 35px #a855f766}.btn-primary:active{transform:translateY(0)scale(.98)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{opacity:.6}50%{opacity:1}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}
