Complete themes combining multiple properties. Dark mode, glassmorphism, neon, brutalist, and more.
Full dark mode:
All colors, focus ring, and shadow customized. Same HTML, completely different look.
.dark-section alap-link {
--alap-bg: #1e1e2e;
--alap-border: #313244;
--alap-text: #cdd6f4;
--alap-hover-bg: #313244;
--alap-hover-text: #89b4fa;
--alap-focus-ring: #89b4fa;
--alap-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
--alap-radius: 12px;
--alap-corner-shape: squircle;
}
Menus follow your OS light/dark setting:
Uses @media (prefers-color-scheme: dark) to swap all custom properties at once.
/* Light mode (default) */
alap-link {
--alap-bg: #ffffff;
--alap-text: #1a1a1a;
--alap-hover-bg: #eff6ff;
--alap-hover-text: #2563eb;
}
/* Dark mode */
@media (prefers-color-scheme: dark) {
alap-link {
--alap-bg: #1e1e2e;
--alap-text: #cdd6f4;
--alap-hover-bg: #313244;
--alap-hover-text: #89b4fa;
}
}
No border, large shadow, wide radius:
A modern "card-style" dropdown with max-width constraint.
--alap-border-width: 0; --alap-shadow: 0 12px 40px rgba(0, 0, 0, 0.15); --alap-radius: 20px; --alap-max-width: 280px; --alap-corner-shape: squircle;
Neon glow with text shadow + colored shadow:
Combines --alap-text-shadow, --alap-shadow, --alap-hover-text-shadow, and transitions for a full neon effect.
.neon alap-link {
--alap-bg: #0a0a0a;
--alap-border: #1a1a2e;
--alap-text: #38bdf8;
--alap-text-shadow: 0 0 6px rgba(56, 189, 248, 0.4);
--alap-hover-bg: #0f172a;
--alap-hover-text: #7dd3fc;
--alap-hover-text-shadow: 0 0 12px rgba(56, 189, 248, 0.8),
0 0 30px rgba(56, 189, 248, 0.4);
--alap-shadow: 0 0 20px rgba(56, 189, 248, 0.15);
--alap-transition: text-shadow 0.2s, background 0.15s, color 0.15s;
}
Frosted glass with backdrop blur:
Semi-transparent background + --alap-backdrop for backdrop-filter. The gradient behind shows through the frosted glass.
--alap-bg: rgba(255, 255, 255, 0.12); --alap-backdrop: blur(12px) saturate(180%); --alap-border: rgba(255, 255, 255, 0.2); --alap-text: #ffffff; --alap-hover-bg: rgba(255, 255, 255, 0.25); --alap-radius: 16px; --alap-corner-shape: squircle;
Raw, heavy, industrial:
Thick borders, uppercase, wide spacing, sharp corners, heavy shadow. No subtlety.
.brutalist alap-link {
--alap-bg: #000000;
--alap-border: #ffffff;
--alap-border-width: 3px;
--alap-text: #ffffff;
--alap-hover-bg: #ffffff;
--alap-hover-text: #000000;
--alap-corner-shape: straight;
--alap-radius: 0;
--alap-text-transform: uppercase;
--alap-letter-spacing: 0.1em;
--alap-font-weight: 700;
--alap-shadow: 8px 8px 0 #ffffff;
}
Distinct focus vs hover styling (tab into the menu):
Hover is blue, focus is orange. --alap-focus-bg and --alap-focus-text override hover defaults for keyboard users.
--alap-hover-bg: #eff6ff; --alap-hover-text: #2563eb; --alap-focus-bg: #fff7ed; --alap-focus-text: #c2410c; --alap-focus-ring: #ea580c; --alap-focus-shadow: 0 0 0 3px rgba(234, 88, 12, 0.2);
Menu appears above the sticky header:
--alap-z-index: 100 ensures the menu stacks above.
--alap-z-index: 100;
Squircle + neon + transitions + transform + item spacing + backdrop:
This uses 20+ properties simultaneously. It's intentionally over-the-top to show that all properties compose cleanly.
.wild alap-link {
--alap-bg: rgba(15, 23, 42, 0.85);
--alap-backdrop: blur(8px);
--alap-border: rgba(56, 189, 248, 0.3);
--alap-radius: 20px;
--alap-corner-shape: squircle;
--alap-shadow: 0 0 30px rgba(56, 189, 248, 0.15);
--alap-text: #7dd3fc;
--alap-text-shadow: 0 0 6px rgba(56, 189, 248, 0.3);
--alap-font-weight: 500;
--alap-letter-spacing: 0.03em;
--alap-text-transform: uppercase;
--alap-font-size: 0.8rem;
--alap-item-gap: 3px;
--alap-item-border-radius: 8px;
--alap-menu-padding: 0.5rem;
--alap-hover-bg: rgba(56, 189, 248, 0.15);
--alap-hover-text: #ffffff;
--alap-hover-text-shadow: 0 0 12px rgba(56, 189, 248, 0.8);
--alap-hover-shadow: inset 3px 0 0 #38bdf8;
--alap-hover-transform: translateX(4px);
--alap-transition: all 0.2s ease;
--alap-focus-ring: #38bdf8;
--alap-focus-shadow: 0 0 0 3px rgba(56, 189, 248, 0.3);
--alap-menu-hover-shadow: 0 0 40px rgba(56, 189, 248, 0.25);
--alap-menu-transition: box-shadow 0.3s ease;
}
Generous gap + scrollable long list:
--alap-gap: 1rem; --alap-max-width: 260px;