/* ==========================================
   MINECRAFT DESIGN SYSTEM
   ========================================== */

:root {
  /* Greens */
  --mc-grass: #5b8731;
  --mc-grass-light: #7ec850;
  --mc-leaves: #4a7a2e;

  /* Browns */
  --mc-dirt: #8b6914;
  --mc-wood: #6b4e2e;
  --mc-wood-light: #c4a24e;

  /* Stone */
  --mc-stone: #6b6b6b;
  --mc-stone-light: #9a9a9a;
  --mc-stone-lighter: #c8c8c8;

  /* Sky */
  --mc-sky: #7ec8e3;
  --mc-sky-dark: #4a90a8;

  /* Accents */
  --mc-red: #b02e26;
  --mc-gold: #dda520;
  --mc-diamond: #2cb5a6;
  --mc-purple: #7b2fbe;
  --mc-pink: #d4608a;
  --mc-orange: #d87e34;
  --mc-yellow: #e5e533;

  /* UI */
  --mc-bg-dark: #1a1a2e;
  --mc-bg-panel: #3c2415;
  --mc-bg-panel-light: #5c3a1e;
  --mc-text: #ffffff;
  --mc-text-dark: #2d2d2d;
  --mc-border: #000000;

  /* Sizing */
  --mc-border-width: 3px;
  --mc-shadow-offset: 4px;
}

/* Global Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border-radius: 0 !important;
}

body {
  font-family: 'Press Start 2P', monospace;
  font-size: 0.7rem;
  line-height: 1.8;
  letter-spacing: 0.5px;
  color: var(--mc-text);
  background-color: var(--mc-bg-dark);
  overflow-x: hidden;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

@media (max-width: 480px) {
  body { font-size: 0.6rem; }
}

a {
  color: var(--mc-gold);
  text-decoration: none;
}

a:hover {
  color: var(--mc-yellow);
}

/* Pixel Border Utility */
.mc-border {
  border: var(--mc-border-width) solid var(--mc-border);
  box-shadow: var(--mc-shadow-offset) var(--mc-shadow-offset) 0 var(--mc-border);
}

.mc-border-inset {
  border: var(--mc-border-width) solid var(--mc-border);
  box-shadow: inset 2px 2px 0 rgba(255,255,255,0.15),
              inset -2px -2px 0 rgba(0,0,0,0.3);
}

/* Block Textures */
.mc-grass-bg {
  background: linear-gradient(180deg, var(--mc-grass-light) 0%, var(--mc-grass-light) 30%, var(--mc-dirt) 30%);
}

.mc-stone-bg {
  background: var(--mc-stone);
  box-shadow: inset 3px 3px 0 var(--mc-stone-light),
              inset -3px -3px 0 rgba(0,0,0,0.3);
}

.mc-wood-bg {
  background: var(--mc-wood);
  box-shadow: inset 0 3px 0 var(--mc-wood-light),
              inset 0 -3px 0 rgba(0,0,0,0.3);
}

.mc-diamond-bg {
  background: linear-gradient(135deg, var(--mc-diamond), #45d9c8);
}

/* Typography */
h1 { font-size: 1.4rem; margin-bottom: 1rem; }
h2 { font-size: 1rem; margin-bottom: 0.8rem; }
h3 { font-size: 0.8rem; margin-bottom: 0.6rem; }
p { margin-bottom: 0.8rem; }

.mc-title {
  text-shadow: 3px 3px 0 rgba(0,0,0,0.5);
  color: var(--mc-gold);
}

.mc-subtitle {
  color: var(--mc-stone-lighter);
  font-size: 0.6rem;
}

/* Animations */
@keyframes mc-bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes mc-fade-in {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes mc-shake {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-6px); }
  40% { transform: translateX(6px); }
  60% { transform: translateX(-4px); }
  80% { transform: translateX(4px); }
}

@keyframes mc-glow {
  0%, 100% { box-shadow: 0 0 5px var(--mc-grass-light); }
  50% { box-shadow: 0 0 20px var(--mc-grass-light), 0 0 40px var(--mc-grass-light); }
}

@keyframes mc-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-15px); }
}

.mc-animate-in {
  animation: mc-fade-in 0.4s ease-out;
}

/* Scrollbar */
::-webkit-scrollbar { width: 12px; }
::-webkit-scrollbar-track { background: var(--mc-bg-dark); }
::-webkit-scrollbar-thumb {
  background: var(--mc-stone);
  border: 2px solid var(--mc-border);
}
