:root{--bg:#07050b;--panel:#0f0b16;--panel2:#151020;--text:#f5efff;--muted:#a99bb7;--purple:#9a4dff;--purple2:#6f21d9;--line:#2d1b3d;--good:#67e8a5;--warn:#ffcf6b;--danger:#ff738e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 0,#251036 0,transparent 34%),radial-gradient(circle at 90% 20%,#170b2a 0,transparent 26%),var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.topbar{position:sticky;top:0;z-index:20;background:rgba(7,5,11,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand img{width:42px;height:42px;object-fit:contain}.brand b{letter-spacing:.08em}.brand span{display:block;color:var(--purple);font-size:.72rem;letter-spacing:.2em}.links{display:flex;gap:24px;color:#d9cce6}.links a:hover,.links a.active{color:white}.mobile-toggle{display:none;background:transparent;border:1px solid var(--line);color:white;border-radius:10px;padding:9px 12px}.hero{position:relative;min-height:640px;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--line)}.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,5,11,.35),#07050b 94%)}.hero-inner{position:relative;z-index:2;padding:90px 0 70px;display:grid;grid-template-columns:1.2fr .8fr;gap:45px;align-items:center}.eyebrow{color:#d4b7ff;text-transform:uppercase;letter-spacing:.2em;font-size:.78rem}.hero h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.9;margin:.18em 0 .2em;letter-spacing:-.05em}.hero h1 em{font-style:normal;color:var(--purple)}.lead{max-width:760px;color:#d0c4da;font-size:1.1rem}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{border-radius:12px;padding:13px 18px;border:1px solid var(--line);background:#130d1d;color:white;font-weight:700}.btn.primary{background:linear-gradient(135deg,var(--purple),var(--purple2));border-color:transparent}.hero-card,.card{background:linear-gradient(180deg,rgba(21,16,32,.94),rgba(13,9,19,.94));border:1px solid var(--line);border-radius:18px}.hero-card{padding:24px}.hero-card h3{margin-top:0}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat{padding:14px;background:#0b0810;border:1px solid #241531;border-radius:13px}.stat strong{font-size:1.35rem;display:block;color:#fff}.stat span{font-size:.78rem;color:var(--muted)}.section{padding:78px 0}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}.section h2{font-size:clamp(2rem,4vw,3.2rem);margin:0}.muted{color:var(--muted)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:22px}.card .tag,.update-card .tag{display:inline-flex;padding:5px 9px;border-radius:999px;background:#211231;border:1px solid #3d2157;color:#d8b8ff;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.card h3{margin:.75rem 0 .35rem}.feature-list{padding-left:18px;color:#cabed5}.update-preview{display:grid;gap:14px}.update-preview article{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:20px 0;border-top:1px solid var(--line)}.update-preview time{color:#cdafff}.timeline-tools{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}.timeline-tools input,.timeline-tools select{background:#0d0913;border:1px solid var(--line);color:white;border-radius:11px;padding:12px 14px}.timeline-tools input{min-width:280px;flex:1}.updates{display:grid;gap:22px}.update-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#120d1a,#0b0810);overflow:hidden}.update-head{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:18px}.update-head h3{margin:.4rem 0 0;font-size:1.55rem}.update-date{text-align:right;color:#bca9ca;white-space:nowrap}.update-body{padding:22px 24px;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.update-group{background:#0c0911;border:1px solid #21162b;border-radius:14px;padding:16px}.update-group h4{margin:0 0 10px;color:#e3ccff}.update-group ul{margin:0;padding-left:18px;color:#cbbfd4}.day1{border-color:#5b2c82;box-shadow:0 0 0 1px rgba(154,77,255,.12) inset}.footer{border-top:1px solid var(--line);padding:45px 0 110px;color:#9f92a9}.footer-grid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.radio{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:30;width:min(760px,calc(100% - 24px));background:rgba(11,8,16,.94);backdrop-filter:blur(18px);border:1px solid #3d2452;border-radius:16px;padding:10px 12px;display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;box-shadow:0 10px 40px rgba(0,0,0,.35)}.track-title{font-weight:800}.track-artist{font-size:.78rem;color:var(--muted)}.radio button{background:#1b1027;color:white;border:1px solid #3b2252;border-radius:10px;padding:9px 12px}.radio .play{background:var(--purple);border-color:transparent}.page-hero{padding:110px 0 45px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 20% 0,#2a0f3d 0,transparent 34%)}.page-hero h1{font-size:clamp(2.8rem,6vw,5.4rem);margin:.15em 0}.mobile-only{display:none}
@media(max-width:800px){.container{width:min(100% - 24px,680px)}.links{display:none;position:absolute;top:74px;left:0;right:0;background:#0b0810;border-bottom:1px solid var(--line);padding:14px 20px;flex-direction:column}.links.open{display:flex}.mobile-toggle{display:block}.hero{min-height:auto}.hero video{opacity:.14}.hero-inner{grid-template-columns:1fr;padding:64px 0 42px}.hero h1{font-size:3.55rem}.hero-card{display:none}.mobile-only{display:block}.mobile-snapshot{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-snapshot .stat{background:rgba(12,8,17,.9)}.section{padding:52px 0}.section-head{display:block}.grid-3{grid-template-columns:1fr}.update-preview article{grid-template-columns:1fr;gap:4px}.update-body{grid-template-columns:1fr}.update-head{display:block}.update-date{text-align:left;margin-top:8px}.timeline-tools{display:grid}.timeline-tools input{min-width:0;width:100%}.radio{grid-template-columns:1fr auto auto auto;padding:9px}.radio .track-artist{display:none}.radio button{padding:9px 10px}.page-hero{padding:82px 0 34px}.page-hero h1{font-size:3.25rem}}

/* AGN entry / landing experience */
body.entry-open{overflow:hidden}.entry-screen{position:fixed;inset:0;z-index:999;background:#050208;color:#fff;overflow:hidden;transition:opacity .75s ease,visibility .75s ease}.entry-screen.leaving{opacity:0;visibility:hidden}.entry-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.34;filter:saturate(.72) contrast(1.08)}.entry-shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 38%,rgba(146,58,255,.18),transparent 28%),linear-gradient(90deg,rgba(4,2,7,.92) 0%,rgba(8,3,12,.55) 45%,rgba(4,2,7,.88) 100%),linear-gradient(180deg,rgba(4,2,7,.26),#050208 96%)}.entry-grid{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(177,102,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(177,102,255,.13) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,transparent 4%,black 42%,transparent 96%)}.entry-shell{position:relative;z-index:2;width:min(1440px,calc(100% - 64px));height:100%;margin:auto;display:grid;grid-template-rows:auto 1fr auto;padding:30px 0}.entry-topline,.entry-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.72rem;letter-spacing:.19em;color:#a99ab6}.entry-status{display:flex;align-items:center;gap:9px;color:#d7c7e5}.pulse-dot{width:8px;height:8px;border-radius:99px;background:#a651ff;box-shadow:0 0 0 0 rgba(166,81,255,.65);animation:entryPulse 1.8s infinite}.entry-build{color:#a651ff}.entry-content{align-self:center;max-width:900px;padding:34px 0 34px 8vw}.entry-logo{width:76px;height:76px;object-fit:contain;margin-bottom:25px;filter:drop-shadow(0 0 30px rgba(155,74,255,.3))}.entry-kicker{color:#c49af5;font-size:.76rem;letter-spacing:.27em;font-weight:800;margin-bottom:12px}.entry-title{font-size:clamp(4rem,8.5vw,8.8rem);line-height:.78;letter-spacing:-.065em;margin:0;text-transform:uppercase;max-width:980px}.entry-title span{color:#a04eff;text-shadow:0 0 42px rgba(160,78,255,.24)}.entry-copy{max-width:770px;margin:28px 0 0;color:#c7b9d1;font-size:clamp(1rem,1.35vw,1.22rem);line-height:1.7}.entry-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.entry-pills span{border:1px solid rgba(164,84,255,.28);background:rgba(15,8,22,.68);backdrop-filter:blur(8px);padding:8px 12px;border-radius:999px;color:#d8cae2;font-size:.72rem;letter-spacing:.07em}.enter-agn{margin-top:30px;display:inline-flex;align-items:center;gap:42px;padding:16px 18px 16px 22px;border-radius:14px;border:1px solid #9b4cff;background:linear-gradient(135deg,#9a4dff,#5d16b7);color:white;font-size:.88rem;font-weight:900;letter-spacing:.17em;cursor:pointer;box-shadow:0 14px 50px rgba(113,31,204,.24);transition:transform .2s ease,box-shadow .2s ease}.enter-agn b{font-size:1.35rem}.enter-agn:hover{transform:translateY(-2px);box-shadow:0 18px 60px rgba(139,50,237,.38)}.entry-track{margin-top:26px;display:flex;align-items:center;gap:12px;color:#b9a8c4}.entry-track small{display:block;font-size:.61rem;letter-spacing:.18em;color:#75677f}.entry-track strong{display:block;font-size:.76rem;letter-spacing:.08em;color:#d9cbe3}.entry-eq{height:22px;display:flex;align-items:end;gap:3px}.entry-eq i{display:block;width:3px;background:#a04eff;border-radius:3px;animation:eq .85s ease-in-out infinite alternate}.entry-eq i:nth-child(1){height:8px}.entry-eq i:nth-child(2){height:18px;animation-delay:.15s}.entry-eq i:nth-child(3){height:12px;animation-delay:.3s}.entry-eq i:nth-child(4){height:20px;animation-delay:.45s}@keyframes eq{to{height:5px;opacity:.55}}@keyframes entryPulse{70%{box-shadow:0 0 0 9px rgba(166,81,255,0)}}
@media(max-width:800px){.entry-shell{width:calc(100% - 28px);padding:18px 0}.entry-version{display:none}.entry-content{padding:20px 0;align-self:center}.entry-logo{width:58px;height:58px;margin-bottom:18px}.entry-kicker{font-size:.65rem;letter-spacing:.18em}.entry-title{font-size:clamp(3.4rem,19vw,5.6rem);line-height:.82}.entry-copy{font-size:.96rem;line-height:1.6;margin-top:22px}.entry-pills{gap:7px;margin-top:18px}.entry-pills span{font-size:.63rem;padding:7px 9px}.enter-agn{width:100%;justify-content:space-between;margin-top:24px;padding:15px 17px}.entry-track{margin-top:19px}.entry-topline,.entry-bottom{font-size:.58rem;letter-spacing:.12em}.entry-build{display:none}.entry-video{opacity:.23}.entry-shade{background:radial-gradient(circle at 50% 30%,rgba(146,58,255,.2),transparent 35%),linear-gradient(180deg,rgba(4,2,7,.45),#050208 92%)}}


/* AGN Radio reliability / controls */
#agnAudio{display:none}.radio{grid-template-columns:minmax(150px,1fr) auto auto auto auto minmax(120px,180px)}.radio-meta{min-width:0}.track-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audio-status{margin-top:2px;font-size:.58rem;letter-spacing:.14em;color:#988aa5}.audio-status[data-state="playing"]{color:#aef3ca}.audio-status[data-state="error"]{color:#ff8da3}.radio .mute{padding-left:10px;padding-right:10px}.volume-wrap{display:flex;align-items:center;gap:8px;color:#8f819a;font-size:.58rem;letter-spacing:.1em}.volume{width:100%;accent-color:var(--purple)}.enter-agn:disabled{opacity:.75;cursor:wait;transform:none}
@media(max-width:800px){.radio{grid-template-columns:minmax(90px,1fr) auto auto auto auto}.volume-wrap{display:none}.audio-status{font-size:.52rem}.radio .track-title{font-size:.82rem}}

/* AGN Radio v3 */
.radio-v3{position:fixed;right:18px;bottom:18px;z-index:80;width:min(420px,calc(100vw - 28px));background:rgba(8,5,14,.96);border:1px solid rgba(171,91,255,.4);border-radius:18px;padding:14px;box-shadow:0 18px 60px rgba(0,0,0,.45);backdrop-filter:blur(16px)}
.radio-v3 .radio-top{display:flex;align-items:center;gap:12px}
.radio-v3 .radio-cover{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#6e20c8,#b35cff);font-weight:900;color:white;letter-spacing:.06em}
.radio-v3 .radio-now{min-width:0;flex:1}
.radio-v3 .radio-now small{display:block;color:#ad8ccf;font-size:11px;letter-spacing:.13em}
.radio-v3 .radio-now strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.radio-v3 .radio-status{font-size:11px;color:#b895d6}
.radio-v3 .radio-main{display:flex;align-items:center;gap:8px;margin-top:12px}
.radio-v3 button{appearance:none;border:1px solid rgba(181,104,255,.35);background:#17101f;color:white;border-radius:10px;height:42px;min-width:42px;padding:0 12px;cursor:pointer}
.radio-v3 button:hover{border-color:#b45dff;background:#23152f}
.radio-v3 .radio-play{flex:1;background:linear-gradient(135deg,#7b28d6,#aa51ff);border-color:transparent;font-weight:800}
.radio-v3 .radio-progress-row{display:grid;grid-template-columns:42px 1fr 42px;gap:8px;align-items:center;margin-top:11px;font-size:11px;color:#a98cbc}
.radio-v3 input[type=range]{width:100%;accent-color:#a84cff}
.radio-v3 .radio-bottom{display:flex;align-items:center;gap:10px;margin-top:10px}
.radio-v3 .radio-bottom .vol{flex:1;display:flex;align-items:center;gap:8px}
.radio-v3 select{flex:1;min-width:0;background:#120d19;color:white;border:1px solid rgba(181,104,255,.3);border-radius:10px;padding:9px}
.radio-v3 .radio-help{margin-top:8px;font-size:11px;color:#8f7a9e}
@media(max-width:640px){.radio-v3{right:10px;bottom:10px;width:calc(100vw - 20px)}.radio-v3 .radio-help{display:none}}

/* Continuous-radio SPA navigation */
.site-view{display:none}
.site-view.active{display:block}
html{scroll-behavior:smooth}

/* AGN Radio v4.1 - compact mobile experience */
@media (max-width:640px){
  body{padding-bottom:92px}
  .footer{padding-bottom:38px}

  .radio-v3{
    left:8px;
    right:8px;
    bottom:8px;
    width:auto;
    padding:8px 9px;
    border-radius:14px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "top main"
      "progress progress"
      "bottom bottom";
    gap:6px 8px;
    background:rgba(8,5,14,.97);
    box-shadow:0 10px 30px rgba(0,0,0,.48);
  }

  .radio-v3 .radio-top{
    grid-area:top;
    min-width:0;
    gap:8px;
  }
  .radio-v3 .radio-cover{
    width:36px;
    height:36px;
    flex:0 0 36px;
    border-radius:10px;
    font-size:11px;
  }
  .radio-v3 .radio-now small{
    font-size:8px;
    letter-spacing:.12em;
    line-height:1.1;
  }
  .radio-v3 .radio-now strong{
    font-size:12px;
    line-height:1.25;
  }
  .radio-v3 .radio-status{
    display:none;
  }

  .radio-v3 .radio-main{
    grid-area:main;
    margin:0;
    gap:5px;
  }
  .radio-v3 button{
    height:36px;
    min-width:36px;
    padding:0 8px;
    border-radius:9px;
    font-size:12px;
    touch-action:manipulation;
  }
  .radio-v3 .radio-play{
    width:40px;
    flex:0 0 40px;
    overflow:hidden;
    white-space:nowrap;
    text-indent:-9999px;
    position:relative;
    padding:0;
  }
  .radio-v3 .radio-play::after{
    content:'▶';
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    text-indent:0;
    font-size:14px;
  }
  .radio-v3 .radio-prev,
  .radio-v3 .radio-next{
    min-width:34px;
    width:34px;
    padding:0;
    font-size:11px;
  }

  .radio-v3 .radio-progress-row{
    grid-area:progress;
    grid-template-columns:31px minmax(0,1fr) 31px;
    gap:5px;
    margin:0;
    font-size:8px;
    line-height:1;
  }
  .radio-v3 .radio-progress-row input[type=range]{
    height:14px;
    margin:0;
  }

  .radio-v3 .radio-bottom{
    grid-area:bottom;
    margin:0;
    gap:6px;
    min-width:0;
  }
  .radio-v3 .radio-bottom .vol{
    display:none;
  }
  .radio-v3 .radio-mute{
    width:32px;
    min-width:32px;
    height:30px;
    padding:0;
    font-size:11px;
  }
  .radio-v3 select{
    height:30px;
    padding:4px 8px;
    border-radius:8px;
    font-size:10px;
    line-height:1;
  }
  .radio-v3 .radio-help{display:none}
}

@media (max-width:390px){
  .radio-v3{
    left:6px;
    right:6px;
    bottom:6px;
    padding:7px;
    gap:5px 6px;
  }
  .radio-v3 .radio-cover{width:32px;height:32px;flex-basis:32px;border-radius:8px;font-size:10px}
  .radio-v3 .radio-now small{display:none}
  .radio-v3 .radio-now strong{font-size:11px}
  .radio-v3 button{height:32px;min-width:32px}
  .radio-v3 .radio-play{width:36px;flex-basis:36px}
  .radio-v3 .radio-prev,.radio-v3 .radio-next{width:30px;min-width:30px}
}

/* AGN HackNet integrated website view */
.hacknet-hero{position:relative;min-height:590px;overflow:hidden;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(5,5,8,.96),rgba(31,8,45,.84))}.hacknet-grid{position:absolute;inset:-20%;opacity:.22;background-image:linear-gradient(rgba(168,85,247,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(168,85,247,.22) 1px,transparent 1px);background-size:46px 46px;transform:perspective(650px) rotateX(60deg) scale(1.35);transform-origin:center bottom}.hacknet-hero-inner{position:relative;z-index:2;min-height:590px;padding:92px 0 75px;display:grid;grid-template-columns:1.25fr .75fr;gap:46px;align-items:center}.hacknet-copy h1{font-size:clamp(3.3rem,7vw,6.7rem);line-height:.88;letter-spacing:-.055em;margin:.16em 0 .22em}.hacknet-copy h1 em{font-style:normal;color:var(--purple)}.hacknet-terminal-card{background:rgba(11,8,16,.9);border:1px solid #392049;border-radius:18px;padding:26px;box-shadow:0 25px 80px rgba(0,0,0,.42)}.terminal-line{display:flex;justify-content:space-between;gap:12px;font-family:monospace;font-size:.76rem;color:#a994b8}.terminal-line b{color:var(--good)}.terminal-big{font-size:6rem;line-height:1;color:var(--purple);font-weight:900;margin-top:28px}.hacknet-terminal-card>p{margin-top:0;color:var(--muted);text-transform:uppercase;letter-spacing:.15em}.terminal-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.terminal-stats span{border:1px solid #291936;background:#0b0810;border-radius:10px;padding:12px;color:var(--muted);font-size:.78rem}.terminal-stats b{color:white;font-size:1.15rem;margin-right:5px}.hacknet-section strong{color:#fff}.hacknet-panel{background:linear-gradient(145deg,#100c15,#0c0910);border:1px solid var(--line);border-radius:20px;padding:48px}.hacknet-live{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.78rem}.hacknet-live i{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 14px var(--good)}.hacknet-leaderboard{border:1px solid var(--line);background:#0c0910;border-radius:14px;overflow:hidden}.hacknet-table-head,.hacknet-leader-row{display:grid;grid-template-columns:50px 2fr 1.1fr .65fr .9fr .9fr .8fr 1fr;gap:10px;align-items:center;padding:13px 16px}.hacknet-table-head{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:#8c8195;background:#15101b}.hacknet-leader-row{border-top:1px solid var(--line);min-height:62px}.hacknet-leader-row.top{background:linear-gradient(90deg,rgba(168,85,247,.12),transparent)}.hacknet-rank{font-family:monospace;color:var(--purple);font-weight:900}.hacknet-name{font-weight:900}.hacknet-clearance{display:inline-flex;width:max-content;padding:4px 8px;border-radius:999px;background:#201629;color:#d7b7f5;font-size:.7rem}.hacknet-stat{color:var(--muted);font-size:.82rem}.hacknet-loading{padding:35px;text-align:center;color:var(--muted)}.hacknet-note{padding:12px 16px;border-top:1px solid var(--line);font-size:.7rem;color:#746b7b}.hacknet-error{color:var(--danger)}.hacknet-steps,.hacknet-tier-grid,.hacknet-gauntlets,.hacknet-tips,.hacknet-talents{display:grid;gap:15px}.hacknet-steps,.hacknet-tier-grid,.hacknet-gauntlets{grid-template-columns:repeat(3,1fr)}.hacknet-tips,.hacknet-talents{grid-template-columns:repeat(2,1fr)}.hacknet-steps article,.hacknet-tier-grid article,.hacknet-gauntlets article,.hacknet-tips article,.hacknet-talents>div,.hacknet-trace-grid article{border:1px solid var(--line);background:var(--panel);padding:22px;border-radius:12px}.hacknet-steps article>b,.hacknet-tier-grid article>span,.hacknet-gauntlets article>span{color:var(--good);font-family:monospace;font-size:.72rem;letter-spacing:.12em}.hacknet-steps p,.hacknet-tier-grid p,.hacknet-tier-grid small,.hacknet-gauntlets p,.hacknet-tips p,.hacknet-talents p,.hacknet-trace-grid p{color:var(--muted)}.hacknet-router-table{margin:28px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden}.hacknet-router-row{display:grid;grid-template-columns:2fr repeat(4,1fr);padding:13px 16px;border-bottom:1px solid var(--line);gap:12px}.hacknet-router-row:last-child{border:0}.hacknet-router-row.head{background:#21142b;color:#d4b7ff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.hacknet-callout{border-left:3px solid var(--purple);padding:16px 18px;margin:25px 0;background:#1a1120;color:#d5ccdb;border-radius:0 9px 9px 0}.hacknet-tier-grid dl{margin:20px 0}.hacknet-tier-grid dl div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:8px 0}.hacknet-tier-grid dt{color:var(--muted)}.hacknet-tier-grid dd{margin:0;font-weight:800}.hacknet-trace-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:28px 0}.hacknet-trace-grid b{font-size:2rem;color:var(--danger)}.hacknet-trace-grid h3{font-size:.95rem}.hacknet-faq details{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:15px 18px;margin:10px 0}.hacknet-faq summary{cursor:pointer;font-weight:800}.hacknet-faq p{color:var(--muted)}
@media(max-width:900px){.hacknet-hero-inner{grid-template-columns:1fr}.hacknet-terminal-card{display:none}.hacknet-steps,.hacknet-tier-grid,.hacknet-trace-grid{grid-template-columns:repeat(2,1fr)}.hacknet-table-head{display:none}.hacknet-leader-row{grid-template-columns:42px 1.5fr 1fr 70px}.hacknet-leader-row span:nth-child(5),.hacknet-leader-row span:nth-child(6),.hacknet-leader-row span:nth-child(7),.hacknet-leader-row span:nth-child(8){display:none}}
@media(max-width:640px){.hacknet-hero,.hacknet-hero-inner{min-height:520px}.hacknet-hero-inner{padding:65px 0}.hacknet-copy h1{font-size:clamp(3rem,16vw,4.7rem)}.hacknet-panel{padding:28px 18px}.hacknet-steps,.hacknet-tier-grid,.hacknet-gauntlets,.hacknet-tips,.hacknet-trace-grid,.hacknet-talents{grid-template-columns:1fr}.hacknet-router-row{grid-template-columns:1.7fr .7fr 1fr}.hacknet-router-row span:nth-child(4),.hacknet-router-row span:nth-child(5){display:none}.hacknet-leader-row{grid-template-columns:36px 1.5fr 1fr 55px;padding:12px 10px}.hacknet-name{font-size:.8rem}.hacknet-clearance{font-size:.58rem}}

/* HackNet homepage entry points */
.hacknet-home-entry{padding-top:34px;padding-bottom:34px}
.hacknet-home-card{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;text-decoration:none;color:inherit;border:1px solid rgba(168,85,247,.42);background:linear-gradient(125deg,rgba(27,13,38,.96),rgba(10,8,14,.96));border-radius:22px;padding:34px 38px;box-shadow:0 20px 70px rgba(0,0,0,.28);transition:.2s ease}
.hacknet-home-card:hover{transform:translateY(-3px);border-color:var(--purple);box-shadow:0 25px 85px rgba(89,28,128,.28)}
.hacknet-home-card h2{margin:.28rem 0 .55rem;font-size:clamp(1.8rem,4vw,3rem)}
.hacknet-home-card p{max-width:850px;color:var(--muted);margin:0 0 18px}
.hacknet-home-link{display:inline-block;color:#fff;font-weight:900;letter-spacing:.04em}
.hacknet-home-badge{width:150px;height:150px;border-radius:20px;border:1px solid rgba(168,85,247,.45);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#0c0910;box-shadow:inset 0 0 35px rgba(168,85,247,.08)}
.hacknet-home-badge strong{font-size:2.25rem;line-height:.85;color:var(--purple)}
.hacknet-home-badge span{font-size:.67rem;letter-spacing:.14em;color:var(--muted);margin-top:10px}
.feature-link-card{display:block;text-decoration:none;color:inherit;transition:.2s ease}
.feature-link-card:hover{transform:translateY(-3px);border-color:var(--purple)}
.feature-link-card b{display:block;margin-top:14px;color:#fff}
@media(max-width:640px){.hacknet-home-card{grid-template-columns:1fr;padding:26px 22px}.hacknet-home-badge{width:100%;height:auto;min-height:94px;flex-direction:row;gap:14px}.hacknet-home-badge strong{font-size:1.75rem}.hacknet-home-badge span{margin-top:0;text-align:left}}

/* AGN Website Store */
.store-hero{padding:105px 0 48px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 72% 25%,rgba(154,77,255,.22),transparent 24%),radial-gradient(circle at 12% 0,#2a0f3d 0,transparent 35%),#08050d}.store-hero-inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);align-items:end;gap:35px}.store-hero h1{font-size:clamp(3rem,6vw,6rem);line-height:.9;letter-spacing:-.055em;margin:.14em 0}.store-hero h1 em{font-style:normal;color:var(--purple)}.store-security-card{background:linear-gradient(145deg,rgba(27,17,39,.95),rgba(13,9,19,.95));border:1px solid rgba(170,84,255,.32);border-radius:18px;padding:22px;box-shadow:0 20px 50px rgba(0,0,0,.25)}.store-security-card span{display:block;font-size:.65rem;letter-spacing:.18em;color:#be91f0}.store-security-card strong{display:block;font-size:1.35rem;margin:6px 0}.store-security-card p{margin:0;color:#a999b6;font-size:.86rem;line-height:1.55}.store-toolbar{display:flex;justify-content:space-between;align-items:end;gap:20px}.store-toolbar h2{margin:.2em 0 0}.store-search-wrap{width:min(390px,100%)}.store-search{width:100%;background:#0f0a15;border:1px solid rgba(168,86,255,.25);border-radius:12px;color:#fff;padding:13px 15px;outline:none}.store-search:focus{border-color:var(--purple)}.store-categories{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 28px}.store-category{appearance:none;border:1px solid rgba(169,85,255,.25);background:#100b16;color:#c8b8d3;border-radius:999px;padding:10px 14px;font-size:.72rem;font-weight:900;letter-spacing:.08em;cursor:pointer}.store-category:hover,.store-category.active{border-color:#a653ff;background:linear-gradient(135deg,rgba(132,47,224,.35),rgba(76,24,120,.42));color:white}.store-status{text-align:center;color:#a994b8;padding:34px 10px}.store-status:empty{display:none}.store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.store-item{position:relative;overflow:hidden;background:linear-gradient(155deg,#171020,#0c0911);border:1px solid rgba(169,85,255,.22);border-radius:18px;box-shadow:0 15px 45px rgba(0,0,0,.22);display:flex;flex-direction:column;min-height:100%;transition:transform .2s ease,border-color .2s ease}.store-item:hover{transform:translateY(-3px);border-color:rgba(174,93,255,.52)}.store-item.featured:after{content:'FEATURED';position:absolute;top:13px;right:13px;z-index:2;background:linear-gradient(135deg,#a34cff,#6e1bc7);border-radius:999px;padding:6px 9px;font-size:.56rem;font-weight:1000;letter-spacing:.12em}.store-item-media{height:220px;background:radial-gradient(circle at 50% 50%,rgba(154,77,255,.25),transparent 43%),#0c0811;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid rgba(169,85,255,.16)}.store-item-media img{width:100%;height:100%;object-fit:cover}.store-item-placeholder{font-size:3.2rem;font-weight:1000;color:rgba(173,98,255,.55);letter-spacing:-.08em}.store-item-body{padding:18px;display:flex;flex-direction:column;flex:1}.store-item-category{font-size:.58rem;color:#bf91eb;letter-spacing:.15em;font-weight:900;text-transform:uppercase}.store-item h3{font-size:1.25rem;margin:8px 0}.store-item-desc{color:#ab9ab7;font-size:.88rem;line-height:1.6;margin:0 0 18px}.store-item-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid rgba(169,85,255,.13)}.store-price{font-size:1.2rem;font-weight:1000}.store-buy{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:linear-gradient(135deg,#9948f5,#671bc0);border:1px solid rgba(188,122,255,.38);color:white;border-radius:10px;padding:10px 12px;font-size:.67rem;font-weight:1000;letter-spacing:.08em}.store-buy.disabled{opacity:.45;pointer-events:none}.store-empty{grid-column:1/-1;border:1px dashed rgba(168,86,255,.25);border-radius:16px;padding:42px 20px;text-align:center;color:#a994b8}@media(max-width:900px){.store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.store-hero-inner{grid-template-columns:1fr}.store-security-card{max-width:520px}}@media(max-width:640px){.store-hero{padding:82px 0 36px}.store-hero h1{font-size:3.5rem}.store-toolbar{display:block}.store-search-wrap{margin-top:17px}.store-grid{grid-template-columns:1fr}.store-item-media{height:205px}.store-categories{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.store-category{white-space:nowrap}}

/* AGN Store v5 rebuild */
.store-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.store-info{padding-top:0}.store-item-placeholder{display:grid;place-items:center;text-align:center;line-height:.8}.store-item-placeholder span{font-size:3rem;font-weight:1000}.store-item-placeholder small{font-size:.6rem;letter-spacing:.3em;margin-top:8px}.store-price:empty:before{content:'VIEW PRICE';font-size:.72rem;color:#ad9cba}.cheat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.cheat-card{display:grid;grid-template-columns:56px 1fr;gap:14px;background:linear-gradient(145deg,#171020,#0c0911);border:1px solid rgba(169,85,255,.22);border-radius:16px;padding:17px}.cheat-number{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,rgba(163,76,255,.3),rgba(92,26,163,.35));border:1px solid rgba(184,107,255,.28);font-weight:1000;color:#d9b9ff}.cheat-card h3{font-size:1.25rem;margin:5px 0 13px}.cheat-card p{color:#ab9ab7;font-size:.87rem;line-height:1.55;margin:8px 0}.cheat-card p strong{display:block;color:#cba7f1;font-size:.6rem;letter-spacing:.12em;margin-bottom:3px}.cheat-rule{border-left:2px solid #9a4dff;padding-left:10px}.cheat-example{margin-top:12px;padding:10px 12px;background:#09060d;border:1px solid rgba(169,85,255,.16);border-radius:9px;color:#d9cce2;font-family:Consolas,monospace;font-size:.78rem}.cheat-gauntlet-title{margin-top:36px}.gauntlet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:13px}.gauntlet-card{background:#0e0a13;border:1px solid rgba(169,85,255,.2);border-radius:14px;padding:15px}.gauntlet-card h3{margin:6px 0 8px;font-size:1rem}.gauntlet-card p{margin:0;color:#a999b6;font-size:.82rem;line-height:1.55}@media(max-width:900px){.cheat-grid{grid-template-columns:1fr}.gauntlet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.gauntlet-grid{grid-template-columns:1fr}.cheat-card{grid-template-columns:1fr}.cheat-number{width:42px;height:42px}}
