@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;800&family=Source+Sans+3:wght@300;400;500;600&display=swap";:root{--primary: #003087;--primary-dark: #001f5c;--primary-light: #1a4db3;--accent: #c8a84b;--accent-light: #e8c96a;--accent-dark: #a07a20;--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #f1f3f5;--text-primary: #212529;--text-secondary:#495057;--text-tertiary: #6c757d;--border-color: #dee2e6;--border-light: #e9ecef;--white: #ffffff;--off-white: #f8f9fa;--gray-50: #f8f9fa;--gray-100: #e9ecef;--gray-200: #dee2e6;--gray-300: #ced4da;--gray-400: #adb5bd;--gray-500: #6c757d;--gray-600: #495057;--gray-700: #343a40;--gray-800: #212529;--gray-900: #1a1e28;--danger: #dc3545;--success: #198754;--warning: #ffc107;--info: #0dcaf0;--font-display: "Playfair Display", Georgia, serif;--font-body: "Source Sans 3", system-ui, sans-serif;--shadow-sm: 0 1px 3px rgba(0,0,0,.05);--shadow-md: 0 4px 6px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.16);--shadow-lg: 0 10px 15px rgba(0,0,0,.1), 0 4px 6px rgba(0,0,0,.08);--shadow-xl: 0 20px 25px rgba(0,0,0,.15), 0 8px 10px rgba(0,0,0,.05);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--transition: .2s ease-in-out}@media (prefers-color-scheme: dark){:root{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--text-primary: #f0f6fc;--text-secondary:#8b949e;--text-tertiary: #6e7681;--border-color: #30363d;--border-light: #21262d;--shadow-sm: 0 1px 3px rgba(0,0,0,.2);--shadow-md: 0 4px 6px rgba(0,0,0,.15), 0 1px 3px rgba(0,0,0,.2);--shadow-lg: 0 10px 15px rgba(0,0,0,.2), 0 4px 6px rgba(0,0,0,.15);--shadow-xl: 0 20px 25px rgba(0,0,0,.25), 0 8px 10px rgba(0,0,0,.1)}}html[data-theme=dark]{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--text-primary: #f0f6fc;--text-secondary:#8b949e;--text-tertiary: #6e7681;--border-color: #30363d;--border-light: #21262d;--shadow-sm: 0 1px 3px rgba(0,0,0,.2);--shadow-md: 0 4px 6px rgba(0,0,0,.15), 0 1px 3px rgba(0,0,0,.2);--shadow-lg: 0 10px 15px rgba(0,0,0,.2), 0 4px 6px rgba(0,0,0,.15);--shadow-xl: 0 20px 25px rgba(0,0,0,.25), 0 8px 10px rgba(0,0,0,.1)}html[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f5f7fb;--bg-tertiary: #f9fafb;--text-primary: #1a202c;--text-secondary:#4a5568;--text-tertiary: #9ba8be;--border-color: #e2e6ef;--border-light: #f0f2f7;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 16px rgba(0,0,0,.1);--shadow-lg: 0 8px 32px rgba(0,0,0,.14);--shadow-xl: 0 16px 48px rgba(0,0,0,.18)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;color:var(--text-primary);background:var(--bg-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;transition:background-color var(--transition),color var(--transition)}.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}a{color:inherit;text-decoration:none;transition:color var(--transition)}a:focus{outline:2px solid var(--primary);outline-offset:2px}a:active{outline-offset:0}img{max-width:100%;display:block}button{cursor:pointer;font-family:var(--font-body)}.container{max-width:1180px;margin:0 auto;padding:0 24px}@media (max-width: 1024px){.container{padding:0 20px}}@media (max-width: 768px){.container{padding:0 18px}}@media (max-width: 600px){.container{padding:0 16px}}@media (max-width: 480px){.container{padding:0 14px}}.section{padding:clamp(56px,6vw,96px) 0}@media (max-width: 768px){.section{padding:clamp(40px,6vw,72px) 0}}@media (max-width: 480px){.section{padding:40px 0}}.section-title{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--primary-dark);margin-bottom:12px}.section-subtitle{font-size:1.05rem;color:var(--text-secondary);max-width:560px;line-height:1.7}.divider-accent{width:52px;height:4px;background:var(--accent);border-radius:2px;margin:16px 0 32px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;border:2px solid transparent;transition:all var(--transition);text-decoration:none;min-height:44px;min-width:44px;cursor:pointer}@media (max-width: 768px){.btn{padding:11px 24px;font-size:.9rem;min-height:44px}}@media (max-width: 600px){.btn{padding:11px 20px;font-size:.875rem;min-height:44px}}@media (max-width: 480px){.btn{padding:10px 16px;font-size:.85rem;min-height:40px}}.btn-primary{background:var(--primary);color:var(--white);border-color:var(--primary)}.btn-primary:hover,.btn-primary:focus{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md);outline:none}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-accent{background:var(--accent);color:var(--primary-dark);border-color:var(--accent)}.btn-accent:hover,.btn-accent:focus{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-1px);box-shadow:var(--shadow-md);outline:none}.btn-accent:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-outline{background:transparent;color:var(--primary);border-color:var(--primary)}.btn-outline:hover,.btn-outline:focus{background:var(--primary);color:var(--white);transform:translateY(-1px);outline:none}.btn-outline:active{transform:translateY(0)}.btn-outline-white{background:transparent;color:var(--white);border-color:#ffffffb3}.btn-outline-white:hover,.btn-outline-white:focus{background:#ffffff26;border-color:var(--white);outline:none}.btn-outline-white:active{background:#ffffff40}.card{background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition),background-color var(--transition);width:100%;min-width:0}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.card:focus-within{box-shadow:var(--shadow-lg)}.form-group{margin-bottom:20px}.form-label{display:block;font-weight:600;font-size:.875rem;color:var(--text-secondary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.form-control{width:100%;padding:11px 15px;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.95rem;color:var(--text-primary);background:var(--bg-primary);transition:border-color var(--transition),box-shadow var(--transition),background-color var(--transition),color var(--transition);outline:none;min-height:44px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0030871f,inset 0 0 0 1px #0030870d}.form-control:active{border-color:var(--primary)}.form-control::placeholder{color:var(--text-tertiary);font-size:.9rem}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239ba8be' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;cursor:pointer}@media (max-width: 768px){.form-control{font-size:16px;padding:12px 14px;min-height:48px}}.badge{display:inline-block;padding:4px 12px;border-radius:99px;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.badge-primary{background:#0030871a;color:var(--primary)}.badge-accent{background:#c8a84b26;color:var(--accent-dark)}.badge-success{background:#28a7451a;color:var(--success)}.badge-danger{background:#dc35451a;color:var(--danger)}.page-hero{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary) 60%,var(--primary-light) 100%);color:var(--white);padding:72px 0 56px;position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.page-hero .container{position:relative}.page-hero h1{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;margin-bottom:12px}.page-hero p{font-size:1.05rem;opacity:.85;max-width:520px}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:.85rem;opacity:.75;margin-bottom:16px}.breadcrumb span{opacity:.5}.alert{padding:14px 18px;border-radius:var(--radius-sm);font-size:.9rem;display:flex;align-items:flex-start;gap:10px;margin-bottom:20px}.alert-info{background:#00308712;color:var(--primary-dark);border-left:4px solid var(--primary)}.alert-success{background:#28a74512;color:#155724;border-left:4px solid var(--success)}.alert-warning{background:#ffc1071a;color:#856404;border-left:4px solid var(--warning)}.alert-danger{background:#dc354512;color:#721c24;border-left:4px solid var(--danger)}.table-wrapper{width:100%;overflow-x:auto;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;background:var(--bg-secondary)}thead{background:var(--primary);color:var(--white);position:sticky;top:0}th{padding:14px 16px;text-align:left;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600;white-space:nowrap}td{padding:13px 16px;font-size:.9rem;border-bottom:1px solid var(--border-light);color:var(--text-secondary)}tbody tr{transition:background var(--transition)}tbody tr:hover{background:var(--bg-tertiary)}tbody tr:focus-within{background:#00308705}tbody tr:last-child td{border-bottom:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in-up{animation:fadeInUp .55s ease both}.animate-fade-in{animation:fadeIn .4s ease both}@media (max-width: 768px){.page-hero{padding:48px 0 40px}.page-hero h1{font-size:clamp(1.5rem,3vw,2.2rem)}.page-hero p{font-size:.95rem}}@media (max-width: 480px){.page-hero{padding:40px 0 32px}.page-hero h1{font-size:1.5rem}.breadcrumb{flex-wrap:wrap;gap:4px}}@media (max-width: 768px){.form-label{font-size:.8rem}.form-control{padding:10px 12px;font-size:.9rem}}@media (max-width: 768px){.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}th,td{padding:10px 12px;font-size:.85rem}}@media (max-width: 480px){.btn{padding:10px 20px;font-size:.9rem}.btn-primary,.btn-accent,.btn-outline,.btn-outline-white{width:100%;justify-content:center}}.navbar{position:sticky;top:0;z-index:1000;transition:box-shadow .3s ease}.navbar-topbar{background:var(--primary-dark);color:#ffffffbf;font-size:.78rem;padding:6px 0}.navbar-topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:16px}@media (max-width: 600px){.navbar-topbar{display:none}}.navbar-main{background:var(--bg-primary);border-bottom:1px solid var(--border-color);transition:background-color var(--transition),border-color var(--transition)}.navbar--scrolled .navbar-main{box-shadow:var(--shadow-md)}.navbar-main-inner{display:flex;align-items:center;gap:24px;height:68px}.navbar-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.navbar-logo{width:44px;height:44px;object-fit:contain}.navbar-brand-text{display:flex;flex-direction:column}.navbar-brand-short{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--primary-dark);line-height:1.1}.navbar-brand-full{font-size:.7rem;color:var(--text-tertiary);line-height:1.2;max-width:180px}.navbar-links{display:flex;align-items:center;gap:4px;margin-left:auto}.navbar-link{padding:8px 14px;font-size:.9rem;font-weight:600;color:var(--text-secondary);border-radius:var(--radius-sm);transition:color var(--transition),background var(--transition);white-space:nowrap;min-height:44px;display:flex;align-items:center}.navbar-link:focus{outline:2px solid var(--primary);outline-offset:2px;background:var(--bg-tertiary)}.navbar-link:active,.navbar-link:hover{color:var(--primary);background:var(--bg-tertiary)}.navbar-link.active{color:var(--primary);background:#00308712}.navbar-cta{display:flex;align-items:center;gap:10px;flex-shrink:0}.navbar-theme-toggle{background:none;border:none;font-size:1.3rem;cursor:pointer;padding:8px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color var(--transition);color:var(--text-primary)}.navbar-theme-toggle:hover{background:var(--bg-tertiary)}.navbar-theme-toggle:focus{outline:2px solid var(--primary);outline-offset:2px}.navbar-btn-login,.navbar-btn-apply{padding:10px 22px;font-size:.875rem;min-height:44px}.navbar-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:12px;margin-left:auto;cursor:pointer;min-width:48px;min-height:48px;touch-action:manipulation;-webkit-touch-callout:none}.navbar-hamburger:focus{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.navbar-hamburger span{display:block;width:24px;height:2.5px;background:var(--primary-dark);border-radius:2px;transition:all .3s ease;transform-origin:center}.navbar-hamburger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.navbar-hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.navbar-hamburger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.navbar-mobile{background:var(--bg-primary);border-top:1px solid var(--border-color);max-height:0;overflow:hidden;transition:max-height .35s ease,padding .3s ease,background-color var(--transition),border-color var(--transition);display:flex;flex-direction:column;box-shadow:inset 0 4px 6px #00000005}.navbar-mobile.open{max-height:600px;padding:16px 0 24px;overflow-y:auto;-webkit-overflow-scrolling:touch}.navbar-mobile-link{padding:16px 24px;font-size:1rem;font-weight:600;color:var(--text-secondary);border-left:3px solid transparent;transition:all var(--transition);touch-action:manipulation;min-height:44px;display:flex;align-items:center}.navbar-mobile-link:active,.navbar-mobile-link:focus{color:var(--primary);background:var(--bg-tertiary);border-left-color:var(--primary);outline:none}.navbar-mobile-link.active{color:var(--primary);background:var(--bg-tertiary);border-left-color:var(--primary)}.navbar-mobile-cta{display:flex;flex-direction:column;gap:12px;padding:16px 24px 0}.navbar-theme-toggle-mobile{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:11px 15px;border-radius:var(--radius-sm);font-weight:600;font-size:.95rem;cursor:pointer;transition:background-color var(--transition),border-color var(--transition);min-height:44px}.navbar-theme-toggle-mobile:hover{background:var(--bg-primary);border-color:var(--border-light)}@media (max-width: 1100px){.navbar-main-inner{gap:16px}.navbar-link{padding:8px 10px;font-size:.85rem}}@media (max-width: 900px){.navbar-links,.navbar-cta{display:none}.navbar-hamburger{display:flex}.navbar-main-inner{height:auto;padding:12px 0}}@media (max-width: 600px){.navbar-brand-text{display:none}.navbar-logo{width:36px;height:36px}.navbar-main-inner{gap:8px}.navbar-hamburger{padding:10px;min-width:44px;min-height:44px}}@media (min-width: 901px){.navbar-mobile{display:none!important}}@media (max-width: 900px){.navbar-main-inner{flex-wrap:wrap;justify-content:space-between;padding:10px 0}.navbar-links{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin-left:0}.navbar-cta{width:100%;justify-content:flex-end;gap:10px;padding-top:8px}.navbar-mobile.open{padding:12px 0 20px}.navbar-mobile-link{padding:12px 18px}.navbar-mobile-cta{padding:14px 18px 0}.navbar-mobile-cta .btn{padding:12px 14px;font-size:.9rem}}@media (max-width: 900px){.navbar-mobile.open{max-height:500px;padding:16px 0 24px}.navbar-mobile-link{padding:12px 20px;font-size:.95rem}.navbar-mobile-cta{padding:16px 20px 0;gap:12px}.navbar-mobile-cta .btn{width:100%;justify-content:center;padding:11px 16px;font-size:.9rem}}.footer{background:var(--bg-primary);margin-top:auto;transition:background-color var(--transition)}.footer-wave{line-height:0;overflow:hidden}.footer-wave svg{width:100%;height:60px;display:block}.footer-body{background:var(--primary-dark);color:#fffc}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:48px;padding:56px 0 40px}.footer-brand img.footer-logo{width:56px;height:56px;object-fit:contain;margin-bottom:12px;filter:brightness(0) invert(1)}.footer-brand h3{font-family:var(--font-display);font-size:1.3rem;color:var(--white);margin-bottom:4px}.footer-brand p{font-size:.85rem;line-height:1.5;opacity:.75}.footer-tagline{font-size:.8rem!important;color:var(--accent-light)!important;font-style:italic;opacity:1!important;margin-top:8px}.footer-col h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-light);margin-bottom:16px;font-weight:700}.footer-col ul{list-style:none}.footer-col ul li{margin-bottom:10px}.footer-col ul li a{font-size:.9rem;opacity:.75;transition:opacity var(--transition),color var(--transition);padding:4px 0;display:inline-block}.footer-col ul li a:focus{outline:2px solid var(--accent-light);outline-offset:2px}.footer-col ul li a:active,.footer-col ul li a:hover{opacity:1;color:var(--accent-light)}.footer-contact li{font-size:.875rem;opacity:.75;line-height:1.5}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0}.footer-bottom-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:.8rem;opacity:.6}.footer-bottom-inner a{color:inherit;transition:opacity var(--transition);padding:4px 0;display:inline-block}.footer-bottom-inner a:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.footer-bottom-inner a:active,.footer-bottom-inner a:hover{opacity:1}@media (max-width: 1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:40px}}@media (max-width: 900px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-body{padding:40px 0 30px}.footer-grid{padding:0 10px}.footer-bottom-inner{gap:10px}}@media (max-width: 600px){.footer-grid{grid-template-columns:1fr;gap:24px}.footer-body{padding:32px 0 24px}.footer-grid{padding:0 12px}.footer-bottom-inner{flex-direction:column;align-items:flex-start;font-size:.75rem}.footer-col h4{margin-bottom:12px}.footer-col ul li{margin-bottom:8px}.footer-contact li{font-size:.82rem}}@media (max-width: 480px){.footer-grid{gap:16px;padding:0 10px}.footer-brand h3{font-size:1.05rem}.footer-brand p{font-size:.78rem}.footer-bottom-inner{font-size:.72rem;gap:8px}}@media (max-width: 480px){.footer-grid{gap:16px}.footer-brand h3{font-size:1.1rem}.footer-brand p{font-size:.8rem}}:root{--color-primary: #001a35;--color-primary-dark: #000f2a;--color-primary-light: #003366;--color-accent: #00bfff;--color-accent-dark: #009acd;--color-bg-primary: #ffffff;--color-bg-secondary: #f8f9fa;--color-bg-tertiary: #f0f4f8;--color-text-primary: #212529;--color-text-secondary: #6c757d;--color-text-tertiary: #adb5bd;--color-white: #ffffff;--color-black: #000000;--font-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-display: "Satoshi", var(--font-primary);--spacing-px: 1px;--spacing-0: 0;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16enrollment-section {background:var(--bg-secondary);transition:background-color var(--transition);min-height:calc(100vh - 200px);display:flex;align-items:stretch}@keyframes spin{to{transform:rotate(360deg)}}}:root .enrollment-container{display:grid;grid-template-columns:260px 1fr;gap:32px;align-items:start}:root .enrollment-sidebar{position:sticky;top:120px}:root .enrollment-steps{background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:20px}:root .enroll-step{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border-light);font-size:.875rem;font-weight:500;color:var(--text-tertiary);transition:all var(--transition);min-height:44px;touch-action:manipulation}:root .enroll-step:focus-within{background:#00308705}:root .enroll-step:last-child{border-bottom:none}:root .enroll-step.done{color:var(--success)}:root .enroll-step.active{color:var(--primary);background:#0030870a;font-weight:700}:root .enroll-step-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;flex-shrink:0;background:var(--bg-tertiary);color:var(--text-tertiary);transition:all var(--transition)}:root .enroll-step.active .enroll-step-num{background:var(--primary);color:var(--white)}:root .enroll-step.done .enroll-step-num{background:var(--success);color:var(--white)}:root .sidebar-notice{background:#0030870d;border:1px solid rgba(0,48,135,.12);border-radius:var(--radius-md);padding:16px;font-size:.82rem;color:var(--text-secondary);line-height:1.55}:root .sidebar-notice strong{display:block;margin-bottom:8px;color:var(--primary-dark)}:root .enrollment-card{overflow:visible}:root .enrollment-card-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid var(--border-light)}:root .enrollment-card-header h2{font-family:var(--font-display);font-size:1.25rem;color:var(--primary-dark)}:root .step-indicator{font-size:.8rem;color:var(--text-tertiary);background:var(--bg-tertiary);padding:4px 12px;border-radius:99px}:root .enrollment-form{padding:28px}:root .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}:root .form-row-3{grid-template-columns:1fr 1fr 1fr}:root .form-control.is-invalid{border-color:var(--danger)}:root .form-error{font-size:.78rem;color:var(--danger);margin-top:4px}:root .enrollment-actions{display:flex;align-items:center;gap:12px;padding:20px 28px;border-top:1px solid var(--border-light);background:var(--bg-tertiary)}:root .enrollment-actions .btn{flex:1;justify-content:center;min-width:auto}:root .privacy-agreements{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:20px;margin-top:8px}:root .privacy-agreements h4{font-size:.875rem;color:var(--primary-dark);margin-bottom:16px;text-transform:uppercase;letter-spacing:.05em}:root .checkbox-label{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;cursor:pointer;touch-action:manipulation;min-height:44px;padding:4px 0}:root .checkbox-label input[type=checkbox]{margin-top:6px;flex-shrink:0;width:18px;height:18px;accent-color:var(--primary);cursor:pointer;min-width:44px}:root .checkbox-label span{font-size:.875rem;color:var(--text-secondary);line-height:1.6;flex:1}:root .review-section{display:flex;flex-direction:column;gap:24px}:root .review-group{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:20px}:root .review-group h4{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-dark);margin-bottom:14px;font-weight:700}:root .review-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-light);font-size:.875rem}:root .review-row:last-child{border-bottom:none}:root .review-row span{color:var(--text-tertiary)}:root .review-row strong{color:var(--text-primary)}:root .enrollment-success{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:48px;max-width:560px;text-align:center;box-shadow:var(--shadow-xl);color:var(--text-primary)}:root .success-icon{font-size:3rem;margin-bottom:16px;color:var(--success)}:root .enrollment-success h2{font-family:var(--font-display);font-size:1.75rem;color:var(--text-primary);margin-bottom:12px}:root .enrollment-success p{color:var(--text-primary);margin-bottom:12px;font-size:.95rem}:root .success-ref{font-family:monospace;background:rgba(var(--gray-200),.15);padding:8px 16px;border-radius:var(--radius-sm);font-size:1.05rem;letter-spacing:.05em;margin-bottom:16px!important;display:inline-block;color:var(--text-primary)}:root .success-note{font-size:.85rem!important;opacity:.85;margin-bottom:28px!important;color:var(--text-secondary)}@media (max-width: 1024px){:root .enrollment-container{gap:24px}:root .enrollment-sidebar{top:100px}}@media (max-width: 900px){:root .enrollment-container{grid-template-columns:1fr}:root .enrollment-sidebar{position:static;margin-bottom:24px}:root .enrollment-steps{margin-bottom:0}:root .form-row,:root .form-row-3{grid-template-columns:1fr 1fr}}@media (max-width: 768px){:root .enrollment-sidebar{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}:root .enrollment-steps{margin-bottom:0;min-width:unset}:root .form-row,:root .form-row-3{grid-template-columns:1fr}:root .enrollment-card-header{flex-direction:column;gap:12px;padding:20px 24px}:root .enrollment-card-header h2{font-size:1.1rem}:root .enrollment-form{padding:20px}:root .enrollment-actions{flex-direction:column;padding:16px 20px;gap:10px}:root .enrollment-actions .btn{width:100%;justify-content:center}}@media (max-width: 600px){:root .enrollment-sidebar{grid-template-columns:1fr}:root .enroll-step{padding:14px 16px;font-size:.8rem}:root .enrollment-success{padding:32px 20px;margin:20px}:root .enrollment-success h2{font-size:1.4rem}:root .enrollment-success p{font-size:.85rem}:root .privacy-agreements{padding:16px;margin-top:12px}:root .privacy-agreements h4{font-size:.8rem;margin-bottom:12px}:root .checkbox-label span{font-size:.8rem}}:root .schedules-section{background:var(--bg-secondary);transition:background-color var(--transition)}:root .schedules-filters{padding:24px;margin-bottom:20px;background:var(--bg-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}:root .filter-row{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}:root .filter-row .form-group{margin-bottom:0;flex:1;min-width:160px}:root .schedules-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:.875rem;color:var(--text-secondary);flex-wrap:wrap;gap:8px}:root .no-results{padding:48px;text-align:center;color:var(--gray-400);font-size:.95rem;background:var(--white)}@media (max-width: 1024px){:root .schedules-filters{padding:20px;margin-bottom:16px}:root .filter-row{gap:12px}:root .filter-row .form-group{min-width:140px}}@media (max-width: 768px){:root .schedules-section{padding:56px 0}:root .schedules-filters{padding:16px;margin-bottom:12px;background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}:root .filter-row{flex-direction:column;gap:12px}:root .filter-row>*{width:100%!important;min-width:unset}:root .schedules-meta{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:12px}:root .table-wrapper{border-radius:var(--radius-md)}:root table{font-size:.85rem}:root th,:root td{padding:10px 12px;font-size:.8rem}}@media (max-width: 600px){:root .schedules-section{padding:40px 0}:root .schedules-filters{padding:12px;margin-bottom:12px}:root .filter-row>*{font-size:.9rem}:root .no-results{padding:32px 16px;font-size:.9rem}:root table{font-size:.75rem}:root th,:root td{padding:8px 10px}:root th{font-size:.7rem}}@media (max-width: 480px){:root .schedules-filters{padding:12px}:root .table-wrapper{border-radius:var(--radius-sm)}:root th,:root td{padding:6px 8px;font-size:.7rem}}:root .lms-section{background:var(--bg-secondary);transition:background-color var(--transition)}:root .lms-grid{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start}:root .lms-section-title{font-family:var(--font-display);font-size:1.15rem;color:var(--primary-dark);margin-bottom:16px}:root .courses-list{display:flex;flex-direction:column;gap:16px}:root .course-card{display:flex;cursor:pointer;border-left:4px solid transparent;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition);min-height:100px;touch-action:manipulation;min-width:0}:root .course-card:hover{border-left-color:var(--primary);box-shadow:var(--shadow-md)}:root .lms-widget{background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;width:100%}:root .course-card:focus-within{border-left-color:var(--primary);box-shadow:var(--shadow-md)}:root .course-card-accent{width:6px;flex-shrink:0;border-radius:0}:root .course-card-body{flex:1;padding:20px 24px}:root .course-card-top{display:flex;align-items:center;gap:8px;margin-bottom:8px}:root .course-card h4{font-family:var(--font-display);font-size:1.05rem;color:var(--primary-dark);margin-bottom:4px}:root .course-instructor{font-size:.85rem;color:var(--text-tertiary);margin-bottom:0}:root .course-card-footer{display:flex;justify-content:space-between;font-size:.78rem;color:var(--text-tertiary);margin-top:6px}:root .progress-bar-wrap{height:6px;background:var(--border-color);border-radius:3px;overflow:hidden}:root .progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:3px;transition:width .6s ease}:root .lms-sidebar{position:sticky;top:120px}:root .lms-widget{overflow:hidden}:root .lms-widget-header{padding:14px 18px;font-weight:700;font-size:.85rem;color:var(--primary-dark);background:var(--bg-tertiary);border-bottom:1px solid var(--border-light)}:root .lms-widget-body{padding:8px 0}:root .activity-item{display:flex;align-items:center;gap:12px;padding:10px 16px;transition:background var(--transition);min-height:44px;touch-action:manipulation;background:var(--bg-secondary)}:root .activity-item:focus-within{background:var(--bg-tertiary)}:root .activity-item:active,:root .activity-item:hover{background:var(--bg-tertiary)}:root .activity-icon{font-size:1.25rem;flex-shrink:0}:root .activity-info{flex:1;min-width:0}:root .activity-title{font-size:.82rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:root .activity-meta{display:flex;gap:8px;align-items:center;margin-top:3px}:root .quick-link-btn{display:flex;align-items:center;gap:10px;width:100%;padding:12px 18px;background:none;border:none;font-size:.875rem;color:var(--text-secondary);font-weight:500;transition:background var(--transition),color var(--transition);text-align:left;cursor:pointer;min-height:44px;touch-action:manipulation}:root .quick-link-btn:focus{outline:2px solid var(--primary);outline-offset:-2px}:root .quick-link-btn:active,:root .quick-link-btn:hover{background:var(--bg-tertiary);color:var(--primary)}:root .course-detail-grid{display:grid;grid-template-columns:1fr 300px;gap:32px;align-items:start}:root .module-item{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius-md);border:1.5px solid var(--border-color);margin-bottom:10px;transition:border-color var(--transition),background var(--transition);min-height:48px;touch-action:manipulation}:root .module-item:focus-within{border-color:var(--primary);background:#00308705}:root .module-item.done{border-color:#28a7454d;background:#28a74508}:root .module-check{width:32px;height:32px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0}:root .module-item.done .module-check{background:var(--success);color:var(--white)}:root .module-info{flex:1}:root .module-title{font-weight:600;font-size:.9rem;color:var(--text-primary)}:root .module-status{font-size:.75rem;color:var(--text-tertiary);margin-top:2px}:root .module-item.done .module-status{color:var(--success)}:root .resource-item{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--border-light)}:root .resource-item:last-child{border-bottom:none}@media (max-width: 1200px){:root .lms-grid{gap:24px}:root .lms-sidebar{top:100px}}@media (max-width: 1000px){:root .lms-grid{grid-template-columns:1fr}:root .lms-sidebar{position:static}:root .course-detail-grid{grid-template-columns:1fr}:root .lms-section-title{font-size:1.1rem}:root .course-card-body{padding:18px 20px}:root .course-card h4{font-size:1rem}}@media (max-width: 768px){:root .lms-grid{grid-template-columns:1fr;gap:20px}:root .courses-list{gap:12px}:root .course-card{flex-direction:column}:root .course-card-accent{width:4px;height:4px;margin-bottom:8px}:root .course-card-body{padding:16px}:root .course-card h4{font-size:.95rem}:root .course-instructor{font-size:.8rem}:root .lms-widget{margin-bottom:16px}:root .lms-widget-header{padding:12px 16px;font-size:.8rem}:root .activity-item{padding:8px 12px;gap:10px}:root .quick-link-btn{padding:10px 14px;font-size:.8rem}:root .module-item{padding:12px 14px;margin-bottom:8px}:root .module-check{width:28px;height:28px}:root .module-title{font-size:.85rem}}@media (max-width: 600px){:root .lms-section-title{font-size:1rem;margin-bottom:12px}:root .course-card{flex-direction:row}:root .course-card-accent{width:4px;height:auto}:root .course-card-body{padding:12px 16px}:root .course-card h4{font-size:.9rem}:root .course-card-top{flex-wrap:wrap}:root .activity-title{font-size:.75rem}:root .module-item{padding:10px 12px;gap:10px}:root .module-check{width:24px;height:24px;font-size:.7rem}}:root .login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding:40px 16px;background:var(--bg-secondary);transition:background-color var(--transition)}:root .login-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary) 50%,var(--primary-light) 100%);opacity:.06;pointer-events:none}:root .login-card{background:var(--bg-secondary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:440px;overflow:hidden;position:relative}:root .login-header{background:linear-gradient(135deg,var(--primary-dark),var(--primary));padding:36px 32px 28px;text-align:center;color:var(--white)}:root .login-logo{width:64px;height:64px;object-fit:contain;margin:0 auto 14px;filter:brightness(0) invert(1)}:root .login-header h1{font-family:var(--font-display);font-size:1.5rem;margin-bottom:6px}:root .login-header p{font-size:.875rem;opacity:.8}:root .role-tabs{display:flex;border-bottom:1px solid var(--border-light);background:var(--bg-tertiary)}:root .role-tab{flex:1;padding:14px 8px;background:none;border:none;border-bottom:3px solid transparent;font-size:.82rem;font-weight:600;color:var(--text-tertiary);transition:all var(--transition);cursor:pointer;min-height:44px;touch-action:manipulation}:root .role-tab:focus{outline:2px solid var(--primary);outline-offset:-2px}:root .role-tab:active,:root .role-tab:hover{color:var(--primary);background:var(--bg-secondary)}:root .role-tab.active{color:var(--primary);background:var(--bg-secondary);border-bottom-color:var(--primary)}:root .login-form{padding:28px 32px}:root .password-wrap{position:relative}:root .password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1rem;cursor:pointer;padding:8px;opacity:.6;transition:opacity var(--transition);min-width:44px;min-height:44px;touch-action:manipulation;display:flex;align-items:center;justify-content:center}:root .password-toggle:focus{outline:2px solid var(--primary);outline-offset:2px}:root .password-toggle:active,:root .password-toggle:hover{opacity:1}:root .login-btn{width:100%;justify-content:center;padding:14px;font-size:1rem;margin-top:8px;gap:10px;min-height:48px}:root .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:var(--white);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}:root .login-footer{padding:20px 32px 28px;text-align:center;border-top:1px solid var(--border-light)}:root .login-footer p{font-size:.875rem;color:var(--text-secondary);margin-bottom:12px}:root .login-footer a{color:var(--primary);font-weight:600}:root .login-dpa{font-size:.75rem;color:var(--text-tertiary);background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:8px 12px;display:inline-block}@media (max-width: 768px){:root .login-page{padding:32px 16px}:root .login-card{max-width:100%;width:100%}:root .login-header{padding:28px 24px 22px}:root .login-logo{width:56px;height:56px;margin-bottom:12px}:root .login-header h1{font-size:1.3rem}:root .login-form{padding:24px}:root .login-footer{padding:16px 24px 20px}}@media (max-width: 600px){:root .login-page{padding:24px 12px}:root .login-header{padding:24px 20px 18px}:root .login-logo{width:48px;height:48px;margin-bottom:10px}:root .login-header h1{font-size:1.2rem;margin-bottom:4px}:root .login-header p{font-size:.8rem}:root .role-tab{padding:10px 6px;font-size:.75rem}:root .login-form{padding:20px}:root .login-btn{padding:12px;font-size:.95rem}:root .login-footer{padding:14px 20px 18px}:root .login-footer p{font-size:.8rem;margin-bottom:10px}:root .login-dpa{font-size:.7rem;padding:6px 10px}}@media (max-width: 480px){:root .login-page{min-height:auto}:root .form-label{font-size:.75rem}:root .form-control{padding:9px 10px;font-size:.9rem}}
