:root{--bg-color:#030712;--glass-bg:#11182766;--glass-border:#ffffff14;--accent:#8b5cf6;--accent-glow:#8b5cf64d;--text-primary:#f8fafc;--text-secondary:#94a3b8;--card-hover:#1e293b99}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);background-image:radial-gradient(circle at 15%,#8b5cf626,#0000 35%),radial-gradient(circle at 85% 30%,#38bdf81a,#0000 35%);background-attachment:fixed;flex-direction:column;min-height:100dvh;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;overflow-x:hidden}.app-container{z-index:10;flex-direction:column;width:100%;max-width:1200px;min-height:100dvh;margin:0 auto;padding:3rem 2rem 5rem;display:flex;position:relative}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;box-shadow:0 8px 32px #0006}.hero-header{text-align:center;margin-bottom:4rem;padding:3rem 1.5rem;position:relative;overflow:hidden}.hero-header:before{content:"";pointer-events:none;z-index:-1;background:conic-gradient(#0000 0%,#8b5cf61a 25%,#0000 50%);width:200%;height:200%;animation:20s linear infinite spin;position:absolute;top:-50%;left:-50%}@keyframes spin{to{transform:rotate(360deg)}}.title{background:linear-gradient(135deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;letter-spacing:-1px;-webkit-background-clip:text;margin-bottom:1rem;font-size:3.5rem;font-weight:900}.subtitle{color:var(--text-secondary);max-width:600px;margin:0 auto;font-size:1.125rem;font-weight:500;line-height:1.6}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-bottom:4rem;display:grid}.project-card{cursor:pointer;flex-direction:column;height:100%;padding:2rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden}.project-card:hover{background:var(--card-hover);border-color:#8b5cf64d;transform:translateY(-8px)scale(1.02);box-shadow:0 20px 40px #00000080,0 0 20px #8b5cf633}.card-bg-glow{background:radial-gradient(circle at center, var(--glow-color,#8b5cf626), transparent 70%);opacity:0;z-index:-1;transition:opacity .4s;position:absolute;inset:0}.project-card:hover .card-bg-glow{opacity:1}.project-icon{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:1.5rem;transition:transform .4s;display:flex;box-shadow:0 4px 15px #0003}.project-card:hover .project-icon{transform:scale(1.1)rotate(5deg)}.project-title{color:var(--text-primary);margin-bottom:.75rem;font-size:1.5rem;font-weight:700}.project-desc{color:var(--text-secondary);flex-grow:1;margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.project-meta{color:var(--text-secondary);border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1.5rem;font-size:.85rem;display:flex}.status-badge{color:#10b981;letter-spacing:.5px;background:#10b9811a;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;display:flex}.status-dot{background:#10b981;border-radius:50%;width:6px;height:6px;animation:2s infinite pulse-dot;box-shadow:0 0 8px #10b981}@keyframes pulse-dot{0%{opacity:.5;transform:scale(.95)}50%{opacity:1;transform:scale(1.2)}to{opacity:.5;transform:scale(.95)}}.footer-watermark{text-align:center;color:#64748b;letter-spacing:.15em;opacity:.6;margin-top:auto;padding:2rem;font-size:.85rem;font-weight:500}.ambient-light{pointer-events:none;z-index:1;background:radial-gradient(circle,#8b5cf60d,#0000 70%);width:100vw;height:100vh;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.stat-box{flex-direction:column;align-items:center;padding:1rem;display:flex}.stat-val{color:var(--accent);margin-bottom:.25rem;font-family:monospace;font-size:1.5rem;font-weight:800}.stat-label{text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);font-size:.75rem}.hero-stats{border-top:1px solid #ffffff0d;justify-content:center;gap:3rem;margin-top:2rem;padding-top:2rem;display:flex}
