@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base:#070a12;--bg-surface:#0d1220;--bg-card:#111827;--bg-raised:#1a2235;--bg-hover:#1e2840;--border:#ffffff0f;--border-md:#ffffff1a;--blue:#4f8ef7;--blue-dim:#4f8ef724;--blue-glow:#4f8ef74d;--green:#23d18b;--green-dim:#23d18b1f;--gold:#f5a623;--gold-dim:#f5a6231f;--red:#ff5e5e;--red-dim:#ff5e5e1f;--purple:#a78bfa;--t1:#e6eaf5;--t2:#7c8db5;--t3:#3e4f6e;--radius:10px;--radius-sm:6px;--primary:var(--blue);--primary-dark:#3b7de8;--primary-light:var(--blue-dim);--danger:var(--red);--success:var(--green);--gray-50:var(--bg-base);--gray-100:var(--bg-surface);--gray-200:var(--border-md);--gray-400:var(--t3);--gray-600:var(--t2);--gray-800:var(--t1);--text-muted:var(--t2);--border-color:var(--border);--shadow:0 1px 3px #0006, 0 1px 2px #0000004d;--shadow-md:0 4px 6px #00000080, 0 2px 4px #0006;--warning:var(--gold);--warning-bg:var(--gold-dim);--blue-500:var(--blue)}body{color:var(--t1);background:var(--bg-base);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;line-height:1.5}a{color:var(--blue);text-decoration:none}a:hover{color:var(--t1)}.container{max-width:1100px;margin:0 auto;padding:0 1.25rem}.navbar{background:var(--bg-surface);border-bottom:1px solid var(--border);z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);height:52px;position:sticky;top:0}.navbar-inner{justify-content:space-between;align-items:center;height:52px;display:flex}.navbar-brand{letter-spacing:-.3px;color:var(--t1);align-items:center;gap:8px;font-size:15px;font-weight:800;text-decoration:none;display:flex}.navbar-brand:hover{color:var(--t1)}.navbar-brand-icon{flex-shrink:0;width:28px;height:28px;display:block}.navbar-links{align-items:center;gap:4px;display:flex}.navbar-links a{border-radius:var(--radius-sm);color:var(--t2);padding:5px 12px;font-size:12.5px;font-weight:500;text-decoration:none;transition:all .15s}.navbar-links a:hover{background:var(--bg-raised);color:var(--t1)}.navbar-links a.active{background:var(--blue-dim);color:var(--blue)}.navbar-user{color:var(--t2);padding:0 8px;font-size:12px;font-weight:500}.btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;padding:7px 14px;font-family:Inter,sans-serif;font-size:12px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn:hover{text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--primary-dark);color:#fff}.btn-secondary{background:var(--bg-raised);color:var(--t2);border:1px solid var(--border-md)}.btn-secondary:hover{background:var(--bg-hover);color:var(--t1)}.btn-danger{background:var(--red-dim);color:var(--red);border:1px solid #ff5e5e33}.btn-danger:hover{background:#ff5e5e38}.btn-sm{padding:4px 10px;font-size:11.5px}.btn-full{width:100%}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.student-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;transition:border-color .15s}.student-card:hover{border-color:var(--border-md)}.badge{border-radius:20px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-green{background:var(--green-dim);color:var(--green);border:1px solid #23d18b33}.badge-blue{background:var(--blue-dim);color:var(--blue);border:1px solid #4f8ef733}.badge-gray{background:var(--bg-raised);color:var(--t2);border:1px solid var(--border-md)}.badge-yellow{background:var(--gold-dim);color:var(--gold);border:1px solid #f5a62333}.badge-red{background:var(--red-dim);color:var(--red);border:1px solid #ff5e5e33}.form-group{margin-bottom:1rem}.form-group label{color:var(--t2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px;font-size:11.5px;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{background:var(--bg-base);border:1px solid var(--border-md);border-radius:var(--radius-sm);width:100%;color:var(--t1);outline:none;padding:8px 10px;font-family:Inter,sans-serif;font-size:13px;transition:border-color .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4f8ef780;box-shadow:0 0 0 3px #4f8ef71a}.form-group input::placeholder{color:var(--t3)}.form-group select option{background:var(--bg-card)}.input{background:var(--bg-base);border:1px solid var(--border-md);border-radius:var(--radius-sm);color:var(--t1);outline:none;padding:7px 10px;font-family:Inter,sans-serif;font-size:13px}.input:focus{border-color:#4f8ef780}.input option{background:var(--bg-card)}.alert{border-radius:var(--radius-sm);border:1px solid var(--border-md);background:var(--bg-raised);color:var(--t1);margin-bottom:1rem;padding:.75rem 1rem;font-size:12.5px}.alert-error{background:var(--red-dim);color:var(--red);border-color:#ff5e5e40}.alert-success{background:var(--green-dim);color:var(--green);border-color:#23d18b40}.grid-2{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;display:grid}.detail-grid{grid-template-columns:1fr 320px;align-items:start;gap:1.5rem;display:grid}@media (width<=768px){.detail-grid{grid-template-columns:1fr}}.page-header{margin-bottom:1.5rem}.page-header h1{letter-spacing:-.4px;color:var(--t1);font-size:20px;font-weight:800}.page-header p{color:var(--t2);margin-top:3px;font-size:13px}.page-actions{justify-content:space-between;align-items:flex-start;display:flex}.section{margin-bottom:1.5rem}.section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--t3);margin-bottom:.75rem;font-size:10.5px;font-weight:700}.card-meta{color:var(--t2);margin-top:2px;font-size:12px}.card-tags{flex-wrap:wrap;gap:5px;margin-top:.5rem;display:flex}.spinner{border:2.5px solid var(--border-md);border-top-color:var(--blue);border-radius:50%;width:28px;height:28px;margin:2rem auto;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;color:var(--t2);padding:2.5rem 1.5rem}.empty-state h3{color:var(--t1);margin-bottom:.5rem;font-size:15px;font-weight:700}.empty-state p{font-size:13px}.auth-page{background:var(--bg-base);justify-content:center;align-items:center;min-height:calc(100vh - 52px);padding:2rem 1rem;display:flex}.auth-card{width:100%;max-width:400px}.auth-card h1{color:var(--t1);margin-bottom:.25rem;font-size:20px;font-weight:800}.subtitle{color:var(--t2);margin-bottom:1.5rem;font-size:13px}.auth-footer{color:var(--t2);text-align:center;margin-top:1.25rem;font-size:12.5px}.auth-footer a{color:var(--blue)}main{padding:2rem 0}.hero{text-align:center;padding:4rem 0 3rem}.hero h1{letter-spacing:-.8px;color:var(--t1);margin-bottom:1rem;font-size:36px;font-weight:800;line-height:1.15}.hero p{color:var(--t2);max-width:520px;margin:0 auto 2rem;font-size:15px;line-height:1.7}.hero-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.hero-actions .btn{padding:10px 22px;font-size:13px}.features{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:3rem;display:grid}.feature-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:1.5rem;transition:border-color .15s}.feature-card:hover{border-color:var(--border-md)}.feature-icon{margin-bottom:.75rem;font-size:1.75rem}.feature-card h3{color:var(--t1);margin-bottom:.5rem;font-size:14px;font-weight:700}.feature-card p{color:var(--t2);font-size:12.5px;line-height:1.6}.match-row{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);align-items:flex-start;gap:1rem;margin-bottom:.625rem;padding:1rem;transition:border-color .15s;display:flex}.match-row:hover{border-color:var(--border-md)}.match-row-body{flex:1}.match-row-body h3{font-size:14px;font-weight:700}.match-row-body h3 a{color:var(--t1)}.match-row-body h3 a:hover{color:var(--blue)}.match-score{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700;display:flex}.score-high{background:var(--green-dim);color:var(--green);border:1.5px solid #23d18b4d}.score-mid{background:var(--gold-dim);color:var(--gold);border:1.5px solid #f5a6234d}.score-low{background:var(--bg-raised);color:var(--t2);border:1.5px solid var(--border-md)}.match-reasons{color:var(--t2);margin-top:.3rem;font-size:11.5px}.detail-stat{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.4rem 0;font-size:12.5px;display:flex}.detail-stat:last-child{border-bottom:none}.detail-stat span:first-child{color:var(--t2)}.detail-stat span:last-child{color:var(--t1);font-weight:600}.school-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;transition:border-color .15s}.school-card:hover{border-color:var(--border-md)}.school-card h3{color:var(--t1);font-size:14px;font-weight:700}.school-card h3 a{color:var(--t1)}.school-card h3 a:hover{color:var(--blue)}.filter-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.25rem;display:flex}.filter-bar .input{padding:6px 10px;font-size:12.5px}table{border-collapse:collapse}th,td{font-size:12.5px}thead tr{border-bottom:1px solid var(--border-md)}tbody tr{border-bottom:1px solid var(--border)}th{color:var(--t2);padding:.6rem 0;font-weight:600}td{color:var(--t1);padding:.5rem 0}.form-row{gap:.75rem;display:flex}.form-row-2>*{flex:1;min-width:0}@media (width<=768px){.profile-grid{grid-template-columns:1fr!important}}.toggle-group{color:var(--t2);align-items:center;gap:.5rem;font-size:13px;display:flex}.toggle-group input[type=checkbox]{accent-color:var(--blue);width:15px;height:15px}
