/* Base theme */
html { color-scheme: dark; }
body { background: #05050A; color: rgb(241 245 249); }

html:not(.dark) { color-scheme: light; }
html:not(.dark) body { background: #F7F8FB; color: #0B1220; }

.glass-panel{
  background: rgba(20,20,30,.6);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 4px 30px rgba(0,0,0,.5);
}
html:not(.dark) .glass-panel{
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(10,18,32,.10);
  box-shadow: 0 10px 35px rgba(10,18,32,.10);
}

.text-gradient{
  background: linear-gradient(90deg,#00F0FF 0%,#B026FF 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}

.bg-grid{
  background-size:40px 40px;
  mask-image:linear-gradient(to bottom,transparent,10%,black,90%,transparent);
  -webkit-mask-image:linear-gradient(to bottom,transparent,10%,black,90%,transparent);
}

.typing-cursor::after{content:'█';animation:cursor-blink 1s step-start infinite;color:#00F0FF;margin-left:2px}
@keyframes cursor-blink{0%,100%{opacity:1}50%{opacity:0}}

.terminal-line{animation:fadeIn .3s ease-out forwards;opacity:0}
.terminal-line:nth-child(1){animation-delay:.5s}.terminal-line:nth-child(2){animation-delay:1.2s}.terminal-line:nth-child(3){animation-delay:1.4s}.terminal-line:nth-child(4){animation-delay:1.6s}.terminal-line:nth-child(5){animation-delay:1.8s}.terminal-line:nth-child(6){animation-delay:2s}.terminal-line:nth-child(7){animation-delay:2.2s}.terminal-line:nth-child(8){animation-delay:2.4s}
@keyframes fadeIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}

/* Controls */
.ui-divider{
  width: 1px;
  height: 26px;
  background: rgba(255,255,255,.12);
  margin: 0 6px;
}
html:not(.dark) .ui-divider{ background: rgba(10,18,32,.14); }

.ui-lang-btn{
  height:34px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.90);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  transition:all 150ms ease;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
html:not(.dark) .ui-lang-btn{
  border:1px solid rgba(10,18,32,.14);
  background: rgba(10,18,32,.04);
  color: rgba(10,18,32,.85);
}

.ui-lang-btn:hover{
  border-color:rgba(0,240,255,.35);
  box-shadow:0 0 12px rgba(0,240,255,.15);
}
.ui-lang-btn.is-active{
  border-color:rgba(0,240,255,.60);
  background:rgba(0,240,255,.12);
  color:#00F0FF;
}
html:not(.dark) .ui-lang-btn.is-active{
  background: rgba(0,240,255,.12);
  color: #007C85;
  border-color: rgba(0,240,255,.55);
}

.ui-icon-btn{
  height:34px;
  width:34px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.90);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:all 150ms ease;
}
html:not(.dark) .ui-icon-btn{
  border:1px solid rgba(10,18,32,.14);
  background: rgba(10,18,32,.04);
  color: rgba(10,18,32,.85);
}
.ui-icon-btn:hover{
  border-color:rgba(0,240,255,.35);
  box-shadow:0 0 12px rgba(0,240,255,.15);
}
.ui-icon{ font-size:20px; line-height:20px; }
