:root {
    --theme-text: #202020;
    --theme-primary: #1f4e79;
    --theme-secondary: #d9e8f5;
    --surface: #ffffff;
    --surface-muted: #f6f6f1;
    --border: #8a8a8a;
    --link: #0000cc;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    color: var(--theme-text);
    background: #e7e7df;
    line-height: 1.45;
}

*, *::before, *::after { box-sizing: border-box; }
body { min-width: 20rem; margin: 0; background: #e7e7df; font-size: 0.875rem; }
a { color: var(--link); }
a:visited { color: #551a8b; }
a:hover { color: #cc0000; }
img { max-width: 100%; height: auto; }

.site-header, .site-footer { width: min(100% - 1rem, 48rem); margin: 0 auto; text-align: center; }
.site-header { padding: 0.75rem 0 0.5rem; }
.site-brand { display: inline-block; }
.site-brand img { display: block; }
.site-shell { width: min(100% - 1rem, 48rem); min-height: calc(100vh - 10rem); margin: 0 auto; padding: 1rem; overflow-wrap: anywhere; background: var(--surface); border: 1px solid var(--border); }
.site-footer { padding: 0.75rem; font-size: 0.75rem; }
.site-footer p { margin: 0 0 0.45rem; }
.site-footer nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.25rem 0.75rem; }
.admin-page .site-header, .admin-page .site-footer, .members-page .site-header, .members-page .site-footer { width: min(100% - 2rem, 100rem); }
.admin-page .site-shell, .members-page .site-shell { width: calc(100% - 2rem); max-width: 100rem; }

input, select, textarea, button { max-width: 100%; padding: 0.35rem 0.45rem; color: #202020; font: inherit; background: #fff; border: 1px solid #777; border-radius: 0; }
textarea { width: 100%; }
button, input[type="button"], input[type="submit"], .button, a.button { display: inline-block; padding: 0.35rem 0.7rem; color: #fff !important; cursor: pointer; font-weight: bold; text-decoration: none; background: #1f4e79; border: 1px solid #102c46; border-radius: 0; }
button:hover, input[type="button"]:hover, input[type="submit"]:hover, .button:hover, a.button:hover { color: #fff !important; background: #163a5b; }
:focus-visible { outline: 2px solid #cc0000; outline-offset: 2px; }

.panel, .index-copy, .join-card, .notice, .game-result { margin: 1rem 0; padding: 0.8rem; background: var(--surface-muted); border: 1px solid var(--border); }
.member-stats { margin: 0 0 1rem; padding: 0.6rem; text-align: center; background: #edf4fa; border: 1px solid #9bb8d0; }
.member-stats span { display: inline-block; margin: 0 0.4rem; }
.hero-actions { margin: 1rem 0; text-align: center; }
.plan-stack { display: grid; gap: 1rem; }
.plan-card { background: #fff; border: 1px solid var(--border); }
.plan-card__header { padding: 0.65rem 0.8rem; text-align: center; background: #e6eef5; border-bottom: 1px solid var(--border); }
.plan-title { margin: 0; color: #1f4e79; font-size: 1.1rem; }
.plan-title img { max-height: 2.5rem; margin: 0 auto; }
.plan-subtitle { margin: 0.35rem 0 0; font-weight: bold; }
.tag-pill { padding: 0.1rem 0.35rem; font-size: 0.75rem; background: #fff; border: 1px solid #9bb8d0; }
.plan-card__body { padding: 0.8rem; }
.plan-card__body p { margin: 0.45rem 0; }
.plan-price, .plan-form { padding-top: 0.75rem; border-top: 1px dashed #999; }
.form-control { display: block; width: 100%; max-width: 22rem; margin: 0.2rem 0 0.75rem; }
.signup-title { color: #1f4e79; font-weight: bold; }
.terms-line { display: block; margin: 0.8rem 0; }
.terms-line input { vertical-align: middle; }
.login-panel { max-width: 24rem; margin: 1rem auto; padding: 1rem; text-align: left; background: var(--surface-muted); border: 1px solid var(--border); }
.login-panel h1 { margin-top: 0; color: #1f4e79; font-size: 1.25rem; }
.login-panel label { display: block; margin-top: 0.65rem; font-weight: bold; }
.legal-copy h1 { margin-top: 0; color: #1f4e79; font-size: 1.35rem; }
.legal-copy h2 { margin-top: 1.5rem; font-size: 1rem; }
.admin-layout { display: grid; gap: 1rem; }
.admin-navigation { padding: 0.75rem; background: var(--surface-muted); border: 1px solid var(--border); }
.admin-navigation a { display: block; padding: 0.25rem 0; }
.admin-navigation-manager { min-width: 0; }
.admin-navigation-manager__header { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; justify-content: space-between; margin-bottom: 1rem; padding: 1.2rem; background: #f7f9fc; border: 1px solid #cbd5e1; border-radius: .65rem; }
.admin-navigation-manager__header h1 { margin: 0; color: var(--theme-primary); font-size: 1.45rem; }
.admin-navigation-manager__header p:last-child { margin-bottom: 0; }
.admin-navigation-table { overflow-x: auto; border: 1px solid #cbd5e1; border-radius: .65rem; }
.admin-navigation-table table { width: 100%; min-width: 52rem; border-collapse: collapse; background: #fff; }
.admin-navigation-table th, .admin-navigation-table td { padding: .7rem; text-align: left; vertical-align: top; border-bottom: 1px solid #dce3ec; }
.admin-navigation-table th { color: #fff; background: var(--theme-primary); }
.admin-navigation-table__url { max-width: 15rem; overflow-wrap: anywhere; }
.admin-navigation-table__actions { display: flex; gap: .45rem; white-space: nowrap; }
.admin-navigation-table__actions form { margin: 0; }
.button--secondary { color: #172033 !important; background: #e2e8f0; border-color: #94a3b8; }
.button--secondary:hover { background: #cbd5e1; }
.status-pill { display: inline-block; padding: .16rem .45rem; font-size: .75rem; font-weight: 700; border-radius: 999px; }
.status-pill.is-active { color: #166534; background: #dcfce7; }.status-pill.is-inactive { color: #991b1b; background: #fee2e2; }
.admin-menu__section { margin-bottom: 0.9rem; }
.admin-menu__section h2 { margin: 0 0 0.3rem; color: #1f4e79; font-size: 0.85rem; }
.admin-menu__section ul { margin: 0; padding: 0; list-style: none; }
.admin-menu__section li { margin: 0; }
.admin-menu__section a { padding: 0.18rem 0.25rem; }
.settings-group { margin: 1rem 0; padding: 0.75rem; border: 1px solid var(--border); background: var(--surface-muted); }
.settings-group h2 { margin-top: 0; font-size: 1rem; color: #1f4e79; }
.settings-grid { display: grid; gap: 0.65rem; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); }
.settings-grid label { font-weight: bold; }
.settings-grid input { display: block; width: 100%; margin-top: 0.2rem; }
.credit-settings > header h1 { margin: 0; color: var(--theme-primary); font-size: 1.45rem; }
.credit-settings > header p:last-child { max-width: 65rem; }
.settings-guide { margin: 1rem 0; padding: .9rem 1rem; color: #263747; background: #fff9e6; border: 1px solid #d6b85c; border-left-width: .35rem; }
.settings-guide h2 { margin: 0 0 .45rem; color: #624d09; font-size: 1rem; }
.settings-guide ol { display: flex; flex-wrap: wrap; gap: .35rem 1.5rem; margin: .35rem 0 .55rem; padding-left: 1.25rem; }
.settings-guide li { padding-left: .15rem; }
.settings-guide p { margin: .35rem 0 0; }
.economy-overview { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); margin: 1rem 0; }
.economy-overview div { padding: .8rem; background: #edf4fa; border: 1px solid #9bb8d0; }
.economy-overview span, .economy-overview strong { display: block; }
.economy-overview span { margin-bottom: .2rem; color: #526070; font-size: .75rem; font-weight: 700; text-transform: uppercase; }
.economy-overview strong { color: #173c5e; font-size: 1.05rem; }
.settings-group--primary { border-color: #7fa5c4; background: #f3f8fc; }
.settings-group > p { max-width: 70rem; }
.settings-grid label, .tier-grid label { display: block; }
.settings-grid small, .tier-grid small, .advanced-settings small { display: block; margin-top: .2rem; color: #526070; font-size: .72rem; font-weight: normal; }
.tier-grid { display: grid; gap: .8rem; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); }
.tier-grid fieldset { min-width: 0; padding: .8rem; background: #fff; border: 1px solid #9aa6b2; }
.tier-grid legend { padding: 0 .35rem; color: var(--theme-primary); font-weight: 700; }
.tier-grid label { margin-bottom: .65rem; font-weight: 700; }
.tier-grid input { display: block; width: 100%; margin-top: .2rem; }
.table-scroll { overflow-x: auto; }
.economy-table { width: 100%; min-width: 40rem; border-collapse: collapse; background: #fff; }
.economy-table th, .economy-table td { padding: .55rem; text-align: left; border: 1px solid #b7c0c8; }
.economy-table thead th { color: #fff; background: var(--theme-primary); }
.economy-table tbody th { min-width: 13rem; background: #edf4fa; }
.economy-table input { width: 100%; min-width: 7rem; }
.advanced-settings { margin: 1rem 0; border: 1px solid var(--border); background: #fff; }
.advanced-settings summary { display: flex; justify-content: space-between; gap: 1rem; padding: .8rem; color: var(--theme-primary); cursor: pointer; font-weight: 700; background: #eef1f3; }
.advanced-settings summary span { color: #526070; font-size: .75rem; }
.advanced-settings__intro { padding: .8rem; border-bottom: 1px solid var(--border); }
.advanced-settings__intro h2 { margin: 0 0 .3rem; font-size: 1rem; }
.advanced-settings__intro p { margin: 0; }
.advanced-group-list { display: grid; gap: .65rem; padding: .8rem; }
.advanced-group { border: 1px solid #b7c0c8; background: #f8fafc; }
.advanced-group > summary { display: flex; justify-content: space-between; gap: 1rem; padding: .65rem .75rem; color: #263747; cursor: pointer; font-weight: 700; background: #e7edf2; }
.advanced-group > summary small { color: #526070; font-weight: 400; }
.advanced-group__body { padding: .8rem; }
.advanced-group__body > p { margin: 0 0 .8rem; color: #526070; }
.settings-savebar { position: sticky; bottom: 0; display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-top: 1rem; padding: .75rem; background: #fff; border: 1px solid #8a8a8a; box-shadow: 0 -2px 8px rgba(0,0,0,.08); }
.settings-savebar span { color: #526070; font-size: .78rem; }
.sr-only { 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; }
.grant-grid { display: grid; gap: 0.8rem; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); }
.grant-grid form label { display: block; margin: 0.5rem 0; font-weight: bold; }
.grant-grid input { display: block; width: 100%; margin-top: 0.2rem; }
.member-directory { overflow-x: auto; }
.member-directory table { width: 100%; border-collapse: collapse; }
.member-directory th, .member-directory td { padding: 0.45rem; text-align: left; border: 1px solid var(--border); }
.member-directory th { background: #e6eef5; }
.pagination { display: flex; gap: 0.75rem; align-items: center; margin-top: 1rem; }
@media (min-width: 46rem) { .admin-layout { grid-template-columns: 12rem minmax(0, 1fr); } }
@media (min-width: 46rem) { .plan-stack { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Member dashboard */
.member-layout { display: grid; gap: 1.25rem; }
.member-sidebar { display: grid; gap: 1rem; align-content: start; }
.member-summary, .member-menu, .paid-links, .member-buttons { padding: 1rem; background: #f7f9fc; border: 1px solid #cbd5e1; border-radius: .65rem; }
.member-summary h2, .member-menu h2, .paid-links h2 { margin: 0 0 .45rem; color: var(--theme-primary); font-size: 1rem; }
.eyebrow { margin: 0 0 .3rem; color: #526070; font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.upgrade-link { display: inline-block; margin-bottom: .75rem; font-weight: 700; }
.account-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; margin: 0 0 .75rem; }
.account-stats div { padding: .55rem; background: #fff; border-radius: .4rem; }
.account-stats dt { color: #526070; font-size: .72rem; }
.account-stats dd { margin: .15rem 0 0; font-weight: 700; }
.daily-bonus { display: flex; align-items: center; gap: .75rem; padding: .65rem; color: #fff !important; font-weight: 700; text-decoration: none; background: var(--theme-primary); border-radius: .65rem; }
.daily-bonus img { width: 3rem; height: 3rem; object-fit: cover; border-radius: .35rem; }
.member-menu__link, .paid-links a { display: flex; justify-content: space-between; gap: .5rem; padding: .5rem .25rem; text-decoration: none; border-bottom: 1px solid #dce3ec; }
.member-menu__link:last-child, .paid-links a:last-child { border-bottom: 0; }
.member-menu__link span { padding: .05rem .3rem; color: #fff; font-size: .68rem; font-weight: 700; background: #dc2626; border-radius: 999px; }
.member-menu-group { border-top: 1px solid #dce3ec; }
.member-menu-group:first-of-type { border-top: 0; }
.member-menu-group summary { display: flex; align-items: center; justify-content: space-between; padding: .65rem .25rem; color: var(--theme-primary); cursor: pointer; font-size: .83rem; font-weight: 700; list-style: none; }
.member-menu-group summary::-webkit-details-marker { display: none; }
.member-menu-group summary::after { content: '+'; font-size: 1.1rem; }
.member-menu-group[open] summary::after { content: '–'; }
.member-menu-group__links { padding-bottom: .35rem; }
.member-menu-group__links .member-menu__link { padding-left: .5rem; }
.paid-links p { margin: -.1rem 0 .35rem; color: #526070; font-size: .78rem; }
.member-buttons { overflow: visible; }
.member-buttons > table { width: 100% !important; max-width: 100%; }
.button-ad-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(7.75rem, 1fr)); gap: .65rem; }
.button-ad-list__item { display: grid; place-items: center; min-height: 125px; padding: .4rem; background: #fff; border: 1px solid #dce3ec; border-radius: .4rem; }
.button-ad-list__item img { display: block; width: 125px; height: 125px; max-width: 100%; object-fit: contain; }
.member-welcome { margin-bottom: 1rem; padding: 1.25rem; color: #fff; background: linear-gradient(135deg, var(--theme-primary), #0f766e); border-radius: .75rem; }
.member-welcome h1 { margin: 0; font-size: clamp(1.4rem, 4vw, 2rem); }
.member-welcome p:last-child { margin-bottom: 0; }
.member-page-content { padding: 1rem; background: #fff; border: 1px solid #dce3ec; border-radius: .65rem; }
.login-required { max-width: 32rem; margin: 2rem auto; }
.member-main > table, .member-main table { max-width: 100%; border-collapse: collapse; }
.member-main table { width: 100% !important; margin: 1rem 0; overflow: hidden; border: 1px solid #cbd5e1; border-radius: .5rem; }
.member-main th, .member-main td { padding: .55rem; vertical-align: top; overflow-wrap: anywhere; border: 1px solid #dce3ec; }
.member-main tr:first-child td { font-weight: 700; background: #eaf1f8 !important; }
.stats-hero { display: flex; gap: 1rem; align-items: center; margin-bottom: 1rem; padding: 1.25rem; color: #fff; background: linear-gradient(135deg, var(--theme-primary), #155e75); border-radius: .75rem; }
.stats-hero img { width: 4.25rem; max-height: 4.25rem; object-fit: contain; }
.stats-hero h1 { margin: 0; font-size: clamp(1.3rem, 3vw, 1.8rem); }
.stats-hero p:last-child { margin-bottom: 0; }
.stats-content { padding: 1rem; background: #fff; border: 1px solid #dce3ec; border-radius: .65rem; }
.stats-overview { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); margin: 0 0 1.5rem; }
.stats-overview > div, .stats-overview form { padding: .75rem; background: #f7f9fc; border: 1px solid #dce3ec; border-radius: .45rem; }
.stats-overview span { display: block; margin-bottom: .3rem; color: #526070; font-size: .75rem; font-weight: 700; text-transform: uppercase; }
.stats-overview input { width: 100%; padding: .35rem; font-size: .78rem; }
.stats-overview strong { font-size: 1.2rem; }
.stats-overview form { display: flex; align-items: end; }
.stats-section-title { margin: 1.5rem 0 .75rem; color: var(--theme-primary); font-size: 1.15rem; }
.daily-bonus-page { padding: 1rem; background: #fff; border: 1px solid #dce3ec; border-radius: .65rem; }
.daily-bonus-page__header { margin: -1rem -1rem 1rem; padding: 1.2rem; color: #fff; background: linear-gradient(135deg, var(--theme-primary), #155e75); border-radius: .65rem .65rem 0 0; }
.daily-bonus-page__header h1 { margin: 0; font-size: 1.5rem; }.daily-bonus-page__header p:last-child { margin-bottom: 0; }
.daily-bonus-page > table { max-width: 100%; border-collapse: collapse; }.daily-bonus-page th, .daily-bonus-page td { border: 1px solid #cbd5e1; }
.advertising-page { padding: 1rem; background: #fff; border: 1px solid #dce3ec; border-radius: .65rem; }
.advertising-page__header { margin: -1rem -1rem 1rem; padding: 1.2rem; color: #fff; background: linear-gradient(135deg, var(--theme-primary), #7c3aed); border-radius: .65rem .65rem 0 0; }
.advertising-page__header h1 { margin: 0; font-size: 1.5rem; }.advertising-page__header p:last-child { margin-bottom: 0; }
.advertising-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.advertising-tool,.advertising-product{padding:1rem;background:#f8fafc;border:1px solid #dce3ec;border-radius:.75rem}.advertising-tool h2,.advertising-product h2{margin-top:0;color:#1e3a5f;font-size:1.15rem}.advertising-tool p:last-child,.advertising-product p:last-child{margin-bottom:0}.inline-form{display:flex;align-items:end;gap:.6rem;flex-wrap:wrap}.inline-form label{flex:1 0 100%;font-weight:700}.inline-form input{min-width:0;flex:1 1 12rem}.muted{color:#64748b}
.advertising-catalog{display:grid;gap:1rem;max-width:60rem;margin:1rem auto 0}.advertising-catalog>p{padding:.9rem;background:#f7f9fc;border:1px solid #dce3ec;border-radius:.5rem}.advertising-product{background:#fff}.advertising-product__actions{display:grid;gap:.75rem}.provider-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.provider-actions form{margin:0}.provider-actions input[type=image]{display:block;max-width:9rem;height:auto}.rich-content{overflow-wrap:anywhere}
@media(max-width:700px){.advertising-tools{grid-template-columns:1fr}.advertising-page{padding:.75rem}.provider-actions{align-items:flex-start;flex-direction:column}}
.advertising-stats-page { padding: 1rem; background: #fff; border: 1px solid #dce3ec; border-radius: .65rem; }
.advertising-stats-page__header { margin: -1rem -1rem 1rem; padding: 1.2rem; color: #fff; background: linear-gradient(135deg, #4338ca, #0f766e); border-radius: .65rem .65rem 0 0; }.advertising-stats-page__header h1 { margin: 0; font-size: 1.5rem; }.advertising-stats-page__header p:last-child { margin-bottom: 0; }
.advertising-stats-page table { display: block; width: 100% !important; max-width: 100%; margin: 1rem 0; overflow-x: auto; border-collapse: collapse; border: 1px solid #cbd5e1; }.advertising-stats-page th, .advertising-stats-page td { padding: .55rem; vertical-align: top; border: 1px solid #dce3ec; }.advertising-stats-page tr:first-child td { font-weight: 700; background: #eaf1f8 !important; }
.campaign-dashboard{display:grid;gap:1.5rem;width:100%;padding:clamp(1rem,2vw,2rem)}
.campaign-dashboard__hero{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.25rem,3vw,2.25rem);color:#fff;background:linear-gradient(135deg,#312e81,#0f766e);border-radius:1rem;box-shadow:0 16px 40px rgba(15,23,42,.14)}
.campaign-dashboard__hero h1{margin:.15rem 0 .4rem;font-size:clamp(1.75rem,3vw,2.5rem)}.campaign-dashboard__hero p{max-width:48rem;margin:0}.campaign-dashboard__buy{flex:0 0 auto;background:#fff!important;color:#1e3a5f!important}
.campaign-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.campaign-summary article{display:grid;gap:.2rem;padding:1.2rem;background:#fff;border:1px solid #dbe4ee;border-radius:.85rem}.campaign-summary strong{font-size:1.8rem;color:#12324f}.campaign-summary span{color:#64748b}
.campaign-tools{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.campaign-tools>div,.promo-redeem{padding:1.25rem;background:#fff;border:1px solid #dbe4ee;border-radius:.85rem}.campaign-tools h2{margin-top:0}.promo-redeem div{display:flex;gap:.5rem}.promo-redeem input{min-width:0}
.campaign-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.campaign-section-heading h2{margin:.1rem 0 0}.campaign-section-heading>p{margin:0;color:#64748b}
.inventory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.inventory-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:105px;padding:1rem;background:#f8fafc;border:1px solid #dbe4ee;border-radius:.8rem}.inventory-card--available{background:#f0fdfa;border-color:#99f6e4}.inventory-card h3{margin:0 0 .25rem;font-size:1rem}.inventory-card p{margin:0;color:#64748b}
.campaign-groups{display:grid;gap:.8rem}.campaign-group{overflow:hidden;background:#fff;border:1px solid #dbe4ee;border-radius:.85rem}.campaign-group summary{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.15rem;font-weight:700;cursor:pointer;background:#f8fafc}.campaign-group__count{display:grid;place-items:center;min-width:1.8rem;height:1.8rem;padding:0 .45rem;color:#fff;background:#334155;border-radius:999px}.campaign-list{display:grid}.campaign-row{display:grid;grid-template-columns:minmax(200px,2fr) minmax(150px,1fr) auto auto;align-items:center;gap:1rem;padding:1rem 1.15rem;border-top:1px solid #e2e8f0}.campaign-row h3{margin:0 0 .2rem;font-size:1rem;overflow-wrap:anywhere}.campaign-row__metric{display:grid;gap:.25rem}.campaign-row__metric span{font-size:.78rem;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.campaign-row progress{width:100%;height:.45rem}.campaign-row__actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.campaign-row__actions form{margin:0}.status-pill{display:inline-flex;padding:.3rem .6rem;font-size:.78rem;font-weight:700;border-radius:999px;background:#e2e8f0}.status-pill--success{color:#166534;background:#dcfce7}.status-pill--warning{color:#92400e;background:#fef3c7}.status-pill--danger{color:#991b1b;background:#fee2e2}.button-link{padding:.35rem;border:0;color:#2563eb;background:transparent;cursor:pointer}.button-link--danger{color:#b91c1c}.campaign-empty{padding:2rem;text-align:center;background:#fff;border:1px dashed #94a3b8;border-radius:.85rem}
@media(max-width:900px){.campaign-summary{grid-template-columns:repeat(2,1fr)}.campaign-tools{grid-template-columns:1fr}.campaign-row{grid-template-columns:1fr 1fr}.campaign-row__actions{justify-content:flex-start}}@media(max-width:600px){.campaign-dashboard__hero,.campaign-section-heading{align-items:flex-start;flex-direction:column}.campaign-summary{grid-template-columns:1fr 1fr}.campaign-row{grid-template-columns:1fr}.promo-redeem div{flex-direction:column}}
.moderation-dashboard{display:grid;gap:1.5rem;width:100%;padding:clamp(1rem,2vw,2rem)}.moderation-hero{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.25rem,3vw,2.25rem);color:#fff;background:linear-gradient(135deg,#7c2d12,#9f1239);border-radius:1rem;box-shadow:0 16px 40px rgba(15,23,42,.14)}.moderation-hero h1{margin:.15rem 0 .4rem;font-size:clamp(1.75rem,3vw,2.5rem)}.moderation-hero p{max-width:48rem;margin:0}.moderation-hero__link{flex:0 0 auto;background:#fff!important;color:#7c2d12!important}.moderation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.moderation-summary article{display:grid;gap:.2rem;padding:1.2rem;background:#fff;border:1px solid #dbe4ee;border-radius:.85rem}.moderation-summary strong{font-size:1.8rem;color:#7c2d12}.moderation-summary span{color:#64748b}.moderation-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.moderation-section-heading h2{margin:.1rem 0 0}.moderation-section-heading>p{margin:0;color:#64748b}.send-queue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.send-queue-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:#f8fafc;border:1px solid #dbe4ee;border-radius:.8rem}.send-queue-card--ready{background:#fff7ed;border-color:#fdba74}.send-queue-card h3{margin:0;font-size:1rem}.send-queue-card p{margin:.2rem 0 0;color:#64748b}.moderation-groups{display:grid;gap:.75rem}.moderation-group{overflow:hidden;background:#fff;border:1px solid #dbe4ee;border-radius:.85rem}.moderation-group--pending{border-color:#fda4af}.moderation-group summary{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.15rem;font-weight:700;cursor:pointer;background:#f8fafc}.moderation-group--pending summary{background:#fff1f2}.moderation-count{display:grid;place-items:center;min-width:1.8rem;height:1.8rem;padding:0 .45rem;color:#fff;background:#64748b;border-radius:999px}.moderation-group--pending .moderation-count{background:#be123c}.moderation-empty{padding:0 1.15rem 1rem;color:#64748b}.moderation-form__toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.15rem;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.moderation-form__toolbar>div{display:flex;gap:.5rem}.button-danger{background:#b91c1c!important;border-color:#b91c1c!important}.moderation-list{display:grid}.moderation-item{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.15rem;border-bottom:1px solid #e2e8f0}.moderation-item:last-child{border-bottom:0}.moderation-item__select{display:grid;align-content:start;justify-items:center;gap:.25rem;padding:.5rem;font-size:.75rem;color:#64748b}.moderation-item__select input{width:1.15rem;height:1.15rem}.moderation-item__content{min-width:0}.moderation-item__heading{display:flex;align-items:start;justify-content:space-between;gap:1rem}.moderation-item__heading h3{margin:0;overflow-wrap:anywhere}.moderation-item__heading p{margin:.25rem 0;color:#64748b}.moderation-item__body{max-width:70rem;padding:.75rem;background:#f8fafc;border-radius:.5rem;white-space:pre-line}.moderation-item__meta{display:flex;gap:1rem;flex-wrap:wrap;color:#64748b}.moderation-preview-image{display:block;max-width:min(100%,468px);max-height:180px;margin:.75rem 0;object-fit:contain;border:1px solid #e2e8f0}.moderation-form button:focus-visible,.moderation-item a:focus-visible{outline:3px solid #38bdf8;outline-offset:2px}@media(max-width:760px){.moderation-hero,.moderation-section-heading,.moderation-form__toolbar,.moderation-item__heading{align-items:flex-start;flex-direction:column}.moderation-summary{grid-template-columns:1fr}.moderation-form__toolbar>div{width:100%;flex-direction:column}.moderation-form__toolbar button{width:100%}.moderation-item{grid-template-columns:1fr}.moderation-item__select{display:flex;justify-content:flex-start}}
.ad-reader-page { padding: 1rem; background: #fff; border: 1px solid #dce3ec; border-radius: .65rem; }
.ad-reader-page__header { margin: -1rem -1rem 1rem; padding: 1.2rem; color: #fff; background: linear-gradient(135deg, #1d4ed8, #0f766e); border-radius: .65rem .65rem 0 0; }
.ad-reader-page__header h1 { margin: 0; font-size: 1.5rem; }.ad-reader-page__header p:last-child { margin-bottom: 0; }
.ad-reader-page__title { margin: 1rem 0; color: var(--theme-primary); font-size: 1.15rem; }
.ad-reader-list { max-width: 44rem; margin: 1rem auto; padding: 1rem; text-align: center; background: #f7f9fc; border: 1px solid #cbd5e1; border-radius: .65rem; }
.ad-reader-list form { margin: .65rem 0; }.ad-reader-list--html { overflow: hidden; }.ad-reader-list--html img, .ad-reader-list--html iframe { max-width: 100%; }.ad-reader-list--html iframe { width: 100%; min-height: 20rem; border: 1px solid var(--border); border-radius: .5rem; background: #fff; }
.ad-reader-card { padding: 1rem; background: #fff; border: 1px solid #dce3ec; border-radius: .6rem; }
.ad-reader-card + .ad-reader-card { margin-top: 1rem; }
.ad-reader-card h3 { margin: .35rem 0 .75rem; font-size: 1.05rem; line-height: 1.5; }
.ad-reader-next { display: flex; justify-content: center; margin: 1rem 0 0; }
.ad-credit-toolbar { position: relative; display: grid; place-content: center; min-height: 100vh; margin: 0; padding: 1rem; text-align: center; color: #172033; background: #f7f9fc; }
.ad-credit-toolbar p { margin: .35rem 0; }
.ad-credit-toolbar form { margin: .5rem 0 0; }
.ad-credit-toolbar__nav { position: absolute; top: .5rem; right: .75rem; z-index: 3; margin: 0; font-size: .875rem; }
.frame-page { width: 100%; height: 100vh; height: 100dvh; margin: 0; overflow: hidden; background: #e2e8f0; }
.frame-layout { display: grid; grid-template-rows: var(--toolbar-height, 145px) minmax(0, 1fr); width: 100vw; height: 100vh; height: 100dvh; min-height: 0; overflow: hidden; }
.frame-layout > iframe { display: block; width: 100%; height: 100%; min-width: 0; min-height: 0; border: 0; background: #fff; }
.frame-layout > iframe:first-child { position: relative; z-index: 2; border-bottom: 1px solid #cbd5e1; box-shadow: 0 2px 8px rgba(15, 23, 42, .12); }
.frame-layout > .ad-credit-toolbar { min-height: 0; height: 100%; overflow: auto; }
.frame-layout > .frame-error { min-height: 0; height: 100%; }
.frame-error { display: grid; place-content: center; min-height: calc(100vh - var(--toolbar-height, 145px)); padding: 2rem; text-align: center; }
.ad-reader-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.solo-reader-list { display: grid; gap: 1rem; }
.solo-reader-card { min-width: 0; padding: 1rem; background: #fff; border: 1px solid var(--border); border-radius: .65rem; }
.solo-reader-card--viewed { background: #f7f9fc; }
.solo-reader-card h2 { margin: .2rem 0 .8rem; font-size: 1.15rem; }
.solo-reader-card iframe { width: 100%; min-height: 20rem; border: 1px solid var(--border); border-radius: .5rem; background: #fff; }
.ad-preview-label { margin: .5rem 0; color: #475569; font-size: .875rem; font-weight: 700; }
.ad-setup-page{display:grid;gap:1.25rem;width:100%;padding:clamp(1rem,2vw,2rem)}.ad-setup-page__hero{padding:clamp(1.25rem,3vw,2.2rem);color:#fff;background:linear-gradient(135deg,#1d4ed8,#0f766e);border-radius:1rem}.ad-setup-page__hero h1{margin:.15rem 0 .35rem;font-size:clamp(1.7rem,3vw,2.4rem)}.ad-setup-page__hero p{max-width:48rem;margin-bottom:0}.ad-setup-page__content{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:1rem}.ad-setup-card,.ad-setup-guidance{padding:clamp(1rem,2vw,1.5rem);background:#fff;border:1px solid #dbe4ee;border-radius:.9rem}.ad-setup-guidance h2{margin-top:0}.ad-setup-guidance li+li{margin-top:.6rem}.ad-setup-form{display:grid;gap:.45rem}.ad-setup-form label{margin-top:.55rem;font-weight:700}.ad-setup-form small{color:#64748b}.ad-setup-form button[type=submit]{justify-self:start;margin-top:1rem}.ad-setup-preview{display:grid;gap:.25rem;margin-top:1rem;padding:1rem;color:#fff;background:#1e293b;border-radius:.7rem}.ad-setup-preview .eyebrow{color:#93c5fd}.ad-setup-preview span{font-size:.9rem}@media(max-width:760px){.ad-setup-page__content{grid-template-columns:1fr}.ad-setup-form button[type=submit]{width:100%}}
.promo-admin{display:grid;gap:1.5rem;width:100%;padding:clamp(1rem,2vw,2rem)}.promo-admin__hero{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.25rem,3vw,2.2rem);color:#fff;background:linear-gradient(135deg,#6d28d9,#be185d);border-radius:1rem}.promo-admin__hero h1{margin:.15rem 0 .35rem;font-size:clamp(1.75rem,3vw,2.5rem)}.promo-admin__hero p{margin-bottom:0}.promo-admin__new{background:#fff!important;color:#6d28d9!important}.promo-library,.promo-editor{padding:clamp(1rem,2vw,1.5rem);background:#fff;border:1px solid #dbe4ee;border-radius:.9rem}.promo-library__heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.promo-library__heading h2,.promo-editor__heading h2{margin:.1rem 0}.promo-search label{font-size:.8rem;font-weight:700}.promo-search>div{display:flex;gap:.4rem}.promo-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:.85rem}.promo-card{display:grid;gap:1rem;padding:1rem;border:1px solid #dbe4ee;border-radius:.8rem;background:#f8fafc}.promo-card__top{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.promo-card h3{margin:0 0 .35rem}.promo-card code{display:inline-flex;padding:.3rem .5rem;color:#6d28d9;background:#ede9fe;border-radius:.35rem}.promo-card dl{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin:0}.promo-card dl div{display:grid}.promo-card dt{font-size:.75rem;color:#64748b;text-transform:uppercase}.promo-card dd{margin:0;font-weight:700}.promo-card__actions{display:flex;align-items:center;gap:.75rem}.promo-card__actions form{margin:0}.promo-editor__heading{margin-bottom:1rem}.promo-editor__form{display:grid;gap:1rem}.promo-editor fieldset{padding:1rem;border:1px solid #dbe4ee;border-radius:.75rem}.promo-editor legend{padding:0 .4rem;font-weight:800;color:#4c1d95}.promo-editor fieldset>label,.promo-field-grid label,.promo-choice-grid label{display:grid;gap:.3rem;font-weight:700}.promo-editor small{font-weight:400;color:#64748b}.promo-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.8rem}.promo-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.promo-editor__actions{display:flex;align-items:center;gap:1rem}@media(max-width:700px){.promo-admin__hero,.promo-library__heading{align-items:flex-start;flex-direction:column}.promo-search,.promo-search>div{width:100%}.promo-search input{min-width:0;flex:1}.promo-choice-grid{grid-template-columns:1fr}}
.ad-setup-reservation { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .8rem 1rem; margin-bottom: .5rem; background: #eff6ff; border: 1px solid #bfdbfe; border-radius: .65rem; }
.ad-setup-reservation span { color: #475569; }
.ad-setup-reservation strong { color: #1d4ed8; }
.text-post-hero{background:linear-gradient(135deg,#7c3aed,#db2777)}.text-post-counter{display:flex;align-items:center;justify-content:space-between;gap:1rem}.text-post-counter strong{font-variant-numeric:tabular-nums;color:#6d28d9}.text-post-preview{display:block;padding:1.25rem;color:#fff!important;font-weight:800;text-decoration:none;background:linear-gradient(135deg,#312e81,#7c3aed);border-radius:.75rem;overflow-wrap:anywhere}.text-post-preview-note{color:#64748b}.text-post-card__message{min-height:3rem;font-size:1.05rem;font-weight:750;color:#312e81}
@media (max-width: 36rem) { .stats-hero { align-items: flex-start; } .stats-hero img { width: 3rem; } .member-main table { display: block; overflow-x: auto; white-space: nowrap; } }
@media (min-width: 56rem) { .member-layout { grid-template-columns: 16rem minmax(0, 1fr); align-items: start; } }
.html-ad-page{display:grid;gap:1.25rem;width:100%;padding:clamp(1rem,2vw,2rem)}.html-ad-hero{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.25rem,3vw,2.25rem);color:#fff;background:linear-gradient(135deg,#4338ca,#0891b2);border-radius:1rem}.html-ad-hero h1{margin:.15rem 0 .35rem;font-size:clamp(1.8rem,3vw,2.5rem)}.html-ad-hero p{margin-bottom:0}.html-ad-summary{display:grid;min-width:10rem;padding:1rem;text-align:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:.8rem}.html-ad-summary strong{font-size:1.8rem}.html-ad-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:1rem}.html-ad-panel,.html-ad-library{min-width:0;padding:clamp(1rem,2vw,1.5rem);background:#fff;border:1px solid #dbe4ee;border-radius:.9rem}.html-ad-panel h2{margin-top:0}.html-ad-form{display:grid;gap:.45rem;min-width:0}.html-ad-form label{margin-top:.65rem;font-weight:700}.html-ad-form small{color:#64748b}.html-ad-check{display:flex!important;align-items:center;gap:.55rem}.html-ad-check input{width:auto}.html-ad-actions,.html-ad-card__actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.html-ad-preview-panel iframe,.html-ad-card iframe{width:100%;min-height:18rem;background:#fff;border:1px solid #cbd5e1;border-radius:.55rem}.html-ad-library__heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.html-ad-library__heading h2{margin:.1rem 0}.html-ad-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:1rem}.html-ad-card{min-width:0;overflow:hidden;border:1px solid #dbe4ee;border-radius:.8rem;background:#f8fafc}.html-ad-card iframe{min-height:12rem;border:0;border-bottom:1px solid #dbe4ee;border-radius:0}.html-ad-card__body{padding:1rem}.html-ad-card__body a{overflow-wrap:anywhere}.button-danger{background:#b91c1c!important;color:#fff!important}@media(max-width:800px){.html-ad-grid{grid-template-columns:minmax(0,1fr)}.html-ad-hero{align-items:flex-start;flex-direction:column}.html-ad-summary{width:100%}}
