MBO-Tech-IT-Webseite/app/globals.css

244 lines
5.4 KiB
CSS
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@tailwind base;
@tailwind components;
@tailwind utilities;
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500&display=swap');
:root {
--color-orange: #f97316;
--color-orange-light: #fb923c;
--color-blue: #2563eb;
--color-blue-light: #60a5fa;
--color-dark: #18212f;
--color-darker: #111925;
}
* {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
background-color: #f0f4f8;
color: #1a202c;
font-family: 'Inter', system-ui, sans-serif;
-webkit-font-smoothing: antialiased;
}
.dark body {
background-color: #18212f;
color: #f1f5f9;
}
@layer components {
/* Primary button orange, darkens on hover */
.btn-primary {
@apply inline-flex items-center justify-center rounded-xl
bg-orange-500 text-white font-bold
transition-all duration-200
hover:bg-orange-600 hover:scale-[1.03]
hover:shadow-lg hover:shadow-orange-900/40
active:scale-[0.98];
}
/* Secondary button outlined, fills subtly on hover */
.btn-secondary {
@apply inline-flex items-center justify-center rounded-xl
border border-slate-300 text-slate-700 font-semibold
transition-all duration-200
hover:bg-slate-100 hover:border-slate-400 hover:text-slate-900
active:scale-[0.98]
dark:border-gray-600 dark:text-slate-300
dark:hover:bg-white/5 dark:hover:border-gray-400 dark:hover:text-white;
}
/* Small nav button */
.btn-nav {
@apply px-4 py-2 rounded-lg bg-orange-500 text-white text-sm font-bold
transition-all duration-200
hover:bg-orange-600 hover:shadow-md hover:shadow-orange-900/30
active:scale-[0.97];
}
}
@layer utilities {
.text-gradient {
@apply bg-gradient-to-r from-blue-400 to-blue-600 bg-clip-text text-transparent;
}
.text-gradient-orange {
@apply bg-gradient-to-r from-orange-400 to-orange-500 bg-clip-text text-transparent;
}
/* Dot matrix default background pattern */
.bg-grid {
background-image: radial-gradient(rgba(249, 115, 22, 0.06) 1px, transparent 1px);
background-size: 28px 28px;
}
/* Alt: subtle line grid */
.bg-grid-lines {
background-image: linear-gradient(rgba(249, 115, 22, 0.05) 1px, transparent 1px),
linear-gradient(90deg, rgba(249, 115, 22, 0.05) 1px, transparent 1px);
background-size: 60px 60px;
}
/* Alt: diagonal hatching */
.bg-diagonal {
background-image: repeating-linear-gradient(
-45deg,
rgba(249, 115, 22, 0.04) 0px,
rgba(249, 115, 22, 0.04) 1px,
transparent 1px,
transparent 14px
);
}
.card-hover {
@apply transition-all duration-300 hover:-translate-y-1 hover:shadow-lg hover:shadow-orange-500/10;
}
}
/* Dark-mode bg-grid override — must live outside @layer so it wins over the base rule */
.dark .bg-grid {
background-image: radial-gradient(rgba(249, 115, 22, 0.15) 1px, transparent 1px);
}
/* Tagline ticker animation */
@keyframes ticker-scroll {
0% { transform: translateX(0); }
100% { transform: translateX(-50%); }
}
.animate-ticker {
animation: ticker-scroll 25s linear infinite;
}
/* Legal pages content styling */
.legal-content section {
margin-bottom: 2.5rem;
}
.legal-content h2 {
font-size: 1.25rem;
font-weight: 700;
color: #1a202c;
margin-bottom: 0.75rem;
margin-top: 2rem;
padding-bottom: 0.5rem;
border-bottom: 1px solid #cbd5e0;
}
.legal-content h3 {
font-size: 0.95rem;
font-weight: 600;
color: #ea6c00;
margin-top: 1.25rem;
margin-bottom: 0.4rem;
text-transform: uppercase;
letter-spacing: 0.05em;
}
.legal-content p {
color: #4a5568;
line-height: 1.8;
margin-bottom: 0.75rem;
font-size: 0.925rem;
}
.legal-content ul {
list-style: none;
padding: 0;
margin: 0.75rem 0 1rem 0;
}
.legal-content ul li {
color: #4a5568;
font-size: 0.925rem;
line-height: 1.75;
padding-left: 1.25rem;
position: relative;
margin-bottom: 0.5rem;
}
.legal-content ul li::before {
content: '';
position: absolute;
left: 0;
top: 0.65rem;
width: 6px;
height: 6px;
border-radius: 50%;
background: #f97316;
}
.legal-content a {
color: #2563eb;
text-decoration: underline;
text-underline-offset: 3px;
}
.legal-content a:hover {
color: #f97316;
}
.legal-content strong {
color: #1a202c;
font-weight: 600;
}
.legal-content .note {
background: #e8eef4;
border-left: 3px solid #f97316;
padding: 0.75rem 1rem;
border-radius: 0 0.5rem 0.5rem 0;
margin: 0.75rem 0;
}
.legal-content .note p {
margin-bottom: 0;
font-size: 0.875rem !important;
}
/* Legal pages dark mode overrides */
.dark .legal-content h2 {
color: #f1f5f9;
border-bottom-color: #2d3748;
}
.dark .legal-content h3 {
color: #fb923c;
}
.dark .legal-content p,
.dark .legal-content ul li {
color: #94a3b8;
}
.dark .legal-content a {
color: #60a5fa;
}
.dark .legal-content a:hover {
color: #fb923c;
}
.dark .legal-content strong {
color: #e2e8f0;
}
.dark .legal-content .note {
background: #1e2a3d;
}
/* Scrollbar */
::-webkit-scrollbar {
width: 6px;
}
::-webkit-scrollbar-track {
background: #e8eef4;
}
::-webkit-scrollbar-thumb {
background: #94a3b8;
border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
background: #f97316;
}
.dark ::-webkit-scrollbar-track {
background: #18212f;
}
.dark ::-webkit-scrollbar-thumb {
background: #2d3748;
}
.dark ::-webkit-scrollbar-thumb:hover {
background: #f97316;
}