/* Kawaii Style */

/* Wobbly outline effect using SVG filter */
.kawaii-mode {
  --kawaii-bg: #f5f5dc; /* Light beige/cream */
  --kawaii-text: #8b4513; /* Dark brown */
  --kawaii-outline: #654321; /* Dark brown for outlines */
  --kawaii-blue: #b0e0e6; /* Soft blue */
  --kawaii-orange: #ffb347; /* Warm orange */
  --kawaii-pink: #ffb6c1; /* Soft pink */
  --kawaii-yellow: #ffe4b5; /* Light yellow */
  --kawaii-green: #98d8c8; /* Muted green */
  --kawaii-red: #ff6b6b; /* Soft red */
  --kawaii-brown: #d2b48c; /* Light brown/beige */
  --kawaii-shadow: rgba(139, 69, 19, 0.15); /* Soft brown shadow */
}

.kawaii-mode body {
  background: var(--kawaii-bg) !important;
  color: var(--kawaii-text) !important;
  font-family: "Comic Sans MS", "Chalkboard SE", "Comic Neue", "Nunito",
    sans-serif;
}

/* Title styling */
.kawaii-mode h1 {
  font-weight: 900;
  color: var(--kawaii-text);
  text-shadow: 2px 2px 0 var(--kawaii-outline), 4px 4px 8px var(--kawaii-shadow);
  letter-spacing: 0.02em;
}

.kawaii-mode .section-title {
  font-weight: 900;
  color: var(--kawaii-text);
  text-shadow: 2px 2px 0 var(--kawaii-outline), 4px 4px 8px var(--kawaii-shadow);
}

/* Game entry cards - rounded with wobbly effect */
.kawaii-mode .game-entry {
  background: #fff !important;
  border: 4px solid var(--kawaii-outline) !important;
  border-radius: 24px !important;
  box-shadow: 0 4px 12px var(--kawaii-shadow), 0 2px 4px rgba(0, 0, 0, 0.1) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  position: relative;
  overflow: hidden;
}

.kawaii-mode .game-entry::before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  border-radius: 26px;
  border: 2px solid var(--kawaii-outline);
  opacity: 0.3;
  pointer-events: none;
}

.kawaii-mode .game-entry:hover {
  transform: translateY(-8px) scale(1.05) !important;
  box-shadow: 0 8px 20px var(--kawaii-shadow), 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Game preview images */
.kawaii-mode .game-preview {
  border-bottom: 4px solid var(--kawaii-outline) !important;
  border-radius: 20px 20px 0 0 !important;
  filter: drop-shadow(0 2px 4px var(--kawaii-shadow));
}

/* Game content */
.kawaii-mode .game-content {
  background: linear-gradient(to bottom, #fff, #fefefe);
  border-radius: 0 0 20px 20px !important;
}

.kawaii-mode .game-desc {
  color: var(--kawaii-text) !important;
  font-weight: 500;
}

/* Action buttons - circular and rounded */
.kawaii-mode .game-actions .action {
  border-radius: 999px !important;
  border: 3px solid var(--kawaii-outline) !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  box-shadow: 0 3px 8px var(--kawaii-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
  position: relative;
  overflow: hidden;
}

.kawaii-mode .game-actions .action.primary {
  background: var(--kawaii-blue) !important;
  color: var(--kawaii-text) !important;
  border-color: var(--kawaii-outline) !important;
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
}

.kawaii-mode .game-actions .action.primary:hover {
  background: var(--kawaii-orange) !important;
  box-shadow: 0 4px 12px var(--kawaii-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
  transform: translateY(-2px);
}

.kawaii-mode .game-actions .action.secondary {
  background: var(--kawaii-yellow) !important;
  color: var(--kawaii-text) !important;
  border-color: var(--kawaii-outline) !important;
}

.kawaii-mode .game-actions .action.secondary:hover {
  background: var(--kawaii-pink) !important;
  transform: translateY(-2px);
}

.kawaii-mode .game-actions .action.icon-only {
  background: var(--kawaii-green) !important;
  border: 3px solid var(--kawaii-outline) !important;
  border-radius: 50% !important;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kawaii-mode .game-actions .action.icon-only:hover {
  background: var(--kawaii-orange) !important;
  transform: scale(1.1) rotate(5deg);
}

/* Top bar elements */
.kawaii-mode .home-btn {
  background: var(--kawaii-yellow) !important;
  border: 3px solid var(--kawaii-outline) !important;
  color: var(--kawaii-text) !important;
  box-shadow: 0 3px 8px var(--kawaii-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
  font-weight: 900;
}

.kawaii-mode .home-btn:hover {
  background: var(--kawaii-orange) !important;
  transform: scale(1.1) rotate(-5deg);
}

.kawaii-mode .theme-toggle,
.kawaii-mode .locale-select,
.kawaii-mode .locale-toggle-btn {
  background: var(--kawaii-brown) !important;
  border: 3px solid var(--kawaii-outline) !important;
  color: var(--kawaii-text) !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  box-shadow: 0 3px 8px var(--kawaii-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
}

.kawaii-mode .theme-toggle:hover,
.kawaii-mode .locale-select:hover,
.kawaii-mode .locale-toggle-btn:hover {
  background: var(--kawaii-pink) !important;
  transform: translateY(-2px);
}

/* Hub container */
.kawaii-mode .hub-container {
  background: var(--kawaii-bg);
}

/* Add wobbly effect to borders using CSS */
.kawaii-mode .game-entry,
.kawaii-mode .action,
.kawaii-mode .home-btn {
  position: relative;
}

/* Subtle animation for playful feel */
@keyframes kawaii-bounce {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-3px);
  }
}

.kawaii-mode .game-entry:hover {
  animation: kawaii-bounce 0.6s ease-in-out;
}

/* Override dark mode when kawaii is active */
.kawaii-mode body.dark {
  background: var(--kawaii-bg) !important;
  color: var(--kawaii-text) !important;
}

.kawaii-mode body.dark .game-entry {
  background: #fff !important;
  border-color: var(--kawaii-outline) !important;
}

/* Style toggle button */
.kawaii-style-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  font-size: 0.95em;
  font-weight: 600;
  letter-spacing: 0.05em;
  background: #fff;
  color: #1976d2;
  border: 2px solid #b3e5fc;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  cursor: pointer;
  transition: background 0.2s, color 0.2s, border 0.2s;
  gap: 6px;
}

@media (max-width: 600px) {
  .kawaii-style-toggle {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    font-size: 1.4em;
    padding: 0;
    border: 2px solid #b3e5fc;
  }
}

body.dark .kawaii-style-toggle,
body.light-mode .kawaii-style-toggle {
  background: #23272a;
  color: #90caf9;
  border: 2px solid #374151;
}

.kawaii-style-toggle:hover,
.kawaii-style-toggle:focus {
  background: #b3e5fc;
  color: #1976d2;
  border-color: #1976d2;
  outline: none;
}

.kawaii-mode .kawaii-style-toggle {
  background: var(--kawaii-pink) !important;
  border: 3px solid var(--kawaii-outline) !important;
  color: var(--kawaii-text) !important;
  font-weight: 700 !important;
  box-shadow: 0 3px 8px var(--kawaii-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
}

.kawaii-mode .kawaii-style-toggle:hover {
  background: var(--kawaii-orange) !important;
  transform: translateY(-2px);
}


