@property --accent{syntax: "<color>"; inherits: true; initial-value: #10b981;}@property --accent-soft{syntax: "<color>"; inherits: true; initial-value: rgba(16,185,129,.1);}@property --accent-glow{syntax: "<color>"; inherits: true; initial-value: rgba(16,185,129,.24);}@property --bg{syntax: "<color>"; inherits: true; initial-value: #080809;}@property --bg-elev{syntax: "<color>"; inherits: true; initial-value: #0f0f11;}:root{--accent: #10b981;--accent-soft: rgb(16, 185, 129);--accent-glow: rgba(16, 185, 129, .24);--bg: #080809;--bg-elev: #0f0f11;--surface: rgba(255, 255, 255, .03);--surface-border: rgba(255, 255, 255, .07);--text: #ececee;--text-dim: #92929a;--grain-opacity: .03;--radius: 10px;--radius-sm: 8px;--maxw: 900px;--ease: cubic-bezier(.22, 1, .36, 1);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--gap-lg: 20px;--gap-md: 14px;--gap-sm: 8px;--section-spacing: 46px;--nav-bg: rgba(15, 15, 17, .72);--nav-shadow: 0 10px 30px -10px rgba(0, 0, 0, .5);transition:--accent .5s var(--ease),--accent-soft .5s var(--ease),--accent-glow .5s var(--ease),--bg .5s var(--ease),--bg-elev .5s var(--ease)}body[data-theme=light]{--bg: #f5f5f4;--bg-elev: #ffffff;--surface: rgba(10, 10, 11, .04);--surface-border: rgba(10, 10, 11, .08);--text: #111111;--text-dim: #4b5563;--grain-opacity: .015;--accent: #059669;--accent-soft: rgba(5, 150, 105, .08);--accent-glow: rgba(5, 150, 105, .16);--nav-bg: rgba(245, 245, 244, .72);--nav-shadow: 0 10px 30px -10px rgba(0, 0, 0, .06)}body[data-theme=pure-black]{--bg: #000000;--bg-elev: #050505;--surface: rgba(255, 255, 255, .02);--surface-border: rgba(255, 255, 255, .05);--text: #ffffff;--text-dim: #7f7f85;--grain-opacity: .04;--nav-bg: rgba(5, 5, 5, .72);--nav-shadow: 0 10px 30px -10px rgba(0, 0, 0, .7)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}body{font-family:Inter,sans-serif;background:var(--bg);color:var(--text);line-height:1.52;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:--accent .5s var(--ease),--accent-soft .5s var(--ease),--accent-glow .5s var(--ease)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}h1,h2,h3,h4{font-family:Space Grotesk,sans-serif;font-weight:600;letter-spacing:-.02em;line-height:1.15}.mono{font-family:JetBrains Mono,monospace}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.layout-wrapper{max-width:var(--maxw);margin:0 auto;padding:0 var(--gap-lg);position:relative}section{padding:var(--section-spacing) 0;position:relative}body,.app-header,.logo,.logo span,.header-weather-widget,.nav-dock,.nav-dock a,.profile-card,.profile-avatar,.profile-handle,.weather-control-pill,.btn,.btn-primary,.pill-btn,.tech-strip,.tech-icon-wrapper,.card,.stat .num,.stat .lbl,.learning-tag,.gh-card,.gh-2d-canvas,.project,.tag,.contact-form input,.contact-form textarea,.social-link,.social-link svg,footer,footer .accent{transition:background-color .5s var(--ease),border-color .5s var(--ease),color .5s var(--ease),box-shadow .5s var(--ease),--accent .5s var(--ease),--accent-soft .5s var(--ease),--accent-glow .5s var(--ease)}.eyebrow{font-family:JetBrains Mono,monospace;font-size:.68rem;color:var(--accent);margin-bottom:6px}.section-title{font-size:1.4rem;margin-bottom:4px}.section-sub{color:var(--text-dim);max-width:540px;font-size:.86rem;margin-bottom:14px}.app-header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:12px 0;background:transparent;z-index:1001;transition:border-color .3s,background .3s,padding .3s}.app-header.scrolled{background:color-mix(in srgb,var(--bg) 82%,transparent);border-bottom:1px solid var(--surface-border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:10px 0}.logo{font-family:Space Grotesk;font-weight:700;font-size:1.02rem;letter-spacing:-.03em;color:var(--text)}.logo span{color:var(--accent)}.header-weather-widget{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border-radius:20px;background:var(--surface);border:1px solid var(--surface-border);font-family:JetBrains Mono;font-size:.68rem;color:var(--text);pointer-events:auto}.header-weather-widget .loc{color:var(--text-dim);font-weight:600}.header-weather-widget .weather-pulse{width:6px;height:6px;border-radius:50%;background:var(--accent)}.nav-dock{position:fixed;z-index:1000;display:flex;background:var(--nav-bg);border:1px solid var(--surface-border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:6px;border-radius:30px;box-shadow:var(--nav-shadow)}.nav-indicator{position:absolute;top:0;left:6px;width:36px;height:36px;background:var(--accent);border-radius:50%;border:1.5px solid var(--accent);transition:transform .35s var(--ease-out);pointer-events:none;z-index:0;opacity:0}.nav-indicator.show{opacity:.4}.nav-dock a{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:var(--text-dim);transition:color .25s var(--ease-out),background .25s var(--ease-out),transform .2s var(--ease-out);position:relative}@media(hover:hover){.nav-dock a:hover{color:var(--accent);background:var(--surface);transform:scale(1.1)}}.nav-dock a:active{transform:scale(.95);color:var(--accent)}.nav-dock a.active{color:var(--accent)}.nav-dock a i{font-size:16px}.nav-dock a svg{width:16px;height:16px}.nav-dock a .tooltip{position:absolute;font-family:JetBrains Mono;font-size:.65rem;color:var(--text);background:var(--bg-elev);border:1px solid var(--surface-border);padding:3px 8px;border-radius:4px;opacity:0;pointer-events:none;transition:opacity .2s var(--ease-out),transform .2s var(--ease-out);white-space:nowrap}@media(min-width:992px){.nav-dock{left:calc(45% - 450px);top:50%;transform:translateY(-50%);flex-direction:column;gap:8px}.nav-dock a .tooltip{right:auto;left:48px;top:50%;transform:translateY(-50%) translate(-8px)}@media(hover:hover){.nav-dock a:hover{color:var(--accent);background:var(--surface);transform:scale(1.1)}}.nav-dock a:active{transform:scale(.95);color:var(--accent)}.nav-dock a:hover .tooltip{opacity:1;transform:translateY(-50%) translate(0)}}@media(max-width:991px){.nav-dock{bottom:16px;left:50%;transform:translate(-50%);flex-direction:row;gap:10px;border-radius:24px}.nav-dock a .tooltip{bottom:48px;left:50%;transform:translate(-50%) translateY(8px)}.nav-indicator{position:absolute;top:6px;left:2px;width:36px;height:36px;background:var(--accent);border-radius:50%;border:1.5px solid var(--accent)}@media(hover:hover){.nav-dock a:hover .tooltip{opacity:1;transform:translate(-50%) translateY(0)}}}.weather-canvas-container{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;pointer-events:none;overflow:hidden;mix-blend-mode:screen}body[data-theme=light] .weather-canvas-container{mix-blend-mode:normal}body[data-theme=light] #weather-canvas{opacity:.75}#weather-canvas{width:100%;height:100%;display:block}.hero-wrapper{position:relative}.banner-cover{width:100%;height:200px;border-radius:var(--radius);overflow:hidden;position:relative;background:#050507;transition:background 1.5s var(--ease);z-index:1}body[data-theme=light] .banner-cover{background:#e2e8f0}.banner-cover svg{width:100%;height:100%;object-fit:cover;position:relative;z-index:1}.banner-weather-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:1;transition:opacity .6s var(--ease-out)}.banner-clock{position:absolute;bottom:8px;right:10px;z-index:2;font-family:JetBrains Mono;font-size:1.2rem;color:var(--text);pointer-events:none}@media(min-width:992px){.banner-cover{height:250px}}.banner-space-rect{fill:#07070a;transition:fill 1.5s var(--ease)}body[data-theme=light] .banner-space-rect{fill:#e2e8f0}.banner-stars{fill:#fff;transition:opacity 1.5s var(--ease)}body[data-theme=light] .banner-stars{opacity:0}.banner-mountains-1{fill:#08080a;transition:fill 1.5s var(--ease)}body[data-theme=light] .banner-mountains-1{fill:#cbd5e1}.banner-mountains-2{fill:#0f0f12;transition:fill 1.5s var(--ease)}body[data-theme=light] .banner-mountains-2{fill:#94a3b8}.profile-card{display:flex;align-items:flex-end;justify-content:space-between;margin-top:33px;padding:0 10px;position:relative;z-index:10;gap:12px;flex-wrap:wrap}.profile-avatar{width:90px;height:90px;border-radius:18px;border:3px solid var(--bg);overflow:hidden;background:#222;flex-shrink:0;transition:border-color 1.5s var(--ease)}.profile-avatar img{width:100%;height:100%;object-fit:cover;transition:opacity .25s ease}.profile-avatar.switching img{opacity:0}.profile-details{flex-grow:1;padding-bottom:4px}.profile-name-row{display:flex;align-items:center;gap:4px}.profile-name{font-size:1.35rem;font-weight:700;color:var(--text)}.verified-badge{color:var(--accent);display:inline-flex;align-items:center;vertical-align:middle}.verified-badge i{font-size:16px}.verified-badge svg{width:16px;height:16px}.profile-handle{font-family:JetBrains Mono;font-size:.76rem;color:var(--text-dim);margin-top:2px;transition:color 1.5s var(--ease)}.profile-actions{display:flex;gap:6px;align-items:center;padding-bottom:4px}.action-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--surface-border);background:var(--surface);color:var(--text);display:grid;place-items:center;transition:transform .16s var(--ease-out),background .25s var(--ease-out),border-color .25s var(--ease-out),color .25s var(--ease-out)}.action-btn:active{transform:scale(.95)}@media(hover:hover){.action-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}}.action-btn i{font-size:15px}.action-btn svg{width:15px;height:15px}.hero-tagline{margin-top:16px;padding:0 10px;position:relative;z-index:10}.hero-tagline h2{font-size:1.08rem;font-weight:600;margin-bottom:10px;color:var(--text)}.focus-bullets{list-style:none;display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.focus-bullets li{font-size:.84rem;color:var(--text-dim);display:flex;gap:6px;align-items:flex-start;transition:color 1.5s var(--ease)}.focus-bullets li span{color:var(--accent);flex-shrink:0;font-size:.85rem}.weather-control-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-family:JetBrains Mono;font-size:.66rem;color:var(--text-dim);background:var(--surface);border:1px solid var(--surface-border);margin-bottom:12px;transition:color 1.5s var(--ease),background 1.5s var(--ease),border-color 1.5s var(--ease)}.weather-control-pill .weather-state-dot{width:6px;height:6px;border-radius:50%;background:#ef4444;box-shadow:0 0 6px #ef4444;transition:all 1.5s var(--ease)}.hero-cta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-weight:500;font-size:.8rem;cursor:pointer;border:1px solid var(--surface-border);transition:transform .16s var(--ease-out),box-shadow .3s,background 1.5s var(--ease),color 1.5s var(--ease),border-color 1.5s var(--ease);background:var(--surface);color:var(--text)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#04140d;border-color:var(--accent)}@media(hover:hover){.btn-primary:hover{box-shadow:0 8px 24px -6px var(--accent-glow)}}@media(hover:hover){.btn:hover{border-color:var(--accent)}}.btn i{font-size:14px}.btn svg{width:14px;height:14px}.social-pills{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:16px}.pill-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-family:JetBrains Mono;font-size:.7rem;color:var(--text-dim);background:var(--surface);border:1px solid var(--surface-border);transition:transform .16s var(--ease-out),color .25s var(--ease-out),border-color .25s var(--ease-out),background .25s var(--ease-out)}.pill-btn:active{transform:scale(.97)}@media(hover:hover){.pill-btn:hover{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}}.tech-strip{display:flex;gap:6px;flex-wrap:wrap;padding:10px;background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-sm);transition:background 1.5s var(--ease),border-color 1.5s var(--ease)}.tech-icon-wrapper{width:32px;height:32px;border-radius:6px;background:var(--bg);border:1px solid var(--surface-border);display:grid;place-items:center;transition:transform .2s var(--ease-out),background 1.5s var(--ease),border-color 1.5s var(--ease)}.tech-icon-wrapper:active{transform:scale(.95)}@media(hover:hover){.tech-icon-wrapper:hover{transform:translateY(-2px);border-color:var(--accent);background:var(--accent-soft)}}.tech-icon-wrapper img{width:18px;height:18px}.about-wrap{display:flex;flex-direction:column;gap:10px;margin-top:12px}.about-card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius);padding:14px;transition:transform .25s var(--ease-out),border-color 1.5s var(--ease),box-shadow .25s var(--ease-out),background 1.5s var(--ease)}@media(hover:hover){.about-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 50%,transparent);box-shadow:0 10px 30px -20px var(--accent-glow)}}.about-card h3{font-size:.98rem;margin-bottom:4px}.about-card p{color:var(--text-dim);margin-bottom:4px;font-size:.82rem;transition:color 1.5s var(--ease)}.about-stats{display:flex;gap:10px;flex-wrap:wrap}.about-stat{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius);padding:14px;flex:1;min-width:100px;transition:transform .25s var(--ease-out),border-color 1.5s var(--ease),background 1.5s var(--ease)}@media(hover:hover){.about-stat:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 50%,transparent)}}.about-stat .num{font-family:Space Grotesk;font-size:1.5rem;font-weight:700;color:var(--accent);line-height:1;transition:color 1.5s var(--ease);display:block}.about-stat .lbl{color:var(--text-dim);font-size:.74rem;margin-top:2px;transition:color 1.5s var(--ease);display:block}.learning-tag{display:inline;font-family:JetBrains Mono;font-size:.68rem;color:var(--text-dim);margin-top:3px;transition:color 1.5s var(--ease)}@media(max-width:520px){.about-stats{flex-direction:column}}.gh-wrap{display:flex;flex-direction:column;gap:12px;margin-top:12px}.gh-card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius);padding:14px;overflow:hidden;transition:background 1.5s var(--ease),border-color 1.5s var(--ease);color:var(--text)}.gh-card h3{font-size:.9rem;margin-bottom:10px;display:flex;align-items:center;gap:6px;color:var(--text)}.gh-2d-canvas{width:100%;background:var(--bg-elev);border:1px solid var(--surface-border);padding:6px;border-radius:var(--radius-sm);position:relative;overflow:hidden;transition:background 1.5s var(--ease),border-color 1.5s var(--ease)}.gh-2d-canvas svg{width:100%;height:auto;display:block;overflow:visible}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px}.project{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius);padding:12px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:transform .25s var(--ease-out),border-color 1.5s var(--ease),box-shadow .25s var(--ease-out),background 1.5s var(--ease)}@media(hover:hover){.project:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 10px 30px -20px var(--accent-glow)}}.project-banner{height:150px;width:100%;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:10px;position:relative;background:#151518}.project-banner img,.project-banner svg{width:100%;height:100%;object-fit:cover;opacity:.8;transition:transform .35s var(--ease-out)}@media(hover:hover){.project:hover .project-banner img,.project:hover .project-banner svg{transform:scale(1.04)}}.project-meta-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.project-status{display:inline-flex;align-items:center;gap:4px;font-family:JetBrains Mono;font-size:.64rem}.project-status.live{color:#10b981}.project-status.building{color:#ef4444}.project-status .status-dot{width:5px;height:5px;border-radius:50%;background:currentColor}.project h3{font-size:.98rem;margin-bottom:2px}.project p{color:var(--text-dim);font-size:.8rem;margin-bottom:8px;flex-grow:1}.tags{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:8px}.tag{font-family:JetBrains Mono;font-size:.6rem;color:var(--accent);background:var(--accent-soft);padding:1px 5px;border-radius:6px;transition:color 1.5s var(--ease),background 1.5s var(--ease)}.project-link{font-size:.74rem;color:var(--text);display:inline-flex;align-items:center;gap:3px;transition:color .2s var(--ease-out);font-weight:500}@media(hover:hover){.project-link:hover{color:var(--accent)}}.project-link i{font-size:10px}.project-link svg{width:10px;height:10px}@media(max-width:760px){.projects-grid{grid-template-columns:1fr}}.exp-wrap{display:flex;flex-direction:column;gap:10px;margin-top:12px}.exp-card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius);padding:14px;display:flex;gap:12px;transition:transform .25s var(--ease-out),border-color 1.5s var(--ease),box-shadow .25s var(--ease-out),background 1.5s var(--ease)}@media(hover:hover){.exp-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 50%,transparent);box-shadow:0 10px 30px -20px var(--accent-glow)}}.exp-icon{width:36px;height:36px;border-radius:50%;background:var(--accent-soft);display:grid;place-items:center;flex-shrink:0;color:var(--accent);font-size:16px}.exp-body{flex:1;min-width:0}.exp-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:2px}.exp-head .yr{font-family:JetBrains Mono;font-size:.68rem;color:var(--accent);white-space:nowrap}.exp-head h4{font-size:.9rem;margin:0}.exp-tag{font-family:JetBrains Mono;font-size:.62rem;color:var(--accent);background:var(--accent-soft);padding:1px 7px;border-radius:8px;white-space:nowrap}.exp-card .org{color:var(--text-dim);font-size:.78rem;margin-bottom:3px}.exp-card p{color:var(--text-dim);font-size:.8rem}.contact-wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;margin-top:12px;align-items:start}.contact-form{display:flex;flex-direction:column;gap:6px}.contact-form input,.contact-form textarea{width:100%;padding:8px 10px;background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-sm);color:var(--text);font-family:Inter;font-size:.8rem;transition:border-color 1.5s var(--ease),background 1.5s var(--ease),color 1.5s var(--ease)}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);background:var(--accent-soft)}.contact-form textarea{resize:vertical;min-height:80px}.social-link{margin-top:5px;display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-sm);transition:transform .2s var(--ease-out),border-color 1.5s var(--ease),background 1.5s var(--ease)}.social-link:active{transform:scale(.98)}@media(hover:hover){.social-link:hover{transform:translate(4px);border-color:var(--accent);background:var(--accent-soft)}}.social-link i{font-size:16px}.social-link svg{width:16px;height:16px;color:var(--accent);flex-shrink:0}.social-link .meta small{color:var(--text-dim);display:block;font-size:.66rem}.social-link .meta strong{font-weight:500;font-size:.78rem}@media(max-width:760px){.contact-wrap{grid-template-columns:1fr}}footer{border-top:1px solid var(--surface-border);padding:16px 0;margin-top:16px}footer .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}footer p{color:var(--text-dim);font-size:.76rem}footer .accent{color:var(--accent)}.gsap-fade{opacity:0;transform:translateY(12px)}@media(prefers-reduced-motion:reduce){.gsap-fade{opacity:1!important;transform:none!important}}#resumeModal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2005;background-color:#000000d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;pointer-events:none;transition:opacity .25s var(--ease-out)}#resumeModal.open{opacity:1;pointer-events:auto}#resumeModal.open .modal-content-wrapper{transform:translateY(0) scale(1);opacity:1}.modal-content-wrapper{position:relative;width:100%;max-width:900px;height:85vh;background-color:var(--bg-elev);border:1px solid var(--surface-border);border-radius:var(--radius);box-shadow:0 25px 50px -12px #00000080;display:flex;flex-direction:column;overflow:hidden;transform:translateY(20px) scale(.98);opacity:0;transition:transform .35s var(--ease-out),opacity .25s var(--ease-out)}.modal-body{flex-grow:1;width:100%;height:100%;background-color:#525659}.modal-iframe{width:100%;height:100%;border:none;display:block}.dev-trigger{font-family:JetBrains Mono;font-size:.65rem;color:var(--text-dim);cursor:pointer;opacity:.35;transition:opacity .2s var(--ease-out);margin-left:6px}.dev-trigger:hover{opacity:1;color:var(--accent)}@media(max-width:991px){.dev-trigger{position:fixed;bottom:16px;right:16px;z-index:3002;background:var(--accent);color:#04140d;padding:8px 12px;border-radius:var(--radius-sm);box-shadow:0 8px 24px -6px var(--accent-glow)}}.dev-auth-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .2s var(--ease-out)}.dev-auth-overlay.open{opacity:1;pointer-events:auto}.dev-auth-box{background:var(--bg-elev);border:1px solid var(--surface-border);border-radius:var(--radius);padding:20px;max-width:300px;width:100%;text-align:center}.dev-auth-box p{font-size:.8rem;color:var(--text-dim);margin-bottom:10px}.dev-auth-box input{width:100%;padding:8px 10px;background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-sm);color:var(--text);font-family:JetBrains Mono;font-size:1rem;text-align:center;outline:none;transition:border-color .2s var(--ease-out)}.dev-auth-box input:focus{border-color:var(--accent)}.dev-auth-box .hint{font-size:.65rem;color:var(--text-dim);margin-top:6px;font-family:JetBrains Mono}.dev-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3001;display:flex;align-items:center;justify-content:center;background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .25s var(--ease-out)}.dev-overlay.open{opacity:1;pointer-events:auto}.dev-panel{background:var(--bg-elev);border:1px solid var(--surface-border);border-radius:var(--radius);padding:20px;max-width:340px;width:100%;transform:translateY(12px) scale(.98);opacity:0;transition:transform .3s var(--ease-out),opacity .25s var(--ease-out)}.dev-overlay.open .dev-panel{transform:translateY(0) scale(1);opacity:1}.dev-panel h3{font-size:.9rem;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.dev-panel h3 small{font-size:.65rem;font-weight:400;color:var(--text-dim);font-family:JetBrains Mono;cursor:pointer}.dev-panel h3 small:hover{color:var(--accent)}.dev-group{margin-bottom:12px}.dev-group:last-child{margin-bottom:0}.dev-group label{display:block;font-size:.7rem;font-family:JetBrains Mono;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}.dev-options{display:flex;gap:4px;flex-wrap:wrap}.dev-btn{padding:4px 10px;border-radius:var(--radius-sm);font-size:.72rem;font-family:JetBrains Mono;background:var(--surface);color:var(--text-dim);border:1px solid var(--surface-border);cursor:pointer;transition:all .15s var(--ease-out)}.dev-btn:hover{border-color:var(--accent);color:var(--text)}.dev-btn.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
