/* ================================================================
   SAGAR PATEL PORTFOLIO v5 — global.css
   PIXEL GAMING THEME — Light/Textured Background
   Complementary: Red · Blue · Yellow · Violet · Green · Orange
   ================================================================ */
   @import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@600;700;900&family=Press+Start+2P&family=Rajdhani:wght@500;600;700&family=Share+Tech+Mono&display=swap');

   :root {
     /* ── Background — NOT dark, rich textured ── */
     --bg-main:     #1a1a2e;
     --bg-mid:      #16213e;
     --bg-panel:    #0f3460;
     --bg-card:     #1e2a4a;
     --bg-card-hi:  #243258;
     --bg-light:    #e8f4f8;
   
     /* ── Complementary palette ── */
     --red:         #e63946;
     --red-hi:      #ff5a65;
     --red-lo:      #a01c26;
     --blue:        #457bbd;
     --blue-hi:     #74a8e0;
     --blue-lo:     #1d3557;
     --yellow:      #ffd60a;
     --yellow-hi:   #ffe566;
     --yellow-lo:   #c9a800;
     --violet:      #7b2fff;
     --violet-hi:   #b06dff;
     --green:       #06d6a0;
     --green-hi:    #3dffcc;
     --orange:      #f4811f;
     --orange-hi:   #ffaa5c;
   
     /* ── Pixel button palette (like reference image 3) ── */
     --pixel-yellow:   #ffd700;
     --pixel-yellow-d: #b8860b;
     --pixel-yellow-s: #fff176;
     --pixel-orange:   #ff8c00;
     --pixel-orange-d: #cc5500;
     --pixel-red:      #e63946;
     --pixel-red-d:    #a01c26;
     --pixel-blue:     #1565c0;
     --pixel-blue-d:   #0d3b7a;
     --pixel-green:    #00c853;
     --pixel-green-d:  #007a32;
   
     /* ── Text ── */
     --text:        #e8f4ff;
     --text-dim:    #a0b4cc;
     --text-muted:  #506080;
     --text-dark:   #0a0e1a;
   
     /* ── Borders ── */
     --border:      rgba(69,123,189,0.25);
     --border-hi:   rgba(116,168,224,0.6);
     --border-yel:  rgba(255,214,10,0.5);
     --border-red:  rgba(230,57,70,0.5);
     --border-ora:  rgba(244,129,31,0.5);
   
     /* ── Gradients ── */
     --grad-bg:      radial-gradient(ellipse at 20% 20%, #0f3460 0%, #1a1a2e 40%, #16213e 70%, #0a0e1a 100%);
     --grad-hero:    linear-gradient(135deg,#e63946 0%,#7b2fff 50%,#457bbd 100%);
     --grad-action:  linear-gradient(135deg,#e63946 0%,#f4811f 100%);
     --grad-gold:    linear-gradient(135deg,#ffd700 0%,#f4811f 100%);
     --grad-blue:    linear-gradient(135deg,#1d3557 0%,#7b2fff 100%);
     --grad-text:    linear-gradient(90deg,#e63946,#7b2fff,#457bbd);
     --grad-xp:      linear-gradient(90deg,#e63946,#f4811f,#ffd700);
     --grad-card:    linear-gradient(135deg,rgba(15,52,96,0.6) 0%,rgba(69,123,189,0.1) 100%);
     --grad-sidebar: linear-gradient(180deg,#0a0e1a 0%,#0d1520 50%,#0a0e1a 100%);
   
     /* ── Glows ── */
     --glow-red:    0 0 15px rgba(230,57,70,.7),0 0 40px rgba(230,57,70,.25);
     --glow-blue:   0 0 15px rgba(69,123,189,.7),0 0 40px rgba(69,123,189,.25);
     --glow-yellow: 0 0 15px rgba(255,215,0,.8),0 0 40px rgba(255,215,0,.3);
     --glow-violet: 0 0 15px rgba(123,47,255,.7),0 0 40px rgba(123,47,255,.25);
     --glow-green:  0 0 15px rgba(6,214,160,.7),0 0 40px rgba(6,214,160,.25);
     --glow-orange: 0 0 15px rgba(244,129,31,.7),0 0 40px rgba(244,129,31,.25);
     --glow-multi:  0 0 20px rgba(230,57,70,.3),0 0 40px rgba(123,47,255,.2),0 0 60px rgba(69,123,189,.15);
   
     /* ── Pixel border style ── */
     --pixel-shadow-yellow: 4px 4px 0 var(--pixel-yellow-d), inset 2px 2px 0 var(--pixel-yellow-s), inset -2px -2px 0 var(--pixel-yellow-d);
     --pixel-shadow-red:    4px 4px 0 var(--pixel-red-d), inset 2px 2px 0 #ff8a80, inset -2px -2px 0 var(--pixel-red-d);
     --pixel-shadow-blue:   4px 4px 0 var(--pixel-blue-d), inset 2px 2px 0 #64b5f6, inset -2px -2px 0 var(--pixel-blue-d);
     --pixel-shadow-green:  4px 4px 0 var(--pixel-green-d), inset 2px 2px 0 #69f0ae, inset -2px -2px 0 var(--pixel-green-d);
   
     /* ── Fonts ── */
     --font-display: 'Orbitron', monospace;
     --font-pixel:   'Press Start 2P', monospace;
     --font-body:    'Rajdhani', sans-serif;
     --font-mono:    'Share Tech Mono', monospace;
   
     --sidebar-w:   255px;
     --content-pad: 2.5rem;
     --r-sm:4px;--r-md:8px;--r-lg:14px;--r-pill:999px;
     --t-base:200ms ease;--t-spring:350ms cubic-bezier(0.34,1.56,0.64,1);
   }
   
   /* ── Reset ── */
   *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
   html{scroll-behavior:smooth;overflow-x:hidden;}
   body{
     font-family:var(--font-body);
     font-weight:600;
     background:var(--bg-main);
     color:var(--text);
     line-height:1.7;
     overflow-x:hidden;
     -webkit-font-smoothing:antialiased;
     cursor:none; /* desktop only — mobile overridden below */
     /* Rich textured background — NOT flat dark */
     background-image:
       radial-gradient(ellipse at 15% 15%, rgba(123,47,255,.15) 0%, transparent 50%),
       radial-gradient(ellipse at 85% 85%, rgba(230,57,70,.1) 0%, transparent 50%),
       radial-gradient(ellipse at 50% 50%, rgba(15,52,96,.8) 0%, transparent 80%),
       url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.015'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
     background-attachment: fixed;
   }
   
   /* Scrollbar */
   ::-webkit-scrollbar{width:5px;}
   ::-webkit-scrollbar-track{background:var(--bg-main);}
   ::-webkit-scrollbar-thumb{background:linear-gradient(to bottom,var(--red),var(--violet),var(--blue));border-radius:var(--r-pill);}
   
   /* ── Typography ── */
   h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:900;line-height:1.2;letter-spacing:.05em;}
   h1{font-size:clamp(1.8rem,4.5vw,3.8rem);}
   h2{font-size:clamp(1.3rem,2.8vw,2rem);}
   h3{font-size:clamp(.95rem,1.8vw,1.35rem);}
   p{line-height:1.8;font-weight:500;}
   a{color:var(--blue-hi);text-decoration:none;transition:color var(--t-base);}
   a:hover{color:var(--orange-hi);}
   img{max-width:100%;display:block;}ul{list-style:none;}
   
   /* ── Layout ── */
   .site-shell{display:block;min-height:100vh;}
   .main-content{min-height:100vh;}
   .section{padding:5rem var(--content-pad);position:relative;}
   .container{max-width:1000px;margin:0 auto;}
   
   /* ── Section Title ── */
   .section-title{margin-bottom:3rem;}
   .section-title .label{font-family:var(--font-pixel);font-size:.45rem;letter-spacing:.15em;color:var(--orange-hi);display:block;margin-bottom:.75rem;font-weight:900;}
   .section-title h2{background:var(--grad-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem;}
   .section-title .bar{display:flex;align-items:center;gap:.5rem;}
   .section-title .bar-line{width:60px;height:3px;background:var(--grad-action);box-shadow:var(--glow-red);}
   .section-title .bar-dot{width:8px;height:8px;border-radius:0;background:var(--yellow);box-shadow:var(--glow-yellow);transform:rotate(45deg);}
   
   /* ── Glass card ── */
   .glass{
     background:linear-gradient(135deg,rgba(15,52,96,.5) 0%,rgba(69,123,189,.08) 100%);
     border:1px solid var(--border);
     border-radius:var(--r-lg);
     backdrop-filter:blur(14px);
     -webkit-backdrop-filter:blur(14px);
     transition:border-color var(--t-base),box-shadow var(--t-base);
   }
   .glass:hover{border-color:var(--border-hi);box-shadow:var(--glow-blue);}
   
   /* ── Game card ── */
   .game-card{
     background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-card-hi) 100%);
     border:2px solid rgba(69,123,189,.3);
     border-radius:var(--r-lg);
     overflow:hidden;position:relative;
     transition:all var(--t-base);
   }
   .game-card:hover{border-color:var(--border-hi);transform:translateY(-5px);box-shadow:var(--glow-multi);}
   .game-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-action);transform:scaleX(0);transform-origin:left;transition:transform var(--t-base);}
   .game-card:hover::after{transform:scaleX(1);}
   
   /* ================================================================
      PIXEL ART BUTTONS — reference image 3
      Chunky retro game style with pixel shadow/highlight borders
      ================================================================ */
   .btn{
     display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
     padding:.65rem 1.6rem;
     font-family:var(--font-pixel);font-size:.5rem;
     letter-spacing:.08em;text-transform:uppercase;
     border:none;border-radius:2px;
     cursor:pointer;position:relative;
     transition:all .1s ease;
     image-rendering:pixelated;
     white-space:nowrap;
   }
   /* Press down effect */
   .btn:active{transform:translate(3px,3px)!important;box-shadow:none!important;}
   
   /* PRIMARY — Yellow pixel (like reference img3) */
   .btn-primary{
     background:var(--pixel-yellow);
     color:#0a0e1a;font-weight:900;
     box-shadow:var(--pixel-shadow-yellow);
   }
   .btn-primary:hover{background:var(--yellow-hi);box-shadow:var(--pixel-shadow-yellow),0 0 15px rgba(255,215,0,.5);transform:translate(-1px,-1px);color:#0a0e1a;}
   
   /* OUTLINE — Pixel blue */
   .btn-outline{
     background:var(--pixel-blue);
     color:#fff;
     box-shadow:var(--pixel-shadow-blue);
   }
   .btn-outline:hover{background:#1976d2;box-shadow:var(--pixel-shadow-blue),0 0 15px rgba(21,101,192,.5);transform:translate(-1px,-1px);color:#fff;}
   
   /* GOLD — same pixel yellow variant */
   .btn-gold{
     background:var(--pixel-yellow);
     color:#0a0e1a;font-weight:900;
     box-shadow:var(--pixel-shadow-yellow);
   }
   .btn-gold:hover{background:var(--yellow-hi);transform:translate(-1px,-1px);color:#0a0e1a;}
   
   /* PINK / action — Pixel red→orange */
   .btn-pink{
     background:linear-gradient(135deg,var(--pixel-red) 0%,var(--pixel-orange) 100%);
     color:#fff;font-weight:900;
     box-shadow:var(--pixel-shadow-red);
   }
   .btn-pink:hover{background:linear-gradient(135deg,#ff5a65,#ffaa5c);box-shadow:var(--pixel-shadow-red),0 0 15px rgba(230,57,70,.5);transform:translate(-1px,-1px);color:#fff;}
   
   /* VIOLET */
   .btn-violet{
     background:var(--violet);
     color:#fff;
     box-shadow:4px 4px 0 #4a0fa8,inset 2px 2px 0 #b06dff,inset -2px -2px 0 #4a0fa8;
   }
   .btn-violet:hover{background:#9b4fff;transform:translate(-1px,-1px);color:#fff;}
   
   /* ── Badge ── */
   .badge{display:inline-block;padding:.2rem .55rem;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.05em;border:1px solid var(--border);border-radius:2px;background:rgba(69,123,189,.1);color:var(--blue-hi);}
   .badge-red{border-color:var(--border-red);color:var(--red-hi);background:rgba(230,57,70,.08);}
   .badge-yellow{border-color:var(--border-yel);color:var(--yellow-hi);background:rgba(255,214,10,.07);}
   .badge-orange{border-color:var(--border-ora);color:var(--orange-hi);background:rgba(244,129,31,.08);}
   .badge-green{border-color:rgba(6,214,160,.4);color:var(--green-hi);background:rgba(6,214,160,.07);}
   .badge-violet{border-color:rgba(123,47,255,.4);color:var(--violet-hi);background:rgba(123,47,255,.08);}
   .badge-pink{border-color:rgba(123,47,255,.4);color:var(--violet-hi);background:rgba(123,47,255,.08);}
   
   /* ── XP bar ── */
   .xp-bar-wrap{margin-bottom:1rem;}
   .xp-bar-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem;}
   .xp-bar-name{font-family:var(--font-mono);font-size:.72rem;color:var(--text);font-weight:700;}
   .xp-bar-right{display:flex;align-items:center;gap:.5rem;}
   .xp-bar-val{font-family:var(--font-pixel);font-size:.45rem;color:var(--yellow-hi);}
   .xp-level{font-family:var(--font-pixel);font-size:.42rem;padding:.15rem .4rem;border-radius:2px;font-weight:900;color:#0a0e1a;}
   .xp-level.master{background:var(--yellow);box-shadow:2px 2px 0 var(--yellow-lo);}
   .xp-level.expert{background:var(--orange);color:#fff;box-shadow:2px 2px 0 var(--pixel-orange-d);}
   .xp-level.advanced{background:var(--blue);color:#fff;box-shadow:2px 2px 0 var(--blue-lo);}
   .xp-level.intermediate{background:var(--blue-lo);color:var(--blue-hi);box-shadow:2px 2px 0 #0a1a2e;}
   .xp-level:not(.master):not(.expert):not(.advanced):not(.intermediate){background:var(--orange);color:#fff;box-shadow:2px 2px 0 var(--pixel-orange-d);}
   .xp-track{height:10px;background:rgba(10,14,26,.5);border-radius:2px;border:2px solid rgba(69,123,189,.3);overflow:hidden;position:relative;image-rendering:pixelated;}
   .xp-fill{height:100%;border-radius:0;background:var(--grad-xp);width:0%;transition:width 1.6s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px rgba(244,129,31,.5);position:relative;}
   .xp-fill::after{content:'';position:absolute;right:0;top:0;width:5px;height:100%;background:var(--yellow-hi);box-shadow:0 0 10px var(--yellow-hi);opacity:.9;}
   .xp-track::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent calc(25% - 1px),rgba(0,0,0,.4) calc(25% - 1px),rgba(0,0,0,.4) 25%);pointer-events:none;z-index:2;}
   
   /* ── HUD Corners — pixel style ── */
   .hc{position:absolute;width:12px;height:12px;border-style:solid;opacity:.4;transition:opacity var(--t-base);border-radius:0;}
   .glass:hover .hc,.game-card:hover .hc{opacity:1;}
   .hc.tl{top:5px;left:5px;border-color:var(--blue-hi);border-width:2px 0 0 2px;}
   .hc.tr{top:5px;right:5px;border-color:var(--red-hi);border-width:2px 2px 0 0;}
   .hc.bl{bottom:5px;left:5px;border-color:var(--green);border-width:0 0 2px 2px;}
   .hc.br{bottom:5px;right:5px;border-color:var(--yellow);border-width:0 2px 2px 0;}
   
   /* ── Reveal ── */
   .reveal{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease;}
   .reveal-left{opacity:0;transform:translateX(-28px);transition:opacity .6s ease,transform .6s ease;}
   .reveal-right{opacity:0;transform:translateX(28px);transition:opacity .6s ease,transform .6s ease;}
   .reveal-scale{opacity:0;transform:scale(.9);transition:opacity .6s ease,transform .6s ease;}
   .revealed{opacity:1!important;transform:none!important;}
   .d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
   .d4{transition-delay:.4s}.d5{transition-delay:.5s}.d6{transition-delay:.6s}
   
   /* ── Scanlines ── */
   .scanlines{position:fixed;inset:0;pointer-events:none;z-index:9990;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.02) 2px,rgba(0,0,0,.02) 4px);}
   
   /* ── Text utils ── */
   .gradient-text{background:var(--grad-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
   .gradient-text-full{background:linear-gradient(90deg,#ff5a65,#ffd700,#3dffcc,#74a8e0,#b06dff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
   .glow-red{color:var(--red-hi);text-shadow:0 0 12px rgba(230,57,70,.8);}
   .glow-blue{color:var(--blue-hi);text-shadow:0 0 12px rgba(69,123,189,.8);}
   .glow-yellow{color:var(--yellow-hi);text-shadow:0 0 12px rgba(255,214,10,.9);}
   .glow-green{color:var(--green-hi);text-shadow:0 0 12px rgba(6,214,160,.8);}
   .glow-orange{color:var(--orange-hi);text-shadow:0 0 12px rgba(244,129,31,.8);}
   .glow-violet{color:var(--violet-hi);text-shadow:0 0 15px rgba(123,47,255,.9);}
   .glow-purple{color:var(--violet-hi);text-shadow:0 0 15px rgba(123,47,255,.9);}
   .glow-pink{color:var(--red-hi);text-shadow:0 0 12px rgba(230,57,70,.8);}
   .mono{font-family:var(--font-mono);}
   .dim{color:var(--text-dim);}
   
   /* ── Form ── */
   .form-group{margin-bottom:1.1rem;}
   .form-label{display:block;font-family:var(--font-pixel);font-size:.42rem;color:var(--yellow-hi);letter-spacing:.1em;margin-bottom:.5rem;}
   .form-control{width:100%;background:rgba(10,14,26,.6);border:2px solid rgba(69,123,189,.35);border-radius:2px;padding:.7rem .9rem;color:var(--text);font-family:var(--font-body);font-size:.9rem;outline:none;transition:all var(--t-base);}
   .form-control:focus{border-color:var(--yellow);box-shadow:0 0 0 2px rgba(255,215,0,.15),var(--glow-yellow);}
   .form-control::placeholder{color:var(--text-muted);}
   textarea.form-control{resize:vertical;min-height:110px;}
   select.form-control{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23ffd700'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;padding-right:2rem;}
   select.form-control option{background:var(--bg-panel);}
   
   /* ── Footer ── */
   .page-footer{padding:1.5rem var(--content-pad);border-top:2px solid rgba(69,123,189,.2);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
   .footer-copy{font-family:var(--font-mono);font-size:.62rem;color:var(--text-muted);font-weight:700;}
   .footer-copy span{color:var(--yellow-hi);}
   .footer-links{display:flex;gap:.75rem;}
   .footer-link{font-family:var(--font-mono);font-size:.58rem;color:var(--text-muted);transition:color var(--t-base);}
   .footer-link:hover{color:var(--orange-hi);}
   
   /* ── Page reveal ── */
   .page-reveal-overlay{position:fixed;inset:0;background:var(--bg-main);z-index:9998;transform-origin:top;animation:pageReveal .5s cubic-bezier(.77,0,.18,1) forwards .05s;}
   @keyframes pageReveal{from{transform:scaleY(1)}to{transform:scaleY(0)}}
   
   
   /* ── Text selection style ── */
   ::selection{
     background:rgba(255,215,0,.25);
     color:var(--yellow-hi);
   }
   ::-moz-selection{
     background:rgba(255,215,0,.25);
     color:var(--yellow-hi);
   }
   
   /* ── Mobile: restore real cursor, hide ball ── */
   @media(max-width:900px),(hover:none),(pointer:coarse){
     body{cursor:auto!important;}
     .cursor-ball{display:none!important;}
     .cursor-trail{display:none!important;}
     *{cursor:auto;}
     a,button,.btn,.nav-link,.filter-btn,.tab-btn,.quick-card,.game-card{cursor:pointer;}
   }
   
   /* ========== RESPONSIVE ========== */
   @media(min-width:901px){
     .site-shell{display:block;}
     .main-content{margin-left:var(--sidebar-w);min-height:100vh;}
   }
   @media(min-width:901px) and (max-width:1200px){
     :root{--content-pad:1.75rem;}
     .section{padding:4rem var(--content-pad);}
   }
   @media(max-width:900px){
     :root{--sidebar-w:0px;}
     .site-shell{display:block;}
     .main-content{margin-left:0;padding-top:56px;}
     .section{padding:3.5rem 1.25rem;}
     .container{max-width:100%;}
     .sidebar{display:none!important;}
     .mobile-topbar{display:flex!important;}
     .mobile-drawer{display:block!important;}
   }
