/*!
 * Neurodivergent-Friendly CSS Framework
 * 
 * Design principles:
 * - Low visual contrast (but sufficient readability)
 * - No animations, no bouncing, no flashing
 * - Softer, muted color palette (reduces sensory overload)
 * - Clear visual hierarchy
 * - Rounded, approachable shapes
 * - Consistent spacing
 * - Responsive from mobile to 4K displays
 */:root{--color-bg-main: #F5F2EE;--color-bg-card: #FFFFFF;--color-bg-soft: #F0EDE9;--gradient-peaceful: linear-gradient( 145deg, #E8E0D5 0%, #DCE6E0 40%, #DDDCE8 100% );--color-text-primary: #2C3E35;--color-text-secondary:#5B6F66;--color-text-muted: #8A9B91;--color-accent-soft: #9DB5A6;--color-accent-mid: #7C9A88;--color-accent-warm: #C2B2A2;--border-light: 1px solid rgba(100, 100, 90, .12);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .03), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .04), 0 2px 4px rgba(0, 0, 0, .03);--font-family: system-ui, -apple-system, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;--font-size-base: 1.125rem;--font-size-small: .95rem;--font-size-large: 1.35rem;--line-height-relaxed: 1.65;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px}*{margin:0;padding:0;box-sizing:border-box}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-primary);background:var(--gradient-peaceful);background-attachment:fixed;min-height:100vh;padding:0;margin:0;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--space-md)}@media(min-width:768px){.container{padding:0 var(--space-lg)}}@media(min-width:1200px){.container{padding:0 var(--space-xl)}}h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.3;margin-bottom:var(--space-sm);color:var(--color-text-primary);letter-spacing:-.01em}h1{font-size:2.2rem;font-weight:500}h2{font-size:1.8rem;border-left:4px solid var(--color-accent-soft);padding-left:var(--space-sm);margin-top:var(--space-lg)}h3{font-size:1.4rem}p{margin-bottom:var(--space-md);max-width:70ch}@media(min-width:768px){h1{font-size:2.6rem}h2{font-size:2rem}h3{font-size:1.6rem}}.gradient-text{background:linear-gradient(135deg,#7c9a88,#9db5a6,#b5afa0);background-clip:text;-webkit-background-clip:text;color:transparent;font-weight:500}.card{background:var(--color-bg-card);border-radius:var(--radius-md);padding:var(--space-lg);border:var(--border-light);box-shadow:var(--shadow-sm)}.card-soft{background:var(--color-bg-soft);border-radius:var(--radius-md);padding:var(--space-md)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-md);margin:var(--space-lg) 0}.button{display:inline-block;color:#fff;font-family:inherit;font-size:var(--font-size-base);font-weight:500;padding:.75rem 1.8rem;border-radius:60px;border:none;cursor:pointer;text-decoration:none;background:var(--color-accent-mid);box-shadow:var(--shadow-sm)}.button-secondary{background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-accent-soft)}.button:hover{filter:brightness(.96)}.button-secondary:hover{filter:brightness(.98);background:var(--color-bg-soft)}input,textarea,select{font-family:inherit;font-size:var(--font-size-base);padding:.75rem var(--space-sm);border:1.5px solid rgba(100,100,90,.2);border-radius:var(--radius-sm);background:var(--color-bg-card);width:100%;margin-bottom:var(--space-sm)}input:focus,textarea:focus,select:focus{outline:2px solid var(--color-accent-soft);outline-offset:2px;border-color:transparent}label{font-weight:500;margin-bottom:var(--space-xs);display:inline-block}.text-center{text-align:center}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.mt-1{margin-top:var(--space-sm)}.mt-2{margin-top:var(--space-md)}.mt-3{margin-top:var(--space-lg)}.mb-1{margin-bottom:var(--space-sm)}.mb-2{margin-bottom:var(--space-md)}.mb-3{margin-bottom:var(--space-lg)}.p-1{padding:var(--space-sm)}.p-2{padding:var(--space-md)}.p-3{padding:var(--space-lg)}.flex{display:flex;gap:var(--space-md);flex-wrap:wrap}.flex-column{display:flex;flex-direction:column;gap:var(--space-sm)}img,picture,video,canvas,svg{max-width:100%;height:auto;display:block;border-radius:var(--radius-sm)}:focus-visible{outline:3px solid var(--color-accent-mid);outline-offset:3px;border-radius:var(--radius-sm)}::selection{background:var(--color-accent-soft);color:var(--color-text-primary)}.nav{display:flex;flex-wrap:wrap;gap:var(--space-md);padding:var(--space-md) 0;border-bottom:var(--border-light);margin-bottom:var(--space-lg)}.nav a{text-decoration:none;color:var(--color-text-secondary);font-weight:500;padding:.25rem 0}.nav a:hover{color:var(--color-accent-mid)}.footer{margin-top:var(--space-xl);padding:var(--space-lg) 0;border-top:var(--border-light);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-small)}@media(min-width:768px){.card-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-lg)}}@media(min-width:1600px){.container{max-width:1600px}body{font-size:1.2rem}}@media print{body{background:#fff;color:#000}.button,.nav{display:none}}
