Vehicoule's picture
# DeepSite - Complete Project Setup
83cb890 verified
@tailwind base;
@tailwind components;
@tailwind utilities;
/* Custom CSS Variables */
:root {
--primary-50: #f0f9ff;
--primary-100: #e0f2fe;
--primary-500: #0ea5e9;
--primary-600: #0284c7;
--primary-700: #0369a1;
--secondary-500: #8b5cf6;
--success-500: #10b981;
--warning-500: #f59e0b;
--error-500: #ef4444;
--gray-50: #f9fafb;
--gray-100: #f3f4f6;
--gray-200: #e5e7eb;
--gray-300: #d1d5db;
--gray-400: #9ca3af;
--gray-500: #6b7280;
--gray-600: #4b5563;
--gray-700: #374151;
--gray-800: #1f2937;
--gray-900: #111827;
}
/* Reset and base styles */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html, body, #root {
height: 100%;
width: 100%;
overflow: hidden;
}
body {
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
color: var(--gray-900);
}
/* Scrollbar styling */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track {
background: var(--gray-100);
border-radius: 4px;
}
::-webkit-scrollbar-thumb {
background: var(--gray-300);
border-radius: 4px;
transition: background 0.2s;
}
::-webkit-scrollbar-thumb:hover {
background: var(--gray-400);
}
/* Firefox scrollbar */
* {
scrollbar-width: thin;
scrollbar-color: var(--gray-300) var(--gray-100);
}
/* Focus styles */
*:focus {
outline: 2px solid var(--primary-500);
outline-offset: 2px;
}
button:focus,
input:focus,
textarea:focus,
select:focus {
outline: 2px solid var(--primary-500);
outline-offset: 2px;
}
/* Button reset */
button {
cursor: pointer;
border: none;
font-family: inherit;
background: none;
}
button:disabled {
cursor: not-allowed;
opacity: 0.6;
}
/* Form elements */
input, textarea, select {
font-family: inherit;
}
input::placeholder,
textarea::placeholder {
color: var(--gray-400);
}
/* Utility classes */
.gradient-bg {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}
.glass-effect {
background: rgba(255, 255, 255, 0.25);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
border: 1px solid rgba(255, 255, 255, 0.18);
}
.shadow-glow {
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(255, 255, 255, 0.05);
}
/* Animation classes */
.fade-in {
animation: fadeIn 0.3s ease-in-out;
}
.slide-up {
animation: slideUp 0.3s ease-out;
}
.scale-in {
animation: scaleIn 0.2s ease-out;
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes slideUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes scaleIn {
from {
opacity: 0;
transform: scale(0.95);
}
to {
opacity: 1;
transform: scale(1);
}
}
/* Loading spinner */
.spinner {
animation: spin 1s linear infinite;
}
@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
/* Responsive design helpers */
@media (max-width: 768px) {
.mobile-hidden {
display: none !important;
}
}
@media (min-width: 769px) {
.mobile-only {
display: none !important;
}
}
/* Print styles */
@media print {
body {
background: white !important;
}
}