:root{--posp-primary:#2563eb;--posp-primary-soft:#dbeafe;--posp-success:#16a34a;--posp-danger:#dc2626;--posp-warning:#d97706;--posp-text:#1f2937;--posp-muted:#6b7280;--posp-border:#e5e7eb;--posp-bg:#f3f7fc;--posp-shadow:0 14px 35px rgba(15,23,42,.09)}
.posp-page{min-height:100vh;padding:24px 14px;background:linear-gradient(135deg,#e8f1ff,#f8fbff 42%,#eefaf4);color:var(--posp-text);font-family:Inter,Arial,sans-serif}.posp-app{max-width:1280px;margin:auto;background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:24px;box-shadow:var(--posp-shadow);overflow:hidden}.posp-header{padding:26px 30px;background:linear-gradient(90deg,#0ea5e9,#2563eb 65%,#22c55e);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.posp-header h1{margin:0;font-size:28px}.posp-header p{margin:7px 0 0;opacity:.94}.posp-content{padding:26px}.posp-card{background:#fff;border:1px solid var(--posp-border);border-radius:18px;padding:20px}.posp-card h2,.posp-card h3{margin-top:0}.posp-muted{color:var(--posp-muted);font-size:13px}.posp-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.posp-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.posp-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.posp-field{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}.posp-field label{font-weight:700;font-size:13px}.posp-input,.posp-select,.posp-textarea,.posp-field input[type=text],.posp-field input[type=tel],.posp-field input[type=date],.posp-field input[type=password],.posp-field select,.posp-field textarea{width:100%;border:1px solid #d1d5db;border-radius:12px;padding:11px 13px;outline:none;font:inherit;background:#fff}.posp-input:focus,.posp-field input:focus,.posp-field select:focus,.posp-field textarea:focus{border-color:var(--posp-primary);box-shadow:0 0 0 3px rgba(37,99,235,.12)}.posp-upload{border:2px dashed #cbd5e1;background:#f8fafc;border-radius:15px;padding:14px}.posp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:10px 15px;min-height:40px;font-weight:700;cursor:pointer;text-decoration:none}.posp-btn-primary{background:var(--posp-primary);color:#fff}.posp-btn-success{background:var(--posp-success);color:#fff}.posp-btn-danger{background:var(--posp-danger);color:#fff}.posp-btn-warning{background:var(--posp-warning);color:#fff}.posp-btn-light{background:#eef2f7;color:#111827}.posp-actions{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:18px}.posp-wizard-shell{position:relative;margin-bottom:22px;padding:20px 20px 16px;border:1px solid #dbe4f0;border-radius:20px;background:linear-gradient(145deg,#ffffff 0%,#f8fbff 58%,#f6fffb 100%);box-shadow:0 12px 32px rgba(15,23,42,.07);overflow:hidden}.posp-wizard-shell:before{content:"";position:absolute;width:190px;height:190px;right:-80px;top:-115px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.14),rgba(37,99,235,0) 70%);pointer-events:none}.posp-wizard-heading{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:17px}.posp-wizard-eyebrow{display:block;margin-bottom:3px;color:#2563eb;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.posp-wizard-heading h2{margin:0;color:#0f172a;font-size:17px;line-height:1.35}.posp-wizard-progress-pill{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:7px 12px;border:1px solid #bfdbfe;border-radius:999px;color:#1d4ed8;background:#eff6ff;font-size:12px;font-weight:800;white-space:nowrap}.posp-stepper{position:relative;z-index:1;display:flex;align-items:flex-start;gap:0;width:100%;padding:3px 2px 7px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scroll-behavior:smooth;scroll-snap-type:x proximity}.posp-stepper::-webkit-scrollbar{height:5px}.posp-stepper::-webkit-scrollbar-thumb{border-radius:999px;background:#cbd5e1}.posp-step{position:relative;flex:1 0 108px;min-width:108px;display:grid;justify-items:center;gap:8px;padding:0 5px;color:#64748b;text-align:center;scroll-snap-align:center}.posp-step-connector{position:absolute;z-index:0;top:23px;left:calc(50% + 25px);width:calc(100% - 50px);height:3px;border-radius:999px;background:#e2e8f0}.posp-step:last-child .posp-step-connector{display:none}.posp-step.done .posp-step-connector{background:linear-gradient(90deg,#22c55e,#86efac)}.posp-step-icon-wrap{position:relative;z-index:2}.posp-step-icon{width:48px;height:48px;display:grid;place-items:center;border:1px solid #dbe4f0;border-radius:15px;color:#64748b;background:#f8fafc;box-shadow:0 6px 15px rgba(15,23,42,.06);font-size:17px;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease}.posp-step-number{position:absolute;right:-7px;bottom:-5px;min-width:20px;height:20px;display:grid;place-items:center;padding:0 4px;border:2px solid #fff;border-radius:999px;color:#64748b;background:#e2e8f0;font-size:9px;font-weight:800}.posp-step-copy{display:grid;gap:1px}.posp-step-copy strong{color:#475569;font-size:11.5px;line-height:1.25}.posp-step-copy span{color:#94a3b8;font-size:9.5px;line-height:1.25}.posp-step.active .posp-step-icon{border-color:#60a5fa;color:#fff;background:linear-gradient(145deg,#2563eb,#3b82f6);box-shadow:0 9px 22px rgba(37,99,235,.30);transform:translateY(-2px)}.posp-step.active .posp-step-number{color:#1d4ed8;background:#dbeafe}.posp-step.active .posp-step-copy strong{color:#1d4ed8;font-weight:800}.posp-step.active .posp-step-copy span{color:#3b82f6;font-weight:700}.posp-step.done .posp-step-icon{border-color:#86efac;color:#fff;background:linear-gradient(145deg,#16a34a,#22c55e);box-shadow:0 8px 19px rgba(22,163,74,.22)}.posp-step.done .posp-step-number{color:#15803d;background:#dcfce7}.posp-step.done .posp-step-copy strong{color:#15803d;font-weight:800}.posp-step.done .posp-step-copy span{color:#22a45a;font-weight:700}.posp-step:hover .posp-step-icon{border-color:#93c5fd;transform:translateY(-2px)}.posp-step-progress-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 2px 7px;color:#64748b;font-size:12px}.posp-step-progress-meta #stepLabel{font-weight:800;color:#334155}.posp-step-progress-meta #stepCurrentName{font-weight:700;color:#2563eb}.posp-progress{height:8px;margin-bottom:0;border-radius:999px;overflow:hidden;background:#e2e8f0;box-shadow:inset 0 1px 2px rgba(15,23,42,.08)}.posp-progress>div{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#2563eb 0%,#0ea5e9 48%,#22c55e 100%);box-shadow:0 0 14px rgba(37,99,235,.28);transition:width .35s ease}.posp-form-step{display:none}.posp-form-step.active{display:block}.posp-review{display:grid;gap:10px;position:sticky;top:15px}.posp-review-item{border:1px solid var(--posp-border);background:#fafafa;border-radius:12px;padding:11px}.posp-review-item strong{display:block;color:var(--posp-muted);font-size:10px;text-transform:uppercase;margin-bottom:4px}.posp-notice{padding:11px 13px;border-radius:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;font-size:13px}.posp-notice.success{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.posp-notice.error{border-color:#fecaca;background:#fef2f2;color:#991b1b}.posp-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:10px;margin-top:10px}.posp-preview-card{border:1px solid var(--posp-border);border-radius:12px;padding:7px;background:#fff;text-align:center;font-size:11px}.posp-preview-card img{width:100%;height:95px;object-fit:cover;border-radius:8px}.posp-education-row{border:1px solid var(--posp-border);border-radius:14px;padding:14px;margin-bottom:12px;background:#fcfcfd}.posp-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700}.posp-badge.pending{background:#fef3c7;color:#b45309}.posp-badge.approved,.posp-badge.done{background:#dcfce7;color:#15803d}.posp-badge.rejected{background:#fee2e2;color:#b91c1c}.posp-badge.partial{background:#dbeafe;color:#1d4ed8}.posp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.posp-stat{border:1px solid var(--posp-border);border-radius:15px;padding:15px}.posp-stat strong{display:block;font-size:23px}.posp-stat span{color:var(--posp-muted);font-size:12px}.posp-admin-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px}.posp-list-item{display:block;width:100%;text-align:left;padding:14px;border:0;border-bottom:1px solid var(--posp-border);background:#fff;cursor:pointer}.posp-list-item.active,.posp-list-item:hover{background:var(--posp-primary-soft)}.posp-section-card{border:1px solid var(--posp-border);border-radius:15px;margin-bottom:12px;overflow:hidden}.posp-section-head{background:#fafafa;border-bottom:1px solid var(--posp-border);padding:13px;display:flex;justify-content:space-between;align-items:center}.posp-section-body{padding:14px}.posp-docs{display:flex;gap:9px;flex-wrap:wrap}.posp-doc{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--posp-border);border-radius:10px;padding:8px 10px;text-decoration:none;color:var(--posp-primary);background:#fff}.posp-module-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px}.posp-module-item{padding:14px;border-bottom:1px solid var(--posp-border);cursor:pointer}.posp-module-item.active,.posp-module-item:hover{background:var(--posp-primary-soft)}.posp-viewer{min-height:330px;border:1px solid var(--posp-border);border-radius:16px;background:#fcfcfd;display:grid;place-items:center;padding:20px;text-align:center}.posp-question{border:1px solid var(--posp-border);border-radius:15px;padding:16px;margin-bottom:12px;background:#fcfcfd}.posp-certificate{border:3px solid #111827;border-radius:18px;padding:40px;text-align:center;background:#fff}.posp-hidden{display:none!important}
@media(max-width:980px){.posp-layout,.posp-admin-layout,.posp-module-layout{grid-template-columns:1fr}.posp-review{position:static}.posp-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.posp-content,.posp-header{padding:19px}.posp-grid-2,.posp-grid-3,.posp-stats{grid-template-columns:1fr}.posp-stepper{grid-template-columns:repeat(2,1fr)}}
@media print{.posp-no-print{display:none!important}.posp-page{padding:0;background:#fff}.posp-app{box-shadow:none;border:0}.posp-header{background:#fff;color:#000;border-bottom:2px solid #000}.posp-certificate{margin:10mm}}


/* Education certificate thumbnail preview */
.posp-education-row-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px
}
.posp-education-row-head>strong{
    font-size:15px;
    color:#0f172a
}
.posp-education-row-head .remove-education{
    width:36px;
    min-width:36px;
    min-height:36px;
    padding:0
}
.posp-education-row-body{
    display:grid;
    grid-template-columns:minmax(0,1fr) 190px;
    gap:16px;
    align-items:start;
    margin-top:12px
}
.posp-education-fields{
    align-items:start
}
.posp-education-file-help{
    color:#64748b;
    font-size:12px;
    line-height:1.45
}
.posp-education-certificate-preview{
    min-height:190px;
    border:1px solid #dbe3ef;
    border-radius:14px;
    padding:9px;
    background:#fff;
    overflow:hidden
}
.posp-education-certificate-preview.is-empty,
.posp-education-certificate-preview.is-loading{
    display:grid;
    place-items:center;
    border-style:dashed;
    background:#f8fafc
}
.posp-education-certificate-preview.has-error{
    border-color:#fecaca;
    background:#fff7f7;
    color:#b91c1c
}
.posp-education-preview-empty{
    display:grid;
    justify-items:center;
    gap:9px;
    padding:18px 10px;
    color:#64748b;
    text-align:center;
    font-size:12px;
    line-height:1.45
}
.posp-education-preview-empty i{
    font-size:30px;
    color:#94a3b8
}
.posp-education-certificate-preview.has-error .posp-education-preview-empty,
.posp-education-certificate-preview.has-error .posp-education-preview-empty i{
    color:#dc2626
}
.posp-education-thumb-button{
    position:relative;
    display:block;
    width:100%;
    height:130px;
    padding:0;
    border:0;
    border-radius:10px;
    overflow:hidden;
    background:#e2e8f0;
    cursor:pointer
}
.posp-education-thumb-button img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .2s ease
}
.posp-education-thumb-overlay{
    position:absolute;
    inset:auto 8px 8px 8px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:32px;
    border-radius:8px;
    color:#fff;
    background:rgba(15,23,42,.78);
    font-size:12px;
    font-weight:700;
    opacity:0;
    transform:translateY(5px);
    transition:.2s ease
}
.posp-education-thumb-button:hover img{
    transform:scale(1.035)
}
.posp-education-thumb-button:hover .posp-education-thumb-overlay,
.posp-education-thumb-button:focus-visible .posp-education-thumb-overlay{
    opacity:1;
    transform:translateY(0)
}
.posp-education-preview-details{
    display:grid;
    gap:2px;
    margin-top:8px;
    min-width:0
}
.posp-education-preview-details strong{
    display:block;
    overflow:hidden;
    color:#0f172a;
    font-size:12px;
    line-height:1.35;
    text-overflow:ellipsis;
    white-space:nowrap
}
.posp-education-preview-details span{
    color:#64748b;
    font-size:11px
}
.posp-education-pdf-fallback{
    display:grid;
    place-items:center;
    gap:5px;
    width:100%;
    height:130px;
    border:0;
    border-radius:10px;
    color:#b91c1c;
    background:#fff1f2;
    cursor:pointer
}
.posp-education-pdf-fallback i{
    font-size:34px
}
.posp-education-pdf-fallback span{
    font-weight:800
}
.posp-education-pdf-fallback small{
    color:#64748b
}
.posp-modal-open{
    overflow:hidden
}
.posp-certificate-modal{
    position:fixed;
    inset:0;
    z-index:10050;
    display:none;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:rgba(2,6,23,.78);
    backdrop-filter:blur(5px)
}
.posp-certificate-modal.is-open{
    display:flex
}
.posp-certificate-modal-dialog{
    width:min(920px,96vw);
    max-height:92vh;
    display:grid;
    grid-template-rows:auto minmax(0,1fr) auto;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.18);
    border-radius:20px;
    background:#fff;
    box-shadow:0 30px 80px rgba(2,6,23,.42)
}
.posp-certificate-modal-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    padding:17px 20px;
    border-bottom:1px solid #e2e8f0
}
.posp-certificate-modal-kicker{
    display:block;
    margin-bottom:3px;
    color:#2563eb;
    font-size:10px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase
}
.posp-certificate-modal-head h3{
    margin:0;
    color:#0f172a;
    font-size:19px;
    line-height:1.3
}
.posp-certificate-modal-head p{
    margin:4px 0 0;
    color:#64748b;
    font-size:12px
}
.posp-certificate-modal-close{
    width:40px;
    height:40px;
    flex:0 0 auto;
    display:grid;
    place-items:center;
    border:1px solid #dbe3ef;
    border-radius:11px;
    color:#334155;
    background:#f8fafc;
    cursor:pointer
}
.posp-certificate-modal-body{
    min-height:260px;
    overflow:auto;
    display:grid;
    place-items:center;
    padding:20px;
    background:#eef2f7
}
.posp-certificate-modal-body img{
    display:block;
    max-width:100%;
    max-height:65vh;
    object-fit:contain;
    border-radius:10px;
    background:#fff;
    box-shadow:0 12px 36px rgba(15,23,42,.18)
}
.posp-certificate-modal-foot{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:13px 20px;
    border-top:1px solid #e2e8f0;
    color:#64748b;
    background:#fff;
    font-size:12px
}
html.theme-dark .posp-education-row-head>strong,
html.theme-dark .posp-education-preview-details strong{
    color:#f8fafc
}
html.theme-dark .posp-education-file-help,
html.theme-dark .posp-education-preview-details span{
    color:#94a3b8
}
html.theme-dark .posp-education-certificate-preview{
    border-color:#334155;
    background:#111827
}
html.theme-dark .posp-education-certificate-preview.is-empty,
html.theme-dark .posp-education-certificate-preview.is-loading{
    background:#0f172a
}
html.theme-dark .posp-certificate-modal-dialog,
html.theme-dark .posp-certificate-modal-foot{
    border-color:#334155;
    background:#111827
}
html.theme-dark .posp-certificate-modal-head{
    border-bottom-color:#334155
}
html.theme-dark .posp-certificate-modal-head h3{
    color:#f8fafc
}
html.theme-dark .posp-certificate-modal-head p,
html.theme-dark .posp-certificate-modal-foot{
    color:#94a3b8
}
html.theme-dark .posp-certificate-modal-close{
    border-color:#334155;
    color:#e2e8f0;
    background:#1e293b
}
html.theme-dark .posp-certificate-modal-body{
    background:#020617
}
@media (max-width:760px){
    .posp-education-row-body{
        grid-template-columns:1fr
    }
    .posp-education-certificate-preview{
        width:min(100%,280px)
    }
    .posp-certificate-modal{
        padding:10px
    }
    .posp-certificate-modal-dialog{
        width:100%;
        max-height:96vh;
        border-radius:16px
    }
    .posp-certificate-modal-foot{
        align-items:stretch;
        flex-direction:column
    }
    .posp-certificate-modal-foot .posp-btn{
        width:100%
    }
}


/* Enhanced registration wizard: dark mode and responsive behavior */
html.theme-dark .posp-wizard-shell{
    border-color:#334155;
    background:linear-gradient(145deg,#111827 0%,#0f172a 62%,#0b1f1c 100%);
    box-shadow:0 16px 38px rgba(0,0,0,.28)
}
html.theme-dark .posp-wizard-heading h2{
    color:#f8fafc
}
html.theme-dark .posp-wizard-eyebrow,
html.theme-dark .posp-step-progress-meta #stepCurrentName{
    color:#60a5fa
}
html.theme-dark .posp-wizard-progress-pill{
    border-color:rgba(96,165,250,.38);
    color:#93c5fd;
    background:rgba(37,99,235,.15)
}
html.theme-dark .posp-step-connector{
    background:#334155
}
html.theme-dark .posp-step.done .posp-step-connector{
    background:linear-gradient(90deg,#16a34a,#4ade80)
}
html.theme-dark .posp-step-icon{
    border-color:#334155;
    color:#94a3b8;
    background:#172033;
    box-shadow:0 7px 17px rgba(0,0,0,.22)
}
html.theme-dark .posp-step-number{
    border-color:#111827;
    color:#cbd5e1;
    background:#334155
}
html.theme-dark .posp-step-copy strong{
    color:#cbd5e1
}
html.theme-dark .posp-step-copy span{
    color:#64748b
}
html.theme-dark .posp-step-progress-meta{
    color:#94a3b8
}
html.theme-dark .posp-step-progress-meta #stepLabel{
    color:#e2e8f0
}
html.theme-dark .posp-progress{
    background:#334155
}
@media(max-width:1050px){
    .posp-step{
        flex-basis:116px;
        min-width:116px
    }
}
@media(max-width:760px){
    .posp-wizard-shell{
        padding:16px 12px 13px;
        border-radius:17px
    }
    .posp-wizard-heading{
        align-items:flex-start;
        margin-bottom:13px
    }
    .posp-wizard-heading h2{
        font-size:15px
    }
    .posp-wizard-progress-pill{
        min-height:31px;
        padding:6px 9px;
        font-size:10.5px
    }
    .posp-stepper{
        margin-right:-12px;
        padding-right:12px
    }
    .posp-step{
        flex-basis:94px;
        min-width:94px;
        gap:7px
    }
    .posp-step-icon{
        width:44px;
        height:44px;
        border-radius:14px;
        font-size:15px
    }
    .posp-step-connector{
        top:21px;
        left:calc(50% + 23px);
        width:calc(100% - 46px)
    }
    .posp-step-copy strong{
        font-size:10.5px
    }
    .posp-step-copy span{
        font-size:9px
    }
}
@media(max-width:460px){
    .posp-wizard-heading{
        display:grid;
        grid-template-columns:1fr auto
    }
    .posp-wizard-heading h2{
        max-width:210px
    }
    .posp-wizard-progress-pill i{
        display:none
    }
    .posp-step-progress-meta{
        align-items:flex-start;
        flex-direction:column;
        gap:2px
    }
}


/* Bank account validation and visibility controls */
.posp-section-title-row{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:15px
}
.posp-section-title-row h2{
    margin-bottom:4px
}
.posp-section-title-row .posp-muted{
    margin:0
}
.posp-security-chip{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:31px;
    padding:6px 10px;
    border:1px solid #bbf7d0;
    border-radius:999px;
    color:#15803d;
    background:#f0fdf4;
    font-size:11px;
    font-weight:800;
    white-space:nowrap
}
.posp-input-action-wrap{
    position:relative
}
.posp-input-action-wrap .posp-input{
    padding-right:48px
}
.posp-input-eye{
    position:absolute;
    top:50%;
    right:7px;
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    transform:translateY(-50%);
    border:0;
    border-radius:9px;
    color:#64748b;
    background:transparent;
    cursor:pointer;
    transition:background .18s ease,color .18s ease
}
.posp-input-eye:hover,
.posp-input-eye:focus-visible,
.posp-input-eye.is-visible{
    color:#2563eb;
    background:#eff6ff
}
.posp-field-message{
    display:block;
    margin-top:3px;
    color:#64748b;
    font-size:11.5px;
    line-height:1.45
}
.posp-account-input.is-invalid{
    border-color:#ef4444 !important;
    background:#fff7f7 !important;
    box-shadow:0 0 0 3px rgba(239,68,68,.12) !important
}
.posp-account-match-status{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin-top:14px;
    padding:11px 13px;
    border:1px solid #dbe4f0;
    border-radius:12px;
    color:#475569;
    background:#f8fafc;
    font-size:12.5px;
    line-height:1.5
}
.posp-account-match-status i{
    margin-top:2px;
    flex:0 0 auto
}
.posp-account-match-status.is-success{
    border-color:#bbf7d0;
    color:#166534;
    background:#f0fdf4
}
.posp-account-match-status.is-error{
    border-color:#fecaca;
    color:#b91c1c;
    background:#fef2f2
}
.posp-account-match-status.is-neutral{
    border-color:#bfdbfe;
    color:#1d4ed8;
    background:#eff6ff
}
#btnSubmit.is-processing{
    cursor:wait;
    opacity:.78
}
html.theme-dark .posp-security-chip{
    border-color:rgba(74,222,128,.35);
    color:#4ade80;
    background:rgba(22,163,74,.12)
}
html.theme-dark .posp-input-eye{
    color:#94a3b8
}
html.theme-dark .posp-input-eye:hover,
html.theme-dark .posp-input-eye:focus-visible,
html.theme-dark .posp-input-eye.is-visible{
    color:#93c5fd;
    background:rgba(37,99,235,.18)
}
html.theme-dark .posp-field-message{
    color:#94a3b8
}
html.theme-dark .posp-account-input.is-invalid{
    border-color:#fb7185 !important;
    color:#f8fafc;
    background:#24121a !important;
    box-shadow:0 0 0 3px rgba(251,113,133,.13) !important
}
html.theme-dark .posp-account-match-status.is-neutral{
    border-color:rgba(96,165,250,.38);
    color:#93c5fd;
    background:rgba(37,99,235,.14)
}
html.theme-dark .posp-account-match-status.is-success{
    border-color:rgba(74,222,128,.36);
    color:#4ade80;
    background:rgba(22,163,74,.12)
}
html.theme-dark .posp-account-match-status.is-error{
    border-color:rgba(251,113,133,.38);
    color:#fb7185;
    background:rgba(190,24,93,.12)
}
@media(max-width:640px){
    .posp-section-title-row{
        align-items:flex-start;
        flex-direction:column
    }
}


