:root{--bg: #ffffff;--bg-soft: #f4f6fa;--card: #ffffff;--border: #e4e8f0;--text: #1a1f2b;--text-soft: #3f4756;--muted: #6b7480;--accent: #2f5fd0;--accent2: #6d4ee0;--green: #1f9d63;--amber: #c77a16;--nav-bg: rgba(255, 255, 255, .85);--shadow: 0 1px 3px rgba(16, 24, 40, .06), 0 1px 2px rgba(16, 24, 40, .04)}[data-theme=dark]{--bg: #0b0e14;--bg-soft: #131823;--card: #161c28;--border: #232b3a;--text: #e6eaf2;--text-soft: #c2cad8;--muted: #8a94a7;--accent: #5b8cff;--accent2: #7c5cff;--green: #3ecf8e;--amber: #ffb454;--nav-bg: rgba(11, 14, 20, .85);--shadow: none}body{transition:background .2s ease,color .2s ease}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}.page{max-width:1120px;margin:0 auto;padding:0 24px}h2{font-size:32px;margin:0 0 8px;letter-spacing:-.5px}.section-sub{color:var(--muted);margin:0 0 28px;max-width:640px}section{padding:72px 0;border-top:1px solid var(--border)}.nav{display:flex;align-items:center;justify-content:space-between;padding:20px 0;position:sticky;top:0;background:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;border-bottom:1px solid var(--border)}.nav-logo{font-weight:800;font-size:18px;text-decoration:none;background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.nav-links{display:flex;gap:24px;align-items:center}.nav-links a{text-decoration:none;color:var(--muted);font-size:15px;transition:color .15s}.nav-links a:hover{color:var(--text)}.nav-gh{padding:7px 14px;border:1px solid var(--border);border-radius:8px}.theme-toggle{width:36px;height:32px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text);cursor:pointer;font-size:15px;line-height:1;display:grid;place-items:center;transition:border-color .15s,transform .12s}.theme-toggle:hover{border-color:var(--accent);transform:translateY(-1px)}.hero{padding:40px 0 32px;text-align:center;border:none}.badge{display:inline-block;padding:5px 13px;border:1px solid var(--border);border-radius:999px;font-size:12.5px;color:var(--accent);background:#5b8cff14;margin-bottom:16px}.hero h1{font-size:40px;line-height:1.1;letter-spacing:-1.2px;max-width:740px;margin:0 auto 14px}.grad{background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.lead{max-width:580px;margin:0 auto 22px;font-size:16.5px;color:var(--text-soft)}.hero-cta{display:flex;gap:12px;justify-content:center;margin-bottom:28px;flex-wrap:wrap}.btn{padding:13px 24px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;transition:transform .12s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:linear-gradient(90deg,var(--accent),var(--accent2));border:none;color:#fff;box-shadow:0 6px 24px #5b8cff4d}.btn.ghost{background:transparent}.hero-stats{display:flex;gap:40px;justify-content:center;flex-wrap:wrap}.hero-stats div{display:flex;flex-direction:column}.hero-stats b{font-size:25px;background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-1px}.hero-stats span{font-size:14px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.filter{padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:14px;cursor:pointer;transition:all .15s}.filter:hover{color:var(--text)}.filter.on{background:var(--accent);border-color:var(--accent);color:#fff}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ccard{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:22px;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.ccard:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 8px 24px #1018281a}.ccard.flag{border-color:#7c5cff66;background:linear-gradient(180deg,rgba(124,92,255,.06),var(--card))}.ccard-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cat{font-size:12px;color:var(--accent);font-weight:600}.stat{font-size:11px;padding:3px 9px;border-radius:999px;font-weight:600}.st-ok{background:#3ecf8e26;color:var(--green)}.st-mvp{background:#5b8cff26;color:var(--accent)}.st-wip{background:#ffb45426;color:var(--amber)}.ccard h3{margin:0 0 10px;font-size:19px;letter-spacing:-.3px}.outcome{margin:0 0 16px;color:var(--text-soft);font-size:14.5px;flex:1}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}.tag{font-size:11.5px;padding:3px 9px;background:var(--bg-soft);border:1px solid var(--border);border-radius:6px;color:var(--muted)}.ccard-links{display:flex;gap:10px;align-items:center}.lnk{text-decoration:none;font-size:14px;font-weight:600}.lnk.demo{color:var(--accent)}.lnk.code{color:var(--muted)}.lnk.code:hover{color:var(--text)}.lnk.muted{color:var(--muted);font-weight:400;font-style:italic}.about-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:32px}.about-text p{color:var(--text-soft);font-size:16px;margin:0 0 16px}.about-edge{color:var(--text)!important;font-weight:600;border-left:3px solid var(--accent);padding-left:16px}.about-skills h4{margin:0 0 14px;font-size:14px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:9px}.chip{padding:8px 14px;background:var(--card);border:1px solid var(--border);border-radius:999px;font-size:13.5px}.resume-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:28px 30px;display:flex;flex-direction:column;gap:22px;box-shadow:var(--shadow)}.resume-hl{margin:0;padding-left:22px;display:grid;gap:10px}.resume-hl li{color:var(--text-soft);font-size:15.5px}.resume-actions,.contact-links{display:flex;gap:12px;flex-wrap:wrap}.footer{padding:40px 0 60px;border-top:1px solid var(--border);text-align:center;color:var(--muted);font-size:14px}@media (max-width: 900px){.grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 720px){.hero h1{font-size:38px}.grid,.about-grid{grid-template-columns:1fr}.nav-links{gap:14px}.nav-links a:not(.nav-gh){display:none}.hero-stats{gap:28px}section{padding:52px 0}}
