149 lines
2.9 KiB
CSS
149 lines
2.9 KiB
CSS
@tailwind base;
|
|
@tailwind components;
|
|
@tailwind utilities;
|
|
|
|
/* Kiosk-optimierte Custom Styles */
|
|
@layer base {
|
|
:root {
|
|
/* Kiosk-spezifische CSS-Variablen */
|
|
--primary: #0073ce;
|
|
--primary-dark: #005a9f;
|
|
--bg: #fafbfc;
|
|
--surface: #ffffff;
|
|
--text: #111827;
|
|
--text-muted: #6b7280;
|
|
--border: #e5e7eb;
|
|
--shadow: 0 2px 4px rgba(0,0,0,0.05);
|
|
}
|
|
|
|
.dark {
|
|
--bg: #1e293b;
|
|
--surface: #334155;
|
|
--text: #f8fafc;
|
|
--text-muted: #94a3b8;
|
|
--border: #475569;
|
|
--shadow: 0 2px 4px rgba(0,0,0,0.3);
|
|
}
|
|
|
|
body {
|
|
@apply bg-white dark:bg-gray-800 text-gray-900 dark:text-white;
|
|
font-family: system-ui, -apple-system, sans-serif;
|
|
background: var(--bg);
|
|
color: var(--text);
|
|
line-height: 1.5;
|
|
transition: background-color 0.2s ease, color 0.2s ease;
|
|
}
|
|
}
|
|
|
|
@layer components {
|
|
/* Kiosk-optimierte Komponenten */
|
|
.card {
|
|
@apply bg-white border border-gray-200 rounded-lg p-4;
|
|
background: var(--surface);
|
|
border-color: var(--border);
|
|
box-shadow: var(--shadow);
|
|
}
|
|
|
|
.dark .card {
|
|
@apply bg-gray-700 border-gray-600;
|
|
}
|
|
|
|
.btn {
|
|
@apply px-4 py-2 rounded-lg font-semibold transition-colors;
|
|
background: var(--primary);
|
|
color: white;
|
|
border: none;
|
|
}
|
|
|
|
.btn:hover {
|
|
background: var(--primary-dark);
|
|
}
|
|
|
|
.btn-secondary {
|
|
@apply bg-white border border-gray-200 text-gray-900;
|
|
background: var(--surface);
|
|
border-color: var(--border);
|
|
color: var(--text);
|
|
}
|
|
|
|
.dark .btn-secondary {
|
|
@apply bg-gray-700 border-gray-600 text-white;
|
|
}
|
|
|
|
.input {
|
|
@apply w-full px-3 py-2 border border-gray-200 rounded-lg;
|
|
background: var(--surface);
|
|
border-color: var(--border);
|
|
color: var(--text);
|
|
}
|
|
|
|
.input:focus {
|
|
outline: none;
|
|
border-color: var(--primary);
|
|
}
|
|
|
|
.dark .input {
|
|
@apply bg-gray-700 border-gray-600 text-white;
|
|
}
|
|
|
|
/* Navigation */
|
|
.nav {
|
|
@apply flex gap-4;
|
|
}
|
|
|
|
.nav-item {
|
|
@apply px-4 py-2 rounded-lg text-gray-600 hover:bg-gray-100;
|
|
color: var(--text-muted);
|
|
transition: background-color 0.1s ease;
|
|
}
|
|
|
|
.nav-item:hover {
|
|
background: var(--bg);
|
|
color: var(--text);
|
|
}
|
|
|
|
.nav-item.active {
|
|
background: var(--primary);
|
|
color: white;
|
|
}
|
|
|
|
.dark .nav-item {
|
|
@apply text-gray-300 hover:bg-gray-700;
|
|
}
|
|
|
|
/* Status-Badges */
|
|
.status {
|
|
@apply inline-block px-3 py-1 rounded-full text-xs font-semibold uppercase;
|
|
}
|
|
|
|
.status-online {
|
|
background: #d1fae5;
|
|
color: #065f46;
|
|
}
|
|
|
|
.status-offline {
|
|
background: #fee2e2;
|
|
color: #991b1b;
|
|
}
|
|
|
|
.status-printing {
|
|
background: #dbeafe;
|
|
color: #1e40af;
|
|
}
|
|
|
|
.dark .status-online {
|
|
background: rgba(16, 185, 129, 0.2);
|
|
color: #10b981;
|
|
}
|
|
|
|
.dark .status-offline {
|
|
background: rgba(239, 68, 68, 0.2);
|
|
color: #ef4444;
|
|
}
|
|
|
|
.dark .status-printing {
|
|
background: rgba(59, 130, 246, 0.2);
|
|
color: #3b82f6;
|
|
}
|
|
}
|