.ace-front{max-width:1000px;margin:25px auto;padding:24px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box}.ace-front input,.ace-front select,.ace-front textarea{width:100%;padding:10px;box-sizing:border-box;margin:5px 0}.ace-front button{padding:10px 18px;border:0;border-radius:6px;cursor:pointer}.ace-front table{width:100%;border-collapse:collapse}.ace-front th,.ace-front td{padding:10px;border:1px solid #ddd;text-align:left}.ace-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.ace-course-grid article{border:1px solid #ddd;padding:16px;border-radius:8px}.ace-success{padding:20px;background:#f0fff4;border:1px solid #9ae6b4;border-radius:8px}.ace-certificate{text-align:center;max-width:900px;margin:30px auto;padding:80px 40px;border:10px double #222;background:#fff}.ace-certificate h1{font-size:36px}.ace-certificate h2{font-size:30px}
.ace-login-dashboard{text-align:center;max-width:760px}.ace-login-dashboard .ace-subtitle{color:#666}.ace-auth-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.ace-auth-card{background:#fff!important;border:1px solid #ddd!important;text-align:left!important;padding:22px!important;display:flex;flex-direction:column;gap:7px;box-shadow:0 3px 12px rgba(0,0,0,.06)}.ace-auth-card strong{font-size:20px}.ace-auth-card span{color:#666}.ace-modal{display:none;position:fixed;inset:0;z-index:99999}.ace-modal.is-open{display:block}.ace-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55)}.ace-modal-dialog{position:relative;background:#fff;width:min(620px,calc(100% - 30px));max-height:90vh;overflow:auto;margin:5vh auto;padding:28px;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.25);box-sizing:border-box}.ace-modal-close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:28px;cursor:pointer}.ace-modal-dialog input,.ace-modal-dialog select{width:100%;box-sizing:border-box;padding:10px;margin:5px 0}.ace-error{padding:10px;background:#fff5f5;border:1px solid #feb2b2;border-radius:6px;color:#9b2c2c}.ace-registration-modal{max-width:680px}@media(max-width:640px){.ace-auth-actions{grid-template-columns:1fr}}

/* ACE Exam registration form - clean modern layout */
.ace-registration-form{background:#fff;color:#182033;padding:8px 4px 4px;max-width:760px;margin:0 auto;font-family:inherit}
.ace-registration-heading{text-align:center;margin:0 0 24px;padding:4px 0 16px;border-bottom:2px solid #6246d3}
.ace-registration-heading h2{margin:0;font-size:30px;line-height:1.25;font-weight:700;color:#111827}
.ace-registration-heading p{margin:10px 0 12px;color:#526071;font-size:15px}
.ace-registration-heading span{display:block;width:52px;height:4px;margin:0 auto;background:#6246d3;border-radius:4px}
.ace-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
.ace-form-field{grid-column:1/-1;margin:0}
.ace-form-field.ace-form-half{grid-column:auto}
.ace-form-field label{display:block;font-size:15px;font-weight:600;margin:0 0 7px;color:#182033}
.ace-form-field label em{color:#d7263d;font-style:normal}
.ace-form-field input,.ace-form-field select{width:100%;height:48px;border:2px solid #7551d7!important;border-radius:8px!important;background:#fff;padding:0 13px!important;box-sizing:border-box;font-size:15px;outline:none;box-shadow:none!important}
.ace-form-field input:focus,.ace-form-field select:focus{border-color:#5732c6!important;box-shadow:0 0 0 2px rgba(98,70,211,.10)!important}
.ace-form-field small{display:block;margin-top:6px;color:#667085;font-size:12px}
.ace-name-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ace-file-wrap{height:48px;border:2px solid #7551d7;border-radius:8px;display:flex;align-items:center;padding:0 8px 0 13px;box-sizing:border-box;position:relative;overflow:hidden;color:#667085}
.ace-file-wrap input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.ace-file-button{margin-left:auto!important;position:relative;z-index:2;border:1px solid #7551d7!important;background:#fff!important;color:#5732c6!important;border-radius:7px!important;padding:8px 14px!important;font-weight:600;pointer-events:none}
.ace-form-submit{grid-column:1/-1;margin-top:2px}
.ace-form-submit button{width:100%;height:48px;border-radius:7px!important;background:#6246d3!important;color:#fff!important;font-size:16px;font-weight:600;box-shadow:none!important}
.ace-form-submit button:hover{background:#5732c6!important}
.ace-registration-login-note{text-align:center;margin-top:14px;color:#526071;font-size:14px}
.ace-registration-login-note a{color:#6246d3;text-decoration:none;font-weight:600}
.ace-registration-modal{max-width:820px!important;padding:28px!important}
@media(max-width:700px){.ace-form-grid{grid-template-columns:1fr}.ace-form-field.ace-form-half{grid-column:1}.ace-name-pair{grid-template-columns:1fr}.ace-registration-heading h2{font-size:24px}.ace-registration-modal{padding:20px!important}}


/* ACE Exam combined student login / registration portal */
.ace-auth-portal{max-width:620px!important;text-align:center}
.ace-auth-header{margin-bottom:22px}
.ace-auth-header h2{margin:0 0 7px;font-size:30px;color:#111827}
.ace-auth-portal .ace-subtitle{margin:0;color:#667085}
.ace-login-box{background:#fff;border:1px solid #e4e7ec;border-radius:12px;padding:24px;text-align:left;box-shadow:0 4px 18px rgba(16,24,40,.06)}
.ace-login-box h3{margin:0 0 18px;text-align:center;font-size:22px;color:#111827}
.ace-login-field{margin-bottom:16px}
.ace-login-field label{display:block;font-weight:600;margin-bottom:7px;color:#182033}
.ace-login-field input{width:100%;height:48px;border:2px solid #7551d7!important;border-radius:8px!important;padding:0 13px!important;box-sizing:border-box;font-size:15px;outline:none;box-shadow:none!important}
.ace-login-field input:focus{border-color:#5732c6!important;box-shadow:0 0 0 2px rgba(98,70,211,.10)!important}
.ace-login-submit,.ace-register-button{width:100%;height:48px;border:0!important;border-radius:7px!important;background:#6246d3!important;color:#fff!important;font-size:16px;font-weight:600;cursor:pointer}
.ace-register-prompt{margin-top:22px;padding-top:22px;border-top:1px solid #e4e7ec}
.ace-register-prompt p{margin:4px 0;color:#182033}
.ace-register-prompt p:first-child{font-size:18px;font-weight:700}
.ace-register-help{font-size:13px;color:#667085!important;line-height:1.5;margin:8px auto 14px!important;max-width:500px}
.ace-register-button{max-width:240px;display:inline-block}
@media(max-width:640px){.ace-auth-header h2{font-size:24px}.ace-login-box{padding:18px}.ace-register-button{max-width:none}}


/* ACE Exam 1.5.2 - Professional student registration UI */
.ace-registration-modal{width:min(900px,calc(100% - 24px))!important;max-width:900px!important;margin:2.5vh auto!important;padding:0!important;background:#f7f8fc!important;border-radius:18px!important;overflow:hidden!important;border:1px solid #e7e9f2;box-shadow:0 28px 80px rgba(15,23,42,.28)!important}
.ace-registration-modal .ace-modal-close{z-index:20;right:18px;top:16px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.92);color:#475467;font-size:25px;line-height:35px;box-shadow:0 4px 14px rgba(15,23,42,.12);transition:.2s}
.ace-registration-modal .ace-modal-close:hover{background:#fff;color:#5b35d5;transform:rotate(90deg)}
.ace-registration-form{max-width:none!important;margin:0!important;padding:0!important;background:#f7f8fc!important;color:#182033}
.ace-registration-heading{position:relative;margin:0!important;padding:34px 54px 27px!important;border:0!important;text-align:left!important;background:linear-gradient(135deg,#f5f2ff 0%,#fff 70%);overflow:hidden}
.ace-registration-heading:before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:linear-gradient(90deg,#5b35d5,#8b5cf6,#6d4aff)}
.ace-registration-heading:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-85px;top:-95px;background:rgba(111,78,255,.08)}
.ace-registration-heading h2{position:relative;z-index:1;margin:0!important;font-size:30px!important;line-height:1.2!important;letter-spacing:-.5px;color:#101828!important;font-weight:750!important}
.ace-registration-heading p{position:relative;z-index:1;margin:9px 0 0!important;color:#667085!important;font-size:14px!important;line-height:1.6}
.ace-registration-heading span{position:relative;z-index:1;width:56px!important;height:4px!important;margin:15px 0 0!important;background:#6843df!important}
.ace-form-grid{padding:26px 54px 0!important;grid-template-columns:1fr 1fr!important;gap:18px 22px!important}
.ace-form-field{background:#fff;border:1px solid #e4e7ec;border-radius:12px;padding:15px 16px 14px;box-shadow:0 2px 8px rgba(16,24,40,.035);transition:border-color .2s,box-shadow .2s,transform .2s}
.ace-form-field:hover{border-color:#d5cdf7;box-shadow:0 5px 16px rgba(16,24,40,.055)}
.ace-form-field.ace-form-half{grid-column:auto}
.ace-form-field label{font-size:13px!important;font-weight:700!important;color:#344054!important;margin-bottom:8px!important;letter-spacing:.1px}
.ace-form-field label em{color:#d92d20!important}
.ace-form-field input,.ace-form-field select{height:46px!important;border:1px solid #d0d5dd!important;border-radius:8px!important;background:#fff!important;padding:0 12px!important;color:#101828!important;font-size:14px!important;transition:.2s}
.ace-form-field input::placeholder{color:#98a2b3}
.ace-form-field input:hover,.ace-form-field select:hover{border-color:#b7a8ef!important}
.ace-form-field input:focus,.ace-form-field select:focus{border-color:#6d45df!important;box-shadow:0 0 0 4px rgba(109,69,223,.10)!important}
.ace-form-field small{margin-top:7px!important;color:#667085!important;font-size:11.5px!important;line-height:1.45}
.ace-name-pair{gap:10px!important}
.ace-file-wrap{height:46px!important;border:1px dashed #b7a8ef!important;border-radius:8px!important;background:#faf9ff!important;padding-left:12px!important}
.ace-file-wrap:before{content:"↑";display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;margin-right:8px;border-radius:7px;background:#eee9ff;color:#6843df;font-weight:800;font-size:16px}
.ace-file-button{height:32px!important;padding:0 12px!important;border:1px solid #d6cdf8!important;background:#fff!important;color:#5b35d5!important;border-radius:7px!important;font-size:12px!important}
.ace-form-submit{grid-column:1/-1!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;margin-top:2px!important}
.ace-form-submit button{height:50px!important;border-radius:9px!important;background:linear-gradient(135deg,#5b35d5,#7549e8)!important;color:#fff!important;font-size:15px!important;font-weight:700!important;letter-spacing:.1px;box-shadow:0 8px 18px rgba(91,53,213,.22)!important;transition:transform .2s,box-shadow .2s,filter .2s}
.ace-form-submit button:hover{background:linear-gradient(135deg,#4d2abf,#6638dc)!important;transform:translateY(-1px);box-shadow:0 11px 22px rgba(91,53,213,.28)!important}
.ace-registration-login-note{margin:0!important;padding:17px 20px 24px!important;font-size:13px!important;color:#667085!important;background:#f7f8fc}
.ace-registration-login-note a{color:#5b35d5!important;font-weight:700!important}
@media(max-width:760px){.ace-registration-heading{padding:30px 22px 24px!important}.ace-registration-heading h2{font-size:24px!important}.ace-form-grid{grid-template-columns:1fr!important;padding:18px 18px 0!important}.ace-form-field.ace-form-half{grid-column:1}.ace-registration-modal{margin:1.5vh auto!important;width:min(96%,900px)!important}}
@media(max-width:480px){.ace-registration-heading h2{font-size:21px!important}.ace-registration-heading p{font-size:13px!important}.ace-form-grid{gap:12px!important}.ace-form-field{padding:13px!important}.ace-name-pair{grid-template-columns:1fr!important}.ace-registration-modal .ace-modal-close{right:10px;top:10px;width:34px;height:34px;font-size:22px;line-height:31px}}

/* ACE Exam 1.5.3 - Reference-style registration form */
.ace-registration-modal{width:min(760px,calc(100% - 28px))!important;max-width:760px!important;margin:4vh auto!important;border-radius:6px!important;background:#fff!important;box-shadow:0 18px 55px rgba(0,0,0,.20)!important}
.ace-registration-form{background:#fff!important;color:#333!important;font-family:Arial,Helvetica,sans-serif!important}
.ace-registration-heading{background:#fff!important;padding:26px 28px 10px!important;text-align:center!important;border:0!important;margin:0!important}
.ace-registration-heading:before,.ace-registration-heading:after{display:none!important}
.ace-registration-heading h2{font-size:31px!important;line-height:1.25!important;font-weight:400!important;letter-spacing:0!important;color:#171717!important;margin:0!important}
.ace-registration-heading p,.ace-registration-heading span{display:none!important}
.ace-form-grid{display:grid!important;grid-template-columns:1fr!important;gap:0!important;padding:0 28px 10px!important}
.ace-form-field,.ace-form-field:hover{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important;transform:none!important;margin:0 0 25px!important}
.ace-form-field.ace-form-half{grid-column:1/-1!important}
.ace-form-field label{font-size:16px!important;font-weight:400!important;color:#4a4a4a!important;display:block!important;margin:0 0 9px!important;letter-spacing:0!important}
.ace-form-field label em{color:#d32f2f!important}
.ace-form-field input,.ace-form-field select{height:61px!important;width:100%!important;border:2px solid #7650c8!important;border-radius:8px!important;background:#fff!important;color:#444!important;padding:0 12px!important;font-size:16px!important;font-weight:400!important;box-sizing:border-box!important;box-shadow:none!important}
.ace-form-field input::placeholder{color:#9aa0a6!important;opacity:1!important}
.ace-form-field input:hover,.ace-form-field select:hover{border-color:#7650c8!important}
.ace-form-field input:focus,.ace-form-field select:focus{border-color:#7650c8!important;box-shadow:0 0 0 1px rgba(118,80,200,.08)!important}
.ace-name-pair{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important}
.ace-form-field small{font-size:12px!important;color:#777!important;margin-top:6px!important}
.ace-file-wrap{height:61px!important;border:2px solid #7650c8!important;border-radius:8px!important;background:#fff!important;padding:0 10px!important;color:#777!important}
.ace-file-wrap:before{display:none!important}
.ace-file-button{height:40px!important;border:1px solid #7650c8!important;background:#fff!important;color:#7650c8!important;border-radius:6px!important;padding:0 14px!important;font-size:14px!important}
.ace-form-submit{grid-column:1/-1!important;margin:0 0 10px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.ace-form-submit button{height:54px!important;border-radius:7px!important;background:#7650c8!important;color:#fff!important;font-size:16px!important;font-weight:600!important;box-shadow:none!important;transform:none!important}
.ace-form-submit button:hover{background:#6842ba!important;transform:none!important;box-shadow:none!important}
.ace-registration-login-note{background:#fff!important;padding:0 28px 28px!important;margin:0!important;text-align:center!important;font-size:14px!important;color:#666!important}
.ace-registration-login-note a{color:#7650c8!important}
@media(max-width:600px){.ace-registration-modal{width:calc(100% - 16px)!important;margin:2vh auto!important}.ace-registration-heading{padding:22px 18px 8px!important}.ace-registration-heading h2{font-size:24px!important}.ace-form-grid{padding:0 18px 8px!important}.ace-name-pair{grid-template-columns:1fr!important;gap:0!important}.ace-form-field{margin-bottom:20px!important}.ace-form-field input,.ace-form-field select,.ace-file-wrap{height:55px!important}.ace-registration-login-note{padding:0 18px 22px!important}}

/* ACE Exam 1.5.4 - single-line full-name fields */
.ace-registration-form .ace-form-field.ace-form-half{grid-column:1/-1!important}
.ace-registration-form .ace-name-pair{display:block!important}
.ace-registration-form .ace-name-pair input{width:100%!important}

.ace-error{padding:12px 15px;border:1px solid #d63638;background:#fff5f5;color:#8a1f1f;border-radius:6px;margin:15px 0}.ace-success{padding:12px 15px;border-radius:6px}

/* ACE Exam 1.7.1 - Fix full registration form visibility */
.ace-registration-modal{
    max-height:90vh!important;
    height:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
}
.ace-registration-modal .ace-registration-form{
    min-height:0!important;
}
.ace-registration-modal .ace-form-grid{
    display:grid;
    width:100%;
    box-sizing:border-box;
}
@media(max-width:700px){
    .ace-registration-modal{
        max-height:94vh!important;
        width:calc(100% - 16px)!important;
        margin:3vh auto!important;
    }
}

/* ACE Exam 1.7.2 - Compact standard registration spacing */
.ace-registration-modal{
    max-height:92vh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
}
.ace-registration-modal .ace-registration-form{
    padding:0!important;
}
.ace-registration-modal .ace-registration-heading{
    padding:18px 24px 8px!important;
}
.ace-registration-modal .ace-registration-heading h2{
    font-size:26px!important;
}
.ace-registration-modal .ace-form-grid{
    padding:4px 24px 8px!important;
    gap:8px!important;
    row-gap:8px!important;
}
.ace-registration-modal .ace-form-field{
    margin:0!important;
    padding:7px 0!important;
}
.ace-registration-modal .ace-form-field label{
    margin-bottom:4px!important;
    line-height:1.25!important;
}
.ace-registration-modal .ace-form-field input,
.ace-registration-modal .ace-form-field select,
.ace-registration-modal .ace-file-wrap{
    min-height:42px!important;
    height:42px!important;
    padding:8px 10px!important;
    margin:0!important;
    box-sizing:border-box!important;
}
.ace-registration-modal .ace-form-field small{
    display:block!important;
    margin-top:3px!important;
    line-height:1.2!important;
}
.ace-registration-modal .ace-form-submit{
    margin-top:8px!important;
    padding-top:4px!important;
}
.ace-registration-modal .ace-registration-login-note{
    padding:8px 24px 16px!important;
}
@media(max-width:700px){
    .ace-registration-modal{
        max-height:94vh!important;
    }
    .ace-registration-modal .ace-registration-heading{
        padding:15px 16px 6px!important;
    }
    .ace-registration-modal .ace-registration-heading h2{
        font-size:22px!important;
    }
    .ace-registration-modal .ace-form-grid{
        padding:2px 16px 6px!important;
        gap:5px!important;
        row-gap:5px!important;
    }
    .ace-registration-modal .ace-form-field{
        padding:5px 0!important;
    }
    .ace-registration-modal .ace-form-field input,
    .ace-registration-modal .ace-form-field select,
    .ace-registration-modal .ace-file-wrap{
        min-height:40px!important;
        height:40px!important;
    }
    .ace-registration-modal .ace-registration-login-note{
        padding:6px 16px 12px!important;
    }
}

/* ACE Exam 1.7.3 - compact student registration form */
.ace-registration-modal .ace-form-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    row-gap:0!important;
    padding:0 24px 8px!important;
}
.ace-registration-modal .ace-form-grid .ace-form-field{
    margin:0 0 10px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    border-radius:0!important;
}
.ace-registration-modal .ace-form-grid .ace-form-field label{
    display:block!important;
    margin:0 0 4px!important;
    padding:0!important;
    line-height:1.2!important;
    font-size:14px!important;
}
.ace-registration-modal .ace-form-grid .ace-form-field input,
.ace-registration-modal .ace-form-grid .ace-form-field select{
    display:block!important;
    width:100%!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:7px 10px!important;
    box-sizing:border-box!important;
}
.ace-registration-modal .ace-form-grid .ace-form-field small{
    margin:2px 0 0!important;
    line-height:1.15!important;
}
.ace-registration-modal .ace-form-grid .ace-form-submit{
    margin:2px 0 8px!important;
    padding:0!important;
}
.ace-registration-modal .ace-form-grid .ace-form-submit button{
    width:100%!important;
    height:48px!important;
    min-height:48px!important;
    margin:0!important;
}
.ace-registration-modal .ace-registration-login-note{
    margin:0!important;
    padding:6px 24px 12px!important;
}
@media(max-width:700px){
    .ace-registration-modal .ace-form-grid{
        padding:0 16px 6px!important;
    }
    .ace-registration-modal .ace-form-grid .ace-form-field{
        margin-bottom:8px!important;
    }
    .ace-registration-modal .ace-registration-login-note{
        padding:5px 16px 10px!important;
    }
}

/* ACE Exam 1.7.4 - force compact registration modal */
.ace-registration-modal .ace-form-grid{gap:0!important;row-gap:0!important}
.ace-registration-modal .ace-form-grid .ace-form-field{margin-bottom:5px!important;padding:0!important}
.ace-registration-modal .ace-form-grid .ace-form-field label{margin-bottom:2px!important}
.ace-registration-modal .ace-form-grid .ace-form-field input,
.ace-registration-modal .ace-form-grid .ace-form-field select{height:38px!important;min-height:38px!important}
.ace-registration-modal .ace-form-grid .ace-form-field small{margin-top:1px!important;line-height:1.05!important}
.ace-registration-modal .ace-form-grid .ace-form-submit{margin:2px 0 5px!important}
.ace-registration-modal .ace-form-grid .ace-form-submit button{height:44px!important;min-height:44px!important}
.ace-registration-modal{max-height:calc(100vh - 12px)!important;margin:6px auto!important;overflow-y:auto!important}

/* ACE Exam 1.7.5 - extra compact registration spacing */
.ace-registration-modal{
    max-height:calc(100vh - 8px)!important;
    margin:4px auto!important;
}
.ace-registration-modal .ace-registration-heading{
    padding:10px 18px 4px!important;
}
.ace-registration-modal .ace-registration-heading h2{
    font-size:22px!important;
    line-height:1.1!important;
    margin:0 0 3px!important;
}
.ace-registration-modal .ace-registration-heading p{
    margin:0!important;
    font-size:11px!important;
    line-height:1.15!important;
}
.ace-registration-modal .ace-form-grid{
    padding:0 18px 3px!important;
    gap:0!important;
    row-gap:0!important;
}
.ace-registration-modal .ace-form-grid .ace-form-field{
    margin:0 0 2px!important;
    padding:0!important;
}
.ace-registration-modal .ace-form-grid .ace-form-field label{
    margin:0 0 1px!important;
    line-height:1.05!important;
    font-size:12px!important;
}
.ace-registration-modal .ace-form-grid .ace-form-field input,
.ace-registration-modal .ace-form-grid .ace-form-field select{
    height:34px!important;
    min-height:34px!important;
    padding:4px 8px!important;
    font-size:13px!important;
    line-height:1!important;
}
.ace-registration-modal .ace-form-grid .ace-form-field small{
    margin:0!important;
    line-height:1!important;
    font-size:9px!important;
}
.ace-registration-modal .ace-form-grid .ace-form-submit{
    margin:2px 0 3px!important;
    padding:0!important;
}
.ace-registration-modal .ace-form-grid .ace-form-submit button{
    height:38px!important;
    min-height:38px!important;
    padding:5px 12px!important;
    font-size:13px!important;
}
.ace-registration-modal .ace-registration-login-note{
    padding:3px 18px 7px!important;
    margin:0!important;
    font-size:11px!important;
}

.ace-error{padding:12px 15px;border:1px solid #d63638;background:#fff5f5;color:#8a1f1f;border-radius:6px;margin:12px 0}.ace-success{padding:12px 15px;border:1px solid #b7dfc1;background:#f1fff4;color:#146c2e;border-radius:6px;margin:12px 0}

.ace-online-exam .ace-page-title{padding:10px 14px;margin:12px 0;background:#f5f7fb;border-radius:6px}
.ace-online-exam .ace-question-card{padding:18px;margin:12px 0;border:1px solid #ddd;border-radius:8px;background:#fff}
.ace-online-exam .ace-question-number{font-weight:600;margin-bottom:8px}
.ace-online-exam .ace-question-marks{float:right;font-weight:400}
.ace-online-exam .ace-question-text{font-size:17px;line-height:1.5}
.ace-online-exam .ace-question-description{margin:8px 0;color:#666}
.ace-online-exam .ace-answer-options label{display:block;padding:8px 10px;margin:6px 0;border:1px solid #e0e0e0;border-radius:5px}
.ace-online-exam .ace-answer-input{width:100%;box-sizing:border-box;padding:10px}

.ace-exam-timer{position:sticky;top:10px;z-index:10;display:inline-block;padding:10px 16px;margin:8px 0;background:#fff3cd;border:1px solid #e0b94d;border-radius:7px;font-size:18px}.ace-exam-timer strong{font-variant-numeric:tabular-nums}


/* ACE Exam 2.4.6 - Student Registration: left labels + right input fields */
.ace-registration-modal .ace-registration-two-column{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    padding:8px 36px 18px!important;
    margin:0!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-row{
    display:grid!important;
    grid-template-columns:190px minmax(0,1fr)!important;
    align-items:center!important;
    column-gap:22px!important;
    min-height:58px!important;
    margin:0!important;
    padding:8px 0!important;
    border-bottom:1px solid #ececf2!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-row > label:first-child{
    display:block!important;
    margin:0!important;
    padding:0!important;
    font-size:14px!important;
    line-height:1.35!important;
    font-weight:600!important;
    color:#344054!important;
    text-align:left!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-control{
    min-width:0!important;
    width:100%!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-control > input:not([type=checkbox]),
.ace-registration-modal .ace-registration-two-column .ace-form-control > select{
    display:block!important;
    width:100%!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:8px 12px!important;
    box-sizing:border-box!important;
    border:1px solid #cfd4dc!important;
    border-radius:7px!important;
    background:#fff!important;
    color:#1d2939!important;
    font-size:14px!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-control > input:focus,
.ace-registration-modal .ace-registration-two-column .ace-form-control > select:focus{
    outline:none!important;
    border-color:#6843df!important;
    box-shadow:0 0 0 3px rgba(104,67,223,.10)!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-control small{
    display:block!important;
    margin:4px 0 0!important;
    color:#667085!important;
    font-size:11px!important;
    line-height:1.3!important;
}
.ace-registration-modal .ace-registration-two-column .ace-show-password{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    margin:5px 0 0!important;
    font-size:12px!important;
    color:#475467!important;
    font-weight:400!important;
}
.ace-registration-modal .ace-registration-two-column .ace-show-password input[type=checkbox]{
    width:15px!important;
    height:15px!important;
    min-height:15px!important;
    margin:0!important;
}
.ace-registration-modal .ace-registration-two-column .ace-file-wrap{
    width:100%!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    border:1px solid #cfd4dc!important;
    border-radius:7px!important;
    padding:0 8px 0 12px!important;
    background:#fff!important;
}
.ace-registration-modal .ace-registration-two-column .ace-file-button{
    height:34px!important;
    min-height:34px!important;
    margin-left:auto!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-submit-row{
    display:grid!important;
    grid-template-columns:190px minmax(0,1fr)!important;
    column-gap:22px!important;
    padding:18px 0 0!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-submit{
    margin:0!important;
    padding:0!important;
}
.ace-registration-modal .ace-registration-two-column .ace-form-submit button{
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    border:0!important;
    border-radius:7px!important;
    font-size:15px!important;
    font-weight:700!important;
}
.ace-registration-modal .ace-registration-login-note{
    text-align:center!important;
}
@media(max-width:700px){
    .ace-registration-modal .ace-registration-two-column{padding:6px 18px 14px!important}
    .ace-registration-modal .ace-registration-two-column .ace-form-row{
        grid-template-columns:1fr!important;
        row-gap:6px!important;
        min-height:0!important;
        padding:9px 0!important;
    }
    .ace-registration-modal .ace-registration-two-column .ace-form-row > label:first-child{text-align:left!important}
    .ace-registration-modal .ace-registration-two-column .ace-form-submit-row{grid-template-columns:1fr!important;padding-top:14px!important}
    .ace-registration-modal .ace-registration-two-column .ace-form-submit-row > div:first-child{display:none!important}
}


/* ACE Exam 2.4.7 - Registration header: centered two-line title + admin-selectable logo */
.ace-registration-modal .ace-registration-heading{
    padding:18px 54px 14px!important;
    background:#fff!important;
    text-align:center!important;
    border:0!important;
    margin:0!important;
}
.ace-registration-modal .ace-registration-brand{
    display:grid!important;
    grid-template-columns:96px minmax(0,1fr) 96px!important;
    align-items:center!important;
    width:100%!important;
}
.ace-registration-modal .ace-registration-logo{
    grid-column:1!important;
    width:82px!important;
    height:72px!important;
    border:1px solid #d8dbe3!important;
    border-radius:6px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    overflow:hidden!important;
    justify-self:start!important;
    box-sizing:border-box!important;
}
.ace-registration-modal .ace-registration-logo img{
    max-width:100%!important;
    max-height:100%!important;
    width:auto!important;
    height:auto!important;
    object-fit:contain!important;
    display:block!important;
}
.ace-registration-modal .ace-registration-logo span{
    display:block!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    background:transparent!important;
    color:#98a2b3!important;
    font-size:11px!important;
    font-weight:700!important;
}
.ace-registration-modal .ace-registration-titles{
    grid-column:2!important;
    text-align:center!important;
    min-width:0!important;
}
.ace-registration-modal .ace-registration-titles h1{
    margin:0!important;
    padding:0!important;
    color:#171717!important;
    font-size:27px!important;
    line-height:1.15!important;
    font-weight:700!important;
    letter-spacing:.1px!important;
}
.ace-registration-modal .ace-registration-titles h2{
    margin:4px 0 0!important;
    padding:0!important;
    color:#4a4a4a!important;
    font-size:21px!important;
    line-height:1.2!important;
    font-weight:400!important;
}
@media(max-width:600px){
    .ace-registration-modal .ace-registration-heading{padding:14px 18px 10px!important}
    .ace-registration-modal .ace-registration-brand{grid-template-columns:62px minmax(0,1fr) 62px!important}
    .ace-registration-modal .ace-registration-logo{width:56px!important;height:50px!important}
    .ace-registration-modal .ace-registration-titles h1{font-size:22px!important}
    .ace-registration-modal .ace-registration-titles h2{font-size:17px!important}
}


/* ACE Exam 2.5.0 - Student Login Portal header */
.ace-auth-portal{max-width:760px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;text-align:center!important}
.ace-auth-header{margin:0 0 28px!important;padding:0 24px!important}
.ace-auth-brand{position:relative;min-height:96px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.ace-auth-logo{position:absolute;left:0;top:50%;transform:translateY(-50%);width:84px;height:84px;border:1px solid #d7dce5;border-radius:7px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}
.ace-auth-logo img{width:100%;height:100%;object-fit:contain;padding:8px;box-sizing:border-box}
.ace-auth-logo span{font-size:12px;font-weight:600;color:#98a2b3;letter-spacing:.3px}
.ace-auth-titles{text-align:center;width:100%;padding:0 105px;box-sizing:border-box}
.ace-auth-titles h1{margin:0!important;font-family:Georgia,'Times New Roman',serif!important;font-size:30px!important;line-height:1.15!important;font-weight:700!important;color:#111827!important}
.ace-auth-titles h2{margin:5px 0 8px!important;font-family:Georgia,'Times New Roman',serif!important;font-size:23px!important;line-height:1.15!important;font-weight:400!important;color:#344054!important}
.ace-auth-titles .ace-subtitle{margin:0!important;font-size:14px!important;line-height:1.45!important;color:#667085!important}
@media(max-width:640px){
 .ace-auth-header{padding:0 12px!important;margin-bottom:22px!important}
 .ace-auth-brand{min-height:82px}
 .ace-auth-logo{position:relative;left:auto;top:auto;transform:none;flex:0 0 64px;width:64px;height:64px;margin-right:12px}
 .ace-auth-titles{padding:0!important}
 .ace-auth-titles h1{font-size:23px!important}
 .ace-auth-titles h2{font-size:19px!important}
 .ace-auth-titles .ace-subtitle{font-size:12px!important}
}
