*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#01040c; --fg:#e8eefc; --dim:#8fa2c4; --line:rgba(140,175,235,.18);
  --field:rgba(255,255,255,.05); --accent:#C9A84C;
}
body[data-theme="light"]{
  --bg:#eef3fa; --fg:#0e2242; --dim:#5c6f8f;
  --line:rgba(20,45,90,.12); --field:rgba(255,255,255,.85); --accent:#8a6d1f;
}
html,body{height:100%}
body{
  background:var(--bg); color:var(--fg); overflow:hidden;
  font-family:"Segoe UI",Inter,system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;
  transition:background .5s ease,color .5s ease;
}

/* ---------- sahne ---------- */
#stage{position:fixed;inset:0;z-index:0}
#ehm-cube{position:absolute;inset:0;width:100%;height:100%;display:block}
#bg{position:absolute;inset:0;transition:opacity .6s,background .6s}
/* dərin okean mavisi — bioluminesent kütləyə uyğun */
body[data-theme="dark"] #bg{
  background:
    radial-gradient(42% 27% at 50% 40%, rgba(46,132,255,.24) 0%, rgba(22,74,175,.10) 46%, rgba(0,0,0,0) 74%),
    radial-gradient(125% 80% at 50% 16%, rgba(15,58,131,.60) 0%, rgba(7,24,58,.33) 46%, rgba(0,0,0,0) 80%),
    linear-gradient(180deg,#08172f 0%,#091b37 24%,#050f22 54%,#01050e 82%,#000104 100%);
}
body[data-theme="light"] #bg{
  background:radial-gradient(95% 75% at 50% 34%, #e7eef9 0%, #cfdcef 44%, #b3c6e0 80%, #9db3d2 100%);
}
/* altdakı yazıların oxunması üçün yumşaq qaralma */
#veil{position:absolute;left:0;right:0;bottom:0;height:34vh;pointer-events:none}
body[data-theme="dark"] #veil{
  background:linear-gradient(180deg,rgba(0,3,10,0) 0%,rgba(0,3,10,.55) 55%,rgba(0,3,10,.92) 100%);
}
body[data-theme="light"] #veil{
  background:linear-gradient(180deg,rgba(238,243,250,0) 0%,rgba(238,243,250,.7) 55%,rgba(238,243,250,.96) 100%);
}

/* ---------- üst ---------- */
#top{
  position:fixed;z-index:3;top:0;left:0;right:0;
  display:flex;align-items:center;justify-content:space-between;
  padding:22px 30px;
}
.brand{display:flex;align-items:center;gap:10px;font-size:19px;letter-spacing:.2px;
  color:var(--fg);text-decoration:none}
.brand:hover .name b{filter:brightness(1.15)}
.brand .name{font-weight:400}
.brand .name b{font-weight:700;color:var(--accent)}
.brand .mark{
  width:11px;height:11px;border-radius:50%;
  background:var(--accent);box-shadow:0 0 14px var(--accent);
}
#login{
  display:inline-flex;align-items:center;gap:8px;cursor:pointer;
  font-family:inherit;font-size:13.5px;font-weight:600;letter-spacing:.2px;
  color:var(--fg);background:var(--field);
  border:1px solid var(--line);border-radius:999px;padding:9px 18px;
  backdrop-filter:blur(14px);
  transition:border-color .2s,background .2s,transform .18s,box-shadow .2s;
}
#login svg{opacity:.8}
#login:hover{
  border-color:var(--accent);transform:translateY(-1px);
  background:color-mix(in srgb,var(--accent) 16%,transparent);
  box-shadow:0 8px 26px rgba(0,0,0,.35);
}
#login:active{transform:translateY(0)}

/* ---------- alt ---------- */
#credit{
  position:fixed;z-index:3;left:0;right:0;bottom:34px;
  text-align:center;font-size:13px;letter-spacing:.35px;color:var(--dim);
  pointer-events:none;padding:0 24px;
}
#legal{
  position:fixed;z-index:3;right:30px;bottom:30px;
  display:flex;align-items:center;gap:9px;font-size:12px;color:var(--dim);
}
#legal a{color:var(--dim);text-decoration:none;transition:color .2s}
#legal a:hover{color:var(--accent)}
#legal span{opacity:.45}

