
.follo-admin-wrap {
    max-width: 1500px;
}

.follo-admin-title-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin:0 0 18px;
}

.follo-admin-title-row h1 {
    margin-bottom:4px;
}

.follo-admin-subtitle {
    margin:0;
    color:#64748b;
}

.follo-admin-grid {
    display:grid;
    gap:20px;
}

.follo-admin-grid-2 {
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.follo-admin-card {
    box-sizing:border-box;
    padding:22px;
    border:1px solid #dfe5eb;
    border-radius:16px;
    background:#fff;
    box-shadow:0 4px 16px rgba(15,23,42,.04);
}

.follo-admin-card-narrow {
    max-width:900px;
}

.follo-admin-card h2 {
    margin-top:0;
}

.follo-admin-card h3 {
    margin-top:24px;
}

.follo-form-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.follo-rate-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
}

.follo-form-grid label,
.follo-field-full {
    display:block;
}

.follo-form-grid label > span,
.follo-field-full > span {
    display:block;
    margin-bottom:6px;
    color:#334155;
    font-weight:600;
}

.follo-form-grid input,
.follo-form-grid select,
.follo-field-full textarea {
    width:100%;
    max-width:none;
}

.follo-form-grid small,
.follo-field-full small {
    display:block;
    margin-top:5px;
    color:#7b8797;
}

.follo-field-full {
    margin-top:16px;
}

.follo-stat-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
    margin:20px 0;
}

.follo-stat-card {
    padding:20px;
    border:1px solid #dfe5eb;
    border-radius:16px;
    background:#fff;
    box-shadow:0 4px 16px rgba(15,23,42,.04);
}

.follo-stat-card span {
    display:block;
    margin-bottom:10px;
    color:#64748b;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.follo-stat-card strong {
    color:#172033;
    font-size:30px;
    line-height:1;
}

.follo-table th,
.follo-table td {
    vertical-align:middle;
}

.follo-actions-cell {
    white-space:nowrap;
}

.follo-actions-cell .button {
    margin:2px 3px 2px 0;
}

.follo-muted {
    color:#8a97a7;
    font-size:11px;
}

.follo-badge {
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 9px;
    border-radius:999px;
    font-size:10px;
    line-height:1;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.035em;
}

.follo-badge-pending,
.follo-status-awaiting_payment {
    background:#fff7ed;
    color:#b45309;
}

.follo-badge-paid,
.follo-status-active {
    background:#ecfdf5;
    color:#047857;
}

.follo-badge-refunded,
.follo-status-cancelled {
    background:#fff1f2;
    color:#be123c;
}

.follo-status-scheduled {
    background:#eff6ff;
    color:#1d4ed8;
}

.follo-status-paused {
    background:#f8fafc;
    color:#475569;
}

.follo-status-expired {
    background:#f3f4f6;
    color:#6b7280;
}

.follo-empty-admin {
    display:grid;
    place-items:center;
    min-height:140px;
    padding:25px;
    border:1px dashed #d6dee7;
    border-radius:12px;
    background:#fafcfd;
    color:#64748b;
    text-align:center;
}

.follo-info-box,
.follo-rule-box {
    padding:16px;
    border:1px solid #dfe5eb;
    border-radius:12px;
    background:#f8fafc;
}

.follo-info-box p {
    margin-top:4px;
}

.follo-rule-box code {
    display:block;
    white-space:normal;
    font-size:13px;
    line-height:1.5;
}

.follo-workflow {
    display:grid;
    gap:12px;
}

.follo-workflow > div {
    display:grid;
    grid-template-columns:36px minmax(0,1fr);
    grid-template-areas:
        "number title"
        "number desc";
    column-gap:10px;
    padding:12px;
    border:1px solid #e2e8f0;
    border-radius:12px;
    background:#fafcfd;
}

.follo-workflow > div > span {
    grid-area:number;
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    border-radius:50%;
    background:#0a66c2;
    color:#fff;
    font-weight:800;
}

.follo-workflow strong {
    grid-area:title;
}

.follo-workflow small {
    grid-area:desc;
    margin-top:3px;
    color:#64748b;
}

@media (max-width: 1100px) {
    .follo-admin-grid-2,
    .follo-stat-grid {
        grid-template-columns:1fr 1fr;
    }
}

@media (max-width: 782px) {
    .follo-admin-grid-2,
    .follo-stat-grid,
    .follo-form-grid,
    .follo-rate-grid {
        grid-template-columns:1fr;
    }

    .follo-admin-title-row {
        align-items:flex-start;
        flex-direction:column;
    }
}


