:root,
:root[data-theme="dark"] {
  --font-main: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  --bg: #080b13;
  --surface: rgba(18, 24, 41, .76);
  --surface-solid: #111727;
  --surface-soft: rgba(255,255,255,.04);
  --line: rgba(255,255,255,.11);
  --line-strong: rgba(255,255,255,.2);
  --muted: #aab4c8;
  --subtle: #7f8ba3;
  --text: #f7f9ff;
  --shadow: rgba(0,0,0,.34);
  --game-bg: #080d1b;
  --game-popup: rgba(18,24,41,.95);
  --card-glow: rgba(82,97,255,.14);
}

:root[data-theme="light"] {
  --bg: #f4f6fb;
  --surface: rgba(255,255,255,.86);
  --surface-solid: #ffffff;
  --surface-soft: rgba(22,32,62,.035);
  --line: rgba(25,36,65,.12);
  --line-strong: rgba(25,36,65,.22);
  --muted: #5f6d86;
  --subtle: #7b879d;
  --text: #151a27;
  --shadow: rgba(39,49,87,.14);
  --game-bg: #eaf0ff;
  --game-popup: rgba(255,255,255,.96);
  --card-glow: rgba(82,97,255,.1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; color-scheme: dark; }
html[data-theme="light"] { color-scheme: light; }
body { margin: 0; color: var(--text); background: var(--bg); font-family: var(--font-main), Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; overflow-x: hidden; transition: color .25s ease, background .25s ease; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
main { min-height: 100vh; position: relative; isolation: isolate; }
main::before { content: ""; position: fixed; inset: 0; z-index: -3; opacity: .3; background-image: linear-gradient(color-mix(in srgb, var(--text) 4%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--text) 4%, transparent) 1px, transparent 1px); background-size: 70px 70px; mask-image: linear-gradient(to bottom, black 0, transparent 78%); }
.ambient { position: fixed; z-index: -2; border-radius: 999px; filter: blur(105px); pointer-events: none; }
.ambient-one { width: 38rem; height: 38rem; right: -12rem; top: -12rem; background: rgba(78,82,255,.2); }
.ambient-two { width: 30rem; height: 30rem; left: -14rem; top: 42rem; background: rgba(45,103,255,.13); }
:root[data-theme="light"] .ambient-one { background: rgba(93,91,255,.14); }
:root[data-theme="light"] .ambient-two { background: rgba(67,133,255,.11); }
.shell { width: min(1160px, calc(100% - 48px)); margin-inline: auto; }

.nav { min-height: 108px; display: flex; align-items: center; justify-content: space-between; }
.brand-image { display: inline-flex; align-items: center; }
.brand-image img { width: 78px; height: auto; display: block; filter: none; }
:root[data-theme="light"] .brand-image img { filter: invert(1); }
.brand-image-small img { width: 58px; }
.nav-actions { display: flex; align-items: center; gap: 10px; }
.status { color: var(--muted); font-size: 13px; display: inline-flex; align-items: center; gap: 8px; margin-right: 4px; }
.status i { width: 7px; height: 7px; background: #48cf91; border-radius: 50%; box-shadow: 0 0 12px #48cf91; }
.language,.theme-toggle { border: 1px solid var(--line); color: var(--text); background: var(--surface-soft); width:44px;height:44px;padding:0;display:grid;place-items:center;border-radius:13px;font-family:var(--font-main);font-size:14px;line-height:1;font-weight:700;cursor:pointer;transition:.2s ease; }
.theme-toggle { position:relative; }
.theme-toggle svg { display:block;width:20px;height:20px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
:root[data-theme="dark"] .theme-icon .icon-moon { display:none; }
:root[data-theme="light"] .theme-icon .icon-sun { display:none; }
.language:hover,.theme-toggle:hover { border-color: var(--line-strong); background: color-mix(in srgb, var(--text) 7%, transparent); }

.hero { padding: 78px 0 100px; display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 72px; }
h1 { font-size: clamp(50px, 5.5vw, 74px); line-height: 1.055; letter-spacing: -.05em; max-width: 710px; margin: 0; font-weight: 680; }
.lead { max-width: 650px; color: var(--muted); font-size: 18px; line-height: 1.72; margin: 30px 0 36px; }
.hero-actions,.contact-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button { min-height: 54px; padding: 0 23px; border-radius: 15px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; font-size: 15px; font-weight: 700; transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); }
.button svg { width: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.button-primary { color: #fff; background: linear-gradient(135deg,#5678ff,#7155ed); box-shadow: 0 18px 46px rgba(81,91,242,.25); }
.button-primary:hover { background: linear-gradient(135deg,#6382ff,#8065f5); }
.button-secondary { border: 1px solid var(--line); background: var(--surface-soft); }
.button-secondary:hover { border-color: var(--line-strong); background: color-mix(in srgb,var(--text) 7%,transparent); }
.stat-row { display: flex; margin-top: 50px; }
.stat { padding: 0 29px; border-left: 1px solid var(--line); display: flex; flex-direction: column; }
.stat:first-child { padding-left: 0; border-left: 0; }
.stat strong { font-size: 18px; }
.stat span { color: var(--subtle); font-size: 13px; margin-top: 6px; }

.hero-visual { height: 510px; position: relative; display: grid; place-items: center; perspective: 1000px; }
.visual-grid { position: absolute; width: 520px; height: 520px; border-radius: 50%; opacity: .5; background-image: linear-gradient(rgba(121,137,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(121,137,255,.14) 1px,transparent 1px); background-size: 32px 32px; mask-image: radial-gradient(circle,black 10%,transparent 68%); transform: rotateX(58deg) rotateZ(-17deg); }
.server-orbit { position: absolute; border: 1px solid rgba(116,128,255,.18); border-radius: 50%; }
.orbit-one { width: 410px; height: 410px; animation: spin 18s linear infinite; }.orbit-two { width: 510px; height: 210px; transform: rotate(-18deg); border-color: rgba(80,145,255,.13); }
.server-core { width: 310px; border: 1px solid rgba(123,139,218,.25); background: linear-gradient(145deg,#171e33,#0d1221); border-radius: 26px; padding: 19px; color: #f7f9ff; box-shadow: 0 35px 100px rgba(0,0,0,.4),inset 0 1px rgba(255,255,255,.06); transform: rotateY(-8deg) rotateX(4deg); animation: float 6s ease-in-out infinite; }
.core-top { display: flex; align-items: center; gap: 10px; font-family: var(--font-mono); color: #9aa6bc; font-size: 10px; letter-spacing: .07em; }.core-top>i { margin-left:auto;width:6px;height:6px;border-radius:50%;background:#70e7ad;box-shadow:0 0 10px #70e7ad; }
.server-mark { width:25px;height:25px;border:1px solid rgba(255,255,255,.14);border-radius:7px;padding:5px;position:relative; }.server-mark span{display:block;height:2px;margin-bottom:4px;background:rgba(255,255,255,.7);border-radius:2px}.server-mark i{position:absolute;width:3px;height:3px;border-radius:50%;background:#6f86ff;right:5px;bottom:5px}
.core-screen { margin-top:17px;min-height:170px;padding:23px;border-radius:17px;border:1px solid rgba(255,255,255,.07);background:#070b16;display:flex;flex-direction:column;justify-content:center }.core-screen>span{color:#78859d;font-family:var(--font-mono);font-size:9px;letter-spacing:.14em}.core-screen strong{color:#81efb7;letter-spacing:.12em;font-family:var(--font-mono);font-size:19px;margin-top:9px;text-shadow:0 0 24px rgba(102,230,169,.38)}
.pulse-line{height:40px;display:flex;align-items:end;gap:8px;margin-top:23px}.pulse-line i{width:18px;background:linear-gradient(#697cff,rgba(105,124,255,.15));border-radius:4px 4px 1px 1px;animation:pulse 1.8s ease-in-out infinite}.pulse-line i:nth-child(1){height:35%}.pulse-line i:nth-child(2){height:55%;animation-delay:-.2s}.pulse-line i:nth-child(3){height:42%;animation-delay:-.5s}.pulse-line i:nth-child(4){height:80%;animation-delay:-.8s}.pulse-line i:nth-child(5){height:62%;animation-delay:-.35s}.pulse-line i:nth-child(6){height:95%;animation-delay:-.7s}.pulse-line i:nth-child(7){height:70%;animation-delay:-.15s}
.core-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.core-stats div{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);padding:11px;border-radius:12px;display:flex;flex-direction:column;gap:5px}.core-stats span{color:#78859d;font-family:var(--font-mono);font-size:8px}.core-stats b{font-size:13px}
.floating-card{position:absolute;display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid rgba(255,255,255,.1);background:rgba(14,19,35,.84);backdrop-filter:blur(15px);border-radius:12px;color:#c5cde0;font-family:var(--font-mono);font-size:10px;box-shadow:0 15px 40px rgba(0,0,0,.3)}.floating-card i{width:5px;height:5px;background:#6680ff;border-radius:50%;box-shadow:0 0 8px #6680ff}.floating-card-top{right:14px;top:104px;animation:float 5s ease-in-out infinite -1s}.floating-card-bottom{left:9px;bottom:88px;animation:float 5s ease-in-out infinite -2.5s}

.features { padding: 92px 0; border-top: 1px solid var(--line); }
.section-heading span,.contact-kicker { font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:#6f80b1 }
.section-heading h2,.contact h2,.game-copy h2 { font-size:clamp(35px,4vw,48px);letter-spacing:-.04em;margin:14px 0 0;max-width:650px;line-height:1.12 }
.feature-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px }
.feature-card { min-height:245px;position:relative;padding:32px;border:1px solid var(--line);border-radius:23px;background:linear-gradient(145deg,var(--surface),var(--surface-soft));overflow:hidden;box-shadow:0 18px 45px var(--shadow) }
.feature-card::after{content:"";position:absolute;width:150px;height:150px;right:-70px;bottom:-75px;border-radius:50%;background:var(--card-glow);filter:blur(20px)}.feature-number{color:var(--subtle);font-family:var(--font-mono);font-size:11px}.feature-card h3{font-size:21px;margin:53px 0 13px}.feature-card p{color:var(--muted);font-size:15px;line-height:1.7;margin:0;max-width:310px}

.game { padding: 80px 0 105px; }
.game-copy { display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:34px }
.game-copy>div { flex:1; }.game-copy p{color:var(--muted);font-size:16px;line-height:1.7;max-width:520px;margin:0 0 4px}.game-badge{display:inline-flex;padding:8px 11px;border:1px solid rgba(98,115,255,.25);border-radius:999px;background:rgba(91,105,255,.08);color:#7181db;font-size:11px;font-weight:800;letter-spacing:.1em}.game-copy h2{font-size:clamp(38px,4vw,52px);margin-top:14px}
.runner-wrap{border:1px solid var(--line);padding:18px;border-radius:28px;background:linear-gradient(145deg,var(--surface),var(--surface-soft));box-shadow:0 30px 80px var(--shadow)}
.runner-top{min-height:64px;padding:0 8px 12px;display:flex;align-items:center;justify-content:space-between;gap:24px}.runner-name{display:flex;flex-direction:column;gap:4px;flex:0 0 auto}.runner-name strong{font-size:14px;letter-spacing:.08em}.runner-name span{color:var(--muted);font-size:13px}.runner-hud{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 20px;color:var(--subtle);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.runner-hud span{white-space:nowrap}.runner-hud b{color:var(--text);font-size:14px;margin-left:5px}.runner-hud .is-active b{color:#67e6aa}.runner-help{min-height:44px;margin-bottom:12px;padding:9px 12px;border-radius:13px;background:var(--surface-soft);display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.runner-help span{font-weight:700;color:var(--text)}.runner-help kbd{min-width:30px;height:26px;padding:0 8px;display:inline-grid;place-items:center;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:7px;background:var(--surface-solid);font:700 12px var(--font-main)}.runner-help i{font-style:normal;margin-left:4px}
.runner-field{position:relative;display:block;width:100%;height:330px;padding:0;overflow:hidden;border:1px solid rgba(103,122,255,.2);outline:none;border-radius:20px;background:radial-gradient(circle at 70% 10%,rgba(90,83,255,.18),transparent 35%),var(--game-bg);cursor:pointer;color:#f7f9ff;touch-action:manipulation}.runner-field:focus-visible{outline:3px solid #6680ff;outline-offset:3px}.runner-stars{position:absolute;inset:0;opacity:.34;background-image:radial-gradient(circle,rgba(125,140,207,.75) 1px,transparent 1.5px);background-size:47px 41px}.runner-ground{position:absolute;left:0;right:0;bottom:48px;height:2px;background:linear-gradient(90deg,transparent,rgba(111,130,255,.72),transparent);box-shadow:0 13px 34px rgba(74,91,255,.2)}.runner-ground::after{content:"";position:absolute;top:9px;left:0;width:100%;height:75px;opacity:.16;background-image:linear-gradient(90deg,rgba(119,132,255,.4) 1px,transparent 1px);background-size:42px 100%;transform:skewX(-45deg)}
.runner-server{position:absolute;z-index:2;left:62px;bottom:50px;width:58px;height:62px;border:1px solid rgba(151,163,255,.7);border-radius:11px;background:linear-gradient(145deg,#283457,#11182c);box-shadow:0 10px 28px rgba(47,58,144,.42);will-change:transform}.runner-server::after{content:"";position:absolute;inset:-8px;border:2px solid transparent;border-radius:16px;opacity:0;transition:.2s}.runner-server.has-shield::after{border-color:#62e6aa;opacity:1;box-shadow:0 0 24px rgba(72,218,157,.44)}.runner-server>i{display:block;height:16px;border-bottom:1px solid rgba(255,255,255,.11);position:relative}.runner-server>i::after{content:"";position:absolute;right:10px;top:6px;width:4px;height:4px;border-radius:50%;background:#76eab2;box-shadow:0 0 7px #76eab2}.runner-server>b{position:absolute;left:11px;right:21px;bottom:10px;height:4px;border-radius:3px;background:#687eff}.runner-server>em{position:absolute;width:18px;height:4px;left:20px;bottom:-7px;border-radius:50%;background:rgba(80,94,255,.28);filter:blur(2px)}.runner-server small,.runner-obstacle small,.runner-pickup small{position:absolute;left:50%;transform:translateX(-50%);top:-22px;color:#8290b1;font:700 9px var(--font-mono);letter-spacing:.08em;white-space:nowrap}
.runner-obstacle{position:absolute;z-index:2;left:0;bottom:50px;width:46px;height:55px;border:1px solid rgba(255,112,135,.62);border-radius:10px 10px 5px 5px;background:linear-gradient(160deg,rgba(255,73,104,.38),rgba(96,21,44,.72));box-shadow:0 0 30px rgba(255,67,100,.22);will-change:transform}.runner-obstacle>i{display:grid;place-items:center;width:16px;height:16px;margin:7px auto 4px;font-style:normal;font-size:10px;font-weight:800;border:1px solid rgba(255,167,181,.7);border-radius:50%;color:#ff9eb0}.runner-obstacle>b{display:block;height:2px;width:26px;background:rgba(255,166,181,.55);border-radius:2px;margin:4px auto}.runner-obstacle small{color:#e1788b}.runner-obstacle[data-type="tower"]{width:38px;height:78px;border-color:rgba(191,118,255,.72);background:linear-gradient(160deg,rgba(155,73,255,.46),rgba(55,26,100,.82));box-shadow:0 0 34px rgba(149,67,255,.24)}.runner-obstacle[data-type="tower"] small{color:#ba8bea}.runner-obstacle[data-type="tower"]>i{margin-top:10px;color:#d5a9ff;border-color:#c48eff}.runner-obstacle[data-type="tower"]>b{width:22px;margin-top:7px}.runner-obstacle[data-type="packet"]{width:76px;height:38px;border-color:rgba(255,184,87,.7);background:linear-gradient(160deg,rgba(255,161,55,.43),rgba(105,55,10,.78));box-shadow:0 0 30px rgba(255,159,47,.2)}.runner-obstacle[data-type="packet"] small{color:#e7ad63}.runner-obstacle[data-type="packet"]>i{float:left;margin:10px 6px 0 10px;color:#ffd08c;border-color:#f2b75f}.runner-obstacle[data-type="packet"]>b{width:30px;margin:7px 7px 0 auto}.runner-pickup{position:absolute;z-index:2;left:0;bottom:132px;width:38px;height:38px;border:1px solid rgba(100,237,176,.75);border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(127,255,200,.55),rgba(24,111,75,.78));box-shadow:0 0 30px rgba(72,222,157,.38);will-change:transform;animation:pickupPulse 1s ease-in-out infinite}.runner-pickup>i{display:grid;place-items:center;height:100%;font-style:normal;font-size:22px;font-weight:600;color:#d5ffec}.runner-pickup small{color:#6ce6ad}
.runner-field.shield-hit{animation:shieldHit .34s ease}.runner-toast{position:absolute;z-index:4;left:50%;top:18px;transform:translateX(-50%);padding:9px 14px;border:1px solid rgba(105,231,174,.38);border-radius:999px;background:rgba(13,38,31,.9);color:#7cedb9;font:800 11px var(--font-mono);letter-spacing:.1em;box-shadow:0 12px 35px rgba(0,0,0,.25);pointer-events:none}
.runner-overlay{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);width:min(360px,calc(100% - 40px));padding:24px 26px;display:flex;flex-direction:column;align-items:center;border:1px solid rgba(116,132,255,.3);border-radius:18px;background:var(--game-popup);color:var(--text);box-shadow:0 18px 60px rgba(0,0,0,.28);pointer-events:none}.runner-overlay b{font-family:var(--font-mono);font-size:13px;letter-spacing:.13em;color:#45b77f}.runner-overlay.is-over b{color:#ef5f78}.runner-overlay strong{font-size:18px;margin-top:11px}.runner-overlay i{margin-top:8px;color:var(--muted);font-size:13px;font-style:normal}

.contact{margin-top:25px;margin-bottom:82px;min-height:285px;padding:56px;display:flex;align-items:center;justify-content:space-between;gap:40px;border:1px solid rgba(112,128,255,.2);border-radius:30px;background:radial-gradient(circle at 85% 10%,rgba(94,77,255,.17),transparent 36%),linear-gradient(135deg,var(--surface),var(--surface-soft));box-shadow:0 30px 80px var(--shadow)}.contact h2{margin-top:13px}.contact p{color:var(--muted);font-size:16px;line-height:1.7;max-width:580px;margin:16px 0 0}.contact-actions{justify-content:flex-end;min-width:405px}.footer{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);color:var(--subtle);font-size:13px}

@keyframes float{0%,100%{transform:translateY(0) rotateY(-8deg) rotateX(4deg)}50%{transform:translateY(-11px) rotateY(-8deg) rotateX(4deg)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:.45;transform:scaleY(.75);transform-origin:bottom}50%{opacity:1;transform:scaleY(1)}}@keyframes pickupPulse{50%{filter:brightness(1.25);box-shadow:0 0 42px rgba(72,222,157,.56)}}@keyframes shieldHit{50%{box-shadow:inset 0 0 80px rgba(74,232,165,.34)}}

@media(max-width:900px){.hero{grid-template-columns:1fr;padding-top:58px;gap:30px}.hero-copy{text-align:center}.lead{margin-inline:auto}.hero-actions,.stat-row{justify-content:center}.hero-visual{height:430px}.visual-grid{width:450px;height:450px}.feature-grid{grid-template-columns:1fr}.feature-card{min-height:205px}.feature-card h3{margin-top:36px}.game-copy{align-items:flex-start;flex-direction:column;gap:16px;text-align:left}.game-copy p{max-width:650px}.contact{text-align:center;flex-direction:column}.contact-actions{justify-content:center;min-width:0}}
@media(max-width:560px){.shell{width:min(100% - 28px,1160px)}.nav{min-height:88px}.brand-image img{width:66px}.status{display:none}.hero{padding:48px 0 66px}h1{font-size:42px}.lead{font-size:17px;line-height:1.64}.hero-actions .button,.contact-actions .button{width:100%}.stat{padding:0 14px}.stat strong{font-size:16px}.stat span{font-size:11px}.hero-visual{height:370px}.server-core{width:278px}.orbit-one{width:330px;height:330px}.orbit-two{width:350px}.floating-card-top{right:0}.floating-card-bottom{left:0}.features{padding:68px 0}.feature-card{padding:27px}.game{padding:55px 0 78px}.runner-wrap{padding:11px;border-radius:20px}.runner-top{align-items:stretch;flex-direction:column}.runner-hud{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px;justify-items:start}.runner-help{flex-wrap:wrap}.runner-help i{width:100%;margin:2px 0 0}.runner-field{height:270px}.runner-server{left:38px;width:52px;height:57px}.runner-overlay{padding:20px 16px}.runner-overlay strong{font-size:16px}.contact{padding:40px 23px;border-radius:24px;margin-bottom:58px}.footer{flex-direction:column;justify-content:center;padding:34px 0;text-align:center}.brand-image-small img{width:54px}}
@media(max-width:560px){.runner-help{min-height:38px;margin-bottom:8px;padding:8px 11px;flex-wrap:nowrap}.runner-help span,.runner-help kbd{display:none}.runner-help i{width:auto;margin:0;font-size:12px}.runner-overlay{left:10px;right:10px;top:10px;transform:none;width:auto;padding:9px 12px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;border-radius:11px;text-align:left;box-shadow:0 8px 28px rgba(0,0,0,.18)}.runner-overlay b{grid-row:1;font-size:9px;letter-spacing:.1em}.runner-overlay strong{grid-column:2;grid-row:1;margin:0;font-size:12px;line-height:1.25}.runner-overlay i{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
