:root{--primary-color:#1e3c72;--primary-light:#2a5298;--primary-dark:#152a52;--secondary-color:#f1f3f6;--accent-color:#1e3c72;--text-dark:#2c3e50;--text-light:#5a6c7d;--border-color:#d1d9e6;--success-color:#1e3c72;--warning-color:#f39c12;--danger-color:#e74c3c;--info-color:#3498db;--gradient-primary:linear-gradient(135deg,#3b82f6,#60a5fa);--gradient-secondary:linear-gradient(135deg,#2a5298,#1e3c72)}*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#0a0f1c,#1a1f2e 25%,#2a2f3e 50%,#1a1f2e 75%,#0a0f1c);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App,body{min-height:100vh}.container{margin:0 auto;max-width:1200px;padding:0 20px}.header{background:linear-gradient(135deg,#3b82f6,#60a5fa);background:var(--gradient-primary);border-bottom:2px solid #ffffff1a;box-shadow:0 4px 20px #1e3c724d;color:#fff;padding:1rem 0}.header h1{font-size:2rem;font-weight:600;margin-bottom:.5rem;text-align:center}.header p{font-size:1.1rem;opacity:.9;text-align:center}.nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #1e3c721a;box-shadow:0 2px 10px #1e3c721a;padding:1rem 0}.nav-links{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.nav-link{border:2px solid #0000;border-radius:5px;color:#1e3c72;color:var(--primary-color);font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}.nav-link:hover{background:linear-gradient(135deg,#3b82f6,#60a5fa);background:var(--gradient-primary);box-shadow:0 4px 15px #1e3c724d;color:#fff;transform:translateY(-2px)}.card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:15px;box-shadow:0 8px 32px #1e3c7226;margin:1rem 0;padding:2rem;transition:transform .3s ease,box-shadow .3s ease}.card:hover{box-shadow:0 12px 40px #1e3c7240;transform:translateY(-8px)}.card h2{color:#1e3c72;color:var(--primary-color);font-size:1.5rem;margin-bottom:1rem}.card h3{color:#152a52;color:var(--primary-dark);margin-bottom:.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-dark);margin-bottom:.5rem}.form-control{border:2px solid #d1d9e6;border:2px solid var(--border-color);border-radius:5px;font-size:1rem;padding:.75rem;transition:border-color .3s ease;width:100%}.form-control:focus{border-color:#1e3c72;border-color:var(--primary-color);box-shadow:0 0 0 3px #1e3c721a}.form-control:invalid{border-color:#e74c3c;border-color:var(--danger-color)}.btn{border:none;border-radius:5px;display:inline-block;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;text-align:center;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#3b82f6,#60a5fa);background:var(--gradient-primary);box-shadow:0 4px 15px #1e3c724d}.btn-success:hover{background:linear-gradient(135deg,#2a5298,#1e3c72);background:var(--gradient-secondary);box-shadow:0 6px 20px #1e3c7266;transform:translateY(-3px)}.grid{grid-gap:1rem;gap:1rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.grid-4 .btn{font-size:1rem;padding:.75rem 1.5rem;white-space:normal}}@media (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.container{padding:0 15px}.header h1{font-size:1.8rem}.header p{font-size:1rem}.card{margin:.5rem 0;padding:1.5rem}.nav-links{gap:1rem}.nav-link{font-size:.9rem;padding:.4rem .8rem}a[href="/register"]{font-size:1rem!important;padding:12px 24px!important}}.btn:focus-visible,.form-control:focus-visible,.nav-link:focus-visible{outline:2px solid #1e3c72;outline:2px solid var(--primary-color);outline-offset:2px}.skip-link{background:#1e3c72;background:var(--primary-color);border-radius:4px;color:#fff;left:6px;padding:8px;position:absolute;text-decoration:none;top:-40px;z-index:1000}.skip-link:focus{top:6px}.btn-secondary{background-color:#5a6c7d;background-color:var(--text-light)}.btn-secondary:hover{background-color:#2c3e50;background-color:var(--text-dark)}.btn-success{background:linear-gradient(135deg,#3b82f6,#60a5fa);background:var(--gradient-primary);box-shadow:0 4px 15px #1e3c724d;color:#fff}.btn-danger{background-color:#e74c3c;background-color:var(--danger-color)}.btn-block{width:100%}.grid{grid-gap:2rem;gap:2rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-4 .btn{font-size:clamp(.8rem,2vw,1rem);min-width:0;overflow:hidden;padding:clamp(.5rem,1.5vw,.75rem) clamp(.8rem,2vw,1.5rem);text-overflow:ellipsis;white-space:nowrap}.table{background:#fff;border:1px solid #dee2e6;border-collapse:collapse;border-radius:5px;box-shadow:0 2px 10px #0000001a;margin:1rem 0;overflow:hidden;width:100%}.table td,.table th{border:1px solid #dee2e6;font-size:.85rem;line-height:1.2;padding:.4rem .6rem;text-align:left}.table th{background-color:#1e3c72;background-color:var(--primary-color);border-color:#2563eb}.table tr:hover{background-color:#2173460d}.alert{border-left:4px solid;border-radius:5px;margin:1rem 0;padding:1rem}.alert-success{background-color:#28a7451a;border-color:#1e3c72;border-color:var(--success-color);color:#1e3c72;color:var(--success-color)}.alert-danger{background-color:#dc35451a;border-color:#e74c3c;border-color:var(--danger-color);color:#e74c3c;color:var(--danger-color)}.alert-warning{background-color:#ffc1071a;border-color:#f39c12;border-color:var(--warning-color);color:#856404}.alert-info{background-color:#17a2b81a;border-color:#3498db;border-color:var(--info-color);color:#3498db;color:var(--info-color)}@media (max-width:768px){.container{padding:0 15px}.header h1{font-size:1.5rem}.nav-links{gap:1rem}.card{padding:1.5rem}.grid{gap:1rem}.table{font-size:.8rem}.table td,.table th{padding:.3rem .4rem}}@media (max-width:480px){.nav-links{align-items:center;flex-direction:column}.btn{font-size:.9rem;padding:.5rem 1rem}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.d-none{display:none}.d-block{display:block}.d-flex{display:flex}.d-grid{display:grid}.justify-center{justify-content:center}.align-center{align-items:center}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.student-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between}.student-info-main{flex:1 1;min-width:300px}.student-info-main h1{font-size:1.8rem;font-weight:600;margin-bottom:1rem;text-align:left}.student-details{display:flex;flex-wrap:wrap;gap:2rem;margin-top:.5rem}.student-class,.student-name{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:8px;display:flex;gap:.5rem;padding:.5rem 1rem}.student-details .label{font-size:.9rem;font-weight:500;min-width:60px;opacity:.9}.student-details .value{color:#fff;font-size:1.1rem;font-weight:700;text-shadow:0 1px 2px #0003}.school-info{min-width:250px;opacity:.9;text-align:right}.school-info p{font-size:.95rem;margin:.25rem 0}@media (max-width:768px){.student-header{flex-direction:column;gap:1rem}.student-info-main h1{font-size:1.5rem;text-align:center}.student-details{gap:1rem;justify-content:center}.school-info{text-align:center}.student-class,.student-name{flex:1 1;justify-content:center;min-width:140px}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translateX(0)}50%{opacity:.7;transform:translateX(0)}80%{opacity:.3;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.login-container{min-height:100vh}.left-panel{flex:0 0 45%}.left-panel .login-logo{height:120px;margin-bottom:24px}.left-panel h1{font-size:2.5rem;margin:0 0 8px}.left-panel p{font-size:1.125rem;margin-bottom:32px}.nav-buttons{gap:16px}.nav-buttons .btn{background:#0000;border:2px solid #fff6;border-radius:10px;color:#fff;font-weight:700;padding:12px 24px;text-decoration:none;transition:all .2s ease}.nav-buttons .btn:hover{background:#ffffff1a;border-color:#fff9;transform:translateY(-2px)}.login-card{box-shadow:0 25px 50px -12px #00000040;max-width:600px;padding:40px}.login-title{background:#1c3d52;border-radius:10px 10px 0 0;font-weight:800;margin:-40px -40px 24px;padding:20px;text-align:center}.form-group label{color:#475569;margin-bottom:4px}.password-toggle-icon{color:#94a3b8;right:14px}.form-group input{background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:10px;color:#334155;font-size:.9rem;padding:14px 18px;transition:all .2s ease;width:100%}.form-group input:focus{background:#fff;border-color:#1653a8;box-shadow:0 0 0 4px #1653a81a;outline:none}.form-options{font-size:.9rem;justify-content:space-between;margin-bottom:20px}.form-options,.remember-me{align-items:center;display:flex}.remember-me{color:#475569;gap:8px}.forgot-password a{color:#1653a8;font-weight:600;text-decoration:none}.error-message{color:#dc2626;margin:-10px 0 15px;text-align:center}.login-actions{margin-top:24px}.btn-primary{background:#1653a8;border-radius:10px;box-shadow:0 4px 14px #1653a833;font-size:1rem;font-weight:700;padding:14px;transition:all .2s ease}.btn-primary:hover{background:#0f2a52;box-shadow:0 6px 16px #1653a840;transform:translateY(-1px)}.btn-primary:disabled{background-color:#94a3b8;box-shadow:none;cursor:not-allowed;transform:none}.register-link{color:#475569;font-size:1rem;margin-top:24px;text-align:center}.register-link a{color:#1653a8;font-weight:600;text-decoration:none}.loading-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#0f172af2;height:100%;left:0;top:0;width:100%}.progress-circle-container{color:#f0f9ff;font-family:Poppins,sans-serif;position:relative;text-align:center}.progress-ring{transform:rotate(-90deg)}.progress-ring-bg{fill:none;stroke:#ffffff26;stroke-width:8}.progress-ring-fill{fill:none;stroke:#60a5fa;stroke-width:8;stroke-linecap:round;stroke-dasharray:408;stroke-dashoffset:408;animation:fillRing 6s linear forwards}.loading-logo{animation:pulse 2s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(96,165,250,.8));height:90px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:90px}.loading-text{font-size:1.4rem;margin-top:160px;text-shadow:0 0 10px #60a5fab3}.loading-subtext{animation:fadeInOut 2s ease-in-out infinite;color:#bfdbfe;font-size:.95rem;margin-top:6px}@keyframes fillRing{0%{stroke-dashoffset:408}to{stroke-dashoffset:0}}@keyframes fadeInOut{0%,to{opacity:.6}50%{opacity:1}}.loading-container{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(135deg,#1c3d52,#1d2a3a);border:1px solid #fff3;border-radius:20px;box-shadow:0 25px 50px -12px #00000040,0 0 40px #1c3d5233;color:#fff;padding:40px;text-align:center}.loading-spinner{border-right:4px solid #ffffff1a;border-top:4px solid #ffffff1a;border-color:#60a5fa #60a5fa #ffffff1a #ffffff1a;border-style:solid;border-width:4px;box-shadow:0 0 30px #60a5facc,0 0 60px #60a5fa66;height:60px;margin:0 auto 20px;width:60px}.loading-text{color:#f0f9ff!important;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-shadow:0 2px 4px #000c}.loading-subtext{animation:pulse 1.5s ease-in-out infinite;color:#bfdbfe!important;font-size:.9rem;opacity:.9;text-shadow:0 1px 2px #000c}.btn-primary.loading{color:#0000;position:relative}.btn-primary.loading:after{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;content:"";height:20px;left:50%;margin:-10px 0 0 -10px;position:absolute;top:50%;width:20px}.heading-mobile{display:none}@media (max-width:900px){.login-container{flex-direction:column;min-height:auto}.left-panel{flex:0 0 auto;height:auto;padding:0 8px;position:static}.left-panel .login-logo{height:36px;margin-bottom:4px}.left-panel h1{margin:4px 0 6px}.heading-desktop{display:none}.heading-mobile{display:block;font-size:.85rem;line-height:1.2}.left-panel p{display:none!important}.nav-buttons{gap:8px;margin-top:6px}.nav-buttons .btn{align-items:center;border-width:1px;display:inline-flex;font-size:.85rem!important;font-weight:600!important;height:32px;justify-content:center;line-height:1;min-width:100px;padding:6px 10px}.right-panel{padding:12px 10px}.login-card{box-shadow:none}}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172ae6;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.loading-box{color:#fff;text-align:center}.spinner{animation:spin 1s linear infinite;border:6px solid #fff3;border-radius:50%;border-top-color:#22d3ee;height:70px;margin:0 auto 20px;width:70px}.loading-text{color:#e2e8f0;font-size:1.2rem;letter-spacing:1px}.status-message{font-weight:500;margin-top:12px;text-align:center;transition:all .3s ease}.success-message{color:#10b981}.error-message{color:#f87171}.hp-root{background:#f6f9fb;color:#0b2b4a;font-family:Inter,Roboto,system-ui,-apple-system,Segoe UI,Arial}.hp-container{margin:0 auto;max-width:1200px;padding:0 20px}.hp-header{background:linear-gradient(90deg,#0f2a52,#1653a8);box-shadow:0 6px 18px #0206171f;color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:80}.hp-header-inner{align-items:center;display:flex;justify-content:space-between;padding:12px 0}.hp-logo{display:block;height:44px}.hp-actions{align-items:center;display:flex;gap:10px}.hp-btn{border-radius:10px;display:inline-block;font-size:.95rem;font-weight:600;padding:10px 14px;text-decoration:none;transition:all .18s ease}.hp-btn-primary{background:#fff;border:1px solid #0000000f;color:#0f2a52}.hp-btn-outline{background:#0000;border:1px solid #ffffff24;color:#dbeafe}.hp-btn-primary:hover{box-shadow:0 8px 18px #0f28501f;transform:translateY(-2px)}.hp-btn-outline:hover{background:#ffffff0f;transform:translateY(-2px)}.hp-promo{padding:36px 0}.hp-promo-card{display:flex;justify-content:center}.hp-embed{background:#000;border:1px solid #0206170f;border-radius:12px;box-shadow:0 12px 40px #0b204014;height:420px;overflow:hidden;width:100%}.hp-embed iframe,.hp-embed img,.hp-embed video{border:0;display:block;height:100%;object-fit:cover;width:100%}.hp-panels{display:flex;flex-direction:column;gap:28px;padding:28px 0}.hp-panel-card{grid-gap:20px;align-items:center;background:#fff;border:1px solid #0b20400a;border-radius:14px;box-shadow:0 10px 28px #0b20400a;display:grid;gap:20px;grid-template-columns:1fr 1fr;overflow:hidden}.hp-panel-card .hp-panel-text{background:linear-gradient(90deg,#1e6fff0a,#0b204005);padding:28px}.hp-panel-card h3{color:#08345c;font-size:1.5rem;margin:0 0 10px}.hp-panel-card p{background:#fff;border-left:4px solid #1e6fff;border-radius:8px;color:#415268;display:inline-block;line-height:1.5;margin:0;padding:8px 12px}.hp-panel-media{align-items:center;background:#fafcff;display:flex;justify-content:center;padding:20px}.hp-panel-media img{border-radius:10px;box-shadow:0 8px 24px #0b20400f;max-height:320px;width:auto}.hp-cta{padding:34px 0}.hp-cta-card{align-items:center;background:linear-gradient(90deg,#1e6fff14,#0b204005);border-radius:12px;box-shadow:0 8px 20px #0b20400a;display:flex;gap:12px;justify-content:space-between;padding:20px}.hp-cta-card h3{color:#042b52;font-size:1.25rem;margin:0}.hp-btn-cta{background:#1e6fff;border-radius:999px;color:#fff;font-weight:700;padding:10px 18px;text-decoration:none}.hp-footer{background:#08345c;color:#dfeeff;margin-top:36px;padding:30px 0 18px}.hp-footer-grid{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 1fr 1fr}.hp-footer-section{padding-right:12px}.hp-footer-section+.hp-footer-section{border-left:1px solid #ffffff26;padding-left:12px}.hp-footer-left p{color:#ffffffd9;line-height:1.5;margin-top:10px}.hp-footer-logo{display:block;height:36px;margin-bottom:8px}.hp-footer-col h4{color:#fff;font-size:1rem;margin:0 0 8px}.hp-footer-col ul{list-style:none;margin:0;padding:0}.hp-footer-col li{margin-bottom:6px}.hp-footer-col a{color:#ffffffd9;text-decoration:none}.hp-footer-links{text-align:center}.hp-footer-links ul{display:inline-block;text-align:left}.hp-socials{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.hp-socials li{margin:0}.hp-socials a{color:#ffffffe6;font-weight:600;text-decoration:none}.hp-footer-bottom{border-top:1px solid #ffffff0a;color:#ffffffbf;font-size:.9rem;margin-top:18px;padding-top:14px;text-align:center}@media (max-width:900px){.hp-embed{height:300px}.hp-panel-card{grid-template-columns:1fr}.hp-panel-media img{max-height:240px}.hp-cta-card{flex-direction:column;gap:12px;text-align:center}.hp-header-inner{padding:10px 0}.hp-footer-grid{grid-template-columns:1fr}.hp-footer-section+.hp-footer-section{border-left:none;border-top:1px solid #ffffff26;margin-top:12px;padding-left:0;padding-top:12px}.hp-footer-links{text-align:left}}@media (max-width:480px){.hp-embed{height:200px}.hp-panel-media img{max-height:180px}.hp-container{padding:0 14px}.hp-actions{gap:8px}.hp-btn{font-size:.9rem;padding:8px 10px}}.modern-loader{flex-direction:column;gap:1rem}.loader-animation,.modern-loader{align-items:center;display:flex;justify-content:center}.loader-animation{position:relative}.dot{animation:rotate 2s linear infinite;border-radius:50%;position:absolute}.modern-loader.small .dot{height:6px;width:6px}.modern-loader.medium .dot{height:8px;width:8px}.modern-loader.large .dot{height:12px;width:12px}.modern-loader.primary .dot{background:linear-gradient(45deg,#667eea,#764ba2);box-shadow:0 0 10px #667eea80}.modern-loader.secondary .dot{background:linear-gradient(45deg,#f093fb,#f5576c);box-shadow:0 0 10px #f093fb80}.modern-loader.white .dot{background:linear-gradient(45deg,#fff,#f8f9fa);box-shadow:0 0 10px #ffffff80}.dot1{animation-delay:0s;top:-20px}.dot2{animation-delay:.25s;right:-14px;top:-14px}.dot3{animation-delay:.5s;right:-20px}.dot4{animation-delay:.75s;bottom:-14px;right:-14px}.dot5{animation-delay:1s;bottom:-20px}.dot6{animation-delay:1.25s;bottom:-14px;left:-14px}.dot7{animation-delay:1.5s;left:-20px}.dot8{animation-delay:1.75s;left:-14px;top:-14px}@keyframes rotate{0%{opacity:1;transform:rotate(0deg) scale(1)}50%{opacity:.8;transform:rotate(180deg) scale(1.2)}to{opacity:1;transform:rotate(1turn) scale(1)}}.loader-text{animation:pulse 2s ease-in-out infinite;color:#64748b;font-size:.9rem;font-weight:500;margin-top:.5rem;text-align:center}.modern-loader.primary .loader-text{color:#667eea}.modern-loader.secondary .loader-text{color:#f5576c}.modern-loader.white .loader-text{color:#fff}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.modern-loader-overlay{position:fixed;z-index:9999}.modern-loader-backdrop,.modern-loader-overlay{align-items:center;bottom:0;display:flex;justify-content:center;left:0;right:0;top:0}.modern-loader-backdrop{animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;position:absolute}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modern-loader.small{gap:.5rem}.modern-loader.small .loader-text{font-size:.8rem}.modern-loader.large{gap:1.5rem}.modern-loader.large .loader-text{font-size:1.1rem}@media (max-width:768px){.modern-loader.large .dot{height:10px;width:10px}.modern-loader.large .loader-text{font-size:1rem}}.modern-loader.inline{flex-direction:row;gap:.5rem}.modern-loader.inline .loader-animation{height:20px;position:relative;width:20px}.modern-loader.inline .dot{height:4px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:4px}.modern-loader.inline .loader-text{font-size:.9rem;margin-top:0}.register-container{display:flex;font-family:Inter,sans-serif;min-height:100vh}.left-panel{background:linear-gradient(135deg,#667eea,#764ba2);flex:1 1;padding:4rem}.left-panel h1{font-size:3rem;font-weight:800;margin-bottom:1rem}.left-panel p{font-size:1.2rem;max-width:400px}.right-panel{align-items:center;background-color:#f7f8fa;flex:1.5 1;padding:2rem}.register-card{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;max-width:800px;padding:2.5rem;width:100%}.register-title{color:#333;font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.form-row{display:flex;flex-direction:column}.form-row.full-width{grid-column:span 2}.form-row label{color:#555;font-weight:600;margin-bottom:.5rem}.form-row input,.form-row select{border:1px solid #ddd;border-radius:8px;font-size:1rem;padding:.8rem 1rem;transition:border-color .2s}.form-row input:focus,.form-row select:focus{border-color:#667eea;outline:none}.password-input-container{position:relative}.password-toggle-icon{color:#888;cursor:pointer;position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.register-actions{display:flex;grid-column:span 2;justify-content:center;margin-top:1.5rem}.btn-primary{background-color:#667eea;border:none;border-radius:8px;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:background-color .3s;width:100%}.btn-primary:hover{background-color:#5a6edc}.error-message,.success-message{border-radius:8px;grid-column:span 2;margin-top:1rem;padding:1rem;text-align:center}.error-message{background-color:#f8d7da}.success-message{background-color:#d4edda}.login-link{grid-column:span 2;margin-top:1.5rem;text-align:center}.login-link a{color:#667eea;font-weight:600;text-decoration:none}.login-link a:hover{text-decoration:underline}@media (max-width:992px){.register-container{flex-direction:column}.left-panel{display:none}.right-panel{flex:1 1;padding:1rem}.form-grid{grid-template-columns:1fr}.error-message,.form-row.full-width,.login-link,.register-actions,.success-message{grid-column:span 1}}.login-container{display:flex;font-family:Inter,Roboto,system-ui,-apple-system,Segoe UI,Arial;height:100vh;overflow:hidden}.left-panel{align-items:center;background:linear-gradient(135deg,#1c3d52,#1d2a3a);color:#fff;display:flex;flex:0 0 560px;flex-direction:column;height:100vh;justify-content:center;padding:40px 20px;position:-webkit-sticky;position:sticky;text-align:center;top:0}.left-panel h1{font-size:2rem;line-height:1.2;margin-bottom:20px}.left-panel p{font-size:.95rem;max-width:560px;opacity:.9}.left-panel .info-box{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1a;border:1px solid #ffffff40;border-radius:14px;box-shadow:0 10px 30px #00000026;margin-top:12px;padding:18px 20px 18px 26px;position:relative;text-align:left}.left-panel .info-box:before{background:linear-gradient(180deg,#5ec6ff,#1653a8);border-radius:2px;bottom:12px;content:"";left:12px;opacity:.95;position:absolute;top:12px;width:4px}.left-panel .info-box p{color:#fff;font-size:.98rem;line-height:1.4;margin:0;opacity:.95}.left-panel .info-box p+p{margin-top:8px}.left-panel .subnote{color:#fff;font-size:.95rem;font-style:italic;margin-top:10px;opacity:.85}@media (max-width:900px){.login-container{min-height:auto}.left-panel,.login-container{flex-direction:column;height:auto}.left-panel{display:flex!important;flex:0 0 auto;padding:0 8px;position:static;text-align:center}.left-panel h1{font-size:.95rem;line-height:1.2;margin:4px 0}.left-panel .info-box,.left-panel .subnote,.left-panel p{display:none!important}.nav-buttons{display:flex!important;gap:8px;justify-content:center;margin-top:4px}.nav-buttons .btn{border-width:1px;font-size:.85rem;padding:6px 10px}.right-panel{height:auto;padding:12px 10px}}.right-panel{align-items:flex-start;background:#f0f2f5;display:flex;flex:1 1;height:100vh;justify-content:center;overflow-y:auto;padding:40px}.login-card{background:#fff;border-radius:16px;box-shadow:0 40px 80px #0000002e,0 8px 24px #0000001f;max-width:640px;padding:28px;width:100%}.login-title{background:linear-gradient(135deg,#1653a8,#0e3b70);border-radius:12px;color:#fff;font-size:1.4rem;font-weight:700;margin:0 0 16px;padding:12px 16px}.grid{grid-gap:12px;display:grid;gap:12px}.grid.grid-2{grid-template-columns:1fr 1fr}.grid.grid-3{grid-template-columns:1fr 1fr 1fr}.grid.grid-2,.grid.grid-3{grid-template-columns:1fr}.form-group{margin-bottom:0}.form-group label{color:#334155;margin-bottom:6px}.form-control{background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;color:#0f172a;font-size:.95rem;padding:10px 12px}.form-control:focus{background:#fff;border-color:#1653a8;box-shadow:0 0 0 3px #1653a826;outline:none}.login-logo{height:auto;margin-bottom:16px;max-width:85%;object-fit:contain;width:200px}.nav-buttons{display:flex;gap:10px;margin-top:10px}.btn{background:#fff3;border-radius:10px;color:#fff;text-decoration:none}.btn:hover{background:#ffffff4d}.alert{border-radius:10px;font-size:.95rem;margin-bottom:12px;padding:10px 12px}.alert-danger{background:#fee2e2;color:#7f1d1d}.alert-success{background:#dcfce7;color:#14532d}@media (min-width:992px){.left-panel .info-box .fit-on-desktop{white-space:nowrap}}.stats-grid{grid-gap:.3rem;grid-template-columns:1fr 1fr 1fr 1fr 2fr}.stats-grid,.stats-grid-with-badge{gap:.3rem;margin-bottom:1rem;position:relative}.stats-grid-with-badge{grid-gap:.3rem;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1.5fr 150px}.achievement-badge-container{align-items:center;display:flex;justify-content:center;padding:.5rem}.stats-card{background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:8px;display:flex;flex-direction:column;justify-content:center;min-height:50px;padding:clamp(.3rem,1.2vw,.5rem);text-align:center}.stats-card.total-exams{border:2px solid #2563eb;box-shadow:0 1px 4px #21734614}.stats-card.min-score{border:2px solid #dc3545;box-shadow:0 1px 4px #dc354514}.stats-card.max-score{border:2px solid #007bff;box-shadow:0 1px 4px #28a74514}.stats-card.avg-score{border:2px solid #6c757d;box-shadow:0 1px 4px #6c757d14}.stats-card.best-school{border:2px solid #28a745;box-shadow:0 1px 4px #28a74514}.stats-value{font-size:clamp(1rem,3vw,1.3rem);font-weight:700;margin-bottom:clamp(.2rem,.8vw,.4rem)}.stats-value.total-exams{color:#2563eb}.stats-value.min-score{color:#dc3545}.stats-value.max-score{color:#007bff}.stats-value.avg-score{color:#6c757d}.stats-value.best-school{color:#28a745;font-size:clamp(.8rem,2.5vw,1rem)}.stats-label{color:#6c757d;font-size:clamp(.55rem,1.5vw,.7rem);font-weight:500;letter-spacing:.2px;line-height:1.2;text-transform:uppercase}.stats-label.best-school{color:#666;font-size:clamp(.6rem,1.5vw,.7rem);font-weight:500;margin-top:.2rem;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.stats-grid,.stats-grid-with-badge{gap:.75rem;grid-template-columns:1fr}.stats-card.best-school{grid-column:span 1}.achievement-badge-container{grid-column:span 1;margin-top:1rem}.badge-info-grid-horizontal{gap:.3rem;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.badge-info-item-small{height:1.8rem;max-width:130px;padding:.15rem .25rem}.badge-emoji-small{font-size:.8rem;margin-bottom:0;margin-right:.25rem}.badge-name-small{font-size:1rem}.badge-range-small{font-size:.9rem}.stats-header{align-items:flex-start;flex-direction:column;gap:.5rem}.header-badge-container{align-self:center;margin-left:0}.badge-info-header{padding:.75rem}}@media (min-width:769px){.stats-card.best-school{grid-column:span 1}}.table-responsive{border-radius:8px;box-shadow:0 2px 8px #0000001a}.table{font-size:.9rem;margin-bottom:0}.table th{background:linear-gradient(135deg,#1e3c72,#2a5298);border-bottom:2px solid #152a52;color:#fff;font-size:.85rem;font-weight:600;text-shadow:0 1px 2px #0000001a;white-space:nowrap}.table td,.table th{padding:.75rem .5rem;text-align:center;vertical-align:middle}.table td{border-bottom:1px solid #dee2e6}@media (max-width:768px){.table-responsive{font-size:.8rem}.table th{font-size:.75rem;padding:.5rem .3rem}.table td{font-size:.8rem;padding:.5rem .3rem}.table td>div{font-size:.75rem}.table td>div:last-child{font-size:.7rem}.table td span[style*="background: #2563eb"]{font-size:.75rem!important;padding:.2rem .5rem!important}.table td span[style*="background: #28a745"],.table td span[style*="background: #ffc107"]{font-size:.7rem!important;padding:.2rem .4rem!important}}@media (max-width:480px){.table-responsive{font-size:.75rem}.table th{font-size:.7rem;padding:.4rem .2rem}.table td{font-size:.75rem;padding:.4rem .2rem}.table td>div{font-size:.7rem}.table td>div:last-child{font-size:.65rem}}.badge-info-header{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e9ecef;border-bottom:2px solid #3498db;border-radius:8px 8px 0 0;margin:-1px -1px 0;padding:1rem}.badge-info-grid-horizontal{grid-gap:.5rem;align-items:center;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.badge-info-item-small{align-items:center;border-radius:8px;cursor:pointer;display:flex;flex-direction:row;height:2.2rem;max-width:160px;min-width:140px;padding:.3rem .5rem;text-align:left;transition:all .3s ease}.badge-info-item-small:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.badge-info-item-small.gold{background:linear-gradient(135deg,gold,#9932cc);border:2px solid #b8860b;box-shadow:0 2px 8px #ffd70066;color:#fff}.badge-info-item-small.silver{background:linear-gradient(135deg,#0080ff,#00ced1);border:2px solid #06c;box-shadow:0 2px 8px #0080ff66;color:#fff}.badge-info-item-small.bronze{background:linear-gradient(135deg,silver,#4169e1);border:2px solid #a9a9a9;box-shadow:0 2px 8px #c0c0c066;color:#fff}.badge-info-item-small.achievement{background:linear-gradient(135deg,gold,orange);border:2px solid #ff8c00;box-shadow:0 2px 8px #ffd70066;color:#000}.badge-info-item-small.platinum{background:linear-gradient(135deg,silver,#f5f5f5);border:2px solid #a9a9a9;box-shadow:0 2px 8px #c0c0c066;color:#000}.badge-info-item-small.copper{background:linear-gradient(135deg,#cd7f32,#d2691e);border:2px solid sienna;box-shadow:0 2px 8px #cd7f3266;color:#fff}.badge-emoji-small{flex-shrink:0;font-size:1rem;margin-bottom:0;margin-right:.15rem}.badge-details-small{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;text-align:left}.badge-name-small{font-size:.85rem;font-weight:800;line-height:1.1;margin-bottom:.02rem;text-shadow:1px 1px 3px #00000080}.badge-range-small{font-size:.7rem;font-weight:600;line-height:1.1;text-shadow:1px 1px 2px #0000004d}.stats-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:0;padding:.5rem 1rem}.stats-title{flex:1 1;font-size:clamp(1.1rem,4vw,1.5rem);margin:0}.header-badge-container{flex-shrink:0;margin-left:1rem}.badge-info-panel{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #dee2e6;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:20px 0;padding:20px}.badge-info-title{align-items:center;color:#495057;display:flex;font-size:18px;font-weight:600;gap:8px;margin-bottom:15px}.badge-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.badge-info-item{align-items:center;background:#fff;border-left:4px solid #007bff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;gap:10px;padding:12px;transition:transform .2s ease}.badge-info-item:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.badge-info-item.gold{border-left-color:gold}.badge-info-item.silver{border-left-color:silver}.badge-info-item.bronze{border-left-color:#cd7f32}.badge-info-item.achievement{border-left-color:#28a745}.badge-emoji{font-size:24px;min-width:30px}.badge-details{flex:1 1}.badge-name{color:#343a40;font-weight:600;margin-bottom:2px}.badge-range{color:#6c757d;font-size:14px}@media (max-width:768px){.badge-info-panel{margin:15px 0;padding:15px}.badge-info-title{font-size:16px}.badge-info-grid{gap:8px;grid-template-columns:1fr}.badge-info-item{padding:10px}.badge-emoji{font-size:20px;min-width:25px}.badge-name{font-size:14px}.badge-range{font-size:12px}.header-badge{display:flex;justify-content:center;left:auto!important;margin-top:.5rem;order:2;position:static!important;top:auto!important;transform:none!important;width:100%}.container{align-items:center!important;flex-direction:column!important}.container>div:first-child{justify-content:center;order:1;text-align:center;width:100%}.container>div:last-child{justify-content:center;margin-top:.5rem;order:3;width:100%}}:root{--bg:#0b0f1a;--card:#121828;--text:#e2e8f0;--muted:#94a3b8;--primary:#3b82f6;--danger:#ef4444;--success:#22c55e;--border:#1f2937}body{background:#0b0f1a;background:var(--bg);color:#e2e8f0;color:var(--text)}.teacher-container{margin:0 auto;max-width:1200px;padding:16px}.header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.header h1{font-size:20px;margin:0}.header-actions{align-items:center;display:flex;gap:8px}.badge{background:#1f2937;background:var(--border);border-radius:999px;color:#94a3b8;color:var(--muted);font-size:12px;padding:6px 10px}.badge.active{background:#0f5132;color:#d1fae5}.badge.inactive{background:#5c0f14;color:#fee2e2}.btn{background:#121828;background:var(--card);border:1px solid #1f2937;border:1px solid var(--border);border-radius:6px;color:#e2e8f0;color:var(--text);cursor:pointer;padding:8px 12px}.btn:hover{border-color:#3b82f6;border-color:var(--primary)}.btn.secondary{background:#0f172a}.btn.danger{background:#1f2937;border-color:#7f1d1d;color:#fecaca}.stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:12px}.stat-card{background:#121828;background:var(--card);border:1px solid #1f2937;border:1px solid var(--border);padding:12px}.stat-title{color:#94a3b8;color:var(--muted);font-size:12px}.stat-value{font-size:20px;font-weight:600}.tabs{display:flex;gap:8px;margin-bottom:12px}.tab{background:#121828;background:var(--card);border:1px solid #1f2937;border:1px solid var(--border);border-radius:6px;color:#e2e8f0;color:var(--text);cursor:pointer;padding:8px 12px}.tab.active{border-color:#3b82f6;border-color:var(--primary)}.card{background:#121828;background:var(--card);border:1px solid #1f2937;border:1px solid var(--border);border-radius:8px;padding:12px}.card.error{background:#1f2937;border-color:#7f1d1d}.error-title{font-weight:600;margin-bottom:8px}.error-actions{display:flex;gap:8px}.table-responsive{overflow-x:auto;width:100%}.data-table{border-collapse:collapse;width:100%}.data-table td,.data-table th{border-bottom:1px solid #1f2937;border-bottom:1px solid var(--border);padding:8px;text-align:left}.expand-row{background:#0f172a}.subjects-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.subject-card{background:#0b1324;border:1px solid #1f2937;border:1px solid var(--border);border-radius:8px;padding:8px}.subject-title{font-weight:600;margin-bottom:4px}.subject-stats{grid-gap:6px;color:#94a3b8;color:var(--muted);display:grid;font-size:12px;gap:6px;grid-template-columns:repeat(3,1fr)}@media (max-width:640px){.header{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:1fr}}.system-admin-panel{background-color:#f5f5f5;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh}@media (max-width:480px){.exams-table tr{border-radius:8px;margin-bottom:10px;padding:12px}.exams-table td{font-size:13px;padding:8px 0 8px 75px}.exams-table td:before{font-size:10px;top:8px;width:70px}.exam-actions{gap:12px;margin-top:10px;padding-top:10px}.action-btn{font-size:14px;min-height:36px;min-width:36px;padding:8px}.action-label{font-size:9px}.exam-name .name{font-size:13px}.exam-name .type{font-size:11px}}.top-bar{background:#2c3e50;box-shadow:0 2px 10px #0000001a;color:#fff;justify-content:space-between;padding:10px 17px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.top-bar,.top-bar-left{align-items:center;display:flex}.top-bar-left{gap:12px}.sidebar-toggle{background:#fff3;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:7px 10px;transition:all .3s ease}.sidebar-toggle:hover{background:#ffffff4d;transform:scale(1.05)}.gear-icon{background:#fff3;border-radius:5px;color:#fff;font-size:16px;padding:7px 10px}.desktop-only,.gear-icon{display:inline-block}.mobile-only{display:none}.panel-title{font-size:20px;font-weight:600;margin:0;text-shadow:0 1px 3px #0000004d}.top-bar-right{align-items:center;display:flex;gap:12px}.user-info{opacity:.9}.logout-btn,.user-info{font-size:14px;font-weight:500}.logout-btn{background:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:7px 14px;transition:all .3s ease}.logout-btn:hover{background:#c0392b;box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-1px)}.panel-body{display:flex;min-height:calc(100vh - 60px)}.sidebar{background:#2c3e50;box-shadow:2px 0 10px #0000001a;height:calc(100vh - 52px);left:0;position:fixed;top:52px;transition:all .3s ease;width:240px;z-index:100}.sidebar.collapsed{width:60px}.sidebar-content{height:100%;overflow-y:auto;padding:17px 0}.menu-item{margin-bottom:4px}.menu-link{align-items:center;border-left:3px solid #0000;color:#fff;cursor:pointer;display:flex;padding:10px 17px;position:relative;transition:all .3s ease}.menu-link:hover{background:#3498db1a}.menu-link.active,.menu-link:hover{border-left-color:#3498db;color:#3498db}.menu-link.active{background:#3498db33;font-weight:600}.menu-icon{font-size:17px;margin-right:10px;min-width:25px;text-align:center}.menu-text{flex:1 1;font-size:13px;font-weight:500}.submenu-arrow{font-size:12px;margin-left:auto;transition:transform .3s ease}.submenu-arrow.expanded{transform:rotate(180deg)}.submenu{animation:slideDown .3s ease;background:#0000001a;border-radius:6px;margin-left:20px;margin-right:10px;overflow:hidden}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:200px;opacity:1}}.submenu-link{border-left:2px solid #0000;color:#fff;cursor:pointer;display:block;font-size:13px;padding:10px 20px;transition:all .3s ease}.submenu-link:hover{background:#3498db1a;border-left-color:#3498db;color:#3498db}.submenu-link.active{background:#3498db33;border-left-color:#3498db;color:#3498db;font-weight:600}.main-area{background:#ecf0f1;flex:1 1;margin-left:240px;overflow-y:auto}.main-content{margin:0 auto;max-width:1200px;padding:25px}.main-content h1{border-bottom:3px solid #3498db;color:#2c3e50;display:inline-block;font-size:24px;font-weight:600;margin-bottom:17px;padding-bottom:8px}.main-content p{color:#7f8c8d;font-size:14px;line-height:1.6;margin-bottom:17px}@media (max-width:768px){.sidebar{height:calc(100vh - 52px);left:-240px;position:fixed;top:52px;z-index:999}.sidebar.collapsed{left:0;width:240px}.main-area{margin-left:0}.panel-title{font-size:16px}.top-bar{padding:8px 12px}.main-content{padding:17px 12px}}.sidebar-content::-webkit-scrollbar{width:6px}.sidebar-content::-webkit-scrollbar-track{background:#0000001a}.sidebar-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.menu-link,.submenu-link{overflow:hidden;position:relative}.menu-link:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.menu-link:hover:before{left:100%}.content-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px;padding:25px}.content-card h2{color:#2c3e50;font-size:22px;font-weight:600;margin-bottom:15px}.content-card p{color:#7f8c8d;line-height:1.6}.stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:25px}.stat-card{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 3px 12px #00000014;display:flex;gap:12px;overflow:hidden;padding:15px;position:relative;transition:all .3s ease}.stat-card:before{content:"";height:100%;left:0;position:absolute;top:0;transition:all .3s ease;width:4px}.stat-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.stat-card.exams:before{background:linear-gradient(135deg,#3498db,#2980b9)}.stat-card.managers:before{background:linear-gradient(135deg,#e74c3c,#c0392b)}.stat-card.teachers:before{background:linear-gradient(135deg,#f39c12,#e67e22)}.stat-card.students:before{background:linear-gradient(135deg,#27ae60,#229954)}.stat-icon{font-size:32px;min-width:40px;opacity:.8;text-align:center}.stat-content{flex:1 1}.stat-number{color:#2c3e50;font-size:24px;font-weight:700;line-height:1;margin-bottom:3px}.stat-label{color:#7f8c8d;font-size:12px;font-weight:500;letter-spacing:.3px;text-transform:uppercase}.recent-events-section{background:#fff;border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 4px 15px #0000001a;padding:25px}.recent-events-section h2{align-items:center;border-bottom:2px solid #ecf0f1;color:#2c3e50;display:flex;font-size:20px;font-weight:600;gap:8px;margin-bottom:20px;padding-bottom:12px}.recent-events-section h2:before{content:"📋";font-size:24px}.recent-events-list{max-height:400px;overflow-y:auto}.event-item{align-items:flex-start;border-bottom:1px solid #ecf0f1;display:flex;gap:12px;padding:12px 0;transition:all .3s ease}.event-item:last-child{border-bottom:none}.event-item:hover{background:#3498db0d;border-radius:7px;margin:0 -12px;padding:12px}.event-icon{font-size:20px;margin-top:4px;min-width:25px;opacity:.7;text-align:center}.event-content{flex:1 1}.event-title{color:#2c3e50;font-size:14px;font-weight:600;line-height:1.4;margin-bottom:4px}.event-description{color:#7f8c8d;font-size:12px;line-height:1.4;margin-bottom:6px}.event-date{color:#95a5a6;font-size:11px;font-weight:500}.loading-message,.no-events{color:#7f8c8d;font-size:16px;font-style:italic;padding:40px 20px;text-align:center}.loading-message{color:#3498db}.detailed-events-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;margin-top:30px;padding:25px}.events-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px}.events-header h2{color:#2c3e50;font-size:24px;font-weight:600;margin:0}.category-filters{display:flex;flex-wrap:wrap;gap:8px}.category-filter-dropdown{align-items:center;display:flex;gap:12px}.category-filter-dropdown label{color:#2c3e50;font-size:14px;font-weight:600;white-space:nowrap}.category-select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#2c3e50;cursor:pointer;font-size:14px;font-weight:500;min-width:200px;outline:none;padding:10px 16px;transition:all .3s ease}.category-select:hover{border-color:#3498db;box-shadow:0 2px 8px #3498db33}.category-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.filter-btn{background:#fff;border:2px solid #e0e0e0;border-radius:20px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.filter-btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.filter-btn.active{background:#3498db;border-color:#3498db;color:#fff}.filter-btn.exams{border-color:#e74c3c}.filter-btn.exams.active{background:#e74c3c;border-color:#e74c3c}.filter-btn.managers{border-color:#9b59b6}.filter-btn.managers.active{background:#9b59b6;border-color:#9b59b6}.filter-btn.teachers{border-color:#f39c12}.filter-btn.teachers.active{background:#f39c12;border-color:#f39c12}.filter-btn.students{border-color:#27ae60}.filter-btn.students.active{background:#27ae60;border-color:#27ae60}.filter-btn.user-changes{border-color:#34495e}.filter-btn.user-changes.active{background:#34495e;border-color:#34495e}.detailed-events-list{max-height:none;overflow:visible}.detailed-event-item{align-items:center;background:#fafafa;border-left:3px solid #e0e0e0;border-radius:8px;display:flex;margin-bottom:8px;min-height:60px;padding:12px 16px;transition:all .3s ease}.detailed-event-item.clickable{cursor:pointer}.detailed-event-item.clickable:hover{background:#fff;box-shadow:0 4px 15px #0000001a;transform:translateX(5px)}.detailed-event-item.exams{border-left-color:#e74c3c}.detailed-event-item.exams:hover{background:#fdf2f2}.detailed-event-item.managers{border-left-color:#9b59b6}.detailed-event-item.managers:hover{background:#f8f4fd}.detailed-event-item.teachers{border-left-color:#f39c12}.detailed-event-item.teachers:hover{background:#fef9f0}.detailed-event-item.students{border-left-color:#27ae60}.detailed-event-item.students:hover{background:#f0f9f4}.detailed-event-item.user_changes{border-left-color:#34495e}.detailed-event-item.user_changes:hover{background:#f4f6f7}.detailed-event-item .event-icon{font-size:20px;margin-right:12px;min-width:24px;text-align:center}.detailed-event-item .event-content{flex:1 1}.detailed-event-item .event-main-info{display:flex;flex-direction:column;gap:2px}.detailed-event-item .event-title{color:#2c3e50;font-size:14px;font-weight:600;line-height:1.3;margin-bottom:2px}.detailed-event-item .event-description{color:#7f8c8d;font-size:12px;line-height:1.3;margin-bottom:2px}.detailed-event-item .event-performer{background:#ecf0f1;border-radius:10px;color:#2c3e50;display:inline-block;font-size:11px;font-weight:500;padding:1px 6px;width:-webkit-fit-content;width:fit-content}.detailed-event-item .event-datetime{align-items:flex-end;display:flex;flex-direction:column;gap:2px;margin-right:12px;min-width:80px}.detailed-event-item .event-date{color:#2c3e50;font-size:12px;font-weight:600;line-height:1}.detailed-event-item .event-time{color:#7f8c8d;font-size:11px;font-weight:500;line-height:1}.detailed-event-item .event-arrow{color:#bdc3c7;font-size:16px;margin-left:8px;transition:all .3s ease}.detailed-event-item:hover .event-arrow{color:#3498db;transform:translateX(3px)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.modal{animation:modalSlideIn .2s ease-out;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;margin:0 auto;max-height:90vh;max-width:1200px;overflow:hidden;width:95%}@media (max-width:1400px){.modal{max-width:1000px}}@media (max-width:1200px){.modal{max-width:900px;width:90%}}@media (max-width:992px){.modal{max-width:700px;width:85%}}@media (max-width:768px){.modal{max-width:500px;width:95%}}@media (max-width:576px){.modal{margin:10px;max-width:none;width:98%}}.modal-content{background:#fff;border-radius:0 0 8px 8px;max-height:calc(90vh - 140px);overflow-y:auto}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0;color:#333;display:flex;justify-content:space-between;padding:20px 30px}.modal-header h2{color:#333;font-size:20px;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:20px;height:30px;justify-content:center;padding:5px;transition:all .2s ease;width:30px}.modal-close:hover{background:#e0e0e0;color:#333}.modal-body{word-wrap:break-word;background:#fff;max-height:calc(85vh - 180px);overflow-x:hidden;overflow-y:auto;padding:25px 30px;word-break:break-word}.modal-loading{color:#7f8c8d}.modal-error,.modal-loading{font-size:16px;padding:40px;text-align:center}.modal-error{color:#e74c3c}.event-details{display:flex;flex-direction:column;gap:25px}.detail-section{background:#f8f9fa;border-radius:10px;padding:20px}.detail-section h4{border-bottom:2px solid #3498db;color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 15px;padding-bottom:8px}.detail-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.detail-item{display:flex;flex-direction:column;gap:5px}.detail-item label{color:#34495e;font-size:14px;font-weight:600}.detail-item span{background:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#2c3e50;font-size:14px;padding:8px 12px;word-break:break-word}.edit-form{grid-gap:20px;display:grid;gap:20px;margin-bottom:25px}.form-group{margin-bottom:16px}.form-group label{font-size:14px;font-weight:500}.form-group input,.form-group select{background:#fff;border:1px solid #ddd;border-radius:6px;box-sizing:border-box;max-width:100%;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{border-color:#007bff}.exam-info-grid{grid-gap:16px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:20px 0;overflow:hidden;padding:20px}@media (max-width:768px){.exam-info-grid{gap:12px;grid-template-columns:1fr;padding:15px}}@media (max-width:576px){.exam-info-grid{margin:15px 0;padding:12px}}.info-item{background:#fafafa;border:1px solid #e0e0e0;border-radius:6px;display:flex;flex-direction:column;gap:6px;min-width:0;overflow:hidden;padding:12px 16px}.info-label{color:#666;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.info-label,.info-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-value{color:#333;font-size:15px;font-weight:400;line-height:1.3}.warning-icon{margin-bottom:15px}.exam-details{background:#fafafa;border:1px solid #e0e0e0;border-radius:6px;padding:20px}.exam-details p{color:#333;line-height:1.4}.exam-details strong{color:#333;font-weight:500}.warning-text{background:#e74c3c1a;border-left:4px solid #e74c3c;border-radius:8px;font-style:italic;margin-top:20px;padding:15px}.modal-actions{background:#fafafa;border-top:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin:0 -30px -25px;padding:20px 30px}@media (max-width:576px){.modal-actions{gap:8px;margin:0 -20px -20px;padding:15px 20px}.modal-body{padding:20px}.modal-header{padding:15px 20px}}.btn-danger,.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;min-width:100px;padding:10px 20px;transition:background-color .2s ease}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#545b62}.btn-danger{background:#dc3545}.btn-danger:hover{background:#c82333}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#95a5a6;cursor:pointer;display:flex;font-size:24px;height:35px;justify-content:center;padding:5px;transition:all .3s ease;width:35px}.close-btn:hover{background:#e74c3c;color:#fff;transform:scale(1.1)}@media (max-width:1024px) and (min-width:769px){.panel-title{font-size:18px}.top-bar{padding:9px 15px}.stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.stat-card{gap:10px;padding:12px}.stat-icon{font-size:28px;min-width:40px}.stat-number{font-size:22px}.stat-label{font-size:12px}.detailed-events-section{padding:19px}.events-header h2{font-size:19px}.filter-btn{font-size:12px;padding:6px 12px}.category-filter-dropdown{gap:8px}.category-filter-dropdown label{font-size:13px}.category-select{font-size:13px;min-width:180px;padding:8px 12px}.detailed-event-item{gap:14px;padding:14px}.detailed-event-item .event-icon{font-size:22px;min-width:28px}.detailed-event-item .event-title{font-size:15px}.detailed-event-item .event-description{font-size:14px}.modal-content{max-width:600px;width:85%}.content-card{padding:20px}.content-card h2{font-size:20px}.main-content{padding:25px 20px}}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:inline-block!important}.panel-title{font-size:14px}.top-bar{padding:7px 10px}.top-bar-left,.top-bar-right{gap:8px}.logout-btn,.user-info{font-size:12px}.logout-btn{padding:5px 10px}.stats-grid{gap:10px;grid-template-columns:1fr}.stat-card{gap:10px;padding:14px}.stat-icon{font-size:28px;min-width:38px}.stat-number{font-size:20px}.stat-label{font-size:11px}.detailed-events-section{margin-top:17px;padding:14px}.events-header{align-items:flex-start;flex-direction:column;gap:12px}.events-header h2{font-size:16px}.category-filters{gap:5px;justify-content:flex-start;width:100%}.filter-btn{font-size:10px;padding:4px 8px}.category-filter-dropdown{align-items:flex-start;flex-direction:column;gap:8px;width:100%}.category-filter-dropdown label{font-size:12px}.category-select{font-size:12px;min-width:auto;padding:8px 12px;width:100%}.detailed-event-item{gap:8px;padding:8px}.detailed-event-item .event-icon{font-size:16px;min-width:19px}.detailed-event-item .event-title{font-size:12px}.detailed-event-item .event-description{font-size:11px}.modal{margin:10px;max-height:95vh;max-width:none;width:98%}.modal-content{max-height:calc(95vh - 120px);padding:15px}.modal-header{padding:15px 20px}.modal-header h3{font-size:16px}.edit-form{gap:15px}.form-group input,.form-group select{font-size:16px;padding:14px 16px}.exam-info-grid{gap:12px;grid-template-columns:1fr;padding:15px}.info-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:10px}.detail-grid{gap:12px;grid-template-columns:1fr}.detail-item{padding:10px}.detail-label{font-size:12px}.detail-value{font-size:13px}.modal-actions{flex-direction:column;gap:8px;padding:12px 16px}.modal-actions button{font-size:14px;padding:10px;width:100%}.content-card{margin-bottom:16px;padding:16px}.content-card h2{font-size:18px;margin-bottom:12px}.main-content{padding:16px 12px}}@media (max-width:480px){.desktop-only{display:none!important}.mobile-only{display:inline-block!important}.panel-title{font-size:12px}.top-bar{padding:5px 8px}.sidebar-toggle{font-size:14px;padding:5px 8px}.user-info{display:none}.logout-btn{font-size:10px;padding:4px 8px}.stat-card{gap:8px;padding:10px}.stat-icon{font-size:24px;min-width:34px}.stat-number{font-size:17px}.stat-label{font-size:10px}.detailed-events-section{padding:10px}.events-header h2{font-size:14px}.modal{border-radius:0;height:100vh;margin:0;max-height:100vh;width:100%}.modal-content{max-height:calc(100vh - 100px);padding:12px}.modal-header{padding:12px 15px}.edit-form{gap:12px}.form-group input,.form-group select{font-size:16px;padding:12px 14px}.exam-info-grid{gap:10px;padding:12px}.info-item{padding:8px}.info-label{font-size:11px}.info-value{font-size:13px}.filter-btn{font-size:9px;padding:3px 6px}.detailed-event-item{gap:8px;padding:7px}.detailed-event-item .event-icon{font-size:16px;min-width:20px}.detailed-event-item .event-title{font-size:12px}.detailed-event-item .event-description{font-size:11px}.modal-content{margin:2px;width:98%}.modal-header{padding:10px 12px}.modal-header h3{font-size:14px}.modal-body{padding:12px}.detail-item{padding:8px}.detail-label{font-size:11px}.detail-value{font-size:12px}.main-content{padding:12px 8px}.exams-table tr{border-radius:10px;margin-bottom:12px;padding:16px}.exams-table td{font-size:13px;padding:6px 0 6px 85px}.exams-table td:before{font-size:10px;top:6px;width:75px}.exam-name{margin-bottom:6px;padding-bottom:10px!important}.exam-name .name{font-size:14px}.exam-name .type{font-size:10px;padding:3px 6px}.exam-level .level-badge{font-size:10px;padding:4px 8px}.exam-students .student-count{font-size:11px;padding:4px 8px}.exam-actions{gap:10px;margin-top:12px;padding-top:12px}.action-btn{border-radius:8px;font-size:16px;min-height:42px;min-width:42px;padding:10px}.action-label{font-size:10px}.content-card{padding:12px}.content-card h2{font-size:16px}}.content-header-with-stats{align-items:flex-start;display:flex;gap:30px;justify-content:space-between;margin-bottom:30px}.content-header-with-stats .content-header{flex:1 1;margin-bottom:0}.exam-stats-grid{display:flex;flex-shrink:0;gap:20px}.exam-stats-card{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #0000;border-radius:12px;box-shadow:0 4px 15px #00000014;min-width:150px;padding:10px 12px;text-align:center;transition:all .3s ease;width:150px}.exam-stats-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.exam-stats-card.total-exams{border-color:#3498db}.exam-stats-card.total-students{border-color:#27ae60}.exam-stats-card.average-score{border-color:#f39c12}.exam-stats-card.max-students{border-color:#9b59b6}.exam-stats-card.latest-exam{border-color:#e74c3c}.exam-stats-card .stats-value{font-size:1.4rem;font-weight:700;line-height:1.1;margin-bottom:2px}.exam-stats-card .stats-value.total-exams{color:#3498db}.exam-stats-card .stats-value.total-students{color:#27ae60}.exam-stats-card .stats-value.average-score{color:#f39c12}.exam-stats-card .stats-value.max-students{color:#9b59b6;font-size:1.2rem;font-weight:600}.exam-stats-card .stats-value.latest-exam{color:#e74c3c;font-size:1.2rem;font-weight:600}.exam-stats-card .stats-label{color:#7f8c8d;font-size:.8rem;font-weight:600;letter-spacing:.5px;line-height:1;text-transform:uppercase}.exams-container{margin-top:20px}.exams-table-container{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.exams-table{border-collapse:collapse;font-size:14px;width:100%}.exams-table td{border-bottom:1px solid #ecf0f1;border-right:1px solid #ecf0f1;padding:15px 12px;vertical-align:middle}.exams-table td:last-child{border-right:none}.exams-table th{background:#34495e;border-bottom:2px solid #2c3e50;border-right:1px solid #2c3e50;color:#fff;font-weight:600;padding:15px 12px;text-align:left}.exams-table th:last-child{border-right:none}.exams-table tr:hover{background-color:#f8f9fa}.exam-name .exam-info{display:flex;flex-direction:column;gap:4px}.exam-name .name{color:#2c3e50;font-size:15px;font-weight:600}.exam-name .type{background:#ecf0f1;border-radius:12px;color:#7f8c8d;display:inline-block;font-size:12px;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.exam-school .school-info{display:flex;flex-direction:column;gap:4px}.exam-school .school-name{color:#2c3e50;font-weight:500}.exam-school .location{color:#7f8c8d;font-size:12px}.exam-level .level-badge{background:#3498db;border-radius:15px;color:#fff;font-size:12px;font-weight:500;padding:4px 12px}.exam-students .student-count{color:#27ae60;font-size:16px;font-weight:600}.exam-date .date-info{display:flex;flex-direction:column;gap:2px}.exam-date .date{color:#2c3e50;font-weight:500}.exam-date .time{color:#7f8c8d;font-size:12px}.exam-actions{display:flex;gap:15px;justify-content:center}.action-btn-container{align-items:center;display:flex;flex-direction:column;gap:4px}.action-btn{align-items:center;background:none;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:8px;transition:all .3s ease}.action-label{color:#7f8c8d;font-size:11px;font-weight:500;text-align:center;white-space:nowrap}.edit-btn:hover{background:#f39c12;transform:scale(1.1)}.delete-btn:hover{background:#e74c3c;transform:scale(1.1)}.no-exams{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:60px 20px;text-align:center}.no-exams-icon{font-size:48px;margin-bottom:20px}.no-exams h3{color:#2c3e50;font-size:20px;margin-bottom:10px}.no-exams p{color:#7f8c8d;font-size:14px;line-height:1.6;margin:0 auto;max-width:400px}.loading-container{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ecf0f1;border-radius:50%;border-top-color:#3498db;height:40px;margin-bottom:15px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-container p{color:#7f8c8d;font-size:14px}.form-group{margin-bottom:20px}.form-group label{color:#2c3e50;display:block;margin-bottom:8px}.form-group input,.form-group select{border:2px solid #ecf0f1;border-radius:8px;font-size:14px;padding:12px;transition:border-color .3s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:#3498db}.form-info{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;margin:20px 0;padding:15px}.form-info p{color:#2c3e50;font-size:14px;margin:5px 0}.delete-confirmation{padding:20px 0;text-align:center}.warning-icon{font-size:48px;margin-bottom:20px}.delete-confirmation h4{color:#e74c3c;font-size:18px;margin-bottom:20px}.exam-details{background:#f8f9fa;border-radius:8px;margin:20px 0;padding:15px;text-align:left}.exam-details p{color:#2c3e50;font-size:14px;margin:8px 0}.warning-text{color:#e74c3c;font-size:14px;font-weight:500;margin-top:15px}.btn-danger{background:#e74c3c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-danger:hover{background:#c0392b;transform:translateY(-2px)}@media (max-width:1024px){.content-header-with-stats{flex-direction:column;gap:20px}.exam-stats-grid{justify-content:center}}@media (max-width:768px){.content-header-with-stats{gap:15px}.exam-stats-grid{flex-direction:row;flex-wrap:wrap;gap:15px;justify-content:center}.exam-stats-card{max-width:220px;min-width:180px;width:calc(50% - 7.5px)}.exams-table-container{overflow:visible}.exams-table{display:block;width:100%}.exams-table thead{display:none}.exams-table tbody{display:block;width:100%}.exams-table tr{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:block;margin-bottom:15px;padding:15px}.exams-table td{border:none;border-bottom:1px solid #f0f0f0;display:block;padding:8px 0;text-align:left}.exams-table td:last-child{border-bottom:none;padding-top:15px}.exams-table td:before{color:#333;content:attr(data-label) ": ";display:inline-block;font-weight:700;width:100px}.exam-actions{text-align:center}.exam-actions:before{display:none}.action-btn-container{display:inline-block;margin:0 10px}.action-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;margin:5px;padding:8px 12px}.action-btn.edit-btn:hover{background:#007bff;color:#fff}.action-btn.delete-btn:hover{background:#dc3545;color:#fff}.action-label{display:block;font-size:10px;margin-top:2px}}.action-btn-container-horizontal{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.action-btn-with-text{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;color:#2c3e50;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:6px;justify-content:center;min-width:80px;padding:6px 12px;transition:all .3s ease}.action-btn-with-text:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.action-btn-with-text.view-btn:hover{background:#3498db;border-color:#3498db;color:#fff}.action-btn-with-text.edit-btn:hover{background:#f39c12;border-color:#f39c12;color:#fff}.action-btn-with-text.delete-btn:hover{background:#e74c3c;border-color:#e74c3c;color:#fff}.btn-icon{font-size:14px}.btn-text{font-size:11px;font-weight:600}@media (max-width:768px){.action-btn-container-horizontal{flex-direction:column;gap:4px}.action-btn-with-text{min-width:auto;width:100%}}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{animation:slideUp .5s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:500px;padding:40px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{margin-bottom:30px;text-align:center}.auth-header h1{color:#333;font-size:2rem;font-weight:700;margin-bottom:10px}.auth-header p{color:#666;font-size:1rem;line-height:1.5}.auth-form{gap:20px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}@media (max-width:768px){.form-row{grid-template-columns:1fr}}.form-group label{color:#333;font-size:.9rem;font-weight:600}.form-group input,.form-group select{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:10px;font-size:1rem;padding:12px 16px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input::placeholder{color:#adb5bd}.auth-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:10px;padding:15px 30px;transition:all .3s ease}.auth-button:hover{box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.auth-button:active{transform:translateY(0)}.auth-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.auth-footer{border-top:1px solid #e1e5e9;margin-top:30px;padding-top:20px;text-align:center}.auth-footer p{color:#666;font-size:.9rem;margin:10px 0}.auth-footer a{color:#667eea;font-weight:600;text-decoration:none;transition:color .3s ease}.auth-footer a:hover{color:#764ba2;text-decoration:underline}.error-messages{background:#f8d7da;border:1px solid #f5c6cb;border-radius:10px;margin-bottom:20px;padding:15px}.error-message{align-items:center;color:#721c24;display:flex;font-size:.9rem;gap:8px;margin:5px 0}.error-message:before{content:"⚠️";font-size:1rem}.success-messages{background:#d4edda;border:1px solid #c3e6cb;border-radius:10px;margin-bottom:20px;padding:15px}.success-message{align-items:center;color:#155724;display:flex;font-size:.9rem;gap:8px;margin:5px 0}.success-message:before{content:"✅";font-size:1rem}.plan-selection{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.plan-option{background:#fff;border:2px solid #e1e5e9;border-radius:15px;cursor:pointer;padding:20px;text-align:center;transition:all .3s ease}.plan-option:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-2px)}.plan-option.selected{background:#667eea0d;border-color:#667eea}.plan-name{font-size:.9rem;font-weight:700;margin-bottom:8px}.plan-price{font-size:1.3rem;font-weight:700;margin:8px 0}.plan-duration{color:#666;font-size:.8rem}.payment-summary{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:15px;margin-bottom:30px;padding:20px}.payment-summary h3{color:#333;font-size:1.2rem;margin-bottom:15px}.summary-row{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:10px}.summary-row.total{border-top:1px solid #dee2e6;font-size:1.1rem;font-weight:700;margin-top:10px;padding-top:10px}@media (max-width:768px){.auth-container{padding:10px}.auth-card{border-radius:15px;padding:30px 20px}.auth-header h1{font-size:1.5rem}.plan-selection{grid-template-columns:1fr 1fr}}@media (max-width:480px){.plan-selection{grid-template-columns:1fr}.auth-button{font-size:1rem;padding:12px 20px}}.card-input{position:relative}.card-input:after{content:"💳";font-size:1.2rem;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.security-badge{align-items:center;background:#fff3cd;border:1px solid #ffeaa7;border-radius:10px;display:flex;font-size:.9rem;gap:10px;margin:20px 0;padding:15px}.security-badge .icon{font-size:1.5rem}.security-badge .text{flex:1 1}.security-badge .title{font-weight:700;margin-bottom:5px}.feature-list{list-style:none;margin:0;padding:0}.feature-list li{align-items:center;display:flex;font-size:.9rem;gap:8px;padding:8px 0}.feature-list li:before{color:#007bff;content:"✓";font-size:1rem;font-weight:700}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-2px)}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-weight:700}
/*# sourceMappingURL=main.60e64c67.css.map*/