:root{--primary:#4f46e5;--primary-light:#e0e7ff;--primary-dark:#4338ca;--primary-rgb:79,70,229;--success:#10b981;--success-light:#d1fae5;--success-dark:#059669;--danger:#ef4444;--danger-light:#fee2e2;--danger-dark:#dc2626;--info:#3b82f6;--info-light:#dbeafe;--info-dark:#2563eb;--neutral-100:#f3f4f6;--neutral-200:#e5e7eb;--neutral-300:#d1d5db;--neutral-400:#9ca3af;--neutral-500:#6b7280;--neutral-600:#4b5563;--neutral-700:#374151;--neutral-800:#1f2937;--neutral-900:#111827;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:1rem;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--transition-normal:0.2s ease;--transition-slow:0.3s ease;--pillar-1:#26a69a;--pillar-2:#ec407a;--pillar-3:#5c6bc0;--pillar-4:#8d6e63;--pillar-5:#7cb342;--font-family-heading:"Montserrat",sans-serif;--font-family-body:"Open Sans",sans-serif;--z-below:-1;--z-normal:1;--z-above:10;--z-modal:100;--z-toast:1000}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;color:var(--neutral-800);background-color:#fff;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);color:var(--neutral-600);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h1{font-size:2.5rem;color:var(--primary-dark)}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:var(--spacing-md)}a{color:var(--primary);text-decoration:none;transition:color var(--transition-normal)}a:hover{color:var(--primary-dark);text-decoration:underline}img{max-width:100%;height:auto}.button,button{cursor:pointer;font-family:var(--font-family-body);font-weight:600;font-size:1rem;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);border:none;background-color:var(--primary);color:#fff;transition:all var(--transition-normal);display:inline-flex;align-items:center;justify-content:center;text-align:center}.button:hover,button:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.button:active,button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.button:disabled,button:disabled{background-color:var(--neutral-300);color:var(--neutral-400);cursor:not-allowed;transform:none;box-shadow:none}input,select,textarea{font-family:var(--font-family-body);font-size:1rem;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--neutral-300);border-radius:var(--radius-md);background-color:var(--neutral-100);width:100%;transition:border-color var(--transition-normal)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(106,27,154,.2)}label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--neutral-600)}ol,ul{padding-left:var(--spacing-xl);margin-bottom:var(--spacing-md)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.row{display:flex;flex-wrap:wrap;margin:0 calc(var(--spacing-md)*-1)}.col{flex:1 0}.col,.col-auto{padding:0 var(--spacing-md)}.col-auto{flex:0 0 auto;width:auto}.grid{display:grid;grid-gap:var(--spacing-md);gap:var(--spacing-md)}.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(1,1fr)}@media (min-width:768px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width:992px){.grid-4{grid-template-columns:repeat(4,1fr)}}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.mt-5{margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:var(--spacing-xl)}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-1{padding:var(--spacing-xs)}.p-2{padding:var(--spacing-sm)}.p-3{padding:var(--spacing-md)}.p-4{padding:var(--spacing-lg)}.p-5{padding:var(--spacing-xl)}.navbar{background-color:var(--neutral-100);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:var(--z-above)}.navbar-container{justify-content:space-between;padding:var(--spacing-md) var(--spacing-md);max-width:1200px;margin:0 auto}.navbar-container,.navbar-logo{display:flex;align-items:center}.navbar-logo{font-family:var(--font-family-heading);font-size:1.5rem;font-weight:700;color:var(--primary);text-decoration:none}.navbar-logo img{height:40px;margin-right:var(--spacing-sm)}.navbar-menu{display:none;list-style:none;margin:0;padding:0}.navbar-menu.active{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background-color:var(--neutral-100);box-shadow:var(--shadow-md);padding:var(--spacing-md)}.navbar-item{margin:0 var(--spacing-sm)}.navbar-link{display:block;padding:var(--spacing-sm);color:var(--neutral-600);font-weight:600;text-decoration:none;transition:color var(--transition-normal)}.navbar-link:hover{color:var(--primary);text-decoration:none}.navbar-link.active{color:var(--primary);position:relative}.navbar-link.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background-color:var(--primary);border-radius:var(--radius-pill)}.navbar-toggle{display:block;background:none;border:none;color:var(--neutral-600);font-size:1.5rem;padding:var(--spacing-xs);cursor:pointer}.navbar-cta{background-color:var(--secondary);color:var(--neutral-100);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:600;transition:all var(--transition-normal)}.navbar-cta:hover{background-color:var(--secondary-light);transform:translateY(-2px);box-shadow:var(--shadow-sm);text-decoration:none;color:var(--neutral-100)}@media (min-width:768px){.navbar-toggle{display:none}.navbar-menu{display:flex;flex-direction:row}.navbar-menu.active{position:static;box-shadow:none;padding:0}}.child-selector{background-color:var(--neutral-100);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md)}.child-selector label{margin-right:var(--spacing-sm)}.child-selector select{flex:1 1;margin-bottom:0}.card{background-color:var(--neutral-100);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.card-header{border-bottom:1px solid var(--neutral-300);background-color:var(--neutral-200)}.card-body,.card-footer,.card-header{padding:var(--spacing-md)}.card-footer{border-top:1px solid var(--neutral-300);background-color:var(--neutral-200)}.pillar-card{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),box-shadow var(--transition-normal);height:100%;display:flex;flex-direction:column}.pillar-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.pillar-card-1{border-top:5px solid var(--pillar-1)}.pillar-card-2{border-top:5px solid var(--pillar-2)}.pillar-card-3{border-top:5px solid var(--pillar-3)}.pillar-card-4{border-top:5px solid var(--pillar-4)}.pillar-card-5{border-top:5px solid var(--pillar-5)}.pillar-card-body,.pillar-card-header{padding:var(--spacing-md);background-color:var(--neutral-100)}.pillar-card-body{flex:1 1}.pillar-card-footer{padding:var(--spacing-md);background-color:var(--neutral-200);display:flex;justify-content:space-between;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:all var(--transition-normal)}.btn:hover{text-decoration:none}.btn-primary{background-color:var(--primary)}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--secondary);color:var(--neutral-100)}.btn-secondary:hover{background-color:var(--secondary-light);color:var(--neutral-100)}.btn-outline{background-color:initial;border:2px solid var(--primary);color:var(--primary)}.btn-outline:hover{background-color:var(--primary);color:var(--neutral-100)}.btn-success{background-color:var(--success);color:#fff}.btn-success:hover{background-color:var(--success-dark)}.btn-danger{background-color:var(--danger);color:var(--neutral-100)}.btn-danger:hover{background-color:var(--danger-dark);color:var(--neutral-100)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:1.125rem}.btn-block{display:block;width:100%}.progress-container{width:100%;height:12px;background-color:var(--neutral-300);border-radius:var(--radius-pill);overflow:hidden;margin-bottom:var(--spacing-sm)}.progress-bar{height:100%;background-color:var(--primary);transition:width var(--transition-slow)}.progress-bar-1{background-color:var(--pillar-1)}.progress-bar-2{background-color:var(--pillar-2)}.progress-bar-3{background-color:var(--pillar-3)}.progress-bar-4{background-color:var(--pillar-4)}.progress-bar-5{background-color:var(--pillar-5)}.progress-label{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:var(--spacing-xs)}.premium-badge{display:inline-flex;align-items:center;background-color:var(--secondary);color:var(--neutral-100);font-size:.75rem;font-weight:700;padding:2px var(--spacing-xs);border-radius:var(--radius-sm);margin-left:var(--spacing-xs)}.premium-badge:before{content:"★";margin-right:2px}.premium-feature-container{position:relative;border-radius:var(--radius-md);overflow:hidden}.premium-feature-preview{filter:blur(2px);opacity:.7}.premium-feature-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-md);text-align:center;color:var(--neutral-100)}.lock-icon{font-size:2rem;margin-bottom:var(--spacing-sm)}.upgrade-prompt{background-color:var(--neutral-100);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--spacing-lg);text-align:center;margin:var(--spacing-md) 0}.upgrade-prompt.standard{border:2px solid var(--secondary)}.upgrade-prompt.minimal{padding:var(--spacing-md);box-shadow:var(--shadow-sm)}.upgrade-prompt.floating{position:fixed;bottom:var(--spacing-md);right:var(--spacing-md);max-width:300px;z-index:var(--z-above)}.upgrade-prompt h3{color:var(--secondary);margin-bottom:var(--spacing-sm)}.upgrade-button{background-color:var(--secondary);color:var(--neutral-100);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:600;margin-top:var(--spacing-md);display:inline-block;transition:all var(--transition-normal)}.upgrade-button:hover{background-color:var(--secondary-light);transform:translateY(-2px);box-shadow:var(--shadow-sm);text-decoration:none;color:var(--neutral-100)}.subscription-page{max-width:900px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-md)}.feature-highlight{background-color:var(--primary-light);color:var(--neutral-100);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);text-align:center}.plan-selection{margin-bottom:var(--spacing-xl)}.plan-options{display:grid;grid-template-columns:repeat(1,1fr);grid-gap:var(--spacing-md);gap:var(--spacing-md);margin-top:var(--spacing-md)}@media (min-width:768px){.plan-options{grid-template-columns:repeat(3,1fr)}}.plan-card{background-color:var(--neutral-100);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-md);text-align:center;position:relative;cursor:pointer;transition:all var(--transition-normal);border:2px solid transparent}.plan-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.plan-card.selected{border-color:var(--primary);box-shadow:var(--shadow-md)}.best-value{position:absolute;top:0;right:0;background-color:var(--secondary);color:var(--neutral-100);font-size:.75rem;font-weight:700;padding:2px var(--spacing-xs);border-radius:0 var(--radius-md) 0 var(--radius-sm)}.price{font-size:2rem;font-weight:700;color:var(--primary);margin:var(--spacing-md) 0}.price span{font-size:1rem;color:var(--neutral-500)}.savings{color:var(--success);font-weight:600;margin-bottom:var(--spacing-md)}.features{list-style:none;padding:0;margin:var(--space-md) 0;text-align:left}.features li{padding:var(--space-xs) 0;position:relative;padding-left:1.5rem}.features li:before{content:"✓";color:var(--success);position:absolute;left:0}.payment-section{margin-top:var(--space-xl)}.card-element-container{padding:var(--space-md);border:1px solid var(--neutral-300);border-radius:var(--radius-md);background-color:var(--neutral-100);margin-bottom:var(--space-md)}.subscribe-button{width:100%;padding:var(--space-md);background-color:var(--secondary);color:var(--neutral-100);font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-normal)}.subscribe-button:hover{background-color:var(--secondary-light);transform:translateY(-2px);box-shadow:var(--shadow-md)}.guarantee{text-align:center;margin-top:var(--space-lg);color:var(--neutral-500)}.success-message{background-color:var(--success);color:var(--neutral-100);padding:var(--space-lg);border-radius:var(--radius-md);text-align:center;margin:var(--space-xl) 0}.rewards-container{padding:var(--space-md)}.rewards-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--neutral-300);margin-bottom:var(--space-md)}.rewards-tabs button{background:none;border:none;padding:var(--space-sm) var(--space-md);margin-right:var(--space-sm);color:var(--neutral-500);font-weight:600;cursor:pointer;position:relative}.rewards-tabs button.active,.rewards-tabs button:hover{color:var(--primary)}.rewards-tabs button.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:3px;background-color:var(--primary);border-radius:var(--radius-pill) var(--radius-pill) 0 0}.rewards-content{background-color:var(--neutral-100);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:var(--shadow-sm)}.achievement-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-md);gap:var(--space-md)}@media (min-width:768px){.achievement-grid{grid-template-columns:repeat(4,1fr)}}.achievement-item{background-color:var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-md);text-align:center;transition:transform var(--transition-normal)}.achievement-item:hover{transform:translateY(-5px)}.achievement-icon{font-size:2.5rem;margin-bottom:var(--space-sm)}.achievement-locked{opacity:.5;filter:grayscale(1)}.points-display{background-color:var(--secondary);color:var(--neutral-100);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-pill);display:inline-flex;align-items:center;margin-bottom:var(--space-md)}.points-icon{margin-right:var(--space-xs)}.points-value{font-weight:700}.certificate-preview{border:1px solid var(--neutral-300);padding:var(--space-md);margin-bottom:var(--space-md);background-color:var(--neutral-200);text-align:center}.certificate-actions{display:flex;justify-content:center;grid-gap:var(--space-md);gap:var(--space-md);margin-top:var(--space-md)}.marketplace-grid{display:grid;grid-template-columns:repeat(1,1fr);grid-gap:var(--space-md);gap:var(--space-md)}@media (min-width:768px){.marketplace-grid{grid-template-columns:repeat(3,1fr)}}.reward-item{background-color:var(--neutral-100);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.reward-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.reward-image{width:100%;height:150px;object-fit:cover}.reward-content{padding:var(--space-md)}.reward-points{display:flex;align-items:center;color:var(--secondary);font-weight:700;margin-bottom:var(--space-sm)}.reward-points:before{content:"★";margin-right:var(--space-xs)}.dashboard-welcome{background-color:var(--primary-light);color:var(--neutral-100);padding:var(--space-lg);border-radius:var(--radius-md);margin-bottom:var(--space-lg)}.dashboard-stats{display:grid;grid-template-columns:repeat(1,1fr);grid-gap:var(--space-md);gap:var(--space-md);margin-bottom:var(--space-lg)}@media (min-width:768px){.dashboard-stats{grid-template-columns:repeat(3,1fr)}}.stat-card{background-color:var(--neutral-100);padding:var(--space-md)}.stat-value{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:var(--space-xs)}.stat-label{color:var(--neutral-500);font-size:.875rem}.challenge-container,.today-challenge{background-color:var(--neutral-100);border-radius:var(--radius-md);padding:var(--space-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--space-lg)}.challenge-title{color:var(--primary);margin-bottom:var(--space-sm)}.challenge-description{margin-bottom:var(--space-md)}.tips-list{background-color:var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-md);margin-top:var(--space-md)}.calendar-container{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:var(--space-xs);gap:var(--space-xs);margin-bottom:var(--space-lg)}.calendar-header{font-weight:600;padding:var(--space-xs);background-color:var(--neutral-200);border-radius:var(--radius-sm)}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:var(--neutral-100);border-radius:var(--radius-sm);border:1px solid var(--neutral-300);padding:var(--space-xs);cursor:pointer;transition:all var(--transition-fast)}.calendar-day:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.calendar-day.completed{background-color:var(--success);border-color:var(--success)}.calendar-day.today{border:2px solid var(--primary);font-weight:700}.calendar-day.future{opacity:.7}.profile-container{max-width:800px}.profile-tabs{display:flex;border-bottom:1px solid var(--neutral-300);margin-bottom:var(--space-lg)}.profile-tabs button{background:none;border:none;padding:var(--space-sm) var(--space-md);margin-right:var(--space-sm);color:var(--neutral-500);font-weight:600;cursor:pointer;position:relative}.profile-tabs button.active,.profile-tabs button:hover{color:var(--primary)}.profile-tabs button.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:3px;background-color:var(--primary);border-radius:var(--radius-pill) var(--radius-pill) 0 0}.profile-form{background-color:var(--neutral-100);border-radius:var(--radius-md);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.form-group{margin-bottom:var(--space-md)}.children-list{margin-bottom:var(--space-lg)}.child-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);background-color:var(--neutral-100);border-radius:var(--radius-md);margin-bottom:var(--space-sm);box-shadow:var(--shadow-sm)}.child-name{font-weight:600;margin-bottom:var(--space-xs)}.child-age{color:var(--neutral-500);font-size:.875rem}.child-actions{grid-gap:var(--space-xs);gap:var(--space-xs)}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.text-success{color:var(--success)}.text-danger{color:var(--error)}.text-muted{color:var(--neutral-400)}.bg-primary{background-color:var(--primary);color:var(--neutral-100)}.bg-secondary{background-color:var(--secondary);color:var(--neutral-100)}.bg-light{background-color:var(--neutral-200)}.bg-white{background-color:var(--neutral-100)}.d-flex{display:flex}.flex-column{flex-direction:column}.justify-content-between{justify-content:space-between}.justify-content-center{justify-content:center}.align-items-center{align-items:center}.w-100{width:100%}.rounded{border-radius:var(--radius-md)}.shadow{box-shadow:var(--shadow-sm)}.shadow-lg{box-shadow:var(--shadow-lg)}.hidden{display:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn var(--transition-normal)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.slide-up{animation:slideUp var(--transition-normal)}@media (max-width:576px){html{font-size:14px}.container{padding:0 var(--space-sm)}h1{font-size:2rem}h2{font-size:1.75rem}.navbar-container{padding:var(--space-sm)}.rewards-tabs{flex-direction:column}.rewards-tabs button{width:100%;text-align:left;border-bottom:1px solid var(--neutral-300)}.rewards-tabs button.active:after{display:none}.rewards-tabs button.active{background-color:var(--primary-light);color:var(--neutral-100)}.calendar-container{grid-template-columns:repeat(7,1fr);font-size:.75rem}}@media (min-width:576px) and (max-width:767px){.container{max-width:540px}}@media (min-width:768px) and (max-width:991px){.container{max-width:720px}}@media (min-width:992px) and (max-width:1199px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}@media print{body{background-color:var(--neutral-100);color:var(--neutral-700)}.footer,.navbar,.sidebar,.upgrade-prompt,button:not(.print-button){display:none!important}.container{width:100%;max-width:100%;padding:0;margin:0}.certificate-preview{border:none;box-shadow:none;padding:0}a{text-decoration:none;color:var(--neutral-700)}h1,h2,h3,h4,h5,h6{page-break-after:avoid}h1,h2,h3,h4,h5,h6,img{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}}.challenges-page h1{color:var(--primary);margin-bottom:2rem}.challenges-tabs{display:flex;grid-gap:1rem;gap:1rem;margin-bottom:2rem;border-bottom:2px solid var(--neutral-300);padding-bottom:1rem}.challenges-tabs button{background:none;border:none;padding:.5rem 1rem;font-size:1rem;color:var(--neutral-500);cursor:pointer;position:relative;transition:color var(--transition-normal)}.challenges-tabs button.active,.challenges-tabs button:hover{color:var(--primary)}.challenges-tabs button.active:after{content:"";position:absolute;bottom:-1rem;left:0;width:100%;height:2px;background-color:var(--primary)}.challenges-content{margin-top:2rem}.calendar-challenge-tab,.daily-challenge-tab{background:var(--neutral-100);border-radius:var(--radius-md);padding:2rem;box-shadow:var(--shadow-sm)}.challenge-tips{margin-top:2rem;padding:1.5rem;background:var(--neutral-200);border-radius:var(--radius-md)}.challenge-tips h3{color:var(--primary);margin-bottom:1rem}.challenge-tips ul{list-style:none;padding:0;margin:0}.challenge-tips li{color:var(--neutral-600);position:relative;padding:.5rem 0 .5rem 1.5rem}.challenge-tips li:before{content:"•";color:var(--primary);position:absolute;left:0}.calendar-challenges{margin-top:2rem}.challenge-progress{margin:2rem 0}.challenge-progress p{margin-bottom:.5rem;color:var(--neutral-600)}.progress-bar{height:8px;background:var(--neutral-300);border-radius:var(--radius-pill);overflow:hidden}.progress-fill{height:100%;background:var(--primary);transition:width var(--transition-normal)}.completed-message{text-align:center;padding:1rem;border-radius:var(--radius-md);margin-top:1rem}.completed-badge,.completed-message{background:var(--success);color:var(--neutral-100)}.completed-badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-pill);font-size:.875rem;font-weight:500}.no-children-message{text-align:center;padding:2rem;background:var(--neutral-200);border-radius:var(--radius-md);color:var(--neutral-600)}.challenge-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-bottom:1rem;overflow:hidden;transition:all .3s ease}.challenge-card:hover{box-shadow:0 4px 8px rgba(0,0,0,.15);transform:translateY(-2px)}.challenge-header{padding:1rem;cursor:pointer;background:#f8f9fa;border-bottom:1px solid #e9ecef}.challenge-header h3{margin:0;color:#2c3e50;font-size:1.25rem}.challenge-meta{margin-top:.5rem;font-size:.875rem;color:#6c757d}.challenge-meta span{display:flex;align-items:center;grid-gap:.25rem;gap:.25rem}.challenge-content{padding:1rem}.description{color:#495057;margin-bottom:1rem}.instructions,.materials{margin-bottom:1.5rem}.instructions h4,.materials h4{color:#2c3e50;margin-bottom:.5rem}.completion-form{background:#f8f9fa;padding:1rem;border-radius:4px}.rating-input{margin-bottom:1rem}.stars{display:flex;grid-gap:.5rem;gap:.5rem;margin-top:.5rem}.star{font-size:1.5rem;color:#dee2e6;cursor:pointer;transition:color .2s ease}.star.active{color:#ffc107}.notes-input{margin-bottom:1rem}.notes-input textarea{width:100%;min-height:100px;padding:.5rem;border:1px solid #ced4da;border-radius:4px;resize:vertical}.btn-primary{width:100%;padding:.75rem;border:none;border-radius:4px;cursor:pointer;transition:background .2s ease}.btn-primary:disabled{background:#6c757d;cursor:not-allowed}.text-success{color:#28a745}.text-warning{color:#ffc107}.text-danger{color:#dc3545}.child-selector label{white-space:nowrap}.child-selector .alert{width:100%;margin-bottom:0}.child-selector .alert p{margin-bottom:.5rem}.child-selector .btn-sm{padding:.25rem .75rem;font-size:.875rem}.pillars-overview{padding:2rem;max-width:1200px;margin:0 auto}.daily-challenge-section{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 4px rgba(0,0,0,.1)}.daily-challenge-section h2{color:#2c3e50;margin-bottom:1rem}.daily-challenge{background:#f8f9fa;border-radius:8px;padding:1.5rem}.daily-challenge h3{color:#2c3e50;margin-bottom:.5rem}.pillars-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:2rem;gap:2rem;margin-bottom:3rem}.pillar-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px rgba(0,0,0,.1);transition:transform .2s ease,box-shadow .2s ease}.pillar-card:hover{transform:translateY(-4px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.pillar-header{margin-bottom:1.5rem}.pillar-header h3{color:#2c3e50;margin-bottom:.5rem}.pillar-description{color:#6c757d;font-size:.9rem;line-height:1.5}.pillar-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem;margin-bottom:1.5rem}.stat{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.75rem;background:#f8f9fa;border-radius:8px}.stat .icon{font-size:1.5rem;color:#007bff;margin-bottom:.5rem}.stat span{font-size:.875rem;color:#6c757d}.pillar-actions{display:flex;grid-gap:1rem;gap:1rem}.btn{flex:1 1;padding:.75rem;text-align:center;text-decoration:none;transition:background-color .2s ease}.achievements-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 4px rgba(0,0,0,.1)}.achievements-section h2{color:#2c3e50;margin-bottom:1.5rem}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.achievement-card{background:#f8f9fa;border-radius:8px;padding:1.5rem}.achievement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.achievement-header h3{color:#2c3e50;margin:0;font-size:1.1rem}.points{background:#007bff;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:500}.achievement-card p{color:#6c757d;font-size:.9rem;margin-bottom:1rem}.certificate-badge{display:inline-block;background:#28a745;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.875rem}.loading{padding:2rem;color:#6c757d}.error,.loading{text-align:center}.error{padding:1rem;background:#f8d7da;border-radius:4px;margin:1rem}.techniques-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.techniques-header h1{margin:0;color:#2d3748}.child-selector label{margin:0;color:#4a5568}.child-selector select{padding:.5rem;border:1px solid #e2e8f0;border-radius:.375rem;color:#2d3748;min-width:200px}.techniques-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:2rem;gap:2rem;margin-top:2rem}.technique-card{background:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:transform .2s,box-shadow .2s}.technique-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px rgba(0,0,0,.1)}.technique-card h3{color:#2d3748;margin-bottom:1rem;font-size:1.25rem}.technique-description{color:#4a5568;margin-bottom:1.5rem;line-height:1.5}.technique-content{color:#4a5568}.technique-content h4{color:#2d3748;margin-bottom:.75rem;font-size:1.1rem}.technique-content p{margin-bottom:1.5rem;line-height:1.6}.age-groups{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.age-groups h4{color:#2d3748;font-size:1.1rem}.age-group,.age-groups h4{margin-bottom:1rem}.age-group h5{color:#4a5568;margin-bottom:.5rem;font-size:1rem}.age-group p{color:#4a5568;margin-bottom:0;line-height:1.5}@media (max-width:768px){.techniques-header{flex-direction:column;grid-gap:1rem;gap:1rem;text-align:center}.child-selector{width:100%;justify-content:center}.techniques-grid{grid-template-columns:1fr}}.profile-container{display:flex;grid-gap:2rem;gap:2rem;padding:2rem;max-width:1200px;margin:0 auto}.profile-sidebar{width:250px;flex-shrink:0}.profile-header{background:#fff;border-radius:12px;padding:1.5rem;text-align:center;margin-bottom:1rem;box-shadow:0 2px 4px rgba(0,0,0,.1)}.profile-avatar{width:80px;height:80px;background:#f8f9fa;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;font-size:2rem;color:#6c757d}.profile-header h2{color:#2c3e50;margin:0 0 .5rem;font-size:1.25rem}.profile-header p{color:#6c757d;margin:0;font-size:.9rem}.profile-nav{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 2px 4px rgba(0,0,0,.1)}.nav-item{display:flex;align-items:center;grid-gap:.75rem;gap:.75rem;width:100%;padding:.75rem 1rem;border:none;background:none;color:#6c757d;font-size:.9rem;text-align:left;border-radius:6px;cursor:pointer;transition:all .2s ease}.nav-item:hover{background:#f8f9fa;color:#2c3e50}.nav-item.active{background:#e9ecef;color:#2c3e50;font-weight:500}.profile-content{flex:1 1;background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 4px rgba(0,0,0,.1)}.profile-section h3,.security-section h3,.settings-section h3{color:#2c3e50;margin:0 0 1.5rem;font-size:1.25rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;color:#2c3e50;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem;color:#495057}.form-group input:focus,.form-group select:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.setting-card{background:#f8f9fa;border-radius:8px;padding:1.5rem}.setting-card h4{color:#2c3e50;margin:0 0 1rem;font-size:1rem}.setting-card select{width:100%;padding:.75rem;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem;color:#495057}.security-options{display:flex;flex-direction:column;grid-gap:1rem;gap:1rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#545b62}.error,.loading,.no-profile{text-align:center;padding:2rem;color:#6c757d;background:#f8f9fa;border-radius:8px}.children-section{padding:20px}.children-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:20px;gap:20px;margin-top:20px}.child-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px rgba(0,0,0,.1);grid-gap:15px;gap:15px;position:relative}.child-avatar,.child-card{display:flex;align-items:center}.child-avatar{width:50px;height:50px;background:#f0f0f0;border-radius:50%;justify-content:center;font-size:24px;color:#666}.child-info{flex:1 1}.child-info h4{margin:0;color:#333}.child-info p{margin:5px 0;color:#666;font-size:14px}.child-info .age-group{text-transform:capitalize;color:#888;font-size:12px}.child-actions{display:flex;grid-gap:8px;gap:8px;margin-left:auto}.btn-icon{padding:8px;border:none;border-radius:4px;background:none;color:#6c757d;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:#f8f9fa;color:#2c3e50}.btn-icon.btn-danger{color:#dc3545}.btn-icon.btn-danger:hover{background:#fff5f5;color:#dc3545}.add-child-form{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);max-width:500px;margin:20px auto}.form-actions{display:flex;grid-gap:10px;gap:10px;margin-top:20px}.calendar-challenges-tab{padding:2rem}.calendar-header{text-align:center;margin-bottom:2rem}.calendar-header h2{color:var(--primary);margin-bottom:1rem}.progress-stats{margin-top:1.5rem}.stat-card{padding:1rem 2rem}.stat-number{font-size:1.5rem}.calendar-challenges{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.5rem;gap:1.5rem}.calendar-day.completed{background:var(--success)}.calendar-day.completed,.calendar-day.completed .day-content h3,.calendar-day.completed .day-content p,.calendar-day.completed .day-number{color:var(--neutral-100)}.day-action .btn-success{background:var(--success);color:var(--neutral-100)}.completed-state{flex-direction:column;grid-gap:1rem;gap:1rem;padding:1rem;background-color:#f8f9fa;border-radius:.5rem;margin-top:1rem}.completed-state .fa-check{font-size:2rem;color:#28a745}.completed-state span{font-size:1.1rem;color:#28a745;font-weight:500}.completed-state .btn-link{color:#007bff;text-decoration:none;font-weight:500}.completed-state .btn-link:hover{text-decoration:underline}.child-selector{background:var(--neutral-100);padding:1.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:2rem;display:flex;align-items:center;grid-gap:1rem;gap:1rem}.child-selector label{font-weight:500;color:var(--neutral-700);margin-bottom:0}.child-selector select{max-width:300px;padding:.5rem 1rem;border:1px solid var(--neutral-300);border-radius:var(--radius-sm);background-color:#fff;font-size:1rem;color:var(--neutral-700);cursor:pointer;transition:border-color var(--transition-normal)}.child-selector select:hover{border-color:var(--primary)}.child-selector select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.1)}.challenges-page{padding:2rem;max-width:1200px;margin:0 auto}.challenges-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.challenges-header h1{margin:0;color:var(--primary)}.progress-stats{display:flex;justify-content:center;grid-gap:2rem;gap:2rem;margin-bottom:2rem}.stat-card{background:var(--neutral-100);padding:1.5rem 2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center;min-width:150px}.stat-card h3{color:var(--neutral-600);font-size:.875rem;margin-bottom:.5rem}.stat-number{color:var(--primary);font-size:2rem;font-weight:600}.challenges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.5rem;gap:1.5rem}.calendar-day{background:var(--neutral-100);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.calendar-day:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.calendar-day.completed{background:var(--success-light)}.day-number{font-weight:600;color:var(--primary);margin-bottom:1rem}.day-content h3{color:var(--neutral-700);margin-bottom:.5rem}.day-content p{color:var(--neutral-500);margin-bottom:1rem}.day-action{display:flex;justify-content:flex-end}.day-action .btn{padding:.5rem 1rem;border-radius:var(--radius-sm);font-weight:500;transition:all var(--transition-normal)}.day-action .btn-primary{background:var(--primary);color:var(--neutral-100);border:none}.day-action .btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.completed-state{display:flex;align-items:center;justify-content:center;grid-gap:.5rem;gap:.5rem;color:var(--success);font-weight:500}.completed-state svg,.loader{font-size:1.25rem}.loader{display:flex;justify-content:center;align-items:center;min-height:300px;color:var(--neutral-600)}.alert{padding:1rem;border-radius:var(--radius-md);margin-bottom:1rem}.alert-danger{background:var(--danger-light);color:var(--danger);border:1px solid var(--danger)}.alert-info{background:var(--info-light);color:var(--info);border:1px solid var(--info)}.daily-challenge{background:#fff;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.1);padding:2rem;margin-bottom:2rem}.challenge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e9ecef}.challenge-header h2{color:#2c3e50;margin:0;font-size:1.5rem}.challenge-meta{display:flex;grid-gap:1rem;gap:1rem}.difficulty,.duration{display:flex;align-items:center;grid-gap:.5rem;gap:.5rem;color:#6c757d;font-size:.875rem}.challenge-content h3{color:#2c3e50;margin:0 0 1rem;font-size:1.25rem}.challenge-content p{color:#495057;line-height:1.6;margin-bottom:1.5rem}.challenge-steps{flex-direction:column;margin-bottom:2rem}.challenge-steps,.step{display:flex;grid-gap:1rem;gap:1rem}.step{padding:1rem;background:#f8f9fa;border-radius:8px;transition:background-color .2s ease}.step-number{width:24px;height:24px;background:#007bff;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:500;flex-shrink:0}.step p{margin:0;color:#495057}.challenge-rewards{background:#e8f5e9;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem}.challenge-rewards h4{color:#2c3e50;margin:0 0 1rem;font-size:1.1rem}.challenge-rewards ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;grid-gap:.5rem;gap:.5rem}.challenge-rewards li{display:flex;align-items:center;grid-gap:.5rem;gap:.5rem;color:#2c3e50}.reward-icon{color:#ffc107}.complete-challenge{width:100%;display:flex;align-items:center;justify-content:center;grid-gap:.5rem;gap:.5rem;padding:1rem;font-size:1.1rem}.error,.loading,.no-challenge{text-align:center;padding:2rem;color:#6c757d;background:#f8f9fa;border-radius:8px}.error{color:#dc3545;background:#fff5f5}
/*# sourceMappingURL=main.0a0e67a4.chunk.css.map */