/*
|--------------------------------------------------------------------------
| ObjectNow Dashboard Login
|--------------------------------------------------------------------------
| Genuinely self-contained: covers only the three real states someone can
| see before they are logged in - the login/forgot-password card, the
| set-new-password card, and the access-denied card. Deliberately does
| NOT depend on dashboard.css loading (that file is large, built for the
| full logged-in experience, and its loading in the past depended on
| has_shortcode() correctly detecting this page's shortcode - a real,
| demonstrated point of fragility this file removes entirely by being
| unconditionally enqueued directly from the render function itself).
|--------------------------------------------------------------------------
*/

#onog-dashboard,
#onog-dashboard *,
#onog-dashboard *::before,
#onog-dashboard *::after {
    box-sizing: border-box !important;
}

#onog-dashboard {
    --onog-dl-black: #070707;
    --onog-dl-text: #202020;
    --onog-dl-muted: #666666;
    --onog-dl-light: #f6f6f6;
    --onog-dl-panel: #ffffff;
    --onog-dl-border: #e3e3e3;
    --onog-dl-orange: #f26a2c;
    --onog-dl-orange-dark: #d9571c;
    --onog-dl-red: #b42318;
    --onog-dl-red-soft: #fbeceb;
    --onog-dl-red-border: #f0c9c2;
    --onog-dl-green: #1a8a3c;
    --onog-dl-green-soft: #f2f9f4;
    --onog-dl-green-border: #bfe3c8;

    width: 100vw !important;
    max-width: none !important;
    margin: 0 calc(50% - 50vw) !important;
    padding: 38px clamp(16px, 4vw, 58px) !important;
    background: var(--onog-dl-light) !important;
    color: var(--onog-dl-text) !important;
    font-family: Inter, Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    isolation: isolate !important;
}

#onog-dashboard.onog-dashboard-locked {
    min-height: 70vh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#onog-dashboard .onog-dl-card {
    width: min(100%, 560px) !important;
    padding: clamp(28px, 4vw, 46px) !important;
    border-radius: 30px !important;
    background: var(--onog-dl-panel) !important;
    border: 1px solid var(--onog-dl-border) !important;
    box-shadow: 0 28px 70px rgba(0,0,0,0.10) !important;
    text-align: center !important;
}

#onog-dashboard .onog-dl-card h2 {
    margin: 0 0 14px 0 !important;
    color: var(--onog-dl-black) !important;
    font-size: clamp(28px, 4vw, 38px) !important;
    line-height: 1.1 !important;
    letter-spacing: -0.03em !important;
    font-weight: 900 !important;
}

#onog-dashboard .onog-dl-card p {
    margin: 0 0 24px 0 !important;
    color: var(--onog-dl-muted) !important;
    font-size: 15.5px !important;
    line-height: 1.65 !important;
}

#onog-dashboard .onog-dl-card label {
    display: block !important;
    text-align: left !important;
    font-size: 13.5px !important;
    font-weight: 800 !important;
    color: var(--onog-dl-black) !important;
    margin-bottom: 16px !important;
}

#onog-dashboard .onog-dl-card input[type="text"],
#onog-dashboard .onog-dl-card input[type="email"],
#onog-dashboard .onog-dl-card input[type="password"] {
    display: block !important;
    width: 100% !important;
    margin-top: 6px !important;
    padding: 13px 16px !important;
    border: 1px solid var(--onog-dl-border) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: var(--onog-dl-text) !important;
    font-size: 15px !important;
    font-family: inherit !important;
}

#onog-dashboard .onog-dl-card input:focus {
    outline: none !important;
    border-color: var(--onog-dl-orange) !important;
    box-shadow: 0 0 0 3px rgba(242,106,44,0.14) !important;
}

#onog-dashboard .onog-dl-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 14px 22px !important;
    margin-top: 6px !important;
    border-radius: 999px !important;
    border: 0 !important;
    outline: none !important;
    cursor: pointer !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    background: var(--onog-dl-orange) !important;
    color: #ffffff !important;
    transition: background-color 0.15s ease, transform 0.05s ease, opacity 0.15s ease !important;
}

#onog-dashboard .onog-dl-button:hover {
    background: var(--onog-dl-orange-dark) !important;
}

#onog-dashboard .onog-dl-button:active {
    transform: translateY(1px) !important;
}

#onog-dashboard .onog-dl-button:disabled {
    opacity: 0.65 !important;
    cursor: default !important;
}

#onog-dashboard .onog-dl-links {
    margin: 18px 0 0 0 !important;
    font-size: 13.5px !important;
}

#onog-dashboard .onog-dl-links a {
    color: var(--onog-dl-orange) !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

#onog-dashboard .onog-dl-links a:hover {
    text-decoration: underline !important;
}

#onog-dashboard .onog-dl-signup-link {
    margin-top: 26px !important;
    padding-top: 22px !important;
    border-top: 1px solid var(--onog-dl-border) !important;
    color: var(--onog-dl-muted) !important;
}

#onog-dashboard .onog-dl-error {
    background: var(--onog-dl-red-soft) !important;
    border: 1px solid var(--onog-dl-red-border) !important;
    color: var(--onog-dl-red) !important;
    padding: 12px 16px !important;
    border-radius: 12px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    margin-bottom: 18px !important;
    text-align: left !important;
}

#onog-dashboard .onog-dl-success {
    background: var(--onog-dl-green-soft) !important;
    border: 1px solid var(--onog-dl-green-border) !important;
    color: var(--onog-dl-green) !important;
    padding: 12px 16px !important;
    border-radius: 12px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    margin-bottom: 18px !important;
    text-align: left !important;
}

@media (max-width: 640px) {
    #onog-dashboard {
        padding: 20px 16px !important;
    }
    #onog-dashboard .onog-dl-card {
        border-radius: 20px !important;
    }
}
