:root{--bg:#070006;--pink-1:#ff69b4;--pink-2:#ff6ad5;--pink-3:#ff69b480;--pink-4:#ab2267;--accent:#ff69b4;--glass:#ffffff0a;--muted:#ffffff8c;--card-bg:linear-gradient(180deg, #ffffff05, #ffffff03);--pill-h:40px;--pill-padding:6px;--pill-gap:10px}html{scroll-behavior:smooth;scrollbar-gutter:stable}html,body{background:var(--bg);color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial}iframe{max-width:100%;height:auto}.scene{justify-content:center;align-items:flex-start;min-height:100vh;padding:56px 20px;display:flex;position:relative;overflow:hidden}canvas#particles{pointer-events:none;z-index:0;width:100vw;height:100vh;display:block;position:fixed;top:0;left:0}.vignette{pointer-events:none;z-index:1;mix-blend-mode:screen;background:radial-gradient(700px 400px at 10% 10%,#ff00780f,#0000 6%),radial-gradient(600px 350px at 90% 90%,#ff5ab40a,#0000 6%);position:fixed;inset:0}.container{z-index:2;grid-template-columns:360px 1fr;align-items:start;gap:28px;width:100%;max-width:1200px;display:grid;position:relative}.sidebar{background:var(--card-bg);-webkit-backdrop-filter:blur(6px)saturate(110%);backdrop-filter:blur(6px)saturate(110%);border:1px solid #ffffff08;border-radius:16px;align-self:start;padding:26px;position:sticky;top:20px;box-shadow:0 10px 30px #0009,inset 0 0 80px #ff329608}.main{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#ffffff04,#ffffff03);border:1px solid #ffffff08;border-radius:16px;min-width:0;padding:32px;box-shadow:0 10px 30px #0009}.logo{letter-spacing:1px;color:var(--pink-2);text-transform:uppercase;background:linear-gradient(90deg,#ff3a950f,#ff1e8c05);border-radius:10px;padding:8px 12px;font-family:"Press Start 2P",monospace;font-size:20px;display:inline-block;box-shadow:0 6px 20px #ff288c0f}.logo .elite{color:#0000;background:linear-gradient(90deg, var(--pink-1), var(--pink-2));-webkit-background-clip:text;background-clip:text}.profile{align-items:center;gap:12px;margin-top:18px;display:flex}.avatar{background:linear-gradient(90deg, var(--pink-1), var(--pink-2));border-radius:18px;flex:0 0 96px;justify-content:center;align-items:center;width:96px;height:96px;display:flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.who{text-align:left}h1{letter-spacing:.6px;background:linear-gradient(90deg, var(--pink-1), #ffd6f2 60%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:20px;line-height:1.05}.sub{color:var(--muted);margin-top:6px;font-size:13px}.badges{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.badge-img{height:22px}.section-title{color:var(--muted);margin:18px 0 10px;font-size:13px;font-weight:600;line-height:1.4;display:block}.section-subtitle{color:#ffffff59;margin-top:2px;font-size:10px;font-weight:400;display:block}.info-table td,.info-table th{vertical-align:top;color:#fff;padding:6px 8px;font-size:13px}.about-card{flex-direction:column;gap:14px;display:flex}.about-header{text-align:center;letter-spacing:.06em;color:var(--muted);font-size:.78em}.about-deco{color:var(--pink-4);opacity:.8}.about-title-text{color:var(--pink-1);margin:0 6px;font-weight:600}.about-name{text-align:center;font-size:1.7em;font-weight:700;line-height:1}.about-name-text{background:linear-gradient(90deg, var(--pink-1), var(--pink-2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.about-name-sep{color:#ffffff40;font-weight:300}.about-tags{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.about-tag{color:var(--pink-1);background:#ff69b41a;border:1px solid #ff69b438;border-radius:20px;padding:5px 13px;font-size:.8em;font-weight:600}.about-list{border-top:1px solid #ff69b41a;flex-direction:column;gap:7px;margin:0;padding:12px 0 0;list-style:none;display:flex}.about-list li{color:#ffffffbf;padding-left:2px;font-size:.88em;line-height:1.5}.skills{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:8px;display:grid}.skill-card{text-align:center;background:#ffffff05;border:1px solid #ffffff08;border-radius:12px;padding:10px}.icons img{height:40px;margin:6px}.links{flex-wrap:wrap;gap:10px;display:flex}.links a{color:var(--pink-1);background:linear-gradient(135deg,#ff69b426,#ffb6c11a);border:1px solid #ff69b44d;border-radius:12px;padding:8px 14px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .2s,background .2s;display:inline-block;box-shadow:0 2px 6px #ff69b426}.links a:hover{background:linear-gradient(135deg,#ff69b440,#ffb6c12e);transform:scale(1.07)rotate(-1deg);box-shadow:0 4px 12px #ff69b44d}.links a.active{color:#fff;background:linear-gradient(135deg,#ff69b44d,#ffb6c133);border-color:#ff69b4a6;box-shadow:0 2px 10px #ff69b44d}.socials-section{justify-content:center;padding:4px 0 12px;display:flex}.socials-main{flex-wrap:wrap;justify-content:center;align-items:center;gap:.4em;display:flex}.socials-card{background:#ff69b414;border:1px solid #ff69b433;border-radius:10px;justify-content:center;align-items:center;width:3.2em;height:3.2em;transition:background .2s ease-in-out,box-shadow .2s ease-in-out,transform .15s ease-in-out;display:flex}.socials-card img{width:1.6em;height:1.6em;transition:filter .2s ease-in-out;display:block}.socials-card:hover{background-color:var(--fill-color);box-shadow:0 4px 20px color-mix(in srgb, var(--fill-color) 35%, transparent);transform:translateY(-2px)}.socials-card:hover img{filter:brightness(0)invert()}.coding-time-banner{text-align:center;background:linear-gradient(135deg,#ff69b41f,#ffb6c10d);border:1px solid #ff69b44d;border-radius:16px;margin-bottom:8px;padding:32px 24px 26px;position:relative;overflow:hidden;box-shadow:0 4px 24px #ff69b41a}.coding-time-banner:before{content:"";pointer-events:none;background:radial-gradient(at 50% -10%,#ff69b42e 0%,#0000 65%);position:absolute;inset:0}.coding-time-icon{color:#ff69b4a6;margin-bottom:6px;font-size:1.6rem}.coding-time-label{text-transform:uppercase;letter-spacing:3px;color:#fff6;margin-bottom:10px;font-size:.72rem;font-weight:600}.coding-time-number{letter-spacing:-.5px;background:linear-gradient(120deg,#ff69b4 0%,#ffb6c1 50%,#ff69b4 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:14px;font-size:clamp(2rem,6vw,3.2rem);font-weight:700;line-height:1.1}.coding-time-source{color:#ff69b480;border:1px solid #ff69b433;border-radius:20px;padding:3px 12px;font-size:.78rem;text-decoration:none;transition:color .2s,border-color .2s;display:inline-block}.coding-time-source:hover{color:#ff69b4e6;border-color:#ff69b480}.pronouns-button{color:var(--pink-2);background:linear-gradient(135deg,#ff69b41a,#ffb6c10f);border:1px solid #ff69b440;border-radius:10px;padding:5px 12px;font-size:12px;font-weight:600;text-decoration:none;transition:background .2s,transform .15s,box-shadow .2s;display:inline-block}.pronouns-button:hover{background:linear-gradient(135deg,#ff69b433,#ffb6c11f);transform:scale(1.05);box-shadow:0 3px 8px #ff69b433}.main h2{background:linear-gradient(90deg, var(--pink-1), var(--pink-2));color:#0000;-webkit-background-clip:text;background-clip:text;margin:24px 0 12px;font-size:20px}.main h2:first-of-type{margin-top:0}.card{background:#ffffff03;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;margin-bottom:14px;padding:14px;display:flex}.card.wakatime img{max-width:100%;height:auto;display:block}.spotify,.lastfm,.wakatime{text-align:center}.repos{flex-wrap:wrap;gap:12px;display:flex}.repo img{border-radius:8px;height:120px}footer{text-align:center;color:#ffffff1f;margin-top:12px;font-size:12px}@keyframes page-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}#page-content.animate-in{animation:.25s both page-fade-in}.pill-list{gap:var(--pill-gap);flex-wrap:wrap;justify-content:center;margin-top:8px;display:flex}.pill{border-radius:999px;align-items:center;transition:transform .15s,box-shadow .15s;display:inline-flex;overflow:hidden;box-shadow:0 6px 20px #00000047}.pill-icon{width:calc(var(--pill-h));height:100%;padding:var(--pill-padding);padding-left:calc(var(--pill-padding) * 1.5);padding-right:calc(var(--pill-padding) * 1.5);box-sizing:border-box;background:var(--pink-3);flex:0 0 var(--pill-h);justify-content:center;align-items:center;display:flex}.pill-icon img,.pill-icon svg{max-width:calc(var(--pill-h) * .5);max-height:calc(var(--pill-h) * .5);object-fit:contain;margin:auto;display:block}.pill-icon svg{fill:#fff;width:auto;height:auto}.pill-icon .emoji{font-size:calc(var(--pill-h) * .5);justify-content:center;align-items:center;width:100%;height:100%;margin:0;line-height:1;display:inline-flex}.pill-text{background:linear-gradient(90deg, var(--pink-1), var(--pink-2));color:#fff;white-space:nowrap;justify-content:center;align-items:center;height:100%;padding:0 14px;font-size:14px;font-weight:600;display:flex;box-shadow:inset 1px 0 #ffffff0d}.pill-text.fav{color:#fdff7d}.pill-text.new{color:#a4ff92}.pill:hover,.pill:focus{outline:none;transform:translateY(-3px);box-shadow:0 10px 30px #0000005c}.username-list{flex-wrap:wrap;gap:8px;display:flex}.username-list span{color:#ff69b4;background:#ff69b426;border:1px solid #ff69b466;border-radius:8px;padding:4px 8px;font-size:.9rem;font-weight:500;transition:background .2s,transform .1s}.username-list span:hover{background:#ff69b44d;transform:scale(1.05)}.project-grid{grid-template-columns:repeat(3,1fr);grid-auto-flow:row;gap:14px;max-width:900px;margin:20px auto;display:grid}.project-card{background:linear-gradient(135deg,#ff69b414,#ffb6c10a);border:1px solid #ff69b440;border-radius:14px;flex-direction:column;justify-content:space-between;padding:12px;transition:transform .15s,box-shadow .2s;display:flex;box-shadow:0 3px 8px #ff69b41a}.project-card:hover{transform:translateY(-2px);box-shadow:0 5px 12px #ff69b433}.project-grid>.project-card:last-child:nth-child(3n+1){grid-column:span 3}.project-grid>.project-card:nth-last-child(2):nth-child(3n+1),.project-grid>.project-card:nth-last-child(2):nth-child(3n+2){grid-column:span 2}@media (width<=1300px){.project-grid{grid-template-columns:repeat(2,1fr)}.project-grid>.project-card:last-child:nth-child(odd){grid-column:span 2}}@media (width<=900px){.project-grid{grid-template-columns:1fr}.project-grid>.project-card:last-child:nth-child(3n+1),.project-grid>.project-card:nth-last-child(2):nth-child(3n+1),.project-grid>.project-card:nth-last-child(2):nth-child(3n+2){grid-column:span 1}}.project-header{margin-bottom:2px}.project-name{color:var(--pink-1)!important;letter-spacing:.5px!important;-webkit-background-clip:none!important;background:0 0!important;margin:0!important;font-size:.9rem!important;font-weight:700!important;line-height:1.2!important}.project-author{color:#ff69b4bf;margin:-2px 0 0;font-size:.75rem;font-style:italic}.project-desc{color:#ffffffd9;flex-grow:1;margin:6px 0 12px;font-size:.85rem;line-height:1.4}.project-footer{flex-direction:column;gap:8px;margin-top:auto;display:flex}.project-divider{background:#ff69b433;width:100%;height:1px;margin:2px 0}.project-languages{flex-wrap:wrap;gap:5px;display:flex}.language-pill{color:var(--pink-1);background-color:#ff69b426;border:1px solid #ff69b44d;border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:600;transition:background .2s,transform .2s}.language-pill:hover{background-color:#ff69b440;transform:scale(1.05)}.wakatime-time{color:var(--pink-2);letter-spacing:.3px;align-self:flex-start;font-size:.75rem;font-weight:600}.project-card.abandoned .wakatime-time{opacity:.45}.project-card.abandoned{color:#fff9;background:linear-gradient(135deg,#ff69b40a,#ffb6c105);border:1px solid #ff69b426;position:relative;overflow:hidden;box-shadow:0 2px 6px #ff69b40f}.project-card.abandoned:after{content:"Abandoned";color:#ff69b4e6;pointer-events:none;text-transform:uppercase;letter-spacing:1px;font-size:1.2rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.project-card.abandoned .project-name{color:#ff69b480!important}.project-card.abandoned .project-author{color:#ff69b466}.project-card.abandoned .project-desc{color:#ffffff80}.project-card.abandoned .project-divider{background:#ff69b41a}.project-card.abandoned .language-pill{color:#ff69b480;background-color:#ff69b414;border:1px solid #ff69b433}.project-card.abandoned .wakatime-badge{filter:hue-rotate(-10deg)saturate(.6)brightness(.9);opacity:.6}.project-card.abandoned:hover{transform:none;box-shadow:0 2px 6px #ff69b40f}@media (width<=520px){.pill-icon{flex:0 0 36px;width:36px;height:36px;font-size:16px}.pill-text{padding:7px 10px;font-size:13px}}@media (width<=980px){.scene{justify-content:center;width:100vw;padding:56px 0}.container{flex-direction:column;max-width:90%;margin:auto 0;padding:10px 0;display:flex}.sidebar{order:1;width:calc(100% - 52px);margin:0;position:static}.main{order:2;width:calc(100% - 52px);margin:0}.card{background:#ffffff05;border:1px solid #ffffff1a;border-radius:12px;flex-flow:column wrap;justify-content:center;gap:12px;padding:16px;display:flex;box-shadow:0 2px 8px #00000026}.pill-list{flex-wrap:wrap;justify-content:center}.pill{white-space:nowrap;flex:0 auto}img,iframe{aspect-ratio:auto;width:auto;max-width:100%;height:auto}.section-title{margin:8px 0;font-size:1.1rem}body{font-size:.95rem;line-height:1.5}}.discord-presence-card{word-break:break-word;background:#ffffff05;border:1px solid #ff69b440;border-radius:16px;flex-direction:column;gap:16px;padding:16px;display:flex}.discord-header{align-items:flex-start;gap:14px;display:flex}.discord-avatar-wrapper{flex:0 0 72px;width:72px;height:72px;position:relative}.discord-avatar{width:100%;height:100%;box-shadow:0 0 0 2px var(--bg);border-radius:50%}.discord-decoration{pointer-events:none;width:calc(100% + 10px);height:calc(100% + 10px);position:absolute;top:-5px;left:-5px;max-width:none!important;max-height:none!important}.discord-status-indicator{border:2px solid var(--bg);box-sizing:border-box;background:#43b581;border-radius:50%;width:18px;height:18px;position:absolute;bottom:0;right:0}.discord-status-indicator.status-idle{background:#faa61a}.discord-status-indicator.status-dnd{background:#f04747}.discord-status-indicator.status-offline{background:#747f8d}.discord-user-info{flex:1;min-width:0}.discord-display-name{color:var(--pink-1);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;margin:0 0 4px;font-size:18px;font-weight:700}.discord-username{color:var(--muted);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;margin:0 0 8px;font-size:14px}.discord-custom-status{color:var(--muted);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;align-items:center;gap:6px;margin-bottom:8px;font-size:14px;display:flex}.discord-custom-status img{vertical-align:middle;flex-shrink:0;width:18px;height:18px}.discord-activities{border-top:1px solid #ff69b426;flex-direction:column;gap:12px;padding-top:12px;display:flex}.discord-activity{gap:12px;display:flex}.discord-activity-images{flex:0 0 80px;width:80px;height:80px;position:relative}.discord-activity-large{object-fit:cover;border:1px solid #ffffff1a;border-radius:10px;width:100%;height:100%}.discord-activity-large-poster{object-fit:contain;aspect-ratio:2/3;width:auto;height:80px;margin-left:15%}.discord-activity-small{object-fit:cover;border:2px solid var(--bg);border-radius:50%;width:32px;height:32px;position:absolute;bottom:-6px;right:-6px}.discord-activity-text{color:#fff;flex:1;min-width:0;font-size:14px;line-height:1.4}.discord-activity-name{color:var(--pink-1);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;margin:0 0 4px;font-weight:600}.discord-activity-detail,.discord-activity-state{color:var(--muted);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;margin:2px 0}.discord-activity-timestamps{color:var(--muted);justify-content:space-between;align-items:center;margin-top:4px;font-size:12px;display:flex}.discord-activity-time-elapsed,.discord-activity-time-total{white-space:nowrap}.discord-activity-progressbar{background:#ffffff1a;border-radius:2px;align-self:center;width:100%;height:4px;margin:0 8px;overflow:hidden}.discord-activity-progress{background:var(--pink-1);height:100%;transition:width .3s}.discord-activity-elapsed{color:var(--muted);margin-top:4px;font-size:12px}.discord-error{color:#f04747;text-align:center;padding:16px;font-size:14px}.discord-loading{color:var(--muted);text-align:center;padding:16px;font-style:italic}
