Files
aurora-admin-theme/assets/css/main.css
T

667 lines
12 KiB
CSS

/* Layout ------------------------------------------------------------- */
.container {
max-width: 1100px;
margin: 0 auto;
padding: 0 24px;
}
.site-wrap {
min-height: 100vh;
display: flex;
flex-direction: column;
}
.site-main {
flex: 1;
}
/* Buttons ------------------------------------------------------------ */
.btn {
display: inline-block;
padding: 12px 24px;
border-radius: var(--aurora-radius-md);
font-weight: 600;
font-size: 16px;
border: 1px solid transparent;
cursor: pointer;
}
.btn-primary {
background: var(--aurora-accent);
color: #fff;
}
.btn-primary:hover {
filter: brightness(1.1);
}
.btn-outline {
background: transparent;
border-color: var(--aurora-border);
color: var(--aurora-text);
}
.btn-outline:hover {
background: var(--aurora-bg-subtle);
}
/* Header / nav -------------------------------------------------------- */
.site-header {
position: sticky;
top: 0;
z-index: 50;
padding: 16px 0;
/* Stronger tint + blur than a typical "just barely visible" sticky nav —
borrowed from uiXpress's header treatment (90% opacity, 24px blur),
but tinted with Aurora's own card color rather than a neutral black, so
it still reads as part of the vivid gradient brand, not a generic dark
SaaS chrome bar. */
background: color-mix(in srgb, var(--aurora-card-bg-deep) 92%, transparent);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border-bottom: 1px solid var(--aurora-border);
}
.site-header-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
}
.site-logo img,
.site-logo .custom-logo {
display: block;
height: 48px;
width: auto;
filter: drop-shadow(0 4px 16px rgba(0, 0, 0, 0.45));
}
.footer-logo img {
height: 36px;
width: auto;
opacity: 0.85;
}
.site-nav {
display: flex;
}
.nav-menu {
list-style: none;
display: flex;
gap: 32px;
margin: 0;
padding: 0;
}
.nav-menu a {
color: var(--aurora-text);
font-weight: 500;
}
.nav-menu a:hover {
color: var(--aurora-accent);
}
.nav-toggle {
display: none;
flex-direction: column;
justify-content: center;
gap: 5px;
width: 40px;
height: 40px;
background: transparent;
border: 1px solid var(--aurora-border);
border-radius: var(--aurora-radius-sm);
cursor: pointer;
}
.nav-toggle-bar {
display: block;
width: 20px;
height: 2px;
margin: 0 auto;
background: var(--aurora-text);
}
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
/* Hero ----------------------------------------------------------------- */
.hero {
padding: 96px 0 64px;
text-align: center;
}
.hero-inner {
max-width: 760px;
}
.hero h1 {
font-size: 44px;
line-height: 1.15;
margin: 0 0 20px;
}
.hero-sub {
font-size: 19px;
color: var(--aurora-text-muted);
margin: 0 0 32px;
}
.hero-actions {
display: flex;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
}
.hero-eyebrow {
text-transform: uppercase;
letter-spacing: 0.08em;
font-size: 13px;
font-weight: 700;
color: var(--aurora-accent);
margin: 0 0 16px;
}
.hero-trust {
margin: 20px 0 0;
font-size: 14px;
color: var(--aurora-text-muted);
}
.hero-stats {
display: flex;
justify-content: center;
gap: 48px;
margin-top: 56px;
flex-wrap: wrap;
}
.stat {
display: flex;
flex-direction: column;
align-items: center;
}
.stat-value {
font-size: 32px;
font-weight: 700;
color: var(--aurora-text);
}
.stat-label {
font-size: 13px;
color: var(--aurora-text-muted);
margin-top: 4px;
}
/* Section eyebrows (shared by showcase + capabilities) ------------------- */
.section-eyebrow {
text-transform: uppercase;
letter-spacing: 0.08em;
font-size: 13px;
font-weight: 700;
color: var(--aurora-accent);
margin: 0 0 8px;
text-align: center;
}
.showcase h2,
.capabilities h2 {
text-align: center;
font-size: 32px;
margin: 0 0 12px;
}
.section-sub {
text-align: center;
color: var(--aurora-text-muted);
max-width: 560px;
margin: 0 auto 40px;
}
/* Showcase tabs ------------------------------------------------------------ */
.showcase {
padding: 80px 0;
}
.showcase-tabs {
display: flex;
justify-content: center;
gap: 8px;
flex-wrap: wrap;
margin: 40px 0 40px;
}
.showcase-tab {
padding: 10px 20px;
border-radius: var(--aurora-radius-md);
border: 1px solid var(--aurora-border);
background: transparent;
color: var(--aurora-text-muted);
font-weight: 600;
font-size: 15px;
cursor: pointer;
}
.showcase-tab.is-active {
background: var(--aurora-accent);
border-color: var(--aurora-accent);
color: #fff;
}
.showcase-panel {
display: none;
}
.showcase-panel.is-active {
display: block;
}
.showcase-panel-inner {
display: grid;
grid-template-columns: 1fr 1.2fr;
gap: 48px;
align-items: center;
background: var(--aurora-card-bg);
border: 1px solid var(--aurora-card-border);
border-radius: var(--aurora-radius-xl);
box-shadow: var(--aurora-card-shadow);
padding: 40px;
}
.showcase-copy h3 {
font-size: 24px;
margin: 0 0 12px;
}
.showcase-copy p {
color: var(--aurora-text-muted);
line-height: 1.6;
margin: 0 0 20px;
}
.showcase-bullets {
list-style: none;
margin: 0;
padding: 0;
}
.showcase-bullets li {
padding-left: 24px;
position: relative;
margin-bottom: 12px;
color: var(--aurora-text);
line-height: 1.5;
}
.showcase-bullets li::before {
content: '';
position: absolute;
left: 0;
top: 8px;
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--aurora-accent);
}
.showcase-image img {
border-radius: var(--aurora-radius-lg);
border: 1px solid var(--aurora-card-border);
}
/* Capabilities grid --------------------------------------------------------- */
.capabilities {
padding: 80px 0;
}
.capability-grid {
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
.capabilities-more {
text-align: center;
margin-top: 32px;
}
.link-arrow {
color: var(--aurora-accent);
font-weight: 600;
}
/* Feature cards ---------------------------------------------------------- */
.feature-teaser,
.feature-section {
padding: 48px 0;
}
.feature-section h2 {
font-size: 28px;
margin: 0 0 24px;
}
.feature-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 20px;
}
.feature-card {
background: var(--aurora-card-bg);
border: 1px solid var(--aurora-card-border);
border-radius: var(--aurora-radius-xl);
box-shadow: var(--aurora-card-shadow);
padding: 28px;
}
.feature-icon {
font-size: 28px;
margin-bottom: 12px;
}
.feature-card h3 {
margin: 0 0 8px;
font-size: 18px;
}
.feature-card p {
margin: 0;
color: var(--aurora-text-muted);
font-size: 15px;
line-height: 1.5;
}
/* Free band -------------------------------------------------------------- */
.free-band {
padding: 48px 0;
}
.free-band-inner {
text-align: center;
background: var(--aurora-card-bg);
border: 1px solid var(--aurora-card-border);
border-radius: var(--aurora-radius-xl);
box-shadow: var(--aurora-card-shadow);
padding: 40px;
}
.free-band-inner h2 {
margin: 0 0 8px;
}
.free-band-inner p {
margin: 0;
color: var(--aurora-text-muted);
}
/* Screenshots -------------------------------------------------------------- */
.screenshots {
padding: 48px 0 80px;
}
.screenshots h2 {
text-align: center;
margin: 0 0 32px;
}
.screenshot-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 20px;
}
.screenshot-grid img {
border-radius: var(--aurora-radius-lg);
border: 1px solid var(--aurora-card-border);
box-shadow: var(--aurora-card-shadow);
}
/* CTA band ------------------------------------------------------------------ */
.cta-band {
padding: 64px 0;
text-align: center;
}
.cta-band-inner h2 {
margin: 0 0 8px;
}
.cta-band-inner p {
margin: 0 0 24px;
color: var(--aurora-text-muted);
}
/* Page header (Features/other static pages) ---------------------------------- */
.page-header {
padding: 64px 0 24px;
text-align: center;
}
.page-header p {
color: var(--aurora-text-muted);
}
/* Privacy / FAQ ---------------------------------------------------------------- */
.privacy-section p {
color: var(--aurora-text-muted);
line-height: 1.6;
max-width: 760px;
}
.faq-item {
background: var(--aurora-card-bg);
border: 1px solid var(--aurora-card-border);
border-radius: var(--aurora-radius-md);
padding: 16px 20px;
margin-bottom: 12px;
}
.faq-item summary {
cursor: pointer;
font-weight: 600;
}
.faq-answer {
margin-top: 12px;
color: var(--aurora-text-muted);
line-height: 1.6;
}
/* Blog --------------------------------------------------------------------------- */
.blog-header {
padding: 64px 0 24px;
text-align: center;
}
.blog-header p {
color: var(--aurora-text-muted);
}
.post-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 24px;
padding: 24px 0 48px;
}
.post-card {
background: var(--aurora-card-bg);
border: 1px solid var(--aurora-card-border);
border-radius: var(--aurora-radius-xl);
box-shadow: var(--aurora-card-shadow);
overflow: hidden;
}
.post-card-thumb img {
width: 100%;
}
.post-card-body {
padding: 20px;
}
.post-card-body h3 {
margin: 0 0 8px;
font-size: 18px;
}
.post-card-body h3 a {
color: var(--aurora-text);
}
.post-card-date {
color: var(--aurora-text-muted);
font-size: 13px;
margin: 0 0 12px;
}
.post-card-excerpt {
color: var(--aurora-text-muted);
font-size: 15px;
line-height: 1.5;
margin: 0 0 12px;
}
.post-card-link {
color: var(--aurora-accent);
font-weight: 600;
font-size: 14px;
}
.single-post,
.single-page {
padding: 48px 0;
max-width: 760px;
margin: 0 auto;
}
.single-post-header h1,
.single-page h1 {
margin: 0 0 8px;
}
.single-post-thumb {
margin: 24px 0;
}
.single-post-thumb img {
border-radius: var(--aurora-radius-lg);
}
.single-post-content,
.single-page-content {
line-height: 1.7;
}
.single-post-nav {
display: flex;
justify-content: space-between;
max-width: 760px;
margin: 0 auto 48px;
}
.single-post-nav a {
color: var(--aurora-accent);
}
.not-found {
padding: 96px 0;
text-align: center;
}
/* Footer ------------------------------------------------------------------------- */
.site-footer {
padding: 40px 0;
border-top: 1px solid var(--aurora-border);
}
.site-footer-inner {
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
text-align: center;
}
.footer-nav {
display: flex;
gap: 24px;
}
.footer-nav a {
color: var(--aurora-text-muted);
font-size: 14px;
}
.footer-copy {
color: var(--aurora-text-muted);
font-size: 13px;
margin: 0;
}
/* Responsive ----------------------------------------------------------------------- */
@media (max-width: 768px) {
.hero h1 {
font-size: 32px;
}
.nav-toggle {
display: flex;
}
.site-nav {
position: absolute;
top: 100%;
left: 0;
right: 0;
background: var(--aurora-card-bg);
border-bottom: 1px solid var(--aurora-border);
display: none;
}
.site-nav.is-open {
display: block;
}
.site-header-inner {
position: relative;
}
.nav-menu {
flex-direction: column;
gap: 0;
padding: 8px 24px;
}
.nav-menu li {
padding: 12px 0;
border-bottom: 1px solid var(--aurora-border);
}
.nav-menu li:last-child {
border-bottom: none;
}
.showcase-panel-inner {
grid-template-columns: 1fr;
padding: 24px;
}
.hero-stats {
gap: 32px;
}
}