@font-face{
  font-family:"PF Din Text Cond Pro";
  src:url("./PFDinTextCondPro-Regular.ttf") format("truetype");
}

@font-face{
  font-family:"PF Din Text Cond Pro";
  src:url("./PFDinTextCondPro-Medium.ttf") format("truetype");
  font-weight:500;
  font-style:normal;
}

@font-face{
  font-family:"PF Din Text Cond Pro";
  src:url("./PFDinTextCondPro-Bold.ttf") format("truetype");
  font-weight:700;
  font-style:normal;
}

/* ===== ОСНОВНОЙ ГРАДИЕНТ ФОНА (ИЗ ТВОЕГО ФАЙЛА) ===== */
:root{
  --bg-top:#0b1e57;
  --bg-bottom:#e0f1ff;

  --neon-blue: rgba(110, 190, 255, 0.9);
}

html, body{
  margin:0;
  min-height:100%;
  font-family:"PF Din Text Cond Pro",sans-serif;
  font-size: 20px;
  background:
    radial-gradient(900px 600px at 80% -10%, rgba(60,150,255,0.18), transparent 60%),
    radial-gradient(700px 500px at 5% 85%, rgba(120,210,255,0.16), transparent 60%),
    radial-gradient(500px 400px at 50% 120%, rgba(120,240,255,0.10), transparent 70%),
    linear-gradient(180deg,
      var(--bg-top) 0%,
      #1850c2 25%,
      #4b8fff 55%,
      #a7d0ff 80%,
      var(--bg-bottom) 100%);
  background-attachment: fixed;
  overflow-x: hidden;
  color:#06263a;
  transition:background .9s ease,color .6s ease;
}

/* ===== НОЧНОЙ РЕЖИМ ===== */
body.night{
  background:
    radial-gradient(900px 600px at 80% -10%, rgba(80,140,255,0.12), transparent 60%),
    radial-gradient(700px 500px at 5% 85%, rgba(120,120,255,0.10), transparent 60%),
    radial-gradient(500px 400px at 50% 120%, rgba(120,120,255,0.08), transparent 70%),
    radial-gradient(120% 120% at 50% 0%, #081a4a 0%, #020924 65%, #010412 100%);
  color:#eaf4ff;
}

/* ===== ЗВЁЗДЫ ===== */
#bg-stars{
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  opacity: 0.45;
  transition:opacity .6s ease;
}
body.night #bg-stars{opacity:1}

/* ===== ОБЪЕКТЫ ===== */
#bg-objects{
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.55;
}

/* ===== ТУМАННОСТЬ ===== */
#bg-nebula{
  position: fixed;
  top: -200px;
  left: -200px;
  width: 900px;
  height: 900px;
  background: radial-gradient(ellipse at center,
    rgba(255,120,255,0.08) 0%,
    rgba(120,100,255,0.07) 35%,
    rgba(50,20,100,0.04) 70%,
    transparent 100%);
  filter: blur(120px);
  mix-blend-mode: screen;
  border-radius: 50%;
  animation: rotateNebula 240s linear infinite;
  z-index: 0;
  pointer-events: none;
  opacity:.7;
}
@keyframes rotateNebula{
  from{ transform: rotate(0deg); }
  to{ transform: rotate(360deg); }
}

/* ===== РАКЕТА ===== */
#bg-rocket{
  position: fixed;
  left: -20vw;
  bottom: -15vh;
  width: min(180px, 18vw);
  z-index: 1;
  opacity: 0.9;
  pointer-events: none;
  filter: drop-shadow(0 8px 24px rgba(255,80,120,.25));
  animation:
    rocketDrift 42s linear infinite,
    rocketBob 3.6s ease-in-out infinite;
}
@keyframes rocketDrift{
  0%   { transform: translate(0,0) rotate(-6deg); }
  50%  { transform: translate(70vw,-50vh) rotate(0deg); }
  100% { transform: translate(120vw,-105vh) rotate(6deg); }
}
@keyframes rocketBob{
  0%,100%{ filter: drop-shadow(0 8px 24px rgba(255,80,120,.25)); }
  50%{ filter: drop-shadow(0 12px 28px rgba(255,120,160,.35)); }
}

/* ===== КАРТОЧКИ ===== */
.card{
  position:relative;
  z-index:2;
  background:rgba(255,255,255,.75);
  border-radius:22px;
  padding:18px;
  margin-bottom:18px;
  transition:.6s ease;
}
body.night .card{
  background:rgba(8,18,48,.82);
  box-shadow:
    0 0 12px rgba(110,190,255,.6),
    0 0 26px rgba(110,190,255,.4),
    0 0 42px rgba(110,190,255,.25);
}

/* ===== ХЕДЕР ===== */
header{
  position:fixed;
  top:0; left:0; right:0;
  height:150px;

  display:flex;
  justify-content:center;
  align-items:center;        /* ← ВАЖНО! центр по вертикали */

  z-index:1000;
  background:transparent;
  backdrop-filter:none;
}
.header-inner{
  width:92%;
  max-width:1100px;
  height:100%;               /* ← обязательно */
  display:flex;
  align-items:center;        /* ← и здесь тоже */
  justify-content:space-between;
}
.btn{
  padding:10px 14px;
  border-radius:14px;
  cursor:pointer;
  background:transparent;
  border:1px solid currentColor;
  color:inherit;
}
body.night .btn{
  box-shadow:
    0 0 10px var(--neon-blue),
    var(--neon-blue);
}
.brand img{
  height:120px;
  transition:height .4s ease;
}

/* ноутбуки */
@media (max-width:1024px){
  .brand img{
    height:96px;
  }
}

/* планшеты */
@media (max-width:768px){
  .brand img{
    height:72px;
  }
}

/* телефоны */
@media (max-width:480px){
  .brand img{
    height:56px;
  }
}
body.night header{
  background:#081a4a;
}
/* ===== КНОПКИ ШАПКИ В СВЕТЛОМ РЕЖИМЕ ===== */
body:not(.night) header .btn{
  background:#ffffff;
  color:#0b1e57;
  border:1px solid rgba(11,30,87,0.25);
}

body:not(.night) header .btn:hover{
  background:#f3f6ff;
}
/* ===== ШАПКА В СВЕТЛОМ РЕЖИМЕ (ЛЁГКИЙ BLUR) ===== */
body:not(.night) header{
  background: rgba(255,255,255,0.10); /* почти прозрачная */
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px); /* для Safari */
}

/* ===== КОНТЕНТ ===== */
/* Орбиты занимают только свободное место между элементами шапки. */
header::after{
  content:"";
  position:absolute;
  bottom:0;left:0;right:0;
  height:1px;
  background:linear-gradient(90deg,transparent 3%,rgba(135,202,255,.2) 20%,rgba(191,231,255,.8) 50%,rgba(135,202,255,.2) 80%,transparent 97%);
  box-shadow:0 2px 14px rgba(100,190,255,.3);
  pointer-events:none;
}
.header-inner{gap:clamp(12px,2vw,28px)}
.header-inner > .btn,.header-inner > .brand{flex-shrink:0}
.header-orbit{
  flex:1 1 0;
  min-width:0;
  max-width:240px;
  pointer-events:none;
  user-select:none;
  color:#bbdfff;
}
.header-pattern{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.7}
.header-inner{position:relative;z-index:1}
body.night .header-pattern{opacity:.9}
@media(max-width:768px){
  .header-orbit{display:none}
  .header-inner{gap:10px}
  .header-inner > .brand{min-width:0;flex-shrink:1}
  .header-inner > .brand img{max-width:100%;object-fit:contain}
}


.app{
  padding-top:180px;
  width:92%;
  max-width:1100px;
  margin:auto;
}
video{width:100%;border-radius:18px}

/* Авторские созвездия Башкортостана в боковых полях главной. */
.regional-sky{display:none;position:fixed;inset:0;z-index:1;pointer-events:none;user-select:none}
@media (min-width:1400px){
  .regional-sky{
    --regional-edge:16px;
    --regional-width:min(360px,calc((100vw - 64px)/4));
    --regional-space:calc((100vw - var(--regional-edge) - var(--regional-edge) - var(--regional-width) - var(--regional-width) - var(--regional-width) - var(--regional-width))/3);
  }
  body:has(#home.active, #encyclopedia.active, #partners.active, #awards.active, #contacts.active) > .regional-sky{display:block}
  .regional-constellation{
    position:absolute;
    top:190px;
    width:var(--regional-width);
    z-index:1;
    text-align:center;
    color:#c9efff;
    opacity:.86;
    filter:drop-shadow(0 0 11px rgba(137,215,255,.32));
  }
  .regional-constellation-map{left:var(--regional-edge);top:clamp(155px,17vh,190px)}
  .regional-constellation-kurai{
    right:auto;
    left:calc(var(--regional-edge) + var(--regional-space) + var(--regional-space) + var(--regional-width) + var(--regional-width));
    top:clamp(155px,17vh,190px)
  }
  .regional-constellation-honey{
    right:auto;
    left:calc(var(--regional-edge) + var(--regional-space) + var(--regional-space) + var(--regional-space) + var(--regional-width) + var(--regional-width) + var(--regional-width));
    top:clamp(430px,49vh,530px);
    color:#ffe6ad;
    filter:drop-shadow(0 0 9px rgba(255,207,112,.24))
  }
  .regional-salavat{
    position:absolute;
    left:calc(var(--regional-edge) + var(--regional-space) + var(--regional-width));
    top:clamp(430px,49vh,530px);
    width:var(--regional-width);
    z-index:0;
    text-align:center;
    color:#c9efff;
    opacity:.86;
    filter:drop-shadow(0 0 11px rgba(137,215,255,.32));
  }
  .regional-salavat img{display:block;width:100%;height:auto}
  .regional-constellation img{display:block;width:100%;height:auto;max-height:calc(100vh - 280px);object-fit:contain}
  :is(.regional-constellation,.regional-salavat) span{display:block;margin-top:10px;font-size:clamp(15px,1.15vw,21px);letter-spacing:1.4px}
  :is(.regional-constellation,.regional-salavat) small{display:block;margin-top:5px;font-size:clamp(11px,.8vw,14px);opacity:.65;letter-spacing:.6px}
  .regional-constellation-honey :is(span,small){transform:translateY(-1cm)}
  body.night .regional-constellation{opacity:.92}
  body.night :is(.regional-constellation-map,.regional-constellation-kurai,.regional-salavat){filter:drop-shadow(0 0 9px rgba(137,215,255,.24))}
  body.night .regional-constellation-honey{filter:drop-shadow(0 0 9px rgba(255,207,112,.24))}
  body.night .regional-salavat{opacity:.92}
}

/* ===== МОБИЛЬНАЯ ОПТИМИЗАЦИЯ ===== */
@media (orientation: portrait){
  #bg-rocket,#bg-objects{display:none}
  #bg-stars{opacity:.35}
}

.hero{position:relative;z-index:2;margin-bottom:40px}
.lead{text-align:center;margin-bottom:26px}
.lead h1{margin:0 0 10px;font-size:clamp(26px,4vw,40px)}
.meta-grid{
  display:grid;
  grid-template-columns:repeat(8, 1fr);
  gap:14px;

  /* === растяжение на всю ширину экрана === */
  width:100vw;
  margin:24px 0 24px 50%;
  transform:translateX(-50%);
  padding:0 75px;
  box-sizing:border-box;
}

/* планшеты */
@media (max-width:1024px){
  .meta-grid{
    grid-template-columns:repeat(4, 1fr);
    padding:0 40px;
  }
}

/* телефоны — ПО 2 */
@media (max-width:600px){
  .meta-grid{
    grid-template-columns:repeat(2, 1fr);
    padding:0 16px;
  }
}
.meta-chip{
  background:rgba(255,255,255,.75);
  border-radius:18px;
  padding:10px 12px;
  text-align:center;
}
@media (max-width:600px){
  .meta-chip{
    padding:14px 8px;
    font-size:16px;
  }
}
.meta-chip br{
  display:block;
  margin-bottom:0;
}
.meta-chip strong{
  line-height:1.1;
}

body.night .meta-chip{
  background:rgba(8,18,48,.82);
  box-shadow:
    0 0 8px rgba(110,190,255,.55),
    0 0 18px rgba(110,190,255,.45),
    0 0 36px rgba(110,190,255,.25);
	
  border:1px solid rgba(110,190,255,.25);
}
.planets-wrap{margin-top:36px}
.planets-title{
  text-align: center;
  margin-bottom: 36px;

  font-size: clamp(22px, 3.4vw, 32px); /* 🔥 увеличили */
  line-height: 1.35;

  font-weight: 600;
  color: #ffffff;
}
body.night .planets-title{
  text-shadow:
    0 0 12px rgba(110,190,255,.45),
    0 0 28px rgba(110,190,255,.25);
}

/* ===== КРУГЛЫЕ ПЛАНЕТЫ С HOVER-ПОДПИСЬЮ ===== */
.planets{
  display:grid;
  grid-template-columns:repeat(8, minmax(0, 1fr));
  gap:24px;

  /* === растягиваем от края до края === */
  width:100vw;
  margin-left:50%;
  transform:translateX(-50%);

  /* === отступы от краёв экрана === */
  padding:0 32px;
  box-sizing:border-box;
}

.planet{
  position: relative;
  width: 170px;
  height: 170px;
  border-radius: 50%;
  overflow: hidden;
  display: block;
}

/* картинка */
.planet img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  transition: transform .5s ease, filter .5s ease;
}

