@font-face{font-family:'Unbounded';font-weight:500;font-display:swap;src:url(fonts/unbounded-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Unbounded';font-weight:500;font-display:swap;src:url(fonts/unbounded-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF}
@font-face{font-family:'Unbounded';font-weight:700;font-display:swap;src:url(fonts/unbounded-cyrillic-700-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Unbounded';font-weight:700;font-display:swap;src:url(fonts/unbounded-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF}
@font-face{font-family:'Unbounded';font-weight:800;font-display:swap;src:url(fonts/unbounded-cyrillic-800-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Unbounded';font-weight:800;font-display:swap;src:url(fonts/unbounded-latin-800-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF}
@font-face{font-family:'Manrope';font-weight:400;font-display:swap;src:url(fonts/manrope-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Manrope';font-weight:400;font-display:swap;src:url(fonts/manrope-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF}
@font-face{font-family:'Manrope';font-weight:600;font-display:swap;src:url(fonts/manrope-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Manrope';font-weight:600;font-display:swap;src:url(fonts/manrope-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF}
@font-face{font-family:'Manrope';font-weight:700;font-display:swap;src:url(fonts/manrope-cyrillic-700-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Manrope';font-weight:700;font-display:swap;src:url(fonts/manrope-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF}
@font-face{font-family:'Manrope';font-weight:800;font-display:swap;src:url(fonts/manrope-cyrillic-800-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Manrope';font-weight:800;font-display:swap;src:url(fonts/manrope-latin-800-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF}

:root{
  --ink:#0e0d22; --ink2:#18163a; --ink3:#25225a; --line:rgba(233,230,255,.14);
  --gold:#ffc95c; --gold2:#ffe3a3; --cream:#f7f0e3; --pale:#e9e6ff; --muted:#9a96c8; --dim:rgba(233,230,255,.16);
  --rose:#ff8fa8; --mint:#8ff0c8;
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--ink);min-height:100%}
body{min-height:100%}
body{background:radial-gradient(120% 90% at 50% 0%,#2a2566 0%,var(--ink2) 45%,var(--ink) 100%) no-repeat;color:var(--pale);font-family:'Manrope',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.disp{font-family:'Unbounded','Manrope',sans-serif;letter-spacing:-.01em}
.cap{font-family:'Manrope',sans-serif;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
canvas.sky{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.spark{position:absolute;pointer-events:none;z-index:50;will-change:transform,opacity}
.st{display:block}
button{font:inherit;cursor:pointer;border:0}

/* навигация */
.navwrap{position:relative;z-index:3;display:flex;justify-content:center;padding:12px 16px 0}
.nav{display:flex;gap:4px;padding:4px;border-radius:999px;background:rgba(14,13,34,.55);border:1px solid var(--line);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.nav a{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;color:var(--muted);font:700 13px 'Manrope',sans-serif;text-decoration:none;white-space:nowrap;transition:color .15s,background .15s}
.nav a:hover{color:var(--pale)}
.nav a.on{background:rgba(255,201,92,.16);color:var(--gold2)}
/* пароль */
#gate{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;background:radial-gradient(120% 90% at 50% 0%,#2a2566 0%,var(--ink2) 45%,var(--ink) 100%);padding:12px 16px}
#gate .gbox{margin:auto;width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
#gate h1{font-family:'Unbounded';font-weight:700;font-size:30px;color:var(--cream)}
#gate .gsub{font-size:15px;color:var(--muted)}
#gate input{width:100%;margin-top:8px;padding:16px 18px;border-radius:16px;border:2px solid var(--line);background:rgba(233,230,255,.06);color:var(--cream);font:700 22px 'Manrope';letter-spacing:.3em;text-align:center;outline:none}
#gate input:focus{border-color:rgba(255,201,92,.6)}
#gate .gbtn2{width:100%;padding:16px;border-radius:999px;background:linear-gradient(180deg,#ffd77e,#f5b43c);color:#2a1a00;font:700 17px 'Unbounded'}
#gate .gerr{min-height:20px;font-size:14px;color:var(--rose)}
#gate .glock{filter:drop-shadow(0 0 18px rgba(255,201,92,.5))}
.shake{animation:shk .4s}
@keyframes shk{20%,60%{transform:translateX(-10px)}40%,80%{transform:translateX(10px)}}
#gate input::placeholder{letter-spacing:normal;font-weight:600;color:rgba(247,240,227,.3)}
