body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--bg-primary);background:#fffffff2;border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);padding:var(--spacing-lg) 0;position:sticky;top:0;z-index:100}.navbar-content{margin:0 auto;max-width:1200px;padding:0 var(--spacing-lg);text-align:center}.navbar-title{color:var(--primary-color);font-size:var(--font-size-4xl);font-weight:700;line-height:1.2;margin:0}.navbar-subtitle{color:var(--text-secondary);font-size:var(--font-size-lg);font-weight:500;margin:var(--spacing-xs) 0 0 0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px;-webkit-transition:background .3s ease;transition:background .3s ease}::-webkit-scrollbar-thumb:hover{background:#ffffff80}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.auth-form-enter{animation:fadeIn .6s ease-out}.auth-button-loading{animation:pulse 2s infinite}.glass-effect{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #fff3;box-shadow:0 20px 40px #0000001a}.loading-shimmer{animation:shimmer 2s infinite;background:linear-gradient(90deg,#ffffff1a,#ffffff4d 50%,#ffffff1a);background-size:1000px 100%}@media (max-width:600px){.auth-container{padding:16px!important}.auth-card{margin:16px!important;min-width:auto!important;padding:24px!important}.auth-title{font-size:2rem!important}}.auth-input:focus-within{outline:2px solid #ffffff80;outline-offset:2px}.auth-button{overflow:hidden;position:relative}.auth-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.auth-button:hover:before{left:100%}.error-message{animation:slideInFromBottom .3s ease-out}.success-state{background:linear-gradient(135deg,#4caf50,#45a049)}@media (prefers-contrast:high){.auth-button,.auth-input{border:2px solid #fff!important}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.auth-background{background:#fff!important}.auth-card{border:1px solid #000!important;box-shadow:none!important}}.button{background-color:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;margin-top:10px;padding:10px 20px;transition:background-color .3s,box-shadow .3s}.button:hover{background-color:var(--primary-hover);box-shadow:0 2px 8px #2563eb33}.sessionName{color:#000;font-size:30px;font-weight:700}:root{--primary-color:#2563eb;--primary-hover:#1d4ed8;--primary-light:#3b82f6;--primary-dark:#1e40af;--secondary-color:#64748b;--secondary-hover:#475569;--secondary-light:#94a3b8;--bg-primary:#fff;--bg-secondary:#fff;--bg-tertiary:#fff;--text-primary:#1e293b;--text-secondary:#64748b;--text-muted:#94a3b8;--success-color:#10b981;--success-hover:#059669;--warning-color:#f59e0b;--warning-hover:#d97706;--error-color:#ef4444;--error-hover:#dc2626;--info-color:#06b6d4;--info-hover:#0891b2;--border-color:#e2e8f0;--border-hover:#cbd5e1;--shadow-sm:0 1px 2px 0 #00000005;--shadow-md:0 2px 4px -1px #0000000a,0 1px 2px -1px #00000005;--shadow-lg:0 4px 8px -2px #0000000f,0 2px 4px -1px #00000008;--shadow-xl:0 8px 16px -4px #00000014,0 4px 8px -2px #0000000a;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--font-family:"Inter","Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem}*{box-sizing:border-box}body{background-color:#fff!important;background:#fff!important;color:#1e293b;font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}.modern-card{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 2px 4px -1px #0000000a,0 1px 2px -1px #00000005;box-shadow:var(--shadow-md);margin-bottom:24px;margin-bottom:var(--spacing-lg);padding:24px;padding:var(--spacing-lg);transition:all .2s ease-in-out}.modern-card,.modern-card:hover{background:#fff!important;background:var(--bg-primary)!important;background-color:#fff!important}.modern-card:hover{box-shadow:0 4px 8px -2px #0000000f,0 2px 4px -1px #00000008;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.modern-card-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);margin-bottom:24px;margin-bottom:var(--spacing-lg);padding-bottom:16px;padding-bottom:var(--spacing-md)}.modern-card-title{color:#1e293b;color:var(--text-primary);font-size:1.25rem;font-size:var(--font-size-xl);font-weight:600;margin:0}.modern-card-subtitle{color:#64748b;color:var(--text-secondary);margin:4px 0 0;margin:var(--spacing-xs) 0 0 0}.modern-btn,.modern-card-subtitle{font-size:.875rem;font-size:var(--font-size-sm)}.modern-btn{align-items:center;border:none;border-radius:8px;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-weight:500;gap:8px;gap:var(--spacing-sm);justify-content:center;overflow:hidden;padding:12px 24px;position:relative;text-decoration:none;transition:all .2s ease-in-out}.modern-btn:disabled{cursor:not-allowed;opacity:.6}.modern-btn-primary{background:#2563eb;background:var(--primary-color);box-shadow:0 1px 2px 0 #00000005;box-shadow:var(--shadow-sm);color:#fff}.modern-btn-primary:hover:not(:disabled){background:#1d4ed8;background:var(--primary-hover);box-shadow:0 2px 4px -1px #0000000a,0 1px 2px -1px #00000005;box-shadow:var(--shadow-md);transform:translateY(-1px)}.modern-btn-secondary{background:#fff;background:var(--bg-primary);border:1px solid #e2e8f0;border:1px solid var(--border-color);color:#1e293b;color:var(--text-primary)}.modern-btn-secondary:hover:not(:disabled){background:#fff;background:var(--bg-tertiary);border-color:#cbd5e1;border-color:var(--border-hover)}.modern-btn-success{background:#10b981;background:var(--success-color);color:#fff}.modern-btn-success:hover:not(:disabled){background:#059669;background:var(--success-hover)}.modern-btn-warning{background:#f59e0b;background:var(--warning-color);color:#fff}.modern-btn-warning:hover:not(:disabled){background:#d97706;background:var(--warning-hover)}.modern-btn-error{background:#ef4444;background:var(--error-color);color:#fff}.modern-btn-error:hover:not(:disabled){background:#dc2626;background:var(--error-hover)}.modern-input{background:#fff;background:var(--bg-primary);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);color:#1e293b;color:var(--text-primary);font-size:1rem;font-size:var(--font-size-base);padding:12px 16px;transition:all .2s ease-in-out;width:100%}.modern-input:focus{border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;outline:none}.modern-input::placeholder{color:#94a3b8;color:var(--text-muted)}.modern-form-group{margin-bottom:24px;margin-bottom:var(--spacing-lg)}.modern-form-label{color:#1e293b;color:var(--text-primary);display:block;font-weight:500;margin-bottom:8px;margin-bottom:var(--spacing-sm)}.modern-alert,.modern-form-label{font-size:.875rem;font-size:var(--font-size-sm)}.modern-alert{border:1px solid;border-radius:8px;border-radius:var(--radius-md);margin-bottom:24px;margin-bottom:var(--spacing-lg);padding:16px;padding:var(--spacing-md)}.modern-alert-success{background:#10b9811a;border-color:#10b981;border-color:var(--success-color);color:#059669;color:var(--success-hover)}.modern-alert-warning{background:#f59e0b1a;border-color:#f59e0b;border-color:var(--warning-color);color:#d97706;color:var(--warning-hover)}.modern-alert-error{background:#ef44441a;border-color:#ef4444;border-color:var(--error-color);color:#dc2626;color:var(--error-hover)}.modern-alert-info{background:#06b6d41a;border-color:#06b6d4;border-color:var(--info-color);color:#0891b2;color:var(--info-hover)}.modern-chip{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;gap:4px;gap:var(--spacing-xs);letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.modern-chip-success{background:#10b9811a;color:#059669;color:var(--success-hover)}.modern-chip-warning{background:#f59e0b1a;color:#d97706;color:var(--warning-hover)}.modern-chip-error{background:#ef44441a;color:#dc2626;color:var(--error-hover)}.modern-chip-info{background:#06b6d41a;color:#0891b2;color:var(--info-hover)}.modern-chip-default{background:#64748b1a;color:#475569;color:var(--secondary-hover)}.modern-avatar{align-items:center;background:#2563eb;background:var(--primary-color);border-radius:50%;color:#fff;display:inline-flex;font-size:.875rem;font-size:var(--font-size-sm);font-weight:600;height:40px;justify-content:center;width:40px}.modern-avatar-sm{font-size:.75rem;font-size:var(--font-size-xs);height:32px;width:32px}.modern-avatar-lg{font-size:1rem;font-size:var(--font-size-base);height:48px;width:48px}.modern-grid{grid-gap:24px;grid-gap:var(--spacing-lg);display:grid;gap:24px;gap:var(--spacing-lg)}.modern-grid-1{grid-template-columns:1fr}.modern-grid-2{grid-template-columns:repeat(2,1fr)}.modern-grid-3{grid-template-columns:repeat(3,1fr)}.modern-grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:768px){.modern-grid-2,.modern-grid-3,.modern-grid-4{grid-template-columns:1fr}}@media (min-width:769px) and (max-width:1024px){.modern-grid-3,.modern-grid-4{grid-template-columns:repeat(2,1fr)}}.modern-progress{background:#fff;background:var(--bg-tertiary);border-radius:4px;height:8px;margin:8px 0;margin:var(--spacing-sm) 0;overflow:hidden;width:100%}.modern-progress-bar{background:#2563eb;background:var(--primary-color);border-radius:4px;height:100%;transition:width .3s ease-in-out}.modern-spinner{animation:spin 1s linear infinite;border:2px solid #2563eb1a;border-left:2px solid var(--primary-color);border-radius:50%;display:inline-block;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.modern-container{margin:0 auto;max-width:1200px;padding:0 24px;padding:0 var(--spacing-lg)}.modern-container-sm{max-width:768px}.modern-container-lg{max-width:1400px}.modern-section{padding:48px 0;padding:var(--spacing-2xl) 0}.modern-section-sm{padding:32px 0;padding:var(--spacing-xl) 0}.modern-section-lg{padding:64px 0}.modern-title{font-size:1.875rem;font-size:var(--font-size-3xl);font-weight:700;line-height:1.2;margin-bottom:24px;margin-bottom:var(--spacing-lg)}.modern-subtitle,.modern-title{color:#1e293b;color:var(--text-primary)}.modern-subtitle{font-size:1.25rem;font-size:var(--font-size-xl);font-weight:600;margin-bottom:16px;margin-bottom:var(--spacing-md)}.modern-text{color:#64748b;color:var(--text-secondary);font-size:1rem;font-size:var(--font-size-base);line-height:1.6}.modern-text-sm{font-size:.875rem;font-size:var(--font-size-sm)}.modern-text-muted{color:#94a3b8;color:var(--text-muted)}.modern-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff;background:var(--bg-primary);background:#fffffff2;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);padding:16px 0;padding:var(--spacing-md) 0;position:sticky;top:0;z-index:100}.modern-header-content{align-items:center;display:flex;justify-content:space-between}.modern-logo{color:#2563eb;color:var(--primary-color);font-size:1.25rem;font-size:var(--font-size-xl);font-weight:700;text-decoration:none}.modern-nav{align-items:center;display:flex;gap:24px;gap:var(--spacing-lg)}.modern-nav-link{color:#64748b;color:var(--text-secondary);font-weight:500;text-decoration:none;transition:color .2s ease-in-out}.modern-nav-link.active,.modern-nav-link:hover{color:#2563eb;color:var(--primary-color)}.modern-page{background:#fff;background:var(--bg-secondary);min-height:100vh}.modern-page-header{background:#fff;background:var(--bg-primary);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);padding:32px 0;padding:var(--spacing-xl) 0}.modern-page-content{padding:48px 0;padding:var(--spacing-2xl) 0}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.d-flex{display:flex}.d-block{display:block}.d-inline{display:inline}.d-none{display:none}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.gap-1{gap:4px;gap:var(--spacing-xs)}.gap-2{gap:8px;gap:var(--spacing-sm)}.gap-3{gap:12px}.gap-4{gap:16px;gap:var(--spacing-md)}.gap-5{gap:20px}.gap-6{gap:24px;gap:var(--spacing-lg)}.gap-sm{gap:8px;gap:var(--spacing-sm)}.gap-md{gap:16px;gap:var(--spacing-md)}.gap-lg{gap:24px;gap:var(--spacing-lg)}.mt-0{margin-top:0}.mt-sm{margin-top:8px;margin-top:var(--spacing-sm)}.mt-md{margin-top:16px;margin-top:var(--spacing-md)}.mt-lg{margin-top:24px;margin-top:var(--spacing-lg)}.mt-xl{margin-top:32px;margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:8px;margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:16px;margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:24px;margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:32px;margin-bottom:var(--spacing-xl)}.p-0{padding:0}.p-1{padding:4px;padding:var(--spacing-xs)}.p-2{padding:8px;padding:var(--spacing-sm)}.p-3{padding:12px}.p-4{padding:16px;padding:var(--spacing-md)}.p-5{padding:20px}.p-6{padding:24px;padding:var(--spacing-lg)}.p-sm{padding:8px;padding:var(--spacing-sm)}.p-md{padding:16px;padding:var(--spacing-md)}.p-lg{padding:24px;padding:var(--spacing-lg)}.p-xl{padding:32px;padding:var(--spacing-xl)}.mb-1{margin-bottom:4px;margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:8px;margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px;margin-bottom:var(--spacing-md)}.mb-5{margin-bottom:20px}.mb-6{margin-bottom:24px;margin-bottom:var(--spacing-lg)}.page-container{background:#fff!important;background-color:#fff!important;min-height:100vh;padding:48px 24px;padding:var(--spacing-2xl) var(--spacing-lg)}.page-header{margin-bottom:48px;margin-bottom:var(--spacing-2xl)}.page-title{color:#1e293b;color:var(--text-primary);font-size:1.875rem;font-size:var(--font-size-3xl);font-weight:700;line-height:1.2;margin-bottom:16px;margin-bottom:var(--spacing-md)}.page-subtitle{color:#64748b;color:var(--text-secondary);font-size:1.125rem;font-size:var(--font-size-lg);line-height:1.5;margin:0}body{background-color:#fff;color:var(--text-primary);font-family:var(--font-family);margin:0;padding:0}.App{background:#fff;display:flex;flex-direction:column;min-height:100vh}.sidebar{background-color:#fff;margin-bottom:20px;padding:20px}.sidebar nav ul{list-style:none;margin:0;padding:0}.sidebar nav ul li{margin-bottom:15px}.sidebar nav ul li a{border-radius:4px;color:var(--primary-color);display:block;font-size:16px;padding:8px 12px;text-decoration:none;transition:background-color .3s,color .3s}.sidebar nav ul li a:hover{background-color:#fff;border:1px solid var(--border-color)}.main-content{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}.training-section{background-color:#fff;flex-grow:1;overflow-y:auto;padding:20px}.section{box-shadow:0 1px 3px #0000001a}.header,.section{background-color:#fff;border-radius:4px;margin-bottom:20px;padding:15px}.header{border:1px solid var(--border-color);color:var(--text-primary);text-align:left}.button:active{background-color:#3700b3;box-shadow:0 1px 4px #0003}input[type=file],input[type=number],input[type=text]{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;display:block;margin:8px 0;padding:8px;width:100%}
/*# sourceMappingURL=main.44f736de.css.map*/