.login-container[data-v-f425999c]{min-height:100vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;overflow:hidden}.login-background[data-v-f425999c]{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea,#764ba2);z-index:-1}.login-wrapper[data-v-f425999c]{width:100%;max-width:1200px;height:600px;background:#fff;border-radius:20px;-webkit-box-shadow:0 20px 60px rgba(0,0,0,.1);box-shadow:0 20px 60px rgba(0,0,0,.1);margin:20px}.brand-section[data-v-f425999c],.login-wrapper[data-v-f425999c]{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden}.brand-section[data-v-f425999c]{-webkit-box-flex:1;-ms-flex:1;flex:1;background:linear-gradient(135deg,#1e4079,#2c5aa0);-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:40px;position:relative}.brand-section[data-v-f425999c]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url(../img/bg.d3f430d8.png) no-repeat 50%;background-size:cover;opacity:.1;z-index:1}.brand-content[data-v-f425999c]{text-align:center;color:#fff;position:relative;z-index:2}.logo-container[data-v-f425999c]{margin-bottom:30px}.logo[data-v-f425999c]{width:120px;height:120px;border-radius:50%;border:4px solid hsla(0,0%,100%,.2);-webkit-box-shadow:0 10px 30px rgba(0,0,0,.2);box-shadow:0 10px 30px rgba(0,0,0,.2)}.brand-text[data-v-f425999c]{margin-bottom:40px}.school-name-khmer[data-v-f425999c]{font-size:2.5rem;font-weight:600;margin-bottom:10px;font-family:KhmerOSmuollight,sans-serif;text-shadow:0 2px 4px rgba(0,0,0,.3)}.school-name-english[data-v-f425999c]{font-size:1.5rem;font-weight:400;margin-bottom:15px;text-transform:uppercase;letter-spacing:2px;opacity:.9}.school-tagline[data-v-f425999c]{font-size:1.1rem;opacity:.8;font-style:italic}.brand-features[data-v-f425999c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:20px}.feature-item[data-v-f425999c]{gap:15px;padding:15px 20px;background:hsla(0,0%,100%,.1);border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2)}.feature-icon[data-v-f425999c],.feature-item[data-v-f425999c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.feature-icon[data-v-f425999c]{font-size:1.5rem;width:40px;height:40px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background:hsla(0,0%,100%,.2);border-radius:50%}.login-section[data-v-f425999c]{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:40px;background:#fff}.login-card[data-v-f425999c]{width:100%;max-width:400px}.login-header[data-v-f425999c]{text-align:center;margin-bottom:40px}.login-title[data-v-f425999c]{font-size:2rem;font-weight:700;color:#1e4079;margin-bottom:10px}.login-subtitle[data-v-f425999c]{font-size:1rem;color:#666;margin:0}.login-form[data-v-f425999c]{margin-bottom:30px}.form-group[data-v-f425999c]{margin-bottom:25px}.form-label[data-v-f425999c]{display:block;font-size:.9rem;font-weight:600;color:#333;margin-bottom:8px}.form-item[data-v-f425999c]{margin-bottom:0}.custom-input .el-input__inner[data-v-f425999c]{height:50px;border-radius:10px;border:2px solid #e1e5e9;padding-left:45px;font-size:1rem;-webkit-transition:all .3s ease;transition:all .3s ease}.custom-input .el-input__inner[data-v-f425999c]:focus{border-color:#1e4079;-webkit-box-shadow:0 0 0 3px rgba(30,64,121,.1);box-shadow:0 0 0 3px rgba(30,64,121,.1)}.custom-input .el-input__prefix[data-v-f425999c]{left:15px}.input-icon[data-v-f425999c]{font-size:1.2rem;color:#999}.form-actions[data-v-f425999c]{margin-top:30px}.login-button[data-v-f425999c]{width:100%;height:50px;border-radius:10px;font-size:1.1rem;font-weight:600;background:linear-gradient(135deg,#1e4079,#2c5aa0);border:none;-webkit-box-shadow:0 4px 15px rgba(30,64,121,.3);box-shadow:0 4px 15px rgba(30,64,121,.3);-webkit-transition:all .3s ease;transition:all .3s ease}.login-button[data-v-f425999c]:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-box-shadow:0 6px 20px rgba(30,64,121,.4);box-shadow:0 6px 20px rgba(30,64,121,.4)}.login-button[data-v-f425999c]:active{-webkit-transform:translateY(0);transform:translateY(0)}.login-footer[data-v-f425999c]{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid #e1e5e9}.footer-text[data-v-f425999c]{font-size:.8rem;color:#999;margin:0}@media(max-width:768px){.login-wrapper[data-v-f425999c]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:auto;margin:10px}.brand-section[data-v-f425999c]{padding:30px 20px}.school-name-khmer[data-v-f425999c]{font-size:2rem}.school-name-english[data-v-f425999c]{font-size:1.2rem}.brand-features[data-v-f425999c]{display:none}.login-section[data-v-f425999c]{padding:30px 20px}.login-card[data-v-f425999c]{max-width:100%}}@media(max-width:480px){.login-wrapper[data-v-f425999c]{border-radius:0;margin:0;height:100vh}.brand-section[data-v-f425999c]{padding:20px}.logo[data-v-f425999c]{width:80px;height:80px}.school-name-khmer[data-v-f425999c]{font-size:1.5rem}.school-name-english[data-v-f425999c]{font-size:1rem}.login-section[data-v-f425999c]{padding:20px}}.form-group[data-v-f425999c]{-webkit-animation:fadeInUp-data-v-f425999c .6s ease forwards;animation:fadeInUp-data-v-f425999c .6s ease forwards;opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}.form-group[data-v-f425999c]:first-child{-webkit-animation-delay:.1s;animation-delay:.1s}.form-group[data-v-f425999c]:nth-child(2){-webkit-animation-delay:.2s;animation-delay:.2s}.form-actions[data-v-f425999c]{-webkit-animation-delay:.3s;animation-delay:.3s}@-webkit-keyframes fadeInUp-data-v-f425999c{to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUp-data-v-f425999c{to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.el-button.is-loading .el-loading-spinner .circular[data-v-f425999c]{width:20px;height:20px}