/**
 * ╔══════════════════════════════════════════════════════════════╗
 * ║   EAP ADMIN SHIM  v7.0                                       ║
 * ║   WP admin-specific overrides only.                          ║
 * ║                                                              ║
 * ║   REQUIRES: eap-unified-design-system.css loaded first.      ║
 * ║   SCOPE: .eap-admin-wrap / .eap-dashboard-wrap only.         ║
 * ║   DO NOT add frontend component rules here.                  ║
 * ╚══════════════════════════════════════════════════════════════╝
 */

/* ── WP admin input box-shadow reset ───────────────────────── */
.eap-admin-wrap input[type="text"],
.eap-admin-wrap input[type="email"],
.eap-admin-wrap input[type="password"],
.eap-admin-wrap select {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

/* ── WP admin form controls — use design tokens ─────────────── */
.eap-admin-wrap input[type="text"],
.eap-admin-wrap input[type="email"],
.eap-admin-wrap input[type="number"],
.eap-admin-wrap input[type="password"],
.eap-admin-wrap input[type="url"],
.eap-admin-wrap select,
.eap-admin-wrap textarea {
    min-height: 44px !important;
    padding: 10px 16px !important;
    font-size: 14px !important;
    border-radius: var(--r-sm) !important;
    border: 1.5px solid var(--eap-border-solid) !important;
    background: var(--eap-surface) !important;
    color: var(--eap-text-primary) !important;
    font-family: var(--eap-font) !important;
    transition: border-color var(--ease) !important;
}

.eap-admin-wrap input:focus,
.eap-admin-wrap select:focus,
.eap-admin-wrap textarea:focus {
    border-color: var(--eap-primary) !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15) !important;
    outline: none !important;
}

/* ── WP admin h1 reset ──────────────────────────────────────── */
.eap-admin-wrap.wrap h1,
.eap-dashboard-wrap h1 {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: var(--eap-text-primary) !important;
    border-bottom: none !important;
    padding-bottom: 0 !important;
    margin-bottom: 6px !important;
}

/* ── WP zebra striping reset ────────────────────────────────── */
.eap-admin-wrap .widefat tbody tr.alternate td {
    background: transparent !important;
}

/* ── WP metabox styling ─────────────────────────────────────── */
.eap-admin-wrap .postbox {
    background: var(--eap-surface) !important;
    border: 1px solid var(--eap-border-solid) !important;
    border-radius: var(--r-md) !important;
    box-shadow: var(--shadow-xs) !important;
}

.eap-admin-wrap .postbox .postbox-header {
    background: var(--eap-surface-3) !important;
    border-bottom: 1px solid var(--eap-border-solid) !important;
    border-radius: var(--r-md) var(--r-md) 0 0 !important;
}

