/* Scoped to the existing CouponPress registration, not its login or admin UI. */
body:has(#ppt-register) {
    background: #f5f8f6 !important;
    color: #18251f;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

#ppt-register {
    width: min(640px, calc(100% - 32px));
    margin: 48px auto;
    background: #fff !important;
    border: 1px solid #dce4e0;
    border-radius: 24px;
    overflow: hidden;
    color: #18251f;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

body:has(#ppt-register) #mobile-bottom-bar { display: none !important; }
#ppt-register h1::before,
#ppt-register h1::after { display: none !important; }

#ppt-register > .container-fluid > .row {
    display: block;
    min-height: 0 !important;
    margin: 0;
}

#ppt-register > .container-fluid > .row > .col-md-4 { display: none; }
#ppt-register > .container-fluid > .row > .col-md-6 {
    width: 100%;
    max-width: none;
    margin: 0;
    display: block !important;
}

#ppt-register .container { width: 100%; padding-inline: 28px !important; }
#ppt-register .container.py-5 { padding-block: 24px !important; }
#ppt-register .logo a {
    color: #094b34;
    font-size: 1.2rem;
    font-weight: 800;
    text-decoration: none;
}
#ppt-register h1 {
    font: 800 clamp(1.5rem, 4vw, 2rem)/1.2 -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #18251f;
    margin: 0 0 12px;
}
#ppt-register p { color: #65716b; }
#ppt-register a { color: #094b34; }
#ppt-register .ppt-form-titlebit p.mb-5 { margin-bottom: 24px !important; }
#ppt-register .sfc-registration-label {
    display: block;
    color: #18251f;
    font-weight: 600;
    margin-bottom: 8px;
}
#ppt-register .inputfield:not([type="hidden"]) {
    box-sizing: border-box;
    width: 100%;
    min-height: 48px;
    padding: 12px 14px;
    color: #18251f;
    background: #fff;
    border: 1px solid #dce4e0;
    border-radius: 10px;
    font: inherit;
}
#ppt-register .form-group { margin-bottom: 20px; }
#ppt-register .termsbox .custom-control {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding-left: 0;
    cursor: pointer;
}
#ppt-register #privacypolicy {
    position: static;
    opacity: 1;
    appearance: auto;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin-top: 4px;
    accent-color: #0f6848;
    cursor: pointer;
}
#ppt-register .termsbox .custom-control-label::before,
#ppt-register .termsbox .custom-control-label::after { display: none; }
#ppt-register .termsbox a { text-decoration: underline; text-underline-offset: 3px; }
#ppt-register .inputfield:focus { border-color: #0f6848; }
#ppt-register a:focus-visible,
#ppt-register button:focus-visible,
#ppt-register input:focus-visible { outline: 3px solid #d88225; outline-offset: 3px; }
#ppt-register button[name="wp-submit"] {
    display: block;
    width: 100%;
    min-height: 48px;
    margin-top: 24px !important;
    padding: 12px 18px;
    color: #fff !important;
    background: #0f6848 !important;
    border: 1px solid #0f6848;
    border-radius: 10px;
    font: 700 1rem/1.4 -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
#ppt-register button[name="wp-submit"]:hover { background: #094b34 !important; }
#ppt-register .sfc-registration-back { display: inline-block; margin-top: 24px; padding-block: 8px; }
@media (max-width: 720px) {
    #ppt-register { margin-block: 20px; width: calc(100% - 20px); }
    #ppt-register .container { padding-inline: 20px !important; }
}
