/* CEO Scorecard — Custom styles beyond Tailwind */

/* Retro-Pop borders and shadows */
.retro-card {
  border: 3px solid #1A1A2E;
  border-radius: 20px;
  box-shadow: 4px 4px 0px #1A1A2E;
}

.retro-btn {
  border: 3px solid #1A1A2E;
  border-radius: 30px;
  box-shadow: 3px 3px 0px #1A1A2E;
  transition: transform 0.1s, box-shadow 0.1s;
  cursor: pointer;
}

.retro-btn:hover {
  transform: translateY(-1px);
  box-shadow: 4px 4px 0px #1A1A2E;
}

.retro-btn:active {
  transform: translateY(2px);
  box-shadow: 1px 1px 0px #1A1A2E;
}

.retro-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Number cells use JetBrains Mono */
.num {
  font-family: 'JetBrains Mono', monospace;
  font-weight: 700;
}

/* Status colors */
.status-green     { background-color: #00C853; }
.status-lgreen    { background-color: #C8FF00; }
.status-yellow    { background-color: #FFE600; }
.status-lred      { background-color: #FF6B6B; }
.status-red       { background-color: #FF3B3B; }

/* Input styles */
input[type="text"],
textarea,
select {
  border: 2px solid #1A1A2E;
  border-radius: 12px;
  padding: 8px 12px;
  font-family: 'Nunito', sans-serif;
  transition: box-shadow 0.1s, border-color 0.1s;
}

input[type="text"]:focus,
textarea:focus,
select:focus {
  outline: none;
  box-shadow: 3px 3px 0px #1A1A2E;
  border-color: #0066FF;
}

input[type="text"].readonly,
input[readonly],
textarea[readonly],
select:disabled {
  background-color: #f3f3f3;
  cursor: not-allowed;
}

/* Table styles */
table {
  border-collapse: separate;
  border-spacing: 0;
}

th, td {
  vertical-align: top;
}

/* Section header styles */
.section-header {
  font-weight: 900;
  letter-spacing: 0.5px;
}

/* Owner badge colors */
.owner-cos { background-color: #0066FF; }
.owner-bungkee { background-color: #B57BEE; }
.owner-ning { background-color: #7FFFCE; color: #1A1A2E; }
.owner-bamm { background-color: #FF8FAB; }

/* Status select dropdown styling */
select option {
  padding: 4px;
}

/* Scrollbar styling */
::-webkit-scrollbar {
  height: 8px;
  width: 8px;
}

::-webkit-scrollbar-track {
  background: #FFF9E6;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb {
  background: #1A1A2E;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #333;
}

/* Animation for save feedback */
@keyframes savePulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); }
  100% { transform: scale(1); }
}

.save-pulse {
  animation: savePulse 0.3s ease-in-out;
}

/* Row highlight on validation error */
.bg-red-100 {
  background-color: #fee2e2;
}

/* Smooth transitions */
* {
  transition-property: background-color, border-color, color, box-shadow, transform;
  transition-duration: 0.15s;
  transition-timing-function: ease-out;
}

/* Override for inputs to prevent transition on typing */
input, textarea, select {
  transition: box-shadow 0.1s, border-color 0.1s;
}
