:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--auth-text: #000000;--auth-text-secondary: #333333;--auth-bg: #ffffff;--auth-border: #e1e5e9}[data-theme=dark]{--auth-text: #ffffff;--auth-text-secondary: #ffffff;--auth-bg: #2a2b35;--auth-border: #3a3b45}@media (prefers-color-scheme: dark){[data-theme=auto]{--auth-text: #ffffff;--auth-text-secondary: #ffffff;--auth-bg: #2a2b35;--auth-border: #3a3b45}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:20px}.password-toggle{position:absolute;right:12px;background:none;border:none;cursor:pointer;font-size:18px;color:#666;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s;z-index:1}.password-toggle:hover{color:#667eea}.auth-card{background:var(--auth-bg);border-radius:15px;box-shadow:0 20px 60px #0000001a;padding:40px;width:100%;max-width:500px}.auth-header{text-align:center;margin-bottom:40px}.brand-link{text-decoration:none;color:inherit}.auth-header h1{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:32px;margin-bottom:10px}.auth-header h2{color:var(--auth-text);font-size:24px;margin-bottom:10px}.auth-header p{color:var(--auth-text-secondary);font-size:16px}.auth-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-group label{color:var(--auth-text);font-weight:500;margin-bottom:5px;font-size:14px}.form-group input,.form-group select{padding:12px 15px;border:2px solid var(--auth-border);border-radius:8px;font-size:16px;background:var(--auth-bg);color:var(--auth-text);transition:border-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}.auth-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:15px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.auth-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;margin-top:30px;color:#666}.auth-link{color:#667eea;text-decoration:none;font-weight:500}.auth-link:hover{text-decoration:underline}.error-message{background:#fef2f2;color:#dc2626;padding:12px 15px;border-radius:8px;border:1px solid #fecaca;font-size:14px}@media (max-width: 768px){.auth-card{padding:30px 20px;margin:10px}.form-row{grid-template-columns:1fr;gap:20px}.auth-header h1{font-size:28px}.auth-header h2{font-size:22px}}.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:10px}.toast{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001a;border-left:4px solid #4CAF50;min-width:300px;max-width:400px;transform:translate(100%);opacity:0;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.toast.visible{transform:translate(0);opacity:1}.toast.success{border-left-color:#4caf50}.toast.error{border-left-color:#f44336}.toast.info{border-left-color:#2196f3}.toast-content{display:flex;align-items:center;padding:16px;gap:12px}.toast-icon{font-size:18px;flex-shrink:0}.toast-message{flex:1;font-weight:500;color:#333;line-height:1.4}.toast-close{background:none;border:none;font-size:20px;color:#999;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;flex-shrink:0}.toast-close:hover{background:#f5f5f5;color:#666}@media (max-width: 768px){.toast-container{top:10px;right:10px;left:10px}.toast{min-width:auto;max-width:none}}:root{--course-text: #000000;--course-text-secondary: #333333;--course-bg: #ffffff;--course-border: #e9ecef;--course-card-bg: #ffffff}[data-theme=dark]{--course-text: #ffffff;--course-text-secondary: #ffffff;--course-bg: #1a1b23;--course-border: #3a3b45;--course-card-bg: #2a2b35}@media (prefers-color-scheme: dark){[data-theme=auto]{--course-text: #ffffff;--course-text-secondary: #ffffff;--course-bg: #1a1b23;--course-border: #3a3b45;--course-card-bg: #2a2b35}}.course-tracker{max-width:1200px;margin:0 auto}.course-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.course-header-actions{display:flex;align-items:center;gap:15px;position:relative}.course-header h2{color:var(--course-text);font-size:28px;margin:0}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 24px;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-secondary{background:transparent;color:#667eea;padding:12px 24px;border:2px solid #667eea;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.course-form-container{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:20px}.course-form-container h3{color:var(--course-text);margin-bottom:25px;font-size:20px}.course-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{color:var(--course-text);font-weight:500;margin-bottom:5px;font-size:14px}.form-group input,.form-group select{padding:12px 15px;border:2px solid #e9ecef;border-radius:8px;font-size:16px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-checkboxes{display:flex;gap:30px;margin:10px 0}.checkbox-label{display:flex;align-items:center;gap:8px;color:var(--course-text);font-weight:500;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#667eea}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:10px}.courses-list{margin-top:20px}.courses-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:25px}.course-card{background:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 20px #0000000d;transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001a}.course-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.course-header h4{color:var(--course-text);font-size:18px;margin:0;flex:1}.course-actions{display:flex;gap:8px}.btn-icon{background:none;border:none;padding:6px;border-radius:6px;cursor:pointer;transition:background .2s}.btn-icon:hover{background:#f8f9fa}.btn-icon.delete:hover{background:#fef2f2}.course-details{display:flex;flex-direction:column;gap:15px}.course-grade{display:flex;align-items:center;gap:10px}.course-grade .label{color:var(--course-text-secondary);font-weight:500}.grade{padding:6px 12px;border-radius:20px;font-weight:600;font-size:14px}.grade.a,.grade.aplus{background:#d1fae5;color:#065f46}.grade.aminus,.grade.bplus,.grade.b{background:#dbeafe;color:#1e40af}.grade.bminus,.grade.cplus,.grade.c{background:#fef3c7;color:#92400e}.grade.cminus,.grade.dplus,.grade.d,.grade.dminus{background:#fed7aa;color:#9a3412}.grade.f{background:#fecaca;color:#991b1b}.course-info{display:flex;flex-direction:column;gap:8px}.info-item{color:var(--course-text-secondary);font-size:14px}.course-tags{display:flex;gap:8px;margin-top:10px}.tag{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.empty-state{text-align:center;padding:50px 20px;color:var(--course-text-secondary)}.empty-icon{font-size:64px;margin-bottom:20px}.empty-state h3{font-size:24px;margin-bottom:10px;color:var(--course-text)}.empty-state p{font-size:16px;max-width:400px;margin:0 auto}@media (max-width: 768px){.course-header{flex-direction:column;gap:15px;align-items:flex-start}.form-row{grid-template-columns:1fr;gap:15px}.form-checkboxes{flex-direction:column;gap:15px}.form-actions{justify-content:stretch}.form-actions button{flex:1}.courses-grid{grid-template-columns:1fr;gap:20px}.course-card{padding:20px}}.add-course-dropdown{position:relative}.dropdown-toggle{display:flex;align-items:center;gap:8px;position:relative}.dropdown-arrow{font-size:12px;transition:transform .2s ease}.course-dropdown-menu{position:absolute;top:100%;right:0;width:500px;max-height:600px;background:var(--course-card-bg);border:2px solid var(--course-border);border-radius:12px;box-shadow:0 8px 25px #00000026;z-index:1000;overflow-y:auto;margin-top:8px}.dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--course-border);background:var(--course-bg);border-radius:12px 12px 0 0}.dropdown-header h3{color:var(--course-text);font-size:18px;margin:0}.close-dropdown{background:none;border:none;font-size:18px;cursor:pointer;color:var(--course-text-secondary);padding:5px;border-radius:50%;transition:background-color .2s ease}.close-dropdown:hover{background:var(--course-border)}.course-categories{max-height:400px;overflow-y:auto;padding:15px}.course-category{margin-bottom:25px}.course-category h4{color:var(--course-text);font-size:16px;font-weight:600;margin-bottom:10px;padding:8px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:6px}.course-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.course-option{background:var(--course-card-bg);border:1px solid var(--course-border);padding:10px 12px;border-radius:6px;cursor:pointer;font-size:14px;color:var(--course-text);transition:all .2s ease;text-align:left}.dropdown-footer{padding:20px;border-top:1px solid var(--course-border);background:var(--course-bg);border-radius:0 0 12px 12px}.custom-course-btn{width:100%;background:transparent;border:2px dashed var(--course-border);padding:12px;border-radius:8px;cursor:pointer;color:var(--course-text-secondary);font-weight:500;transition:all .2s ease}.recommended-courses-section{margin:50px 0 40px}.section-header h2{color:var(--course-text);font-size:28px;margin-bottom:10px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-description{color:var(--course-text-secondary);font-size:16px;max-width:600px;margin:0 auto;line-height:1.6}.recommendations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:30px}.recommendation-box{background:var(--course-card-bg);border:2px solid var(--course-border);border-radius:16px;padding:30px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 20px #0000000d}.career-icon-large{font-size:40px;background:linear-gradient(135deg,#667eea,#764ba2);padding:15px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 15px #667eea4d}.career-title-section h3{color:var(--course-text);font-size:20px;margin:0 0 8px;font-weight:700}.career-subtitle{color:var(--course-text-secondary);font-size:14px;line-height:1.5;margin:0}.courses-list-box h4{color:var(--course-text);font-size:16px;margin-bottom:8px;font-weight:600}.click-instruction{color:var(--course-text-secondary);font-size:12px;margin:0 0 12px;font-style:italic}.course-tags{display:flex;flex-wrap:wrap;gap:8px}.course-tag{background:linear-gradient(135deg,#f8f9ff,#e8ebff);color:#667eea;padding:8px 12px;border-radius:20px;font-size:13px;font-weight:500;border:1px solid #e0e7ff;transition:all .2s ease;cursor:default}.course-tag.clickable{cursor:pointer;position:relative;padding-right:28px}.course-tag.clickable:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.add-icon{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:14px;font-weight:700;opacity:.7;transition:opacity .2s ease}.course-tag.clickable:hover .add-icon{opacity:1}.courses-list h2{color:var(--course-text);font-size:24px;margin-bottom:20px}@media (max-width: 768px){.course-header-actions{flex-direction:column;gap:10px;align-items:stretch}.course-dropdown-menu{width:95vw;right:auto;left:50%;transform:translate(-50%);max-height:70vh}.course-list{grid-template-columns:1fr}.recommendations-grid{grid-template-columns:1fr;gap:25px}.recommendation-box{padding:25px}.box-header{gap:15px}.career-icon-large{font-size:32px;padding:12px}.recommended-courses-section{margin:30px 0}.section-header{margin-bottom:30px}}@media (max-width: 480px){.course-dropdown-menu{width:98vw;margin-top:5px}.dropdown-header,.dropdown-footer{padding:15px}.course-categories{padding:10px}.recommendation-box{padding:20px}.box-header{flex-direction:column;text-align:center;gap:15px}.career-icon-large{font-size:28px;padding:10px}.career-title-section{text-align:center}.section-header h2{font-size:24px}}:root{--gpa-text: #000000;--gpa-text-secondary: #333333;--gpa-bg: #ffffff;--gpa-border: #e9ecef;--gpa-card-bg: #ffffff}[data-theme=dark]{--gpa-text: #ffffff;--gpa-text-secondary: #ffffff;--gpa-bg: #1a1b23;--gpa-border: #3a3b45;--gpa-card-bg: #2a2b35}@media (prefers-color-scheme: dark){[data-theme=auto]{--gpa-text: #ffffff;--gpa-text-secondary: #ffffff;--gpa-bg: #1a1b23;--gpa-border: #3a3b45;--gpa-card-bg: #2a2b35}}.gpa-calculator{max-width:1200px;margin:0 auto}.gpa-calculator h2{color:var(--gpa-text);font-size:28px;margin-bottom:30px}.gpa-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-bottom:40px}.gpa-card{background:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 20px #0000000d;text-align:center;transition:transform .2s,box-shadow .2s}.gpa-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001a}.gpa-card h3{color:var(--gpa-text);font-size:18px;margin-bottom:20px}.gpa-value{font-size:48px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px}.gpa-value.weighted{background:linear-gradient(135deg,#f093fb,#f5576c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gpa-card p{color:var(--gpa-text-secondary);font-size:14px}.gpa-breakdown{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.gpa-breakdown h3{color:var(--gpa-text);font-size:20px;margin-bottom:25px}.breakdown-table{display:flex;flex-direction:column;gap:1px;background:#f1f3f4;border-radius:8px;overflow:hidden}.table-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:20px;padding:15px 20px;background:#667eea;color:#fff;font-weight:600;font-size:14px}.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:20px;padding:15px 20px;background:#fff;align-items:center}.table-row:nth-child(2n){background:#f8f9ff}.table-row span:first-child{font-weight:500;color:var(--gpa-text)}.gpa-tips{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d}.gpa-tips h3{color:var(--gpa-text);font-size:20px;margin-bottom:20px}.gpa-tips ul{list-style:none;padding:0;margin:0}.gpa-tips li{padding:12px 0 12px 30px;position:relative;color:var(--gpa-text-secondary);border-bottom:1px solid #f0f0f0}.gpa-tips li:last-child{border-bottom:none}.gpa-tips li:before{content:"💡";position:absolute;left:0;top:12px}@media (max-width: 768px){.gpa-overview{grid-template-columns:1fr;gap:20px}.gpa-card{padding:30px 20px}.gpa-value{font-size:36px}.table-header,.table-row{grid-template-columns:2fr 80px 80px 80px 80px;gap:10px;padding:12px 15px;font-size:13px}.gpa-breakdown,.gpa-tips{padding:20px}}:root{--college-text: #000000;--college-text-secondary: #333333;--college-bg: #ffffff;--college-border: #e9ecef;--college-card-bg: #ffffff}[data-theme=dark]{--college-text: #ffffff;--college-text-secondary: #ffffff;--college-bg: #1a1b23;--college-border: #3a3b45;--college-card-bg: #2a2b35}@media (prefers-color-scheme: dark){[data-theme=auto]{--college-text: #ffffff;--college-text-secondary: #ffffff;--college-bg: #1a1b23;--college-border: #3a3b45;--college-card-bg: #2a2b35}}.college-search{max-width:1200px;margin:0 auto;padding:20px}.college-search h2{color:var(--college-text);font-size:28px;margin-bottom:30px;text-align:center}.search-section{margin-bottom:25px}.search-bar{display:flex;gap:15px;max-width:600px}.search-bar input{flex:1;padding:15px 20px;border:2px solid #e9ecef;border-radius:10px;font-size:16px;transition:border-color .2s,box-shadow .2s}.search-bar input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.target-colleges{margin-bottom:25px}.target-colleges h3{color:#333;font-size:24px;margin-bottom:25px}.colleges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px}.college-card{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 20px #0000000d;transition:transform .2s,box-shadow .2s;position:relative;border-left:4px solid #e9ecef}.college-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001a}.college-card.target{border-left-color:#3b82f6}.college-card.reach{border-left-color:#f59e0b}.college-card.safety{border-left-color:#10b981}.college-card h4,.college-card h5{color:#333;font-size:18px;margin-bottom:10px;font-weight:600}.college-location{color:#666;font-size:14px;margin-bottom:15px}.college-stats{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.college-stats span{color:#555;font-size:14px;background:#f8f9ff;padding:6px 12px;border-radius:6px;display:inline-block}.priority-tag{position:absolute;top:15px;right:15px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.priority-tag.reach{background:#fef3c7;color:#92400e}.priority-tag.target{background:#dbeafe;color:#1e40af}.priority-tag.safety{background:#d1fae5;color:#065f46}.btn-outline{background:transparent;color:#667eea;padding:8px 16px;border:2px solid #667eea;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;text-align:center}.btn-outline:disabled{opacity:.6;cursor:not-allowed;background:transparent;color:#667eea}.btn-sm{padding:6px 12px;font-size:14px}.recommendations{margin-bottom:25px}.recommendations h3{color:#333;font-size:24px;margin-bottom:20px}.recommendation-category{margin-bottom:20px}.recommendation-category h4{color:#333;font-size:20px;margin-bottom:20px;display:flex;align-items:center;gap:10px}.recommendation-category h4:before{content:"";width:4px;height:24px;border-radius:2px}.recommendation-category:nth-child(1) h4:before{background:#f59e0b}.recommendation-category:nth-child(2) h4:before{background:#3b82f6}.recommendation-category:nth-child(3) h4:before{background:#10b981}.search-results{margin-bottom:25px}.search-results h3{color:#333;font-size:24px;margin-bottom:25px}.loading{text-align:center;padding:40px;color:#667eea;font-size:18px}@media (max-width: 768px){.search-bar{flex-direction:column;max-width:none}.colleges-grid{grid-template-columns:1fr;gap:20px}.college-card{padding:20px}.priority-tag{position:static;margin-top:15px;display:inline-block}.college-stats{margin-bottom:20px}}.college-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.college-card-header h4{margin:0;flex:1}.remove-college-btn{background:#ff4757;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;font-weight:700;transition:all .2s ease;flex-shrink:0;margin-left:8px}.remove-college-btn:hover:not(:disabled){background:#ff3838;transform:scale(1.1)}.remove-college-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-container{margin-top:15px}.button-group{display:flex;align-items:center;gap:10px}.already-added-text{color:#10b981;font-weight:500;font-size:14px}.remove-college-btn-inline{background:#ff4757;color:#fff;border:none;border-radius:6px;padding:6px 12px;font-size:12px;cursor:pointer;transition:all .2s}.remove-college-btn-inline:hover{background:#ff3838}.remove-college-btn-inline:disabled{opacity:.5;cursor:not-allowed}.priority-and-remove{display:flex;justify-content:space-between;align-items:center;margin-top:15px;gap:10px}.remove-college-btn-bottom{background:#ff4757;color:#fff;border:none;border-radius:6px;padding:6px 12px;font-size:12px;cursor:pointer;transition:all .2s;flex-shrink:0}.remove-college-btn-bottom:hover{background:#ff3838}.remove-college-btn-bottom:disabled{opacity:.5;cursor:not-allowed}.match-score{margin:8px 0}.match-percentage{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;display:inline-block;box-shadow:0 2px 4px #667eea4d}.recommendations-section{margin:50px 0 40px}.section-header{text-align:center;margin-bottom:40px}.section-header h2{color:var(--college-text);font-size:28px;margin-bottom:10px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-description{color:var(--college-text-secondary);font-size:16px;max-width:600px;margin:0 auto;line-height:1.6}.recommendations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:30px}.recommendation-box{background:var(--college-card-bg);border:2px solid var(--college-border);border-radius:16px;padding:30px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 20px #0000000d}.recommendation-box:hover{transform:translateY(-6px);box-shadow:0 12px 40px #667eea33;border-color:#667eea}.reach-box{border-left:4px solid #f59e0b}.target-box{border-left:4px solid #10b981}.safety-box{border-left:4px solid #667eea}.box-header{display:flex;align-items:flex-start;gap:20px;margin-bottom:25px}.category-icon-large{font-size:40px;background:linear-gradient(135deg,#667eea,#764ba2);padding:15px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 15px #667eea4d}.category-title-section h3{color:var(--college-text);font-size:20px;margin:0 0 8px;font-weight:700}.category-subtitle{color:var(--college-text-secondary);font-size:14px;line-height:1.5;margin:0}.colleges-list-box h4{color:var(--college-text);font-size:16px;margin-bottom:8px;font-weight:600}.click-instruction{color:var(--college-text-secondary);font-size:12px;margin:0 0 20px;font-style:italic}.college-recommendations{display:flex;flex-direction:column;gap:15px}.college-recommendation-card{background:linear-gradient(135deg,#f8f9ff,#e8ebff);border:1px solid #e0e7ff;border-radius:12px;padding:20px;transition:all .2s ease}.college-recommendation-card:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.college-header h5{font-size:16px;font-weight:600;margin:0 0 5px}.college-recommendation-card:hover .college-header h5,.college-recommendation-card:hover .college-location,.college-recommendation-card:hover .college-stats span{color:#fff}.add-college-btn{background:transparent;border:2px solid #667eea;color:#667eea;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;font-size:14px;margin-top:10px;transition:all .2s}.college-recommendation-card:hover .add-college-btn{background:#fff;border-color:#fff;color:#667eea}.add-college-btn:hover{background:#667eea;color:#fff}.college-recommendation-card:hover .add-college-btn:hover{background:#ffffffe6;color:#667eea}.search-bar input{flex:1;padding:15px 20px;border:2px solid var(--college-border);border-radius:10px;font-size:16px;transition:border-color .2s,box-shadow .2s;background:var(--college-card-bg);color:var(--college-text)}.target-colleges h3,.search-results h3,.recommendations h3{color:var(--college-text);font-size:24px;margin-bottom:25px}.college-card{background:var(--college-card-bg);padding:25px;border-radius:12px;box-shadow:0 4px 20px #0000000d;transition:transform .2s,box-shadow .2s;position:relative;border:2px solid var(--college-border);border-left:4px solid #e9ecef}.college-card h4,.college-card h5{color:var(--college-text);font-size:18px;margin-bottom:10px;font-weight:600}.college-location{color:var(--college-text-secondary);font-size:14px;margin-bottom:15px}.college-stats span{color:var(--college-text-secondary);font-size:14px;background:#f8f9ff;padding:6px 12px;border-radius:6px;display:inline-block}.recommendation-category h4{color:var(--college-text);font-size:20px;margin-bottom:20px;display:flex;align-items:center;gap:10px}.loading{text-align:center;padding:40px;color:var(--college-text-secondary);font-size:18px}@media (max-width: 768px){.recommendations-grid{grid-template-columns:1fr;gap:25px}.recommendation-box{padding:25px}.box-header{gap:15px}.category-icon-large{font-size:32px;padding:12px}.college-recommendation-card{padding:15px}}@media (max-width: 480px){.college-search{padding:15px}.recommendation-box{padding:20px}.box-header{flex-direction:column;text-align:center;gap:15px}.category-icon-large{font-size:28px;padding:10px}.category-title-section{text-align:center}.section-header h2{font-size:24px}}.individual-colleges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:30px}.individual-college-box{background:var(--college-card-bg);border:2px solid var(--college-border);border-radius:12px;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 20px #0000000d}.individual-college-box:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001a}.reach-college{border-left:4px solid #f59e0b}.reach-college:hover{border-color:#f59e0b;box-shadow:0 8px 30px #f59e0b33}.target-college{border-left:4px solid #10b981}.target-college:hover{border-color:#10b981;box-shadow:0 8px 30px #10b98133}.safety-college{border-left:4px solid #667eea}.safety-college:hover{border-color:#667eea;box-shadow:0 8px 30px #667eea33}.college-content .college-header h5{color:var(--college-text);font-size:18px;font-weight:600;margin:0 0 5px}.college-content .college-location{color:var(--college-text-secondary);font-size:14px;margin-bottom:15px}.college-content .match-score{margin-bottom:15px}.college-content .match-percentage{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:6px 12px;border-radius:12px;font-size:13px;font-weight:600;display:inline-block}.college-content .college-stats{display:flex;flex-direction:column;gap:5px;margin-bottom:15px}.college-content .college-stats span{background:#f8f9ff;color:var(--college-text-secondary);padding:4px 8px;border-radius:6px;font-size:13px;display:inline-block;width:fit-content}.college-content .add-college-btn{background:transparent;border:2px solid #667eea;color:#667eea;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s;width:100%}.college-content .add-college-btn:hover{background:#667eea;color:#fff}.college-content .add-college-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.individual-colleges-grid{grid-template-columns:1fr;gap:15px}.individual-college-box{padding:15px}}@media (max-width: 480px){.individual-college-box{padding:15px}.college-content .college-header h5{font-size:16px}}.four-year-planner{background:var(--bg-primary);border-radius:16px;padding:30px;margin:30px 0;box-shadow:0 4px 20px #0000000d;border:2px solid var(--border-color)}.planner-header{text-align:center;margin-bottom:30px}.planner-header h3{color:var(--text-primary);font-size:28px;margin-bottom:10px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.planner-description{color:var(--text-secondary);font-size:16px;max-width:600px;margin:0 auto;line-height:1.6}.requirements-summary{margin-bottom:40px}.requirements-summary h4{color:var(--text-primary);font-size:20px;margin-bottom:20px;font-weight:600}.requirements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:30px}.requirement-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.requirement-card.missing{border-color:#ef4444;background:#fff;box-shadow:0 2px 8px #ef44441a}.requirement-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.req-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.req-subject{color:#1f2937;font-weight:600;font-size:16px}.req-credits{color:#4b5563;font-weight:600;font-size:14px}.progress-bar{width:100%;height:10px;background:#f3f4f6;border-radius:6px;overflow:hidden;margin-bottom:10px;border:1px solid #e5e7eb}.progress-fill{height:100%;background:linear-gradient(135deg,#10b981,#047857);border-radius:4px;transition:width .3s ease;box-shadow:inset 0 1px 2px #0000001a}.requirement-card.missing .progress-fill{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:inset 0 1px 2px #0000001a}.recommended-note{color:#7c3aed;font-size:12px;font-style:italic;font-weight:600;background:#f3e8ff;padding:4px 8px;border-radius:12px;display:inline-block;border:1px solid #e9d5ff}.academic-grid{background:var(--bg-primary);border-radius:12px;overflow:hidden;border:2px solid var(--border-color);margin-bottom:30px}.grid-header{display:grid;grid-template-columns:250px repeat(4,1fr);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.subject-column-header{padding:20px;border-right:1px solid rgba(255,255,255,.2);display:flex;align-items:center;font-size:16px}.grade-header{padding:15px;border-right:1px solid rgba(255,255,255,.2);text-align:center}.grade-header:last-child{border-right:none}.grade-title{font-size:16px;margin-bottom:5px}.grade-subtitle{font-size:12px;opacity:.9;margin-bottom:10px}.semester-headers{display:grid;grid-template-columns:1fr 1fr;gap:5px;font-size:11px;opacity:.8}.grid-body{background:var(--bg-primary)}.subject-row{display:grid;grid-template-columns:250px repeat(4,1fr);border-bottom:1px solid var(--border-color)}.subject-row:last-child{border-bottom:none}.subject-label{padding:20px;border-right:1px solid var(--border-color);background:var(--bg-secondary);display:flex;flex-direction:column;justify-content:center}.subject-name{color:var(--text-primary);font-weight:600;font-size:15px;margin-bottom:5px}.requirement-text{color:var(--text-secondary);font-size:12px;line-height:1.4}.recommended{color:#8b5cf6;font-weight:500}.grade-columns{display:grid;grid-template-columns:1fr 1fr;border-right:1px solid var(--border-color)}.grade-columns:last-child{border-right:none}.course-cell{min-height:80px;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);cursor:pointer;position:relative;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:10px}.course-cell:last-child{border-right:none}.course-cell:hover{background:#f8f9ff;border-color:#667eea}.course-cell.filled{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-color:#0ea5e9}.course-cell.ap{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.course-cell.honors{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);border-color:#8b5cf6}.course-content{text-align:center;width:100%}.course-name{color:var(--text-primary);font-weight:500;font-size:13px;line-height:1.3;display:block;margin-bottom:5px}.course-badges{display:flex;gap:4px;justify-content:center}.badge{padding:2px 6px;border-radius:10px;font-size:10px;font-weight:600;text-transform:uppercase}.badge.ap{background:#f59e0b;color:#fff}.badge.honors{background:#8b5cf6;color:#fff}.empty-cell{text-align:center;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:5px}.add-icon{font-size:20px;color:#667eea}.add-text{font-size:11px;font-weight:500}.course-cell:hover .empty-cell{color:#667eea}.college-recommendations{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid #667eea;border-radius:8px;padding:10px;z-index:100;box-shadow:0 4px 12px #0000001a;display:none}.course-cell:hover .college-recommendations{display:block}.recommendation-tip{font-size:11px;color:#667eea;margin-bottom:5px;font-weight:500}.recommendation-tip:last-child{margin-bottom:0}.course-selector-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:16px;max-width:600px;width:100%;max-height:80vh;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-header{padding:25px 30px;border-bottom:1px solid #e9ecef;background:#f8f9ff;position:relative}.modal-header h4{color:var(--text-primary);font-size:20px;margin-bottom:5px;font-weight:600}.modal-header p{color:var(--text-secondary);font-size:14px;margin:0}.close-modal{position:absolute;top:20px;right:25px;background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-secondary);padding:5px;border-radius:50%;transition:background .2s ease}.close-modal:hover{background:#f0f0f0}.course-options{padding:20px;max-height:400px;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.course-option{background:var(--bg-secondary);border:1px solid var(--border-color);padding:12px 15px;border-radius:8px;cursor:pointer;font-size:14px;color:var(--text-primary);transition:all .2s ease;text-align:left;position:relative;display:flex;align-items:center;gap:8px}.course-option:hover{background:#f8f9ff;border-color:#667eea;color:#667eea;transform:translateY(-1px)}.course-option.ap-course{border-left:4px solid #f59e0b}.course-option.honors-course{border-left:4px solid #8b5cf6}.modal-footer{padding:20px 30px;border-top:1px solid #e9ecef;background:#f8f9ff}.custom-course-btn{width:100%;background:transparent;border:2px dashed var(--border-color);padding:12px;border-radius:8px;cursor:pointer;color:var(--text-secondary);font-weight:500;transition:all .2s ease}.custom-course-btn:hover{border-color:#667eea;color:#667eea;background:#f8f9ff}.credit-summary{background:var(--bg-secondary);border-radius:12px;padding:25px;border:2px solid var(--border-color)}.credit-summary h4{color:var(--text-primary);font-size:18px;margin-bottom:20px;font-weight:600}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}.grade-summary{text-align:center;padding:15px;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color)}.grade-label{display:block;color:var(--text-secondary);font-size:14px;margin-bottom:5px}.credit-count{display:block;color:var(--text-primary);font-size:20px;font-weight:600}@media (max-width: 1200px){.grid-header,.subject-row{grid-template-columns:200px repeat(4,1fr)}.subject-column-header,.subject-label{padding:15px}.course-name{font-size:12px}}@media (max-width: 768px){.four-year-planner{padding:20px;margin:20px 0}.planner-header h3{font-size:24px}.requirements-grid{grid-template-columns:1fr;gap:15px}.academic-grid{overflow-x:auto}.grid-header,.subject-row{min-width:800px}.course-options{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.four-year-planner{padding:15px}.modal-content{margin:10px;max-height:90vh}.modal-header,.modal-footer{padding:20px}.summary-grid{grid-template-columns:1fr}.course-cell{min-height:60px;padding:5px}.course-name{font-size:11px}}.academic-planner{max-width:1400px;margin:0 auto}.planner-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.planner-header h2{color:#333;font-size:28px;margin:0}.view-toggle{display:flex;gap:10px}.toggle-btn{padding:12px 20px;border:2px solid #e9ecef;background:#fff;color:#666;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s;display:flex;align-items:center;gap:8px}.toggle-btn:hover{border-color:#667eea;color:#667eea}.toggle-btn.active{border-color:#667eea;background:#667eea;color:#fff}.gpa-projection-dashboard{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.gpa-projection-dashboard h3{color:#333;margin-bottom:25px;font-size:22px}.projection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.projection-card{background:#f8f9fa;padding:25px;border-radius:12px;text-align:center;border-left:4px solid #667eea}.projection-card.current{border-left-color:#4caf50}.projection-card.target{border-left-color:#2196f3}.projection-card.readiness{border-left-color:#ff9800}.projection-card h4{color:#666;font-size:14px;margin:0 0 15px;text-transform:uppercase;letter-spacing:.5px}.gpa-large{font-size:48px;font-weight:700;color:#333;margin-bottom:10px}.gpa-weighted,.total-credits{color:#666;font-size:14px}.readiness-score{font-size:48px;font-weight:700;color:#ff9800;margin-bottom:15px}.readiness-bar{background:#e9ecef;height:8px;border-radius:4px;overflow:hidden}.readiness-fill{background:linear-gradient(90deg,#ff9800,#ff5722);height:100%;transition:width .3s ease}.timeline-view{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.timeline-view h3{color:#333;margin-bottom:30px;font-size:22px}.timeline-container{position:relative;padding:20px 0}.timeline-line{position:absolute;left:50%;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,#667eea,#764ba2);transform:translate(-50%)}.timeline-year{display:flex;align-items:flex-start;margin-bottom:40px;position:relative}.timeline-year:nth-child(2n) .timeline-content{order:-1;margin-right:60px;margin-left:0}.timeline-year:nth-child(odd) .timeline-content{margin-left:60px}.timeline-marker{position:absolute;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:2}.marker-dot{width:20px;height:20px;background:#667eea;border:4px solid white;border-radius:50%;box-shadow:0 2px 8px #0003}.timeline-year.current .marker-dot{background:#4caf50;animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 2px 8px #0003}50%{box-shadow:0 2px 8px #4caf5080,0 0 0 10px #4caf501a}to{box-shadow:0 2px 8px #0003}}.year-label{background:#fff;padding:5px 15px;border-radius:15px;font-weight:600;color:#333;margin-top:10px;box-shadow:0 2px 4px #0000001a}.timeline-content{flex:1;max-width:45%}.timeline-card{background:#f8f9fa;border-radius:12px;padding:25px;box-shadow:0 4px 15px #00000014}.timeline-stats{margin-bottom:20px}.stat-row{display:flex;justify-content:space-between;margin-bottom:8px}.stat-label{color:#666;font-size:14px}.stat-value{font-weight:600;color:#333}.stat-value.highlight{color:#667eea;font-size:18px}.timeline-courses h5{color:#333;margin-bottom:15px;font-size:16px}.course-list{display:flex;flex-direction:column;gap:10px}.timeline-course{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:12px 15px;border-radius:8px;border-left:3px solid #667eea}.course-name{color:#333;font-weight:500;flex:1}.course-grade-credits{display:flex;align-items:center;gap:8px}.grade{padding:4px 8px;border-radius:4px;font-weight:600;font-size:12px;color:#fff}.grade.a,.grade.aplus{background:#4caf50}.grade.aminus{background:#66bb6a}.grade.b{background:#2196f3}.grade.bplus{background:#42a5f5}.grade.bminus{background:#64b5f6}.grade.c{background:#ff9800}.grade.cplus{background:#ffa726}.grade.cminus{background:#ffb74d}.grade.d{background:#f44336}.grade.f{background:#d32f2f}.credits{color:#666;font-size:12px;font-weight:500}.mini-tags{display:flex;gap:4px}.mini-tag{padding:2px 6px;border-radius:10px;font-size:10px;font-weight:600;color:#fff}.mini-tag.ap{background:#e91e63}.mini-tag.honors{background:#9c27b0}.no-courses{color:#999;font-style:italic;text-align:center;padding:15px}.resume-examples{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.resume-examples h3{color:#333;margin-bottom:10px;font-size:22px}.resume-intro{color:#666;margin-bottom:30px;font-size:16px}.resume-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:25px;margin-bottom:40px}.resume-card{background:#f8f9fa;border-radius:12px;padding:25px;border-left:4px solid #667eea}.resume-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.resume-header h4{color:#333;margin:0;font-size:18px}.acceptance-badge{padding:6px 12px;border-radius:15px;font-size:12px;font-weight:600;color:#fff}.acceptance-badge.stanford{background:#8c1515}.acceptance-badge.mit{background:#a31f34}.acceptance-badge.harvard{background:#a51c30}.resume-content{display:flex;flex-direction:column;gap:20px}.resume-section h5{color:#333;margin-bottom:10px;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.resume-section ul{list-style:none;padding:0;margin:0}.resume-section li{padding:5px 0;color:#555;font-size:14px}.strategy-tip{background:#e3f2fd;padding:15px;border-radius:8px;border-left:3px solid #2196F3;font-style:italic;color:#1565c0;font-size:14px}.resume-tips{background:#f0f8ff;padding:25px;border-radius:12px;border:1px solid #e3f2fd}.resume-tips h4{color:#333;margin-bottom:20px;font-size:18px}.tip-item{display:flex;align-items:flex-start;gap:15px}.tip-icon{font-size:24px;margin-top:5px}.tip-item strong{color:#333;display:block;margin-bottom:5px}.tip-item p{color:#666;font-size:14px;margin:0}@media (max-width: 768px){.planner-header{flex-direction:column;gap:20px;align-items:stretch}.view-toggle{justify-content:center}.projection-grid{grid-template-columns:1fr}.timeline-line{left:30px}.timeline-year{flex-direction:column}.timeline-year:nth-child(2n) .timeline-content,.timeline-year:nth-child(odd) .timeline-content{order:0;margin:0 0 0 60px;max-width:calc(100% - 60px)}.timeline-marker{left:30px}.resume-grid,.tips-grid{grid-template-columns:1fr}}.planner-overview{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:25px 30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.year-selector{display:flex;gap:10px}.year-btn{padding:10px 20px;border:2px solid #e9ecef;background:#fff;color:#666;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s}.year-btn:hover{border-color:#667eea;color:#667eea}.year-btn.active{border-color:#667eea;background:#667eea;color:#fff}.year-stats{display:flex;gap:30px}.stat-label{color:#666;font-size:14px;display:block;margin-bottom:5px}.stat-value{font-size:24px;font-weight:700;color:#667eea}.year-plan{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.year-plan h3{color:#333;font-size:22px;margin-bottom:25px}.semesters-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.semester-column{border:2px solid #f1f3f4;border-radius:12px;overflow:hidden}.semester-column h4{background:#f8f9ff;color:#333;padding:15px 20px;margin:0;font-size:16px;font-weight:600;border-bottom:2px solid #f1f3f4}.semester-courses{padding:20px;min-height:200px}.planned-course{background:#f8f9ff;padding:15px;border-radius:8px;margin-bottom:15px;border-left:4px solid #667eea}.planned-course:last-child{margin-bottom:0}.course-name{font-weight:600;color:#333;margin-bottom:8px}.course-details{display:flex;gap:15px;font-size:14px;color:#666;margin-bottom:8px}.course-tags{display:flex;gap:8px}.tag{padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600}.tag.ap{background:#f3e8ff;color:#7c3aed}.tag.honors{background:#dbeafe;color:#2563eb}.empty-semester{text-align:center;padding:40px 20px;color:#888}.empty-semester p{margin-bottom:5px;font-weight:500}.empty-semester small{color:#aaa}.graduation-progress{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.graduation-progress h3{color:#333;font-size:22px;margin-bottom:25px}.requirements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.requirement-item{padding:20px;background:#f8f9ff;border-radius:8px;border-left:4px solid #e9ecef}.req-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.req-subject{font-weight:600;color:#333}.req-count{color:#666;font-size:14px}.progress-bar{background:#e9ecef;height:8px;border-radius:4px;overflow:hidden;margin-bottom:10px}.progress-fill{background:linear-gradient(135deg,#667eea,#764ba2);height:100%;transition:width .3s ease}.req-status{font-size:14px}.status.complete{color:#10b981;font-weight:600}.status.incomplete{color:#f59e0b}.planning-tips{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d}.planning-tips h3{color:#333;font-size:22px;margin-bottom:25px}.tips-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.tip-card{padding:25px;background:#f8f9ff;border-radius:10px;border-left:4px solid #667eea}.tip-card h4{color:#333;font-size:18px;margin-bottom:15px}.tip-card ul{list-style:none;padding:0;margin:0}.tip-card li{color:#555;margin-bottom:8px;padding-left:20px;position:relative}.tip-card li:before{content:"•";color:#667eea;font-weight:700;position:absolute;left:0}@media (max-width: 768px){.planner-overview{flex-direction:column;gap:20px;text-align:center}.year-selector{justify-content:center;flex-wrap:wrap}.year-btn{padding:8px 16px;font-size:14px}.year-stats{gap:20px}.semesters-grid{grid-template-columns:1fr;gap:20px}.requirements-grid{grid-template-columns:1fr;gap:15px}.tips-grid{grid-template-columns:1fr;gap:20px}.course-details{flex-direction:column;gap:5px}}.extracurricular-recommendations{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.extracurricular-recommendations h3{color:#333;font-size:22px;margin-bottom:10px}.ec-intro{color:#666;margin-bottom:30px;font-size:16px}.ec-categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-bottom:40px}.ec-category{border-radius:12px;padding:25px;border-left:4px solid #667eea}.ec-category.leadership{background:#fff8e1;border-left-color:#ffa726}.ec-category.academic{background:#e3f2fd;border-left-color:#42a5f5}.ec-category.service{background:#f3e5f5;border-left-color:#ab47bc}.ec-category.creative{background:#e8f5e8;border-left-color:#66bb6a}.ec-header{display:flex;align-items:center;gap:15px;margin-bottom:20px}.ec-icon{font-size:32px}.ec-header h4{color:#333;margin:0;flex:1;font-size:18px}.importance-level{padding:4px 12px;border-radius:15px;font-size:12px;font-weight:600;color:#fff}.importance-level.high{background:#f44336}.importance-level.medium{background:#ff9800}.ec-activities{display:flex;flex-direction:column;gap:15px}.activity{display:flex;flex-direction:column;gap:5px}.activity-name{font-weight:600;color:#333;font-size:14px}.activity-benefit{color:#666;font-size:13px;font-style:italic}.ec-strategy-tips{background:#f0f8ff;padding:25px;border-radius:12px;margin-bottom:30px;border:1px solid #e3f2fd}.ec-strategy-tips h4{color:#333;margin-bottom:20px;font-size:18px}.tips-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.tip{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000000d;font-size:14px;line-height:1.5}.college-specific-tips{background:#f8f9ff;padding:25px;border-radius:12px;border:1px solid #e9ecef}.college-specific-tips h4{color:#333;margin-bottom:20px;font-size:18px}.college-tip{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;padding:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.college-name{font-weight:600;color:#667eea;font-size:16px}.tip-text{color:#555;font-size:14px;line-height:1.5}.no-colleges-tip{color:#888;font-style:italic;text-align:center;padding:20px}@media (max-width: 768px){.ec-categories-grid,.tips-grid{grid-template-columns:1fr}.college-tip{padding:12px}}.onboarding-quiz{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;z-index:1000}.quiz-container{background:#fff;border-radius:20px;padding:2rem;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0000001a}.quiz-header{text-align:center;margin-bottom:2rem}.quiz-header h2{color:#333;margin-bottom:.5rem;font-size:1.8rem}.quiz-header p{color:#666;margin-bottom:1.5rem}.progress-bar{background:#e0e0e0;height:8px;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{background:linear-gradient(90deg,#4caf50,#45a049);height:100%;transition:width .3s ease}.progress-text{color:#666;font-size:.9rem}.question-container{margin-bottom:2rem}.question-container h3{color:#333;margin-bottom:1rem;font-size:1.3rem;line-height:1.4}.multiple-hint{color:#666;font-style:italic;margin-bottom:1rem;font-size:.9rem}.options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem}.option-button{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;padding:1rem;text-align:left;cursor:pointer;transition:all .2s ease;font-size:.95rem;line-height:1.3;color:#333}.option-button:hover{background:#e9ecef;border-color:#667eea}.option-button.selected{background:#667eea;color:#fff;border-color:#5a6fd8}.quiz-navigation{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem}.nav-button{padding:.75rem 2rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:120px}.nav-button.primary{background:#667eea;color:#fff}.nav-button.primary:hover:not(:disabled){background:#5a6fd8;transform:translateY(-2px)}.nav-button.secondary{background:#6c757d;color:#fff}.nav-button.secondary:hover:not(:disabled){background:#5a6268}.nav-button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 768px){.quiz-container{padding:1.5rem;width:95%;margin:1rem}.options-grid{grid-template-columns:1fr}.quiz-navigation{flex-direction:column}.nav-button{width:100%}}:root{--community-bg: #ffffff;--community-text: #000000;--community-text-secondary: #333333;--community-border: #e9ecef;--community-card-bg: #ffffff;--guidelines-bg: #ffffff;--guidelines-item-bg: #f8f9ff}[data-theme=dark]{--community-bg: #1a1b23;--community-text: #ffffff;--community-text-secondary: #ffffff;--community-border: #3a3b45;--community-card-bg: #2a2b35;--guidelines-bg: #2a2b35;--guidelines-item-bg: #3a3b45}@media (prefers-color-scheme: dark){[data-theme=auto]{--community-bg: #1a1b23;--community-text: #ffffff;--community-text-secondary: #ffffff;--community-border: #3a3b45;--community-card-bg: #2a2b35;--guidelines-bg: #2a2b35;--guidelines-item-bg: #3a3b45}}.community{max-width:1400px;margin:0 auto;padding:20px;background:var(--community-bg);transition:background-color .4s cubic-bezier(.4,0,.2,1)}.community-header{text-align:center;margin-bottom:30px}.community-header h2{color:var(--community-text);font-size:32px;margin-bottom:10px;transition:color .4s cubic-bezier(.4,0,.2,1)}.community-header p{color:var(--community-text-secondary);font-size:16px;margin:0;transition:color .4s cubic-bezier(.4,0,.2,1)}.community-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px}.stat-card{background:var(--community-card-bg);padding:25px;border-radius:12px;box-shadow:0 4px 20px #0000000d;display:flex;align-items:center;gap:20px;transition:transform .3s cubic-bezier(.4,0,.2,1),background-color .4s cubic-bezier(.4,0,.2,1);border:1px solid var(--community-border);overflow:hidden;min-height:120px}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #00000026}.stat-icon{font-size:36px;opacity:.8}.stat-info{flex:1;min-width:0}.stat-info h3{margin:0;font-size:28px;color:var(--community-text);font-weight:700;transition:color .4s cubic-bezier(.4,0,.2,1);word-wrap:break-word;line-height:1.2;overflow-wrap:break-word}.stat-info p{margin:5px 0 0;color:var(--community-text-secondary);font-size:14px;transition:color .4s cubic-bezier(.4,0,.2,1);word-wrap:break-word;line-height:1.4}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px;margin-bottom:40px}.user-card{background:var(--community-card-bg);border-radius:12px;padding:25px;box-shadow:0 4px 20px #0000000d;transition:transform .2s,box-shadow .2s,background-color .3s ease;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid var(--community-border);overflow:hidden;word-wrap:break-word}.user-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #0000001a}.user-avatar{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;margin-bottom:15px}.user-avatar.small{width:40px;height:40px;font-size:14px}.user-info{flex:1;margin-bottom:20px}.user-info h3{margin:0 0 8px;color:var(--community-text);font-size:18px;font-weight:600;transition:color .4s cubic-bezier(.4,0,.2,1)}.user-email{color:var(--community-text-secondary);font-size:14px;margin:0 0 10px;transition:color .4s cubic-bezier(.4,0,.2,1)}.role-badge{display:inline-block;padding:4px 12px;border-radius:15px;font-size:12px;font-weight:600;margin-bottom:10px}.join-date{color:var(--community-text-secondary);font-size:12px;margin:0;transition:color .4s cubic-bezier(.4,0,.2,1)}.user-actions{display:flex;gap:10px;width:100%}.action-btn{flex:1;padding:8px 16px;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.action-btn.message{background:#e3f2fd;color:#1976d2}.action-btn.message:hover{background:#bbdefb}.action-btn.report{background:#ffebee;color:#d32f2f}.action-btn.report:hover{background:#ffcdd2}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e9ecef}.modal-header h3{margin:0;color:var(--community-text);font-size:20px}.close-btn{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.close-btn:hover{background:var(--community-border);color:var(--community-text)}.modal-body{padding:20px}.reporting-user{display:flex;align-items:center;gap:15px;padding:15px;background:#f8f9ff;border-radius:8px;margin-bottom:20px}.reporting-user .email{color:#666;font-size:14px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--community-text);font-weight:600;font-size:14px}.form-group select,.form-group textarea{width:100%;padding:12px;border:2px solid var(--community-border);border-radius:8px;font-size:14px;color:var(--community-text);background:var(--community-card-bg);transition:border-color .2s}.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.modal-actions{display:flex;gap:15px;justify-content:flex-end}.btn-danger{background:#dc3545;color:#fff;border:2px solid #dc3545;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-danger:hover{background:#c82333;border-color:#c82333}.btn-outline{background:transparent;color:#667eea;border:2px solid #667eea;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-outline:hover{background:#667eea;color:#fff}.community-guidelines{background:var(--guidelines-bg);padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px;border:1px solid var(--community-border)}.community-guidelines h3{color:var(--community-text);font-size:22px;margin-bottom:25px;text-align:center}.guidelines-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px}.guideline{display:flex;align-items:flex-start;gap:15px;padding:20px;background:var(--guidelines-item-bg);border-radius:10px;border:1px solid var(--community-border)}.guideline-icon{font-size:24px;margin-top:5px}.guideline h4{margin:0 0 8px;color:var(--community-text);font-size:16px;font-weight:600}.guideline p{margin:0;color:var(--community-text-secondary);font-size:14px;line-height:1.5}.loading{text-align:center;padding:60px 20px;color:var(--community-text-secondary);font-size:18px}@media (max-width: 768px){.community{padding:15px}.community-stats{grid-template-columns:1fr;gap:15px}.stat-card{flex-direction:column;text-align:center;min-height:auto;padding:20px}.stat-info{width:100%}.stat-info h3{font-size:24px;white-space:normal}.stat-info p{white-space:normal;overflow:visible;text-overflow:initial}.users-grid{grid-template-columns:1fr;gap:20px}.user-card{padding:20px}.user-actions{flex-direction:column}.guidelines-grid{grid-template-columns:1fr}.modal-content{margin:20px;width:auto}.modal-actions{flex-direction:column}}@media (max-width: 480px){.community-stats{grid-template-columns:1fr;gap:12px}.stat-card,.user-card{padding:15px}.stat-info h3{font-size:20px}.stat-info p{font-size:13px}}.reporting-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:20px;overflow-y:auto}.reporting-container{background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow);width:100%;max-width:700px;max-height:90vh;overflow-y:auto;animation:fadeInScale .3s cubic-bezier(.4,0,.2,1);margin:20px 0}.reporting-header{background:var(--bg-tertiary);padding:20px 25px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.reporting-header h3{margin:0;color:var(--text-primary);font-size:20px}.reporting-content{padding:25px}.reporting-intro{margin-bottom:30px}.reporting-intro>p{color:var(--text-secondary);margin:0 0 20px;line-height:1.5;font-size:15px}.privacy-notice{display:flex;gap:15px;padding:15px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;align-items:flex-start}.privacy-icon{font-size:20px;flex-shrink:0}.privacy-notice strong{color:var(--text-primary);display:block;margin-bottom:5px}.privacy-notice p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.4}.form-section{margin-bottom:30px}.form-section h4{margin:0 0 15px;color:var(--text-primary);font-size:16px;font-weight:600}.report-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.report-type-card{display:flex;align-items:flex-start;gap:12px;padding:15px;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--bg-secondary)}.report-type-card:hover{border-color:var(--accent);transform:translateY(-1px)}.report-type-card.selected{border-color:var(--accent);background:#667eea1a}.report-type-card input[type=radio]{margin:0;accent-color:var(--accent)}.type-content strong{color:var(--text-primary);display:block;margin-bottom:5px}.type-content p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.3}.severity-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.severity-card{display:flex;align-items:flex-start;gap:12px;padding:15px;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--bg-secondary)}.severity-card:hover{transform:translateY(-1px)}.severity-card.selected{border-color:var(--accent);background:#667eea1a}.severity-card input[type=radio]{margin:0;accent-color:var(--accent)}.severity-header{display:flex;align-items:center;gap:8px;margin-bottom:5px}.severity-indicator{width:12px;height:12px;border-radius:50%}.severity-content strong{color:var(--text-primary)}.severity-content p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.3}.form-row{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:15px}.form-group small{color:var(--text-muted);font-size:12px;margin-top:-5px}.form-group input,.form-group textarea{padding:12px 15px;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.form-group textarea{resize:vertical;line-height:1.5}.char-count{text-align:right;font-size:12px;color:var(--text-muted);margin-top:-5px}.form-options{margin-top:20px}.checkbox-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;color:var(--text-primary);font-weight:500;margin-bottom:8px}.checkbox-label input[type=checkbox]{margin:0;accent-color:var(--accent)}.option-description{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.4;padding-left:24px}.submission-info{display:flex;gap:20px;padding:20px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.info-item{display:flex;gap:12px;align-items:flex-start;flex:1}.info-icon{font-size:20px;flex-shrink:0}.info-item strong{color:var(--text-primary);display:block;margin-bottom:5px;font-size:14px}.info-item p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.3}.form-actions{display:flex;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid var(--border-color)}.submit-btn{background:var(--accent);color:#fff;border:none;padding:12px 25px;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;flex:1;max-width:200px}.submit-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.cancel-btn{background:transparent;color:var(--text-secondary);border:2px solid var(--border-color);padding:12px 25px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s}.cancel-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-secondary)}.help-section{margin-top:40px;padding-top:30px;border-top:2px solid var(--border-color)}.help-section h4{margin:0 0 15px;color:var(--text-primary);font-size:16px}.emergency-contacts{display:flex;flex-direction:column;gap:10px}.contact-item{padding:12px 15px;background:var(--bg-secondary);border-radius:6px;border-left:4px solid var(--danger);color:var(--text-secondary);font-size:14px}.contact-item strong{color:var(--text-primary)}@media (max-width: 768px){.reporting-overlay{padding:10px}.reporting-container{max-height:95vh}.reporting-content{padding:20px}.report-types,.severity-levels{grid-template-columns:1fr}.submission-info{flex-direction:column;gap:15px}.form-actions{flex-direction:column}.submit-btn{max-width:none}}@media (max-width: 480px){.reporting-header{padding:15px 20px}.reporting-content{padding:15px}.privacy-notice{flex-direction:column;gap:10px}.report-type-card,.severity-card{padding:12px}}.chat-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.chat-container{background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow);width:100%;max-width:800px;height:80vh;display:flex;flex-direction:column;overflow:hidden;animation:fadeInScale .3s cubic-bezier(.4,0,.2,1)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.chat-header{background:var(--bg-tertiary);padding:15px 20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.chat-header h3{margin:0;color:var(--text-primary);font-size:18px}.chat-tabs{display:flex;gap:10px}.tab{padding:8px 16px;border:none;background:transparent;color:var(--text-secondary);border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.tab:hover{background:var(--bg-primary);color:var(--text-primary)}.tab.active{background:var(--accent);color:#fff}.chat-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);padding:15px;width:200px;overflow-y:auto}.online-users h4{margin:0 0 15px;color:var(--text-primary);font-size:14px;text-transform:uppercase;letter-spacing:.5px}.user-item{display:flex;align-items:center;gap:10px;padding:8px 0;color:var(--text-secondary);font-size:14px}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.online{background:var(--success)}.status-dot.away{background:var(--warning)}.status-dot.offline{background:var(--text-muted)}.chat-main{display:flex;flex-direction:column;flex:1;min-height:0}.messages-container{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:15px}.message{max-width:70%;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.system{align-self:center;max-width:90%}.message.user{align-self:flex-end}.message.bot{align-self:flex-start}.message-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.message-header strong{color:var(--text-primary);font-size:14px}.timestamp{color:var(--text-muted);font-size:12px}.message-content{background:var(--bg-tertiary);padding:10px 15px;border-radius:12px;color:var(--text-primary);word-wrap:break-word;line-height:1.4}.message.user .message-content{background:var(--accent);color:#fff}.message.system .message-content{background:var(--bg-secondary);text-align:center;font-style:italic;color:var(--text-secondary)}.message-input{display:flex;gap:10px;padding:15px 20px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.message-input input{flex:1;padding:10px 15px;border:1px solid var(--border-color);border-radius:25px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:all .2s}.message-input input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.message-input button{padding:10px 20px;background:var(--accent);color:#fff;border:none;border-radius:25px;cursor:pointer;font-weight:500;transition:all .2s}.message-input button:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.message-input button:disabled{opacity:.5;cursor:not-allowed;transform:none}.groups-tab{padding:20px;overflow-y:auto;flex:1}.groups-header{margin-bottom:20px}.groups-header h4{margin:0 0 5px;color:var(--text-primary);font-size:18px}.groups-header p{margin:0;color:var(--text-secondary);font-size:14px}.groups-list{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.group-item{display:flex;align-items:center;justify-content:space-between;padding:15px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;transition:all .2s}.group-item:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow)}.group-info h5{margin:0 0 5px;color:var(--text-primary);font-size:16px}.group-info p{margin:0;color:var(--text-secondary);font-size:14px}.join-btn{background:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.join-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.joined-btn{background:var(--success);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:default;font-weight:500;opacity:.8}.chat-guidelines{background:var(--bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--border-color)}.chat-guidelines h4{margin:0 0 15px;color:var(--text-primary);font-size:16px}.chat-guidelines ul{margin:0 0 20px;padding-left:20px;color:var(--text-secondary)}.chat-guidelines li{margin-bottom:8px;line-height:1.4}.report-btn{background:var(--warning);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.report-btn:hover{background:#e69500;transform:translateY(-1px)}@media (max-width: 768px){.chat-overlay{padding:10px}.chat-container{height:90vh}.chat-sidebar{width:150px;padding:10px}.chat-header{flex-direction:column;gap:10px;align-items:stretch}.chat-tabs{justify-content:center}.message{max-width:85%}.message-input{padding:10px 15px}.groups-tab{padding:15px}.group-item{flex-direction:column;align-items:stretch;gap:10px}}.group-chat-tab{display:flex;flex-direction:column;height:100%;overflow:hidden}.group-chat-header{background:var(--bg-tertiary);padding:15px 20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.back-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-primary);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.back-btn:hover{background:var(--bg-secondary);border-color:var(--accent);color:var(--accent)}.group-chat-info{flex:1;text-align:center}.group-chat-info h4{margin:0 0 2px;color:var(--text-primary);font-size:18px}.group-chat-info p{margin:0;color:var(--text-secondary);font-size:12px}.leave-group-btn{background:transparent;border:1px solid var(--danger);color:var(--danger);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.leave-group-btn:hover{background:var(--danger);color:#fff}.chat-btn{background:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;margin-right:8px}.chat-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.leave-btn{background:transparent;border:1px solid var(--danger);color:var(--danger);padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.leave-btn:hover{background:var(--danger);color:#fff}.group-actions{display:flex;gap:8px;align-items:center}.groups-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.groups-container{background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow);width:100%;max-width:900px;height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:fadeInScale .3s cubic-bezier(.4,0,.2,1)}.groups-header{background:var(--bg-tertiary);padding:15px 20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.groups-header h3{margin:0;color:var(--text-primary);font-size:18px}.header-actions{display:flex;align-items:center;gap:10px}.create-group-btn{background:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.create-group-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:5px;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn:hover{background:var(--danger);color:#fff}.groups-main{flex:1;overflow-y:auto;padding:20px}.create-group-form{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:20px;margin-bottom:30px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.form-header h4{margin:0;color:var(--text-primary);font-size:16px}.form-close{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{font-weight:500;color:var(--text-primary);font-size:14px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);transition:all .2s;font-size:14px}.form-group textarea{resize:vertical;min-height:80px}.form-actions{display:flex;gap:10px;margin-top:20px}.create-btn{background:var(--accent);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.create-btn:hover{background:var(--accent-hover)}.cancel-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.cancel-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.list-header h4{margin:0;color:var(--text-primary);font-size:18px}.category-filter{padding:6px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);cursor:pointer}.group-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:20px;margin-bottom:15px;transition:all .2s;animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.group-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow)}.group-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.group-title{display:flex;align-items:center;gap:10px}.category-icon{font-size:20px}.group-title h5{margin:0;color:var(--text-primary);font-size:16px}.privacy-badge{font-size:14px;opacity:.7}.group-stats{display:flex;align-items:center;gap:15px}.member-count{color:var(--text-secondary);font-size:14px}.group-description{color:var(--text-secondary);margin:0 0 15px;line-height:1.4;font-size:14px}.group-actions{display:flex;gap:10px}.chat-btn{background:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s;font-size:14px}.chat-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.chat-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.join-btn{background:var(--success);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s;font-size:14px}.join-btn:hover{background:#059669;transform:translateY(-1px)}.leave-btn{background:var(--warning);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s;font-size:14px}.leave-btn:hover{background:#d97706;transform:translateY(-1px)}.group-chat-view{display:flex;flex-direction:column;height:100%}.group-chat-view .chat-header{background:var(--bg-tertiary);padding:15px 20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:15px}.back-btn{background:var(--accent);color:#fff;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.back-btn:hover{background:var(--accent-hover)}.chat-info h4{margin:0 0 2px;color:var(--text-primary);font-size:16px}.chat-info p{margin:0;color:var(--text-secondary);font-size:14px}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:15px}.chat-message{max-width:80%;animation:slideIn .3s ease-out}.chat-message.admin{align-self:center;max-width:90%}.chat-message.user{align-self:flex-start}.chat-message .message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.chat-message .message-header strong{color:var(--text-primary);font-size:14px}.chat-message .timestamp{color:var(--text-muted);font-size:12px}.chat-message .message-content{background:var(--bg-secondary);padding:10px 15px;border-radius:12px;color:var(--text-primary);word-wrap:break-word;line-height:1.4}.chat-message.admin .message-content{background:var(--accent);color:#fff;text-align:center}.chat-input-form{display:flex;gap:10px;padding:15px 20px;border-top:1px solid var(--border-color);background:var(--bg-tertiary)}.chat-input-form input{flex:1;padding:10px 15px;border:1px solid var(--border-color);border-radius:25px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:all .2s}.chat-input-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.chat-input-form button{background:var(--accent);color:#fff;border:none;padding:10px 20px;border-radius:25px;cursor:pointer;font-weight:500;transition:all .2s}.chat-input-form button:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.chat-input-form button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 768px){.groups-overlay{padding:10px}.groups-container{height:90vh;max-width:100%}.form-row{grid-template-columns:1fr}.list-header{flex-direction:column;gap:10px;align-items:stretch}.group-header{flex-direction:column;gap:10px}.group-actions{justify-content:flex-start}.chat-message{max-width:90%}.groups-main{padding:15px}}.career-choices{padding:20px;max-width:1200px;margin:0 auto;min-height:80vh}.career-header{text-align:center;margin-bottom:40px}.career-header h2{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:32px;margin-bottom:10px;font-weight:700}.career-header p{color:var(--text-secondary);font-size:18px;max-width:600px;margin:0 auto}.categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:25px;margin-bottom:40px;max-width:1600px;margin-left:auto;margin-right:auto}.category-card{background:var(--bg-primary);border-radius:16px;padding:32px;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:2px solid var(--border-color);position:relative;overflow:hidden}.category-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .6s ease}.category-card:hover:before{left:100%}.category-card:hover{transform:translateY(-10px);box-shadow:0 20px 50px #00000026;border-color:var(--category-color)}.category-icon{font-size:50px;margin-bottom:20px;display:block}.category-card h3{color:var(--text-primary);font-size:22px;margin-bottom:15px;font-weight:700}.category-card p{color:var(--text-secondary);font-size:16px;line-height:1.5;margin-bottom:25px}.explore-btn{background:var(--category-color);color:#fff;border:none;padding:14px 28px;border-radius:30px;cursor:pointer;font-weight:600;font-size:16px;transition:all .2s ease}.explore-btn:hover{transform:translate(3px);box-shadow:0 4px 15px #0003}.back-to-categories-btn{background:transparent;border:2px solid var(--accent);color:var(--accent);padding:12px 20px;border-radius:8px;cursor:pointer;font-weight:500;margin-bottom:20px;transition:all .2s ease}.back-to-categories-btn:hover{background:var(--accent);color:#fff}.engineering-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:30px;margin-bottom:40px}.engineering-card{background:var(--bg-primary);border-radius:16px;padding:30px;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:2px solid var(--border-color);position:relative;overflow:hidden}.engineering-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(102,126,234,.1),transparent);transition:left .6s ease}.engineering-card:hover:before{left:100%}.engineering-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px #667eea33;border-color:var(--accent)}.card-icon{font-size:48px;margin-bottom:20px;display:block}.engineering-card h3{color:var(--text-primary);font-size:24px;margin-bottom:15px;font-weight:600}.engineering-card p{color:var(--text-secondary);font-size:16px;line-height:1.6;margin-bottom:25px}.card-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;gap:15px}.salary-info{display:flex;flex-direction:column;gap:5px}.salary-preview{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:8px 12px;border-radius:20px;font-size:14px;font-weight:600}.average-salary{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:6px 10px;border-radius:15px;font-size:12px;font-weight:500}.learn-more-btn{background:var(--accent);color:#fff;border:none;padding:10px 20px;border-radius:25px;cursor:pointer;font-weight:500;transition:all .2s ease}.learn-more-btn:hover{background:var(--accent-hover);transform:translate(2px)}.field-details{animation:slideIn .4s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.back-button{background:transparent;border:2px solid var(--accent);color:var(--accent);padding:12px 20px;border-radius:8px;cursor:pointer;font-weight:500;margin-bottom:30px;transition:all .2s ease}.back-button:hover{background:var(--accent);color:#fff}.field-header{display:flex;align-items:center;gap:20px;margin-bottom:40px;padding:30px;background:var(--bg-primary);border-radius:16px;border:2px solid var(--border-color)}.field-icon{font-size:64px}.field-title-section h2{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:28px;margin-bottom:10px;font-weight:700}.field-title-section p{color:var(--text-secondary);font-size:18px;line-height:1.6}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:40px}.detail-card{background:var(--bg-primary);padding:25px;border-radius:12px;border:2px solid var(--border-color);transition:all .3s cubic-bezier(.4,0,.2,1)}.detail-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a}.detail-card h3{color:var(--text-primary);font-size:18px;margin-bottom:15px;font-weight:600}.salary-card{border-left:4px solid #10b981}.salary-range{font-size:24px;font-weight:700;color:#10b981;margin-bottom:8px}.salary-note{color:var(--text-muted);font-size:14px}.average-salary-display{font-size:18px;font-weight:600;color:#f59e0b;margin-top:8px;margin-bottom:8px}.additional-salary-info{font-size:14px;font-weight:500;color:#8b5cf6;margin-top:5px;margin-bottom:8px;font-style:italic}.growth-card{border-left:4px solid #f59e0b}.growth-rate{font-size:20px;font-weight:700;color:#f59e0b;margin-bottom:8px}.growth-note{color:var(--text-muted);font-size:14px}.education-card{border-left:4px solid #667eea}.education-card p{color:var(--text-secondary);line-height:1.6}.environment-card{border-left:4px solid #8b5cf6}.environment-card p{color:var(--text-secondary);line-height:1.6}.skills-section{margin-bottom:40px}.skills-section h3{color:var(--text-primary);font-size:22px;margin-bottom:20px;font-weight:600}.skills-grid{display:flex;flex-wrap:wrap;gap:12px}.skill-chip{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:10px 16px;border-radius:25px;font-size:14px;font-weight:500;transition:transform .2s ease}.skill-chip:hover{transform:translateY(-2px)}.job-titles-section{margin-bottom:40px}.job-titles-section h3{color:var(--text-primary);font-size:22px;margin-bottom:20px;font-weight:600}.job-titles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.job-title-chip{background:var(--bg-secondary);border:2px solid var(--border-color);padding:15px 20px;border-radius:8px;text-align:center;font-weight:500;color:var(--text-primary);transition:all .2s ease}.job-title-chip:hover{border-color:var(--accent);background:var(--bg-primary);transform:translateY(-2px)}.colleges-section h3{color:var(--text-primary);font-size:22px;margin-bottom:20px;font-weight:600}.colleges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.college-card{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;padding:25px;display:flex;align-items:center;gap:20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.college-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a;border-color:var(--accent)}.college-ranking{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.college-info h4{color:var(--text-primary);font-size:18px;margin-bottom:5px;font-weight:600}.college-info p{color:var(--text-secondary);font-size:14px}@media (max-width: 768px){.career-choices{padding:15px}.career-header h2{font-size:28px}.career-header p{font-size:16px}.categories-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.category-card{padding:28px 22px}.category-icon{font-size:45px;margin-bottom:18px}.category-card h3{font-size:20px}.category-card p{font-size:15px}.engineering-grid{grid-template-columns:1fr;gap:20px}.engineering-card{padding:25px 20px}.card-icon{font-size:40px;margin-bottom:15px}.engineering-card h3{font-size:20px}.card-footer{flex-direction:column;gap:15px;align-items:stretch}.salary-info{align-items:center;text-align:center}.learn-more-btn{width:100%}.field-header{flex-direction:column;text-align:center;gap:15px;padding:25px 20px}.field-icon{font-size:48px}.field-title-section h2{font-size:24px}.field-title-section p{font-size:16px}.details-grid{grid-template-columns:1fr;gap:15px}.detail-card{padding:20px}.salary-range{font-size:20px}.growth-rate{font-size:18px}.skills-grid{justify-content:center}.job-titles-grid,.colleges-grid{grid-template-columns:1fr}.college-card{padding:20px;gap:15px}.college-ranking{width:40px;height:40px;font-size:16px}}@media (max-width: 480px){.career-choices{padding:10px}.career-header{margin-bottom:30px}.career-header h2{font-size:24px}.categories-grid{grid-template-columns:1fr;gap:20px}.category-card{padding:24px 18px}.category-icon{font-size:40px}.category-card h3{font-size:18px}.category-card p{font-size:14px;margin-bottom:20px}.engineering-card{padding:20px 15px}.card-icon{font-size:36px}.engineering-card h3{font-size:18px}.salary-preview{font-size:12px;padding:6px 10px}.field-header{padding:20px 15px}.field-icon{font-size:40px}.field-title-section h2{font-size:20px}.detail-card{padding:15px}.skill-chip{padding:8px 12px;font-size:12px}.college-card{padding:15px;gap:12px}.college-ranking{width:35px;height:35px;font-size:14px}.college-info h4{font-size:16px}.college-info p{font-size:13px}}[data-theme=dark] .engineering-card,[data-theme=dark] .field-header,[data-theme=dark] .detail-card,[data-theme=dark] .job-title-chip,[data-theme=dark] .college-card{background:var(--bg-tertiary);border-color:var(--border-color)}@media (prefers-color-scheme: dark){[data-theme=auto] .engineering-card,[data-theme=auto] .field-header,[data-theme=auto] .detail-card,[data-theme=auto] .job-title-chip,[data-theme=auto] .college-card{background:var(--bg-tertiary);border-color:var(--border-color)}}.tutorial-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.tutorial-container{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:900px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideIn .6s cubic-bezier(.4,0,.2,1)}@keyframes slideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.tutorial-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:1px solid #e9ecef;background:#f8f9ff}.tutorial-progress{display:flex;align-items:center;gap:15px}.progress-dots{display:flex;gap:8px}.progress-dot{width:12px;height:12px;border-radius:50%;background:#e9ecef;transition:all .3s ease}.progress-dot.active{background:linear-gradient(135deg,#667eea,#764ba2);transform:scale(1.2)}.progress-text{color:#666;font-weight:500;font-size:14px}.skip-btn{background:transparent;border:1px solid #ddd;color:#666;padding:8px 16px;border-radius:20px;cursor:pointer;font-size:14px;transition:all .2s ease}.skip-btn:hover{background:#f5f5f5;border-color:#ccc}.tutorial-content{flex:1;padding:40px 30px;overflow-y:auto}.tutorial-step{text-align:center;max-width:800px;margin:0 auto}.step-icon{font-size:80px;margin-bottom:25px;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.step-title{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:36px;font-weight:700;margin-bottom:15px;line-height:1.2}.step-subtitle{color:#333;font-size:22px;font-weight:600;margin-bottom:20px;line-height:1.4}.step-description{color:#666;font-size:18px;line-height:1.6;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto}.features-list{text-align:left;max-width:500px;margin:30px auto;background:#f8f9ff;border-radius:12px;padding:25px}.features-list h3{color:#333;font-size:18px;margin-bottom:15px;font-weight:600}.features-list ul{list-style:none;padding:0;margin:0}.features-list li{color:#555;position:relative;padding:8px 0 8px 25px}.features-list li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700;font-size:16px}.welcome-preview{margin-top:40px}.preview-card{background:linear-gradient(135deg,#f8f9ff,#e8ebff);border-radius:16px;padding:30px;border:1px solid #e0e7ff}.preview-card h3{color:#333;font-size:20px;margin-bottom:20px;font-weight:600}.achievement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.achievement{display:flex;align-items:center;gap:10px;background:#fff;padding:15px;border-radius:10px;box-shadow:0 2px 8px #0000000d}.achievement-icon{font-size:20px}.preview-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.back-to-tutorial{background:transparent;border:none;color:#667eea;font-size:16px;cursor:pointer;margin-bottom:20px;padding:5px 0;transition:color .2s ease}.back-to-tutorial:hover{color:#5a67d8}.preview-content h2{color:#333;font-size:28px;margin-bottom:15px;font-weight:600}.preview-note{color:#666;font-size:16px;margin-bottom:25px;font-style:italic}.preview-cards{display:grid;gap:20px}.career-card{background:#fff;border:2px solid #e9ecef;border-radius:12px;padding:25px;transition:all .3s ease}.career-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a;border-color:#667eea}.career-card h3{color:#333;font-size:20px;margin-bottom:15px;font-weight:600}.career-stats{display:flex;flex-direction:column;gap:10px}.stat{display:flex;justify-content:space-between;align-items:center}.stat-label{color:#666;font-weight:500}.stat-value{color:#333;font-weight:600}.college-card{background:#fff;border:2px solid #e9ecef;border-radius:12px;padding:25px;transition:all .3s ease}.college-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a;border-color:#667eea}.college-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.college-header h3{color:#333;font-size:18px;margin:0;font-weight:600;flex:1}.category-tag{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.category-tag.reach-school{background:#fef3c7;color:#92400e}.category-tag.target-school{background:#d1fae5;color:#065f46}.location{color:#666;margin-bottom:15px}.college-stats{display:flex;gap:20px}.match-score{color:#10b981;font-weight:600}.progress-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px}.progress-card{background:#fff;border:2px solid #e9ecef;border-radius:12px;padding:25px;transition:all .3s ease}.progress-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a;border-color:#667eea}.progress-card h3{color:#333;font-size:18px;margin-bottom:20px;font-weight:600}.gpa-display{display:flex;align-items:center;justify-content:center;gap:20px}.current-gpa,.target-gpa{text-align:center}.gpa-value{display:block;font-size:32px;font-weight:700;color:#667eea;line-height:1}.gpa-label{display:block;color:#666;font-size:14px;margin-top:5px}.gpa-arrow{font-size:24px;color:#ccc}.progress-stats{display:flex;justify-content:space-between;margin-bottom:15px}.progress-stats .stat{text-align:center;flex-direction:column}.progress-stats .stat-value{display:block;font-size:24px;font-weight:700;color:#667eea;line-height:1}.progress-stats .stat-label{display:block;color:#666;font-size:14px;margin-top:5px}.status-indicator{text-align:center;padding:10px;border-radius:8px;font-weight:600}.status-indicator.on-track{background:#d1fae5;color:#065f46}.status-indicator.behind{background:#fee2e2;color:#991b1b}.tutorial-footer{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-top:1px solid #e9ecef;background:#f8f9ff}.footer-left,.footer-right{display:flex;gap:15px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:25px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:16px}.btn-secondary{background:transparent;color:#667eea;border:2px solid #667eea;padding:10px 20px;border-radius:25px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:16px}.btn-preview{background:#f8f9ff;color:#667eea;border:1px solid #e0e7ff;padding:10px 20px;border-radius:25px;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:14px}.btn-preview:hover{background:#e8ebff;border-color:#667eea}@media (max-width: 768px){.tutorial-overlay{padding:10px}.tutorial-container{max-height:95vh;border-radius:15px}.tutorial-header,.tutorial-footer{padding:20px}.tutorial-content{padding:30px 20px}.step-icon{font-size:60px}.step-title{font-size:28px}.step-subtitle{font-size:18px}.step-description{font-size:16px}.achievement-grid{grid-template-columns:1fr;gap:15px}.progress-dashboard{grid-template-columns:1fr;gap:20px}.college-stats{flex-direction:column;gap:10px}.gpa-display{gap:15px}.gpa-value{font-size:24px}.progress-stats,.tutorial-footer{flex-direction:column;gap:15px}.footer-left,.footer-right{width:100%;justify-content:center}}@media (max-width: 480px){.tutorial-header{flex-direction:column;gap:15px;text-align:center}.step-icon{font-size:50px}.step-title{font-size:24px}.step-subtitle{font-size:16px}.features-list,.preview-card,.career-card,.college-card,.progress-card{padding:20px}.college-header{flex-direction:column;gap:10px}}:root{--dashboard-bg: #ffffff;--dashboard-header-bg: #ffffff;--dashboard-text: #000000;--dashboard-text-secondary: #333333;--dashboard-border: #e9ecef;--dashboard-card-bg: #ffffff}[data-theme=dark]{--dashboard-bg: #1a1b23;--dashboard-header-bg: #1e1f26;--dashboard-text: #e5e6e8;--dashboard-text-secondary: #c5c6c8;--dashboard-border: #3a3b45;--dashboard-card-bg: #2a2b35}@media (prefers-color-scheme: dark){[data-theme=auto]{--dashboard-bg: #1a1b23;--dashboard-header-bg: #1e1f26;--dashboard-text: #e5e6e8;--dashboard-text-secondary: #c5c6c8;--dashboard-border: #3a3b45;--dashboard-card-bg: #2a2b35}}.dashboard{min-height:100vh;background:#fff;transition:background-color .4s cubic-bezier(.4,0,.2,1)}.community-section{padding:20px}.community-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:30px}.community-action-btn{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px;background:var(--dashboard-card-bg);border:2px solid var(--dashboard-border);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;font-size:16px;font-weight:600;color:var(--dashboard-text)}.community-action-btn:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.community-action-btn span{font-size:14px;font-weight:400;color:var(--dashboard-text-secondary);line-height:1.4}.dashboard-nav{background:#fff;border-bottom:1px solid var(--dashboard-border);padding:20px 40px 0;transition:background-color .3s ease,border-color .3s ease}.nav-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.nav-header-actions{display:flex;align-items:center;gap:15px}.tutorial-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:5px}.tutorial-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d;background:linear-gradient(135deg,#d97706,#b45309)}.nav-title{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:28px;margin:0;font-weight:700}.nav-logout-btn{background:var(--danger);color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s ease}.nav-logout-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 8px #ef44444d}.nav-tabs{display:flex;gap:0;max-width:1400px;margin:0 auto}.nav-tab{background:none;border:none;padding:15px 25px;color:var(--dashboard-text-secondary);font-weight:500;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-tab:hover{color:#667eea;background:#f8f9ff}.nav-tab.active{color:#667eea;border-bottom-color:#667eea;background:#f8f9ff}.dashboard-main{padding:40px;max-width:1400px;margin:0 auto}.overview-section{display:flex;flex-direction:column;gap:40px}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}.overview-card{background:var(--dashboard-card-bg);padding:30px;border-radius:12px;box-shadow:var(--shadow);border:1px solid var(--dashboard-border);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),background-color .4s cubic-bezier(.4,0,.2,1)}.overview-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #667eea26}.overview-card h3{color:var(--dashboard-text);font-size:18px;margin-bottom:20px;font-weight:600;transition:color .4s cubic-bezier(.4,0,.2,1)}.gpa-display{text-align:center;margin-bottom:15px}.gpa-number{font-size:48px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block}.gpa-label{color:var(--dashboard-text-secondary);font-size:14px;margin-top:5px;transition:color .4s cubic-bezier(.4,0,.2,1)}.gpa-weighted{text-align:center;color:var(--dashboard-text-secondary);font-size:14px;transition:color .4s cubic-bezier(.4,0,.2,1)}.progress-stats{display:flex;justify-content:space-between;gap:20px}.stat{text-align:center;flex:1;padding:15px 10px;background:#fff;border-radius:8px;border:2px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000001a}[data-theme=dark] .stat{background:var(--dashboard-card-bg);border-color:var(--dashboard-border);color:#e5e6e8}[data-theme=auto] .stat{background:#fff;border-color:#e5e7eb;color:#000}@media (prefers-color-scheme: dark){[data-theme=auto] .stat{background:var(--dashboard-card-bg);border-color:var(--dashboard-border);color:#e5e6e8}}.stat:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.stat-number{font-size:32px;font-weight:800;color:#eab308!important;display:block;transition:color .4s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .stat-number{color:#fbbf24!important}[data-theme=auto] .stat-number{color:#eab308!important}@media (prefers-color-scheme: dark){[data-theme=auto] .stat-number{color:#fbbf24!important}}.stat-label{color:var(--dashboard-text)!important;font-size:14px;font-weight:700;margin-top:8px;transition:color .4s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.5px}.colleges-preview ul{list-style:none;padding:0;margin:0}.colleges-preview li{padding:8px 0;border-bottom:1px solid #f0f0f0;color:#555}.colleges-preview li:last-child{border-bottom:none}.colleges-preview p{color:var(--dashboard-text-secondary);font-style:italic;transition:color .4s cubic-bezier(.4,0,.2,1)}.grade-info{text-align:center}.grade-number{font-size:36px;font-weight:700;color:#667eea;display:block}.graduation-year{color:var(--dashboard-text-secondary);font-size:14px;margin-top:10px;transition:color .4s cubic-bezier(.4,0,.2,1)}.recent-activity{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000000d;color:#000}[data-theme=dark] .recent-activity{background:var(--dashboard-card-bg);color:#e5e6e8}@media (prefers-color-scheme: dark){[data-theme=auto] .recent-activity{background:var(--dashboard-card-bg);color:#e5e6e8}}.recent-activity h3{color:var(--dashboard-text);font-size:20px;margin-bottom:20px;transition:color .4s cubic-bezier(.4,0,.2,1);font-weight:600}.activity-item{padding:15px;background:#f8f9ff;border-radius:8px;border-left:4px solid #667eea}.activity-item span{color:var(--dashboard-text);font-size:14px;transition:color .4s cubic-bezier(.4,0,.2,1)}.loading-container{display:flex;justify-content:center;align-items:center;min-height:50vh}.loading-spinner{color:#667eea;font-size:18px;font-weight:500}@media (max-width: 768px){.community-actions{grid-template-columns:1fr;gap:16px}.dashboard-nav{padding:15px 20px 0}.nav-header{flex-direction:column;gap:15px;text-align:center;margin-bottom:15px}.nav-header-actions{order:-1;gap:10px}.tutorial-btn{padding:6px 12px;font-size:13px}.nav-title{font-size:24px}.nav-tabs{flex-wrap:wrap}.nav-tab{padding:12px 15px;font-size:14px}.dashboard-main{padding:20px}}.overview-grid{grid-template-columns:1fr;gap:20px}.overview-card{padding:20px}.progress-stats{flex-direction:column;gap:15px}.gpa-number{font-size:36px}.stat-number{font-size:24px}} @media (max-width: 480px){}.nav-tab.admin{background:#ff6b35;color:#fff!important;border-radius:6px;margin-left:10px;border-bottom:3px solid transparent!important}.nav-tab.admin:hover{background:#e55a2b!important}.landing-page{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:#333}.header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(102,126,234,.1)}.nav{display:flex;justify-content:space-between;align-items:center;padding:20px 40px;max-width:1200px;margin:0 auto}.nav-brand h1{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:28px;margin:0}.nav-links{display:flex;gap:20px;align-items:center}.btn-secondary{background:transparent;color:#667eea;padding:10px 20px;border:2px solid #667eea;border-radius:8px;text-decoration:none;font-weight:500;transition:all .2s}.btn-secondary:hover{background:#667eea;color:#fff}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:10px 20px;border-radius:8px;text-decoration:none;font-weight:500;transition:transform .2s,box-shadow .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.btn-primary-large{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px 32px;border-radius:10px;text-decoration:none;font-weight:600;font-size:18px;transition:transform .2s,box-shadow .2s;display:inline-block}.btn-primary-large:hover{transform:translateY(-2px);box-shadow:0 12px 30px #667eea66}.container{max-width:1200px;margin:0 auto;padding:0 40px}.hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:80px 0;min-height:70vh;display:flex;align-items:center}.hero .container{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.hero-title{font-size:48px;margin-bottom:20px;color:#fff;font-weight:700;line-height:1.2}.hero-subtitle{font-size:20px;color:#ffffffe6;margin-bottom:30px}.hero-stats{display:flex;gap:30px;margin-bottom:30px}.stat{text-align:center}.stat-number{display:block;font-size:28px;font-weight:700;color:gold;margin-bottom:5px}.stat-label{font-size:14px;color:#fffc}.hero-cta{text-align:left}.cta-note{color:#333;font-size:14px;margin-top:10px}.dashboard-preview{background:#fff;border-radius:15px;box-shadow:0 20px 60px #0000001a;padding:20px;transform:perspective(1000px) rotateY(-5deg)}.preview-header{height:40px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;margin-bottom:20px}.preview-content{display:flex;flex-direction:column;gap:15px}.preview-card{height:60px;background:linear-gradient(135deg,#f8f9ff,#e8f0ff);border-radius:8px;border-left:4px solid #667eea}.problem{background:#fff;padding:80px 0;text-align:center}.problem-content h2{font-size:36px;color:#333;margin-bottom:20px}.problem-content p{font-size:18px;color:#666;max-width:800px;margin:0 auto}.features{background:#f8f9ff;padding:100px 0}.section-title{font-size:40px;text-align:center;margin-bottom:60px;color:#333}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:40px}.feature-card{background:#fff;padding:40px 30px;border-radius:15px;text-align:center;box-shadow:0 10px 30px #0000000d;transition:transform .3s,box-shadow .3s}.feature-card:hover{transform:translateY(-10px);box-shadow:0 20px 50px #0000001a}.feature-icon{font-size:48px;margin-bottom:20px}.feature-card h3{font-size:24px;margin-bottom:15px;color:#333}.feature-card p{color:#666;font-size:16px}.cta-section{background:linear-gradient(135deg,#667eea,#764ba2);padding:100px 0;text-align:center;color:#fff}.cta-section h2{font-size:40px;margin-bottom:20px}.cta-section p{font-size:20px;margin-bottom:40px;opacity:.9}@media (max-width: 768px){.hero .container{grid-template-columns:1fr;gap:40px;text-align:center}.hero-title{font-size:36px}.nav{padding:20px}.nav-links{display:none}.container{padding:0 20px}.features-grid{grid-template-columns:1fr;gap:30px}}.hero-image{display:flex;justify-content:center;align-items:center}.students-collage{position:relative;width:100%;max-width:500px}.student-success img{width:100%;border-radius:15px;box-shadow:0 20px 40px #0003}.achievement-badges{position:absolute;top:-10px;right:-10px;display:flex;flex-direction:column;gap:10px}.badge{background:#fffffff2;color:#333;padding:8px 15px;border-radius:20px;font-size:14px;font-weight:600;box-shadow:0 5px 15px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.success-stories{background:#f8f9ff;padding:80px 0}.stories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:30px;margin-top:50px}.story-card{background:#fff;padding:30px;border-radius:15px;box-shadow:0 10px 30px #0000000d;transition:transform .3s,box-shadow .3s}.story-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px #0000001a}.story-header{display:flex;align-items:center;gap:15px;margin-bottom:20px}.student-avatar{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.student-info h3{margin:0 0 5px;color:#333;font-size:20px}.college-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;color:#fff}.college-badge.stanford{background:#8c1515}.college-badge.mit{background:#a31f34}.college-badge.harvard{background:#a51c30}.story-quote{font-style:italic;color:#555;font-size:16px;line-height:1.6;margin-bottom:20px}.story-stats{display:flex;flex-wrap:wrap;gap:10px}.story-stats span{background:#f0f8ff;color:#2563eb;padding:6px 12px;border-radius:15px;font-size:12px;font-weight:500}.problem{padding:60px 0}.features{padding:80px 0}.cta-section{padding:60px 0}@media (max-width: 768px){.hero-stats{flex-direction:column;gap:20px}.achievement-badges{position:static;flex-direction:row;flex-wrap:wrap;margin-top:20px}.stories-grid{grid-template-columns:1fr}}.admin-panel{min-height:100vh;background:var(--bg-secondary);padding:20px;color:var(--text-primary)}.admin-loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:18px;color:var(--text-secondary)}.admin-header{background:var(--bg-primary);padding:20px 30px;border-radius:12px;box-shadow:var(--shadow);margin-bottom:30px;display:flex;justify-content:space-between;align-items:center}.admin-header h1{margin:0;color:var(--text-primary);font-size:28px}.admin-nav{display:flex;gap:10px;align-items:center}.nav-tab{padding:10px 20px;border:2px solid var(--border-color);background:transparent;color:var(--text-secondary);border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-tab:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.nav-tab.active{border-color:var(--accent);background:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow)}.logout-btn{padding:10px 20px;border:none;background:var(--danger);color:#fff;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);margin-left:20px}.logout-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:var(--shadow)}.back-btn{padding:10px 20px;border:2px solid var(--success);background:transparent;color:var(--success);border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);margin-right:20px}.back-btn:hover{background:var(--success);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow)}.overview-tab{display:flex;flex-direction:column;gap:30px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px}.stat-card{background:var(--bg-primary);padding:30px;border-radius:12px;box-shadow:var(--shadow);display:flex;align-items:center;gap:20px;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid var(--border-color)}.stat-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 8px 30px #667eea26;border-color:var(--accent)}.stat-icon{font-size:48px;opacity:.8}.stat-info h3{margin:0 0 5px;font-size:36px;color:var(--text-primary);font-weight:700}.stat-info p{margin:0;color:var(--text-secondary);font-size:16px}.recent-activity{background:var(--bg-primary);padding:30px;border-radius:12px;box-shadow:var(--shadow)}.recent-activity h3{margin:0 0 25px;color:var(--text-primary);font-size:22px}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{display:flex;gap:20px;padding:15px;background:var(--bg-secondary);border-radius:8px;border-left:4px solid var(--accent);transition:all .2s}.activity-item:hover{background:var(--bg-tertiary);transform:translate(5px)}.activity-time{color:var(--text-secondary);font-size:14px;min-width:100px}.activity-description{color:var(--text-primary);font-size:14px}.users-tab{background:var(--bg-primary);padding:30px;border-radius:12px;box-shadow:var(--shadow)}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.tab-header h3{margin:0;color:var(--text-primary);font-size:22px}.filters{display:flex;gap:15px}.filter-select{padding:8px 16px;border:2px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;transition:all .2s}.filter-select:hover{border-color:var(--accent)}.filter-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.users-table{display:flex;flex-direction:column;gap:2px}.table-header{display:grid;grid-template-columns:2fr 2fr 1fr 1fr 2fr;gap:20px;padding:15px 20px;background:var(--bg-secondary);font-weight:600;color:var(--text-primary);border-radius:8px 8px 0 0}.table-row{display:grid;grid-template-columns:2fr 2fr 1fr 1fr 2fr;gap:20px;padding:20px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);align-items:center;transition:background-color .2s}.table-row:hover{background:var(--bg-secondary)}.table-row:last-child{border-radius:0 0 8px 8px}.user-info{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.role-badge{padding:4px 12px;border-radius:15px;font-size:12px;font-weight:600;text-transform:uppercase}.role-badge.student{background:#e3f2fd;color:#1976d2}.role-badge.admin{background:#fff3e0;color:#f57c00}.suspended-badge{background:#ffebee;color:#d32f2f;padding:2px 6px;margin-left:8px;border-radius:10px;font-size:10px;font-weight:700}.actions{display:flex;gap:8px}.action-btn{padding:6px 12px;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.action-btn.view{background:#e3f2fd;color:#1976d2}.action-btn.view:hover{background:#bbdefb}.action-btn.suspend{background:#fff3e0;color:#f57c00}.action-btn.suspend:hover{background:#ffe0b2}.action-btn.suspend.unsuspend{background:#e8f5e8;color:#2e7d32}.action-btn.suspend.unsuspend:hover{background:#c8e6c9}.action-btn.delete{background:#ffebee;color:#d32f2f}.action-btn.delete:hover{background:#ffcdd2}.action-btn.promote{background:#e8f5e8;color:#2e7d32}.action-btn.promote:hover{background:#c8e6c9}.action-btn.remove-admin{background:#fff3e0;color:#f57c00}.action-btn.remove-admin:hover{background:#ffe0b2}.reports-tab{background:var(--bg-primary);padding:30px;border-radius:12px;box-shadow:var(--shadow)}.reports-list{display:flex;flex-direction:column;gap:20px}.report-card{border:2px solid var(--border-color);border-radius:12px;padding:25px;background:var(--bg-secondary);transition:all .2s}.report-card:hover{border-color:var(--accent);box-shadow:0 4px 15px #667eea1a;transform:translateY(-2px)}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.report-type{display:flex;gap:10px}.type-badge{padding:6px 12px;border-radius:15px;font-size:12px;font-weight:600;text-transform:uppercase}.type-badge.inappropriate_content{background:#ffebee;color:#d32f2f}.type-badge.spam{background:#fff3e0;color:#f57c00}.type-badge.harassment{background:#f3e5f5;color:#7b1fa2}.status-badge{padding:6px 12px;border-radius:15px;font-size:12px;font-weight:600}.status-badge.pending{background:#fff8e1;color:#f57f17}.status-badge.resolved{background:#e8f5e8;color:#2e7d32}.status-badge.dismissed{background:#f5f5f5;color:#616161}.status-badge.reviewed{background:#e3f2fd;color:#1976d2}.report-date{color:var(--text-secondary);font-size:14px}.report-content{margin-bottom:20px}.report-content p{margin:8px 0;color:var(--text-primary);font-size:14px;line-height:1.5}.report-actions{display:flex;gap:10px}.action-btn.resolve{background:#e8f5e8;color:#2e7d32}.action-btn.resolve:hover{background:#c8e6c9}.action-btn.dismiss{background:#f5f5f5;color:#616161}.action-btn.dismiss:hover{background:#eee}@media (max-width: 1024px){.table-header,.table-row{grid-template-columns:1fr;gap:10px}.user-info,.actions{justify-content:flex-start}}@media (max-width: 768px){.admin-panel{padding:10px}.admin-header{flex-direction:column;gap:20px;align-items:stretch}.admin-nav{justify-content:center;flex-wrap:wrap}.stats-grid{grid-template-columns:1fr}.tab-header{flex-direction:column;gap:15px;align-items:stretch}}.settings-page{max-width:1000px;margin:0 auto;padding:20px;background:var(--bg-secondary);min-height:100vh;color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.settings-header{background:var(--bg-primary);padding:30px;border-radius:12px;box-shadow:var(--shadow);margin-bottom:30px}.settings-header-top{display:flex;align-items:center;gap:30px}.settings-title{text-align:center;flex:1}.settings-header h2{margin:0 0 10px;color:var(--text-primary);font-size:32px}.settings-header p{margin:0;color:var(--text-secondary);font-size:16px}.back-btn{padding:10px 20px;border:2px solid #28a745;background:transparent;color:#28a745;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s;text-decoration:none;display:inline-block}.back-btn:hover{background:#28a745;color:#fff}.settings-content{display:flex;flex-direction:column;gap:30px}.settings-section{background:var(--bg-primary);padding:30px;border-radius:12px;box-shadow:var(--shadow)}.settings-section h3{margin:0 0 25px;color:var(--text-primary);font-size:20px;padding-bottom:15px;border-bottom:2px solid var(--border-color)}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-bottom:1px solid var(--border-color)}.setting-item:last-child{border-bottom:none}.setting-info{flex:1}.setting-info label{display:block;font-weight:600;color:var(--text-primary);font-size:16px;margin-bottom:5px}.setting-info span{color:var(--text-secondary);font-size:14px}.setting-control{min-width:200px;text-align:right}.setting-select{padding:8px 16px;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s;width:100%;max-width:180px}.setting-select:hover{border-color:var(--accent)}.setting-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.toggle-switch{position:relative;display:inline-block;width:60px;height:34px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-color);transition:.3s;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:#fff;transition:.3s;border-radius:50%}[data-theme=dark] .toggle-slider:before{background-color:#000}@media (prefers-color-scheme: dark){[data-theme=auto] .toggle-slider:before{background-color:#000}}input:checked+.toggle-slider{background-color:var(--accent)}input:checked+.toggle-slider:before{transform:translate(26px)}.profile-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:var(--text-primary);font-size:14px}.form-group input{padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:all .2s}.form-group input:hover{border-color:var(--accent)}.form-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.password-section{margin-top:30px;padding-top:30px;border-top:2px solid var(--border-color)}.password-section h4{margin:0 0 20px;color:var(--text-primary);font-size:18px}.btn-primary,.btn-outline,.btn-danger{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:2px solid;text-decoration:none;display:inline-block;text-align:center}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-outline{background:transparent;color:var(--accent);border-color:var(--accent)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.data-actions{display:flex;flex-direction:column;gap:20px}.action-item{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.action-info h4{margin:0 0 8px;color:var(--text-primary);font-size:16px}.action-info p{margin:0;color:var(--text-secondary);font-size:14px}.danger-zone{border:2px solid var(--danger);background:var(--bg-primary)}.danger-zone h3{color:var(--danger);border-bottom-color:var(--danger)}.danger-actions{display:flex;flex-direction:column;gap:20px}.delete-confirmation{background:var(--bg-secondary);border:2px solid var(--danger);border-radius:8px;padding:25px;margin-top:20px}.confirm-content h4{margin:0 0 15px;color:var(--danger);font-size:18px}.confirm-content p{margin:0 0 15px;color:var(--text-secondary);font-size:14px;line-height:1.5}.confirm-input{width:100%;padding:12px 16px;border:2px solid var(--danger);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;margin-bottom:20px}.confirm-input:focus{outline:none;box-shadow:0 0 0 3px #ef44441a}.confirm-actions{display:flex;gap:15px}@media (max-width: 768px){.settings-page{padding:15px}.setting-item{flex-direction:column;align-items:stretch;gap:15px;text-align:left}.setting-control{min-width:auto;text-align:left}.form-row{grid-template-columns:1fr}.action-item{flex-direction:column;align-items:stretch;gap:15px;text-align:center}.confirm-actions{flex-direction:column}.settings-header-top{flex-direction:column;gap:20px;text-align:center}}.password-input-container{position:relative;display:flex;align-items:center}.password-input-container input{width:100%!important;padding-right:50px!important}.password-toggle{position:absolute;right:12px;background:none;border:none;cursor:pointer;font-size:18px;color:var(--text-secondary);padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s;z-index:1}.password-toggle:hover{color:var(--accent)}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease}.transparency-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px;padding:24px;margin:24px 0}.transparency-section h3{color:#fff;margin-bottom:12px;font-size:1.5em}.transparency-description{color:#ffffffe6;margin-bottom:24px;font-size:1.1em;line-height:1.6}.transparency-items{display:grid;gap:20px;margin-bottom:24px}.transparency-item{display:flex;align-items:flex-start;gap:16px;background:#ffffff1a;padding:20px;border-radius:12px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .2s ease,background .2s ease}.transparency-item:hover{transform:translateY(-2px);background:#ffffff26}.transparency-icon{font-size:2em;flex-shrink:0;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#fff3;border-radius:50%}.transparency-content h4{color:#fff;margin-bottom:8px;font-size:1.2em;font-weight:600}.transparency-content p{color:#ffffffd9;line-height:1.5;margin:0}.transparency-actions{display:flex;gap:16px;flex-wrap:wrap}.transparency-actions .btn-outline{background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.transparency-actions .btn-outline:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-1px)}@media (max-width: 768px){.transparency-section .transparency-items{grid-template-columns:1fr}.transparency-section .transparency-item{flex-direction:column;text-align:center}.transparency-section .transparency-icon{align-self:center}.transparency-section .transparency-actions{flex-direction:column}}.first-gen-support{max-width:1200px;margin:0 auto;padding:20px;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}.first-gen-header{text-align:center;margin-bottom:40px;padding:40px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px}.first-gen-header h1{font-size:2.5em;margin-bottom:12px;font-weight:700}.first-gen-header p{font-size:1.2em;opacity:.9;margin:0}.first-gen-navigation{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:40px}.nav-button{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:left;font-size:16px;color:var(--text-primary)}.nav-button:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow)}.nav-button.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:var(--shadow)}.nav-icon{font-size:1.5em;flex-shrink:0}.nav-text{font-weight:600}.first-gen-content{background:var(--bg-secondary);border-radius:16px;padding:40px;margin-bottom:40px;box-shadow:var(--shadow)}.content-section h2{color:var(--accent);font-size:2em;margin-bottom:20px;border-bottom:3px solid var(--accent);padding-bottom:10px}.content-description{font-size:1.1em;line-height:1.7;margin-bottom:30px;color:var(--text-secondary)}.key-points{background:var(--bg-primary);padding:24px;border-radius:12px;border-left:4px solid var(--accent)}.key-points h3{color:var(--accent);margin-bottom:16px;font-size:1.3em}.key-points ul,.info-section ul,.financial-tips ul{list-style:none;padding:0}.key-points li,.info-section li,.financial-tips li{padding:8px 0 8px 30px;position:relative;line-height:1.6}.key-points li:before,.info-section li:before,.financial-tips li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700;font-size:1.2em}.info-section{margin-bottom:32px;background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.info-section h3{color:var(--accent);margin-bottom:16px;font-size:1.3em;border-bottom:2px solid var(--border-color);padding-bottom:8px}.timeline{margin-top:30px}.timeline-item{display:flex;align-items:flex-start;gap:20px;margin-bottom:30px;padding:24px;background:var(--bg-primary);border-radius:12px;box-shadow:0 2px 8px #0000001a}.timeline-marker{flex-shrink:0;width:40px;height:40px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2em}.timeline-content h3{color:var(--accent);margin-bottom:12px;font-size:1.2em}.timeline-content ul{list-style:none;padding:0}.timeline-content li{padding:6px 0 6px 24px;position:relative;line-height:1.5}.timeline-content li:before{content:"→";position:absolute;left:0;color:var(--accent);font-weight:700}.aid-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin:30px 0}.aid-type-card{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a;border:2px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease}.aid-type-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026;border-color:var(--accent)}.aid-type-card h3{color:var(--accent);margin-bottom:12px;font-size:1.3em}.aid-type-card p{margin-bottom:16px;line-height:1.5;color:var(--text-secondary)}.aid-type-card ul{list-style:none;padding:0}.aid-type-card li{padding:4px 0 4px 20px;position:relative;font-size:.95em}.aid-type-card li:before{content:"•";position:absolute;left:0;color:var(--accent);font-weight:700}.financial-tips{background:var(--bg-primary);padding:24px;border-radius:12px;border-left:4px solid var(--success);margin-top:30px}.financial-tips h3{color:var(--success);margin-bottom:16px;font-size:1.3em}.support-resources{background:var(--bg-secondary);padding:30px;border-radius:16px;text-align:center}.support-resources h3{color:var(--accent);margin-bottom:20px;font-size:1.5em}.resource-links{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.resource-link{display:inline-block;padding:12px 24px;background:var(--accent);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;transition:all .3s ease}.resource-link:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}@media (max-width: 768px){.first-gen-support{padding:16px}.first-gen-header{padding:30px 16px;margin-bottom:30px}.first-gen-header h1{font-size:2em}.first-gen-navigation{grid-template-columns:1fr;gap:12px}.nav-button{padding:14px 16px;font-size:15px}.first-gen-content{padding:24px 20px}.content-section h2{font-size:1.6em}.timeline-item{flex-direction:column;gap:16px;padding:20px}.timeline-marker{align-self:flex-start}.aid-types{grid-template-columns:1fr;gap:16px}.resource-links{flex-direction:column;align-items:center}.resource-link{width:100%;max-width:300px;text-align:center}}[data-theme=dark] .first-gen-header,[data-theme=auto] .first-gen-header{background:linear-gradient(135deg,#667eea,#764ba2)}@media (prefers-color-scheme: dark){[data-theme=auto] .first-gen-header{background:linear-gradient(135deg,#667eea,#764ba2)}}.parent-dashboard{max-width:1400px;margin:0 auto;padding:20px;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}.dashboard-header{text-align:center;margin-bottom:40px;padding:40px 20px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-radius:16px}.dashboard-header h1{font-size:2.5em;margin-bottom:12px;font-weight:700}.dashboard-header p{font-size:1.2em;opacity:.9;margin:0}.dashboard-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px;background:var(--bg-secondary);padding:8px;border-radius:12px;box-shadow:var(--shadow)}.tab-button{display:flex;align-items:center;gap:8px;padding:12px 16px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;color:var(--text-secondary);font-size:14px;font-weight:500;flex:1;min-width:120px;justify-content:center}.tab-button:hover{background:var(--accent);color:#fff;transform:translateY(-1px)}.tab-button.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px #667eea4d}.tab-icon{font-size:1.2em}.tab-label{font-weight:600}.dashboard-content{background:var(--bg-secondary);border-radius:16px;padding:30px;box-shadow:var(--shadow)}.tab-content h3{color:var(--accent);font-size:1.5em;margin-bottom:16px;border-bottom:2px solid var(--border-color);padding-bottom:8px}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.overview-card{background:var(--bg-primary);border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.overview-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.card-header{background:var(--accent);color:#fff;padding:16px 20px}.card-header h3{margin:0;font-size:1.2em;border:none;padding:0}.card-content{padding:20px}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-color)}.stat-item:last-child{border-bottom:none}.stat-label{color:var(--text-secondary);font-size:.95em}.stat-value{font-weight:600;color:var(--accent);font-size:1.1em}.access-control .card-content{padding:16px 20px}.access-levels{display:flex;flex-direction:column;gap:12px}.access-option{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px;border-radius:6px;transition:background .2s ease}.access-option:hover{background:var(--bg-secondary)}.access-option input[type=radio]{margin:0}.financial-planning{display:grid;gap:30px}.financial-section{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.financial-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.input-group{display:flex;flex-direction:column}.input-group label{color:var(--text-secondary);font-weight:600;margin-bottom:6px;font-size:.95em}.financial-input{padding:12px;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:16px;transition:border-color .2s ease}.financial-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #667eea1a}.cost-breakdown{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.college-costs{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:20px}.cost-card{background:var(--bg-secondary);padding:20px;border-radius:10px;border:2px solid var(--border-color)}.cost-card h4{color:var(--accent);margin-bottom:12px;font-size:1.2em}.cost-details{display:flex;flex-direction:column;gap:8px}.cost-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.cost-item span:first-child{color:var(--text-secondary);font-size:.95em}.cost-item span:last-child{font-weight:600;color:var(--accent)}.savings-progress{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.progress-bar{width:100%;height:12px;background:var(--border-color);border-radius:6px;overflow:hidden;margin:16px 0}.progress-fill{height:100%;background:linear-gradient(90deg,var(--success) 0%,#22c55e 100%);border-radius:6px;transition:width .3s ease}.communication-log{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.log-entries{display:flex;flex-direction:column;gap:16px;margin-top:20px}.log-entry{background:var(--bg-secondary);padding:20px;border-radius:10px;border-left:4px solid var(--border-color);transition:transform .2s ease}.log-entry:hover{transform:translate(4px)}.log-entry.positive{border-left-color:var(--success)}.log-entry.neutral{border-left-color:var(--accent)}.log-entry.negative{border-left-color:var(--danger)}.log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.log-date{color:var(--text-muted);font-size:.9em}.log-type{padding:4px 8px;border-radius:4px;font-size:.8em;font-weight:600;text-transform:uppercase}.type-milestone{background:var(--success);color:#fff}.type-financial{background:var(--accent);color:#fff}.type-academic{background:var(--warning);color:#fff}.log-entry h4{margin:0 0 8px;color:var(--text-primary);font-size:1.1em}.log-entry p{margin:0;color:var(--text-secondary);line-height:1.5}.milestones-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:20px}.milestone-card{background:var(--bg-primary);padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a;text-align:center;border:2px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease}.milestone-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.milestone-card.completed{border-color:var(--success);background:linear-gradient(135deg,#10b9811a,#10b9810d)}.milestone-card.in-progress{border-color:var(--warning);background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d)}.milestone-card.pending{border-color:var(--text-muted);background:var(--bg-secondary)}.milestone-status{font-size:2em;margin-bottom:12px}.milestone-card h4{color:var(--text-primary);margin-bottom:8px;font-size:1.1em}.milestone-card p{color:var(--text-secondary);margin:0;font-size:.95em}.college-review-card{background:var(--bg-primary);padding:20px;border-radius:12px;border:2px solid var(--border-color);margin-bottom:16px;transition:border-color .2s ease}.college-review-card:hover{border-color:var(--accent)}.college-review-card h4{color:var(--accent);margin-bottom:8px;font-size:1.2em}.college-review-card p{color:var(--text-secondary);margin:4px 0;line-height:1.5}.restricted-content{display:flex;align-items:center;justify-content:center;min-height:300px}.restriction-notice{text-align:center;background:var(--bg-primary);padding:40px;border-radius:12px;border:2px dashed var(--border-color);max-width:400px}.restriction-notice h3{color:var(--warning);margin-bottom:16px;border:none;padding:0}.restriction-notice p{color:var(--text-secondary);margin-bottom:20px;line-height:1.6}.btn-outline{padding:12px 24px;background:transparent;border:2px solid var(--accent);color:var(--accent);border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease}.btn-outline:hover{background:var(--accent);color:#fff;transform:translateY(-1px)}@media (max-width: 768px){.parent-dashboard{padding:16px}.dashboard-header{padding:30px 16px;margin-bottom:30px}.dashboard-header h1{font-size:2em}.dashboard-tabs{flex-direction:column;gap:4px}.tab-button{justify-content:flex-start;min-width:auto}.dashboard-content{padding:20px}.overview-grid,.financial-inputs{grid-template-columns:1fr;gap:16px}.college-costs{grid-template-columns:1fr}.milestones-grid{grid-template-columns:1fr;gap:16px}}@media (max-width: 480px){.dashboard-tabs{padding:4px}.tab-button{padding:10px 12px;font-size:13px}.tab-icon{font-size:1.1em}.overview-card,.financial-section,.cost-breakdown,.savings-progress,.communication-log{margin:0 -4px}}.underrepresented-support{max-width:1200px;margin:0 auto;padding:20px;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}.support-header{text-align:center;margin-bottom:40px;padding:40px 20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-radius:16px}.support-header h1{font-size:2.5em;margin-bottom:12px;font-weight:700}.support-header p{font-size:1.2em;opacity:.9;margin:0}.support-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px;background:var(--bg-secondary);padding:12px;border-radius:16px;box-shadow:var(--shadow)}.nav-button{display:flex;align-items:center;gap:8px;padding:12px 16px;background:transparent;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;color:var(--text-secondary);font-size:14px;font-weight:500;flex:1;min-width:140px;justify-content:center}.nav-button:hover{background:var(--success);color:#fff;transform:translateY(-1px)}.nav-button.active{background:var(--success);color:#fff;box-shadow:0 2px 8px #10b9814d}.nav-icon{font-size:1.2em}.nav-label{font-weight:600}.support-content{background:var(--bg-secondary);border-radius:16px;padding:40px;box-shadow:var(--shadow)}.support-section h2{color:var(--success);font-size:2em;margin-bottom:16px;border-bottom:3px solid var(--success);padding-bottom:8px}.section-description{font-size:1.1em;line-height:1.7;margin-bottom:30px;color:var(--text-secondary);background:var(--bg-primary);padding:20px;border-radius:12px;border-left:4px solid var(--success)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin:30px 0}.stat-card{background:var(--bg-primary);padding:24px;border-radius:12px;text-align:center;box-shadow:0 2px 8px #0000001a;border:2px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026;border-color:var(--success)}.stat-number{font-size:2.5em;font-weight:700;color:var(--success);display:block;margin-bottom:8px}.stat-label{color:var(--text-secondary);font-size:.95em;line-height:1.4}.personalized-recommendations{margin-top:40px}.personalized-recommendations h3{color:var(--success);font-size:1.5em;margin-bottom:20px}.recommendation-card{display:flex;align-items:center;gap:20px;background:var(--bg-primary);padding:24px;border-radius:12px;margin-bottom:16px;box-shadow:0 2px 8px #0000001a;border:2px solid var(--border-color);transition:all .2s ease}.recommendation-card:hover{border-color:var(--success);transform:translateY(-1px);box-shadow:0 4px 16px #00000026}.rec-icon{font-size:2.5em;flex-shrink:0;background:linear-gradient(135deg,var(--success) 0%,#059669 100%);width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center}.rec-content h4{color:var(--text-primary);margin-bottom:8px;font-size:1.2em}.rec-content p{color:var(--text-secondary);margin-bottom:12px;line-height:1.5}.rec-button{background:var(--success);color:#fff;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.rec-button:hover{background:#059669;transform:translateY(-1px)}.scholarship-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin:30px 0}.scholarship-card{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a;border:2px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease}.scholarship-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026;border-color:var(--success)}.scholarship-card h3{color:var(--success);margin-bottom:16px;font-size:1.3em}.scholarship-details{margin-bottom:20px}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-color)}.detail-item:last-child{border-bottom:none}.detail-label{color:var(--text-secondary);font-weight:600;font-size:.95em}.detail-value{color:var(--text-primary);font-weight:500;text-align:right}.scholarship-link{display:inline-block;background:var(--success);color:#fff;padding:10px 20px;border-radius:8px;text-decoration:none;font-weight:600;transition:all .2s ease;width:100%;text-align:center}.scholarship-link:hover{background:#059669;transform:translateY(-1px)}.scholarship-tips{background:var(--bg-primary);padding:24px;border-radius:12px;border-left:4px solid var(--success);margin-top:30px}.scholarship-tips h3{color:var(--success);margin-bottom:16px}.scholarship-tips ul{list-style:none;padding:0}.scholarship-tips li{padding:8px 0 8px 24px;position:relative;line-height:1.6}.scholarship-tips li:before{content:"💡";position:absolute;left:0;font-size:1.2em}.programs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin:30px 0}.program-category{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a;border:2px solid var(--border-color);transition:border-color .2s ease}.program-category:hover{border-color:var(--success)}.program-category h3{color:var(--success);margin-bottom:12px;font-size:1.3em}.program-category p{color:var(--text-secondary);margin-bottom:16px;line-height:1.5}.program-list{list-style:none;padding:0}.program-list li{padding:6px 0 6px 20px;position:relative;color:var(--text-primary)}.program-list li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700}.colleges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px;margin:30px 0}.college-card{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a;border:2px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease}.college-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026;border-color:var(--success)}.college-card h3{color:var(--success);margin-bottom:16px;font-size:1.3em}.college-diversity,.college-programs{margin-bottom:12px;line-height:1.5}.college-diversity strong,.college-programs strong,.college-highlights strong{color:var(--text-primary)}.college-highlights ul{list-style:none;padding:0;margin-top:8px}.college-highlights li{padding:4px 0 4px 20px;position:relative;color:var(--text-secondary)}.college-highlights li:before{content:"★";position:absolute;left:0;color:var(--success)}.resources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin:30px 0}.resource-category{background:var(--bg-primary);padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a;border:2px solid var(--border-color)}.resource-category h3{color:var(--success);margin-bottom:16px;font-size:1.3em}.resource-list{list-style:none;padding:0}.resource-list li{padding:8px 0;border-bottom:1px solid var(--border-color)}.resource-list li:last-child{border-bottom:none}.resource-list a{color:var(--accent);text-decoration:none;font-weight:500;transition:color .2s ease}.resource-list a:hover{color:var(--accent-hover);text-decoration:underline}@media (max-width: 768px){.underrepresented-support{padding:16px}.support-header{padding:30px 16px;margin-bottom:30px}.support-header h1{font-size:2em}.support-nav{flex-direction:column;gap:8px}.nav-button{min-width:auto;justify-content:flex-start}.support-content{padding:24px 20px}.stats-grid{grid-template-columns:1fr;gap:16px}.recommendation-card{flex-direction:column;text-align:center;gap:16px}.scholarship-grid,.programs-grid,.colleges-grid,.resources-grid{grid-template-columns:1fr;gap:16px}}@media (max-width: 480px){.support-header h1{font-size:1.8em}.support-content{padding:20px 16px}.recommendation-card,.scholarship-card,.program-category,.college-card,.resource-category{padding:20px}}:root{--bg-primary: #ffffff;--bg-secondary: #f8f9ff;--bg-tertiary: #f1f3f4;--text-primary: #333333;--text-secondary: #666666;--text-muted: #888888;--border-color: #e9ecef;--shadow: 0 4px 20px rgba(0, 0, 0, .05);--accent: #667eea;--accent-hover: #5a6fd8;--success: #10b981;--danger: #ef4444;--warning: #f59e0b}[data-theme=dark]{--bg-primary: #1a1b23;--bg-secondary: #1e1f26;--bg-tertiary: #2a2b35;--text-primary: #e5e6e8;--text-secondary: #c5c6c8;--text-muted: #a5a6a8;--border-color: #3a3b45;--shadow: 0 4px 20px rgba(0, 0, 0, .3);--accent: #667eea;--accent-hover: #5a6fd8;--success: #10b981;--danger: #ef4444;--warning: #f59e0b}@media (prefers-color-scheme: dark){[data-theme=auto]{--bg-primary: #1a1b23;--bg-secondary: #1e1f26;--bg-tertiary: #2a2b35;--text-primary: #e5e6e8;--text-secondary: #c5c6c8;--text-muted: #a5a6a8;--border-color: #3a3b45;--shadow: 0 4px 20px rgba(0, 0, 0, .3)}}*{margin:0;padding:0;box-sizing:border-box;transition:background-color .3s ease,color .3s ease,border-color .3s ease}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--text-primary);background-color:var(--bg-secondary)}.App{min-height:100vh}#root{margin:0;padding:0;text-align:left;max-width:none}.loading-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--bg-secondary)}.loading-spinner{color:var(--accent);font-size:18px;font-weight:500}.btn-primary{background:var(--accent);color:#fff;padding:12px 24px;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:transform .2s,box-shadow .2s,background-color .3s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary:hover{transform:translateY(-2px);background:var(--accent-hover);box-shadow:var(--shadow)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:transparent;color:var(--accent);padding:12px 24px;border:2px solid var(--accent);border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;text-align:center}.btn-secondary:hover{background:var(--accent);color:#fff}.btn-outline{background:transparent;color:var(--accent);padding:8px 16px;border:2px solid var(--accent);border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;text-align:center}.btn-outline:hover{background:var(--accent);color:#fff}.card{background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s,background-color .3s ease;padding:30px}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.form-group{display:flex;flex-direction:column;margin-bottom:20px}.form-group label{color:var(--text-primary);font-weight:500;margin-bottom:5px;font-size:14px}.form-group input,.form-group select,.form-group textarea{padding:12px 15px;border:2px solid var(--border-color);border-radius:8px;font-size:16px;background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s,box-shadow .2s,background-color .3s ease,color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.error-message{background:#fef2f2;color:#dc2626;padding:12px 15px;border-radius:8px;border:1px solid #fecaca;font-size:14px;margin-bottom:20px}[data-theme=dark] .error-message{background:#2d1b1b;color:#f87171;border-color:#4a2424}@media (prefers-color-scheme: dark){[data-theme=auto] .error-message{background:#2d1b1b;color:#f87171;border-color:#4a2424}}.success-message{background:#f0fdf4;color:#16a34a;padding:12px 15px;border-radius:8px;border:1px solid #bbf7d0;font-size:14px;margin-bottom:20px}[data-theme=dark] .success-message{background:#1a2e1a;color:#34d399;border-color:#2a4a2a}@media (prefers-color-scheme: dark){[data-theme=auto] .success-message{background:#1a2e1a;color:#34d399;border-color:#2a4a2a}}body{font-size:16px;-webkit-text-size-adjust:100%;touch-action:manipulation}.btn-primary,.btn-secondary,.btn-outline{min-height:44px;min-width:44px;font-size:16px;cursor:pointer}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:44px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.card{margin:16px 0;padding:20px}button,a,[role=button]{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}*{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.App{overflow-x:hidden;position:relative}@media (max-width: 480px){body{font-size:14px}.card{margin:12px 8px;padding:16px;border-radius:8px}.btn-primary,.btn-secondary,.btn-outline{width:100%;margin:8px 0;padding:14px 20px;font-size:16px}.form-group input,.form-group select,.form-group textarea{padding:14px 16px;font-size:16px}.form-group{margin-bottom:16px}}@media (min-width: 481px) and (max-width: 768px){.card{margin:16px 12px;padding:24px}.form-row{grid-template-columns:1fr;gap:16px}}@media (min-width: 769px){.form-row{grid-template-columns:1fr 1fr;gap:20px}.card{padding:30px}}@media (min-width: 1200px){.card{padding:40px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.card{box-shadow:0 4px 24px #00000014}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*:focus{outline:2px solid var(--accent);outline-offset:2px}*:focus:not(:focus-visible){outline:none}*:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-color-scheme: dark){[data-theme=auto] body{background:var(--bg-secondary)}}@supports (padding: max(0px)){body{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.App{padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom))}}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}@viewport{width:device-width;initial-scale:1}img,video{max-width:100%;height:auto}.loading-container{min-height:100vh;min-height:100dvh}.loading-spinner{font-size:16px;padding:20px}@media (max-width: 480px){.loading-spinner{font-size:14px;padding:16px}}
