Files
singular-particular-space/DumperCan/UI Style References/bubblicorn_style_reference.html
JL Kruger 5422131782 Initial commit — Singular Particular Space v1
Homepage (site/index.html): integration-v14 promoted, Writings section
integrated with 33 pieces clustered by type (stories/essays/miscellany),
Writings welcome lightbox, content frame at 98% opacity.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-27 12:09:22 +02:00

1592 lines
56 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Bubblicorn Style Reference | E-Girl Aesthetic 🦄✨</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&family=Nunito:wght@400;500;600;700&family=Noto+Emoji:wght@400;500;600&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<style>
/* ============================================
BUBBLICORN STYLE REFERENCE
E-Girl Aesthetic | Rounded Corners | Pastel Vibes
============================================ */
/* ===== 1. CSS RESET ===== */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
/* ===== 2. CSS VARIABLES ===== */
:root {
/* --- BACKGROUND GRADIENT ---
4-stop vertical gradient for page background */
--bg-gradient-1: #1a0a1f; /* Deep purple */
--bg-gradient-2: #2d1435; /* Dark magenta */
--bg-gradient-3: #0f1a2a; /* Dark blue */
--bg-gradient-4: #0a1f1f; /* Deep teal */
/* --- SURFACE BACKGROUNDS --- */
--bg-elevated: rgba(255,182,255,0.06); /* Subtle pink lift */
--bg-card: rgba(255,182,255,0.18); /* Standard cards */
--bg-darker: rgba(102,0,153,0.25); /* Nested in elevated */
--bg-solid-dark: #1a0a1f; /* Opaque dark */
--bg-solid-header: #2d1435; /* Opaque magenta */
/* --- BORDERS --- */
--border-color: #FF69B4;
--border-width: 2px;
--border-width-thick: 4px;
/* --- BORDER RADIUS --- */
--radius-sm: 8px;
--radius-md: 12px;
--radius-lg: 16px;
--radius-xl: 20px;
--radius-full: 9999px;
/* --- GLOW SYSTEM ---
Bubblegum: Primary actions, highlights
Sparkle: Success, achievements
Neon: Warnings, attention */
--glow-bubblegum-1: #FF69B4; /* Hot pink */
--glow-bubblegum-2: #FF1493; /* Deep pink */
--glow-sparkle-1: #B0FFE8; /* Mint */
--glow-sparkle-2: #00FFFF; /* Cyan */
--glow-neon-1: #FF10F0; /* Neon pink */
--glow-neon-2: #FFE66D; /* Sparkle yellow */
/* --- TYPOGRAPHY COLORS --- */
--text-primary: #FFE6FF;
--text-white: #FFFFFF;
--text-h1-gradient: linear-gradient(135deg, #FF1493 0%, #E6B3FF 25%, #00FFFF 50%, #E6B3FF 75%, #FF1493 100%);
--text-h2: #FF69B4; /* Hot pink */
--text-h3: #E6B3FF; /* Lavender */
--text-h4: #B0FFE8; /* Mint */
--text-h5: #CCCCFF; /* Periwinkle */
--text-h6: #FFE6FF; /* Primary */
/* --- BUTTON GRADIENTS --- */
--btn-special-gradient: linear-gradient(135deg, #FF1493 0%, #E6B3FF 50%, #00FFFF 100%);
--btn-default-gradient: linear-gradient(180deg, #FF69B4 0%, #E6B3FF 50%, #00FFFF 100%);
/* --- FONTS --- */
--font-header: 'Quicksand', sans-serif;
--font-body: 'Nunito', 'Noto Emoji', sans-serif;
--font-mono: 'JetBrains Mono', monospace;
}
/* ===== 3. BASE STYLES ===== */
body {
font-family: var(--font-body);
background: linear-gradient(180deg,
var(--bg-gradient-1) 0%,
var(--bg-gradient-2) 33%,
var(--bg-gradient-3) 66%,
var(--bg-gradient-4) 100%);
background-attachment: fixed;
color: var(--text-primary);
line-height: 1.7;
min-height: 100vh;
padding: 20px;
}
/* ===== 4. LAYOUT ===== */
.container {
max-width: 1200px;
margin: 0 auto;
}
.grid {
display: grid;
gap: 1.5rem;
margin-bottom: 1.5rem;
}
.grid-2 { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.grid-3 { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.grid-4 { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
/* ===== 5. TYPOGRAPHY ===== */
h1 {
font-size: clamp(2rem, 5vw, 3rem);
font-weight: 700;
margin-bottom: 1rem;
background: var(--text-h1-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
font-family: var(--font-header);
}
h2 {
font-size: clamp(1.5rem, 4vw, 2rem);
font-weight: 700;
color: var(--text-h2);
margin-bottom: 1rem;
font-family: var(--font-header);
}
h3 {
font-size: clamp(1.25rem, 3vw, 1.5rem);
font-weight: 600;
color: var(--text-h3);
margin-bottom: 0.75rem;
font-family: var(--font-header);
}
h4 {
font-size: clamp(1.1rem, 2.5vw, 1.25rem);
font-weight: 600;
color: var(--text-h4);
margin-bottom: 0.75rem;
font-family: var(--font-header);
}
h5 {
font-size: 1.1rem;
font-weight: 600;
color: var(--text-h5);
margin-bottom: 0.5rem;
font-family: var(--font-header);
}
h6 {
font-size: 1rem;
font-weight: 600;
color: var(--text-h6);
margin-bottom: 0.5rem;
font-family: var(--font-header);
}
p {
margin-bottom: 1rem;
line-height: 1.8;
}
strong {
color: var(--glow-bubblegum-1);
font-weight: 600;
}
em {
color: var(--glow-sparkle-1);
font-style: italic;
}
code {
font-family: var(--font-mono);
background: var(--bg-elevated);
padding: 0.2rem 0.4rem;
border: 1px solid var(--border-color);
border-radius: var(--radius-sm);
font-size: 0.9em;
}
pre {
font-family: var(--font-mono);
background: var(--bg-elevated);
padding: 1rem;
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-md);
overflow-x: auto;
margin-bottom: 1.5rem;
}
pre code {
background: transparent;
border: none;
padding: 0;
}
blockquote {
background: var(--bg-elevated);
border-left: 4px solid var(--glow-bubblegum-1);
border-radius: var(--radius-md);
padding: 1rem 1.5rem;
margin: 1.5rem 0;
font-style: italic;
}
ul, ol {
margin-bottom: 1.5rem;
margin-left: 2rem;
}
ul li, ol li {
margin-bottom: 0.5rem;
line-height: 1.7;
}
dl {
margin-bottom: 1.5rem;
}
dt {
font-weight: 600;
color: var(--glow-bubblegum-1);
margin-top: 1rem;
}
dd {
margin-left: 2rem;
margin-bottom: 0.5rem;
}
/* ===== BUTTONS ===== */
.btn {
display: inline-block;
padding: 0.875rem 2rem;
text-decoration: none;
font-weight: 600;
font-size: 1rem;
transition: transform 0.3s, box-shadow 0.3s;
cursor: pointer;
border: var(--border-width) solid var(--border-color);
font-family: var(--font-body);
border-radius: var(--radius-full);
}
.btn-special {
background: var(--btn-special-gradient);
color: var(--text-white);
box-shadow: 0 4px 14px rgba(255, 20, 147, 0.4), 0 0 20px rgba(255, 105, 180, 0.3);
border: none;
}
.btn-special:hover {
transform: translateY(-4px) scale(1.05);
box-shadow: 0 8px 24px rgba(255, 20, 147, 0.6), 0 0 30px rgba(255, 105, 180, 0.5);
}
.btn-default {
background: var(--text-primary);
color: var(--bg-solid-dark);
border-color: var(--glow-bubblegum-1);
}
.btn-default:hover {
transform: translateY(-2px) scale(1.03);
box-shadow: 0 4px 12px rgba(255, 105, 180, 0.4);
}
.btn-nav {
background: transparent;
color: var(--text-primary);
border-color: var(--glow-sparkle-1);
}
.btn-nav:hover {
border-color: var(--glow-bubblegum-1);
background: rgba(255, 105, 180, 0.1);
}
.btn-sparkle {
background: var(--bg-solid-dark);
color: var(--text-primary);
border-color: var(--glow-sparkle-1);
box-shadow: 0 0 20px rgba(176, 255, 232, 0.4);
}
.btn-sparkle:hover {
transform: translateY(-2px) scale(1.03);
box-shadow: 0 0 30px rgba(176, 255, 232, 0.6);
}
.btn-neon {
background: var(--bg-solid-dark);
color: var(--text-primary);
border-color: var(--glow-neon-1);
box-shadow: 0 0 20px rgba(255, 16, 240, 0.4);
}
.btn-neon:hover {
transform: translateY(-2px) scale(1.03);
box-shadow: 0 0 30px rgba(255, 16, 240, 0.6);
}
/* ===== CARDS & PANELS ===== */
.card {
background: var(--bg-card);
backdrop-filter: blur(10px);
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-lg);
padding: 1.5rem;
margin-bottom: 1.5rem;
}
.card-elevated {
background: var(--bg-elevated);
backdrop-filter: blur(10px);
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-lg);
padding: 1.5rem;
margin-bottom: 1.5rem;
}
.card-solid {
background: var(--bg-solid-header);
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-lg);
padding: 1.5rem;
margin-bottom: 1.5rem;
}
.card-glow-bubblegum {
box-shadow: 0 0 30px rgba(255, 105, 180, 0.5), 0 0 60px rgba(255, 20, 147, 0.3);
}
.card-glow-sparkle {
box-shadow: 0 0 30px rgba(176, 255, 232, 0.5), 0 0 60px rgba(0, 255, 255, 0.3);
}
.card-glow-neon {
box-shadow: 0 0 30px rgba(255, 16, 240, 0.5), 0 0 60px rgba(255, 230, 109, 0.3);
}
.card-kawaii {
background: rgba(255, 255, 255, 0.92);
border: var(--border-width-thick) solid transparent;
border-image: linear-gradient(135deg, #FF69B4 0%, #E6B3FF 50%, #00FFFF 100%) 1;
border-radius: var(--radius-xl);
color: #2d1435;
padding: 2rem;
margin-bottom: 1.5rem;
}
.card-kawaii h1,
.card-kawaii h2,
.card-kawaii h3,
.card-kawaii h4,
.card-kawaii h5,
.card-kawaii h6 {
color: #8B008B;
background: none;
-webkit-text-fill-color: #8B008B;
}
.card-kawaii p,
.card-kawaii li,
.card-kawaii td,
.card-kawaii dd {
color: #2d1435;
}
.card-kawaii strong {
color: #FF1493;
}
.card-kawaii em {
color: #00CED1;
}
.card-kawaii code {
background: rgba(255, 105, 180, 0.15);
border-color: #FF69B4;
color: #8B008B;
}
/* ===== TABLES ===== */
table {
width: 100%;
border-collapse: collapse;
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-md);
margin-bottom: 1.5rem;
background: var(--bg-card);
overflow: hidden;
}
thead {
background: var(--bg-solid-header);
color: var(--text-white);
}
th {
padding: 1rem;
text-align: left;
font-weight: 600;
border: 1px solid var(--border-color);
}
td {
padding: 0.875rem 1rem;
border: 1px solid var(--border-color);
}
tbody tr:nth-child(odd) {
background: var(--bg-elevated);
}
tbody tr:nth-child(even) {
background: rgba(255,182,255,0.1);
}
tbody tr:hover {
background: rgba(255, 105, 180, 0.15);
}
.card-elevated tbody tr:nth-child(odd),
.tab-content tbody tr:nth-child(odd) {
background: var(--bg-darker);
}
.card-elevated tbody tr:nth-child(even),
.tab-content tbody tr:nth-child(even) {
background: rgba(102,0,153,0.15);
}
tfoot {
background: var(--bg-solid-header);
color: var(--text-white);
font-weight: 600;
}
/* ===== FORMS ===== */
.form-group {
margin-bottom: 1.5rem;
}
label {
display: block;
margin-bottom: 0.5rem;
font-weight: 600;
color: var(--glow-bubblegum-1);
font-size: 0.9rem;
}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="url"],
input[type="tel"],
input[type="search"],
input[type="date"],
input[type="time"],
textarea,
select {
width: 100%;
padding: 0.75rem;
background: var(--bg-elevated);
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-md);
color: var(--text-primary);
font-family: var(--font-body);
font-size: 1rem;
transition: all 0.3s;
}
input:focus,
textarea:focus,
select:focus {
outline: none;
border-color: var(--glow-bubblegum-1);
box-shadow: 0 0 0 3px rgba(255, 105, 180, 0.3);
}
textarea {
min-height: 120px;
resize: vertical;
}
input[type="checkbox"],
input[type="radio"] {
width: 1.25rem;
height: 1.25rem;
margin-right: 0.5rem;
cursor: pointer;
}
input[type="checkbox"] {
accent-color: var(--glow-bubblegum-1);
}
.checkbox-group,
.radio-group {
display: flex;
align-items: center;
margin-bottom: 0.75rem;
}
/* ===== PROGRESS BARS ===== */
progress {
-webkit-appearance: none;
appearance: none;
width: 100%;
height: 2rem;
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-md);
margin-bottom: 1rem;
}
progress::-webkit-progress-bar {
background-color: var(--bg-elevated);
border-radius: var(--radius-md);
}
progress::-webkit-progress-value {
background: var(--btn-special-gradient);
border-radius: var(--radius-md);
}
progress::-moz-progress-bar {
background: var(--btn-special-gradient);
border-radius: var(--radius-md);
}
.progress-wrapper {
position: relative;
margin-bottom: 1.5rem;
}
.progress-label {
display: flex;
justify-content: space-between;
margin-bottom: 0.5rem;
font-size: 0.9rem;
}
.progress-custom {
width: 100%;
height: 2rem;
background: var(--bg-elevated);
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-md);
position: relative;
overflow: hidden;
}
.progress-fill {
height: 100%;
background: var(--btn-special-gradient);
border-radius: var(--radius-md);
transition: width 0.3s ease;
display: flex;
align-items: center;
justify-content: flex-end;
padding-right: 0.5rem;
font-weight: 600;
}
/* ===== BADGES & PILLS ===== */
.badge {
display: inline-block;
padding: 0.375rem 0.875rem;
font-size: 0.85rem;
font-weight: 600;
border: 1px solid var(--border-color);
border-radius: var(--radius-full);
}
.badge-bubblegum {
background: var(--bg-elevated);
color: var(--glow-bubblegum-1);
border-color: var(--glow-bubblegum-1);
}
.badge-sparkle {
background: var(--bg-elevated);
color: var(--glow-sparkle-1);
border-color: var(--glow-sparkle-1);
}
.badge-neon {
background: var(--bg-elevated);
color: var(--glow-neon-1);
border-color: var(--glow-neon-1);
}
.badge-solid {
background: var(--bg-solid-header);
color: var(--text-primary);
border-color: var(--border-color);
}
.card-elevated .badge-bubblegum,
.card-elevated .badge-sparkle,
.card-elevated .badge-neon,
.tab-content .badge-bubblegum,
.tab-content .badge-sparkle,
.tab-content .badge-neon {
background: var(--bg-darker);
}
/* ===== TABS ===== */
.tabs {
margin-bottom: 1.5rem;
}
.tab-buttons {
display: flex;
gap: 0.5rem;
border-bottom: var(--border-width) solid var(--border-color);
margin-bottom: 1rem;
}
.tab-button {
padding: 0.75rem 1.5rem;
background: var(--bg-elevated);
border: var(--border-width) solid var(--border-color);
border-bottom: none;
border-radius: var(--radius-md) var(--radius-md) 0 0;
color: var(--text-primary);
cursor: pointer;
font-family: var(--font-body);
font-weight: 600;
transition: all 0.3s;
}
.tab-button:hover {
background: var(--bg-card);
transform: translateY(-2px);
}
.tab-button.active {
background: var(--bg-solid-header);
color: var(--glow-bubblegum-1);
box-shadow: 0 0 15px rgba(255, 105, 180, 0.4);
}
.tab-content {
display: none;
padding: 1.5rem;
background: var(--bg-card);
border: var(--border-width) solid var(--border-color);
border-radius: 0 var(--radius-md) var(--radius-md) var(--radius-md);
}
.tab-content.active {
display: block;
}
/* ===== TIMELINE ===== */
.timeline {
position: relative;
padding: 2rem 0;
overflow: hidden;
}
.timeline::before {
content: '';
position: absolute;
left: 50%;
top: 0;
bottom: 0;
width: 4px;
background: var(--btn-special-gradient);
transform: translateX(-50%);
border-radius: var(--radius-full);
}
.timeline-item {
position: relative;
margin-bottom: 3rem;
display: flex;
align-items: center;
width: 100%;
}
.timeline-item:nth-child(odd) {
flex-direction: row;
justify-content: flex-start;
}
.timeline-item:nth-child(even) {
flex-direction: row-reverse;
justify-content: flex-start;
}
.timeline-content {
width: 45%;
max-width: 45%;
padding: 1.5rem;
background: var(--bg-card);
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-lg);
word-wrap: break-word;
overflow-wrap: break-word;
}
.timeline-marker {
position: absolute;
left: 50%;
width: 20px;
height: 20px;
background: var(--glow-bubblegum-1);
border: 4px solid var(--bg-gradient-1);
border-radius: var(--radius-full);
transform: translateX(-50%);
z-index: 1;
box-shadow: 0 0 15px rgba(255, 105, 180, 0.6);
}
.timeline-date {
font-size: 0.9rem;
color: var(--glow-bubblegum-1);
font-weight: 600;
margin-bottom: 0.5rem;
}
/* ===== ALERT BOXES ===== */
.alert {
padding: 1rem 1.5rem;
margin-bottom: 1.5rem;
border: var(--border-width) solid;
border-radius: var(--radius-md);
}
.alert-sparkle {
background: rgba(176, 255, 232, 0.15);
border-color: var(--glow-sparkle-1);
box-shadow: 0 2px 12px rgba(176, 255, 232, 0.3);
}
.alert-bubblegum {
background: rgba(255, 105, 180, 0.15);
border-color: var(--glow-bubblegum-1);
box-shadow: 0 2px 12px rgba(255, 105, 180, 0.3);
}
.alert-neon {
background: rgba(255, 16, 240, 0.15);
border-color: var(--glow-neon-1);
box-shadow: 0 2px 12px rgba(255, 16, 240, 0.3);
}
.alert-info {
background: rgba(204, 204, 255, 0.15);
border-color: var(--text-h5);
box-shadow: 0 2px 12px rgba(204, 204, 255, 0.2);
}
/* ===== STAT CARDS ===== */
.stat-card {
background: var(--bg-card);
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-lg);
padding: 1.5rem;
text-align: center;
}
.stat-value {
font-size: 2.5rem;
font-weight: 700;
background: var(--text-h1-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 0.5rem;
}
.stat-label {
font-size: 0.9rem;
color: var(--text-primary);
}
/* ===== CHART ELEMENTS ===== */
.chart-bar {
margin-bottom: 1rem;
}
.chart-label {
display: flex;
justify-content: space-between;
margin-bottom: 0.5rem;
font-size: 0.9rem;
}
.chart-bar-fill {
height: 2rem;
background: var(--bg-elevated);
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-md);
position: relative;
overflow: hidden;
}
.chart-bar-value {
height: 100%;
background: var(--btn-special-gradient);
border-radius: var(--radius-md);
display: flex;
align-items: center;
justify-content: flex-end;
padding-right: 0.75rem;
font-weight: 600;
}
/* ===== HEADER WITH SOLID BACKGROUND ===== */
.header-solid {
background: var(--bg-solid-header);
color: var(--text-white);
padding: 2rem;
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-lg);
margin-bottom: 2rem;
}
.header-solid h1,
.header-solid h2,
.header-solid h3 {
color: var(--text-white);
background: none;
-webkit-text-fill-color: var(--text-white);
}
/* ===== SECTION DIVIDERS ===== */
.section-divider {
height: 4px;
background: var(--btn-special-gradient);
margin: 3rem 0;
border: none;
border-radius: var(--radius-full);
}
/* ===== COLOR SWATCHES ===== */
.color-swatches {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
gap: 1rem;
margin-bottom: 1.5rem;
}
.color-swatch {
aspect-ratio: 1;
border: var(--border-width) solid var(--border-color);
border-radius: var(--radius-md);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 0.8rem;
font-family: var(--font-mono);
text-align: center;
padding: 0.5rem;
}
/* ===== UTILITY CLASSES ===== */
.text-center { text-align: center; }
.text-right { text-align: right; }
.mb-1 { margin-bottom: 1rem; }
.mb-2 { margin-bottom: 2rem; }
.mb-3 { margin-bottom: 3rem; }
.mt-1 { margin-top: 1rem; }
.mt-2 { margin-top: 2rem; }
.mt-3 { margin-top: 3rem; }
/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
.timeline::before {
left: 0;
}
.timeline-item {
flex-direction: column !important;
align-items: flex-start;
}
.timeline-content {
width: 100%;
margin-left: 2rem;
}
.timeline-marker {
left: 0;
transform: translateX(0);
}
.grid-2,
.grid-3,
.grid-4 {
grid-template-columns: 1fr;
}
}
</style>
</head>
<body>
<div class="container">
<!-- MAIN HEADER -->
<div class="header-solid text-center">
<h1>Bubblicorn Style Reference 🦄✨</h1>
<p style="font-size: 1.25rem; margin-top: 0.5rem;">E-Girl Aesthetic | Rounded Corners | Pastel Vibes</p>
</div>
<!-- COLOR SYSTEM -->
<section class="mb-3">
<h2>Color Palette 💖</h2>
<div class="color-swatches">
<div class="color-swatch" style="background: #FF69B4;">
<strong>Bubblegum 1</strong>
<span>#FF69B4</span>
</div>
<div class="color-swatch" style="background: #FF1493;">
<strong>Bubblegum 2</strong>
<span>#FF1493</span>
</div>
<div class="color-swatch" style="background: #B0FFE8;">
<strong>Sparkle 1</strong>
<span>#B0FFE8</span>
</div>
<div class="color-swatch" style="background: #00FFFF;">
<strong>Sparkle 2</strong>
<span>#00FFFF</span>
</div>
<div class="color-swatch" style="background: #FF10F0;">
<strong>Neon 1</strong>
<span>#FF10F0</span>
</div>
<div class="color-swatch" style="background: #FFE66D;">
<strong>Neon 2</strong>
<span>#FFE66D</span>
</div>
<div class="color-swatch" style="background: #E6B3FF;">
<strong>Lavender</strong>
<span>#E6B3FF</span>
</div>
<div class="color-swatch" style="background: #CCCCFF;">
<strong>Periwinkle</strong>
<span>#CCCCFF</span>
</div>
<div class="color-swatch" style="background: #FFE6FF; color: #2d1435;">
<strong>Primary Text</strong>
<span>#FFE6FF</span>
</div>
</div>
</section>
<hr class="section-divider">
<!-- TYPOGRAPHY -->
<section class="mb-3">
<h2>Typography ✨</h2>
<div class="card">
<h1>H1: Rainbow Gradient ✨</h1>
<h2>H2: Hot Pink Primary 💕</h2>
<h3>H3: Lavender Dreams 💜</h3>
<h4>H4: Mint Sparkle 🌿</h4>
<h5>H5: Periwinkle Soft 🦋</h5>
<h6>H6: Light Primary ⭐</h6>
<p>This is <strong>bold bubblegum text</strong> and this is <em>sparkly emphasized text</em>. Body text uses Nunito with Noto Emoji for perfect emoji rendering 🦄🌈✨. All headings use Quicksand for that cute, rounded aesthetic!</p>
<p>Inline <code>code snippets</code> are styled with rounded borders and soft pink backgrounds.</p>
<pre><code>// Code block example ✨
function kawaii() {
return "So cute! 💖";
}</code></pre>
<blockquote>
This is a blockquote with rounded corners and a bubblegum pink accent border~ So aesthetic! 💕
</blockquote>
</div>
</section>
<hr class="section-divider">
<!-- BUTTONS -->
<section class="mb-3">
<h2>Button Styles 🎀</h2>
<div class="card">
<h3>Special Button (Gradient)</h3>
<button class="btn btn-special">Magical Action ✨</button>
<h3 class="mt-2">Default Button</h3>
<button class="btn btn-default">Cute Action 💕</button>
<h3 class="mt-2">Navigation Button</h3>
<button class="btn btn-nav">Nav Link 🌸</button>
<h3 class="mt-2">Sparkle Button</h3>
<button class="btn btn-sparkle">Success! 🌟</button>
<h3 class="mt-2">Neon Button</h3>
<button class="btn btn-neon">Warning! ⚡</button>
</div>
</section>
<hr class="section-divider">
<!-- CARDS & GLOWS -->
<section class="mb-3">
<h2>Cards & Glow Effects 💫</h2>
<div class="grid grid-3">
<div class="card card-glow-bubblegum">
<h3>Bubblegum Glow 💖</h3>
<p>Used for primary actions and important highlights. Sweet pink vibes!</p>
</div>
<div class="card card-glow-sparkle">
<h4>Sparkle Glow ✨</h4>
<p>Used for success states and achievements. Magical mint cyan tones!</p>
</div>
<div class="card card-glow-neon">
<h5>Neon Glow ⚡</h5>
<p>Used for warnings and attention-grabbing elements. Electric vibes!</p>
</div>
</div>
<div class="grid grid-2">
<div class="card-elevated">
<h3>Elevated Card 🌙</h3>
<p>Uses subtle pink-tinted elevated background with soft rounded corners.</p>
</div>
<div class="card-solid">
<h3 style="color: var(--text-white);">Solid Card 🌌</h3>
<p>Dark solid magenta background for strong contrast sections.</p>
</div>
</div>
</section>
<hr class="section-divider">
<!-- KAWAII CARD -->
<section class="mb-3">
<h2>Kawaii Card (Light Mode) 🌸</h2>
<div class="card-kawaii">
<h3>Super Cute Featured Content! 💕</h3>
<p>This <strong>ultra-kawaii card</strong> uses a bright white background (rgba(255, 255, 255, 0.92)) with a thick rainbow gradient border. Perfect for <em>special announcements</em>, featured content, or anything that needs extra cuteness! ✨</p>
<h4>Design Specs:</h4>
<ul>
<li>Background: rgba(255, 255, 255, 0.92) - Ultra bright! 🌟</li>
<li>Border: 4px gradient (Hot Pink → Lavender → Cyan)</li>
<li>Heading color: #8B008B (dark magenta)</li>
<li>Text color: #2d1435 (dark purple)</li>
<li>Strong: #FF1493 | Em: #00CED1</li>
<li>Rounded corners: 20px (extra soft!)</li>
</ul>
<p>Use this variant when you need maximum cuteness and readability. The <code>card-kawaii</code> class automatically applies light-mode styling to all child elements with that perfect e-girl aesthetic! 🦄</p>
</div>
<div class="grid grid-2">
<div class="card">
<h3>Standard Dark Card 🌙</h3>
<p>Regular pastel-tinted card for normal content.</p>
</div>
<div class="card-kawaii">
<h3>Kawaii Light Card 🌸</h3>
<p>Maximum brightness and cuteness overload!</p>
</div>
</div>
</section>
<hr class="section-divider">
<!-- TABLES -->
<section class="mb-3">
<h2>Tables 📊</h2>
<div class="card">
<table>
<thead>
<tr>
<th>Unicorn 🦄</th>
<th>Level</th>
<th>Sparkles ✨</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td>Rainbow Dash</td>
<td>99</td>
<td>12,540 ✨</td>
<td><span class="badge badge-sparkle">Online 💚</span></td>
</tr>
<tr>
<td>Stardust</td>
<td>87</td>
<td>15,890 ✨</td>
<td><span class="badge badge-sparkle">Online 💚</span></td>
</tr>
<tr>
<td>Moonbeam</td>
<td>76</td>
<td>9,320 ✨</td>
<td><span class="badge badge-bubblegum">Away 💖</span></td>
</tr>
<tr>
<td>Glitter</td>
<td>95</td>
<td>21,770 ✨</td>
<td><span class="badge badge-neon">Offline ⚡</span></td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="2"><strong>Total Unicorns</strong></td>
<td><strong>59,520 ✨</strong></td>
<td><strong>4 Active 🦄</strong></td>
</tr>
</tfoot>
</table>
</div>
</section>
<hr class="section-divider">
<!-- FORMS -->
<section class="mb-3">
<h2>Form Elements 📝</h2>
<div class="card">
<div class="form-group">
<label for="username">Username 💖</label>
<input type="text" id="username" placeholder="Enter your magical name">
</div>
<div class="form-group">
<label for="email">Email Address ✨</label>
<input type="email" id="email" placeholder="unicorn@magic.com">
</div>
<div class="form-group">
<label for="level">Sparkle Level 🌟</label>
<input type="number" id="level" value="99">
</div>
<div class="form-group">
<label for="bio">About Me 🦄</label>
<textarea id="bio" placeholder="Tell us your magical story..."></textarea>
</div>
<div class="form-group">
<label for="vibe">Choose Your Vibe 💕</label>
<select id="vibe">
<option>Kawaii Cutie 🌸</option>
<option>E-Girl Energy ⚡</option>
<option>Pastel Princess 👑</option>
<option>Neon Dreams 💜</option>
</select>
</div>
<div class="form-group">
<label>Magical Powers 🌈</label>
<div class="checkbox-group">
<input type="checkbox" id="sparkle" checked>
<label for="sparkle" style="display: inline; margin: 0;">Sparkle Magic ✨</label>
</div>
<div class="checkbox-group">
<input type="checkbox" id="rainbow">
<label for="rainbow" style="display: inline; margin: 0;">Rainbow Creation 🌈</label>
</div>
<div class="checkbox-group">
<input type="checkbox" id="glow" checked>
<label for="glow" style="display: inline; margin: 0;">Glow Powers 💫</label>
</div>
</div>
<div class="form-group">
<label>Aesthetic Mode 🎨</label>
<div class="radio-group">
<input type="radio" name="mode" id="soft">
<label for="soft" style="display: inline; margin: 0;">Soft Pastel 🌸</label>
</div>
<div class="radio-group">
<input type="radio" name="mode" id="bright" checked>
<label for="bright" style="display: inline; margin: 0;">Bright Neon ⚡</label>
</div>
<div class="radio-group">
<input type="radio" name="mode" id="dreamy">
<label for="dreamy" style="display: inline; margin: 0;">Dreamy Vibes 💭</label>
</div>
</div>
<button class="btn btn-special">Save My Sparkles ✨</button>
<button class="btn btn-default" style="margin-left: 1rem;">Cancel 💕</button>
</div>
</section>
<hr class="section-divider">
<!-- PROGRESS BARS -->
<section class="mb-3">
<h2>Progress Indicators 📈</h2>
<div class="card">
<h3>Native Progress Element</h3>
<progress value="70" max="100"></progress>
<progress value="45" max="100"></progress>
<progress value="90" max="100"></progress>
<h3 class="mt-2">Custom Progress Bars</h3>
<div class="progress-wrapper">
<div class="progress-label">
<span>Sparkle Power ✨</span>
<span>850/1000</span>
</div>
<div class="progress-custom">
<div class="progress-fill" style="width: 85%;">85%</div>
</div>
</div>
<div class="progress-wrapper">
<div class="progress-label">
<span>Kawaii Experience 💖</span>
<span>6,240/10,000</span>
</div>
<div class="progress-custom">
<div class="progress-fill" style="width: 62%;">62%</div>
</div>
</div>
<div class="progress-wrapper">
<div class="progress-label">
<span>Quest Progress 🌈</span>
<span>3/12 Complete</span>
</div>
<div class="progress-custom">
<div class="progress-fill" style="width: 25%;">25%</div>
</div>
</div>
</div>
</section>
<hr class="section-divider">
<!-- BADGES & PILLS -->
<section class="mb-3">
<h2>Badges & Pills 🏷️</h2>
<div class="card">
<p>
<span class="badge badge-bubblegum">New 💖</span>
<span class="badge badge-sparkle">Verified ✨</span>
<span class="badge badge-neon">Hot ⚡</span>
<span class="badge badge-solid">Common 🌙</span>
<span class="badge badge-bubblegum">Cute 💕</span>
<span class="badge badge-sparkle">Active 🌟</span>
</p>
<h3 class="mt-2">Use Cases</h3>
<p>Status: <span class="badge badge-sparkle">Online 💚</span> <span class="badge badge-bubblegum">Away 💖</span> <span class="badge badge-neon">Offline ⚡</span></p>
<p>Tiers: <span class="badge badge-solid">Bronze 🥉</span> <span class="badge badge-bubblegum">Gold 🥇</span> <span class="badge badge-sparkle">Legendary ✨</span></p>
</div>
</section>
<hr class="section-divider">
<!-- TABS -->
<section class="mb-3">
<h2>Tab Interface 📑</h2>
<div class="card">
<div class="tabs">
<div class="tab-buttons">
<button class="tab-button active" onclick="switchTab(event, 'tab1')">Overview 🌸</button>
<button class="tab-button" onclick="switchTab(event, 'tab2')">Stats 📊</button>
<button class="tab-button" onclick="switchTab(event, 'tab3')">Inventory 🎀</button>
</div>
<div id="tab1" class="tab-content active">
<h3>Overview ✨</h3>
<p>This is the overview tab with rounded corners and soft pastel vibes. Tab content displays in a card-style container with full styling support!</p>
<button class="btn btn-special">Magical Action 💖</button>
</div>
<div id="tab2" class="tab-content">
<h3>Character Stats 🌟</h3>
<ul>
<li><strong>Cuteness:</strong> 99 💕</li>
<li><strong>Sparkle:</strong> 87 ✨</li>
<li><strong>Magic:</strong> 95 🌈</li>
<li><strong>Vibes:</strong> 100 💫</li>
</ul>
</div>
<div id="tab3" class="tab-content">
<h3>Inventory 🎀</h3>
<p>Your equipped items and magical accessories!</p>
<p><span class="badge badge-bubblegum">Rainbow Sword 🗡️</span> <span class="badge badge-sparkle">Sparkle Potion x5 ✨</span> <span class="badge badge-solid">Stardust: 12,450 ⭐</span></p>
</div>
</div>
</div>
</section>
<hr class="section-divider">
<!-- TIMELINE -->
<section class="mb-3">
<h2>Timeline Component 🕐</h2>
<div class="card">
<div class="timeline">
<div class="timeline-item">
<div class="timeline-marker"></div>
<div class="timeline-content">
<div class="timeline-date">2025-01-15 🌸</div>
<h4>Journey Begins! 🦄</h4>
<p>Welcome to the magical world! Your kawaii adventure starts here ✨</p>
</div>
</div>
<div class="timeline-item">
<div class="timeline-marker"></div>
<div class="timeline-content">
<div class="timeline-date">2025-02-03 💖</div>
<h4>First Quest Completed!</h4>
<p>Completed "Rainbow Mission" - Earned 500 Sparkles ✨</p>
</div>
</div>
<div class="timeline-item">
<div class="timeline-marker"></div>
<div class="timeline-content">
<div class="timeline-date">2025-03-12 🌟</div>
<h4>Level 99 Achieved!</h4>
<p>Reached legendary status! Unlocked unicorn powers 🦄</p>
</div>
</div>
<div class="timeline-item">
<div class="timeline-marker"></div>
<div class="timeline-content">
<div class="timeline-date">2025-04-20 ⚡</div>
<h4>Mythical Item Found!</h4>
<p>Discovered "Crystal of Eternal Sparkles" in treasure chest 💎</p>
</div>
</div>
</div>
</div>
</section>
<hr class="section-divider">
<!-- STAT CARDS -->
<section class="mb-3">
<h2>Statistics Display 📊</h2>
<div class="grid grid-4">
<div class="stat-card">
<div class="stat-value">12.5K</div>
<div class="stat-label">Sparkles Earned ✨</div>
</div>
<div class="stat-card">
<div class="stat-value">98%</div>
<div class="stat-label">Cuteness Level 💕</div>
</div>
<div class="stat-card">
<div class="stat-value">247</div>
<div class="stat-label">Quests Done 🌈</div>
</div>
<div class="stat-card">
<div class="stat-value"></div>
<div class="stat-label">Vibes Score 💫</div>
</div>
</div>
</section>
<hr class="section-divider">
<!-- CHART BARS -->
<section class="mb-3">
<h2>Chart Elements 📈</h2>
<div class="card">
<h3>Skill Levels 🌟</h3>
<div class="chart-bar">
<div class="chart-label">
<span>Cuteness 💕</span>
<span>92/100</span>
</div>
<div class="chart-bar-fill">
<div class="chart-bar-value" style="width: 92%;">92%</div>
</div>
</div>
<div class="chart-bar">
<div class="chart-label">
<span>Sparkle ✨</span>
<span>78/100</span>
</div>
<div class="chart-bar-fill">
<div class="chart-bar-value" style="width: 78%;">78%</div>
</div>
</div>
<div class="chart-bar">
<div class="chart-label">
<span>Magic 🌈</span>
<span>65/100</span>
</div>
<div class="chart-bar-fill">
<div class="chart-bar-value" style="width: 65%;">65%</div>
</div>
</div>
<div class="chart-bar">
<div class="chart-label">
<span>Vibes 💫</span>
<span>88/100</span>
</div>
<div class="chart-bar-fill">
<div class="chart-bar-value" style="width: 88%;">88%</div>
</div>
</div>
</div>
</section>
<hr class="section-divider">
<!-- ALERTS -->
<section class="mb-3">
<h2>Alert Boxes 📢</h2>
<div class="alert alert-sparkle">
<strong>Success! ✨</strong> Your magical profile has been updated successfully!
</div>
<div class="alert alert-bubblegum">
<strong>Notice 💕</strong> Your sparkle session will expire in 5 minutes.
</div>
<div class="alert alert-neon">
<strong>Warning ⚡</strong> Unable to connect to unicorn server. Please try again!
</div>
<div class="alert alert-info">
<strong>Info 🌙</strong> Magical maintenance scheduled for tomorrow at 2:00 AM UTC.
</div>
</section>
<hr class="section-divider">
<!-- IMPLEMENTATION GUIDE -->
<section class="mb-3">
<h2>Implementation Guide for LLMs 📚</h2>
<div class="card">
<h3>Quick Start Checklist ✨</h3>
<ol>
<li>Copy :root CSS variables block</li>
<li>Apply vertical gradient background to body</li>
<li>Use .container for max-width centering</li>
<li>Build layouts with .grid .grid-[2|3|4] classes</li>
<li>All borders are ROUNDED (8px-20px range)</li>
<li>Style components with modifier classes (.btn-special, .card-glow-bubblegum)</li>
</ol>
</div>
<div class="grid grid-2 mt-2">
<div class="card">
<h3>Border Radius System 💫</h3>
<pre><code>/* Rounded corners everywhere! */
--radius-sm: 8px; /* Small elements */
--radius-md: 12px; /* Standard cards */
--radius-lg: 16px; /* Large sections */
--radius-xl: 20px; /* Extra cute! */
--radius-full: 9999px; /* Pills/badges */</code></pre>
</div>
<div class="card">
<h3>Color Harmony 🌈</h3>
<p><strong>Bubblegum:</strong> Hot pinks for primary actions</p>
<p><strong>Sparkle:</strong> Mint/cyan for success states</p>
<p><strong>Neon:</strong> Electric pink/yellow for warnings</p>
<p><strong>Pastels:</strong> Lavender, periwinkle for soft accents</p>
</div>
</div>
<div class="card mt-2">
<h3>Typography Usage 💕</h3>
<table>
<thead>
<tr>
<th>Element</th>
<th>Color/Style</th>
<th>Font</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>&lt;h1&gt;</code></td>
<td>5-color rainbow gradient</td>
<td>Quicksand</td>
</tr>
<tr>
<td><code>&lt;h2&gt;</code></td>
<td>#FF69B4 (hot pink)</td>
<td>Quicksand</td>
</tr>
<tr>
<td><code>&lt;h3&gt;</code></td>
<td>#E6B3FF (lavender)</td>
<td>Quicksand</td>
</tr>
<tr>
<td><code>&lt;h4&gt;</code></td>
<td>#B0FFE8 (mint)</td>
<td>Quicksand</td>
</tr>
<tr>
<td><code>&lt;strong&gt;</code></td>
<td>#FF69B4 (hot pink)</td>
<td>-</td>
</tr>
<tr>
<td><code>&lt;em&gt;</code></td>
<td>#B0FFE8 (mint)</td>
<td>-</td>
</tr>
</tbody>
</table>
<p class="mt-1"><strong>Fonts:</strong> Quicksand (headers) | Nunito + Noto Emoji (body)</p>
</div>
<div class="card mt-2">
<h3>Button Behaviors 🎀</h3>
<pre><code>/* Special button hover */
.btn-special:hover {
transform: translateY(-4px) scale(1.05);
/* Floats up + grows slightly */
}
/* Standard button hover */
.btn-default:hover {
transform: translateY(-2px) scale(1.03);
/* Subtle lift effect */
}</code></pre>
</div>
<div class="alert alert-info mt-2">
<h3 style="color: var(--text-primary); margin-bottom: 0.5rem;">Critical Design Rules ✨</h3>
<ul style="margin-left: 1.5rem; margin-top: 0.5rem;">
<li><strong>Always rounded corners:</strong> Use border-radius on everything!</li>
<li><strong>Border thickness:</strong> 2px standard, 4px for kawaii cards</li>
<li><strong>Opacity:</strong> bg-elevated: 0.06, bg-card: 0.18, bg-darker: 0.25</li>
<li><strong>Hover effects:</strong> Buttons lift up AND scale (translateY + scale)</li>
<li><strong>Colors:</strong> Pastel/neon mix - high saturation but playful</li>
<li><strong>Fonts:</strong> Quicksand (headers), Nunito (body) - both rounded!</li>
<li><strong>Background:</strong> 180deg vertical gradient (deep purple → teal)</li>
<li><strong>Emojis:</strong> Use liberally for that e-girl aesthetic! 🦄✨💕</li>
<li><strong>Glows:</strong> More intense than demoBuild - embrace the neon!</li>
</ul>
</div>
</section>
<!-- FOOTER -->
<footer class="card-solid text-center mt-3" style="padding: 2rem;">
<h2 style="color: var(--text-white);">Bubblicorn Style Complete! 🦄✨</h2>
<p style="color: var(--text-white); margin-top: 1rem;">All rounded corners | Pastel + neon harmony | Maximum cuteness achieved 💖</p>
<p style="color: var(--text-white); opacity: 0.8; font-size: 0.9rem; margin-top: 0.5rem;">Copy CSS variables and component classes to replicate this kawaii aesthetic! 🌸</p>
</footer>
</div>
<script>
// Tab switching functionality
function switchTab(event, tabId) {
document.querySelectorAll('.tab-button').forEach(btn => {
btn.classList.remove('active');
});
document.querySelectorAll('.tab-content').forEach(content => {
content.classList.remove('active');
});
event.target.classList.add('active');
document.getElementById(tabId).classList.add('active');
}
</script>
</body>
</html>