.navbar{background-color:#fff;box-shadow:0 2px 8px #0000001a;position:fixed;top:0;left:0;right:0;z-index:1000;height:70px}.navbar-container{max-width:1400px;margin:0 auto;padding:0 40px;height:100%;display:flex;justify-content:space-between;align-items:center}.navbar-logo{display:flex;align-items:center;gap:12px;font-weight:600;font-size:18px;color:var(--text-dark)}.logo-icon{width:40px;height:40px;background-color:var(--primary-green);color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.logo-text{max-width:280px}.nav-menu{display:flex;list-style:none;align-items:center;gap:32px}.nav-item{position:relative}.nav-link{color:var(--text-dark);font-size:15px;font-weight:500;transition:color .3s ease;padding:8px 0}.nav-link:hover{color:var(--primary-green)}.nav-link.active{color:var(--primary-green);position:relative}.nav-link.active:after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:2px;background-color:var(--primary-green)}@media (max-width: 1024px){.navbar-container{padding:0 20px}.nav-menu{gap:20px}.logo-text{font-size:16px;max-width:200px}}@media (max-width: 768px){.navbar{height:auto;min-height:70px}.navbar-container{flex-direction:column;padding:15px 20px;gap:15px}.nav-menu{flex-wrap:wrap;justify-content:center;gap:15px}.nav-link{font-size:14px}}.hero{background:linear-gradient(135deg,#22c55e,#16a34a);padding:120px 20px 100px;text-align:center;color:#fff;margin-top:70px}.hero-content{max-width:900px;margin:0 auto}.hero-title{font-size:3.5rem;font-weight:700;margin-bottom:24px;line-height:1.2}.hero-subtitle{font-size:1.25rem;margin-bottom:40px;line-height:1.6;opacity:.95}.hero-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}@media (max-width: 768px){.hero{padding:80px 20px 60px}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.hero-buttons{flex-direction:column;align-items:center}.hero-buttons .btn{width:100%;max-width:300px}}@media (max-width: 480px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}}.home{flex:1}.about-section{padding:80px 20px;background-color:#fff}.section-title{font-size:2.5rem;text-align:center;margin-bottom:20px;color:var(--text-dark)}.section-text{font-size:1.1rem;text-align:center;color:var(--text-gray);max-width:800px;margin:0 auto 60px;line-height:1.8}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;max-width:1200px;margin:0 auto}.feature-card{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 12px #00000014;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001f}.feature-icon{font-size:3rem;margin-bottom:20px}.feature-card h3{font-size:1.3rem;margin-bottom:12px;color:var(--text-dark)}.feature-card p{color:var(--text-gray);line-height:1.6}.cta-section{background:linear-gradient(135deg,#22c55e,#16a34a);padding:80px 20px;text-align:center;color:#fff}.cta-title{font-size:2.5rem;margin-bottom:20px}.cta-text{font-size:1.2rem;margin-bottom:40px;opacity:.95}.btn-large{padding:16px 48px;font-size:18px}@media (max-width: 768px){.about-section{padding:60px 20px}.section-title{font-size:2rem}.section-text{font-size:1rem}.features-grid{grid-template-columns:1fr;gap:20px}.cta-section{padding:60px 20px}.cta-title{font-size:2rem}.cta-text{font-size:1rem}}.courses-page{padding-top:70px;min-height:100vh;background-color:var(--light-gray)}.page-header{background:linear-gradient(135deg,#22c55e,#16a34a);padding:80px 20px;text-align:center;color:#fff}.page-subtitle{font-size:1.2rem;margin-top:12px;opacity:.95}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:30px;padding:60px 20px}.course-card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 12px #00000014;transition:transform .3s ease,box-shadow .3s ease;position:relative}.course-card:hover{transform:translateY(-5px);box-shadow:0 8px 24px #0000001f}.course-badge{display:inline-block;background-color:var(--primary-green);color:#fff;padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:600;margin-bottom:16px}.course-title{font-size:1.5rem;margin-bottom:12px;color:var(--text-dark)}.course-description{color:var(--text-gray);margin-bottom:20px;line-height:1.6}.course-info{display:flex;gap:20px;margin-bottom:24px;padding-top:16px;border-top:1px solid #e5e7eb}.course-duration{color:var(--text-gray);font-size:.95rem}.course-btn{width:100%}@media (max-width: 768px){.page-header{padding:60px 20px}.courses-grid{grid-template-columns:1fr;padding:40px 20px}}.about-page{padding-top:70px;min-height:100vh}.about-content{padding:60px 20px;max-width:1000px}.about-intro,.about-vision,.about-values{margin-bottom:60px}.about-content h2{font-size:2rem;margin-bottom:20px;color:var(--text-dark)}.about-content p{font-size:1.1rem;line-height:1.8;color:var(--text-gray)}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-top:30px}.value-item{padding:24px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014}.value-item h3{font-size:1.3rem;margin-bottom:12px;color:var(--primary-green)}.value-item p{font-size:1rem;line-height:1.6}.about-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;margin-top:40px}.stat-card{background:linear-gradient(135deg,#22c55e,#16a34a);padding:40px;border-radius:12px;text-align:center;color:#fff}.stat-number{font-size:3rem;font-weight:700;margin-bottom:8px}.stat-label{font-size:1.1rem;opacity:.95}@media (max-width: 768px){.about-content{padding:40px 20px}.about-content h2{font-size:1.5rem}.about-content p{font-size:1rem}.values-grid{grid-template-columns:1fr}.about-stats{grid-template-columns:repeat(2,1fr);gap:20px}.stat-number{font-size:2rem}.stat-label{font-size:1rem}}.contact-page{padding-top:70px;min-height:100vh}.contact-content{padding:60px 20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1200px;margin:0 auto}.contact-info h2{font-size:2rem;margin-bottom:16px;color:var(--text-dark)}.contact-info>p{color:var(--text-gray);margin-bottom:40px;line-height:1.6}.info-items{display:flex;flex-direction:column;gap:30px}.info-item{display:flex;gap:20px;align-items:flex-start}.info-icon{font-size:2rem;flex-shrink:0}.info-item h3{font-size:1.1rem;margin-bottom:4px;color:var(--text-dark)}.info-item p{color:var(--text-gray);line-height:1.6}.contact-form-container{background:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 12px #00000014}.contact-form{display:flex;flex-direction:column;gap:24px}.form-group label{font-weight:600;color:var(--text-dark)}.form-group input,.form-group textarea{padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;font-family:inherit;transition:border-color .3s ease}.form-group textarea{resize:vertical}@media (max-width: 768px){.contact-content{padding:40px 20px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-form-container{padding:30px 20px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:90px 20px 20px;background:#fff}.login-container{width:100%;max-width:480px}.login-card{background:#fff;border-radius:16px;padding:48px;box-shadow:0 8px 32px #00000026}.login-header{text-align:center;margin-bottom:40px}.login-header .logo-icon{width:60px;height:60px;background-color:var(--primary-green);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;margin:0 auto 20px}.login-header h1{font-size:2rem;margin-bottom:8px;color:var(--text-dark)}.login-header p{color:var(--text-gray);font-size:1rem}.login-form{display:flex;flex-direction:column;gap:24px}.login-footer{margin-top:32px;padding-top:32px;border-top:1px solid #e5e7eb;text-align:center}.login-footer p{color:var(--text-gray);margin-bottom:16px}.login-footer .btn-secondary{color:var(--primary-green);border-color:var(--primary-green)}.login-footer .btn-secondary:hover{background-color:var(--primary-green);color:#fff}@media (max-width: 768px){.login-card{padding:32px 24px}.login-header h1{font-size:1.5rem}}.applicant-dashboard{min-height:100vh;background:linear-gradient(135deg,#f0f9ff,#e0f2fe,#f8fafc)}.applicant-header{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;padding:32px 0;box-shadow:0 4px 12px #0000001a;position:relative;overflow:hidden}.applicant-header:before{content:"";position:absolute;top:-50%;right:-10%;width:300px;height:300px;background:#ffffff1a;border-radius:50%}.applicant-header-content{max-width:1200px;margin:0 auto;padding:0 20px;position:relative;z-index:1}.welcome-section{display:flex;justify-content:space-between;align-items:center;gap:20px}.welcome-greeting{display:flex;align-items:center;gap:20px}.applicant-profile-photo{position:relative;flex-shrink:0}.profile-image{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #00000026;transition:all .3s ease}.profile-image:hover{transform:scale(1.05);border-color:#fff9;box-shadow:0 6px 16px #0003}.profile-placeholder{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#ffffff4d,#fff3);border:3px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff;box-shadow:0 4px 12px #00000026}.welcome-text{flex:1}.welcome-greeting h1{font-size:2rem;margin-bottom:8px;font-weight:700;line-height:1.2;color:#fff}.welcome-greeting p{font-size:1.1rem;opacity:.95;font-weight:400;color:#ffffffe6;margin:0}.btn-logout{background-color:#fff3;color:#fff;border:2px solid rgba(255,255,255,.5);padding:12px 28px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-logout:hover{background-color:#fff;color:var(--primary-green);border-color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.applicant-dashboard-content{padding:40px 20px}.welcome-message{background:#fff;border-radius:16px;padding:28px 32px;margin-bottom:32px;box-shadow:0 2px 8px #00000014;border-left:4px solid #22c55e}.welcome-content h2{font-size:1.5rem;color:var(--text-dark);margin-bottom:8px;font-weight:700}.welcome-content p{font-size:1rem;color:var(--text-gray);margin:0}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:32px}.dashboard-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 8px #00000014;transition:all .3s ease;border:1px solid #f1f5f9;position:relative;overflow:hidden}.dashboard-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#22c55e,#16a34a);opacity:0;transition:opacity .3s ease}.dashboard-card:hover:before{opacity:1}.dashboard-card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px;box-shadow:0 2px 8px #0000001a}.dashboard-card h3{font-size:.9rem;color:#64748b;margin-bottom:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.dashboard-card-value{font-size:1.5rem;font-weight:700;color:var(--text-dark);margin-bottom:8px;line-height:1.3;word-break:break-word;overflow-wrap:break-word}.dashboard-card-label{font-size:.8rem;color:#94a3b8;font-weight:500}.section-header{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f1f5f9}.section-header h2{font-size:1.5rem;color:var(--text-dark);margin-bottom:6px;font-weight:700}.section-subtitle{font-size:.95rem;color:#64748b;margin:0;font-weight:400}.info-label{font-weight:600;color:#475569;font-size:.9rem}.action-btn{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 20px;background:linear-gradient(135deg,#f8fafc,#fff);border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:600;color:var(--text-dark)}.action-btn:hover{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:#22c55e;transform:translateY(-3px);box-shadow:0 6px 20px #22c55e4d}.status-reviewed{background-color:#dbeafe;color:#1e40af}.status-accepted{background-color:#d1fae5;color:#065f46}.status-rejected{background-color:#fee2e2;color:#991b1b}.level-badge{display:inline-block;padding:8px 16px;border-radius:8px;font-size:.9rem;font-weight:600;background:linear-gradient(135deg,#e9d5ff,#ddd6fe);color:#7c3aed;border:1px solid #c4b5fd}.payment-section{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #86efac}.payment-card{display:flex;justify-content:space-between;align-items:center;padding:28px;background:#fff;border-radius:12px;border:2px solid #86efac;box-shadow:0 4px 12px #22c55e26}.payment-info h3{font-size:1.25rem;color:var(--text-dark);margin-bottom:10px;font-weight:700}.payment-level{font-size:1rem;color:var(--text-dark);margin-bottom:10px;font-weight:500}.payment-level strong{color:#16a34a;font-weight:700}.payment-description{font-size:.95rem;color:#64748b;margin-bottom:18px}.payment-amount{display:flex;align-items:center;gap:12px}.amount-label{font-size:.95rem;color:#64748b;font-weight:600}.amount-value{font-size:1.5rem;font-weight:700;color:#16a34a}.btn-payment{display:flex;align-items:center;gap:10px;padding:16px 32px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:10px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #22c55e4d}.btn-payment:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 20px #22c55e66}.btn-payment:disabled{opacity:.7;cursor:not-allowed}.payment-icon{font-size:1.2rem}.payment-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.payment-modal-content{background:#fff;border-radius:16px;width:100%;max-width:500px;box-shadow:0 8px 32px #0003;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.payment-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.payment-modal-header h2{font-size:1.5rem;color:var(--text-dark);margin:0;font-weight:700}.payment-modal-body{padding:24px}.payment-summary{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;padding:24px;margin-bottom:24px;border:1px solid #e2e8f0}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e2e8f0}.summary-row:last-child{border-bottom:none}.summary-row span{font-size:.95rem;color:#64748b;font-weight:500}.summary-row strong{font-size:1rem;color:var(--text-dark);font-weight:700}.amount-text{font-size:1.5rem!important;color:#16a34a!important;font-weight:700}.payment-form{margin-top:24px}.payment-method-select{width:100%;padding:14px 16px;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;background:#fff;color:var(--text-dark);cursor:pointer;transition:all .3s ease}.payment-method-select:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px #22c55e1a}.payment-actions{display:flex;gap:12px;margin-top:24px}.btn-cancel{flex:1;padding:14px 24px;background:#fff;color:var(--text-dark);border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-cancel:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.btn-pay{flex:2;padding:14px 24px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #22c55e4d}.btn-pay:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #22c55e66}.btn-pay:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.modal-close{background:none;border:none;font-size:2rem;color:var(--text-gray);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .3s ease}.modal-close:hover{background-color:#f1f5f9;color:var(--text-dark)}.payment-history-section{margin-top:24px;padding-top:24px;border-top:2px solid #e2e8f0}.payment-loading{text-align:center;padding:20px;color:#64748b;font-style:italic}.payment-history-item{background:#f9fafb;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .3s ease}.payment-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.no-payment-history{text-align:center;padding:24px;background:#f9fafb;border-radius:8px;border:2px dashed #e2e8f0}.lms-access-section{margin-top:24px;padding-top:24px;border-top:2px solid #86efac}.lms-access-section h4{font-size:1.1rem;color:var(--text-dark);margin-bottom:16px;font-weight:600}.lms-access-card{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #86efac;border-radius:12px;padding:24px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.lms-access-info{flex:1;min-width:250px}.lms-access-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#22c55e;color:#fff;border-radius:20px;font-size:.9rem;font-weight:600;margin-bottom:16px}.lms-icon{font-size:1rem}.lms-credentials-display,.lms-credential-item{margin-bottom:12px}.lms-credential-item label{display:block;font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:8px}.lms-credential-value{display:flex;align-items:center;gap:12px;background:#fff;padding:12px 16px;border-radius:8px;border:2px solid #22c55e}.lms-credential-value strong{font-size:1.15rem;color:#16a34a;font-weight:700;letter-spacing:1px;flex:1}.btn-copy-small{padding:6px 12px;background:#22c55e;color:#fff;border:none;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center}.btn-copy-small:hover{background:#16a34a;transform:scale(1.05)}.lms-access-note{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;padding:12px;margin-top:12px}.lms-access-note p{margin:0;font-size:.9rem;color:#92400e;line-height:1.5}.btn-lms-access-main{padding:16px 32px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:700;text-decoration:none;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #22c55e4d;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.btn-lms-access-main:hover{transform:translateY(-2px);box-shadow:0 6px 16px #22c55e66}@media (max-width: 768px){.welcome-section{flex-direction:column;align-items:flex-start;gap:16px}.welcome-greeting{flex-direction:column;align-items:flex-start;gap:16px;width:100%}.profile-image,.profile-placeholder{width:70px;height:70px}.welcome-greeting h1{font-size:1.5rem}.welcome-greeting p{font-size:1rem}.btn-logout{width:100%}.dashboard-grid{grid-template-columns:1fr}.payment-card{flex-direction:column;gap:20px;align-items:flex-start}.btn-payment{width:100%;justify-content:center}.payment-modal-content{margin:20px;max-width:calc(100% - 40px)}.payment-actions{flex-direction:column}.btn-cancel,.btn-pay{width:100%}.dashboard-section{padding:24px 20px}.actions-grid{grid-template-columns:1fr}.payment-history-header{flex-direction:column;align-items:flex-start;gap:8px}.payment-history-info{width:100%}.payment-detail-row{flex-direction:column;align-items:flex-start;gap:4px}.payment-detail-value{margin-left:0;text-align:left}.lms-access-card{flex-direction:column;align-items:stretch}.btn-lms-access-main{width:100%}}.lms-modal{max-width:600px}.lms-success-content{text-align:center;padding:20px 0}.success-icon{font-size:4rem;margin-bottom:20px}.lms-success-content h3{font-size:1.5rem;color:var(--text-dark);margin-bottom:12px;font-weight:700}.lms-success-content>p{font-size:1rem;color:var(--text-gray);margin-bottom:24px;line-height:1.6}.lms-credentials{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:12px;padding:24px;margin:24px 0;border:2px solid #86efac}.credential-item{margin-bottom:16px}.credential-item label{display:block;font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:8px}.credential-value{display:flex;align-items:center;justify-content:center;gap:12px;background:#fff;padding:16px;border-radius:8px;border:2px solid #22c55e}.credential-value strong{font-size:1.25rem;color:#16a34a;font-weight:700;letter-spacing:1px}.btn-copy{padding:8px 16px;background:#22c55e;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:4px}.btn-copy:hover{background:#16a34a;transform:translateY(-1px)}.credential-note{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;padding:12px;margin-top:16px}.credential-note p{margin:0;font-size:.9rem;color:#92400e;line-height:1.5}.lms-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}.btn-lms-access{padding:16px 32px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:700;text-decoration:none;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #22c55e4d;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-lms-access:hover{transform:translateY(-2px);box-shadow:0 6px 16px #22c55e66}.btn-lms-later{padding:12px 24px;background:#fff;color:var(--text-dark);border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-lms-later:hover{background:#f9fafb;border-color:#cbd5e1}@media (max-width: 768px){.lms-modal{margin:20px;max-width:calc(100% - 40px)}.credential-value{flex-direction:column;gap:8px}.lms-actions{gap:10px}}.apply-page{padding-top:70px;min-height:100vh;background-color:var(--light-gray)}.apply-content{padding:60px 20px}.apply-card{max-width:900px;margin:0 auto;background:#fff;border-radius:16px;padding:48px;box-shadow:0 4px 16px #00000014}.apply-form{display:flex;flex-direction:column;gap:40px}.form-section{display:flex;flex-direction:column;gap:24px}.form-section h2{font-size:1.5rem;color:var(--text-dark);margin-bottom:8px;padding-bottom:12px;border-bottom:2px solid var(--primary-green)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-group select{padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;font-family:inherit;transition:border-color .3s ease;background-color:#fff;cursor:pointer}.form-group select:focus{outline:none;border-color:var(--primary-green)}.progress-indicator{display:flex;justify-content:space-between;align-items:center;margin-bottom:48px;padding:20px 0;position:relative}.progress-step-container{display:flex;align-items:center;flex:1}.progress-step{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;z-index:2}.step-number{width:40px;height:40px;border-radius:50%;background-color:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;transition:all .3s ease;border:2px solid #e5e7eb}.progress-step.active .step-number{background-color:var(--primary-green);color:#fff;border-color:var(--primary-green)}.progress-step.current .step-number{background-color:var(--primary-green);color:#fff;border-color:var(--primary-green);box-shadow:0 0 0 4px #22c55e33}.step-title{font-size:12px;color:#6b7280;text-align:center;font-weight:500}.progress-step.active .step-title{color:var(--primary-green)}.progress-step.current .step-title{color:var(--primary-green);font-weight:600}.progress-line{flex:1;height:2px;background-color:#e5e7eb;margin:0 10px;transition:all .3s ease}.progress-line.completed{background-color:var(--primary-green)}.form-group label{font-weight:600;color:var(--text-dark);font-size:14px}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=date],.form-group textarea{padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;font-family:inherit;transition:border-color .3s ease;width:100%}.form-group input[type=file]{padding:8px;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;transition:border-color .3s ease}.form-group input[type=file]:hover{border-color:var(--primary-green)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-green)}.form-help{font-size:12px;color:var(--text-gray);margin-top:4px}.helper-text{font-size:12px;color:var(--text-gray);margin-top:-4px}.photo-preview{margin-top:16px;text-align:center}.photo-preview img{max-width:200px;max-height:200px;border-radius:8px;border:2px solid #d1d5db;object-fit:cover}.photo-preview p{margin-top:8px;color:var(--text-gray);font-size:14px}.review-section{margin-bottom:32px;padding:24px;background-color:#f9fafb;border-radius:8px;border-left:4px solid var(--primary-green)}.review-section h3{color:var(--primary-green);margin-bottom:16px;font-size:1.2rem}.review-section p{margin-bottom:8px;color:var(--text-dark);line-height:1.6}.review-section p strong{color:var(--text-dark);margin-right:8px}.form-actions{display:flex;justify-content:space-between;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.form-actions .btn{flex:1;max-width:200px}.form-actions .btn-large{max-width:300px}.btn-secondary{background-color:#f3f4f6;color:var(--text-dark);border:1px solid #d1d5db}.btn-secondary:hover{background-color:#e5e7eb;transform:translateY(-2px)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}.page-header{text-align:center;padding:40px 20px;background-color:var(--primary-green);border-bottom:1px solid #e5e7eb}.page-title{font-size:2.5rem;margin-bottom:12px;color:#fff;font-weight:700}.page-subtitle{font-size:1.1rem;color:#fff;opacity:.95;font-weight:400}@media (max-width: 768px){.apply-card{padding:32px 24px}.form-row{grid-template-columns:1fr}.apply-content{padding:40px 20px}.progress-indicator{margin-bottom:32px;padding:16px 0}.step-number{width:32px;height:32px;font-size:14px}.step-title{font-size:10px}.progress-line{margin:0 5px}.form-actions{flex-direction:column}.form-actions .btn{max-width:100%;width:100%}.page-title{font-size:2rem}.page-subtitle{font-size:1rem}}.student-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:90px 20px 20px;background:#fff}.student-login-container{width:100%;max-width:480px}.student-login-card{background:#fff;border-radius:16px;padding:48px;box-shadow:0 8px 32px #00000026}.student-login-header{text-align:center;margin-bottom:40px}.student-login-header .student-logo-icon{width:60px;height:60px;background-color:var(--primary-green);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;margin:0 auto 20px}.student-login-header h1{font-size:2rem;margin-bottom:8px;color:var(--text-dark)}.student-login-header p{color:var(--text-gray);font-size:1rem}.student-login-form{display:flex;flex-direction:column;gap:24px}.form-footer{text-align:right;margin-top:-8px}.forgot-link{color:var(--primary-green);font-size:.9rem;text-decoration:none}.forgot-link:hover{text-decoration:underline}.student-login-footer{margin-top:32px;padding-top:32px;border-top:1px solid #e5e7eb;text-align:center}.student-login-footer p{color:var(--text-gray);margin-bottom:16px}.student-login-footer .btn-secondary{color:var(--primary-green);border-color:var(--primary-green)}.student-login-footer .btn-secondary:hover{background-color:var(--primary-green);color:#fff}@media (max-width: 768px){.student-login-card{padding:32px 24px}.student-login-header h1{font-size:1.5rem}}.student-dashboard{min-height:100vh;background-color:#f9fafb}.student-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:20px 0;box-shadow:0 1px 3px #0000001a}.student-header-content{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center}.student-header h1{margin:0;font-size:1.875rem;color:#1f2937}.student-header p{margin:4px 0 0;color:#6b7280;font-size:1rem}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover{background-color:#4b5563}.btn-logout{background-color:#dc2626;color:#fff;display:inline-flex;align-items:center;gap:6px}.btn-logout:hover{background-color:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 8px #dc26264d}.student-dashboard-content{max-width:1200px;margin:0 auto;padding:32px 24px}.dashboard-container{display:flex;flex-direction:column;gap:32px}.dashboard-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.dashboard-section h2{margin:0 0 24px;font-size:1.5rem;color:#1f2937}.dashboard-tabs{display:flex;gap:12px;margin-bottom:24px;border-bottom:2px solid #e5e7eb}.tab-btn{padding:12px 24px;border:none;background:transparent;color:#6b7280;font-size:1rem;font-weight:600;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s}.tab-btn:hover{color:#1f2937}.tab-btn.active{color:#22c55e;border-bottom-color:#22c55e}.info-card{background:#f9fafb;border-radius:8px;padding:24px;border:1px solid #e5e7eb}.info-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e5e7eb}.info-label{font-weight:600;color:#6b7280;font-size:.875rem}.info-value{color:#1f2937;font-size:1rem}.dashboard-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;text-align:center;transition:transform .2s,box-shadow .2s}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.dashboard-card-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 16px}.dashboard-card h3{margin:0 0 8px;font-size:1.125rem;color:#1f2937}.status-active{background-color:#d1fae5;color:#065f46}.status-overdue{background-color:#fee2e2;color:#991b1b}.status-open{background-color:#fef3c7;color:#92400e}background-color: #fee2e2; color: #991b1b; } .status-open{background-color:#fef3c7;color:#92400e}.status-upcoming{background-color:#e0e7ff;color:#4338ca}.status-inactive{background-color:#fee2e2;color:#991b1b}.status-suspended{background-color:#fed7aa;color:#92400e}.subjects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.subject-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:transform .2s,box-shadow .2s}.subject-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.subject-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.subject-header h3{margin:0;font-size:1.25rem;color:#1f2937}.subject-info p{margin:8px 0;color:#6b7280;font-size:.875rem}.subject-description{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb;color:#4b5563;font-size:.875rem}.instructor-details-section{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.instructor-section-title{margin-bottom:12px;color:#1f2937;font-size:.875rem}.instructor-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px;margin-bottom:12px}.instructor-card:last-child{margin-bottom:0}.instructor-name{margin-bottom:8px;color:#1f2937;font-size:.938rem}.instructor-info-details{display:flex;flex-direction:column;gap:6px}.instructor-detail-item{display:flex;align-items:center;gap:8px;margin:0;font-size:.813rem;color:#6b7280}.detail-icon{font-size:1rem;width:20px;text-align:center}.instructor-link{color:#3b82f6;text-decoration:none;transition:color .2s}.instructor-link:hover{color:#2563eb;text-decoration:underline}.subject-actions{display:flex;gap:12px;margin-top:16px}.btn-download,.btn-view{flex:1;padding:10px 16px;border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;text-decoration:none;text-align:center;transition:all .2s}.btn-download{background-color:#3b82f6;color:#fff}.btn-download:hover{background-color:#2563eb}.btn-view{background-color:#10b981;color:#fff}.btn-view:hover{background-color:#059669}.assignments-list{display:flex;flex-direction:column;gap:20px}.assignment-item,.assignment-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:transform .2s,box-shadow .2s}.assignment-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.assignment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.assignment-header h3,.assignment-header h4{margin:0 0 4px;font-size:1.25rem;color:#1f2937}.assignment-header h4{font-size:1.125rem}.assignment-subject{margin:0;color:#6b7280;font-size:.875rem}.assignment-description{margin:16px 0;padding:12px;background:#f9fafb;border-radius:8px;color:#4b5563}.assignment-instructions{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;border-radius:8px}.assignment-instructions strong{display:block;margin-bottom:8px;color:#92400e}.assignment-instructions p{margin:0;color:#78350f}.assignment-details{display:flex;gap:24px;margin-bottom:16px;flex-wrap:wrap}.assignment-details p{margin:0;color:#6b7280;font-size:.875rem}.assignment-due-date{font-weight:600}.assignment-submitted{color:#059669}.assignment-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:16px 0;padding:16px;background:#f9fafb;border-radius:8px}.assignment-detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase}.detail-value{font-size:.875rem;color:#1f2937;font-weight:600}.grade-value{color:#22c55e;font-size:1rem}.assignment-file{margin:16px 0}.btn-download-file{padding:10px 16px;background-color:#8b5cf6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.btn-download-file:hover{background-color:#7c3aed}.assignment-actions{margin-top:16px}.btn-view-assignment,.btn-submit-assignment{width:100%;padding:12px 24px;background-color:#22c55e;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-view-assignment{background-color:#3b82f6}.btn-view-assignment:hover{background-color:#2563eb}.btn-submit-assignment:hover:not(:disabled){background-color:#16a34a}.btn-submit-assignment:disabled{background-color:#9ca3af;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header h2{margin:0;font-size:1.5rem;color:#1f2937}.modal-close{background:transparent;border:none;font-size:2rem;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#1f2937}.assignment-modal-info{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #e5e7eb}.assignment-modal-info p{margin:8px 0;color:#4b5563}.submission-status-info{margin-top:16px;padding:16px;background:#dbeafe;border-left:4px solid #3b82f6;border-radius:8px}.submission-status-info p{margin:8px 0;color:#1e40af}.submission-status-info .grade-value{color:#22c55e;font-weight:700;font-size:1.1rem}.existing-submission-view{margin:24px 0;padding:20px;background:#f0fdf4;border:2px solid #22c55e;border-radius:8px}.existing-submission-view h3{margin:0 0 12px;color:#16a34a;font-size:1.125rem}.submitted-text-display{background:#fff;padding:16px;border-radius:8px;border:1px solid #d1fae5}.submitted-text-display p{margin:0;color:#1f2937;white-space:pre-wrap;word-wrap:break-word;line-height:1.6}.assignment-modal-description,.assignment-modal-instructions{margin-top:16px;padding:12px;background:#f9fafb;border-radius:8px}.assignment-modal-instructions{background:#fef3c7;border-left:4px solid #f59e0b}.assignment-modal-description strong,.assignment-modal-instructions strong{display:block;margin-bottom:8px;color:#1f2937}.submission-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#1f2937;font-size:.875rem}.label-note{font-weight:400;color:#059669;font-size:.813rem}.submission-note{padding:8px 12px;background:#f0fdf4;border-left:3px solid #22c55e;border-radius:4px;margin-bottom:8px;font-size:.813rem;color:#16a34a}.form-group textarea{padding:12px;border:1px solid #e5e7eb;border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical}.form-group textarea:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a}.form-group textarea.has-existing-text{background:#f0fdf4;border-color:#22c55e;border-width:2px}.form-group input[type=file]{padding:8px;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem}.file-name,.existing-file{margin-top:8px;padding:8px;background:#f9fafb;border-radius:8px;font-size:.875rem;color:#6b7280}.existing-file{background:#dbeafe;color:#1e40af}.existing-file-info{margin-top:12px;padding:12px;background:#eff6ff;border-radius:8px;border:1px solid #bfdbfe}.existing-file-info .existing-file{margin:0 0 8px;padding:0;background:transparent;color:#1e40af;font-weight:600}.btn-download-file-small{padding:8px 16px;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.btn-download-file-small:hover{background-color:#2563eb}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.btn-cancel{padding:12px 24px;background:#f3f4f6;color:#1f2937;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-cancel:hover{background:#e5e7eb}.btn-submit{padding:12px 24px;background:#22c55e;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-submit:hover:not(:disabled){background:#16a34a}.btn-submit:disabled{background:#9ca3af;cursor:not-allowed}.no-data-message{text-align:center;padding:60px 20px}.no-data-message p{font-size:1.25rem;color:#1f2937;margin:8px 0}.no-data-message .sub-text{font-size:1rem;color:#6b7280}@media (max-width: 768px){.student-header-content{flex-direction:column;align-items:flex-start;gap:16px}.dashboard-tabs{flex-wrap:wrap}.tab-btn{font-size:.875rem;padding:8px 16px}.dashboard-grid,.subjects-grid,.assignment-details-grid{grid-template-columns:1fr}.modal-content{margin:10px;max-width:calc(100% - 20px)}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.pdf-modal-overlay{background:#000c}.pdf-viewer-modal{max-width:95vw;max-height:95vh;width:1200px;display:flex;flex-direction:column}.pdf-viewer-body{flex:1;padding:0;overflow:hidden;display:flex;flex-direction:column}.pdf-iframe{width:100%;height:100%;min-height:600px;border:none;flex:1}.pdf-modal-actions{display:flex;align-items:center;gap:12px}.btn-download-pdf{padding:8px 16px;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;text-decoration:none;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex;align-items:center;gap:6px}.btn-download-pdf:hover{background-color:#2563eb}.no-pdf-message{margin-top:16px;padding:12px;background:#f9fafb;border-radius:8px;text-align:center;color:#6b7280;font-size:.875rem}.no-pdf-message p{margin:0}.btn-messages{background-color:#06b6d4;color:#fff}.btn-messages:hover{background-color:#0891b2}.messages-modal{max-width:900px;max-height:95vh}.unread-badge{display:inline-block;background-color:#ef4444;color:#fff;border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:600}.unread-count-badge{display:inline-block;background-color:#ef4444;color:#fff;border-radius:12px;padding:4px 10px;font-size:.875rem;font-weight:600;margin-left:8px}.messages-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb;flex-wrap:wrap;gap:16px}.messages-mode-toggle{display:flex;gap:8px}.messages-mode-toggle .mode-btn{position:relative}.unread-indicator{display:inline-block;background-color:#ef4444;color:#fff;border-radius:10px;padding:2px 6px;font-size:.75rem;font-weight:600;margin-left:6px}.btn-compose-message{padding:10px 20px;background-color:#06b6d4;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.938rem;font-weight:600;transition:all .2s}.btn-compose-message:hover{background-color:#0891b2;transform:translateY(-2px);box-shadow:0 4px 12px #06b6d44d}.messages-list-container{max-height:60vh;overflow-y:auto;padding-right:8px}.messages-list{display:flex;flex-direction:column;gap:12px}.message-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s}.message-item:hover{border-color:#06b6d4;box-shadow:0 2px 8px #06b6d41a}.message-item.unread{border-left:4px solid #06b6d4;background:#f0fdfa}.message-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.message-sender-info{display:flex;align-items:center;gap:8px}.unread-dot{display:inline-block;width:8px;height:8px;background-color:#06b6d4;border-radius:50%}.message-date{font-size:.875rem;color:#6b7280}.message-subject-preview{font-size:.938rem;color:#1f2937;margin-bottom:4px}.message-course-preview{font-size:.875rem;color:#6b7280;margin-bottom:8px}.message-preview{font-size:.938rem;color:#4b5563;line-height:1.5}.message-view{display:flex;flex-direction:column;gap:20px}.message-view-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.message-view-actions{display:flex;gap:8px;align-items:center}.btn-back{padding:8px 16px;background-color:#6b7280;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.btn-back:hover{background-color:#4b5563}.btn-reply{padding:8px 16px;background-color:#06b6d4;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex;align-items:center;gap:6px}.btn-reply:hover{background-color:#0891b2;transform:translateY(-1px);box-shadow:0 2px 8px #06b6d44d}.message-details{background:#f9fafb;padding:16px;border-radius:8px;border:1px solid #e5e7eb}.message-detail-row{display:flex;margin-bottom:12px;gap:12px}.message-detail-row:last-child{margin-bottom:0}.detail-label{font-weight:600;color:#1f2937;min-width:80px}.detail-value{color:#4b5563;flex:1}.message-status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;margin-top:8px}.message-status-badge.unread{background-color:#dbeafe;color:#1e40af}.message-content-view{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;min-height:200px}.message-content-view p{margin:0;color:#1f2937;line-height:1.6;white-space:pre-wrap}.no-messages-message{text-align:center;padding:60px 20px;color:#6b7280}.no-messages-icon{font-size:4rem;margin-bottom:16px;opacity:.5}.no-messages-message p{margin:8px 0;font-size:1.125rem}.no-messages-message p strong{font-size:1.25rem;color:#1f2937}.no-messages-message .sub-text{font-size:1rem;color:#6b7280;margin-top:12px}.compose-message-modal{max-width:600px;max-height:95vh}.compose-message-form{display:flex;flex-direction:column;gap:20px}@media (max-width: 768px){.messages-header{flex-direction:column;align-items:stretch}.messages-mode-toggle{width:100%;justify-content:center}.btn-compose-message{width:100%}.message-item-header{flex-direction:column;align-items:flex-start;gap:8px}.message-view-header{flex-direction:column;gap:12px}.message-view-actions{width:100%;flex-direction:column}.btn-back,.btn-reply,.btn-delete{width:100%}}.announcements-list-student{display:flex;flex-direction:column;gap:16px}.announcement-card-student{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s}.announcement-card-student.priority-urgent{border-left:4px solid #ef4444;background:#fef2f2}.announcement-card-student.priority-high{border-left:4px solid #f59e0b;background:#fffbeb}.announcement-card-student.priority-normal{border-left:4px solid #3b82f6}.announcement-card-student.priority-low{border-left:4px solid #10b981}.announcement-card-student:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.announcement-header-student{margin-bottom:12px}.announcement-title-section-student h3{margin:0 0 8px;color:#1f2937;font-size:1.25rem}.announcement-badges-student{display:flex;gap:8px;flex-wrap:wrap}.priority-badge-student,.subject-badge-student{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.priority-badge-student.priority-low{background-color:#d1fae5;color:#065f46}.priority-badge-student.priority-normal{background-color:#dbeafe;color:#1e40af}.priority-badge-student.priority-high{background-color:#fef3c7;color:#92400e}.priority-badge-student.priority-urgent{background-color:#fee2e2;color:#991b1b}.subject-badge-student{background-color:#e0e7ff;color:#3730a3}.announcement-content-student{margin:16px 0;color:#4b5563;line-height:1.6;white-space:pre-wrap}.announcement-footer-student{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #f3f4f6;font-size:.875rem;color:#6b7280;flex-wrap:wrap;gap:8px}.announcement-meta-student,.announcement-date-student{margin:0}@media (max-width: 768px){.announcement-footer-student{flex-direction:column;align-items:flex-start}}.quizzes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.quiz-card-student{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s;display:flex;flex-direction:column;gap:12px}.quiz-card-student:hover{border-color:#8b5cf6;box-shadow:0 4px 12px #8b5cf61a;transform:translateY(-2px)}.quiz-card-student.quiz-disabled{opacity:.7;background:#f9fafb}.quiz-card-student.quiz-disabled:hover{transform:none;border-color:#e5e7eb}.quiz-card-header-student{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.quiz-card-header-student>div{flex:1}.quiz-card-header-student h3{margin:0 0 8px;color:#1f2937;font-size:1.25rem}.quiz-status-badge{padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.quiz-status-badge.available{background-color:#d1fae5;color:#065f46}.quiz-status-badge.completed{background-color:#e0e7ff;color:#3730a3}.quiz-subject-badge{padding:4px 10px;background-color:#e0e7ff;color:#3730a3;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.quiz-description-preview{margin:12px 0;color:#6b7280;font-size:.938rem;line-height:1.5}.quiz-details-student{display:flex;flex-wrap:wrap;gap:12px;font-size:.875rem;color:#4b5563}.quiz-detail-item{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#f3f4f6;border-radius:6px}.quiz-detail-item .detail-icon{font-size:1rem}.quiz-detail-item.attempt-info{background:#fef3c7;color:#92400e;font-weight:600}.attempt-info{color:#f59e0b;font-weight:600}.quiz-dates-section{padding:12px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;display:flex;flex-direction:column;gap:6px}.quiz-date-item{font-size:.875rem;color:#1e3a8a}.quiz-date-item strong{margin-right:6px}.section-header-with-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.section-subtitle{margin:4px 0 0;color:#6b7280;font-size:.938rem}.quiz-count-badge{padding:8px 16px;background:#8b5cf6;color:#fff;border-radius:20px;font-size:.875rem;font-weight:600}.btn-take-quiz{width:100%;padding:10px;background-color:#8b5cf6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.938rem;font-weight:600;transition:all .2s;margin-top:12px}.btn-take-quiz:hover:not(:disabled){background-color:#7c3aed;transform:translateY(-2px)}.btn-take-quiz:disabled{background-color:#9ca3af;cursor:not-allowed}.quiz-actions-student{display:flex;flex-direction:column;gap:8px}.btn-view-results{width:100%;padding:10px;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.938rem;font-weight:600;transition:all .2s}.btn-view-results:hover{background-color:#2563eb;transform:translateY(-2px)}.quiz-taking-modal{max-width:900px;max-height:95vh}.quiz-timer{padding:8px 16px;background-color:#fef3c7;color:#92400e;border-radius:6px;font-weight:600;font-size:1rem}.quiz-instructions-box{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:16px;margin-bottom:24px}.quiz-instructions-box strong{display:block;margin-bottom:8px;color:#1e40af}.quiz-instructions-box p{margin:0;color:#1e3a8a;line-height:1.6;white-space:pre-wrap}.quiz-taking-form{display:flex;flex-direction:column;gap:32px}.question-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.question-header-student{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.question-number-student{font-weight:600;color:#8b5cf6;font-size:1.125rem}.question-points-student{font-weight:600;color:#1f2937}.question-text-student{margin-bottom:16px}.question-text-student p{margin:0;color:#1f2937;font-size:1rem;line-height:1.6}.question-options-student{display:flex;flex-direction:column;gap:12px}.option-label-student{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border:2px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.option-label-student:hover{border-color:#8b5cf6;background:#f5f3ff}.option-label-student input[type=radio]{width:20px;height:20px;cursor:pointer}.option-label-student input[type=radio]:checked+span{font-weight:600;color:#8b5cf6}.question-short-answer{margin-top:12px}.short-answer-input{width:100%;padding:12px;border:2px solid #e5e7eb;border-radius:6px;font-size:1rem;transition:all .2s}.short-answer-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.quiz-submit-actions{display:flex;justify-content:center;padding-top:24px;border-top:2px solid #e5e7eb}.btn-submit-quiz{padding:12px 32px;background-color:#10b981;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-submit-quiz:hover:not(:disabled){background-color:#059669;transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-submit-quiz:disabled{background-color:#9ca3af;cursor:not-allowed}@media (max-width: 768px){.quizzes-grid{grid-template-columns:1fr}.quiz-taking-modal{max-width:95vw}.question-item{padding:16px}.quiz-actions-student{flex-direction:column}}.quiz-results-modal{max-width:900px;max-height:95vh}.quiz-results-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:24px;margin-bottom:24px}.results-score-card{text-align:center;margin-bottom:20px}.score-display{display:flex;justify-content:center;align-items:baseline;gap:16px;margin-bottom:12px}.score-value{font-size:2.5rem;font-weight:700;color:#1f2937}.score-percentage{font-size:1.5rem;font-weight:600;color:#6b7280}.pass-status{padding:8px 20px;border-radius:20px;font-size:1rem;font-weight:600;display:inline-block;margin-bottom:8px}.pass-status.passed{background-color:#d1fae5;color:#065f46}.pass-status.failed{background-color:#fee2e2;color:#991b1b}.passing-score-info{font-size:.875rem;color:#6b7280;margin-top:8px}.results-meta{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;padding-top:16px;border-top:1px solid #e5e7eb}.result-meta-item{font-size:.938rem;color:#4b5563}.result-meta-item strong{color:#1f2937;margin-right:6px}.quiz-results-questions{margin-top:24px}.quiz-results-questions h3{margin-bottom:20px;color:#1f2937;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.result-question-item{background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:16px}.result-question-item.correct{border-color:#10b981;background:#f0fdf4}.result-question-item.incorrect{border-color:#ef4444;background:#fef2f2}.result-question-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.result-question-number{font-weight:600;color:#8b5cf6;font-size:1.125rem}.result-status-badge{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600}.result-status-badge.correct{background-color:#d1fae5;color:#065f46}.result-status-badge.incorrect{background-color:#fee2e2;color:#991b1b}.result-question-points{margin-left:auto;font-weight:600;color:#1f2937}.result-question-text{margin-bottom:16px}.result-question-text p{margin:0;color:#1f2937;font-size:1rem;line-height:1.6}.result-options{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.result-option{padding:12px;background:#fff;border:2px solid #e5e7eb;border-radius:6px;display:flex;align-items:center;gap:8px;position:relative}.result-option.selected{border-color:#3b82f6;background:#eff6ff}.result-option.correct-option{border-color:#10b981;background:#f0fdf4}.result-option.selected.correct-option{border-color:#10b981;background:#d1fae5}.option-indicator{padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600;background:#3b82f6;color:#fff}.option-indicator.correct{background:#10b981}.result-answer-comparison{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.answer-row{display:flex;align-items:center;gap:12px;padding:10px;background:#fff;border-radius:6px}.answer-row strong{min-width:120px;color:#1f2937}.correct-answer{color:#065f46;font-weight:600}.incorrect-answer{color:#991b1b;font-weight:600}.result-explanation{margin-top:12px;padding:12px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;color:#1e3a8a;font-size:.938rem}.quiz-results-actions{display:flex;justify-content:center;padding-top:24px;border-top:2px solid #e5e7eb;margin-top:24px}.btn-close-results{padding:12px 32px;background-color:#6b7280;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-close-results:hover{background-color:#4b5563;transform:translateY(-2px);box-shadow:0 4px 12px #6b72804d}.stream-viewer-modal{max-width:95vw;max-height:95vh;width:1400px;display:flex;flex-direction:column}.stream-viewer-body{flex:1;overflow:hidden;padding:0}.stream-viewer-container{display:flex;height:100%;gap:20px}.stream-video-section-viewer{flex:1;background:#000;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:500px}.stream-video-player{width:100%;height:100%;max-height:80vh;object-fit:contain}.stream-video-placeholder-viewer{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#1f2937;color:#fff}.stream-video-placeholder-viewer .video-placeholder-content{text-align:center;padding:40px}.stream-video-placeholder-viewer .video-icon{font-size:4rem;margin-bottom:20px}.stream-video-placeholder-viewer h3{margin:0 0 10px;color:#fff}.stream-video-placeholder-viewer p{color:#d1d5db;margin:10px 0}.stream-status-indicator{display:flex;align-items:center;gap:8px;margin-top:20px;color:#10b981;font-weight:600}.stream-sidebar-viewer{width:350px;display:flex;flex-direction:column;gap:20px;overflow-y:auto}.stream-participants-section,.stream-chat-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.participants-list{max-height:200px;overflow-y:auto}.participant-item{padding:8px 0;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;align-items:center}.participant-item:last-child{border-bottom:none}.participant-name{font-size:.875rem;color:#374151}.participant-you{font-size:.75rem;color:#8b5cf6;font-weight:600}.no-participants{text-align:center;color:#9ca3af;font-size:.875rem;padding:20px 0}.chat-messages-container{max-height:400px;overflow-y:auto;margin-bottom:12px;padding:8px;background:#f9fafb;border-radius:6px}.chat-message{margin-bottom:12px;padding:8px 12px;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.chat-message.own-message{background:#e0e7ff;border-color:#8b5cf6}.chat-message-time{font-size:.75rem;color:#6b7280}.no-chat-messages{text-align:center;color:#9ca3af;font-size:.875rem;padding:20px 0}.chat-input{flex:1;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}.btn-send-chat{padding:8px 16px;background-color:#8b5cf6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.btn-send-chat:hover:not(:disabled){background-color:#7c3aed}.btn-send-chat:disabled{background-color:#9ca3af;cursor:not-allowed}.stream-scheduled{opacity:.8}.stream-live{border-color:#ef4444;box-shadow:0 0 0 2px #ef444433}@media (max-width: 1024px){.stream-viewer-container{flex-direction:column}.stream-sidebar-viewer{width:100%;max-height:300px}.stream-video-section-viewer{min-height:400px}}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:90px 20px 20px;background:#fff}.admin-login-container{width:100%;max-width:480px}.admin-login-card{background:#fff;border-radius:16px;padding:48px;box-shadow:0 4px 20px #0000001a;border:1px solid #e5e7eb}.admin-login-header{text-align:center;margin-bottom:40px}.admin-login-header .admin-logo-icon{width:60px;height:60px;background-color:var(--primary-green);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;margin:0 auto 20px}.admin-login-header h1{font-size:2rem;margin-bottom:8px;color:var(--text-dark)}.admin-login-header p{color:var(--text-gray);font-size:1rem}.admin-login-form{display:flex;flex-direction:column;gap:24px}.admin-login-form .form-group{display:flex;flex-direction:column;gap:8px}.admin-login-form .form-group label{font-weight:600;color:var(--text-dark);font-size:.9rem}.admin-login-form .form-group input{padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.admin-login-form .form-group input:focus{outline:none;border-color:var(--primary-green)}.admin-login-form .form-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.admin-login-form .btn-large{width:100%;padding:14px;font-size:1rem;margin-top:8px}.admin-login-footer{margin-top:32px;padding-top:32px;border-top:1px solid #e5e7eb;text-align:center}.admin-login-footer p{color:var(--text-gray);margin-bottom:16px}.admin-login-footer .btn-secondary{color:var(--primary-green);border-color:var(--primary-green)}.admin-login-footer .btn-secondary:hover{background-color:var(--primary-green);color:#fff}@media (max-width: 768px){.admin-login-card{padding:32px 24px}.admin-login-header h1{font-size:1.5rem}}.admin-dashboard{min-height:100vh;background-color:var(--light-gray)}.admin-header{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;padding:24px 0;box-shadow:0 2px 8px #0000001a}.admin-header-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.admin-header h1{font-size:2rem;margin-bottom:4px}.admin-header p{font-size:1rem;opacity:.9}.admin-header .btn-secondary{background-color:transparent;color:#fff;border:2px solid white;padding:10px 24px}.admin-header .btn-secondary:hover{background-color:#fff;color:var(--primary-green)}.admin-dashboard-content{padding:40px 20px}.dashboard-container{max-width:1200px;margin:0 auto}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:40px}.dashboard-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.dashboard-card.clickable-card{cursor:pointer}.dashboard-card.clickable-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026;border:2px solid var(--primary-green)}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.dashboard-card-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;margin-bottom:16px}.dashboard-card h3{font-size:1.1rem;color:var(--text-dark);margin-bottom:8px}.dashboard-card-value{font-size:2.5rem;font-weight:700;color:var(--text-dark);margin-bottom:4px}.dashboard-card-label{font-size:.9rem;color:var(--text-gray)}.dashboard-section{background:#fff;border-radius:12px;padding:32px;box-shadow:0 2px 8px #0000001a}.dashboard-section h2{font-size:1.5rem;color:var(--text-dark);margin-bottom:24px}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.action-btn{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;background-color:var(--light-gray);border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:600;color:var(--text-dark)}.action-btn:hover{background-color:var(--primary-green);color:#fff;border-color:var(--primary-green);transform:translateY(-2px)}.action-icon{font-size:2rem}.modal-content{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.lms-modal{max-width:1000px}.loading{text-align:center;padding:40px;color:var(--text-gray);font-size:1rem}.lms-applicants-list{display:flex;flex-direction:column;gap:20px}.lms-info-header{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;padding:12px 16px;margin-bottom:16px}.lms-info-header p{margin:0;color:#16a34a;font-size:.9rem;font-weight:500}.lms-applicants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.lms-applicant-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:16px;transition:all .3s ease}.lms-applicant-card:hover{border-color:#22c55e;box-shadow:0 4px 12px #22c55e26;transform:translateY(-2px)}.lms-applicant-info h4{font-size:1.1rem;color:var(--text-dark);margin:0 0 8px;font-weight:600}.lms-applicant-email{font-size:.9rem;color:var(--text-gray);margin:0 0 12px}.lms-reg-number{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f0fdf4;border-radius:6px;margin-top:8px}.reg-label{font-size:.85rem;font-weight:600;color:#16a34a;text-transform:uppercase}.reg-value{font-size:.95rem;font-weight:700;color:#16a34a;font-family:Courier New,monospace;letter-spacing:.5px}.btn-lms-link{display:inline-block;padding:12px 24px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;text-align:center;transition:all .3s ease;border:none;cursor:pointer}.btn-lms-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px #22c55e66}.lms-link-na{padding:12px 24px;background:#f3f4f6;color:#9ca3af;border-radius:8px;text-align:center;font-size:.9rem;font-weight:500}.no-lms-applicants{text-align:center;padding:60px 20px;color:var(--text-gray)}.no-lms-applicants p{margin:8px 0;font-size:1rem}.no-lms-applicants .sub-text{font-size:.9rem;color:#94a3b8}@media (max-width: 768px){.admin-header-content{flex-direction:column;gap:16px;text-align:center}.dashboard-grid,.actions-grid{grid-template-columns:1fr}.modal-content{margin:10px;max-width:calc(100% - 20px)}.lms-applicants-grid{grid-template-columns:1fr}}.admin-sessions{min-height:100vh;background-color:var(--light-gray)}.admin-sessions-content{padding:40px 20px}.sessions-container{max-width:1200px;margin:0 auto}.sessions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.sessions-header h2{font-size:1.5rem;color:var(--text-dark)}.sessions-table-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.sessions-table{width:100%;border-collapse:collapse}.sessions-table thead{background-color:var(--light-gray)}.sessions-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-dark);border-bottom:2px solid #e5e7eb}.sessions-table td{padding:16px;border-bottom:1px solid #e5e7eb;color:var(--text-dark)}.sessions-table tbody tr:hover{background-color:#f9fafb}.sessions-table .no-data{text-align:center;padding:40px;color:var(--text-gray)}.status-completed{background-color:#dbeafe;color:#2563eb}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.modal-form input,.modal-form select{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .3s ease;font-family:inherit}.modal-form input:focus,.modal-form select:focus{outline:none;border-color:var(--primary-green)}@media (max-width: 768px){.sessions-header{flex-direction:column;gap:16px;align-items:stretch}.sessions-header button{width:100%}.sessions-table-container{padding:16px}.sessions-table{font-size:.875rem}.sessions-table th,.sessions-table td{padding:8px}.action-buttons{flex-direction:column}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%}.modal-content{margin:20px;max-width:calc(100% - 40px)}}.admin-questions{min-height:100vh;background-color:var(--light-gray)}.admin-questions-content{padding:40px 20px}.questions-container{max-width:1400px;margin:0 auto}.questions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.questions-header h2{font-size:1.5rem;color:var(--text-dark)}.questions-table-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.questions-table{width:100%;border-collapse:collapse}.questions-table thead{background-color:var(--light-gray)}.questions-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-dark);border-bottom:2px solid #e5e7eb}.questions-table td{padding:16px;border-bottom:1px solid #e5e7eb;color:var(--text-dark)}.questions-table tbody tr:hover{background-color:#f9fafb}.questions-table .no-data{text-align:center;padding:40px;color:var(--text-gray)}.question-text{max-width:300px;word-wrap:break-word}.type-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.875rem;font-weight:600;background-color:#e0e7ff;color:#4338ca;text-transform:capitalize}.difficulty-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.875rem;font-weight:600;text-transform:capitalize}.difficulty-easy{background-color:#dcfce7;color:#16a34a}.difficulty-medium{background-color:#fef3c7;color:#d97706}.difficulty-hard{background-color:#fee2e2;color:#dc2626}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow-y:auto}.modal-question-large{max-width:1200px}.modal-header{padding:32px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#7c3aed,#5b21b6);color:#fff;border-radius:12px 12px 0 0;position:relative}.modal-header h2{font-size:1.75rem;margin:0 0 8px;color:#fff}.modal-subtitle{color:#ffffffe6;font-size:.95rem;margin:0}.modal-close{position:absolute;top:24px;right:24px;background:#fff3;border:none;font-size:1.5rem;color:#fff;cursor:pointer;padding:8px 12px;border-radius:8px;transition:background-color .3s ease}.modal-close:hover{background:#ffffff4d}.modal-form{padding:32px}.modal-form label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-dark);font-size:.95rem}.modal-form textarea{resize:vertical;min-height:100px}.modal-actions{display:flex;justify-content:flex-end;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.questions-header{flex-direction:column;gap:16px;align-items:stretch}.questions-header button{width:100%}.questions-table-container{padding:16px}.questions-table{font-size:.875rem}.questions-table th,.questions-table td{padding:8px}.action-buttons{flex-direction:column}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%}.modal-content{margin:20px;max-width:calc(100% - 40px)}.modal-question-large{max-width:calc(100% - 40px)}.form-row{grid-template-columns:1fr}.option-row{flex-wrap:wrap}.btn-add-option{width:100%;margin-top:8px}}.admin-question-form{min-height:100vh;background-color:var(--light-gray)}.admin-question-form .admin-header{background:linear-gradient(135deg,#22c55e,#16a34a);padding:24px 0;color:#fff;box-shadow:0 2px 8px #0000001a}.admin-question-form .admin-header-content{max-width:1400px;margin:0 auto;padding:0 40px;display:flex;justify-content:space-between;align-items:center}.admin-question-form .admin-header h1{font-size:2rem;margin:0 0 8px;color:#fff}.admin-question-form .admin-header p{margin:0;opacity:.9;font-size:1rem}.question-form-container{max-width:1200px;margin:40px auto;padding:0 20px}.question-form{background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 8px #0000001a}.form-section{margin-bottom:32px;padding:24px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.section-icon{font-size:1.5rem}.section-header h3{font-size:1.25rem;color:var(--text-dark);margin:0}.section-description{color:var(--text-gray);font-size:.9rem;margin-bottom:20px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-dark);font-size:.95rem}.field-hint{font-size:.85rem;color:var(--text-gray);margin-top:6px;margin-bottom:0}.question-form input,.question-form textarea,.question-form select{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .3s ease;font-family:inherit}.question-form textarea{resize:vertical;min-height:100px}.question-form input:focus,.question-form textarea:focus,.question-form select:focus{outline:none;border-color:var(--primary-green)}.option-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.option-label{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--primary-green);color:#fff;border-radius:50%;font-weight:700;flex-shrink:0}.option-input{flex:1;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:600;color:var(--text-dark)}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.btn-add-option{padding:10px 16px;background:var(--light-gray);border:2px dashed #cbd5e1;border-radius:8px;cursor:pointer;font-weight:600;color:var(--text-dark);transition:all .3s ease}.btn-add-option:hover:not(:disabled){background:#e5e7eb;border-color:var(--primary-green)}.btn-add-option:disabled{opacity:.5;cursor:not-allowed}.true-false-options{display:flex;flex-direction:column;gap:16px}.radio-option{display:flex;align-items:flex-start;gap:12px;padding:16px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .3s ease}.radio-option:hover{border-color:var(--primary-green);background:#f0fdf4}.radio-option input[type=radio]{margin-top:4px;width:20px;height:20px;cursor:pointer}.radio-option input[type=radio]:checked+.radio-label .radio-check,.radio-option input[type=radio]:checked+.radio-label .radio-x{display:flex}.radio-label{display:flex;align-items:flex-start;gap:12px;flex:1}.radio-check{width:32px;height:32px;border-radius:50%;background:var(--primary-green);color:#fff;display:none;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.radio-x{width:32px;height:32px;border-radius:50%;background:#ef4444;color:#fff;display:none;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.radio-label div strong{display:block;margin-bottom:4px;color:var(--text-dark)}.radio-label div p{margin:0;color:var(--text-gray);font-size:.9rem}.fill-blank-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.answer-number{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#3b82f6;color:#fff;border-radius:50%;font-weight:700;flex-shrink:0}.fill-blank-input{flex:1;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem}.btn-remove-answer{padding:8px 12px;background:#fee2e2;border:none;border-radius:6px;cursor:pointer;font-size:1.2rem;transition:background-color .3s ease}.btn-remove-answer:hover{background:#fecaca}.btn-add-answer{padding:12px 24px;background:var(--light-gray);border:2px dashed #cbd5e1;border-radius:8px;cursor:pointer;font-weight:600;color:var(--text-dark);transition:all .3s ease;width:100%;margin-top:8px}.btn-add-answer:hover{background:#e5e7eb;border-color:var(--primary-green)}.file-upload-area{margin-bottom:20px}.file-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;border:3px dashed #cbd5e1;border-radius:12px;background:#fff;cursor:pointer;transition:all .3s ease;text-align:center}.file-upload-label:hover{border-color:var(--primary-green);background:#f0fdf4}.upload-icon{font-size:3rem;margin-bottom:16px}.file-upload-label strong{display:block;margin-bottom:8px;color:var(--text-dark);font-size:1.1rem}.file-upload-label p{margin:0;color:var(--text-gray);font-size:.9rem}.tip-box{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fef3c7;border-left:4px solid #f59e0b;border-radius:6px;margin-top:16px}.tip-icon{font-size:1.2rem;flex-shrink:0}.tip-box span:last-child{color:#92400e;font-size:.9rem;line-height:1.5}.form-actions{display:flex;justify-content:flex-end;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-cancel{padding:12px 24px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-weight:600;color:var(--text-dark);transition:all .3s ease}.btn-cancel:hover{background:var(--light-gray)}.btn-create{padding:12px 32px;background:linear-gradient(135deg,#7c3aed,#5b21b6);border:none;border-radius:8px;cursor:pointer;font-weight:600;color:#fff;transition:transform .3s ease}.btn-create:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #7c3aed66}.btn-create:disabled{opacity:.6;cursor:not-allowed}.btn{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s ease}.btn-secondary{background:#fff;color:var(--primary-green);border:2px solid white}.btn-secondary:hover{background:#ffffffe6}@media (max-width: 768px){.question-form-container{padding:0 16px}.question-form{padding:24px}.form-row{grid-template-columns:1fr}.option-row{flex-wrap:wrap}.btn-add-option{width:100%;margin-top:8px}.form-actions{flex-direction:column}.form-actions button{width:100%}}.admin-categories{min-height:100vh;background-color:var(--light-gray)}.admin-categories-content{padding:40px 20px}.categories-container{max-width:1200px;margin:0 auto}.categories-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.categories-header h2{font-size:1.5rem;color:var(--text-dark)}.categories-table-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.categories-table{width:100%;border-collapse:collapse}.categories-table thead{background-color:var(--light-gray)}.categories-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-dark);border-bottom:2px solid #e5e7eb}.categories-table td{padding:16px;border-bottom:1px solid #e5e7eb;color:var(--text-dark)}.categories-table tbody tr:hover{background-color:#f9fafb}.categories-table .no-data{text-align:center;padding:40px;color:var(--text-gray)}.category-name{font-weight:600;color:var(--text-dark)}.category-description{max-width:400px;color:var(--text-gray);word-wrap:break-word}.status-active{background-color:#dcfce7;color:#16a34a}.status-inactive{background-color:#fef3c7;color:#d97706}.btn-edit{padding:6px 16px;background-color:var(--primary-green);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:background-color .3s ease}.btn-edit:hover{background-color:var(--dark-green)}.btn-delete{padding:6px 16px;background-color:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:background-color .3s ease}.btn-delete:hover{background-color:#dc2626}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:1.5rem;color:var(--text-dark);margin:0}.modal-close{background:none;border:none;font-size:2rem;color:var(--text-gray);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .3s ease}.modal-close:hover{background-color:var(--light-gray)}.modal-form{padding:24px}.modal-form .form-group{margin-bottom:20px}.modal-form label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-dark);font-size:.9rem}.modal-form input,.modal-form textarea,.modal-form select{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .3s ease;font-family:inherit}.modal-form textarea{resize:vertical;min-height:80px}.modal-form input:focus,.modal-form textarea:focus,.modal-form select:focus{outline:none;border-color:var(--primary-green)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.categories-header{flex-direction:column;gap:16px;align-items:stretch}.categories-header button{width:100%}.categories-table-container{padding:16px}.categories-table{font-size:.875rem}.categories-table th,.categories-table td{padding:8px}.action-buttons{flex-direction:column}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%}.modal-content{margin:20px;max-width:calc(100% - 40px)}}.admin-applications{min-height:100vh;background-color:var(--light-gray)}.admin-applications-content{padding:40px 20px;width:100%;overflow-x:visible}.applications-container{max-width:100%;margin:0 auto;padding:0 20px}.applications-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.applications-header h2{font-size:1.5rem;color:var(--text-dark)}.filter-controls{display:flex;gap:12px}.filter-select{padding:10px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:600;background:#fff;color:var(--text-dark);cursor:pointer;transition:border-color .3s ease}.filter-select:focus{outline:none;border-color:var(--primary-green)}.applications-table-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;overflow-x:visible;width:100%}.applications-table{width:100%;border-collapse:collapse;min-width:1400px}.applications-table thead{background-color:var(--light-gray)}.applications-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-dark);border-bottom:2px solid #e5e7eb}.applications-table td{padding:16px;border-bottom:1px solid #e5e7eb;color:var(--text-dark)}.applications-table tbody tr:hover{background-color:#f9fafb}.applications-table .no-data{text-align:center;padding:40px;color:var(--text-gray)}.applicant-name{font-weight:600;color:var(--text-dark)}.score-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.875rem;font-weight:600;background-color:#dbeafe;color:#2563eb}.level-select{padding:6px 12px;border:2px solid #e5e7eb;border-radius:6px;font-size:.875rem;background:#fff;color:var(--text-dark);cursor:pointer;transition:border-color .3s ease;min-width:180px}.level-select:focus{outline:none;border-color:var(--primary-green)}.level-select:disabled{opacity:.6;cursor:not-allowed;background-color:#f3f4f6}.payment-status-select{padding:6px 12px;border:2px solid #e5e7eb;border-radius:6px;font-size:.875rem;font-weight:600;background:#fff;color:var(--text-dark);cursor:pointer;transition:all .3s ease;min-width:120px}.payment-status-select:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px #22c55e1a}.payment-status-select:disabled{opacity:.6;cursor:not-allowed;background-color:#f3f4f6}.payment-status-select.payment-status-paid{border-color:#22c55e;background-color:#dcfce7;color:#16a34a}.payment-status-select.payment-status-paid:focus{border-color:#16a34a;box-shadow:0 0 0 3px #22c55e33}.payment-status-select.payment-status-pending{border-color:#f59e0b;background-color:#fef3c7;color:#d97706}.payment-status-select.payment-status-pending:focus{border-color:#d97706;box-shadow:0 0 0 3px #f59e0b33}.payment-status-select.payment-status-failed{border-color:#ef4444;background-color:#fee2e2;color:#dc2626}.payment-status-select.payment-status-failed:focus{border-color:#dc2626;box-shadow:0 0 0 3px #ef444433}.payment-status-na{color:#9ca3af;font-size:.875rem;font-style:italic}.payment-approval-buttons{display:flex;gap:10px;margin-top:10px}.payment-status-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.btn-record-payment{padding:8px 16px;background-color:#22c55e;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:6px}.btn-record-payment:hover:not(:disabled){background-color:#16a34a;transform:translateY(-1px);box-shadow:0 2px 8px #22c55e4d}.btn-record-payment:disabled{opacity:.6;cursor:not-allowed}.payment-form-modal{max-width:600px}.payment-form-info{background:#f9fafb;border-radius:8px;padding:16px;margin-bottom:24px;border:1px solid #e5e7eb}.payment-form-info p{margin:8px 0;font-size:.95rem;color:var(--text-dark)}.payment-record-form{display:flex;flex-direction:column;gap:20px}.payment-record-form .form-group{display:flex;flex-direction:column;gap:8px}.payment-record-form label{font-size:.9rem;font-weight:600;color:var(--text-dark)}.payment-record-form .form-input{padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;color:var(--text-dark);transition:border-color .3s ease;font-family:inherit}.payment-record-form .form-input:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px #22c55e1a}.payment-record-form textarea.form-input{resize:vertical;min-height:80px}.payment-record-form .modal-actions{margin-top:8px;padding-top:20px;border-top:1px solid #e5e7eb}.btn-primary{padding:12px 24px;background-color:var(--primary-green);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover:not(:disabled){background-color:var(--dark-green);transform:translateY(-1px);box-shadow:0 4px 12px #22c55e4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.875rem;font-weight:600;text-transform:capitalize}.status-pending{background-color:#fef3c7;color:#d97706}.status-reviewed{background-color:#dbeafe;color:#2563eb}.status-accepted{background-color:#dcfce7;color:#16a34a}.status-rejected{background-color:#fee2e2;color:#dc2626}.action-buttons{display:flex;gap:8px}.btn-view{padding:6px 16px;background-color:var(--primary-green);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:background-color .3s ease}.btn-view:hover{background-color:var(--dark-green)}.loading{text-align:center;padding:40px;color:var(--text-gray)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:12px 12px 0 0}.applicant-details{display:flex;flex-direction:column;gap:24px}.applicant-photo-section{display:flex;justify-content:center;align-items:center;padding:20px 0;border-bottom:2px solid #e5e7eb;margin-bottom:8px}.applicant-photo-container{position:relative;display:flex;justify-content:center;align-items:center}.applicant-photo{width:180px;height:180px;border-radius:12px;object-fit:cover;border:4px solid #e5e7eb;box-shadow:0 4px 12px #0000001a;transition:all .3s ease}.applicant-photo:hover{transform:scale(1.05);box-shadow:0 6px 16px #00000026;border-color:#22c55e}.detail-section{padding-bottom:24px;border-bottom:1px solid #e5e7eb}.detail-section:last-child{border-bottom:none}.detail-section h3{font-size:1.25rem;color:var(--text-dark);margin-bottom:16px;font-weight:600}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item.full-width{grid-column:1 / -1}.detail-item label{font-size:.875rem;font-weight:600;color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px}.detail-item span{font-size:1rem;color:var(--text-dark)}.score-large{font-size:1.5rem;font-weight:700;color:var(--primary-green)}.status-actions{display:flex;gap:12px;flex-wrap:wrap}.status-management{display:flex;flex-direction:column;gap:20px}.status-selector{display:flex;flex-direction:column;gap:8px}.status-selector label{font-size:.875rem;font-weight:600;color:var(--text-dark)}.status-select{padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;font-weight:500;background:#fff;color:var(--text-dark);cursor:pointer;transition:all .3s ease;min-width:200px}.status-select:hover{border-color:var(--primary-green)}.status-select:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px #22c55e1a}.current-status{display:flex;align-items:center;gap:12px;padding:12px;background-color:#f9fafb;border-radius:8px}.status-label{font-size:.875rem;font-weight:600;color:var(--text-gray)}.status-badge{padding:6px 12px;border-radius:6px;font-size:.875rem;font-weight:600;text-transform:capitalize}.status-badge.status-pending{background-color:#fef3c7;color:#92400e}.status-badge.status-reviewed{background-color:#dbeafe;color:#1e40af}.status-badge.status-accepted{background-color:#d1fae5;color:#065f46}.status-badge.status-rejected{background-color:#fee2e2;color:#991b1b}.btn-status{padding:10px 20px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:var(--text-dark);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-status:hover:not(:disabled){border-color:var(--primary-green);background-color:#f0fdf4;color:var(--primary-green)}.btn-status:disabled{opacity:.6;cursor:not-allowed}.btn-status.active{border-color:var(--primary-green);background-color:var(--primary-green);color:#fff}.btn-status.btn-accept:hover:not(:disabled){border-color:#16a34a;background-color:#dcfce7;color:#16a34a}.btn-status.btn-accept.active{border-color:#16a34a;background-color:#16a34a;color:#fff}.btn-status.btn-reject:hover:not(:disabled){border-color:#dc2626;background-color:#fee2e2;color:#dc2626}.btn-status.btn-reject.active{border-color:#dc2626;background-color:#dc2626;color:#fff}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding:24px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.applications-header{flex-direction:column;gap:16px;align-items:stretch}.filter-controls,.filter-select{width:100%}.applications-table-container{padding:16px;overflow-x:auto}.applications-table{font-size:.875rem;min-width:1200px}.applications-table th,.applications-table td{padding:8px}.action-buttons{flex-direction:column}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%}.status-management{gap:16px}.status-select{width:100%;min-width:unset}.current-status{flex-direction:column;align-items:flex-start;gap:8px}.modal-content{margin:20px;max-width:calc(100% - 40px)}.detail-grid{grid-template-columns:1fr}.status-actions{flex-direction:column}.status-actions button{width:100%}.applicant-photo{width:150px;height:150px}}.notification{position:fixed;top:20px;right:20px;min-width:300px;max-width:500px;padding:16px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;gap:12px;z-index:10000;animation:slideInRight .3s ease-out;font-size:.95rem}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.notification-success{background-color:#dcfce7;color:#16a34a;border:2px solid #22c55e}.notification-error{background-color:#fee2e2;color:#dc2626;border:2px solid #ef4444}.notification-icon{font-size:1.5rem;font-weight:700;flex-shrink:0}.notification-message{flex:1;font-weight:500}.notification-close{background:none;border:none;font-size:1.5rem;color:inherit;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s ease;flex-shrink:0}.notification-close:hover{background-color:#0000001a}.payment-history-section{margin-top:24px;padding-top:24px;border-top:2px solid #e5e7eb}.payment-history-section h4{font-size:1.1rem;color:var(--text-dark);margin-bottom:16px;font-weight:600}.payment-loading{text-align:center;padding:20px;color:var(--text-gray);font-style:italic}.payment-history-list{display:flex;flex-direction:column;gap:16px}.payment-history-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;transition:all .3s ease}.payment-history-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d}.payment-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.payment-history-info{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.payment-amount-large{font-size:1.25rem;font-weight:700;color:#16a34a}.payment-status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:capitalize}.payment-status-badge.payment-status-completed,.payment-status-badge.payment-status-paid{background-color:#dcfce7;color:#16a34a}.payment-status-badge.payment-status-pending{background-color:#fef3c7;color:#d97706}.payment-status-badge.payment-status-failed,.payment-status-badge.payment-status-cancelled{background-color:#fee2e2;color:#dc2626}.payment-history-date{font-size:.875rem;color:#64748b;font-weight:500}.payment-history-details{display:flex;flex-direction:column;gap:8px}.payment-detail-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.payment-detail-label{font-size:.875rem;font-weight:600;color:#64748b}.payment-detail-value{font-size:.875rem;color:var(--text-dark);font-weight:500;text-align:right;word-break:break-word;margin-left:12px}.payment-detail-row.full-width{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 0;border-top:1px solid #e2e8f0;margin-top:8px}.payment-detail-row.full-width .payment-detail-label{font-weight:700;color:var(--text-dark)}.payment-detail-row.full-width .payment-detail-value{margin-left:0;text-align:left;white-space:pre-wrap;word-break:break-word}.no-payment-history{text-align:center;padding:24px;background:#f9fafb;border-radius:8px;border:2px dashed #e5e7eb}.no-payment-history p{margin:8px 0;color:var(--text-gray);font-size:.9rem}.payment-note{font-size:.85rem!important;font-style:italic;color:#94a3b8!important}.registration-number-cell{display:flex;align-items:center;gap:8px;justify-content:center}.reg-number-value{font-family:Courier New,monospace;font-size:.9rem;font-weight:600;color:#16a34a;letter-spacing:.5px}.registration-number-na{color:#94a3b8;font-style:italic}.btn-copy-reg{padding:4px 8px;background:#22c55e;color:#fff;border:none;border-radius:4px;font-size:.75rem;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px}.btn-copy-reg:hover{background:#16a34a;transform:scale(1.1)}.registration-number-display{display:flex;align-items:center;gap:12px;margin-top:8px}.reg-number-value-large{font-family:Courier New,monospace;font-size:1.25rem;font-weight:700;color:#16a34a;letter-spacing:1px;padding:12px 16px;background:#f0fdf4;border:2px solid #86efac;border-radius:8px;flex:1}.btn-copy-reg-large{padding:12px 20px;background:#22c55e;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn-copy-reg-large:hover{background:#16a34a;transform:translateY(-2px);box-shadow:0 4px 8px #22c55e4d}@media (max-width: 768px){.notification{top:10px;right:10px;left:10px;max-width:calc(100% - 20px);min-width:auto}.payment-history-header{flex-direction:column;align-items:flex-start;gap:8px}.payment-history-info{width:100%}.payment-detail-row{flex-direction:column;align-items:flex-start;gap:4px}.payment-detail-value{margin-left:0;text-align:left}.registration-number-display{flex-direction:column;align-items:stretch}.btn-copy-reg-large{width:100%}}.lms-management{min-height:100vh;background-color:var(--light-gray)}.lms-content{padding:40px 20px}.lms-container{max-width:1400px;margin:0 auto}.lms-tabs{display:flex;flex-direction:row;gap:8px;margin-bottom:24px;border-bottom:2px solid #e5e7eb;flex-wrap:nowrap}.lms-tab{padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:600;color:var(--text-gray);cursor:pointer;transition:all .3s ease;white-space:nowrap;flex-shrink:0}.lms-tab:hover{color:var(--primary-green);background:#22c55e0d}.lms-tab.active{color:var(--primary-green);border-bottom-color:var(--primary-green);background:#22c55e0d}.lms-tab-content{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.lms-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.lms-section-header h2{font-size:1.5rem;color:var(--text-dark);margin:0}.section-subtitle{font-size:.9rem;color:var(--text-gray);margin:0}.subjects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.subject-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .3s ease}.subject-card:hover{border-color:var(--primary-green);box-shadow:0 4px 12px #22c55e26}.subject-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.subject-header h3{font-size:1.2rem;color:var(--text-dark);margin:0}.subject-info{margin-bottom:16px}.subject-info p{margin:8px 0;font-size:.9rem;color:var(--text-dark)}.enrolled-count{display:inline-block;margin-left:8px;padding:4px 10px;background:#dbeafe;color:#2563eb;border-radius:12px;font-size:.85rem;font-weight:600}.subject-description{color:var(--text-gray);font-style:italic}.subject-actions{display:flex;gap:8px}.btn-edit{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.875rem}.btn-edit:hover{background:#2563eb;transform:translateY(-2px)}.btn-enroll{padding:8px 16px;background:var(--primary-green);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-enroll:hover:not(:disabled){background:#16a34a;transform:translateY(-2px)}.btn-enroll:disabled{background:#94a3b8;cursor:not-allowed}.instructors-table-container{overflow-x:auto}.instructors-table{width:100%;border-collapse:collapse}.instructors-table thead{background-color:var(--light-gray)}.instructors-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-dark);border-bottom:2px solid #e5e7eb}.instructors-table td{padding:16px;border-bottom:1px solid #e5e7eb;color:var(--text-dark)}.instructors-table tbody tr:hover{background-color:#f9fafb}.no-data{text-align:center;padding:40px;color:var(--text-gray)}.applicants-by-level{display:flex;flex-direction:column;gap:24px}.level-group{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:20px}.level-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.level-header h3{font-size:1.3rem;color:var(--text-dark);margin:0}.level-count{padding:6px 12px;background:var(--primary-green);color:#fff;border-radius:20px;font-size:.85rem;font-weight:600}.students-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.student-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;transition:all .3s ease}.student-card:hover{border-color:var(--primary-green);box-shadow:0 2px 8px #22c55e26}.student-info h4{font-size:1rem;color:var(--text-dark);margin:0 0 8px}.student-info p{font-size:.85rem;color:var(--text-gray);margin:4px 0}.student-email{font-weight:500;color:var(--text-dark)!important}.student-phone{color:#64748b!important}.student-status-badges{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.payment-badge{padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600}.payment-badge.paid{background:#dcfce7;color:#16a34a}.status-badge{padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600}.status-badge.status-accepted{background:#dcfce7;color:#16a34a}.no-students-message{text-align:center;padding:60px 20px;background:#f9fafb;border-radius:12px;border:2px dashed #e5e7eb}.no-students-message p{margin:8px 0;font-size:1rem;color:var(--text-dark)}.no-students-message .sub-text{font-size:.9rem;color:#94a3b8}.reg-number{font-family:Courier New,monospace;color:var(--primary-green);font-weight:600}.no-students{text-align:center;padding:40px;color:var(--text-gray);font-style:italic}.form-group label{display:block;font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-green)}.form-help-text{display:block;margin-top:4px;font-size:.8rem;color:#64748b;font-style:italic}.file-upload-container{position:relative;display:flex;align-items:center;gap:12px}.file-input{display:none}.file-label{flex:1;display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;transition:all .3s ease}.file-label:hover{background:#f3f4f6;border-color:var(--primary-green)}.file-icon{font-size:1.5rem}.file-text{flex:1;font-size:.938rem;color:var(--text-gray)}.file-upload-container:has(.file-input[value]) .file-label{border-color:var(--primary-green);background:#f0fdf4}.file-upload-container:has(.file-input:not([value=""])) .file-text{color:var(--primary-green);font-weight:600}.file-remove-btn{width:36px;height:36px;border-radius:50%;background:#fee2e2;color:#dc2626;border:none;cursor:pointer;font-size:1.25rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;flex-shrink:0}.file-remove-btn:hover{background:#fecaca;transform:scale(1.1)}.file-help-text{display:block;margin-top:8px;font-size:.813rem;color:#6b7280;line-height:1.4}.subjects-checkboxes{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding:12px;background:#f9fafb;border-radius:8px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:.9rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer}.no-subjects-message{text-align:center;padding:60px 20px;background:#f9fafb;border-radius:12px;border:2px dashed #e5e7eb}.no-subjects-message p{margin:8px 0;font-size:1rem;color:var(--text-dark)}.no-subjects-message .sub-text{font-size:.9rem;color:#94a3b8}.status-badge{padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-badge.status-active{background:#dcfce7;color:#16a34a}.status-badge.status-inactive{background:#fee2e2;color:#dc2626}.btn-green{background:var(--primary-green);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-green:hover{background:#16a34a;transform:translateY(-2px);box-shadow:0 4px 8px #22c55e4d}.btn-primary{background:var(--primary-green);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover:not(:disabled){background:#16a34a;transform:translateY(-2px)}.btn-primary:disabled{background:#94a3b8;cursor:not-allowed}.btn-secondary{background:#f3f4f6;color:var(--text-dark);border:2px solid #e5e7eb;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#e5e7eb;border-color:#d1d5db}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid #e5e7eb;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:12px 12px 0 0}.modal-close{background:transparent;border:none;font-size:2rem;color:#fff;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .3s ease}.modal-body{padding:24px}.btn-view-credentials{background:var(--primary-green);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-view-credentials:hover{background:#16a34a;transform:translateY(-2px);box-shadow:0 2px 8px #22c55e4d}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}@media print{.no-print{display:none!important}.modal-overlay{position:static;background:#fff}.modal-content{box-shadow:none;border:none}.modal-header{background:#22c55e}}.credentials-modal{max-width:600px}.credentials-info{padding:20px 0}.credentials-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:24px;margin-bottom:24px}.credential-item{margin-bottom:20px}.credential-item label{display:block;font-weight:600;color:var(--text-dark);margin-bottom:8px;font-size:.9rem}.credential-value{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:12px 16px;border-radius:8px;border:2px solid #e5e7eb;font-family:Courier New,monospace;font-size:1rem;gap:12px}.credential-value span{flex:1;word-break:break-all}.btn-copy-credential{background:var(--primary-green);color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.btn-copy-credential:hover{background:#16a34a;transform:translateY(-2px)}.whatsapp-section{background:#dcfce7;border:2px solid #86efac;border-radius:12px;padding:20px;margin-bottom:20px;text-align:center}.whatsapp-label{font-weight:600;color:var(--text-dark);margin-bottom:12px}.btn-whatsapp{display:inline-block;background:#25d366;color:#fff;text-decoration:none;padding:12px 24px;border-radius:8px;font-weight:600;transition:all .3s ease}.btn-whatsapp:hover{background:#20ba5a;transform:translateY(-2px);box-shadow:0 4px 8px #25d3664d}.credentials-note{background:#fef3c7;border:2px solid #fde68a;border-radius:8px;padding:16px;margin-top:20px}.credentials-note p{margin:8px 0;font-size:.9rem;color:#92400e}.credentials-note p:first-child{margin-top:0}.credentials-note p:last-child{margin-bottom:0}.credentials-note strong{color:#78350f}.login-url-link{color:#2563eb;text-decoration:none;font-weight:600;word-break:break-all}.login-url-link:hover{text-decoration:underline;color:#1d4ed8}.enroll-modal{max-width:650px}.enroll-info{padding:10px 0}.enroll-subject-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:20px;margin-bottom:20px}.enroll-subject-card h3{font-size:1.2rem;color:var(--text-dark);margin:0 0 16px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.enroll-subject-details{display:flex;flex-direction:column;gap:12px}.enroll-detail-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e5e7eb}.enroll-detail-item:last-child{border-bottom:none}.enroll-label{font-weight:600;color:var(--text-gray);font-size:.9rem}.enroll-value{font-weight:600;color:var(--text-dark);font-size:.95rem;text-align:right}.enroll-warning-box{background:#fef3c7;border:2px solid #fde68a;border-radius:12px;padding:20px;margin-bottom:20px}.enroll-warning-box h4{font-size:1.1rem;color:#92400e;margin:0 0 12px}.enroll-warning-box p{font-size:.95rem;color:#92400e;margin:0 0 12px}.enroll-criteria-list{list-style:none;padding:0;margin:0}.enroll-criteria-list li{padding:8px 0;font-size:.95rem;color:#92400e;font-weight:500}.enroll-criteria-list li strong{color:#78350f}.enroll-note-box{background:#dbeafe;border:2px solid #93c5fd;border-radius:12px;padding:16px}.enroll-note-box p{margin:0;font-size:.9rem;color:#1e40af;line-height:1.5}.enroll-note-box strong{color:#1e3a8a}@media (max-width: 768px){.lms-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.lms-tab{flex-shrink:0;padding:10px 16px;font-size:.9rem}.lms-section-header{flex-direction:column;align-items:flex-start;gap:16px}.subjects-grid,.students-list{grid-template-columns:1fr}.instructors-table-container{overflow-x:auto}.enroll-detail-item{flex-direction:column;align-items:flex-start;gap:4px}.enroll-value{text-align:left}.modal-content.enroll-modal{max-width:95%;margin:10px}}.instructor-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.instructor-login-container{width:100%;max-width:450px}.instructor-login-card{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;padding:40px}.instructor-login-header{text-align:center;margin-bottom:32px}.instructor-logo-icon{width:80px;height:80px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;margin:0 auto 16px;box-shadow:0 4px 12px #667eea4d}.instructor-login-header h1{font-size:2rem;color:#1f2937;margin:0 0 8px;font-weight:700}.instructor-login-header p{color:#6b7280;margin:0;font-size:.95rem}.instructor-login-form{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;color:#374151;font-weight:600;font-size:.9rem}.form-group input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:all .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.btn{border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem}.btn-green{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-green:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-green:disabled{opacity:.6;cursor:not-allowed}.btn-large{width:100%;padding:14px}.btn-secondary{background:#f3f4f6;color:#374151;padding:10px 20px}.btn-secondary:hover{background:#e5e7eb}.instructor-login-footer{text-align:center;padding-top:24px;border-top:1px solid #e5e7eb}.instructor-login-footer p{color:#6b7280;margin-bottom:12px;font-size:.9rem}@media (max-width: 768px){.instructor-login-card{padding:30px 20px}.instructor-login-header h1{font-size:1.75rem}}.instructor-dashboard{min-height:100vh;background-color:#f9fafb}.instructor-header{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;padding:24px 0;box-shadow:0 2px 8px #0000001a}.instructor-header-content{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center}.instructor-header h1{font-size:2rem;margin:0 0 4px;font-weight:700}.instructor-header p{font-size:1rem;margin:0;opacity:.95}.header-actions{display:flex;gap:12px}.btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-secondary{background-color:#fff3;color:#fff;border:2px solid rgba(255,255,255,.5)}.btn-secondary:hover{background-color:#fff;color:#22c55e;border-color:#fff}.instructor-dashboard-content{max-width:1200px;margin:0 auto;padding:32px 24px}.dashboard-container{display:flex;flex-direction:column;gap:24px}.dashboard-section{background:#fff;border-radius:16px;padding:32px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;border:1px solid #f1f5f9}.dashboard-section h2{font-size:1.5rem;color:#1f2937;margin:0 0 24px;font-weight:700}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.dashboard-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 8px #00000014;transition:all .3s ease;border:1px solid #f1f5f9;text-align:center}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f;border-color:#e2e8f0}.dashboard-card-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 16px;box-shadow:0 2px 8px #0000001a}.dashboard-card h3{font-size:1.125rem;color:#1f2937;margin:0 0 8px;font-weight:600}.dashboard-card-value{font-size:2rem;font-weight:700;color:#1f2937;margin:8px 0}.dashboard-card-label{font-size:.875rem;color:#6b7280;margin:0}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.action-card{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:left}.action-card:hover{border-color:#8b5cf6;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf626}.action-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;color:#fff}.action-content{flex:1}.action-content h3{margin:0 0 6px;font-size:1.125rem;color:#1f2937;font-weight:600}.action-content p{margin:0;font-size:.875rem;color:#6b7280;line-height:1.4}.info-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;padding:24px;border:1px solid #e2e8f0}.info-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid #e2e8f0;transition:background-color .2s ease}.info-row:hover{background-color:#ffffff80;margin:0 -12px;padding:14px 12px;border-radius:8px}.info-row:last-child{border-bottom:none}.info-label{font-weight:600;color:#475569;font-size:.938rem}.info-value{color:#1e293b;font-size:1rem;font-weight:500;text-align:right}.status-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:capitalize}.status-active,.status-enrolled{background-color:#d1fae5;color:#065f46}.status-inactive,.status-suspended{background-color:#fee2e2;color:#991b1b}.status-pending{background-color:#fef3c7;color:#92400e}.status-draft{background-color:#e5e7eb;color:#374151}.status-published{background-color:#dbeafe;color:#1e40af}.status-archived{background-color:#f3f4f6;color:#6b7280}.status-graded{background-color:#d1fae5;color:#065f46}.status-submitted{background-color:#dbeafe;color:#1e40af}.level-badge{display:inline-block;padding:4px 12px;background-color:#e0e7ff;color:#3730a3;border-radius:12px;font-size:.813rem;font-weight:600}.payment-status-badge{display:inline-block;padding:4px 10px;background-color:#d1fae5;color:#065f46;border-radius:8px;font-size:.75rem;font-weight:600;margin-left:8px}.subjects-students-list{display:flex;flex-direction:column;gap:24px}.subject-group{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.subject-group-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.subject-group-header h3{margin:0;font-size:1.25rem;color:#1f2937;font-weight:700}.subject-code{padding:4px 10px;background-color:#e0e7ff;color:#3730a3;border-radius:8px;font-size:.813rem;font-weight:600}.student-count-badge{margin-left:auto;padding:6px 12px;background-color:#8b5cf6;color:#fff;border-radius:12px;font-size:.813rem;font-weight:600}.students-table-container{overflow-x:auto}.students-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}.students-table thead{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.students-table th{padding:14px 16px;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.students-table td{padding:12px 16px;border-bottom:1px solid #e5e7eb;font-size:.938rem;color:#374151}.students-table tbody tr:hover{background-color:#f9fafb}.students-table tbody tr:last-child td{border-bottom:none}.student-name{font-weight:600;color:#1f2937}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.modal-content{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:12px 12px 0 0;flex-shrink:0}.modal-header h2{font-size:1.5rem;color:#fff;margin:0;font-weight:600}.modal-close{background:none;border:none;font-size:2rem;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .3s ease}.modal-close:hover{background-color:#fff3}.modal-body{padding:24px;flex:1;overflow-y:auto}.loading{text-align:center;padding:40px;color:#6b7280;font-size:1rem}.no-data-message{text-align:center;padding:60px 20px;background:#f9fafb;border-radius:8px;border:2px dashed #e5e7eb}.no-data-icon{font-size:4rem;margin-bottom:16px}.no-data-message p{margin:8px 0;color:#6b7280}.no-data-message .sub-text{font-size:.875rem;color:#9ca3af}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#1f2937;font-size:.938rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:.938rem;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.form-group textarea{resize:vertical;min-height:100px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-submit{padding:12px 24px;background-color:#22c55e;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-submit:hover:not(:disabled){background-color:#16a34a;transform:translateY(-2px);box-shadow:0 4px 12px #22c55e4d}.btn-submit:disabled{background-color:#9ca3af;cursor:not-allowed}.btn-cancel{padding:12px 24px;background-color:#6b7280;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-cancel:hover{background-color:#4b5563}.live-streams-modal{max-width:1000px;max-height:95vh}.streams-header{display:flex;justify-content:flex-end;margin-bottom:20px}.btn-create-stream{padding:10px 20px;background-color:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.938rem;font-weight:600;transition:all .2s}.btn-create-stream:hover{background-color:#dc2626;transform:translateY(-2px)}.streams-list{display:flex;flex-direction:column;gap:16px}.stream-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s}.stream-card:hover{border-color:#ef4444;box-shadow:0 4px 12px #ef44441a}.stream-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.stream-card-header h3{margin:0 0 8px;color:#1f2937}.stream-subject-badge{padding:4px 10px;background-color:#e0e7ff;color:#3730a3;border-radius:12px;font-size:.75rem;font-weight:600}.stream-status-badge{padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.stream-status-badge.status-live{background-color:#fee2e2;color:#991b1b;animation:pulse 2s infinite}.stream-status-badge.status-scheduled{background-color:#dbeafe;color:#1e40af}.stream-status-badge.status-ended{background-color:#f3f4f6;color:#6b7280}.stream-status-badge.status-cancelled{background-color:#fee2e2;color:#991b1b}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.stream-description{color:#6b7280;font-size:.938rem;margin-bottom:12px;line-height:1.5}.stream-details{display:flex;flex-wrap:wrap;gap:12px;font-size:.875rem;color:#4b5563;margin-bottom:16px}.stream-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-start-stream,.btn-view-stream,.btn-edit-stream,.btn-delete-stream,.btn-end-stream{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.btn-start-stream{background-color:#10b981;color:#fff}.btn-start-stream:hover{background-color:#059669}.btn-view-stream{background-color:#3b82f6;color:#fff}.btn-view-stream:hover{background-color:#2563eb}.btn-edit-stream{background-color:#8b5cf6;color:#fff}.btn-edit-stream:hover{background-color:#7c3aed}.btn-delete-stream{background-color:#ef4444;color:#fff}.btn-delete-stream:hover{background-color:#dc2626}.btn-end-stream{background-color:#f59e0b;color:#fff}.btn-end-stream:hover{background-color:#d97706}.stream-form-modal{max-width:700px;max-height:95vh}.stream-form{display:flex;flex-direction:column;gap:20px}.stream-player-modal{max-width:95vw;max-height:95vh;width:1400px}.stream-player-body{padding:0;height:calc(95vh - 60px);overflow:hidden}.stream-player-container{display:flex;height:100%;gap:0}.stream-video-section{flex:1;display:flex;flex-direction:column;background:#000;position:relative}.stream-video-placeholder{flex:1;display:flex;align-items:center;justify-content:center;background:#1f2937;color:#fff}.video-placeholder-content{text-align:left;padding:40px;max-width:800px;margin:0 auto}.video-icon{font-size:4rem;margin-bottom:20px;text-align:center}.video-placeholder-content h3{margin:0 0 24px;color:#fff;text-align:center;font-size:1.5rem}.stream-setup-info{display:flex;flex-direction:column;gap:24px}.setup-step{display:flex;gap:16px;background:#ffffff0d;padding:20px;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.step-number{width:40px;height:40px;border-radius:50%;background:#8b5cf6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem;flex-shrink:0}.step-content{flex:1}.step-content strong{display:block;color:#fff;font-size:1.125rem;margin-bottom:8px}.step-content p{margin:8px 0;color:#d1d5db;font-size:.938rem;line-height:1.6}.step-content a{color:#60a5fa;text-decoration:underline}.step-content a:hover{color:#93c5fd}.stream-credentials-box{background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:16px;margin-top:12px}.credential-item{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.credential-item:last-child{margin-bottom:0}.credential-item label{min-width:100px;color:#d1d5db;font-weight:600;font-size:.875rem}.credential-item code{flex:1;background:#0006;padding:8px 12px;border-radius:6px;font-size:.813rem;color:#fbbf24;font-family:Courier New,monospace;word-break:break-all;border:1px solid rgba(255,255,255,.1)}.credential-item code.copyable{cursor:pointer;transition:all .2s}.credential-item code.copyable:hover{background:#0009;border-color:#8b5cf6}.btn-copy-small{padding:6px 12px;background-color:#8b5cf6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.813rem;font-weight:600;transition:all .2s;white-space:nowrap}.btn-copy-small:hover{background-color:#7c3aed;transform:translateY(-1px)}.stream-note{background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:8px;padding:16px;margin-top:8px}.stream-note strong{color:#fbbf24;display:block;margin-bottom:6px}.stream-note p{margin:0;color:#d1d5db;font-size:.875rem;line-height:1.6}.instructor-video-preview{width:100%;max-width:100%;height:auto;max-height:70vh;background:#000;border-radius:8px;object-fit:contain}.btn-start-browser-stream{padding:12px 24px;background-color:#10b981;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;margin-top:20px}.btn-start-browser-stream:hover:not(:disabled){background-color:#059669;transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-start-browser-stream:disabled{background-color:#9ca3af;cursor:not-allowed}.stream-status-indicator{display:flex;align-items:center;gap:8px;color:#10b981;font-weight:600;font-size:.875rem}.live-dot{width:12px;height:12px;background-color:#ef4444;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.stream-info-box{margin-top:20px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.stream-info-box p{margin:8px 0;font-size:.875rem}.stream-info-box code{background:#e5e7eb;padding:4px 8px;border-radius:4px;font-size:.75rem;font-family:monospace}.stream-note-text{color:#6b7280;font-size:.875rem;margin-top:12px}.stream-controls{padding:16px;background:#111827;border-top:1px solid #374151}.btn-end-stream-large{width:100%;padding:12px;background-color:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-end-stream-large:hover{background-color:#dc2626}.stream-sidebar{width:350px;background:#f9fafb;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.stream-participants-section,.stream-chat-section{padding:16px;border-bottom:1px solid #e5e7eb}.stream-participants-section{flex-shrink:0;max-height:300px;overflow-y:auto}.stream-participants-section h3,.stream-chat-section h3{margin:0 0 12px;font-size:1rem;color:#1f2937}.participants-list{display:flex;flex-direction:column;gap:8px}.no-participants,.no-messages{color:#6b7280;font-size:.875rem;text-align:center;padding:20px}.participant-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.participant-name{font-size:.875rem;color:#1f2937}.participant-type{font-size:.75rem;color:#6b7280;text-transform:capitalize}.stream-chat-section{flex:1;display:flex;flex-direction:column;min-height:0}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px;margin-bottom:12px;padding-right:8px}.chat-message{background:#fff;padding:10px;border-radius:6px;border:1px solid #e5e7eb}.chat-message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.chat-message-header strong{font-size:.875rem;color:#1f2937}.chat-time{font-size:.75rem;color:#6b7280}.chat-message-content{font-size:.875rem;color:#374151;line-height:1.5}.chat-input-form{display:flex;gap:8px}.chat-input{flex:1;padding:10px;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem}.chat-input:focus{outline:none;border-color:#8b5cf6}.btn-send-message{padding:10px 20px;background-color:#8b5cf6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.btn-send-message:hover{background-color:#7c3aed}.live-indicator{color:#ef4444;animation:pulse 2s infinite}@media (max-width: 768px){.quick-actions-grid,.dashboard-grid,.form-row{grid-template-columns:1fr}.students-table-container{overflow-x:auto}.stream-player-container{flex-direction:column}.stream-sidebar{width:100%;max-height:300px}.stream-video-section{min-height:300px}}.payment-result-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.result-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%;padding:40px;text-align:center;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.result-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-size:40px}.result-icon.success{background:#d1fae5;color:#065f46}.result-icon.failed{background:#fee2e2;color:#991b1b}.result-icon.pending{background:#dbeafe;color:#1e40af}.payment-result-page .result-container h1{font-size:28px;color:#1f2937;margin-bottom:12px}.result-message{color:#6b7280;font-size:16px;line-height:1.6;margin-bottom:24px}.payment-details{background:#f3f4f6;border-radius:12px;padding:20px;margin-bottom:24px;text-align:left}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e5e7eb}.detail-row:last-child{border-bottom:none}.detail-label{color:#6b7280;font-size:14px}.detail-value{color:#1f2937;font-weight:600;font-size:14px;text-align:right;word-break:break-word;max-width:60%}.btn-return{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:14px 32px;border-radius:8px;text-decoration:none;font-weight:600;transition:transform .2s,box-shadow .2s}.btn-return:hover{transform:translateY(-2px);box-shadow:0 10px 20px #667eea66}.redirect-notice{margin-top:20px;color:#6b7280;font-size:13px}#countdown{font-weight:600;color:#667eea}.App{min-height:100vh;display:flex;flex-direction:column}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{padding:12px 32px;border-radius:8px;font-size:16px;font-weight:600;transition:all .3s ease;display:inline-block}.btn-primary{background-color:#fff;color:var(--primary-green)}.btn-primary:hover{background-color:#f0f0f0;transform:translateY(-2px)}.btn-secondary{background-color:transparent;color:#fff;border:2px solid white}.btn-secondary:hover{background-color:#fff;color:var(--primary-green);transform:translateY(-2px)}.btn-green{background-color:var(--primary-green);color:#fff}.btn-green:hover{background-color:var(--dark-green);transform:translateY(-2px)}.page-container{flex:1;padding:80px 20px 40px}.page-title{font-size:2.5rem;margin-bottom:20px;color:var(--text-dark)}.page-content{max-width:1200px;margin:0 auto}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-green: #22c55e;--dark-green: #16a34a;--light-gray: #f9fafb;--text-dark: #1f2937;--text-gray: #6b7280}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-dark);line-height:1.6}#root{min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;outline:none;font-family:inherit}