.eap-admin-wrap .postbox .postbox-header h2 {
    color: var(--eap-text-primary) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

/* ── WP admin notices ───────────────────────────────────────── */
.eap-admin-wrap .settings-error,
.eap-admin-wrap .updated,
.eap-admin-wrap .notice {
    background: var(--eap-surface) !important;
    color: var(--eap-text-primary) !important;
    border-radius: var(--r-sm) !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    padding: 12px 16px !important;
    margin: 10px 0 !important;
    box-shadow: var(--shadow-xs) !important;
}

.eap-admin-wrap .updated,
.eap-admin-wrap .settings-error,
.eap-admin-wrap .notice-success { border-left-color: var(--eap-emerald) !important; }
.eap-admin-wrap .notice-warning,
.eap-admin-wrap .notice-info    { border-left-color: var(--eap-amber)   !important; }
.eap-admin-wrap .error,
.eap-admin-wrap .notice-error   { border-left-color: var(--eap-coral)   !important; }

/* ── Readability guardrails (text on white admin bg) ────────── */
.eap-admin-wrap p,
.eap-admin-wrap li,
.eap-admin-wrap span,
.eap-admin-wrap small,
.eap-admin-wrap strong,
.eap-admin-wrap em,
.eap-admin-wrap td,
.eap-admin-wrap th,
.eap-admin-wrap label {
    color: var(--eap-text-primary) !important;
}

.eap-admin-wrap .description,
.eap-admin-wrap .eap-form-note,
.eap-admin-wrap .eap-form-help,
.eap-admin-wrap .eap-lang-inline-note,
.eap-admin-wrap .eap-muted,
.eap-admin-wrap .eap-lang-muted {
    color: var(--eap-text-secondary) !important;
}

.eap-admin-wrap a             { color: var(--eap-primary-dark) !important; }
.eap-admin-wrap a:hover,
.eap-admin-wrap a:focus-visible { color: var(--eap-primary) !important; }

/* ── Disabled state ─────────────────────────────────────────── */
.eap-admin-wrap .button[disabled],
.eap-admin-wrap button[disabled],
.eap-admin-wrap input[type="submit"][disabled],
.eap-admin-wrap .button.disabled {
    background: var(--eap-surface-3) !important;
    border-color: var(--eap-border-solid) !important;
    color: var(--eap-text-muted) !important;
    opacity: 1 !important;
    cursor: not-allowed;
}

/* ── WP admin content area padding fix ─────────────────────── */
body.wp-admin[class*="eap-"] #wpcontent { padding-left: 0 !important; }

/* ── Dark mode support for admin pages ─────────────────────── */
[data-eap-theme="dark"] .eap-admin-wrap {
    --eap-bg:            #0f172a;
    --eap-surface:       #1e293b;
    --eap-surface-2:     rgba(30, 41, 59, 0.70);
    --eap-surface-3:     rgba(30, 41, 59, 0.40);
    --eap-border-solid:  rgba(55, 65, 81, 0.70);
    --eap-border:        rgba(255, 255, 255, 0.10);
    --eap-text-primary:  #f8fafc;
    --eap-text-secondary:#cbd5e1;
    --eap-text-muted:    #94a3b8;
}

/* ── Disable fixed viewport shell inside WP admin to prevent admin menu from disappearing ── */
body.wp-admin.eap-show-wp-admin-menu .eap-viewport-shell,
body.wp-admin.eap-show-wp-admin-menu .eap-portal-shell {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 1 !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

body.wp-admin.eap-show-wp-admin-menu .eap-shell-inner,
body.wp-admin.eap-show-wp-admin-menu .eap-dashboard-app-wrap {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

body.wp-admin.eap-show-wp-admin-menu .eap-sidebar {
    display: none !important; /* Hide duplicate EAP sidebar in WP Admin */
}

body.wp-admin.eap-show-wp-admin-menu .eap-main {
    flex: none !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
}

body.wp-admin.eap-show-wp-admin-menu .eap-topbar {
    display: none !important; /* Hide duplicate EAP topbar in WP Admin */
}

body.wp-admin.eap-show-wp-admin-menu .eap-content {
    padding: 10px 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

/* ==========================================================================
   WP ADMIN INTERFACE READABILITY & SPACING GUARDS
   Ensures the WordPress admin menu and top bar are never covered, hidden,
   or overlapped by EAP dashboard layout rules.
   ========================================================================== */

/* Restore default content spacing and margins when WP admin menu is shown */
body.wp-admin.eap-show-wp-admin-menu #wpcontent,
body.wp-admin.eap-show-wp-admin-menu #wpbody-content {
    padding-left: 0 !important;
    box-sizing: border-box !important;
}

body.wp-admin.eap-show-wp-admin-menu #wpcontent {
    margin-left: 160px !important;
    transition: margin-left 0.15s ease-in-out !important;
}

body.wp-admin.eap-show-wp-admin-menu.folded #wpcontent {
    margin-left: 36px !important;
}

/* Force standard WordPress admin bar and sidebar visibility and correct z-index */
body.wp-admin.eap-show-wp-admin-menu #adminmenumain,
body.wp-admin.eap-show-wp-admin-menu #adminmenuwrap,
body.wp-admin.eap-show-wp-admin-menu #wpadminbar {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.wp-admin.eap-show-wp-admin-menu #wpadminbar {
    position: fixed !important;
    z-index: 99999 !important;
}

/* Responsive adjustments for the content margins in narrower viewports */
@media screen and (max-width: 960px) {
    body.wp-admin.eap-show-wp-admin-menu #wpcontent {
        margin-left: 36px !important;
    }
}

@media screen and (max-width: 782px) {
    body.wp-admin.eap-show-wp-admin-menu #wpcontent {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }
}

/* ==========================================================================
   WP ADMIN SIDEBAR VISIBILITY PRESERVATION (WITHOUT COLLAPSING EAP SHELL)
   ========================================================================== */
body.wp-admin:not(.eap-show-wp-admin-menu) .eap-viewport-shell {
    left: 160px !important;
    width: calc(100vw - 160px) !important;
}

body.wp-admin.folded:not(.eap-show-wp-admin-menu) .eap-viewport-shell {
    left: 36px !important;
    width: calc(100vw - 36px) !important;
}

body.wp-admin:not(.eap-show-wp-admin-menu) #adminmenumain,
body.wp-admin:not(.eap-show-wp-admin-menu) #adminmenuwrap {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 10000 !important; /* Render above the EAP shell */
}

/* Responsive constraints to handle standard WordPress responsiveness on smaller screens */
@media screen and (max-width: 960px) {
    body.wp-admin:not(.eap-show-wp-admin-menu) .eap-viewport-shell {
        left: 36px !important;
        width: calc(100vw - 36px) !important;
    }
}

@media screen and (max-width: 782px) {
    body.wp-admin:not(.eap-show-wp-admin-menu) .eap-viewport-shell {
        left: 0 !important;
        width: 100vw !important;
    }
}


