/* Arif Education plugin - GENERATED from login.css by tools/scope_css.py. Do not edit by hand:
   edit the original file and run the tool again. Every rule is scoped to .arif-edu (the widget wrapper). */
/* 1. Tags inside the widgets start from browser defaults (themes and Elementor change some of them). */
.arif-edu :is(a,img,h1,h2,h3,h4,h5,h6,p,ul,ol,li,label,input,form,section,main,address):is(a,img,h1,h2,h3,h4,h5,h6,p,ul,ol,li,label,input,form,section,main,address) { all: revert; }
.arif-edu button:where(:not([class*="fa-"])) { all: revert; }
.arif-edu button:where([class*="fa-"]) { border-radius: revert; box-shadow: revert; border: revert; margin: revert; min-height: revert; line-height: revert; }
/* Root font size back to the browser default (some themes change it); no Elementor space around the widget. */
html:has(.arif-edu-login) { font-size: 100%; }
.elementor-widget.elementor-widget.elementor-widget-arif-edu-login-page { margin-block: 0; }
/* 2. Text settings a theme may pass down; the website expects browser defaults. */
.arif-edu { box-sizing: border-box; font-weight: 400; font-style: normal; letter-spacing: normal; word-spacing: normal; text-transform: none; text-indent: 0; text-align: left; text-shadow: none; }
/* 3. The original stylesheet, scoped. */
.arif-edu.arif-edu *,
.arif-edu,
.arif-edu.arif-edu *::before,
.arif-edu::before,
.arif-edu.arif-edu *::after,
.arif-edu::after { box-sizing: border-box; }
html:has(.arif-edu) { -webkit-text-size-adjust: 100%; }
.arif-edu.arif-edu h1,
.arif-edu.arif-edu h2,
.arif-edu.arif-edu h3,
.arif-edu.arif-edu p { margin: 0; }
.arif-edu.arif-edu img { display: inline-block; }
.arif-edu.arif-edu { color: #000000; font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
body:has(.arif-edu-login) { margin: 0; padding: 0; background-color: #f8fafc; height: 100vh; overflow-y: auto; position: relative; }
.arif-edu.arif-edu .login-fullscreen-white { position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw !important; height: 100vh !important; overflow: auto; background: linear-gradient(135deg, #f5f7fa 0%, #e4e8f0 100%); display: flex; justify-content: center; align-items: center; z-index: 1000; }
.arif-edu.arif-edu .floating-shapes-white { position: fixed; width: 100%; height: 100%; overflow: hidden; z-index: 1; pointer-events: none; }
.arif-edu.arif-edu .shape-white { position: absolute; border-radius: 50%; animation: arif-float 15s ease-in-out infinite; opacity: 0.08; filter: blur(1px); }
.arif-edu.arif-edu #shape-white1 { width: 300px; height: 300px; top: 10%; left: 10%; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); animation-delay: 0s; }
.arif-edu.arif-edu #shape-white2 { width: 200px; height: 200px; top: 70%; right: 15%; background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%); animation-delay: 3s; }
.arif-edu.arif-edu #shape-white3 { width: 150px; height: 150px; bottom: 20%; left: 20%; background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%); animation-delay: 6s; }
.arif-edu.arif-edu #shape-white4 { width: 250px; height: 250px; top: 30%; right: 20%; background: linear-gradient(135deg, #ff758c 0%, #ff7eb3 100%); animation-delay: 9s; }
.arif-edu.arif-edu .login-form-container-white { position: relative; z-index: 10; width: 100%; max-width: 1000px; padding: 3rem; margin: 1.5rem auto; background: rgba(255, 255, 255, 0.98); border-radius: 16px; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12); backdrop-filter: blur(8px); border: 1px solid rgba(255, 255, 255, 0.3); display: flex; }
.arif-edu.arif-edu .login-left-side { flex: 1; padding-right: 2rem; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(0, 0, 0, 0.1); }
.arif-edu.arif-edu .login-logo-container-white { text-align: center; margin-bottom: 2rem; }
.arif-edu.arif-edu .login-logo-white { max-width: 150px; max-height: 150px; }
.arif-edu.arif-edu .login-description { text-align: center; padding: 0 1rem; }
.arif-edu.arif-edu .login-description h3 { font-size: 1.5rem; color: #000000; margin-bottom: 1rem; }
.arif-edu.arif-edu .login-description p { color: #000000; font-size: 0.95rem; line-height: 1.6; }
.arif-edu.arif-edu .login-right-side { flex: 1; padding-left: 2rem; }
.arif-edu.arif-edu .form-header-white { margin-bottom: 1.5rem; text-align: center; }
.arif-edu.arif-edu .form-header-white h2 { font-size: 1.8rem; color: #1e3a8a; margin-bottom: 0.5rem; font-weight: 700; letter-spacing: -0.5px; }
.arif-edu.arif-edu .form-header-white p { color: #000000; font-size: 0.95rem; line-height: 1.5; }
.arif-edu.arif-edu #login { width: 100%; }
.arif-edu.arif-edu #login .form-group { margin-bottom: 1.5rem; position: relative; }
.arif-edu.arif-edu #login input[type="text"],
.arif-edu.arif-edu #login input[type="password"] { width: 100%; padding: 0.8rem 1rem 0.8rem 4rem; border: 2px solid #536eae; border-radius: 10px; font-size: 0.95rem; transition: all 0.3s ease; background-color: #ffffff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02); }
.arif-edu.arif-edu #login input[type="text"]:hover,
.arif-edu.arif-edu #login input[type="password"]:hover { border-color: #64748b; }
.arif-edu.arif-edu #login input[type="text"]:focus,
.arif-edu.arif-edu #login input[type="password"]:focus { outline: none; border-color: #1e3a8a; border-width: 2px; box-shadow: 0 0 0 4px rgba(37, 75, 163, 0.15); background-color: #ffffff; }
.arif-edu.arif-edu .password-container { position: relative; width: 100%; }
.arif-edu.arif-edu .password-container input[type="password"],
.arif-edu.arif-edu .password-container input[type="text"] { width: 100%; padding: 0.8rem 3.5rem 0.8rem 4rem !important; }
.arif-edu.arif-edu .toggle-password { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); cursor: pointer; color: #64748b; z-index: 3; font-size: 1.1rem; padding: 5px; background: transparent; border: none; transition: color 0.2s ease; }
.arif-edu.arif-edu .toggle-password:hover { color: #254ba3; }
.arif-edu.arif-edu .toggle-password:focus { outline: none; color: #254ba3; }
.arif-edu.arif-edu .input-icon { position: absolute; left: 20px; top: 50%; transform: translateY(-50%); color: #64748b; z-index: 2; font-size: 1rem; }
.arif-edu.arif-edu .remember-me { display: flex; align-items: center; margin: 1rem 0; }
.arif-edu.arif-edu .remember-me input[type="checkbox"] { margin-right: 0.5rem; width: 1rem; height: 1rem; accent-color: #254ba3; }
.arif-edu.arif-edu .remember-me label { color: #4a5568; font-size: 0.9rem; cursor: pointer; }
.arif-edu.arif-edu #loginbtn { width: 100%; padding: 0.8rem; border: none; border-radius: 10px; background: linear-gradient(135deg, #1e3a8a 0%, #254ba3 100%); color: white; font-size: 0.95rem; font-weight: 600; cursor: pointer; transition: all 0.3s ease; margin-top: 1rem; box-shadow: 0 2px 5px rgba(79, 70, 229, 0.2); }
.arif-edu.arif-edu #loginbtn:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(79, 70, 229, 0.3); }
.arif-edu.arif-edu #loginbtn:active { transform: translateY(0); }
.arif-edu.arif-edu .message { padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem; font-size: 0.9rem; }
.arif-edu.arif-edu .error-message { background: #fff5f5; color: #ef4444; border-left: 4px solid #e53e3e; }
.arif-edu.arif-edu .info-message { background: #ebf8ff; color: #3182ce; border-left: 4px solid #3182ce; }
.arif-edu.arif-edu .login-links-white { margin-top: 2rem; text-align: center; font-size: 0.9rem; }
.arif-edu.arif-edu .login-links-white a { color: #000000; text-decoration: none; transition: color 0.2s ease; display: inline-block; margin: 0 0.5rem; padding: 0.25rem 0; position: relative; }
.arif-edu.arif-edu .login-links-white a:after { content: ""; position: absolute; width: 0; height: 2px; bottom: 0; left: 0; background-color: #667eea; transition: width 0.3s ease; }
.arif-edu.arif-edu .login-links-white a:hover { color: #1e3a8a; }
.arif-edu.arif-edu .login-links-white a:hover:after { width: 100%; }
.arif-edu.arif-edu .footer-bottom-branding { position: fixed; bottom: 20px; left: 0; width: 100%; z-index: 1001; display: flex; justify-content: center; align-items: center; pointer-events: none; }
.arif-edu.arif-edu .branding-logo { display: flex; align-items: center; gap: 10px; background: rgba(255, 255, 255, 0.9); padding: 10px 20px; border-radius: 30px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.2); pointer-events: auto; transition: all 0.3s ease; }
.arif-edu.arif-edu .branding-logo:hover { transform: translateY(-2px); box-shadow: 0 6px 25px rgba(0, 0, 0, 0.2); background: rgba(255, 255, 255, 0.95); }
.arif-edu.arif-edu .branding-text { color: #333; font-size: 14px; font-weight: 500; letter-spacing: 0.5px; }
.arif-edu.arif-edu .branding-gradient-left,
.arif-edu.arif-edu .branding-gradient-right { position: absolute; top: 50%; transform: translateY(-50%); width: 200px; height: 60px; pointer-events: none; z-index: -1; }
.arif-edu.arif-edu .branding-gradient-left { left: calc(50% - 150px); background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3)); }
.arif-edu.arif-edu .branding-gradient-right { right: calc(50% - 150px); background: linear-gradient(90deg, rgba(255, 255, 255, 0.3), transparent); }
.arif-edu.arif-edu .branding-logo img { height: 24px; width: auto; transition: transform 0.3s ease; }
.arif-edu.arif-edu .branding-logo:hover img { transform: scale(1.05); }
@keyframes arif-float {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(3deg); }
}
@keyframes arif-fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes arif-shake {
    0%, 100% { transform: translateX(0); }
    20%, 60% { transform: translateX(-5px); }
    40%, 80% { transform: translateX(5px); }
}
@media (max-width: 768px) {
.arif-edu.arif-edu .login-form-container-white { flex-direction: column; padding: 1.5rem; margin: 1rem; max-width: 95%; }
.arif-edu.arif-edu .login-left-side { padding-right: 0; padding-bottom: 2rem; border-right: none; border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
.arif-edu.arif-edu .login-right-side { padding-left: 0; }
.arif-edu.arif-edu .login-logo-white { max-width: 100px; max-height: 100px; }
.arif-edu.arif-edu .form-header-white h2 { font-size: 1.5rem; }
.arif-edu.arif-edu .footer-bottom-branding { bottom: 15px; }
.arif-edu.arif-edu .branding-logo { padding: 8px 16px; border-radius: 25px; }
.arif-edu.arif-edu .branding-text { font-size: 12px; }
.arif-edu.arif-edu .branding-logo img { height: 20px; }
.arif-edu.arif-edu .branding-gradient-left,
.arif-edu.arif-edu .branding-gradient-right { width: 100px; }
.arif-edu.arif-edu .branding-gradient-left { left: calc(50% - 100px); }
.arif-edu.arif-edu .branding-gradient-right { right: calc(50% - 100px); }
}
@media (max-width: 576px) {
.arif-edu.arif-edu .login-links-white { flex-direction: column; gap: 0.5rem; }
.arif-edu.arif-edu .login-links-white a { margin: 0.25rem 0; }
.arif-edu.arif-edu .footer-bottom-branding { bottom: 10px; }
.arif-edu.arif-edu .branding-logo { padding: 6px 12px; border-radius: 20px; }
.arif-edu.arif-edu .branding-text { font-size: 11px; }
.arif-edu.arif-edu .branding-logo img { height: 18px; }
.arif-edu.arif-edu .branding-gradient-left,
.arif-edu.arif-edu .branding-gradient-right { display: none; }
}
.arif-edu.arif-edu #page-footer,
.arif-edu.arif-edu .moodle-footer { display: none !important; }
.arif-edu.arif-edu #loginbtn:disabled,
.arif-edu.arif-edu #submitBtn:disabled { opacity: 0.7; cursor: not-allowed; transform: none !important; pointer-events: none; }
.arif-edu.arif-edu #loginbtn:disabled:hover,
.arif-edu.arif-edu #submitBtn:disabled:hover { transform: none !important; box-shadow: none !important; }
.arif-edu.arif-edu .fa-spinner { animation: arif-spin 1s linear infinite; }
@keyframes arif-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
.arif-edu.arif-edu .login-hint { font-size: 0.8rem; color: #718096; margin-top: 0.25rem; margin-left: 1rem; }
.arif-edu.arif-edu .login-hint i { margin-right: 0.25rem; font-size: 0.7rem; }
.arif-edu.arif-edu .form-header-white h1 { font-size: 1.8rem; color: #1e3a8a; margin-bottom: 0.5rem; font-weight: 700; letter-spacing: -0.5px; }
.arif-edu.arif-edu .login-description .login-welcome { font-size: 1.5rem; color: #000000; margin-bottom: 1rem; font-weight: 500; line-height: 1.2; }
.arif-edu.arif-edu button.toggle-password { line-height: 1; }
.arif-edu.arif-edu .toggle-password:focus-visible { outline: 2px solid #254ba3; outline-offset: 2px; border-radius: 4px; }
.arif-edu.arif-edu #login input[type="text"],
.arif-edu.arif-edu #login input[type="password"] { font-family: inherit; color: #1a202c; }
.arif-edu.arif-edu #login input::placeholder { color: #6b7280; }
.arif-edu.arif-edu #login input[aria-invalid="true"] { border-color: #dc2626; }
.arif-edu.arif-edu #loginbtn { font-family: inherit; }
.arif-edu.arif-edu #loginbtn:focus-visible { outline: 3px solid rgba(37, 75, 163, 0.45); outline-offset: 2px; }
.arif-edu.arif-edu .login-links-white a:focus-visible,
.arif-edu.arif-edu .branding-logo:focus-visible { outline: 2px solid #254ba3; outline-offset: 3px; }
.arif-edu.arif-edu .message:focus { outline: none; }
.arif-edu.arif-edu .branding-logo { text-decoration: none; }
.arif-edu.arif-edu .visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.arif-edu.arif-edu .skip-link { position: fixed; top: 12px; left: 12px; z-index: 2000; padding: 10px 16px; border-radius: 8px; background: #1e3a8a; color: #ffffff; font-weight: 600; text-decoration: none; transform: translateY(-200%); }
.arif-edu.arif-edu .skip-link:focus { transform: none; }
@media (max-width: 768px) {
.arif-edu.arif-edu .login-fullscreen-white { align-items: flex-start; padding: 1rem 0 6rem; }
.arif-edu.arif-edu .login-form-container-white { margin: 1rem auto; }
}
@media (prefers-reduced-motion: reduce) {
.arif-edu.arif-edu .shape-white,
.arif-edu.arif-edu #loginbtn,
.arif-edu.arif-edu .branding-logo { animation: none !important; transition: none !important; }
}
.arif-edu.arif-edu { font-size: 0.9375rem; line-height: 1.5; }
.arif-edu.arif-edu [hidden] { display: none !important; }
.arif-edu.arif-edu button.toggle-password { border: 0; background: transparent; }
.arif-edu.arif-edu .login-logo-white { width: auto; height: auto; }
