:root {
        --bg: #050A0E;
        --bg-alt: #0D1B2A;
        --bg-teal: #00333A;
        --fg: #C0D9E6;
        --fg-soft: rgba(192, 217, 230, 0.7);
        --fg-muted: rgba(192, 217, 230, 0.5);
        --fg-faint: rgba(192, 217, 230, 0.35);
        --bg-panel: rgba(13, 27, 42, 0.92);
        --bg-panel-alt: rgba(5, 10, 14, 0.85);
        --accent: #4FC3F7;
        --accent-2: #9C27B0;
        --accent-3: #FF00A8;
        --accent-hue: 197;
        --accent-2-hue: 292;
        --accent-3-hue: 315;
        --neon-cyan: #00FFF7;
        --acid-lime: #A6FF00;
        --shadow: rgba(0, 0, 0, 0.8);
        --mono: "Share Tech Mono", monospace;
        --display: "Rajdhani", sans-serif;
        --desktop-base-width: 1680px;
        --desktop-base-height: 1080px;
        --accent-glow: 0 0 30px rgba(79, 195, 247, 0.6);
        --accent-2-glow: 0 0 30px rgba(156, 39, 176, 0.6);
        --accent-3-glow: 0 0 30px rgba(255, 0, 168, 0.6);
        --timeline-gap: clamp(110px, 12vw, 140px);
        --timeline-node-size: clamp(52px, 7.2vw, 78px);
        --timeline-column-gap: clamp(1rem, 3vw, 2.4rem);
        --timeline-anchor-left: 20%;
        --timeline-anchor-right: 60%;
        --identity-column-gap: clamp(1rem, 2.2vw, 1.3rem);
        --identity-stack-gap: calc(var(--identity-column-gap) * 0.45);
        --identity-rail-width: clamp(26px, 3vw, 44px);
        --identity-rail-offset: clamp(0.5rem, 1.5vw, 1.5rem);
        --identity-rail-band-offset: clamp(1.6rem, 4vw, 2.5rem);
        --identity-rail-band-thickness: clamp(9px, 1.4vw, 12px);
        --identity-rail-notch-offset: clamp(9px, 1.8vw, 20px);
      }

      html {
        font-size: 16px;
      }

      * {
        box-sizing: border-box;
      }

      body {
        margin: 0;
        min-height: 100vh;
        font-family: var(--mono);
        color: var(--fg);
        background: 
          radial-gradient(circle at 20% 20%, rgba(79, 195, 247, 0.08), transparent 50%),
          radial-gradient(circle at 80% 80%, rgba(156, 39, 176, 0.08), transparent 50%),
          var(--bg-teal);
        overflow-x: hidden;
      }

      body.modal-open {
        overflow: hidden;
      }

      body::after {
        content: "";
        position: fixed;
        inset: 0;
        background: repeating-linear-gradient(
          transparent,
          transparent 2px,
          hsla(0, 0%, 0%, 0.28) 2px,
          hsla(0, 0%, 0%, 0.28) 3px
        );
        mix-blend-mode: overlay;
        opacity: 0.18;
        pointer-events: none;
        z-index: -1;
        animation: scanlines 12s linear infinite;
      }

      @keyframes scanlines {
        0% {
          transform: translateY(0);
        }
        100% {
          transform: translateY(-3px);
        }
      }

      .matrix-canvas {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        pointer-events: none;
        z-index: 0;
        opacity: 0.8;
      }

      .aurora {
        position: fixed;
        inset: 0;
        display: grid;
        place-items: center;
        pointer-events: none;
        z-index: 0;
        mix-blend-mode: screen;
        opacity: 0.15;
      }

      .aurora span {
        position: absolute;
        width: clamp(280px, 45vw, 520px);
        height: clamp(280px, 45vw, 520px);
        filter: blur(120px);
        transform-origin: center;
        border-radius: 50%;
        background: radial-gradient(circle at 40% 40%, rgba(79, 195, 247, 0.2), transparent 60%);
        animation: auroraPulse 14s ease-in-out infinite, auroraOrbit 22s linear infinite;
      }

      .aurora span:nth-child(2) {
        background: radial-gradient(circle at 60% 60%, rgba(156, 39, 176, 0.16), transparent 65%);
        animation-duration: 18s, 28s;
      }

      .aurora span:nth-child(3) {
        background: radial-gradient(circle at 50% 50%, rgba(79, 195, 247, 0.22), transparent 70%);
        animation-duration: 16s, 32s;
      }

      .mobile-notice {
        position: fixed;
        top: 1.2rem;
        right: 1.2rem;
        display: none;
        align-items: center;
        gap: 0.6rem;
        padding: 0.75rem 1.1rem;
        border-radius: 14px;
        border: 1px solid rgba(79, 195, 247, 0.24);
        background: rgba(5, 10, 14, 0.88);
        color: var(--fg);
        font-size: 0.78rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        z-index: 40;
        box-shadow: 0 0 1.4rem var(--shadow), 0 0 0.8rem rgba(79, 195, 247, 0.18);
      }

      .mobile-notice svg {
        width: 18px;
        height: 18px;
        color: var(--accent);
        flex-shrink: 0;
      }

      .mobile-notice button {
        border: 1px solid rgba(79, 195, 247, 0.28);
        background: rgba(79, 195, 247, 0.08);
        color: var(--fg);
        font-family: var(--mono);
        text-transform: uppercase;
        letter-spacing: 0.08em;
        font-size: 0.72rem;
        padding: 0.3rem 0.65rem;
        border-radius: 10px;
        cursor: pointer;
        transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
        pointer-events: auto;
      }

      .mobile-notice button:hover {
        transform: translateY(-1px);
        box-shadow: 0 0 1rem rgba(255, 0, 168, 0.4);
        border-color: rgba(255, 0, 168, 0.7);
      }

      .mobile-notice button:focus-visible {
        outline: none;
        box-shadow: 0 0 0 2px rgba(255, 0, 168, 0.45);
      }

      @keyframes auroraPulse {
        0%,
        100% {
          transform: scale(0.9) rotate(0deg);
          opacity: 0.32;
        }
        50% {
          transform: scale(1.15) rotate(6deg);
          opacity: 0.52;
        }
      }

      @keyframes auroraOrbit {
        0% {
          rotate: 0deg;
        }
        100% {
          rotate: 360deg;
        }
      }

      .desktop-stage {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        width: 100vw;
        min-height: 100vh;
        overflow: hidden;
        padding: 0;
        box-sizing: border-box;
        position: relative;
        z-index: 10;
      }

      .desktop-shell {
        width: var(--desktop-base-width);
        height: var(--desktop-base-height);
        background: rgba(13, 27, 42, 0.6);
        border-radius: 0;
        border: 1px solid rgba(79, 195, 247, 0.3);
        box-shadow: 
          inset 0 0 1.6rem rgba(79, 195, 247, 0.1), 
          0 1.6rem 3.2rem var(--shadow),
          0 0 60px rgba(79, 195, 247, 0.15);
        display: flex;
        flex-direction: column;
        overflow: hidden;
        position: relative;
        backdrop-filter: blur(8px) saturate(130%);
        isolation: isolate;
      }

      .desktop-top {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0.4rem 1rem;
        background: linear-gradient(135deg, 
          rgba(79, 195, 247, 0.08), 
          rgba(156, 39, 176, 0.08)
        );
        border-bottom: 2px solid rgba(79, 195, 247, 0.4);
        border-radius: 0;
        box-shadow: 
          0 0 20px rgba(79, 195, 247, 0.3),
          inset 0 1px 0 rgba(79, 195, 247, 0.3);
        backdrop-filter: blur(10px) saturate(180%);
        margin: 0;
        position: relative;
        z-index: 1;
        animation: top-bar-pulse 4s ease-in-out infinite;
      }

      @keyframes top-bar-pulse {
        0%, 100% {
          box-shadow: 
            0 0 20px rgba(79, 195, 247, 0.3),
            inset 0 1px 0 rgba(79, 195, 247, 0.3);
        }
        50% {
          box-shadow: 
            0 0 30px rgba(79, 195, 247, 0.5),
            inset 0 1px 0 rgba(79, 195, 247, 0.5);
        }
      }

      .desktop-logo {
        font-family: var(--display);
        font-size: clamp(1rem, 2.5vw, 1.4rem);
        letter-spacing: 0.3em;
        text-transform: uppercase;
        color: var(--accent);
        text-shadow: 
          0 0 10px rgba(79, 195, 247, 0.8),
          0 0 20px rgba(79, 195, 247, 0.6),
          0 0 30px rgba(156, 39, 176, 0.4);
        animation: logo-glitch 5s ease-in-out infinite;
      }

      @keyframes logo-glitch {
        0%, 90%, 100% {
          text-shadow: 
            0 0 10px rgba(79, 195, 247, 0.8),
            0 0 20px rgba(79, 195, 247, 0.6),
            0 0 30px rgba(156, 39, 176, 0.4);
        }
        92%, 94%, 96% {
          text-shadow: 
            -2px 0 10px rgba(79, 195, 247, 1),
            2px 0 20px rgba(255, 0, 168, 0.8),
            0 0 30px rgba(156, 39, 176, 0.6);
          transform: translateX(2px);
        }
        93%, 95% {
          transform: translateX(-2px);
        }
      }

      .desktop-status {
        display: flex;
        align-items: center;
        gap: 1rem;
        font-size: 0.7rem;
        color: var(--fg-soft);
      }

      .resume-widget-topbar {
        display: flex;
        align-items: center;
        gap: 0.4rem;
        padding: 0.35rem 0.9rem;
        background: rgba(5, 20, 35, 0.8);
        border: 1px solid rgba(79, 195, 247, 0.5);
        border-radius: 999px;
        color: var(--fg);
        font-weight: 600;
        font-size: 0.7rem;
        cursor: pointer;
        transition: all 0.2s ease;
        text-shadow: 0 0 8px rgba(79, 195, 247, 0.35);
        box-shadow: 
          0 0 12px rgba(79, 195, 247, 0.3),
          inset 0 1px 0 rgba(255, 255, 255, 0.05);
      }

      .resume-widget-topbar:hover {
        background: rgba(79, 195, 247, 0.16);
        border-color: rgba(79, 195, 247, 0.9);
        transform: translateY(-1px);
        box-shadow: 
          0 0 20px rgba(79, 195, 247, 0.4),
          inset 0 1px 0 rgba(79, 195, 247, 0.2);
        color: var(--accent);
      }

      .resume-widget-topbar .widget-symbol {
        font-size: 0.8rem;
      }

      .resume-widget-topbar .widget-label {
        font-size: 0.65rem;
        letter-spacing: 0.08em;
      }

      .desktop-status .pulse-container {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0.5rem 1rem;
        background: #000000;
        border: 1px solid rgba(0, 255, 247, 0.4);
        border-radius: 8px;
        box-shadow: 
          0 0 10px rgba(0, 255, 247, 0.2),
          inset 0 0 20px rgba(0, 255, 247, 0.05);
        width: 320px;
        height: 50px;
        position: relative;
        overflow: hidden;
      }

      .desktop-status .pulse-morph {
        width: 100%;
        height: 100%;
      }

      .desktop-status .pulse-base {
        opacity: 0.25;
      }

      .desktop-status .pulse-trail {
        stroke-dasharray: 0.16 1;
        stroke-dashoffset: 1;
        opacity: 1;
      }

      .desktop-status .pulse-text {
        opacity: 0;
        transition: opacity 0.3s ease;
      }

      .desktop-status .pulse-text.active {
        opacity: 1;
      }

      .desktop-status .pulse-text tspan {
        letter-spacing: 0.12em;
      }

      .desktop-status .pulse-dot {
        fill: var(--accent);
        filter: drop-shadow(0 0 6px rgba(79, 195, 247, 0.9));
        opacity: 0.9;
      }





      .desktop-main {
        position: relative;
        flex: 1;
        overflow: hidden;
        padding: 2rem 2.5rem 2.5rem 11rem;
        background: rgba(0, 0, 0, 0.3);
        z-index: 10;
      }



      @keyframes float {
        0%, 100% { transform: translateY(0px); }
        50% { transform: translateY(-20px); }
      }

      @keyframes pulse-glow {
        0% { 
          box-shadow: 0 0 12px currentColor;
          transform: scale(1);
        }
        100% { 
          box-shadow: 0 0 25px currentColor;
          transform: scale(1.1);
        }
      }

      @keyframes border-flow {
        0%, 100% { opacity: 0.3; }
        50% { opacity: 0.8; }
      }

      /* Panel System from Backup */
      .panel {
        background: linear-gradient(140deg, rgba(5, 10, 14, 0.88), rgba(13, 27, 42, 0.88));
        border: 1px solid rgba(79, 195, 247, 0.18);
        border-radius: 20px;
        box-shadow: 0 1rem 3rem var(--shadow);
        overflow: hidden;
        position: relative;
      }

      .panel::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(156, 39, 176, 0.08), transparent 45%, rgba(79, 195, 247, 0.05));
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease;
      }

      .panel:hover::after {
        opacity: 1;
      }

      .panel.highlight {
        border-color: rgba(255, 0, 168, 0.65);
        box-shadow: 0 0 1.6rem rgba(255, 0, 168, 0.32);
        transition: box-shadow 0.4s ease, border-color 0.4s ease;
      }

      .panel header {
        padding: 1.15rem 1.5rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-bottom: 1px solid rgba(79, 195, 247, 0.12);
        text-transform: uppercase;
        letter-spacing: 0.18em;
        font-size: 0.85rem;
      }

      .panel header span {
        display: inline-flex;
        align-items: center;
        gap: 0.4rem;
      }

      .panel header .dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--accent);
        box-shadow: 0 0 0.6rem rgba(79, 195, 247, 0.8);
      }

      .panel section {
        padding: 1.5rem;
        position: relative;
        z-index: 1;
      }

      /* Hero Section Layout */
      .hero {
        display: flex;
        flex-direction: column;
        /* align-items: center; */
        margin-bottom: 3rem;
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
        position: relative;
      }

      .hero h1 {
        text-align: right;
        margin-bottom: 2rem;
      }

      .hero h1 .glitch {
        display: flex;
        flex-wrap: wrap;
        justify-content: right;
        gap: 0.5em;
      }

      .hero h1 .glitch span {
        display: inline-block;
      }

      .hero .tagline {
        text-align: right;
        align-self: flex-end;
        max-width: 600px;
      }

      .hero h1 {
        font-family: var(--display);
        font-size: clamp(2.5rem, 5vw, 4rem);
        letter-spacing: 0.32em;
        text-transform: uppercase;
        margin: 0 0 0.6rem;
        position: relative;
        line-height: 1.15;
      }

      .hero h1 .glitch {
        position: relative;
        display: inline-block;
      }

      .tagline {
        margin: 0;
        color: var(--fg-soft);
        max-width: 32ch;
        line-height: 1.6;
        margin-left: auto;
      }

      .cta-group {
        display: flex;
        gap: 1rem;
        flex-wrap: wrap;
        margin-top: 1.75rem;
        justify-content: flex-end;
      }

      .btn {
        border: 1px solid rgba(79, 195, 247, 0.38);
        color: var(--fg);
        background: linear-gradient(135deg, rgba(79, 195, 247, 0.15), rgba(79, 195, 247, 0.08));
        padding: 0.75rem 1.8rem;
        font-size: 0.95rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        cursor: pointer;
        position: relative;
        overflow: hidden;
        transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
        border-radius: 8px;
      }

      .btn::before {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(circle, rgba(79, 195, 247, 0.35) 0%, rgba(156, 39, 176, 0.25) 50%, transparent 70%);
        transform: scale(0);
        transition: transform 0.4s ease;
      }

      .btn:hover {
        transform: translateY(-2px);
        border-color: rgba(255, 0, 168, 0.7);
        box-shadow: 0 0 1.5rem rgba(255, 0, 168, 0.4);
        background: linear-gradient(135deg, rgba(255, 0, 168, 0.15), rgba(156, 39, 176, 0.12));
      }

      .btn:hover::before {
        transform: scale(1);
      }

      .btn.ghost {
        background: rgba(79, 195, 247, 0.05);
        border-color: rgba(79, 195, 247, 0.35);
        color: var(--accent);
      }

      .btn.ghost:hover {
        border-color: rgba(255, 0, 168, 0.55);
        box-shadow: 0 0 1.5rem rgba(255, 0, 168, 0.3);
        color: var(--accent-3);
      }

      .desktop-banner {
        position: absolute;
        top: 2.5rem;
        left: 50%;
        transform: translateX(-35%);
        text-align: center;
        max-width: clamp(420px, 60vw, 620px);
      }

      .desktop-banner h1 {
        margin: 0;
        font-family: var(--display);
        font-size: clamp(2rem, 4vw, 2.8rem);
        letter-spacing: 0.28em;
        text-transform: uppercase;
      }

      .desktop-banner .glitch {
        position: relative;
        display: inline-block;
      }

      .desktop-banner .glitch::before,
      .desktop-banner .glitch::after {
        content: attr(data-text);
        position: absolute;
        inset: 0;
        mix-blend-mode: lighten;
        animation: glitch 4s infinite;
        opacity: 0;
      }

      .desktop-banner .glitch::before {
        color: var(--accent);
        clip-path: inset(0 0 50% 0);
        animation-delay: 0.8s;
      }

      .desktop-banner .glitch::after {
        color: var(--accent-2);
        clip-path: inset(50% 0 0 0);
        animation-delay: 1.6s;
      }

      .desktop-banner p {
        margin: 0.75rem 0 0;
        color: var(--fg-soft);
        line-height: 1.6;
      }

      @keyframes glitch {
        0%,
        92%,
        100% {
          opacity: 0;
          transform: translate(0);
        }
        93% {
          opacity: 0.8;
          transform: translate(-3px, -1px);
        }
        95% {
          opacity: 0.6;
          transform: translate(3px, 1px);
        }
        97% {
          opacity: 0.9;
          transform: translate(-2px, 2px);
        }
      }

      .desktop-icons {
        position: absolute;
        top: 2.6rem;
        left: 2.4rem;
        bottom: calc(2.6rem + 4.2rem);
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        align-content: flex-start;
        gap: 1rem 1.2rem;
        max-width: calc((7.6rem * 3) + (1.2rem * 2));
        padding-right: 0.4rem;
      }

      .desktop-tile {
        width: 7.6rem;
        height: 7.6rem;
        flex: 0 0 7.6rem;
        padding: 0.65rem;
        border-radius: 18px;
        background: linear-gradient(160deg, hsla(221, 65%, 6%, 0.82), hsla(220, 61%, 7%, 0.72));
        border: 1px solid hsla(187, 50%, 64%, 0.15);
        color: var(--fg-soft);
        font-size: 0.78rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        cursor: pointer;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0.3rem;
        text-align: center;
        box-shadow: 0 0 1.1rem hsla(187, 50%, 64%, 0.14);
        transition: transform 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
        position: relative;
        overflow: hidden;
      }

      .desktop-tile::before {
        content: '';
        position: absolute;
        inset: 0;
        background: linear-gradient(45deg, transparent, hsla(187, 50%, 64%, 0.1), transparent);
        transform: translateX(-100%);
        transition: transform 0.6s ease;
      }

      .desktop-tile:hover {
        transform: translateY(-3px);
        border-color: hsla(303, 100%, 59%, 0.45);
        color: var(--fg);
        box-shadow: 0 0 1.4rem hsla(303, 100%, 59%, 0.24);
      }

      .desktop-tile:hover::before {
        transform: translateX(100%);
      }

      .desktop-widget {
        position: absolute;
        right: 2.4rem;
        top: 20%;
        display: flex;
        align-items: center;
        gap: 0.85rem;
        width: 15.5rem;
        padding: 0.95rem 1.2rem;
        border-radius: 20px;
        border: 1px solid hsla(187, 50%, 64%, 0.18);
        background: linear-gradient(150deg, hsla(220, 75%, 5%, 0.82), hsla(218, 58%, 8%, 0.7));
        color: var(--fg-soft);
        box-shadow: 0 0 1.4rem hsla(187, 50%, 64%, 0.12);
        text-align: left;
        cursor: pointer;
        transition: transform 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
      }

      .desktop-widget:hover {
        transform: translateY(-3px);
        border-color: hsla(303, 100%, 59%, 0.45);
        color: var(--fg);
        box-shadow: 0 0 1.6rem hsla(303, 100%, 59%, 0.24);
      }

      .widget-symbol {
        font-size: 1.5rem;
        text-shadow: 0 0 0.9rem hsla(187, 50%, 64%, 0.35);
      }

      .widget-copy {
        display: flex;
        flex-direction: column;
        gap: 0.2rem;
      }

      .widget-title {
        font-family: var(--display);
        letter-spacing: 0.16em;
        text-transform: uppercase;
        font-size: 0.78rem;
        color: var(--fg);
      }

      .widget-desc {
        font-size: 0.68rem;
        letter-spacing: 0.06em;
        color: hsla(208, 100%, 97%, 0.6);
      }

      .tile-symbol {
        font-size: 1.35rem;
        text-shadow: 0 0 0.7rem hsla(187, 50%, 64%, 0.35);
        display: block;
      }

      .tile-title {
        font-family: var(--display);
        font-size: 0.78rem;
        letter-spacing: 0.14em;
      }

      .tile-desc {
        font-size: 0.62rem;
        letter-spacing: 0.04em;
        color: hsla(208, 100%, 97%, 0.58);
      }

      @keyframes window-open-anim {
        from {
          opacity: 0;
          transform: scale(0.96);
        }
        to {
          opacity: 1;
          transform: scale(1);
        }
      }

      .window {
        position: absolute;
        display: none;
        flex-direction: column;
        background: linear-gradient(140deg, rgba(5, 10, 14, 0.88), rgba(13, 27, 42, 0.88));
        backdrop-filter: blur(16px);
        border: 1px solid rgba(79, 195, 247, 0.18);
        border-radius: 20px;
        box-shadow: 0 1rem 3rem var(--shadow);
        overflow: hidden;
        transform-origin: center;
      }

      .window::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(156, 39, 176, 0.08), transparent 45%, rgba(79, 195, 247, 0.05));
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease;
      }

      .window:hover::after {
        opacity: 1;
      }

      .window.active {
        display: flex;
        animation: window-open-anim 0.2s ease-out forwards;
      }

      .window.minimized {
        display: none;
      }

      .window.focused {
        border-color: rgba(79, 195, 247, 0.5);
        box-shadow: 
          0 2rem 4rem rgba(0, 0, 0, 0.6), 
          0 0 1.2rem rgba(79, 195, 247, 0.28),
          0 0 3rem rgba(79, 195, 247, 0.15),
          inset 0 1px 0 rgba(255, 255, 255, 0.15);
        transition: box-shadow 0.3s ease-in-out, border-color 0.3s ease-in-out;
      }

      .window.maximized {
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        border-radius: 0;
        z-index: 1000 !important;
      }

      .resize-handle {
        position: absolute;
        background: transparent;
      }

      .resize-handle.edge {
        z-index: 2;
      }

      .resize-handle.corner {
        width: 14px;
        height: 14px;
        z-index: 3;
      }

      .resize-handle.edge-top,
      .resize-handle.edge-bottom {
        left: 0;
        width: 100%;
        height: 8px;
        cursor: ns-resize;
      }

      .resize-handle.edge-top {
        top: -4px;
      }

      .resize-handle.edge-bottom {
        bottom: -4px;
      }

      .resize-handle.edge-left,
      .resize-handle.edge-right {
        top: 0;
        height: 100%;
        width: 8px;
        cursor: ew-resize;
      }

      .resize-handle.edge-left {
        left: -4px;
      }

      .resize-handle.edge-right {
        right: -4px;
      }

      .resize-handle.corner-top-left {
        top: -6px;
        left: -6px;
        cursor: nwse-resize;
      }

      .resize-handle.corner-top-right {
        top: -6px;
        right: -6px;
        cursor: nesw-resize;
      }

      .resize-handle.corner-bottom-left {
        bottom: -6px;
        left: -6px;
        cursor: nesw-resize;
      }

      .resize-handle.corner-bottom-right {
        bottom: -6px;
        right: -6px;
        cursor: nwse-resize;
      }

      .window header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 1.15rem 1.5rem;
        border-bottom: 1px solid rgba(79, 195, 247, 0.12);
        letter-spacing: 0.18em;
        text-transform: uppercase;
        font-size: 0.85rem;
      }

      .window header span {
        display: inline-flex;
        align-items: center;
        gap: 0.45rem;
      }

      .window header .dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--accent);
        box-shadow: 0 0 0.6rem rgba(79, 195, 247, 0.8);
      }

      .window-controls {
        display: inline-flex;
        gap: 0.35rem;
      }

      .window-controls button {
        border: 1px solid rgba(79, 195, 247, 0.28);
        background: rgba(79, 195, 247, 0.08);
        color: var(--fg);
        border-radius: 8px;
        padding: 0.2rem 0.55rem;
        cursor: pointer;
        font-family: var(--mono);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        font-size: 0.7rem;
        transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
        position: relative;
        overflow: hidden;
      }

      .window-controls button::before {
        content: '';
        position: absolute;
        inset: 0;
        background: radial-gradient(circle, rgba(79, 195, 247, 0.3) 0%, rgba(156, 39, 176, 0.2) 50%, transparent 70%);
        transform: scale(0);
        transition: transform 0.3s ease;
      }

      .window-controls button:hover {
        transform: translateY(-1px);
        box-shadow: 0 0 0.9rem rgba(255, 0, 168, 0.5);
        border-color: rgba(255, 0, 168, 0.7);
        background: rgba(255, 0, 168, 0.15);
      }

      .window-controls button:hover::before {
        transform: scale(1);
      }

      .window section {
        padding: 1.5rem;
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        overflow: auto;
      }

      .window-body {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        color: var(--fg-soft);
        font-size: 0.92rem;
        line-height: 1.5;
      }

      .window-body h2 {
        margin: 0;
        font-family: var(--display);
        letter-spacing: 0.2em;
        text-transform: uppercase;
        font-size: 1rem;
        color: var(--accent);
        text-shadow: 0 0 8px hsla(187, 50%, 64%, 0.5);
      }

      .window-body h3 {
        margin: 0;
        font-size: 0.95rem;
        letter-spacing: 0.08em;
        color: var(--accent-3);
      } 

      .window-body h4 {
        margin: 0.4rem 0 0;
        font-size: 0.8rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: hsla(208, 100%, 97%, 0.6);
      }

      .window-body ul {
        margin: 0;
        padding-left: 1.15rem;
        display: grid;
        gap: 0.5rem;
      }

      .window-body hr {
        width: 100%;
        border: none;
        border-top: 1px solid hsla(187, 50%, 64%, 0.18);
      }

      /* Resume Viewer Styles */
      .resume-viewer {
        display: flex;
        flex-direction: column;
        gap: 0;
        padding: 0;
        height: 100%;
        overflow: hidden;
      }

      .resume-viewer__actions {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0.75rem 1rem;
        background: hsla(220, 100%, 5%, 0.6);
        border-bottom: 1px solid hsla(187, 50%, 64%, 0.16);
        flex-shrink: 0;
      }

      .resume-viewer__title {
        font-size: 0.8rem;
        letter-spacing: 0.12em;
        color: var(--accent);
      }

      .resume-viewer__buttons {
        display: flex;
        gap: 0.5rem;
      }

      .resume-viewer__button,
      .resume-viewer__link {
        padding: 0.4rem 0.8rem;
        border: 1px solid hsla(187, 50%, 64%, 0.28);
        background: hsla(187, 50%, 64%, 0.08);
        color: var(--fg);
        border-radius: 8px;
        cursor: pointer;
        font-family: var(--mono);
        font-size: 0.75rem;
        text-decoration: none;
        transition: all 0.2s ease;
      }

      .resume-viewer__button:hover,
      .resume-viewer__link:hover {
        background: hsla(187, 50%, 64%, 0.15);
        border-color: var(--accent);
        box-shadow: 0 0 8px hsla(187, 50%, 64%, 0.3);
      }

      .resume-viewer iframe {
        flex: 1;
        width: 100%;
        height: 100%;
        border: none;
        background: white;
      }

      /* Jira Viewer Styles */
      .jira-viewer {
        display: flex;
        flex-direction: column;
        gap: 0.9rem;
        height: 100%;
        padding: 0.5rem 0.75rem 0.75rem;
        background: linear-gradient(160deg, rgba(4, 16, 41, 0.4), rgba(0, 28, 42, 0.66));
      }

      .jira-viewer__actions {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
        padding: 0.6rem 0.9rem;
        border-radius: 12px;
        border: 1px solid hsla(187, 50%, 64%, 0.22);
        background: hsla(210, 60%, 8%, 0.85);
      }

      .jira-viewer__title {
        max-width: 60%;
      }

      .jira-viewer__title strong {
        display: block;
        font-size: 0.88rem;
        letter-spacing: 0.18em;
        color: var(--accent);
      }

      .jira-viewer__title p {
        margin: 0.2rem 0 0;
        font-size: 0.78rem;
        color: var(--fg-soft);
      }

      .jira-viewer__buttons {
        display: flex;
        gap: 0.5rem;
        flex-wrap: wrap;
        justify-content: flex-end;
      }

      .jira-viewer__button,
      .jira-viewer__link {
        padding: 0.4rem 0.9rem;
        border-radius: 999px;
        font-family: var(--mono);
        font-size: 0.75rem;
        border: 1px solid hsla(187, 50%, 64%, 0.35);
        background: hsla(187, 50%, 64%, 0.12);
        color: var(--fg);
        cursor: pointer;
        text-decoration: none;
        transition: transform 0.2s ease, box-shadow 0.2s ease;
      }

      .jira-viewer__button:hover,
      .jira-viewer__link:hover {
        transform: translateY(-1px);
        box-shadow: 0 0 12px hsla(187, 50%, 64%, 0.35);
      }

      .jira-viewer iframe {
        flex: 1;
        width: 100%;
        border: none;
        border-radius: 16px;
        box-shadow: inset 0 0 0 1px hsla(187, 50%, 64%, 0.25);
        background: #03101f;
      }

      .scrollable {
        overflow-y: auto;
      }

      .entry {
        padding-bottom: 1.1rem;
        border-bottom: 1px solid hsla(187, 50%, 64%, 0.12);
      }

      .entry:last-of-type {
        border-bottom: none;
      }

      .entry .meta {
        margin: 0.15rem 0;
        font-size: 0.82rem;
        color: hsla(208, 100%, 97%, 0.55);
      }

      .entry .summary {
        margin: 0.4rem 0 0.6rem;
        color: hsla(208, 100%, 97%, 0.75);
      }

      .project-card {
        padding: 0.85rem 0.9rem;
        border: 1px solid hsla(187, 50%, 64%, 0.12);
        background: hsla(220, 100%, 5%, 0.55);
      }

      
      .project-card h3 {
        margin: 0 0 0.3rem;
        font-size: 0.95rem;
        color: var(--accent-3);
      }

      .project-card p {
        margin: 0 0 0.45rem;
        font-size: 0.82rem;
        color: hsla(208, 100%, 97%, 0.7);
      }

      .project-card .tags {
        font-size: 0.72rem;
        letter-spacing: 0.05em;
        color: hsla(208, 100%, 97%, 0.55);
      }

      .project-cta {
        margin-top: 1.5rem;
        align-self: flex-start;
        border: 1px solid hsla(303, 100%, 59%, 0.32);
        background: hsla(303, 100%, 59%, 0.16);
        color: var(--fg);
        padding: 0.55rem 1.1rem;
        border-radius: 10px;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        font-size: 0.75rem;
        cursor: pointer;
        transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
      }

      .project-cta:hover {
        transform: translateY(-2px);
        box-shadow: 0 0 1rem hsla(303, 100%, 59%, 0.25);
        border-color: hsla(187, 50%, 64%, 0.45);
      }

      .skills-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
        gap: 1.2rem;
      }

      .skills-grid h3 {
        margin-bottom: 0.5rem;
      }

      .skills-grid ul {
        gap: 0.35rem;
      }

      .cert-entry {
        padding: 0.8rem 0.9rem;
        border-left: 2px solid var(--accent);
        background: hsla(220, 100%, 5%, 0.55);
        margin-bottom: 0.9rem;
      }

      .cert-entry:last-of-type {
        margin-bottom: 0;
      }

      .cert-name {
        margin: 0;
        color: var(--fg);
        font-size: 0.9rem;
      }

      .cert-meta {
        margin: 0.2rem 0 0;
        font-size: 0.78rem;
        color: hsla(208, 100%, 97%, 0.6);
      }

      .contact-links {
        gap: 0.8rem;
      }

      .contact-link {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        padding: 0.7rem 0.9rem;
        border: 1px solid hsla(187, 50%, 64%, 0.12);
        background: hsla(220, 100%, 5%, 0.55);
        color: var(--fg);
        border-radius: 12px;
        transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
        text-decoration: none;
        cursor: pointer;
      }

      .contact-link.contact-button {
        background: hsla(187, 50%, 64%, 0.12);
        border-color: hsla(187, 50%, 64%, 0.25);
        color: var(--fg);
      }

      .contact-link:hover {
        transform: translateY(-2px);
        border-color: hsla(303, 100%, 59%, 0.42);
        box-shadow: 0 0 1.1rem hsla(303, 100%, 59%, 0.24);
      }

      .contact-link span:first-child {
        font-size: 1.2rem;
      }

      .zerg-frame {
        width: 100%;
        height: 100%;
        border-radius: 12px;
        overflow: hidden;
      }

      .zerg-frame iframe {
        width: 100%;
        height: 100%;
        border: 0;
        background: hsla(0, 0%, 0%, 0.8);
      }

      .welcome-body {
        flex: 1;
        display: flex;
        align-items: center;
        justify-content: center;
      }

      .welcome-content {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        text-align: center;
        color: var(--fg-soft);
        max-width: 380px;
        margin: 0 auto;
      }

      .welcome-content h2 {
        font-family: var(--display);
        letter-spacing: 0.18em;
        text-transform: uppercase;
        font-size: 1rem;
        color: var(--accent);
      }

      .welcome-gif {
        width: 220px;
        max-width: 100%;
        border-radius: 16px;
        box-shadow: 0 0 2rem hsla(187, 50%, 64%, 0.18);
      }

      .welcome-actions button {
        border: 1px solid hsla(187, 50%, 64%, 0.32);
        background: hsla(187, 50%, 64%, 0.2);
        color: var(--fg);
        padding: 0.55rem 1.6rem;
        border-radius: 12px;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        font-size: 0.78rem;
        cursor: pointer;
        transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
      }

      .welcome-actions button:hover {
        transform: translateY(-2px);
        box-shadow: 0 0 1rem hsla(187, 50%, 64%, 0.32);
        border-color: hsla(303, 100%, 59%, 0.42);
      }

      .terminal-output {
        min-height: 220px;
        max-height: 280px;
        overflow-y: auto;
        font-size: 0.92rem;
        line-height: 1.4;
        color: var(--fg-soft);
        padding: 0.75rem 1rem;
        background: hsla(216, 100%, 4%, 0.6);
        border-radius: 14px;
        border: 1px solid hsla(187, 50%, 64%, 0.12);
        box-shadow: inset 0 0 20px hsla(0, 0%, 0%, 0.6);
      }

      @keyframes terminal-line-anim {
        from {
          opacity: 0;
          transform: translateY(8px);
        }
        to {
          opacity: 1;
          transform: translateY(0);
        }
      }

      .terminal-line {
        display: block;
        margin-bottom: 0.2em;
        white-space: pre-wrap;
        animation: terminal-line-anim 0.15s ease-out;
      }

      /* Terminal Text Coloring */
      .terminal-prompt {
        color: var(--accent);
      }
      
      .terminal-command {
        color: var(--fg);
      }
      
      .terminal-tag {
        color: var(--accent-3);
        font-weight: 600;
      }
      
      .terminal-success {
        color: var(--acid-lime);
      }
      
      .terminal-error {
        color: var(--accent-3);
      }
      
      .terminal-number {
        color: var(--neon-cyan);
      }
      
      .terminal-highlight {
        color: var(--accent-2);
      }
      
      .terminal-string {
        color: var(--neon-cyan);
      }

      .window[data-window="terminal"] section {
        flex: 1;
        height: 100%;
        position: relative;
      }

      .window[data-window="terminal"] section::after {
        content: '';
        position: absolute;
        inset: 0;
        background: linear-gradient(transparent 50%, rgba(79, 195, 247, 0.03) 50%);
        background-size: 100% 4px;
        pointer-events: none;
        animation: scanlines 0.1s linear infinite;
      }

      @keyframes scanlines {
        0% { transform: translateY(0); }
        100% { transform: translateY(4px); }
      }

      .window[data-window="terminal"] .terminal-output {
        flex: 1;
        max-height: none;
        min-height: 220px;
      }

      .terminal-line span {
        color: var(--accent);
      }

      .terminal-input {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        font-size: 0.92rem;
      }

      .terminal-input label {
        color: var(--accent);
      }

      .terminal-input input {
        flex: 1;
        background: rgba(5, 10, 14, 0.75);
        border: 1px solid rgba(79, 195, 247, 0.2);
        border-radius: 12px;
        padding: 0.65rem 1rem;
        color: var(--fg);
        font-family: var(--mono);
        letter-spacing: 0.08em;
      }

      .terminal-input input:focus-visible {
        outline: none;
        border-color: rgba(255, 0, 168, 0.6);
        box-shadow: 0 0 0 1px rgba(255, 0, 168, 0.4), 0 0 20px rgba(255, 0, 168, 0.3);
      }

      .intel {
        display: grid;
        gap: 0.9rem;
      }

      .intel-item {
        display: flex;
        justify-content: space-between;
        padding: 0.75rem 1rem;
        border: 1px solid hsla(187, 50%, 64%, 0.1);
        border-radius: 12px;
        background: hsla(220, 100%, 5%, 0.6);
        color: var(--fg-soft);
      }

      .intel-item span:last-child {
        color: var(--accent);
      }

      .logs {
        display: grid;
        gap: 0.75rem;
      }

      .log-entry {
        background: hsla(219, 100%, 5%, 0.72);
        border-radius: 12px;
        padding: 1rem 1.15rem;
        border: 1px solid hsla(187, 50%, 64%, 0.1);
        font-size: 0.9rem;
        color: var(--fg-soft);
      }

      .log-entry strong {
        color: var(--accent-3);
        text-transform: uppercase;
        letter-spacing: 0.12em;
        display: block;
        margin-bottom: 0.4rem;
      }

      .taskbar {
        display: grid;
        grid-template-columns: auto 1fr auto auto;
        align-items: center;
        gap: 1rem;
        padding: 0.6rem 1rem;
        border-top: 2px solid rgba(79, 195, 247, 0.6);
        background: linear-gradient(135deg, 
          rgba(79, 195, 247, 0.15), 
          rgba(79, 195, 247, 0.2), 
          rgba(79, 195, 247, 0.18)
        );
        backdrop-filter: blur(12px) saturate(180%);
        box-shadow: 
          inset 0 1px 0 rgba(79, 195, 247, 0.4),
          0 0 20px rgba(79, 195, 247, 0.3),
          0 -4px 30px rgba(79, 195, 247, 0.2),
          0 0 60px rgba(79, 195, 247, 0.15);
        position: relative;
        animation: taskbar-glow 3s ease-in-out infinite;
      }

      @keyframes taskbar-glow {
        0%, 100% {
          box-shadow: 
            inset 0 1px 0 rgba(79, 195, 247, 0.4),
            0 0 20px rgba(79, 195, 247, 0.3),
            0 -4px 30px rgba(79, 195, 247, 0.2),
            0 0 60px rgba(79, 195, 247, 0.15);
        }
        50% {
          box-shadow: 
            inset 0 1px 0 rgba(79, 195, 247, 0.5),
            0 0 30px rgba(79, 195, 247, 0.5),
            0 -4px 40px rgba(79, 195, 247, 0.35),
            0 0 80px rgba(79, 195, 247, 0.25);
        }
      }

      .taskbar::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 2px;
        background: linear-gradient(90deg, 
          transparent,
          rgba(79, 195, 247, 0.8),
          rgba(79, 195, 247, 1),
          rgba(79, 195, 247, 0.8),
          transparent
        );
        animation: border-flow 3s ease-in-out infinite;
        filter: blur(1px);
      }

      .taskbar button {
        border: 1px solid rgba(79, 195, 247, 0.6);
        background: linear-gradient(135deg, 
          rgba(79, 195, 247, 0.25), 
          rgba(79, 195, 247, 0.3)
        );
        backdrop-filter: blur(8px);
        box-shadow: 
          inset 0 1px 0 rgba(79, 195, 247, 0.4),
          0 0 15px rgba(79, 195, 247, 0.4),
          0 2px 8px rgba(0, 0, 0, 0.3);
        color: var(--fg);
        text-shadow: 0 0 10px rgba(79, 195, 247, 0.8);
        border-radius: 10px;
        padding: 0.45rem 0.9rem;
        cursor: pointer;
        font-family: var(--mono);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        font-size: 0.75rem;
        transition: all 0.18s ease;
      }

      .taskbar button:hover {
        transform: translateY(-2px);
        box-shadow: 
          inset 0 1px 0 rgba(255, 0, 168, 0.6),
          0 0 25px rgba(255, 0, 168, 0.8),
          0 0 40px rgba(156, 39, 176, 0.4),
          0 4px 12px rgba(0, 0, 0, 0.4);
        border-color: rgba(255, 0, 168, 0.9);
        text-shadow: 0 0 15px rgba(255, 0, 168, 1);
        background: linear-gradient(135deg, 
          rgba(255, 0, 168, 0.25), 
          rgba(156, 39, 176, 0.3)
        );
      }

      .music-player {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        background: hsla(220, 25%, 10%, 0.5);
        border: 1px solid hsla(187, 50%, 64%, 0.2);
        border-radius: 10px;
        padding: 0.3rem 0.6rem;
        min-width: 280px;
      }

      .music-player__display {
        flex: 1;
        background: hsla(220, 30%, 6%, 0.8);
        border: 1px solid hsla(0, 0%, 0%, 0.5);
        border-radius: 4px;
        padding: 0.2rem 0.5rem;
        font-size: 0.7rem;
        letter-spacing: 0.05em;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        color: var(--accent);
        text-shadow: 0 0 5px hsla(187, 50%, 64%, 0.5);
      }

      .music-player__controls button {
        background: none;
        border: none;
        color: var(--fg-soft);
        padding: 0.2rem 0.3rem;
        font-size: 0.75rem;
        cursor: pointer;
        transition: color 0.2s ease, text-shadow 0.2s ease;
      }

      .music-player__controls button:hover {
        color: var(--accent-2);
        text-shadow: 0 0 8px hsla(303, 100%, 59%, 0.7);
      }

      .taskbar-items {
        display: flex;
        gap: 0.5rem;
        flex-wrap: wrap;
      }

      .taskbar-item {
        border: 1px solid hsla(187, 50%, 64%, 0.22);
        border-radius: 10px;
        padding: 0.4rem 0.8rem;
        font-size: 0.74rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--fg-soft);
        cursor: pointer;
        transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
        position: relative;
        overflow: hidden;
      }

      .taskbar-item::before {
        content: '';
        position: absolute;
        inset: 0;
        background: radial-gradient(circle, hsla(187, 50%, 64%, 0.3) 0%, transparent 70%);
        transform: scale(0);
        transition: transform 0.3s ease;
      }

      .taskbar-item.active {
        background: hsla(187, 50%, 64%, 0.12);
        color: var(--fg);
        border-color: hsla(303, 100%, 59%, 0.45);
        box-shadow: 0 0 8px hsla(303, 100%, 59%, 0.3);
      }

      .taskbar-item.open {
        background: hsla(187, 50%, 64%, 0.06);
        color: var(--fg-soft);
        border-color: hsla(187, 50%, 64%, 0.35);
      }

      .taskbar-item.minimized {
        background: hsla(218, 100%, 72%, 0.04);
        color: hsla(208, 100%, 97%, 0.4);
        border-color: hsla(218, 100%, 72%, 0.25);
        font-style: italic;
      }

      .taskbar-item:hover::before {
        transform: scale(1);
      }

      .taskbar-clock {
        font-size: 0.8rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--fg-soft);
      }

      .palette-backdrop {
        position: fixed;
        inset: 0;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        padding-top: 12vh;
        background: hsla(220, 69%, 4%, 0.75);
        backdrop-filter: blur(18px);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.25s ease;
        z-index: 9999;
      }

      .palette-backdrop.active {
        opacity: 1;
        pointer-events: all;
      }

      .palette {
        width: min(90%, 520px);
        background: linear-gradient(145deg, hsla(220, 65%, 7%, 0.9), hsla(214, 62%, 10%, 0.9));
        border-radius: 20px;
        border: 1px solid hsla(187, 50%, 64%, 0.22);
        box-shadow: 0 1.4rem 3.5rem var(--shadow), 0 0 0.8rem hsla(187, 50%, 64%, 0.18);
        overflow: hidden;
        transform: translateY(-12px);
        opacity: 0;
        transition: transform 0.25s ease, opacity 0.25s ease;
      }

      .palette-backdrop.active .palette {
        transform: translateY(0);
        opacity: 1;
      }

      .palette-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 1rem 1.5rem 0.75rem;
        font-family: var(--display);
        letter-spacing: 0.18em;
        text-transform: uppercase;
        font-size: 0.82rem;
        color: var(--fg-soft);
      }

      .palette-header kbd {
        font-family: var(--mono);
        background: hsla(187, 50%, 64%, 0.08);
        border-radius: 8px;
        padding: 0.25rem 0.5rem;
        border: 1px solid hsla(187, 50%, 64%, 0.25);
        color: var(--accent);
      }

      .palette-input {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        padding: 0 1.5rem 1rem;
      }

      .palette-input label {
        color: var(--accent);
      }

      .palette-input input {
        flex: 1;
        background: hsla(216, 100%, 4%, 0.65);
        border: 1px solid hsla(187, 50%, 64%, 0.2);
        border-radius: 12px;
        padding: 0.7rem 1rem;
        color: var(--fg);
        font-family: var(--mono);
        letter-spacing: 0.08em;
      }

      .palette-input input:focus-visible {
        outline: none;
        border-color: hsla(303, 100%, 59%, 0.6);
        box-shadow: 0 0 0 1px hsla(303, 100%, 59%, 0.4);
      }

      .palette-results {
        list-style: none;
        margin: 0;
        padding: 0.8rem 0;
        display: grid;
        gap: 0.25rem;
        max-height: clamp(220px, 35vh, 320px);
        overflow-y: auto;
      }

      .palette-results li {
        padding: 0.75rem 1.5rem;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 0.9rem;
        color: var(--fg-soft);
        cursor: pointer;
        transition: background 0.2s ease, color 0.2s ease;
      }

      .palette-results li.active,
      .palette-results li:hover {
        background: hsla(187, 50%, 64%, 0.12);
        color: var(--fg);
      }

      .palette-results li span {
        font-size: 0.78rem;
        color: hsla(208, 100%, 97%, 0.55);
        letter-spacing: 0.05em;
        text-transform: uppercase;
      }

      .tour-overlay {
        position: absolute;
        inset: 0;
        background: hsla(220, 69%, 4%, 0.65);
        display: none;
        align-items: center;
        justify-content: center;
        z-index: 26;
        pointer-events: none;
      }

      .tour-overlay.active {
        display: flex;
      }

      .tour-card {
        position: absolute;
        min-width: 260px;
        max-width: 320px;
        background: hsla(217, 64%, 7%, 0.95);
        border: 1px solid hsla(187, 50%, 64%, 0.28);
        border-radius: 16px;
        padding: 1.1rem 1.3rem;
        box-shadow: 0 1.4rem 2.8rem var(--shadow), 0 0 1.2rem hsla(187, 50%, 64%, 0.18);
        display: grid;
        gap: 0.8rem;
        pointer-events: auto;
      }

      .tour-card h3 {
        margin: 0;
        font-family: var(--display);
        letter-spacing: 0.18em;
        text-transform: uppercase;
        font-size: 0.9rem;
        color: var(--accent);
      }

      .tour-card p {
        margin: 0;
        color: var(--fg-soft);
        line-height: 1.5;
      }

      .tour-actions {
        display: flex;
        justify-content: flex-end;
        gap: 0.6rem;
      }

      .tour-actions button {
        border: 1px solid hsla(187, 50%, 64%, 0.28);
        background: hsla(187, 50%, 64%, 0.1);
        color: var(--fg);
        border-radius: 8px;
        padding: 0.35rem 0.9rem;
        cursor: pointer;
        font-family: var(--mono);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        font-size: 0.72rem;
        transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
      }

      .tour-actions button:hover {
        transform: translateY(-1px);
        box-shadow: 0 0 0.8rem hsla(187, 50%, 64%, 0.22);
        border-color: hsla(303, 100%, 59%, 0.45);
      }

      .intro-overlay {
        position: fixed;
        inset: 0;
        display: none;
        align-items: center;
        justify-content: center;
        padding: clamp(1.5rem, 4vw, 3rem);
        background: hsla(220, 69%, 4%, 0.88);
        backdrop-filter: blur(20px);
        z-index: 260;
      }

      .intro-overlay.active {
        display: flex;
      }

      .intro-card {
        width: min(420px, 100%);
        display: grid;
        gap: 1.1rem;
        padding: clamp(1.6rem, 4vw, 2.4rem);
        border-radius: 24px;
        border: 1px solid hsla(187, 50%, 64%, 0.24);
        background: linear-gradient(165deg, hsla(217, 64%, 7%, 0.95), hsla(219, 67%, 5%, 0.85));
        box-shadow: 0 2.4rem 4.6rem var(--shadow), 0 0 1.4rem hsla(187, 50%, 64%, 0.22);
        text-align: center;
      }

      .intro-card img {
        width: clamp(240px, 60%, 280px);
        margin: 0 auto;
        border-radius: 20px;
        box-shadow: 0 0 2.4rem hsla(187, 50%, 64%, 0.2);
      }

      .intro-card h2 {
        margin: 0;
        font-family: var(--display);
        letter-spacing: 0.2em;
        text-transform: uppercase;
        font-size: 1rem;
        color: var(--accent);
      }

      .intro-card p {
        margin: 0;
        color: var(--fg-soft);
        line-height: 1.6;
      }

      .intro-actions {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 0.75rem;
      }

      .intro-actions button {
        border: 1px solid hsla(187, 50%, 64%, 0.3);
        background: hsla(187, 50%, 64%, 0.16);
        color: var(--fg);
        font-family: var(--mono);
        text-transform: uppercase;
        letter-spacing: 0.12em;
        font-size: 0.78rem;
        padding: 0.6rem 1.4rem;
        border-radius: 14px;
        cursor: pointer;
        transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
      }

      .intro-actions button.secondary {
        border-color: hsla(303, 100%, 59%, 0.45);
        background: hsla(303, 100%, 59%, 0.16);
      }

      .intro-actions button:hover {
        transform: translateY(-2px);
        box-shadow: 0 0 1.4rem hsla(187, 50%, 64%, 0.28);
        border-color: hsla(303, 100%, 59%, 0.45);
      }

      .tour-highlight {
        position: relative;
        z-index: 25 !important;
        box-shadow: 0 0 0 3px hsla(187, 50%, 64%, 0.6), 0 0 30px hsla(187, 50%, 64%, 0.4);
        border-radius: 16px;
      }

      .neural-overlay {
        position: fixed;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: clamp(2rem, 6vw, 4rem);
        background: hsla(220, 69%, 4%, 0.82);
        backdrop-filter: blur(18px);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.25s ease;
        z-index: 10000;
      }

      .neural-overlay.active {
        opacity: 1;
        pointer-events: all;
      }

      .neural-shell {
        width: min(95%, 960px);
        background: linear-gradient(145deg, hsla(220, 65%, 7%, 0.92), hsla(214, 62%, 10%, 0.9));
        border-radius: 24px;
        border: 1px solid hsla(187, 50%, 64%, 0.24);
        box-shadow: 0 2.2rem 4rem var(--shadow), 0 0 1.1rem hsla(187, 50%, 64%, 0.2);
        display: flex;
        flex-direction: column;
        transform: translateY(14px);
        opacity: 0;
        transition: transform 0.25s ease, opacity 0.25s ease;
        max-height: 85vh;
      }

      .neural-overlay.active .neural-shell {
        transform: translateY(0);
        opacity: 1;
      }

      .neural-shell__header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 1.25rem 1.6rem;
        border-bottom: 1px solid hsla(187, 50%, 64%, 0.14);
        letter-spacing: 0.18em;
        text-transform: uppercase;
        font-family: var(--display);
        color: var(--fg-soft);
      }

      .neural-close {
        border: 1px solid hsla(303, 100%, 59%, 0.45);
        background: hsla(303, 100%, 59%, 0.14);
        color: var(--fg);
        border-radius: 10px;
        padding: 0.45rem 0.9rem;
        cursor: pointer;
        font-family: var(--mono);
        letter-spacing: 0.08em;
        transition: transform 0.2s ease, box-shadow 0.2s ease;
      }

      .neural-close:hover {
        transform: translateY(-1px);
        box-shadow: 0 0 1rem hsla(303, 100%, 59%, 0.4);
      }

      .neural-shell__body {
        display: flex;
        min-height: 0;
      }

      .neural-nav {
        width: 220px;
        padding: 1.5rem 1.6rem;
        border-right: 1px solid hsla(187, 50%, 64%, 0.12);
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
      }

      .neural-nav button {
        border: 1px solid transparent;
        background: hsla(216, 100%, 4%, 0.55);
        color: var(--fg-soft);
        border-radius: 12px;
        padding: 0.65rem 0.9rem;
        text-align: left;
        font-family: var(--mono);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        cursor: pointer;
        transition: border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
      }

      .neural-nav button:hover {
        border-color: hsla(187, 50%, 64%, 0.35);
        color: var(--fg);
        box-shadow: 0 0 0.9rem hsla(187, 50%, 64%, 0.18);
      }

      .neural-nav button.active {
        border-color: hsla(303, 100%, 59%, 0.6);
        color: var(--fg);
        box-shadow: 0 0 1rem hsla(303, 100%, 59%, 0.22);
      }

      .neural-content {
        flex: 1;
        padding: 1.6rem 2rem;
        display: grid;
        gap: 1.6rem;
        max-height: clamp(320px, 65vh, 600px);
        overflow-y: auto;
      }

      .neural-section {
        display: grid;
        gap: 1rem;
      }

      .neural-section h3 {
        margin: 0;
        font-family: var(--display);
        letter-spacing: 0.24em;
        text-transform: uppercase;
        font-size: 1.05rem;
        color: var(--accent);
      }

      .neural-section p {
        margin: 0;
        color: var(--fg-soft);
        line-height: 1.6;
      }

      .neural-grid {
        display: grid;
        gap: 1.2rem;
      }

      .neural-card {
        background: hsla(220, 100%, 5%, 0.75);
        border-radius: 18px;
        border: 1px solid hsla(187, 50%, 64%, 0.18);
        padding: 1.2rem 1.4rem;
        display: grid;
        gap: 0.8rem;
        box-shadow: inset 0 0 0.8rem hsla(0, 0%, 0%, 0.4);
      }

      .neural-card h4 {
        margin: 0;
        font-size: 0.98rem;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--accent-3);
      }

      .neural-list {
        margin: 0;
        padding-left: 1.1rem;
        display: grid;
        gap: 0.45rem;
        color: var(--fg-soft);
      }

      .neural-badges {
        display: flex;
        flex-wrap: wrap;
        gap: 0.55rem;
      }

      .neural-badge {
        border: 1px solid hsla(187, 50%, 64%, 0.35);
        color: var(--accent);
        padding: 0.35rem 0.65rem;
        border-radius: 999px;
        font-size: 0.75rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .neural-stats {
        display: grid;
        gap: 0.8rem;
      }

      .neural-stat {
        display: grid;
        gap: 0.2rem;
        color: var(--fg-soft);
      }

      .neural-stat strong {
        font-size: 1.55rem;
        color: var(--accent);
        letter-spacing: 0.12em;
      }

      .neural-tag {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        padding: 0.25rem 0.55rem;
        border-radius: 999px;
        border: 1px solid hsla(303, 100%, 59%, 0.35);
        color: hsla(303, 100%, 59%, 0.75);
        font-size: 0.72rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .neural-meta {
        display: grid;
        gap: 0.35rem;
        color: var(--fg);
        font-size: 0.92rem;
      }

      .neural-meta span {
        color: var(--fg-soft);
        font-size: 0.8rem;
        letter-spacing: 0.05em;
      }

      .neural-contact {
        display: grid;
        gap: 0.45rem;
        color: var(--fg-soft);
      }

      .neural-contact a {
        color: var(--accent-3);
        text-decoration: none;
      }

      .career-timeline {
        margin-top: 2rem;
        border: 1px solid rgba(79, 195, 247, 0.3);
        border-radius: 18px;
        padding: 1.2rem;
        background: rgba(5, 10, 14, 0.8);
        box-shadow: inset 0 0 20px rgba(0, 0, 0, 0.35);
        display: grid;
        gap: 1.2rem;
        color: var(--fg);
        width: 100%;
      }

      .career-timeline .header {
        text-align: center;
        display: grid;
        gap: 0.4rem;
      }

      .career-timeline .header h1 {
        margin: 0;
        font-size: 1rem;
        letter-spacing: 0.3em;
        text-transform: uppercase;
        color: var(--accent);
      }

      .career-timeline .header p {
        margin: 0 auto;
        font-size: 0.8rem;
        color: var(--fg-soft);
        max-width: 420px;
      }

      .career-timeline .timeline {
        display: grid;
        gap: 0.8rem;
      }

      .career-timeline .carousel {
        width: 100%;
      }

      .career-timeline .carousel-main .carousel-cell {
        width: min(520px, 80%);
        margin-right: 14px;
        border: 1px solid rgba(79, 195, 247, 0.25);
        border-radius: 16px;
        padding: 0.8rem;
        background: rgba(13, 27, 42, 0.8);
        display: grid;
        gap: 0.4rem;
        text-align: center;
        min-height: clamp(260px, 32vh, 360px);
        place-items: center;
        position: relative;
        overflow: hidden;
        z-index: 0;
      }

      .career-timeline time {
        font-size: 0.75rem;
        text-transform: uppercase;
        letter-spacing: 0.18em;
        color: var(--accent-3);
      }

      .career-timeline time span {
        display: block;
        font-size: 1.1rem;
        color: var(--accent);
      }

      .career-timeline .role,
      .career-timeline .company {
        margin: 0;
        font-size: 0.75rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: var(--fg);
      }

      .career-timeline .company {
        font-size: 0.72rem;
        color: var(--fg-soft);
      }

      .career-timeline .details {
        margin: 0;
        padding-left: 1.1rem;
        text-align: left;
        display: grid;
        gap: 0.3rem;
        font-size: 0.72rem;
        color: var(--fg-soft);
      }

      @media (max-width: 720px) {
        .career-timeline .carousel-main .carousel-cell {
          width: 90%;
          max-width: 90%;
          margin-right: 0;
        }
      }

      .career-timeline .carousel-main .carousel-cell::before {
        content: "";
        position: absolute;
        inset: 0.6rem;
        background-image: var(--logo, none);
        background-position: center;
        background-repeat: no-repeat;
        background-size: 65%;
        opacity: 0.15;
        filter: grayscale(1);
        mix-blend-mode: screen;
        pointer-events: none;
      }

      .career-timeline .flickity-button {
        background: rgba(79, 195, 247, 0.1);
        border-radius: 10px;
        border: 1px solid rgba(79, 195, 247, 0.3);
      }

      .career-timeline .flickity-button-icon {
        fill: var(--accent);
      }

      .career-timeline .flickity-button:hover {
        background: rgba(79, 195, 247, 0.2);
      }

      .career-timeline .flickity-page-dots .dot {
        background: rgba(79, 195, 247, 0.5);
      }

      @media (max-width: 1024px) {
        .mobile-notice {
          display: inline-flex;
        }
      }

      @media (max-width: 1050px) {
        body {
          place-items: stretch;
          padding: 1.4rem;
        }

        .desktop-shell {
          margin: auto;
        }
      }

      @media (max-width: 780px) {
        .desktop-banner {
          display: none;
        }

        .desktop-icons {
          position: relative;
          left: 0;
          top: 0;
          bottom: auto;
          transform: none;
          display: grid;
          grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
          max-width: none;
          gap: 1rem;
          padding: 1.5rem;
          align-content: stretch;
        }

        .desktop-tile {
          width: 100%;
          height: auto;
          min-height: 7.6rem;
          flex: initial;
        }

        .desktop-widget {
          position: relative;
          left: 0;
          top: auto;
          width: auto;
          max-width: 15.5rem;
          margin: 0 1.5rem 1.5rem;
        }

        .desktop-grid {
          padding: 1.5rem;
          grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
        }

        .window {
          position: relative;
          width: auto !important;
          left: 0 !important;
          top: 0 !important;
          margin-bottom: 1rem;
        }

        .desktop-main {
          padding-top: 7rem;
          overflow-y: auto;
        }

        .palette-backdrop,
        .neural-overlay {
          position: fixed;
        }
      }

      @media (max-width: 1500px), (max-height: 900px) {
        .desktop-main {
          padding: 1.85rem 2rem 3.6rem 8.2rem;
        }

        .desktop-icons {
          gap: 0.85rem;
          max-width: calc((6rem * 3) + (0.85rem * 2));
        }

        .desktop-tile {
          width: 6rem;
          height: 6rem;
          padding: 0.5rem;
        }

        .tile-symbol {
          font-size: 1.16rem;
        }

        .tile-title {
          font-size: 0.7rem;
        }

        .desktop-widget {
          width: 13rem;
          padding: 0.82rem 1rem;
          top: 20%;
               }

        .desktop-banner {
          max-width: clamp(340px, 46vw, 520px);
        }
      }

      @media (max-width: 1350px), (max-height: 840px) {
        .desktop-main {
          padding: 1.6rem 1.75rem 3.2rem 7rem;
        }

        .desktop-icons {
          gap: 0.75rem;
          max-width: calc((5.6rem * 3) + (0.75rem * 2));
        }

        .desktop-tile {
          width: 5.6rem;
          height: 5.6rem;
          padding: 0.44rem;
        }

        .tile-title {
          font-size: 0.66rem;
        }

        .desktop-widget {
          width: 12.2rem;
          padding: 0.74rem 0.94rem;
          top: 20%;
        }

        .desktop-banner h1 {
          font-size: clamp(1.9rem, 3.2vw, 2.2rem);
        }

        .desktop-banner p {
          font-size: 0.88rem;
        }
      }

      @media (max-width: 1280px), (max-height: 800px) {
        .desktop-main {
          padding: 1.4rem 1.6rem 3rem 6.2rem;
        }

        .desktop-icons {
          gap: 0.68rem;
          max-width: calc((5.2rem * 3) + (0.68rem * 2));
        }

        .desktop-tile {
          width: 5.2rem;
          height: 5.2rem;
          padding: 0.4rem;
        }

        .tile-symbol {
          font-size: 1.04rem;
        }

        .tile-title {
          font-size: 0.62rem;
        }

        .tile-desc {
          font-size: 0.52rem;
        }

        .desktop-widget {
          width: 11.5rem;
          padding: 0.68rem 0.88rem;
          top: 20%;
        }

        .desktop-banner {
          max-width: clamp(280px, 42vw, 420px);
        }

        .desktop-banner p {
          font-size: 0.8rem;
        }
      }

      @media (max-height: 820px) {
        .desktop-main {
          overflow-y: auto;
          padding-bottom: 6rem;
        }

        .desktop-shell {
          height: auto;
          min-height: 820px;
        }
      }

      .neural-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 1rem 1.5rem;
        border-bottom: 1px solid hsla(187, 50%, 64%, 0.15);
        background: hsla(220, 25%, 10%, 0.5);
      }

      .neural-title {
        font-family: var(--display);
        font-size: 1.1rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        text-shadow: 0 0 8px hsla(187, 50%, 64%, 0.7);
      }

      .neural-header-actions {
        display: flex;
        align-items: center;
        gap: 0.5rem;
      }

      .neural-action-btn,
      .neural-close-btn {
        background: none;
        border: 1px solid transparent;
        color: var(--fg-soft);
        font-size: 1.5rem;
        line-height: 1;
        padding: 0.2rem 0.5rem;
        border-radius: 6px;
        cursor: pointer;
        transition: all 0.2s ease;
      }

      .neural-action-btn {
        font-size: 1rem;
        padding: 0.4rem 0.6rem;
      }

      .neural-action-btn:hover,
      .neural-close-btn:hover {
        color: var(--accent);
        background: hsla(187, 50%, 64%, 0.1);
        border-color: hsla(187, 50%, 64%, 0.3);
        text-shadow: 0 0 8px hsla(187, 50%, 64%, 0.7);
      }

      .neural-body {
        display: flex;
        height: calc(100% - 60px);
      }

      .neural-nav {
        width: 220px;
        padding: 1.5rem 1.6rem;
        border-right: 1px solid hsla(187, 50%, 64%, 0.12);
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
      }

      .neural-nav button {
        border: 1px solid transparent;
        background: hsla(216, 100%, 4%, 0.55);
        color: var(--fg-soft);
        border-radius: 12px;
        padding: 0.65rem 0.9rem;
        text-align: left;
        font-family: var(--mono);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        cursor: pointer;
        transition: border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
      }

      .neural-nav button:hover {
        border-color: hsla(187, 50%, 64%, 0.35);
        color: var(--fg);
        box-shadow: 0 0 0.9rem hsla(187, 50%, 64%, 0.18);
      }

      .neural-nav button.active {
        border-color: hsla(303, 100%, 59%, 0.6);
        color: var(--fg);
        box-shadow: 0 0 1rem hsla(303, 100%, 59%, 0.22);
      }

      .neural-content {
        flex: 1;
        padding: 1.6rem 2rem;
        display: grid;
        gap: 1.6rem;
        max-height: clamp(320px, 65vh, 600px);
        overflow-y: auto;
      }

      .neural-section {
        display: grid;
        gap: 1rem;
      }

      .neural-section h3 {
        margin: 0;
        font-family: var(--display);
        letter-spacing: 0.24em;
        text-transform: uppercase;
        font-size: 1.05rem;
        color: var(--accent);
      }

      .neural-section p {
        margin: 0;
        color: var(--fg-soft);
        line-height: 1.6;
      }

      .neural-grid {
        display: grid;
        gap: 1.2rem;
      }

      .neural-card {
        background: hsla(220, 100%, 5%, 0.75);
        border-radius: 18px;
        border: 1px solid hsla(187, 50%, 64%, 0.18);
        padding: 1.2rem 1.4rem;
        display: grid;
        gap: 0.8rem;
        box-shadow: inset 0 0 0.8rem hsla(0, 0%, 0%, 0.4);
      }

      .neural-card h4 {
        margin: 0;
        font-size: 0.98rem;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--accent-3);
      }

      .neural-list {
        margin: 0;
        padding-left: 1.1rem;
        display: grid;
        gap: 0.45rem;
        color: var(--fg-soft);
      }

      .neural-badges {
        display: flex;
        flex-wrap: wrap;
        gap: 0.55rem;
      }

      .neural-badge {
        border: 1px solid hsla(187, 50%, 64%, 0.35);
        color: var(--accent);
        padding: 0.35rem 0.65rem;
        border-radius: 999px;
        font-size: 0.75rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .neural-stats {
        display: grid;
        gap: 0.8rem;
      }

      .neural-stat {
        display: grid;
        gap: 0.2rem;
        color: var(--fg-soft);
      }

      .neural-stat strong {
        font-size: 1.55rem;
        color: var(--accent);
        letter-spacing: 0.12em;
      }

      .neural-tag {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        padding: 0.25rem 0.55rem;
        border-radius: 999px;
        border: 1px solid hsla(303, 100%, 59%, 0.35);
        color: hsla(303, 100%, 59%, 0.75);
        font-size: 0.72rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .neural-meta {
        display: grid;
        gap: 0.35rem;
        color: var(--fg);
        font-size: 0.92rem;
      }

      .neural-meta span {
        color: var(--fg-soft);
        font-size: 0.8rem;
        letter-spacing: 0.05em;
      }

      .neural-contact {
        display: grid;
        gap: 0.45rem;
        color: var(--fg-soft);
      }

      .neural-contact a {
        color: var(--accent-3);
        text-decoration: none;
      }

      @media (max-width: 1024px) {
        .mobile-notice {
          display: inline-flex;
        }
      }

      @media (max-width: 1050px) {
        body {
          place-items: stretch;
          padding: 1.4rem;
        }

        .desktop-shell {
          margin: auto;
        }
      }

      @media (max-width: 780px) {
        .desktop-banner {
          display: none;
        }

        .desktop-icons {
          position: relative;
          left: 0;
          top: 0;
          bottom: auto;
          transform: none;
          display: grid;
          grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
          max-width: none;
          gap: 1rem;
          padding: 1.5rem;
          align-content: stretch;
        }

        .desktop-tile {
          width: 100%;
          height: auto;
          min-height: 7.6rem;
          flex: initial;
        }

        .desktop-widget {
          position: relative;
          left: 0;
          top: auto;
          width: auto;
          max-width: 15.5rem;
          margin: 0 1.5rem 1.5rem;
        }

        .desktop-grid {
          padding: 1.5rem;
          grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
        }

        .window {
          position: relative;
          width: auto !important;
          left: 0 !important;
          top: 0 !important;
          margin-bottom: 1rem;
        }

        .desktop-main {
          padding-top: 7rem;
          overflow-y: auto;
        }

        .palette-backdrop,
        .neural-overlay {
          position: fixed;
        }
      }

      @media (max-width: 1500px), (max-height: 900px) {
        .desktop-main {
          padding: 1.85rem 2rem 3.6rem 8.2rem;
        }

        .desktop-icons {
          gap: 0.85rem;
          max-width: calc((6rem * 3) + (0.85rem * 2));
        }

        .desktop-tile {
          width: 6rem;
          height: 6rem;
          padding: 0.5rem;
        }

        .tile-symbol {
          font-size: 1.16rem;
        }

        .tile-title {
          font-size: 0.7rem;
        }

        .desktop-widget {
          width: 13rem;
          padding: 0.82rem 1rem;
          top: 20%;
               }

        .desktop-banner {
          max-width: clamp(340px, 46vw, 520px);
        }
      }

      @media (max-width: 1350px), (max-height: 840px) {
        .desktop-main {
          padding: 1.6rem 1.75rem 3.2rem 7rem;
        }

        .desktop-icons {
          gap: 0.75rem;
          max-width: calc((5.6rem * 3) + (0.75rem * 2));
        }

        .desktop-tile {
          width: 5.6rem;
          height: 5.6rem;
          padding: 0.44rem;
        }

        .tile-title {
          font-size: 0.66rem;
        }

        .desktop-widget {
          width: 12.2rem;
          padding: 0.74rem 0.94rem;
          top: 20%;
        }

        .desktop-banner h1 {
          font-size: clamp(1.9rem, 3.2vw, 2.2rem);
        }

        .desktop-banner p {
          font-size: 0.88rem;
        }
      }

      @media (max-width: 1280px), (max-height: 800px) {
        .desktop-main {
          padding: 1.4rem 1.6rem 3rem 6.2rem;
        }

        .desktop-icons {
          gap: 0.68rem;
          max-width: calc((5.2rem * 3) + (0.68rem * 2));
        }

        .desktop-tile {
          width: 5.2rem;
          height: 5.2rem;
          padding: 0.4rem;
        }

        .tile-symbol {
          font-size: 1.04rem;
        }

        .tile-title {
          font-size: 0.62rem;
        }

        .tile-desc {
          font-size: 0.52rem;
        }

        .desktop-widget {
          width: 11.5rem;
          padding: 0.68rem 0.88rem;
          top: 20%;
        }

        .desktop-banner {
          max-width: clamp(280px, 42vw, 420px);
        }

        .desktop-banner p {
          font-size: 0.8rem;
        }
      }

      @media (max-height: 820px) {
        .desktop-main {
          overflow-y: auto;
          padding-bottom: 6rem;
        }

        .desktop-shell {
          height: auto;
          min-height: 820px;
        }
      }

/* Resume layout */
body.resume {
        margin: 0;
        font-family: var(--mono);
        color: var(--fg);
        background: radial-gradient(circle at 20% -10%, hsla(var(--accent-hue), 100%, 50%, 0.25), transparent 55%),
          radial-gradient(circle at 85% 120%, hsla(var(--accent-2-hue), 100%, 59%, 0.18), transparent 60%), var(--bg);
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: clamp(1.5rem, 5vw, 3rem);
        gap: 1.5rem;
        -webkit-font-smoothing: antialiased;
      }

      /* Resume-only banner that holds the print/export hint and button */
      

      body.resume .no-print {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        flex-wrap: wrap;
        width: 100%; 
        max-width: 1280px;
        border: 1px solid hsla(var(--accent-hue), 100%, 50%, 0.3);
        border-radius: 18px;
        background: rgba(5, 10, 14, 0.9);
                border: 1px solid hsla(var(--accent-hue), 100%, 50%, .2);

        padding: 1rem 1.4rem;
        color: var(--fg-soft);
        letter-spacing: 0.08em;
        text-transform: uppercase;
                box-shadow: 
          0 0 15px hsla(var(--accent-hue), 100%, 50%, 0.5),
          inset 0 1px 0 hsla(var(--accent-hue), 100%, 80%, 0.3);
      }

      /* Text span inside  -print banner */
      

      body.resume .no-print span {
        flex: 1 1 260px;
        min-width: 0;
      }

      /* Print/export button within the .no-print utility bar */
      

      body.resume .no-print button {
        border: 1px solid hsla(var(--accent-hue), 100%, 50%, 0.6);
        background: hsla(var(--accent-hue), 100%, 50%, 0.25);
        box-shadow: 
          0 0 15px hsla(var(--accent-hue), 100%, 50%, 0.5),
          inset 0 1px 0 hsla(var(--accent-hue), 100%, 80%, 0.3);
        color: var(--bg);
        font-weight: 600;
        font-family: var(--mono);
        text-transform: uppercase;
        letter-spacing: 0.12em;
        font-size: 0.75rem;
        padding: 0.6rem 1.2rem;
        border-radius: 12px;
        cursor: pointer;
        transition: all 0.18s ease;
        flex: 0 0 auto;
      }

      /* Hover affordance for the .no-print button */
      

      body.resume .no-print button:hover {
        transform: translateY(-2px);
        background: hsla(var(--accent-hue), 100%, 50%, 0.4);
        box-shadow: 
          0 0 25px hsla(var(--accent-hue), 100%, 50%, 0.7),
          0 0 40px hsla(var(--accent-hue), 100%, 50%, 0.4),
          inset 0 1px 0 hsla(var(--accent-hue), 100%, 90%, 0.4);
        border-color: hsla(var(--accent-hue), 100%, 50%, 0.9);
      }

      /* Resume main container (wraps header, experience, skills sections) */
      

      body.resume main {
        width: 100%;
        max-width: 1200px;
        background: linear-gradient(170deg, rgba(13, 27, 42, 0.94), rgba(13, 27, 42, 0.86));
        border-radius: 18px;
        border: 1px solid hsla(var(--accent-hue), 100%, 50%, 0.18);
        box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35), 0 0 0.8rem hsla(var(--accent-hue), 100%, 50%, 0.12);
        padding: clamp(1rem, 2vw, 1.5rem) clamp(1rem, 2vw, 1.5rem);
        display: grid;
        gap: clamp(0.8rem, 2vw, 1.2rem);
        position: relative;
        isolation: isolate;
      }

      /* Glow layer behind main container */
      

      body.resume main::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: radial-gradient(circle at 10% 15%, hsla(var(--accent-hue), 100%, 50%, 0.12), transparent 65%),
          radial-gradient(circle at 80% 20%, hsla(var(--accent-2-hue), 100%, 59%, 0.12), transparent 60%);
        z-index: -1;
      }

      /* Desktop-like window chrome around entire resume body */
      

      body.resume header {
        display: grid;
        gap: 0.7rem;
        background: rgba(13, 27, 42, 0.7);
        border-radius: 16px;
        box-shadow: 0 4px 24px rgba(13, 27, 42, 0.18);
      }

      /* Hero section wrapper containing portrait + dossier text */
      

      body.resume .identity {
        display: grid;
        grid-template-columns: clamp(150px, 22vw, 260px) minmax(0, 1fr);
        column-gap: var(--identity-column-gap);
        row-gap: clamp(1rem, 2vw, 1.6rem);
        align-items: center;
        background: rgba(13, 27, 42, 0.5);
        border-radius: 18px;
        padding: clamp(1.2rem, 2.5vw, 2rem);
        position: relative;
        overflow: hidden;
      }

      /* Container that builds the teal “pylon” beside the portrait */
      

      body.resume .identity__photo-pylon {
        position: relative;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        padding-left: clamp(1.2rem, 2vw, 1.8rem);
      }

      /* Outer teal rail for the portrait column */
      

      body.resume .identity__photo-pylon::before {
        content: "";
        position: absolute;
        left: 0;
        top: clamp(0.5rem, 1.5vw, 1.5rem);
        bottom: clamp(0.5rem, 1.5vw, 1.5rem);
        width: clamp(260px, 30vw, 440px);
                        border: 1px solid hsla(var(--accent-hue), 100%, 50%, 0.2);

        border-radius: 16px;
        background: hsla(var(--accent-hue), 100%, 50%, .2);  
        box-shadow:
          0 0 30px rgba(0, 255, 224, 0.35),
          inset 0 0 8px rgba(0, 0, 0, 0.35);
        z-index: 0;
      }

      /* Inner cut-out portion inside the pylon */
      

      body.resume .identity__photo-pylon::after {
        content: "";
        position: absolute;
        left: clamp(9px, 1.8vw, 20px);
        top: clamp(1.6rem, 4vw, 2.5rem);
        bottom: clamp(1.6rem, 4vw, 2.5rem);
        width: clamp(260px, 30vw, 440px);
        border-radius: 8px;
        background: rgba(5, 10, 14, 0.95);
        box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.65);
        z-index: 0;
      }

      /* Actual portrait frame */
      

      body.resume .identity__visual {
        width: clamp(160px, 20vw, 240px);
        aspect-ratio: 3 / 4;
        border-radius: 24px;
        border: 1px solid hsla(var(--accent-hue), 100%, 65%, 0.35);
        overflow: hidden;
                        border: 1px solid hsla(var(--accent-hue), 100%, 50%, .2);

        box-shadow:
          0 25px 40px rgba(0, 0, 0, 0.45),
          0 0 40px hsla(var(--accent-hue), 100%, 55%, 0.32);
        background: rgba(13, 27, 42, 0.7);
        z-index: 1;
      }

      /* Portrait image styling */
      

      body.resume .identity__visual img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        filter: saturate(1.08) contrast(1.05);
      }

      /* Right-hand column that holds hero copy */
      

      body.resume .identity__content {
        display: grid;
        gap: var(--identity-stack-gap);
        padding-left: 0;
        align-content: start;
        border-radius: 18px;
        min-width: 0;
        z-index: 3;
        box-shadow:
          0 0 30px rgba(5, 10, 14, 0.35),
          inset 0 0 8px rgba(255, 0, 168, 0.15);

      }

      /* “LLAN-OS OPERATIVE DOSSIER” label styling */
      

      body.resume .identity__label {
        font-size: 0.72rem;
        text-transform: uppercase;
        color: rgba(245, 8, 162, 0.9);
      }

      /* Hero name typography */
      

      body.resume .identity__name {
        margin: 0;
        font-family: var(--display);
        text-transform: uppercase;
        font-size: clamp(4rem, 2vw, 1rem);
        letter-spacing: .1em;
        color: var(--fg);
        text-shadow: 0 0 1.4rem hsla(var(--accent-hue), 100%, 50%, 0.4);
      }

      /* Hero subtitle typography */
      

      body.resume .identity__title {
        margin: 0;
        font-size: clamp(1rem, 3.5vw, 1.2rem);
        letter-spacing: 0.18em;
        text-transform: uppercase;
    color: var(--accent);
        text-shadow: 0 0 8px rgba(87, 176, 218, 0.3);
      }

      /* Neon divider lines between hero rows */
      

      body.resume .identity__divider {
        display: block;
        height: 1px;
        width: 100%;
        background: linear-gradient(90deg, transparent, rgba(79, 195, 247, 0.45), transparent);
        margin: 0;
      }

      /* Ensure the name/title separator has equal padding above and below */
      

      body.resume .identity__divider:not(.identity__divider--soft) {
        margin: calc(var(--identity-stack-gap) / 3) 0;
      }

      /* Softer divider for muted separation */
      

      body.resume .identity__divider--soft {
        opacity: 0.5;
        background: linear-gradient(90deg, transparent, rgba(79, 195, 247, 0.18), transparent);
      }

      /* Summary paragraph text */
      

      body.resume .identity__summary {
        margin: 0;
        color: var(--fg-soft);
        font-size: 0.95rem;
        text-transform: none;
        line-height: 1.6;
      }

      /* Italic note referencing Projects link */
      

      body.resume .identity__note {
        margin: calc(var(--identity-column-gap) - (2 * var(--identity-stack-gap))) 0 0;
        color: var(--fg-muted);
        font-size: 0.78rem;
        line-height: 1.4;
        font-style: italic;
      }

      /* Accent color inside the note */
      

      body.resume .identity__note strong {
        color: var(--accent-3);
        font-style: normal;
      }

      /* Ensures contact row spans both columns */
      

      body.resume .contact {
        grid-column: 1 / -1;
        align-items: center;
        justify-content: center;
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
      }

      /* Grid for the rounded contact pills under the hero */
      

      body.resume .contact--pills {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        background: transparent;
        justify-content: center;
        border-radius: 0;
        padding: 0;
        align-items: center;
        width: 100%;
      }

      /* Individual contact pill (email, phone, etc.) */
      

      body.resume .contact__row {
        display: flex;
        align-items: center;
        letter-spacing: 0.10em;
        text-transform: uppercase;
        font-size: 11pt;
        border-radius: 999px;
        padding: 0.55rem 1rem;
                border: 1px solid hsla(var(--accent-hue), 100%, 50%, .2);
        background: hsla(var(--accent-hue), 100%, 50%, 0.16);
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
        width: auto;
        flex: 0 0 auto;
        min-width: 0;
        white-space: normal;
        justify-content: center;
      }

      /* Emoji/emoji-like icon bubble inside contact pill */
      

      body.resume .contact__row span {
        display: inline-flex;
        width: 34px;
        height: 34px;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        background: radial-gradient(circle, rgba(79, 195, 247, 0.3), rgba(0, 0, 0, 0.2));
        color: var(--accent);
        font-size: 0.9rem;
        flex-shrink: 0;
      }

      /* Icon image inside each contact pill */
      

      body.resume .contact__row span img {
        width: 60%;
        height: 60%;
        object-fit: contain;
        filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
      }

      /* Hyperlinks inside the contact pill copy */
      

      body.resume .contact__row a {
        color: var(--fg);
        text-decoration: none;
        white-space: nowrap;
        word-break: break-word;
      }

      /* “Signal metrics” cards right below hero */
      

      body.resume .metrics {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
        gap: 0.5rem;
      }

      /* Individual metric panel */
      

      body.resume .metric {
        border: 1px solid hsla(var(--accent-hue), 100%, 50%, 0.18);
        border-radius: 14px;
        padding: 0.6rem 0.7rem;
        background: rgba(5, 10, 14, 0.62);
        display: grid;
        gap: 0.2rem;
      }

      /* Primary metric numbers */
      

      body.resume .metric strong {
        font-family: var(--display);
        font-size: 1.9rem;
        letter-spacing: 0.18em;
        color: var(--accent);
      }

      /* Supporting copy under each metric */
      

      body.resume .metric span {
        color: var(--fg-soft);
        font-size: 0.85rem;
        line-height: 1.4;
      }

      /* Shared styling for section headings (Experience, Skills, etc.) */
      

      body.resume section h2 {
        margin: 1.2rem auto 0.8rem;
        font-family: var(--display);
        letter-spacing: 0.3em;
        text-transform: uppercase;
        font-size: clamp(1.4rem, 3vw, 1.8rem);
        color: var(--fg);
        text-align: center;
        position: relative;
        text-shadow: 0 0 1.2rem hsla(var(--accent-hue), 100%, 50%, 0.45);
      }

      body.resume section h2::after {
        content: "";
        display: block;
        margin: 0.35rem auto 0;
        width: clamp(120px, 12vw, 160px);
        height: 2px;
        background: linear-gradient(90deg, transparent, var(--accent), transparent);
        opacity: 0.7;
      }

      /* Wrapper for the timeline-like experience section */
      

      body.resume .experience {
        position: relative;
        padding: 1.1rem 0 0.7rem 0;
      }

      /* Grid that pairs left/right experience cards around the center line */
      

      body.resume .experience__grid {
        position: relative;
        display: grid;
        gap: clamp(0.8rem, 2vw, 1.2rem);
        margin-top: 0.7rem;
      }

      /* Vertical neon line running through the experience section */
      

      body.resume .experience__grid::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 3px;
        background: linear-gradient(
          180deg,
          transparent,
          var(--accent) 5%,
          var(--accent) 95%,
          transparent
        );
        z-index: 0;
      }

      /* Row that holds a left card, spacer, and right card */
      

      body.resume .experience__row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) var(--timeline-gap) minmax(0, 1fr);
        column-gap: var(--timeline-column-gap);
        row-gap: clamp(0.5rem, 1vw, 1rem);
        align-items: start;
        position: relative;
        z-index: 1;
      }

      /* Individual experience card styling */
      

      body.resume .experience__card {
        border: 2px solid hsla(var(--accent-hue), 100%, 50%, 0.4);
        border-radius: 12px;
        padding: 0.7rem 0.8rem;
        background: rgba(5, 10, 14, 0.62);
        display: grid;
        gap: 0.3rem;
        position: relative;
        opacity: 0;
        transition: opacity 0.55s ease, transform 0.55s ease;
        will-change: transform, opacity;
      }

      /* Horizontal connector between card and center spine */
      

      body.resume .experience__card::after {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: calc(var(--timeline-column-gap) + (var(--timeline-gap) / 2));
        height: 2px;
        background: hsla(var(--accent-hue), 100%, 50%, 0.4);
      }

      /* Positioning tweaks for left-side cards */
      

      body.resume .experience__card--left {
        text-align: left;
        grid-column: 1 / 2;
        transform: translateX(-60px);
      }

      /* Connector placement for left-side cards */
      

      body.resume .experience__card--left::after {
        top: var(--timeline-anchor-left);
        right: calc(-1 * (var(--timeline-column-gap) + (var(--timeline-gap) / 2)));
      }

      /* Positioning tweaks for right-side cards */
      

      body.resume .experience__card--right {
        text-align: left;
        grid-column: 3 / 4;
        margin-top: 10%;
        transform: translateX(60px);
      }

      body.resume .experience__card.is-visible {
        opacity: 1;
      }

      body.resume .experience__card--left.is-visible,
      body.resume .experience__card--right.is-visible {
        transform: translateX(0);
      }

      /* Connector placement for right-side cards */
      

      body.resume .experience__card--right::after {
        top: var(--timeline-anchor-right);
        left: calc(-1 * (var(--timeline-column-gap) + (var(--timeline-gap) / 2)));
      }

      /* Circular logo badge that floats over each experience card */
      

      body.resume .experience__logo {
        width: var(--timeline-node-size);
        height: var(--timeline-node-size);
        border-radius: 50%;
        background: linear-gradient(135deg, hsla(var(--accent-hue), 100%, 62%, 0.55), hsla(var(--accent-hue), 100%, 68%, 0.85));
        padding: 2px;
        box-shadow: 0 0 12px rgba(79, 195, 247, 0.4);
        position: absolute;
        top: 50%;
        transform: translateY(-50%) scale(0.7);
        z-index: 2;
        opacity: 0;
        transition: transform 0.45s ease, opacity 0.45s ease;
        display: flex;
        align-items: center;
        justify-content: center;
      }

      body.resume .experience__card.is-visible .experience__logo {
        transform: translateY(-50%) scale(1);
        opacity: 1;
      }

      @media (prefers-reduced-motion: reduce) {
        body.resume .experience__card {
          transition: none;
          opacity: 1;
          transform: none !important;
        }

        body.resume .experience__logo {
          transition: none;
          opacity: 1;
          transform: translateY(-50%) scale(1) !important;
        }
      }

      /* Anchor left-side logos to the spine */
      

      body.resume .experience__card--left .experience__logo {
        right: calc(-1 * (var(--timeline-column-gap) + (var(--timeline-gap) / 2) + (var(--timeline-node-size) / 2)));
        top: var(--timeline-anchor-left);
      }

      /* Anchor right-side logos to the spine */
      

      body.resume .experience__card--right .experience__logo {
        left: calc(-1 * (var(--timeline-column-gap) + (var(--timeline-gap) / 2) + (var(--timeline-node-size) / 2)));
        top: var(--timeline-anchor-right);
      }

      /* Ensure partner/company logos fit within the badge */
      

      body.resume .experience__logo::before {
        content: "";
        position: absolute;
        inset: 3px;
        border-radius: 50%;
        background: rgba(5, 10, 14, 0.9);
        z-index: 0;
      }

      body.resume .experience__logo img {
        display: block;
        width: calc(100% - 12px);
        height: calc(100% - 12px);
        object-fit: cover;
        filter: brightness(0.85);
        border-radius: 50%;
        position: relative;
        z-index: 1;
      }

      /* Job title typography within experience cards */
      

      body.resume .experience h3 {
        margin: 0;
        font-family: var(--display);
        letter-spacing: 0.16em;
        text-transform: uppercase;
        font-size: 0.8rem;
        color: var(--fg);
        text-shadow: 0 0 6px rgba(79, 195, 247, 0.2);
        padding-left: 0.3rem;
      }

      /* Meta line (company + dates) styling */
      

      body.resume .experience .meta {
        font-size: 0.65rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: var(--accent);
        padding-left: 0.3rem;
      }

      /* Paragraph copy within experience cards */
      

      body.resume .experience article p,

      body.resume .experience__card p {
        padding-left: 0.3rem;
        font-size: 0.72rem;
      }

      /* Bullet list formatting inside experience cards */
      

      body.resume .experience ul,


      body.resume .experience__card ul {
        margin: 0;
        padding-left: 1.1rem;
        display: grid;
        gap: 0.2rem;
        color: var(--fg-soft);
        font-size: 0.75rem;
        line-height: 1.4;
      }

      body.resume .experience__card li.experience__summary {
        font-style: italic;
        color: var(--fg-soft);
        margin-bottom: 0.1rem;
        list-style: none;
        padding-left: 0;
      }

      /* Tablet breakpoint: linearize the experience timeline */
      @media (max-width: 900px) {
        /* Tablet: stack each experience row vertically */
                body.resume .experience__row {
          display: block;
        }
        /* Tablet: add breathing room between stacked cards */
        
        body.resume .experience__card {
          margin-bottom: 1.2rem;
        }
        /* Tablet: position logos inline instead of floating */
        
        body.resume .experience__logo {
          position: static;
          margin-bottom: 0.5rem;
          display: block;
        }
        /* Tablet: remove offset on alternating cards */
        
        body.resume .experience__card--right,

        body.resume .experience__card--left {
          margin-top: 0;
        }
        /* Tablet: move center spine closer to left margin */
        
        body.resume .experience__grid::before {
          left: 0.75rem;
        }

        /* Tablet: override grid definition to single column */
        

        body.resume .experience__row {
          grid-template-columns: minmax(0, 1fr);
        }

        /* Tablet: indent cards so connectors still visible */
        

        body.resume .experience__card {
          padding-left: 2.2rem;
        }

        /* Tablet: shorten connector lines */
        

        body.resume .experience__card::after,


        body.resume .experience__card--right::after {
          left: 0.5rem;
          right: auto;
          width: 1.4rem;
          top: 2.4rem;
          transform: none;
        }

        /* Tablet: remove top offset on right cards */
        

        body.resume .experience__card--right {
          margin-top: 0;
        }

        /* Tablet: reflow logos inline above card titles */
        

        body.resume .experience__card--left .experience__logo,


        body.resume .experience__card--right .experience__logo {
          position: relative;
          right: auto;
          left: 0;
          margin-bottom: 0.6rem;
          transform: none;
          top: auto;
        }
      }

      /* Wrapper for the skills + competencies section */
      

      body.resume .skills {
        display: grid;
        gap: 1rem;
      }

      /* Responsive grid for the skill cards */
      

      body.resume .skills__grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 0.5rem;
      }

      /* Tablet breakpoint: shrink skills grid to two columns */
      @media (max-width: 900px) {
        /* Tablet: show two skill cards per row */
                body.resume .skills__grid {
          grid-template-columns: repeat(2, 1fr);
        }
      }

      /* Individual skill card styling */
      

      body.resume .skill-card {
        border: 1px solid hsla(var(--accent-hue), 100%, 50%, 0.2);
        border-radius: 14px;
        padding: 0.5rem 0.8rem;
        background: hsla(var(--accent-hue), 100%, 50%, 0.16);
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
        display: grid;
        gap: 0.2rem;
      }

      /* Skill card headings */
      

      body.resume .skill-card h3 {
        margin: 0;
        font-family: var(--display);
        letter-spacing: 0.16em;
        text-transform: uppercase;
        font-size: 0.72rem;
        color: var(--accent);
      }

      /* Bullet list inside each skill card */


      body.resume .skill-card ul {
        margin: 0;
        padding-left: 0.7rem;
        display: grid;
        gap: 0.15rem;
        color: var(--fg-soft);
        font-size: 0.72rem;
      }

      /* Responsive adjustments for phones/tablets up to 640px */
      @media (max-width: 640px) {
        /* Mobile: stack the print/export bar */
                body.resume .no-print {
          flex-direction: column;
          align-items: stretch;
          text-align: center;
        }

        /* Mobile: button spans full width */
        

        body.resume .no-print button {
          width: 100%;
        }

        /* Mobile: hero identity section becomes single column */
        

        body.resume .identity {
          display: flex;
          flex-direction: column;
          align-items: center;
          text-align: center;
          gap: var(--identity-stack-gap);
        }

        /* Mobile: flatten content children so individual elements can reorder */
        

        body.resume .identity__content {
          display: contents;
        }

        

        body.resume .identity__label {
          order: 1;
        }

        

        body.resume .identity__name {
          order: 2;
        }

        /* Mobile: portrait sits directly under the hero name/text */
        

        body.resume .identity__photo-pylon {
          order: 3;
          justify-content: center;
          padding-left: 0;
          margin-top: calc(var(--identity-stack-gap) * 0.5);
        }

        

        body.resume .identity__divider:not(.identity__divider--soft) {
          order: 4;
          margin: var(--identity-stack-gap) 0;
          width: min(260px, 80vw);
        }

        

        body.resume .identity__title {
          order: 5;
        }

        

        body.resume .identity__summary {
          order: 6;
        }

        

        body.resume .identity__divider--soft {
          order: 7;
          width: min(260px, 80vw);
        }

        

        body.resume .identity__note {
          order: 8;
        }

        /* Mobile: contact pills follow the note */
        

        body.resume .contact {
          order: 9;
          width: 100%;
        }

        /* Mobile: hide teal pylon rails */
        

        body.resume .identity__photo-pylon::before,


        body.resume .identity__photo-pylon::after {
          display: none;
        }

        /* Mobile: keep portrait centered with spacing */
        

        body.resume .identity__visual {
          margin: 0 auto 0.4rem;
        }

        /* Mobile: stack contact pills one per row */
        

        body.resume .contact--pills {
          display: grid;
          grid-template-columns: 1fr;
          justify-items: center;
          gap: 0.6rem;
          width: 100%;
        }

        /* Mobile: make each pill stretch and center content */
        

        body.resume .contact__row {
          width: min(100%, 360px);
          justify-content: center;
          margin: 0 auto;
          flex: none;
          white-space: normal;
          min-width: 0;
        }

        /* Mobile: allow contact links to wrap */
        

        body.resume .contact__row a {
          white-space: normal;
        }

        /* Mobile: edge-to-edge main container */
        

        body.resume main {
          max-width: 100vw;
          padding: 0.5rem 0.2rem;
          border-radius: 0;
          box-shadow: none;
        }

        /* Mobile: tighter spacing between header panels */
        

        body.resume header {
          gap: 0.3rem;
        }

        /* Mobile: smaller hero text */
        

        body.resume .identity__name {
          font-size: 1.3rem;
        }

        

        body.resume .identity__title {
          font-size: 0.9rem;
        }

        

        body.resume .identity__summary {
          font-size: 0.85rem;
        }

        /* Mobile: single-column grids */
        

        body.resume .metrics,


        body.resume .skills__grid,


        body.resume .experience__row {
          grid-template-columns: 1fr;
        }

        

        body.resume .metrics {
          gap: 0.3rem;
        }

        /* Mobile: tighter padding on experience cards */
        

        body.resume .experience__card {
          padding: 0.5rem 0.5rem;
        }

        /* Mobile: section heading size reduction */
        

        body.resume section h2 {
          font-size: 0.9rem;
        }
      }

      /* Extra-tight mobile overrides for narrow phones */
      @media (max-width: 480px) {
        /* 480px: trim outer padding even more */
                body.resume main {
          padding: 0.2rem 0.1rem;
        }

        /* 480px: further reduce hero text sizes */
        

        body.resume .identity__name {
          font-size: 1rem;
        }

        

        body.resume .identity__title {
          font-size: 0.8rem;
        }

        

        body.resume .identity__summary {
          font-size: 0.75rem;
        }

        /* 480px: tighten supporting grids */
        

        body.resume .metrics {
          gap: 0.15rem;
        }

        

        body.resume .skills__grid {
          gap: 0.2rem;
        }

        

        body.resume .skill-card,


        body.resume .experience__card {
          padding: 0.3rem 0.3rem;
        }

        

        body.resume section h2 {
          font-size: 0.8rem;
        }
      }


      /* Print stylesheet so resume exports cleanly to PDF */
      @media print {
                body.resume {
          padding: 0;
          background: var(--bg) !important;
          color: var(--fg);
          font-size: 10pt;
          line-height: 1.3;
        }

        /* Hide the print instructions in the exported PDF */
        

        body.resume .no-print {
          display: none !important;
        }

        /* Remove rounded corners/shadows when printing */
        

        body.resume main {
          box-shadow: none;
          border-radius: 0;
          border: none;
          width: auto;
          margin: 0;
          page-break-inside: auto;
          min-height: auto !important;
          height: auto !important;
          display: block;
          background: var(--bg);
          color: inherit;
          padding: 0.5rem 0.5rem;
        }

        /* Transparent backgrounds reduce ink during print */
        

        body.resume header,


        body.resume section {
          background: transparent;
        }

        /* Contact rows print as a two-column grid */
        

        body.resume .contact {
          display: grid;
          grid-template-columns: repeat(2, minmax(0, 1fr));
          gap: 0.2rem 0.4rem;
          text-transform: none;
        }

        /* Strip pill styling from contact chips for print 
        .contact__row {
          align-items: center;
          gap: 0.2rem;
          letter-spacing: 0.04em;
          font-size: 8pt;
          border: none;
          background: transparent;
          box-shadow: none;
          padding: 0;
          border-radius: 0;
        } 

        /* Hide emoji icons when printing 
        .contact__row span {
          display: none;
        }*/

        /* Ensure contact links print in body color */
        

        body.resume .contact__row a {
          color: var(--fg);
          text-decoration: none;
        }

        /* Print: keep hero split into portrait + text columns */
        

        body.resume .identity {
          display: grid;
          grid-template-columns: clamp(150px, 22vw, 240px) minmax(0, 1fr);
          column-gap: var(--identity-column-gap);
          row-gap: var(--identity-stack-gap);
          align-items: flex-start;
        }

        

        body.resume .identity__photo-pylon {
          grid-column: 1 / 2;
          margin: 0;
        }
        

        /* Print: inline hero text beside the portrait */
        
        

        body.resume .identity__content {
          grid-column: 2 / 3;
          display: flex;
          flex-direction: column;
          justify-content: center;
          gap: var(--identity-stack-gap);
          text-align: left;
        }

        /* Print: remove teal rails to save ink */
        

        body.resume .identity__photo-pylon::before,


        body.resume .identity__photo-pylon::after {
          display: none;
        }

        /* Print: set portrait to predictable size */
        

        body.resume .identity__visual {
          width: 1.6in;
          margin: 0 0 0.3rem 0;
        }

        /* Print: keep title block beside portrait */
        /* Print: summary/note/contact span full width under hero */
        

        body.resume .identity__title,


        body.resume .identity__summary,


        body.resume .identity__divider--soft,


        body.resume .identity__note,


        body.resume .contact {
          display: none;
          grid-column: 1 / -1;
        }

        /* Print: metrics in three-column grid */
        

        body.resume .metrics {
          grid-template-columns: repeat(3, minmax(0, 1fr));
          gap: 0.3rem;
        }

        /* Print: tighter padding for metrics */
        

        body.resume .metric {
          padding: 0.3rem 0.5rem;
        }

        /* Print: hide decorative connectors */
        

        body.resume .experience__grid::before,


        body.resume .experience__card::after {
          display: none;
        }

        /* Print: flatten experience grid */
        

        body.resume .experience__grid,


        body.resume .experience__row {
          display: block;
        }

        /* Print: condensed card styling */
        

        body.resume .experience__card {
          width: 100% !important;
          margin: 0 0 0.5rem 0;
          padding: 0.4rem 0.5rem;
          border-radius: 10px;
          border-color: hsla(var(--accent-hue), 100%, 50%, 0.14);
          background: rgba(5, 10, 14, 0.25);
          page-break-inside: avoid;
          opacity: 1 !important;
          transform: none !important;
        }

        /* Print: smaller logos inline with card text */
        

        body.resume .experience__logo {
          width: 36px;
          height: 36px;
          margin-bottom: 0.2rem;
          position: static;
          transform: none !important;
          opacity: 1 !important;
        }

        /* Print: remove alternating offsets */
        

        body.resume .experience__card--right,


        body.resume .experience__card--left {
          margin-top: 0;
        }

        /* Print: skills grid uses three columns */
        

        body.resume .skills__grid {
          grid-template-columns: repeat(3, minmax(0, 1fr));
          gap: 0.2rem;
        }

        /* Print: tighter padding for skill cards */
        

        body.resume .skill-card {
          padding: 0.3rem 0.3rem;
        }

        /* Ensure colors render consistently across printers */
        

        body.resume * {
          -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
        }

        /* Set PDF export size + margins */
        @page {
          size: A4;
          margin: 0.45in;
        }
      }
      body.resume .print-overlay {
        position: fixed;
        inset: 0;
        background: rgba(2, 8, 16, 0.92);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 9999;
        backdrop-filter: blur(10px);
        transition: opacity 0.3s ease;
      }

      body.resume .print-overlay--hidden {
        opacity: 0;
        pointer-events: none;
        display: none;
      }

      body.resume .print-overlay__panel {
        background: rgba(4, 20, 34, 0.95);
        border: 1px solid rgba(79, 195, 247, 0.35);
        border-radius: 18px;
        padding: 2rem 2.5rem;
        max-width: 540px;
        width: 90%;
        text-align: center;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5);
      }

      body.resume .print-overlay__panel h2 {
        margin: 0 0 0.5rem;
        font-family: var(--display);
        letter-spacing: 0.3em;
        text-transform: uppercase;
        color: var(--fg);
      }

      body.resume .print-overlay__panel p {
        margin: 0.4rem 0;
        color: var(--fg-soft);
        line-height: 1.5;
      }

      body.resume .print-overlay__actions {
        display: flex;
        flex-wrap: wrap;
        gap: 0.8rem;
        justify-content: center;
        margin: 1.2rem 0 0.6rem;
      }

      body.resume .print-overlay__button {
        border: 1px solid rgba(79, 195, 247, 0.4);
        border-radius: 999px;
        padding: 0.55rem 1.6rem;
        text-transform: uppercase;
        letter-spacing: 0.18em;
        font-size: 0.7rem;
        background: rgba(5, 20, 35, 0.8);
        color: var(--fg);
        cursor: pointer;
        text-decoration: none;
      }

      body.resume .print-overlay__button--primary {
        background: var(--accent);
        color: #01121d;
      }

      body.resume .print-overlay__tip {
        font-size: 0.65rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
      }
