/* forgot_password.php + reset_password.php (same card as change_password.php) */
.cp-wrap { max-width: 440px; margin: 3rem auto; padding: 0 16px; }
.cp-card {
    background: var(--surface, #fff);
    border-radius: 18px;
    padding: 32px 28px;
    box-shadow: 0 4px 24px rgba(0,0,0,.07);
}
.cp-title { font-size: 1.35rem; font-weight: 700; margin: 0 0 6px; color: var(--text, #2e3350); }
.cp-subtitle { font-size: .88rem; color: var(--muted, #7f86a8); margin: 0 0 20px; line-height: 1.5; }
.cp-label { display: block; font-size: .82rem; font-weight: 600; margin-bottom: 6px; color: var(--text, #2e3350); }
.cp-input {
    display: block; width: 100%; padding: 10px 14px; font-size: .95rem;
    border: 1.5px solid var(--border, #e1e6f4); border-radius: 10px;
    background: var(--surface-2, #f7f9ff); color: var(--text, #2e3350);
    margin-bottom: 16px; outline: none; transition: border-color .15s;
    box-sizing: border-box;
}
.cp-input:focus { border-color: var(--accent-1, #7a5cff); }
.cp-btn {
    display: block; width: 100%; padding: 12px; font-size: .95rem; font-weight: 700;
    border: none; border-radius: 10px; cursor: pointer;
    background: linear-gradient(135deg, var(--accent-1, #7a5cff), var(--accent-2, #5c7cff));
    color: #fff; margin-top: 8px; transition: opacity .15s;
}
.cp-btn:hover { opacity: .9; }
.cp-error { background: #fef2f2; color: #b91c1c; padding: 10px 14px; border-radius: 10px; font-size: .85rem; margin-bottom: 16px; line-height: 1.5; }
.cp-success { background: #f0fdf4; color: #166534; padding: 14px; border-radius: 10px; font-size: .9rem; text-align: center; line-height: 1.5; word-break: break-word; }
.cp-success a, .cp-back a { color: var(--accent-1, #7a5cff); font-weight: 600; text-decoration: none; }
.cp-success a:hover, .cp-back a:hover { text-decoration: underline; }
.cp-user { font-size: .85rem; color: var(--muted, #7f86a8); margin: 0 0 18px; word-break: break-word; }
.cp-note { font-size: .8rem; color: var(--muted, #7f86a8); margin: 14px 0 0; text-align: center; }
.cp-back { text-align: center; margin: 18px 0 0; font-size: .88rem; }
