/* Apple Lisa Desktop Styles */

.lisa-desktop {
  background: #F5F5DC;
  background-image: 
    radial-gradient(circle at 25% 25%, #f8f8f0 2px, transparent 2px),
    radial-gradient(circle at 75% 75%, #f0f0e8 1px, transparent 1px);
  background-size: 24px 24px;
  font-family: 'Monaco', 'Courier New', monospace;
}

.lisa-desktop-container {
  background: #F5F5DC;
  background-image: 
    radial-gradient(circle at 25% 25%, #f8f8f0 2px, transparent 2px),
    radial-gradient(circle at 75% 75%, #f0f0e8 1px, transparent 1px);
  background-size: 24px 24px;
  position: relative;
}

.lisa-menubar {
  height: 28px;
  font-family: 'Monaco', 'Courier New', monospace;
  font-size: 12px;
  user-select: none;
  box-shadow: inset -1px -1px 0 rgba(0,0,0,0.25);
}

/* Window styling */
.window {
  box-shadow: 
    2px 2px 4px rgba(0,0,0,0.3),
    inset 1px 1px 0 rgba(255,255,255,0.8);
}

/* Retro button styles */
button {
  font-family: 'Monaco', 'Courier New', monospace;
  text-shadow: none;
  box-shadow: 
    1px 1px 0 rgba(255,255,255,0.8),
    inset 1px 1px 0 rgba(255,255,255,0.6);
}

button:active {
  box-shadow: 
    inset 1px 1px 2px rgba(0,0,0,0.3);
  transform: translateY(1px);
}

/* Pixel-perfect borders */
.border-2 {
  border-width: 2px;
  border-style: solid;
}

/* Custom scrollbars for authenticity */
::-webkit-scrollbar {
  width: 16px;
  height: 16px;
}

::-webkit-scrollbar-track {
  background: #f0f0f0;
  border: 1px solid #999;
}

::-webkit-scrollbar-thumb {
  background: #c0c0c0;
  border: 1px solid #999;
}

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

/* Retro input styling */
input, textarea {
  font-family: 'Monaco', 'Courier New', monospace;
  box-shadow: inset 1px 1px 2px rgba(0,0,0,0.3);
}

/* Table styling for LisaCalc */
table {
  font-family: 'Monaco', 'Courier New', monospace;
}

td, th {
  border: 1px solid #999;
}

/* Animation for boot screen */
@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

.animate-pulse {
  animation: pulse 2s infinite;
}

/* Hover effects */
.hover\:bg-gray-100:hover {
  background-color: #f5f5f5;
}

.hover\:bg-gray-200:hover {
  background-color: #e5e5e5;
}

.hover\:bg-gray-300:hover {
  background-color: #d4d4d4;
}

.hover\:bg-blue-500:hover {
  background-color: #3b82f6;
}

.hover\:bg-red-500:hover {
  background-color: #ef4444;
}

/* Text selection */
::selection {
  background: #0066cc;
  color: white;
}

/* Focus styles */
*:focus {
  outline: 2px solid #0066cc;
  outline-offset: -2px;
}

/* Prevent text selection on UI elements */
.lisa-menubar,
button,
.window-titlebar {
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}