@media(max-width:860px){
  #top{padding:16px 18px}
  #credit{bottom:62px;font-size:12px}
  #legal{right:0;left:0;bottom:28px;justify-content:center}
}

/* ---------- üst naviqasiya (ana bağlantılar) ---------- */
#top .nav{display:flex;align-items:center;gap:22px}
#top .nav a{color:var(--dim);text-decoration:none;font-size:13.5px;transition:color .2s;white-space:nowrap}
#top .nav a:hover{color:var(--fg)}
@media(max-width:720px){
  #top .nav a:not(#login){display:none}
}

/* giriş düyməsi */
#top .btn-login{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--fg);background:var(--field);
  border:1px solid var(--line);border-radius:999px;padding:9px 18px;
  font-size:13.5px;font-weight:600;letter-spacing:.2px;
  backdrop-filter:blur(14px);
  transition:border-color .2s,background .2s,transform .18s,box-shadow .2s;
}
#top .btn-login svg{opacity:.8}
#top .btn-login:hover{
  color:var(--fg);border-color:var(--accent);transform:translateY(-1px);
  background:color-mix(in srgb,var(--accent) 16%,transparent);
  box-shadow:0 8px 26px rgba(0,0,0,.35);
}

/* ---------- menyu (drawer) ---------- */
#top .left{display:flex;align-items:center;gap:14px}
#menuBtn{
  width:40px;height:40px;border-radius:50%;flex:0 0 40px;cursor:pointer;
  display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  background:var(--field);border:1px solid var(--line);color:var(--fg);padding:0;
  transition:border-color .2s,background .2s,transform .2s;
}
#menuBtn:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent)}
#menuBtn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#menuBtn span{display:block;width:16px;height:1.6px;border-radius:2px;background:currentColor;
  transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .2s}
body.menu-open #menuBtn span:nth-child(1){transform:translateY(5.6px) rotate(45deg)}
body.menu-open #menuBtn span:nth-child(2){opacity:0}
body.menu-open #menuBtn span:nth-child(3){transform:translateY(-5.6px) rotate(-45deg)}

/* menyu açıq olanda sağ üstdəki keçidlər və Login gizlənir, bağlananda yerinə qayıdır */
#top .nav{transition:opacity .25s,visibility .25s}
body.menu-open #top .nav{opacity:0;visibility:hidden;pointer-events:none}

#drawerBg{position:fixed;inset:0;z-index:2;background:rgba(0,2,8,.45);
  opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;backdrop-filter:blur(2px)}
body.menu-open #drawerBg{opacity:1;visibility:visible}

#drawer{
  position:fixed;z-index:2;top:0;left:0;bottom:0;width:min(320px,86vw);
  display:flex;flex-direction:column;padding:96px 30px 28px;
  background:color-mix(in srgb,var(--bg) 88%,transparent);
  border-right:1px solid var(--line);backdrop-filter:blur(14px);
  transform:translateX(-102%);transition:transform .38s cubic-bezier(.2,.8,.2,1);
}
body.menu-open #drawer{transform:none}
#drawer .dnav{display:flex;flex-direction:column;gap:4px}
#drawer .dnav a{color:var(--fg);text-decoration:none;font-size:17px;padding:12px 0;
  border-bottom:1px solid var(--line);transition:color .2s,padding .2s}
#drawer .dnav a:hover,#drawer .dnav a:focus-visible{color:var(--accent);padding-left:6px;outline:none}
#drawer .dlogin{
  margin-top:26px;display:inline-flex;align-items:center;justify-content:center;gap:9px;
  color:var(--fg);text-decoration:none;font-size:14px;font-weight:600;
  background:var(--field);border:1px solid var(--line);border-radius:999px;padding:12px 18px;
  transition:border-color .2s,background .2s;
}
#drawer .dlogin:hover,#drawer .dlogin:focus-visible{border-color:var(--accent);outline:none;
  background:color-mix(in srgb,var(--accent) 16%,transparent)}