/* затемнение */
.planet::after{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.55);
  opacity:0;
  transition:.4s ease;
  z-index:2;
}

/* 🔥 НАДПИСЬ — ЖЁСТКИЙ ЦЕНТР */
.planet .label{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;

  text-align:center;
  padding:14px;

  color:#fff;
  font-size:15px;
  font-weight:600;
  line-height:1.25;

  opacity:0;
  transform: scale(.9);
  transition: opacity .4s ease, transform .4s ease;

  z-index:3;
  pointer-events:none; /* важно */
}

/* hover */
.planet:hover img{
  transform: scale(1.15);
  filter: brightness(.6);
}

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

.planet:hover .label{
  opacity:1;
  transform: scale(1);
}

/* мобильные — всегда показываем подпись */
@media (hover:none){
  .planet .label{
    opacity:1;
    background:rgba(0,0,0,.35);
  }
}
/* ноутбуки */
@media (max-width:1024px){
  .planets{
    grid-template-columns:repeat(4, 1fr);
    padding:0 40px;
  }
}

/* телефоны — ПО 2 */
@media (max-width:600px){
  .planets{
    grid-template-columns:repeat(2, 1fr);
    padding:0 18px;
  }
}



/* ===== АНИМАЦИЯ ПЕРЕКЛЮЧЕНИЯ ТЕМЫ (БЕЗ БЛИКА) ===== */
body{
  transition:
    background 1.2s ease,
    color .8s ease;
}

/* звёзды плавно */
#bg-stars{
  transition:opacity 1.2s ease;
}

/* 🌙 СВЕЧЕНИЕ ПЛАНЕТ ЧЕРЕЗ ::before */
body.night .planet::before{
  content:"";
  position:absolute;
  inset:-16px;
  border-radius:50%;
  pointer-events:none;
  z-index:-1;

  background:rgba(255,255,255,0.01); /* ← КЛЮЧ */
  filter:blur(6px);

  box-shadow:
    0 0 22px var(--neon-blue),
    var(--neon-blue);
	opacity:1;
}

.planet:hover{
  transform:translateY(-6px) scale(1.05);
}
.planet:hover::after,
.planet:hover .label{
  opacity:1;
  transform:scale(1);
}
/* 🌙 КРУЖКИ СВЕТЯТСЯ ТОЧНО КАК БЛОКИ */
body.night .planet{
  box-shadow:
    0 0 12px rgba(110,190,255,.55),
    0 0 28px rgba(110,190,255,.35),
    0 0 52px rgba(110,190,255,.20);
}

/* кнопка-переключатель */
#themeToggle{
  display:flex;
  align-items:center;
  gap:8px;
}

#themeToggle .icon{
  display:inline-block;
  width:18px;
  height:18px;
  transition:transform .6s ease, opacity .6s ease;
}

body.night #themeToggle .icon{
  transform:rotate(180deg) scale(1.1);
}


/* ===== МЕНЮ: OVERLAY + ПАНЕЛЬ ===== */
#menu-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.35);
  backdrop-filter:blur(8px);
  opacity:0;
  pointer-events:none;
  transition:opacity .35s ease;
  z-index:1100;
}
#menu-overlay.active{
  opacity:1;
  pointer-events:auto;
}

#side-menu{
  position:fixed;
  top:0;left:0;
  width:360px;
  max-width:92vw;
  height:100%;
  transform:translateX(-100%);
  transition:transform .40s ease;
  z-index:1200;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  padding-bottom:24px;
   background:#dbeafe;      /* ✅ ВОТ ОНО */
  box-shadow:18px 0 60px rgba(0,0,0,.35);
  color:#ffffff;
}
body.night #side-menu{
  background:rgba(8,18,48,.96);
  color:#eaf4ff;
  box-shadow:0 0 18px var(--neon-blue), var(--neon-blue);
}
#side-menu.active{ transform:translateX(0); }

.menu-header{
  position:relative;
  top:0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:16px;
  font-size:28px;
  backdrop-filter:blur(10px);
  background: rgba(219,234,254,.85); /* тот же голубой, чуть прозрачный */
  border-bottom:1px solid rgba(11,30,87,.15);
  z-index:2;
}
.menu-header span{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
}
body:not(.night) .menu-header{
  color:#0b1e57;
}

/* крестик */
body:not(.night) .menu-header button{
  color:#0b1e57;
  opacity:.8;
}

body:not(.night) .menu-header button:hover{
  opacity:1;
}
body.night .menu-header{
  background:rgba(8,18,48,.72);
  border-bottom:1px solid rgba(255,255,255,.16);
}

#menu-close{
  background:none;
  border:none;
  color:inherit;
  font-size:24px;
  cursor:pointer;
  padding:6px 10px;
  border-radius:12px;
  margin-left:auto;
}
#menu-close:hover{ background:rgba(0,0,0,.06); }
body.night #menu-close:hover{ background:rgba(255,255,255,.10); }


.menu-content{
  padding:14px 16px 0;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.menu-organization{
  margin:20px 5mm 10px;
  padding-top:24px;
  border-top:1px solid rgba(11,30,87,.18);
  color:#0b1e57;
  text-align:center;
  font-size:16px;
  line-height:1.5;
}
.menu-organization-logo{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  margin:0 auto 16px;
  transform:translate(-10px, -15px);
}
body.night .menu-organization{
  color:#eaf4ff;
  border-color:rgba(255,255,255,.18);
}

/* ===== АККОРДЕОН ===== */
.acc{
  border-bottom:1px solid rgba(0,0,0,.10);
  padding-bottom:12px;
}
body.night .acc{ border-bottom:1px solid rgba(255,255,255,.16); }

.acc-btn{
  width:100%;
  background:none;
  border:none;
  color:inherit;
  text-align:left;
  font-size:28px;
  padding:10px 0 8px;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}
body:not(.night) .acc-btn{
  color: #0b1e57;   /* фирменный тёмно-синий */
  font-weight: 600;
}
body:not(.night) .acc-btn:hover{
  color:#06263a;
}
.acc-btn span{ transition:transform .25s ease; opacity:.9; }
.acc.open .acc-btn span{ transform:rotate(180deg); }

.acc-panel{
  max-height:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding-left:10px;
  transition:max-height .40s ease;
}
.acc.open .acc-panel{ max-height:1400px; }

.menu-a, .menu-link, .menu-btn{
  display:block;
  width:100%;
  box-sizing:border-box;
  padding:10px 12px;
  border-radius:14px;
  text-decoration:none;
  color:inherit;
  font-size:26px;
  background: rgba(255,255,255,.55);
  border:0;
  cursor:pointer;
  text-align:left;
}
body:not(.night) .menu-a,
body:not(.night) .menu-btn{
  color: #0b1e57;
  font-weight: 500;
}
body.night .menu-a, body.night .menu-link, body.night .menu-btn{
  background:rgba(255,255,255,.10);
}

.menu-a:hover, .menu-link:hover, .menu-btn:hover{
  background:rgba(0,0,0,.08);
}
body.night .menu-a:hover, body.night .menu-link:hover, body.night .menu-btn:hover{
  background:rgba(255,255,255,.14);
}

/* ===== Мобильная версия: меню полноэкранное ===== */
@media (max-width:640px){
  #side-menu{ width:100vw; max-width:100vw; }
}
body:not(.night) .planets-title{
  color: #0b1e57; /* тот же оттенок, что у главного заголовка */
}

@media (max-width:1024px){
  html, body{
    font-size:22px; /* ноутбуки */
  }
}

@media (max-width:480px){
  html, body{
    font-size:16px;
  }
}

@media (max-width:600px){
  .planet{
    width: 130px;
    height: 130px;
  }
}
/* ===== VIDEO SLIDER ===== */
.video-slider{
  position:relative;
  overflow:hidden;
}

.video-track{
  display:flex;
  transition:transform .6s ease;
}

.video-track video{
  min-width:100%;
  border-radius:18px;
  cursor:pointer;
}

/* ===== COSMIC VIDEO NAV BUTTONS (override) ===== */
.video-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:6;

  width:52px;
  height:52px;
  border-radius:16px;

  border:1px solid rgba(11,30,87,.22);
  background: rgba(255,255,255,.72);
  color:#0b1e57;

  display:flex;
  align-items:center;
  justify-content:center;

  cursor:pointer;

  box-shadow:
    0 10px 28px rgba(11,30,87,.12),
    inset 0 1px 0 rgba(255,255,255,.7);

  transition: transform .18s ease, box-shadow .25s ease, background .25s ease, opacity .25s ease;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.video-nav.prev{ left:14px; }
.video-nav.next{ right:14px; }

.video-nav:hover{
  transform:translateY(-50%) scale(1.06);
  background: rgba(255,255,255,.88);
  box-shadow:
    0 14px 34px rgba(11,30,87,.16),
    inset 0 1px 0 rgba(255,255,255,.75);
}
.video-nav:active{
  transform:translateY(-50%) scale(.98);
}

/* Lucide внутри кнопок */
.video-nav i{
  width:26px;
  height:26px;
  stroke-width:2.2;
}

/* Ночной режим — неоновое свечение */
body.night .video-nav{
  border:1px solid rgba(110,190,255,.35);
  background: rgba(8,18,48,.72);
  color: rgba(110,190,255,.95);

  box-shadow:
    0 0 10px rgba(110,190,255,.55),
    0 0 24px rgba(110,190,255,.40),
    0 0 44px rgba(110,190,255,.22);
}
body.night .video-nav:hover{
  transform:translateY(-50%) scale(1.08);
  background: rgba(8,18,48,.86);
  box-shadow:
    0 0 12px rgba(110,190,255,.70),
    0 0 30px rgba(110,190,255,.50),
    0 0 60px rgba(110,190,255,.28);
}
body.night .video-nav i{
  filter:
    drop-shadow(0 0 6px rgba(110,190,255,.65))
    drop-shadow(0 0 14px rgba(110,190,255,.35));
}
/* Слайд-обёртка, чтобы и видео и iframe листались одинаково */
.video-slide{
  min-width:100%;
}

/* Видео и RuTube — одинаковая форма */
.video-slide video,
.video-slide iframe{
  width:100%;
  border-radius:18px;
  display:block;
}

/* Чтобы RuTube был 16:9 и не “съедал” высоту */
.video-slide iframe{
  aspect-ratio: 16 / 9;
  height: auto;
}

/* ==================================================
   ОБРАТНЫЙ ОТСЧЁТ ДО ВИКТОРИНЫ
================================================== */

.quiz-countdown{
  position:relative;

  width:min(760px, calc(100% - 32px));

  margin:70px auto 20px;

  padding:28px 34px;

  box-sizing:border-box;

  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;

  background:rgba(255,255,255,.78);

  border:1px solid rgba(11,30,87,.16);

  border-radius:28px;

  box-shadow:
    0 18px 45px rgba(11,30,87,.15);

  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}


/* ОСНОВНАЯ ЧАСТЬ */

.countdown-content{
  flex:1;
  text-align:center;
}


.countdown-title{
  margin-bottom:16px;

  font-size:28px;
  font-weight:700;

  color:#0b1e57;
}


/* ЦИФРЫ */

.countdown-grid{
  display:grid;

  grid-template-columns:repeat(4, 1fr);

  gap:12px;
}


.countdown-item{
  padding:15px 8px;

  border-radius:18px;

  background:
    linear-gradient(
      180deg,
      #e5f4ff 0%,
      #f3f9ff 100%
    );

  border:1.5px solid rgba(45,135,210,.38);

  box-shadow:
    0 6px 16px rgba(28,105,175,.10),
    inset 0 1px 0 rgba(255,255,255,.9);

  transition:
    transform .25s ease,
    box-shadow .25s ease;
}

.countdown-item:hover{
  transform:translateY(-2px);

  box-shadow:
    0 9px 20px rgba(28,105,175,.16),
    inset 0 1px 0 rgba(255,255,255,.9);
}


.countdown-item strong{
  display:block;

  font-family:"PF Din Text Cond Pro", sans-serif;
  font-size:50px;
  font-weight:500;
  line-height:1;

  color:#08265b;

  -webkit-text-stroke:2px #00eaff;

  text-shadow:
    0 0 3px #00eaff,
    0 0 7px rgba(0,234,255,.9),
    0 0 14px rgba(0,234,255,.65),
    0 0 24px rgba(0,234,255,.30);

  letter-spacing:1px;
}


.countdown-item span{
  display:block;
  margin-top:7px;

  font-size:17px;
  font-weight:600;

  color:#0b1e57;
}


.countdown-caption{
  margin-top:18px;

  font-size:25px;
  font-weight:600;

  color:#0b1e57;
}


/* =========================
   НОЧНОЙ РЕЖИМ
========================= */

body.night .quiz-countdown{
  background:rgba(8,18,48,.84);

  border:1px solid rgba(110,190,255,.30);

  box-shadow:
    0 0 12px rgba(110,190,255,.35),
    0 0 32px rgba(110,190,255,.20);
}


body.night .countdown-title,
body.night .countdown-caption,
body.night .countdown-item span{
  color:#eaf4ff;
}


body.night .countdown-item{
  background:rgba(255,255,255,.07);

  border:1px solid rgba(110,190,255,.20);
}


body.night .countdown-item strong{
  color:#071b46;

  -webkit-text-stroke:2px #00f0ff;

  text-shadow:
    0 0 3px #00f0ff,
    0 0 8px rgba(0,240,255,1),
    0 0 16px rgba(0,240,255,.75),
    0 0 28px rgba(0,240,255,.45);
}


/* =========================
   ПЛАНШЕТ
========================= */

@media (max-width:900px){

  .quiz-countdown{
    margin-top:55px;

    padding:24px;

    gap:18px;
  }

  .countdown-title{
    font-size:25px;
  }

  .countdown-item strong{
    font-size:31px;
  }
}


/* =========================
   ТЕЛЕФОН
========================= */

@media (max-width:600px){

  .quiz-countdown{
    width:calc(100% - 24px);

    margin-top:45px;

    padding:22px 15px;

    flex-direction:column;

    gap:8px;
  }

  .countdown-title{
    font-size:23px;
    margin-bottom:14px;
  }

  .countdown-grid{
    width:100%;

    grid-template-columns:repeat(2, 1fr);
  }

  .countdown-item strong{
    font-size:30px;
  }

  .countdown-caption{
    font-size:19px;
  }
}

/* ===== КОСМИК + ОБЛАКО С ФАКТОМ ===== */
#kosmik-fact-widget {
  position: fixed;
  inset: 0;
  z-index: 1050;
  pointer-events: none;
  overflow: hidden;
}

