:root{
      --bg:#070a0c;--bg2:#0b1012;--panel:rgba(16,22,24,.76);
      --panel2:#101719;--line:rgba(151,255,92,.13);--line2:rgba(255,255,255,.09);
      --text:#edf4ef;--muted:#899691;--green:#b7ff68;--cyan:#63e6ff;
      --shadow:0 24px 70px rgba(0,0,0,.34);--radius:24px;--max:1180px
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:auto}
    body{
      font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden
    }
    body:before{
      content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;
      background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
      background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent 82%)
    }
    body:after{
      content:"";position:fixed;width:680px;height:680px;right:-260px;top:-240px;z-index:-2;
      background:radial-gradient(circle,rgba(99,230,255,.055),transparent 66%);pointer-events:none
    }
    a{color:inherit;text-decoration:none}
    button{font:inherit}
    .container{width:min(var(--max),calc(100% - 40px));margin:auto}
    .section{padding:115px 0;position:relative}
    .eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--green);font:700 11px/1 monospace;letter-spacing:.18em;text-transform:uppercase}
    .eyebrow:before{content:"";width:22px;height:1px;background:var(--green)}
    h1,h2,h3{letter-spacing:-.045em;line-height:1.02}
    h1{font-size:clamp(3.4rem,8vw,7.2rem);max-width:900px}
    h2{font-size:clamp(2.3rem,5vw,4.5rem);max-width:850px}
    p{color:var(--muted)}
    .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}
    .reveal.visible{opacity:1;transform:none}

    /* Navigation */
    .nav-wrap{position:fixed;top:18px;left:0;right:0;z-index:50}
    nav{
      width:min(1120px,calc(100% - 28px));margin:auto;display:flex;align-items:center;
      justify-content:space-between;padding:12px 14px 12px 18px;border:1px solid var(--line2);
      background:rgba(7,10,12,.7);backdrop-filter:blur(18px);border-radius:18px;
      box-shadow:0 10px 40px rgba(0,0,0,.22);transition:.3s ease
    }
    nav.scrolled{padding-block:8px;background:rgba(7,10,12,.9)}
    .brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:-.02em}
    .mark{width:38px;height:38px;position:relative;display:grid;place-items:center}
    .mark svg{width:100%;height:100%;overflow:visible}
    .mark .ring{animation:spin 14s linear infinite;transform-origin:center}
    .mark .node{animation:pulse 2.4s ease-in-out infinite}
    .nav-links{display:flex;gap:4px}
    .nav-links a,.nav-resume{font-size:12px;color:#aab6b1;padding:9px 12px;border-radius:10px;transition:.2s}
    .nav-links a:hover,.nav-links a.active{color:var(--text);background:rgba(255,255,255,.055)}
    .nav-resume{color:#071007;background:var(--green);font-weight:800;margin-left:7px}

    .theme-toggle{
      display:inline-flex;align-items:center;gap:7px;margin-left:7px;padding:8px 10px;
      border:1px solid var(--line2);border-radius:10px;background:rgba(255,255,255,.025);
      color:var(--muted);cursor:pointer;font:700 10px monospace;transition:.25s
    }
    .theme-toggle:hover{color:var(--text);border-color:var(--line);transform:translateY(-1px)}
    .theme-icon{font-size:14px;line-height:1}
    html[data-theme="light"] .theme-toggle{background:rgba(25,70,35,.04);color:#52615a}

    .menu{display:none;background:none;border:0;color:white;padding:7px}
    .menu span{display:block;width:23px;height:1px;background:white;margin:5px}

    /* Hero */
    .hero{min-height:100vh;padding-top:160px;display:grid;align-items:center}
    .hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:55px;align-items:center}
    .status{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid var(--line);
      background:rgba(183,255,104,.035);border-radius:999px;color:#b9c5c0;font:600 11px monospace;margin:25px 0 25px}
    .status i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 14px var(--green);animation:pulse 2s infinite}
    .hero h1 span{color:var(--green)}
    .hero-copy{max-width:650px;font-size:17px;margin-bottom:30px}
    .actions{display:flex;gap:10px;flex-wrap:wrap}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 17px;border-radius:12px;border:1px solid var(--line2);font-size:13px;font-weight:800;transition:.25s;cursor:pointer}
    .btn.primary{background:var(--green);color:#081006;border-color:var(--green)}
    .btn:hover{transform:translateY(-2px);border-color:var(--green);box-shadow:0 12px 35px rgba(183,255,104,.1)}
    .btn.ghost{background:rgba(255,255,255,.025)}

    .terminal{
      position:relative;background:linear-gradient(145deg,rgba(18,26,27,.9),rgba(8,12,13,.92));
      border:1px solid var(--line2);border-radius:24px;box-shadow:var(--shadow);overflow:hidden
    }
    .terminal:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(183,255,104,.035),transparent);animation:sheen 8s linear infinite}
    .term-top{height:46px;display:flex;align-items:center;gap:7px;padding:0 16px;border-bottom:1px solid var(--line2)}
    .dot{width:8px;height:8px;border-radius:50%;background:#34413d}.dot:nth-child(2){background:#52615a}.dot:nth-child(3){background:#748078}
    .term-title{margin-left:auto;font:11px monospace;color:#56635e}
    .term-body{padding:26px;font:13px/2 monospace;min-height:405px}
    .prompt{color:var(--green)}.dim{color:#63706b}.cyan{color:var(--cyan)}.out{color:#b9c6c0}
    .cursor{display:inline-block;width:7px;height:14px;background:var(--green);vertical-align:-2px;animation:blink 1s steps(2) infinite}
    .network{position:absolute;inset:-40px -40px;z-index:-1;opacity:.5}
    .network span{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--cyan);box-shadow:0 0 15px var(--cyan);animation:float 6s ease-in-out infinite}
    .network span:nth-child(1){left:15%;top:18%}.network span:nth-child(2){right:12%;top:32%;animation-delay:1s}
    .network span:nth-child(3){left:28%;bottom:13%;animation-delay:2s}.network span:nth-child(4){right:27%;bottom:23%;animation-delay:3s}

    /* About */
    .two-col{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px}
    .lead{font-size:clamp(1.3rem,2.3vw,2rem);color:#dbe5df;letter-spacing:-.025em}
    .about-text{display:grid;gap:25px}
    .about-text p{max-width:720px}
    .mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}
    .mini{padding:18px;border:1px solid var(--line2);background:var(--panel);border-radius:16px}
    .mini b{display:block;font-size:13px;margin-bottom:4px}.mini span{font:11px monospace;color:#65736e}


    .recruiter-signal-wrap{padding:0 0 15px}
    .recruiter-signal{
      padding:18px 20px;border:1px solid var(--line);border-radius:18px;
      background:linear-gradient(90deg,rgba(183,255,104,.045),rgba(99,230,255,.025));
      position:relative;overflow:hidden
    }
    .recruiter-signal:before{
      content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--green);
      box-shadow:0 0 18px rgba(183,255,104,.5)
    }
    .signal-label{font:700 9px monospace;letter-spacing:.18em;color:var(--green);margin-bottom:10px}
    .signal-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font:700 11px monospace;color:#c5d0ca}
    .signal-flow span{padding:6px 8px;border:1px solid var(--line2);border-radius:7px;background:rgba(255,255,255,.025)}
    .signal-flow i{font-style:normal;color:var(--cyan)}
    .signal-note{margin-top:10px;font:10px monospace;color:var(--muted)}
    html[data-theme="light"] .recruiter-signal{background:linear-gradient(90deg,rgba(46,139,53,.045),rgba(8,127,153,.025))}

    /* Experience */
    .timeline{margin-top:55px;border-left:1px solid var(--line);padding-left:28px;display:grid;gap:40px}
    .timeline-item{position:relative;padding:26px;border:1px solid var(--line2);background:var(--panel);border-radius:20px}
    .timeline-item:before{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--green);left:-34px;top:34px;box-shadow:0 0 0 5px var(--bg),0 0 18px rgba(183,255,104,.45)}
    .role{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
    .role h3{font-size:24px;letter-spacing:-.03em}.company{color:var(--green);font:700 11px monospace;letter-spacing:.12em;text-transform:uppercase}
    .role small{font:11px monospace;color:#66736e;border:1px solid var(--line2);padding:6px 8px;border-radius:8px}
    .timeline-item p{margin:13px 0 16px;max-width:800px}
    .tags{display:flex;gap:7px;flex-wrap:wrap}.tag{padding:6px 9px;border-radius:8px;background:#111a1a;border:1px solid var(--line2);font:10px monospace;color:#9ca9a3}

    /* Skills */
    .skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:55px}
    .skill-card{padding:25px;border:1px solid var(--line2);background:var(--panel);border-radius:20px;transition:.25s}
    .skill-card:hover{transform:translateY(-4px);border-color:var(--line)}
    .skill-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
    .skill-head h3{font-size:17px}
    .skill-list{display:flex;gap:7px;flex-wrap:wrap}.skill{font:11px monospace;color:#bdc8c3;padding:7px 9px;border-radius:9px;background:rgba(255,255,255,.035);border:1px solid var(--line2);transition:.2s}
    .skill:hover{color:var(--green);border-color:var(--line);transform:translateY(-2px)}

    /* Architecture */
    .arch-shell{margin-top:55px;padding:28px;border:1px solid var(--line2);border-radius:24px;background:rgba(10,15,16,.72);overflow:hidden}
    .pipeline{display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding-bottom:7px}
    .stage{min-width:115px;flex:1;position:relative;padding:17px 12px;border:1px solid var(--line2);border-radius:14px;background:#0e1516;text-align:center;transition:.3s}
    .stage:hover{border-color:var(--green);transform:translateY(-5px);box-shadow:0 14px 35px rgba(0,0,0,.2)}
    .stage:not(:last-child):after{content:"→";position:absolute;right:-14px;top:50%;color:#51605b;z-index:2}
    .stage b{display:block;font-size:12px}.stage small{display:block;color:#64716c;font:9px monospace;margin-top:5px}
    .stage-line{height:1px;background:linear-gradient(90deg,transparent,var(--green),transparent);margin-top:25px;animation:flow 2.2s linear infinite}
    .cloud-diagram{margin-top:25px;border:1px solid var(--line2);border-radius:20px;padding:25px;background:rgba(255,255,255,.012)}
    .cloud-row{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:12px;align-items:center}
    .cloud-node{padding:15px;border:1px solid var(--line2);border-radius:14px;text-align:center;background:#0d1415;font:11px monospace;color:#aebbb5}
    .cloud-node strong{display:block;color:var(--green);font-size:12px;margin-bottom:3px}
    .arrow{text-align:center;color:#5f7069;font-size:22px}

    /* Projects */
    .projects{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:55px}
    .project{min-height:275px;padding:27px;display:flex;flex-direction:column;border:1px solid var(--line2);border-radius:21px;background:linear-gradient(145deg,rgba(16,23,24,.86),rgba(9,13,14,.7));transition:.3s;position:relative;overflow:hidden}
    .project:after{content:"";position:absolute;width:180px;height:180px;right:-100px;bottom:-100px;border-radius:50%;background:rgba(183,255,104,.05);transition:.4s}
    .project:hover{transform:translateY(-6px);border-color:var(--line);box-shadow:var(--shadow)}.project:hover:after{transform:scale(2)}
    .project-num{font:11px monospace;color:var(--green)}.project h3{font-size:25px;margin:14px 0 10px}.project p{font-size:13px;max-width:560px}
    .project .tags{margin-top:auto;padding-top:22px}.project-arrow{position:absolute;right:25px;top:25px;color:#66756e;font-size:20px}

    /* CTA */
    .github-card,.resume-card{margin-top:55px;padding:45px;border:1px solid var(--line2);background:var(--panel);border-radius:26px;display:flex;justify-content:space-between;align-items:center;gap:30px}
    .github-card h3,.resume-card h3{font-size:28px;margin-bottom:8px}.github-card p,.resume-card p{font-size:13px}
    .grid-art{width:260px;display:grid;grid-template-columns:repeat(13,1fr);gap:4px}
    .cell{aspect-ratio:1;border-radius:2px;background:#17201f}.cell:nth-child(3n){background:#27382e}.cell:nth-child(7n){background:#395234}.cell:nth-child(11n){background:#5d833f}

    .contact{min-height:75vh;display:grid;place-items:center;text-align:center}
    .contact h2{margin:20px auto 18px}.contact p{max-width:650px;margin:auto;font-size:16px}
    .contact .actions{justify-content:center;margin-top:28px}
    footer{padding:28px 0;border-top:1px solid var(--line2);color:#62706a;font:11px monospace}
    .footer-inner{display:flex;justify-content:space-between;gap:20px}.footer-links{display:flex;gap:18px}.footer-links a:hover{color:var(--green)}


    /* Theme system */
    html[data-theme="light"]{
      --bg:#f5f8f5;--bg2:#edf3ee;--panel:rgba(255,255,255,.82);--panel2:#ffffff;
      --line:rgba(45,115,45,.18);--line2:rgba(20,35,25,.12);--text:#101713;--muted:#58655f;
      --green:#2e8b35;--cyan:#087f99;--shadow:0 24px 70px rgba(28,48,35,.12)
    }
    html[data-theme="light"] body:before{
      background-image:linear-gradient(rgba(20,50,30,.045) 1px,transparent 1px),
      linear-gradient(90deg,rgba(20,50,30,.045) 1px,transparent 1px);
    }
    html[data-theme="light"] body:after{
      background:radial-gradient(circle,rgba(8,127,153,.06),transparent 66%);
    }
    html[data-theme="light"] nav{background:rgba(255,255,255,.78)}
    html[data-theme="light"] nav.scrolled{background:rgba(255,255,255,.94)}
    html[data-theme="light"] .nav-links a{color:#627069}
    html[data-theme="light"] .nav-links a:hover,
    html[data-theme="light"] .nav-links a.active{color:#101713;background:rgba(25,70,35,.06)}
    html[data-theme="light"] .nav-resume{color:#fff;background:#2e8b35}
    html[data-theme="light"] .status{background:rgba(46,139,53,.055)}
    html[data-theme="light"] .btn.primary{color:#fff;background:#2e8b35;border-color:#2e8b35}
    html[data-theme="light"] .btn.ghost{background:rgba(25,70,35,.035)}
    html[data-theme="light"] .terminal{background:linear-gradient(145deg,#ffffff,#eef4ef)}
    html[data-theme="light"] .term-top{background:rgba(20,45,28,.025)}
    html[data-theme="light"] .terminal .term-body{color:#27332e}
    html[data-theme="light"] .dim{color:#65736d}
    html[data-theme="light"] .out{color:#34423c}
    html[data-theme="light"] .mini,
    html[data-theme="light"] .timeline-item,
    html[data-theme="light"] .skill-card,
    html[data-theme="light"] .arch-shell,
    html[data-theme="light"] .project,
    html[data-theme="light"] .github-card,
    html[data-theme="light"] .resume-card{background:rgba(255,255,255,.78)}
    html[data-theme="light"] .tag,
    html[data-theme="light"] .skill,
    html[data-theme="light"] .stage,
    html[data-theme="light"] .cloud-node{background:rgba(25,70,35,.035);color:#52615a}
    html[data-theme="light"] .project:after{background:rgba(46,139,53,.07)}
    html[data-theme="light"] .cell{background:#dbe6dd}
    html[data-theme="light"] .cell:nth-child(3n){background:#c5d7c8}
    html[data-theme="light"] .cell:nth-child(7n){background:#a8c5ad}
    html[data-theme="light"] .cell:nth-child(11n){background:#82aa88}
    html[data-theme="light"] .menu span{background:#17231d}
    html[data-theme="light"] .term-title{color:#718079}
    html[data-theme="light"] .role small{color:#64716c}
    html[data-theme="light"] footer{color:#66736d}
    html[data-theme="light"] .cursor{background:var(--green)}

    @keyframes spin{to{transform:rotate(360deg)}} @keyframes pulse{50%{opacity:.45;transform:scale(.78)}} @keyframes blink{50%{opacity:0}}
    @keyframes sheen{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}} @keyframes float{50%{transform:translate(12px,-15px)}}
    @keyframes flow{0%{background-position:0 0}100%{background-position:160px 0}}
    @media(max-width:900px){
      .nav-links{display:none}.theme-toggle{margin-left:auto;margin-right:5px}.theme-label{display:none}.menu{display:block}.nav-links.open{display:flex;position:absolute;left:12px;right:12px;top:61px;flex-direction:column;padding:10px;background:rgba(7,10,12,.96);border:1px solid var(--line2);border-radius:15px}
      .nav-links.open a{padding:12px}.nav-resume{display:none}.hero-grid,.two-col{grid-template-columns:1fr}.hero{padding-top:140px}.hero h1{max-width:760px}.terminal{margin-top:5px}.two-col{gap:35px}.mini-grid{grid-template-columns:repeat(3,1fr)}
    }
    @media(max-width:650px){
      .home-next-grid{grid-template-columns:1fr}
      .container{width:min(var(--max),calc(100% - 28px))}.section{padding:80px 0}.hero{padding-top:120px}
      .hero-copy{font-size:15px}.skills-grid,.projects{grid-template-columns:1fr}.role{display:block}.role small{display:inline-block;margin-top:10px}
      .pipeline{padding-bottom:12px}.stage{min-width:105px}.cloud-row{grid-template-columns:1fr}.arrow{transform:rotate(90deg)}
      .github-card,.resume-card{padding:28px;display:block}.grid-art{width:100%;margin-top:25px}.footer-inner{display:block}.footer-links{margin-top:13px;flex-wrap:wrap}
      .mini-grid{grid-template-columns:1fr}.signal-flow{gap:6px}.signal-flow i{display:none}.term-body{min-height:370px;padding:20px;font-size:11px}.timeline{padding-left:19px}
      .timeline-item:before{left:-25px}.timeline{border-left-color:rgba(151,255,92,.1)}
    }
    @media(prefers-reduced-motion:reduce){
      *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
      .reveal{opacity:1;transform:none}
    }

    .home-next{padding-top:30px}
    .home-next-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
    .next-card{
      position:relative;padding:25px;border:1px solid var(--line2);border-radius:20px;
      background:var(--panel);min-height:130px;display:flex;flex-direction:column;
      justify-content:center;transition:.3s;overflow:hidden
    }
    .next-card:after{
      content:"";position:absolute;width:160px;height:160px;right:-110px;bottom:-110px;
      border-radius:50%;background:rgba(183,255,104,.045);transition:.4s
    }
    .next-card:hover{transform:translateY(-4px);border-color:var(--line);box-shadow:var(--shadow)}
    .next-card:hover:after{transform:scale(1.8)}
    .next-kicker{font:700 9px monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--green);margin-bottom:9px}
    .next-card strong{font-size:19px;letter-spacing:-.025em;max-width:430px}
    .next-arrow{position:absolute;right:22px;top:20px;color:var(--muted);font-size:18px}
    html[data-theme="light"] .next-card{background:rgba(255,255,255,.78)}


    /* About: intentional left/right composition */
    #about .two-col{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1.58fr);align-items:start;gap:70px}
    #about .two-col>.reveal:first-child{position:sticky;top:120px}
    #about .about-text{min-width:0;max-width:760px}
    #about .about-text .lead{max-width:720px}
    #about .about-text .mini-grid{margin-top:8px}


    @media(max-width:800px){
      #about .two-col{grid-template-columns:1fr;gap:25px}
      #about .two-col>.reveal:first-child{position:static}
      #architecture .arch-shell{padding:20px 16px}
      #architecture .stage{min-height:54px;padding:14px 15px}
      #architecture .cloud-row .cloud-node{padding:14px 15px}
      #architecture .cloud-row .cloud-node strong{min-width:95px}
    }


    
/* Architecture — premium systems diagram */
#architecture{padding-top:155px;padding-bottom:90px}
#architecture .architecture-intro{max-width:940px;margin-bottom:48px}
#architecture .architecture-title{font-size:clamp(3rem,6vw,5.8rem);margin-top:20px;max-width:1000px}
#architecture .architecture-title span{
  color:var(--green);
  text-shadow:0 0 35px rgba(183,255,104,.08)
}
#architecture .architecture-lead{font-size:16px;max-width:720px;margin-top:22px;color:#8f9d97}
#architecture .architecture-panel{
  position:relative;margin-top:26px;padding:28px;border:1px solid rgba(255,255,255,.09);
  border-radius:25px;background:
    radial-gradient(circle at 15% 0%,rgba(183,255,104,.035),transparent 32%),
    linear-gradient(145deg,rgba(13,19,21,.96),rgba(7,11,13,.93));
  box-shadow:0 28px 80px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.025);
  overflow:hidden
}
#architecture .architecture-panel:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);
  background-size:38px 38px;mask-image:linear-gradient(to bottom,black,transparent 78%)
}
html[data-theme="light"] #architecture .architecture-panel{
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(239,245,241,.9));
  box-shadow:0 22px 60px rgba(28,60,40,.1)
}
#architecture .panel-heading{
  position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;
  gap:25px;margin-bottom:25px
}
#architecture .panel-kicker{
  display:block;color:var(--green);font:700 10px monospace;letter-spacing:.16em;margin-bottom:8px
}
#architecture .panel-heading h2{font-size:clamp(1.65rem,2.5vw,2.3rem);letter-spacing:-.04em}
#architecture .panel-heading p{font:11px monospace;color:#697670;margin-top:8px}
#architecture .panel-heading p i{font-style:normal;color:#a1aaa5;margin:0 4px}
#architecture .panel-status{
  display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line2);
  border-radius:999px;background:rgba(255,255,255,.025);color:#78847f;font:9px monospace;white-space:nowrap
}
#architecture .panel-status span{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green)}
#architecture .pipeline-visual{
  position:relative;z-index:2;display:grid;grid-template-columns:1fr 20px 1fr 20px 1fr 20px 1fr 20px 1fr 20px 1fr 20px 1fr 20px 1fr 20px 1fr;
  align-items:center;gap:0;min-width:0
}
#architecture .pipeline-track{
  position:absolute;left:3%;right:3%;top:50%;height:1px;
  background:linear-gradient(90deg,transparent,var(--green),var(--cyan),var(--green),transparent);
  opacity:.45;box-shadow:0 0 15px rgba(183,255,104,.18)
}
#architecture .pipeline-stage{
  position:relative;z-index:2;min-width:0;min-height:152px;padding:16px 9px 14px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  border:1px solid rgba(255,255,255,.09);border-radius:14px;
  background:linear-gradient(145deg,rgba(18,26,28,.96),rgba(11,16,18,.94));
  transition:.3s cubic-bezier(.2,.8,.2,1);box-shadow:0 10px 25px rgba(0,0,0,.12)
}
html[data-theme="light"] #architecture .pipeline-stage{background:rgba(248,251,249,.95)}
#architecture .pipeline-stage:hover{
  transform:translateY(-7px);border-color:rgba(183,255,104,.32);
  box-shadow:0 18px 40px rgba(0,0,0,.28),0 0 28px rgba(183,255,104,.05)
}
#architecture .pipeline-stage strong{font-size:11px;line-height:1.25;margin-top:11px;white-space:nowrap}
#architecture .pipeline-stage small{font:9px/1.55 monospace;color:#65716c;margin-top:5px}
#architecture .pipeline-arrow{position:relative;z-index:3;text-align:center;color:#77837e;font:500 18px/1 monospace}
#architecture .pipeline-arrow:after{content:"";position:absolute;left:50%;top:50%;width:20px;height:20px;transform:translate(-50%,-50%);border-radius:50%;background:rgba(7,11,13,.9);z-index:-1}
#architecture .stage-icon,.cloud-node-icon{
  width:56px;height:56px;display:grid;place-items:center;border-radius:50%;
  border:1px solid currentColor;background:rgba(8,13,15,.7);
  box-shadow:inset 0 0 18px rgba(255,255,255,.025),0 0 22px currentColor;
  opacity:.9
}
#architecture .stage-icon svg{width:29px;height:29px}
#architecture .stage-blue{color:#4eb9ff}.stage-purple{color:#b278ff}.stage-pink{color:#ff5e9c}
#architecture .stage-orange{color:#ff8a00}.stage-yellow{color:#f5d300}.stage-cyan{color:#3bdcff}
#architecture .stage-green{color:#46e6b1}.stage-k8s{color:#61a9ff}.stage-monitor{color:#ff9147}
#architecture .pipeline-return{
  position:relative;z-index:2;margin:24px 2% 0;padding:10px 14px;border-top:1px dashed rgba(255,255,255,.11);
  color:#63706b;text-align:center;font:10px monospace
}
#architecture .pipeline-return span{color:var(--green);font-size:15px;margin-right:5px}

/* AWS architecture */
#architecture .cloud-panel{margin-top:26px}
#architecture .cloud-architecture{
  position:relative;z-index:2;display:grid;grid-template-columns:minmax(72px,.68fr) 25px minmax(410px,3.2fr) 25px minmax(180px,1.5fr);
  gap:10px;align-items:stretch
}
#architecture .cloud-ingress{display:grid;grid-template-rows:repeat(5,1fr);gap:8px}
#architecture .cloud-node{
  min-width:0;min-height:78px;padding:9px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(12,18,20,.92);
  text-align:center;transition:.28s
}
html[data-theme="light"] #architecture .cloud-node{background:rgba(248,251,249,.95)}
#architecture .cloud-node:hover{transform:translateY(-3px);border-color:rgba(99,230,255,.28);box-shadow:0 12px 25px rgba(0,0,0,.16)}
#architecture .cloud-node strong{font-size:10px;margin-top:6px;white-space:nowrap}
#architecture .cloud-node small{font:8px monospace;color:#64716c;margin-top:2px;white-space:nowrap}
#architecture .cloud-node-icon{width:40px;height:40px;box-shadow:inset 0 0 15px rgba(255,255,255,.025),0 0 18px currentColor}
#architecture .cloud-node-icon svg{width:21px;height:21px}
#architecture .cloud-node-icon span{font:800 16px monospace}
#architecture .blue{color:#4e9cff}.purple{color:#9e6cff}.cyan{color:#32dfff}.red{color:#ff5252}
#architecture .indigo{color:#7c78ff}.violet{color:#a76dff}.orange{color:#ff8a00}.green{color:#53df71}
#architecture .pink{color:#ff4ca1}.monitor{color:#ff6d37}
#architecture .flow-chevron{display:grid;place-items:center;color:#697670;font-size:18px}
#architecture .vpc-box{
  min-width:0;padding:17px;border:1px solid rgba(117,230,85,.38);border-radius:18px;
  background:linear-gradient(145deg,rgba(24,39,28,.42),rgba(9,17,14,.5));
  box-shadow:inset 0 0 35px rgba(183,255,104,.025)
}
html[data-theme="light"] #architecture .vpc-box{background:rgba(236,247,238,.8)}
#architecture .vpc-title{display:flex;align-items:center;gap:8px;margin-bottom:13px}
#architecture .vpc-cloud{font-size:19px;color:var(--green)}
#architecture .vpc-title strong{color:var(--green);font-size:14px}
#architecture .vpc-title span:last-child{margin-left:auto;color:#596660;font:8px monospace}
#architecture .subnet-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:9px}
#architecture .subnet{
  padding:12px;border:1px dashed rgba(255,255,255,.16);border-radius:13px;min-width:0
}
#architecture .public-subnet{border-color:rgba(117,230,85,.28)}
#architecture .private-subnet{border-color:rgba(99,190,255,.35)}
#architecture .subnet-label{display:block;font:700 8px monospace;letter-spacing:.11em;color:#6f7d76;margin-bottom:9px}
#architecture .public-subnet .subnet-label{color:#7cbd66}
#architecture .private-subnet .subnet-label{color:#6ca6c4}
#architecture .infra-node{
  min-height:64px;display:flex;align-items:center;gap:9px;padding:9px;border:1px solid rgba(255,255,255,.08);
  border-radius:11px;background:rgba(7,12,14,.55);margin-top:7px
}
html[data-theme="light"] #architecture .infra-node{background:rgba(255,255,255,.58)}
#architecture .infra-node .cloud-node-icon{flex:0 0 38px;width:38px;height:38px}
#architecture .infra-node strong{display:block;font-size:9px}
#architecture .infra-node small{display:block;font:8px monospace;color:#65716c;margin-top:2px}
#architecture .cloud-side{display:grid;grid-template-rows:1fr 1fr;gap:10px}
#architecture .side-card{
  padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(10,16,18,.7)
}
html[data-theme="light"] #architecture .side-card{background:rgba(248,251,249,.9)}
#architecture .data-card{border-color:rgba(46,208,255,.24)}#architecture .observe-card{border-color:rgba(255,117,62,.24)}
#architecture .side-label{display:block;font:700 8px monospace;letter-spacing:.13em;color:#6f7b76;margin-bottom:8px}
#architecture .side-item{display:flex;align-items:center;gap:9px;padding:8px;border:1px solid rgba(255,255,255,.07);border-radius:10px;margin-top:6px}
#architecture .side-item .cloud-node-icon{flex:0 0 36px;width:36px;height:36px}
#architecture .side-item strong{display:block;font-size:9px}.side-item small{display:block;color:#68746f;font:8px monospace}
#architecture .cross-cutting{
  position:relative;z-index:2;margin-top:22px;padding:16px 18px;border:1px dashed rgba(255,255,255,.18);
  border-radius:15px;background:rgba(255,255,255,.012)
}
#architecture .cross-title{text-align:center;color:var(--green);font:700 10px monospace;letter-spacing:.14em;margin-bottom:12px}
#architecture .cross-grid{display:grid;grid-template-columns:repeat(6,1fr)}
#architecture .cross-item{
  min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:5px 10px;
  border-right:1px solid rgba(255,255,255,.12)
}
#architecture .cross-item:last-child{border-right:0}
#architecture .cross-item strong{display:block;font-size:9px}.cross-item small{display:block;color:#68746f;font:8px monospace;margin-top:1px}
#architecture .cross-icon{
  width:29px;height:29px;display:grid;place-items:center;border-radius:8px;border:1px solid currentColor;
  font:700 14px monospace;opacity:.85
}
#architecture .iam{color:#dba800;background:rgba(219,168,0,.06)}.cw{color:#d75aff;background:rgba(215,90,255,.05)}
#architecture .trail{color:#c950d9;background:rgba(201,80,217,.05)}.secret{color:#ff684d;background:rgba(255,104,77,.05)}
#architecture .backup{color:#53c76d;background:rgba(83,199,109,.05)}.cost{color:#54c98b;background:rgba(84,201,139,.05)}
#architecture .architecture-principles{
  position:relative;z-index:2;margin-top:22px;padding:14px;text-align:center;border:1px solid rgba(255,255,255,.07);
  border-radius:11px;color:#79857f;font:10px monospace;background:rgba(255,255,255,.012)
}
#architecture .architecture-principles span{color:#f2c200;font-size:16px;margin-right:5px}
#architecture .architecture-principles b:first-of-type{color:#4aaeff}
#architecture .architecture-principles b:nth-of-type(2){color:#ff8a00}
#architecture .architecture-principles b:nth-of-type(3){color:var(--green)}

@media(max-width:1120px){
  #architecture .pipeline-visual{grid-template-columns:repeat(5,1fr);gap:9px}
  #architecture .pipeline-track,.pipeline-arrow{display:none}
  #architecture .pipeline-stage{min-height:145px}
  #architecture .cloud-architecture{grid-template-columns:1fr;gap:12px}
  #architecture .cloud-ingress{grid-template-columns:repeat(5,1fr);grid-template-rows:1fr}
  #architecture .flow-chevron{transform:rotate(90deg);height:12px}
  #architecture .cloud-side{grid-template-columns:1fr 1fr;grid-template-rows:1fr}
}
@media(max-width:760px){
  #architecture{padding-top:125px}
  #architecture .architecture-panel{padding:19px;border-radius:20px}
  #architecture .panel-heading{display:block}
  #architecture .panel-status{margin-top:14px}
  #architecture .pipeline-visual{grid-template-columns:1fr;gap:8px}
  #architecture .pipeline-stage{min-height:92px;display:grid;grid-template-columns:54px 1fr;grid-template-rows:auto auto;column-gap:13px;text-align:left;padding:12px}
  #architecture .pipeline-stage .stage-icon{grid-row:1/3}
  #architecture .pipeline-stage strong{margin:0;align-self:end}
  #architecture .pipeline-stage small{margin:3px 0 0;align-self:start}
  #architecture .cloud-ingress{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  #architecture .cloud-node{min-height:86px}
  #architecture .subnet-grid{grid-template-columns:1fr}
  #architecture .cloud-side{grid-template-columns:1fr;grid-template-rows:auto}
  #architecture .cross-grid{grid-template-columns:1fr 1fr}
  #architecture .cross-item{justify-content:flex-start;border-right:0;border-bottom:1px solid rgba(255,255,255,.08);padding:9px}
  #architecture .cross-item:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:430px){
  #architecture .cloud-ingress{grid-template-columns:1fr}
  #architecture .cross-grid{grid-template-columns:1fr}
  #architecture .cross-item:nth-last-child(-n+2){border-bottom:1px solid rgba(255,255,255,.08)}
  #architecture .cross-item:last-child{border-bottom:0}
}


/* =========================================================
   PREMIUM RESPONSIVE SYSTEM — 2026
   ========================================================= */
html {
  color-scheme: dark;
  -webkit-text-size-adjust: 100%;
  text-rendering: optimizeLegibility;
}
html[data-theme="light"] { color-scheme: light; }
body {
  min-width: 280px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img,svg,video { max-width: 100%; }
button,a { -webkit-tap-highlight-color: transparent; }

/* Better glass surfaces */
nav, .terminal, .mini, .timeline-item, .skill-card, .arch-shell, .project, .github-card, .resume-card {
  isolation: isolate;
}
nav::before, .terminal::after, .project::before, .skill-card::before, .timeline-item::before, .mini::before {
  pointer-events:none;
}
nav::before {
  content:""; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(115deg,rgba(255,255,255,.08),transparent 28%,transparent 72%,rgba(99,230,255,.045));
  opacity:.65; z-index:-1;
}

/* Navigation: stable mobile dropdown + safe areas */
.nav-wrap {
  top:max(12px, env(safe-area-inset-top));
}
nav {
  position:relative;
  min-height:58px;
  padding-left:clamp(12px,2vw,18px);
  padding-right:clamp(10px,1.5vw,14px);
}
.nav-links.open {
  visibility:visible; opacity:1; transform:translateY(0) scale(1);
  pointer-events:auto;
}
.nav-links a, .nav-resume, .theme-toggle, .menu {
  min-height:40px;
}
.menu {
  width:44px; height:44px; display:none; place-items:center; padding:0; border:1px solid transparent; border-radius:12px;
  cursor:pointer;
}
.menu:hover,.menu:focus-visible { border-color:var(--line2); background:rgba(255,255,255,.04); }
.menu span { transition:transform .3s ease, opacity .2s ease; transform-origin:center; }
.menu.is-open span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
.menu.is-open span:nth-child(2) { opacity:0; transform:scaleX(.2); }
.menu.is-open span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
body.menu-open { overflow:hidden; }

/* Mobile backdrop generated without extra HTML */
@media (max-width:900px) {
  .nav-links {
    display:flex; visibility:hidden; opacity:0; pointer-events:none;
    position:absolute; left:0; right:0; top:calc(100% + 10px);
    flex-direction:column; gap:4px; padding:8px;
    border:1px solid var(--line2); border-radius:18px;
    background:color-mix(in srgb, var(--bg) 92%, transparent);
    backdrop-filter:blur(24px) saturate(150%);
    -webkit-backdrop-filter:blur(24px) saturate(150%);
    box-shadow:0 24px 70px rgba(0,0,0,.3),0 0 0 1px rgba(255,255,255,.02) inset;
    transform:translateY(-8px) scale(.985);
    transform-origin:top right;
    transition:opacity .24s ease,transform .24s ease,visibility .24s ease;
    z-index:100;
  }
  .nav-links::before {
    content:""; position:absolute; inset:0; border-radius:inherit;
    background:linear-gradient(135deg,rgba(183,255,104,.055),transparent 40%,rgba(99,230,255,.04));
    pointer-events:none;
  }
  .nav-links a { position:relative; z-index:1; width:100%; min-height:44px; display:flex; align-items:center; padding:11px 13px; }
  .menu { display:grid; }
  .nav-resume { display:none; }
  .theme-toggle { margin-left:auto; margin-right:3px; }
}

@media (min-width:901px) {
  .nav-links { display:flex !important; visibility:visible !important; opacity:1 !important; transform:none !important; pointer-events:auto !important; }
}

/* Optional links are visually obvious but harmless when empty. */
.link-disabled { opacity:.68; cursor:not-allowed; }
.project-arrow.link-disabled { opacity:.28; pointer-events:auto; }

/* Touch-friendly cards and buttons */
@media (hover:hover) and (pointer:fine) {
  .skill-card,.project,.timeline-item,.mini,.stage,.cloud-node,.btn { will-change:transform; }
  .skill-card:hover,.mini:hover { box-shadow:0 18px 50px rgba(0,0,0,.16),0 0 28px rgba(183,255,104,.035); }
}

/* Premium ambient motion */
.hero::after {
  content:""; position:absolute; width:min(44vw,560px); aspect-ratio:1; right:-12vw; top:18%;
  border-radius:50%; background:radial-gradient(circle,rgba(183,255,104,.055),transparent 68%);
  filter:blur(20px); animation:ambientFloat 9s ease-in-out infinite; pointer-events:none;
}
.section::after {
  content:""; position:absolute; width:1px; height:120px; right:5%; bottom:4%;
  background:linear-gradient(to bottom,transparent,var(--line),transparent); opacity:.5; animation:linePulse 5s ease-in-out infinite; pointer-events:none;
}
.project::before,.skill-card::before,.mini::before,.timeline-item::before {
  content:""; position:absolute; inset:-1px; border-radius:inherit; opacity:0;
  background:linear-gradient(120deg,transparent 20%,rgba(183,255,104,.16) 50%,transparent 80%);
  transform:translateX(-100%); transition:opacity .2s; z-index:-1;
}
.project:hover::before,.skill-card:hover::before,.mini:hover::before,.timeline-item:hover::before { opacity:1; animation:cardSheen 1.1s ease; }

/* Light mode: brighter, cleaner, premium rather than a simple color inversion */
html[data-theme="light"] body {
  background:
    radial-gradient(circle at 82% 10%,rgba(8,127,153,.08),transparent 26%),
    radial-gradient(circle at 10% 60%,rgba(46,139,53,.055),transparent 24%),
    var(--bg);
}
html[data-theme="light"] body:before { opacity:.75; }
html[data-theme="light"] nav {
  border-color:rgba(26,63,39,.12);
  box-shadow:0 18px 50px rgba(27,55,38,.10),0 0 0 1px rgba(255,255,255,.75) inset;
}
html[data-theme="light"] .nav-resume { box-shadow:0 10px 25px rgba(46,139,53,.18); }
html[data-theme="light"] .hero h1 span {
  background:linear-gradient(90deg,#247b2c,#087f99 72%); -webkit-background-clip:text; background-clip:text; color:transparent;
}
html[data-theme="light"] .status { color:#46574e; }
html[data-theme="light"] .terminal {
  border-color:rgba(20,55,35,.12);
  box-shadow:0 30px 80px rgba(31,59,42,.13),0 0 45px rgba(8,127,153,.06);
}
html[data-theme="light"] .term-top { border-color:rgba(20,55,35,.10); }
html[data-theme="light"] .project,
html[data-theme="light"] .skill-card,
html[data-theme="light"] .timeline-item,
html[data-theme="light"] .mini,
html[data-theme="light"] .arch-shell,
html[data-theme="light"] .github-card,
html[data-theme="light"] .resume-card {
  border-color:rgba(20,55,35,.11);
  box-shadow:0 18px 50px rgba(32,57,42,.07),0 1px 0 rgba(255,255,255,.9) inset;
}
html[data-theme="light"] .project:hover,html[data-theme="light"] .skill-card:hover {
  box-shadow:0 24px 60px rgba(32,57,42,.11),0 0 28px rgba(46,139,53,.06);
}
html[data-theme="light"] .skill,html[data-theme="light"] .tag { background:rgba(20,55,35,.035); }
html[data-theme="light"] .section::after { opacity:.28; }

/* Tablet */
@media (max-width:1100px) {
  :root { --max:1040px; }
  .container { width:min(var(--max),calc(100% - 36px)); }
  .hero-grid { gap:34px; }
  h1 { font-size:clamp(3rem,7vw,5.8rem); }
  .section { padding:96px 0; }
  .pipeline { overflow-x:auto; scrollbar-width:thin; }
}

/* iPhone / Android / compact tablets */
@media (max-width:900px) {
  .section { padding:82px 0; }
  .hero { min-height:auto; padding-top:128px; padding-bottom:70px; }
  .hero-grid { grid-template-columns:1fr; gap:44px; }
  .hero-copy { max-width:760px; }
  .terminal { max-width:760px; margin-inline:auto; width:100%; }
  .network { inset:-20px; }
  .two-col { grid-template-columns:1fr; gap:35px; }
  .skills-grid,.projects { grid-template-columns:1fr 1fr; }
}

@media (max-width:680px) {
  .container { width:min(var(--max),calc(100% - 28px)); }
  .section { padding:72px 0; }
  .hero { padding-top:112px; padding-bottom:58px; }
  h1 { font-size:clamp(2.65rem,13vw,4.2rem); line-height:.98; }
  h2 { font-size:clamp(2rem,10vw,3.2rem); }
  .hero-copy { font-size:15px; line-height:1.75; }
  .actions { gap:8px; }
  .btn { min-height:46px; padding:12px 14px; }
  .skills-grid,.projects { grid-template-columns:1fr; }
  .mini-grid { grid-template-columns:1fr; }
  .term-body { min-height:0; padding:18px; font-size:11px; line-height:1.85; overflow-x:auto; }
  .term-title { font-size:9px; }
  .github-card,.resume-card { padding:25px; }
  .role { display:block; }
  .role small { display:inline-flex; margin-top:8px; }
  .footer-inner { flex-direction:column; }
  .footer-links { flex-wrap:wrap; }
}

@media (max-width:420px) {
  .nav-wrap { top:max(7px,env(safe-area-inset-top)); }
  nav { width:calc(100% - 14px); border-radius:15px; min-height:54px; }
  .brand { gap:7px; font-size:12px; }
  .mark { width:34px; height:34px; }
  .theme-toggle { width:40px; justify-content:center; padding:7px; }
  .theme-icon { font-size:16px; }
  .hero { padding-top:100px; }
  .hero-copy { font-size:14px; }
  .status { max-width:100%; font-size:9px; }
  .actions .btn { width:100%; }
  .terminal { border-radius:18px; }
  .term-body { font-size:10px; }
}

/* Landscape phones */
@media (max-height:500px) and (orientation:landscape) {
  .hero { padding-top:95px; }
  .section { padding:60px 0; }
  .terminal .term-body { min-height:300px; }
}

/* Reduced motion: accessibility + battery friendly */
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    animation-duration:.001ms !important; animation-iteration-count:1 !important;
    transition-duration:.001ms !important; scroll-behavior:auto !important;
  }
  .reveal { opacity:1 !important; transform:none !important; }
}

@keyframes ambientFloat { 0%,100%{transform:translate3d(0,0,0) scale(1)} 50%{transform:translate3d(-25px,20px,0) scale(1.05)} }
@keyframes linePulse { 0%,100%{opacity:.18;transform:scaleY(.65)} 50%{opacity:.65;transform:scaleY(1)} }
@keyframes cardSheen { from{transform:translateX(-100%)} to{transform:translateX(100%)} }
