/* Certificate validation (LMS v3). Matches the v3 public contact page: intro, form card, open-sky help panel. */
.v3-cert-validation{font-family:Arial,Helvetica,sans-serif;color:#12364b;background:#fff;padding-bottom:64px}
.v3-cert-validation *{box-sizing:border-box}
.v3-cert-container{width:100%;max-width:1200px;margin:auto;padding-inline:32px}
.v3-cert-validation a{color:#24618d}
.v3-cert-validation a:focus-visible,.v3-cert-validation button:focus-visible{outline:2px solid #24618d;outline-offset:3px}

.v3-cert-intro{padding-block:32px}
.v3-cert-intro nav{font-size:13px;color:#526f7f;margin-bottom:32px;display:flex;gap:10px}
.v3-cert-eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;color:#24618d;margin:0 0 12px}
.v3-cert-validation h1{font:700 40px/1.2 Arial,Helvetica,sans-serif;color:#12364b;margin:0 0 16px}
.v3-cert-intro>p:last-child{font-size:16px;line-height:1.6;max-width:650px;margin:0;color:#526f7f}
.v3-cert-validation h2{font:700 22px/1.35 Arial,Helvetica,sans-serif;color:#12364b;margin:0 0 8px}
.v3-cert-validation h3{font:700 16px/1.5 Arial,Helvetica,sans-serif;color:#12364b;margin:0 0 4px}

.v3-cert-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px;align-items:start}

/* Form card */
.v3-cert-card{border:1px solid #d5e3eb;border-radius:12px;background:#fff;box-shadow:0 8px 24px #12364b08;overflow:hidden}
.v3-cert-card-header{padding:28px 32px;border-bottom:1px solid #e3ebf0}
.v3-cert-card-header p{font-size:14px;line-height:1.6;color:#526f7f;margin:0}
.v3-cert-form{padding:32px;max-width:560px}
.v3-cert-field{margin-bottom:24px;min-width:0}
.v3-cert-field label{display:block;font-size:14px;line-height:20px;font-weight:700;color:#12364b;margin-bottom:8px}
.v3-cert-field input{display:block;width:100%;height:44px;border:1px solid #c8d9e3;border-radius:6px;padding:10px 12px;font:16px Arial,Helvetica,sans-serif;background:#fff;color:#12364b;box-shadow:none;margin:0}
.v3-cert-field input::placeholder{color:#7c94a6;opacity:1}
.v3-cert-field input:focus{outline:none;border-color:#24618d;box-shadow:0 0 0 3px #24618d33}
.v3-cert-field input[aria-invalid=true]{border-color:#af3444}
.v3-cert-field small{display:block;font-size:13px;line-height:1.5;color:#526f7f;margin-top:8px}
.v3-cert-field-error{display:block;font-size:13px;line-height:1.5;color:#a52a3a;margin-top:4px}
.v3-cert-field-error:empty{display:none}

.v3-cert-captcha{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:8px;align-items:center}
.v3-cert-captcha .captcha-image{width:auto;max-width:160px;height:44px;border:1px solid #d5e3eb;border-radius:6px;background:#f4f8fa;object-fit:contain;display:block}
.v3-cert-icon-button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #c8d9e3;border-radius:6px;background:#fff;color:#24618d;cursor:pointer;padding:0}
.v3-cert-icon-button:hover{background:#edf5f8}

.v3-cert-submit{display:block;width:100%;min-height:48px;border:0;border-radius:6px;background:#12364b;color:#fff;font:700 16px Arial,Helvetica,sans-serif;cursor:pointer;margin-top:8px}
.v3-cert-submit:hover{background:#24618d}
.v3-cert-submit:disabled{opacity:.65;cursor:wait}

/* Result */
.v3-cert-result{margin:0 32px 32px;max-width:496px}
.v3-cert-result:focus{outline:none}
.v3-cert-result>div{border-radius:8px;padding:24px;border:1px solid transparent}
.v3-cert-result .v3-cert-result-valid{background:#eef7f1;border-color:#b9dcc6}
.v3-cert-result .v3-cert-result-invalid{background:#fff3f3;border-color:#e3b5bc}
.v3-cert-result-heading{display:flex;gap:16px;align-items:flex-start}
.v3-cert-result-heading p{font-size:14px;line-height:1.6;color:#526f7f;margin:0}
.v3-cert-result-heading p a{text-decoration:underline;font-weight:700}
.v3-cert-result-icon{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff}
.v3-cert-result-valid .v3-cert-result-icon{background:#1f7a4d}
.v3-cert-result-invalid .v3-cert-result-icon{background:#a52a3a}
.v3-cert-result dl{margin:24px 0 0;padding-top:16px;border-top:1px solid #b9dcc6;display:grid;gap:12px}
.v3-cert-result dl>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px}
.v3-cert-result dt{font-size:13px;line-height:1.5;color:#526f7f;font-weight:400}
.v3-cert-result dd{font-size:15px;line-height:1.5;font-weight:700;color:#12364b;margin:0;overflow-wrap:anywhere}

/* Help panel */
.v3-cert-help{padding:28px;background:#edf5f8;border:1px solid #d5e3eb;border-radius:12px}
.v3-cert-help-item{padding:24px 0;border-bottom:1px solid #cddde5}
.v3-cert-help-item:last-child{border-bottom:0;padding-bottom:0}
.v3-cert-help-item p{font-size:14px;line-height:1.6;color:#526f7f;margin:0}
.v3-cert-help-item strong{color:#12364b;white-space:nowrap}
.v3-cert-help-item>a{display:inline-flex;gap:12px;margin-top:8px;min-height:44px;align-items:center;font-weight:700}

@media(max-width:800px){
    .v3-cert-grid{grid-template-columns:1fr}
    .v3-cert-validation h1{font-size:32px}
}
@media(max-width:540px){
    .v3-cert-container{padding-inline:16px}
    .v3-cert-intro{padding-block:24px}
    .v3-cert-card-header,.v3-cert-form,.v3-cert-help{padding:24px}
    .v3-cert-result{margin:0 24px 24px}
    .v3-cert-captcha{grid-template-columns:auto 44px minmax(0,1fr)}
    .v3-cert-captcha input{grid-column:1/-1}
    .v3-cert-result{max-width:none}
    .v3-cert-result dl>div{grid-template-columns:1fr;gap:2px}
    .v3-cert-validation{padding-bottom:40px}
}
