/**
 * Necudah Auth V2 — Parchment/Gold Academic Design
 *
 * Overrides auth.css when "New Design Preview" is enabled.
 * Loads AFTER auth.css so all selectors here take priority.
 *
 * @package Necudah
 */

/* ===== Fonts ===== */
@import url('https://fonts.googleapis.com/css2?family=Frank+Ruhl+Libre:wght@400;500;700&family=Heebo:wght@300;400;500;600;700&family=Noto+Serif:ital,wght@0,400;0,700;1,400&family=Noto+Sans:wght@400;500;600;700&display=swap');

/* ===== Variables ===== */
:root {
    --v2-bg:            #E5D9C5;
    --v2-bg-card:       #F5EFE2;
    --v2-green:         #1B3A2D;
    --v2-gold:          #B8912A;
    --v2-border:        #C4B496;
    --v2-text:          #1A1A1A;
    --v2-text-secondary:#5C4A2A;
    --v2-text-muted:    #8A7A60;
    --v2-text-light:    #FDFBF7;
    --v2-font-display:  'Frank Ruhl Libre', 'Noto Serif', Georgia, serif;
    --v2-font-body:     'Heebo', 'Noto Sans', system-ui, sans-serif;
    --v2-font-ui:       'Heebo', 'Noto Sans', system-ui, sans-serif;
}

/* ===== Page Background ===== */
.necudah-auth-page {
    background: var(--v2-bg);
    font-family: var(--v2-font-body);
}

/* ===== Logo ===== */
.necudah-auth-logo h1 {
    font-family: var(--v2-font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--v2-text);
}

/* ===== Card ===== */
.necudah-auth-card {
    background: var(--v2-bg-card);
    border: 1px solid var(--v2-border);
    border-radius: 8px;
    box-shadow: 2px 3px 12px rgba(27, 42, 29, 0.1);
    padding: 40px;
}

.necudah-auth-title {
    font-family: var(--v2-font-display);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--v2-text);
}

.necudah-auth-subtitle {
    font-family: var(--v2-font-body);
    font-size: 0.9rem;
    color: var(--v2-text-muted);
}

/* ===== Form Labels ===== */
.necudah-form-group label {
    font-family: var(--v2-font-ui);
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--v2-text-secondary);
}

/* ===== Inputs ===== */
.necudah-input {
    font-family: var(--v2-font-body);
    font-size: 0.95rem;
    background: var(--v2-bg);
    border: 1px solid var(--v2-border);
    border-radius: 6px;
    color: var(--v2-text);
    padding: 12px 16px;
}

.necudah-input:focus {
    border-color: var(--v2-gold);
    background: var(--v2-bg-card);
    box-shadow: 0 0 0 3px rgba(184, 145, 42, 0.15);
}

.necudah-input::placeholder {
    color: var(--v2-text-muted);
}

/* ===== Password Toggle ===== */
.necudah-password-toggle:hover {
    color: var(--v2-gold);
}

/* ===== Password Strength ===== */
.strength-bar {
    background: var(--v2-border);
}

.strength-text {
    font-family: var(--v2-font-ui);
    color: var(--v2-text-muted);
}

/* ===== Checkbox & Radio ===== */
.necudah-checkbox,
.necudah-radio {
    font-family: var(--v2-font-body);
    color: var(--v2-text-secondary);
}

.necudah-checkbox input,
.necudah-radio input {
    accent-color: var(--v2-green);
}

.necudah-checkbox a,
.necudah-radio a {
    color: var(--v2-gold);
}

.necudah-checkbox a:hover,
.necudah-radio a:hover {
    color: var(--v2-green);
}

/* ===== Links ===== */
.necudah-link {
    font-family: var(--v2-font-ui);
    color: var(--v2-text-muted);
}

.necudah-link:hover {
    color: var(--v2-gold);
}

.necudah-link-primary {
    color: var(--v2-gold);
    font-family: var(--v2-font-ui);
}

.necudah-link-primary:hover {
    color: var(--v2-green);
}

/* ===== Buttons ===== */
.necudah-btn {
    font-family: var(--v2-font-ui);
    border-radius: 6px;
}

.necudah-btn-primary {
    background: var(--v2-green);
    color: var(--v2-text-light);
}

.necudah-btn-primary:hover:not(:disabled) {
    background: #244A38;
}

.necudah-btn-secondary {
    background: var(--v2-bg);
    color: var(--v2-text-secondary);
    border: 1px solid var(--v2-border);
}

.necudah-btn-secondary:hover:not(:disabled) {
    border-color: var(--v2-gold);
}

/* ===== Error & Success Messages ===== */
.necudah-auth-error {
    background: #FEF2F2;
    color: #991B1B;
    border: 1px solid #FECACA;
    border-radius: 6px;
    font-family: var(--v2-font-body);
}

.necudah-auth-success {
    background: #F0FDF4;
    color: #166534;
    border: 1px solid #BBF7D0;
    border-radius: 6px;
    font-family: var(--v2-font-body);
}

/* ===== Footer ===== */
.necudah-auth-footer {
    font-family: var(--v2-font-body);
    color: var(--v2-text-muted);
}

.necudah-auth-footer a {
    color: var(--v2-gold);
    text-decoration: none;
}

.necudah-auth-footer a:hover {
    color: var(--v2-green);
}

/* ===== Verify Page ===== */
.necudah-verify-icon {
    color: var(--v2-gold);
}

.necudah-verify-loading {
    color: var(--v2-gold);
}

.necudah-verify-tips {
    background: var(--v2-bg);
    border: 1px solid var(--v2-border);
    border-radius: 6px;
    font-family: var(--v2-font-body);
    color: var(--v2-text-secondary);
}

/* ===== RTL Adjustments ===== */
[dir="rtl"] .necudah-auth-card {
    direction: rtl;
}

[dir="rtl"] .necudah-password-toggle {
    right: auto;
    left: 12px;
}

[dir="rtl"] .necudah-password-wrapper .necudah-input {
    padding-right: 16px;
    padding-left: 48px;
}

[dir="rtl"] .necudah-verify-tips ul {
    padding-left: 0;
    padding-right: 20px;
}

/* ===== Responsive ===== */
@media (max-width: 500px) {
    .necudah-auth-card {
        padding: 24px 20px;
    }
    .necudah-auth-logo h1 {
        font-size: 1.5rem;
    }
    .necudah-auth-title {
        font-size: 1.2rem;
    }
}
