.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.auth-box{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a;max-width:400px;width:100%}.auth-box h1{font-size:32px;margin:0 0 20px;text-align:center;color:#333}.auth-box h2{font-size:24px;margin:0 0 30px;text-align:center;color:#667eea}.auth-box form{display:flex;flex-direction:column;gap:15px}.auth-box input,.auth-box select{padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.auth-box input:focus,.auth-box select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.auth-box button{padding:12px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:background .3s}.auth-box button:hover:not(:disabled){background:#5568d3}.auth-box button:disabled{opacity:.6;cursor:not-allowed}.auth-box p{text-align:center;margin-top:20px;color:#666}.auth-box a{color:#667eea;text-decoration:none;font-weight:600}.auth-box a:hover{text-decoration:underline}.error-message{background:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:15px;font-size:14px}.oauth-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}.oauth-btn{padding:.75rem;border:2px solid #e5e7eb;background:#fff;border-radius:6px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;text-align:center}.oauth-btn:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a;transform:translateY(-2px)}.oauth-btn span{display:flex;align-items:center;justify-content:center;gap:.3rem;width:100%}.oauth-btn.gmail{color:#ea4335}.oauth-btn.apple{color:#000}.oauth-btn.yahoo{color:#7b0099}.divider{text-align:center;color:#999;font-size:.9rem;margin:1rem 0;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e5e7eb;z-index:-1}.divider{background:#fff;padding:0 .5rem}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{flex:1}.password-toggle{position:absolute;right:12px;background:none;border:none;cursor:pointer;font-size:18px;padding:8px}.dashboard-container{min-height:100vh;background:#f5f7fa;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.dashboard-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px #0000001a}.dashboard-header h1{font-size:32px;margin:0}.user-info{display:flex;align-items:center;gap:20px}.logout-btn{padding:8px 20px;background:#fff3;color:#fff;border:2px solid white;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s}.logout-btn:hover{background:#ffffff4d}.dashboard-main{max-width:1000px;margin:0 auto;padding:40px 20px}.hero{background:#fff;padding:60px 40px;border-radius:12px;text-align:center;margin-bottom:40px;box-shadow:0 4px 12px #0000001a}.hero h2{font-size:36px;color:#333;margin:0 0 15px}.hero p{font-size:18px;color:#666;margin:0 0 30px}.primary-btn{padding:15px 40px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .3s,box-shadow .3s}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px #667eea4d}.assessments{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 12px #0000001a}.assessments h3{font-size:22px;color:#333;margin:0 0 20px}.assessment-list{display:flex;flex-direction:column;gap:10px}.assessment-item{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f9f9f9;border-radius:8px;border-left:4px solid #667eea}.assessment-item button{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:background .3s}.assessment-item button:hover{background:#5568d3}.assessment-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:#fff}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.instructions-screen{max-width:600px;margin:40px auto;text-align:center;color:#fff}.domain-badge{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:50px;margin-bottom:20px;font-size:24px;font-weight:600}.domain-icon{font-size:32px}.domain-code{font-size:20px}.instructions-screen h2{font-size:32px;margin:0 0 10px}.domain-description{font-size:18px;opacity:.9;margin-bottom:20px}.subtest-info{margin-bottom:30px}.subtest-label{display:inline-block;padding:8px 20px;background:#fff3;border-radius:20px;font-size:14px}.instructions-box{background:#ffffff26;padding:25px;border-radius:12px;margin-bottom:30px;text-align:left}.instructions-box h3{margin:0 0 15px;font-size:18px}.instructions-box p{margin:8px 0;opacity:.9}.start-question-btn{padding:15px 50px;background:#fff;color:#667eea;border:none;border-radius:30px;font-size:18px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.start-question-btn:hover{transform:translateY(-2px);box-shadow:0 5px 20px #0003}.progress-indicator{margin-top:20px;opacity:.8;font-size:14px}.assessment-header{display:flex;justify-content:space-between;align-items:center;max-width:800px;margin:0 auto 20px;color:#fff}.domain-indicator{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:25px;font-weight:600;font-size:16px}.timer{position:relative;width:60px;height:60px;display:flex;align-items:center;justify-content:center}.timer-ring{position:absolute;width:100%;height:100%}.timer-text{font-size:16px;font-weight:700;z-index:1}.progress-bar-container{max-width:800px;margin:0 auto 20px;height:8px;background:#ffffff4d;border-radius:4px;position:relative}.progress-bar-fill{height:100%;background:#fff;border-radius:4px;transition:width .3s ease}.progress-text{position:absolute;right:0;top:12px;color:#fff;font-size:12px}.question-box{background:#fff;padding:40px;border-radius:16px;max-width:800px;margin:0 auto 30px;box-shadow:0 10px 40px #00000026}.subtest-badge{display:inline-block;padding:6px 16px;background:#f0f0f0;border-radius:15px;font-size:12px;font-weight:600;color:#666;margin-bottom:20px;text-transform:uppercase;letter-spacing:.5px}.question-text{font-size:24px;color:#333;margin:0 0 30px;line-height:1.4}.options{display:flex;flex-direction:column;gap:12px}.option{display:flex;align-items:center;padding:16px 20px;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s;background:#fff}.option:hover{border-color:#667eea;background:#f8f9ff}.option.selected{border-color:#667eea;background:#f0f3ff}.option input{display:none}.option-letter{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f0f0f0;border-radius:50%;font-weight:600;color:#666;margin-right:15px;transition:all .2s}.option.selected .option-letter{background:#667eea;color:#fff}.option-text{font-size:16px;color:#333}.submit-btn{display:block;margin:0 auto;padding:16px 50px;background:#fff;color:#667eea;border:none;border-radius:30px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #0000001a}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.message{max-width:800px;margin:0 auto 20px;padding:15px 25px;background:#fff3;color:#fff;border-radius:10px;text-align:center;font-weight:500}@media(max-width:600px){.assessment-container{padding:15px}.question-box{padding:25px}.question-text{font-size:20px}.instructions-screen h2{font-size:26px}.domain-badge{padding:12px 24px}.option{padding:14px 16px}}.results-container{min-height:100vh;background:#f5f7fa;padding:40px 20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:40vh}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}@keyframes spin{to{transform:rotate(360deg)}}.results-header{text-align:center;margin-bottom:30px}.results-header h1{font-size:32px;color:#333;margin:0 0 8px}.results-header .subtitle{color:#666;font-size:16px;margin:0}.main-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:30px}.main-tab{padding:12px 30px;background:#fff;border:2px solid #e0e0e0;border-radius:25px;cursor:pointer;font-size:14px;font-weight:600;color:#666;transition:all .2s}.main-tab:hover{border-color:#667eea;color:#667eea}.main-tab.active{background:#667eea;border-color:#667eea;color:#fff}.profile-section,.reports-section,.recommendations-section{max-width:900px;margin:0 auto 40px}.composite-scores h2,.domain-scores h2,.strengths-section h2,.growth-section h2,.career-section h2,.interventions-section h2{font-size:20px;color:#333;margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid #eee}.composite-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-bottom:40px}.composite-card{background:#fff;padding:25px;border-radius:12px;text-align:center;box-shadow:0 2px 8px #00000014;border-top:4px solid #667eea}.composite-card.invalid{border-top-color:#ccc;opacity:.7}.composite-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.composite-score{font-size:48px;font-weight:700;color:#667eea;margin-bottom:5px}.composite-descriptor{display:inline-block;padding:4px 12px;border-radius:15px;font-size:12px;font-weight:600;margin-bottom:5px}.composite-descriptor.very-high{background:#d4edda;color:#155724}.composite-descriptor.high{background:#cce5ff;color:#004085}.composite-descriptor.average{background:#fff3cd;color:#856404}.composite-descriptor.low{background:#f8d7da;color:#721c24}.composite-percentile{color:#888;font-size:14px;margin-bottom:10px}.composite-invalid{color:#999;font-size:14px;padding:20px 0}.composite-description{font-size:12px;color:#888;margin-top:10px}.domain-scores{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:30px}.domain-list{display:flex;flex-direction:column;gap:20px}.domain-row{display:flex;align-items:center;gap:20px;padding:15px;background:#f9f9f9;border-radius:10px}.domain-row.invalid{opacity:.6}.domain-info{display:flex;align-items:center;gap:12px;min-width:200px}.domain-icon{font-size:24px}.domain-name-block{display:flex;flex-direction:column}.domain-code{font-weight:700;color:#333;font-size:14px}.domain-name{font-size:12px;color:#666}.domain-bar-container{flex:1;position:relative;height:20px;background:#e8e8e8;border-radius:10px;overflow:hidden}.domain-bar{height:100%;border-radius:10px;transition:width .5s ease}.domain-bar-markers{position:absolute;top:100%;left:0;right:0;display:flex;justify-content:space-between;padding:4px 0}.domain-bar-markers .marker{font-size:10px;color:#999}.domain-score-info{display:flex;flex-direction:column;align-items:flex-end;min-width:100px;text-align:right}.domain-score{font-size:24px;font-weight:700;color:#333}.domain-descriptor{font-size:11px;padding:2px 8px;border-radius:10px;margin-bottom:2px}.domain-descriptor.very-high{background:#d4edda;color:#155724}.domain-descriptor.high{background:#cce5ff;color:#004085}.domain-descriptor.average{background:#fff3cd;color:#856404}.domain-descriptor.low{background:#f8d7da;color:#721c24}.domain-percentile{font-size:11px;color:#888}.domain-insufficient{flex:1;color:#999;font-size:14px;text-align:center}.strengths-section,.growth-section{margin-bottom:30px}.strengths-grid,.growth-grid{display:flex;gap:15px;flex-wrap:wrap}.strength-card,.growth-card{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#fff;border-radius:10px;border-left:4px solid;box-shadow:0 2px 6px #0000000f}.strength-icon,.growth-icon{font-size:20px}.strength-code,.growth-code{font-weight:700;color:#333}.strength-score,.growth-score{font-weight:600;color:#667eea}.strength-descriptor,.growth-descriptor{font-size:12px;color:#666}.completeness-section{text-align:center;padding:15px;background:#f0f4ff;border-radius:8px;margin-bottom:20px}.completeness-info{font-size:14px;color:#555}.complete-badge{display:inline-block;margin-left:10px;padding:3px 10px;background:#28a745;color:#fff;border-radius:12px;font-size:11px;font-weight:600}.disclaimer-box{padding:20px;background:#fff8e6;border:1px solid #ffe0a3;border-radius:8px;font-size:13px;color:#856404;line-height:1.6}.no-profile{text-align:center;padding:60px 30px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.no-profile p{color:#666;margin:10px 0}.reports-section{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #00000014}.report-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #eee;padding-bottom:10px}.tab{padding:10px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:600;color:#666;transition:all .2s}.tab:hover{color:#667eea}.tab.active{color:#667eea;border-bottom-color:#667eea}.report-content{background:#f9f9f9;padding:25px;border-radius:8px;line-height:1.8;color:#333;max-height:500px;overflow-y:auto}.report-text{white-space:pre-wrap;word-wrap:break-word;font-size:14px}.error-message{color:#dc3545;text-align:center;padding:30px}.career-section,.interventions-section{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:20px}.pathways-grid,.interventions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.pathway-card,.intervention-card{background:#f9f9f9;padding:20px;border-radius:10px;border-left:4px solid #667eea}.pathway-card h3,.intervention-card h3{color:#333;margin:0 0 10px;font-size:16px}.match-score{background:#667eea;color:#fff;padding:6px 12px;border-radius:15px;display:inline-block;margin-bottom:15px;font-size:12px;font-weight:600}.priority{display:inline-block;background:#ff6b6b;color:#fff;padding:4px 10px;border-radius:12px;font-size:11px;margin-bottom:10px}.careers-list,.next-steps{margin-bottom:15px}.career-item{margin-bottom:10px;padding:10px;background:#fff;border-radius:6px}.career-item strong{color:#333;display:block;margin-bottom:4px;font-size:14px}.career-item p{color:#666;font-size:12px;margin:0}.timeline{color:#888;font-size:12px;margin-bottom:10px}.next-steps ul,.intervention-card ul{list-style:none;padding:0;margin:10px 0 0}.next-steps li,.intervention-card li{padding:5px 0;color:#555;font-size:13px}.next-steps li:before,.intervention-card li:before{content:"→ ";color:#667eea;font-weight:700}.no-recommendations{text-align:center;padding:40px;color:#888}.results-actions{text-align:center;margin-top:30px}.back-btn{padding:12px 30px;background:#667eea;color:#fff;border:none;border-radius:25px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.back-btn:hover{background:#5568d3;transform:translateY(-2px)}@media(max-width:768px){.results-container{padding:20px 15px}.main-tabs{flex-wrap:wrap}.main-tab{padding:10px 20px;font-size:13px}.domain-row{flex-direction:column;align-items:flex-start}.domain-info{min-width:auto;margin-bottom:10px}.domain-bar-container{width:100%}.domain-score-info{flex-direction:row;gap:10px;align-items:center;margin-top:10px}.composite-grid{grid-template-columns:1fr}}.counsellor-container{min-height:100vh;background:#f5f7fa;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.counsellor-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px;border-radius:12px;margin-bottom:30px;box-shadow:0 4px 12px #0000001a}.counsellor-header h1{font-size:32px;margin:0 0 20px}.tabs{display:flex;gap:10px;flex-wrap:wrap}.tab{padding:10px 20px;background:#fff3;color:#fff;border:2px solid transparent;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s}.tab:hover{background:#ffffff4d}.tab.active{background:#fff;color:#667eea;border-color:#fff}.counsellor-main{max-width:1200px;margin:0 auto}.overview{display:flex;flex-direction:column;gap:30px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.stat-card{background:#fff;padding:30px;border-radius:12px;text-align:center;box-shadow:0 4px 12px #0000001a;border-top:4px solid #667eea}.stat-card.warning{border-top-color:#ff6b6b}.stat-card.success{border-top-color:#51cf66}.stat-card h3{color:#666;font-size:14px;margin:0 0 10px;text-transform:uppercase}.big-number{font-size:48px;font-weight:700;color:#667eea;margin:0}.stat-card.warning .big-number{color:#ff6b6b}.stat-card.success .big-number{color:#51cf66}.priorities-section{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 12px #0000001a}.priorities-section h3{font-size:22px;color:#333;margin:0 0 20px}.priorities-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.priority-item{background:#f9f9f9;padding:15px;border-radius:8px;border-left:4px solid #667eea}.priority-item strong{display:block;color:#333;margin-bottom:5px}.priority-item p{color:#666;font-size:13px;margin:0}.students-list,.at-risk-list{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 12px #0000001a}.students-list h3,.at-risk-list h3{font-size:22px;color:#333;margin:0 0 20px}.students-table{width:100%;border-collapse:collapse}.students-table thead{background:#f9f9f9;border-bottom:2px solid #ddd}.students-table th{padding:12px;text-align:left;font-weight:600;color:#333}.students-table td{padding:12px;border-bottom:1px solid #eee}.students-table tr:hover{background:#f9f9f9}.view-btn{padding:6px 12px;background:#667eea;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;transition:background .3s}.view-btn:hover{background:#5568d3}.risk-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.risk-card{background:#fff3cd;padding:20px;border-radius:8px;border-left:4px solid #ff6b6b}.risk-card h4{color:#333;margin:0 0 10px}.risk-card p{color:#666;font-size:14px;margin:5px 0}.risk-card .score{font-weight:600;color:#c33}.back-btn{padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;margin-bottom:20px;transition:background .3s}.back-btn:hover{background:#5568d3}.student-profile{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 12px #0000001a}.student-profile h2{font-size:28px;color:#333;margin:10px 0 20px}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.profile-card{background:#f9f9f9;padding:20px;border-radius:8px;border-left:4px solid #667eea}.profile-card h3{color:#667eea;margin:0 0 15px}.profile-card p{color:#666;font-size:14px;margin:8px 0}.profile-card strong{display:block;color:#333;margin-top:10px}.parent-container{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e4e8f0)}.parent-loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:1.2rem;color:#666}.parent-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#fff;box-shadow:0 2px 10px #0000001a}.parent-header h1{color:#2c3e50;font-size:1.8rem}.user-controls{display:flex;align-items:center;gap:1rem}.logout-btn{padding:.5rem 1rem;background:#e74c3c;color:#fff;border:none;border-radius:5px;cursor:pointer;transition:background .2s}.logout-btn:hover{background:#c0392b}.parent-main{max-width:1200px;margin:0 auto;padding:2rem}.children-section h2,.tips-section h2{color:#2c3e50;margin-bottom:1.5rem}.no-children{background:#fff;padding:3rem;border-radius:10px;text-align:center;color:#666}.children-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.child-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 15px #0000001a;transition:transform .2s,box-shadow .2s}.child-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #00000026}.child-info h3{color:#2c3e50;margin-bottom:.5rem}.child-info .grade{color:#4a90d9;font-weight:600}.child-info .age-group{color:#7f8c8d;font-size:.9rem}.child-stats{display:flex;gap:2rem;margin:1rem 0;padding:1rem 0;border-top:1px solid #eee;border-bottom:1px solid #eee}.stat{text-align:center}.stat-value{display:block;font-size:1.5rem;font-weight:700;color:#2c3e50}.stat-label{font-size:.8rem;color:#7f8c8d}.latest-scores{margin:1rem 0}.latest-scores h4{color:#7f8c8d;font-size:.9rem;margin-bottom:.5rem}.score-bar{display:flex;align-items:center;gap:.5rem}.score-bar span{font-size:.85rem;color:#555}.score-bar .bar{flex:1;height:10px;background:#eee;border-radius:5px;overflow:hidden}.score-bar .fill{height:100%;background:linear-gradient(90deg,#4a90d9,#2ca7a0);border-radius:5px}.child-actions{display:flex;gap:.5rem;margin-top:1rem}.primary-btn{flex:1;padding:.75rem 1rem;background:#4a90d9;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s}.primary-btn:hover{background:#3a7bc8}.secondary-btn{flex:1;padding:.75rem 1rem;background:#fff;color:#4a90d9;border:2px solid #4A90D9;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.secondary-btn:hover{background:#4a90d9;color:#fff}.tips-section{margin-top:3rem}.tips-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.tip-card{background:#fff;padding:1.5rem;border-radius:10px;box-shadow:0 2px 10px #0000000d}.tip-card h3{color:#2ca7a0;margin-bottom:.75rem}.tip-card p{color:#666;line-height:1.6}.parent-footer{text-align:center;padding:2rem;color:#7f8c8d;font-size:.9rem}.child-detail{max-width:800px;margin:0 auto;padding:2rem}.back-btn{background:none;border:none;color:#4a90d9;cursor:pointer;font-size:1rem;margin-bottom:1rem}.trend-card{background:#fff;padding:1.5rem;border-radius:10px;margin-bottom:1.5rem;box-shadow:0 2px 10px #0000001a}.trend-indicator{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-weight:600;margin-bottom:1rem}.trend-indicator.improving{background:#d4edda;color:#155724}.trend-indicator.declining{background:#f8d7da;color:#721c24}.trend-indicator.stable{background:#fff3cd;color:#856404}.assessments-history h3{color:#2c3e50;margin-bottom:1rem}.assessment-card{background:#fff;padding:1.5rem;border-radius:10px;margin-bottom:1rem;box-shadow:0 2px 8px #00000014}.assessment-info{display:flex;justify-content:space-between;margin-bottom:1rem}.assessment-info .status{padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:600}.scores{display:flex;gap:2rem;margin-bottom:1rem}.score-item{text-align:center}.score-item .label{display:block;font-size:.8rem;color:#7f8c8d}.score-item .value{font-size:1.5rem;font-weight:700;color:#2c3e50}.view-report-btn{width:100%;padding:.75rem;background:#4a90d9;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600}.admin-container{min-height:100vh;background:#1a1a2e;color:#eee}.admin-loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:1.2rem;color:#888;background:#1a1a2e}.admin-header{padding:1rem 2rem;background:#16213e;border-bottom:1px solid #0f3460}.admin-header h1{color:#e94560;margin-bottom:1rem}.admin-controls{display:flex;justify-content:space-between;align-items:center}.tabs{display:flex;gap:.5rem}.tab{padding:.5rem 1.5rem;background:transparent;border:1px solid #0f3460;color:#888;border-radius:5px;cursor:pointer;transition:all .2s}.tab:hover{border-color:#e94560;color:#e94560}.tab.active{background:#e94560;border-color:#e94560;color:#fff}.user-info{display:flex;align-items:center;gap:1rem}.logout-btn{padding:.5rem 1rem;background:#e94560;border:none;color:#fff;border-radius:5px;cursor:pointer}.admin-main{padding:2rem;max-width:1400px;margin:0 auto}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#16213e;padding:1.5rem;border-radius:10px;text-align:center;border:1px solid #0f3460}.stat-card h3{color:#888;font-size:.9rem;margin-bottom:.5rem}.stat-value{font-size:2.5rem;font-weight:700;color:#4a90d9}.stat-card.success .stat-value{color:#2ca7a0}.stat-card.warning .stat-value{color:#d9a441}.stat-card.highlight .stat-value{color:#e94560}.charts-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-bottom:2rem}.chart-card{background:#16213e;padding:1.5rem;border-radius:10px;border:1px solid #0f3460}.chart-card h3{color:#eee;margin-bottom:1rem}.chart-container{height:250px;display:flex;justify-content:center;align-items:center}.recent-activity{background:#16213e;padding:1.5rem;border-radius:10px;border:1px solid #0f3460;margin-bottom:2rem}.recent-activity h3{color:#eee;margin-bottom:1rem}.activity-table{width:100%;border-collapse:collapse}.activity-table th,.activity-table td{padding:.75rem;text-align:left;border-bottom:1px solid #0f3460}.activity-table th{color:#888;font-weight:600}.activity-table td{color:#ddd}.status-badge{padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:600}.status-badge.completed{background:#2ca7a033;color:#2ca7a0}.status-badge.in_progress{background:#d9a44133;color:#d9a441}.status-badge.not_started{background:#8883;color:#888}.kpi-section{background:#16213e;padding:1.5rem;border-radius:10px;border:1px solid #0f3460}.kpi-section h3{color:#eee;margin-bottom:1rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.kpi-card{background:#1a1a2e;padding:1rem;border-radius:8px;display:flex;flex-direction:column}.kpi-name{color:#888;font-size:.85rem}.kpi-value{color:#4a90d9;font-size:1.5rem;font-weight:700;margin:.25rem 0}.kpi-date{color:#666;font-size:.75rem}.schools-content{background:#16213e;padding:1.5rem;border-radius:10px;border:1px solid #0f3460}.schools-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.schools-header h2{color:#eee}.add-school-btn{padding:.5rem 1rem;background:#e94560;border:none;color:#fff;border-radius:5px;cursor:pointer}.no-schools{color:#888;text-align:center;padding:2rem}.schools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.school-card{background:#1a1a2e;padding:1.5rem;border-radius:10px;border:1px solid #0f3460}.school-card h3{color:#eee;margin-bottom:1rem}.school-stats{display:flex;gap:2rem;margin-bottom:1rem}.school-stat{text-align:center}.school-stat .value{display:block;font-size:1.5rem;font-weight:700;color:#4a90d9}.school-stat .label{font-size:.8rem;color:#888}.school-meta{color:#888;font-size:.9rem;margin-bottom:1rem}.school-meta p{margin:.25rem 0}.manage-btn{width:100%;padding:.75rem;background:transparent;border:1px solid #e94560;color:#e94560;border-radius:5px;cursor:pointer;transition:all .2s}.manage-btn:hover{background:#e94560;color:#fff}.activity-content{background:#16213e;padding:1.5rem;border-radius:10px;border:1px solid #0f3460}.activity-content h2{color:#eee;margin-bottom:1rem}.activity-filters{display:flex;gap:1rem;margin-bottom:1.5rem}.filter-select,.date-filter{padding:.5rem 1rem;background:#1a1a2e;border:1px solid #0f3460;color:#eee;border-radius:5px}.activity-note{color:#888;text-align:center;padding:2rem}.microlearning-container{min-height:100vh;background:linear-gradient(135deg,#f0f4f8,#e2e8f0)}.microlearning-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#fff;box-shadow:0 2px 10px #0000001a}.microlearning-header h1{color:#2c3e50;margin:0}.back-to-dashboard{padding:.5rem 1rem;background:#4a90d9;color:#fff;border:none;border-radius:5px;cursor:pointer}.progress-summary{display:flex;justify-content:center;gap:3rem;padding:1.5rem;background:#fff;border-bottom:1px solid #e0e0e0}.progress-stat{text-align:center}.progress-stat .value{display:block;font-size:2rem;font-weight:700;color:#2ca7a0}.progress-stat .label{font-size:.9rem;color:#666}.learning-nav{display:flex;justify-content:center;gap:.5rem;padding:1rem;background:#fff;border-bottom:1px solid #e0e0e0}.nav-btn{padding:.75rem 1.5rem;background:transparent;border:2px solid #e0e0e0;border-radius:25px;cursor:pointer;transition:all .2s;font-weight:500}.nav-btn:hover{border-color:#4a90d9;color:#4a90d9}.nav-btn.active{background:#4a90d9;border-color:#4a90d9;color:#fff}.microlearning-main{max-width:1200px;margin:0 auto;padding:2rem}.loading{text-align:center;padding:3rem;color:#666}.no-content{text-align:center;padding:3rem;color:#888;background:#fff;border-radius:10px}.recommended-view h2,.domains-view h2,.domain-content-view h2,.history-view h2{color:#2c3e50;margin-bottom:1.5rem}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.content-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000001a;transition:transform .2s}.content-card:hover{transform:translateY(-5px)}.card-header{display:flex;justify-content:space-between;padding:.75rem 1rem;color:#fff}.content-type{text-transform:capitalize;font-weight:600}.duration{font-size:.9rem}.card-body{padding:1.25rem}.card-body h3{color:#2c3e50;margin-bottom:.5rem}.card-body p{color:#666;font-size:.9rem;margin-bottom:1rem}.card-meta{display:flex;gap:1rem;font-size:.8rem}.card-meta .domain{color:#4a90d9}.card-meta .difficulty{color:#888}.start-btn{width:100%;padding:.75rem;background:#4a90d9;color:#fff;border:none;font-weight:600;cursor:pointer;transition:background .2s}.start-btn:hover{background:#3a7bc8}.domains-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem}.domain-card{background:#fff;border-radius:12px;padding:1.5rem;text-align:center;border:3px solid transparent;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #00000014}.domain-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0000001f}.domain-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#fff;font-weight:700;font-size:1.2rem}.domain-card h3{color:#2c3e50;margin-bottom:.5rem}.domain-card p{color:#888;font-size:.9rem}.back-link{background:none;border:none;color:#4a90d9;cursor:pointer;font-size:1rem;margin-bottom:1rem}.content-list{display:flex;flex-direction:column;gap:1rem}.content-item{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:1.25rem;border-radius:10px;box-shadow:0 2px 8px #00000014}.content-item.completed{opacity:.8}.item-info h3{color:#2c3e50;margin-bottom:.25rem}.item-info p{color:#666;font-size:.9rem;margin-bottom:.5rem}.item-meta{display:flex;gap:1rem;font-size:.8rem;color:#888}.completed-badge{color:#2ca7a0;font-weight:600}.review-btn{padding:.5rem 1.5rem;background:#fff;color:#4a90d9;border:2px solid #4A90D9;border-radius:5px;cursor:pointer}.domain-progress{background:#fff;padding:1.5rem;border-radius:10px;margin-bottom:2rem}.domain-progress h3,.recent-activity h3{color:#2c3e50;margin-bottom:1rem}.domain-progress-grid{display:flex;flex-direction:column;gap:1rem}.domain-progress-item{display:flex;align-items:center;gap:1rem}.domain-name{width:180px;font-weight:500}.progress-bar{flex:1;height:12px;background:#e0e0e0;border-radius:6px;overflow:hidden}.progress-fill{height:100%;border-radius:6px;transition:width .3s}.progress-text{width:50px;text-align:right;color:#666}.recent-activity{background:#fff;padding:1.5rem;border-radius:10px}.activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8f9fa;border-radius:8px}.activity-info{display:flex;flex-direction:column}.activity-info .title{font-weight:500;color:#2c3e50}.activity-info .domain{font-size:.85rem;color:#666}.activity-item .status{padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:600}.status.completed{background:#d4edda;color:#155724}.status.in_progress{background:#fff3cd;color:#856404}.content-viewer{max-width:800px;margin:0 auto;padding:2rem}.content-viewer .back-btn{background:none;border:none;color:#4a90d9;cursor:pointer;font-size:1rem;margin-bottom:1.5rem}.content-viewer .content-header{display:flex;gap:1rem;margin-bottom:1rem}.domain-badge{padding:.25rem .75rem;color:#fff;border-radius:15px;font-size:.85rem}.content-viewer .difficulty{color:#888}.content-viewer h1{color:#2c3e50;margin-bottom:.5rem}.content-viewer .description{color:#666;font-size:1.1rem;margin-bottom:2rem}.content-body{background:#fff;padding:2rem;border-radius:10px;margin-bottom:2rem;min-height:300px}.activity-content h3,.quiz-content h3{color:#2c3e50;margin-bottom:1rem}.video-placeholder{background:#1a1a2e;color:#fff;padding:5rem;text-align:center;border-radius:10px}.content-actions{text-align:center}.complete-btn{padding:1rem 3rem;background:#2ca7a0;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .2s}.complete-btn:hover{background:#248f89}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 50px #0003;position:relative;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#999;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s}.modal-close:hover{background:#f5f6f7;color:#333}.modal-step{display:flex;flex-direction:column;gap:1.5rem}.modal-step h2{font-size:1.8rem;color:#3b3d98;margin:0}.modal-step p{color:#555;line-height:1.6;margin:0}.small-text{font-size:.9rem;color:#999}.consent-text{background:#f5f6f7;padding:1rem;border-radius:8px;border-left:4px solid #2CA7A0}.modal-step form{display:flex;flex-direction:column;gap:1rem}.modal-step input{padding:.875rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .3s}.modal-step input:focus{outline:none;border-color:#3b3d98;box-shadow:0 0 0 3px #3b3d981a}.consent-buttons{display:flex;flex-direction:column;gap:1rem}.modal-button{padding:.875rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s}.modal-button.primary{background:#3b3d98;color:#fff}.modal-button.primary:hover{background:#2d2e7a;transform:translateY(-2px);box-shadow:0 4px 12px #3b3d9833}.modal-button.secondary{background:#fff;color:#2ca7a0;border:2px solid #2CA7A0}.modal-button.secondary:hover{background:#2ca7a00d}.demo-info{background:#2ca7a00d;padding:1.5rem;border-radius:8px;border-left:4px solid #2CA7A0}.demo-info p{margin:.5rem 0;color:#555;display:flex;align-items:center;gap:.5rem}:root{--primary: #3B3D98;--secondary: #2CA7A0;--accent: #D9A441;--charcoal: #222233;--light-gray: #f5f6f7;--border-gray: #e5e7eb}.landing-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:var(--charcoal);background:#fff;overflow-x:hidden}.landing-header{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 2px 8px #00000014}.header-content{max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:2rem}.header-left{display:flex;align-items:center;min-width:fit-content}.logo-section{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--primary);font-weight:700;font-size:1.25rem}.logo-image{width:45px;height:auto;max-height:50px;object-fit:contain}.logo-text{letter-spacing:2px}.header-nav{display:flex;gap:2rem;align-items:center;flex:1;justify-content:center}.nav-link{background:none;border:none;color:var(--charcoal);font-size:.95rem;cursor:pointer;padding:.5rem 0;transition:color .3s}.nav-link:hover{color:var(--secondary)}.nav-link.login-btn{color:var(--primary);font-weight:600}.header-right{display:flex;gap:1rem;align-items:center;min-width:fit-content}.hero-section{max-width:1400px;margin:0 auto;padding:4rem 2rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-text{display:flex;flex-direction:column;gap:1.5rem}.hero-title{font-size:3.5rem;font-weight:700;line-height:1.1;color:var(--primary)}.hero-tagline{font-size:1.5rem;color:var(--secondary);font-weight:600;margin:0}.hero-description{font-size:1.1rem;line-height:1.6;color:#555}.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap}.cta-button{padding:.875rem 2rem;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s}.cta-button.primary-btn{background:var(--primary);color:#fff}.cta-button.primary-btn:hover{background:#2d2e7a;transform:translateY(-2px);box-shadow:0 4px 12px #3b3d9833}.cta-button.secondary-btn{background:#fff;color:var(--secondary);border:2px solid var(--secondary)}.cta-button.secondary-btn:hover{background:#2ca7a00d}.hero-visual{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2rem}.hero-logo-container{width:100%;text-align:center}.hero-logo{max-width:100%;height:auto;max-height:300px;object-fit:contain}.horizon-gauge{text-align:center}.gauge-circle{width:200px;height:200px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.gauge-circle svg{width:100%;height:100%}.gauge-text{font-size:48px;font-weight:700;fill:var(--secondary)}.gauge-label{font-size:1.1rem;font-weight:600;color:var(--charcoal)}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{font-size:2.5rem;color:var(--primary);margin:0 0 .5rem}.section-header p{font-size:1.1rem;color:#666;margin:0}.about-section{max-width:1200px;margin:0 auto;padding:5rem 2rem;background:#fff}.about-container{max-width:900px;margin:0 auto}.about-header{text-align:center;margin-bottom:3rem;border-bottom:3px solid var(--secondary);padding-bottom:2rem}.about-header h2{font-size:3rem;color:var(--primary);margin:0 0 .5rem;font-weight:700}.about-header h3{font-size:1.5rem;color:var(--secondary);margin:0 0 1rem;font-weight:600}.about-tagline{font-size:1.3rem;color:var(--accent);font-weight:600;font-style:italic;margin:0}.about-content{display:flex;flex-direction:column;gap:2rem}.about-intro{font-size:1.15rem;line-height:1.8;color:var(--charcoal);font-weight:500;background:linear-gradient(135deg,#2ca7a014,#3b3d9814);padding:2rem;border-radius:12px;border-left:4px solid var(--secondary)}.about-text{font-size:1.05rem;line-height:1.8;color:#555;margin:0}.report-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin:1.5rem 0}.report-type-card{background:#fff;padding:1.5rem;border-radius:10px;border:2px solid var(--border-gray);text-align:center;transition:all .3s}.report-type-card:hover{transform:translateY(-4px);box-shadow:0 6px 16px #0000001a;border-color:var(--primary)}.report-type-card h4{font-size:1.2rem;color:var(--primary);margin:0 0 .5rem;font-weight:600}.report-type-card p{font-size:.95rem;color:#666;margin:0;line-height:1.5}.about-highlight{background:linear-gradient(135deg,var(--primary),var(--secondary));padding:2.5rem;border-radius:12px;margin:1rem 0;box-shadow:0 8px 24px #3b3d9826}.highlight-text{color:#fff;font-size:1.15rem;line-height:1.8;margin:0;font-weight:500;text-align:center}.about-conclusion{text-align:center;font-size:1.2rem;line-height:1.8;color:var(--charcoal);margin:2rem 0 0;padding-top:2rem;border-top:2px solid var(--border-gray)}.about-conclusion strong{color:var(--secondary);font-size:1.3rem;display:block;margin-top:.5rem}.features-section{max-width:1400px;margin:0 auto;padding:4rem 2rem;background:var(--light-gray)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.feature-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000000f;text-align:center;transition:all .3s;border:2px solid transparent}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:var(--secondary)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{font-size:1.3rem;color:var(--primary);margin:0 0 .5rem}.feature-card p{color:#666;margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.mock-score{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:#fff;padding:.75rem;border-radius:6px;font-weight:600;font-size:.9rem}.agegroups-section{max-width:1400px;margin:0 auto;padding:4rem 2rem}.agegroups-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.agegroup-card{background:#fff;padding:2rem;border-radius:12px;border:2px solid var(--border-gray);text-align:center;transition:all .3s}.agegroup-card:hover{border-color:var(--accent);box-shadow:0 4px 12px #d9a44126}.age-badge{display:inline-block;background:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:20px;font-weight:700;margin-bottom:1rem}.agegroup-card h3{font-size:1.2rem;color:var(--charcoal);margin:.5rem 0}.agegroup-card p{color:#666;font-size:.9rem;margin:.5rem 0 1rem}.adaptive-label{display:inline-block;background:#2ca7a01a;color:var(--secondary);padding:.4rem .8rem;border-radius:6px;font-size:.85rem;font-weight:600}.demo-section{max-width:1400px;margin:0 auto;padding:4rem 2rem;background:var(--light-gray)}.demo-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #00000014}.demo-tabs{display:flex;border-bottom:2px solid var(--border-gray);background:#fff}.demo-tab{flex:1;padding:1.5rem;background:none;border:none;cursor:pointer;font-weight:600;color:#999;transition:all .3s;border-bottom:3px solid transparent;margin-bottom:-2px}.demo-tab:hover{color:var(--charcoal)}.demo-content{padding:2rem;animation:fadeIn .4s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.report-view h3{color:var(--charcoal);font-size:1.8rem;margin-bottom:2rem}.report-view h4{color:var(--primary);font-size:1.2rem;margin:1.5rem 0 1rem}.score-bar-section{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2.5rem;padding:1.5rem;background:linear-gradient(135deg,#2ca7a00d,#d9a4410d);border-radius:12px}.score-metric{display:flex;flex-direction:column;gap:.5rem}.score-metric label{font-weight:600;color:var(--charcoal);font-size:.9rem}.score-bar-container{height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden}.score-bar{height:100%;border-radius:6px;animation:slideIn 1s ease-out}@keyframes slideIn{0%{width:0!important}}.score-value{font-weight:700;color:var(--secondary);font-size:.95rem}.interactive-card{background:#fff;border:2px solid var(--border-gray);border-radius:10px;padding:1.5rem;margin-bottom:1.2rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.interactive-card:hover{border-color:var(--secondary);box-shadow:0 4px 12px #d9a44126;transform:translateY(-2px)}.interactive-card.expanded{border-color:var(--primary);box-shadow:0 6px 16px #2ca7a033}.interactive-card h4{margin:0 0 .8rem;display:flex;align-items:center;gap:.5rem;color:var(--charcoal);font-size:1.1rem}.interactive-card h4:after{content:"▼";margin-left:auto;font-size:.8rem;transition:transform .3s;color:var(--secondary)}.interactive-card.expanded h4:after{transform:rotate(180deg)}.card-content{display:flex;flex-direction:column;gap:.8rem}.card-description{color:#666;font-size:.95rem;line-height:1.5;padding:.8rem;background:#2ca7a00d;border-left:3px solid var(--primary);border-radius:4px;margin:.5rem 0 0;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.strengths-list,.growth-list{display:flex;flex-wrap:wrap;gap:.7rem}.strength-badge,.growth-badge{display:inline-block;padding:.6rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;transition:all .3s}.strength-badge{background:linear-gradient(135deg,#2ca7a033,#d9a4411a);color:var(--primary);border:1px solid var(--primary)}.strength-badge:hover{background:linear-gradient(135deg,#2ca7a04d,#d9a44126);transform:scale(1.05)}.growth-badge{background:linear-gradient(135deg,#d9a44133,#2ca7a01a);color:var(--accent);border:1px solid var(--accent)}.growth-badge:hover{background:linear-gradient(135deg,#d9a4414d,#2ca7a026);transform:scale(1.05)}.practices-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.practice-item{display:flex;align-items:center;gap:.8rem;padding:1rem;background:linear-gradient(135deg,var(--light-gray) 0%,rgba(217,164,65,.05) 100%);border-radius:8px;border-left:4px solid var(--secondary);transition:all .3s}.practice-item:hover{background:linear-gradient(135deg,#d9a4411a,#d9a44114);transform:translate(4px)}.practice-number{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--secondary);color:#fff;border-radius:50%;font-weight:700;flex-shrink:0}.parent-gauge{text-align:center;margin-bottom:2.5rem;padding:2rem;background:linear-gradient(135deg,#2ca7a014,#d9a44114);border-radius:12px}.gauge-widget{display:inline-block}.gauge-display{font-size:3.5rem;font-weight:700;color:var(--primary);animation:popIn .6s cubic-bezier(.68,-.55,.265,1.55)}@keyframes popIn{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.gauge-label{font-weight:700;color:var(--charcoal);font-size:1rem}.gauge-description{color:var(--secondary);font-size:.9rem;font-weight:600;margin-top:.5rem}.parent-strength-box,.parent-support-box{padding:.8rem 1.2rem;border-radius:8px;font-weight:600;display:inline-block;margin-right:.5rem;margin-bottom:.5rem}.parent-strength-box{background:linear-gradient(135deg,#2ca7a026,#d9a4411a);color:var(--primary);border:1px solid var(--primary)}.parent-support-box{background:linear-gradient(135deg,#d9a44126,#d9a4411a);color:var(--accent);border:1px solid var(--accent)}.strategy-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.strategy-card{padding:1rem;background:linear-gradient(135deg,#2ca7a014,#d9a44114);border-radius:8px;border-left:4px solid var(--secondary);transition:all .3s;display:flex;flex-direction:column;gap:.5rem}.strategy-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.strategy-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--secondary);color:#fff;border-radius:50%;font-weight:700;font-size:.9rem}.strategy-card p{margin:0;font-size:.9rem;color:var(--charcoal);line-height:1.4}.counsellor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:2rem}.counsellor-stat-box{padding:1.2rem;background:linear-gradient(135deg,var(--light-gray) 0%,rgba(217,164,65,.08) 100%);border-radius:10px;border:2px solid var(--border-gray);transition:all .3s;display:flex;flex-direction:column;gap:.5rem;text-align:center}.counsellor-stat-box:hover{border-color:var(--secondary);transform:translateY(-4px);box-shadow:0 6px 16px #d9a44133}.stat-label{font-size:.85rem;color:#999;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1.5rem;font-weight:700;color:var(--primary)}.aptitude-bars{display:flex;flex-direction:column;gap:1rem}.aptitude-item{display:flex;flex-direction:column;gap:.4rem}.aptitude-item label{font-weight:600;color:var(--charcoal);font-size:.9rem}.progress-bar{height:10px;background:#e5e7eb;border-radius:5px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--secondary),var(--primary));border-radius:5px;animation:slideIn .8s ease-out}.aptitude-item>span{font-weight:700;color:var(--secondary);font-size:.9rem}.intervention-list{display:flex;flex-direction:column;gap:.8rem}.intervention-item{display:flex;align-items:center;gap:1rem;padding:.8rem;border-radius:8px;background:var(--light-gray);border-left:4px solid var(--secondary);transition:all .3s}.intervention-item:hover{transform:translate(4px);box-shadow:0 2px 8px #00000014}.intervention-item.tier1{border-left-color:var(--primary)}.intervention-item.tier2{border-left-color:var(--accent)}.tier-badge{display:inline-block;padding:.3rem .7rem;border-radius:4px;font-size:.75rem;font-weight:700;text-transform:uppercase;background:var(--primary);color:#fff;min-width:50px;text-align:center}.intervention-item.tier2 .tier-badge{background:var(--accent)}@media(max-width:768px){.score-bar-section,.practices-grid,.strategy-cards{grid-template-columns:1fr}.counsellor-grid{grid-template-columns:repeat(2,1fr)}.demo-content{padding:1rem}}.demo-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.demo-content{padding:3rem;min-height:400px}.report-view h3{color:var(--primary);font-size:1.5rem;margin:0 0 1.5rem}.strengths-section,.growth-section,.practices-section,.parent-summary,.recommendations,.counsellor-data,.action-plan{margin-bottom:1.5rem}.strengths-section h4,.growth-section h4,.practices-section h4,.parent-summary,.recommendations h4,.counsellor-data,.action-plan h4{color:var(--secondary);margin-bottom:.75rem;font-weight:600}.report-view ul,.report-view ol{margin:0;padding-left:1.5rem}.report-view li{margin-bottom:.5rem;color:#555;line-height:1.6}.parent-summary p{margin:.75rem 0;color:#555}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.column{display:flex;flex-direction:column;gap:1rem}.column h4{font-size:1.3rem;color:var(--primary);margin:0}.column p{color:#555;line-height:1.6;margin:0}.mock-table{background:var(--light-gray);padding:1.5rem;border-radius:8px}.mock-table table{width:100%;border-collapse:collapse}.mock-table th{background:#fff;padding:.75rem;text-align:left;font-weight:600;color:var(--primary);border-bottom:2px solid var(--border-gray)}.mock-table td{padding:.75rem;border-bottom:1px solid var(--border-gray);color:#555}.features-highlight{display:flex;flex-direction:column;gap:1rem}.highlight-item{background:linear-gradient(135deg,#2ca7a01a,#d9a4411a);padding:1rem;border-radius:8px;border-left:4px solid var(--accent);color:#555;font-weight:500}.schools-section{max-width:1400px;margin:0 auto;padding:4rem 2rem}.parents-section{max-width:1400px;margin:0 auto;padding:4rem 2rem;background:var(--light-gray)}.counsellor-preview-section{max-width:1400px;margin:0 auto;padding:4rem 2rem}.dashboard-mock{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.dashboard-stat{background:#fff;padding:2rem;border-radius:12px;text-align:center;box-shadow:0 2px 8px #0000000f;border-top:4px solid var(--secondary)}.dashboard-stat.warning{border-top-color:#ff6b6b}.dashboard-stat.success{border-top-color:#51cf66}.stat-number{font-size:2.5rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.dashboard-stat.warning .stat-number{color:#ff6b6b}.dashboard-stat.success .stat-number{color:#51cf66}.stat-label{font-size:.95rem;color:#666}.landing-footer{background:#1a1a1f;color:#ddd;margin-top:4rem;padding:3rem 2rem 1rem}.footer-content{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h4{color:#fff;margin:0 0 1rem;font-size:1rem}.footer-section p{margin:.5rem 0;font-size:.9rem}.footer-section ul{list-style:none;padding:0;margin:0}.footer-section li{margin-bottom:.5rem}.footer-section a{color:#ddd;text-decoration:none;transition:color .3s}.footer-section a:hover{color:var(--accent)}.privacy-note{font-size:.8rem;color:#999;margin-top:1rem}.footer-bottom{text-align:center;border-top:1px solid #333;padding-top:1rem;color:#999;font-size:.9rem}@media(max-width:768px){.header-content{flex-direction:column;padding:1rem;gap:1rem}.header-nav{order:3;width:100%;flex-wrap:wrap;gap:.75rem;justify-content:center}.header-right{order:2;width:100%;justify-content:center}.hero-section{grid-template-columns:1fr;gap:2rem;padding:2rem 1rem}.hero-title{font-size:2.2rem}.hero-tagline{font-size:1.2rem}.features-grid,.agegroups-grid{grid-template-columns:1fr}.two-column{grid-template-columns:1fr;gap:2rem}.dashboard-mock{grid-template-columns:repeat(2,1fr)}.footer-content{grid-template-columns:1fr}}@media(max-width:480px){.logo-section{font-size:1rem}.hero-title,.section-header h2{font-size:1.8rem}.cta-button{width:100%}.dashboard-mock{grid-template-columns:1fr}}.privacy-policy-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.privacy-header{max-width:900px;margin:0 auto 40px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a}.privacy-header h1{font-size:42px;margin:20px 0 10px;color:#333;text-align:center}.privacy-content{max-width:900px;margin:0 auto 40px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a;line-height:1.8}.policy-section{margin-bottom:40px}.policy-section:last-child{margin-bottom:0}.policy-section h2{color:#667eea;font-size:24px;margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.policy-section h3{color:#333;font-size:18px;margin:25px 0 15px}.policy-section h4{color:#555;font-size:16px;margin:15px 0 10px;font-weight:600}.policy-section p{color:#555;margin:0 0 15px;font-size:15px}.policy-section ul,.policy-section ol{margin:15px 0 15px 20px;padding-left:20px}.policy-section li{color:#555;margin-bottom:10px;font-size:15px}.info-subsection{background:#f9f9f9;padding:15px 20px;border-radius:8px;margin:15px 0;border-left:4px solid #667eea}.privacy-footer{max-width:900px;margin:0 auto;text-align:center;padding:20px}@media(max-width:768px){.privacy-policy-container{padding:20px 15px}.privacy-header,.privacy-content{padding:25px;border-radius:10px}.privacy-header h1{font-size:28px}.policy-section h2{font-size:20px}.policy-section h3{font-size:16px}.policy-section p,.policy-section li{font-size:14px}.info-subsection{padding:12px 15px}}.terms-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.terms-header{max-width:900px;margin:0 auto 40px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a}.terms-header h1{font-size:42px;margin:20px 0 10px;color:#333;text-align:center}.terms-content{max-width:900px;margin:0 auto 40px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a;line-height:1.8}.terms-section{margin-bottom:35px}.terms-section:last-child{margin-bottom:0}.terms-section h2{color:#667eea;font-size:24px;margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.terms-section p{color:#555;margin:0 0 15px;font-size:15px}.terms-section ul,.terms-section ol{margin:15px 0 15px 20px;padding-left:20px}.terms-section li{color:#555;margin-bottom:10px;font-size:15px}.terms-section strong{color:#333;font-weight:600}.terms-footer{max-width:900px;margin:0 auto;text-align:center;padding:20px}@media(max-width:768px){.terms-container{padding:20px 15px}.terms-header,.terms-content{padding:25px;border-radius:10px}.terms-header h1{font-size:28px}.terms-section h2{font-size:20px}.terms-section p,.terms-section li{font-size:14px}.intro-box,.contact-section{padding:15px}}.eula-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.eula-header{max-width:900px;margin:0 auto 40px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a}.eula-header h1{font-size:42px;margin:20px 0 10px;color:#333;text-align:center}.last-updated{text-align:center;color:#999;font-size:14px;margin:0}.eula-content{max-width:900px;margin:0 auto 40px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a;line-height:1.8}.intro-box{background:#f0f4ff;padding:25px;border-radius:8px;border-left:4px solid #667eea;margin-bottom:30px}.intro-box p{color:#555;margin:12px 0;font-size:15px}.intro-box p:first-child{margin-top:0;font-weight:600;color:#667eea}.eula-section{margin-bottom:35px}.eula-section:last-child{margin-bottom:0}.eula-section h2{color:#667eea;font-size:24px;margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.eula-section h3{color:#333;font-size:18px;margin:20px 0 15px}.eula-section p{color:#555;margin:0 0 15px;font-size:15px}.eula-section ul,.eula-section ol{margin:15px 0 15px 20px;padding-left:20px}.eula-section li{color:#555;margin-bottom:10px;font-size:15px}.eula-section strong{color:#333;font-weight:600}.dispute-box{background:#f9f9f9;padding:20px;border-radius:8px;margin:15px 0;border-left:4px solid #667eea}.dispute-box h3{color:#667eea;margin-top:0}.dispute-box p{margin:10px 0}.dispute-box ul{margin:10px 0 10px 20px;padding-left:20px}.dispute-box li{margin-bottom:8px}.contact-section{background:#f0f4ff;padding:25px;border-radius:8px;border-left:4px solid #667eea}.contact-info{background:#fff;padding:20px;border-radius:6px;margin-top:15px}.contact-info p{margin:12px 0;display:flex;align-items:center;gap:10px}.eula-footer{max-width:900px;margin:0 auto;text-align:center;padding:20px}@media(max-width:768px){.eula-container{padding:20px 15px}.eula-header,.eula-content{padding:25px;border-radius:10px}.eula-header h1{font-size:28px}.eula-section h2{font-size:20px}.eula-section h3{font-size:16px}.eula-section p,.eula-section li{font-size:14px}.intro-box,.dispute-box,.contact-section{padding:15px}}.disclaimer-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.disclaimer-header{max-width:900px;margin:0 auto 40px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a}.back-link{display:inline-block;color:#667eea;text-decoration:none;font-weight:600;margin-bottom:20px;transition:color .3s}.back-link:hover{color:#5568d3;text-decoration:underline}.disclaimer-header h1{font-size:42px;margin:20px 0 10px;color:#333;text-align:center}.subtitle{text-align:center;color:#667eea;font-size:18px;font-weight:600;margin:0}.disclaimer-content{max-width:900px;margin:0 auto 40px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a;line-height:1.8}.disclaimer-section{margin-bottom:35px}.disclaimer-section:last-child{margin-bottom:0}.intro-section{background:#f0f4ff;padding:25px;border-radius:8px;border-left:4px solid #667eea;margin-bottom:40px}.intro-text{color:#555;font-size:16px;margin:0;line-height:1.8}.disclaimer-section h2{color:#667eea;font-size:24px;margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.disclaimer-list{display:grid;grid-template-columns:1fr;gap:15px}.disclaimer-item{display:flex;gap:15px;align-items:flex-start;padding:15px;background:#f9f9f9;border-radius:8px;border-left:3px solid #e74c3c}.disclaimer-item .icon{font-size:24px;flex-shrink:0;margin-top:2px}.disclaimer-item p{margin:0;color:#555;font-size:15px}.disclaimer-item strong{color:#333}.guidance-box{background:#f0f4ff;padding:25px;border-radius:8px;border-left:4px solid #667eea}.guidance-box ul{margin:0;padding-left:25px}.guidance-box li{color:#555;margin-bottom:12px;font-size:15px}.purpose-box{background:#f0f9f7;padding:25px;border-radius:8px;border-left:4px solid #2CA7A0}.purpose-box p{color:#555;margin:0 0 15px;font-size:15px}.purpose-box p:first-child{font-size:16px;color:#2ca7a0;font-weight:600}.purpose-box ul{margin:12px 0 12px 25px;padding-left:0}.purpose-box li{color:#555;margin-bottom:8px;font-size:14px}.liability-box{background:#fff3cd;padding:25px;border-radius:8px;border-left:4px solid #ffc107}.liability-box p{color:#555;margin:0 0 15px;font-size:15px}.liability-box p:last-child{margin-bottom:0}.liability-box strong{color:#333;font-weight:600}.acknowledgement-box{background:#e8f5e9;padding:25px;border-radius:8px;border-left:4px solid #4caf50}.acknowledgement-box p{color:#555;margin:0 0 15px;font-size:15px}.acknowledgement-box p:last-child{margin-bottom:0}.acknowledgement-box strong{color:#2e7d32;font-weight:600}.contact-info{background:#f0f4ff;padding:25px;border-radius:8px;border-left:4px solid #667eea}.contact-info p{color:#555;margin:12px 0;font-size:15px}.contact-info p:first-child{margin-top:0}.contact-info a{color:#667eea;text-decoration:none;font-weight:600}.contact-info a:hover{text-decoration:underline;color:#5568d3}.disclaimer-footer{max-width:900px;margin:0 auto;text-align:center;padding:20px}.footer-link{display:inline-block;background:#fff;color:#667eea;padding:12px 30px;border-radius:6px;text-decoration:none;font-weight:600;transition:all .3s;box-shadow:0 4px 15px #0000001a}.footer-link:hover{background:#667eea;color:#fff;box-shadow:0 6px 20px #667eea4d}@media(max-width:768px){.disclaimer-container{padding:20px 15px}.disclaimer-header,.disclaimer-content{padding:25px;border-radius:10px}.disclaimer-header h1{font-size:28px}.disclaimer-section h2{font-size:20px}.subtitle{font-size:16px}.intro-text,.disclaimer-item p,.guidance-box li,.contact-info p{font-size:14px}.disclaimer-item{gap:10px;padding:12px}.disclaimer-item .icon{font-size:20px}}.App{min-height:100vh;display:flex;flex-direction:column}.app-header{background:#fffffff2;padding:2rem;text-align:center;box-shadow:0 2px 10px #0000001a}.app-header h1{color:#667eea;font-size:2.5rem;margin-bottom:.5rem}.tagline{color:#666;font-style:italic;font-size:1.1rem}.app-main{flex:1;padding:2rem}.home-page{max-width:800px;margin:0 auto}.welcome-card{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 10px 40px #0003}.welcome-card h2{color:#667eea;font-size:2rem;margin-bottom:.5rem}.welcome-card>p{color:#764ba2;font-weight:600;margin-bottom:1rem}.description{color:#666;line-height:1.6;margin-bottom:2rem;font-size:1.1rem}.status-indicator{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.status-indicator h3{color:#333;margin-bottom:1rem}.status{display:flex;align-items:center;gap:.5rem;font-size:1rem;padding:.75rem;border-radius:6px;background:#fff}.status.ok{color:#28a745;border-left:4px solid #28a745}.status.error{color:#dc3545;border-left:4px solid #dc3545}.status.loading{color:#6c757d;border-left:4px solid #6c757d}.status-dot{width:10px;height:10px;border-radius:50%;background:currentColor;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.features-preview{margin-top:2rem}.features-preview h3{color:#333;margin-bottom:1rem}.features-preview ul{list-style:none;padding:0}.features-preview li{padding:.75rem;margin-bottom:.5rem;background:#f8f9fa;border-radius:6px;border-left:4px solid #667eea;font-size:1rem;color:#333}@media(max-width:768px){.app-header h1{font-size:1.8rem}.welcome-card{padding:1.5rem}.welcome-card h2{font-size:1.5rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