.follo-new-app-panel {
    grid-column:1 / -1;
    margin:20px 0 4px;
    padding:20px;
    border:1px solid #cfe0f2;
    border-radius:14px;
    background:linear-gradient(180deg,#f8fbff 0%,#f5f9fd 100%);
}

.follo-new-app-heading {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:16px;
}

.follo-new-app-heading h2 {
    margin:0 0 4px;
}

.follo-new-app-heading p {
    margin:0;
    color:#64748b;
}

.follo-new-app-panel input[type="file"] {
    padding:6px 0;
}


/* =========================================================
   FOLLO FRONT-END MANAGEMENT PORTAL
========================================================= */

.follo-front-portal-shell {
    width:min(1500px, calc(100% - 32px));
    margin:32px auto 90px;
    display:grid;
    grid-template-columns:235px minmax(0,1fr);
    gap:22px;
    align-items:start;
}

.follo-front-portal-nav {
    position:sticky;
    top:52px;
    padding:18px;
    border:1px solid #e1e7ed;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 24px rgba(15,23,42,.05);
}

.follo-front-portal-brand {
    display:grid;
    gap:3px;
    padding:4px 5px 16px;
    border-bottom:1px solid #edf0f3;
}

.follo-front-portal-brand strong {
    color:#172033;
    font-size:15px;
}

.follo-front-portal-brand span {
    color:#8290a1;
    font-size:11px;
}

.follo-front-portal-nav nav {
    display:grid;
    gap:5px;
    margin-top:12px;
}

.follo-front-portal-nav nav a {
    display:flex;
    align-items:center;
    min-height:40px;
    padding:0 11px;
    border-radius:10px;
    color:#475569 !important;
    font-size:12px;
    font-weight:700;
    text-decoration:none !important;
}

.follo-front-portal-nav nav a:hover,
.follo-front-portal-nav nav a.is-active {
    background:#eef5fc;
    color:#0a66c2 !important;
}

.follo-front-portal-content {
    min-width:0;
}

.follo-front-portal-content .wrap {
    margin:0 !important;
}

.follo-front-portal-content .follo-admin-wrap {
    max-width:none;
}

.follo-portal-denied {
    width:min(760px, calc(100% - 32px));
    margin:60px auto;
    padding:28px;
    border:1px solid #e2e8f0;
    border-radius:16px;
    background:#fff;
    color:#475569;
    text-align:center;
}

@media (max-width:900px) {
    .follo-front-portal-shell {
        grid-template-columns:1fr;
    }

    .follo-front-portal-nav {
        position:static;
    }

    .follo-front-portal-nav nav {
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media (max-width:600px) {
    .follo-front-portal-shell {
        width:min(100% - 20px,1500px);
        margin-top:18px;
    }

    .follo-front-portal-nav nav {
        grid-template-columns:1fr 1fr;
    }
}


/* =========================================================
   FOLLO APP MANAGEMENT — MODERN FULL-SCREEN PORTAL v2.6
========================================================= */

body.follo-management-standalone {
    margin:0 !important;
    background:#f3f7fb !important;
    color:#0f172a;
    overflow-x:hidden;
}

body.follo-management-standalone #wpadminbar {
    display:none !important;
}

html {
    margin-top:0 !important;
}

.follo-mp-shell {
    min-height:100vh;
    display:grid;
    grid-template-columns:270px minmax(0,1fr);
    background:
        radial-gradient(circle at 80% 10%, rgba(205,230,255,.42), transparent 32%),
        #f3f7fb;
}

.follo-mp-sidebar {
    position:sticky;
    top:0;
    height:100vh;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    padding:26px 16px 20px;
    background:
        linear-gradient(180deg,#172536 0%,#0f1c2c 100%);
    color:#e7eef8;
    box-shadow:8px 0 30px rgba(15,23,42,.08);
}

.follo-mp-brand {
    padding:0 14px 30px;
}

.follo-mp-wordmark {
    color:#fff;
    font-size:40px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.055em;
}

.follo-mp-tagline {
    margin-top:10px;
    color:#c7d4e6;
    font-size:10px;
    line-height:1.35;
    font-weight:800;
    letter-spacing:.13em;
}

.follo-mp-nav {
    display:grid;
    gap:9px;
}

.follo-mp-nav a {
    display:grid;
    grid-template-columns:32px minmax(0,1fr);
    align-items:center;
    gap:10px;
    min-height:54px;
    padding:0 14px;
    border-radius:12px;
    color:#c9d5e5 !important;
    text-decoration:none !important;
    font-size:15px;
    font-weight:700;
    transition:background .18s ease,color .18s ease,transform .18s ease;
}

.follo-mp-nav a:hover {
    background:rgba(255,255,255,.06);
    color:#fff !important;
    transform:translateX(2px);
}

.follo-mp-nav a.is-active {
    color:#fff !important;
    background:linear-gradient(135deg,#bb2b32 0%,#7d1d25 100%);
    box-shadow:0 10px 24px rgba(125,29,37,.25);
}

.follo-mp-nav-icon {
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    color:inherit;
    font-size:20px;
    line-height:1;
}

.follo-mp-sidebar-spacer {
    flex:1;
}

.follo-mp-help-card {
    display:grid;
    grid-template-columns:40px minmax(0,1fr);
    gap:10px;
    padding:15px;
    border:1px solid rgba(203,216,234,.2);
    border-radius:15px;
    background:rgba(255,255,255,.035);
    color:#d7e2f0;
}

.follo-mp-help-icon {
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border:2px solid #8ea3bd;
    border-radius:50%;
    color:#d7e2f0;
    font-size:18px;
    font-weight:800;
}

.follo-mp-help-card strong,
.follo-mp-help-card span {
    display:block;
}

.follo-mp-help-card strong {
    margin-bottom:4px;
    color:#fff;
    font-size:12px;
}

.follo-mp-help-card span {
    color:#b8c6d9;
    font-size:11px;
    line-height:1.45;
}

.follo-mp-back-link {
    display:inline-flex;
    margin:16px 8px 0;
    color:#b7c7da !important;
    text-decoration:none !important;
    font-size:11px;
    font-weight:700;
}

.follo-mp-stage {
    min-width:0;
}

.follo-mp-topbar {
    min-height:74px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 34px;
    box-sizing:border-box;
    background:rgba(255,255,255,.9);
    border-bottom:1px solid #e1e8f0;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

.follo-mp-logo-link {
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:12px;
    text-decoration:none !important;
}

.follo-mp-logo-mark {
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:11px;
    background:linear-gradient(145deg,#7e0b12,#b51d26);
    color:#fff;
    font-size:23px;
    font-weight:900;
    box-shadow:0 8px 18px rgba(126,11,18,.18);
}

.follo-mp-user {
    display:flex;
    align-items:center;
    gap:10px;
}

.follo-mp-user-avatar img {
    display:block;
    width:42px !important;
    height:42px !important;
    border-radius:50% !important;
    object-fit:cover !important;
}

.follo-mp-user-copy {
    display:grid;
    gap:2px;
}

.follo-mp-user-copy strong {
    color:#14213d;
    font-size:13px;
}

.follo-mp-user-copy span {
    color:#7b8ca3;
    font-size:10px;
    font-weight:700;
    letter-spacing:.03em;
}

.follo-mp-main {
    box-sizing:border-box;
    padding:38px 34px 26px;
}

.follo-mp-main .follo-front-portal-shell {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    display:block !important;
}

.follo-mp-main .follo-front-portal-nav {
    display:none !important;
}

.follo-mp-main .follo-front-portal-content {
    width:100% !important;
}

.follo-mp-main .wrap,
.follo-mp-main .follo-admin-wrap {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
}

/* Remove WordPress-ish heading treatment */
.follo-mp-main h1 {
    margin:0 0 8px !important;
    color:#0d1b3e !important;
    font-size:34px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
    letter-spacing:-.035em !important;
}

.follo-mp-main .follo-admin-subtitle {
    margin:0 0 26px !important;
    color:#60749a !important;
    font-size:14px !important;
}

/* Dashboard stat cards */
.follo-mp-main .follo-stat-grid {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:18px !important;
    margin:22px 0 !important;
}

.follo-mp-main .follo-stat-card {
    min-height:148px;
    padding:22px 22px 20px !important;
    border:1px solid #e3eaf2 !important;
    border-radius:17px !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(42,64,90,.07) !important;
}

.follo-mp-main .follo-stat-card span {
    color:#50658c !important;
    font-size:12px !important;
    font-weight:800 !important;
}

.follo-mp-main .follo-stat-card strong {
    display:block;
    margin-top:14px;
    color:#0f1835 !important;
    font-size:31px !important;
    font-weight:850 !important;
}

/* Main dashboard cards */
.follo-mp-main .follo-admin-card {
    border:1px solid #e1e8f0 !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(42,64,90,.055) !important;
}

.follo-mp-main .follo-admin-card h2 {
    color:#121c3c !important;
    font-weight:820 !important;
    letter-spacing:-.02em !important;
}

/* Quick-action-like workflow */
.follo-mp-main .follo-workflow {
    grid-template-columns:1fr 1fr !important;
}

.follo-mp-main .follo-workflow > div {
    min-height:72px;
    background:#fbfdff !important;
    border-color:#e3eaf2 !important;
}

/* Elegant empty state */
.follo-mp-main .follo-empty-admin {
    min-height:180px !important;
    border-color:#d9e3ee !important;
    background:
        linear-gradient(180deg,#fbfdff 0%,#f6fafd 100%) !important;
}

/* Buttons */
.follo-mp-main .button,
.follo-mp-main .page-title-action {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:38px !important;
    padding:0 14px !important;
    border-radius:9px !important;
    font-weight:750 !important;
    text-decoration:none !important;
}

.follo-mp-main .button-primary,
.follo-mp-main .page-title-action {
    border-color:#b51d26 !important;
    background:linear-gradient(135deg,#c62830,#9e151d) !important;
    color:#fff !important;
    box-shadow:0 6px 16px rgba(158,21,29,.17) !important;
}

/* Forms */
.follo-mp-main input[type="text"],
.follo-mp-main input[type="email"],
.follo-mp-main input[type="url"],
.follo-mp-main input[type="number"],
.follo-mp-main input[type="date"],
.follo-mp-main input[type="file"],
.follo-mp-main select,
.follo-mp-main textarea {
    box-sizing:border-box !important;
    min-height:42px;
    padding:9px 11px !important;
    border:1px solid #d9e2eb !important;
    border-radius:10px !important;
    background:#fff !important;
    color:#14213d !important;
    box-shadow:0 1px 2px rgba(15,23,42,.02) !important;
}

.follo-mp-main textarea {
    min-height:100px;
}

/* Tables */
.follo-mp-main .widefat {
    overflow:hidden;
    border:1px solid #e0e7ef !important;
    border-radius:12px !important;
    box-shadow:none !important;
}

.follo-mp-main .widefat thead th {
    background:#f6f9fc !important;
    color:#4c5f78 !important;
    font-size:11px !important;
    font-weight:800 !important;
    text-transform:uppercase;
    letter-spacing:.035em;
}

.follo-mp-main .widefat td {
    color:#2b3a50 !important;
}

/* Promotional ribbon */
.follo-mp-main .follo-admin-wrap:after {
    content:"Building a Brighter Tomorrow  ·  Through Apps, Community and Opportunity.";
    display:flex;
    align-items:center;
    min-height:74px;
    margin-top:22px;
    padding:0 28px;
    box-sizing:border-box;
    border-radius:16px;
    background:
        linear-gradient(100deg,#7f0f15 0%,#b43138 48%,#741017 100%);
    color:#fff;
    box-shadow:0 12px 28px rgba(127,15,21,.18);
    font-size:16px;
    font-weight:800;
    letter-spacing:-.01em;
}

.follo-mp-footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin:0 34px;
    padding:20px 0 28px;
    border-top:1px solid #dfe6ed;
    color:#72839a;
    font-size:11px;
}

/* WordPress notices inside portal */
.follo-mp-main .notice {
    margin:0 0 18px !important;
    border-radius:10px;
}

/* Responsive */
@media (max-width:1150px) {
    .follo-mp-shell {
        grid-template-columns:220px minmax(0,1fr);
    }

    .follo-mp-main .follo-stat-grid {
        grid-template-columns:1fr 1fr !important;
    }
}

@media (max-width:820px) {
    .follo-mp-shell {
        display:block;
    }

    .follo-mp-sidebar {
        position:relative;
        height:auto;
        padding:16px;
    }

    .follo-mp-brand {
        padding:0 4px 15px;
    }

    .follo-mp-wordmark {
        font-size:29px;
    }

    .follo-mp-nav {
        grid-template-columns:1fr 1fr 1fr;
        gap:7px;
    }

    .follo-mp-nav a {
        grid-template-columns:1fr;
        justify-items:center;
        min-height:66px;
        padding:8px;
        text-align:center;
        font-size:11px;
    }

    .follo-mp-nav-icon {
        height:22px;
    }

    .follo-mp-help-card,
    .follo-mp-sidebar-spacer,
    .follo-mp-back-link {
        display:none;
    }

    .follo-mp-topbar {
        min-height:64px;
        padding:0 16px;
    }

    .follo-mp-main {
        padding:24px 16px;
    }

    .follo-mp-main .follo-admin-grid-2,
    .follo-mp-main .follo-workflow {
        grid-template-columns:1fr !important;
    }

    .follo-mp-footer {
        margin:0 16px;
        flex-direction:column;
        align-items:flex-start;
    }
}

@media (max-width:560px) {
    .follo-mp-nav {
        grid-template-columns:1fr 1fr;
    }

    .follo-mp-main .follo-stat-grid {
        grid-template-columns:1fr !important;
    }

    .follo-mp-user-copy {
        display:none;
    }

    .follo-mp-main h1 {
        font-size:28px !important;
    }
}


/* =========================================================
   v2.8 — PORTAL NAVIGATION / ACCESS FIXES
========================================================= */

.follo-mp-home-link {
    display:grid;
    grid-template-columns:32px minmax(0,1fr);
    align-items:center;
    gap:10px;
    min-height:48px;
    margin:0 0 12px;
    padding:0 14px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:12px;
    background:rgba(255,255,255,.04);
    color:#fff !important;
    text-decoration:none !important;
    font-size:13px;
    font-weight:750;
}

.follo-mp-home-link:hover {
    background:rgba(255,255,255,.09);
}

.follo-mp-topbar-left {
    display:flex;
    align-items:center;
    gap:14px;
}

.follo-mp-top-home {
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:0 12px;
    border:1px solid #dce5ee;
    border-radius:9px;
    background:#fff;
    color:#334155 !important;
    text-decoration:none !important;
    font-size:11px;
    font-weight:750;
}

.follo-mp-top-home:hover {
    border-color:#0a66c2;
    color:#0a66c2 !important;
}

.follo-title-actions {
    display:flex;
    align-items:center;
    gap:9px;
    flex-wrap:wrap;
}

.follo-home-button {
    border:1px solid #d8e1ea !important;
    background:#fff !important;
    color:#334155 !important;
}

@media (max-width:820px) {
    .follo-mp-home-link {
        grid-template-columns:1fr;
        justify-items:center;
        text-align:center;
        min-height:62px;
        padding:7px;
        font-size:11px;
    }

    .follo-mp-top-home {
        display:none;
    }
}


/* =========================================================
   v2.9 — ACCESS-AWARE PORTAL COLOR SYSTEM
   Full access = vivid, high-contrast FOLLO colors.
   Limited/no access = intentionally softened.
========================================================= */

/* ---------------------------------------------------------
   FULL ACCESS
--------------------------------------------------------- */

body.follo-management-full-access {
    background:
        radial-gradient(circle at 82% 8%, rgba(215,235,255,.72), transparent 31%),
        linear-gradient(180deg,#f7fbff 0%,#eef5fb 100%) !important;
    color:#101a32 !important;
}

body.follo-management-full-access .follo-mp-sidebar {
    background:
        radial-gradient(circle at 15% 8%, rgba(59,91,128,.22), transparent 24%),
        linear-gradient(180deg,#15263a 0%,#0c1b2c 100%) !important;
    box-shadow:10px 0 34px rgba(15,23,42,.12) !important;
}

body.follo-management-full-access .follo-mp-wordmark {
    color:#ffffff !important;
    text-shadow:0 2px 12px rgba(0,0,0,.12);
}

body.follo-management-full-access .follo-mp-tagline {
    color:#e6edf7 !important;
}

body.follo-management-full-access .follo-mp-nav a {
    color:#d7e3f1 !important;
}

body.follo-management-full-access .follo-mp-nav a:hover {
    background:rgba(255,255,255,.10) !important;
    color:#ffffff !important;
}

body.follo-management-full-access .follo-mp-nav a.is-active {
    background:linear-gradient(135deg,#c7252e 0%,#8d1119 100%) !important;
    color:#ffffff !important;
    box-shadow:0 12px 28px rgba(141,17,25,.34) !important;
}

body.follo-management-full-access .follo-mp-home-link {
    border-color:rgba(255,255,255,.22) !important;
    background:rgba(255,255,255,.065) !important;
    color:#ffffff !important;
}

body.follo-management-full-access .follo-mp-help-card {
    border-color:rgba(205,219,237,.28) !important;
    background:rgba(255,255,255,.055) !important;
}

body.follo-management-full-access .follo-mp-help-card strong {
    color:#ffffff !important;
}

body.follo-management-full-access .follo-mp-help-card span,
body.follo-management-full-access .follo-mp-back-link {
    color:#d3deec !important;
}

body.follo-management-full-access .follo-mp-topbar {
    background:rgba(255,255,255,.97) !important;
    border-bottom-color:#dce7f2 !important;
    box-shadow:0 4px 18px rgba(34,60,90,.045) !important;
}

body.follo-management-full-access .follo-mp-logo-mark {
    background:linear-gradient(145deg,#8d0e15,#c71f29) !important;
    box-shadow:0 8px 20px rgba(141,14,21,.24) !important;
}

body.follo-management-full-access .follo-mp-top-home {
    border-color:#cfdce9 !important;
    color:#1f334e !important;
    background:#ffffff !important;
}

body.follo-management-full-access .follo-mp-user-copy strong {
    color:#0e1b38 !important;
}

body.follo-management-full-access .follo-mp-user-copy > span {
    color:#476183 !important;
}

body.follo-management-full-access .follo-access-badge {
    display:inline-flex;
    align-items:center;
    width:max-content;
    min-height:19px;
    margin-top:3px;
    padding:0 7px;
    border:1px solid #b9e5d3;
    border-radius:999px;
    background:#eafaf3;
    color:#087a50;
    font-size:9px;
    line-height:1;
    font-style:normal;
    font-weight:850;
    letter-spacing:.05em;
    text-transform:uppercase;
}

body.follo-management-full-access .follo-mp-main h1 {
    color:#0b1636 !important;
    opacity:1 !important;
}

body.follo-management-full-access .follo-mp-main .follo-admin-subtitle {
    color:#536d94 !important;
    opacity:1 !important;
}

body.follo-management-full-access .follo-stat-card,
body.follo-management-full-access .follo-admin-card {
    border-color:#dbe6f1 !important;
    background:#ffffff !important;
    box-shadow:0 12px 30px rgba(34,61,90,.085) !important;
    opacity:1 !important;
}

body.follo-management-full-access .follo-stat-card span {
    color:#36547c !important;
    opacity:1 !important;
}

body.follo-management-full-access .follo-stat-card strong {
    color:#0a1635 !important;
    opacity:1 !important;
}

body.follo-management-full-access .follo-admin-card h2 {
    color:#0e1937 !important;
}

body.follo-management-full-access .follo-workflow > div {
    border-color:#dbe6f0 !important;
    background:#fbfdff !important;
    color:#243854 !important;
}

body.follo-management-full-access .follo-workflow > div > span {
    background:#0a66c2 !important;
    color:#ffffff !important;
    box-shadow:0 4px 10px rgba(10,102,194,.18);
}

body.follo-management-full-access .follo-empty-admin {
    border-color:#cfddea !important;
    background:linear-gradient(180deg,#fbfdff 0%,#f3f8fc 100%) !important;
    color:#526b8e !important;
}

body.follo-management-full-access .follo-mp-main .button-primary,
body.follo-management-full-access .follo-mp-main .page-title-action {
    border-color:#a9141d !important;
    background:linear-gradient(135deg,#cf2d36 0%,#971019 100%) !important;
    color:#ffffff !important;
    box-shadow:0 8px 18px rgba(151,16,25,.22) !important;
    opacity:1 !important;
}

body.follo-management-full-access .follo-mp-main .button-primary:hover,
body.follo-management-full-access .follo-mp-main .page-title-action:hover {
    background:linear-gradient(135deg,#dc333d 0%,#a8101a 100%) !important;
    transform:translateY(-1px);
}

body.follo-management-full-access .follo-home-button {
    border-color:#cfdce8 !important;
    background:#ffffff !important;
    color:#263b59 !important;
}

body.follo-management-full-access .follo-mp-main .follo-admin-wrap:after {
    background:
        radial-gradient(circle at 62% 50%,rgba(255,255,255,.08),transparent 22%),
        linear-gradient(100deg,#7c0b12 0%,#c42b34 48%,#790b12 100%) !important;
    color:#ffffff !important;
    box-shadow:0 13px 30px rgba(124,11,18,.22) !important;
    opacity:1 !important;
}

body.follo-management-full-access .follo-mp-footer {
    color:#536b8a !important;
    border-top-color:#d8e3ed !important;
}

/* Ensure nothing in the authorized workspace looks disabled. */
body.follo-management-full-access .follo-mp-main,
body.follo-management-full-access .follo-mp-main *,
body.follo-management-full-access .follo-mp-sidebar,
body.follo-management-full-access .follo-mp-sidebar * {
    filter:none !important;
}

body.follo-management-full-access .follo-mp-main {
    opacity:1 !important;
}

/* ---------------------------------------------------------
   LIMITED / NO ACCESS
   Kept deliberately softer so the visual language is clear.
--------------------------------------------------------- */

body.follo-management-limited-access .follo-mp-shell {
    filter:saturate(.55);
}

body.follo-management-limited-access .follo-mp-main {
    opacity:.72;
}

body.follo-management-limited-access .follo-mp-sidebar {
    opacity:.86;
}

body.follo-management-limited-access .follo-access-badge {
    display:none;
}


/* =========================================================
   v3.0 — VIVID FULL-ACCESS DASHBOARD
   This is the final authoritative full-access visual layer.
========================================================= */

body.follo-management-full-access {
    background:#f4f8fc !important;
}

body.follo-management-full-access .follo-mp-main {
    background:
        radial-gradient(circle at 76% 6%, rgba(214,234,255,.72), transparent 28%),
        linear-gradient(180deg,#f8fbff 0%,#f1f6fb 100%) !important;
    opacity:1 !important;
}

body.follo-management-full-access .follo-dashboard-vivid,
body.follo-management-full-access .follo-dashboard-vivid * {
    opacity:1 !important;
    filter:none !important;
}

body.follo-management-full-access .follo-dashboard-heading {
    margin-bottom:24px !important;
}

body.follo-management-full-access .follo-dashboard-kicker {
    margin-bottom:7px;
    color:#8c1119;
    font-size:10px;
    font-weight:900;
    letter-spacing:.16em;
}

body.follo-management-full-access .follo-dashboard-heading h1 {
    color:#081533 !important;
    font-size:36px !important;
    text-shadow:none !important;
}

body.follo-management-full-access .follo-dashboard-heading .follo-admin-subtitle {
    color:#3f5c86 !important;
    font-size:14px !important;
}

body.follo-management-full-access .follo-add-campaign {
    min-height:46px !important;
    padding:0 20px !important;
    border:0 !important;
    border-radius:10px !important;
    background:linear-gradient(135deg,#c7131d 0%,#970710 100%) !important;
    color:#fff !important;
    box-shadow:0 10px 24px rgba(151,7,16,.24) !important;
    font-size:13px !important;
    font-weight:850 !important;
}

body.follo-management-full-access .follo-home-button {
    min-height:46px !important;
    padding:0 17px !important;
    border:1px solid #ccd9e7 !important;
    border-radius:10px !important;
    background:#fff !important;
    color:#213650 !important;
    box-shadow:0 4px 12px rgba(34,58,86,.04) !important;
}

/* KPI cards */
body.follo-management-full-access .follo-vivid-stat-grid {
    gap:18px !important;
}

body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-card {
    display:grid !important;
    grid-template-columns:82px minmax(0,1fr);
    gap:20px;
    align-items:center;
    min-height:155px !important;
    padding:20px !important;
    border:1px solid #dce7f1 !important;
    border-radius:16px !important;
    background:#fff !important;
    color:#0c1835 !important;
    text-decoration:none !important;
    box-shadow:0 10px 26px rgba(37,62,91,.075) !important;
    transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}

body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-card:hover {
    transform:translateY(-2px);
    border-color:#cbd9e7 !important;
    box-shadow:0 16px 34px rgba(37,62,91,.11) !important;
}

body.follo-management-full-access .follo-stat-icon {
    display:grid;
    place-items:center;
    width:76px;
    height:76px;
    border-radius:15px;
    font-size:34px;
    line-height:1;
    font-weight:900;
}

body.follo-management-full-access .follo-stat-content {
    min-width:0;
}

body.follo-management-full-access .follo-stat-content > span {
    display:block;
    margin:0 !important;
    color:#294a77 !important;
    font-size:12px !important;
    line-height:1.35 !important;
    font-weight:850 !important;
    text-transform:uppercase !important;
    letter-spacing:.025em !important;
}

body.follo-management-full-access .follo-stat-content > strong {
    display:block;
    margin:9px 0 8px !important;
    color:#07132f !important;
    font-size:31px !important;
    line-height:1 !important;
    font-weight:900 !important;
}

body.follo-management-full-access .follo-stat-content > em {
    display:block;
    margin:0;
    font-size:12px;
    line-height:1.2;
    font-style:normal;
    font-weight:850;
}

body.follo-management-full-access .follo-stat-blue .follo-stat-icon {
    background:#dcebff;
    color:#0569d3;
}
body.follo-management-full-access .follo-stat-blue em { color:#0569d3; }

body.follo-management-full-access .follo-stat-green .follo-stat-icon {
    background:#daf8ee;
    color:#009a68;
}
body.follo-management-full-access .follo-stat-green em { color:#009a68; }

body.follo-management-full-access .follo-stat-orange .follo-stat-icon {
    background:#fff0d5;
    color:#ef8b00;
}
body.follo-management-full-access .follo-stat-orange em { color:#e87f00; }

body.follo-management-full-access .follo-stat-purple .follo-stat-icon {
    background:#eee0ff;
    color:#7e20cf;
}
body.follo-management-full-access .follo-stat-purple em { color:#7e20cf; }

/* Main cards */
body.follo-management-full-access .follo-dashboard-main-grid {
    gap:18px !important;
    margin-top:20px;
}

body.follo-management-full-access .follo-dashboard-main-grid > .follo-admin-card {
    padding:20px !important;
    border:1px solid #dce7f1 !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:0 10px 26px rgba(37,62,91,.07) !important;
}

body.follo-management-full-access .follo-card-heading-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:14px;
}

body.follo-management-full-access .follo-card-heading-row h2 {
    display:flex;
    align-items:center;
    gap:9px;
    margin:0 !important;
    color:#071431 !important;
    font-size:20px !important;
    line-height:1.2 !important;
    font-weight:900 !important;
}

body.follo-management-full-access .follo-card-heading-row > a {
    color:#0569d3 !important;
    font-size:11px;
    font-weight:850;
    text-decoration:none !important;
}

body.follo-management-full-access .follo-section-symbol {
    color:#a70d16;
    font-size:24px;
    font-weight:900;
}

body.follo-management-full-access .follo-lightning {
    font-size:28px;
}

/* Empty campaign state */
body.follo-management-full-access .follo-dashboard-empty {
    display:flex !important;
    min-height:245px !important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:26px !important;
    border:1px solid #d6e2ee !important;
    border-radius:13px !important;
    background:linear-gradient(180deg,#fbfdff 0%,#f4f9fd 100%) !important;
    color:#415c80 !important;
}

body.follo-management-full-access .follo-empty-icon {
    display:grid;
    place-items:center;
    width:54px;
    height:54px;
    margin-bottom:10px;
    border-radius:13px;
    background:#edf3fa;
    color:#7186a5;
    font-size:28px;
    font-weight:900;
}

body.follo-management-full-access .follo-dashboard-empty strong {
    color:#091431;
    font-size:15px;
}

body.follo-management-full-access .follo-dashboard-empty p {
    max-width:420px;
    margin:7px auto 18px !important;
    color:#587096 !important;
    text-align:center;
    font-size:13px;
    line-height:1.5;
}

body.follo-management-full-access .follo-create-campaign-button {
    min-height:44px !important;
    padding:0 20px !important;
    border:0 !important;
    background:linear-gradient(135deg,#c7131d,#980710) !important;
    color:#fff !important;
    box-shadow:0 8px 18px rgba(152,7,16,.2) !important;
}

/* Activation workflow */
body.follo-management-full-access .follo-vivid-workflow {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:9px !important;
}

body.follo-management-full-access .follo-vivid-workflow > div {
    min-height:58px !important;
    display:grid !important;
    grid-template-columns:38px minmax(0,1fr) !important;
    grid-template-areas:
        "number title"
        "number desc" !important;
    align-items:center !important;
    column-gap:10px !important;
    padding:9px 12px !important;
    border:1px solid #dce7f1 !important;
    border-radius:10px !important;
    background:#fbfdff !important;
}

body.follo-management-full-access .follo-vivid-workflow > div > span {
    grid-area:number !important;
    display:grid !important;
    place-items:center !important;
    width:32px !important;
    height:32px !important;
    border-radius:50% !important;
    background:linear-gradient(145deg,#0d70da,#035ec0) !important;
    color:#fff !important;
    box-shadow:0 5px 12px rgba(3,94,192,.18) !important;
    font-size:12px !important;
    font-weight:900 !important;
}

body.follo-management-full-access .follo-vivid-workflow strong {
    grid-area:title !important;
    color:#101d3c !important;
    font-size:12px;
    font-weight:850;
}

body.follo-management-full-access .follo-vivid-workflow small {
    grid-area:desc !important;
    margin-top:2px;
    color:#536b90 !important;
    font-size:11px;
}

/* Brand banner */
body.follo-management-full-access .follo-admin-wrap:after {
    display:none !important;
    content:none !important;
}

body.follo-management-full-access .follo-brighter-banner {
    min-height:86px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-top:20px;
    padding:0 24px;
    box-sizing:border-box;
    overflow:hidden;
    border-radius:14px;
    background:
        radial-gradient(circle at 64% 75%,rgba(255,130,130,.16),transparent 23%),
        linear-gradient(100deg,#780810 0%,#c52b34 51%,#760810 100%);
    color:#fff;
    box-shadow:0 14px 28px rgba(120,8,16,.2);
}

body.follo-management-full-access .follo-brighter-banner > div:first-child {
    display:grid;
    gap:5px;
}

body.follo-management-full-access .follo-brighter-banner strong {
    color:#fff !important;
    font-size:18px;
    line-height:1.1;
    font-weight:900;
}

body.follo-management-full-access .follo-brighter-banner span {
    color:#fff !important;
    font-size:12px;
}

body.follo-management-full-access .follo-banner-brand {
    display:flex;
    align-items:center;
    gap:18px;
}

body.follo-management-full-access .follo-banner-brand b {
    padding-right:18px;
    border-right:1px solid rgba(255,255,255,.42);
    color:#fff;
    font-size:30px;
    line-height:1;
    letter-spacing:-.05em;
}

body.follo-management-full-access .follo-banner-brand span {
    font-size:9px !important;
    line-height:1.4;
    font-weight:850;
    letter-spacing:.11em;
}

/* Keep limited/no-access state intentionally soft */
body.follo-management-limited-access .follo-dashboard-vivid {
    filter:saturate(.55) !important;
    opacity:.72 !important;
}

/* Responsive */
@media (max-width:1280px) {
    body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-card {
        grid-template-columns:62px minmax(0,1fr);
        gap:14px;
    }

    body.follo-management-full-access .follo-stat-icon {
        width:60px;
        height:60px;
        font-size:28px;
    }
}

@media (max-width:980px) {
    body.follo-management-full-access .follo-vivid-stat-grid {
        grid-template-columns:1fr 1fr !important;
    }

    body.follo-management-full-access .follo-dashboard-main-grid {
        grid-template-columns:1fr !important;
    }
}

@media (max-width:600px) {
    body.follo-management-full-access .follo-vivid-stat-grid {
        grid-template-columns:1fr !important;
    }

    body.follo-management-full-access .follo-brighter-banner {
        align-items:flex-start;
        flex-direction:column;
        padding:18px;
    }

    body.follo-management-full-access .follo-banner-brand {
        width:100%;
        justify-content:flex-start;
    }

    body.follo-management-full-access .follo-dashboard-heading h1 {
        font-size:29px !important;
    }
}


/* =========================================================
   v3.1 — FULL ACCESS TRUE-COLOR FIX
   Prevent global theme/custom.css overlays from washing out
   the standalone FOLLO App Manager portal.
========================================================= */

/*
 * The site's custom.css uses a global body::before white overlay.
 * On the standalone manager portal that creates the "hue / disabled"
 * appearance even when the user has Full Access.
 */
body.follo-management-standalone::before,
body.follo-management-standalone::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Keep the management shell above any theme-generated overlays. */
body.follo-management-standalone .follo-mp-shell {
    position: relative !important;
    z-index: 10 !important;
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
}

/* Full-access users must never inherit "disabled" visual treatment. */
body.follo-management-full-access,
body.follo-management-full-access .follo-mp-shell,
body.follo-management-full-access .follo-mp-stage,
body.follo-management-full-access .follo-mp-main,
body.follo-management-full-access .follo-front-portal-shell,
body.follo-management-full-access .follo-front-portal-content,
body.follo-management-full-access .follo-admin-wrap,
body.follo-management-full-access .follo-dashboard-vivid {
    opacity: 1 !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    mix-blend-mode: normal !important;
}

/* Stronger white workspace with crisp contrast. */
body.follo-management-full-access .follo-mp-main {
    background:
        radial-gradient(circle at 78% 5%, rgba(213,234,255,.55), transparent 29%),
        linear-gradient(180deg,#fbfdff 0%,#f4f8fc 100%) !important;
}

/* Stronger full-access typography. */
body.follo-management-full-access .follo-dashboard-vivid h1,
body.follo-management-full-access .follo-dashboard-vivid h2,
body.follo-management-full-access .follo-dashboard-vivid strong {
    opacity: 1 !important;
    filter: none !important;
    text-shadow: none !important;
}

body.follo-management-full-access .follo-dashboard-vivid h1 {
    color:#071431 !important;
}

body.follo-management-full-access .follo-dashboard-vivid h2 {
    color:#0b1734 !important;
}

body.follo-management-full-access .follo-dashboard-vivid .follo-admin-subtitle {
    color:#45658f !important;
}

/* Vivid red actions. */
body.follo-management-full-access .follo-add-campaign,
body.follo-management-full-access .follo-create-campaign-button {
    background:linear-gradient(135deg,#d01822 0%,#960810 100%) !important;
    border-color:#960810 !important;
    color:#fff !important;
    opacity:1 !important;
    filter:none !important;
    box-shadow:0 9px 20px rgba(150,8,16,.23) !important;
}

/* Vivid active navigation. */
body.follo-management-full-access .follo-mp-nav a.is-active {
    background:linear-gradient(135deg,#cf1721 0%,#900912 100%) !important;
    color:#fff !important;
    opacity:1 !important;
    filter:none !important;
    box-shadow:0 12px 28px rgba(144,9,18,.30) !important;
}

/* Full-color KPI cards. */
body.follo-management-full-access .follo-stat-blue .follo-stat-icon {
    background:#dcecff !important;
    color:#006bd9 !important;
}
body.follo-management-full-access .follo-stat-green .follo-stat-icon {
    background:#dbf8ed !important;
    color:#009b67 !important;
}
body.follo-management-full-access .follo-stat-orange .follo-stat-icon {
    background:#fff0d7 !important;
    color:#f08b00 !important;
}
body.follo-management-full-access .follo-stat-purple .follo-stat-icon {
    background:#eee0ff !important;
    color:#7d20d0 !important;
}

body.follo-management-full-access .follo-stat-blue em {
    color:#006bd9 !important;
}
body.follo-management-full-access .follo-stat-green em {
    color:#009b67 !important;
}
body.follo-management-full-access .follo-stat-orange em {
    color:#e97f00 !important;
}
body.follo-management-full-access .follo-stat-purple em {
    color:#7d20d0 !important;
}

/* Stronger card text and borders. */
body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-card,
body.follo-management-full-access .follo-dashboard-main-grid > .follo-admin-card {
    background:#fff !important;
    border-color:#d7e4f0 !important;
    opacity:1 !important;
    filter:none !important;
    box-shadow:0 12px 28px rgba(35,60,88,.085) !important;
}

body.follo-management-full-access .follo-stat-content > span {
    color:#294e7d !important;
}
body.follo-management-full-access .follo-stat-content > strong {
    color:#06132f !important;
}

/* Strong blue step markers. */
body.follo-management-full-access .follo-vivid-workflow > div > span {
    background:linear-gradient(145deg,#1176e5 0%,#045fc5 100%) !important;
    color:#fff !important;
}

/* True deep-red brand banner. */
body.follo-management-full-access .follo-brighter-banner {
    background:
        radial-gradient(circle at 62% 70%,rgba(255,135,135,.14),transparent 22%),
        linear-gradient(100deg,#790810 0%,#cf1e2a 48%,#760810 100%) !important;
    color:#fff !important;
    opacity:1 !important;
    filter:none !important;
    box-shadow:0 14px 30px rgba(121,8,16,.22) !important;
}

/* Full Access badge: intentionally bright green. */
body.follo-management-full-access .follo-access-badge {
    background:#dcfbea !important;
    border-color:#92e8bc !important;
    color:#087548 !important;
    opacity:1 !important;
}

/*
 * Limited-access state stays intentionally muted.
 * Keep this BELOW the full-access reset only for limited users.
 */
body.follo-management-limited-access .follo-mp-shell {
    filter:saturate(.58) !important;
    opacity:.78 !important;
}


/* =========================================================
   v3.2 — CREATE NEW APP INSIDE CAMPAIGN
========================================================= */
.follo-new-app-panel {
    grid-column:1 / -1;
    margin:4px 0 8px;
    padding:20px;
    border:1px solid #cfe0f0;
    border-radius:14px;
    background:linear-gradient(180deg,#fbfdff 0%,#f3f8fd 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

.follo-new-app-heading {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
    padding-bottom:14px;
    border-bottom:1px solid #dce7f1;
}

.follo-new-app-heading strong {
    display:block;
    color:#091633;
    font-size:16px;
    font-weight:900;
}

.follo-new-app-heading small {
    display:block;
    max-width:650px;
    margin-top:5px;
    color:#536d91;
    line-height:1.45;
}

.follo-new-badge {
    flex:0 0 auto;
    padding:6px 9px;
    border-radius:999px;
    background:#e4f1ff;
    color:#0769c9;
    font-size:9px;
    font-weight:900;
    letter-spacing:.08em;
}

.follo-new-app-panel label > span em {
    color:#7b8da7;
    font-size:10px;
    font-style:normal;
    font-weight:600;
}

.follo-new-app-panel input[type="file"] {
    box-sizing:border-box;
    width:100%;
    min-height:42px;
    padding:8px;
    border:1px solid #ccd9e6;
    border-radius:8px;
    background:#fff;
}

body.follo-management-full-access .follo-new-app-panel {
    opacity:1 !important;
    filter:none !important;
}


/* =========================================================
   v3.3 — CAMPAIGN CREATE RELIABILITY
========================================================= */
#follo-new-app-fields {
    display:block;
}

#follo-new-app-fields[aria-hidden="true"] {
    display:none;
}

#follo-new-app-fields[aria-hidden="false"] {
    display:block;
}

#follo-campaign-form button[type="submit"] {
    cursor:pointer;
}


/* =========================================================
   v3.4 — FRONT-END CAMPAIGN SAVE + NEW APP VISIBILITY
========================================================= */

/*
 * Do not globally hide the new-app panel.
 * Inline/JS state controls it so Create New App cannot silently
 * leave the required fields inaccessible.
 */
#follo-new-app-fields {
    opacity:1 !important;
    filter:none !important;
}

#follo-new-app-fields[aria-hidden="false"] {
    display:block !important;
}

#follo-new-app-fields[aria-hidden="true"] {
    display:none !important;
}


/* =========================================================
   v3.5 — MODERN SPONSORED CAMPAIGNS PAGE
========================================================= */

.follo-campaigns-modern {
    max-width:none !important;
}

.follo-campaigns-hero {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:30px;
    margin-bottom:24px;
}

.follo-campaigns-hero h1 {
    margin:0 0 10px !important;
    color:#071431 !important;
    font-size:38px !important;
    line-height:1.05 !important;
    font-weight:900 !important;
    letter-spacing:-.035em !important;
}

.follo-campaigns-hero p {
    max-width:830px;
    margin:0;
    color:#4e688f;
    font-size:14px;
    line-height:1.55;
}

.follo-campaign-stat-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    margin:0 0 20px;
}

.follo-campaign-stat-card {
    display:grid;
    grid-template-columns:72px minmax(0,1fr);
    gap:18px;
    align-items:center;
    min-height:116px;
    padding:18px;
    box-sizing:border-box;
    border:1px solid #dbe6f0;
    border-radius:15px;
    background:#fff;
    box-shadow:0 10px 25px rgba(36,61,90,.065);
}

.follo-cstat-icon {
    display:grid;
    place-items:center;
    width:66px;
    height:66px;
    border-radius:13px;
    font-size:28px;
    font-weight:900;
}

.follo-campaign-stat-card span {
    display:block;
    color:#294b78;
    font-size:12px;
    font-weight:850;
}

.follo-campaign-stat-card strong {
    display:block;
    margin:5px 0 3px;
    color:#07142f;
    font-size:28px;
    line-height:1;
    font-weight:900;
}

.follo-campaign-stat-card small {
    color:#5b7498;
    font-size:11px;
}

.follo-cstat-blue .follo-cstat-icon {
    background:#dcecff;
    color:#0872db;
}

.follo-cstat-green .follo-cstat-icon {
    background:#dcf8ed;
    color:#079563;
}

.follo-cstat-orange .follo-cstat-icon {
    background:#fff0d8;
    color:#ed8900;
}

.follo-cstat-purple .follo-cstat-icon {
    background:#efe1ff;
    color:#8b28c9;
}

.follo-campaign-filterbar {
    display:grid;
    grid-template-columns:minmax(260px,1fr) 150px 180px 170px;
    gap:12px;
    align-items:center;
    margin-bottom:4px;
    padding:16px;
    border:1px solid #dce6f0;
    border-radius:15px 15px 0 0;
    background:#fff;
    box-shadow:0 8px 22px rgba(36,61,90,.04);
}

.follo-campaign-search {
    position:relative;
    display:block;
}

.follo-campaign-search > span {
    position:absolute;
    left:14px;
    top:50%;
    z-index:2;
    transform:translateY(-50%);
    color:#597293;
    font-size:22px;
    pointer-events:none;
}

.follo-campaign-search input {
    width:100% !important;
    padding-left:42px !important;
}

.follo-campaign-filterbar select,
.follo-campaign-search input {
    min-height:46px !important;
    border:1px solid #d5e0eb !important;
    border-radius:10px !important;
    background:#fff !important;
    color:#21354f !important;
}

.follo-campaign-table-card {
    overflow:hidden;
    border:1px solid #dce6f0;
    border-radius:0 0 15px 15px;
    background:#fff;
    box-shadow:0 12px 28px rgba(36,61,90,.07);
}

.follo-campaign-table-scroll {
    width:100%;
    overflow-x:auto;
}

.follo-campaign-table {
    width:100%;
    min-width:1180px;
    border-collapse:separate;
    border-spacing:0;
}

.follo-campaign-table th {
    padding:16px 15px;
    background:#f5f8fb;
    color:#38557e;
    font-size:10px;
    font-weight:900;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.035em;
    border-bottom:1px solid #e0e8f0;
    white-space:nowrap;
}

.follo-campaign-table td {
    padding:20px 15px;
    color:#243650;
    font-size:12px;
    line-height:1.45;
    vertical-align:middle;
    border-bottom:1px solid #edf1f5;
}

.follo-campaign-table tbody tr:last-child td {
    border-bottom:0;
}

.follo-campaign-table tbody tr:hover {
    background:#fbfdff;
}

.follo-campaign-name-cell {
    min-width:165px;
}

.follo-campaign-name-cell strong {
    display:block;
    color:#071431 !important;
    font-size:13px;
    font-weight:900;
}

.follo-campaign-name-cell small {
    display:block;
    margin-top:5px;
    color:#7990ae;
}

.follo-campaign-sponsor-name {
    color:#223d61;
    font-weight:700;
}

.follo-campaign-app-cell {
    display:flex;
    align-items:center;
    gap:10px;
    min-width:150px;
}

.follo-campaign-app-icon {
    flex:0 0 auto;
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    overflow:hidden;
    border-radius:10px;
    background:linear-gradient(145deg,#b10f18,#d72a33);
    color:#fff;
    box-shadow:0 5px 12px rgba(166,15,24,.16);
}

.follo-campaign-app-icon img {
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    background:#fff;
}

.follo-campaign-app-icon span {
    color:#fff;
    font-size:18px;
    font-weight:900;
}

.follo-campaign-app-cell strong {
    display:block;
    color:#101b37 !important;
    font-size:12px;
    font-weight:850;
}

.follo-campaign-app-cell a {
    display:inline-block;
    margin-top:2px;
    color:#0870d8 !important;
    font-size:10px;
    font-weight:750;
    text-decoration:none !important;
}

.follo-campaign-date-cell {
    min-width:115px;
}

.follo-campaign-date-cell strong,
.follo-campaign-date-cell span {
    display:block;
}

.follo-campaign-date-cell strong {
    color:#243954 !important;
    font-size:11px;
}

.follo-campaign-date-cell span {
    color:#8090a7;
    font-size:9px;
}

.follo-campaign-amount {
    color:#071431 !important;
    font-size:13px !important;
    font-weight:850;
    white-space:nowrap;
}

.follo-campaign-payment,
.follo-campaign-status {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:26px;
    padding:0 11px;
    border-radius:999px;
    font-size:9px;
    line-height:1.1;
    font-weight:900;
    letter-spacing:.025em;
    white-space:nowrap;
}

.follo-payment-pending {
    background:#ffeadc;
    color:#d46004;
}

.follo-payment-paid {
    background:#dcf8ec;
    color:#087a50;
}

.follo-payment-refunded {
    background:#f4e3ff;
    color:#7e299f;
}

.follo-campaign-payment-note {
    display:block;
    margin-top:4px;
    color:#db7418;
    font-size:9px;
    white-space:nowrap;
}

.follo-campaign-status-awaiting_payment {
    background:#fff0d8;
    color:#c46a00;
}

.follo-campaign-status-active {
    background:#dff8eb;
    color:#08794f;
}

.follo-campaign-status-scheduled {
    background:#e1efff;
    color:#0866be;
}

.follo-campaign-status-paused {
    background:#eeeaf8;
    color:#68588f;
}

.follo-campaign-status-expired,
.follo-campaign-status-cancelled {
    background:#f1f3f5;
    color:#64748b;
}

.follo-campaign-actions {
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;
    min-width:330px;
}

.follo-action-btn {
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:0 11px;
    box-sizing:border-box;
    border:1px solid #d4dfea;
    border-radius:8px;
    background:#fff;
    color:#315174 !important;
    font-size:10px;
    font-weight:850;
    text-decoration:none !important;
    white-space:nowrap;
    transition:.15s ease;
}

.follo-action-btn:hover {
    transform:translateY(-1px);
    border-color:#bfcddd;
    box-shadow:0 5px 12px rgba(34,58,84,.07);
}

.follo-action-edit {
    color:#0870d8 !important;
}

.follo-action-paid {
    border-color:#bfe6d3;
    background:#edfbf5;
    color:#078157 !important;
}

.follo-action-request {
    border-color:#bdd9f6;
    background:#edf6ff;
    color:#0870d8 !important;
}

.follo-campaign-table-footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:58px;
    padding:0 18px;
    border-top:1px solid #edf1f5;
    color:#607a9d;
    font-size:10px;
}

.follo-campaign-empty-card {
    margin-top:18px;
}

@media (max-width:1200px) {
    .follo-campaign-stat-grid {
        grid-template-columns:1fr 1fr;
    }

    .follo-campaign-filterbar {
        grid-template-columns:1fr 1fr;
    }

    .follo-campaign-search {
        grid-column:1 / -1;
    }
}

@media (max-width:700px) {
    .follo-campaigns-hero {
        flex-direction:column;
    }

    .follo-campaign-stat-grid {
        grid-template-columns:1fr;
    }

    .follo-campaign-filterbar {
        grid-template-columns:1fr;
    }

    .follo-campaign-search {
        grid-column:auto;
    }

    .follo-campaigns-hero h1 {
        font-size:30px !important;
    }
}


/* =========================================================
   v3.6 — FULL-WIDTH CAMPAIGNS / NO HORIZONTAL SCROLL
========================================================= */

/* Hero */
.follo-campaigns-modern .follo-campaigns-hero {
    align-items:center;
}

.follo-campaigns-modern .follo-add-campaign {
    flex:0 0 auto !important;
    min-width:178px !important;
    min-height:52px !important;
    padding:0 22px !important;
    white-space:nowrap !important;
    font-size:13px !important;
}

/* Stats remain 4-across on normal desktop widths. */
.follo-campaigns-modern .follo-campaign-stat-grid {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

/* Search/filter bar matches the approved mockup. */
.follo-campaigns-modern .follo-campaign-filterbar {
    grid-template-columns:
        minmax(260px, 1.8fr)
        minmax(125px, .65fr)
        minmax(145px, .8fr)
        minmax(135px, .72fr)
        minmax(155px, .8fr) !important;
    gap:10px !important;
}

.follo-campaign-date-filter {
    position:relative;
    display:block;
}

.follo-campaign-date-filter > span {
    position:absolute;
    left:13px;
    top:50%;
    z-index:2;
    transform:translateY(-50%);
    color:#6f82a0;
    font-size:11px;
    pointer-events:none;
}

.follo-campaign-date-filter input {
    width:100% !important;
    min-height:46px !important;
    padding-left:78px !important;
    border:1px solid #d5e0eb !important;
    border-radius:10px !important;
    background:#fff !important;
    color:#21354f !important;
    box-sizing:border-box;
}

/*
 * Critical fix:
 * no auto-scroll container and no artificial 1180px minimum table width.
 */
.follo-campaigns-modern .follo-campaign-table-card {
    overflow:visible !important;
}

.follo-campaigns-modern .follo-campaign-table-scroll {
    width:100% !important;
    overflow:visible !important;
}

.follo-campaigns-modern .follo-campaign-table {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
}

/* Carefully balanced column widths so everything fits one desktop row. */
.follo-campaigns-modern .follo-campaign-table th:nth-child(1),
.follo-campaigns-modern .follo-campaign-table td:nth-child(1) {
    width:12%;
}

.follo-campaigns-modern .follo-campaign-table th:nth-child(2),
.follo-campaigns-modern .follo-campaign-table td:nth-child(2) {
    width:7%;
}

.follo-campaigns-modern .follo-campaign-table th:nth-child(3),
.follo-campaigns-modern .follo-campaign-table td:nth-child(3) {
    width:12%;
}

.follo-campaigns-modern .follo-campaign-table th:nth-child(4),
.follo-campaigns-modern .follo-campaign-table td:nth-child(4) {
    width:10%;
}

.follo-campaigns-modern .follo-campaign-table th:nth-child(5),
.follo-campaigns-modern .follo-campaign-table td:nth-child(5) {
    width:7%;
}

.follo-campaigns-modern .follo-campaign-table th:nth-child(6),
.follo-campaigns-modern .follo-campaign-table td:nth-child(6) {
    width:9%;
}

.follo-campaigns-modern .follo-campaign-table th:nth-child(7),
.follo-campaigns-modern .follo-campaign-table td:nth-child(7) {
    width:10%;
}

.follo-campaigns-modern .follo-campaign-table th:nth-child(8),
.follo-campaigns-modern .follo-campaign-table td:nth-child(8) {
    width:33%;
}

/* Compact but readable table. */
.follo-campaigns-modern .follo-campaign-table th {
    padding:15px 10px !important;
    font-size:9px !important;
}

.follo-campaigns-modern .follo-campaign-table td {
    padding:17px 10px !important;
    font-size:11px !important;
    overflow:visible !important;
    word-break:normal !important;
}

.follo-campaigns-modern .follo-campaign-name-cell {
    min-width:0 !important;
}

.follo-campaigns-modern .follo-campaign-name-cell strong {
    font-size:12px !important;
}

.follo-campaigns-modern .follo-campaign-name-cell small {
    font-size:9px !important;
}

.follo-campaigns-modern .follo-campaign-app-cell {
    min-width:0 !important;
    gap:8px !important;
}

.follo-campaigns-modern .follo-campaign-app-icon {
    width:38px !important;
    height:38px !important;
    border-radius:9px !important;
}

.follo-campaigns-modern .follo-campaign-app-cell strong {
    font-size:11px !important;
}

.follo-campaigns-modern .follo-campaign-date-cell {
    min-width:0 !important;
}

.follo-campaigns-modern .follo-campaign-date-cell strong {
    font-size:10px !important;
}

.follo-campaigns-modern .follo-campaign-payment,
.follo-campaigns-modern .follo-campaign-status {
    max-width:100%;
    padding:0 8px !important;
    font-size:8px !important;
    white-space:normal !important;
    text-align:center !important;
}

/* Actions stay visible in the same row instead of forcing horizontal scroll. */
.follo-campaigns-modern .follo-campaign-actions {
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:
        minmax(54px,.7fr)
        minmax(78px,.9fr)
        minmax(120px,1.45fr) !important;
    gap:6px !important;
    align-items:center !important;
}

.follo-campaigns-modern .follo-action-btn {
    width:100% !important;
    min-width:0 !important;
    min-height:36px !important;
    padding:0 7px !important;
    line-height:1.15 !important;
    white-space:normal !important;
    text-align:center !important;
    font-size:9px !important;
}

/* Footer + pagination */
.follo-campaigns-modern .follo-campaign-table-footer {
    gap:20px;
}

.follo-campaign-pagination {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
}

.follo-page-numbers {
    display:flex;
    align-items:center;
    gap:5px;
}

.follo-page-btn,
.follo-page-number {
    min-height:34px;
    padding:0 11px;
    border:1px solid #d6e1ec;
    border-radius:8px;
    background:#fff;
    color:#55708f;
    font-size:10px;
    font-weight:800;
    cursor:pointer;
}

.follo-page-number {
    min-width:34px;
    padding:0;
}

.follo-page-number.is-active {
    border-color:#a90d17;
    background:linear-gradient(135deg,#c81721,#980911);
    color:#fff;
    box-shadow:0 5px 12px rgba(152,9,17,.18);
}

.follo-page-btn:disabled {
    opacity:.42;
    cursor:default;
}

/* Tablet: keep table full-width; make actions stack slightly tighter. */
@media (max-width:1250px) {
    .follo-campaigns-modern .follo-campaign-table th:nth-child(8),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(8) {
        width:31%;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(1),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(1) {
        width:13%;
    }

    .follo-campaigns-modern .follo-campaign-actions {
        grid-template-columns:1fr 1fr !important;
    }

    .follo-campaigns-modern .follo-action-request {
        grid-column:1 / -1;
    }
}

/* Smaller screens: table becomes clean stacked campaign cards, still NO horizontal scroll. */
@media (max-width:980px) {
    .follo-campaigns-modern .follo-campaign-stat-grid {
        grid-template-columns:1fr 1fr !important;
    }

    .follo-campaigns-modern .follo-campaign-filterbar {
        grid-template-columns:1fr 1fr !important;
    }

    .follo-campaigns-modern .follo-campaign-search {
        grid-column:1 / -1 !important;
    }

    .follo-campaigns-modern .follo-campaign-table thead {
        display:none !important;
    }

    .follo-campaigns-modern .follo-campaign-table,
    .follo-campaigns-modern .follo-campaign-table tbody,
    .follo-campaigns-modern .follo-campaign-table tr,
    .follo-campaigns-modern .follo-campaign-table td {
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .follo-campaigns-modern .follo-campaign-table tr {
        padding:14px;
        border-bottom:1px solid #e7edf3;
    }

    .follo-campaigns-modern .follo-campaign-table td {
        padding:8px 0 !important;
        border:0 !important;
    }

    .follo-campaigns-modern .follo-campaign-actions {
        grid-template-columns:1fr 1fr 1.35fr !important;
    }
}

@media (max-width:700px) {
    .follo-campaigns-modern .follo-campaigns-hero {
        align-items:stretch !important;
    }

    .follo-campaigns-modern .follo-add-campaign {
        width:100% !important;
    }

    .follo-campaigns-modern .follo-campaign-stat-grid,
    .follo-campaigns-modern .follo-campaign-filterbar {
        grid-template-columns:1fr !important;
    }

    .follo-campaigns-modern .follo-campaign-search {
        grid-column:auto !important;
    }

    .follo-campaigns-modern .follo-campaign-actions {
        grid-template-columns:1fr !important;
    }

    .follo-campaigns-modern .follo-action-request {
        grid-column:auto;
    }

    .follo-campaigns-modern .follo-campaign-table-footer {
        align-items:flex-start;
        flex-direction:column;
    }
}


/* =========================================================
   v3.8 — PROFESSIONAL CAMPAIGN / SPONSOR / COLLECTION UI
========================================================= */

.follo-stat-red .follo-stat-icon,
.follo-cstat-red .follo-cstat-icon {
    background:#ffe1e3 !important;
    color:#c20f19 !important;
}
.follo-stat-red em { color:#c20f19 !important; }

.follo-campaign-status-past_due,
.follo-status-past_due {
    background:#ffe1e3 !important;
    color:#b90e18 !important;
}

/* Dashboard: allow five metrics without squeezing */
body.follo-management-full-access .follo-vivid-stat-grid {
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
}

/* Campaign title/app ellipsis */
.follo-ellipsis {
    display:block !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}

.follo-campaign-name-cell,
.follo-campaign-app-copy {
    min-width:0 !important;
}

.follo-campaign-app-cell {
    display:grid !important;
    grid-template-columns:42px minmax(0,1fr) !important;
    gap:9px !important;
    align-items:center !important;
    min-width:0 !important;
}

.follo-campaign-app-copy strong {
    margin-bottom:4px !important;
}

.follo-campaign-app-copy a {
    display:inline-flex !important;
    align-items:center !important;
    gap:4px !important;
    white-space:nowrap !important;
    font-size:10px !important;
    line-height:1.2 !important;
}

/* More useful campaign/app column width */
.follo-campaigns-modern .follo-campaign-table th:nth-child(1),
.follo-campaigns-modern .follo-campaign-table td:nth-child(1) { width:14% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(3),
.follo-campaigns-modern .follo-campaign-table td:nth-child(3) { width:13% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(8),
.follo-campaigns-modern .follo-campaign-table td:nth-child(8) { width:29% !important; }

/* Modern Recent Campaigns */
.follo-recent-campaign-list {
    display:grid;
    gap:9px;
}

.follo-recent-campaign-row {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto 18px;
    gap:10px;
    align-items:center;
    min-height:58px;
    padding:9px 12px;
    box-sizing:border-box;
    border:1px solid #dfe7ef;
    border-radius:10px;
    background:#fbfdff;
    color:#172033 !important;
    text-decoration:none !important;
    transition:.15s ease;
}

.follo-recent-campaign-row:hover {
    transform:translateY(-1px);
    border-color:#cbd8e5;
    box-shadow:0 6px 16px rgba(30,55,80,.06);
}

.follo-recent-campaign-title {
    min-width:0;
}

.follo-recent-campaign-title strong,
.follo-recent-campaign-title small {
    display:block;
}

.follo-recent-campaign-title strong {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#0c1834;
    font-size:12px;
}

.follo-recent-campaign-title small {
    margin-top:3px;
    color:#7287a3;
    font-size:9px;
}

.follo-recent-arrow {
    color:#7a8da8;
    font-size:20px;
}

/* Sponsor */
.follo-sponsor-workspace {
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);
    gap:18px;
    align-items:start;
}

.follo-sponsor-editor,
.follo-sponsor-list-card {
    padding:22px !important;
}

.follo-sponsor-form-section {
    margin:0 0 20px;
    padding:17px;
    border:1px solid #dfe8f0;
    border-radius:13px;
    background:#fbfdff;
}

.follo-sponsor-form-section h3 {
    margin:0 0 13px;
    color:#0b1835;
    font-size:14px;
    font-weight:900;
}

.follo-sponsor-list {
    display:grid;
    gap:11px;
}

.follo-sponsor-item {
    padding:15px;
    border:1px solid #dce6ef;
    border-radius:13px;
    background:#fff;
}

.follo-sponsor-item-main {
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:10px;
    align-items:center;
}

.follo-sponsor-avatar {
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:11px;
    background:linear-gradient(145deg,#a50c15,#d6252f);
    color:#fff;
    font-size:18px;
    font-weight:900;
}

.follo-sponsor-item-main strong,
.follo-sponsor-item-main span,
.follo-sponsor-item-main a {
    display:block;
}

.follo-sponsor-item-main strong { color:#0a1633; }
.follo-sponsor-item-main span { color:#647b9a; font-size:10px; }
.follo-sponsor-item-main a { color:#0870d8 !important; font-size:9px; text-decoration:none !important; }

.follo-sponsor-progress { margin:11px 0; }
.follo-sponsor-progress > div:first-child {
    display:flex;
    justify-content:space-between;
    color:#536d8e;
    font-size:9px;
}
.follo-progress-track {
    height:7px;
    margin-top:5px;
    overflow:hidden;
    border-radius:999px;
    background:#e6edf4;
}
.follo-progress-track i {
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#0870d8,#0ca36a);
}
.follo-sponsor-item-actions {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.follo-sponsor-item-actions form { margin:0; }

/* Collections */
.follo-collection-card,
.follo-payment-history-card {
    margin-top:18px;
    padding:20px !important;
}

.follo-collection-list {
    display:grid;
    gap:10px;
}

.follo-collection-row {
    display:grid;
    grid-template-columns:minmax(190px,1.4fr) .65fr .8fr .85fr minmax(255px,1.25fr);
    gap:14px;
    align-items:center;
    padding:15px;
    border:1px solid #dce6ef;
    border-left:4px solid #ee9b18;
    border-radius:12px;
    background:#fff;
}

.follo-collection-row.is-past-due {
    border-left-color:#c20f19;
    background:linear-gradient(90deg,#fff7f8 0%,#fff 18%);
}

.follo-collection-title { min-width:0; }
.follo-collection-title > strong {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.follo-collection-row span {
    display:block;
    color:#607898;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
}
.follo-collection-row strong {
    display:block;
    margin-top:3px;
    color:#0a1734;
    font-size:11px;
}
.follo-collection-row small {
    display:block;
    margin-top:3px;
    color:#7d8fa7;
    font-size:9px;
}
.follo-collection-row .is-overdue {
    color:#ba111a !important;
    font-weight:850;
}
.follo-collection-actions {
    display:flex;
    gap:6px;
    flex-wrap:wrap;
}

/* Sponsor public intake */
.follo-sponsor-intake-shell {
    width:min(980px,calc(100% - 30px));
    margin:40px auto 80px;
    padding:25px;
    box-sizing:border-box;
    border:1px solid #dae5ef;
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 45px rgba(35,60,88,.10);
}

.follo-sponsor-intake-shell h1 {
    color:#071431;
    font-size:34px;
    font-weight:900;
}

.follo-sponsor-intake-form section {
    margin:18px 0;
    padding:18px;
    border:1px solid #e0e8f1;
    border-radius:13px;
    background:#f9fcff;
}

.follo-sponsor-intake-form section h2 {
    margin:0 0 13px;
    color:#0a1835;
    font-size:15px;
}

.follo-sponsor-intake-form textarea {
    width:100%;
    box-sizing:border-box;
}

.follo-intake-success,
.follo-sponsor-intake-message {
    padding:14px;
    border-radius:10px;
    background:#eaf9f1;
    color:#08724b;
}

@media (max-width:1350px) {
    body.follo-management-full-access .follo-vivid-stat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

@media (max-width:1200px) {
    .follo-campaign-stat-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
    .follo-sponsor-workspace { grid-template-columns:1fr; }
    .follo-collection-row { grid-template-columns:1fr 1fr 1fr; }
    .follo-collection-actions { grid-column:1 / -1; }
}

@media (max-width:760px) {
    body.follo-management-full-access .follo-vivid-stat-grid,
    .follo-campaign-stat-grid { grid-template-columns:1fr !important; }
    .follo-collection-row { grid-template-columns:1fr; }
    .follo-collection-actions { grid-column:auto; }
}


/* =========================================================
   v3.9 — WP-ADMIN SYNC + REPORTS + DATE FILTER POLISH
========================================================= */

/* Campaign date filter: native date field only, no overlapping custom label. */
.follo-campaign-date-filter {
    display:block !important;
    position:relative !important;
}

.follo-campaign-date-filter > span:not(.screen-reader-text) {
    display:none !important;
}

.follo-campaign-date-filter input[type="date"] {
    width:100% !important;
    min-height:46px !important;
    padding:8px 12px !important;
    box-sizing:border-box !important;
    border:1px solid #d5e0eb !important;
    border-radius:10px !important;
    background:#fff !important;
    color:#21354f !important;
    font-size:12px !important;
    line-height:1.2 !important;
}

.follo-campaign-date-filter .screen-reader-text {
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
    border:0 !important;
}

/* ---------------------------------------------------------
   Professional sponsor summary
--------------------------------------------------------- */
.follo-sponsor-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin:20px 0;
}

.follo-sponsor-summary-card {
    padding:18px 20px;
    box-sizing:border-box;
    border:1px solid #dce6ef;
    border-radius:14px;
    background:#fff;
    box-shadow:0 9px 24px rgba(36,61,90,.06);
}

.follo-sponsor-summary-card span,
.follo-sponsor-summary-card strong,
.follo-sponsor-summary-card small {
    display:block;
}

.follo-sponsor-summary-card span {
    color:#3b587e;
    font-size:10px;
    font-weight:900;
    letter-spacing:.035em;
    text-transform:uppercase;
}

.follo-sponsor-summary-card strong {
    margin:7px 0 5px;
    color:#071431;
    font-size:28px;
    line-height:1;
    font-weight:900;
}

.follo-sponsor-summary-card small {
    color:#6a819f;
    font-size:10px;
}

.follo-sponsor-summary-card.is-blue { border-top:4px solid #0871d8; }
.follo-sponsor-summary-card.is-green { border-top:4px solid #0b9a65; }
.follo-sponsor-summary-card.is-orange { border-top:4px solid #ed9512; }

.follo-sponsor-progress small {
    display:block;
    margin-top:6px;
    color:#7b8fa7;
    font-size:9px;
    line-height:1.4;
}

/* ---------------------------------------------------------
   Reports
--------------------------------------------------------- */
.follo-reports-modern .follo-admin-grid {
    margin-top:22px;
}

.follo-reports-modern .follo-admin-card {
    min-height:180px;
    padding:24px !important;
}

.follo-reports-modern .follo-admin-card h2 {
    margin-bottom:8px !important;
}

.follo-reports-modern .follo-admin-card p {
    color:#5a7193;
    line-height:1.55;
}

/* ---------------------------------------------------------
   WP-ADMIN: same modern visual language as front-end portal
--------------------------------------------------------- */
body.follo-plugin-admin {
    background:#f3f7fb !important;
}

body.follo-plugin-admin #wpcontent {
    background:
        radial-gradient(circle at 78% 3%,rgba(215,235,255,.62),transparent 28%),
        linear-gradient(180deg,#f9fcff 0%,#f3f7fb 100%) !important;
}

body.follo-plugin-admin #wpbody-content {
    box-sizing:border-box;
    padding:30px 28px 55px !important;
}

body.follo-plugin-admin .wrap.follo-admin-wrap {
    width:100% !important;
    max-width:1500px !important;
    margin:0 !important;
}

body.follo-plugin-admin .wrap.follo-admin-wrap > h1,
body.follo-plugin-admin .follo-campaigns-hero h1,
body.follo-plugin-admin .follo-sponsors-modern > h1,
body.follo-plugin-admin .follo-collections-modern > h1,
body.follo-plugin-admin .follo-reports-modern > h1 {
    color:#071431 !important;
    font-weight:900 !important;
    letter-spacing:-.035em !important;
}

body.follo-plugin-admin .follo-admin-subtitle {
    color:#526d91 !important;
}

body.follo-plugin-admin .follo-admin-card,
body.follo-plugin-admin .follo-campaign-stat-card,
body.follo-plugin-admin .follo-sponsor-summary-card,
body.follo-plugin-admin .follo-campaign-table-card,
body.follo-plugin-admin .follo-campaign-filterbar {
    border-color:#d9e5ef !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(36,61,90,.07) !important;
}

body.follo-plugin-admin .button-primary,
body.follo-plugin-admin .page-title-action {
    border-color:#a90b14 !important;
    background:linear-gradient(135deg,#cf1822,#960811) !important;
    color:#fff !important;
    border-radius:9px !important;
    box-shadow:0 7px 16px rgba(150,8,17,.17) !important;
}

body.follo-plugin-admin .button:not(.button-primary) {
    border-color:#cfdae6;
    border-radius:8px;
}

body.follo-plugin-admin input[type="text"],
body.follo-plugin-admin input[type="email"],
body.follo-plugin-admin input[type="url"],
body.follo-plugin-admin input[type="number"],
body.follo-plugin-admin input[type="date"],
body.follo-plugin-admin select,
body.follo-plugin-admin textarea {
    border-color:#d4dfeb !important;
    border-radius:9px !important;
    background:#fff !important;
    box-shadow:none !important;
}

/* Remove classic WP footer noise only on FOLLO manager pages. */
body.follo-plugin-admin #wpfooter {
    color:#7c8fa8;
}

/* Ensure sponsor workspace remains spacious inside wp-admin. */
body.follo-plugin-admin .follo-sponsor-workspace {
    grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);
}

/* Responsive */
@media (max-width:1100px) {
    .follo-sponsor-summary-grid {
        grid-template-columns:1fr 1fr;
    }

    body.follo-plugin-admin .follo-sponsor-workspace {
        grid-template-columns:1fr;
    }
}

@media (max-width:700px) {
    .follo-sponsor-summary-grid {
        grid-template-columns:1fr;
    }

    body.follo-plugin-admin #wpbody-content {
        padding:20px 14px 45px !important;
    }
}


/* =========================================================
   v4.0 — CAMPAIGN ACTION SPACING + PAYMENT METHOD
========================================================= */

/* Compact one-line date range saves horizontal space. */
.follo-campaign-date-cell {
    min-width:0 !important;
}

.follo-date-range {
    display:block !important;
    color:#263b58 !important;
    font-size:9px !important;
    line-height:1.35 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
}

/* Rebalance desktop columns so actions never collide. */
.follo-campaigns-modern .follo-campaign-table th:nth-child(1),
.follo-campaigns-modern .follo-campaign-table td:nth-child(1) { width:13% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(2),
.follo-campaigns-modern .follo-campaign-table td:nth-child(2) { width:7% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(3),
.follo-campaigns-modern .follo-campaign-table td:nth-child(3) { width:12% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(4),
.follo-campaigns-modern .follo-campaign-table td:nth-child(4) { width:13% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(5),
.follo-campaigns-modern .follo-campaign-table td:nth-child(5) { width:6% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(6),
.follo-campaigns-modern .follo-campaign-table td:nth-child(6) { width:8% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(7),
.follo-campaigns-modern .follo-campaign-table td:nth-child(7) { width:10% !important; }

.follo-campaigns-modern .follo-campaign-table th:nth-child(8),
.follo-campaigns-modern .follo-campaign-table td:nth-child(8) { width:31% !important; }

.follo-campaign-actions {
    min-width:0 !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:minmax(58px,.75fr) minmax(90px,.95fr) minmax(132px,1.45fr) !important;
    gap:7px !important;
    align-items:stretch !important;
}

.follo-campaign-actions .follo-action-btn {
    min-width:0 !important;
    width:100% !important;
    box-sizing:border-box !important;
    padding:0 8px !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    text-align:center !important;
    line-height:1.15 !important;
}

.follo-action-request {
    position:relative !important;
    z-index:1 !important;
}

/* Give form helper notes a professional appearance. */
.follo-sponsor-form-section label small,
.follo-sponsor-intake-form label small {
    display:block;
    margin-top:6px;
    color:#7488a4;
    font-size:9px;
    line-height:1.45;
}

/* Tablet: actions wrap into two rows, never overlap. */
@media (max-width:1280px) {
    .follo-campaign-actions {
        grid-template-columns:1fr 1fr !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:1 / -1 !important;
    }
}

/* Small screens: fully stacked. */
@media (max-width:760px) {
    .follo-campaign-actions {
        grid-template-columns:1fr !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:auto !important;
    }

    .follo-date-range {
        white-space:normal !important;
    }
}


/* =========================================================
   v4.1 — WP-ADMIN ADD CAMPAIGN + PAYMENT REQUEST CONFIRMATION
========================================================= */

/* Keep the wp-admin dashboard greeting and Add Campaign button aligned. */
body.follo-plugin-admin .follo-dashboard-actions,
body.follo-plugin-admin .follo-campaigns-hero-actions {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:12px !important;
    flex-wrap:wrap !important;
}

body.follo-plugin-admin .follo-dashboard-actions .button-primary,
body.follo-plugin-admin .follo-campaigns-hero-actions .button-primary,
body.follo-plugin-admin a[href*="action=new"].button-primary {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:148px !important;
    min-height:44px !important;
    padding:10px 18px !important;
    box-sizing:border-box !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
    text-align:center !important;
}

/* Payment-request success screen. */
.follo-payment-request-confirmation {
    max-width:900px !important;
    padding-top:28px;
}

.follo-confirmation-card {
    padding:38px;
    box-sizing:border-box;
    border:1px solid #d8e4ee;
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 46px rgba(35,60,88,.10);
    text-align:center;
}

.follo-confirmation-icon {
    display:grid;
    place-items:center;
    width:68px;
    height:68px;
    margin:0 auto 18px;
    border-radius:50%;
    background:#def7ea;
    color:#078657;
    font-size:34px;
    font-weight:900;
}

.follo-confirmation-card h1 {
    margin:6px 0 12px !important;
    color:#071431 !important;
    font-size:34px !important;
    font-weight:900 !important;
}

.follo-confirmation-lead {
    max-width:660px;
    margin:0 auto 24px;
    color:#526d91;
    font-size:15px;
    line-height:1.6;
}

.follo-confirmation-lead strong {
    color:#071431;
}

.follo-confirmation-details {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin:24px 0;
    text-align:left;
}

.follo-confirmation-details > div {
    padding:15px;
    border:1px solid #e0e8f0;
    border-radius:12px;
    background:#f8fbfe;
}

.follo-confirmation-details span,
.follo-confirmation-details strong {
    display:block;
}

.follo-confirmation-details span {
    color:#7186a1;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
}

.follo-confirmation-details strong {
    margin-top:5px;
    overflow:hidden;
    color:#0b1835;
    font-size:12px;
    text-overflow:ellipsis;
}

.follo-confirmation-note {
    margin:20px 0;
    padding:15px 18px;
    border:1px solid #dce8f2;
    border-radius:11px;
    background:#f5f9fd;
    color:#506a8d;
    line-height:1.55;
}

.follo-confirmation-actions {
    display:flex;
    justify-content:center;
    gap:10px;
    flex-wrap:wrap;
}

.follo-confirmation-actions .button {
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:8px 16px !important;
}

@media (max-width:850px) {
    .follo-confirmation-details {
        grid-template-columns:1fr 1fr;
    }
}

@media (max-width:560px) {
    .follo-confirmation-card {
        padding:25px 18px;
    }

    .follo-confirmation-details {
        grid-template-columns:1fr;
    }
}


/* =========================================================
   v4.2 — ADD CAMPAIGN BUTTON TRUE VERTICAL CENTERING
========================================================= */

/*
 * Fixes the wp-admin Add Campaign text sitting too high inside the red pill.
 * Use a fixed flex height and remove inherited WordPress line-height.
 */
body.follo-plugin-admin .follo-add-campaign,
body.follo-plugin-admin .page-title-action.follo-add-campaign,
body.follo-plugin-admin a.follo-add-campaign,
body.follo-plugin-admin a[href*="action=new"].follo-add-campaign {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    min-width:150px !important;
    height:46px !important;
    min-height:46px !important;

    padding:0 20px !important;
    margin:0 !important;

    box-sizing:border-box !important;
    border-radius:10px !important;

    line-height:1 !important;
    font-size:13px !important;
    font-weight:850 !important;
    vertical-align:middle !important;

    white-space:nowrap !important;
}

/* Center the + and text as one unit. */
body.follo-plugin-admin .follo-add-campaign > span {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    margin:0 5px 0 0 !important;
    padding:0 !important;

    line-height:1 !important;
    transform:none !important;
}

/* Prevent WP's page-title-action defaults from nudging text upward. */
body.follo-plugin-admin .page-title-action.follo-add-campaign {
    top:auto !important;
    position:relative !important;
}

/* Front-end manager gets the same corrected button alignment. */
.follo-campaigns-modern .follo-add-campaign {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    height:46px !important;
    min-height:46px !important;
    padding:0 20px !important;

    line-height:1 !important;
}


/* =========================================================
   v4.3 — IN-PAGE PAYMENT REQUEST CONFIRMATION MODAL
========================================================= */

.follo-confirm-overlay {
    position:fixed !important;
    inset:0 !important;
    z-index:999999 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    padding:24px !important;
    box-sizing:border-box !important;

    background:rgba(10,22,40,.48) !important;
    backdrop-filter:blur(3px) !important;
    -webkit-backdrop-filter:blur(3px) !important;

    animation:folloConfirmFadeIn .16s ease-out;
}

.follo-confirm-overlay.is-closing {
    opacity:0 !important;
    transition:opacity .14s ease !important;
}

.follo-confirm-modal {
    width:min(520px,100%) !important;
    position:relative !important;

    padding:30px !important;
    box-sizing:border-box !important;

    border:1px solid #d9e5ef !important;
    border-radius:18px !important;
    background:#fff !important;

    box-shadow:0 30px 80px rgba(8,20,36,.24) !important;
    text-align:center !important;

    animation:folloConfirmPop .18s ease-out;
}

.follo-confirm-close {
    position:absolute !important;
    top:12px !important;
    right:12px !important;

    width:34px !important;
    height:34px !important;

    display:grid !important;
    place-items:center !important;

    padding:0 !important;
    border:0 !important;
    border-radius:50% !important;

    background:#f0f4f8 !important;
    color:#60728d !important;

    font-size:22px !important;
    line-height:1 !important;
    cursor:pointer !important;
}

.follo-confirm-check {
    width:64px !important;
    height:64px !important;

    display:grid !important;
    place-items:center !important;

    margin:0 auto 15px !important;

    border-radius:50% !important;
    background:#def8eb !important;
    color:#078657 !important;

    font-size:31px !important;
    font-weight:900 !important;
}

.follo-confirm-modal h2 {
    margin:0 0 10px !important;
    color:#071431 !important;

    font-size:25px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
}

.follo-confirm-modal > p {
    margin:0 auto 20px !important;
    color:#536b8c !important;
    font-size:13px !important;
    line-height:1.55 !important;
}

.follo-confirm-modal > p strong {
    color:#071431 !important;
}

.follo-confirm-summary {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;

    margin:20px 0 !important;

    text-align:left !important;
}

.follo-confirm-summary > div {
    min-width:0 !important;
    padding:12px !important;

    border:1px solid #e0e8f0 !important;
    border-radius:10px !important;

    background:#f8fbfe !important;
}

.follo-confirm-summary span,
.follo-confirm-summary strong {
    display:block !important;
}

.follo-confirm-summary span {
    margin-bottom:4px !important;

    color:#7487a0 !important;
    font-size:8px !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.035em !important;
}

.follo-confirm-summary strong {
    min-width:0 !important;

    overflow:hidden !important;
    color:#0a1734 !important;

    font-size:11px !important;
    line-height:1.35 !important;

    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}

.follo-confirm-footnote {
    margin:17px 0 !important;
    color:#6b7f99 !important;
    font-size:10px !important;
}

.follo-confirm-ok {
    min-width:112px !important;
    min-height:42px !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    border-radius:9px !important;

    background:linear-gradient(135deg,#c91620,#970810) !important;
    border-color:#970810 !important;
    color:#fff !important;
}

@keyframes folloConfirmFadeIn {
    from { opacity:0; }
    to { opacity:1; }
}

@keyframes folloConfirmPop {
    from { opacity:0; transform:translateY(8px) scale(.98); }
    to { opacity:1; transform:translateY(0) scale(1); }
}

@media (max-width:560px) {
    .follo-confirm-overlay {
        padding:14px !important;
    }

    .follo-confirm-modal {
        padding:26px 18px 22px !important;
    }

    .follo-confirm-summary {
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   v4.6 — RESPONSIVE LAYOUT SYSTEM
   Desktop, laptop, tablet, mobile, and narrow browser windows
========================================================= */

/* Always allow grid/flex children to shrink instead of overflowing. */
.follo-mp-stage,
.follo-mp-main,
.follo-admin-wrap,
.follo-dashboard-vivid,
.follo-dashboard-main-grid,
.follo-vivid-stat-grid,
.follo-campaigns-modern,
.follo-sponsors-modern,
.follo-collections-modern,
.follo-reports-modern,
.follo-admin-card,
.follo-stat-card {
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}

/* Main manager workspace must never create a page-level horizontal scrollbar. */
body.follo-management-standalone,
body.follo-management-standalone .follo-mp-stage,
body.follo-management-standalone .follo-mp-main {
    overflow-x:hidden !important;
}

body.follo-management-full-access .follo-dashboard-heading {
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:22px !important;
    flex-wrap:wrap !important;
}

body.follo-management-full-access .follo-dashboard-heading > div:first-child {
    min-width:0 !important;
    flex:1 1 520px !important;
}

/* Dashboard metrics: comfortable full desktop layout. */
body.follo-management-full-access .follo-vivid-stat-grid {
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:16px !important;
}

body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-card {
    min-height:150px !important;
    padding:18px !important;
    grid-template-columns:72px minmax(0,1fr) !important;
    gap:16px !important;
    align-items:center !important;
}

body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-icon {
    width:68px !important;
    height:68px !important;
    font-size:30px !important;
}

body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-content > span {
    overflow-wrap:anywhere !important;
}

body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-content > em {
    overflow-wrap:anywhere !important;
}

/* Main dashboard content stays two columns only when there is enough room. */
body.follo-management-full-access .follo-dashboard-main-grid {
    display:grid !important;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
    gap:18px !important;
}

/* Recent campaign rows must be allowed to shrink cleanly. */
.follo-recent-campaign-row {
    min-width:0 !important;
}

.follo-recent-campaign-title,
.follo-recent-campaign-title strong,
.follo-recent-campaign-title small {
    min-width:0 !important;
}

/* Campaign action/header areas wrap instead of colliding. */
.follo-campaigns-hero,
.follo-admin-title-row,
.follo-card-heading-row {
    flex-wrap:wrap !important;
}

.follo-campaigns-hero > div:first-child {
    min-width:0 !important;
    flex:1 1 560px !important;
}

/* Form/filter controls always fit their columns. */
.follo-campaign-filterbar input,
.follo-campaign-filterbar select,
.follo-form-grid input,
.follo-form-grid select,
.follo-form-grid textarea {
    max-width:100% !important;
    box-sizing:border-box !important;
}

/* ---------------------------------------------------------
   Laptop / smaller desktop
   Sidebar consumes significant width, so collapse cards earlier.
--------------------------------------------------------- */
@media (max-width:1550px) {
    body.follo-management-full-access .follo-vivid-stat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-card {
        min-height:132px !important;
    }

    body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-content > span {
        font-size:11px !important;
    }

    .follo-campaign-stat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

/* At this width the dashboard's two large panels are better stacked. */
@media (max-width:1280px) {
    body.follo-management-full-access .follo-dashboard-main-grid {
        grid-template-columns:1fr !important;
    }

    .follo-campaigns-hero h1,
    .follo-sponsors-modern > h1,
    .follo-collections-modern > h1,
    .follo-reports-modern > h1 {
        font-size:32px !important;
    }

    .follo-campaign-filterbar {
        grid-template-columns:1fr 1fr 1fr !important;
    }

    .follo-campaign-search {
        grid-column:1 / -1 !important;
    }

    .follo-campaign-date-filter {
        min-width:0 !important;
    }

    .follo-sponsor-workspace {
        grid-template-columns:1fr !important;
    }

    .follo-collection-row {
        grid-template-columns:1fr 1fr 1fr !important;
    }

    .follo-collection-actions {
        grid-column:1 / -1 !important;
    }
}

/* ---------------------------------------------------------
   Tablet / narrow window
--------------------------------------------------------- */
@media (max-width:1100px) {
    body.follo-management-full-access .follo-vivid-stat-grid {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-card {
        min-height:122px !important;
    }

    .follo-campaign-stat-grid,
    .follo-sponsor-summary-grid,
    .follo-collection-stat-grid {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .follo-reports-modern .follo-admin-grid,
    .follo-admin-grid-2 {
        grid-template-columns:1fr !important;
    }
}

/* Collapse the persistent sidebar sooner, before content gets cramped. */
@media (max-width:900px) {
    .follo-mp-shell {
        display:block !important;
    }

    .follo-mp-sidebar {
        position:relative !important;
        top:auto !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        padding:15px !important;
    }

    .follo-mp-brand {
        padding:0 4px 13px !important;
    }

    .follo-mp-brand-tagline {
        display:none !important;
    }

    .follo-mp-home-link {
        margin-bottom:8px !important;
    }

    .follo-mp-nav {
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:7px !important;
    }

    .follo-mp-nav a,
    .follo-mp-home-link {
        min-height:58px !important;
        padding:8px 7px !important;
        grid-template-columns:1fr !important;
        justify-items:center !important;
        text-align:center !important;
        font-size:10px !important;
    }

    .follo-mp-nav-icon {
        height:20px !important;
    }

    .follo-mp-help-card,
    .follo-mp-sidebar-spacer,
    .follo-mp-back-link {
        display:none !important;
    }

    .follo-mp-topbar {
        min-height:64px !important;
        padding:0 15px !important;
    }

    .follo-mp-main {
        padding:22px 15px 32px !important;
    }

    .follo-mp-footer {
        margin:0 15px !important;
    }

    .follo-campaigns-hero {
        align-items:stretch !important;
    }

    .follo-campaigns-modern .follo-add-campaign {
        flex:0 0 auto !important;
    }

    /* Existing campaign table becomes stacked cards at this width. */
    .follo-campaigns-modern .follo-campaign-table thead {
        display:none !important;
    }

    .follo-campaigns-modern .follo-campaign-table,
    .follo-campaigns-modern .follo-campaign-table tbody,
    .follo-campaigns-modern .follo-campaign-table tr,
    .follo-campaigns-modern .follo-campaign-table td {
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .follo-campaigns-modern .follo-campaign-table tr {
        padding:14px !important;
        border-bottom:1px solid #e5edf4 !important;
    }

    .follo-campaigns-modern .follo-campaign-table td {
        padding:7px 0 !important;
        border:0 !important;
    }

    .follo-campaign-actions {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        width:100% !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:1 / -1 !important;
    }
}

/* ---------------------------------------------------------
   Mobile
--------------------------------------------------------- */
@media (max-width:700px) {
    body.follo-management-full-access .follo-dashboard-heading {
        display:block !important;
    }

    body.follo-management-full-access .follo-dashboard-heading h1,
    .follo-campaigns-hero h1,
    .follo-sponsors-modern > h1,
    .follo-collections-modern > h1,
    .follo-reports-modern > h1 {
        font-size:27px !important;
        line-height:1.1 !important;
    }

    body.follo-management-full-access .follo-vivid-stat-grid,
    .follo-campaign-stat-grid,
    .follo-sponsor-summary-grid,
    .follo-collection-stat-grid {
        grid-template-columns:1fr !important;
    }

    body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-card {
        min-height:108px !important;
        grid-template-columns:58px minmax(0,1fr) !important;
        padding:14px !important;
    }

    body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-icon {
        width:54px !important;
        height:54px !important;
        font-size:25px !important;
    }

    body.follo-management-full-access .follo-vivid-stat-grid .follo-stat-content > strong {
        font-size:26px !important;
        margin:5px 0 !important;
    }

    .follo-mp-nav {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .follo-mp-topbar-right .follo-mp-user-copy {
        display:none !important;
    }

    .follo-mp-main {
        padding:18px 11px 28px !important;
    }

    .follo-campaigns-hero,
    .follo-admin-title-row {
        flex-direction:column !important;
        align-items:stretch !important;
    }

    .follo-campaigns-modern .follo-add-campaign,
    .follo-add-campaign {
        width:100% !important;
        min-width:0 !important;
    }

    .follo-campaign-filterbar {
        grid-template-columns:1fr !important;
        padding:12px !important;
    }

    .follo-campaign-search {
        grid-column:auto !important;
    }

    .follo-form-grid,
    .follo-rate-grid {
        grid-template-columns:1fr !important;
    }

    .follo-sponsor-editor,
    .follo-sponsor-list-card,
    .follo-collection-card,
    .follo-payment-history-card,
    body.follo-management-full-access .follo-dashboard-main-grid > .follo-admin-card {
        padding:14px !important;
    }

    .follo-collection-row {
        grid-template-columns:1fr !important;
    }

    .follo-collection-actions {
        grid-column:auto !important;
    }

    .follo-campaign-actions {
        grid-template-columns:1fr !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:auto !important;
    }

    .follo-recent-campaign-row {
        grid-template-columns:minmax(0,1fr) auto !important;
        gap:8px !important;
    }

    .follo-recent-campaign-row .follo-badge {
        justify-self:end !important;
    }

    .follo-recent-arrow {
        display:none !important;
    }

    .follo-confirm-modal {
        width:100% !important;
    }
}

/* Very small phones */
@media (max-width:420px) {
    .follo-mp-nav {
        grid-template-columns:1fr !important;
    }

    .follo-mp-nav a,
    .follo-mp-home-link {
        min-height:50px !important;
    }

    .follo-mp-topbar {
        padding:0 10px !important;
    }

    .follo-mp-main {
        padding-left:8px !important;
        padding-right:8px !important;
    }

    .follo-confirm-overlay {
        padding:8px !important;
    }
}

/* ---------------------------------------------------------
   wp-admin responsiveness
--------------------------------------------------------- */
@media (max-width:1280px) {
    body.follo-plugin-admin #wpbody-content {
        padding:24px 18px 48px !important;
    }

    body.follo-plugin-admin .follo-vivid-stat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    body.follo-plugin-admin .follo-dashboard-main-grid {
        grid-template-columns:1fr !important;
    }
}

@media (max-width:900px) {
    body.follo-plugin-admin .follo-vivid-stat-grid {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media (max-width:782px) {
    body.follo-plugin-admin #wpbody-content {
        padding:18px 10px 40px !important;
    }

    body.follo-plugin-admin .follo-vivid-stat-grid {
        grid-template-columns:1fr !important;
    }

    body.follo-plugin-admin .follo-campaign-filterbar {
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   v4.7 — TRUE RESPONSIVE LAYOUT USING CONTAINER QUERIES
   Fixes narrow manager workspace even when browser viewport is wide.
========================================================= */

/*
 * Previous rules relied mostly on viewport width.
 * In FOLLO Manager the 270px sidebar can make the CONTENT area narrow
 * while the browser viewport is still technically "desktop" width.
 *
 * Container queries respond to the actual manager content width.
 */
.follo-mp-main {
    container-type:inline-size !important;
    container-name:folloManager !important;
}

/* Make campaign page children shrink safely. */
.follo-campaigns-modern,
.follo-campaigns-modern *,
.follo-dashboard-vivid,
.follo-dashboard-vivid * {
    min-width:0;
    box-sizing:border-box;
}

/* ---------- Manager content <= 1180px ---------- */
@container folloManager (max-width:1180px) {
    .follo-campaign-stat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    .follo-campaign-stat-card {
        min-height:118px !important;
        padding:15px !important;
        grid-template-columns:58px minmax(0,1fr) !important;
        gap:13px !important;
    }

    .follo-campaign-stat-card .follo-cstat-icon {
        width:54px !important;
        height:54px !important;
        font-size:24px !important;
    }

    .follo-campaign-stat-card strong {
        font-size:24px !important;
    }

    .follo-campaign-filterbar {
        grid-template-columns:minmax(220px,1.4fr) 1fr 1fr !important;
    }

    .follo-campaign-search {
        grid-column:1 / -1 !important;
    }

    .follo-campaign-date-filter {
        min-width:0 !important;
    }

    .follo-campaigns-hero {
        gap:16px !important;
    }
}

/* ---------- Manager content <= 980px ---------- */
@container folloManager (max-width:980px) {
    .follo-campaign-stat-grid {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .follo-campaigns-hero {
        flex-direction:column !important;
        align-items:stretch !important;
    }

    .follo-campaigns-modern .follo-add-campaign {
        align-self:flex-start !important;
    }

    .follo-campaign-filterbar {
        grid-template-columns:1fr 1fr !important;
    }

    .follo-campaign-search {
        grid-column:1 / -1 !important;
    }

    /*
     * Switch table to campaign cards based on CONTENT width,
     * not browser viewport width.
     */
    .follo-campaigns-modern .follo-campaign-table thead {
        display:none !important;
    }

    .follo-campaigns-modern .follo-campaign-table,
    .follo-campaigns-modern .follo-campaign-table tbody,
    .follo-campaigns-modern .follo-campaign-table tr,
    .follo-campaigns-modern .follo-campaign-table td {
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .follo-campaigns-modern .follo-campaign-table tr {
        padding:16px !important;
        border-bottom:1px solid #e4ecf3 !important;
        background:#fff !important;
    }

    .follo-campaigns-modern .follo-campaign-table td {
        padding:7px 0 !important;
        border:0 !important;
    }

    .follo-campaign-name-cell {
        margin-bottom:6px !important;
    }

    .follo-campaign-app-cell {
        grid-template-columns:42px minmax(0,1fr) !important;
    }

    .follo-campaign-actions {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:7px !important;
        margin-top:6px !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:1 / -1 !important;
    }

    .follo-campaign-table-footer {
        flex-wrap:wrap !important;
    }
}

/* ---------- Manager content <= 720px ---------- */
@container folloManager (max-width:720px) {
    .follo-campaign-stat-grid {
        grid-template-columns:1fr !important;
    }

    .follo-campaign-stat-card {
        min-height:100px !important;
        grid-template-columns:52px minmax(0,1fr) !important;
    }

    .follo-campaign-filterbar {
        grid-template-columns:1fr !important;
        padding:12px !important;
    }

    .follo-campaign-search {
        grid-column:auto !important;
    }

    .follo-campaigns-modern .follo-add-campaign {
        width:100% !important;
        align-self:stretch !important;
    }

    .follo-campaign-actions {
        grid-template-columns:1fr !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:auto !important;
    }

    .follo-campaign-pagination {
        width:100% !important;
        justify-content:flex-start !important;
        flex-wrap:wrap !important;
    }
}

/* ---------- Dashboard content-specific container rules ---------- */
@container folloManager (max-width:1180px) {
    body.follo-management-full-access .follo-vivid-stat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

@container folloManager (max-width:900px) {
    body.follo-management-full-access .follo-vivid-stat-grid {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    body.follo-management-full-access .follo-dashboard-main-grid {
        grid-template-columns:1fr !important;
    }
}

@container folloManager (max-width:620px) {
    body.follo-management-full-access .follo-vivid-stat-grid {
        grid-template-columns:1fr !important;
    }
}

/* Fallback for older browsers without container-query support. */
@supports not (container-type:inline-size) {
    @media (max-width:1500px) {
        .follo-campaign-stat-grid {
            grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        }
    }

    @media (max-width:1250px) {
        .follo-campaign-stat-grid {
            grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        }
    }

    @media (max-width:900px) {
        .follo-campaign-stat-grid {
            grid-template-columns:1fr !important;
        }
    }
}


/* =========================================================
   v4.9 — SPONSORED CAMPAIGNS RESPONSIVE REGRESSION FIX
   Fixes v4.7/v4.8 layout breakage in medium/narrow manager widths.
========================================================= */

/*
 * IMPORTANT:
 * Earlier responsive rules gave the hero text block a 560px flex-basis.
 * Once the hero switched to flex-direction:column, that 560px basis became
 * HEIGHT instead of width, creating the huge empty space seen in v4.8.
 */
.follo-campaigns-hero > div:first-child {
    flex-basis:auto !important;
    min-height:0 !important;
}

.follo-campaigns-hero {
    min-height:0 !important;
}

/* Keep the button beside the heading on normal desktop/laptop content widths. */
@container folloManager (min-width:781px) {
    .follo-campaigns-hero {
        flex-direction:row !important;
        align-items:flex-start !important;
        justify-content:space-between !important;
    }

    .follo-campaigns-hero > div:first-child {
        flex:1 1 auto !important;
    }

    .follo-campaigns-modern .follo-add-campaign {
        width:auto !important;
        min-width:178px !important;
        flex:0 0 auto !important;
        align-self:flex-start !important;
    }
}

/* ---------------------------------------------------------
   Medium manager area: preserve a professional table.
   Do NOT turn the row into a raw stacked list at ~900–980px.
--------------------------------------------------------- */
@container folloManager (max-width:1100px) and (min-width:781px) {
    .follo-campaign-stat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    .follo-campaign-filterbar {
        grid-template-columns:minmax(260px,1.35fr) 1fr 1fr !important;
        gap:10px !important;
    }

    .follo-campaign-search {
        grid-column:1 / -1 !important;
    }

    .follo-campaign-table-card {
        overflow:hidden !important;
    }

    .follo-campaign-table-scroll {
        overflow-x:auto !important;
        -webkit-overflow-scrolling:touch !important;
    }

    .follo-campaigns-modern .follo-campaign-table {
        display:table !important;
        width:100% !important;
        min-width:900px !important;
        table-layout:fixed !important;
    }

    .follo-campaigns-modern .follo-campaign-table thead {
        display:table-header-group !important;
    }

    .follo-campaigns-modern .follo-campaign-table tbody {
        display:table-row-group !important;
    }

    .follo-campaigns-modern .follo-campaign-table tr {
        display:table-row !important;
        padding:0 !important;
        background:transparent !important;
    }

    .follo-campaigns-modern .follo-campaign-table th,
    .follo-campaigns-modern .follo-campaign-table td {
        display:table-cell !important;
        width:auto !important;
        max-width:none !important;
        padding:14px 9px !important;
        vertical-align:middle !important;
        border-bottom:1px solid #e7edf3 !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(1),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(1) { width:14% !important; }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(2),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(2) { width:7% !important; }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(3),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(3) { width:13% !important; }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(4),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(4) { width:15% !important; }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(5),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(5) { width:7% !important; }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(6),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(6) { width:9% !important; }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(7),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(7) { width:10% !important; }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(8),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(8) { width:25% !important; }

    .follo-campaign-actions {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:6px !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:1 / -1 !important;
    }
}

/* ---------------------------------------------------------
   True narrow/mobile content: use polished campaign cards.
--------------------------------------------------------- */
@container folloManager (max-width:780px) {
    .follo-campaigns-hero {
        flex-direction:column !important;
        align-items:stretch !important;
        gap:16px !important;
    }

    .follo-campaigns-hero > div:first-child {
        flex:0 0 auto !important;
    }

    .follo-campaigns-modern .follo-add-campaign {
        width:100% !important;
        min-width:0 !important;
        align-self:stretch !important;
    }

    .follo-campaign-stat-grid {
        grid-template-columns:1fr !important;
    }

    .follo-campaign-filterbar {
        grid-template-columns:1fr !important;
    }

    .follo-campaign-search {
        grid-column:auto !important;
    }

    .follo-campaigns-modern .follo-campaign-table thead {
        display:none !important;
    }

    .follo-campaigns-modern .follo-campaign-table,
    .follo-campaigns-modern .follo-campaign-table tbody {
        display:block !important;
        width:100% !important;
    }

    .follo-campaigns-modern .follo-campaign-table tr.follo-campaign-row {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:12px 16px !important;
        width:100% !important;
        margin:0 0 12px !important;
        padding:16px !important;
        box-sizing:border-box !important;
        border:1px solid #dde7ef !important;
        border-radius:14px !important;
        background:#fff !important;
        box-shadow:0 7px 18px rgba(35,60,88,.05) !important;
    }

    .follo-campaigns-modern .follo-campaign-table td {
        display:block !important;
        width:100% !important;
        padding:0 !important;
        border:0 !important;
    }

    .follo-campaign-name-cell,
    .follo-campaign-actions {
        grid-column:1 / -1 !important;
    }

    .follo-campaign-name-cell strong {
        font-size:14px !important;
    }

    .follo-campaign-app-cell {
        grid-template-columns:42px minmax(0,1fr) !important;
    }

    .follo-campaign-actions {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:7px !important;
        margin-top:4px !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:1 / -1 !important;
    }

    .follo-campaign-table-footer {
        padding:12px 0 0 !important;
    }
}

@container folloManager (max-width:520px) {
    .follo-campaigns-modern .follo-campaign-table tr.follo-campaign-row {
        grid-template-columns:1fr !important;
    }

    .follo-campaign-actions {
        grid-template-columns:1fr !important;
    }

    .follo-campaign-actions .follo-action-request {
        grid-column:auto !important;
    }
}

/* ---------------------------------------------------------
   Viewport fallback for browsers without container queries.
--------------------------------------------------------- */
@supports not (container-type:inline-size) {
    @media (min-width:901px) {
        .follo-campaigns-hero > div:first-child {
            flex:1 1 auto !important;
        }

        .follo-campaigns-hero {
            flex-direction:row !important;
            min-height:0 !important;
        }
    }

    @media (max-width:900px) {
        .follo-campaigns-hero > div:first-child {
            flex:0 0 auto !important;
        }
    }
}


/* =========================================================
   v5.0 — ACTIVE PLACEMENT / CAMPAIGN APP EDITOR / PAYMENTS
========================================================= */
.follo-live-placement {
    display:inline-flex !important;
    margin-top:5px !important;
    padding:4px 7px !important;
    border-radius:999px !important;
    background:#dcf8eb !important;
    color:#08784f !important;
    font-size:7px !important;
    font-weight:900 !important;
    white-space:nowrap !important;
}
.follo-app-editor-layout {
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    gap:20px;
    align-items:start;
}
.follo-app-editor-preview { text-align:center; }
.follo-app-editor-preview-box {
    width:118px; height:118px; margin:0 auto 8px;
    display:grid; place-items:center; overflow:hidden;
    border:1px solid #dce6ef; border-radius:20px; background:#fff;
    box-shadow:0 9px 24px rgba(36,61,90,.08);
}
.follo-app-editor-preview-box img { width:100%; height:100%; object-fit:contain; background:#fff; }
.follo-app-editor-preview-box span {
    width:100%; height:100%; display:grid; place-items:center;
    background:#edf2f7; color:#4d6280; font-size:36px; font-weight:900;
}
.follo-detect-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.follo-inline-message { margin-top:10px; color:#55708f; font-size:10px; }

.follo-payment-summary-grid {
    display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px; margin:22px 0;
}
.follo-payment-summary-card {
    padding:18px 20px; border:1px solid #dce6ef; border-radius:14px;
    background:#fff; box-shadow:0 9px 24px rgba(36,61,90,.06);
}
.follo-payment-summary-card span,.follo-payment-summary-card strong,.follo-payment-summary-card small { display:block; }
.follo-payment-summary-card span { color:#3c587e; font-size:10px; font-weight:900; text-transform:uppercase; }
.follo-payment-summary-card strong { margin:7px 0 5px; color:#071431; font-size:27px; line-height:1; font-weight:900; }
.follo-payment-summary-card small { color:#7185a1; font-size:9px; }
.follo-payment-summary-card.is-orange { border-top:4px solid #ed9512; }
.follo-payment-summary-card.is-red { border-top:4px solid #c5111b; }
.follo-payment-summary-card.is-green { border-top:4px solid #0c9b65; }
.follo-payment-summary-card.is-blue { border-top:4px solid #0871d8; }
.follo-queue-total {
    display:inline-flex; align-items:center; min-height:28px; padding:0 10px;
    border-radius:999px; background:#eef4f9; color:#526c8d; font-size:9px; font-weight:900;
}
.follo-payment-activity-list { display:grid; gap:8px; }
.follo-payment-activity-row {
    display:grid;
    grid-template-columns:42px minmax(180px,1.7fr) .7fr .8fr .9fr auto;
    gap:14px; align-items:center; padding:13px 14px;
    border:1px solid #e0e8f0; border-radius:11px; background:#fff;
}
.follo-payment-activity-icon {
    display:grid; place-items:center; width:40px; height:40px;
    border-radius:10px; font-size:17px; font-weight:900;
}
.follo-payment-activity-icon.is-request { background:#e4f1ff; color:#0870d8; }
.follo-payment-activity-icon.is-paid { background:#dcf8eb; color:#078157; }
.follo-payment-activity-main { min-width:0; }
.follo-payment-activity-main strong,.follo-payment-activity-main span,.follo-payment-activity-main small,
.follo-payment-activity-meta span,.follo-payment-activity-meta strong,.follo-payment-activity-meta small { display:block; }
.follo-payment-activity-main strong { color:#0a1734; font-size:11px; }
.follo-payment-activity-main span { overflow:hidden; color:#3f5b7e; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.follo-payment-activity-main small,.follo-payment-activity-meta small { color:#8494aa; font-size:8px; }
.follo-payment-activity-meta span { color:#70839e; font-size:8px; font-weight:900; text-transform:uppercase; }
.follo-payment-activity-meta strong { margin-top:3px; color:#13213b; font-size:10px; }
.follo-payment-event-status {
    display:inline-flex; align-items:center; justify-content:center;
    min-height:26px; padding:0 9px; border-radius:999px; font-size:8px; font-weight:900;
}
.follo-payment-event-status.is-paid { background:#dcf8eb; color:#078157; }
.follo-payment-event-status.is-pending { background:#fff0d9; color:#c06a00; }

@media (max-width:1200px) {
    .follo-payment-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .follo-payment-activity-row { grid-template-columns:42px minmax(170px,1.5fr) .7fr .8fr auto; }
}
@media (max-width:780px) {
    .follo-payment-summary-grid { grid-template-columns:1fr; }
    .follo-payment-activity-row { grid-template-columns:40px minmax(0,1fr) auto; gap:10px; }
    .follo-payment-activity-meta { display:none !important; }
    .follo-app-editor-layout { grid-template-columns:1fr; }
    .follo-detect-row { grid-template-columns:1fr; }
}


/* =========================================================
   v6.0 — FEATURED APPS ANALYTICS / SPONSOR REPORTING
========================================================= */
.follo-report-hero {
    display:flex; align-items:flex-start; justify-content:space-between;
    gap:20px; flex-wrap:wrap;
}
.follo-report-hero > div:first-child { flex:1 1 650px; min-width:0; }
.follo-report-hero-actions { display:flex; gap:10px; }
.follo-report-export {
    min-height:42px !important; display:inline-flex !important; align-items:center !important;
    padding:0 16px !important; border-radius:9px !important; font-weight:800 !important;
}

.follo-report-filter-card {
    margin-top:22px; padding:18px; border:1px solid #dce6ef; border-radius:16px;
    background:#fff; box-shadow:0 10px 28px rgba(36,61,90,.07);
}
.follo-report-quick-ranges {
    display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin-bottom:14px;
}
.follo-report-quick-ranges > span {
    margin-right:4px; color:#607796; font-size:9px; font-weight:900; text-transform:uppercase;
}
.follo-report-quick-ranges a {
    padding:6px 9px; border:1px solid #d8e3ed; border-radius:999px;
    background:#f8fbfe; color:#315478 !important; font-size:9px; font-weight:800;
    text-decoration:none !important;
}
.follo-report-filter-grid {
    display:grid; grid-template-columns:.8fr .8fr 1.55fr 1.25fr 1.15fr 1fr auto;
    gap:10px; align-items:end;
}
.follo-report-filter-grid > label > span,
.follo-report-sponsor-picker > summary > span {
    display:block; margin-bottom:6px; color:#566f90; font-size:9px; font-weight:900; text-transform:uppercase;
}
.follo-report-filter-grid input,.follo-report-filter-grid select {
    width:100%; min-height:44px; box-sizing:border-box;
    border:1px solid #d6e1eb !important; border-radius:10px !important; background:#fff !important;
}
.follo-report-sponsor-picker { position:relative; }
.follo-report-sponsor-picker > summary {
    min-height:44px; padding:8px 12px; box-sizing:border-box;
    border:1px solid #d6e1eb; border-radius:10px; background:#fff; cursor:pointer; list-style:none;
}
.follo-report-sponsor-picker > summary::-webkit-details-marker { display:none; }
.follo-report-sponsor-picker > summary > span { margin:0 0 2px; }
.follo-report-sponsor-picker > summary > strong {
    display:block; overflow:hidden; color:#162944; font-size:10px;
    text-overflow:ellipsis; white-space:nowrap;
}
.follo-report-sponsor-options {
    position:absolute; z-index:50; top:calc(100% + 6px); left:0;
    width:min(360px,90vw); max-height:330px; overflow:auto; padding:12px;
    border:1px solid #d9e5ef; border-radius:12px; background:#fff;
    box-shadow:0 18px 45px rgba(27,50,78,.16);
}
.follo-report-sponsor-tip {
    margin-bottom:9px; padding:8px 9px; border-radius:8px;
    background:#f3f8fc; color:#617995; font-size:9px; line-height:1.45;
}
.follo-report-sponsor-options label {
    display:flex; align-items:center; gap:8px; padding:8px; border-radius:8px; cursor:pointer;
}
.follo-report-sponsor-options label:hover { background:#f5f9fc; }
.follo-report-sponsor-options input { width:auto !important; min-height:0 !important; }
.follo-generate-report {
    min-height:44px !important; padding:0 18px !important; white-space:nowrap !important;
}

.follo-report-context {
    display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap;
    margin:18px 0 12px; color:#6f839d; font-size:10px;
}
.follo-report-context strong { color:#1d385a; }

.follo-report-kpi-grid {
    display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px;
}
.follo-report-kpi {
    position:relative; overflow:hidden; min-height:116px; padding:18px; box-sizing:border-box;
    border:1px solid #dde7ef; border-radius:14px; background:#fff;
    box-shadow:0 8px 22px rgba(36,61,90,.055);
}
.follo-report-kpi:before {
    content:""; position:absolute; top:0; left:0; width:100%; height:4px; background:#0871d8;
}
.follo-report-kpi span,.follo-report-kpi strong,.follo-report-kpi small { display:block; }
.follo-report-kpi span { color:#647b99; font-size:9px; font-weight:900; text-transform:uppercase; }
.follo-report-kpi strong { margin:8px 0 5px; color:#071431; font-size:26px; line-height:1; font-weight:900; }
.follo-report-kpi small { color:#7a8da6; font-size:9px; }
.follo-report-kpi.is-indigo:before { background:#4d55ce; }
.follo-report-kpi.is-green:before { background:#0b9b66; }
.follo-report-kpi.is-purple:before { background:#8737ca; }
.follo-report-kpi.is-red:before { background:#c61720; }
.follo-report-kpi.is-orange:before { background:#ed9512; }
.follo-report-kpi.is-cyan:before { background:#00a3b8; }
.follo-report-kpi.is-slate:before { background:#52647d; }

.follo-report-tracking-note {
    display:flex; gap:12px; align-items:flex-start; margin:16px 0; padding:13px 15px;
    border:1px solid #d7e6f2; border-radius:11px; background:#f5faff;
}
.follo-report-tracking-note strong { color:#174a78; font-size:10px; white-space:nowrap; }
.follo-report-tracking-note span { color:#617994; font-size:9px; line-height:1.5; }

.follo-report-chart-grid {
    display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:18px;
}
.follo-report-chart-card {
    min-width:0; padding:18px; border:1px solid #dce6ef; border-radius:15px;
    background:#fff; box-shadow:0 8px 22px rgba(36,61,90,.055);
}
.follo-chart-wide { grid-column:1 / -1; }
.follo-report-card-head {
    display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:14px;
}
.follo-report-card-head span {
    display:block; margin-bottom:3px; color:#9b2730; font-size:8px; font-weight:900; letter-spacing:.07em;
}
.follo-report-card-head h2 {
    margin:0 !important; color:#0a1733 !important; font-size:18px !important; font-weight:900 !important;
}
.follo-chart-legend { display:flex; gap:8px; align-items:center; color:#6d829d; font-size:8px; }
.follo-chart-legend i { width:9px; height:9px; border-radius:50%; }
.follo-chart-legend .is-impressions { background:#1777d2; }
.follo-chart-legend .is-clicks { background:#c61720; }
.follo-chart-canvas { min-height:250px; }
.follo-chart-canvas svg { display:block; width:100%; height:auto; }
.follo-svg-grid { stroke:#e8eef4; stroke-width:1; }
.follo-svg-axis,.follo-svg-xlabel { fill:#8090a5; font-size:10px; font-family:Arial,sans-serif; }
.follo-svg-line { stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.follo-svg-line-impressions { stroke:#1777d2; }
.follo-svg-line-clicks { stroke:#c61720; }
.follo-svg-area { fill:rgba(23,119,210,.08); }

.follo-chart-empty {
    min-height:230px; display:grid; place-items:center; padding:20px; box-sizing:border-box;
    border:1px dashed #dce5ed; border-radius:12px; background:#fbfdff;
    color:#8092a9; font-size:10px; text-align:center;
}

.follo-report-bar-row {
    display:grid; grid-template-columns:minmax(120px,1.1fr) minmax(120px,2fr) minmax(115px,.8fr);
    gap:12px; align-items:center; margin-bottom:12px;
}
.follo-report-bar-label {
    min-width:0; display:grid; grid-template-columns:22px minmax(0,1fr); gap:7px; align-items:center;
}
.follo-report-bar-label span {
    display:grid; place-items:center; width:22px; height:22px; border-radius:7px;
    background:#eef4fa; color:#66809e; font-size:8px; font-weight:900;
}
.follo-report-bar-label strong {
    overflow:hidden; color:#1a2e49; font-size:10px; text-overflow:ellipsis; white-space:nowrap;
}
.follo-report-bar-track { height:10px; overflow:hidden; border-radius:999px; background:#edf2f6; }
.follo-report-bar-track i {
    display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#1777d2,#6ab6f0);
}
#follo-report-revenue-chart .follo-report-bar-track i {
    background:linear-gradient(90deg,#b90f19,#e45d66);
}
.follo-report-bar-row > b { color:#405a78; font-size:9px; text-align:right; }

.follo-donut-wrap {
    min-height:250px; display:grid; grid-template-columns:180px minmax(0,1fr); gap:22px; align-items:center;
}
.follo-donut {
    position:relative; width:165px; height:165px; margin:auto; border-radius:50%;
}
.follo-donut:after {
    content:""; position:absolute; inset:28px; border-radius:50%; background:#fff;
}
.follo-donut > div {
    position:absolute; z-index:2; inset:0; display:flex; flex-direction:column;
    align-items:center; justify-content:center;
}
.follo-donut strong { color:#071431; font-size:25px; line-height:1; }
.follo-donut span { margin-top:4px; color:#7286a0; font-size:8px; text-transform:uppercase; }
.follo-donut-legend { display:grid; gap:9px; }
.follo-donut-legend > div {
    display:grid; grid-template-columns:10px minmax(0,1fr) auto; gap:8px; align-items:center;
}
.follo-donut-legend i { width:9px; height:9px; border-radius:3px; }
.follo-donut-legend span { color:#506a89; font-size:9px; }
.follo-donut-legend strong { color:#12223c; font-size:10px; }

.follo-sponsor-performance-card { margin-top:18px; padding:20px !important; }
.follo-sponsor-performance-table-wrap { overflow:auto; }
.follo-sponsor-performance-table { width:100%; border-collapse:collapse; }
.follo-sponsor-performance-table th {
    padding:10px 12px; background:#f3f7fb; color:#486481; font-size:8px;
    text-align:left; text-transform:uppercase;
}
.follo-sponsor-performance-table td {
    padding:12px; border-bottom:1px solid #e7edf3; color:#385370; font-size:10px;
}
.follo-sponsor-performance-table td strong { color:#0f203b; }

.follo-report-export-grid {
    display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:18px;
}
.follo-report-export-buttons { display:flex; gap:8px; flex-wrap:wrap; }

@media (max-width:1280px) {
    .follo-report-filter-grid { grid-template-columns:1fr 1fr 1.4fr; }
    .follo-generate-report { grid-column:1 / -1; width:100%; }
    .follo-report-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:850px) {
    .follo-report-filter-grid { grid-template-columns:1fr 1fr; }
    .follo-report-sponsor-picker { grid-column:1 / -1; }
    .follo-report-chart-grid,.follo-report-export-grid { grid-template-columns:1fr; }
    .follo-chart-wide { grid-column:auto; }
    .follo-donut-wrap { grid-template-columns:1fr; }
}
@media (max-width:620px) {
    .follo-report-filter-grid,.follo-report-kpi-grid { grid-template-columns:1fr; }
    .follo-report-sponsor-picker { grid-column:auto; }
    .follo-report-tracking-note { display:block; }
    .follo-report-tracking-note strong { display:block; margin-bottom:5px; white-space:normal; }
    .follo-report-bar-row { grid-template-columns:minmax(0,1fr) auto; }
    .follo-report-bar-track { grid-column:1 / -1; grid-row:2; }
    .follo-report-bar-row > b { grid-column:2; grid-row:1; }
}


/* =========================================================
   v6.4 — CAMPAIGN TABLE COLUMN SPACING
   Give Sponsor and Featured App more breathing room.
========================================================= */

@container folloManager (min-width:781px) {
    .follo-campaigns-modern .follo-campaign-table {
        table-layout:fixed !important;
    }

    /* Redistribute width toward Sponsor and Featured App. */
    .follo-campaigns-modern .follo-campaign-table th:nth-child(1),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(1) {
        width:16% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(2),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(2) {
        width:11% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(3),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(3) {
        width:18% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(4),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(4) {
        width:16% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(5),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(5) {
        width:8% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(6),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(6) {
        width:9% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(7),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(7) {
        width:9% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(8),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(8) {
        width:13% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th,
    .follo-campaigns-modern .follo-campaign-table td {
        padding-left:12px !important;
        padding-right:12px !important;
    }

    /* Featured app cell: image + content with safe text wrapping. */
    .follo-campaign-app-cell {
        grid-template-columns:44px minmax(0,1fr) !important;
        gap:10px !important;
        align-items:center !important;
    }

    .follo-campaign-app-cell > div:last-child {
        min-width:0 !important;
    }

    .follo-campaign-app-cell strong {
        display:block !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        white-space:nowrap !important;
        max-width:100% !important;
    }

    .follo-campaign-app-cell a {
        display:inline-flex !important;
        align-items:center !important;
        gap:4px !important;
        margin-top:3px !important;
        white-space:nowrap !important;
        line-height:1.2 !important;
    }

    .follo-live-placement {
        max-width:100% !important;
        white-space:normal !important;
        line-height:1.15 !important;
    }

    /* Sponsor cell should not feel cramped. */
    .follo-campaigns-modern .follo-campaign-table td:nth-child(2) {
        white-space:normal !important;
        overflow-wrap:anywhere !important;
    }

    /* Keep dates readable without colliding with Featured App. */
    .follo-campaigns-modern .follo-campaign-table td:nth-child(4) {
        white-space:nowrap !important;
    }

    /* Action buttons remain compact. */
    .follo-campaign-actions {
        gap:6px !important;
    }
}

/* Slightly tighter action buttons to preserve table balance. */
.follo-campaign-actions .follo-action-btn,
.follo-campaign-actions a {
    min-width:0 !important;
    padding-left:10px !important;
    padding-right:10px !important;
}

/* At narrower laptop widths preserve Sponsor/App space before switching to cards. */
@container folloManager (max-width:1100px) and (min-width:781px) {
    .follo-campaigns-modern .follo-campaign-table {
        min-width:980px !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(2),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(2) {
        width:10% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(3),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(3) {
        width:19% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(4),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(4) {
        width:16% !important;
    }
}




/* =========================================================
   v6.7 — CAMPAIGN TABLE CONTAINER / ACTION BUTTON FIX
   Keep the full row inside its card and keep Pause accessible.
========================================================= */

@container folloManager (min-width:781px) {
    .follo-campaign-table-card,
    .follo-campaign-table-scroll {
        width:100% !important;
        max-width:100% !important;
        overflow-x:hidden !important;
        box-sizing:border-box !important;
    }

    .follo-campaigns-modern .follo-campaign-table {
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        table-layout:fixed !important;
        box-sizing:border-box !important;
    }

    .follo-campaigns-modern .follo-campaign-table th,
    .follo-campaigns-modern .follo-campaign-table td {
        box-sizing:border-box !important;
        min-width:0 !important;
        overflow:hidden !important;
    }

    /*
     * Percentages total 100%. Actions gets enough space for Edit + Pause
     * while Sponsor and Featured App remain comfortably readable.
     */
    .follo-campaigns-modern .follo-campaign-table th:nth-child(1),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(1) {
        width:15% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(2),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(2) {
        width:10% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(3),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(3) {
        width:18% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(4),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(4) {
        width:15% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(5),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(5) {
        width:8% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(6),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(6) {
        width:8% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(7),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(7) {
        width:9% !important;
    }

    .follo-campaigns-modern .follo-campaign-table th:nth-child(8),
    .follo-campaigns-modern .follo-campaign-table td:nth-child(8) {
        width:17% !important;
        overflow:visible !important;
    }

    .follo-campaign-actions {
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        gap:6px !important;
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    .follo-campaign-actions .follo-action-btn,
    .follo-campaign-actions a,
    .follo-campaign-actions button {
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        box-sizing:border-box !important;
        padding-left:7px !important;
        padding-right:7px !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        justify-content:center !important;
    }

    .follo-campaign-app-cell {
        min-width:0 !important;
        overflow:hidden !important;
    }

    .follo-campaign-app-cell > div:last-child {
        min-width:0 !important;
        overflow:hidden !important;
    }

    .follo-campaign-app-cell a {
        max-width:100% !important;
    }
}

/*
 * v6.4 introduced a 980px minimum table width at medium sizes.
 * That is what pushed the Pause button outside the visible card.
 * Remove that minimum and keep the table fitted to the actual container.
 */
@container folloManager (max-width:1100px) and (min-width:781px) {
    .follo-campaigns-modern .follo-campaign-table {
        width:100% !important;
        min-width:0 !important;
    }

    .follo-campaign-table-scroll {
        overflow-x:hidden !important;
    }

    .follo-campaigns-modern .follo-campaign-table th,
    .follo-campaigns-modern .follo-campaign-table td {
        padding-left:8px !important;
        padding-right:8px !important;
    }
}

/* Viewport fallback when container queries are unavailable. */
@supports not (container-type:inline-size) {
    @media (min-width:781px) {
        .follo-campaigns-modern .follo-campaign-table {
            width:100% !important;
            min-width:0 !important;
            table-layout:fixed !important;
        }

        .follo-campaigns-modern .follo-campaign-table th,
        .follo-campaigns-modern .follo-campaign-table td {
            box-sizing:border-box !important;
        }
    }
}

/* v6.8 campaign traceability */
.follo-campaign-ref{display:block!important;margin-top:3px!important;color:#0870d8!important;font-size:8px!important;font-weight:800!important;line-height:1.2!important;white-space:nowrap!important}


/* =========================================================
   v6.9 — CAMPAIGN TRACEABILITY / RENEWALS
========================================================= */

.follo-action-renew {
    border-color:#b9d5ff !important;
    background:#eef6ff !important;
    color:#0869c5 !important;
}

.follo-action-renew:hover {
    background:#e1efff !important;
}

.follo-payment-campaign-id {
    color:#0870d8 !important;
    font-weight:800 !important;
}


/* =========================================================
   v7.2 — MODERN RATES & PAYMENT SETTINGS
========================================================= */

.follo-rates-modern {
    --fr-navy:#071d45;
    --fr-text:#24344d;
    --fr-muted:#71829b;
    --fr-border:#d7e2ee;
    --fr-soft:#f7fbff;
    --fr-blue:#0875d1;
    --fr-red:#bd1420;
    --fr-green:#0a9d71;
    --fr-orange:#f59b22;
    --fr-purple:#8256d6;
}

.follo-rates-modern > .follo-rates-heading {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    margin:4px 0 24px;
}

.follo-rates-heading > div:first-child {
    min-width:0;
}

.follo-rates-eyebrow {
    display:block;
    margin-bottom:7px;
    color:#a11a25;
    font-size:10px;
    font-weight:900;
    letter-spacing:.16em;
}

.follo-rates-modern .follo-rates-heading h1 {
    margin:0;
    color:var(--fr-navy);
    font-size:32px;
    line-height:1.1;
    letter-spacing:-.025em;
}

.follo-rates-heading p {
    max-width:780px;
    margin:9px 0 0;
    color:#58708e;
    font-size:14px;
    line-height:1.65;
}

.follo-rates-status {
    display:inline-flex;
    align-items:center;
    gap:8px;
    flex:0 0 auto;
    margin-top:7px;
    padding:9px 13px;
    border:1px solid #c8eadc;
    border-radius:999px;
    background:#edf9f4;
    color:#14775d;
    font-size:11px;
    font-weight:800;
    white-space:nowrap;
}

.follo-rates-status-dot {
    width:8px;
    height:8px;
    border-radius:50%;
    background:#1cb184;
    box-shadow:0 0 0 4px rgba(28,177,132,.12);
}

.follo-rates-form {
    margin:0;
}

.follo-rates-layout {
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);
    gap:22px;
    align-items:start;
}

.follo-rates-primary,
.follo-rates-secondary {
    display:grid;
    gap:22px;
    min-width:0;
}

.follo-rates-card {
    min-width:0;
    padding:24px;
    border:1px solid var(--fr-border);
    border-radius:18px;
    background:#fff;
    box-shadow:0 9px 28px rgba(30,61,95,.055);
    box-sizing:border-box;
}

.follo-rates-section-head {
    display:flex;
    align-items:flex-start;
    gap:13px;
    margin-bottom:22px;
}

.follo-rates-section-head > div {
    min-width:0;
}

.follo-rates-section-head h2 {
    margin:0 !important;
    color:var(--fr-navy) !important;
    font-size:21px !important;
    line-height:1.2;
    letter-spacing:-.015em;
}

.follo-rates-section-head p {
    margin:5px 0 0;
    color:var(--fr-muted);
    font-size:12px;
    line-height:1.55;
}

.follo-rates-section-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:12px;
    font-size:19px;
    font-weight:900;
}

.follo-rates-section-icon-blue {
    background:#e8f2ff;
    color:#0875d1;
}

.follo-rates-section-icon-green {
    background:#e7f8f2;
    color:#099b70;
}

.follo-rates-section-icon-purple {
    background:#f1eafd;
    color:#8256d6;
}

.follo-rates-section-icon-orange {
    background:#fff3df;
    color:#e78a0a;
}

.follo-rate-grid-modern {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
}

.follo-rate-field {
    min-width:0;
}

.follo-rate-field > span,
.follo-payment-fields label > span,
.follo-payment-instructions > span {
    display:block;
    margin-bottom:7px;
    color:#32465f;
    font-size:12px;
    font-weight:800;
}

.follo-money-input {
    display:flex;
    align-items:center;
    min-width:0;
    height:44px;
    border:1px solid #cfdceb;
    border-radius:11px;
    background:#fff;
    overflow:hidden;
    transition:border-color .15s ease, box-shadow .15s ease;
}

.follo-money-input:focus-within {
    border-color:#77ace0;
    box-shadow:0 0 0 3px rgba(8,117,209,.10);
}

.follo-money-input > span {
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:stretch;
    flex:0 0 36px;
    border-right:1px solid #e3eaf1;
    background:#f7fafc;
    color:#708198;
    font-size:12px;
    font-weight:800;
}

.follo-money-input input {
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    margin:0 !important;
    padding:0 11px !important;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    background:#fff !important;
    color:#162944 !important;
    font-size:13px !important;
}

.follo-payment-settings-card {
    margin-top:0 !important;
}

.follo-payment-fields {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
}

.follo-payment-fields label {
    min-width:0;
}

.follo-payment-fields input,
.follo-payment-instructions textarea {
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
    border:1px solid #cfdceb !important;
    border-radius:11px !important;
    background:#fff !important;
    color:#172943 !important;
    box-shadow:none !important;
}

.follo-payment-fields input {
    min-height:44px !important;
    padding:8px 12px !important;
}

.follo-payment-fields input:focus,
.follo-payment-instructions textarea:focus {
    border-color:#77ace0 !important;
    box-shadow:0 0 0 3px rgba(8,117,209,.10) !important;
    outline:0 !important;
}

.follo-payment-fields small,
.follo-payment-instructions small {
    display:block;
    margin-top:6px;
    color:#8391a5;
    font-size:10px;
    line-height:1.45;
}

.follo-payment-instructions {
    display:block !important;
    min-height:0 !important;
    margin-top:18px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:inherit !important;
    text-align:left !important;
}

.follo-payment-instructions textarea {
    display:block;
    min-height:128px;
    padding:12px 13px !important;
    resize:vertical;
}

.follo-rates-savebar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:18px 20px;
    border:1px solid #d8e4ef;
    border-radius:16px;
    background:linear-gradient(135deg,#f8fbfe 0%,#f3f8fc 100%);
}

.follo-rates-savebar > div {
    display:grid;
    gap:3px;
    min-width:0;
}

.follo-rates-savebar strong {
    color:var(--fr-navy);
    font-size:13px;
}

.follo-rates-savebar span {
    color:#73849a;
    font-size:10px;
    line-height:1.4;
}

.follo-rates-save-button {
    flex:0 0 auto;
    min-height:42px !important;
    padding:0 18px !important;
    border:0 !important;
    border-radius:10px !important;
    background:linear-gradient(180deg,#d71d28,#b90e19) !important;
    color:#fff !important;
    box-shadow:0 8px 18px rgba(190,18,29,.20) !important;
    font-size:12px !important;
    font-weight:800 !important;
    text-shadow:none !important;
}

.follo-rates-save-button:hover {
    transform:translateY(-1px);
    background:linear-gradient(180deg,#df2631,#bd121d) !important;
}

.follo-pricing-steps {
    display:grid;
    gap:11px;
}

.follo-pricing-step {
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:11px;
    align-items:start;
    padding:13px;
    border:1px solid #e0e8f0;
    border-radius:12px;
    background:#fbfdff;
}

.follo-pricing-step-number {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:30px;
    border-radius:9px;
    background:#e7f2ff;
    color:#0875d1;
    font-size:12px;
    font-weight:900;
}

.follo-pricing-step strong {
    display:block;
    padding-top:1px;
    color:#1b3351;
    font-size:12px;
}

.follo-pricing-step p {
    margin:4px 0 0;
    color:#75869c;
    font-size:10px;
    line-height:1.5;
}

.follo-activation-rule-card {
    margin-top:0 !important;
}

.follo-rule-flow {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
}

.follo-rule-chip {
    display:inline-flex;
    align-items:center;
    min-height:29px;
    padding:0 9px;
    border:1px solid #d6e2ed;
    border-radius:999px;
    background:#f7fafc;
    color:#53677f;
    font-size:9px;
    font-weight:800;
}

.follo-rule-chip-green {
    border-color:#c8eadc;
    background:#ebf9f3;
    color:#0b805d;
}

.follo-rule-plus {
    color:#a2afbf;
    font-size:11px;
    font-weight:900;
}

.follo-rule-result {
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:11px;
    align-items:start;
    margin-top:16px;
    padding:14px;
    border:1px solid #c9eadf;
    border-radius:12px;
    background:#f0faf6;
}

.follo-rule-result-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:31px;
    height:31px;
    border-radius:50%;
    background:#17a97b;
    color:#fff;
    font-size:13px;
    font-weight:900;
}

.follo-rule-result strong {
    display:block;
    color:#176c55;
    font-size:11px;
}

.follo-rule-result p {
    margin:4px 0 0;
    color:#608577;
    font-size:10px;
    line-height:1.45;
}

.follo-rates-note {
    display:grid;
    gap:3px;
    padding:14px 16px;
    border-left:3px solid #0875d1;
    border-radius:0 10px 10px 0;
    background:#eff6fd;
}

.follo-rates-note strong {
    color:#1c446d;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.follo-rates-note span {
    color:#59728d;
    font-size:10px;
    line-height:1.5;
}

@media (max-width:1100px) {
    .follo-rates-layout {
        grid-template-columns:1fr;
    }

    .follo-rates-secondary {
        grid-template-columns:repeat(2,minmax(0,1fr));
        align-items:start;
    }

    .follo-rates-note {
        grid-column:1 / -1;
    }
}

@media (max-width:760px) {
    .follo-rates-modern > .follo-rates-heading {
        display:grid;
        gap:14px;
    }

    .follo-rates-status {
        justify-self:start;
        margin-top:0;
    }

    .follo-rates-modern .follo-rates-heading h1 {
        font-size:27px;
    }

    .follo-rate-grid-modern,
    .follo-payment-fields,
    .follo-rates-secondary {
        grid-template-columns:1fr !important;
    }

    .follo-rates-card {
        padding:18px;
        border-radius:15px;
    }

    .follo-rates-savebar {
        display:grid;
    }

    .follo-rates-save-button {
        width:100% !important;
    }
}

@media (max-width:480px) {
    .follo-rates-section-head {
        gap:10px;
    }

    .follo-rates-section-icon {
        flex-basis:38px;
        width:38px;
        height:38px;
        border-radius:10px;
    }

    .follo-rates-section-head h2 {
        font-size:18px !important;
    }

    .follo-rule-flow {
        gap:5px;
    }
}

/* =========================================================
   v7.3 - RATE MONEY INPUT INNER-CORNER FIX
========================================================= */

body.follo-plugin-admin .follo-money-input,
body.follo-management-standalone .follo-money-input,
.follo-mp-main .follo-money-input {
    border-radius:11px !important;
    overflow:hidden !important;
}

body.follo-plugin-admin .follo-money-input > span,
body.follo-management-standalone .follo-money-input > span,
.follo-mp-main .follo-money-input > span {
    border-radius:0 !important;
    border-top-left-radius:0 !important;
    border-top-right-radius:0 !important;
    border-bottom-left-radius:0 !important;
    border-bottom-right-radius:0 !important;
}

body.follo-plugin-admin .follo-money-input input[type="number"],
body.follo-management-standalone .follo-money-input input[type="number"],
.follo-mp-main .follo-money-input input[type="number"] {
    border:0 !important;
    border-radius:0 !important;
    border-top-left-radius:0 !important;
    border-top-right-radius:0 !important;
    border-bottom-left-radius:0 !important;
    border-bottom-right-radius:0 !important;
    box-shadow:none !important;
    outline:0 !important;
    appearance:textfield !important;
    -webkit-appearance:none !important;
    -moz-appearance:textfield !important;
}


/* =========================================================
   v7.4 — SPONSORED CAMPAIGN METRICS
   ALWAYS ONE ROW, RESPONSIVE
========================================================= */

/*
 * Force the five campaign KPI cards to remain in one row.
 * The cards scale progressively instead of wrapping.
 */
.follo-campaign-metrics,
.follo-campaign-stats,
.follo-stat-grid {
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:clamp(6px,1.2vw,16px) !important;
    width:100% !important;
    align-items:stretch !important;
}

/* Allow each card to shrink without forcing the grid wider. */
.follo-campaign-metrics > *,
.follo-campaign-stats > *,
.follo-stat-grid > * {
    min-width:0 !important;
    width:auto !important;
}

/* Responsive card spacing/padding. */
.follo-campaign-metrics .follo-stat-card,
.follo-campaign-stats .follo-stat-card,
.follo-stat-grid .follo-stat-card {
    min-width:0 !important;
    padding:clamp(10px,1.4vw,18px) !important;
    gap:clamp(8px,1vw,14px) !important;
    box-sizing:border-box !important;
}

/* Scale the KPI icon smoothly. */
.follo-campaign-metrics .follo-stat-icon,
.follo-campaign-stats .follo-stat-icon,
.follo-stat-grid .follo-stat-icon {
    width:clamp(42px,5vw,58px) !important;
    height:clamp(42px,5vw,58px) !important;
    min-width:0 !important;
    font-size:clamp(20px,2.2vw,28px) !important;
}

/* Allow card text to compress safely. */
.follo-campaign-metrics .follo-stat-content,
.follo-campaign-stats .follo-stat-content,
.follo-stat-grid .follo-stat-content {
    min-width:0 !important;
}

/* Metric labels. */
.follo-campaign-metrics .follo-stat-content > span,
.follo-campaign-stats .follo-stat-content > span,
.follo-stat-grid .follo-stat-content > span {
    font-size:clamp(9px,1vw,12px) !important;
    line-height:1.25 !important;
    overflow-wrap:anywhere;
}

/* Metric values. */
.follo-campaign-metrics .follo-stat-content > strong,
.follo-campaign-stats .follo-stat-content > strong,
.follo-stat-grid .follo-stat-content > strong {
    font-size:clamp(22px,2.4vw,31px) !important;
    line-height:1 !important;
}

/* Supporting text. */
.follo-campaign-metrics .follo-stat-content > em,
.follo-campaign-stats .follo-stat-content > em,
.follo-stat-grid .follo-stat-content > em {
    font-size:clamp(8px,.9vw,11px) !important;
    line-height:1.25 !important;
    overflow-wrap:anywhere;
}

/*
 * Override older responsive rules that changed .follo-stat-grid
 * to 2 or 1 columns. Five columns remain authoritative.
 */
@media (max-width:1150px) {
    .follo-campaign-metrics,
    .follo-campaign-stats,
    .follo-stat-grid,
    body.follo-management-full-access .follo-vivid-stat-grid,
    .follo-mp-main .follo-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    }
}

@media (max-width:980px) {
    .follo-campaign-metrics,
    .follo-campaign-stats,
    .follo-stat-grid,
    body.follo-management-full-access .follo-vivid-stat-grid,
    .follo-mp-main .follo-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    }
}

@media (max-width:820px) {
    .follo-campaign-metrics,
    .follo-campaign-stats,
    .follo-stat-grid,
    body.follo-management-full-access .follo-vivid-stat-grid,
    .follo-mp-main .follo-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    }
}

@media (max-width:700px) {
    .follo-campaign-metrics,
    .follo-campaign-stats,
    .follo-stat-grid,
    body.follo-management-full-access .follo-vivid-stat-grid,
    .follo-mp-main .follo-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
        gap:5px !important;
    }

    .follo-campaign-metrics .follo-stat-card,
    .follo-campaign-stats .follo-stat-card,
    .follo-stat-grid .follo-stat-card {
        padding:8px !important;
    }

    .follo-campaign-metrics .follo-stat-icon,
    .follo-campaign-stats .follo-stat-icon,
    .follo-stat-grid .follo-stat-icon {
        width:38px !important;
        height:38px !important;
        font-size:18px !important;
    }
}

@media (max-width:560px) {
    .follo-campaign-metrics,
    .follo-campaign-stats,
    .follo-stat-grid,
    body.follo-management-full-access .follo-vivid-stat-grid,
    .follo-mp-main .follo-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
        gap:4px !important;
    }

    .follo-campaign-metrics .follo-stat-card,
    .follo-campaign-stats .follo-stat-card,
    .follo-stat-grid .follo-stat-card {
        padding:7px !important;
        border-radius:12px !important;
    }

    .follo-campaign-metrics .follo-stat-content > span,
    .follo-campaign-stats .follo-stat-content > span,
    .follo-stat-grid .follo-stat-content > span {
        font-size:8px !important;
    }

    .follo-campaign-metrics .follo-stat-content > strong,
    .follo-campaign-stats .follo-stat-content > strong,
    .follo-stat-grid .follo-stat-content > strong {
        font-size:20px !important;
    }

    .follo-campaign-metrics .follo-stat-content > em,
    .follo-campaign-stats .follo-stat-content > em,
    .follo-stat-grid .follo-stat-content > em {
        font-size:7px !important;
    }
}


/* =========================================================
   v7.5 - PROMOTIONS & COMPLIMENTARY CAMPAIGNS
========================================================= */

.follo-rates-section-icon-promo {
    background:#fff0f2;
    color:#bb1722;
}

.follo-promo-manager-card {
    margin-top:22px;
}

.follo-promo-manager-layout {
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
    gap:20px;
    align-items:start;
}

.follo-promo-create-form {
    min-width:0;
    padding:18px;
    border:1px solid #dce6f0;
    border-radius:14px;
    background:#fbfdff;
}

.follo-promo-form-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}

.follo-promo-form-grid label {
    min-width:0;
}

.follo-promo-form-grid label > span {
    display:block;
    margin-bottom:6px;
    color:#32465f;
    font-size:11px;
    font-weight:800;
}

.follo-promo-form-grid input,
.follo-promo-form-grid select {
    width:100% !important;
    min-height:42px !important;
    box-sizing:border-box !important;
    padding:8px 11px !important;
    border:1px solid #cfdceb !important;
    border-radius:10px !important;
    background:#fff !important;
    color:#172943 !important;
}

.follo-promo-description {
    grid-column:span 2;
}

.follo-promo-active {
    display:flex !important;
    align-items:center;
    gap:8px;
    padding-top:23px;
}

.follo-promo-active input {
    width:18px !important;
    min-height:18px !important;
    height:18px !important;
    margin:0 !important;
}

.follo-promo-active span {
    margin:0 !important;
}

.follo-promo-save {
    min-height:42px !important;
    margin-top:16px !important;
}

.follo-promo-guidance {
    padding:18px;
    border:1px solid #eadfbf;
    border-radius:14px;
    background:#fffaf0;
    color:#5a4a2a;
}

.follo-promo-guidance > strong {
    display:block;
    color:#40341e;
    font-size:13px;
}

.follo-promo-guidance ol {
    margin:10px 0 14px 18px;
    padding:0;
}

.follo-promo-guidance li,
.follo-promo-guidance p {
    margin:0 0 7px;
    font-size:11px;
    line-height:1.55;
}

.follo-promo-list {
    display:grid;
    gap:8px;
    margin-top:18px;
}

.follo-promo-row {
    display:grid;
    grid-template-columns:1.15fr .75fr .85fr 1fr auto;
    gap:14px;
    align-items:center;
    padding:13px 14px;
    border:1px solid #dfe7ef;
    border-radius:12px;
    background:#fff;
}

.follo-promo-row > div {
    min-width:0;
}

.follo-promo-row span,
.follo-promo-row strong,
.follo-promo-row small {
    display:block;
}

.follo-promo-row span {
    color:#8190a4;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.follo-promo-row strong {
    margin-top:3px;
    overflow:hidden;
    color:#182d49;
    font-size:12px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.follo-promo-row small {
    margin-top:2px;
    overflow:hidden;
    color:#75869a;
    font-size:9px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.follo-promo-empty {
    margin-top:18px;
    padding:18px;
    border:1px dashed #d8e2eb;
    border-radius:12px;
    color:#75869a;
    text-align:center;
    font-size:11px;
}

.follo-complimentary-box {
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:4px !important;
    padding:16px !important;
    border:1px solid #ead9dd !important;
    border-radius:13px !important;
    background:#fff8f9 !important;
}

.follo-complimentary-toggle {
    display:flex !important;
    align-items:flex-start;
    gap:10px;
}

.follo-complimentary-toggle input {
    flex:0 0 auto;
    width:18px !important;
    height:18px !important;
    min-height:18px !important;
    margin-top:2px !important;
}

.follo-complimentary-toggle strong,
.follo-complimentary-toggle small {
    display:block;
}

.follo-complimentary-toggle strong {
    color:#7e1720;
    font-size:12px;
}

.follo-complimentary-toggle small {
    margin-top:4px;
    color:#8b6870;
    font-size:10px;
    line-height:1.45;
}

.follo-complimentary-reason > span {
    display:block;
    margin-bottom:6px;
    color:#6f3440;
    font-size:11px;
    font-weight:800;
}

.follo-complimentary-reason input {
    width:100% !important;
}

@media (max-width:1050px) {
    .follo-promo-manager-layout {
        grid-template-columns:1fr;
    }

    .follo-promo-row {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .follo-promo-actions {
        grid-column:1 / -1;
    }
}

@media (max-width:760px) {
    .follo-promo-form-grid,
    .follo-complimentary-box {
        grid-template-columns:1fr;
    }

    .follo-promo-description {
        grid-column:auto;
    }

    .follo-promo-active {
        padding-top:0;
    }
}

@media (max-width:520px) {
    .follo-promo-row {
        grid-template-columns:1fr;
    }
}


/* =========================================================
   v7.6 - PROMOTION CONTROL + REDEMPTION TRACKING
========================================================= */

.follo-promo-form-grid-v76 {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.follo-promo-code-field {
    grid-column:span 2;
}

.follo-promo-code-entry {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
}

.follo-promo-code-entry .button {
    min-height:42px !important;
    margin:0 !important;
    white-space:nowrap;
}

.follo-promo-form-grid small {
    display:block;
    margin-top:5px;
    color:#7a8ba1;
    font-size:9px;
    line-height:1.4;
}

.follo-promo-selected-sponsors select[multiple] {
    min-height:138px !important;
    padding:5px !important;
}

.follo-promo-row-v76 {
    grid-template-columns:1.05fr .65fr .95fr .8fr .85fr auto !important;
}

.follo-promo-actions {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
    flex-wrap:wrap;
}

.follo-promo-history {
    margin-top:24px;
    padding-top:22px;
    border-top:1px solid #e0e8f0;
}

.follo-promo-history-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:13px;
}

.follo-promo-history-head h3 {
    margin:0 0 4px !important;
    color:#0c1a38;
    font-size:17px;
}

.follo-promo-history-head p {
    margin:0;
    color:#71839a;
    font-size:10px;
}

.follo-promo-history-head > span {
    flex:0 0 auto;
    padding:6px 9px;
    border-radius:999px;
    background:#eef4fa;
    color:#516b89;
    font-size:9px;
    font-weight:800;
}

.follo-promo-history-table-wrap {
    overflow-x:auto;
    border:1px solid #dfe7ef;
    border-radius:12px;
    background:#fff;
}

.follo-promo-history-table {
    min-width:1150px;
    margin:0 !important;
    border:0 !important;
    box-shadow:none !important;
}

.follo-promo-history-table th {
    background:#f7fafc !important;
    color:#53677f !important;
    font-size:9px !important;
    font-weight:900 !important;
    text-transform:uppercase;
    letter-spacing:.035em;
}

.follo-promo-history-table td {
    vertical-align:middle !important;
    color:#2f4056 !important;
    font-size:10px !important;
}

.follo-promo-history-table td small {
    color:#8190a3;
    font-size:8px;
}

.follo-promo-history-status {
    display:inline-flex;
    align-items:center;
    min-height:21px;
    padding:0 7px;
    border-radius:999px;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
}

.follo-promo-history-active {
    background:#e8f8f1;
    color:#0b805a;
}

.follo-promo-history-reversed {
    background:#f3f4f6;
    color:#687386;
}

@media (max-width:1150px) {
    .follo-promo-row-v76 {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    .follo-promo-actions {
        grid-column:1 / -1;
        justify-content:flex-start;
    }
}

@media (max-width:820px) {
    .follo-promo-form-grid-v76 {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .follo-promo-code-field,
    .follo-promo-description {
        grid-column:1 / -1;
    }
}

@media (max-width:600px) {
    .follo-promo-form-grid-v76,
    .follo-promo-row-v76 {
        grid-template-columns:1fr !important;
    }

    .follo-promo-code-field,
    .follo-promo-description,
    .follo-promo-actions {
        grid-column:auto;
    }

    .follo-promo-code-entry {
        grid-template-columns:1fr;
    }

    .follo-promo-history-head {
        flex-direction:column;
    }
}


/* =========================================================
   v7.6.1 - AUTHORITATIVE FIVE-METRIC ONE-ROW FIX
   Layout-only patch. No sponsorship / payment / promo logic.
========================================================= */

/* ---------------------------------------------------------
   FOLLO Sponsorships dashboard
   Active / Awaiting / Past Due / Expiring / Paid This Month
--------------------------------------------------------- */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid {

    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    grid-auto-flow:column !important;
    grid-auto-columns:minmax(0,1fr) !important;

    gap:clamp(7px,1.15vw,18px) !important;

    width:100% !important;
    max-width:none !important;

    margin-left:0 !important;
    margin-right:0 !important;

    align-items:stretch !important;
}

/* Dashboard card: compact enough for all five cards. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card {

    display:grid !important;
    grid-template-columns:clamp(42px,4.7vw,66px) minmax(0,1fr) !important;

    gap:clamp(8px,1vw,14px) !important;

    min-width:0 !important;
    width:auto !important;
    max-width:none !important;

    min-height:132px !important;

    padding:clamp(12px,1.25vw,18px) !important;

    box-sizing:border-box !important;
}

/* Dashboard icon scales instead of forcing a wrap. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-icon,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-icon,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-icon {

    width:clamp(42px,4.7vw,60px) !important;
    height:clamp(42px,4.7vw,60px) !important;

    font-size:clamp(20px,2.25vw,29px) !important;
}

/* Prevent KPI copy from creating a minimum width. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content {

    min-width:0 !important;
    width:auto !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > span,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > span,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > span {

    font-size:clamp(8px,.82vw,11px) !important;
    line-height:1.2 !important;
    overflow-wrap:anywhere !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > strong,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > strong,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > strong {

    font-size:clamp(21px,2.15vw,30px) !important;
    line-height:1 !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > em,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > em,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > em {

    font-size:clamp(8px,.76vw,10px) !important;
    line-height:1.22 !important;
    overflow-wrap:anywhere !important;
}


/* ---------------------------------------------------------
   Sponsored Campaigns page
   Total / Active / Pending / Past Due / Completed
--------------------------------------------------------- */
body.follo-management-standalone
.follo-mp-main
.follo-campaign-stat-grid,

body.follo-management-full-access
.follo-mp-main
.follo-campaign-stat-grid,

body.follo-plugin-admin
.follo-campaign-stat-grid {

    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    grid-auto-flow:column !important;
    grid-auto-columns:minmax(0,1fr) !important;

    gap:clamp(7px,1.15vw,18px) !important;

    width:100% !important;
    max-width:none !important;

    align-items:stretch !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-campaign-stat-grid
> .follo-campaign-stat-card,

body.follo-management-full-access
.follo-mp-main
.follo-campaign-stat-grid
> .follo-campaign-stat-card,

body.follo-plugin-admin
.follo-campaign-stat-grid
> .follo-campaign-stat-card {

    display:grid !important;
    grid-template-columns:clamp(42px,4.7vw,66px) minmax(0,1fr) !important;

    gap:clamp(8px,1vw,14px) !important;

    min-width:0 !important;
    width:auto !important;
    max-width:none !important;

    min-height:124px !important;

    padding:clamp(12px,1.25vw,18px) !important;

    box-sizing:border-box !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-campaign-stat-grid
.follo-cstat-icon,

body.follo-management-full-access
.follo-mp-main
.follo-campaign-stat-grid
.follo-cstat-icon,

body.follo-plugin-admin
.follo-campaign-stat-grid
.follo-cstat-icon {

    width:clamp(42px,4.7vw,60px) !important;
    height:clamp(42px,4.7vw,60px) !important;

    font-size:clamp(20px,2.2vw,28px) !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-campaign-stat-card
> div:last-child,

body.follo-management-full-access
.follo-mp-main
.follo-campaign-stat-card
> div:last-child,

body.follo-plugin-admin
.follo-campaign-stat-card
> div:last-child {

    min-width:0 !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-campaign-stat-card span,

body.follo-management-full-access
.follo-mp-main
.follo-campaign-stat-card span,

body.follo-plugin-admin
.follo-campaign-stat-card span {

    font-size:clamp(8px,.82vw,11px) !important;
    line-height:1.2 !important;
    overflow-wrap:anywhere !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-campaign-stat-card strong,

body.follo-management-full-access
.follo-mp-main
.follo-campaign-stat-card strong,

body.follo-plugin-admin
.follo-campaign-stat-card strong {

    font-size:clamp(21px,2.1vw,28px) !important;
    line-height:1 !important;
}

body.follo-management-standalone
.follo-mp-main
.follo-campaign-stat-card small,

body.follo-management-full-access
.follo-mp-main
.follo-campaign-stat-card small,

body.follo-plugin-admin
.follo-campaign-stat-card small {

    font-size:clamp(8px,.74vw,10px) !important;
    line-height:1.2 !important;
    overflow-wrap:anywhere !important;
}


/* ---------------------------------------------------------
   Override ALL historical responsive column changes.
   Five cards remain one row at every viewport width.
--------------------------------------------------------- */
@media (max-width:1400px) {
    body.follo-management-standalone .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-management-full-access .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-plugin-admin .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-management-standalone .follo-mp-main .follo-campaign-stat-grid,
    body.follo-management-full-access .follo-mp-main .follo-campaign-stat-grid,
    body.follo-plugin-admin .follo-campaign-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    }
}

@media (max-width:980px) {
    body.follo-management-standalone .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-management-full-access .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-plugin-admin .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-management-standalone .follo-mp-main .follo-campaign-stat-grid,
    body.follo-management-full-access .follo-mp-main .follo-campaign-stat-grid,
    body.follo-plugin-admin .follo-campaign-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
        gap:6px !important;
    }
}

@media (max-width:700px) {
    body.follo-management-standalone .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-management-full-access .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-plugin-admin .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-management-standalone .follo-mp-main .follo-campaign-stat-grid,
    body.follo-management-full-access .follo-mp-main .follo-campaign-stat-grid,
    body.follo-plugin-admin .follo-campaign-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
        gap:4px !important;
    }

    body.follo-management-standalone .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid > .follo-stat-card,
    body.follo-management-full-access .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid > .follo-stat-card,
    body.follo-plugin-admin .follo-stat-grid.follo-vivid-stat-grid > .follo-stat-card,
    body.follo-management-standalone .follo-mp-main .follo-campaign-stat-grid > .follo-campaign-stat-card,
    body.follo-management-full-access .follo-mp-main .follo-campaign-stat-grid > .follo-campaign-stat-card,
    body.follo-plugin-admin .follo-campaign-stat-grid > .follo-campaign-stat-card {
        grid-template-columns:1fr !important;
        justify-items:center !important;
        align-content:start !important;
        gap:6px !important;
        min-height:132px !important;
        padding:8px 5px !important;
        text-align:center !important;
    }

    body.follo-management-standalone .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid .follo-stat-icon,
    body.follo-management-full-access .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid .follo-stat-icon,
    body.follo-plugin-admin .follo-stat-grid.follo-vivid-stat-grid .follo-stat-icon,
    body.follo-management-standalone .follo-mp-main .follo-campaign-stat-grid .follo-cstat-icon,
    body.follo-management-full-access .follo-mp-main .follo-campaign-stat-grid .follo-cstat-icon,
    body.follo-plugin-admin .follo-campaign-stat-grid .follo-cstat-icon {
        width:34px !important;
        height:34px !important;
        font-size:17px !important;
    }

    body.follo-management-standalone .follo-mp-main .follo-stat-content,
    body.follo-management-full-access .follo-mp-main .follo-stat-content,
    body.follo-plugin-admin .follo-stat-content {
        text-align:center !important;
    }
}

@media (max-width:480px) {
    body.follo-management-standalone .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-management-full-access .follo-mp-main .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-plugin-admin .follo-stat-grid.follo-vivid-stat-grid,
    body.follo-management-standalone .follo-mp-main .follo-campaign-stat-grid,
    body.follo-management-full-access .follo-mp-main .follo-campaign-stat-grid,
    body.follo-plugin-admin .follo-campaign-stat-grid {
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
        gap:3px !important;
    }

    body.follo-management-standalone .follo-mp-main .follo-stat-content > em,
    body.follo-management-full-access .follo-mp-main .follo-stat-content > em,
    body.follo-plugin-admin .follo-stat-content > em,
    body.follo-management-standalone .follo-mp-main .follo-campaign-stat-card small,
    body.follo-management-full-access .follo-mp-main .follo-campaign-stat-card small,
    body.follo-plugin-admin .follo-campaign-stat-card small {
        display:none !important;
    }
}


/* =========================================================
   v7.6.2 - DASHBOARD KPI CONTENT OVERLAP FIX
   Keeps all five cards in one row while making the inside
   of each card compact enough to avoid text/value collisions.
========================================================= */

/* Dashboard cards: use a smaller icon column and flexible text column. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card {

    grid-template-columns:clamp(40px,4vw,54px) minmax(0,1fr) !important;
    column-gap:clamp(7px,.8vw,11px) !important;
    row-gap:5px !important;

    min-width:0 !important;
    overflow:hidden !important;

    padding:clamp(10px,1vw,15px) !important;
}

/* Icon: slightly smaller so labels and values have enough room. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-icon,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-icon,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-icon {

    width:clamp(40px,4vw,52px) !important;
    height:clamp(40px,4vw,52px) !important;

    min-width:40px !important;
    min-height:40px !important;

    font-size:clamp(18px,1.8vw,24px) !important;
}

/* Text column must be allowed to shrink. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content {

    min-width:0 !important;
    max-width:100% !important;

    overflow:hidden !important;
}

/* KPI title: compact two-line-friendly label. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > span,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > span,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > span {

    display:block !important;

    max-width:100% !important;

    margin:0 0 5px !important;

    font-size:clamp(7.5px,.72vw,10px) !important;
    line-height:1.12 !important;

    letter-spacing:.01em !important;

    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
}

/* Main KPI value: prevent "$25.00" and other values from colliding. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > strong,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > strong,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > strong {

    display:block !important;

    max-width:100% !important;

    margin:0 0 6px !important;

    font-size:clamp(18px,1.75vw,26px) !important;
    line-height:1 !important;

    white-space:nowrap !important;

    overflow:hidden !important;
    text-overflow:clip !important;
}

/* Links / helper text: keep compact and prevent overlap. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > em,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > em,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content > em {

    display:block !important;

    max-width:100% !important;

    margin:0 !important;

    font-size:clamp(7px,.67vw,9px) !important;
    line-height:1.15 !important;

    white-space:normal !important;
    overflow-wrap:anywhere !important;
}

/* If the card link itself is an anchor, make it wrap safely too. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content a,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content a,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
.follo-stat-content a {

    display:inline !important;

    max-width:100% !important;

    font-size:inherit !important;
    line-height:inherit !important;

    white-space:normal !important;
    overflow-wrap:anywhere !important;
}

/* Medium desktop / smaller window:
   keep five cards, but compact internal content further. */
@media (max-width:1100px) {

    body.follo-management-standalone
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    > .follo-stat-card,

    body.follo-management-full-access
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    > .follo-stat-card,

    body.follo-plugin-admin
    .follo-stat-grid.follo-vivid-stat-grid
    > .follo-stat-card {

        grid-template-columns:42px minmax(0,1fr) !important;

        column-gap:7px !important;

        padding:10px !important;
    }

    body.follo-management-standalone
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-icon,

    body.follo-management-full-access
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-icon,

    body.follo-plugin-admin
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-icon {

        width:42px !important;
        height:42px !important;

        font-size:19px !important;
    }

    body.follo-management-standalone
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > strong,

    body.follo-management-full-access
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > strong,

    body.follo-plugin-admin
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > strong {

        font-size:20px !important;
    }
}

/* Narrow windows: switch each KPI card to centered vertical content.
   The five cards themselves still remain in ONE row. */
@media (max-width:760px) {

    body.follo-management-standalone
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    > .follo-stat-card,

    body.follo-management-full-access
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    > .follo-stat-card,

    body.follo-plugin-admin
    .follo-stat-grid.follo-vivid-stat-grid
    > .follo-stat-card {

        grid-template-columns:1fr !important;

        justify-items:center !important;
        align-content:start !important;

        padding:8px 4px !important;

        text-align:center !important;
    }

    body.follo-management-standalone
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content,

    body.follo-management-full-access
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content,

    body.follo-plugin-admin
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content {

        width:100% !important;
        text-align:center !important;
    }

    body.follo-management-standalone
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > span,

    body.follo-management-full-access
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > span,

    body.follo-plugin-admin
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > span {

        font-size:7px !important;
        line-height:1.08 !important;
    }

    body.follo-management-standalone
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > strong,

    body.follo-management-full-access
    .follo-mp-main
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > strong,

    body.follo-plugin-admin
    .follo-stat-grid.follo-vivid-stat-grid
    .follo-stat-content > strong {

        font-size:17px !important;
    }
}

/* Paid This Month has the longest value; guarantee a little extra compression. */
body.follo-management-standalone
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card:last-child
.follo-stat-content > strong,

body.follo-management-full-access
.follo-mp-main
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card:last-child
.follo-stat-content > strong,

body.follo-plugin-admin
.follo-stat-grid.follo-vivid-stat-grid
> .follo-stat-card:last-child
.follo-stat-content > strong {

    font-size:clamp(17px,1.55vw,24px) !important;
}


/* =========================================================
   v7.6.3 - SPONSOR QUICK SEARCH
========================================================= */

.follo-sponsor-searchbar {
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;

    margin:0 0 18px;
    padding:13px;

    border:1px solid #d8e4ee;
    border-radius:14px;

    background:#fff;

    box-shadow:0 8px 22px rgba(24,54,86,.045);
}

.follo-sponsor-searchfield {
    position:relative;

    flex:1 1 440px;
    min-width:240px;
}

.follo-sponsor-searchicon {
    position:absolute;

    top:50%;
    left:13px;

    transform:translateY(-50%);

    color:#6f839b;

    font-size:18px;
    line-height:1;

    pointer-events:none;
}

.follo-sponsor-searchfield input[type="search"] {
    width:100% !important;
    min-height:44px !important;

    box-sizing:border-box !important;

    margin:0 !important;

    padding:8px 13px 8px 40px !important;

    border:1px solid #cfdbe8 !important;
    border-radius:11px !important;

    background:#fff !important;
    color:#19314f !important;

    box-shadow:none !important;

    font-size:12px !important;
}

.follo-sponsor-searchfield input[type="search"]::placeholder {
    color:#8795a8;
}

.follo-sponsor-searchfield input[type="search"]:focus {
    border-color:#75aadd !important;

    outline:0 !important;

    box-shadow:0 0 0 3px rgba(8,117,209,.10) !important;
}

.follo-sponsor-searchbutton,
.follo-sponsor-clearbutton {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    min-height:42px !important;

    box-sizing:border-box !important;

    padding:0 15px !important;

    border-radius:10px !important;

    font-size:11px !important;
    font-weight:800 !important;
    line-height:1 !important;
}

.follo-sponsor-searchbutton {
    border-color:#0875c9 !important;

    background:#0875c9 !important;
    color:#fff !important;
}

.follo-sponsor-searchbutton:hover,
.follo-sponsor-searchbutton:focus {
    border-color:#0564ac !important;

    background:#0564ac !important;
    color:#fff !important;
}

.follo-sponsor-clearbutton {
    border-color:#d2ddea !important;

    background:#fff !important;
    color:#405a77 !important;
}

.follo-sponsor-searchcount {
    flex:0 0 auto;

    margin-left:auto;

    color:#718299;

    font-size:10px;
    font-weight:800;

    white-space:nowrap;
}

.follo-sponsor-search-empty {
    display:grid;
    gap:4px;

    padding:28px 18px;

    border:1px dashed #d7e2ec;
    border-radius:13px;

    background:#fafcfe;

    text-align:center;
}

.follo-sponsor-search-empty strong {
    color:#17304f;
    font-size:13px;
}

.follo-sponsor-search-empty span {
    color:#788aa0;
    font-size:10px;
    line-height:1.5;
}

@media (max-width:700px) {

    .follo-sponsor-searchbar {
        align-items:stretch;
    }

    .follo-sponsor-searchfield {
        flex:1 1 100%;
        width:100%;
        min-width:0;
    }

    .follo-sponsor-searchbutton,
    .follo-sponsor-clearbutton {
        flex:1 1 auto;
    }

    .follo-sponsor-searchcount {
        flex:1 1 100%;

        width:100%;
        margin-left:0;

        padding-top:2px;
    }
}


/* =========================================================
   v7.6.4 - SPONSOR SEARCH RESULT LISTING
========================================================= */

.follo-sponsor-search-results {
    margin:0 0 20px;
    padding:18px;

    border:1px solid #d9e4ee;
    border-radius:16px;

    background:#fff;

    box-shadow:0 9px 24px rgba(29,58,90,.045);
}

.follo-sponsor-search-results-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;

    margin-bottom:14px;
}

.follo-sponsor-search-kicker {
    display:block;

    margin-bottom:4px;

    color:#a21a24;

    font-size:9px;
    font-weight:900;
    letter-spacing:.12em;
}

.follo-sponsor-search-results-head h2 {
    margin:0 !important;

    color:#0b1d3e !important;

    font-size:19px !important;
    line-height:1.2;
}

.follo-sponsor-search-results-head p {
    margin:5px 0 0;

    color:#72839a;

    font-size:10px;
}

.follo-sponsor-search-result-list {
    display:grid;
    gap:10px;
}

.follo-sponsor-search-result-card {
    display:grid;
    grid-template-columns:48px minmax(0,1fr) auto;
    gap:14px;
    align-items:center;

    min-width:0;

    padding:14px;

    border:1px solid #dce6ef;
    border-radius:13px;

    background:#fbfdff;

    transition:
        border-color .15s ease,
        box-shadow .15s ease,
        transform .15s ease;
}

.follo-sponsor-search-result-card:hover {
    border-color:#c4d7e7;

    box-shadow:0 7px 18px rgba(30,60,90,.07);

    transform:translateY(-1px);
}

.follo-sponsor-result-avatar {
    display:flex;
    align-items:center;
    justify-content:center;

    width:48px;
    height:48px;

    border-radius:13px;

    background:#e8f2ff;
    color:#0875d1;

    font-size:18px;
    font-weight:900;
}

.follo-sponsor-result-main {
    min-width:0;
}

.follo-sponsor-result-title-row {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.follo-sponsor-result-title-row h3 {
    margin:0 !important;

    color:#142946 !important;

    font-size:14px !important;
    line-height:1.25;
}

.follo-sponsor-result-business {
    display:block;

    margin-top:2px;

    color:#6f8199;

    font-size:10px;
}

.follo-sponsor-result-id {
    flex:0 0 auto;

    padding:4px 7px;

    border-radius:999px;

    background:#edf3f8;
    color:#60748d;

    font-size:8px;
    font-weight:800;

    white-space:nowrap;
}

.follo-sponsor-result-meta {
    display:flex;
    align-items:flex-start;
    gap:18px;
    flex-wrap:wrap;

    margin-top:10px;
}

.follo-sponsor-result-meta > div {
    min-width:0;
}

.follo-sponsor-result-meta span,
.follo-sponsor-result-meta strong {
    display:block;
}

.follo-sponsor-result-meta span {
    margin-bottom:2px;

    color:#8896a8;

    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.follo-sponsor-result-meta strong {
    max-width:240px;

    overflow:hidden;

    color:#354a63;

    font-size:10px;
    font-weight:700;

    text-overflow:ellipsis;
    white-space:nowrap;
}

.follo-sponsor-result-actions {
    display:flex;
    align-items:center;
    justify-content:flex-end;
}

.follo-sponsor-view-button {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    min-height:40px !important;

    padding:0 14px !important;

    border:0 !important;
    border-radius:9px !important;

    background:#0b73c7 !important;
    color:#fff !important;

    font-size:10px !important;
    font-weight:800 !important;

    white-space:nowrap;
}

.follo-sponsor-view-button:hover,
.follo-sponsor-view-button:focus {
    background:#075fa8 !important;
    color:#fff !important;
}

.follo-sponsor-search-results-empty {
    display:grid;
    gap:4px;

    padding:26px 18px;

    border:1px dashed #d7e1ea;
    border-radius:12px;

    background:#fafcfe;

    text-align:center;
}

.follo-sponsor-search-results-empty strong {
    color:#17304d;
    font-size:12px;
}

.follo-sponsor-search-results-empty span {
    color:#7d8ea3;
    font-size:10px;
}

@media (max-width:760px) {
    .follo-sponsor-search-result-card {
        grid-template-columns:44px minmax(0,1fr);
    }

    .follo-sponsor-result-avatar {
        width:44px;
        height:44px;
    }

    .follo-sponsor-result-actions {
        grid-column:1 / -1;
        justify-content:flex-start;
        padding-left:58px;
    }
}

@media (max-width:520px) {
    .follo-sponsor-search-results {
        padding:14px;
    }

    .follo-sponsor-search-result-card {
        grid-template-columns:1fr;
        justify-items:start;
    }

    .follo-sponsor-result-title-row {
        display:grid;
    }

    .follo-sponsor-result-meta {
        display:grid;
        gap:8px;
    }

    .follo-sponsor-result-actions {
        grid-column:auto;
        width:100%;
        padding-left:0;
    }

    .follo-sponsor-view-button {
        width:100% !important;
    }
}

