detectAI / frontend /src /index.css
vivek1192's picture
Setup CI/CD for Hugging Face
171eb01
@tailwind base;
@tailwind components;
@tailwind utilities;
:root {
--font-family: 'Inter', system-ui, -apple-system, sans-serif;
--line-height: 1.6;
--font-weight: 400;
/* Neumorphic Dark Theme Palette */
--bg-color: #21242b;
/* distinct dark gray-blue */
--text-main: #e0e5ec;
--text-muted: #8b9bb4;
--shadow-light: rgba(255, 255, 255, 0.06);
--shadow-dark: rgba(0, 0, 0, 0.6);
--accent-color: #3b82f6;
/* Bright Blue */
color-scheme: dark;
color: var(--text-main);
background-color: var(--bg-color);
}
body {
margin: 0;
min-width: 320px;
min-height: 100vh;
font-family: var(--font-family);
background: var(--bg-color);
/* Neumorphism needs solid flat bg */
-webkit-font-smoothing: antialiased;
}
#root {
width: 100%;
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
}
/* --- Neumorphic Utilities --- */
/* 1. The Panel (Extruded) */
.neu-panel {
background: var(--bg-color);
border-radius: 20px;
box-shadow:
8px 8px 16px var(--shadow-dark),
-8px -8px 16px var(--shadow-light);
border: 1px solid rgba(255, 255, 255, 0.02);
}
/* 2. The Button (Extruded + Hover effect) */
.neu-btn {
background: var(--bg-color);
color: var(--accent-color);
font-weight: 600;
border: none;
border-radius: 12px;
box-shadow:
5px 5px 10px var(--shadow-dark),
-5px -5px 10px var(--shadow-light);
transition: all 0.2s ease;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}
.neu-btn:hover:not(:disabled) {
transform: translateY(-2px);
box-shadow:
6px 6px 12px var(--shadow-dark),
-6px -6px 12px var(--shadow-light);
filter: brightness(1.2);
}
.neu-btn:active:not(:disabled) {
transform: translateY(0);
box-shadow:
inset 3px 3px 6px var(--shadow-dark),
inset -3px -3px 6px var(--shadow-light);
}
.neu-btn-primary {
background: var(--bg-color);
color: var(--accent-color);
font-weight: 700;
border-radius: 16px;
/* Extruded Soft UI Shadows */
box-shadow:
6px 6px 12px var(--shadow-dark),
-6px -6px 12px var(--shadow-light);
border: 1px solid rgba(255, 255, 255, 0.02);
transition: all 0.2s ease-out;
}
.neu-btn-primary:hover:not(:disabled) {
transform: translateY(-2px);
color: #60a5fa;
/* Lighter blue on hover */
box-shadow:
8px 8px 16px var(--shadow-dark),
-8px -8px 16px var(--shadow-light);
text-shadow: 0 0 8px rgba(59, 130, 246, 0.5);
/* Glowing text */
}
.neu-btn-primary:active:not(:disabled) {
transform: translateY(0);
box-shadow:
inset 4px 4px 8px var(--shadow-dark),
inset -4px -4px 8px var(--shadow-light);
color: var(--accent-color);
text-shadow: none;
}
.neu-btn-primary:disabled {
opacity: 0.5;
box-shadow: none;
cursor: not-allowed;
}
/* 3. The Input (Inset) */
.neu-input {
background: var(--bg-color);
color: var(--text-main);
border-radius: 16px;
border: none;
box-shadow:
inset 4px 4px 8px var(--shadow-dark),
inset -4px -4px 8px var(--shadow-light);
transition: all 0.3s ease;
}
.neu-input:focus {
outline: none;
box-shadow:
inset 6px 6px 12px var(--shadow-dark),
inset -6px -6px 12px var(--shadow-light),
0 0 0 1px var(--accent-color);
}
/* 4. Tab Active State (Pressed) */
.neu-tab-active {
box-shadow:
inset 3px 3px 6px var(--shadow-dark),
inset -3px -3px 6px var(--shadow-light);
color: var(--accent-color);
}
/* Scrollbar */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: transparent;
}
::-webkit-scrollbar-thumb {
background: #393d47;
border-radius: 4px;
}