#drawer .dfoot{margin-top:auto;font-size:12px;color:var(--dim);display:flex;flex-direction:column;gap:8px}
#drawer .dlegal{display:flex;gap:8px;align-items:center}
#drawer .dlegal a{color:var(--dim);text-decoration:none}
#drawer .dlegal a:hover{color:var(--accent)}
#drawer .dlegal span{opacity:.45}
#drawer .dcredit{opacity:.7}

/* ---------- dalğa göstəricisi ---------- */
#voice{position:fixed;z-index:1;transition:opacity .25s;left:50%;bottom:34px;transform:translateX(-50%);pointer-events:none}
#wave{width:150px;height:30px;display:block}
@media(max-width:860px){ #voice{bottom:26px} }
@media(prefers-reduced-motion:reduce){ #drawer,#drawerBg,#top .nav,#menuBtn span{transition:none} }
body.menu-open #voice{opacity:0}


/* ---------- yeni loqo ---------- */
#top .brand{width:58px;height:46px;background:url(/assets/img/ehm-logo-96.png) left center/contain no-repeat;gap:0}
#top .brand .mark,#top .brand .name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:860px){#top .brand{width:50px;height:40px}}

/* ---------- səs icazəsi pəncərəsi (sayt brauzerin səs ayarını özü aça bilmir) ---------- */
#sesIzin{
  position:fixed;z-index:30;left:50%;bottom:84px;
  width:min(440px,calc(100% - 32px));
  display:flex;align-items:center;gap:14px;padding:14px 14px 14px 16px;
  color:var(--fg);background:var(--field);border:1px solid var(--line);border-radius:18px;
  backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);
  box-shadow:0 18px 50px rgba(0,0,0,.38);
  font-family:"Segoe UI",Inter,system-ui,-apple-system,sans-serif;
  opacity:0;transform:translate(-50%,14px);transition:opacity .32s ease,transform .32s ease;
}
#sesIzin[hidden]{display:none}
#sesIzin.acik{opacity:1;transform:translate(-50%,0)}
#sesIzin .si-ikon{
  position:relative;flex:0 0 42px;width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;color:var(--accent);
  background:color-mix(in srgb,var(--accent) 16%,transparent);
}
#sesIzin .si-ikon i{position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--accent);opacity:0;animation:siDalga 2.1s ease-out infinite}
#sesIzin .si-ikon i:nth-child(3){animation-delay:.7s}
#sesIzin .si-ikon i:nth-child(4){animation-delay:1.4s}
@keyframes siDalga{0%{opacity:.75;transform:scale(1)}100%{opacity:0;transform:scale(1.75)}}
#sesIzin .si-metn{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;line-height:1.25}
#sesIzin .si-metn b{font-size:14.5px;font-weight:650}
#sesIzin .si-metn span{font-size:12.5px;color:var(--dim)}
#sesIzin .si-dk{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}
#sesIzin button{
  cursor:pointer;border-radius:999px;font-family:inherit;font-size:13px;font-weight:600;line-height:1;padding:9px 16px;white-space:nowrap;
  transition:background .2s,border-color .2s,transform .15s,color .2s;
}
#sesIzin .si-ac{color:#120c02;background:var(--accent);border:1px solid var(--accent)}
body[data-theme="light"] #sesIzin .si-ac{color:#fff}
#sesIzin .si-ac:hover{transform:translateY(-1px)}
#sesIzin .si-yox{color:var(--dim);background:transparent;border:1px solid transparent;padding:6px 16px}
#sesIzin .si-yox:hover{color:var(--fg);border-color:var(--line)}
#sesIzin button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
body.menu-open #sesIzin{opacity:0;pointer-events:none}
@media(max-width:860px){ #sesIzin{bottom:70px} }
@media(max-width:420px){
  #sesIzin{flex-wrap:wrap}
  #sesIzin .si-dk{flex-direction:row;width:100%}
  #sesIzin .si-dk button{flex:1}
}
@media(prefers-reduced-motion:reduce){ #sesIzin{transition:none} #sesIzin .si-ikon i{animation:none} }