/* Duplicate KYC validation on the related registration step */
.posp-input.is-duplicate,
.posp-account-input.is-duplicate{
    border-color:#ef4444 !important;
    color:#991b1b;
    background:#fff7f7 !important;
    box-shadow:0 0 0 3px rgba(239,68,68,.12) !important
}
.posp-input.is-duplicate:focus,
.posp-account-input.is-duplicate:focus{
    border-color:#dc2626 !important;
    box-shadow:0 0 0 4px rgba(239,68,68,.16) !important
}
#btnSubmit.is-processing{
    position:relative;
    cursor:wait;
    opacity:.86
}
#btnSubmit.is-processing:before{
    content:"";
    width:14px;
    height:14px;
    margin-right:8px;
    display:inline-block;
    vertical-align:-2px;
    border:2px solid rgba(255,255,255,.45);
    border-top-color:#fff;
    border-radius:50%;
    animation:posp-submit-spin .7s linear infinite
}
@keyframes posp-submit-spin{
    to{transform:rotate(360deg)}
}
html.theme-dark .posp-input.is-duplicate,
html.theme-dark .posp-account-input.is-duplicate{
    border-color:#fb7185 !important;
    color:#fecdd3;
    background:#29131b !important;
    box-shadow:0 0 0 3px rgba(251,113,133,.13) !important
}


