Temas 100% CSS (sem fotos de fundo — gradientes, mesh e glassmorphism), seguindo o contrato de variáveis existente (btn-background/foreground, card-background) e estilizando o .card-body interno (o scss.class força .main-content-card transparente quando não há cor de cartão definida). - aurora-glass: glassmorphism escuro, aurora indigo/violeta/teal, backdrop-filter blur no cartão - nordic-minimal: claro escandinavo, grid sutil, acento azul profundo - sunset-mesh: mesh gradient quente (coral/âmbar/violeta), cartão translúcido estilo Stripe/Linear - carbon-neon: dark tech, grid de carbono, glow ciano no cartão e botão login.css fallback compilado com o próprio scssphp do core; previews renderizados por script PHP GD (gradientes por pixel + mockup do cartão). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
85 lines
2.3 KiB
SCSS
85 lines
2.3 KiB
SCSS
/* Tema Aurora Glass — glassmorphism escuro com aurora */
|
|
|
|
$btn-background-color: #7c6cff !default;
|
|
$btn-foreground-color: #ffffff !default;
|
|
|
|
body.page-anonymous {
|
|
min-height: 100vh;
|
|
background-color: #0b0e1a;
|
|
background-image:
|
|
radial-gradient(40% 55% at 15% 20%, rgba(124, 108, 255, 0.45) 0%, transparent 70%),
|
|
radial-gradient(45% 60% at 85% 15%, rgba(45, 212, 191, 0.35) 0%, transparent 70%),
|
|
radial-gradient(50% 65% at 70% 90%, rgba(168, 85, 247, 0.35) 0%, transparent 70%),
|
|
radial-gradient(35% 45% at 30% 80%, rgba(59, 130, 246, 0.30) 0%, transparent 70%);
|
|
background-attachment: fixed;
|
|
}
|
|
|
|
.page-anonymous .main-content-card .card-body {
|
|
background: rgba(255, 255, 255, 0.07);
|
|
backdrop-filter: blur(18px);
|
|
-webkit-backdrop-filter: blur(18px);
|
|
border: 1px solid rgba(255, 255, 255, 0.14);
|
|
border-radius: 20px;
|
|
padding: 2.2rem !important;
|
|
box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
|
|
}
|
|
|
|
.page-anonymous .card-header {
|
|
color: #f1f5f9;
|
|
border: 0;
|
|
background: transparent;
|
|
}
|
|
|
|
.page-anonymous .form-label,
|
|
.page-anonymous .form-check-label,
|
|
.page-anonymous .text-muted,
|
|
.page-anonymous .copyright,
|
|
.page-anonymous a {
|
|
color: #cbd5e1 !important;
|
|
}
|
|
|
|
.page-anonymous .form-control,
|
|
.page-anonymous .form-select {
|
|
background: rgba(255, 255, 255, 0.08);
|
|
border: 1px solid rgba(255, 255, 255, 0.16);
|
|
border-radius: 12px;
|
|
color: #f8fafc;
|
|
padding: 0.65rem 0.85rem;
|
|
|
|
&::placeholder {
|
|
color: rgba(241, 245, 249, 0.45);
|
|
}
|
|
|
|
&:focus {
|
|
background: rgba(255, 255, 255, 0.12);
|
|
border-color: rgba(124, 108, 255, 0.65);
|
|
box-shadow: 0 0 0 0.25rem rgba(124, 108, 255, 0.22);
|
|
color: #ffffff;
|
|
}
|
|
}
|
|
|
|
.page-anonymous .form-check-input {
|
|
background-color: rgba(255, 255, 255, 0.12);
|
|
border-color: rgba(255, 255, 255, 0.25);
|
|
}
|
|
|
|
.page-anonymous .btn.btn-primary {
|
|
background: linear-gradient(135deg, $btn-background-color 0%, #4f8bff 100%);
|
|
border: 0;
|
|
border-radius: 12px;
|
|
color: $btn-foreground-color;
|
|
padding: 0.7rem;
|
|
font-weight: 600;
|
|
letter-spacing: 0.02em;
|
|
transition: transform 0.15s ease, box-shadow 0.15s ease;
|
|
box-shadow: 0 10px 24px rgba(124, 108, 255, 0.35);
|
|
|
|
&:hover {
|
|
transform: translateY(-1px);
|
|
box-shadow: 0 14px 30px rgba(124, 108, 255, 0.45);
|
|
}
|
|
}
|
|
|
|
.page-anonymous .glpi-logo {
|
|
filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.4));
|
|
}
|