/* Design System - DemandLetterPro 2024 *//* CSS Reset and Base Styles */:root{/* Colors */ --color-primary:#3b82f6;--color-primary-dark:#2563eb;--color-primary-light:#60a5fa;--color-secondary:#002147;--color-secondary-dark:#001529;--color-accent:#FFC107;--color-accent-dark:#D4A106;--color-success:#28a745;--color-error:#dc3545;--color-warning:#ffc107;--color-info:#17a2b8;/* Theme Gradients */ --gradient-dark:linear-gradient(180deg,#002147 0%,#001529 100%);--gradient-hero:linear-gradient(135deg,#002147 0%,#001529 100%);--gradient-cta:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);/* Dark Theme Text */ --color-text-on-dark:#ffffff;--color-text-on-dark-muted:rgba(255,255,255,0.7);--color-text-on-dark-subtle:rgba(255,255,255,0.5);/* Dark Theme Text Opacity Variants */ --text-light-70:rgba(255,255,255,0.7);--text-light-60:rgba(255,255,255,0.6);--text-light-50:rgba(255,255,255,0.5);--text-light-40:rgba(255,255,255,0.4);--text-light-25:rgba(255,255,255,0.25);/* Gray Scale */ --color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-500:#6b7280;/* Neutral Colors */ --color-background:#f8f9fa;--color-surface:#ffffff;--color-text:#333333;--color-text-muted:#495057;--color-border:#dee2e6;/* Typography */ --font-primary:'Inter',system-ui,-apple-system,sans-serif;--font-display:'Space Grotesk',var(--font-primary);--font-mono:'SF Mono','Monaco','Inconsolata',monospace;/* Font Sizes - Based on Major Third Scale */ --text-xs:clamp(0.75rem,0.7rem + 0.25vw,0.875rem);--text-sm:clamp(0.875rem,0.8rem + 0.375vw,1rem);--text-base:clamp(1rem,0.9rem + 0.5vw,1.125rem);--text-lg:clamp(1.125rem,1rem + 0.625vw,1.25rem);--text-xl:clamp(1.25rem,1.1rem + 0.75vw,1.5rem);--text-2xl:clamp(1.5rem,1.3rem + 1vw,2rem);--text-3xl:clamp(1.875rem,1.6rem + 1.375vw,2.5rem);--text-4xl:clamp(2.25rem,1.9rem + 1.75vw,3rem);/* Spacing */ --space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--space-10:4rem;--space-12:5rem;--space-16:8rem;--space-20:10rem;/* Layout */ --container-max:1200px;--container-padding:clamp(1rem,3vw,2rem);/* Borders */ --radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;/* Shadows */ --shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1);--shadow-xl:0 25px 50px -12px rgba(0,0,0,0.5);--shadow-glow:0 10px 25px rgba(99,102,241,0.35);/* Transitions */ --transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-normal:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1);/* Z-index Scale */ --z-negative:-1;--z-elevate:1;--z-sticky:100;--z-drawer:200;--z-modal:300;--z-popover:400;--z-toast:500;/* Extended Color System */ --color-gray-50:#f8f9fa;--color-gray-100:#f1f3f5;--color-gray-200:#e9ecef;--color-gray-300:#dee2e6;--color-gray-400:#ced4da;--color-gray-500:#adb5bd;--color-gray-600:#6c757d;--color-gray-700:#495057;--color-gray-800:#343a40;--color-gray-900:#212529;--color-white:#ffffff;}/* Base Reset */*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}/* Improved Focus Styles */:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;}/* Smooth Scrolling */html{scroll-behavior:smooth;scroll-padding-top:100px;-webkit-text-size-adjust:100%;height:100%;}body{font-family:var(--font-primary);font-size:var(--text-base);line-height:1.6;color:var(--color-text);background-color:var(--color-background);min-height:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}/* Typography */h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:1.2;color:var(--color-text);margin-bottom:var(--space-4);}h1{font-size:var(--text-4xl);}h2{font-size:var(--text-3xl);}h3{font-size:var(--text-2xl);}h4{font-size:var(--text-xl);}h5{font-size:var(--text-lg);}h6{font-size:var(--text-base);}/* Links */a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast);}a:hover{color:var(--color-primary-dark);text-decoration:underline;}/* Container */.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding);}/* Grid System */.grid{display:grid;gap:var(--space-4);}/* Flexbox Utilities */.flex{display:flex;}.flex-col{flex-direction:column;}.items-center{align-items:center;}.justify-between{justify-content:space-between;}/* Buttons */.button{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-weight:600;transition:all var(--transition-normal);cursor:pointer;border:none;text-decoration:none;}.button-primary{background-color:#3b82f6;color:white;transition:all 0.2s ease;}.button-primary:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);text-decoration:none;color:white;}.button-secondary{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary);}.button-secondary:hover{background-color:var(--color-primary);color:white;text-decoration:none;}/* Ensure consistent button styles in navigation */.nav-links .button{font-size:var(--text-base);}.nav-links .button:hover{text-decoration:none;}/* Button Variants */.button-hover-lift{transition:transform var(--transition-fast),box-shadow var(--transition-fast);}.button-hover-lift:not(:disabled):hover{transform:translateY(-2px);box-shadow:var(--shadow-md);}.button-hover-lift:active{transform:translateY(0);}.button:disabled,.button.disabled{opacity:0.6;cursor:not-allowed;background:var(--color-gray-200);border-color:var(--color-gray-200);color:var(--color-gray-500);}.button-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);}/* Form Elements */.input{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-fast);}.input:focus{border-color:var(--color-primary);outline:none;}/* Cards */.card{background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-md);transition:transform var(--transition-normal),box-shadow var(--transition-normal);}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);}/* Accessibility */.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;}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:white;padding:var(--space-2) var(--space-4);z-index:var(--z-toast);transition:top var(--transition-fast);}.skip-link:focus{top:0;}/* Animations */@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}@keyframes slideUp{from{transform:translateY(20px);opacity:0;}to{transform:translateY(0);opacity:1;}}.animate-fade-in{animation:fadeIn var(--transition-normal) ease-out;}.animate-slide-up{animation:slideUp var(--transition-normal) ease-out;}/* Media Queries */@media (max-width:768px){.hide-mobile{display:none;}.grid{grid-template-columns:1fr;}}/* Print Styles */@media print{body{background:white;}.no-print{display:none;}}/* Enhanced Layout System */.layout-grid{display:grid;gap:var(--space-8);padding:var(--space-8) 0;}/* Header Styles */.header{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--color-white);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:background var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal);}/* Dark/Transparent Header for Dark Hero Sections */.header-dark{background:transparent;border-bottom:1px solid rgba(255,255,255,0.1);box-shadow:none;}.header-dark .logo-text{color:white;text-shadow:0 1px 2px rgba(0,0,0,0.3);}.header-dark .nav-link{color:white;text-shadow:0 1px 2px rgba(0,0,0,0.3);}.header-dark .nav-link:hover{color:white;opacity:0.8;}.header-dark .button-primary{background:var(--color-primary);border:none;color:white;}.header-dark .button-primary:hover{background:var(--color-primary-dark);}/* Header scrolled state (transitions from dark to light) */.header-scrolled{background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);}.header-scrolled .logo-text{color:var(--color-primary);}.header-scrolled .nav-link{color:var(--color-text);}.header-scrolled .nav-link:hover{color:var(--color-primary);}.header-scrolled .button-primary{background:var(--color-primary);border:none;}.nav-container{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;}.mobile-menu-btn{display:none;padding:8px;background:none;border:none;cursor:pointer;margin-left:auto;z-index:1001;position:relative;}.mobile-menu-btn svg{width:32px;height:32px;fill:white;transition:all 0.3s ease;}.mobile-menu-btn:hover svg{fill:rgba(255,255,255,0.8);}/* Keep hamburger white when menu is open */.mobile-menu-btn[aria-expanded="true"] svg{fill:white;}.menu-bar{display:block;width:24px;height:3px;margin:4px 0;background:var(--color-primary);transition:all 0.3s ease;border-radius:2px;}.mobile-menu-btn:hover .menu-bar{background:var(--color-primary-dark);}.nav-links{display:flex;align-items:center;gap:2rem;margin:0;padding:0;list-style:none;}/* Add margin-top to main content to account for fixed header */.main{margin-top:4rem;padding-top:2rem;}@media (max-width:768px){.mobile-menu-btn{display:flex;align-items:center;justify-content:center;}.nav-links{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100vh;background:linear-gradient(135deg,#002147 0%,#001529 100%);flex-direction:column;padding:7rem 2rem 2rem;gap:0;transform:translateX(100%);transition:transform 0.35s cubic-bezier(0.4,0,0.2,1);z-index:999;box-shadow:none;align-items:center;justify-content:flex-start;list-style:none;}.nav-links.active{transform:translateX(0);}.nav-links li{width:100%;text-align:center;list-style:none;}.nav-links li a.nav-link{font-size:1.5rem;font-weight:600;color:rgba(255,255,255,0.9) !important;text-shadow:none !important;padding:1.25rem 0;text-decoration:none;transition:color 0.2s ease,transform 0.2s ease;display:block;text-align:center;width:100%;border-bottom:1px solid rgba(255,255,255,0.1);}.nav-links li a.nav-link:hover,.nav-links li a.nav-link:active{color:white !important;}.nav-links li:nth-last-child(2) a.nav-link{border-bottom:none;}/* Mobile CTA Button */ .nav-links li:last-child{margin-top:2rem;}.nav-links .button.button-primary{display:inline-block;padding:1rem 3rem;font-size:1.125rem;font-weight:600;background:var(--color-primary);color:white !important;border-radius:var(--radius-md);text-decoration:none;transition:all 0.2s ease;box-shadow:0 4px 14px rgba(59,130,246,0.4);border:none;}.nav-links .button.button-primary:hover,.nav-links .button.button-primary:active{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 6px 20px rgba(59,130,246,0.5);}.stage-content h4{font-size:1rem;}.stage-content p{font-size:0.875rem;}.tip{font-size:1rem;}}/* Hero Section */.hero{position:relative;background:linear-gradient( 135deg,var(--color-secondary),#001529 );color:white;padding:calc(var(--space-12) + 5rem) 0 var(--space-12);overflow:hidden;margin-top:0;}.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('/images/hero-pattern.svg') center/cover;opacity:0.1;pointer-events:none;animation:pulse 10s ease-in-out infinite;}.hero-content{position:relative;z-index:1;max-width:800px;margin:0 auto;text-align:center;padding:0 var(--space-4);}.hero-title{font-size:clamp(2.5rem,5vw,4rem);line-height:1.1;margin-bottom:var(--space-6);color:white;text-shadow:0 2px 4px rgba(0,0,0,0.2);font-weight:700;letter-spacing:-0.02em;max-width:20ch;margin-left:auto;margin-right:auto;}.hero-subtitle{font-size:var(--text-xl);margin-bottom:var(--space-4);color:white;text-shadow:0 1px 2px rgba(0,0,0,0.2);opacity:0.95;font-weight:500;max-width:45ch;margin-left:auto;margin-right:auto;}.hero-text{font-size:var(--text-lg);color:rgba(255,255,255,0.9);margin-bottom:var(--space-8);max-width:65ch;line-height:1.6;text-shadow:0 1px 2px rgba(0,0,0,0.2);margin-left:auto;margin-right:auto;}.hero-cta{display:flex;gap:var(--space-4);justify-content:center;margin-bottom:var(--space-10);flex-wrap:wrap;}.hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-6);padding:var(--space-8) var(--space-4);background:rgba(255,255,255,0.1);border-radius:var(--radius-lg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);transform:translateY(0);transition:transform var(--transition-normal),box-shadow var(--transition-normal);}.hero-stats:hover{transform:translateY(-2px);box-shadow:0 20px 40px rgba(0,0,0,0.2);}.stat{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background:rgba(255,255,255,0.05);transition:transform var(--transition-normal);}.stat:hover{transform:translateY(-2px);background:rgba(255,255,255,0.08);}.stat-number{font-size:var(--text-3xl);font-weight:700;color:white;text-shadow:0 2px 4px rgba(0,0,0,0.2);font-family:var(--font-display);line-height:1;}.stat-label{font-size:var(--text-sm);color:rgba(255,255,255,0.9);text-shadow:0 1px 2px rgba(0,0,0,0.2);font-weight:500;text-align:center;line-height:1.4;}@keyframes pulse{0%,100%{opacity:0.1;}50%{opacity:0.15;}}@media (max-width:768px){.hero{padding:calc(var(--space-8) + 4rem) 0 var(--space-8);margin-top:0;}.hero-content{padding:0 var(--space-4);}.hero-title{font-size:clamp(2rem,4vw,3rem);margin-bottom:var(--space-4);}.hero-subtitle{font-size:var(--text-lg);}.hero-text{font-size:var(--text-base);margin-bottom:var(--space-6);}.hero-cta{flex-direction:column;gap:var(--space-3);padding:0 var(--space-4);}.hero-cta .button{width:100%;}.hero-stats{padding:var(--space-6) var(--space-3);gap:var(--space-4);margin:0 var(--space-4);}.stat{padding:var(--space-3);}.stat-number{font-size:var(--text-2xl);}.stat-label{font-size:var(--text-xs);}}/* Features Section */.features{background-color:var(--color-surface);padding:var(--space-12) 0;}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);margin-top:var(--space-8);}.feature-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-normal);}.feature-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:var(--space-4);color:var(--color-primary);}.feature-icon svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;}/* How It Works Section */.section-header{text-align:center;margin-bottom:var(--space-8);}.how-it-works{padding:var(--space-8) 0;background:linear-gradient(135deg,var(--color-surface),#f8fafc);position:relative;overflow:hidden;}.how-it-works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);margin-top:var(--space-4);padding:0 var(--space-4);position:relative;}.feature-card{display:flex;flex-direction:column;align-items:flex-start;padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid rgba(0,123,255,0.1);transition:all var(--transition-normal);position:relative;overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,0.05);}.feature-card h3{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin-bottom:var(--space-2);transition:color var(--transition-normal);}.feature-card p{font-size:var(--text-base);color:var(--color-text-muted);line-height:1.5;}@media (max-width:1024px){.how-it-works-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-4);}}@media (max-width:768px){.how-it-works{padding:var(--space-8) 0;}.how-it-works-grid{grid-template-columns:1fr;gap:var(--space-4);}.feature-card{padding:var(--space-4);}.feature-icon{width:40px;height:40px;margin-bottom:var(--space-3);}.feature-card h3{font-size:var(--text-lg);}.feature-card p{font-size:var(--text-sm);}}/* Real Problems Section */.use-cases{padding:var(--space-20) 0;background:linear-gradient(135deg,var(--color-secondary),#001529);color:white;position:relative;overflow:hidden;}.use-cases::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:0.1;}.use-cases .section-title,.use-cases .section-subtitle{color:white;}.use-cases .section-subtitle{opacity:0.9;}.use-cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8);margin-top:var(--space-12);padding:0 var(--space-4);position:relative;}.use-case-card{padding:var(--space-8);background:rgba(255,255,255,0.03);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,0.1);transition:all var(--transition-normal);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:relative;overflow:hidden;}.use-case-card:hover{transform:translateY(-4px);background:color-mix(in srgb,var(--color-secondary) 95%,transparent);border-color:rgba(255,255,255,0.2);box-shadow:0 12px 24px rgba(0,0,0,0.3);}.use-case-card h3{font-size:var(--text-2xl);font-weight:700;color:rgba(255,255,255,0.95);margin-bottom:var(--space-4);line-height:1.3;position:relative;z-index:1;transition:color var(--transition-normal);}.use-case-tagline{font-size:var(--text-lg);color:rgba(255,255,255,0.85);line-height:1.6;position:relative;z-index:1;transition:color var(--transition-normal);}.use-case-card:hover h3{color:rgba(255,255,255,1);}.use-case-card:hover .use-case-tagline{color:rgba(255,255,255,0.95);}@media (max-width:1024px){.how-it-works-grid,.use-cases-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-6);}}@media (max-width:768px){.how-it-works,.use-cases{padding:var(--space-12) 0;}.how-it-works-grid,.use-cases-grid{grid-template-columns:1fr;gap:var(--space-6);}.feature-card,.use-case-card{padding:var(--space-6);}.feature-icon{width:56px;height:56px;}.feature-icon svg{width:28px;height:28px;}.feature-card h3,.use-case-card h3{font-size:var(--text-xl);}.feature-card p,.use-case-tagline{font-size:var(--text-base);}}/* Testimonials Section */.testimonials{background-color:var(--color-surface);padding:var(--space-12) 0;}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);margin-top:var(--space-8);}/* Enhanced Testimonials */.testimonial-rating{display:flex;gap:var(--space-1);margin-bottom:var(--space-4);color:var(--color-accent);}.star-icon{width:20px;height:20px;}.testimonial-card{position:relative;padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-normal);}.testimonial-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);}.testimonial-card blockquote{position:relative;margin:0 0 var(--space-4) 0;font-size:var(--text-lg);color:var(--color-text);line-height:1.6;}.testimonial-card blockquote::before{content:'"';position:absolute;top:-0.5em;left:-0.5em;font-size:4em;color:color-mix(in srgb,var(--color-primary) 15%,transparent);font-family:Georgia,serif;line-height:1;z-index:1;opacity:0.5;}.testimonial-author{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border);}.author-info{display:flex;flex-direction:column;gap:var(--space-1);}.author-info cite{font-style:normal;font-weight:600;color:var(--color-text);}.author-location{font-size:var(--text-sm);color:var(--color-text-muted);}.testimonial-result{font-size:var(--text-sm);font-weight:500;color:var(--color-success);background:color-mix(in srgb,var(--color-success) 10%,transparent);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);}@media (max-width:768px){.testimonial-author{flex-direction:column;align-items:flex-start;gap:var(--space-2);}.testimonial-result{align-self:flex-start;}}/* CTA Section */.cta-section{background-color:var(--color-secondary);color:white;padding:var(--space-12) 0;text-align:center;position:relative;overflow:hidden;}.cta-section .section-title{color:white;margin-bottom:var(--space-4);font-size:var(--text-3xl);max-width:800px;margin-left:auto;margin-right:auto;}.cta-text{font-size:var(--text-xl);margin-bottom:var(--space-6);max-width:600px;margin-left:auto;margin-right:auto;}.cta-buttons{display:flex;justify-content:center;gap:var(--space-4);}/* Footer */.footer{background-color:var(--color-secondary);color:white;padding:var(--space-12) 0 var(--space-6);position:relative;overflow:hidden;}.footer::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient( to right,transparent,color-mix(in srgb,white 30%,transparent),transparent );}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-8);}.footer-brand{display:flex;flex-direction:column;gap:var(--space-4);}.footer-brand p{color:color-mix(in srgb,white 70%,transparent);font-size:var(--text-sm);max-width:300px;line-height:1.6;}.footer-social{display:flex;gap:var(--space-3);margin-top:var(--space-2);}.social-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);background:color-mix(in srgb,white 10%,transparent);color:white;transition:all var(--transition-fast);}.social-link:hover{background:color-mix(in srgb,white 20%,transparent);transform:translateY(-2px);}.social-icon{width:20px;height:20px;}.footer-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-8);}.footer-nav-group h3{color:white;font-size:var(--text-lg);margin-bottom:var(--space-4);font-weight:600;}.footer-nav-group ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2);}.footer-nav-group a{color:color-mix(in srgb,white 70%,transparent);text-decoration:none;transition:all var(--transition-fast);font-size:var(--text-sm);display:inline-block;padding:var(--space-1) 0;}.footer-nav-group a:hover{color:white;transform:translateX(4px);}.footer-legal{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding-top:var(--space-6);margin-top:var(--space-6);border-top:1px solid color-mix(in srgb,white 20%,transparent);gap:var(--space-4);}.footer-legal p{color:color-mix(in srgb,white 60%,transparent);font-size:var(--text-sm);}.footer-certifications{display:flex;gap:var(--space-4);flex-wrap:wrap;}.certification{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:color-mix(in srgb,white 80%,transparent);background:color-mix(in srgb,white 10%,transparent);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);}.cert-icon{width:16px;height:16px;color:var(--color-success);}@media (max-width:768px){.footer{padding:var(--space-8) 0 var(--space-4);}.footer-grid{gap:var(--space-6);}.footer-nav{grid-template-columns:repeat(2,1fr);gap:var(--space-6);}.footer-legal{flex-direction:column;text-align:center;}.footer-certifications{justify-content:center;}}/* Generate Page Styles */.generate-section{padding:var(--space-12) 0;background:linear-gradient( to bottom,var(--color-background),color-mix(in srgb,var(--color-background) 95%,var(--color-primary)) );}.generate-header{text-align:center;max-width:800px;margin:0 auto var(--space-12);}.section-subtitle{font-size:var(--text-lg);color:var(--color-text-muted);margin-top:var(--space-4);}/* Progress Tracker */.progress-tracker{max-width:800px;margin:0 auto var(--space-8);}.progress-bar{height:4px;background:var(--color-border);border-radius:var(--radius-full);margin-bottom:var(--space-6);overflow:hidden;}.progress-fill{height:100%;background:var(--color-primary);transition:width var(--transition-normal);}.progress-steps{display:flex;justify-content:space-between;gap:var(--space-4);}.progress-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;color:var(--color-text-muted);transition:color var(--transition-fast);}.progress-step.active{color:var(--color-primary);}.progress-step.completed{color:var(--color-success);}.step-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:2px solid currentColor;border-radius:var(--radius-full);font-weight:600;}.step-label{font-size:var(--text-sm);font-weight:500;}/* Form Container */.form-container{max-width:800px;margin:0 auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);}.letter-form{padding:var(--space-8);}.form-step{display:none;animation:fadeIn var(--transition-normal);}.form-step.active{display:block;}/* Form Elements */.form-group{margin-bottom:var(--space-6);}.form-label{display:block;font-weight:600;margin-bottom:var(--space-2);}.help-text{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-2);}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:all var(--transition-fast);}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 25%,transparent);outline:none;}.form-textarea{min-height:120px;resize:vertical;}.input-group{position:relative;display:flex;align-items:center;}.input-prefix{position:absolute;left:var(--space-3);color:var(--color-text-muted);pointer-events:none;}.input-group .form-input{padding-left:var(--space-6);}/* File Upload */.file-upload{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;transition:all var(--transition-fast);}.file-upload:hover,.file-upload.dragover,.file-upload.drag-over{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 5%,transparent);cursor:copy;}.file-input{display:none;}.file-label{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);cursor:pointer;color:var(--color-text-muted);}.upload-icon{width:40px;height:40px;color:var(--color-primary);}.upload-list{margin-top:var(--space-4);}.upload-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background-color:var(--color-gray-100);border-radius:var(--radius-md);margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--color-text);transition:background-color var(--transition-fast);}.upload-item:hover{background-color:var(--color-gray-200);}.upload-item-info{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.upload-item-delete{flex-shrink:0;width:28px;height:28px;margin-left:var(--space-3);background-color:var(--color-error);color:white;border:none;border-radius:var(--radius-md);font-size:20px;line-height:1;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;}.upload-item-delete:hover{background-color:#c82333;transform:scale(1.1);}.upload-item-delete:active{transform:scale(0.95);}/* Review Section */.review-section{background:color-mix(in srgb,var(--color-primary) 5%,transparent);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);}.review-content{margin-top:var(--space-4);}/* Checkbox Group */.checkbox-group{display:flex;gap:var(--space-3);align-items:flex-start;}.checkbox-group input[type="checkbox"]{width:20px;height:20px;margin-top:2px;}/* Form Navigation */.form-navigation{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border);}.nav-left{flex:1;}.nav-right{flex:1;display:flex;justify-content:flex-end;}.nav-right button{min-width:120px;}/* Error Messages */.error-message{color:var(--color-error);font-size:var(--text-sm);margin-top:var(--space-2);min-height:20px;}/* Required Field */.required{color:var(--color-error);}@media (max-width:768px){.generate-section{padding:var(--space-6) 0;}.letter-form{padding:var(--space-4);}.progress-steps{display:none;}.form-navigation{flex-direction:column;gap:var(--space-3);}.nav-left,.nav-right{width:100%;}.nav-left button,.nav-right button{width:100%;}.nav-right{justify-content:center;}}/* Footer Disclaimer */.footer-disclaimer{margin-top:var(--space-8);padding:var(--space-6);background:color-mix(in srgb,white 10%,transparent);border-radius:var(--radius-lg);}.disclaimer-text{font-size:var(--text-sm);color:color-mix(in srgb,white 80%,transparent);line-height:1.8;margin-bottom:var(--space-6);}.disclaimer-text:last-child{margin-bottom:0;}.disclaimer-text strong{color:white;font-weight:600;display:block;margin-bottom:var(--space-3);}@media (max-width:768px){.footer-disclaimer{margin-top:var(--space-6);padding:var(--space-4);}.disclaimer-text{margin-bottom:var(--space-6);}}/* Generated Letter Styles */.generated-letter-container{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.8);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);overflow-y:auto;animation:fadeIn 0.3s ease-out;}.letter-content{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-6);max-width:800px;width:100%;max-height:90vh;box-shadow:var(--shadow-lg);animation:slideUp 0.3s ease-out;position:relative;margin:var(--space-4) auto;display:flex;flex-direction:column;}.letter-content h2{color:var(--color-text);margin-bottom:var(--space-4);text-align:center;font-size:var(--text-2xl);padding:var(--space-4) 0;}.letter-text{white-space:pre-wrap;font-family:var(--font-primary);line-height:1.8;margin:0;padding:var(--space-6);background:var(--color-background);border-radius:var(--radius-md);border:1px solid var(--color-border);color:var(--color-text);font-size:var(--text-base);flex:1;overflow-y:auto;}.letter-footer{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border);position:sticky;bottom:0;background:var(--color-surface);z-index:1;}.letter-actions-primary{display:flex;gap:var(--space-4);justify-content:center;margin-bottom:var(--space-4);}.letter-actions-secondary{text-align:center;color:var(--color-text-secondary);}.letter-actions-secondary p{margin-bottom:var(--space-2);font-size:var(--text-sm);}.letter-actions-secondary .button{font-size:var(--text-sm);}/* Inline letter results (generate page) */.view-letter-button{width:100%;margin-top:var(--space-3);}.generated-letter-container.is-inline{position:static;background:transparent;display:block;padding:0;z-index:auto;overflow:visible;animation:none;}.generated-letter-container.is-inline .letter-content{max-width:var(--container-max);max-height:none;margin:var(--space-8) auto 0;box-shadow:var(--shadow-md);}.generated-letter-container.is-inline .letter-content h2{text-align:left;padding:0;margin:0 0 var(--space-2) 0;}.generated-letter-container.is-inline .generated-letter-subtitle{margin:0 0 var(--space-5) 0;color:var(--color-text-secondary);line-height:1.6;}.generated-letter-container.is-inline .letter-text{max-height:60vh;}.generated-letter-container.is-inline .letter-footer{position:static;}.generated-letter-container.is-inline .letter-actions-secondary{margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(135deg,#eff6ff 0%,#ffffff 60%);}.generated-letter-container.is-inline .support-prompt{margin:0 0 var(--space-3) 0;color:var(--color-text);font-weight:600;}.generated-letter-container.is-inline .donation-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:var(--space-3) 0;}.generated-letter-container.is-inline .donation-button{justify-content:center;text-align:center;font-weight:700;}.generated-letter-container.is-inline .donation-button-featured{box-shadow:var(--shadow-lg);}.generated-letter-container.is-inline .support-link{display:inline-block;margin-top:var(--space-2);color:var(--color-primary);text-decoration:none;font-weight:600;}.generated-letter-container.is-inline .support-link:hover,.generated-letter-container.is-inline .support-link:focus{text-decoration:underline;}@media (max-width:768px){.generated-letter-container{padding:var(--space-2);}.letter-content{padding:var(--space-4);margin:var(--space-2);}.letter-text{padding:var(--space-4);font-size:var(--text-sm);}.letter-actions-primary{flex-direction:column;}.letter-actions-primary .button{width:100%;}.generated-letter-container.is-inline .donation-buttons{grid-template-columns:1fr;}}@media print{.letter-actions,.letter-footer,.header,.footer,.form-container{display:none;}.letter-content{box-shadow:none;padding:0;margin:0;max-height:none;}.letter-text{border:none;padding:0;background:none;font-size:12pt;line-height:1.6;}.letter-content h2{display:none;}}.logo-text{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.5rem;color:#007bff;text-decoration:none;letter-spacing:-0.02em;transition:color 0.2s ease;}.logo-text:hover{color:#0056b3;}.footer-logo{color:#ffffff;margin-bottom:1rem;}.footer-logo:hover{color:#ffffff;}/* Use Cases Section */.use-cases{padding:var(--space-12) 0;background-color:var(--color-surface);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);}.use-cases-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);margin-top:var(--space-8);}.use-case-card{background:var(--color-surface);padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);transition:all var(--transition-normal);}.use-case-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}.use-case-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:var(--space-4);color:var(--color-primary);}.use-case-icon svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;}.use-case-card h3{font-size:var(--text-xl);margin-bottom:var(--space-3);color:var(--color-text);font-weight:600;}.use-case-card p{color:var(--color-text-muted);line-height:1.6;margin-bottom:var(--space-4);}.example-box{margin-top:var(--space-4);padding:var(--space-4);background-color:color-mix(in srgb,var(--color-primary) 5%,transparent);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text);border:1px solid color-mix(in srgb,var(--color-primary) 10%,transparent);}.example-box strong{color:var(--color-primary);font-weight:600;}/* Why We Created This Section */.why-section{padding:var(--space-12) 0;background:linear-gradient(135deg,#002147,#003366);color:var(--color-white);position:relative;overflow:hidden;}.why-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('/images/pattern.svg') center/cover;opacity:0.03;pointer-events:none;}.why-content{position:relative;max-width:1000px;margin:0 auto;}.why-intro{text-align:center;margin-bottom:var(--space-10);}.why-intro p{font-size:var(--text-xl);color:#B8C7E0;margin-bottom:var(--space-4);}.why-headline{font-size:var(--text-3xl);font-weight:700;color:white;max-width:800px;margin:0 auto;line-height:1.3;text-shadow:0 2px 4px rgba(0,0,0,0.1);}.why-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);margin:var(--space-10) 0;}.why-card{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--transition-normal);box-shadow:0 4px 6px rgba(0,0,0,0.1);}.why-card:hover{transform:translateY(-4px);background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.2);box-shadow:0 8px 12px rgba(0,0,0,0.15);}.why-card-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:var(--space-4);color:var(--color-primary);}.why-card-icon svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;}.why-card h4{font-size:var(--text-xl);color:white;margin-bottom:var(--space-3);font-weight:600;}.why-card p{color:#B8C7E0;line-height:1.7;font-size:var(--text-base);}.why-mission{text-align:center;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-10);box-shadow:0 4px 6px rgba(0,0,0,0.1);}.why-mission h3{color:white;font-size:var(--text-2xl);margin-bottom:var(--space-4);font-weight:700;}.why-mission p{font-size:var(--text-lg);color:#B8C7E0;max-width:700px;margin:0 auto var(--space-8);line-height:1.7;}.mission-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-6);margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid rgba(255,255,255,0.1);}.mission-stat{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);}.mission-stat .stat-number{font-size:var(--text-3xl);font-weight:700;color:#7FB3FF;text-shadow:0 2px 4px rgba(0,0,0,0.1);}.mission-stat .stat-label{font-size:var(--text-sm);color:#B8C7E0;font-weight:500;text-transform:uppercase;letter-spacing:0.5px;}@media (max-width:768px){.why-headline{font-size:var(--text-2xl);}.why-cards{grid-template-columns:1fr;gap:var(--space-4);}.why-mission{padding:var(--space-6);}.mission-stats{grid-template-columns:1fr;gap:var(--space-4);}.why-intro p{font-size:var(--text-lg);}}.why-section .section-title{color:white;text-shadow:0 2px 4px rgba(0,0,0,0.1);margin-bottom:var(--space-8);}/* Review and Loading Styles */.review-summary{max-width:800px;margin:0 auto;padding:20px;}.summary-section{background:#f8f9fa;border-radius:8px;padding:20px;margin-bottom:20px;}.summary-section h4{color:#2c3e50;margin-bottom:15px;border-bottom:2px solid #e9ecef;padding-bottom:8px;}.summary-text{white-space:pre-wrap;background:white;padding:10px;border-radius:4px;border:1px solid #e9ecef;}.loading-notice{text-align:center;margin-top:30px;padding:20px;}.loading-spinner{display:inline-block;width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px;}.loading-subtext{color:#525252;font-size:0.9em;margin-top:10px;max-width:400px;margin-left:auto;margin-right:auto;}@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}/* State and Category Pages */.page-hero{text-align:center;padding:10rem 0 6rem;background:var(--gradient-hero);color:white;margin-bottom:4rem;margin-top:0;}.page-hero h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;margin-bottom:1.5rem;color:white;line-height:1.2;max-width:1000px;margin-left:auto;margin-right:auto;}.hero-subtitle{max-width:800px;margin:2rem auto;font-size:1.25rem;line-height:1.6;color:rgba(255,255,255,0.9);}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin:4rem auto;max-width:1200px;text-align:center;background:rgba(255,255,255,0.1);padding:3rem;border-radius:1rem;backdrop-filter:blur(10px);}.stat-item{display:flex;flex-direction:column;align-items:center;}.stat-number{font-size:3.5rem;font-weight:700;color:white;margin-bottom:1rem;line-height:1;}.stat-label{font-size:1.125rem;color:rgba(255,255,255,0.9);font-weight:500;line-height:1.4;}.requirements-section{padding:4rem 0;background:var(--color-background);}.requirements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem;}.requirement-item{background:white;padding:2rem;border-radius:1rem;box-shadow:0 4px 6px rgba(0,0,0,0.1);}.requirement-item h3{color:var(--color-primary);font-size:1.5rem;margin-bottom:1rem;}.legal-section{padding:4rem 0;}.legal-content{font-size:1.125rem;line-height:1.6;max-width:800px;margin:2rem auto;}.success-section{padding:4rem 0;background:var(--color-background);}.success-stories{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem;}.success-story{background:white;padding:2rem;border-radius:1rem;box-shadow:0 4px 6px rgba(0,0,0,0.1);}.success-story blockquote{font-size:1.125rem;line-height:1.6;margin-bottom:1.5rem;color:var(--color-text);}.story-meta{display:flex;justify-content:space-between;color:var(--color-text-muted);}.faq-section{padding:4rem 0;}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem;}.faq-item{background:white;padding:2rem;border-radius:1rem;box-shadow:0 4px 6px rgba(0,0,0,0.1);}.faq-item h3{color:var(--color-primary);font-size:1.25rem;margin-bottom:1rem;}@media (max-width:768px){.page-hero{padding:8rem 1rem 4rem;margin-top:0;}.stats-grid{padding:2rem 1rem;margin:2rem auto;}.requirements-grid,.success-stories,.faq-grid{grid-template-columns:1fr;padding:0 1rem;}}/* Terms Acceptance Styles */.terms-acceptance{margin-bottom:1.5rem;}.checkbox-wrapper{display:flex;align-items:flex-start;gap:0.75rem;margin-bottom:0.5rem;}.form-checkbox{width:1.25rem;height:1.25rem;margin-top:0.25rem;border:2px solid var(--color-border);border-radius:4px;cursor:pointer;transition:all 0.2s ease;}.form-checkbox:checked{background-color:var(--color-primary);border-color:var(--color-primary);}.checkbox-label{font-size:var(--text-sm);font-weight:600;line-height:1.5;color:var(--color-text);}.checkbox-label a{color:var(--color-primary);text-decoration:underline;transition:color 0.2s ease;}.checkbox-label a:hover{color:var(--color-primary-dark);}#termsError{color:var(--color-error);font-size:0.875rem;margin-top:0.25rem;}/* Adjust form navigation spacing */.form-navigation{margin-top:2rem;}.nav-right{display:flex;flex-direction:column;gap:1rem;}/* Terms of Service Page Styles */.terms-content{max-width:800px;margin:4rem auto;padding:2rem;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);}.terms-content h1{text-align:center;margin-bottom:2rem;color:var(--color-text);}.terms-intro{font-size:var(--text-lg);color:var(--color-text-muted);text-align:center;margin-bottom:1.5rem;}.terms-date{text-align:center;color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:3rem;}.terms-content section{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--color-border);}.terms-content h2{color:var(--color-primary);font-size:var(--text-xl);margin-bottom:1.5rem;}.terms-content h3{color:var(--color-text);font-size:var(--text-lg);margin:2rem 0 1rem;}.terms-content p{margin-bottom:1rem;line-height:1.6;}.terms-content ul{margin:1rem 0;padding-left:1.5rem;}.terms-content li{margin-bottom:0.5rem;line-height:1.6;}.important-notice{background:color-mix(in srgb,var(--color-error) 10%,transparent);border:1px solid var(--color-error);border-radius:var(--radius-md);padding:1.5rem;margin:1.5rem 0;}.important-notice strong{color:var(--color-error);}.important-notice p{margin:0;font-weight:600;}.final-disclaimer{background:color-mix(in srgb,var(--color-error) 15%,transparent);border:2px solid var(--color-error);border-radius:var(--radius-md);padding:2rem;margin:3rem 0;}.final-disclaimer h2{color:var(--color-error);text-align:center;margin-bottom:1rem;}.final-disclaimer p{margin:0;text-align:center;font-size:var(--text-lg);}.terms-footer{text-align:center;font-size:var(--text-lg);color:var(--color-text-muted);margin-top:3rem;}@media (max-width:768px){.terms-content{margin:2rem auto;padding:1.5rem;}.terms-content h1{font-size:var(--text-2xl);}.terms-intro{font-size:var(--text-base);}.final-disclaimer{padding:1.5rem;}.final-disclaimer p{font-size:var(--text-base);}}.hero-text{font-size:var(--text-lg);color:rgba(255,255,255,0.9);margin-bottom:var(--space-6);max-width:65ch;line-height:1.6;text-shadow:0 1px 2px rgba(0,0,0,0.2);}@media (max-width:768px){.hero-text{font-size:var(--text-base);margin-bottom:var(--space-4);}.cta-section{padding:var(--space-8) var(--space-4);}.cta-section .section-title{font-size:var(--text-2xl);}.cta-text{font-size:var(--text-lg);}}/* Section Styles */.section-header{text-align:center;margin-bottom:var(--space-8);}.section-title{font-size:var(--text-4xl);font-weight:700;color:var(--color-text);margin-bottom:var(--space-4);}.section-subtitle{font-size:var(--text-xl);color:var(--color-text-muted);max-width:600px;margin:0 auto;}/* =========================================== VIEW STATE SYSTEM - Generate Page =========================================== *//* View transition timing */.generate-section{--view-transition-duration:400ms;--view-transition-easing:cubic-bezier(0.4,0,0.2,1);}/* Form State Container */.form-state-container{transition:opacity var(--view-transition-duration) var(--view-transition-easing),transform var(--view-transition-duration) var(--view-transition-easing);}/* View State:Form (default) */.generate-section[data-view-state="form"] #letterHeroSection,.generate-section[data-view-state="form"] #editFormSection,.generate-section[data-view-state="form"] #startOverBtn{display:none;}.generate-section[data-view-state="form"] #formStateContainer{display:block !important;max-height:none !important;opacity:1 !important;overflow:visible !important;}/* View State:Results */.generate-section[data-view-state="results"] #formStateContainer:not(.expanded-in-results){display:none;}.generate-section[data-view-state="results"] #letterHeroSection,.generate-section[data-view-state="results"] #editFormSection{display:block;animation:fadeSlideIn var(--view-transition-duration) var(--view-transition-easing) forwards;}/* Fade/Slide Animation */@keyframes fadeSlideIn{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}/* Reduced motion support */@media (prefers-reduced-motion:reduce){.generate-section,.letter-hero-section,.edit-form-section,.collapsible-form-content,.form-state-container{animation:none !important;transition:opacity 0.01ms !important;}}/* =========================================== SESSION RESTORE BANNER =========================================== */.session-restore-banner{margin-bottom:var(--space-6);animation:slideDown var(--transition-normal) ease-out;}@keyframes slideDown{from{opacity:0;transform:translateY(-20px);}to{opacity:1;transform:translateY(0);}}.session-restore-content{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:linear-gradient(135deg,#eff6ff 0%,#ffffff 60%);border:1px solid var(--color-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);}.session-restore-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--color-primary);color:white;border-radius:var(--radius-md);flex-shrink:0;}.session-restore-text{flex:1;}.session-restore-text strong{display:block;font-size:var(--text-lg);color:var(--color-text);margin-bottom:var(--space-1);}.session-restore-text span{font-size:var(--text-sm);color:var(--color-text-muted);}.session-restore-actions{display:flex;gap:var(--space-3);flex-shrink:0;}/* =========================================== LETTER HERO SECTION =========================================== */.letter-hero-section{padding-bottom:var(--space-8);}.letter-hero-header{text-align:center;margin-bottom:var(--space-8);}.letter-hero-title{font-size:var(--text-3xl);font-weight:700;color:var(--color-text);margin-bottom:var(--space-3);}.letter-hero-subtitle{font-size:var(--text-lg);color:var(--color-text-muted);max-width:600px;margin:0 auto;}/* Letter Display Card */.letter-display-card{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:var(--space-6);}.letter-text-wrapper{padding:var(--space-8);max-height:70vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-gray-300) transparent;}.letter-text-wrapper::-webkit-scrollbar{width:8px;}.letter-text-wrapper::-webkit-scrollbar-track{background:transparent;}.letter-text-wrapper::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:4px;}.letter-text-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400);}.letter-text-content{font-family:var(--font-primary);font-size:var(--text-base);line-height:1.8;color:var(--color-text);white-space:pre-wrap;word-wrap:break-word;margin:0;padding:0;background:none;border:none;}/* Focus state for keyboard navigation */.letter-text-content:focus{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:var(--radius-md);}/* =========================================== DONATION FOOTER (Results Page) =========================================== */.donation-footer{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:linear-gradient(145deg,#001B3D,#002855);border-top:1px solid rgba(59,130,246,0.3);box-shadow:0 -8px 32px rgba(0,0,0,0.4);padding:var(--space-4) var(--space-6);animation:donationFooterSlideUp 0.4s ease-out;}@keyframes donationFooterSlideUp{from{transform:translateY(100%);opacity:0;}to{transform:translateY(0);opacity:1;}}.donation-footer-inner{max-width:800px;margin:0 auto;}.donation-footer-headline{text-align:center;color:rgba(255,255,255,0.9);font-size:var(--text-base);font-weight:500;margin:0 0 var(--space-3) 0;}.donation-footer-row{display:flex;align-items:center;justify-content:center;gap:var(--space-4);}.donation-footer-tiers{display:flex;gap:var(--space-2);}/* Tier buttons with vertical layout */.donation-tier{display:flex;flex-direction:column;align-items:center;padding:var(--space-2) var(--space-4);background:rgba(255,255,255,0.05);border:2px solid rgba(255,255,255,0.1);border-radius:var(--radius-lg);cursor:pointer;transition:all 0.15s ease;min-width:70px;position:relative;}.donation-tier:hover{background:rgba(255,255,255,0.08);border-color:rgba(59,130,246,0.4);}.donation-tier.selected{background:rgba(59,130,246,0.15);border-color:#3b82f6;}.donation-tier-featured{box-shadow:0 0 20px rgba(59,130,246,0.2);}.tier-badge{position:absolute;top:-8px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#3b82f6,#2563eb);color:white;font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:0.02em;}.tier-amount{font-size:var(--text-lg);font-weight:700;color:#fff;line-height:1.2;}.tier-impact{font-size:10px;color:rgba(255,255,255,0.5);white-space:nowrap;margin-top:2px;}/* Custom amount tier */.donation-tier-custom{flex-direction:row;gap:2px;padding:var(--space-2) var(--space-3);min-width:95px;}.donation-tier-custom .tier-amount{font-size:var(--text-base);color:rgba(255,255,255,0.5);}.donation-tier-custom input{width:70px;border:none;background:transparent;font-size:var(--text-base);font-weight:600;color:#fff;outline:none;padding:0;}/* Hide number input spinners */.donation-tier-custom input::-webkit-outer-spin-button,.donation-tier-custom input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}.donation-tier-custom input[type=number]{-moz-appearance:textfield;}.donation-tier-custom input::placeholder{color:rgba(255,255,255,0.4);}.donation-tier-custom:focus-within{border-color:#3b82f6;background:rgba(59,130,246,0.1);}/* Actions section */.donation-footer-actions{display:flex;align-items:center;gap:var(--space-3);}/* Recurring toggle */.donation-footer-recurring{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;user-select:none;white-space:nowrap;}.donation-footer-recurring input[type="checkbox"]{display:none;}.donation-footer-toggle{width:40px;height:22px;background:rgba(255,255,255,0.15);border-radius:11px;position:relative;transition:all 0.2s ease;flex-shrink:0;}.donation-footer-toggle::after{content:'';position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:all 0.2s ease;box-shadow:0 1px 3px rgba(0,0,0,0.3);}.donation-footer-recurring input:checked + .donation-footer-toggle{background:linear-gradient(135deg,#3b82f6,#2563eb);}.donation-footer-recurring input:checked + .donation-footer-toggle::after{transform:translateX(18px);}.donation-footer-recurring .toggle-text{font-size:var(--text-xs);color:rgba(255,255,255,0.7);font-weight:500;}/* CTA Button */.donation-footer-cta{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);background:linear-gradient(135deg,#3b82f6,#2563eb);color:white;font-size:var(--text-sm);font-weight:600;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all 0.2s ease;white-space:nowrap;}.donation-footer-cta:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(59,130,246,0.4);}.donation-footer-cta svg{flex-shrink:0;}/* Hide donation footer in form state */.generate-section[data-view-state="form"] .donation-footer{display:none;}/* Ensure letter content has bottom padding for sticky footer */.generate-section[data-view-state="results"] .letter-display-card{margin-bottom:120px;}/* =========================================== RESULTS VIEW - DARK THEME =========================================== *//* Dark navy background for results view */.generate-section[data-view-state="results"]{background:var(--gradient-dark);min-height:100vh;}/* White text for hero on dark background */.generate-section[data-view-state="results"] .letter-hero-title{color:var(--color-text-on-dark);}.generate-section[data-view-state="results"] .letter-hero-subtitle{color:var(--color-text-on-dark-muted);}/* Letter card styling on dark background */.generate-section[data-view-state="results"] .letter-display-card{background:var(--color-surface);border:1px solid rgba(59,130,246,0.2);box-shadow:0 25px 50px -12px rgba(0,0,0,0.5);}/* Action bar on dark background */.generate-section[data-view-state="results"] .letter-action-bar{background:linear-gradient( to bottom,rgba(0,33,71,0.95) 0%,rgba(0,33,71,0.8) 90%,transparent 100% );}.generate-section[data-view-state="results"] .letter-action-bar-inner{background:linear-gradient(145deg,#001B3D,#002855);border:1px solid rgba(59,130,246,0.2);}.generate-section[data-view-state="results"] .action-btn{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.15);color:white;}.generate-section[data-view-state="results"] .action-btn:hover{background:rgba(59,130,246,0.15);border-color:var(--color-primary);color:white;}.generate-section[data-view-state="results"] .action-btn-primary{background:var(--gradient-cta);border-color:transparent;}.generate-section[data-view-state="results"] .action-btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);}/* =========================================== STICKY ACTION BAR =========================================== */.letter-action-bar{position:sticky;top:80px;/* Account for fixed header */ z-index:100;margin-bottom:var(--space-6);padding:var(--space-3) 0;background:linear-gradient( to bottom,var(--color-background) 0%,var(--color-background) 90%,transparent 100% );}.letter-action-bar-inner{display:flex;justify-content:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border);}.action-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-weight:600;font-size:var(--text-base);cursor:pointer;border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);transition:all var(--transition-fast);}.action-btn:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm);}.action-btn:active{transform:translateY(0);}.action-btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:white;}.action-btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:white;}.action-icon{width:20px;height:20px;flex-shrink:0;}/* Copy success state */.action-btn[data-copied="true"]{background:var(--color-success);border-color:var(--color-success);color:white;}.action-btn[data-copied="true"] .action-icon{animation:checkPop 300ms ease-out;}@keyframes checkPop{0%{transform:scale(0);}50%{transform:scale(1.2);}100%{transform:scale(1);}}/* =========================================== COLLAPSIBLE FORM SECTION =========================================== */.edit-form-section{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border);}.edit-form-toggle{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-lg);font-weight:600;color:var(--color-text);cursor:pointer;transition:all var(--transition-fast);}.edit-form-toggle:hover{background:var(--color-gray-50);border-color:var(--color-primary);color:var(--color-primary);}.edit-form-toggle[aria-expanded="true"]{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:transparent;}.edit-form-toggle-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:transform var(--transition-fast);}.edit-form-toggle[aria-expanded="true"] .edit-form-toggle-icon{transform:rotate(180deg);}/* Form container collapsed state (in results view) */.form-state-container.collapsed-in-results{max-height:0;overflow:hidden;opacity:0;padding:0 !important;margin:0 !important;transition:max-height 0.5s cubic-bezier(0.4,0,0.2,1),opacity var(--transition-normal),padding var(--transition-normal);}/* Form container expanded state (in results view) */.form-state-container.expanded-in-results{max-height:3000px;overflow:visible;opacity:1;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-top:var(--space-4);padding:var(--space-6);transition:max-height 0.5s cubic-bezier(0.4,0,0.2,1),opacity var(--transition-normal),padding var(--transition-normal);}/* Hide header/motivation when form is expanded in results view */.form-state-container.expanded-in-results .generate-header,.form-state-container.expanded-in-results .motivation-box{display:none;}/* Adjust form styling when expanded in results view */.form-state-container.expanded-in-results .form-container{box-shadow:none;border:none;margin:0 auto;padding:0;max-width:800px;}/* Start Over Button */.start-over-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;margin-top:var(--space-4);padding:var(--space-4);font-size:var(--text-base);}.start-over-btn svg{flex-shrink:0;}/* =========================================== MOBILE OPTIMIZATIONS =========================================== */@media (max-width:768px){/* Session Restore Banner - Stack on Mobile */ .session-restore-content{flex-direction:column;text-align:center;}.session-restore-actions{width:100%;flex-direction:column;}.session-restore-actions .button{width:100%;}/* Letter Hero on Mobile */ .letter-hero-header{padding:0 var(--space-4);margin-bottom:var(--space-6);}.letter-hero-title{font-size:var(--text-2xl);}.letter-hero-subtitle{font-size:var(--text-base);}/* Sticky Action Bar - Full Width Bottom on Mobile */ .letter-action-bar{position:fixed;top:auto;bottom:0;left:0;right:0;padding:var(--space-3) var(--space-4);background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:0 -4px 12px rgba(0,0,0,0.1);z-index:100;margin-bottom:0;}.letter-action-bar-inner{border-radius:0;box-shadow:none;border:none;padding:0;justify-content:space-around;}.action-btn{flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border:none;background:transparent;}.action-btn:hover{transform:none;box-shadow:none;}.action-btn-primary{background:transparent;color:var(--color-primary);}.action-btn-primary:hover{background:transparent;color:var(--color-primary);}/* Account for bottom action bar */ .letter-display-card{margin-bottom:100px;/* Space for fixed bottom bar */}/* Donation footer on mobile - inline,not sticky */ .donation-footer{position:relative;margin:var(--space-4) 0;margin-bottom:80px;/* Space for action bar */ border-top:none;box-shadow:0 4px 20px rgba(0,0,0,0.15);background:linear-gradient(145deg,#001B3D,#002855);border-radius:var(--radius-lg);border:1px solid rgba(59,130,246,0.2);padding:var(--space-4);animation:none;/* Disable slide-up on mobile */}.donation-footer-headline{font-size:var(--text-sm);margin-bottom:var(--space-2);}.donation-footer-row{flex-direction:column;gap:var(--space-3);}.donation-footer-tiers{width:100%;justify-content:center;flex-wrap:wrap;}.donation-tier{flex:1;min-width:65px;padding:var(--space-2) var(--space-3);}.tier-amount{font-size:var(--text-base);}.donation-footer-actions{width:100%;justify-content:center;gap:var(--space-4);}.donation-footer-cta{padding:var(--space-2) var(--space-4);}/* Letter text wrapper */ .letter-text-wrapper{padding:var(--space-4);max-height:60vh;}/* Touch-friendly targets */ .edit-form-toggle{min-height:56px;}.start-over-btn{min-height:48px;}/* Thumb zone optimization */ .form-state-container.expanded-in-results{padding:var(--space-4);}}/* Safe area insets for modern phones (notch,etc.) */@supports (padding-bottom:env(safe-area-inset-bottom)){@media (max-width:768px){.letter-action-bar{padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom));}.letter-display-card{margin-bottom:calc(100px + env(safe-area-inset-bottom));}.donation-footer{margin-bottom:calc(80px + env(safe-area-inset-bottom));}}}/* =========================================== TOAST NOTIFICATIONS =========================================== */.toast-notification{position:fixed;top:100px;left:50%;transform:translateX(-50%) translateY(-20px);z-index:10000;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--color-surface);border-radius:var(--radius-full);box-shadow:0 8px 32px rgba(0,0,0,0.15),0 2px 8px rgba(0,0,0,0.1);opacity:0;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);pointer-events:none;}.toast-notification.toast-visible{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;}.toast-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:14px;font-weight:700;}.toast-success .toast-icon{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:white;}.toast-error .toast-icon{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);color:white;}.toast-info .toast-icon{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);color:white;}.toast-message{font-size:var(--text-sm);font-weight:500;color:var(--color-text);white-space:nowrap;}/* =========================================== LETTER REGENERATION ANIMATION =========================================== */@keyframes letterRegeneratedFlash{0%{box-shadow:var(--shadow-lg);}25%{box-shadow:0 0 0 4px rgba(16,185,129,0.3),0 8px 32px rgba(16,185,129,0.2),var(--shadow-lg);}50%{box-shadow:0 0 0 8px rgba(16,185,129,0.15),0 12px 40px rgba(16,185,129,0.25),var(--shadow-lg);}100%{box-shadow:var(--shadow-lg);}}@keyframes letterContentFadeIn{0%{opacity:0.5;}100%{opacity:1;}}.letter-display-card.letter-regenerated{animation:letterRegeneratedFlash 1s ease-out;}.letter-display-card.letter-regenerated .letter-text-content{animation:letterContentFadeIn 0.5s ease-out;}/* Reduced motion preference */@media (prefers-reduced-motion:reduce){.toast-notification{transition:opacity 0.2s ease;}.toast-notification.toast-visible{transform:translateX(-50%) translateY(0);}.letter-display-card.letter-regenerated{animation:none;box-shadow:0 0 0 4px rgba(16,185,129,0.3),var(--shadow-lg);}.letter-display-card.letter-regenerated .letter-text-content{animation:none;}}/* Mobile toast positioning */@media (max-width:768px){.toast-notification{top:auto;bottom:160px;left:var(--space-4);right:var(--space-4);transform:translateY(20px);max-width:none;}.toast-notification.toast-visible{transform:translateY(0);}}/* =========================================== REUSABLE COMPONENT CLASSES =========================================== *//* Card Components */.card-elevated{background:linear-gradient(145deg,#001B3D,#002855);border:1px solid rgba(59,130,246,0.2);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);padding:var(--space-6);}.card-hover{transition:transform var(--transition-fast),box-shadow var(--transition-fast);}.card-hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-glow);}.card-light{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-5);}/* Gradient Utilities */.gradient-text{background:var(--gradient-cta);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.bg-gradient-dark{background:var(--gradient-dark);}.bg-gradient-light{background:linear-gradient(135deg,var(--color-background),#f8fafc);}/* Dark Theme Text Utilities */.text-on-dark{color:var(--color-text-on-dark);}.text-on-dark-muted{color:var(--color-text-on-dark-muted);}.text-on-dark-subtle{color:var(--color-text-on-dark-subtle);}/* Form Validation States */.form-input.invalid,.form-select.invalid,.form-textarea.invalid{border-color:var(--color-error);background-color:color-mix(in srgb,var(--color-error) 5%,white);}.form-input.valid,.form-select.valid,.form-textarea.valid{border-color:var(--color-success);}.field-error{color:var(--color-error);font-size:var(--text-sm);margin-top:var(--space-1);min-height:1.25rem;}/* Verification Status Component */.verification-status{text-align:center;padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);background:var(--color-gray-100);color:var(--color-text-muted);transition:all var(--transition-normal);}.verification-status.success{background:#ecfdf5;color:#065f46;}.verification-status.pending{background:#fffbeb;color:#92400e;}.verification-status.error{background:#fef2f2;color:#991b1b;}/* Toggle Switch Component */.toggle-switch{width:44px;height:24px;background:rgba(255,255,255,0.15);border-radius:12px;position:relative;cursor:pointer;transition:background var(--transition-fast);flex-shrink:0;}.toggle-switch::after{content:'';position:absolute;top:2px;left:2px;width:20px;height:20px;background:white;border-radius:50%;transition:transform var(--transition-fast);box-shadow:var(--shadow-sm);}.toggle-switch.active{background:var(--color-primary);}.toggle-switch.active::after{transform:translateX(20px);}/* Light theme toggle variant */.toggle-switch-light{background:var(--color-gray-200);}.toggle-switch-light.active{background:var(--color-primary);}/* Custom Radio Button */.radio-custom{width:18px;height:18px;border:2px solid var(--color-border);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;}.radio-custom.selected{border-color:var(--color-primary);background:var(--color-primary);}.radio-custom.selected::after{content:'';width:6px;height:6px;background:white;border-radius:50%;}/* Dark theme radio variant */.radio-custom-dark{border-color:rgba(255,255,255,0.25);}.radio-custom-dark.selected{border-color:var(--color-primary);background:var(--color-primary);}/* =========================================== FOCUS STATES STANDARDIZATION =========================================== *//* Global Focus States */:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;}/* Button Focus */.button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;box-shadow:0 0 0 4px rgba(59,130,246,0.2);}/* Form Input Focus */.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(59,130,246,0.1);outline:none;}/* Card/Interactive Element Focus */.card-hover:focus-visible,[role="button"]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;}/* Link Focus */a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm);}/* Remove focus outline for mouse users */:focus:not(:focus-visible){outline:none;}