:root{color-scheme:dark;--bg:#07111f;--panel:#12233a;--text:#f5f8fc;--muted:#9fb0c4;--line:rgba(255,255,255,.11);--accent:#66d9ef;--success:#7ee787;--warning:#f4c95d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,rgba(52,184,207,.18),transparent 35rem),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1.25rem,4vw,5rem);border-bottom:1px solid var(--line);background:rgba(7,17,31,.88);backdrop-filter:blur(18px)}.brand{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid var(--accent);border-radius:.8rem;color:var(--accent);font-weight:800}nav{display:flex;gap:clamp(.8rem,3vw,2rem);color:var(--muted)}main{width:min(1180px,calc(100% - 2rem));margin:auto}.hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(18rem,.75fr);gap:2rem;padding:clamp(5rem,10vw,9rem) 0 5rem}.hero-copy,.status-panel,.project-card,.skill,.timeline-content{border:1px solid var(--line);background:linear-gradient(145deg,rgba(18,35,58,.9),rgba(10,24,42,.82))}.hero-copy{padding:clamp(2rem,5vw,4rem);border-radius:2rem}.eyebrow,.section-heading span,.period{color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}h1{margin:1rem 0 .2rem;font-size:clamp(3rem,9vw,6.5rem);line-height:.94}.hero h2{margin:1rem 0;color:var(--accent);font-size:clamp(1.25rem,3vw,2rem)}.location,.summary,.status-panel p,.project-card p,.timeline-content p{color:var(--muted);line-height:1.75}.summary{font-size:1.08rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.primary-button,.secondary-button{padding:.9rem 1.2rem;border-radius:.8rem;font-weight:750}.primary-button{background:var(--accent);color:#051019}.secondary-button{border:1px solid var(--line)}.status-panel{display:flex;flex-direction:column;gap:1.4rem;justify-content:center;padding:2rem;border-radius:2rem}.status-dot{width:.8rem;height:.8rem;border-radius:999px;background:var(--success);box-shadow:0 0 1rem var(--success)}.vault-status{display:flex;justify-content:space-between;padding-top:1.2rem;border-top:1px solid var(--line)}.vault-status.ready strong{color:var(--success)}.vault-status.warning strong{color:var(--warning)}.section{padding:5rem 0}.section-heading{max-width:46rem;margin-bottom:2rem}.section-heading h2{margin:.7rem 0 0;font-size:clamp(2rem,5vw,3.6rem);line-height:1.08}.timeline{display:grid;gap:1.2rem}.timeline-item{display:grid;grid-template-columns:1.5rem minmax(0,1fr);gap:1rem}.timeline-marker{width:.75rem;height:.75rem;margin-top:1.8rem;border:2px solid var(--accent);border-radius:999px}.timeline-content,.project-card,.skill{padding:1.5rem;border-radius:1.2rem}.timeline-content h3{margin:.45rem 0 .2rem}.timeline-content h4{margin:0;color:var(--accent)}.project-grid,.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-card{min-height:18rem}.technology-list,.interest-list{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.4rem}.technology-list span,.interest-list span{padding:.45rem .7rem;border:1px solid var(--line);border-radius:999px;color:var(--accent);font-size:.84rem}.skill-heading{display:flex;justify-content:space-between;margin-bottom:.8rem}.skill-heading strong{color:var(--accent)}.skill-track{height:.55rem;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.skill-value{height:100%;background:linear-gradient(90deg,#34b8cf,var(--accent))}.interests{padding-bottom:8rem}.error-panel{margin:8rem auto;padding:3rem;border:1px solid var(--line);border-radius:1.4rem;background:var(--panel)}footer{display:flex;justify-content:space-between;gap:1rem;padding:2rem clamp(1.25rem,4vw,5rem);border-top:1px solid var(--line);color:var(--muted)}@media(max-width:800px){nav{display:none}.hero,.project-grid,.skills-grid{grid-template-columns:1fr}.hero{padding-top:3rem}footer{flex-direction:column}}
