/* =============================================================
   Aurore Partners Plugin — partners.css
   Mirrors the inline styles from page-reseller.php & single-partner.php
   ============================================================= */

/* ── Archive: Hero ─────────────────────────────────────────── */
.pl-hero {
    position: relative;
    background: #0d565a;
    padding: 36px 0 32px;
    overflow: hidden;
}
.pl-hero::after {
    content: "";
    position: absolute;
    right: -60px; top: -60px;
    width: 280px; height: 280px;
    border-radius: 50%;
    background: rgba(54,184,184,0.1);
    pointer-events: none;
}
.pl-breadcrumb {
    display: flex; gap: 6px; align-items: center;
    font-size: 12px; color: rgba(255,255,255,0.5);
    margin-bottom: 14px;
}
.pl-breadcrumb a { color: rgba(255,255,255,0.65); text-decoration: none; }
.pl-breadcrumb a:hover { color: #36b8b8; }
.pl-hero-title { font-size: 28px; font-weight: 600; color: #fff; line-height: 1.25; }
.pl-hero-title span { color: #36b8b8; }
.pl-hero-sub { font-size: 14px; color: rgba(255,255,255,0.55); margin-top: 8px; }

/* Search input inside hero */
.pl-search-form input[type="text"]:focus {
    border-color: rgba(255,255,255,0.6) !important;
    background: rgba(255,255,255,0.2) !important;
}
.pl-search-form input[type="text"]::placeholder { color: rgba(255,255,255,0.5); }

/* ── Archive: Filter bar ───────────────────────────────────── */
.pl-filterbar {
    background: #fff;
    border-bottom: 1px solid #e0eaea;
    padding: 14px 0;
}
.pl-filter-inner {
    display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
.pl-filter-label {
    font-size: 11px; font-weight: 700; color: #235656;
    letter-spacing: 0.08em; text-transform: uppercase; margin-right: 4px;
}
.pl-chip {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 7px 16px; border-radius: 2.375rem;
    border: 1px solid #c8d8d8; background: transparent;
    color: #235656; font-size: 12px; font-weight: 500;
    cursor: pointer; text-decoration: none;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.pl-chip:hover { background: #f0f7f7; border-color: #235656; color: #235656; }
.pl-chip.active { background: #235656; border-color: #235656; color: #fff; }
.pl-chip.reset  { color: #ff7a00; border-color: #ffd4b0; background: #fff8f3; }
.pl-chip.reset:hover { background: #fff0e4; border-color: #ff7a00; }

/* ── Archive: Grid body ────────────────────────────────────── */
.pl-body { background: #f5f7f7; padding: 28px 0 48px; }
.pl-meta {
    display: flex; justify-content: space-between; align-items: center;
    margin-bottom: 20px;
}
.pl-count { font-size: 13px; color: #4a5568; }
.pl-count strong { color: #235656; font-weight: 600; }

/* Partner cards */
.pl-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
@media (max-width: 992px) { .pl-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 576px)  { .pl-grid { grid-template-columns: 1fr; } }

.pc-card {
    background: #fff;
    border: 1px solid #e0eaea;
    border-radius: 12px;
    overflow: hidden;
    display: flex; flex-direction: column;
    text-decoration: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.pc-card:hover {
    border-color: #36b8b8;
    box-shadow: 0 6px 24px rgba(35,86,86,0.1);
}

/* Badge stripe */
.pc-stripe { height: 5px; width: 100%; flex-shrink: 0; }
.pc-stripe.gold       { background: #d4a017; }
.pc-stripe.platinum   { background: #90a4ae; }
.pc-stripe.silver     { background: #8fa8a8; }
.pc-stripe.bronze     { background: #a0674a; }
.pc-stripe.ambassador { background: linear-gradient(90deg, #0d565a 0%, #36b8b8 100%); }
.pc-stripe.default    { background: #c8d8d8; }

.pc-body { padding: 16px 18px 14px; display: flex; align-items: flex-start; gap: 14px; }
.pc-avatar {
    width: 46px; height: 46px; border-radius: 10px; flex-shrink: 0;
    background: #f0f7f7; border: 1px solid #c8d8d8;
    display: flex; align-items: center; justify-content: center;
    font-size: 14px; font-weight: 700; color: #235656;
    overflow: hidden;
}
.pc-avatar img { width: 100%; height: 100%; object-fit: contain; }
.pc-info { flex: 1; min-width: 0; }
.pc-name {
    font-size: 15px; font-weight: 600; color: #1a1a1a;
    line-height: 1.3; white-space: nowrap;
    overflow: hidden; text-overflow: ellipsis;
}
.pc-location { font-size: 12px; color: #4a5568; margin-top: 3px; }

/* Badge pills — archive cards */
.pc-badge-pill {
    display: inline-block; margin-top: 5px;
    font-size: 10px; font-weight: 700;
    padding: 2px 9px; border-radius: 10px;
}
.pc-badge-pill.gold       { background: #fef3c7; color: #92400e; }
.pc-badge-pill.platinum   { background: #e2e8f0; color: #374151; }
.pc-badge-pill.silver     { background: #f1f5f9; color: #475569; border: 1px solid #cbd5e1; }
.pc-badge-pill.bronze     { background: #fef2ec; color: #7c3d1e; }
.pc-badge-pill.ambassador { background: #e6f7f7; color: #0d565a; border: 1px solid #b2e0e0; }

.pc-divider { height: 1px; background: #f0f0f0; margin: 0 18px; }

.pc-tags { padding: 10px 18px 14px; display: flex; gap: 6px; flex-wrap: wrap; }
.pc-tag {
    font-size: 11px; padding: 3px 9px; border-radius: 4px;
    background: #f0f7f7; color: #235656; border: 1px solid #c8d8d8;
}

/* Empty / error state */
.pl-empty { text-align: center; padding: 60px 16px; color: #4a5568; }
.pl-empty i { font-size: 40px; color: #c8d8d8; display: block; margin-bottom: 14px; }
.pl-empty p { font-size: 15px; margin-bottom: 16px; }
.aurore-error { color: #c0392b; font-size: 14px; }


/* =============================================================
   Single partner page
   ============================================================= */
.ps-wrap { background: #f5f7f7; }

/* Breadcrumb */
.ps-crumb {
    background: #0d565a;
    padding: 14px 0;
    font-size: 12px;
    color: rgba(255,255,255,0.5);
}
.ps-crumb-inner { display: flex; align-items: center; gap: 6px; }
.ps-crumb a { color: rgba(255,255,255,0.65); text-decoration: none; }
.ps-crumb a:hover { color: #36b8b8; }

/* Layout */
.ps-layout {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 24px;
    padding: 32px 0 56px;
    align-items: start;
}
@media (max-width: 768px) { .ps-layout { grid-template-columns: 1fr; } }

/* Sidebar */
.ps-sidebar { display: flex; flex-direction: column; gap: 16px; }

.ps-id-card {
    background: #fff;
    border: 1px solid #e0eaea;
    border-radius: 12px;
    overflow: hidden;
}

/* Badge stripes — single */
.ps-stripe { height: 5px; }
.ps-stripe.gold       { background: #d4a017; }
.ps-stripe.platinum   { background: #90a4ae; }
.ps-stripe.silver     { background: #8fa8a8; }
.ps-stripe.bronze     { background: #a0674a; }
.ps-stripe.ambassador { background: linear-gradient(90deg, #0d565a 0%, #36b8b8 100%); }
.ps-stripe.default    { background: #c8d8d8; }

.ps-id-body { padding: 24px 20px 20px; text-align: center; }
.ps-logo-wrap {
    width: 72px; height: 72px; border-radius: 14px;
    background: #f0f7f7; border: 1px solid #c8d8d8;
    display: flex; align-items: center; justify-content: center;
    font-size: 22px; font-weight: 700; color: #235656;
    margin: 0 auto 14px; overflow: hidden;
}
.ps-logo-wrap img { width: 100%; height: 100%; object-fit: contain; }
.ps-partner-name { font-size: 17px; font-weight: 700; color: #1a1a1a; }

/* Badge pills — single */
.ps-badge-pill {
    display: inline-block; margin-top: 7px;
    font-size: 11px; font-weight: 700;
    padding: 3px 12px; border-radius: 10px;
}
.pill-gold       { background: #fef3c7; color: #92400e; }
.pill-platinum   { background: #e2e8f0; color: #374151; }
.pill-silver     { background: #f1f5f9; color: #475569; border: 1px solid #cbd5e1; }
.pill-bronze     { background: #fef2ec; color: #7c3d1e; }
.pill-ambassador { background: #e6f7f7; color: #0d565a; border: 1px solid #b2e0e0; }

/* Contact card */
.ps-card {
    background: #fff;
    border: 1px solid #e0eaea;
    border-radius: 12px;
    padding: 18px 20px;
}
.ps-card-title {
    font-size: 11px; font-weight: 700; color: #235656;
    text-transform: uppercase; letter-spacing: 0.08em;
    margin-bottom: 14px; padding-bottom: 10px;
    border-bottom: 1px solid #f0f0f0;
}
.ps-contact-row {
    display: flex; align-items: flex-start; gap: 10px;
    margin-bottom: 12px; font-size: 13px; color: #1a1a1a;
    line-height: 1.45;
}
.ps-contact-row:last-child { margin-bottom: 0; }
.ps-contact-row .ps-icon {
    width: 28px; height: 28px; border-radius: 6px;
    background: #f0f7f7; border: 1px solid #c8d8d8;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0; color: #36b8b8; font-size: 13px;
}
.ps-contact-row a { color: #1a1a1a; text-decoration: none; }
.ps-contact-row a:hover { color: #235656; }

/* Tags */
.ps-tags-wrap { display: flex; flex-wrap: wrap; gap: 7px; }
.ps-tag {
    font-size: 11px; padding: 5px 11px; border-radius: 6px;
    background: #f0f7f7; color: #235656; border: 1px solid #c8d8d8;
}
.ps-tag-country { background: #fff8f3; color: #c24e00; border-color: #ffd4b0; }

/* Back button */
.ps-back {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 13px; font-weight: 600; color: #235656;
    text-decoration: none; padding: 10px 20px;
    border: 1px solid #235656; border-radius: 2.375rem;
    transition: background 0.15s, color 0.15s;
}
.ps-back:hover { background: #235656; color: #fff; }

/* Main content area */
.ps-main { display: flex; flex-direction: column; gap: 20px; }

.ps-section {
    background: #fff;
    border: 1px solid #e0eaea;
    border-radius: 12px;
    padding: 26px 28px;
}
.ps-section-title {
    font-size: 16px; font-weight: 700; color: #1a1a1a;
    margin-bottom: 16px; padding-bottom: 14px;
    border-bottom: 1px solid #f0f0f0;
    display: flex; align-items: center; gap: 10px;
}
.ps-title-icon {
    width: 32px; height: 32px; border-radius: 8px;
    background: #f0f7f7; border: 1px solid #c8d8d8;
    display: flex; align-items: center; justify-content: center;
    color: #36b8b8; font-size: 15px; flex-shrink: 0;
}
.ps-desc { font-size: 14px; color: #4a5568; line-height: 1.8; }
.ps-desc strong { color: #235656; }

/* CTA bar */
.ps-cta {
    background: linear-gradient(135deg, #0d565a 0%, #1a7a7a 100%);
    border-radius: 12px;
    padding: 22px 28px;
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; flex-wrap: wrap;
}
.ps-cta-text { color: rgba(255,255,255,0.85); font-size: 14px; line-height: 1.5; }
.ps-cta-text strong { display: block; color: #fff; font-size: 16px; margin-bottom: 4px; }
.ps-cta-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: #36b8b8; color: #fff;
    padding: 11px 24px; border-radius: 2.375rem;
    font-size: 14px; font-weight: 600;
    text-decoration: none; white-space: nowrap;
    transition: background 0.15s;
}
.ps-cta-btn:hover { background: #2ea0a0; color: #fff; }

/* References section on single page */
.ps-references { display: flex; flex-direction: column; gap: 12px; }
.ps-ref-item {
    padding: 14px 16px;
    background: #f8fbfb;
    border: 1px solid #e0eaea;
    border-left: 3px solid #36b8b8;
    border-radius: 0 8px 8px 0;
}
.ps-ref-title { font-size: 14px; font-weight: 600; color: #1a1a1a; margin-bottom: 4px; }
.ps-ref-desc  { font-size: 13px; color: #4a5568; line-height: 1.6; }
.ps-ref-date  { font-size: 11px; color: #9ca3af; margin-top: 6px; }
