Files
smart-home-tablet/app/globals.css
Cosmo eb644ff341
All checks were successful
Deploy / deploy (push) Successful in 2m40s
feat: premium UI redesign — glassmorphism, gradient accents, ambient background
2026-04-22 18:38:31 +00:00

159 lines
3.9 KiB
CSS

* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
:root {
--bg: #0c0c18;
--bg-secondary: #12121f;
--sidebar-bg: rgba(12, 12, 24, 0.8);
--card-bg: rgba(255, 255, 255, 0.04);
--card-bg-hover: rgba(255, 255, 255, 0.07);
--card-border: rgba(255, 255, 255, 0.07);
--card-border-hover: rgba(255, 255, 255, 0.12);
--text-primary: rgba(255, 255, 255, 0.95);
--text-secondary: rgba(255, 255, 255, 0.45);
--text-tertiary: rgba(255, 255, 255, 0.25);
--accent: #818cf8;
--accent-secondary: #22d3ee;
--accent-glow: rgba(129, 140, 248, 0.15);
--glass: rgba(255, 255, 255, 0.03);
--glass-border: rgba(255, 255, 255, 0.06);
--gradient-primary: linear-gradient(135deg, #6366f1, #8b5cf6);
--gradient-warm: linear-gradient(135deg, #f59e0b, #ef4444);
--gradient-cool: linear-gradient(135deg, #06b6d4, #3b82f6);
--gradient-green: linear-gradient(135deg, #10b981, #34d399);
--on-color: #818cf8;
--off-color: rgba(255, 255, 255, 0.15);
--radius-sm: 12px;
--radius-md: 16px;
--radius-lg: 22px;
--radius-xl: 28px;
}
html, body {
background: var(--bg);
color: var(--text-primary);
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', system-ui, sans-serif;
height: 100%;
overflow: hidden;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
#__next, main {
height: 100%;
}
/* Ambient background orbs */
.bg-ambient {
position: fixed;
inset: 0;
z-index: 0;
overflow: hidden;
pointer-events: none;
}
.bg-ambient::before {
content: '';
position: absolute;
width: 600px;
height: 600px;
border-radius: 50%;
background: radial-gradient(circle, rgba(99, 102, 241, 0.08) 0%, transparent 70%);
top: -200px;
right: -100px;
animation: float1 20s ease-in-out infinite;
}
.bg-ambient::after {
content: '';
position: absolute;
width: 500px;
height: 500px;
border-radius: 50%;
background: radial-gradient(circle, rgba(139, 92, 246, 0.06) 0%, transparent 70%);
bottom: -150px;
left: -50px;
animation: float2 25s ease-in-out infinite;
}
@keyframes float1 {
0%, 100% { transform: translate(0, 0) scale(1); }
33% { transform: translate(30px, 40px) scale(1.05); }
66% { transform: translate(-20px, 20px) scale(0.95); }
}
@keyframes float2 {
0%, 100% { transform: translate(0, 0) scale(1); }
33% { transform: translate(-40px, -30px) scale(1.1); }
66% { transform: translate(20px, -10px) scale(0.9); }
}
/* Glass card base */
.glass-card {
background: var(--card-bg);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border: 1px solid var(--card-border);
border-radius: var(--radius-lg);
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.glass-card:hover {
background: var(--card-bg-hover);
border-color: var(--card-border-hover);
}
/* Gradient text */
.gradient-text {
background: var(--gradient-primary);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
button {
cursor: pointer;
border: none;
outline: none;
background: none;
-webkit-tap-highlight-color: transparent;
touch-action: manipulation;
font-family: inherit;
}
button:focus-visible {
outline: 2px solid var(--accent);
outline-offset: 2px;
}
/* Smooth scrollbar */
::-webkit-scrollbar {
width: 4px;
height: 4px;
}
::-webkit-scrollbar-track {
background: transparent;
}
::-webkit-scrollbar-thumb {
background: rgba(255, 255, 255, 0.08);
border-radius: 2px;
}
::-webkit-scrollbar-thumb:hover {
background: rgba(255, 255, 255, 0.15);
}
/* Pulse animation for active devices */
@keyframes pulse-glow {
0%, 100% { box-shadow: 0 0 20px rgba(129, 140, 248, 0.15); }
50% { box-shadow: 0 0 30px rgba(129, 140, 248, 0.25); }
}
/* Slide in animation */
@keyframes slideUp {
from { opacity: 0; transform: translateY(10px); }
to { opacity: 1; transform: translateY(0); }
}
.animate-slide-up {
animation: slideUp 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}