.vibe-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background-color:var(--bg-color);overflow:hidden;pointer-events:none;contain:strict}.vibe-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.12;animation:move-aura 20s infinite alternate ease-in-out}.blob-1{width:60vw;height:60vw;background:radial-gradient(circle,var(--primary-accent),transparent);top:-10%;left:-10%}.blob-2{width:50vw;height:50vw;background:radial-gradient(circle,var(--secondary-accent),transparent);bottom:-10%;right:-10%;animation-duration:25s;animation-delay:-5s}.blob-3{width:40vw;height:40vw;background:radial-gradient(circle,#60a5fa,transparent);top:40%;left:30%;animation-duration:30s;animation-delay:-10s}@keyframes move-aura{0%{transform:translate(0) scale(1)}33%{transform:translate(5%,10%) scale(1.1)}66%{transform:translate(-5%,5%) scale(.9)}to{transform:translate(0) scale(1)}}.bento-container{width:100%;max-width:1400px;margin:0 auto;padding:80px 20px}.bento-grid>*{border-radius:32px;contain:paint}.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(180px,auto);gap:24px}@media (max-width: 1200px){.bento-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.bento-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.bento-grid{grid-template-columns:1fr}}.project-card{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:32px;min-height:320px;transition:all .4s cubic-bezier(.23,1,.32,1);border-radius:32px}.project-card.span-2{grid-column:span 2;grid-row:span 2}.project-card-hologram{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;background:linear-gradient(135deg,rgba(167,139,250,.05),transparent,rgba(251,146,60,.05));transition:opacity .6s ease}.project-card:hover .project-card-hologram{opacity:1}.project-card-content{position:relative;z-index:10;display:flex;flex-direction:column;height:100%}.project-card-title{font-size:1.5rem;font-weight:600;margin-bottom:12px;color:var(--text-main)}.project-card-description{color:var(--text-dim);font-size:.95rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.project-card-tags{margin-top:auto;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.project-tag{font-family:var(--font-mono);font-size:11px;padding:6px 12px;border-radius:12px;background:rgba(255,255,255,.03);color:var(--text-dim);text-transform:lowercase}.project-card-links{display:flex;gap:20px}.project-card-link{color:var(--text-dim);transition:color .3s ease,transform .3s ease}.project-card-link:hover{color:var(--text-main);transform:translateY(-2px)}.project-card-decoration{position:absolute;top:20px;right:20px;width:40px;height:40px;background:radial-gradient(circle,var(--primary-accent),transparent);opacity:.05;filter:blur(10px)}.kofi-button{position:fixed;bottom:32px;right:32px;z-index:9999;display:flex;align-items:center;gap:12px;padding:14px 24px;background-color:#72a4f2;color:#fff;border-radius:9999px;box-shadow:0 8px 30px #72a4f24d;border:1px solid rgba(255,255,255,.1);transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;text-decoration:none;cursor:pointer}.kofi-button:hover{box-shadow:0 12px 40px #72a4f266}.kofi-button-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top right,rgba(255,255,255,0),rgba(255,255,255,.05),rgba(255,255,255,.1));opacity:0;transition:opacity .3s ease;pointer-events:none}.kofi-button:hover .kofi-button-bg{opacity:1}.kofi-icon{width:24px;height:24px;flex-shrink:0;position:relative;z-index:10}.kofi-text{font-family:var(--font-heading, "Outfit", sans-serif);font-weight:600;font-size:15px;letter-spacing:.025em;position:relative;z-index:10}.kofi-button-shine{position:absolute;top:0;left:-100%;height:100%;width:50%;z-index:5;transform:skew(-12deg);background:linear-gradient(to right,transparent,rgba(255,255,255,.2),transparent);opacity:0;pointer-events:none}.kofi-button:hover .kofi-button-shine{opacity:1;animation:kofi-shine 1.5s infinite}@keyframes kofi-shine{0%{left:-100%}to{left:200%}}@media (max-width: 640px){.kofi-button{bottom:16px;right:16px;gap:8px;padding:10px 16px}.kofi-icon{width:20px;height:20px}.kofi-text{font-size:13px}}.app-wrapper{min-height:100vh;padding-bottom:80px}.main-header{text-align:center;padding:120px 20px 60px}.brand-container{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:16px}.brand-icon{opacity:.8}.brand-name{font-size:4rem;font-weight:800;letter-spacing:-.04em;color:var(--text-main)}.brand-tagline{color:var(--text-dim);font-size:1.1rem;font-weight:400}.bento-hero{padding:48px;display:flex;flex-direction:column;justify-content:center}.bento-hero h2{font-size:2rem;margin-bottom:20px;line-height:1.2;font-weight:600}.bento-hero p{color:var(--text-dim);font-size:1.1rem}.bento-info{padding:40px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.icon-group{display:flex;gap:16px;margin-bottom:24px}.bento-info h3{font-size:1.2rem;margin-bottom:12px}.bento-info p{font-size:.95rem;color:var(--text-dim)}.bento-skills{padding:40px}.bento-skills h3{margin-bottom:32px;font-size:1.2rem}.skill-list{list-style:none;display:flex;flex-direction:column;gap:20px}.skill-list li{display:flex;align-items:center;gap:16px;color:var(--text-dim);font-size:1rem}.bento-contact{padding:40px;display:flex;flex-direction:column;justify-content:center;align-items:center}.bento-contact h3{margin-bottom:12px;font-size:1.2rem}.bento-contact p{font-family:var(--font-mono);color:var(--primary-accent);font-size:1rem}.col-span-2{grid-column:span 2}.row-span-1{grid-row:span 1}.row-span-2{grid-row:span 2}@media (max-width: 900px){.col-span-2{grid-column:span 1}.row-span-2{grid-row:span 1}.brand-name{font-size:3rem}}.main-footer{text-align:center;padding:60px;color:var(--text-dim);font-size:.85rem;font-weight:300}:root{--bg-color: #0f0f15;--card-bg: rgba(255, 255, 255, .03);--card-border: rgba(255, 255, 255, .05);--primary-accent: #c4b5fd;--secondary-accent: #fdba74;--text-main: #f8fafc;--text-dim: #94a3b8;--glass-blur: blur(16px);--font-heading: "Outfit", sans-serif;--font-body: "Outfit", sans-serif;--font-mono: "Space Mono", monospace}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-body);overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAHlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAn0eL2AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAWklEQVQ4y2NjYGBgYmDABmBmZgIxQHIgA8iAUIyMDFwKDAwcbAyMgmCBTAwMTIrMDAw8rAwMPOwMDDzCQAaIAxkQipEBiAMZIGoQimEGMkDUQABXDFMHtRckAABVyxB9m15nLwAAAABJRU5ErkJggg==);background-repeat:repeat;opacity:.04;pointer-events:none;z-index:9999}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.02em}.glass{background:var(--card-bg);border:1px solid var(--card-border);border-radius:32px}.neon-text-cyan{color:var(--primary-accent)}.neon-text-magenta{color:var(--secondary-accent)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:10px}