/* Restricted administrative training override */
.posp-training-admin-panel{
    margin-top:18px;
    padding:16px;
    border:1px solid #fed7aa;
    border-radius:16px;
    background:linear-gradient(145deg,#fffaf3,#fff7ed);
    box-shadow:0 10px 26px rgba(180,83,9,.09)
}
.posp-training-admin-head{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:flex-start;
    gap:13px
}
.posp-training-admin-icon{
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    border:1px solid #fdba74;
    border-radius:13px;
    color:#c2410c;
    background:#ffedd5;
    font-size:18px
}
.posp-training-admin-eyebrow{
    display:block;
    margin-bottom:3px;
    color:#c2410c;
    font-size:10px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase
}
.posp-training-admin-head h3{
    margin:0 0 4px;
    color:#7c2d12;
    font-size:17px;
    line-height:1.3
}
.posp-training-admin-head p{
    margin:0;
    color:#9a3412;
    font-size:12.5px;
    line-height:1.55
}
.posp-training-admin-role{
    min-height:27px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:5px 9px;
    border:1px solid #fdba74;
    border-radius:999px;
    color:#9a3412;
    background:#fff;
    font-size:10px;
    font-weight:900;
    letter-spacing:.05em
}
.posp-training-admin-warning{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin:13px 0;
    padding:10px 12px;
    border-left:4px solid #f59e0b;
    border-radius:10px;
    color:#92400e;
    background:rgba(254,243,199,.72);
    font-size:12px;
    line-height:1.5
}
.posp-training-admin-warning i{
    margin-top:2px;
    color:#d97706
}
.posp-training-admin-actions{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap
}
.posp-training-admin-actions .posp-btn:disabled{
    cursor:not-allowed;
    opacity:.48
}
html.theme-dark .posp-training-admin-panel{
    border-color:rgba(251,146,60,.38);
    background:linear-gradient(145deg,#23170f,#1c1410);
    box-shadow:0 12px 30px rgba(0,0,0,.24)
}
html.theme-dark .posp-training-admin-icon{
    border-color:rgba(251,146,60,.42);
    color:#fb923c;
    background:rgba(194,65,12,.17)
}
html.theme-dark .posp-training-admin-eyebrow,
html.theme-dark .posp-training-admin-head h3{
    color:#fdba74
}
html.theme-dark .posp-training-admin-head p{
    color:#fed7aa
}
html.theme-dark .posp-training-admin-role{
    border-color:rgba(251,146,60,.42);
    color:#fdba74;
    background:rgba(124,45,18,.28)
}
html.theme-dark .posp-training-admin-warning{
    color:#fde68a;
    background:rgba(146,64,14,.18)
}
@media(max-width:700px){
    .posp-training-admin-head{
        grid-template-columns:auto minmax(0,1fr)
    }
    .posp-training-admin-role{
        grid-column:1/-1;
        justify-self:start
    }
    .posp-training-admin-actions{
        display:grid;
        grid-template-columns:1fr
    }
    .posp-training-admin-actions .posp-btn{
        width:100%
    }
}


/* Restricted administrative certification exam override */
.posp-exam-admin-panel{
    margin:0 0 18px;
    padding:17px;
    border:1px solid #fecaca;
    border-radius:17px;
    background:linear-gradient(145deg,#fff8f8,#fff1f2);
    box-shadow:0 12px 28px rgba(190,24,93,.08)
}
.posp-exam-admin-head{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:flex-start;
    gap:13px
}
.posp-exam-admin-icon{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border:1px solid #fda4af;
    border-radius:13px;
    color:#be123c;
    background:#ffe4e6;
    font-size:18px
}
.posp-exam-admin-eyebrow{
    display:block;
    margin-bottom:3px;
    color:#be123c;
    font-size:10px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase
}
.posp-exam-admin-copy h3{
    margin:0 0 4px;
    color:#881337;
    font-size:17px;
    line-height:1.3
}
.posp-exam-admin-copy p{
    margin:0;
    color:#9f1239;
    font-size:12.5px;
    line-height:1.55
}
.posp-exam-admin-role{
    min-height:27px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:5px 9px;
    border:1px solid #fda4af;
    border-radius:999px;
    color:#9f1239;
    background:#fff;
    font-size:10px;
    font-weight:900;
    letter-spacing:.05em
}
.posp-exam-admin-warning{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin:13px 0;
    padding:10px 12px;
    border-left:4px solid #e11d48;
    border-radius:10px;
    color:#9f1239;
    background:rgba(255,228,230,.75);
    font-size:12px;
    line-height:1.5
}
.posp-exam-admin-warning i{
    margin-top:2px;
    color:#e11d48
}
.posp-exam-admin-actions{
    display:flex;
    justify-content:flex-end
}
.posp-exam-admin-actions .posp-btn.is-processing{
    cursor:wait;
    opacity:.78
}
.posp-exam-override-result{
    width:min(650px,100%);
    display:flex;
    align-items:flex-start;
    justify-content:center;
    gap:9px;
    margin:0 auto 18px;
    padding:11px 13px;
    border:1px solid #fda4af;
    border-radius:12px;
    color:#9f1239;
    background:#fff1f2;
    font-size:12.5px;
    line-height:1.5
}
.posp-exam-override-result i{
    margin-top:2px
}
html.theme-dark .posp-exam-admin-panel{
    border-color:rgba(251,113,133,.4);
    background:linear-gradient(145deg,#25121a,#1f1118);
    box-shadow:0 14px 32px rgba(0,0,0,.24)
}
html.theme-dark .posp-exam-admin-icon{
    border-color:rgba(251,113,133,.42);
    color:#fb7185;
    background:rgba(190,24,93,.16)
}
html.theme-dark .posp-exam-admin-eyebrow,
html.theme-dark .posp-exam-admin-copy h3{
    color:#fda4af
}
html.theme-dark .posp-exam-admin-copy p{
    color:#fecdd3
}
html.theme-dark .posp-exam-admin-role{
    border-color:rgba(251,113,133,.42);
    color:#fda4af;
    background:rgba(136,19,55,.28)
}
html.theme-dark .posp-exam-admin-warning{
    color:#fecdd3;
    background:rgba(159,18,57,.16)
}
html.theme-dark .posp-exam-override-result{
    border-color:rgba(251,113,133,.4);
    color:#fda4af;
    background:rgba(159,18,57,.15)
}
@media(max-width:700px){
    .posp-exam-admin-head{
        grid-template-columns:auto minmax(0,1fr)
    }
    .posp-exam-admin-role{
        grid-column:1/-1;
        justify-self:start
    }
    .posp-exam-admin-actions{
        display:grid;
        grid-template-columns:1fr
    }
    .posp-exam-admin-actions .posp-btn{
        width:100%
    }
}