/* Космик на главной и в энциклопедии */
body:not(:has(#home.active, #encyclopedia.active)) #kosmik-fact-widget {
  display: none !important;
}

/* КОСМИК */
.kosmik-character {
  position: absolute;
  bottom: 18px;

  width: clamp(230px, 24vw, 360px);

  opacity: 0;

  filter:
    drop-shadow(0 16px 28px rgba(4, 35, 75, .28));

  transition:
    transform 1.05s cubic-bezier(.18,.78,.24,1),
    opacity .42s ease;

  will-change: transform, opacity;
}

.kosmik-character img {
  display: block;
  width: 100%;
  height: auto;

  user-select: none;
  -webkit-user-drag: none;
}


/* =========================
   ПОЯВЛЕНИЕ СЛЕВА
========================= */

#kosmik-fact-widget.side-left .kosmik-character {
  left: 0;

  transform:
    translateX(-82%)
    rotate(-2deg);
}

#kosmik-fact-widget.side-left.show-character .kosmik-character {
  transform:
    translateX(-28%)
    rotate(0deg);

  opacity: 1;
}


/* =========================
   ПОЯВЛЕНИЕ СПРАВА
========================= */

#kosmik-fact-widget.side-right .kosmik-character {
  right: 0;

  transform:
    translateX(82%)
    scaleX(-1)
    rotate(-2deg);
}

#kosmik-fact-widget.side-right.show-character .kosmik-character {
  transform:
    translateX(28%)
    scaleX(-1)
    rotate(0deg);

  opacity: 1;
}


/* =========================
   ОБЛАКО
========================= */

.kosmik-bubble {
  position: absolute;

  bottom: clamp(205px, 24vw, 300px);

  width: min(430px, 38vw);
  min-height: 150px;

  box-sizing: border-box;

  padding: 24px 28px;

  border-radius: 34px;

  background: rgba(255,255,255,.96);

  color: #0b1e57;

  border: 2px solid rgba(73,166,255,.55);

  box-shadow:
    0 18px 48px rgba(5,36,87,.20),
    0 0 0 7px rgba(255,255,255,.12);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);

  opacity: 0;

  transform:
    translateY(16px)
    scale(.94);

  transition:
    opacity .5s ease,
    transform .55s cubic-bezier(.2,.85,.25,1);
}


/* Положение облака */

#kosmik-fact-widget.side-left .kosmik-bubble {
  left: clamp(180px, 20vw, 305px);
}

#kosmik-fact-widget.side-right .kosmik-bubble {
  right: clamp(180px, 20vw, 305px);
}


/* Появление облака */

#kosmik-fact-widget.show-bubble .kosmik-bubble {
  opacity: 1;

  transform:
    translateY(0)
    scale(1);
}


/* Маленький хвостик облака */

.kosmik-bubble::after {
  content: "";

  position: absolute;
  bottom: -18px;

  width: 34px;
  height: 34px;

  background: inherit;

  border-bottom: inherit;
  border-right: inherit;

  transform: rotate(45deg);
}

#kosmik-fact-widget.side-left .kosmik-bubble::after {
  left: 42px;
}

#kosmik-fact-widget.side-right .kosmik-bubble::after {
  right: 42px;
}


/* =========================
   ЗАГОЛОВОК
========================= */

.kosmik-bubble-title {
  display: flex;
  align-items: center;

  gap: 9px;

  margin-bottom: 11px;

  font-size: clamp(16px, 1.55vw, 21px);

  font-weight: 700;

  letter-spacing: .02em;

  color: #175f9d;
}

.kosmik-bubble-title::before {
  content: "★";

  color: #f5b82e;

  font-size: 1.05em;
}


/* =========================
   ТЕКСТ ФАКТА
========================= */

.kosmik-bubble-text {
  font-size: clamp(18px, 1.9vw, 25px);
  line-height: 1.28;
  font-weight: 500;
}


/* =========================================
   КОСМИК — ПЛАНШЕТЫ
   ========================================= */

@media (min-width: 501px) and (max-width: 900px) {

  /* Сам Космик */
  .kosmik-character {
    width: 250px;
    bottom: 8px;
  }

  /* Насколько Космик выглядывает слева */
  #kosmik-fact-widget.side-left.show-character
  .kosmik-character {
    transform:
      translateX(-30%)
      rotate(0deg);
  }

  /* Насколько Космик выглядывает справа */
  #kosmik-fact-widget.side-right.show-character
  .kosmik-character {
    transform:
      translateX(30%)
      scaleX(-1)
      rotate(0deg);
  }


  /* Облако */
  .kosmik-bubble {
    width: min(340px, 48vw);
    min-height: 120px;

    bottom: 205px;

    padding: 18px 20px;

    border-radius: 26px;
  }


  /* Облако при появлении слева */
  #kosmik-fact-widget.side-left .kosmik-bubble {
    left: 165px;
  }

  /* Облако при появлении справа */
  #kosmik-fact-widget.side-right .kosmik-bubble {
    right: 165px;
  }


  /* Заголовок */
  .kosmik-bubble-title {
    font-size: 17px;
    margin-bottom: 8px;
  }

  /* Сам факт */
  .kosmik-bubble-text {
    font-size: 19px;
    line-height: 1.25;
  }
}


/* На телефонах Космик не появляется. */
@media (max-width: 500px) {
  #kosmik-fact-widget { display: none !important; }
}

.slide{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(10px);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:2000;
}
.slide.active{display:flex}
.slide-inner{
  width:92%;
  max-width:900px;
  max-height:85vh;
  overflow:auto;
  background:rgba(255,255,255,.95);
  border-radius:22px;
  padding:28px;
}
body.night .slide-inner{
  background:rgba(8,18,48,.95);
  color:#eaf4ff;
}
.slide-close{
  margin-top:20px;
  padding:10px 16px;
  border-radius:14px;
  border:none;
  cursor:pointer;
}
.page{
  display:none;
  position:relative;
  z-index:2;
}

.page.active{
  display:block;
}

