quantum-digital-branding/styles.css
thecyberlearn 9fc5ac0e02 Initial commit: AI Brand Strategy Generator with modern UI
🚀 Added comprehensive brand strategy generation tool with:
- Modern dark theme with glassmorphism design
- Multi-step form with progressive disclosure
- AI autofill functionality with industry-specific templates
- SOSTAC+RACE framework implementation
- Responsive design with smooth animations
- PDF export capability simulation

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 13:02:22 +05:30

1102 lines
24 KiB
CSS

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600&display=swap');
:root {
/* Colors */
--color-bg: #f8fafb;
--color-surface: #ffffff;
--color-surface-elevated: #ffffff;
--color-primary: #0d0d0d;
--color-primary-hover: #1a1a1a;
--color-secondary: #6b7280;
--color-tertiary: #9ca3af;
--color-accent: #0066ff;
--color-accent-hover: #0052cc;
--color-success: #10b981;
--color-warning: #f59e0b;
--color-error: #ef4444;
--color-border: #e5e7eb;
--color-border-hover: #d1d5db;
--color-divider: #f3f4f6;
/* Typography */
--font-family-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
--font-family-mono: 'JetBrains Mono', monospace;
--font-size-xs: 0.75rem;
--font-size-sm: 0.875rem;
--font-size-base: 1rem;
--font-size-lg: 1.125rem;
--font-size-xl: 1.25rem;
--font-size-2xl: 1.5rem;
--font-size-3xl: 1.875rem;
--font-size-4xl: 2.25rem;
--font-size-5xl: 3rem;
--font-weight-light: 300;
--font-weight-normal: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--font-weight-extrabold: 800;
--font-weight-black: 900;
--line-height-tight: 1.25;
--line-height-snug: 1.375;
--line-height-normal: 1.5;
--line-height-relaxed: 1.625;
/* Spacing */
--space-px: 1px;
--space-0: 0;
--space-1: 0.25rem;
--space-2: 0.5rem;
--space-3: 0.75rem;
--space-4: 1rem;
--space-5: 1.25rem;
--space-6: 1.5rem;
--space-8: 2rem;
--space-10: 2.5rem;
--space-12: 3rem;
--space-16: 4rem;
--space-20: 5rem;
--space-24: 6rem;
--space-32: 8rem;
/* Sizing */
--size-4: 1rem;
--size-6: 1.5rem;
--size-8: 2rem;
--size-10: 2.5rem;
--size-12: 3rem;
--size-16: 4rem;
--size-20: 5rem;
--size-24: 6rem;
/* Border Radius */
--radius-none: 0;
--radius-sm: 0.125rem;
--radius-base: 0.375rem;
--radius-md: 0.5rem;
--radius-lg: 0.75rem;
--radius-xl: 1rem;
--radius-2xl: 1.5rem;
--radius-full: 9999px;
/* Shadows */
--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
/* Transitions */
--transition-none: none;
--transition-all: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
--transition-opacity: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
--transition-transform: transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
--transition-colors: color 150ms cubic-bezier(0.4, 0, 0.2, 1), background-color 150ms cubic-bezier(0.4, 0, 0.2, 1), border-color 150ms cubic-bezier(0.4, 0, 0.2, 1);
/* Z-index */
--z-dropdown: 10;
--z-modal: 20;
--z-popover: 30;
--z-tooltip: 40;
--z-toast: 50;
}
/* Reset and Base Styles */
*,
*::before,
*::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}
html {
height: 100%;
font-feature-settings: 'cv02', 'cv03', 'cv04', 'cv11';
font-variant-ligatures: none;
}
body {
height: 100%;
font-family: var(--font-family-primary);
font-size: var(--font-size-base);
font-weight: var(--font-weight-normal);
line-height: var(--line-height-normal);
color: var(--color-primary);
background-color: var(--color-bg);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
overflow-x: hidden;
}
/* Layout */
.container {
width: 100%;
max-width: 1280px;
margin: 0 auto;
padding-left: var(--space-4);
padding-right: var(--space-4);
}
@media (min-width: 640px) {
.container {
padding-left: var(--space-6);
padding-right: var(--space-6);
}
}
@media (min-width: 1024px) {
.container {
padding-left: var(--space-8);
padding-right: var(--space-8);
}
}
/* Header with Advanced Animations */
.app-header {
text-align: center;
margin-bottom: var(--space-12);
padding-top: var(--space-16);
position: relative;
overflow: hidden;
}
.app-header::before {
content: '';
position: absolute;
top: 0;
left: 50%;
width: 200%;
height: 200%;
background: radial-gradient(circle at center, rgba(0, 102, 255, 0.05) 0%, transparent 70%);
transform: translateX(-50%) translateY(-20%);
animation: heroGlow 8s ease-in-out infinite;
}
@keyframes heroGlow {
0%, 100% { opacity: 0.3; transform: translateX(-50%) translateY(-20%) scale(1); }
50% { opacity: 0.6; transform: translateX(-50%) translateY(-20%) scale(1.1); }
}
.hero-content {
position: relative;
z-index: 2;
}
.hero-title {
font-size: var(--font-size-4xl);
font-weight: var(--font-weight-extrabold);
letter-spacing: -0.025em;
line-height: var(--line-height-tight);
color: var(--color-primary);
margin-bottom: var(--space-6);
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: var(--space-3);
}
.hero-word {
display: inline-block;
opacity: 0;
transform: translateY(30px) rotateX(90deg);
animation: wordReveal 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
transform-origin: center bottom;
}
@keyframes wordReveal {
0% {
opacity: 0;
transform: translateY(30px) rotateX(90deg) scale(0.8);
}
50% {
opacity: 0.8;
transform: translateY(10px) rotateX(45deg) scale(1.05);
}
100% {
opacity: 1;
transform: translateY(0) rotateX(0deg) scale(1);
}
}
.hero-word:first-child {
font-size: 1.2em;
animation: emojiPulse 2s ease-in-out infinite;
}
@keyframes emojiPulse {
0%, 100% { transform: scale(1); }
50% { transform: scale(1.1); }
}
.hero-subtitle {
font-size: var(--font-size-lg);
color: var(--color-secondary);
font-weight: var(--font-weight-medium);
max-width: 32rem;
margin: 0 auto var(--space-8);
display: flex;
flex-direction: column;
gap: var(--space-1);
}
.hero-line {
display: inline-block;
opacity: 0;
transform: translateY(20px);
animation: lineReveal 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
@keyframes lineReveal {
0% {
opacity: 0;
transform: translateY(20px);
filter: blur(10px);
}
100% {
opacity: 1;
transform: translateY(0);
filter: blur(0px);
}
}
.hero-decoration {
width: 60px;
height: 4px;
background: var(--color-accent);
margin: 0 auto;
border-radius: var(--radius-full);
opacity: 0;
transform: scaleX(0);
animation: decorationReveal 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
position: relative;
overflow: hidden;
}
.hero-decoration::after {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);
animation: decorationShine 3s ease-in-out infinite;
}
@keyframes decorationReveal {
0% {
opacity: 0;
transform: scaleX(0);
}
100% {
opacity: 1;
transform: scaleX(1);
}
}
@keyframes decorationShine {
0% { left: -100%; }
100% { left: 100%; }
}
/* Responsive Header */
@media (min-width: 768px) {
.hero-title {
font-size: var(--font-size-5xl);
}
.hero-subtitle {
font-size: var(--font-size-xl);
flex-direction: row;
gap: var(--space-2);
}
.hero-decoration {
width: 80px;
height: 5px;
}
}
@media (max-width: 640px) {
.hero-title {
font-size: var(--font-size-3xl);
gap: var(--space-2);
}
.hero-subtitle {
font-size: var(--font-size-base);
}
}
/* Main Content */
.main-content {
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: var(--radius-2xl);
box-shadow: var(--shadow-lg);
overflow: hidden;
min-height: 600px;
position: relative;
backdrop-filter: blur(8px);
}
.main-content::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, transparent, var(--color-border), transparent);
}
/* Screen Management */
.screen {
display: none;
min-height: 600px;
animation: fadeIn 400ms cubic-bezier(0.16, 1, 0.3, 1);
}
.screen.active {
display: block;
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(8px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* Buttons */
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--space-2);
padding: var(--space-3) var(--space-6);
font-family: inherit;
font-size: var(--font-size-sm);
font-weight: var(--font-weight-semibold);
line-height: 1;
text-decoration: none;
border: 1px solid transparent;
border-radius: var(--radius-lg);
cursor: pointer;
transition: var(--transition-all);
white-space: nowrap;
user-select: none;
position: relative;
overflow: hidden;
}
.btn:focus-visible {
outline: 2px solid var(--color-accent);
outline-offset: 2px;
}
.btn-primary {
background: var(--color-primary);
color: var(--color-surface);
border-color: var(--color-primary);
box-shadow: var(--shadow-xs);
}
.btn-primary:hover {
background: var(--color-primary-hover);
border-color: var(--color-primary-hover);
box-shadow: var(--shadow-sm);
transform: translateY(-1px);
}
.btn-primary:active {
transform: translateY(0);
box-shadow: var(--shadow-xs);
}
.btn-secondary {
background: var(--color-surface);
color: var(--color-primary);
border-color: var(--color-border);
}
.btn-secondary:hover {
background: var(--color-bg);
border-color: var(--color-border-hover);
box-shadow: var(--shadow-sm);
}
.btn-large {
padding: var(--space-4) var(--space-8);
font-size: var(--font-size-base);
border-radius: var(--radius-xl);
}
.btn-accent {
background: var(--color-accent);
color: var(--color-surface);
border-color: var(--color-accent);
}
.btn-accent:hover {
background: var(--color-accent-hover);
border-color: var(--color-accent-hover);
transform: translateY(-1px);
box-shadow: var(--shadow-md);
}
/* Form Styles */
.form-container {
max-width: 42rem;
margin: 0 auto;
padding: var(--space-8);
}
.form-header {
text-align: center;
margin-bottom: var(--space-10);
}
.form-title {
font-size: var(--font-size-2xl);
font-weight: var(--font-weight-bold);
color: var(--color-primary);
margin-bottom: var(--space-2);
}
.form-subtitle {
font-size: var(--font-size-base);
color: var(--color-secondary);
font-weight: var(--font-weight-medium);
}
/* Progress Indicator */
.progress-container {
margin-bottom: var(--space-10);
}
.step-indicator {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: var(--space-6);
position: relative;
}
.step-indicator::before {
content: '';
position: absolute;
top: 50%;
left: 0;
right: 0;
height: 2px;
background: var(--color-divider);
transform: translateY(-50%);
z-index: 1;
}
.step-item {
display: flex;
flex-direction: column;
align-items: center;
gap: var(--space-2);
position: relative;
z-index: 2;
background: var(--color-bg);
padding: 0 var(--space-2);
min-width: 0;
flex: 1;
}
.step-circle {
width: var(--size-8);
height: var(--size-8);
border-radius: var(--radius-full);
border: 2px solid var(--color-border);
background: var(--color-surface);
display: flex;
align-items: center;
justify-content: center;
font-size: var(--font-size-sm);
font-weight: var(--font-weight-semibold);
color: var(--color-tertiary);
transition: var(--transition-all);
}
.step-item.active .step-circle {
background: var(--color-primary);
border-color: var(--color-primary);
color: var(--color-surface);
box-shadow: var(--shadow-md);
}
.step-item.completed .step-circle {
background: var(--color-success);
border-color: var(--color-success);
color: var(--color-surface);
}
.step-item.completed .step-circle::before {
content: '✓';
font-size: var(--font-size-sm);
}
.step-label {
font-size: var(--font-size-xs);
font-weight: var(--font-weight-medium);
color: var(--color-tertiary);
text-align: center;
line-height: var(--line-height-tight);
}
.step-item.active .step-label {
color: var(--color-primary);
font-weight: var(--font-weight-semibold);
}
.step-item.completed .step-label {
color: var(--color-success);
}
/* Progress Bar */
.progress-bar {
height: 8px;
background: var(--color-divider);
border-radius: var(--radius-full);
overflow: hidden;
position: relative;
}
.progress-fill {
height: 100%;
background: linear-gradient(90deg, var(--color-primary), var(--color-accent));
border-radius: var(--radius-full);
transition: width 600ms cubic-bezier(0.16, 1, 0.3, 1);
position: relative;
}
.progress-fill::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
animation: shimmer 2s infinite;
}
@keyframes shimmer {
0% { transform: translateX(-100%); }
100% { transform: translateX(100%); }
}
/* Form Groups and Fields */
.form-step {
display: none;
animation: slideIn 400ms cubic-bezier(0.16, 1, 0.3, 1);
}
.form-step.active {
display: block;
}
@keyframes slideIn {
from {
opacity: 0;
transform: translateX(16px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
.step-header {
margin-bottom: var(--space-8);
text-align: center;
}
.step-title {
font-size: var(--font-size-xl);
font-weight: var(--font-weight-bold);
color: var(--color-primary);
margin-bottom: var(--space-2);
display: flex;
align-items: center;
justify-content: center;
gap: var(--space-3);
}
.step-description {
font-size: var(--font-size-base);
color: var(--color-secondary);
max-width: 28rem;
margin: 0 auto;
}
.form-group {
margin-bottom: var(--space-6);
}
.form-label {
display: block;
font-size: var(--font-size-sm);
font-weight: var(--font-weight-semibold);
color: var(--color-primary);
margin-bottom: var(--space-2);
line-height: var(--line-height-normal);
}
.form-input,
.form-select,
.form-textarea {
width: 100%;
padding: var(--space-3) var(--space-4);
font-family: inherit;
font-size: var(--font-size-base);
line-height: var(--line-height-normal);
color: var(--color-primary);
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: var(--radius-lg);
transition: var(--transition-colors);
appearance: none;
}
.form-input:focus,
.form-select:focus,
.form-textarea:focus {
outline: none;
border-color: var(--color-accent);
box-shadow: 0 0 0 3px rgb(0 102 255 / 0.1);
}
.form-input::placeholder,
.form-textarea::placeholder {
color: var(--color-tertiary);
}
.form-textarea {
resize: vertical;
min-height: 5rem;
}
.form-select {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
background-position: right var(--space-3) center;
background-repeat: no-repeat;
background-size: 1rem 1rem;
padding-right: var(--space-10);
}
/* Navigation */
.form-navigation {
display: flex;
justify-content: space-between;
align-items: center;
margin-top: var(--space-10);
padding-top: var(--space-6);
border-top: 1px solid var(--color-divider);
}
/* Dashboard Cards */
.dashboard-container {
padding: var(--space-8);
}
.dashboard-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: var(--space-8);
flex-wrap: wrap;
gap: var(--space-4);
}
.dashboard-title {
font-size: var(--font-size-2xl);
font-weight: var(--font-weight-bold);
color: var(--color-primary);
}
.dashboard-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
gap: var(--space-6);
margin-top: var(--space-8);
}
.dashboard-card {
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: var(--radius-xl);
padding: var(--space-6);
transition: var(--transition-all);
box-shadow: var(--shadow-xs);
position: relative;
overflow: hidden;
}
.dashboard-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, var(--color-accent), var(--color-primary));
transform: scaleX(0);
transition: transform 300ms cubic-bezier(0.16, 1, 0.3, 1);
}
.dashboard-card:hover {
border-color: var(--color-border-hover);
box-shadow: var(--shadow-lg);
transform: translateY(-2px);
}
.dashboard-card:hover::before {
transform: scaleX(1);
}
.card-header {
display: flex;
align-items: center;
gap: var(--space-3);
margin-bottom: var(--space-4);
}
.card-icon {
font-size: var(--font-size-xl);
}
.card-title {
font-size: var(--font-size-lg);
font-weight: var(--font-weight-semibold);
color: var(--color-primary);
}
.card-description {
color: var(--color-secondary);
line-height: var(--line-height-relaxed);
margin-bottom: var(--space-6);
}
/* Loading Screen */
.loading-container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: var(--space-16) var(--space-8);
text-align: center;
}
.spinner {
width: var(--size-16);
height: var(--size-16);
border: 3px solid var(--color-divider);
border-top: 3px solid var(--color-accent);
border-radius: var(--radius-full);
animation: spin 1s linear infinite;
margin-bottom: var(--space-6);
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
.loading-message {
font-size: var(--font-size-lg);
font-weight: var(--font-weight-medium);
color: var(--color-primary);
margin-bottom: var(--space-2);
}
.loading-subtitle {
font-size: var(--font-size-base);
color: var(--color-secondary);
}
/* Demo Elements */
.demo-banner {
background: linear-gradient(135deg, #fef3c7, #fde68a);
border: 1px solid #f59e0b;
color: #92400e;
padding: var(--space-4);
border-radius: var(--radius-xl);
margin-bottom: var(--space-8);
text-align: center;
font-weight: var(--font-weight-medium);
}
.demo-scenarios {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
gap: var(--space-4);
margin-top: var(--space-6);
}
.demo-card {
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: var(--radius-xl);
padding: var(--space-5);
cursor: pointer;
transition: var(--transition-all);
box-shadow: var(--shadow-xs);
position: relative;
overflow: hidden;
}
.demo-card::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(135deg, var(--color-accent), var(--color-primary));
opacity: 0;
transition: opacity 300ms ease;
pointer-events: none;
}
.demo-card:hover {
border-color: var(--color-accent);
box-shadow: var(--shadow-lg);
transform: translateY(-4px);
}
.demo-card:hover::after {
opacity: 0.03;
}
.demo-card h4 {
font-size: var(--font-size-base);
font-weight: var(--font-weight-semibold);
color: var(--color-primary);
margin-bottom: var(--space-2);
}
.demo-card p {
font-size: var(--font-size-sm);
color: var(--color-secondary);
line-height: var(--line-height-relaxed);
}
/* Strategy Output */
.strategy-container {
max-width: 56rem;
margin: 0 auto;
padding: var(--space-8);
}
.strategy-header {
text-align: center;
margin-bottom: var(--space-12);
}
.strategy-title {
font-size: var(--font-size-3xl);
font-weight: var(--font-weight-bold);
color: var(--color-primary);
margin-bottom: var(--space-2);
}
.strategy-subtitle {
font-size: var(--font-size-lg);
color: var(--color-secondary);
margin-bottom: var(--space-6);
}
.strategy-actions {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: var(--space-3);
}
.strategy-section {
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: var(--radius-xl);
padding: var(--space-8);
margin-bottom: var(--space-6);
box-shadow: var(--shadow-xs);
border-left: 4px solid var(--color-accent);
}
.section-header {
display: flex;
align-items: center;
gap: var(--space-3);
margin-bottom: var(--space-6);
}
.section-icon {
width: var(--size-8);
height: var(--size-8);
background: var(--color-primary);
color: var(--color-surface);
border-radius: var(--radius-lg);
display: flex;
align-items: center;
justify-content: center;
font-size: var(--font-size-sm);
font-weight: var(--font-weight-bold);
}
.section-title {
font-size: var(--font-size-xl);
font-weight: var(--font-weight-bold);
color: var(--color-primary);
}
.section-content p {
color: var(--color-secondary);
line-height: var(--line-height-relaxed);
margin-bottom: var(--space-4);
}
.section-content ul {
color: var(--color-secondary);
padding-left: var(--space-5);
line-height: var(--line-height-relaxed);
}
.section-content li {
margin-bottom: var(--space-2);
}
/* Chart Placeholder */
.chart-placeholder {
width: 100%;
height: 12rem;
background: var(--color-bg);
border: 1px solid var(--color-border);
border-radius: var(--radius-xl);
display: flex;
align-items: center;
justify-content: center;
color: var(--color-tertiary);
font-weight: var(--font-weight-medium);
margin: var(--space-6) 0;
position: relative;
overflow: hidden;
}
.chart-placeholder::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
animation: shimmer 3s infinite;
}
/* Tags */
.tag {
display: inline-flex;
align-items: center;
padding: var(--space-1) var(--space-3);
font-size: var(--font-size-xs);
font-weight: var(--font-weight-medium);
color: var(--color-surface);
background: var(--color-primary);
border-radius: var(--radius-full);
margin-right: var(--space-2);
margin-bottom: var(--space-2);
}
/* Utility Classes */
.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;
}
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.hidden { display: none !important; }
.block { display: block; }
.flex { display: flex; }
.inline-flex { display: inline-flex; }
.grid { display: grid; }
/* Responsive Design */
@media (max-width: 640px) {
.container {
padding-left: var(--space-4);
padding-right: var(--space-4);
}
.app-header {
padding-top: var(--space-8);
margin-bottom: var(--space-8);
}
.app-header h1 {
font-size: var(--font-size-3xl);
}
.form-container {
padding: var(--space-4);
}
.dashboard-container {
padding: var(--space-4);
}
.dashboard-grid {
grid-template-columns: 1fr;
gap: var(--space-4);
}
.demo-scenarios {
grid-template-columns: 1fr;
}
.strategy-container {
padding: var(--space-4);
}
.strategy-section {
padding: var(--space-6);
}
.form-navigation {
flex-direction: column;
gap: var(--space-3);
}
.form-navigation .btn {
width: 100%;
}
.step-indicator {
margin-bottom: var(--space-4);
}
.step-label {
font-size: 0.625rem;
}
}