/**
 * PhoenixB2B — PANEL KLIENTA V3 — TOKENY (single source of truth).
 *
 * Cel: jeden, kompletny system tokenów dla panelu klienta. Zastępuje
 * rozproszone definicje --pb2b-* z client-panel.css / -v26 / -v286 / -v288 /
 * -v289 / theme.css (które redefiniowały te same zmienne 3–5× i powodowały
 * „czarne sekcje w trybie jasnym", gdy któryś token nie został nadpisany).
 *
 * Zasada:
 *   - Tryb JASNY = DOMYŚLNY (:not([data-pb2b-theme="dark"])) — light-first
 *     eliminuje całą klasę bugów „zapomniany override jasnego".
 *   - Tryb CIEMNY = pełne, kompletne nadpisanie ([data-pb2b-theme="dark"]).
 *   - OBA bloki są KOMPLETNE — żaden token nie może „zostać ciemny w jasnym".
 *   - Tokeny niezależne od motywu (marka, promienie, layout, spacing) — w
 *     bazowym .phoenix-b2b-panel.
 *
 * Zakres: wyłącznie .phoenix-b2b-panel. Nie dotyka motywu/admina/WooCommerce.
 * Ładowany PRZED panel-v3.css. Wartości pochodzą z dotychczasowych plików
 * (dark: client-panel.css; light: theme.css) — bez zmiany identyfikacji
 * wizualnej (fiolet #7C3AED / niebieski #3B82F6).
 */

/* ==========================================================================
 * 1) TOKENY NIEZALEŻNE OD MOTYWU (marka, layout, promienie, spacing)
 * ========================================================================== */
