*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

body {
  background: #000;
  color: #fff;
  font-family: "Courier New", "Liberation Mono", Menlo, monospace;
  line-height: 1.4;
}

a {
  color: inherit;
  text-decoration: none;
}

.min-h-screen { min-height: 100vh; }
.bg-black { background: #000; }
.flex { display: flex; }
.block { display: block; }
.hidden { display: none; }
.flex-wrap { flex-wrap: wrap; }
.items-center { align-items: center; }
.items-start { align-items: flex-start; }
.justify-center { justify-content: center; }
.w-full { width: 100%; }
.font-mono { font-family: "Courier New", "Liberation Mono", Menlo, monospace; }
.font-bold { font-weight: 700; }
.text-center { text-align: center; }
.whitespace-nowrap { white-space: nowrap; }
.break-all { word-break: break-all; }
.break-words { overflow-wrap: break-word; }
.cursor-pointer { cursor: pointer; }
.rounded-none { border-radius: 0; }
.border { border: 1px solid; }
.border-white { border-color: #fff; }

.p-2 { padding: 0.5rem; }
.p-3 { padding: 0.75rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-4 { margin-top: 1rem; }
.mt-6 { margin-top: 1.5rem; }
.mb-1 { margin-bottom: 0.25rem; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; }
.ml-4 { margin-left: 1rem; }
.my-3 { margin-top: 0.75rem; margin-bottom: 0.75rem; }

.gap-3 { gap: 0.75rem; }
.space-x-2 > * + * { margin-left: 0.5rem; }
.space-y-1 > * + * { margin-top: 0.25rem; }
.space-y-2 > * + * { margin-top: 0.5rem; }
.space-y-3 > * + * { margin-top: 0.75rem; }
.space-y-4 > * + * { margin-top: 1rem; }

.text-xs { font-size: 0.75rem; }
.text-sm { font-size: 0.875rem; }
.text-lg { font-size: 1.125rem; }

.text-white { color: #fff; }
.text-gray-300 { color: #d1d5db; }
.text-gray-400 { color: #9ca3af; }
.text-red-400 { color: #f87171; }
.text-green-400 { color: #4ade80; }
.text-blue-400 { color: #60a5fa; }
.text-blue-500 { color: #3b82f6; }
.text-cyan-200 { color: #a5f3fc; }
.text-cyan-400 { color: #22d3ee; }
.text-yellow-400 { color: #facc15; }

.tracking-wider { letter-spacing: 0.05em; }

.transition-colors {
  transition: color 0.2s ease;
}

.hover\:underline:hover {
  text-decoration: underline;
}

.hover\:text-blue-400:hover { color: #60a5fa; }
.hover\:text-cyan-300:hover { color: #67e8f9; }

.terminal-content {
  line-height: 1.25;
}

.terminal-content ::selection {
  background: #264f78;
  color: #fff;
}

.terminal-content::-webkit-scrollbar {
  width: 12px;
}

.terminal-content::-webkit-scrollbar-track {
  background: #000;
}

.terminal-content::-webkit-scrollbar-thumb {
  background: #333;
  border: 1px solid #555;
}

@media (min-width: 640px) {
  .sm\:block { display: block; }
  .sm\:hidden { display: none; }
}

@media (min-width: 768px) {
  .md\:block { display: block; }
  .md\:max-w-6xl { max-width: 72rem; }
  .md\:p-4 { padding: 1rem; }
  .md\:text-sm { font-size: 0.875rem; }
  .md\:text-xl { font-size: 1.25rem; }
}
