:root{--bg:#1a1a1a;--panel:#1e293b4d;--card:#1e293b4d;--text:#e9edf7;--muted:#94a3b8;--line:#94a3b826;--chip:#22d3ee1a;--chip-text:#67e8f9}*{box-sizing:border-box}html,body,#root{min-height:100%;color:var(--text);background:var(--bg);margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{scrollbar-width:thin;scrollbar-color:#334155 #1a1a1a;position:relative;overflow-x:hidden}body::-webkit-scrollbar{width:8px}body::-webkit-scrollbar-track{background:#1a1a1a}body::-webkit-scrollbar-thumb{background:#334155;border:2px solid #1a1a1a;border-radius:999px}body::-webkit-scrollbar-thumb:hover{background:#475569}#stars{z-index:0;pointer-events:none;opacity:.58;position:fixed;inset:0}.layout{z-index:1;grid-template-columns:minmax(280px,.9fr) minmax(400px,1.2fr);gap:48px;width:min(1140px,92vw);margin:0 auto;padding:56px 0 36px;display:grid;position:relative}.content{gap:26px;display:grid}.sidebar{flex-direction:column;justify-content:space-between;align-self:start;min-height:calc(100vh - 112px);display:flex;position:sticky;top:56px}h1{margin:0 0 10px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.05}h2{color:#d4def2;margin:0 0 20px;font-size:1.55rem}.intro{max-width:36ch;color:var(--muted);margin:0 0 32px;line-height:1.7}.section-nav{gap:10px;display:grid}.nav-link{text-transform:uppercase;letter-spacing:.13em;color:#b4bfd5;transform-origin:0;border-radius:8px;align-items:center;width:fit-content;padding:7px 10px 7px 58px;font-size:.82rem;text-decoration:none;transition:color .22s,transform .22s,background .22s;display:inline-flex;position:relative}.nav-link:before{content:"";background:#4b5468;border-radius:999px;width:16px;height:2px;transition:all .2s;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.nav-link:hover:before,.nav-link.active:before{background:#c8d7f6;width:40px}.nav-link:hover{color:#f1f6ff;background:#1e293b3f;transform:translate(2px)scale(1.02)}.nav-link.active{color:#ebf2ff;background:#1e293b59;transform:translate(3px)scale(1.05)}.socials{align-items:center;gap:14px;display:flex}.social-icon-link{color:#94a3b8;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;text-decoration:none;transition:color .2s,transform .2s;display:inline-flex}.social-icon-link svg,.social-icon-link img{width:18px;height:18px;display:block}.social-icon-link svg{fill:currentColor}.social-icon-link img{filter:grayscale(10%);opacity:.9}.social-icon-link:hover{color:#f8fafc;transform:translateY(-1px)scale(1.04)}.social-icon-link:hover img{opacity:1}.panel{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;padding:22px}.panel h3{letter-spacing:.08em;text-transform:uppercase;color:#d2ddf7;margin:0 0 16px;font-size:.84rem}.panel p{color:var(--muted);margin:0 0 14px;line-height:1.75}.project-card{border:1px solid var(--line);background:var(--card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;margin-top:12px;padding:16px;transition:transform .22s,border-color .22s;display:block}.project-card:hover{border-color:#22d3ee66;transform:translateY(-2px)}.project-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.project-title-link{align-items:center;gap:6px;text-decoration:none;display:inline-flex}.project-header h4{color:#eaf0ff;margin:0;font-size:1.02rem;line-height:1.4}.project-header .arrow{color:#dbeafe;flex-shrink:0;transform:translateY(1px)}.project-title-link:hover h4{color:#fff}.github-link{color:#94a3b8;flex-shrink:0;text-decoration:none;transition:color .2s,transform .2s}.github-link svg{fill:currentColor;width:19px;height:19px;display:block}.github-link:hover{color:#fff;transform:scale(1.08)}.project-card p{margin:10px 0 12px}.tags{flex-wrap:wrap;gap:8px;display:flex}.tags span{background:var(--chip);color:var(--chip-text);letter-spacing:.01em;border:1px solid #22d3ee33;border-radius:999px;padding:4px 10px;font-size:.74rem}.skill-group+.skill-group{margin-top:14px}.skill-group h4{color:#dfe8fc;margin:0 0 10px;font-size:.95rem}.skill-tags{flex-wrap:wrap;gap:8px;display:flex}.skill-pill{color:#cbd5e1;border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1e293b66;border-radius:10px;align-items:center;gap:8px;padding:6px 11px;font-size:.82rem;transition:transform .22s,border-color .22s;display:inline-flex}.skill-pill:hover{border-color:#22d3ee66;transform:translateY(-1px)}.skill-pill img{border-radius:3px;width:16px;height:16px}.resume-link{color:#d3e8ff;border-bottom:1px dashed #7392bf;margin-top:6px;text-decoration:none;display:inline-block}.resume-link:hover{color:#fff}@media (width<=980px){.layout{grid-template-columns:1fr;gap:24px;width:min(100%,720px);padding:24px 16px 30px}.sidebar{gap:20px;min-height:auto;position:static}.section-nav{grid-template-columns:repeat(2,minmax(120px,1fr));gap:10px}.panel{padding:18px}.project-header h4{font-size:.96rem}.socials{flex-wrap:wrap;gap:12px}.skill-pill{padding:5px 9px;font-size:.78rem}body{scrollbar-width:none}body::-webkit-scrollbar{width:0;height:0}}@media (width<=640px){h1{font-size:2rem}h2{margin-bottom:14px;font-size:1.15rem}.intro{margin-bottom:20px;line-height:1.6}.section-nav{grid-template-columns:1fr 1fr}.nav-link{letter-spacing:.11em;padding:7px 8px 7px 44px;font-size:.72rem}.nav-link:before{width:12px;left:8px}.nav-link:hover:before,.nav-link.active:before{width:28px}.content{gap:16px}.panel{border-radius:12px;padding:16px 14px}.panel p{font-size:.93rem;line-height:1.65}.tags span{padding:3px 8px;font-size:.7rem}.skill-tags{gap:6px}.skill-pill{gap:6px;font-size:.74rem}.skill-pill img{width:14px;height:14px}}