.phoenix-b2b-panel {
	/* Marka / akcenty (identyczne w light i dark) */
	--pb2b-primary:        #7C3AED;
	--pb2b-primary-2:      #A855F7;
	--pb2b-primary-hover:  #6D28D9;
	--pb2b-primary-light:  #A855F7;
	--pb2b-primary-contrast: #FFFFFF;   /* v2.9.2 — tekst na fioletowych przyciskach (biały, kontrast w obu motywach) */
	--pb2b-blue:           #3B82F6;
	--pb2b-accent-grad:    linear-gradient(135deg, #A855F7 0%, #7C3AED 50%, #3B82F6 100%);
	--pb2b-grad:           linear-gradient(135deg, #A855F7 0%, #7C3AED 50%, #3B82F6 100%);
	--pb2b-grad-dark:      linear-gradient(135deg, #7C3AED 0%, #3B82F6 100%);

	/* Semantyczne kolory bazowe (akcenty — wspólne dla obu trybów) */
	--pb2b-success:        #22C55E;
	--pb2b-warning:        #F59E0B;
	--pb2b-danger:         #EF4444;
	--pb2b-error:          #EF4444;
	--pb2b-info:           #38BDF8;

	/* Aliasy legacy (c-*) — utrzymane dla kompatybilności starych reguł */
	--pb2b-c-primary:      #7C3AED;
	--pb2b-c-primary-2:    #A855F7;
	--pb2b-c-secondary:    #3B82F6;
	--pb2b-c-success:      #22C55E;
	--pb2b-c-warning:      #F59E0B;
	--pb2b-c-danger:       #EF4444;
	--pb2b-c-neutral:      #94A3B8;
	--pb2b-c-card-dark:    #111827;
	--pb2b-c-card-light:   #FFFFFF;
	--pb2b-card-dark:      #111827;
	--pb2b-card-light:     #FFFFFF;
	--pb2b-header-dark:    #0B1020;

	/* Tokeny „zawsze na ciemnym tle" (np. hero/gradient) — niezależne od motywu */
	--pb2b-text-on-dark:   #F8FAFC;
	--pb2b-muted-on-dark:  #94A3B8;
	--pb2b-dim-on-dark:    #64748B;

	/* Promienie */
	--pb2b-radius:         14px;
	--pb2b-radius-sm:      10px;
	--pb2b-radius-xs:      8px;
	--pb2b-card-radius:    var(--pb2b-radius);

	/* Layout / spacing */
	--pb2b-sidebar-w:      260px;
	--pb2b-topbar-h:       64px;
	--pb2b-app-header-h:   64px;
	--pb2b-content-max:    1560px;
	--pb2b-page-x:         16px;   /* mobile (skalowane w media-query niżej)   */
	--pb2b-section-gap:    16px;
	--pb2b-card-pad:       16px;
	--pb2b-card-padding:   var(--pb2b-card-pad);

	/* Aliasy powierzchni — podążają za aktywnym motywem (rozwiązują się z bg-*) */
	--pb2b-bg:             var(--pb2b-bg-0);
	--pb2b-bg-soft:        var(--pb2b-bg-3);
	--pb2b-card:           var(--pb2b-bg-2);
	--pb2b-card-soft:      var(--pb2b-bg-3);
	--pb2b-card-hover:     var(--pb2b-bg-3);
	--pb2b-surface:        var(--pb2b-bg-2);
	--pb2b-surface-soft:   var(--pb2b-bg-3);
	--pb2b-muted:          var(--pb2b-text-muted);
	--pb2b-dim:            var(--pb2b-text-dim);
	--pb2b-border-2:       var(--pb2b-border-strong);
	--pb2b-border-dark:    var(--pb2b-border-strong);
}

/* page-x i section-gap rosną na większych ekranach (system spacingu 16/24/32) */
@media (min-width: 768px) {
	.phoenix-b2b-panel { --pb2b-page-x: 24px; --pb2b-section-gap: 20px; --pb2b-card-pad: 20px; }
}
@media (min-width: 1280px) {
	.phoenix-b2b-panel { --pb2b-page-x: 32px; --pb2b-section-gap: 24px; --pb2b-app-header-h: 72px; }
}

/* ==========================================================================
 * 2) MOTYW JASNY — DOMYŚLNY (light-first). Obejmuje też brak atrybutu.
 * ========================================================================== */
.phoenix-b2b-panel:not([data-pb2b-theme="dark"]) {
	--pb2b-bg-0:           #EEF1F8;   /* tło aplikacji            */
	--pb2b-bg-1:           #FFFFFF;   /* sidebar / powierzchnie   */
	--pb2b-bg-2:           #FFFFFF;   /* karty                    */
	--pb2b-bg-3:           #F1F4FB;   /* inputy / soft            */
	--pb2b-bg-4:           #E7ECF7;   /* input focus / hover      */

	--pb2b-text:           #0F172A;
	--pb2b-text-strong:    #0B1220;
	--pb2b-text-soft:      #334155;
	--pb2b-text-muted:     #475569;
	--pb2b-text-dim:       #64748B;

	--pb2b-border:         rgba(15, 23, 42, 0.10);
	--pb2b-border-strong:  rgba(15, 23, 42, 0.20);

	--pb2b-shadow-sm:      0 1px 2px rgba(15, 23, 42, 0.06);
	--pb2b-shadow:         0 1px 2px rgba(15, 23, 42, 0.05), 0 6px 18px rgba(15, 23, 42, 0.08);
	--pb2b-shadow-lg:      0 10px 30px rgba(15, 23, 42, 0.12), 0 0 0 1px var(--pb2b-border);
	--pb2b-shadow-glow:    0 0 0 4px rgba(124, 58, 237, 0.16);
	--pb2b-shadow-focus:   0 0 0 4px rgba(124, 58, 237, 0.16);

	/* Tinty semantyczne dla jasnego tła */
	--pb2b-primary-soft:   rgba(124, 58, 237, 0.10);
	--pb2b-primary-strong: #6D28D9;
	--pb2b-success-soft:   rgba(34, 197, 94, 0.12);
	--pb2b-success-strong: #15803D;
	--pb2b-success-ink:    #15803D;
	--pb2b-warning-soft:   rgba(245, 158, 11, 0.14);
	--pb2b-warning-strong: #B45309;
	--pb2b-warning-ink:    #B45309;
	--pb2b-danger-soft:    rgba(239, 68, 68, 0.10);
	--pb2b-danger-strong:  #B91C1C;
	--pb2b-danger-ink:     #B91C1C;
	--pb2b-error-soft:     rgba(239, 68, 68, 0.10);
	--pb2b-error-strong:   #B91C1C;
	--pb2b-info-soft:      rgba(56, 189, 248, 0.14);
	--pb2b-blue-soft:      rgba(59, 130, 246, 0.12);
}

/* ==========================================================================
 * 3) MOTYW CIEMNY — pełne nadpisanie (kompletne, nic nie „wystaje" jasne).
 * ========================================================================== */
.phoenix-b2b-panel[data-pb2b-theme="dark"] {
	--pb2b-bg-0:           #070B18;
	--pb2b-bg-1:           #0B1020;
	--pb2b-bg-2:           #111827;
	--pb2b-bg-3:           #151B2E;
	--pb2b-bg-4:           #1B2237;

	--pb2b-text:           #F8FAFC;
	--pb2b-text-strong:    #FFFFFF;
	--pb2b-text-soft:      #CBD5E1;
	--pb2b-text-muted:     #94A3B8;
	--pb2b-text-dim:       #64748B;

	--pb2b-border:         rgba(255, 255, 255, 0.08);
	--pb2b-border-strong:  rgba(255, 255, 255, 0.14);

	--pb2b-shadow-sm:      0 1px 2px rgba(0,0,0,0.4);
	--pb2b-shadow:         0 4px 12px rgba(0,0,0,0.25), 0 0 0 1px var(--pb2b-border);
	--pb2b-shadow-lg:      0 12px 32px rgba(0,0,0,0.35), 0 0 0 1px var(--pb2b-border);
	--pb2b-shadow-glow:    0 0 0 4px rgba(124, 58, 237, 0.18);
	--pb2b-shadow-focus:   0 0 0 4px rgba(124, 58, 237, 0.18);

	/* Tinty semantyczne dla ciemnego tła */
	--pb2b-primary-soft:   rgba(124, 58, 237, 0.18);
	--pb2b-primary-strong: #A855F7;
	--pb2b-success-soft:   rgba(34, 197, 94, 0.16);
	--pb2b-success-strong: #4ADE80;
	--pb2b-success-ink:    #16A34A;
	--pb2b-warning-soft:   rgba(245, 158, 11, 0.16);
	--pb2b-warning-strong: #FBBF24;
	--pb2b-warning-ink:    #FBBF24;
	--pb2b-danger-soft:    rgba(239, 68, 68, 0.16);
	--pb2b-danger-strong:  #F87171;
	--pb2b-danger-ink:     #FCA5A5;
	--pb2b-error-soft:     rgba(239, 68, 68, 0.16);
	--pb2b-error-strong:   #F87171;
	--pb2b-info-soft:      rgba(56, 189, 248, 0.16);
	--pb2b-blue-soft:      rgba(59, 130, 246, 0.16);
}