/* ===== КОСМИЧЕСКАЯ ИГРА ===== */
.game-menu-link{color:#f0a600!important}
.game-page{max-width:1180px;padding-bottom:56px}
.game-heading{
display:flex;
align-items:flex-start;
gap:24px;
margin:18px 0 24px;
color:#0b1e57;
}

body.night .game-heading{
color:#eaf4ff;
}
.game-heading h1{font-size:clamp(34px,5vw,64px);line-height:.95;margin:7px 0 12px;text-transform:uppercase;letter-spacing:-.04em}
.game-heading p{margin:0;font-size:clamp(16px,2vw,21px);opacity:.8}
.game-kicker{font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#e78b00}
.game-back{flex:0 0 auto;border:1px solid rgba(46,107,166,.25);border-radius:999px;padding:11px 17px;background:rgba(255,255,255,.72);color:#0b1e57;font:inherit;font-weight:800;cursor:pointer}
 body.night .game-back{background:rgba(10,27,63,.8);color:#fff;border-color:rgba(126,213,255,.35)}
.game-shell{border:1px solid rgba(92,181,255,.28);border-radius:30px;padding:14px;background:linear-gradient(145deg,rgba(15,39,91,.96),rgba(3,12,39,.98));box-shadow:0 28px 70px rgba(0,20,70,.32)}
.game-hud{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:4px 2px 14px;color:white}
.game-hud div{display:flex;align-items:baseline;justify-content:center;gap:9px;padding:8px 14px;border-radius:16px;background:rgba(255,255,255,.07)}
.game-hud span{font-size:13px;text-transform:uppercase;letter-spacing:.12em;opacity:.7}
.game-hud strong{font-size:24px}
.game-hud div:last-child strong{color:#ff6c86;letter-spacing:.12em}
.game-stage{position:relative;overflow:hidden;border-radius:20px;background:#071330;aspect-ratio:16/9;min-height:280px}#rocket-game{display:block;width:100%;height:100%;touch-action:none}
.game-start{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:#fff;background:radial-gradient(circle at 50% 40%,rgba(17,61,127,.7),rgba(2,8,28,.88));backdrop-filter:blur(3px)}.game-start.hidden{display:none}.game-start-icon{font-size:62px;filter:drop-shadow(0 0 24px #3ebcff)}.game-start h2{font-size:clamp(27px,4vw,46px);margin:8px 0}.game-start p{max-width:550px;margin:0 0 22px;line-height:1.5;color:#cfddff}#game-start-btn{border:0;border-radius:999px;padding:15px 28px;background:linear-gradient(135deg,#ffd94a,#f39a00);color:#382000;font:inherit;font-size:18px;font-weight:900;cursor:pointer;box-shadow:0 9px 28px rgba(255,176,0,.4)}
.game-rank-transition{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;pointer-events:none;text-align:center;color:#fff;background:radial-gradient(circle at center,rgba(27,91,171,.82),rgba(2,7,28,.97));backdrop-filter:blur(7px)}.game-rank-transition.promotion{background:radial-gradient(circle at center,rgba(20,91,170,.45),rgba(2,7,28,.28));backdrop-filter:blur(1.5px)}.game-rank-transition.hidden{display:none}.game-rank-glow{position:absolute;width:min(62vw,520px);aspect-ratio:1;border-radius:50%;background:conic-gradient(from 0deg,transparent,#49cfff,transparent,#ffd84d,transparent);filter:blur(28px);opacity:.36;animation:rank-orbit 2.2s linear infinite}.game-rank-caption,.game-rank-title,.game-launch-count{position:relative;z-index:1}.game-rank-caption{font-size:clamp(14px,2vw,19px);font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#9edfff}.game-rank-title{max-width:90%;margin-top:10px;font-size:clamp(30px,6vw,68px);font-weight:950;line-height:1.05;text-shadow:0 0 24px rgba(79,199,255,.7);animation:rank-reveal .72s cubic-bezier(.2,1.45,.45,1) both}.game-launch-count{display:none;font-size:clamp(76px,15vw,160px);font-weight:950;line-height:1;text-shadow:0 0 18px #55ceff,0 0 54px rgba(64,170,255,.85)}.game-rank-transition.counting .game-rank-caption,.game-rank-transition.counting .game-rank-title{display:none}.game-rank-transition.counting .game-launch-count{display:block;animation:count-burst .82s cubic-bezier(.17,.84,.3,1) both}.game-rank-transition.go .game-launch-count{font-size:clamp(52px,11vw,118px);color:#ffe365;text-shadow:0 0 18px #ff9d20,0 0 60px rgba(255,157,32,.9)}@keyframes rank-orbit{to{transform:rotate(360deg)}}@keyframes rank-reveal{from{opacity:0;transform:scale(.35) rotate(-5deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes count-burst{0%{opacity:0;transform:scale(.25) rotate(-8deg)}35%{opacity:1;transform:scale(1.18) rotate(2deg)}100%{opacity:.15;transform:scale(.72) rotate(0)}}
.game-stage .game-hud .game-rank-hud{position:absolute;top:52px;left:0;max-width:55%;border-color:rgba(91,205,255,.3);background:rgba(3,13,43,.68)}.game-stage .game-hud .game-rank-hud strong{overflow:hidden;text-overflow:ellipsis;font-size:14px}
.game-stage .game-hud .game-effects-hud{position:absolute;top:52px;right:0;min-height:34px;padding:5px 10px;border-color:rgba(255,216,77,.35);background:rgba(3,13,43,.74);font-size:14px;font-weight:850}.game-stage .game-hud .game-effects-hud.hidden{display:none}
.game-question-overlay{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:72px 18px 20px;background:rgba(2,8,28,.76);backdrop-filter:blur(6px)}.game-question-overlay.hidden{display:none}.game-question-card{width:min(720px,94%);max-height:100%;overflow:auto;padding:clamp(18px,3vw,32px);border:1px solid rgba(111,211,255,.48);border-radius:26px;color:#fff;background:linear-gradient(145deg,rgba(12,42,94,.98),rgba(5,18,54,.98));box-shadow:0 22px 70px rgba(0,0,0,.48),0 0 35px rgba(50,178,255,.18)}.game-question-badge{font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#ffd84d}.game-question-card h2{margin:10px 0 20px;font-size:clamp(21px,3.2vw,34px);line-height:1.2}.game-question-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.game-question-options button{min-height:52px;padding:11px 14px;border:1px solid rgba(137,207,255,.32);border-radius:15px;color:#fff;background:rgba(255,255,255,.08);font:inherit;font-size:clamp(14px,2vw,18px);font-weight:750;cursor:pointer;transition:.2s transform,.2s background}.game-question-options button:hover{transform:translateY(-2px);background:rgba(74,184,255,.2)}.game-question-options button:disabled{cursor:default}.game-question-options button.correct{border-color:#55e69a;background:rgba(29,175,100,.42)}.game-question-options button.wrong{border-color:#ff7187;background:rgba(206,53,77,.42)}.game-question-result{min-height:25px;margin-top:14px;text-align:center;font-size:18px;font-weight:900;color:#ffd84d}
.game-controls{display:none;justify-content:center;align-items:center;gap:8px;padding-top:14px}
.game-joystick{position:relative;width:132px;height:132px;flex:none;border:2px solid rgba(160,220,255,.55);border-radius:50%;background:radial-gradient(circle,rgba(72,158,225,.18),rgba(4,19,52,.62));box-shadow:inset 0 0 25px rgba(90,190,255,.2),0 8px 24px rgba(0,0,0,.28);touch-action:none;user-select:none}
.game-joystick-knob{position:absolute;left:50%;top:50%;width:58px;height:58px;border:2px solid rgba(255,255,255,.72);border-radius:50%;background:radial-gradient(circle at 35% 30%,#8de0ff,#2479bd);box-shadow:0 6px 18px rgba(0,0,0,.4),0 0 16px rgba(76,190,255,.42);transform:translate(-50%,-50%);pointer-events:none;will-change:transform}
.game-tip{text-align:center;color:#b9c8ed;margin:12px 0 3px;font-size:14px}@media (max-width:800px),(pointer:coarse){.game-controls{display:flex}}
@media (max-width:800px),(pointer:coarse){
  .game-stage .game-controls{position:absolute;z-index:7;right:12px;bottom:12px;padding:0}
}
@media (max-width:600px){

.game-page{
    padding-left:10px!important;
    padding-right:10px!important;
}

.game-heading{
    display:block;
}

.game-shell{
    padding:9px;
    border-radius:22px;
}

.game-stage{
    width:100%;
    height:auto;
    aspect-ratio:1.65 / 1;
    min-height:420px;
    overflow:hidden;
}

#rocket-game{
    width:1100px;
    height:620px;

    transform:scale(0.75);
    transform-origin:center center;
}

.game-tip{
    font-size:12px;
}

}
.game-pause-btn{display:block;margin:0 2px 10px auto;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:9px 18px;background:rgba(255,255,255,.1);color:#fff;font:inherit;font-weight:800;cursor:pointer}.game-pause-btn:disabled{opacity:.35;cursor:not-allowed}.game-pause-overlay{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:#fff;background:rgba(3,10,32,.82);backdrop-filter:blur(5px)}.game-pause-overlay.hidden{display:none}.game-pause-icon{font-size:44px;color:#ffd84d}.game-pause-overlay h2{font-size:clamp(28px,4vw,46px);margin:10px 0}.game-pause-overlay p{margin:0 0 20px;color:#cfddff}.game-pause-overlay button{border:0;border-radius:999px;padding:14px 27px;background:linear-gradient(135deg,#ffd94a,#f39a00);color:#382000;font:inherit;font-size:18px;font-weight:900;cursor:pointer}
.game-fullscreen-btn{pointer-events:auto;width:42px;height:42px;margin-left:auto;border:1px solid rgba(255,255,255,.22);border-radius:50%;padding:0;background:rgba(3,13,43,.72);color:#fff;font:inherit;font-size:21px;font-weight:800;cursor:pointer;white-space:nowrap}
.game-stage .game-hud .game-pause-btn{flex:none;width:42px;height:42px;min-height:42px;margin:0;padding:0;border-radius:50%;font-size:17px}
.game-stage .game-hud{position:absolute;z-index:4;top:12px;left:12px;right:12px;display:flex;align-items:center;gap:8px;padding:0;color:#fff;pointer-events:none}.game-stage .game-hud div{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:7px 12px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(3,13,43,.62);box-shadow:0 5px 18px rgba(0,0,0,.18);backdrop-filter:blur(8px)}.game-stage .game-hud span{font-size:20px;line-height:1;opacity:1;letter-spacing:0} body.night .game-stage .game-hud span{
    color:#eaf4ff;
} 
.game-stage .game-hud strong{font-size:20px;white-space:nowrap}.game-stage .game-hud .game-pause-btn{pointer-events:auto;margin:0 0 0 auto;min-height:42px;background:rgba(3,13,43,.72)}.game-stage .game-hud div:nth-child(4) strong{color:#ff6c86;letter-spacing:.12em}

@media(max-width:700px){
.game-stage .game-hud .game-rank-hud{top:34px;left:0;max-width:62%;min-height:24px;padding:2px 7px}.game-stage .game-hud .game-rank-hud strong{font-size:11px}
.game-stage .game-hud .game-effects-hud{top:62px;right:auto;left:0;min-height:22px;padding:2px 6px;font-size:10px}.game-question-overlay{padding:58px 10px 10px}.game-question-options{grid-template-columns:1fr}.game-question-card{border-radius:18px}.game-question-card h2{margin-bottom:12px}.game-question-options button{min-height:40px;padding:8px 10px}
/* верхняя панель игры в одну строку */
.game-stage .game-hud{
    top:6px;
    left:6px;
    right:6px;

    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
    align-items:center;

    gap:0;
}


/* маленькие показатели */
.game-stage .game-hud div{
    min-height:28px;
    padding:3px 5px;

    border-radius:8px;

    flex:1;
}


/* сами значки и текст */
.game-stage .game-hud span{
    font-size:13px;
}

.game-stage .game-hud strong{
    font-size:14px;
}


/* сердечки */
.game-stage .game-hud div:nth-child(4){
    position:static;
    transform:none;
}


.game-stage .game-hud div:nth-child(4) strong{
    font-size:18px;
}


/* кнопка паузы */
.game-stage .game-hud .game-pause-btn{

    min-height:28px;

    padding:3px 7px;

    font-size:12px;

    white-space:nowrap;
}


/* увеличиваем само игровое поле */
.game-stage{
    width:100%;
    aspect-ratio:16 / 9;
    overflow:hidden;
}

#rocket-game{
    width:1100px;
    height:620px;
    max-width:none;
    display:block;

    transform:scale(0.75);
    transform-origin:center center;
}

}
.game-stage .game-hud div:nth-child(-n+3){
border-color:transparent;
background:transparent;
box-shadow:none;
backdrop-filter:none;
}


/* Сердечки — общий стиль */
.game-stage .game-hud div:nth-child(4){
  position:static;
  transform:none;
  min-height:42px;
  padding:4px 8px;
  border-color:transparent;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}

.game-stage .game-hud div:nth-child(4) strong{
  font-size:29px;
  line-height:1;
  text-shadow:0 3px 12px rgba(255,64,102,.48);
}


/* Телефон — все показатели в одну линию */
@media(max-width:700px){

  .game-stage .game-hud{
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:space-between;
    gap:0;
  }

  .game-stage .game-hud div{
    flex:0 0 auto;
    min-height:28px;
    padding:3px 5px;
}

  .game-stage .game-hud div:nth-child(4){
    position:static;
    transform:none;
  }

  .game-stage .game-hud div:nth-child(4) strong{
    font-size:18px;
  }

  .game-stage .game-hud span{
    font-size:13px;
  }

  .game-stage .game-hud strong{
    font-size:14px;
  }

  .game-stage .game-hud .game-pause-btn{
    flex:none;
    min-height:28px;
    padding:3px 7px;
  }

  .game-stage .game-hud .game-fullscreen-btn{
    flex:none;
    width:30px;
    height:30px;
    min-height:30px;
    margin-left:auto;
    padding:0;
    font-size:18px;
  }

  .game-stage .game-hud .game-pause-btn{width:30px;height:30px;min-height:30px;margin:0;padding:0;font-size:14px}
}
.game-page > .back-bottom{margin-top:24px}

/* Телефон: приближаем игру без растягивания изображения.
   Canvas сохраняет исходные пропорции 1100 x 620 и заполняет синюю подложку
   с аккуратной обрезкой лишнего по краям. */
@media (max-width:700px){
  .game-stage{
    position:relative;
  }

  #rocket-game{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    max-width:none;
    transform:none;
    object-fit:cover;
    object-position:center;
  }
}

/* Полноэкранный горизонтальный режим: игровое поле и управление разделены. */
.game-shell:fullscreen,
.game-shell.game-is-fullscreen{
  position:relative;
  width:100vw;
  height:100vh;
  padding:0;
  border:0;
  border-radius:0;
  display:block;
  overflow:hidden;
  background:#071330;
}

.game-shell.game-is-fullscreen{
  position:fixed;
  inset:0;
  z-index:9999;
}

.game-shell:fullscreen .game-stage,
.game-shell.game-is-fullscreen .game-stage{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:auto;
  border-radius:0;
}

.game-shell:fullscreen #rocket-game,
.game-shell.game-is-fullscreen #rocket-game{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  transform:none;
  object-fit:cover;
  object-position:center;
}

.game-shell:fullscreen .game-controls,
.game-shell.game-is-fullscreen .game-controls{
  position:absolute;
  z-index:7;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  display:flex;
  padding:0;
  background:transparent;
}

.game-shell:fullscreen .game-tip,
.game-shell.game-is-fullscreen .game-tip{display:none}

@media (max-height:430px){
  .game-shell:fullscreen .game-joystick,
  .game-shell.game-is-fullscreen .game-joystick{width:112px;height:112px}
  .game-shell:fullscreen .game-joystick-knob,
  .game-shell.game-is-fullscreen .game-joystick-knob{width:50px;height:50px}
}

.box{
  margin-top:24px;
}

.partners{
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 20px;
  margin-bottom: 48px; 
}

.partner{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 16px;
  background:rgba(255,255,255,.75);
  border-radius:18px;
}

body.night .partner{
  background:rgba(8,18,48,.82);
  box-shadow:
    0 0 10px rgba(110,190,255,.55),
    0 0 24px rgba(110,190,255,.40),
    0 0 44px rgba(110,190,255,.25);
}

.partner img{
  width:88px;
  height:auto;
  flex-shrink:0;
}

.partner img.partner-logo-roscosmos{
  width: clamp(110px, 16vw, 160px);
}

.partner span{
  font-size:25px;
  line-height:1.35;
}

.back-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;

  margin-bottom: 20px;
  padding:10px 16px;

  border-radius:14px;
  border:1px solid rgba(0,0,0,.2);
  background:#ffffff;

  font-size:15px;
  cursor:pointer;
}

body.night .back-btn{
  background:rgba(8,18,48,.85);
  color:#eaf4ff;
  border:1px solid rgba(255,255,255,.25);
  box-shadow:
    0 0 10px var(--neon-blue),
    var(--neon-blue);
}

.back-btn:hover{
  transform:translateY(-1px);
}
.contacts{
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 20px;
  margin-bottom: 32px;
}

.contact-item{
  display: flex;
  flex-direction: column;
  gap: 6px;

  padding: 18px 22px;
  background: rgba(255,255,255,.85);
  border-radius: 22px;
}

body.night .contact-item{
  background: rgba(8,18,48,.82);
  box-shadow:
    0 0 10px rgba(110,190,255,.55),
    0 0 24px rgba(110,190,255,.40),
    0 0 44px rgba(110,190,255,.25);
}

.contact-label{
  font-size: 20px;
  opacity: .7;
}

.contact-value{
  font-size: 25px;
  line-height: 1.4;
}

.contact-value a{
  color: inherit;
  text-decoration: underline;
}
body{
  min-height: 100vh;
}
button{
  font-family: inherit;
}
body.night .lead h1{
  text-shadow:
    0 0 12px rgba(110,190,255,.45),
    0 0 28px rgba(110,190,255,.25);
}
.meta-chip{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0px;
  line-height:1.15;
}
.meta-chip:nth-last-child(-n+3){
  padding-top:12px;
  padding-bottom:12px;
}


/* иконки */
.meta-chip i{
  width:28px;
  height:28px;
  stroke-width:1.8;
  color:#0b1e57; /* дневной режим */
}
body.night .meta-chip i{
  color: rgba(110,190,255,.9);
  filter: drop-shadow(0 0 6px rgba(110,190,255,.6))
          drop-shadow(0 0 14px rgba(110,190,255,.4));
}
.meta-value{
  margin-top:0;      /* на всякий случай */
  line-height:1.15;  /* компактнее */
}
.meta-head strong{
  margin:0;
  line-height:1.2;
}
.section-divider{
  height:1px;
  width:100%;
  max-width:1100px;
  margin:48px auto 40px; /* ⬅️ отступы до и после */
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,.35),
    transparent
  );
}
body.night .section-divider{
  background: linear-gradient(
    90deg,
    transparent,
    rgba(110,190,255,.6),
    transparent
  );
  box-shadow: 0 0 12px rgba(110,190,255,.45);
}
/* разделитель в карточках */
.meta-chip strong::after{
  content:"";
  display:block;
  width:32px;              /* длина линии */
  height:2px;              /* толщина */
  margin:4px auto 4px;     /* отступы сверху и снизу */
  border-radius:2px;
  background:rgba(11,30,87,.35); /* дневной режим */
}
body.night .meta-chip strong::after{
  background:rgba(110,190,255,.65);
  box-shadow:0 0 6px rgba(110,190,255,.6);
}
.meta-chip .date-main,
.meta-chip .date-year{
  line-height:1.15;
}
.awards-board{
  display:flex;
  flex-direction:column;
  gap:28px;
  margin-top:20px;
  margin-bottom:32px;
}

.award-class{
  background:rgba(255,255,255,.78);
  border-radius:24px;
  padding:22px;
}

body.night .award-class{
  background:rgba(8,18,48,.82);
  box-shadow:
    0 0 10px rgba(110,190,255,.55),
    0 0 24px rgba(110,190,255,.40),
    0 0 44px rgba(110,190,255,.25);
}

.award-class-title{
  font-size:34px;
  font-weight:700;
  margin-bottom:18px;
}

.award-degree{
  margin-top:18px;
}

.award-degree-title{
  font-size:26px;
  font-weight:700;
  margin-bottom:14px;
  color:#0b1e57;
}

body.night .award-degree-title{
  color:#eaf4ff;
}

.students-list{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.student-card{
  display:flex;
  align-items:center;
  gap:18px;
  padding:16px 18px;
  border-radius:20px;
  background:rgba(255,255,255,.92);
}

body.night .student-card{
  background:rgba(255,255,255,.08);
}

.student-photo{
  width:200px;
  height:200px;
  border-radius:18px;
  object-fit:cover;
  flex-shrink:0;
  background:#dbeafe;
}

.student-info{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}

.student-name{
  font-size:32px;
  font-weight:700;
  line-height:1.1;
}

.student-school{
  font-size:22px;
  line-height:1.25;
  opacity:.78;
}

@media (max-width:700px){
  .award-class-title{
    font-size:28px;
  }

  .award-degree-title{
    font-size:22px;
  }

  .student-card{
    align-items:flex-start;
  }

  .student-photo{
    width:120px;
    height:120px;
    border-radius:16px;
  }

  .student-name{
    font-size:24px;
  }

  .student-school{
    font-size:18px;
  }
}
/* ===== ТЕЛЕФОН: HUD В ОДНУ ЛИНИЮ ===== */
@media(max-width:700px){

  .game-stage .game-hud{
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:space-between;
    gap:0;
  }


  /* сердечки возвращаем в ряд */
  .game-stage .game-hud div:nth-child(4){
    position:static;
    left:auto;
    top:auto;
    transform:none;

    min-height:28px;
    padding:3px 5px;

    flex:1;
  }


  .game-stage .game-hud div:nth-child(4) strong{
    font-size:18px;
  }


  /* остальные показатели */
  .game-stage .game-hud div{
    flex:1;
    min-height:28px;
    padding:3px 5px;
  }


  .game-stage .game-hud span{
    font-size:13px;
  }


  .game-stage .game-hud strong{
    font-size:14px;
  }


  /* пауза не растягивается */
  .game-stage .game-hud .game-pause-btn{
    flex:none;
    min-height:28px;
    padding:3px 7px;
  }

}

/* Компактные кнопки управления игрой: только иконки, рядом друг с другом. */
.game-stage .game-hud .game-fullscreen-btn{
  flex:none;
  width:42px;
  height:42px;
  min-height:42px;
  margin-left:auto;
  padding:0;
  border-radius:50%;
}

.game-stage .game-hud .game-pause-btn{
  flex:none;
  width:42px;
  height:42px;
  min-height:42px;
  margin:0;
  padding:0;
  border-radius:50%;
}

@media(max-width:700px){
  .game-stage .game-hud .game-fullscreen-btn,
  .game-stage .game-hud .game-pause-btn{
    width:30px;
    height:30px;
    min-height:30px;
    margin:0;
    padding:0;
  }
  .game-stage .game-hud .game-fullscreen-btn{margin-left:auto}
}

/* На телефоне полноэкранным становится только само игровое поле. */
.game-stage:fullscreen,
.game-stage:-webkit-full-screen,
.game-stage.game-is-fullscreen{
  position:fixed;
  inset:0;
  z-index:9999;
  width:100vw;
  height:100vh;
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  aspect-ratio:auto;
  overflow:hidden;
  background:#071330;
}

.game-stage:fullscreen #rocket-game,
.game-stage:-webkit-full-screen #rocket-game,
.game-stage.game-is-fullscreen #rocket-game{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  transform:none;
  object-fit:cover;
  object-position:center;
}

.game-stage:fullscreen .game-controls,
.game-stage:-webkit-full-screen .game-controls,
.game-stage.game-is-fullscreen .game-controls{
  position:absolute;
  z-index:7;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  display:flex;
  padding:0;
}

body.game-fullscreen-active{overflow:hidden}
.game-start{overflow-y:auto;justify-content:flex-start}
.game-start > *{flex-shrink:0}
.game-start > .game-start-icon{margin-top:auto}
.game-start > #game-start-btn{margin-bottom:auto}
.game-help-dialog .game-boosters{box-sizing:border-box;display:flex;flex-direction:column;gap:8px;width:100%;max-width:650px;margin:0 0 22px;padding:0;list-style:none;text-align:left;line-height:1.5;color:#cfddff}
.game-boosters > li{display:block}
.game-help-dialog .game-help-booster-icon{display:inline-block;width:36px;height:36px;object-fit:contain;vertical-align:middle;margin-right:4px}
.game-boosters ul{margin:4px 0 0;padding-left:24px;list-style:disc}

.game-stage .game-help-btn{position:absolute;z-index:8;left:14px;bottom:14px;display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:#12264c;color:#fff;font-size:24px;cursor:pointer;box-shadow:0 4px 16px #0005}
.game-help-btn:focus-visible,.game-help-close:focus-visible{outline:3px solid #ffd94a;outline-offset:3px}
.game-help-dialog{box-sizing:border-box;width:min(680px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid #5473a4;border-radius:20px;background:#0d1e3e;color:#fff;overflow-y:auto;box-shadow:0 20px 80px #0008}
.game-help-dialog::backdrop{background:rgba(2,8,28,.78);backdrop-filter:blur(4px)}
.game-help-dialog h2{margin:0 0 12px;font-size:clamp(22px,4vw,30px)}
.game-help-dialog p{margin:0 0 18px;color:#cfddff;line-height:1.5}
.game-help-dialog form{margin:0;text-align:center}
.game-help-close{padding:12px 22px;border:0;border-radius:999px;background:linear-gradient(135deg,#ffd94a,#f39a00);color:#382000;font:inherit;font-weight:800;cursor:pointer}
@media(max-width:700px){.game-help-dialog{padding:18px}.game-help-dialog .game-boosters{font-size:14px}}
.game-stage .game-action-buttons{position:absolute;z-index:8;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));display:flex;flex-direction:column;gap:10px}
.game-stage .game-action-buttons > button{position:static;display:grid;place-items:center;flex:none;width:44px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:#12264c;color:#fff;font-size:22px;cursor:pointer;box-shadow:0 4px 16px #0005}
.game-stage .game-action-buttons > button:disabled{cursor:not-allowed}
.game-action-buttons > button:focus-visible{outline:3px solid #ffd94a;outline-offset:3px}
@media(max-width:700px),(max-height:450px){.game-stage .game-action-buttons{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));gap:8px}.game-stage .game-action-buttons > button{width:36px;height:36px;min-height:36px;font-size:19px}}

/* Оставляем место справа для вертикальных кнопок. */
.game-stage .game-hud{right:72px}
@media(max-width:700px),(max-height:450px){.game-stage .game-hud{right:56px}}

/* Эффекты привязаны к верхней кнопке паузы, слева от неё. */
.game-stage .game-action-buttons .game-effects-hud{
  position:absolute;
  left:auto;
  right:calc(100% + 10px);
  top:0;
  bottom:auto;
  transform:none;
  box-sizing:border-box;
  width:max-content;
  max-width:min(240px,40vw);
  min-height:44px;
  display:flex;
  align-items:center;
  padding:5px 10px;
  border:1px solid rgba(255,216,77,.35);
  border-radius:14px;
  background:rgba(3,13,43,.9);
  color:#fff;
  font-size:14px;
  font-weight:850;
  pointer-events:none;
  flex:none;
  justify-content:flex-end;
  text-align:right;
  white-space:normal;
  overflow-wrap:anywhere;
}
.game-stage .game-action-buttons .game-effects-hud.hidden{display:none}
@media(max-width:700px),(max-height:450px){.game-stage .game-action-buttons .game-effects-hud{min-height:36px;font-size:11px;padding:4px 8px}}
.game-rank-icon{display:inline-block;width:96px;height:96px;object-fit:contain;vertical-align:middle}
.game-rank-title .game-rank-icon{width:clamp(192px,36vw,360px);height:clamp(192px,36vw,360px)}
@media(max-width:700px){.game-rank-hud .game-rank-icon{width:72px;height:72px}}
.game-stage .game-hud .game-rank-hud{background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none}
.game-rank-transition.promotion{background:transparent;backdrop-filter:none}
.game-rank-transition.promotion .game-rank-glow{display:none}
.game-stage .game-hud .game-rank-hud{
  position:static;
  inset:auto;
  transform:none;
  flex:0 1 auto;
  min-width:0;
  max-width:40%;
  margin-left:8px;
  padding:0;
}
.game-stage .game-hud .game-rank-hud strong{
  color:#fff;
  font-size:22px;
  line-height:1.2;
  white-space:normal;
  overflow-wrap:anywhere;
  text-overflow:clip;
  text-shadow:0 2px 6px rgba(0,0,0,.7);
}
@media(max-width:700px){
  .game-stage .game-hud .game-rank-hud{margin-left:4px;max-width:38%}
  .game-stage .game-hud .game-rank-hud strong{font-size:16px}
}
.game-rank-transition.promotion{container-type:size}
.game-rank-transition.promotion .game-rank-title{display:flex;flex-direction:column;align-items:center;gap:12px;width:90%;max-width:90%}
.game-rank-transition.promotion .game-rank-icon{display:block;flex:none;width:min(360px,55cqh);height:min(360px,55cqh)}
.game-rank-title .game-rank-name{display:block;flex:none;white-space:nowrap;line-height:1.15;color:#fff}
#game-lives{display:flex;align-items:center;gap:4px}
#game-lives .game-life-icon{display:block;width:38px;height:32px;object-fit:contain;flex:none}
#game-lives .game-life-icon.is-lost{opacity:.25;filter:grayscale(1)}
@media(max-width:700px){#game-lives{gap:2px}#game-lives .game-life-icon{width:24px;height:22px}}


.game-stage .game-action-buttons .game-effects-hud{flex-wrap:wrap;gap:6px 10px}
.game-effects-hud .game-effect-item{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.game-effect-item img{display:block;width:28px;height:28px;object-fit:contain;flex:none}
@media(max-width:700px),(max-height:450px){.game-effect-item img{width:22px;height:22px}}





.game-stage .game-hud :is(.game-score-icon,.game-best-icon,.game-speed-icon){display:block;width:auto;height:32px;max-width:none;object-fit:contain;flex:none}
@media(max-width:700px){.game-stage .game-hud :is(.game-score-icon,.game-best-icon,.game-speed-icon){height:24px}}
.game-rank-transition.promotion .game-rank-caption{display:none}

/* Телефон вертикально: показатели и жизни на 3 мм, ранг на 8 мм. */
@media (max-width:700px) and (orientation:portrait){
  .game-stage .game-hud{
    top:3mm;
    left:2mm;
    right:6px;
    display:flex; flex-wrap:nowrap;
    align-items:start;
    justify-content:flex-start;
    gap:10px;
    padding:0;
    overflow:visible;
    pointer-events:none;

  }
  .game-stage .game-hud > div{
    flex:0 0 auto;
    justify-content:flex-start;
    align-items:center;
    min-width:0;
    min-height:0;
    padding:0;
    margin:0;
    gap:4px;
  }
  .game-stage .game-hud > div:nth-child(-n+3){width:auto;}
  .game-stage .game-hud > div:nth-child(-n+3) strong{font-size:12px;line-height:14px;}
  .game-stage .game-hud :is(.game-score-icon,.game-best-icon,.game-speed-icon){width:14px;height:14px;}
  .game-stage .game-hud > div:nth-child(4){position:static;inset:auto;transform:none;height:14px;}
  #game-lives{gap:2px;}
  #game-lives .game-life-icon{width:14px;height:14px;}
  .game-stage .game-hud .game-rank-hud{
    position:absolute;
    inset:auto;top:5mm;left:0;height:14px;
    grid-column:2 / 4;
    grid-row:2;
    justify-self:start;
    flex:0 0 auto;
    max-width:none;
    margin:0;
    padding:0;
  }
  .game-stage .game-hud .game-rank-hud strong{
    display:flex;
    align-items:center;
    gap:4px;
    font-size:12px;line-height:14px;letter-spacing:normal;
    white-space:nowrap;
  }
  .game-rank-hud .game-rank-icon{width:14px;height:14px;}
  .game-start{justify-content:flex-start;padding:104px 16px 24px;}
  .game-start > .game-start-icon{display:none;margin-top:0;}
  .game-start h2{margin:0 0 8px;}
  .game-start p{font-size:14px;margin-bottom:14px;}
  .game-start > #game-start-btn{margin-bottom:0;}
}

/* Normalize visible artwork inside equal HUD icon slots. */
@media (max-width:700px) and (orientation:portrait){
.game-stage .game-hud .game-rank-hud strong{overflow:visible;}
.game-stage .game-hud .game-score-icon{object-fit:contain;transform-origin:center;transform:translate(0.065px,0.131px) scale(1.49533);}
.game-stage .game-hud .game-best-icon{object-fit:contain;transform-origin:center;transform:translate(-0.000px,-0.047px) scale(1.08108);}
.game-stage .game-hud .game-speed-icon{object-fit:contain;transform-origin:center;transform:translate(-0.000px,0.053px) scale(1.21212);}
.game-stage .game-hud .game-life-icon{object-fit:contain;transform-origin:center;transform:translate(-0.000px,-0.459px) scale(1.31148);}
.game-stage .game-hud .game-rank-icon[src$="rank-1.webp"]{object-fit:contain;transform-origin:center;transform:translate(0.036px,0.552px) scale(1.95420);}
.game-stage .game-hud .game-rank-icon[src$="rank-2.webp"]{object-fit:contain;transform-origin:center;transform:translate(-0.000px,0.555px) scale(1.96419);}
.game-stage .game-hud .game-rank-icon[src$="rank-3.webp"]{object-fit:contain;transform-origin:center;transform:translate(-0.018px,0.519px) scale(1.96419);}
.game-stage .game-hud .game-rank-icon[src$="rank-4.webp"]{object-fit:contain;transform-origin:center;transform:translate(-0.000px,0.520px) scale(1.90099);}
.game-stage .game-hud .game-rank-icon[src$="rank-5.webp"]{object-fit:contain;transform-origin:center;transform:translate(0.185px,0.478px) scale(1.69163);}
.game-stage .game-hud .game-rank-icon[src$="rank-6.webp"]{object-fit:contain;transform-origin:center;transform:translate(0.027px,0.393px) scale(1.48837);}
.game-stage .game-hud .game-rank-icon[src$="rank-7.webp"]{object-fit:contain;transform-origin:center;transform:translate(0.255px,0.485px) scale(1.40146);}
.game-stage .game-hud .game-rank-icon[src$="rank-8.webp"]{object-fit:contain;transform-origin:center;transform:translate(-0.117px,-0.127px) scale(1.07263);}
}

@media (max-width:700px) and (orientation:portrait){
  .game-stage .game-hud .game-rank-hud strong{
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    gap:6px;
    white-space:nowrap;
    overflow-wrap:normal;
  }
  .game-stage .game-hud .game-rank-hud .game-rank-icon{flex:0 0 14px;}
  .game-stage .game-hud .game-rank-hud .game-rank-name{
    flex:0 0 auto;
    white-space:nowrap;
    overflow-wrap:normal;
    font-size:12px;
    line-height:14px;
    letter-spacing:normal;
  }
}
/* Общая высота и вертикальный центр второй строки HUD. */
@media (max-width:700px) and (orientation:portrait){
  .game-stage .game-hud > div:nth-child(4),
  .game-stage .game-hud .game-rank-hud{
    box-sizing:border-box;
    height:14px;
    min-height:14px;
    border:0;
    padding:0;
    align-items:center;
  }
  .game-stage .game-hud #game-lives,
  .game-stage .game-hud #game-rank{
    display:flex;
    align-items:center;
    height:14px;
    min-height:0;
    margin:0;
    padding:0;
    font-size:12px;
    line-height:14px;
  }
  .game-stage .game-hud #game-rank .game-rank-name{
    display:block;
    height:14px;
    line-height:14px;
    transform:translateY(1px);
  }
}
/* Телефон горизонтально, полноэкранная игра: панель в 3 мм от верха. */
@media (orientation:landscape) and (max-height:600px){
  .game-stage:fullscreen .game-hud,
  .game-stage:-webkit-full-screen .game-hud,
  .game-stage.game-is-fullscreen .game-hud{
    top:3mm;
    align-items:flex-start;
  }
  .game-stage:fullscreen .game-hud > div,
  .game-stage:-webkit-full-screen .game-hud > div,
  .game-stage.game-is-fullscreen .game-hud > div{
    position:static;
    top:auto;
    margin-top:0;
    transform:none;
  }
}
/* Ранг на 1 мм от верха: на 2 мм выше остальной панели. */
@media (orientation:landscape) and (max-height:600px){
  .game-stage:fullscreen .game-hud .game-rank-hud,
  .game-stage:-webkit-full-screen .game-hud .game-rank-hud,
  .game-stage.game-is-fullscreen .game-hud .game-rank-hud{
    margin-top:-2mm;
  }
}
/* Длинные названия рангов располагаются под значком. */
.game-stage .game-hud .game-rank-hud #game-rank.game-rank-stacked{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:4px;
  height:auto;
  overflow:visible;
  text-align:center;
}
.game-stage .game-hud .game-rank-hud #game-rank.game-rank-stacked .game-rank-name{
  display:block;
  flex:none;
  width:max-content;
  max-width:120px;
  height:auto;
  white-space:normal;
  overflow-wrap:normal;
  line-height:1.15;
  transform:none;
}
.game-stage .game-hud .game-rank-hud:has(.game-rank-stacked){
  height:auto;
  align-items:flex-start;
}
/* Ранг справа: значок слева, название справа, как на образце. */
@media (orientation:landscape) and (max-height:600px){
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud{position:fixed;top:1mm;right:11vw;left:auto;margin:0;width:24vw;max-width:24vw;min-height:0;padding:0;border:0;}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank, .game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank.game-rank-stacked{display:grid;grid-template-columns:8vw minmax(0,1fr);align-items:end;justify-content:start;gap:1vw;width:100%;height:auto;overflow:visible;}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon{--rank-size:8vw;display:block;flex:0 0 var(--rank-size);width:var(--rank-size);height:var(--rank-size);object-fit:contain;transform-origin:center;}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-name, .game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank.game-rank-stacked .game-rank-name{display:block;flex:1 1 0;min-width:0;width:auto;max-width:none;height:auto;font-size:1.65vw;line-height:1.25;padding-bottom:.6vw;box-sizing:border-box;letter-spacing:normal;text-transform:uppercase;text-align:center;white-space:normal;overflow-wrap:normal;transform:none;}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon[src$="rank-1.webp"]{transform:translate(0.254%,3.944%) scale(1.95420);}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon[src$="rank-2.webp"]{transform:translate(-0.000%,3.964%) scale(1.96419);}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon[src$="rank-3.webp"]{transform:translate(-0.128%,3.708%) scale(1.96419);}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon[src$="rank-4.webp"]{transform:translate(-0.000%,3.713%) scale(1.90099);}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon[src$="rank-5.webp"]{transform:translate(1.322%,3.414%) scale(1.69163);}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon[src$="rank-6.webp"]{transform:translate(0.194%,2.810%) scale(1.48837);}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon[src$="rank-7.webp"]{transform:translate(1.825%,3.467%) scale(1.40146);}
.game-stage:is(:fullscreen, :-webkit-full-screen, .game-is-fullscreen) .game-hud .game-rank-hud #game-rank .game-rank-icon[src$="rank-8.webp"]{transform:translate(-0.838%,-0.908%) scale(1.07263);}
}

/* Каждое слово длинного ранга — отдельная строка. */
.game-stage .game-hud .game-rank-hud #game-rank .game-rank-name .game-rank-word{
  display:block;
  font:inherit;
  color:inherit;
  line-height:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
  opacity:1;
  white-space:nowrap;
}
/* Большой экран: полное название ранга в одну строку рядом с иконкой. */
@media (min-width:701px) and (min-height:601px){
  .game-stage .game-hud .game-rank-hud #game-rank,
  .game-stage .game-hud .game-rank-hud #game-rank.game-rank-stacked{
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:8px;
    height:auto;
    overflow:visible;
  }
  .game-stage .game-hud .game-rank-hud #game-rank .game-rank-name,
  .game-stage .game-hud .game-rank-hud #game-rank.game-rank-stacked .game-rank-name{
    width:auto;
    max-width:none;
    white-space:nowrap;
    text-align:left;
  }
  .game-stage .game-hud .game-rank-hud #game-rank .game-rank-name .game-rank-word{
    display:inline;
  }
}
/* ===== ЭНЦИКЛОПЕДИЯ: локальные стили, общие card / btn / lead ===== */
.encyclopedia-content{padding-bottom:40px}
.encyclopedia-section{--encyclopedia-line:color-mix(in srgb,currentColor 28%,transparent)}
.encyclopedia-hero .lead{max-width:780px;margin:0 auto 22px}
.encyclopedia-hero .lead p{line-height:1.5}
.encyclopedia-kicker{font-size:14px;letter-spacing:.12em;font-weight:700}
.encyclopedia-actions{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap}
.encyclopedia-section .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;text-decoration:none;font:inherit;text-align:center}
.encyclopedia-random{background:none;border:0;color:inherit;font:inherit;font-size:15px;padding:12px;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:5px}
.encyclopedia-section :is(a,button):focus-visible{outline:3px solid currentColor;outline-offset:5px}
.encyclopedia-section h1:focus{outline:none}
.encyclopedia-map{position:relative;margin:32px 0;min-height:650px;isolation:isolate}
.encyclopedia-orbits{position:absolute;inset:50px 10%;pointer-events:none;z-index:-1}
.encyclopedia-orbits span{position:absolute;inset:0;border:1px solid var(--encyclopedia-line);border-radius:50%}
.encyclopedia-orbits span:nth-child(2){inset:70px -5%;transform:rotate(-25deg)}
.encyclopedia-orbits span:nth-child(3){inset:105px 7%;transform:rotate(30deg);border-style:dashed;animation:encyclopedia-orbit-turn 180s linear infinite}
.encyclopedia-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:230px;height:230px;display:flex;align-items:center;justify-content:center}
.encyclopedia-core img{display:block;width:100%;height:100%;object-fit:contain}

.encyclopedia-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(190px,auto));gap:24px 40px}
.encyclopedia-category{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;margin:0;color:inherit;text-decoration:none;min-width:0;border:1px solid var(--encyclopedia-line);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.encyclopedia-category:nth-child(1){grid-area:1/1}.encyclopedia-category:nth-child(2){grid-area:1/3}.encyclopedia-category:nth-child(3){grid-area:2/3}.encyclopedia-category:nth-child(4){grid-area:3/3}.encyclopedia-category:nth-child(5){grid-area:3/1}.encyclopedia-category:nth-child(6){grid-area:2/1}
.encyclopedia-category svg{width:32px;height:32px;margin-bottom:8px;flex-shrink:0}
.encyclopedia-category h2{font-size:22px;margin:0 0 8px}
.encyclopedia-category p{font-size:17px;line-height:1.4;margin:0}
.encyclopedia-discovery{display:flex;align-items:center;gap:24px}
.encyclopedia-discovery-icon svg{width:52px;height:52px}
.encyclopedia-discovery-copy{flex:1;min-width:0}
.encyclopedia-discovery h2{font-size:26px;margin:8px 0}
.encyclopedia-discovery p{margin:0;line-height:1.45}
.encyclopedia-discovery .btn{flex-shrink:0}
.encyclopedia-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:0;list-style:none;margin:24px 0}
.encyclopedia-steps li{margin:0;font-size:16px;display:flex;flex-direction:column;gap:6px;text-align:center}
.encyclopedia-steps li:not(:last-child)::after{content:'→';position:absolute;right:-20px;top:calc(50% - 12px)}
@media(hover:hover) and (pointer:fine){.encyclopedia-category:hover{transform:scale(1.03);border-color:currentColor;box-shadow:0 0 18px var(--neon-blue)}}
@keyframes encyclopedia-orbit-turn{to{transform:rotate(390deg)}}
@media(max-width:1024px){
 .encyclopedia-categories{gap:20px;grid-template-rows:repeat(3,minmax(200px,auto))}
 .encyclopedia-core{width:190px;height:190px}
}
@media(max-width:768px){
 .encyclopedia-map{min-height:0;margin:24px 0}
 .encyclopedia-orbits{display:none}
 .encyclopedia-core{position:relative;top:auto;left:auto;transform:none;margin:0 auto 24px}
 .encyclopedia-categories{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:14px}
 .encyclopedia-category:nth-child(n){grid-area:auto;padding:18px 12px}
 .encyclopedia-discovery{flex-wrap:wrap;gap:16px}
 .encyclopedia-discovery .btn{margin-left:68px}
 .encyclopedia-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .encyclopedia-steps li::after{display:none}
}
@media(max-width:480px){
 .encyclopedia-actions{flex-direction:column;gap:6px}
 .encyclopedia-actions .btn{width:100%;font-size:16px}
 .encyclopedia-category h2{font-size:20px}
 .encyclopedia-category p{font-size:16px}
 .encyclopedia-discovery-icon{display:none}
 .encyclopedia-discovery .btn{margin-left:0;width:100%}
 .encyclopedia-discovery-copy{flex-basis:100%}
}
@media(max-width:374px){.encyclopedia-categories{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){
 .encyclopedia-section *, .encyclopedia-section *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Иллюстрации появляются под содержимым, не меняя размеры карточек. */
.encyclopedia-category{isolation:isolate;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease,color .3s ease}
.encyclopedia-category::before{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;
  background-image:linear-gradient(rgba(8,18,48,.58),rgba(8,18,48,.78)),var(--encyclopedia-image);
  background-size:cover;background-position:var(--encyclopedia-image-position,center);
  opacity:0;transition:opacity .35s ease;
}
.encyclopedia-category[href$="#panel-ast"]{--encyclopedia-image:url("image/encyclopedia-astronomers.webp");--encyclopedia-image-position:center 30%}
.encyclopedia-category[href$="#panel-eng"]{--encyclopedia-image:url("image/encyclopedia-constructors.webp");--encyclopedia-image-position:center 26%}
.encyclopedia-category[href$="#panel-star"]{--encyclopedia-image:url("image/encyclopedia-constellations.webp")}
.encyclopedia-category[href$="#panel-cosmo"]{--encyclopedia-image:url("image/encyclopedia-cosmonauts.webp");--encyclopedia-image-position:center 35%}
.encyclopedia-category[href$="#panel-obj"]{--encyclopedia-image:url("image/encyclopedia-planets.webp")}
.encyclopedia-category[href$="#panel-dates"]{--encyclopedia-image:url("image/encyclopedia-dates.webp")}
.encyclopedia-category:focus-visible{color:#eaf4ff;outline-color:var(--neon-blue)!important}
.encyclopedia-category:focus-visible::before{opacity:1}
@media(hover:hover) and (pointer:fine){
  .encyclopedia-category:hover{color:#eaf4ff}
  .encyclopedia-category:hover::before{opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .encyclopedia-category::before{transition:none}
}

/* Фон вводного блока: тот же эффект, что у категорий. */
.encyclopedia-hero{isolation:isolate;transition:color .35s ease}
.encyclopedia-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;
  background:linear-gradient(rgba(8,18,48,.58),rgba(8,18,48,.78)),url("image/encyclopedia-explore.webp") center / cover no-repeat;
  opacity:0;transition:opacity .35s ease;
}
.encyclopedia-hero:focus-within{color:#eaf4ff}
.encyclopedia-hero:focus-within::before{opacity:1}
@media(hover:hover) and (pointer:fine){
  .encyclopedia-hero:hover{color:#eaf4ff}
  .encyclopedia-hero:hover::before{opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .encyclopedia-hero::before{transition:none}
}

/* Characters around the logo follow the supplied header composition. */
.header-inner{min-width:0}
.header-inner > .btn{flex-shrink:0;position:relative;z-index:2}
.header-scene{
  position:relative;
  flex:1 1 850px;
  min-width:0;
  max-width:850px;
  aspect-ratio:850 / 140;
  max-height:140px;
  display:grid;
  grid-template-columns:27% 46% 27%;
  align-items:stretch;
  justify-items:stretch;
  margin:auto;
}
.header-scene .brand{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  min-width:0;
  position:relative;
  z-index:2;
}
.header-scene .brand img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
}
.header-crew{position:relative;min-width:0;pointer-events:none;z-index:3}
.header-crew img{
  display:block;
  position:absolute;
  bottom:0;
  height:auto;
  max-height:100%;
  object-fit:contain;
  object-position:bottom;
}
/* Настройки сдвига: --move-x: 20px — вправо, -20px — влево;
   --move-y: 20px — вниз, -20px — вверх. Меняйте значения у нужного героя. */
.header-crew img,
.header-scene > .header-robot{
  transform:translate(var(--move-x,0px),var(--move-y,0px));
}
.header-purple{
  left:10%;
  width:45%;
  z-index:1;
  --move-x:0px;
  --move-y:0px;
}
.header-green{
  right:0;
  width:48%;
  z-index:2;
  --move-x:0px;
  --move-y:0px;
}
.header-scene > .header-robot{
  position:absolute;
  left:42%;
  top:0;
  width:15%;
  height:auto;
  max-height:50%;
  z-index:1;
  pointer-events:none;
  --move-x:0px;
  --move-y:-10px;
}
.header-red{
  left:0;
  width:48%;
  z-index:3;
  --move-x:-25px;
  --move-y:0px;
}
.header-pink{
  left:32%;
  width:35%;
  z-index:2;
  --move-x:10px;
  --move-y:0px;
}
.header-blue{
  right:0;
  width:35%;
  z-index:1;
  --move-x:20px;
  --move-y:-35px;
}
@media(max-width:768px){
  .header-inner{width:96%;gap:6px}
  .header-scene{flex-basis:auto}
  .header-inner > .btn{padding:7px 8px;font-size:14px}
}
@media(max-width:480px){
  .header-scene{flex:1 1 0;width:0}
  header{height:100px}
  .app{padding-top:130px}
  #themeToggle{gap:3px}
  #themeToggle .icon{width:auto;height:auto}
  #themeToggle .text{display:none}
}
/* Прозрачные планеты, пять звёзд и лёгкие орбиты за персонажами. */
.header-decor{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
  user-select:none;
}
.header-decor img{position:absolute;display:block;height:auto}
.header-decor-planet{filter:drop-shadow(0 0 9px rgba(77,196,255,.32))}
.header-planet-saturn{
  left:25%;
  top:4%;
  width:clamp(60px,7.2vw,90px);
  transform:rotate(-8deg);
}
.header-planet-blue{
  right:40%;
  top:1%;
  width:clamp(36px,4.5vw,55px);
}
.header-scene-stars{position:absolute;inset:0;z-index:0;pointer-events:none;user-select:none}
.header-scene-star{position:absolute;display:block;height:auto;filter:drop-shadow(0 0 7px rgba(255,208,74,.65))}
.header-star-1{left:0;top:60%;width:18px}
.header-star-2{left:25%;top:0;width:24px}
.header-star-3{right:27%;top:3%;width:16px}
.header-star-4{right:15%;top:0;width:23px}
.header-star-5{right:2%;top:80%;width:19px}
.header-decor-orbit{
  position:absolute;
  width:clamp(100px,13vw,205px);
  height:clamp(38px,4vw,64px);
  border:1px solid rgba(64,200,255,.27);
  border-radius:50%;
  box-shadow:0 0 16px rgba(15,190,255,.10);
}
.header-decor-orbit-left{left:13%;top:37%;transform:rotate(-18deg)}
.header-decor-orbit-right{right:11%;top:18%;transform:rotate(16deg)}
.header-decor::before,
.header-decor::after{
  content:"";
  position:absolute;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#62dfff;
  box-shadow:0 0 10px 3px rgba(77,216,255,.55),22px 18px 0 -1px rgba(123,229,255,.5);
}
.header-decor::before{left:16%;top:72%}
.header-decor::after{right:13%;top:69%}
@media(max-width:600px){
  .header-decor-orbit{opacity:.55}
  .header-scene-star{width:clamp(9px,3vw,14px)}
  .header-planet-saturn{left:18%;opacity:.75}
  .header-planet-blue{right:17%;opacity:.75}
}
/* Верхняя дуга Земли у нижнего края шапки. */
.header-earth-window{
  position:absolute;
  left:50%;
  bottom:0;
  width:min(900px,80vw);
  height:38px;
  overflow:hidden;
  transform:translateX(-50%);
  z-index:0;
}
.header-decor .header-earth{
  position:absolute;
  top:0;
  left:0;
  display:block;
  width:100%;
  height:auto;
  transform:translateY(-53%);
}
/* Логотип чуть выше Земли; значение можно менять отдельно. */
.header-scene .brand{transform:translateY(-25px)}
@media(max-width:480px){
  .header-earth-window{height:26px}
  .header-scene .brand{transform:translate(-5px, -12px)}
}
/* Холодные искры и короткие световые штрихи вокруг логотипа и Космика. */
.header-glow-field{position:absolute;inset:0;z-index:1;pointer-events:none}
.header-glow-star{
  position:absolute;
  width:10px;
  height:10px;
  background:#eaffff;
  clip-path:polygon(50% 0,59% 41%,100% 50%,59% 59%,50% 100%,41% 59%,0 50%,41% 41%);
  filter:drop-shadow(0 0 5px #64eaff) drop-shadow(0 0 9px #31baff);
  animation:header-glint 4.5s ease-in-out infinite alternate;
}
.glow-star-1{left:29%;top:5%;width:12px;height:12px}
.glow-star-2{left:37%;top:0;width:7px;height:7px;animation-delay:1.2s}
.glow-star-3{left:61%;top:4%;width:9px;height:9px;animation-delay:2.4s}
.glow-star-4{right:28%;top:23%;width:7px;height:7px;animation-delay:.7s}
.glow-star-5{left:27%;top:77%;width:11px;height:11px;animation-delay:1.8s}
.glow-star-6{right:24%;top:76%;width:8px;height:8px;animation-delay:3s}
.header-glow-trail{
  position:absolute;
  height:2px;
  width:clamp(45px,14%,120px);
  border-radius:99px;
  background:linear-gradient(90deg,transparent,rgba(64,214,255,.12),rgba(133,239,255,.85),transparent);
  box-shadow:0 0 7px rgba(58,205,255,.7),0 0 17px rgba(58,205,255,.3);
}
.header-glow-trail::after{
  content:"";
  position:absolute;
  left:58%;
  top:-2px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#b8f7ff;
  box-shadow:0 0 8px 2px rgba(86,224,255,.85);
}
.glow-trail-left{left:27%;top:26%;transform:rotate(-12deg)}
.glow-trail-right{right:34%;top:21%;transform:rotate(11deg)}
@keyframes header-glint{
  from{opacity:.55;transform:scale(.85)}
  to{opacity:1;transform:scale(1.2)}
}
@media(max-width:600px){
  .header-glow-trail{width:65px;opacity:.65}
  .header-glow-star{max-width:8px;max-height:8px}
}
@media(prefers-reduced-motion:reduce){
  .header-glow-star{animation:none}
}

/* ===== ПРОЕКТЫ НА ОРБИТЕ ===== */
.project-universe{
  position:relative;
  z-index:2;
  width:100vw;
  margin:62px 0 20px 50%;
  padding:46px clamp(18px,5vw,76px) 58px;
  box-sizing:border-box;
  transform:translateX(-50%);
  overflow:hidden;
  isolation:isolate;
  color:#f4fbff;
  background:transparent;
}
.project-universe-heading{text-align:center;margin:0 auto 36px}
.project-universe-kicker{
  display:block;
  margin-bottom:7px;
  color:#8bdbff;
  font-size:14px;
  font-weight:700;
  letter-spacing:.2em;
}
.project-universe h2{
  margin:0;
  color:#fff;
  font-size:clamp(28px,4vw,42px);
  line-height:1.1;
  text-shadow:0 0 24px rgba(80,202,255,.28);
}
.project-constellation{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,minmax(130px,1fr));
  gap:clamp(18px,3vw,48px);
  width:min(1120px,100%);
  min-height:210px;
  margin:0 auto;
  align-items:center;
}
.project-constellation-lines{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none;
}
.project-constellation-lines path{
  fill:none;
  stroke:rgba(151,222,255,.32);
  stroke-width:1.2;
  stroke-dasharray:3 9;
  vector-effect:non-scaling-stroke;
}
.project-constellation-lines circle{
  fill:#ffe198;
  opacity:.72;
  filter:drop-shadow(0 0 5px #ffd778);
}
.project-station{
  position:relative;
  z-index:1;
  display:flex;
  min-width:0;
  min-height:156px;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  color:#f5fbff;
  text-align:center;
  text-decoration:none;
  transition:transform .4s cubic-bezier(.2,.75,.2,1),filter .4s ease;
  outline:none;
}
.project-station-high{transform:translateY(-18px)}
.project-station-low{transform:translateY(15px)}
.project-logo{
  position:relative;
  z-index:2;
  display:grid;
  place-items:center;
  width:136px;
  height:136px;
  box-sizing:border-box;
  background:transparent;
  transition:transform .4s ease,filter .4s ease;
}
.project-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 4px 7px rgba(4,20,60,.48)) drop-shadow(0 0 5px rgba(255,255,255,.5));
  transition:filter .4s ease;
}
.project-logo-1 img{width:94%;height:94%}
.project-logo-3 img{width:96%;height:96%}
.project-logo-5 img{width:94%;height:94%}
body:not(.night) .project-logo-monochrome img{
  filter:brightness(0) saturate(100%) invert(18%) sepia(72%) saturate(2249%) hue-rotate(201deg) brightness(78%) contrast(104%) drop-shadow(0 3px 6px rgba(255,255,255,.7));
}
body.night .project-logo img{
  filter:drop-shadow(0 3px 7px rgba(0,7,28,.7)) drop-shadow(0 0 9px rgba(91,215,255,.58));
}
body.night .project-logo-monochrome img{
  filter:brightness(0) invert(1) drop-shadow(0 0 9px rgba(91,215,255,.72));
}
.project-station:hover,
.project-station:focus-visible{filter:drop-shadow(0 10px 18px rgba(61,201,255,.26))}
.project-station:hover{transform:translateY(-8px)}
.project-station-high:hover{transform:translateY(-26px)}
.project-station-low:hover{transform:translateY(7px)}
.project-station:hover .project-logo,
.project-station:focus-visible .project-logo{
  transform:scale(1.03);
  filter:drop-shadow(0 0 13px rgba(75,202,255,.48));
}
.project-station:focus-visible .project-logo{outline:2px solid #fff;outline-offset:7px}

@media(max-width:900px){
  .project-constellation{grid-template-columns:repeat(3,1fr);row-gap:34px}
  .project-constellation-lines{display:none}
  .project-station-high,.project-station-low{transform:none}
  .project-station-high:hover,.project-station-low:hover{transform:translateY(-8px)}
}
@media(max-width:560px){
  .project-universe{margin-top:44px;padding:38px 14px 42px}
  .project-universe-heading{margin-bottom:28px}
  .project-universe-kicker{font-size:12px}
  .project-constellation{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 8px}
  .project-station{min-height:126px}
  .project-logo{width:112px;height:112px}
}
@media(prefers-reduced-motion:reduce){
  .project-station,.project-logo,.project-logo img{transition:none}
}

/* ===== ТАЙМЕР СЛЕВА, ПРОЕКТЫ СПРАВА ===== */
.home-orbit-dashboard{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(360px,1fr) minmax(520px,1fr);
  align-items:stretch;
  gap:clamp(26px,3vw,48px);
  width:min(1500px,100vw);
  margin:72px 0 28px 50%;
  padding:0 clamp(24px,5vw,76px);
  box-sizing:border-box;
  transform:translateX(-50%);
}
.home-orbit-dashboard .quiz-countdown{
  width:100%;
  height:auto;
  min-height:230px;
  align-self:center;
  margin:0;
  padding:34px clamp(20px,2.2vw,34px);
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 18%,rgba(170,230,255,.1),transparent 36%),
    linear-gradient(145deg,rgba(35,111,181,.38),rgba(14,66,133,.48));
  border:1px solid rgba(135,225,255,.82);
  box-shadow:
    0 0 9px rgba(57,200,255,.62),
    0 0 26px rgba(57,174,255,.2),
    0 18px 42px rgba(2,12,42,.28),
    inset 0 0 34px rgba(19,93,168,.1);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}
.home-orbit-dashboard .quiz-countdown::before,
.home-orbit-dashboard .project-universe::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.5;
  background:
    radial-gradient(circle at 12% 21%,#b8efff 0 1px,transparent 2px),
    radial-gradient(circle at 87% 17%,#72d8ff 0 1px,transparent 2px),
    radial-gradient(circle at 19% 78%,#72d8ff 0 1px,transparent 2px),
    radial-gradient(circle at 73% 83%,#b8efff 0 1px,transparent 2px),
    radial-gradient(circle at 48% 11%,rgba(105,218,255,.8) 0 1px,transparent 2px),
    radial-gradient(circle at 94% 66%,rgba(105,218,255,.8) 0 1px,transparent 2px);
}
.home-orbit-dashboard .quiz-countdown::after,
.home-orbit-dashboard .project-universe::after{
  content:"";
  position:absolute;
  right:8%;
  bottom:0;
  left:8%;
  height:1px;
  background:linear-gradient(90deg,transparent,#42d7ff,transparent);
  box-shadow:0 0 10px rgba(66,215,255,.75);
  opacity:.7;
}
.home-orbit-dashboard .quiz-countdown > *,
.home-orbit-dashboard .project-universe > *{position:relative;z-index:1}
.home-orbit-dashboard .countdown-title{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  font-size:clamp(24px,2vw,30px);
}
.home-orbit-dashboard .countdown-title::before,
.home-orbit-dashboard .countdown-title::after,
.home-orbit-dashboard .project-universe h2::before,
.home-orbit-dashboard .project-universe h2::after{
  color:#78e3ff;
  font-size:.7em;
  font-weight:400;
  text-shadow:0 0 8px rgba(86,221,255,.9);
  white-space:nowrap;
}
.home-orbit-dashboard .countdown-title::before,
.home-orbit-dashboard .project-universe h2::before{content:"—  ✦"}
.home-orbit-dashboard .countdown-title::after,
.home-orbit-dashboard .project-universe h2::after{content:"✦  —"}
.home-orbit-dashboard .countdown-item strong{font-size:clamp(34px,3.1vw,50px)}
.home-orbit-dashboard .countdown-title,
.home-orbit-dashboard .countdown-caption,
.home-orbit-dashboard .countdown-item span{color:#eaf4ff}
.home-orbit-dashboard .countdown-item{
  background:rgba(225,246,255,.14);
  border-color:rgba(181,231,255,.42);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 6px 16px rgba(1,30,80,.16);
}
.home-orbit-dashboard .project-universe{
  display:flex;
  height:100%;
  min-height:430px;
  flex-direction:column;
  justify-content:center;
  width:100%;
  margin:0;
  padding:34px clamp(20px,2.2vw,34px);
  transform:none;
  overflow:hidden;
  box-sizing:border-box;
  background:
    radial-gradient(circle at 82% 18%,rgba(170,230,255,.1),transparent 36%),
    linear-gradient(145deg,rgba(35,111,181,.38),rgba(14,66,133,.48));
  border:1px solid rgba(135,225,255,.82);
  border-radius:28px;
  box-shadow:
    0 0 9px rgba(57,200,255,.62),
    0 0 26px rgba(57,174,255,.2),
    0 18px 42px rgba(2,12,42,.28),
    inset 0 0 34px rgba(19,93,168,.1);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}
.home-orbit-dashboard .project-universe-heading{margin:0 auto 26px}
.home-orbit-dashboard .project-universe h2{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  color:#eaf4ff;
  font-size:clamp(28px,2.8vw,38px);
  text-shadow:0 0 16px rgba(80,202,255,.2);
}
body.night .home-orbit-dashboard .quiz-countdown,
body.night .home-orbit-dashboard .project-universe{
  background:
    radial-gradient(circle at 20% 18%,rgba(39,160,255,.06),transparent 34%),
    linear-gradient(145deg,rgba(5,23,62,.4),rgba(2,11,38,.52));
  border-color:rgba(76,206,255,.74);
  box-shadow:
    0 0 9px rgba(57,200,255,.58),
    0 0 25px rgba(57,174,255,.18),
    0 18px 42px rgba(0,5,24,.34),
    inset 0 0 34px rgba(19,93,168,.08);
}
body.night .home-orbit-dashboard .project-universe h2{
  color:#eaf4ff;
  text-shadow:0 0 16px rgba(80,202,255,.22);
}
.home-orbit-dashboard .project-constellation{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:0px 0px;
  width:min(450px,100%);
  min-height:0;
  align-items:center;
}
.home-orbit-dashboard .project-constellation-lines{display:none}
.home-orbit-dashboard .project-logo{
  width:136px;
  height:136px;
  padding:10px;
  border:1px solid rgba(150,232,255,.84);
  border-radius:50%;
  background:radial-gradient(circle,rgba(87,164,218,.58),rgba(12,67,133,.72));
  box-shadow:
    0 0 9px rgba(57,218,255,.65),
    0 0 24px rgba(34,151,255,.22),
    inset 0 0 18px rgba(39,173,255,.14);
}
body.night .home-orbit-dashboard .project-logo{
  border-color:rgba(62,213,255,.75);
  background:radial-gradient(circle,rgba(17,67,118,.5),rgba(3,20,55,.76));
}
.home-orbit-dashboard .project-station{
  grid-column:span 2;
  min-height:156px;
  transform:none;
}
.home-orbit-dashboard .project-station:nth-of-type(4){grid-column:2 / span 2}
.home-orbit-dashboard .project-station:nth-of-type(5){grid-column:4 / span 2}
.home-orbit-dashboard .project-station:hover,
.home-orbit-dashboard .project-station-high:hover,
.home-orbit-dashboard .project-station-low:hover{transform:translateY(-8px)}

@media(max-width:1080px){
  .home-orbit-dashboard{
    grid-template-columns:1fr;
    width:min(820px,100vw);
    gap:58px;
  }
  .home-orbit-dashboard .quiz-countdown{width:min(760px,100%);margin:0 auto}
}
@media(max-width:600px){
  .home-orbit-dashboard{
    width:100vw;
    margin-top:48px;
    padding:0 12px;
    gap:44px;
  }
  .home-orbit-dashboard .quiz-countdown{width:100%;margin:0}
  .home-orbit-dashboard .quiz-countdown,
  .home-orbit-dashboard .project-universe{min-height:0}
  .home-orbit-dashboard .project-universe{margin:0;padding:28px 12px 30px}
  .home-orbit-dashboard .project-universe-heading{margin-bottom:26px}
  .home-orbit-dashboard .project-constellation{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px 8px;
  }
  .home-orbit-dashboard .project-station,
  .home-orbit-dashboard .project-station:nth-of-type(4),
  .home-orbit-dashboard .project-station:nth-of-type(5){grid-column:auto}
  .home-orbit-dashboard .project-station:last-of-type{grid-column:1 / -1}
  .home-orbit-dashboard .project-logo{width:110px;height:110px;padding:8px}
  .home-orbit-dashboard .countdown-title::before,
  .home-orbit-dashboard .countdown-title::after,
  .home-orbit-dashboard .project-universe h2::before,
  .home-orbit-dashboard .project-universe h2::after{content:"✦"}
}
