:root {
  --color-bg-light: #f5f6fa;
  --color-bg-dark: #222d3a;
  --color-text-light: #232323;
  --color-text-dark: #f7f7f7;
  --color-accent: #2d72d9;
  --transition-bg: background 0.7s cubic-bezier(.86,.09,.48,.99), color 0.7s cubic-bezier(.86,.09,.48,.99);
}

html[data-theme="light"] {
  background: var(--color-bg-light);
  color: var(--color-text-light);
  transition: var(--transition-bg);
}
html[data-theme="dark"] {
  background: var(--color-bg-dark);
  color: var(--color-text-dark);
  transition: var(--transition-bg);
}

body {
  font-family: 'Inter', 'Segoe UI', Arial, sans-serif;
  margin: 0;
  padding: 0;
  min-height: 100vh;
}

#top-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 2rem;
  background: transparent;
}

#clock-container {
  font-size: 1.3rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 1rem;
}

#lang-select {
  font-size: 1rem;
  border-radius: 5px;
  padding: .25em .5em;
  margin-right: 2em;
}

#theme-toggle {
  background: var(--color-accent);
  color: #fff;
  border: none;
  padding: .5em 1em;
  border-radius: 6px;
  font-size: 1rem;
  cursor: pointer;
  transition: background 0.5s;
}
html[data-theme="dark"] #theme-toggle {
  background: #fff;
  color: var(--color-accent);
}

main {
  padding: 2rem 4vw;
  max-width: 600px;
  margin: 2em auto;
  text-align: center;
}

#surprise {
  margin-top: 2em;
  font-size: 1.3rem;
  padding: 1em;
  border-radius: 10px;
  background: rgba(44, 130, 201, 0.08);
  box-shadow: 0 2px 10px rgba(44,130,201,0.07);
  transition: background 0.7s;
}
html[data-theme="dark"] #surprise {
  background: rgba(44,130,201,0.15);
  color: #fff;
}