/* ============== SocialDB — bold neo-brutalist yellow theme ============== */
:root{
  --yellow:#FFE000;
  --yellow-deep:#FFD400;
  --ink:#0E0E0E;
  --paper:#FFFFFF;
  --cream:#FFF7CC;
  --line:#0E0E0E;
  --red:#FF3B30;
  --purple:#9146FF;   /* twitch */
  --ytred:#FF0000;    /* youtube */
  --shadow:6px 6px 0 var(--ink);
  --shadow-sm:4px 4px 0 var(--ink);
  --radius:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden}
body{overflow-x:hidden}
body{
  background:var(--yellow);
  color:var(--ink);
  font-family:'Inter',system-ui,sans-serif;
  font-size:16px;line-height:1.55;
  -webkit-font-smoothing:antialiased;
  background-image:radial-gradient(var(--yellow-deep) 1.4px, transparent 1.4px);
  background-size:26px 26px;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
h1,h2,h3,.logo-text,.big{font-family:'Archivo',sans-serif}

/* ---------- header ---------- */
/* Marketplace liveness ribbon — full-bleed bar at the very top, above the sticky menu.
   LIVE label pinned left; a news-style ticker of real events scrolls to its right. */
.pulse-band{display:flex;align-items:stretch;width:100%;background:#0E0E0E;color:#fff;border-bottom:1px solid #000;overflow:hidden}
.pulse-band .pulse-live{display:inline-flex;align-items:center;gap:6px;background:#c0271e;color:#fff;font-weight:900;font-size:10.5px;letter-spacing:.08em;padding:0 12px;flex:none;z-index:1}
.pulse-band .pulse-dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:pulseBlink 1.4s infinite}
.pulse-ticker{position:relative;flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.pulse-track{display:inline-flex;white-space:nowrap;animation:pulseScroll 60s linear infinite;will-change:transform;padding:7px 0}
.pulse-band:hover .pulse-track{animation-play-state:paused}
.pulse-ev{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:#cbcbcb;padding:0 22px;border-right:1px solid #262626}
.pulse-ev b{color:#fff;font-weight:800}
.pulse-ev-week{color:#eaeaea;font-weight:700}
.pulse-ev-week b{color:var(--yellow,#FFE000);font-weight:900}
.pulse-ev-stat{color:#fff;font-weight:800}
.pulse-ev-stat b{color:var(--yellow,#FFE000);font-weight:900}
.pulse-band .pev-ic{font-size:13px}
@keyframes pulseScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes pulseBlink{0%,100%{opacity:1}50%{opacity:.2}}
@media(prefers-reduced-motion:reduce){.pulse-track{animation:none}.pulse-band .pulse-dot{animation:none}}
.site-header{
  background:var(--ink);color:var(--yellow);
  border-bottom:1px solid var(--ink);
  position:sticky;top:0;z-index:50;
}
.header-inner{display:flex;align-items:center;gap:18px;padding:14px 20px;position:relative}
.nav-toggle{display:none;margin-left:auto;background:none;border:none;color:var(--yellow);font-size:26px;line-height:1;cursor:pointer;padding:4px 8px;align-items:center}
.logo{display:flex;align-items:center;gap:10px;font-family:'Archivo';font-weight:900;font-size:22px;color:var(--yellow)}
.logo-mark{
  display:grid;place-items:center;width:34px;height:34px;
  background:var(--yellow);color:var(--ink);
  border-radius:9px;font-family:'Archivo';font-weight:900;font-size:20px;
  box-shadow:3px 3px 0 rgba(255,224,0,.35);
}
.logo-text b{color:#fff}
/* search moved out of the top bar into a toggle + dropdown panel (declutters nav) */
.search-toggle{margin-left:auto;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--yellow);font-size:22px;line-height:1;cursor:pointer;padding:7px 10px;border-radius:8px}
.search-toggle:hover{background:#262615;color:#fff}
body.search-open .search-toggle{background:var(--yellow);color:var(--ink)}
.header-search{display:none;border-top:1px solid var(--yellow);background:#141414}
body.search-open .header-search{display:block;animation:hsdrop .18s ease}
@keyframes hsdrop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.header-search .search{max-width:640px;margin:0 auto;padding:12px 20px}
.search{flex:1;display:flex;max-width:460px;margin:0 auto;min-width:220px}
.search input{
  flex:1;min-width:0;width:100%;border:1px solid var(--yellow);background:#1c1c1c;color:#fff;
  padding:10px 14px;border-radius:10px 0 0 10px;font-size:15px;font-weight:500;
}
.search input::placeholder{color:#8a8a6a}
.search input:focus{outline:none;background:#262615}
.search button{
  border:1px solid var(--yellow);border-left:none;background:var(--yellow);color:var(--ink);
  padding:0 16px;border-radius:0 10px 10px 0;font-size:18px;cursor:pointer;font-weight:700;
}
.main-nav{display:flex;gap:5px;align-items:center;flex-wrap:nowrap}
.main-nav a{
  font-weight:700;font-size:14px;padding:8px 11px;border-radius:8px;color:var(--yellow);white-space:nowrap;
}
.main-nav a:hover{background:#262615;color:#fff}
.main-nav a.nav-cta{background:var(--yellow);color:var(--ink)}
.main-nav a.nav-cta:hover{background:#fff;color:var(--ink)}
/* grouped "Discover ▾" dropdown — keeps the top bar compact so search isn't squished */
.nav-group{position:relative;display:flex}
.nav-group-btn{font-weight:700;font-size:14px;padding:8px 11px;border-radius:8px;color:var(--yellow);white-space:nowrap;display:inline-flex;align-items:center;gap:4px}
.nav-group-btn .caret{font-size:11px;opacity:.8}
.nav-group:hover .nav-group-btn,.nav-group:focus-within .nav-group-btn{background:#262615;color:#fff}
.nav-menu{position:absolute;right:0;top:100%;min-width:200px;background:var(--ink);border:1px solid var(--yellow);
  border-radius:12px;padding:6px;display:none;flex-direction:column;gap:2px;
  box-shadow:6px 6px 0 rgba(255,224,0,.22);z-index:60}
.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu{display:flex}
.nav-menu a{display:block;white-space:nowrap;padding:9px 12px;border-radius:7px;color:var(--yellow);font-weight:700;font-size:14px}
.nav-menu a:hover{background:#262615;color:#fff}

/* auth forms */
/* higher specificity (.section.auth-wrap) so it beats the later .section{margin} */
.section.auth-wrap{max-width:440px;margin-left:auto;margin-right:auto}
.auth-card{text-align:center}
.auth-card form{text-align:left}
.auth-card .btn.big{width:100%}
.auth-card h1{font-weight:900;font-size:28px;margin-bottom:6px;letter-spacing:-.5px}
.auth-sub{color:#555;font-weight:600;margin-bottom:16px}
.auth-card form{display:flex;flex-direction:column;gap:14px;margin-top:6px}
.auth-card label{font-weight:700;font-size:13.5px;color:#333;display:flex;flex-direction:column;gap:6px}
.auth-card .opt{font-weight:600;color:#888;font-size:12px}
.auth-card input{border:1.5px solid #d8d8c8;border-radius:11px;padding:12px 14px;font-weight:600;font-size:15px;color:var(--ink);background:#fff;transition:border-color .12s ease,box-shadow .12s ease}
.auth-card input::placeholder{color:#b7b7a4;font-weight:500}
.auth-card input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(255,224,0,.55)}
.btn.big{justify-content:center;padding:13px;font-size:16px}
.auth-alt{margin-top:16px;font-weight:600;text-align:center}
.auth-alt a,.auth-sub a,.note a{text-decoration:underline}
.note.err{background:#ffe1e1;border-color:var(--red)}

/* pricing plans */
/* ===== Pro pricing page ===== */
.pro-hero-top{text-align:center;max-width:640px;margin:0 auto 6px}
.pro-kicker{display:inline-block;background:var(--yellow);border:1px solid var(--ink);border-radius:999px;padding:5px 15px;font-family:'Archivo';font-weight:900;font-size:12px;letter-spacing:.05em}
.pro-h1{font-family:'Archivo';font-size:38px;margin:15px 0 8px;line-height:1.05}
.pro-lede{color:#444;font-weight:600;font-size:15px;margin:0}
@media(max-width:600px){.pro-h1{font-size:28px}}
.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px;align-items:start}
@media(max-width:700px){.plan-grid{grid-template-columns:1fr}}
.plan{background:#fff;border:1px solid var(--ink);border-radius:18px;box-shadow:5px 5px 0 var(--ink);overflow:hidden;text-align:left}
.plan.pro{box-shadow:9px 9px 0 var(--yellow)}
.plan-head{padding:20px 24px;border-bottom:1px solid var(--ink)}
.plan.pro .plan-head{background:var(--yellow)}
.plan-name{font-family:'Archivo';font-weight:900;font-size:21px;display:flex;align-items:center;gap:9px}
.badge{font-size:11px;font-weight:800;background:var(--ink);color:var(--yellow);border-radius:999px;padding:3px 10px;letter-spacing:.03em}
.plan-price{font-family:'Archivo';font-weight:900;font-size:38px;margin:8px 0 0;line-height:1}
.plan-price-alt{font-size:13px;font-weight:700;color:#555;margin-top:6px}
.plan-price-alt .save{display:inline-block;background:#0a8f3c;color:#fff;font-weight:800;font-size:11px;border-radius:20px;padding:1px 8px;margin-left:4px}
.plan-feat{list-style:none;margin:0;padding:20px 24px;display:flex;flex-direction:column;gap:12px;font-weight:600}
.plan-feat li{position:relative;padding-left:31px;font-size:14px;line-height:1.4}
.plan-feat li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border:1px solid var(--ink);border-radius:6px;background:var(--yellow);display:grid;place-items:center;font-weight:900;font-size:11px}
.plan-feat li.off{color:#9a9a9a}
.plan-feat li.off::before{content:"✕";background:#f0f0f0;border-color:#cfcfcf;color:#9a9a9a}
/* Grouped Pro feature list — labelled sections + name/description hierarchy so 21 features scan
   as ~5 digestible groups instead of one wall of equal-weight bullets. */
.plan-feat.pf-grouped{display:block;padding:18px 24px 22px}
.pf-intro{margin:0;font-weight:800;font-size:14px}
.pf-group{margin-top:17px}
.pf-glabel{font-size:11px;font-weight:900;letter-spacing:.055em;text-transform:uppercase;color:#8a7f4a;padding-bottom:8px;margin-bottom:11px;border-bottom:1px dashed #e6e0c6}
.pf-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.pf-list li{position:relative;padding-left:29px}
.pf-list li::before{content:"✓";position:absolute;left:0;top:1px;width:19px;height:19px;border:1px solid var(--ink);border-radius:6px;background:var(--yellow);display:grid;place-items:center;font-weight:900;font-size:11px}
.pf-name{display:block;font-weight:800;font-size:13.5px;line-height:1.3}
.pf-desc{display:block;font-weight:600;font-size:12px;line-height:1.4;color:#70694f;margin-top:2px}
/* Pro-only rows in the Free column: crossed-out ✕ marker, muted text. */
.pf-list li.off .pf-name{color:#9a9a9a;font-weight:700}
.pf-list li.off .pf-desc{color:#b3b3b3}
.pf-list li.off::before{content:"✕";background:#f0f0f0;border-color:#cfcfcf;color:#9a9a9a}
.plan-cta{padding:2px 24px 24px}
.plan-cta .btn.big{width:100%;text-align:center}
.plan.pro .plan-cta .btn.big.primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.plan.pro .plan-cta .btn.big.primary:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--yellow)}
.pro-panel{background:var(--cream)}
/* .blast-bar + .pro-cta dark CTA banners are styled together lower in this file. */

/* ===== Dashboard Pro upsell card ===== */
.panel.pro-card{padding:0;overflow:hidden;border-color:var(--ink);background:#fff;box-shadow:7px 7px 0 var(--yellow)}
.pc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--yellow);border-bottom:1px solid var(--ink);padding:13px 22px}
.pc-badge{font-family:'Archivo';font-weight:900;letter-spacing:.03em;font-size:15px}
.pc-price{text-align:right;line-height:1.05}
.pc-price b{font-size:23px;font-weight:900}
.pc-price span{display:block;font-size:11px;font-weight:700;color:#6a6a3a}
.pc-title{font-family:'Archivo';font-size:25px;margin:18px 22px 3px;line-height:1.1}
.pc-sub{margin:0 22px 16px;color:#555;font-weight:600;font-size:13.5px}
.pc-feats{list-style:none;margin:0;padding:0 22px;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px}
.pc-feats li{display:flex;gap:9px;align-items:flex-start}
.pc-feats li b{display:block;font-size:13.5px;font-weight:800;line-height:1.2}
.pc-feats li i{display:block;font-style:normal;font-size:12px;color:#666;font-weight:600;line-height:1.35;margin-top:1px}
.pc-ck{flex:none;width:20px;height:20px;border:1px solid var(--ink);border-radius:6px;background:var(--yellow);display:grid;place-items:center;font-weight:900;font-size:12px;margin-top:1px}
.pc-cta{display:block;margin:18px 22px 22px;text-align:center}
@media(max-width:680px){.pc-feats{grid-template-columns:1fr}.pc-title{font-size:21px}}

/* lead finder */
.lead-filters{padding:18px}
.lf-search{display:flex;gap:10px;margin-bottom:14px}
.lf-search input{flex:1;min-width:0;border:1px solid var(--ink);border-radius:11px;padding:14px 16px;font-weight:700;font-size:17px;background:#fff;font-family:inherit}
.lf-search input:focus{outline:none;background:var(--cream)}
.lf-search .btn{flex:none;padding:14px 26px;font-size:16px}
.lf-filters-label{font-family:'Archivo',sans-serif;font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#8a8a6a;margin:4px 0 9px}
/* /submit — submit-a-channel form */
.submit-form{padding:26px}
.sf-label{font-family:'Archivo',sans-serif;font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#8a8a6a;margin-bottom:9px;display:block}
.sf-input-wrap{position:relative;display:flex;align-items:center}
.sf-input-ic{position:absolute;left:15px;color:#c2c2c2;display:flex;pointer-events:none}
.sf-input-wrap:focus-within .sf-input-ic{color:var(--ink)}
.sf-input{width:100%;border:1px solid var(--ink);border-radius:13px;padding:15px 16px 15px 46px;font-weight:700;font-size:17px;background:#fff;font-family:inherit}
.sf-input:focus{outline:none;background:var(--cream)}
.sf-platforms{display:flex;flex-wrap:wrap;gap:9px}
.sf-chip{cursor:pointer;user-select:none}
.sf-chip input{position:absolute;opacity:0;width:0;height:0}
.sf-chip span{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--ink);border-radius:999px;padding:8px 15px;font-weight:800;font-size:13.5px;background:#fff;transition:background .12s,box-shadow .12s}
.sf-chip span svg{width:16px;height:16px}
.sf-chip span:hover{background:var(--cream)}
.sf-chip input:checked + span{background:var(--yellow);box-shadow:3px 3px 0 var(--ink)}
.sf-chip input:focus-visible + span{box-shadow:0 0 0 3px rgba(14,14,14,.2)}
.sf-submit{width:100%;margin-top:22px;font-size:16px}
.sf-note{font-weight:600;color:#777;font-size:13px;margin-top:14px;line-height:1.55}
@media(max-width:520px){.lf-search .btn{padding:14px 18px}}
.lf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;align-items:end}
.lf-grid label{display:flex;flex-direction:column;gap:6px;font-weight:800;font-size:13px}
.lf-grid select,.lf-grid input{border:1px solid var(--ink);border-radius:9px;padding:9px 11px;font-weight:600;font-size:14px;background:#fff}
.lf-actions{display:flex;align-items:end;gap:8px}
.lf-actions .btn{flex:1;justify-content:center}
.lf-grid label.lf-check{flex-direction:row;align-items:center;gap:9px;font-size:14px;padding-bottom:9px}
.lf-grid label.lf-check input{flex:none;width:20px;height:20px;padding:0;accent-color:var(--ink)}
.lead-value{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.lead-value span{background:#fff;border:1px solid var(--ink);border-radius:10px;padding:7px 12px;font-weight:600;font-size:.86rem;box-shadow:3px 3px 0 var(--ink)}
.lead-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:18px 0;font-weight:700}

/* data table (lead finder) */
.table-scroll{overflow-x:auto;border:1px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}
.data-table{width:100%;border-collapse:collapse;font-size:14px}
.data-table th{background:var(--ink);color:var(--yellow);font-family:'Archivo',sans-serif;font-weight:800;text-align:left;padding:12px 14px;white-space:nowrap;font-size:11px;text-transform:uppercase;letter-spacing:.5px}
.data-table th.num,.data-table td.num{text-align:right}
.data-table td{padding:10px 14px;border-top:1px solid var(--ink);white-space:nowrap;font-weight:600;vertical-align:middle}
.data-table tbody tr:hover{background:var(--cream)}
.data-table th:first-child{width:250px}
.t-creator{min-width:230px;max-width:280px}
.t-creator-row{display:flex;align-items:center;gap:8px;min-width:0}
.t-creator a{display:flex;align-items:center;gap:9px;min-width:0}
.t-av{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none;background:var(--cream)}
.t-nm{font-weight:800;min-width:0;white-space:normal;overflow-wrap:break-word;line-height:1.2}
.t-handle{display:block;font-weight:600;font-size:11px;color:#777;overflow-wrap:break-word}
.data-table .pill{font-size:11px}
.data-table a.pill{text-decoration:none;color:var(--ink);cursor:pointer}
.pitch-st{display:inline-block;font-weight:800;font-size:11px;padding:2px 9px;border-radius:999px;border:1px solid var(--ink);white-space:nowrap}
.pitch-st.st-open{background:#d9f7e0}
.pitch-st.st-sent{background:#fff}
.pitch-st.st-wait{background:#fff3cd}
.pitch-fit{border:1px solid var(--ink);border-radius:10px;padding:9px 12px;font-weight:600;font-size:13px;line-height:1.4;margin:0 0 12px}
.pitch-fit.good{background:#d9f7e0}
.pitch-fit.warn{background:#fff3cd}
.pitch-offer{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.pitch-offer label{display:flex;flex-direction:column;gap:5px;font-weight:800;font-size:13px}
.pitch-offer .po-deliver{flex:2;min-width:200px}
.pitch-offer .po-rate{flex:1;min-width:120px}
.pitch-offer input,.pitch-offer textarea{width:100%;box-sizing:border-box;border:1px solid var(--ink);border-radius:10px;padding:10px 12px;font-weight:600;font-family:inherit;font-size:14px}
.pitch-offer .opt{font-weight:600;color:#999;font-size:11px}
.pitch-tones{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 2px}
.pitch-tone{border:1px solid var(--ink);border-radius:999px;background:#fff;padding:5px 13px;font-weight:800;font-size:12.5px;font-family:inherit;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease,background .1s ease}
.pitch-tone:hover{transform:translateY(-1px);box-shadow:2px 2px 0 var(--ink)}
.pitch-tone.on{background:var(--yellow);box-shadow:2px 2px 0 var(--ink)}
.po-hint{font-weight:700;color:#777;font-size:11.5px;margin-top:1px}
.po-hint b{color:#444}
.pitch-why{background:#f4f4f7;border:1px solid var(--ink);border-radius:10px;padding:9px 12px;font-weight:600;font-size:13px;line-height:1.45;margin:0 0 12px}
/* sponsor pitch inbox */
.inbox-list{display:flex;flex-direction:column;gap:14px}
.inbox-card{padding:16px 18px}
.ic-top{display:flex;align-items:center;gap:12px}
.ic-av{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--ink)}
.ic-meta{flex:1;min-width:0}
.ic-nm{font-weight:900;font-family:'Archivo',sans-serif;font-size:16px;display:flex;align-items:center;gap:8px}
.ic-nm a{color:var(--ink);text-decoration:none}
.ic-sub{font-size:12.5px;color:#666;font-weight:600;margin-top:2px}
.ic-when{text-align:right;font-size:12px;color:#888;font-weight:700;flex:none}
.ic-offer{margin-top:10px;background:#FFF7CC;border:1px solid var(--ink);border-radius:10px;padding:8px 12px;font-size:13.5px;font-weight:600}
.ic-msg{margin-top:10px;font-size:14px;line-height:1.5;color:#1f1f1f}
.ic-cta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;align-items:flex-start}
.ic-reply summary{list-style:none;cursor:pointer}
.ic-reply summary::-webkit-details-marker{display:none}
.ic-reply[open]{flex:1 1 100%}
.verify-snip{background:var(--ink);color:var(--yellow);border-radius:8px;padding:11px 13px;font-family:ui-monospace,Menlo,monospace;font-size:13px;font-weight:700;overflow-x:auto;white-space:pre-wrap;word-break:break-all;margin:0 0 12px}
/* "Also on" — an influencer's other channels (same creator group) */
.also-on{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}
.also-on-lbl{font-weight:800;font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.05em}
.also-chip{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid var(--ink);border-radius:999px;padding:4px 11px;font-weight:700;font-size:12.5px;color:var(--ink);text-decoration:none}
.also-chip:hover{background:var(--cream);box-shadow:2px 2px 0 var(--ink)}
.also-chip svg{width:14px;height:14px}
.also-reach{font-weight:700;font-size:12.5px;color:#444}
.also-reach b{font-family:'Archivo',sans-serif}
/* dashboard "Your channels" */
.yc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.yc-card{display:flex;flex-direction:column;gap:12px;border:1px solid var(--ink);border-radius:14px;padding:14px;background:#fff;box-shadow:4px 4px 0 var(--ink);transition:transform .12s ease,box-shadow .12s ease}
.yc-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.yc-top{display:flex;align-items:center;gap:11px}
.yc-av{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none;background:var(--cream);border:1px solid var(--ink)}
.yc-meta{min-width:0;flex:1}
.yc-nm{font-family:'Archivo',sans-serif;font-weight:900;font-size:16px;letter-spacing:-.3px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yc-sub{display:flex;align-items:center;gap:5px;font-size:12.5px;color:#666;font-weight:700;margin-top:2px}
.yc-act{display:flex;flex-wrap:wrap;gap:8px}
.yc-act .btn{flex:1 1 calc(50% - 4px);min-width:0;text-align:center;padding:8px 10px;font-size:13px;font-weight:800}
.yc-connect{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:8px;padding:8px;border:1px solid var(--ink);border-radius:9px;background:#fff;font-weight:800;font-size:12.5px;color:var(--ink);box-shadow:2px 2px 0 var(--ink);transition:transform .1s ease,box-shadow .1s ease}
.yc-connect:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink);background:#fff8f8}
.yt-dot{display:inline-block;width:11px;height:11px;border-radius:3px;background:#FF0000;flex:none;vertical-align:-1px}
/* Verified audience panel (from connected YouTube) */
.ver-panel{border-color:#0a8f3c;box-shadow:6px 6px 0 #c9f0d6}
.ver-badge{background:#eafaef;color:#0a7d2c;border:1px solid #0a8f3c;border-radius:999px;padding:2px 11px;font-weight:900;font-size:11px}
.ver-cols{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:600px){.ver-cols{grid-template-columns:1fr;gap:16px}}
.ver-h{font-family:'Archivo',sans-serif;font-weight:900;font-size:13px;margin-bottom:8px}
.ver-bar{display:flex;align-items:center;gap:9px;margin-bottom:8px;font-size:12.5px;font-weight:700}
.ver-bar-l{flex:none;width:108px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ver-bar-track{flex:1;height:11px;background:#edeee9;border:1px solid var(--ink);border-radius:6px;overflow:hidden}
.ver-bar-fill{display:block;height:100%;background:#0a8f3c}
.ver-bar-v{flex:none;width:42px;text-align:right;color:#0a7d2c;font-weight:900}
.yc-connected{margin-top:8px;text-align:center;font-weight:800;font-size:12px;color:#0a7d2c;background:#eafaef;border:1px solid #0a8f3c;border-radius:9px;padding:7px}
.yc-live{font-size:10px;font-weight:900;color:#FF3B30;vertical-align:1px}
/* auto-fit + a 84px floor: 4 across when there's room, 2 across when there isn't.
   A fixed repeat(4,1fr) squeezed each tile to ~50px, too narrow for a single
   unbreakable word like "ENGAGEMENT", which then spilled out of the tile. */
.yc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}
.ycs{border:1px solid var(--ink);border-radius:9px;padding:7px 4px;text-align:center;background:#fafaf5;min-width:0}
.ycs b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:14px;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* overflow-wrap is the backstop: no label can ever escape its tile. */
.ycs span{display:block;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:#999;line-height:1.15;overflow-wrap:anywhere;min-width:0}
.ycs-earn{background:#eafaef;border-color:#0a8f3c}
.ycs-earn b{color:#0a7d2c;font-size:12.5px}
@media(max-width:420px){.yc-stats{grid-template-columns:repeat(2,1fr)}}
/* "+N" same-influencer badge in discovery */
.t-more{display:inline-block;background:var(--yellow);border:1.5px solid var(--ink);border-radius:6px;padding:0 5px;font-size:10.5px;font-weight:900;vertical-align:middle}
/* fixed bottom navigation (mobile only) */
.mobile-tabbar{display:none}
html.pwa-guest .mobile-tabbar{display:none!important}   /* signed-out inside the installed app: no bottom menu */
@media(max-width:760px){
  .mobile-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:300;background:#fff;box-shadow:0 -2px 14px rgba(14,14,14,.10)}
  .mobile-tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 2px calc(6px + env(safe-area-inset-bottom));font-size:10px;font-weight:800;color:var(--ink);text-decoration:none;position:relative;min-width:0}
  .mobile-tabbar a .tb-ic{font-size:20px;line-height:1;position:relative}
  .mobile-tabbar a.on{color:#0E0E0E}
  .mobile-tabbar a.on::before{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;background:var(--yellow)}
  .tb-badge{position:absolute;top:-5px;left:11px;background:var(--red);color:#fff;font-size:9px;font-weight:900;min-width:15px;height:15px;line-height:15px;text-align:center;border-radius:8px;padding:0 3px}
  body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  .su-fab{display:none !important}   /* the tab bar already exposes Sign Up */
}
.data-table a.pill:hover{box-shadow:2px 2px 0 var(--ink)}
/* compact "＋ add to list" icon + fixed-positioned popover (used in discovery tables) */
.alp{position:relative;display:inline-flex;flex:none}
.alp-btn{width:24px;height:24px;padding:0;border:1px solid var(--ink);border-radius:50%;background:var(--yellow);color:var(--ink);font-size:17px;line-height:1;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center}
.alp-btn:hover{background:var(--ink);color:#fff}
.alp-menu{width:214px;background:#fff;border:1px solid var(--ink);border-radius:12px;box-shadow:5px 5px 0 var(--ink);padding:12px;z-index:300}
.alp-menu .alp-title{font-weight:900;font-size:13px;margin-bottom:8px}
.alp-menu select,.alp-menu input{width:100%;border:1px solid var(--ink);border-radius:8px;padding:7px 9px;font-weight:700;font-size:13px;background:#fff;margin-bottom:8px}
.alp-menu .btn{width:100%}
/* Follow toggle (＋ / ✓) on list views */
.flw-btn{width:24px;height:24px;padding:0;border:1px solid var(--ink);border-radius:50%;background:var(--yellow);color:var(--ink);font-size:15px;line-height:1;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:none;transition:background .15s,color .15s,border-color .15s}
.flw-btn:hover{background:var(--ink);color:#fff}
.flw-btn.on{background:#0a8f3c;border-color:#0a8f3c;color:#fff}
.flw-btn.on:hover{background:#c0392b;border-color:#c0392b}
.card-flw{margin-left:auto;width:22px;height:22px;font-size:14px}
/* account settings page */
.set-wrap{max-width:960px;margin-left:auto;margin-right:auto}
.set-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.set-col{min-width:0}
@media(max-width:760px){.set-cols{grid-template-columns:1fr;gap:0}}
/* redesigned plan & billing card */
.plan-card .plan-top{display:flex;align-items:center;gap:13px;margin-bottom:16px}
.plan-chip{font-family:'Archivo',sans-serif;font-weight:900;font-size:14px;padding:7px 15px;border:1px solid var(--ink);border-radius:999px;background:#fff;flex:none}
.plan-card.is-pro .plan-chip{background:var(--yellow)}
.plan-state{display:flex;flex-direction:column;gap:2px;min-width:0}
.plan-state b{font-family:'Archivo',sans-serif;font-weight:900;font-size:16px;line-height:1.1}
.plan-state i{font-style:normal;font-weight:600;font-size:12.5px;color:#777}
.plan-mini{list-style:none;padding:14px 16px;margin:0 0 16px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--ink);border-radius:12px;background:#FFFDF5}
.plan-mini li{font-weight:700;font-size:13.5px;display:flex;align-items:flex-start;gap:9px;line-height:1.35}
.plan-mini li span{flex:none}
.plan-link{display:block;text-align:center;margin-top:11px;font-weight:800;font-size:12.5px;text-decoration:underline;color:var(--ink)}
.set-card{margin-bottom:18px}
.set-card h2{font-family:Archivo,sans-serif;font-weight:900;font-size:18px;margin:0 0 4px}
.set-desc{color:#666;font-weight:600;font-size:13px;margin:0 0 14px}
.set-form{display:flex;flex-direction:column;gap:13px}
.set-form label{font-weight:800;display:flex;flex-direction:column;gap:6px;font-size:14px}
.set-form .opt{font-weight:600;color:#888;font-size:12px}
.set-form input[type=text],.set-form input[type=email],.set-form input[type=password],.set-form textarea{border:1px solid var(--ink);border-radius:10px;padding:11px 13px;font-weight:600;font-size:15px;font-family:inherit;background:#fff}
.set-form textarea{resize:vertical;min-height:90px;line-height:1.5}
.set-form input:focus,.set-form textarea:focus{outline:none;background:var(--cream)}
.set-hint{font-weight:600;color:#888;font-size:12px}
.set-form .btn{align-self:flex-start}
.set-toggle{flex-direction:row !important;align-items:center;gap:10px;font-weight:700;font-size:14px}
.set-toggle input{width:18px;height:18px;flex:none}
.set-row{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
/* every form control inherits the site font (Inter), so settings match the rest of the site */
input,select,textarea,button{font-family:inherit}
/* per-notification preferences — card rows with neo-brutalist toggle switches */
.nf-list{margin-top:2px}
.nf-list .nf-group{font-family:'Archivo',sans-serif;font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#8a8a6a;margin:18px 0 9px}
.nf-list .nf-group:first-child{margin-top:4px}
.nf-list .nf-item{display:flex;flex-direction:row;align-items:center;gap:13px;padding:11px 14px;border:1px solid var(--ink);border-radius:12px;background:#fff;margin-bottom:9px;cursor:pointer;transition:background .12s,box-shadow .12s}
.nf-list .nf-item:hover{background:var(--cream);box-shadow:3px 3px 0 var(--ink)}
.nf-ic{font-size:19px;flex:none;width:25px;text-align:center;line-height:1}
.nf-txt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.nf-txt b{font-weight:800;font-size:14px;line-height:1.2}
.nf-txt i{font-style:normal;font-weight:600;font-size:12px;color:#777;line-height:1.35}
.nf-switch{position:relative;width:46px;height:26px;flex:none}
.nf-switch input{position:absolute;opacity:0;width:0;height:0;margin:0}
.nf-track{position:absolute;inset:0;background:#e7e7e7;border:1px solid var(--ink);border-radius:999px;transition:background .15s}
.nf-track::before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:16px;height:16px;background:var(--ink);border-radius:50%;transition:left .15s}
.nf-switch input:checked + .nf-track{background:var(--yellow)}
.nf-switch input:checked + .nf-track::before{left:21px}
.nf-switch input:focus-visible + .nf-track{box-shadow:0 0 0 3px rgba(14,14,14,.18)}
/* AI-written pitch box: header row with a "generate another" button */
.pitch-msg-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 7px;flex-wrap:wrap}
.pitch-gen{background:var(--yellow);border:1px solid var(--ink);border-radius:999px;padding:5px 12px;font-family:'Archivo',sans-serif;font-weight:800;font-size:12px;cursor:pointer;transition:box-shadow .12s,transform .12s}
.pitch-gen:hover{box-shadow:2px 2px 0 var(--ink);transform:translate(-1px,-1px)}
.pitch-gen:active{box-shadow:none;transform:none}
/* "% match" badge on recommended collabs & sponsors */
.cr-nm .cr-match{display:inline-block;background:var(--yellow);border:1px solid var(--ink);border-radius:999px;padding:1px 9px;font-size:11px;font-weight:900;vertical-align:middle;white-space:nowrap}
/* compact messages widget in the dashboard sidebar */
.msg-meta{min-width:0;display:flex;flex-direction:column;gap:2px}
.msg-list-mini .msg-row{padding:10px 12px;gap:10px;border-bottom-width:1.5px}
.msg-list-mini .msg-av{width:38px;height:38px}
.msg-list-mini .msg-nm{font-size:14px}
.msg-list-mini .msg-prev{font-size:.8rem;max-width:100%}

/* ---------- hero ---------- */
.hero{padding:20px 0 12px;text-align:center}
/* Desktop: the hero fills the viewport down to the ribbon, which then touches the bottom edge.
   Header ≈ 70px, ribbon ≈ 53px + 6px margin = 129px reserved. Children space out evenly; their
   auto left/right margins stay intact so everything remains horizontally centered. min-height
   (not height) means content taller than the viewport simply scrolls, as before. */
@media(min-width:900px){
  body.home .hero{min-height:calc(100vh - 125px);display:flex;flex-direction:column;justify-content:flex-start;padding-top:clamp(30px,7vh,80px);padding-bottom:0}
  body.home .hero>*{margin-top:0;margin-bottom:0}
}
/* Landing hero, wide screens (>=1000px): ALL copy (headline, subtext, search, stats, trust) lives in one
   centered column, and the cut-out creator is anchored to the far bottom-right so she meets the ribbon.
   padding-right reserves her lane so nothing runs under her; everything shares one centered axis.
   Photo hidden on mobile, where the copy simply stacks and centers full-width. */
.hero-photo{display:none}
@media(min-width:1000px){
  body.home .hero{position:relative;max-width:1360px;margin-left:auto;margin-right:auto;padding-right:350px}
  body.home .hero .hero-copy{width:100%;text-align:center}
  /* The headline spans the FULL hero width (margin-right cancels the reserved photo lane) and centres
     on the page — a 60px, two-row banner. It clears the (smaller, bottom-anchored) creator vertically:
     the title sits at the top, her hair starts lower down. Font caps at 60px and scales down on narrow
     desktops so "…UGC Deals" always stays on one line (the <br> keeps "for Influencers" on row 2). */
  body.home .hero .hero-copy h1{margin-right:-350px;font-size:clamp(38px,5.2vw,60px)}
  /* bottom:-4px tucks the very bottom of the cut-out a few px behind the (opaque) ribbon so no
     sliver of background can show between her and it — the ribbon is a later sibling, so it paints on top. */
  body.home .hero-photo{display:block;position:absolute;right:0;bottom:-4px;width:min(340px,28vw);line-height:0}
  body.home .hero-photo img{width:100%;height:auto;display:block}
}
.hero h1{font-weight:900;font-size:clamp(34px,4.8vw,58px);line-height:.98;letter-spacing:-1.5px}
.hero h1 .hl{background:var(--ink);color:var(--yellow);padding:0 12px;border-radius:10px;display:inline-block;transform:rotate(-1.5deg)}
.hero p{font-size:clamp(15px,1.8vw,18px);font-weight:500;max-width:640px;margin:18px auto 0}
/* One capsule, not two boxes: the input and button used to each carry a 3px
   border, so they met in a 6px double-thick seam. The border now lives on the
   form, the input is transparent inside it, and the button is a nested pill. */
.hero-search{max-width:760px;width:100%;margin:clamp(24px,4vh,42px) auto 0;display:flex;align-items:center;
  background:#fff;border:1px solid var(--ink);border-radius:16px;padding:7px 7px 7px 20px;box-shadow:5px 5px 0 var(--ink);
  transition:background .15s ease}
/* Focus lands on the whole capsule, so the ring frames the control the user is
   actually typing into (and survives the site-wide no-box-shadow rule). */
.hero-search:focus-within{background:#fffdf2;outline:3px solid var(--yellow-deep);outline-offset:2px}
.hs-ic{display:flex;flex:none;align-items:center;color:#9a9a7a;margin-right:10px;transition:color .15s ease}
.hero-search:focus-within .hs-ic{color:var(--ink)}
.hero-search input{
  flex:1;min-width:0;border:none;outline:none;background:transparent;
  padding:17px 0;font-family:inherit;font-size:19px;font-weight:600;color:var(--ink);
}
.hero-search input::placeholder{color:#a3a383;font-weight:500}
.hero-search button{
  flex:none;border:1px solid var(--ink);background:var(--ink);color:var(--yellow);
  padding:15px 30px;font-family:'Archivo',sans-serif;font-weight:900;font-size:16px;letter-spacing:.01em;
  border-radius:11px;cursor:pointer;transition:background .12s ease,color .12s ease;
}
.hero-search button:hover{background:var(--yellow);color:var(--ink)}
@media(max-width:480px){
  .hero-search{padding:6px 6px 6px 12px}
  .hero-search .hs-ic{margin-right:7px}
  .hero-search input{font-size:16px}   /* 16px+ stops iOS zooming on focus */
  .hero-search button{padding:11px 12px;font-size:13px}   /* tighter so the placeholder isn't clipped */
}
.stat-strip{display:flex;flex-direction:column;align-items:center;gap:clamp(16px,2.2vh,24px);margin-top:clamp(26px,4.6vh,48px)}
/* Tier 1: the three headline marketplace pills (bold, filled). Tier 2: a lightened, LABELLED band of
   the top platforms + a "+N more" link — trimmed from the old 14-pill wall so the hero breathes. */
.stat-main{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.stat-plats-wrap{display:flex;flex-direction:column;align-items:center;gap:9px}
.stat-plats-lead{font-family:'Inter',Arial,sans-serif;font-size:11px;font-weight:800;text-transform:uppercase;
  letter-spacing:.12em;color:#7c7c48}
.stat-plats{display:flex;gap:7px 6px;justify-content:center;flex-wrap:wrap;max-width:1000px}
/* Trust / coverage line beneath the platform pills — reinforces "legit, safe, real data". */
.stat-trust{margin-top:6px;font-family:'Inter',Arial,sans-serif;font-size:12.5px;font-weight:600;color:#3a3a1e;text-align:center;max-width:660px;line-height:1.9;padding:0 8px}
.stat-strip .chip{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--paper);border:1px solid var(--ink);border-radius:999px;
  padding:9px 18px;font-size:14px;font-weight:700;color:#3a3a3a;line-height:1;
  box-shadow:3px 3px 0 var(--ink);
}
.stat-strip .chip b{font-family:'Archivo';font-weight:900;font-size:18px;color:var(--ink);letter-spacing:-.4px}
.stat-strip .chip svg,.stat-strip .chip img{width:18px;height:18px;flex:none;display:block}
.stat-strip a.chip-link{cursor:pointer;transition:transform .1s ease,box-shadow .1s ease,background .1s ease}
.stat-strip a.chip-link:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink);background:var(--cream)}
.stat-strip a.chip-link:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}
/* headline total — filled so the marketplace size leads the row */
.stat-strip .chip-total{background:var(--ink);border-color:var(--ink);color:var(--yellow);padding:11px 22px;font-size:15px}
.stat-strip .chip-total b{font-size:21px}
.stat-strip .chip-brands b{color:var(--yellow)}
/* platform pills — compact so the whole strip fits above the fold */
.stat-strip .chip-sm{padding:5px 10px;font-size:11px;gap:5px;border-width:1px;box-shadow:2px 2px 0 var(--ink)}
.stat-strip .chip-sm b{font-size:12.5px;letter-spacing:-.2px}
.stat-strip .chip-sm svg,.stat-strip .chip-sm img{width:13px;height:13px}
/* "+N more" — a quieter, dashed pill so it reads as "see all", not another platform. */
.stat-strip .chip-more{background:transparent;border:1.5px dashed var(--ink);box-shadow:none;color:var(--ink);font-weight:800}
.stat-strip a.chip-more:hover{background:var(--ink);color:var(--yellow);border-style:solid}
/* Phones: show EVERY platform pill (the strip wraps) — just render them extra-compact so the
   full set of platforms stays visible without pushing the creator ribbon too far down. */
@media(max-width:480px){
  .stat-strip{margin-top:18px;gap:12px}
  .stat-strip .chip-total{padding:9px 16px;font-size:13.5px}
  .stat-strip .chip-total b{font-size:17px}
  .stat-strip .chip-sm{padding:6px 10px;font-size:10.5px;box-shadow:1.5px 1.5px 0 var(--ink)}
  .stat-strip .chip-sm b{font-size:12px}
  .stat-strip .chip-sm svg,.stat-strip .chip-sm img{width:12px;height:12px}
}
.stat-strip .chip-total b{color:#fff}
/* Keep the black pills dark on hover (the generic a.chip-link:hover turns cream, which left yellow
   text on a cream bg — unreadable). `a.chip-total` matches that specificity and comes later, so wins. */
.stat-strip a.chip-total:hover{background:#1c1c1c;color:var(--yellow)}
.stat-strip a.chip-total:hover b{color:var(--yellow)}

/* landing hero photo — rotating creator cut-outs (crossfade every 1s).
   The first cut-out stays in normal flow so it defines the box height; the other two overlay it,
   bottom-anchored, and cross-fade in/out. */
.hero-photo .horo-img{display:block;width:100%;height:auto;opacity:0;transform:translateY(10px) scale(.985);transition:opacity .7s ease,transform .7s ease;will-change:opacity,transform}
.hero-photo .horo-img:first-child{position:relative}
.hero-photo .horo-img:not(:first-child){position:absolute;bottom:0;right:-90px;max-width:none}
.hero-photo .horo-img:nth-child(2){width:128%}
.hero-photo .horo-img:nth-child(3){width:128%}
/* wide screens: grow the 3rd image with the viewport (as big as fits — always clears the pills, never clips the right edge) */
@media(min-width:1360px){.hero-photo .horo-img:nth-child(3){width:clamp(460px,calc(50vw - 216px),640px);right:calc(558px - 50vw)}}
.hero-photo .horo-img.horo-on{opacity:1;transform:none}

/* ---------- job board ---------- */
.job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.job-card{position:relative;display:flex;flex-direction:column;gap:11px;border:1px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--ink);padding:16px;text-decoration:none;color:var(--ink);transition:transform .1s,box-shadow .1s}
.job-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink);background:var(--cream)}
.job-boosted{border-color:#c0392b;box-shadow:4px 4px 0 #c0392b}
.job-boost-badge{position:absolute;top:-10px;right:12px;background:#c0392b;color:#fff;font-size:11px;font-weight:900;border-radius:99px;padding:3px 10px;letter-spacing:.02em}
.job-card-top{display:flex;align-items:center;gap:11px;min-width:0}
.job-brand-logo{width:44px;height:44px;border-radius:10px;object-fit:cover;border:1px solid var(--ink);flex:none;background:#fff}
.job-card-id{min-width:0}
.job-title{font-family:'Archivo',sans-serif;font-weight:900;font-size:16px;line-height:1.2;letter-spacing:-.3px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.job-brand{font-size:12.5px;font-weight:700;color:#6b6b55;margin-top:2px}
.job-tags{display:flex;flex-wrap:wrap;gap:6px}
.job-tag{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:800;border:1px solid var(--ink);border-radius:8px;padding:3px 8px;background:var(--cream)}
.job-tag.jt-type{background:var(--yellow)}
.job-tag.jt-budget{background:#d9f7e0;border-color:#0a8f3c;color:#0a6b2e}
.job-card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:4px}
.job-apply-cta{font-family:'Archivo',sans-serif;font-weight:900;font-size:14px;color:#1c6fe0}
.job-meta{font-size:11.5px;font-weight:600;color:#9a9476}
.job-detail .job-desc{white-space:pre-line;font-size:15px;line-height:1.6;color:#222;margin-top:6px}
.job-apply-box{margin-top:18px;border:1.5px dashed var(--ink);border-radius:12px;padding:18px;background:#fffdf5}
.inp{width:100%;border:1px solid var(--ink);border-radius:9px;padding:9px 11px;font:inherit;font-size:14px;background:#fff;margin-bottom:4px}
.form-label{display:block;font-size:12px;font-weight:800;color:#5c5c48;margin:8px 0 3px;text-transform:uppercase;letter-spacing:.03em}
.job-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.job-post-details summary{cursor:pointer;list-style:none}.job-post-details summary::-webkit-details-marker{display:none}
.job-form{border:1px solid #e6e2cf;border-radius:12px;padding:14px 16px;background:#fffdf5;margin-bottom:14px}
.job-manage{border:1px solid var(--ink);border-radius:12px;background:#fff;box-shadow:2px 2px 0 var(--ink);padding:13px 15px;margin-bottom:11px}
.jm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.jm-title{font-family:'Archivo',sans-serif;font-weight:900;font-size:15px}.jm-title a{color:inherit;text-decoration:none}
.jm-sub{display:block;font-size:12px;font-weight:600;color:#6b6b55;margin-top:4px}
.jm-act{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.btn-sm{padding:5px 10px;font-size:12px;border-radius:8px}
.jm-apps{margin-top:12px;border-top:1px solid #eee;padding-top:10px;display:flex;flex-direction:column;gap:9px}
.jm-app{display:flex;align-items:center;gap:11px}
.jm-app-av{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--ink)}
.jm-app-id{flex:1;min-width:0}
.jm-app-nm{font-weight:800;font-size:13.5px}.jm-app-nm a{color:inherit}
.jm-app-sub{font-weight:600;color:#8a8a6a;font-size:11.5px}
.jm-app-msg{font-size:12.5px;color:#555;line-height:1.4;margin-top:2px}
.jm-app-rate{font-size:12px;color:#0a6b2e;margin-top:2px}
.jm-app-act{display:flex;gap:5px;align-items:center;flex:none}
.boost-pkgs,.boost-places{display:flex;flex-direction:column;gap:8px}
.boost-pkg,.boost-place{display:flex;align-items:center;gap:8px;border:1px solid var(--ink);border-radius:10px;padding:10px 12px;cursor:pointer;font-size:14px;background:#fff}
.boost-pkg:hover,.boost-place:hover{background:var(--cream)}
.boost-pkg span,.boost-place small{color:#6b6b55;font-weight:600}
.boost-price-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:13.5px}
.boost-total b{font-family:'Archivo',sans-serif;font-size:20px}
/* boost-job: selectable surface options (landing / search / email) */
.boost-opts{display:flex;flex-direction:column;gap:10px}
.boost-opt{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--ink);border-radius:12px;padding:13px 14px;cursor:pointer;background:#fff;transition:background .12s}
.boost-opt:hover{background:#fffdf3}
.boost-opt:has(input:checked){background:#FFF3B8;box-shadow:inset 0 0 0 2px var(--ink)}
.boost-opt:has(input:disabled){opacity:.5;cursor:not-allowed;background:#f4f4ef}
.boost-opt input{margin-top:3px;accent-color:#0E0E0E;flex:none}
.bo-body{display:flex;flex-direction:column;gap:3px}
.bo-title{font-weight:800;font-size:14.5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bo-price{font-family:'Archivo',sans-serif;font-weight:700;font-size:13px;color:#0a6b2e;background:#e3f7e8;border-radius:6px;padding:1px 7px}
.bo-desc{font-size:12.5px;color:#6b6b55;line-height:1.35}
.boost-tiers{margin-top:10px;font-size:12.5px;color:#6b6b55}
.boost-tiers summary{cursor:pointer;font-weight:700;color:var(--ink)}
.boost-tiers ul{list-style:none;margin:10px 0 6px;padding:0;border:1px solid #e6e3d4;border-radius:10px;overflow:hidden}
.boost-tiers li{display:flex;justify-content:space-between;padding:7px 12px;border-bottom:1px solid #f0eee2}
.boost-tiers li:last-child{border-bottom:0}
.boost-tiers li b{font-family:'Archivo',sans-serif}
@media(max-width:520px){.job-form-row{grid-template-columns:1fr}.jm-head{flex-direction:column}}

/* ---------- section headings ---------- */
.section{margin:46px 0}
.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:10px}
.section-head h2{font-weight:900;font-size:clamp(22px,3vw,32px);letter-spacing:-.5px}
.section-head h2 .em{background:var(--ink);color:var(--yellow);padding:0 8px;border-radius:6px}
.see-all{font-weight:800;border:1px solid var(--ink);background:#fff;padding:7px 14px;border-radius:9px;box-shadow:var(--shadow-sm)}
.see-all:hover{background:var(--ink);color:var(--yellow)}

/* ---------- creator grid / cards ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}
/* Featured Influencers (paid boosts): a small, members-only "Boost your listing" CTA on the left +
   a grid of rich profile cards that auto-size — ONE boost fills the row and renders as a wide premium
   card; MORE boosts pack tighter and each shrinks. No dead space at any count. */
.boosted-shell{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-start}
.boosted-cta{flex:0 0 clamp(230px,24%,290px);align-self:stretch;display:flex;flex-direction:column;gap:8px;
  background:var(--ink);border:1px solid var(--ink);border-radius:16px;padding:20px;text-decoration:none;transition:transform .12s ease}
.boosted-cta:hover{transform:translate(-3px,-3px)}
.bcc-badge{align-self:flex-start;background:var(--yellow);color:var(--ink);font-family:'Archivo',sans-serif;font-weight:900;font-size:12px;letter-spacing:.02em;padding:5px 12px;border-radius:999px;border:1px solid var(--ink)}
.bcc-mini-title{font-family:'Archivo',sans-serif;font-weight:900;font-size:20px;color:#fff;line-height:1.1;margin-top:2px}
.bcc-mini-sub{font-size:12.5px;color:#cfcfc2;font-weight:600;line-height:1.5}
.bcc-mini-btn{align-self:flex-start;margin-top:6px;background:var(--yellow);color:var(--ink);font-family:'Archivo',sans-serif;font-weight:900;font-size:13px;padding:9px 16px;border-radius:10px;border:1px solid var(--ink)}
.boosted-main{flex:1 1 300px;min-width:0;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.bf-cell{container-type:inline-size;min-width:0}
.bf-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--ink);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .12s ease}
.bf-card:hover{transform:translate(-3px,-3px)}
.bf-media{display:flex;justify-content:center;padding:20px 20px 0;text-decoration:none}
.bf-av{width:104px;height:104px;border-radius:50%;border:2px solid var(--ink);object-fit:cover;background:#eee;flex:none}
.bf-body{display:flex;flex-direction:column;gap:7px;padding:14px 20px 20px;flex:1;text-align:center;align-items:center}
.bf-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.bf-badge{display:inline-flex;align-items:center;gap:4px;font-family:'Archivo',sans-serif;font-weight:900;font-size:11px;padding:4px 10px;border-radius:999px;border:1px solid var(--ink)}
.bf-badge.plat{background:#fff}
.bf-badge.boost{background:var(--yellow)}
.bf-name{font-family:'Archivo',sans-serif;font-weight:900;font-size:19px;line-height:1.15;color:inherit;text-decoration:none}
.bf-name:hover{text-decoration:underline}
.bf-handle{color:#8a8a8a;font-size:12.5px;font-weight:600;word-break:break-word}
.bf-cat{background:#FFF3B0;border:1px solid var(--ink);border-radius:999px;padding:3px 11px;font-size:11px;font-weight:800}
.bf-bio{font-size:13px;color:#555;font-weight:500;line-height:1.5;margin:2px 0}
.bf-stats{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;padding-top:8px}
.bf-stat{display:flex;flex-direction:column;gap:1px}
.bf-stat b{font-family:'Archivo',sans-serif;font-weight:900;font-size:19px}
.bf-stat span{font-size:10px;color:#999;text-transform:uppercase;letter-spacing:.03em;font-weight:800}
.bf-gallery{display:flex;gap:6px;flex-wrap:nowrap;overflow:hidden;justify-content:center;margin-top:8px;text-decoration:none}
.bf-gallery img{width:54px;height:54px;border-radius:9px;object-fit:cover;border:1px solid var(--ink);background:#eee}
.bf-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;align-items:center;margin-top:auto;padding-top:14px}
.bf-cta-btn{background:var(--ink);color:var(--yellow);font-family:'Archivo',sans-serif;font-weight:900;font-size:13px;padding:10px 20px;border-radius:10px;text-decoration:none;white-space:nowrap}
.bf-ext-btn{background:#fff;color:var(--ink);border:1px solid var(--ink);font-family:'Archivo',sans-serif;font-weight:800;font-size:12.5px;padding:9px 16px;border-radius:10px;text-decoration:none;white-space:nowrap}
.bf-ext-btn:hover{background:var(--yellow)}
/* Wide container (single / few boosts) → premium horizontal layout: big avatar left, details right. */
@container (min-width:470px){
  .bf-card{flex-direction:row;align-items:flex-start}
  .bf-media{padding:24px;flex:0 0 auto}
  .bf-av{width:150px;height:150px}
  .bf-body{text-align:left;align-items:flex-start;padding:24px 26px 24px 4px;gap:9px}
  .bf-badges{justify-content:flex-start}
  .bf-name{font-size:25px}
  .bf-bio{max-width:660px}
  .bf-stats{justify-content:flex-start;margin-top:6px;gap:28px}
  .bf-gallery{justify-content:flex-start}
  .bf-gallery img{width:62px;height:62px}
  .bf-actions{justify-content:center;flex-wrap:wrap}
}
@media(max-width:600px){.boosted-cta{flex-basis:100%}.bf-av{width:88px;height:88px}}
/* Boost analytics section (shared: admin + user dashboards) */
.boost-an-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:10px;margin:4px 0 16px}
.ba-kpi{border:1px solid var(--ink);border-radius:12px;padding:11px 13px;background:#FFFDF5;box-shadow:3px 3px 0 var(--ink)}
.ba-k{font-size:11px;font-weight:800;color:#777;text-transform:uppercase;letter-spacing:.03em}
.ba-v{font-family:'Archivo',sans-serif;font-weight:900;font-size:22px;color:var(--ink);line-height:1.15}
.ba-of{font-size:13px;color:#999;font-weight:700;margin-left:3px}
/* Pro boost discount: struck "was" price + the perk banner on /boost */
.bpk-was{text-decoration:line-through;color:#a3a383;font-weight:700;font-size:.62em;margin-right:5px;vertical-align:middle}
.boost-pro-note{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:10px 14px;border:1px solid var(--ink);border-radius:12px;font-weight:700;font-size:13px;background:#FFF7CC;color:var(--ink);text-decoration:none}
.boost-pro-note.is-pro{background:#d9f7e0}
.boost-pro-note.upsell:hover{background:var(--yellow)}
.boost-pro-note .cw{font-size:15px;flex:none}
/* Boost analytics — expandable per-campaign detail (placement breakdown, pacing, trend) */
.boost-an-table .ba-row{cursor:pointer}
.boost-an-table .ba-row:hover{background:#fffdf3}
.ba-exp{display:inline-block;font-size:11px;color:#888;width:14px}
.ba-detail>td{background:#fcfcf7;padding:14px 16px}
.ba-dwrap{display:flex;flex-wrap:wrap;gap:22px}
.ba-dcol{flex:1 1 240px;min-width:0}
.ba-dh{font-size:11px;font-weight:800;color:#666;text-transform:uppercase;letter-spacing:.03em;margin-bottom:7px}
.ba-surf{width:100%;border-collapse:collapse;font-size:12.5px}
.ba-surf th{text-align:left;font-size:10px;color:#999;text-transform:uppercase;font-weight:800;padding:2px 6px;border-bottom:1px solid #e6e6d8}
.ba-surf td{padding:5px 6px;border-bottom:1px solid #f0f0e6;font-weight:700}
.ba-surf td.num,.ba-surf th.num{text-align:right;font-variant-numeric:tabular-nums}
.ba-surf tr.off{color:#b8b8a8}
.ba-mini{display:flex;flex-wrap:wrap;gap:8px}
.ba-m{border:1px solid #e6e6d8;border-radius:9px;padding:7px 11px;background:#fff;min-width:74px}
.ba-m b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:16px;line-height:1.1}
.ba-m span{font-size:10px;color:#999;text-transform:uppercase;letter-spacing:.02em;font-weight:700}
.ba-sparkwrap{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.ba-sl{font-size:10px;font-weight:800;color:#999;width:42px;text-transform:uppercase}
.ba-spark{border-bottom:1px solid #eee}
/* Boost analytics — date-range filter */
.ba-datefilter{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 14px}
.ba-df-lbl{font-weight:800;font-size:12px;color:#666;margin-right:4px}
.ba-df{border:1px solid var(--ink);background:#fff;border-radius:8px;padding:5px 11px;font-weight:700;font-size:12.5px;font-family:inherit;cursor:pointer;color:var(--ink)}
.ba-df:hover{background:#fffdf3}
.ba-df.on{background:var(--yellow,#FFE000);border-color:var(--ink)}
.ba-df-c{display:inline-flex;align-items:center;gap:5px;margin-left:6px}
.ba-df-c input[type=date]{border:1px solid #ccc;border-radius:7px;padding:4px 7px;font-family:inherit;font-size:12px}
/* All card grids: exactly 2 columns on phones */
@media(max-width:600px){.grid{grid-template-columns:repeat(2,1fr);gap:12px}.card-avatar{width:64px;height:64px}
  /* Landing: on the 2-col mobile grid, drop a lone trailing card so a section never leaves a
     half-empty row. Guarded (:nth-child(n+3)) so a 1-item section is never blanked out.
     Excludes .grid-keep — the PAID Boost grid must never hide an advertiser's placement. */
  body.home .grid:not(.grid-keep)>*:nth-child(n+3):last-child:nth-child(odd){display:none}}
/* ---- Rising Stars ---- */
.rise-badge{margin-left:auto;display:inline-flex;align-items:center;gap:3px;font-family:'Archivo',sans-serif;font-weight:900;font-size:10px;line-height:1;padding:3px 8px;border-radius:99px;background:#ff5a1f;color:#fff;white-space:nowrap;letter-spacing:.01em}
/* Landing strip: show 15 on desktop (clean 3×5), all 16 on the 2-col mobile grid. */
@media(min-width:601px){.rising-grid>*:nth-child(16){display:none}}
/* Hotter, ranked treatment for the fastest-growers (scoped to the rising grid only). */
.rising-grid{counter-reset:rrank}
.rising-grid .card{counter-increment:rrank;background:linear-gradient(178deg,#fff6ec 0%,var(--paper) 44%)}
.rising-grid .card::before{
  content:counter(rrank);position:absolute;top:0;left:0;z-index:3;
  width:20px;height:22px;display:flex;align-items:center;justify-content:center;
  font-family:'Archivo',sans-serif;font-weight:900;font-size:11px;color:#fff;
  background:var(--ink);border-bottom-right-radius:11px;border-top-left-radius:var(--radius)}
.rising-grid .card:nth-child(-n+3)::before{background:#ff5a1f}   /* podium in flame orange */
.rising-grid .card-top .pill{margin-left:7px}                   /* small nudge to clear the 20px rank tab without pushing the ＋ follow button off the narrow card */
.rising-grid .rise-badge{font-size:10.5px;padding:4px 9px;box-shadow:2px 2px 0 var(--ink)}
.rising-grid .card:hover{box-shadow:9px 9px 0 #ff5a1f}
.section-sub{font-weight:600;color:#555;font-size:14px;max-width:700px;margin:2px 0 16px;line-height:1.5}
.rising-h1{margin:0;font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(26px,4vw,38px);letter-spacing:-.5px}
.rising-pager{display:flex;justify-content:center;gap:12px;margin-top:24px}
/* ---- Programmatic SEO list pages (/best) ---- */
.best-h1{margin:0;font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(24px,3.4vw,36px);letter-spacing:-.5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.best-crumbs{font-weight:700;font-size:12.5px;color:#8a8a6a;margin-bottom:6px}
.best-crumbs a{color:#8a8a6a;text-decoration:underline}
.best-hub{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}
.best-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--ink);border-radius:11px;box-shadow:2px 2px 0 var(--ink);padding:9px 14px;font-family:'Archivo',sans-serif;font-weight:800;font-size:14px;color:var(--ink);transition:transform .06s ease,box-shadow .06s ease}
.best-chip:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink);background:var(--cream)}
.best-chip span{font-size:11px;font-weight:900;color:#8a8a6a}
.best-cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:24px 0 8px}
.best-links{margin-top:26px}
.best-links-h{font-family:'Archivo',sans-serif;font-weight:900;font-size:16px;margin:0 0 10px}
.best-linkrow{display:flex;flex-wrap:wrap;gap:8px}
.best-pill{display:inline-flex;align-items:center;gap:6px;background:var(--paper);border:1px solid var(--ink);border-radius:99px;box-shadow:2px 2px 0 var(--ink);padding:6px 12px;font-weight:800;font-size:12.5px;color:var(--ink)}
.best-pill:hover{background:var(--cream)}
.best-pill span{font-size:10.5px;font-weight:900;color:#8a8a6a}
/* ---- ⚡ Instant Book ---- */
.instant-badge{margin-left:auto;display:inline-flex;align-items:center;gap:3px;font-family:'Archivo',sans-serif;font-weight:900;font-size:10px;line-height:1;padding:3px 8px;border-radius:99px;background:var(--ink);color:var(--yellow);white-space:nowrap}
.hdr-badge.hb-instant{background:var(--ink);color:var(--yellow);border-color:var(--ink)}
.hdr-badge.hb-rising{background:#ff5a1f;color:#fff;border-color:var(--ink);font-weight:900}
.ib-on{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ib-on-tx{flex:1;min-width:220px}
.ib-title{margin:0;font-family:'Archivo',sans-serif;font-weight:900;font-size:26px;letter-spacing:-.5px;line-height:1.05}
.ib-state{background:#0a8f3c;color:#fff;font-size:12px;font-weight:900;padding:2px 9px;border-radius:99px;vertical-align:middle;margin-left:4px}
.ib-disable{flex:none;border-color:#c00;color:#c00}
.ib-disable:hover{background:#c00;color:#fff}
/* Instant Book sell card — centred header to match the Verified / Boost cards above it. */
.ib-sell{text-align:center}
.ib-mark{width:54px;height:54px;border-radius:15px;background:var(--yellow);border:1px solid var(--ink);box-shadow:3px 3px 0 var(--ink);display:grid;place-items:center;font-size:28px;line-height:1;margin:0 auto 12px}
.ib-sell .ib-title{font-size:24px}
.ib-lead{font-weight:600;color:#555;font-size:14.5px;line-height:1.55;margin:10px auto 18px;max-width:420px}
.ib-feats{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:12px;text-align:left}
.ib-feats li{display:flex;gap:12px;align-items:center;font-weight:700;font-size:14px;color:var(--ink);line-height:1.4}
.ib-fic{flex:none;width:32px;height:32px;border-radius:9px;background:var(--cream);border:1px solid var(--ink);display:grid;place-items:center;font-size:15px;line-height:1}
.ib-cta{width:100%;justify-content:center}
.card{
  background:var(--paper);border:1px solid var(--ink);border-radius:var(--radius);
  padding:16px;text-align:center;box-shadow:var(--shadow);transition:transform .12s,box-shadow .12s;
  position:relative;overflow:hidden;
}
.card:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--ink)}
.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;
  background:var(--cream);border:1px solid var(--ink);border-radius:999px;padding:3px 9px}
.platform-youtube .pill{background:#ffe1e1}
.platform-twitch .pill{background:#ece2ff}
.pill svg{width:14px;height:14px}
.platform-youtube .pill svg{color:var(--ytred)}
.platform-twitch .pill svg{color:var(--purple)}
.live-dot{font-size:10px;font-weight:900;color:#fff;background:var(--red);border:1px solid var(--ink);
  border-radius:999px;padding:2px 8px;animation:pulse 1.4s infinite}
@keyframes pulse{50%{opacity:.55}}
.card-avatar{width:84px;height:84px;border-radius:50%;object-fit:cover;margin:4px auto 12px;background:var(--cream)}
.card.featured{border-color:#caa400;box-shadow:5px 5px 0 #caa400}
.featured-badge{margin-left:auto;background:var(--yellow);border:1px solid var(--ink);border-radius:20px;font-size:10.5px;font-weight:800;padding:2px 8px;white-space:nowrap}
.panel.featured-panel{border-color:#caa400;box-shadow:5px 5px 0 #caa400;background:#fffdf0}
.panel.pro-upsell{border-color:#caa400;box-shadow:5px 5px 0 #caa400;background:#fffdf0}
.pro-benefits{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:9px 18px}
@media(max-width:680px){.pro-benefits{grid-template-columns:1fr}}
.pro-benefits li{font-size:13.5px;font-weight:600;color:#333;line-height:1.4;padding-left:2px}
.pro-benefits .pb-free{color:#999;font-weight:600;font-size:12px}
/* Dashboard card grid (deals, listings, watchlist) */
.dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(218px,1fr));gap:14px}
.dcard{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;border:1px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--ink);padding:16px 14px;text-decoration:none;color:inherit;transition:transform .08s,box-shadow .08s}
a.dcard:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.dcard.todo{border-color:#caa400;box-shadow:4px 4px 0 #caa400;background:#fffdf0}
.dcard-ic{font-size:24px;line-height:1}
.dcard-av{width:62px;height:62px;border-radius:50%;object-fit:cover;background:var(--cream)}
.dcard-title{font-weight:800;font-size:15px;line-height:1.25;word-break:break-word}
.dcard-sub{font-size:12.5px;color:#777;font-weight:600}
.dcard-foot{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:8px;padding-top:8px;width:100%}
.dcard-meta{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;width:100%;margin-top:6px;font-size:11.5px;font-weight:700;color:#8a8a6a}
.dcard-seen{color:#0a8f3c}
.dcard-unseen{color:#b98900}
.dcard-amt{font-weight:800;font-size:15px}
.wcard-head{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:inherit}
/* Pro upgrade hero */
.panel.pro-hero{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:6px 6px 0 var(--yellow)}
.pro-hero-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.pro-hero-badge{display:inline-block;background:var(--yellow);color:var(--ink);font-weight:900;font-size:11.5px;letter-spacing:.1em;padding:4px 12px;border-radius:20px}
.pro-hero-title{font-size:25px;margin:11px 0 0;color:#fff;line-height:1.12;max-width:540px}
.pro-hero-price{flex:none;display:flex;flex-direction:column;align-items:flex-end}
.pro-hero-price .php-amt{font-size:30px;font-weight:900;color:var(--yellow);line-height:1}
.pro-hero-price .php-cap{font-size:11px;color:#bbb;font-weight:600;margin-top:3px}
.pro-hero .pro-benefits li{color:#eaeaea}
.pro-hero .pro-benefits li b{color:#fff}
.pro-hero .pro-benefits .pb-free{color:#8f8f8f}
.pro-hero-cta{margin:2px auto 0;display:block;width:fit-content;background:var(--yellow);color:var(--ink);border-color:var(--ink)}
@media(max-width:680px){.pro-hero-title{font-size:21px}.pro-hero-head{margin-bottom:14px}}
.card-name{font-family:'Archivo';font-weight:700;font-size:16px;line-height:1.2}
.verified{color:#1a8cff}
.card-handle{font-size:12px;font-weight:600;color:#555;margin-top:2px}
.card-stat{margin-top:12px;padding-top:12px;border-top:1px dashed var(--ink)}
.card-stat .big{font-family:'Archivo';font-weight:900;font-size:22px;display:block}
.card-stat .lbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#555}
.card-stat .rate-star{color:#F0A500;font-size:.72em;margin-left:2px;vertical-align:1px}
.card-rise{margin-top:10px;text-align:center}
.card-rise .rise-badge{margin-left:0}   /* override the flex-row auto-margin now that it sits under the followers */

/* ---------- rank list ---------- */
.ranklist{background:var(--paper);border:1px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.rank-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--ink)}
.rank-row:last-child{border-bottom:none}
.rank-item{border-bottom:1px solid var(--ink)}
.rank-item:last-child{border-bottom:none}
.rank-item>.rank-row{border-bottom:none;cursor:pointer;list-style:none}
.rank-item>.rank-row::-webkit-details-marker{display:none}
.rank-item>.rank-row::before{content:"▸";font-weight:900;color:#aaa;margin-right:-4px}
.rank-item[open]>.rank-row{background:var(--cream)}
.rank-item[open]>.rank-row::before{content:"▾";color:var(--ink)}
.rank-watchers{display:flex;flex-direction:column;gap:6px;padding:8px 16px 12px 48px;background:var(--cream);font-size:12.5px;font-weight:600}
.rank-watchers .rw{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.rank-watchers .rw-u{min-width:0;overflow:hidden;text-overflow:ellipsis}
.rank-watchers .rw-t{color:#999;white-space:nowrap;flex:none}
.rank-watchers .rw-listing{font-weight:800;color:#5a5a3a;margin-bottom:2px;text-decoration:underline}

/* ===== Refer & earn (dashboard) ===== */
.refer-panel{background:linear-gradient(180deg,#fff,#fbfff8)}
.refer-lbl{display:block;font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#8a8a6a;margin-bottom:5px}
.refer-link{display:flex;gap:8px;margin-bottom:14px}
.refer-link input{flex:1;min-width:0;border:1px solid var(--ink);border-radius:10px;padding:10px 12px;font-weight:700;font-size:12.5px;background:#fff;font-family:inherit}
.refer-link .btn{flex:none;padding:8px 16px;white-space:nowrap}
.refer-stats{display:flex;gap:8px}
.rs-tile{flex:1;min-width:0;border:1px solid var(--ink);border-radius:11px;padding:9px 6px;text-align:center;background:#fafaf5}
.rs-tile b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:18px;line-height:1.05;color:var(--ink)}
.rs-tile span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#999}
.rs-earn{background:#eafaef;border-color:#0a8f3c}
.rs-earn b{color:#0a7d2c}

/* ===== Admin: collab recommendations match flow ===== */
.cr-match{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cr-chan{display:inline-flex;align-items:center;gap:7px;min-width:0;color:var(--ink);font-weight:700}
.cr-chan img{width:30px;height:30px;border-radius:50%;object-fit:cover;border:1px solid var(--ink);flex:none;background:var(--cream)}
.cr-chan span{display:flex;flex-direction:column;min-width:0;line-height:1.15}
.cr-chan span small{font-weight:600;font-size:10.5px;color:#999;white-space:nowrap}
.cr-chan:hover span{text-decoration:underline}
.cr-chan-none{color:#bbb;font-weight:600}
.cr-arrow{font-size:15px;flex:none}
.cr-chan-rec img{border-color:#0a8f3c}

/* ===== UGC pricing editor ===== */
.ugc-form{display:flex;flex-direction:column}
.ugc-legend{background:#fffdf0;border:1px solid var(--ink);border-radius:10px;padding:9px 13px;font-size:12.5px;font-weight:600;line-height:1.5;color:#444;margin-bottom:12px}
.ugc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(440px,1fr));gap:14px}
@media(max-width:520px){.ugc-cards{grid-template-columns:1fr}}
.ugc-card{border:1px solid var(--ink);border-radius:14px;padding:16px;background:#fff;box-shadow:4px 4px 0 var(--ink)}
.ugc-card.off{opacity:.62;background:#fafaf7}
.ugc-card-head{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.ugc-card-av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--ink);background:var(--cream)}
.ugc-card-meta{flex:1;min-width:0}
.ugc-card-nm{font-family:'Archivo',sans-serif;font-weight:900;font-size:16px;letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ugc-card-sub{display:flex;align-items:center;gap:5px;font-size:12.5px;color:#666;font-weight:700;margin-top:1px}
.ugc-card-off{flex:none;background:#eee;border:1.5px solid var(--ink);border-radius:7px;padding:1px 8px;font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.ugc-card-foot{display:flex;gap:12px;align-items:center;margin-top:12px;flex-wrap:wrap;border-top:1px solid #ededed;padding-top:12px}
.ugc-head{display:grid;grid-template-columns:1fr 92px 92px 96px;gap:10px;font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#8a8a6a;padding:0 2px 8px}
.ugc-head i{display:block;font-weight:700;font-size:9px;color:#bbb;text-transform:none;letter-spacing:0;font-style:normal;margin-top:1px}
.ugc-row{display:grid;grid-template-columns:1fr 92px 92px 96px;gap:10px;margin-bottom:9px;align-items:center}
.ugc-row input{border:1px solid var(--ink);border-radius:9px;padding:9px 10px;font-weight:700;font-family:inherit;font-size:14px;width:100%;box-sizing:border-box}
.ugc-dollar,.ugc-days{display:flex;align-items:center;gap:5px}
.ugc-dollar span{font-weight:900;color:#888}
.ugc-dollar input,.ugc-days input{padding-left:8px}
.ugc-days span{font-size:11px;font-weight:700;color:#999}
@media(max-width:560px){.ugc-head{display:none}.ugc-row{grid-template-columns:1fr 1fr;gap:8px}.ugc-row>:first-child{grid-column:1/-1}}
/* UGC hire picker (listing modal) */
.ugc-pick{display:flex;flex-direction:column;gap:8px}
.ugc-opt{display:flex;align-items:center;gap:10px;border:1px solid var(--ink);border-radius:12px;padding:11px 13px;cursor:pointer;transition:background .1s ease}
.ugc-opt:hover{background:var(--cream)}
.ugc-opt input{flex:none;width:18px;height:18px;accent-color:#0E0E0E}
.ugc-opt-main{flex:1;min-width:0;display:flex;flex-direction:column}
.ugc-opt-main b{font-weight:800;font-size:14.5px}
.ugc-opt-main small{font-size:11.5px;color:#888;font-weight:600}
.ugc-opt-price{font-family:'Archivo',sans-serif;font-weight:900;font-size:18px;white-space:nowrap}
.ugc-opt:has(input:checked){background:var(--cream);box-shadow:3px 3px 0 var(--ink)}
/* Dashboard "Set UGC prices" link */
.yc-ugc{display:block;text-align:center;margin-top:8px;font-weight:800;font-size:12.5px;color:#5a5a3a;border:1px dashed var(--ink);border-radius:9px;padding:7px 8px;background:#fffdf4}
.yc-ugc:hover{background:var(--yellow)}
.ugc-toggle{display:flex;align-items:center;gap:8px;margin-top:12px;font-weight:800;font-size:13px;cursor:pointer}
.ugc-toggle input{width:17px;height:17px;accent-color:#0E0E0E;flex:none}
.ugc-toggle span{font-weight:600;color:#999;font-size:12px}
/* Podcast guest fee row in the UGC card */
/* Podcast guest-appearance cards (own dashboard section) */
.pod-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
@media(max-width:520px){.pod-cards{grid-template-columns:1fr}}
.pod-card{border:1px solid var(--ink);border-radius:14px;padding:16px;background:#faf8ff;box-shadow:4px 4px 0 var(--ink);display:flex;flex-direction:column;gap:12px}
.pod-card-head{display:flex;align-items:center;gap:11px}
.pod-card-av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--ink);background:var(--cream)}
.pod-card-meta{flex:1;min-width:0}
.pod-card-nm{font-weight:900;font-family:Archivo,sans-serif;font-size:15px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pod-card-sub{font-size:12px;color:#666;font-weight:700;margin-top:1px}
.pod-badge{flex:none;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:#5b3fb0;background:#efe7ff;border:1px solid #5b3fb0;border-radius:20px;padding:3px 9px}
.pod-fee-label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#5c5c6a;margin-bottom:-4px}
.pod-fee-row{display:flex;gap:10px;align-items:center}
.pod-fee-inp{flex:1;min-width:0}
/* Match the platform's standard field styling (same as .ugc-row input). */
.pod-fee-inp input{flex:1;min-width:0;border:1px solid var(--ink);border-radius:9px;padding:9px 10px;font-weight:700;font-family:inherit;font-size:14px;box-sizing:border-box}
.pod-fee-row .btn{flex:none;white-space:nowrap}
.pod-fee-hint{font-size:11.5px;font-weight:600;color:#8a8698;line-height:1.4}
/* UGC file delivery + download */
.ugc-deliver{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ugc-deliver input[type=file]{flex:1;min-width:200px;border:1px solid var(--ink);border-radius:10px;padding:9px 11px;font-weight:600;font-size:13px;background:#fff}
.deal-files{display:flex;flex-direction:column;gap:8px}
.dfile{display:flex;align-items:center;gap:11px;border:1px solid var(--ink);border-radius:12px;padding:11px 14px;background:#fafaf5;transition:box-shadow .12s ease}
.dfile:hover{box-shadow:4px 4px 0 var(--ink)}
.dfile-ic{font-size:20px;flex:none}
.dfile-main{flex:1;min-width:0;display:flex;flex-direction:column}
.dfile-main b{font-weight:800;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfile-main small{font-size:11.5px;color:#999;font-weight:600}
.dfile-dl{flex:none;font-weight:900;font-size:13px;color:#0a7d2c;white-space:nowrap}
/* Hire-for-UGC button — a standout "get paid" CTA (.btn.btn-ugc beats the base .btn background) */
.btn.btn-ugc{background:linear-gradient(135deg,#0E9F4A,#16B85C);color:#fff;border-color:var(--ink);font-weight:900;box-shadow:3px 3px 0 var(--ink)}
.btn.btn-ugc:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink);color:#fff}
.btn-ugc-ic{font-size:15px}
.btn-ugc-from{background:#fff;color:#0a7d2c;border-radius:7px;padding:1px 8px;font-size:11.5px;font-weight:900;margin-left:1px}

/* ===== Deal contract / e-signatures ===== */
.contract-clauses{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}
.cc-row{display:grid;grid-template-columns:170px 1fr;gap:14px;align-items:start;padding-bottom:12px;border-bottom:1.5px dashed #d9d9c9}
.cc-row:last-child{border-bottom:none;padding-bottom:0}
.cc-h{font-family:'Archivo',sans-serif;font-weight:900;font-size:13.5px;letter-spacing:-.2px;display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.cc-b{font-weight:600;font-size:13.5px;line-height:1.5;color:#333}
@media(max-width:560px){.cc-row{grid-template-columns:1fr;gap:3px}}
/* Inline per-term editing in the agreement */
.cc-edit{border:none;background:none;cursor:pointer;font-size:13px;color:#8a8a7a;padding:0 2px;line-height:1;vertical-align:baseline}
.cc-edit:hover{color:var(--ink)}
.cc-editform{margin-top:8px}
.cc-ta{width:100%;border:1.5px solid var(--ink);border-radius:9px;padding:9px 11px;font-weight:600;font-size:13.5px;line-height:1.5;resize:vertical;font-family:inherit}
.cc-editrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}
.cc-help{margin:6px 0 0;font-size:12.5px;font-weight:600;color:#555;line-height:1.45}
.cc-del{border:none;background:none;cursor:pointer;font-weight:700;font-size:12.5px;color:#b23b3b;padding:4px 6px;margin-left:auto}
.cc-del:hover{text-decoration:underline}
.cc-addwrap{margin-top:4px}
.cc-add{border:1.5px dashed #bdbdad;background:none;cursor:pointer;font-family:'Archivo',sans-serif;font-weight:800;font-size:13px;color:#555;border-radius:9px;padding:8px 14px}
.cc-add:hover{border-color:var(--ink);color:var(--ink)}
.sig-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:480px){.sig-grid{grid-template-columns:1fr}}
.sig-box{border:1px solid var(--ink);border-radius:12px;padding:12px 14px;background:#fafaf5;min-height:74px;display:flex;flex-direction:column;justify-content:center}
.sig-box.signed{background:#eafaef}
.sig-role{font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#8a8a6a;margin-bottom:3px}
.sig-name{font-family:'Caveat','Segoe Script',cursive;font-weight:700;font-size:24px;line-height:1.1;color:var(--ink)}
.sig-date{font-size:11.5px;font-weight:700;color:#0a8f3c;margin-top:2px}
/* Unsigned box: an empty line to sign on + the name in a plain font, so it never reads as already signed. */
.sig-box.pending{background:#fafaf5}
.sig-line{height:22px;border-bottom:1px dashed #c9c3a6;margin-bottom:7px}
.sig-wait-nm{font-weight:800;font-size:13px;color:#9a9476}
.sig-pending{font-weight:700;color:#b6b6a2;font-size:12px;margin-top:2px}
.sign-form{margin-top:14px}
.sign-row{display:flex;gap:8px;flex-wrap:wrap}
.sign-row input{flex:1;min-width:180px;border:1px solid var(--ink);border-radius:10px;padding:10px 13px;font-family:'Caveat','Segoe Script',cursive;font-weight:700;font-size:20px}
.sign-row .btn{flex:none;white-space:nowrap}
.rank-row:hover{background:var(--cream)}
.rank-num{font-family:'Archivo';font-weight:900;font-size:20px;width:34px;text-align:center}
.rank-av{width:48px;height:48px;border-radius:50%;object-fit:cover;background:var(--cream)}
.rank-main{flex:1;min-width:0}
.rank-main .nm{font-weight:800;font-family:'Archivo';white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rank-main .sub{font-size:12px;font-weight:600;color:#555;display:flex;gap:8px;align-items:center}
.rank-metric{text-align:right}
.rank-metric .v{font-family:'Archivo';font-weight:900;font-size:18px}
.rank-metric .l{font-size:11px;font-weight:700;color:#555;text-transform:uppercase}

/* ---------- creator profile ---------- */
.profile-banner{height:200px;border:1px solid var(--ink);border-radius:var(--radius);background:var(--ink) center/cover no-repeat;margin-top:24px;box-shadow:var(--shadow)}
/* Branded gradient fallback when a listing has no cover photo (TikTok has none; many Twitch too) */
.profile-banner.no-cover{position:relative;overflow:hidden;background:linear-gradient(120deg,#0E0E0E 0%,#1c1c1c 45%,#0E0E0E 100%)}
.profile-banner.no-cover::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 28%,rgba(255,224,0,.20),transparent 42%),radial-gradient(circle at 82% 72%,rgba(255,224,0,.10),transparent 38%),repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0 2px,transparent 2px 22px)}
.profile-banner.no-cover .no-cover-mark{position:absolute;right:22px;bottom:16px;font-size:40px;opacity:.5;z-index:1;filter:grayscale(.2)}
/* Only the avatar overlaps the banner; the name sits on the yellow page so it
   stays readable (black-on-yellow) instead of black-on-banner-photo. */
.profile-head{display:flex;gap:22px;align-items:center;margin-top:16px;padding:0 18px;position:relative;flex-wrap:wrap}
.profile-av{width:130px;height:130px;border-radius:20px;object-fit:cover;background:#fff;box-shadow:var(--shadow);align-self:center}
.profile-id{flex:1;min-width:240px;padding-bottom:6px}
.profile-id h1{font-weight:900;font-size:clamp(26px,4vw,40px);letter-spacing:-1px;line-height:1;display:flex;align-items:center;flex-wrap:wrap;gap:9px 12px}
.pid-name{display:inline-flex;align-items:center;gap:8px;min-width:0}
.pid-owner{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-size:13px;font-weight:800;color:#444;text-decoration:none;border-bottom:1px solid var(--yellow);width:fit-content;padding-bottom:1px}
.pid-owner:hover{color:var(--ink);border-bottom-color:var(--ink)}
.pid-owner-rt{display:inline-flex;align-items:center;gap:3px;background:#FFF4CC;border:1px solid var(--ink);border-radius:99px;padding:0 8px;font-size:11.5px;font-weight:900;color:#0E0E0E;line-height:1.5}
.pid-owner-star{color:#f5a800}
.pid-pv{color:#1a8cff;font-size:.52em;flex:none}
/* Podcast avg-rating badge next to the listing name — one clean white pill (pops on the yellow page):
   gold star + score, a hairline divider, then the ratings count. */
.pid-rating{display:inline-flex;align-items:center;gap:6px;vertical-align:middle;background:#fff;border:1px solid var(--ink);border-radius:999px;padding:5px 14px;font-family:Archivo,sans-serif;line-height:1;white-space:nowrap}
.pid-rating .pid-rating-star{color:#F5A800;font-size:15px;margin-top:-1px}
.pid-rating .pid-rating-val{font-size:16px;font-weight:900;color:#0E0E0E;letter-spacing:-.01em}
.pid-rating .pid-rating-n{font-family:'Inter',system-ui,sans-serif;font-size:12px;font-weight:600;color:#555;letter-spacing:.01em;padding-left:9px;border-left:1px solid #e2e2e2}
/* Unified listing-header status badges (Claimed / Verified / Pro) — one cohesive pill system:
   coloured pill + white(or ink) icon-chip + label; same height, border, hard shadow & font. */
.hdr-badges{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}
.hdr-badge{display:inline-flex;align-items:center;gap:6px;height:27px;padding:0 12px 0 6px;border:1px solid var(--ink);border-radius:999px;box-shadow:2px 2px 0 var(--ink);font-family:Archivo,sans-serif;font-weight:900;font-size:12.5px;letter-spacing:.2px;line-height:1;white-space:nowrap;transition:transform .08s,box-shadow .08s}
.hdr-badge:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink)}
.hb-ic{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:11px;font-weight:900;flex:none}
.hb-claimed{background:#16a34a;color:#fff}
.hb-claimed .hb-ic{background:#fff;color:#16a34a}
.hb-verified{background:#1d9bf0;color:#fff}
.hb-verified .hb-ic{background:#fff;color:#1477c4}
.hb-pro{background:var(--yellow);color:var(--ink)}
.hb-pro .hb-ic{background:var(--ink);color:var(--yellow)}
.profile-id .meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;align-items:center}
.tag{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--ink);border-radius:999px;
  padding:4px 12px;font-size:13px;font-weight:700;box-shadow:2px 2px 0 var(--ink)}
.tag.yt{background:#ffe1e1}.tag.tw{background:#ece2ff}
.tag.live{background:var(--red);color:#fff}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:8px}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:800;border:1px solid var(--ink);
  padding:11px 18px;border-radius:11px;box-shadow:var(--shadow-sm);background:#fff;cursor:pointer}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.btn.primary{background:var(--ink);color:var(--yellow)}
.btn.yt{background:var(--ytred);color:#fff;border-color:var(--ink)}
.btn.tw{background:var(--purple);color:#fff}

/* stat tiles */
/* All stat tiles on one row on desktop (equal width, any count); wraps to a grid on smaller screens. */
.stat-tiles{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:12px;margin-top:28px}
@media(max-width:900px){.stat-tiles{grid-auto-flow:row;grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.stat-tiles{grid-template-columns:repeat(2,1fr)}}
.tile{background:var(--paper);border:1px solid var(--ink);border-radius:var(--radius);padding:15px 14px;box-shadow:var(--shadow);min-width:0}
.tile .k{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:#555}
.tile .v{font-family:'Archivo';font-weight:900;font-size:30px;line-height:1.1;margin-top:6px;overflow-wrap:anywhere;word-break:break-word;min-width:0}
/* In the one-row stat strip, size values so single figures never break mid-number (ranges still wrap at spaces). */
.stat-tiles .tile .v{font-size:26px;word-break:normal;overflow-wrap:normal}
/* Polished sponsor stat tiles: icon chip + hover lift */
.stat-tiles .tile{position:relative;background:#fff;border:1px solid var(--ink);border-radius:14px;padding:16px 15px;box-shadow:4px 4px 0 var(--ink);transition:transform .1s,box-shadow .1s}
.stat-tiles .tile:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.stat-tiles .tile-ic{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;border:1px solid var(--ink);background:var(--yellow);font-size:16px;line-height:1;margin-bottom:11px}
.stat-tiles .tile .k{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#6b6b52;line-height:1.25}
.stat-tiles .tile .v{margin-top:5px;line-height:1.05}
.stat-tiles .tile .v.v-sm{font-size:16.5px;line-height:1.2}
.tile .v small{font-size:14px;font-weight:700;color:#555}
.tile.earn{background:var(--ink);color:var(--yellow)}
.tile.earn .k{color:var(--yellow-deep)}
.tile.earn .v{color:#fff}
.tile.earn .earn-src{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--yellow);opacity:.85;margin-top:3px}
.el-earn{display:flex;align-items:center;gap:9px;max-width:380px}
.el-earn-box{position:relative;flex:1}
.el-earn-cur{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-weight:800;color:#888;pointer-events:none}
.el-earn-box .el-input{padding-left:24px}
.el-earn-dash{font-weight:900;color:#888}
.el-earn-mo{font-weight:700;color:#888;white-space:nowrap}

/* performance / engagement grid */
.perf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:12px}
.perf{background:var(--cream);border:1px solid var(--ink);border-radius:11px;padding:12px 14px}
.perf.hl{background:var(--yellow-deep)}
.perf .pv{font-family:'Archivo';font-weight:900;font-size:22px;line-height:1.05}
.perf .pk{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#555;margin-top:4px}

/* layout columns */
.profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:26px;margin-top:30px;align-items:start}
.profile-grid>*{min-width:0}
@media(max-width:860px){.profile-grid{grid-template-columns:1fr}}
/* sponsor "Influencers sponsored by" — card grid */
.spon-inf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:14px}
.sic{border:1px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--ink);padding:14px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;transition:transform .08s}
.sic:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.sic-head{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:inherit;width:100%}
.sic-av{width:66px;height:66px;border-radius:50%;object-fit:cover;background:var(--cream)}
.sic-nm{font-weight:800;font-size:14.5px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sic-meta{display:flex;flex-direction:column;align-items:center;gap:5px}
.sic-subs{font-size:12.5px;color:#555;font-weight:600}
.sic-cat{font-size:11.5px;font-weight:700;color:#666;background:var(--cream);border:1px solid var(--ink);border-radius:20px;padding:2px 10px}
/* "Who viewed you" cards + free-tier blur */
.viewer-grid{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:14px}
.vwr{border:1px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--ink);padding:14px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}
.vwr-av{width:60px;height:60px;border-radius:50%;object-fit:cover;background:var(--cream)}
.vwr-nm{font-weight:800;font-size:14px;line-height:1.2}
.vwr-meta{font-size:11.5px;color:#777;font-weight:600}
.vwr-links{display:flex;flex-direction:column;gap:5px;width:100%;margin-top:4px}
.vwr-link{font-size:12px;font-weight:700;color:#0E0E0E;text-decoration:none;border:1px solid var(--ink);border-radius:8px;padding:4px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--cream);display:block}
a.vwr-link:hover{background:var(--yellow)}
.blurred-viewers .vwr{filter:blur(5px);pointer-events:none;user-select:none}
.viewer-lock{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.35);border-radius:var(--radius)}
.viewer-lock .vl-inner{background:#fff;border:1px solid var(--ink);border-radius:16px;box-shadow:6px 6px 0 var(--ink);padding:22px 26px;text-align:center;max-width:300px}
.viewer-lock .vl-inner b{display:block;font-size:17px;margin:6px 0 4px}
.viewer-lock .vl-inner p{font-size:13px;color:#555;font-weight:600;margin:0 0 12px}
.panel{background:var(--paper);border:1px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;margin-bottom:22px}
@media(max-width:560px){.panel{padding:16px}}
.panel h2{font-weight:900;font-size:20px;margin-bottom:14px;letter-spacing:-.3px}
.panel .desc{white-space:pre-wrap;font-weight:450;line-height:1.65}
.kv{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dashed #ccc;font-size:14px}
.kv:last-child{border-bottom:none}
.kv .k{font-weight:700;color:#555}
.kv .v{font-weight:800;text-align:right}

/* video grid */
.vid-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.vid{border:1px solid var(--ink);border-radius:11px;overflow:hidden;background:#fff;box-shadow:var(--shadow-sm);transition:transform .1s}
.vid:hover{transform:translate(-2px,-2px)}
.vid .thumb{aspect-ratio:16/9;background:var(--cream) center/cover no-repeat;border-bottom:1px solid var(--ink)}
.vid .info{padding:9px 10px}
.vid .t{font-size:13px;font-weight:700;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vid .m{font-size:11px;font-weight:600;color:#555;margin-top:5px}

/* trending videos (landing page) */
.trend-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.trend{background:#fff;border:1px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:transform .12s,box-shadow .12s}
.trend:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--ink)}
.trend-thumb{display:block;aspect-ratio:16/9;background:var(--cream) center/cover no-repeat;border-bottom:1px solid var(--ink);position:relative}
.trend-rank{position:absolute;top:8px;left:8px;background:var(--ink);color:var(--yellow);font-family:'Archivo',sans-serif;font-weight:900;font-size:13px;padding:3px 10px;border-radius:999px;border:1px solid var(--yellow)}
.trend-info{padding:11px 13px}
.trend-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:800;font-size:14px;line-height:1.3;color:var(--ink)}
.trend-title:hover{text-decoration:underline}
.trend-meta{font-size:12px;font-weight:600;color:#555;margin-top:6px}
.trend-meta a{font-weight:700;color:var(--ink)}
.trend-meta a:hover{text-decoration:underline}

/* earnings methodology note */
.note{background:var(--cream);border:1px solid var(--ink);border-radius:10px;padding:12px 14px;font-size:13px;font-weight:500;margin-top:14px}
.est-details summary{cursor:pointer;font-weight:800;list-style:none;display:flex;align-items:center;gap:7px}
.est-details summary::-webkit-details-marker{display:none}
.est-details summary::before{content:"▸";font-size:11px;transition:transform .15s ease}
.est-details[open] summary::before{transform:rotate(90deg)}
.est-details .est-body{margin-top:9px;line-height:1.5}
.note b{font-weight:800}

/* links list */
.linklist{display:flex;flex-direction:column;gap:8px}
.linklist a{display:flex;align-items:center;gap:8px;font-weight:700;border:1px solid var(--ink);border-radius:9px;padding:9px 12px;background:#fff;font-size:14px;word-break:break-all}
.linklist a:hover{background:var(--cream)}

/* social channels */
.social-list{display:flex;flex-direction:column;gap:8px}
.social-btn{display:flex;align-items:center;gap:10px;border:1px solid var(--ink);border-radius:9px;padding:9px 12px;background:#fff;font-weight:700;font-size:14px;transition:transform .1s,box-shadow .1s}
.social-btn:hover{background:var(--cream);transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}
.social-btn .se{font-size:18px;width:22px;text-align:center;flex:none}
.social-btn .sh{font-weight:600;color:#666;font-size:12px;word-break:break-all}
/* stacked variant: platform/label on top, the show/server name on its own line (used for podcast et al.) */
.social-btn .sl-stack{display:flex;flex-direction:column;line-height:1.25}
.social-btn .sl-stack .sh{display:block;margin-top:1px;word-break:normal;overflow-wrap:anywhere}

/* Creator "Free analysis" tool cards — differentiated action cards, neo-brutalist */
.cr-tools{border:1px solid var(--ink);border-radius:16px;box-shadow:var(--shadow-sm);background:#fff;margin:14px 0;overflow:hidden}
.cr-tools-hd{display:flex;align-items:baseline;gap:7px;padding:11px 15px;border-bottom:1px solid var(--ink);background:var(--cream)}
.cr-tools-hd .t{font-weight:900;font-size:.92rem;letter-spacing:-.01em}
.cr-tools-hd .n{font-weight:700;font-size:.8rem;color:#6b6b3e;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cr-tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px}
@media(max-width:640px){.cr-tools-grid{grid-template-columns:1fr}}
.cr-tool{display:flex;align-items:center;gap:11px;border:1px solid var(--ink);border-radius:12px;background:#fff;padding:10px 12px;text-decoration:none;color:var(--ink);box-shadow:2px 2px 0 var(--ink);transition:transform .12s,box-shadow .12s,background .12s}
.cr-tool:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--ink);background:#fffdf5}
.cr-tool .ic{flex:none;width:40px;height:40px;display:grid;place-items:center;font-size:20px;border:1px solid var(--ink);border-radius:10px;background:var(--cream)}
.cr-tool[data-t="er"] .ic{background:#DBF5E1}
.cr-tool[data-t="rate"] .ic{background:#FFE9A6}
.cr-tool .tx{display:flex;flex-direction:column;line-height:1.18;min-width:0}
.cr-tool .tx b{font-size:.9rem;font-weight:800}
.cr-tool .tx small{font-size:.72rem;color:#6b6b55;font-weight:600;margin-top:2px}
.cr-tool .go{margin-left:auto;font-weight:900;font-size:1.05rem;flex:none;opacity:.28;transform:translateX(-3px);transition:opacity .12s,transform .12s}
.cr-tool:hover .go{opacity:1;transform:translateX(0)}
.sponsor-chips{display:flex;flex-wrap:wrap;gap:7px}
.sponsor-chip{background:var(--cream);border:1px solid var(--ink);border-radius:999px;padding:4px 11px;font-weight:700;font-size:12px;text-decoration:none;color:var(--ink);display:inline-block}
a.sponsor-chip:hover{background:var(--ink);color:var(--yellow)}

/* landing-page niche chips + dual columns */
.niche-chips{display:flex;flex-wrap:wrap;gap:10px}
.niche-chip{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--ink);border-radius:999px;padding:8px 15px;font-weight:800;font-size:14px;box-shadow:var(--shadow-sm);transition:transform .1s}
.niche-chip:hover{background:var(--ink);color:var(--yellow);transform:translate(-2px,-2px)}
.niche-chip .n{font-size:12px;font-weight:700;color:#999}
.niche-chip:hover .n{color:var(--yellow-deep)}
.dual-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
/* Collapse to one column on phones AND tablets/foldables (≤900px) so the second
   column ("Top engagement") is never pushed off-screen. */
@media(max-width:900px){
  .dual-grid{grid-template-columns:1fr}
  .dual-grid .rank-row{gap:11px;padding:11px 13px}
  .dual-grid .rank-num{width:24px;font-size:16px}
  .dual-grid .rank-av{width:42px;height:42px}
  .dual-grid .rank-metric{max-width:42%;min-width:0;flex-shrink:0;text-align:right}
  .dual-grid .rank-metric .v{font-size:13px;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.15}
  .ranklist,.dual-grid{max-width:100%;overflow:hidden}
  .dual-grid .rank-main{min-width:0}
  .dual-grid .rank-main .sub{white-space:normal}
}

/* sparkline */
.spark{width:100%;height:60px;display:block}
.spark path{fill:none;stroke:var(--ink);stroke-width:3}
.spark .area{fill:var(--yellow-deep);opacity:.5;stroke:none}

/* ---------- filters / tabs ---------- */
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.tab{font-weight:800;border:1px solid var(--ink);background:#fff;padding:9px 16px;border-radius:10px;box-shadow:var(--shadow-sm)}
.tab.active{background:var(--ink);color:var(--yellow)}
.tab:hover{transform:translate(-2px,-2px)}

/* compare */
.compare-grid{display:grid;grid-template-columns:1fr 60px 1fr;gap:14px;align-items:start;margin-top:24px}
@media(max-width:720px){.compare-grid{grid-template-columns:1fr}}
.vs{display:grid;place-items:center;font-family:'Archivo';font-weight:900;font-size:26px;background:var(--ink);color:var(--yellow);border-radius:50%;width:54px;height:54px;align-self:center;margin:0 auto}
.cmp-pick{display:flex;gap:8px;margin-top:10px}
.cmp-pick input{flex:1;border:1px solid var(--ink);border-radius:10px;padding:10px 12px;font-weight:600}
.cmp-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed var(--ink);font-weight:700}
.win{color:#0a8f3c}

/* misc */
.empty{background:#fff;border:1px dashed var(--ink);border-radius:var(--radius);padding:40px;text-align:center;font-weight:700}
.adslot{background:#fff;border:1px dashed var(--ink);border-radius:var(--radius);padding:14px;text-align:center;color:#888;font-weight:700;margin:26px 0;min-height:90px;display:grid;place-items:center}
.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-weight:700;font-size:13px;margin-top:18px;color:#333}
.crumbs a{display:inline-flex;align-items:center;gap:5px;color:#5a5a3a}
.crumbs a svg{vertical-align:-2px}
.crumbs a:hover{text-decoration:underline}
.crumb-sep{color:#000;opacity:.32;font-weight:900}
.crumb-current{font-weight:900;color:var(--ink);max-width:50vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* footer */
.site-footer{background:var(--ink);color:#eee;margin-top:60px;border-top:1px solid var(--yellow)}
.footer-inner{padding:44px 20px 30px;display:grid;grid-template-columns:1.5fr 2fr;gap:44px}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:13px;max-width:380px}
.footer-logo{display:flex;align-items:center;gap:10px;font-family:'Archivo';font-weight:900;font-size:20px;color:#fff}
.footer-logo .logo-mark{width:30px;height:30px;font-size:18px;box-shadow:2px 2px 0 rgba(255,224,0,.35)}
.footer-logo-tx b{color:var(--yellow)}
.footer-tag{font-size:13.5px;color:#b9b9b9;line-height:1.6;margin:0}
.footer-cta{display:inline-block;background:var(--yellow);color:var(--ink);font-family:'Archivo';font-weight:800;font-size:14px;padding:9px 16px;border-radius:9px;box-shadow:3px 3px 0 rgba(255,224,0,.3);transition:transform .08s,box-shadow .08s}
.footer-cta:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 rgba(255,224,0,.45)}
.footer-contact{font-size:13px;color:#9a9a9a;margin:0}
.footer-contact a{color:var(--yellow);text-decoration:underline}
.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.footer-col h4{font-family:'Archivo';font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--yellow);margin:0 0 13px}
.footer-col a{display:block;color:#cdcdcd;font-weight:600;font-size:14px;padding:5px 0;transition:color .1s,transform .1s}
.footer-col a:hover{color:#fff;transform:translateX(3px)}
/* 1-Click Mass Collab Blast bar */
.blast-bar,.pro-cta{position:relative;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:16px;box-shadow:5px 5px 0 var(--yellow);padding:16px 20px;overflow:hidden}
.blast-bar{margin-bottom:18px}
.blast-bar::before,.pro-cta::before{content:"";position:absolute;top:0;left:0;width:7px;height:100%;background:var(--yellow)}
.blast-bar>div,.pro-cta>div{flex:1;min-width:210px;padding-left:6px}
.blast-bar b,.pro-cta b{display:block;color:var(--yellow);font-family:'Archivo',sans-serif;font-weight:900;font-size:1.05rem;line-height:1.2;margin-bottom:4px}
.blast-bar .cta-sub,.pro-cta .cta-sub{display:block;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.74);line-height:1.45}
.blast-bar .btn.primary,.pro-cta .btn.primary{background:var(--yellow);color:var(--ink);border:1px solid var(--yellow);font-weight:900;white-space:nowrap;flex-shrink:0;box-shadow:3px 3px 0 rgba(255,255,255,.22);transition:transform .1s ease,box-shadow .1s ease}
.blast-bar .btn.primary:hover,.pro-cta .btn.primary:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 rgba(255,255,255,.32)}
@media(max-width:560px){.blast-bar .btn.primary,.pro-cta .btn.primary{width:100%}}
.blast-toolbar{display:flex;justify-content:flex-end;margin-bottom:6px}
.bl-toggle{background:none;border:none;font-weight:800;font-size:12.5px;color:#0E0E0E;text-decoration:underline;cursor:pointer;padding:0}
.blast-list{max-height:46vh;overflow-y:auto;border:1px solid var(--ink);border-radius:10px}
.blast-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #f0f0f0;cursor:pointer;font-weight:700}
.blast-row:last-child{border-bottom:0}
.blast-row input{width:18px;height:18px;flex:none;accent-color:#0E0E0E}
.blast-row img{width:34px;height:34px;border-radius:50%;object-fit:cover;background:var(--cream);flex:none}
.blast-row .bl-nm{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.blast-row .bl-sub{font-size:12px;color:#777;font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:4px}
/* 1-Click Blast — compose-modal polish: live "N selected", row hover/checked states, disabled submit */
.blast-toolbar{justify-content:space-between}
.blast-sel{font-size:12.5px;font-weight:700;color:#8f8f78}
.blast-sel b{color:var(--ink);font-weight:900}
.blast-row{transition:background .12s ease,opacity .12s ease}
.blast-row:hover{background:var(--cream)}
.blast-row:has(input:checked){background:#FFFDF5}
.blast-row:not(:has(input:checked)){opacity:.55}
.blast-list{scrollbar-width:thin}
.btn.primary.big:disabled,.btn.primary.big.is-disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none;pointer-events:none}
/* 1-Click Blast — success confirmation modal */
.blast-done-card{max-width:440px;text-align:center}
.blast-done-badge{width:62px;height:62px;margin:2px auto 12px;border-radius:50%;background:var(--yellow);border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:30px;box-shadow:4px 4px 0 var(--ink);animation:blastPop .32s cubic-bezier(.2,1.3,.5,1) both}
@keyframes blastPop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
.blast-done-title{text-align:center;margin:0 0 10px}
.blast-done-lead{font-size:15px;font-weight:700;color:var(--ink);line-height:1.5;margin:0 0 10px}
.blast-done-note{font-size:13px;font-weight:600;color:#8f8f78;line-height:1.45;margin:0 0 18px}
.blast-done-cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.blast-done-cta .btn{min-width:130px}
@media(prefers-reduced-motion:reduce){.blast-done-badge{animation:none}}
/* UGC jobs board */
.job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.job-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--ink);padding:18px;min-width:0}
.job-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;min-width:0}
.job-title{font-size:17px;margin:0;line-height:1.25;min-width:0;overflow-wrap:anywhere}
/* Long German compound words / company URLs must wrap, not force the card past the viewport. */
.job-desc,.job-meta{overflow-wrap:anywhere}
/* Phones: single column with a 0 floor (not the 300px min above), so a card never exceeds the screen. */
@media(max-width:600px){.job-grid{grid-template-columns:minmax(0,1fr)}}
.job-src{flex:none;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:var(--cream);border:1px solid var(--ink);border-radius:20px;padding:2px 9px}
.job-meta{font-size:12.5px;color:#666;font-weight:600}
.job-desc{font-size:13px;color:#444;font-weight:500;line-height:1.5;margin:2px 0 0}
.job-tags{display:flex;flex-wrap:wrap;gap:6px}
.job-tag{font-size:11px;font-weight:700;background:var(--cream);border:1px solid var(--ink);border-radius:8px;padding:2px 8px}
.job-cta{margin-top:auto;display:flex;align-items:center;gap:12px;padding-top:6px}
.job-link{font-weight:700;font-size:13px;color:#0E0E0E;text-decoration:underline}
@media(max-width:560px){.job-grid{grid-template-columns:1fr}}
/* Admin sponsor-pitch detail cards */
.pitch-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.pitch-item{border:1px solid var(--ink);border-radius:12px;background:#fff;box-shadow:3px 3px 0 var(--ink);overflow:hidden;transition:box-shadow .12s ease}
.pitch-item:hover{box-shadow:5px 5px 0 var(--ink)}
.pitch-sum{cursor:pointer;display:flex;align-items:center;gap:11px;padding:11px 15px;font-size:14.5px;list-style:none}
.pitch-sum::-webkit-details-marker{display:none}
.pitch-sum::before{content:"▸";font-weight:900;flex:none;color:#999;transition:transform .12s ease}
.pitch-item[open] .pitch-sum::before{transform:rotate(90deg);color:var(--ink)}
.pitch-item[open] .pitch-sum{border-bottom:1px solid var(--ink);background:var(--cream)}
.ps-av{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--ink);background:var(--cream)}
.ps-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;text-align:left}
.ps-line{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ps-arrow{color:#bbb;margin:0 2px}
.ps-sub{display:flex;align-items:center;gap:5px;font-size:12.5px;color:#8a8a8a;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ps-sub svg{vertical-align:-2px;flex:none}
.ps-prev{overflow:hidden;text-overflow:ellipsis;font-weight:500}
.pitch-sum .ps-meta{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:1px;text-align:right}
.ps-amt{font-family:'Archivo',sans-serif;font-weight:900;font-size:15px;letter-spacing:-.3px}
.ps-time{font-size:11.5px;color:#999;font-weight:700;white-space:nowrap}
.pitch-detail{padding:14px 16px}
.pd-offer{background:var(--cream);border:1px solid var(--ink);border-radius:10px;padding:9px 13px;margin-bottom:14px}
.pd-offer .pd-row{margin-bottom:3px}
.pd-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:680px){.pd-cols{grid-template-columns:1fr}}
.pd-h{font-weight:900;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;color:#8a8a6a;margin-bottom:6px}
.pd-row{font-size:13.5px;font-weight:600;color:#333;margin-bottom:5px;line-height:1.4}
.pd-msg{background:var(--cream);border:1px solid var(--ink);border-radius:10px;padding:12px 14px;font-size:14px;line-height:1.55;color:#1f1f1f;white-space:pre-wrap;font-weight:500}
/* Admin collapsible section */
.admin-summary{cursor:pointer;display:flex;align-items:center;gap:10px;flex-wrap:wrap;list-style:none;padding:4px 0}
.admin-summary::-webkit-details-marker{display:none}
.admin-summary::before{content:"▸";font-weight:900;font-size:18px;color:var(--ink)}
details[open]>.admin-summary::before{content:"▾"}
.admin-summary h2{font-size:1.6rem}
/* Dashboard 2-column layout */
.dash-2col{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}
.dash-main{min-width:0}
.dash-side{position:sticky;top:88px;display:flex;flex-direction:column;gap:22px;min-width:0}
.dash-side .panel{margin-bottom:0}
/* Cookie consent banner (EEA/UK) */
.cookie-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:400;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;max-width:1000px;margin:0 auto;background:#fff;border:1px solid var(--ink);border-radius:14px;padding:14px 18px}
.cookie-banner[hidden]{display:none}
.cookie-banner .cb-text{flex:1;min-width:240px;font-size:13.5px;line-height:1.5;color:#333}
.cookie-banner .cb-text b{display:block;font-size:15px;color:var(--ink);margin-bottom:2px}
.cookie-banner .cb-text a{text-decoration:underline}
.cookie-banner .cb-actions{display:flex;gap:8px;flex-shrink:0}
.cookie-banner .cb-actions .btn{padding:9px 16px;font-size:14px}
@media(max-width:560px){.cookie-banner{flex-direction:column;align-items:stretch;gap:12px}.cookie-banner .cb-actions{justify-content:stretch}.cookie-banner .cb-actions .btn{flex:1}}

@media(max-width:900px){
  /* Single column, and unwrap both columns (display:contents) so every panel becomes a
     direct flex item of .dash-2col and can be ordered into one explicit mobile sequence. */
  .dash-2col{display:flex;flex-direction:column;gap:16px;align-items:stretch}
  .dash-main,.dash-side{display:contents}
  /* Default order:50 so any panel we don't explicitly place lands in a sane middle spot
     (never jumps to the very top, which is order:0). All specific rules below are prefixed
     with .dash-2col so they share this rule's specificity and win by source order. */
  .dash-2col .panel{margin-bottom:0;min-width:0;order:50}
  /* minmax(0,1fr) removes the min-content floor and .pod-card min-width:0 lets the card
     shrink, so the podcast card can't push wider than the screen on mobile. */
  .pod-cards{grid-template-columns:minmax(0,1fr)}
  .pod-card{min-width:0}
  /* Mobile section order (requested) */
  .dash-2col .wallet-panel{order:1}
  .dash-2col #yourchannel{order:2}
  .dash-2col #deals{order:3}
  .dash-2col .msg-panel{order:4}
  .dash-2col #ugc{order:5}
  .dash-2col #podcast{order:6}
  .dash-2col #collabs{order:7}
  .dash-2col #sponsors{order:8}
  .dash-2col .boost-card{order:9}
  .dash-2col .refer-panel{order:10}
  .dash-2col #team{order:11}
  .dash-2col #viewers{order:12}
  /* Sections not in the requested list — kept after it, before the CTA buttons */
  .dash-2col .todo-panel{order:13}
  .dash-2col #morelistings{order:14}
  .dash-2col #watchlist{order:15}
  .dash-2col .dash-help{order:99}   /* contact / feedback buttons always last on mobile */
}
@media(max-width:560px){.team-invite{flex-wrap:wrap}.team-invite-email{min-width:0;flex-basis:100%}}
/* Boost card (dashboard) — the monetization CTA, intentionally bolder than other panels */
.boost-card{border:1px solid var(--ink)}
.boost-sell{background:linear-gradient(180deg,#FFF3B8 0%,#FFFDF3 130px);text-align:center}
.boost-hero{font-size:42px;line-height:1;margin:2px 0 8px}
html.motion .boost-hero{animation:boostFloat 3s ease-in-out infinite}
@keyframes boostFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.boost-title{font-size:22px;font-weight:900;line-height:1.15;margin:0 0 6px}
.boost-sub{font-size:14px;font-weight:600;color:#444;margin:0 auto 14px;line-height:1.45;max-width:34ch}
.boost-benefits{list-style:none;margin:0 0 14px;padding:0;text-align:left;display:flex;flex-direction:column;gap:9px}
.boost-benefits li{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;font-weight:600;line-height:1.4}
.boost-benefits li>span:first-child{flex:0 0 20px;font-size:16px;line-height:1.25;text-align:center}
.boost-price{display:flex;align-items:baseline;justify-content:center;gap:6px;margin:0 0 12px}
.bp-from,.bp-day{font-size:13px;font-weight:700;color:#8a8a70}
.bp-amt{font-size:30px;font-weight:900;color:var(--ink);letter-spacing:-1px}
.boost-fine{font-size:11px;color:#999;margin:9px 0 0;font-weight:600}
.boost-live{border-color:#0a8f3c}
.boost-stats{display:flex;gap:8px}
.boost-stat{flex:1;min-width:0;border:1px solid #eee;border-radius:10px;padding:10px;text-align:center}
.bs-k{font-size:10.5px;font-weight:800;color:#777;text-transform:uppercase;letter-spacing:.03em}
.bs-v{font-size:19px;font-weight:900;margin-top:2px}
/* /boost page — package selector */
.boost-pkgs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:18px 0 18px}
.boost-pkg{position:relative;border:1px solid var(--ink);border-radius:14px;padding:18px 12px 15px;cursor:pointer;text-align:center;background:#fff;transition:background .12s,transform .12s}
.boost-pkg:hover{background:#fffdf3;transform:translateY(-2px)}
.boost-pkg:has(input:checked){background:#FFF3B8;box-shadow:inset 0 0 0 2px var(--ink)}
.boost-pkg input{position:absolute;top:11px;left:11px;accent-color:#0E0E0E}
.bpk-badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--yellow);font-size:10px;font-weight:900;padding:3px 11px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.bpk-badge.best{background:#0a8f3c;color:#fff}
.bpk-price{font-size:27px;font-weight:900;letter-spacing:-1px;margin-top:4px}
.bpk-days{font-weight:800;margin-top:2px}
.bpk-day{font-size:12px;color:#8a8a70;font-weight:600;margin-top:3px}
.bpk-save{display:inline-block;margin-top:8px;font-size:11px;font-weight:800;color:#0a7d2c;background:#e4f8ea;border-radius:20px;padding:2px 9px}
.boost-pay{display:flex;flex-direction:column;gap:10px}
.boost-pay .btn{width:100%;text-align:center}
/* Nicely styled native <select> — custom chevron, consistent with the brand. (The open
   option list itself is drawn by the OS and can't be CSS-styled without a JS combobox.) */
.styled-select{position:relative;display:block}
.styled-select select{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;
  padding:12px 42px 12px 14px;border:1px solid var(--ink);border-radius:12px;background:#fff;
  font-size:15px;font-weight:600;font-family:inherit;color:var(--ink);cursor:pointer;line-height:1.3}
.styled-select select:hover{background:#fffdf3}
.styled-select select:focus{outline:none;box-shadow:0 0 0 3px rgba(255,224,0,.55);border-color:var(--ink)}
.styled-select::after{content:"";position:absolute;right:16px;top:50%;width:9px;height:9px;
  border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);
  transform:translateY(-72%) rotate(45deg);pointer-events:none}
/* Searchable country combobox (custom, so the option list is fully brand-styled) */
.country-combo{position:relative}
.cc-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;
  padding:12px 14px;border:1px solid var(--ink);border-radius:12px;background:#fff;font-size:15px;
  font-weight:600;font-family:inherit;color:var(--ink);cursor:pointer;text-align:left;box-sizing:border-box}
.cc-trigger:hover{background:#fffdf3}
.cc-trigger:focus,.cc-trigger[aria-expanded="true"]{outline:none;box-shadow:0 0 0 3px rgba(255,224,0,.55)}
.cc-current{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cc-chevron{flex:none;width:9px;height:9px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transform:rotate(45deg);margin-top:-3px;transition:transform .15s}
.cc-trigger[aria-expanded="true"] .cc-chevron{transform:rotate(-135deg);margin-top:2px}
.cc-panel{position:absolute;z-index:60;left:0;right:0;top:calc(100% + 6px);background:#fff;
  border:1px solid var(--ink);border-radius:14px;overflow:hidden}
.cc-panel[hidden]{display:none}
.cc-search-wrap{padding:10px;border-bottom:1px solid #f0ecd8}
.cc-search{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--ink);border-radius:10px;
  font-size:15px;font-family:inherit;font-weight:600}
.cc-search:focus{outline:none;box-shadow:0 0 0 3px rgba(255,224,0,.55)}
.cc-list{list-style:none;margin:0;padding:6px;max-height:300px;overflow-y:auto}
.cc-opt{padding:10px 12px;border-radius:9px;font-size:15px;font-weight:600;cursor:pointer;line-height:1.3}
.cc-opt:hover,.cc-opt.cc-active{background:var(--yellow)}
.cc-opt[aria-selected="true"]{font-weight:800}
.cc-opt[aria-selected="true"]::after{content:" ✓";color:#0a7d2c}
.cc-empty{padding:16px 14px;text-align:center;color:#888;font-weight:600;font-size:14px}
.wallet-panel{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:6px 6px 0 var(--yellow)}
/* "set up payouts" CTA on the dark wallet panel — a clear prompt, distinct from Add funds */
.wallet-setup-cta{display:flex;align-items:center;gap:11px;width:100%;margin-top:12px;padding:11px 13px;border:1px solid var(--yellow);border-radius:13px;background:rgba(255,224,0,.10);color:var(--yellow);text-decoration:none;transition:background .12s,transform .12s}
.wallet-setup-cta:hover{background:rgba(255,224,0,.2);transform:translateY(-1px)}
.wallet-setup-cta .wsc-ic{font-size:21px;flex:none;line-height:1}
.wallet-setup-cta .wsc-tx{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1;line-height:1.25}
.wallet-setup-cta .wsc-tx b{font-family:'Archivo',sans-serif;font-weight:900;font-size:14.5px;color:var(--yellow)}
.wallet-setup-cta .wsc-tx span{font-size:11.5px;font-weight:600;color:#b9b58a}
.wallet-setup-cta .wsc-arrow{font-weight:900;font-size:17px;flex:none;color:var(--yellow)}
.wallet-panel .section-head h2{color:#fff}
.wallet-panel .see-all{color:var(--ink)}
.wallet-bal{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}
.wallet-bal .wb-label{font-size:12px;font-weight:700;color:#bbb;text-transform:uppercase;letter-spacing:.05em}
.wallet-bal .wb-amt{font-size:34px;font-weight:900;color:var(--yellow);line-height:1.05}
.wallet-actions{display:flex;gap:8px}
.wallet-actions .btn{flex:1;justify-content:center;text-align:center;white-space:nowrap;padding:9px 8px;border-color:#0E0E0E;box-shadow:none}
.wallet-actions .btn.primary{background:var(--yellow);color:var(--ink)}
.wallet-actions .btn:not(.primary){background:#fff;color:var(--ink)}
.wallet-actions .btn:hover{transform:translate(-1px,-1px);box-shadow:2px 2px 0 rgba(255,255,255,.45)}
.wallet-panel .note{background:#2a2a2a;border-color:#000;color:#ddd}
/* Listing team panel */
.team-listing{border:1px solid var(--ink);border-radius:12px;padding:13px 15px;margin-bottom:12px;background:#fff}
.team-listing-head{font-size:15px;margin-bottom:9px}
.team-members{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:11px}
.team-member{display:inline-flex;align-items:center;gap:6px;background:var(--cream);border:1px solid var(--ink);border-radius:20px;padding:4px 11px;font-size:13px;font-weight:700}
.tm-status{font-size:10.5px;font-weight:800;color:#b8860b;background:#fff;border:1px solid currentColor;border-radius:10px;padding:0 7px}
.tm-status.ok{color:#0a8f3c}
.tm-x{border:none;background:none;color:#c00;font-size:17px;line-height:1;cursor:pointer;padding:0 1px;font-weight:900}
.team-invite{display:flex;gap:8px;flex-wrap:wrap}
.team-invite-email{flex:1;min-width:200px;border:1px solid var(--ink);border-radius:9px;padding:8px 11px;font-weight:600;font-size:14px;font-family:inherit}
.pc-upsell-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:#fffdf0;border:1px solid #caa400;border-radius:12px;padding:13px 15px}
.trust-strip{border-top:1px solid #2b2b2b;background:#141414}
.trust-strip-in{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:16px 0}
.trust-badge{display:inline-flex;align-items:center;gap:5px;background:#1f1f1f;border:1px solid var(--yellow);border-radius:20px;padding:6px 13px;font-size:12.5px;font-weight:800;color:#fff;white-space:nowrap}
.footer-affil{border-top:1px solid #2b2b2b;background:#141414}
.footer-affil-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;padding:13px 20px;text-decoration:none}
.affil-badge{display:inline-flex;align-items:center;gap:6px;background:var(--yellow);color:#0E0E0E;border:1px solid var(--yellow);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:900;white-space:nowrap}
.affil-tx{font-size:12.5px;color:#c9c9c9;font-weight:700}
.affil-tx b{color:#fff;font-weight:800}
.footer-social{display:flex;gap:9px;margin:14px 0 0}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#1f1f1f;border:1px solid #3a3a3a;color:#bbb;transition:background .12s,color .12s,border-color .12s,transform .12s}
.footer-social a:hover{background:var(--yellow);border-color:var(--yellow);color:var(--ink);transform:translateY(-2px)}
/* YouTube tile: the official full-colour mark is used as-is (never recoloured/cropped) — the tile
   is a wider pill so the 28x20 mark fits at full size. ToS III.F.2. */
.footer-social a.fs-yt{width:auto;min-width:44px;padding:0 8px;border-radius:22px;background:#fff;border-color:#fff}
.footer-social a.fs-yt:hover{background:#fff;border-color:var(--yellow)}
.trust-link{display:contents;text-decoration:none;color:inherit}
.trust-google{gap:8px;text-decoration:none;cursor:pointer;transition:background .12s,color .12s,transform .12s;margin:12px 0 2px;align-self:flex-start}
.trust-google svg{flex:0 0 15px;background:#fff;border-radius:50%;padding:2px;box-sizing:content-box}
.trust-google:hover{background:var(--yellow);color:var(--ink);transform:translateY(-1px)}
/* Listing pages: the badge rides the h1 name row, pushed to the right edge. Restyled as a sibling
   of the .hdr-badge pills it sits beside (Rising Star / Claimed / Pro) — white ground, hairline
   ink border, hard 2px offset shadow, Archivo 900 — instead of the footer's dark-on-dark treatment,
   which reads as a black blob on the yellow page. The Google G takes the 18px icon circle. */
.profile-id h1 .pid-prefsrc{
  margin:0 0 0 auto;align-self:center;flex:0 0 auto;
  height:27px;padding:0 12px 0 5px;gap:7px;
  background:#fff;color:var(--ink);border:1px solid var(--ink);border-radius:999px;
  box-shadow:2px 2px 0 var(--ink);
  font-family:Archivo,sans-serif;font-weight:900;font-size:12.5px;letter-spacing:.2px;line-height:1;
  transition:transform .12s,box-shadow .12s;
}
.profile-id h1 .pid-prefsrc svg{flex:none;width:12px;height:12px;padding:3px;background:#fff;border:1px solid var(--ink);border-radius:50%;box-sizing:content-box}
.profile-id h1 .pid-prefsrc:hover{background:#fff;color:var(--ink);transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink)}
@media(max-width:600px){.profile-id h1 .pid-prefsrc{font-size:11.5px;height:25px;padding:0 10px 0 4px}}
.footer-bottom{border-top:1px solid #2b2b2b}
.footer-bottom-in{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 20px}
.copyright{font-size:12px;color:#8a8a8a;margin:0;font-weight:600}
.footer-note{font-size:12px;color:#999;margin:0}
@media(max-width:440px){.footer-cols{grid-template-columns:repeat(2,1fr);gap:18px}}

/* Primary nav collapses to the hamburger drawer below 1024px — so a crowded signed-in / admin bar
   never wraps mid-label or overflows; the drawer lists every item cleanly on one tap. */
@media(max-width:1024px){
  .nav-toggle{display:flex}
  .header-search .search{padding:12px 14px}
  .header-inner{gap:6px;padding:12px 14px}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;
    gap:2px;background:var(--ink);border-top:1px solid var(--yellow);padding:8px;z-index:55;flex-wrap:nowrap;
    box-shadow:0 10px 24px rgba(0,0,0,.35)}
  body.nav-open .main-nav{display:flex}
  .main-nav a{padding:12px 14px;border-radius:8px;font-size:15px;white-space:normal}
  .nav-group{display:block}
  .nav-group-btn{display:block;padding:12px 14px;opacity:.7;font-size:12px;text-transform:uppercase;letter-spacing:.5px;pointer-events:none;white-space:normal}
  .nav-group-btn .caret{display:none}
  .nav-menu{display:flex !important;position:static;border:none;box-shadow:none;background:transparent;padding:0 0 0 8px;min-width:0;border-radius:0}
  .main-nav a.nav-cta{margin-top:4px;text-align:center}
}
@media(max-width:680px){
  .footer-inner{grid-template-columns:1fr;gap:30px;padding:34px 16px 24px}
  .footer-cols{grid-template-columns:repeat(3,1fr)}
  .footer-bottom-in{flex-direction:column;align-items:flex-start;gap:8px}
  .profile-grid{grid-template-columns:1fr}
  /* tighten rank rows so a wide metric (e.g. an earnings range) can't crush the name */
  .rank-row{gap:11px;padding:11px 13px}
  .rank-num{width:24px;font-size:16px}
  .rank-av{width:42px;height:42px}
  .rank-metric{max-width:44%}
  .rank-metric .v{font-size:14px;white-space:normal;overflow-wrap:anywhere;line-height:1.15}
}

/* ===== Lead lists + outreach pipeline (CRM-lite) ===== */
.list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:6px}
.list-card{display:block;background:#fff;border:1px solid var(--ink);border-radius:14px;padding:16px;box-shadow:5px 5px 0 var(--ink);text-decoration:none;color:inherit;transition:transform .08s}
.list-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}
.lc-name{font-family:Archivo,sans-serif;font-weight:900;font-size:1.15rem;margin-bottom:4px}
.lc-meta{font-weight:700;font-size:.9rem;color:#444;margin-bottom:10px}
.lc-pipe{display:flex;flex-wrap:wrap;gap:6px}
.st-pill{display:inline-block;border:1px solid var(--ink);border-radius:20px;padding:2px 9px;font-weight:800;font-size:.74rem;background:#fff;white-space:nowrap}
.st-new{background:#eee}
.st-sent{background:#cfe8ff}
.st-reply{background:#d9e8ff}
.st-nego{background:#ffe7a8}
.st-won{background:#bff0c9}
.st-passed{background:#f2d4d4}

.lead-item{background:#fff;border:1px solid var(--ink);border-radius:12px;padding:14px;box-shadow:4px 4px 0 var(--ink);margin-bottom:14px}
.li-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.li-who{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;min-width:0}
.li-who img{width:46px;height:46px;border-radius:50%;object-fit:cover;flex-shrink:0}
.li-nm{display:block;font-weight:900;font-family:Archivo,sans-serif}
.li-sub{display:block;font-size:.82rem;color:#555;font-weight:600}
.li-contact .li-mail{font-weight:700;font-size:.84rem;text-decoration:none;border:1px solid var(--ink);background:var(--cream);border-radius:8px;padding:4px 9px;white-space:nowrap}
.li-contact .li-nomail{font-size:.8rem;color:#999;font-weight:600}
.li-edit{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.li-form{display:flex;gap:8px;align-items:center;flex:1;min-width:0}
.li-form input[name=notes]{flex:1;min-width:140px;border:1px solid var(--ink);border-radius:8px;padding:8px 10px;font-weight:600;font-size:14px}
.st-select{border:1px solid var(--ink);border-radius:8px;padding:8px 9px;font-weight:800;font-size:13px;cursor:pointer}
.st-select.st-won{background:#bff0c9}.st-select.st-nego{background:#ffe7a8}.st-select.st-reply{background:#d9e8ff}.st-select.st-sent{background:#cfe8ff}.st-select.st-passed{background:#f2d4d4}

/* add-to-list picker (creator page + discovery table) */
.addlist{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
.addlist select,.addlist input{border:1px solid var(--ink);border-radius:8px;padding:7px 9px;font-weight:700;font-size:13px;background:#fff}
.addlist.compact select,.addlist.compact input{border-width:1px;padding:5px 7px;font-size:12px;max-width:130px}
.addlist.compact .btn{padding:5px 9px;font-size:12px}
.row-menu{position:relative}
.row-menu summary{list-style:none;cursor:pointer}
.row-menu summary::-webkit-details-marker{display:none}
.menu-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:20;background:#fff;border:1px solid var(--ink);border-radius:12px;box-shadow:5px 5px 0 var(--ink);padding:12px;width:280px}
@media(max-width:640px){.li-form{flex-basis:100%}.menu-pop{right:auto;left:0}}

/* ===== Sponsor brand index (reverse lookup) ===== */
.brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-top:4px}
.brand-card{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;gap:9px;background:#fff;border:1px solid var(--ink);border-radius:14px;padding:18px 12px;box-shadow:4px 4px 0 var(--ink);text-decoration:none;color:inherit;transition:transform .08s}
.brand-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink);background:var(--cream)}
/* "Open to pitches" brands get a green lift so creators spot bookable brands at a glance. */
.brand-card--open{border-color:#0a8f3c;box-shadow:4px 4px 0 #0a8f3c}
.brand-card--open:hover{box-shadow:6px 6px 0 #0a8f3c;background:#f2fbf4}
.bc-name{font-weight:800;font-family:Archivo,sans-serif;max-width:100%;line-height:1.18;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.bc-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:5px 12px;margin-top:1px}
.bc-stat{font-weight:800;font-size:.76rem;color:#3a3a2c;white-space:nowrap;font-variant-numeric:tabular-nums}
.bc-open{font-weight:800;font-size:.64rem;letter-spacing:.02em;color:#0a6b2c;background:#d8f5df;border:1px solid #0a8f3c;border-radius:20px;padding:2px 9px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.bc-n{font-weight:800;font-size:.74rem;background:var(--ink);color:#fff;border-radius:20px;padding:2px 10px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.bc-reach{font-weight:700;font-size:.72rem;color:#6b6b52;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.bc-app{font-weight:800;font-size:.72rem;color:#0E0E0E;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.bc-rev{font-weight:800;font-size:.68rem;letter-spacing:.01em;padding:2px 10px;border-radius:20px;border:1px solid var(--ink);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;line-height:1.4}
.bc-rev-pos{background:#d8f5df;color:#0a6b2c}
.bc-rev-mix{background:#fdf0c8;color:#856200}
.bc-rev-neg{background:#fbdcdc;color:#a51111}

/* ===== Landing "toolkit for brands & agencies" ===== */
.toolkit{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:4px}
.tool-card{display:flex;flex-direction:column;gap:5px;background:#fff;border:1px solid var(--ink);border-radius:14px;padding:16px;box-shadow:5px 5px 0 var(--ink);text-decoration:none;color:inherit;transition:transform .08s}
.tool-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink);background:var(--cream)}
.tc-ic{font-size:1.7rem;line-height:1}
.tc-t{font-family:Archivo,sans-serif;font-weight:900;font-size:1.04rem}
.tc-d{font-weight:600;font-size:.84rem;color:#444;line-height:1.35}

/* ===== Cross-platform "Also on YouTube/Twitch" link card ===== */
.xplatform{display:flex;align-items:center;gap:14px;margin-top:18px;padding:13px 16px;background:#fff;
  border:1px solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 var(--ink);text-decoration:none;color:inherit;transition:transform .08s}
.xplatform:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink);background:var(--cream)}
.xplatform.xp-twitch{border-color:var(--purple);box-shadow:4px 4px 0 var(--purple)}
.xplatform.xp-twitch:hover{box-shadow:6px 6px 0 var(--purple)}
.xp-ic{font-size:1.5rem;line-height:1;flex-shrink:0}
.xp-main{flex:1;min-width:0}
.xp-lead{display:block;font-family:Archivo,sans-serif;font-weight:900;font-size:.98rem}
.xp-sub{display:block;font-size:.84rem;font-weight:600;color:#444;overflow:hidden;text-overflow:ellipsis}
.xp-go{flex-shrink:0;font-weight:800;font-size:.9rem;white-space:nowrap}

/* claimed/official listing badge */
.claimed-badge{display:inline-block;font-size:13px;font-weight:800;background:#0a8f3c;color:#fff;border:1px solid var(--ink);border-radius:20px;padding:1px 10px;vertical-align:middle;box-shadow:2px 2px 0 var(--ink)}
.pro-badge{display:inline-block;font-size:13px;font-weight:900;background:var(--yellow);color:var(--ink);border:1px solid var(--ink);border-radius:20px;padding:1px 10px;vertical-align:middle;box-shadow:2px 2px 0 var(--ink);font-family:Archivo,sans-serif}
.pro-badge.sm{font-size:10px;padding:0 7px;box-shadow:1px 1px 0 var(--ink);margin-left:4px}
/* audience credibility (Pro) */
.cred-row{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.cred-score{flex:none;width:122px;text-align:center;border:1px solid var(--ink);border-radius:14px;padding:14px 8px 12px;box-shadow:4px 4px 0 var(--ink);background:#fff}
.cred-score .cs-n{font-family:Archivo,sans-serif;font-weight:900;font-size:2.7rem;line-height:1}
.cred-score .cs-d{font-weight:700;color:#999;font-size:1rem}
.cred-score .cs-l{display:block;margin-top:8px;color:#fff;font-weight:800;font-size:.76rem;border:1px solid var(--ink);border-radius:20px;padding:1px 8px}
.cred-bits{flex:1;min-width:220px;list-style:none;display:flex;flex-direction:column;gap:8px;margin:0;padding:0}
.cred-bits li{font-weight:600;font-size:.9rem;line-height:1.4;padding-left:22px;position:relative}
.cred-bits li::before{position:absolute;left:2px;font-weight:900}
.cred-bits li.cb-good::before{content:'✓';color:#0a8f3c}
.cred-bits li.cb-ok::before{content:'•';color:#b8860b}
.cred-bits li.cb-bad::before{content:'!';color:#FF3B30}
.cred-locked{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.cred-locked-blur{font-family:Archivo,sans-serif;font-weight:900;font-size:2.4rem;color:#bbb;filter:blur(5px);user-select:none;flex:none}
.cred-locked-blur span{font-size:1rem}
/* media kit (Pro) */
.mediakit .mk-hero{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:18px}
.mediakit .mk-hero.has-banner{background-size:cover;background-position:center;border:1px solid var(--ink);border-radius:16px;padding:22px;box-shadow:5px 5px 0 var(--ink);color:#fff}
.mk-hero.has-banner .mk-id h1,.mk-hero.has-banner .mk-meta,.mk-hero.has-banner .mk-handle{color:#fff}
.mk-hero.has-banner .mk-av{border:1px solid #fff}
.mk-book{margin-left:auto;flex:none}
@media(max-width:640px){.mk-book{margin-left:0;width:100%;text-align:center}}
.mk-av{width:96px;height:96px;border-radius:50%;box-shadow:4px 4px 0 var(--ink);object-fit:cover;flex:none}
.mk-id h1{font-size:1.9rem;margin:0}
.mk-meta{font-weight:700;color:#444;margin-top:4px}
.mk-handle{font-weight:600;color:#888}
.mk-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:18px}
.mk-stat{background:#fff;border:1px solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 var(--ink);padding:14px;text-align:center}
.mk-stat.earn{background:var(--yellow)}
.mk-stat .v{font-family:Archivo,sans-serif;font-weight:900;font-size:1.5rem;line-height:1}
.mk-stat .l{font-weight:700;font-size:.72rem;color:#555;text-transform:uppercase;letter-spacing:.04em;margin-top:4px}
.mk-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
@media(max-width:680px){.mk-cols{grid-template-columns:1fr}}
.mk-rate{font-family:Archivo,sans-serif;font-weight:900;font-size:1.8rem;color:var(--ink);margin-bottom:6px}
.mk-brands{display:flex;flex-wrap:wrap;gap:8px}
.mk-brand{font-weight:700;font-size:.85rem;background:var(--cream);border:1px solid var(--ink);border-radius:8px;padding:4px 10px}
.mk-vids{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.mk-vid{display:block;color:inherit;text-decoration:none}
.mk-vid img{width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--ink);border-radius:8px}
.mk-vid-t{font-weight:700;font-size:.82rem;margin-top:5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mk-vid-v{font-size:.75rem;color:#888;font-weight:600}
/* sponsor social channels */
.spon-social-reach{font-weight:700;font-size:.82rem;color:#444;margin-top:10px}
.spon-social-reach b{font-weight:900;color:var(--ink)}
.spon-social-n{font-weight:800;color:#6b6b52}
.spon-socials{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}
.spon-social{display:inline-flex;align-items:center;gap:5px;font-weight:700;font-size:.8rem;background:#fff;border:1px solid var(--ink);border-radius:8px;padding:4px 10px;color:var(--ink);box-shadow:2px 2px 0 var(--ink);transition:transform .08s}
.spon-social:hover{transform:translate(-1px,-1px);background:var(--cream)}
/* sponsor product showcase */
.spon-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.spon-product{display:block;color:inherit;text-decoration:none;border:1px solid var(--ink);border-radius:12px;overflow:hidden;background:#fff;box-shadow:3px 3px 0 var(--ink);transition:transform .08s,box-shadow .08s}
.spon-product:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.spon-product .sp-img{display:block;width:100%;aspect-ratio:1/1;background-size:cover;background-position:center;background-color:var(--cream);border-bottom:1px solid var(--ink)}
.spon-product .sp-nm{display:block;font-weight:700;font-size:.84rem;line-height:1.3;padding:8px 10px 2px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.spon-product .sp-price{display:block;font-family:Archivo,sans-serif;font-weight:900;font-size:.95rem;color:var(--ink);padding:0 10px 9px}

/* ===== Sponsor logos + sponsor listing page ===== */
.spon-logo-ph{display:inline-grid;place-items:center;background:var(--cream);color:var(--ink);font-family:Archivo,sans-serif;font-weight:900}
/* creator-page sponsor chips: logo + name */
.sponsor-chip{display:inline-flex;align-items:center;gap:7px}
.spon-chip-logo{width:18px;height:18px;border-radius:4px;object-fit:contain;background:#fff;flex:none}
.sponsor-chip .spon-logo-ph.spon-chip-logo{width:18px;height:18px;border-radius:4px;font-size:11px}
/* sponsors index cards: logo left + text */
.bc-logo{width:60px;height:60px;border-radius:13px;object-fit:contain;background:#fff;flex:none;padding:5px}
/* sponsor filter bar — neo-brutalist to match the site */
/* Row 1: full-width search. Row 2: the niche/influencer/reach selects share a row with the button. */
.sponsor-filter{display:flex;flex-direction:column;gap:11px}
/* search row — full width, leading magnifier */
.sf-search{position:relative;display:flex}
.sf-search-ic{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;line-height:1;pointer-events:none;opacity:.55}
.sponsor-filter input[type=text]{width:100%;border:1px solid var(--ink);border-radius:12px;padding:13px 16px 13px 46px;font-weight:600;font-size:15px;font-family:inherit;color:var(--ink);background:#fff;transition:box-shadow .1s,background .1s}
.sponsor-filter input[type=text]::placeholder{color:#9a9a7a;font-weight:500}
/* controls row — icon-prefixed selects with a custom chevron */
.sf-controls{display:flex;gap:9px;flex-wrap:wrap;align-items:stretch}
.sf-field{position:relative;flex:1 1 190px;min-width:158px;display:flex}
.sf-ic{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-size:13.5px;line-height:1;pointer-events:none;z-index:1;opacity:.7}
.sf-field select{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--ink);border-radius:12px;padding:12px 36px 12px 37px;font-weight:700;font-size:14px;font-family:inherit;color:var(--ink);background-color:#fff;cursor:pointer;transition:box-shadow .1s,background .1s;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230E0E0E' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;text-overflow:ellipsis}
.sf-field select:hover{background-color:var(--cream)}
/* tactile brutalist press on focus */
.sponsor-filter input[type=text]:focus,.sf-field select:focus{outline:none;background-color:var(--cream);box-shadow:3px 3px 0 var(--ink)}
.sf-go,.sf-clear{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
@media(max-width:640px){.sf-field{flex:1 1 calc(50% - 5px);min-width:0}.sf-go,.sf-clear{flex:1 1 100%}}
@media(max-width:380px){.sf-field{flex-basis:100%}}
.bc-logo.spon-logo-ph{font-size:18px}
.bc-text{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;width:100%}
/* landing "Top brands" logo chips */
.brand-logo-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.brand-logo-chip{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;background:#fff;border:1px solid var(--ink);border-radius:13px;padding:14px 10px;box-shadow:4px 4px 0 var(--ink);text-decoration:none;color:inherit;transition:transform .08s}
.brand-logo-chip:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink);background:var(--cream)}
.blc-logo{width:52px;height:52px;border-radius:11px;object-fit:contain;background:#fff;padding:4px}
.blc-logo.spon-logo-ph{font-size:22px}
.blc-name{font-weight:800;font-family:Archivo,sans-serif;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.blc-n{font-size:.72rem;font-weight:700;color:#666}
/* sponsor listing page header */
.sponsor-head{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.spon-logo-lg{width:90px;height:90px;border-radius:16px;object-fit:contain;background:#fff;border:1px solid var(--ink);box-shadow:5px 5px 0 var(--ink);padding:8px;flex:none}
.spon-logo-lg.spon-logo-ph{font-size:40px}
.sh-main h1{font-size:2rem;font-family:Archivo,sans-serif;font-weight:900;margin-bottom:6px}
.sh-meta{font-weight:700;color:#444;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
@media(max-width:560px){.spon-logo-lg{width:64px;height:64px}.sh-main h1{font-size:1.5rem}}
/* app-store showcase (Google Play / App Store / Steam) on a sponsor listing */
.app-sc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.app-sc-title{margin:0;display:flex;align-items:center;gap:10px;font-family:Archivo,sans-serif;font-weight:900;font-size:1.25rem}
.app-sc-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;border:1px solid var(--ink);font-size:15px;line-height:1;background:#fff;flex:none}
.app-store-gplay .app-sc-badge{background:#e6f4ea}
.app-store-appstore .app-sc-badge{background:#e6f0fb}
.app-store-steam .app-sc-badge{background:#e9ebf6}
.app-sc-cta{flex:0 0 auto;white-space:nowrap}
.app-sc-body{display:flex;gap:16px;align-items:center;background:var(--cream);border:1px solid var(--ink);border-radius:14px;padding:14px 16px}
.app-sc-icon{width:76px;height:76px;border-radius:18px;border:1px solid var(--ink);flex:none;object-fit:cover;background:#fff;box-shadow:3px 3px 0 var(--ink)}
.app-sc-info{min-width:0;flex:1}
.app-sc-name{font-weight:900;font-size:1.2rem;font-family:Archivo,sans-serif;line-height:1.12}
.app-sc-dev{font-size:13px;color:#6b6b52;font-weight:700;margin-top:2px}
.app-sc-pills{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}
.pill.pill-hi{background:var(--yellow);border-color:var(--ink)}
.pill.pill-live{background:#d9f7e0;border-color:#0a8f3c}
.app-sc-body.ad-body{display:block}
.ad-body p{margin:0;font-size:14px;line-height:1.55;color:#333;font-weight:600}
.app-sc-about{margin:15px 2px 0;font-size:14px;line-height:1.55;color:#333}
.app-sc-shots{display:flex;gap:10px;overflow-x:auto;margin:16px 0 0;padding-bottom:6px;-webkit-overflow-scrolling:touch}
.app-sc-shots img{height:180px;width:auto;border-radius:12px;border:1px solid var(--ink);flex:none;background:#f4f0e2;box-shadow:3px 3px 0 var(--ink)}
@media(max-width:560px){.app-sc-cta{flex:1 1 100%;text-align:center}.app-sc-body{gap:13px;padding:13px}.app-sc-icon{width:64px;height:64px}.app-sc-shots img{height:150px}}

/* ===== Modals (message compose / pro popup) ===== */
/* z-index above the fixed mobile tab bar (300) + share rail so an open modal — and its "Send
   proposal" button — is never covered; extra bottom padding clears the phone's home-gesture area. */
.sdb-modal-bg{display:none;position:fixed;inset:0;background:rgba(14,14,14,.55);z-index:500;padding:20px 20px calc(28px + env(safe-area-inset-bottom));overflow-y:auto}
.sdb-modal-bg.on{display:flex;align-items:flex-start;justify-content:center}
.sdb-modal{display:none;background:#fff;border:1px solid var(--ink);border-radius:16px;box-shadow:8px 8px 0 var(--ink);padding:24px;max-width:460px;width:100%;margin-top:8vh;position:relative}
/* Single-panel modals reveal their inner modal from .on alone (multi-panel modals toggle via JS) */
.sdb-modal-bg.modal-auto.on .sdb-modal{display:block}
/* Most-popular-video embed (YouTube listings) */
.yt-embed{position:relative;width:100%;aspect-ratio:16/9;border:1px solid var(--ink);border-radius:12px;overflow:hidden;box-shadow:4px 4px 0 var(--ink);background:#000}
.yt-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sdb-modal h3{font-family:Archivo,sans-serif;font-weight:900;font-size:1.4rem;margin-bottom:10px}
.sdb-modal p{font-weight:600;color:#444;margin-bottom:14px}
.sdb-x{position:absolute;top:12px;right:14px;background:none;border:none;font-size:26px;line-height:1;cursor:pointer;color:#888}
.modal-feat{list-style:none;display:flex;flex-direction:column;gap:7px;margin:0 0 18px;font-weight:600}
.sdb-modal .btn.big{width:100%}
/* Brand-setup nudge modal (dashboard) — two clear paths to a brand page */
.bsn-modal{max-width:480px}
.bsn-head{display:flex;align-items:center;gap:13px;margin:2px 0 0}
.bsn-tag{flex:none;width:46px;height:46px;border-radius:13px;background:var(--yellow);border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:23px}
.bsn-title{font-family:Archivo,sans-serif;font-weight:900;font-size:1.5rem;line-height:1.08;margin:0;color:var(--ink)}
.bsn-sub{font-weight:600;color:#5c5c4c;margin:14px 0 18px;font-size:14.5px;line-height:1.5}
.bsn-sub b{color:var(--ink);font-weight:800}
.bsn-opt{position:relative;border:1px solid #e7e3d3;border-radius:14px;padding:15px 16px 16px 52px;margin-bottom:12px;background:#fff}
.bsn-opt.is-primary{background:#FFFBEA;border-color:#efe6bf}
.bsn-num{position:absolute;left:14px;top:15px;width:27px;height:27px;border-radius:50%;background:var(--ink);color:var(--yellow);font-family:Archivo,sans-serif;font-weight:900;font-size:14px;display:flex;align-items:center;justify-content:center}
.bsn-opt h4{font-family:Archivo,sans-serif;font-weight:900;font-size:15.5px;margin:0 0 4px;color:var(--ink)}
.bsn-opt p{font-size:12.5px;color:#5c5c4c;font-weight:600;margin:0 0 11px;line-height:1.45}
.bsn-opt p b{color:var(--ink);font-weight:800}
.bsn-form{display:flex;gap:8px;align-items:stretch}
.bsn-search{position:relative;flex:1;min-width:0;display:block}
.bsn-search-ic{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#8a8a6a;pointer-events:none;transition:color .12s}
.bsn-search:focus-within .bsn-search-ic{color:var(--ink)}
.bsn-form input[type=text]{width:100%;box-sizing:border-box;border:1px solid #dcd8c6;border-radius:11px;padding:12px 14px 12px 40px;font-weight:600;font-size:14.5px;font-family:inherit;color:var(--ink);background:#fff;transition:box-shadow .12s,background .12s,border-color .12s}
.bsn-form input[type=text]::placeholder{color:#9a9a7a;font-weight:500}
.bsn-form input[type=text]:focus{outline:none;background:#FFFBEA;border-color:var(--yellow-deep);box-shadow:2px 2px 0 rgba(14,14,14,.14)}
.bsn-form .btn{flex:none;padding:12px 18px;white-space:nowrap;border:1px solid #dcd8c6;box-shadow:2px 2px 0 rgba(14,14,14,.12)}
.bsn-form .btn:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 rgba(14,14,14,.18);border-color:#cfcbb6}
.bsn-create{display:block;text-align:center;width:100%}
.bsn-later{display:block;width:100%;text-align:center;background:none;border:none;color:#8a8a72;font-weight:700;font-size:13.5px;padding:9px 4px 2px;margin-top:2px;cursor:pointer}
.bsn-later:hover{color:var(--ink);text-decoration:underline}
@media(max-width:460px){.bsn-form{flex-direction:column}.bsn-form .btn{width:100%}}

/* ===== Messaging (nav badge, inbox, thread) ===== */
.nav-msg{position:relative}
.nav-badge{display:inline-block;background:var(--red);color:#fff;font-size:11px;font-weight:800;border-radius:20px;padding:0 6px;min-width:17px;text-align:center;vertical-align:top}
.msg-list{display:flex;flex-direction:column;border:1px solid var(--ink);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#fff}
.msg-row{display:flex;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid var(--ink);text-decoration:none;color:inherit}
.msg-row:last-child{border-bottom:none}
.msg-row:hover{background:var(--cream)}
.msg-row.unread{background:#fffbe6}
.msg-av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}
.msg-main{flex:1;min-width:0}
.msg-nm{font-weight:800;font-family:Archivo,sans-serif;display:flex;align-items:center;gap:7px}
.msg-prev{font-size:.85rem;color:#666;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.msg-time{font-size:.75rem;font-weight:700;color:#999;white-space:nowrap}
.msg-dot{width:9px;height:9px;border-radius:50%;background:var(--red);display:inline-block}
.msg-thread{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}
.msg{max-width:80%;border:1px solid var(--ink);border-radius:14px;padding:11px 14px}
.msg.mine{align-self:flex-end;background:var(--yellow)}
.msg.theirs{align-self:flex-start;background:#fff}
.msg-meta{font-size:.72rem;font-weight:800;color:#666;margin-bottom:4px}
.msg-body{font-weight:600;white-space:pre-wrap;word-break:break-word}
.msg-reply{display:flex;gap:10px;align-items:flex-start}
.msg-reply textarea{flex:1;border:1px solid var(--ink);border-radius:10px;padding:11px 13px;font-weight:600;font-family:inherit;font-size:15px;resize:vertical}

/* ===== Claim page (conversion) ===== */
.claim-hero{text-align:center;margin-bottom:20px}
.claim-kicker{display:inline-block;background:var(--ink);color:var(--yellow);font-weight:800;font-size:12px;letter-spacing:.5px;text-transform:uppercase;border-radius:20px;padding:4px 12px;margin-bottom:12px}
.claim-hero h1{font-family:Archivo,sans-serif;font-weight:900;font-size:2rem;line-height:1.1;letter-spacing:-.5px}
.claim-sub{font-weight:600;color:#444;margin-top:10px;font-size:1.05rem}
.claim-benefits{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}
.claim-benefits li{display:flex;gap:11px;background:#fff;border:1px solid var(--ink);border-radius:13px;padding:14px;box-shadow:4px 4px 0 var(--ink)}
.cb-ic{font-size:1.5rem;line-height:1;flex:none}
.cb-tx b{font-family:Archivo,sans-serif;font-size:.98rem}
.cb-d{display:block;font-weight:600;color:#555;font-size:.84rem;margin-top:3px}
.claim-cta-panel{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px;background:var(--cream)}
@media(max-width:560px){.claim-benefits{grid-template-columns:1fr}.claim-hero h1{font-size:1.5rem}}

/* ===== Edit-listing form ===== */
.el-form{display:flex;flex-direction:column;gap:20px}
.el-field{display:flex;flex-direction:column;gap:7px;position:relative}
.el-field.locked{opacity:.62}
.el-field.locked .el-input{background:repeating-linear-gradient(135deg,#f4f4ee,#f4f4ee 9px,#eeeee6 9px,#eeeee6 18px);cursor:not-allowed;color:#777}
.el-label{font-family:'Archivo',sans-serif;font-weight:900;font-size:14px;display:flex;align-items:center;gap:9px;letter-spacing:-.2px}
.el-label .opt{font-family:'Inter',sans-serif;font-weight:600;color:#999;font-size:12px;letter-spacing:0}
.el-lock{display:inline-flex;align-items:center;gap:3px;background:var(--yellow);border:1px solid var(--ink);border-radius:7px;padding:1px 8px;font-size:10.5px;font-weight:900;letter-spacing:.2px;box-shadow:2px 2px 0 var(--ink)}
.el-free{display:inline-flex;align-items:center;gap:3px;background:#d7f7e0;border:1px solid #0a8f3c;border-radius:7px;padding:1px 8px;font-size:10.5px;font-weight:900;color:#08762f;letter-spacing:.2px}
.el-private{display:inline-flex;align-items:center;gap:3px;background:#ececff;border:1px solid #4a4ad6;border-radius:7px;padding:1px 8px;font-size:10.5px;font-weight:900;color:#3a3ac0;letter-spacing:.2px}
.el-head-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.el-hint{font-size:12.5px;color:#8a8a8a;font-weight:600;margin-top:-3px}
.el-input{width:100%;border:1px solid var(--ink);border-radius:11px;padding:12px 14px;font-weight:600;font-size:15px;font-family:inherit;background:#fff;box-sizing:border-box;transition:box-shadow .12s ease,transform .12s ease}
.el-input:focus{outline:none;box-shadow:4px 4px 0 var(--ink);transform:translate(-1px,-1px)}
textarea.el-input{resize:vertical;line-height:1.5}
.el-links{display:flex;flex-direction:column;gap:9px}
.el-link-row{display:flex;gap:9px;flex-wrap:wrap}
.el-trial-cta{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-top:20px;background:linear-gradient(135deg,#FFFDF4,#FFF7DB);border:1px solid var(--ink);box-shadow:6px 6px 0 var(--ink)}
.el-trial-cta .btn.big{white-space:nowrap}

/* ===== IMDB-style features: Known For, Awards, Trivia, Buzz ===== */
/* Known For */
.known-for{margin:24px 0}
.kf-head{font-family:Archivo,sans-serif;font-weight:900;font-size:1.3rem;margin-bottom:12px}
.kf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.kf-card{display:block;text-decoration:none;color:inherit;min-width:0}
.kf-thumb{position:relative;display:block;border:1px solid var(--ink);border-radius:11px;overflow:hidden;box-shadow:4px 4px 0 var(--ink);aspect-ratio:16/9;background:var(--cream)}
.kf-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .12s}
.kf-card:hover .kf-thumb img{transform:scale(1.05)}
.kf-views{position:absolute;bottom:6px;right:6px;background:rgba(14,14,14,.85);color:#fff;font-size:11px;font-weight:800;border-radius:6px;padding:2px 7px}
.kf-title{display:block;font-weight:700;font-size:.84rem;margin-top:8px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:640px){.kf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Awards */
.award-list{display:flex;flex-direction:column;gap:9px;margin-bottom:10px}
.award{display:flex;align-items:center;gap:10px}
.aw-ic{font-size:1.5rem;line-height:1;flex:none}
.aw-tx b{font-family:Archivo,sans-serif;font-size:.92rem;display:block}
.aw-d{font-size:.78rem;font-weight:600;color:#666}
.award-next{font-size:.82rem;font-weight:600;color:#555;border-top:1px dashed var(--ink);padding-top:10px}
/* Trivia */
/* dashboard: recommended collabs */
.collab-recs{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.collab-rec{border:1px solid var(--ink);border-radius:16px;padding:16px;background:#fff;box-shadow:5px 5px 0 var(--ink);display:flex;flex-direction:column;gap:13px;transition:transform .1s ease,box-shadow .1s ease}
.collab-rec:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}
.collab-rec .cr-top{display:flex;align-items:flex-start;gap:12px}
.collab-rec .cr-av{width:54px;height:54px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}
.collab-rec .cr-meta{flex:1;min-width:0}
.collab-rec .cr-nm{font-weight:900;font-family:Archivo,sans-serif;font-size:1.02rem;line-height:1.25;margin-bottom:4px}
.collab-rec .cr-sub{font-size:.8rem;color:#555;font-weight:700}
.collab-rec .cr-price{text-align:center;flex-shrink:0;align-self:flex-start;border:1px solid var(--ink);border-radius:11px;padding:5px 10px;background:#e3f9ec}
.collab-rec .cr-price-v{display:block;font-weight:900;color:#0a7d2c;font-size:1rem;line-height:1.1}
.collab-rec .cr-price-l{display:block;font-size:.58rem;text-transform:uppercase;letter-spacing:.05em;color:#0a7d2c;font-weight:800;margin-top:1px}
.collab-rec .cr-why{font-size:.86rem;font-weight:600;line-height:1.5;color:#333;background:#fbf8ec;border:1px solid #efe7cb;border-radius:12px;padding:11px 13px;flex:1}
.collab-rec .cr-why b{color:#0a7d2c}
.collab-rec .cr-cta{display:flex;flex-direction:column;gap:8px;margin-top:auto}
.collab-rec .cr-cta .btn{width:100%;justify-content:center;padding:10px 12px;font-size:13px}
@media(max-width:760px){.collab-recs{grid-template-columns:1fr}}
/* Mobile: keep recommended-collab cards inside the viewport (no horizontal overflow). */
@media(max-width:560px){
  .collab-rec{padding:14px;gap:11px}
  .collab-rec .cr-top{gap:10px}
  .collab-rec .cr-av{width:46px;height:46px}
  .collab-rec .cr-price{padding:4px 8px}
  .collab-rec .cr-price-v{font-size:.9rem}
  .blast-bar,.pro-cta{padding:14px 15px;gap:12px}
  .blast-bar>div,.pro-cta>div{min-width:0}
}
/* Facts: auto-fit so 1–2 facts fill the row instead of leaving an empty half; each fact gets a tidy
   white icon tile inside the cream card (matches the "Free analysis" tool tiles). Not clickable → no hover. */
.trivia-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-top:12px}
.trivia-card{display:flex;gap:11px;align-items:center;background:var(--cream);border:1px solid var(--ink);border-radius:12px;padding:11px 13px}
.trivia-card .tc-ico{flex:none;width:38px;height:38px;display:grid;place-items:center;font-size:1.2rem;line-height:1;background:#fff;border:1px solid var(--ink);border-radius:10px}
.trivia-card .tc-txt{font-weight:600;font-size:.9rem;line-height:1.35;min-width:0}
.trivia-card .tc-txt b{color:#0a7d2c;font-weight:800}
@media(max-width:680px){.trivia-grid{grid-template-columns:1fr}}
/* legacy list (kept for any other callers) */
.trivia-list{list-style:none;display:flex;flex-direction:column;gap:9px}
.trivia-list li{font-weight:600;padding-left:22px;position:relative}
.trivia-list li::before{content:'›';position:absolute;left:6px;font-weight:900;color:var(--ink)}
/* Buzz trend */
.buzz-up{color:#0a8f3c;font-weight:800;font-size:.6em;vertical-align:middle;margin-left:4px}
.buzz-down{color:var(--red);font-weight:800;font-size:.6em;vertical-align:middle;margin-left:4px}
.buzz-new{background:var(--red);color:#fff;font-size:.5em;font-weight:800;border-radius:6px;padding:1px 5px;vertical-align:middle;margin-left:5px}

/* ===== Charts hub ===== */
.charts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.chart-card{display:flex;flex-direction:column;gap:5px;background:#fff;border:1px solid var(--ink);border-radius:14px;padding:16px;box-shadow:5px 5px 0 var(--ink);text-decoration:none;color:inherit;transition:transform .08s}
.chart-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink);background:var(--cream)}
.cc-ic{font-size:1.7rem;line-height:1}
.cc-t{font-family:Archivo,sans-serif;font-weight:900;font-size:1.05rem}
.cc-d{font-weight:600;font-size:.84rem;color:#555;line-height:1.35}
/* ===== Brand safety ===== */
.safety-rating{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.sr-ic{font-size:1.6rem;line-height:1}
.sr-label{font-family:Archivo,sans-serif;font-weight:900;font-size:1.05rem;flex:1}
.sr-score{font-weight:800;font-size:.85rem;color:#555}
.safety-panel.safety-good{border-color:#0a8f3c}.safety-panel.safety-good .sr-label{color:#0a8f3c}
.safety-panel.safety-ok .sr-label{color:#0a8f3c}
.safety-panel.safety-warn{border-color:#d98a00}.safety-panel.safety-warn .sr-label{color:#b36b00}
.safety-panel.safety-bad{border-color:var(--red)}.safety-panel.safety-bad .sr-label{color:var(--red)}
.safety-list{list-style:none;display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:.85rem;margin-top:4px}
.safety-list.adv{color:#b36b00}
/* ===== Collaborators ===== */
.collab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:12px}
.collab{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;text-decoration:none;color:inherit}
.collab img{width:60px;height:60px;border-radius:50%;object-fit:cover}
.collab:hover img{box-shadow:3px 3px 0 var(--ink)}
.collab-nm{font-weight:800;font-size:.78rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.collab-sub{font-size:.7rem;font-weight:700;color:#888}
/* ===== Gallery + lightbox ===== */
.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.gal-thumb{width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--ink);border-radius:8px;cursor:pointer;background:var(--cream)}
.gal-thumb:hover{box-shadow:3px 3px 0 var(--ink)}
.gal-lightbox{display:none;position:fixed;inset:0;background:rgba(14,14,14,.85);z-index:210;padding:30px;cursor:zoom-out}
.gal-lightbox.on{display:flex;align-items:center;justify-content:center}
.gal-lightbox img{max-width:90%;max-height:90%;border:1px solid #fff;border-radius:10px}
@media(max-width:640px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ===== Landing hero CTAs (Influencer / Sponsor) ===== */
.hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.hero-cta-btn{font-size:15px;padding:11px 20px}
.hero-cta-btn.alt{background:#fff}
.hero-cta-btn.alt:hover{background:var(--ink);color:var(--yellow)}
.hero-cta-sub{font-weight:600;color:#444;font-size:.85rem;margin-top:6px}
@media(max-width:480px){.hero-cta{flex-direction:column}.hero-cta-btn{width:100%;justify-content:center}}

/* ===== Deal requests (dashboard) + deal buttons ===== */
.deal-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--ink)}
.deal-row:first-of-type{border-top:none}
.deal-meta{flex:1;min-width:200px;font-weight:600;font-size:.9rem}
.deal-type{display:inline-block;background:var(--cream);border:1px solid var(--ink);border-radius:7px;padding:1px 8px;font-weight:800;font-size:.78rem;margin-right:4px}
.deal-msg{color:#444;font-weight:500;margin-top:6px;font-size:.88rem}
.deal-actions{display:flex;gap:8px;flex-shrink:0}
.deal-collab-btn{background:var(--cream)}

/* ===== Register role picker ===== */
.role-field{display:flex;flex-direction:column;gap:6px}
.role-label{font-weight:800}
.role-pick{display:flex;gap:10px}
.role-opt{flex:1;cursor:pointer;position:relative;display:flex}
.role-opt input{position:absolute;opacity:0;width:0;height:0}
.role-opt span{flex:1;display:flex;flex-direction:column;gap:2px;border:1.5px solid #d8d8c8;border-radius:11px;padding:11px 13px;font-weight:800;font-size:14px;background:#fff;transition:.1s}
.role-opt span small{font-weight:600;font-size:11px;color:#666}
.role-opt input:checked+span{background:var(--yellow);border-color:var(--ink);box-shadow:none}
.role-opt input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}
@media(max-width:420px){.role-pick{flex-direction:column}}

/* create-account popup (logged-out visitors) */
/* "Install app" — borderless floating graphic, MOBILE ONLY; sits above the tab bar (JS sets bottom) */
.pwa-iconfab{display:none}
.pwa-iconfab[hidden]{display:none}
@media(max-width:768px){
  .pwa-iconfab{display:block;position:fixed;z-index:400;right:8px;bottom:calc(118px + env(safe-area-inset-bottom));width:auto;height:auto;padding:0;border:0;background:none;cursor:pointer;line-height:0;animation:pwaRise .28s cubic-bezier(.2,.9,.3,1.2)}
  .pwa-iconfab[hidden]{display:none}
  .pwa-iconfab:active{transform:scale(.95)}
  .pwa-iconfab img{height:104px;width:auto;display:block}
}
/* "Turn on notifications" prompt card — sits above the mobile tab bar (JS sets bottom), never behind it */
/* Subtle toast (softened from the old neo-brutalist card): thin light border, soft ambient shadow
   instead of a hard offset, muted icon + button, compact right-anchored card even on mobile. */
.pwa-install{position:fixed;z-index:400;right:16px;bottom:16px;left:auto;max-width:300px;display:flex;align-items:center;gap:10px;background:#fff;color:var(--ink);border:1px solid rgba(14,14,14,.12);border-radius:14px;padding:10px 11px;box-shadow:0 10px 28px rgba(14,14,14,.16);animation:pwaRise .3s ease}
.pwa-install[hidden]{display:none}
.pwa-install-ic{width:34px;height:34px;border-radius:9px;flex:none;display:flex;align-items:center;justify-content:center}
.pwa-install-tx{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.pwa-install-tx b{font-family:Archivo,sans-serif;font-weight:800;font-size:13.5px}
.pwa-install-tx span{font-size:11px;color:#8a8a72}
.pwa-install-go{flex:none;margin-left:2px;background:var(--ink);color:#fff;border:none;border-radius:9px;padding:7px 13px;font-family:Archivo,sans-serif;font-weight:700;font-size:12.5px;cursor:pointer}
.pwa-install-go:active{transform:translateY(1px)}
.pwa-install-x{flex:none;background:none;border:none;color:#c2c2b6;font-size:19px;line-height:1;padding:0 2px;cursor:pointer;align-self:flex-start}
@keyframes pwaRise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:768px){.pwa-install{left:auto;right:10px;max-width:270px;bottom:calc(120px + env(safe-area-inset-bottom))}}
.su-modal-bg{display:none;position:fixed;inset:0;z-index:500;background:rgba(14,14,14,.55);padding:20px;overflow-y:auto}
.su-modal-bg.on{display:flex;align-items:center;justify-content:center;animation:suFade .28s ease both}
@keyframes suFade{from{opacity:0}to{opacity:1}}
.su-modal{position:relative;width:100%;max-width:430px;background:#fff;border:1px solid var(--ink);border-radius:16px;box-shadow:8px 8px 0 var(--ink);padding:26px 24px;margin:auto;animation:suPop .45s cubic-bezier(.34,1.56,.64,1) both}
/* Springy entrance: fade + slide up + a slight scale overshoot (the cubic-bezier gives the bounce). */
@keyframes suPop{0%{opacity:0;transform:translateY(32px) scale(.9)}55%{opacity:1}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.su-modal-bg.on,.su-modal{animation-duration:.01ms}}
.su-modal h3{font-family:Archivo,sans-serif;font-weight:900;font-size:1.4rem;margin:0 0 4px}
.su-sub{font-size:13.5px;color:#555;font-weight:600;margin:0 0 16px;line-height:1.45}
.su-x{position:absolute;top:8px;right:13px;background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:#999;font-weight:700}
.su-x:hover{color:var(--ink)}
.su-modal form{display:flex;flex-direction:column;gap:12px}
.su-field{display:flex;flex-direction:column;gap:5px;font-weight:800;font-size:.85rem}
.su-field input{border:1px solid var(--ink);border-radius:10px;padding:10px 12px;font-weight:600;font-size:15px;font-family:inherit}
.su-field input:focus{outline:none;background:var(--cream)}
.su-err{background:#ffe0e0;border:1px solid #FF3B30;border-radius:10px;padding:10px 12px;font-weight:700;font-size:13.5px;color:#a01818;margin-bottom:14px}
.su-err a{color:#a01818;text-decoration:underline}
.su-alt{text-align:center;font-weight:600;color:#666;font-size:13px;margin:14px 0 0}
.su-alt a{text-decoration:underline}
/* compact the create-account popup on phones so it fits above the keyboard/nav without overflow */
@media(max-width:520px){
  .su-modal-bg{padding:10px}
  .su-modal-bg.on{align-items:flex-start}
  .su-modal{padding:18px 16px;box-shadow:5px 5px 0 var(--ink);border-radius:14px}
  .su-modal h3{font-size:1.2rem;margin:0 0 3px}
  .su-sub{font-size:12.5px;margin:0 0 12px;line-height:1.4}
  .su-modal form{gap:9px}
  .role-label{font-size:14px}
  .role-opt span{padding:8px 11px;font-size:13px}
  .role-opt span small{font-size:10.5px}
  .su-field{font-size:.8rem;gap:3px}
  .su-field input{padding:9px 11px;font-size:14px}
  .su-x{top:6px;right:10px;font-size:26px}
  .su-alt{margin-top:10px;font-size:12.5px}
}
@media(max-width:520px){.su-fab{right:12px;bottom:12px;padding:11px 16px;font-size:14px}}

/* ===== Mobile: 4 stat chips in 2 columns so CTAs stay above the fold ===== */
@media(max-width:560px){
  .stat-strip{gap:14px}
  .stat-main{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
  .stat-plats-wrap{width:100%}
  /* Trimmed to ~9 pills, they now wrap cleanly as a centered band (no rigid 2-col grid needed). */
  .stat-plats{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:100%}
  .stat-trust{font-size:11.5px;line-height:1.85}
  /* Only the big total pills wrap their number/label into stacked centered lines so they align in
     one row; the platform pills stay single-line. */
  .stat-main .chip{display:flex;flex-wrap:wrap;align-items:center;align-content:center;justify-content:center;gap:2px 5px;text-align:center;padding:10px 12px}
}

/* Mobile: hide the white platform-pills band entirely and instead show the rotating hero images
   (girl / boy / group of 3) — which are desktop-only by default. Their desktop positioning uses
   absolute right-column offsets, so we normalise them here: all overlaid, centred, bottom-aligned. */
@media(max-width:640px){
  .stat-plats-wrap{display:none}
  body.home .hero{padding-bottom:0}   /* drop the 12px gap so the trending bar sits flush under the image */
  /* Fixed-height, bottom-anchored band: all 3 frames share ONE height so the container hugs them and
     the trending bar sits flush beneath — no dead yellow gap on any frame, no layout jump. Centred;
     crossfade becomes opacity-only here (transform is pinned to the centring translate). */
  body.home .hero-photo{display:block;position:relative;width:100%;height:58vw;max-height:300px;margin:20px auto 0;line-height:0}
  body.home .hero-photo .horo-img,
  body.home .hero-photo .horo-img:first-child,
  body.home .hero-photo .horo-img:nth-child(2),
  body.home .hero-photo .horo-img:nth-child(3){
    position:absolute;left:50%;right:auto;top:auto;bottom:0;
    width:auto;height:58vw;max-height:300px;max-width:96vw;transform:translateX(-50%)}
  body.home .hero-photo .horo-img.horo-on{transform:translateX(-50%)}
}

/* Right-edge feedback tab — a persistent desktop affordance to /feedback. Hidden on mobile. */
.fb-tab{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:600;background:var(--ink);color:var(--yellow);text-decoration:none;border-radius:12px 0 0 12px;box-shadow:-4px 4px 0 rgba(14,14,14,.18);writing-mode:vertical-rl;font-family:'Archivo',sans-serif;font-weight:800;font-size:13px;letter-spacing:.4px;padding:15px 9px;transition:padding-right .15s ease,background .15s}
.fb-tab:hover{padding-right:14px;background:#000}
.fb-tab:active{box-shadow:-2px 2px 0 rgba(14,14,14,.18)}
@media(max-width:960px){.fb-tab{display:none}}

/* ===== Deals marketplace + wallet ===== */
.deal-head{display:flex;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.deal-ic{font-size:2rem;line-height:1}
.deal-title{font-family:Archivo,sans-serif;font-weight:900;font-size:1.5rem;line-height:1.1}
.deal-sub{font-weight:600;color:#555;font-size:.9rem}
.deal-agreement .deal-money{background:var(--cream);border:1px solid var(--ink);border-radius:12px;padding:14px 16px;margin:6px 0 16px}
.deal-money>div{display:flex;justify-content:space-between;font-weight:700;padding:4px 0}
.deal-money .dm-net{border-top:1px solid var(--ink);margin-top:6px;padding-top:8px;font-size:1.15rem;font-family:Archivo,sans-serif;font-weight:900}
.deal-terms .dt-row{display:flex;gap:14px;padding:9px 0;border-top:1px solid #eee}
.deal-terms .dt-row:first-child{border-top:none}
.dt-k{font-weight:800;min-width:130px;flex-shrink:0}
.dt-v{font-weight:600;color:#333}
.star-pick{display:inline-flex;flex-direction:row-reverse;gap:2px;font-size:1.8rem}
.star-pick input{display:none}
.star-pick label{color:#ccc;cursor:pointer}
.star-pick input:checked~label,.star-pick label:hover,.star-pick label:hover~label{color:#FFC400}
.wallet-setup{display:flex;align-items:center;gap:15px;background:var(--cream);border:1px solid var(--ink);border-radius:14px;box-shadow:5px 5px 0 var(--ink);padding:15px 17px;margin-bottom:18px}
.wallet-setup .ws-ic{flex-shrink:0;width:48px;height:48px;display:grid;place-items:center;font-size:1.5rem;background:var(--yellow);border:1px solid var(--ink);border-radius:12px}
.wallet-setup .ws-tx{flex:1;min-width:0}
.wallet-setup .ws-title{font-family:Archivo,sans-serif;font-weight:900;font-size:1.05rem;color:var(--ink);line-height:1.1}
.wallet-setup .ws-sub{font-weight:600;font-size:.86rem;color:#5c5c2e;margin-top:3px}
.wallet-setup .btn{flex-shrink:0}
@media(max-width:560px){.wallet-setup{flex-direction:column;align-items:flex-start;gap:12px}.wallet-setup .btn{width:100%;text-align:center}}
.wallet-balance{background:var(--ink);color:var(--yellow);border-radius:16px;padding:22px;text-align:center;margin-bottom:16px;box-shadow:var(--shadow)}
.wb-k{font-weight:700;font-size:.9rem;opacity:.85}
.wb-v{font-family:Archivo,sans-serif;font-weight:900;font-size:2.6rem;color:#fff}
.wallet-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.wallet-actions h2{font-size:1rem;margin-bottom:8px}
.deal-row{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--ink);border-radius:12px;padding:13px 15px;box-shadow:4px 4px 0 var(--ink);text-decoration:none;color:inherit;margin-bottom:12px;transition:transform .08s}
.deal-row:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink);background:var(--cream)}
.dr-ic{font-size:1.5rem}
.dr-main{flex:1;min-width:0}
.dr-title{display:block;font-weight:800;font-family:Archivo,sans-serif}
.dr-sub{display:block;font-size:.82rem;color:#555;font-weight:600}
@media(max-width:560px){.wallet-actions{grid-template-columns:1fr}.dt-row{flex-direction:column;gap:2px}.dt-k{min-width:0}}
/* Transactions table: let it scroll horizontally on small screens instead of clipping. */
.wallet-txn-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:560px){
  .wallet-txn-wrap .data-table{font-size:12.5px}
  .wallet-txn-wrap .data-table td{padding:9px 10px;white-space:normal}
  .wallet-txn-wrap .data-table td:first-child{width:auto;min-width:120px}
  .wallet-txn-wrap .t-handle{white-space:normal}
}

.rec-price{background:var(--cream);border:1px solid var(--ink);border-radius:8px;padding:8px 11px;font-weight:700;font-size:.84rem;margin-bottom:10px}
.deal-label,.form-label{display:block;font-weight:800;font-size:.8rem;font-family:Archivo,sans-serif;margin-bottom:5px}
.form-label .opt{font-weight:600;color:#888;font-family:Inter,sans-serif}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.opt{font-weight:600;color:#888;font-size:12px}

/* deals: action-needed highlight + renegotiate box */
.deal-row.deal-todo{border-color:#0a8f3c;box-shadow:4px 4px 0 #0a8f3c}
/* dashboard: empty-state CTA + owned-listings / claim-recommendations */
.deal-empty{text-align:center;padding:6px 4px 4px}
.deal-empty-tx{font-weight:600;color:#444;margin-bottom:14px;line-height:1.45}
.deal-empty-cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.claim-badge{display:inline-block;font-size:.66rem;font-weight:800;color:#0a8f3c;border:1px solid #0a8f3c;border-radius:20px;padding:1px 7px;vertical-align:middle;margin-left:4px}
.claim-reco{margin-top:6px;border-top:1px dashed var(--ink);padding-top:14px}
.claim-reco-head{font-weight:800;font-family:Archivo,sans-serif;margin-bottom:10px}
.claim-reco-head span{font-weight:600;color:#777;font-size:13px}
.deal-edit{border-width:1px}
.deal-edit summary::-webkit-details-marker{display:none}
.deal-edit[open] summary{margin-bottom:4px}

/* ============== MOTION ============== */
/* All scoped to html.motion (added by an inline head script only when the user
   hasn't requested reduced motion) — so reduced-motion users get a static page. */

/* hero staggered entrance */
.motion .hero h1,
.motion .hero>p:not(.hero-cta-sub),
.motion .hero-search,
.motion .hero-cta,
.motion .hero-cta-sub,
.motion .stat-strip .chip{opacity:0;animation:heroUp .8s cubic-bezier(.16,.84,.34,1) forwards}
.motion .hero h1{animation-delay:.04s}
.motion .hero>p:not(.hero-cta-sub){animation-delay:.16s}
.motion .hero-search{animation-delay:.28s}
/* Row 1: the two headline pills cascade first; then every platform pill (rows 2-3) staggers after. */
.motion .stat-main .chip:nth-child(1){animation-delay:.40s}
.motion .stat-main .chip:nth-child(2){animation-delay:.47s}
.motion .stat-main .chip:nth-child(3){animation-delay:.54s}
.motion .stat-plats .chip:nth-child(1){animation-delay:.52s}
.motion .stat-plats .chip:nth-child(2){animation-delay:.55s}
.motion .stat-plats .chip:nth-child(3){animation-delay:.58s}
.motion .stat-plats .chip:nth-child(4){animation-delay:.61s}
.motion .stat-plats .chip:nth-child(5){animation-delay:.64s}
.motion .stat-plats .chip:nth-child(6){animation-delay:.67s}
.motion .stat-plats .chip:nth-child(7){animation-delay:.70s}
.motion .stat-plats .chip:nth-child(8){animation-delay:.73s}
.motion .stat-plats .chip:nth-child(9){animation-delay:.76s}
.motion .stat-plats .chip:nth-child(10){animation-delay:.79s}
.motion .stat-plats .chip:nth-child(11){animation-delay:.82s}
.motion .stat-plats .chip:nth-child(12){animation-delay:.85s}
.motion .hero-cta{animation-delay:.70s}
.motion .hero-cta-sub{animation-delay:.80s}
@keyframes heroUp{from{opacity:0;transform:translateY(30px) scale(.985)}to{opacity:1;transform:none}}

/* scroll reveals */
.motion .reveal{opacity:0;transform:translateY(34px);transition:opacity .7s cubic-bezier(.16,.84,.34,1),transform .7s cubic-bezier(.16,.84,.34,1)}
.motion .reveal.in{opacity:1;transform:none}
/* gentle stagger for grid cards inside a revealed section */
.motion .reveal.in .toolkit>*,.motion .reveal.in .brand-logo-row>*,.motion .reveal.in .grid>*{animation:cardIn .55s cubic-bezier(.16,.84,.34,1) both}
.motion .reveal.in .toolkit>:nth-child(2),.motion .reveal.in .brand-logo-row>:nth-child(2),.motion .reveal.in .grid>:nth-child(2){animation-delay:.06s}
.motion .reveal.in .toolkit>:nth-child(3),.motion .reveal.in .brand-logo-row>:nth-child(3),.motion .reveal.in .grid>:nth-child(3){animation-delay:.12s}
.motion .reveal.in .toolkit>:nth-child(4),.motion .reveal.in .brand-logo-row>:nth-child(4),.motion .reveal.in .grid>:nth-child(4){animation-delay:.18s}
.motion .reveal.in .brand-logo-row>:nth-child(n+5),.motion .reveal.in .grid>:nth-child(n+5){animation-delay:.22s}
@keyframes cardIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* full-bleed creator marquee */
/* Trending-now news cards (landing page) */
.news-sub{font-weight:600;color:#444;max-width:720px;margin:-6px 0 16px;line-height:1.5}
.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.news-card{display:flex;flex-direction:column;border:1px solid var(--ink);border-radius:16px;background:#fff;box-shadow:5px 5px 0 var(--ink);overflow:hidden;text-decoration:none;color:inherit;transition:transform .1s ease,box-shadow .1s ease}
.news-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}
.news-img{position:relative;display:block;aspect-ratio:16/10;background:var(--ink) center/cover no-repeat;border-bottom:1px solid var(--ink)}
.news-stat{position:absolute;top:10px;right:10px;background:var(--yellow);border:1px solid var(--ink);border-radius:20px;padding:3px 10px;font-size:12px;font-weight:800;color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.news-stat b{font-weight:900}
.news-body{display:flex;flex-direction:column;gap:7px;padding:14px}
.news-cat{align-self:flex-start;font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--ink);border-radius:20px;padding:2px 9px}
.news-head{font-family:Archivo,sans-serif;font-weight:900;font-size:15.5px;line-height:1.22;letter-spacing:-.2px;color:var(--ink)}
.news-blurb{font-size:13px;font-weight:600;color:#555;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-more{margin-top:auto;font-size:12px;font-weight:800;color:var(--ink);opacity:.72}
@media(max-width:1000px){.news-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.news-grid{grid-template-columns:1fr}}
.cmarquee{position:relative;overflow:hidden;width:100vw;margin:0 calc(50% - 50vw) 2px;padding:9px 0;background:var(--ink);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.cmarquee-track{display:flex;width:max-content;will-change:transform}
.motion .cmarquee-track{animation:cmarquee 55s linear infinite}
.cmarquee:hover .cmarquee-track{animation-play-state:paused}
.cm-item{display:flex;align-items:center;gap:10px;padding:0 22px;white-space:nowrap;text-decoration:none;color:var(--yellow);border-right:1px solid #2a2a2a}
.cm-item img{width:29px;height:29px;border-radius:50%;object-fit:cover;flex:none;background:#222}
.cm-item span{font-family:Archivo,sans-serif;font-weight:800;font-size:.95rem}
.cm-item b{color:#fff;opacity:.55;font-weight:700;font-size:.8rem}
.cm-item:hover span{color:#fff}
.cm-item:hover img{border-color:#fff}
@keyframes cmarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* hover micro-interactions */
.motion .tool-card,.motion .chart-card,.motion .brand-logo-chip{transition:transform .12s cubic-bezier(.16,.84,.34,1),box-shadow .12s}
.motion .tool-card:hover,.motion .chart-card:hover{transform:translate(-3px,-3px) rotate(-.4deg)}
.motion .stat-strip .chip{transition:transform .12s}
.motion a.chip-link:active{transform:translate(0,0)}

/* Dashboard "Pending your action" panel (sidebar, above wallet) */
.todo-panel{border-color:#caa400;box-shadow:5px 5px 0 #caa400;background:#fffdf0}
.todo-count{background:#FFE000;color:var(--ink)}
.todo-list{display:flex;flex-direction:column;gap:8px}
.todo-item{display:flex;align-items:center;gap:10px;border:1px solid var(--ink);border-radius:12px;background:#fff;padding:9px 11px;text-decoration:none;color:var(--ink);box-shadow:3px 3px 0 var(--ink);transition:transform .1s,box-shadow .1s}
.todo-item:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.todo-av{width:38px;height:38px;border-radius:50%;object-fit:cover;border:1px solid var(--ink);flex:0 0 auto}
.todo-tx{display:flex;flex-direction:column;min-width:0;flex:1}
.todo-tx b{font-size:13.5px;font-weight:800;line-height:1.2}
.todo-tx span{font-size:11.5px;font-weight:600;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.todo-go{font-weight:900;font-size:18px;flex:0 0 auto}

/* Signature pad (deal agreement e-signatures) */
.sig-img{display:block;max-width:220px;max-height:70px;margin:0 0 4px;object-fit:contain}
.sigpad-wrap{position:relative;margin:4px 0 8px}
.sigpad{width:100%;height:170px;border:1px dashed var(--ink);border-radius:12px;background:#fff;touch-action:none;cursor:crosshair;display:block}
.sigpad-clear{position:absolute;top:8px;right:8px;border:1px solid var(--ink);background:#fff;border-radius:8px;padding:3px 9px;font-weight:800;font-size:12px;cursor:pointer}
.sigpad-clear:hover{background:var(--yellow)}
.sigpad-hint{display:block;font-size:11.5px;font-weight:600;color:#999;margin-top:4px}
.sig-saved-opt,.sig-save-opt{display:flex;align-items:center;gap:7px;font-weight:700;font-size:13.5px;margin:4px 0;cursor:pointer}
.sig-saved-opt input,.sig-save-opt input{width:16px;height:16px}
.sig-saved-prev{display:block;max-width:220px;max-height:70px;border:1px solid var(--ink);border-radius:10px;background:#fff;padding:4px;margin:2px 0 8px;object-fit:contain}

/* Admin unified deals — type label chip in the summary row */
.dl-type{display:inline-block;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.3px;background:#0E0E0E;color:#fff;border-radius:5px;padding:1px 6px;margin-right:3px;vertical-align:middle}

/* Dashboard unified Deals — filter chips + card note */
.deal-filters{display:flex;flex-direction:column;gap:7px;margin:0 0 14px}
.df-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.df-lbl{font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:#999;min-width:46px}
.df-chip{border:1px solid var(--ink);background:#fff;border-radius:20px;padding:4px 12px;font-weight:800;font-size:12.5px;cursor:pointer;font-family:inherit;line-height:1.3;transition:transform .08s}
.df-chip:hover{transform:translateY(-1px)}
.df-chip.active{background:var(--yellow);box-shadow:1px 1px 0 var(--ink)}
.df-n{display:inline-block;background:rgba(0,0,0,.12);border-radius:9px;padding:0 5px;font-size:11px;margin-left:2px}
.dcard-note{font-size:11px;font-weight:700;color:#c0392b}

/* Who-viewed-you — censored teaser cards (free plan) + unlock CTA */
.wvy-censored .vwr.censored{position:relative;gap:9px;background:#fbfbfa;overflow:hidden}
.vwr-lockchip{position:absolute;top:8px;right:8px;font-size:12px;background:var(--yellow);border:1px solid var(--ink);border-radius:50%;width:24px;height:24px;display:grid;place-items:center;z-index:2}
.vwr-av-ph{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#e2e2e2,#c8c8c8);filter:blur(1.5px)}
.vwr-redact{border-radius:6px;background:repeating-linear-gradient(90deg,#d9d9d9 0 9px,#ccc 9px 14px)}
.vwr-redact-nm{height:13px;width:80%}
.vwr-redact-meta{height:9px;width:55%}
/* The one UNREDACTED fact on a censored viewer card: how big they are. */
.vwr-followers{font-family:Archivo,sans-serif;font-weight:900;font-size:13.5px;color:var(--ink);background:var(--yellow);border:1px solid var(--ink);border-radius:14px;padding:2px 10px;line-height:1.3}
.wvy-unlock{display:flex;align-items:center;gap:12px;margin-top:14px;border:1px solid var(--ink);border-radius:14px;background:var(--yellow);box-shadow:4px 4px 0 var(--ink);padding:13px 14px;text-decoration:none;color:var(--ink);transition:transform .1s,box-shadow .1s}
.wvy-unlock:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.wvy-unlock-ic{font-size:26px;flex:0 0 auto}
.wvy-unlock-tx{display:flex;flex-direction:column;min-width:0;flex:1}
.wvy-unlock-tx b{font-size:15px;font-weight:900;line-height:1.2}
.wvy-unlock-tx span{font-size:12.5px;color:#555;font-weight:600}
.wvy-unlock-cta{font-weight:900;font-size:13px;white-space:nowrap;border:1px solid var(--ink);background:var(--ink);color:var(--yellow);border-radius:9px;padding:8px 12px;flex:0 0 auto}

/* ---- Listing insight cards: sponsorship price anchor, cross-platform reach, content mix ---- */
.sponsor-anchor{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;
  border:1px solid var(--ink);border-radius:16px;background:#FFF7CC;box-shadow:6px 6px 0 var(--ink);padding:17px 22px;margin:18px 0}
.sa-main{min-width:0}
.sa-kicker{font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#8a7a00;margin-bottom:5px}
.sa-price{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.9rem;line-height:1;color:var(--ink)}
.sa-price small{font-size:.85rem;font-weight:800;color:#6b6b55}
.sa-sub{font-size:12.5px;font-weight:700;color:#6b6b55;margin-top:6px;max-width:46ch}
.sa-reach{text-align:right;flex:0 0 auto}
.sa-reach-num{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.6rem;line-height:1;color:var(--ink)}
.sa-reach-lbl{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#8a8a6a;margin-top:4px}

.xreach{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 22px;
  border:1px solid var(--ink);border-radius:16px;background:var(--ink);box-shadow:6px 6px 0 rgba(0,0,0,.22);padding:15px 20px;margin:18px 0}
.xr-total{white-space:nowrap}
.xr-num{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.95rem;line-height:1;color:var(--yellow)}
.xr-lbl{font-size:13px;font-weight:800;color:#fff}
.xr-chips{display:flex;flex-wrap:wrap;gap:8px}
.xr-chip{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--ink);border-radius:999px;padding:6px 13px;font-weight:800;font-size:13px;text-decoration:none;border:1px solid var(--ink)}
.xr-chip.here{background:var(--yellow)}
.xr-chip:hover{transform:translateY(-1px)}

.fmt-split{border:1px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--ink);padding:14px 18px;margin:18px 0}
.fs-head{font-weight:900;font-size:13.5px;margin-bottom:10px;color:var(--ink)}
.fs-note{font-weight:700;color:#8a8a6a;font-size:11.5px}
.fs-bar{display:flex;height:32px;border:1px solid var(--ink);border-radius:9px;overflow:hidden}
.fs-shorts{background:#e0342a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:12.5px;min-width:34px}
.fs-long{background:var(--yellow);color:var(--ink);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:12.5px;min-width:34px;border-left:1px solid var(--ink)}
.fs-legend{font-size:11.5px;font-weight:700;color:#5c5c48;margin-top:8px}
@media(max-width:560px){.sa-price{font-size:1.6rem}.xr-num{font-size:1.6rem}.sa-reach{text-align:left}}

/* ---- Listing insight panels: content performance, cadence, streaming habits ---- */
.insight-panel{margin-top:22px}
.insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){.insight-grid{grid-template-columns:1fr}}
.ins-block{border:1px solid var(--ink);border-radius:12px;background:#FFFDF5;padding:14px 16px}
.ins-lbl{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#8a8a6a;margin-bottom:6px}
.ins-big{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.5rem;line-height:1.05;color:var(--ink)}
.ins-unit{font-size:.8rem;font-weight:800;color:#6b6b55}
.ins-sub{font-size:12.5px;font-weight:600;color:#5c5c48;line-height:1.5;margin-top:7px}
.ins-days{display:flex;gap:5px;margin:2px 0 4px}
.ins-day{width:30px;height:30px;border:1px solid var(--ink);border-radius:7px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:11px;background:#fff;color:#b0aa8c}
.ins-day.on{background:var(--yellow);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.ins-games{display:flex;flex-wrap:wrap;gap:7px;margin:2px 0 4px}
.ins-game{display:inline-block;border:1px solid var(--ink);border-radius:8px;background:var(--yellow);padding:5px 11px;font-weight:800;font-size:13px;color:var(--ink)}

/* ---- Admin: outreach performance funnel ---- */
.or-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:820px){.or-grid{grid-template-columns:1fr}}
.or-card{border:1px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--ink);padding:16px 18px}
.or-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-family:'Archivo',sans-serif;font-weight:900;font-size:16px;color:var(--ink);margin-bottom:14px}
.or-head b{font-size:13px;color:#6b6b55;white-space:nowrap}
.or-funnel{display:flex;flex-direction:column;gap:9px}
.or-row{display:flex;align-items:center;gap:10px}
.or-lbl{width:92px;flex:0 0 auto;font-weight:800;font-size:12.5px;color:#555}
.or-tag{font-size:9px;font-weight:900;background:#eee;color:#8a8a6a;border-radius:4px;padding:1px 4px;text-transform:uppercase;letter-spacing:.03em}
.or-track{flex:1;height:22px;background:#f0f0e8;border:1px solid var(--ink);border-radius:7px;overflow:hidden}
.or-fill{height:100%;border-radius:5px 0 0 5px;transition:width .3s ease}
.or-val{width:96px;flex:0 0 auto;text-align:right;font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap}
.or-val b{font-family:'Archivo',sans-serif;font-weight:900}
.or-pct{color:#8a8a6a;font-weight:800;font-size:11.5px}
.or-unsub{margin-top:14px;padding-top:11px;border-top:1px solid #eee;font-size:13.5px;font-weight:700;color:#c0392b}
.or-unsub b{font-family:'Archivo',sans-serif}

/* ---- Dashboard: thin borders on the boxes INSIDE each section --------------
   Each section (.panel) keeps its chunky neo-brutalist frame; the cards nested
   inside drop to a hairline + no hard shadow, so a panel no longer reads as a
   stack of heavy outlines inside another heavy outline.
   Scoped to .dash-2col on purpose — .collab-rec/.dcard/.vwr are reused on other
   pages (e.g. the collab-recs panel on /influencers), which keep the bold look. */
.dash-2col .yc-card,
.dash-2col .ycs,
.dash-2col .todo-item,
.dash-2col .collab-rec,
.dash-2col .dcard,
.dash-2col .vwr,
.dash-2col .ugc-card,        /* Get hired for UGC */
.dash-2col .pod-card,        /* Podcast guest appearances */
.dash-2col .msg-list,        /* Messages */
.dash-2col .team-listing,
.dash-2col .team-member{border-width:1px;box-shadow:none}
/* The lift-on-hover was tied to the hard shadow; without it the translate reads
   as a glitch, so hover becomes a subtle tint instead. */
.dash-2col .yc-card:hover,
.dash-2col .todo-item:hover,
.dash-2col .collab-rec:hover,
.dash-2col .dcard:hover,
.dash-2col .ugc-card:hover,
.dash-2col .pod-card:hover{transform:none;box-shadow:none;background:#fcfcf7}

/* ── Catch-all: EVERY box nested inside a dashboard section drops to a 1px border + flat shadow ──
   The section (.panel) keeps its chunky frame, but anything inside it — cards, avatars, chips, inputs,
   the CTA zone, etc. — becomes a hairline so a section never reads as heavy outlines stacked inside a
   heavy outline. Excluded: buttons (.btn) and the AI loading spinner (they keep their own weight).
   border-width on an element with no border-style is a harmless no-op, so this only touches real
   borders. Higher specificity than the per-card rules, so it wins without !important. */
.dash-2col .panel div:not(.btn):not([class*="ga-loading"]):not([class*="ga-orb"]),
.dash-2col .panel a:not(.btn),
.dash-2col .panel button:not(.btn),
.dash-2col .panel span:not([class*="ga-orb"]),
.dash-2col .panel label,
.dash-2col .panel input, .dash-2col .panel select, .dash-2col .panel textarea,
.dash-2col .panel ul, .dash-2col .panel li,
.dash-2col .panel table, .dash-2col .panel td, .dash-2col .panel th{border-width:1px}
.dash-2col .panel div:not(.btn):not([class*="ga-loading"]):not([class*="ga-orb"]),
.dash-2col .panel a:not(.btn),
.dash-2col .panel button:not(.btn){box-shadow:none}
.dash-2col .panel div:not(.btn):hover,
.dash-2col .panel a:not(.btn):hover,
.dash-2col .panel button:not(.btn):hover{transform:none;box-shadow:none}

/* Compact recommended-collab / recommended-sponsor cards on the dashboard — smaller
   avatar, tighter padding & type so more fit without scrolling. Scoped to .dash-2col
   so the bold version on /influencers is untouched. */
.dash-2col .collab-recs{gap:12px}
.dash-2col .collab-rec{padding:12px;gap:9px;border-radius:13px}
.dash-2col .collab-rec .cr-top{gap:10px}
.dash-2col .collab-rec .cr-av{width:42px;height:42px;border-width:1px;box-shadow:none}
.dash-2col .collab-rec .cr-nm{font-size:.9rem;margin-bottom:2px}
.dash-2col .collab-rec .cr-sub{font-size:.74rem}
.dash-2col .collab-rec .cr-nm .cr-match{font-size:10px;padding:0 7px;border-width:1.5px}
.dash-2col .collab-rec .cr-price{padding:3px 8px;border-width:1px}
.dash-2col .collab-rec .cr-price-v{font-size:.85rem}
.dash-2col .collab-rec .cr-price-l{font-size:.54rem}
.dash-2col .collab-rec .cr-why{font-size:.78rem;line-height:1.45;padding:8px 10px;border-radius:10px}
.dash-2col .collab-rec .cr-cta{gap:6px}
.dash-2col .collab-rec .cr-cta .btn{padding:7px 10px;font-size:12px}
.dash-2col .collab-rec .cr-dismiss{width:22px;height:22px;font-size:15px}

/* Buttons inside the dashboard: hairline border, no hard drop-shadow. The hover
   lift animated that shadow, so it becomes a tint/border shift instead. Scoped to
   .dash-2col so buttons elsewhere on the site keep the bold house style. */
.dash-2col .btn{border-width:1px;box-shadow:none}
.dash-2col .btn:hover{transform:none;box-shadow:none;filter:brightness(.97)}

/* ================= NO DROP-SHADOWS SITE-WIDE ==============================
   Flat look: every hard neo-brutalist drop-shadow is removed everywhere,
   including inline style="box-shadow:…" (a !important declaration outranks an
   inline style that isn't itself !important). Borders/colour now carry the
   structure on their own.
   To revert: delete this whole block — the original per-component shadows are
   untouched underneath it. */
*, *::before, *::after{box-shadow:none !important}

/* --- Focus visibility MUST survive -----------------------------------------
   Four focus styles used box-shadow, and two of them also set outline:none —
   i.e. the shadow WAS the only focus indicator. Blanket-removing it would leave
   keyboard users with no visible focus at all, so those cues are re-expressed
   as outlines (which the rule above cannot strip). */
/* (.hero-search focus is handled by :focus-within on the capsule itself — see the
   hero-search block above. An outline here too would draw a second, inner ring.) */
.el-input:focus{outline:2px solid var(--ink);outline-offset:1px}
.sf-chip input:focus-visible + span{outline:3px solid rgba(14,14,14,.35);outline-offset:1px}
.nf-switch input:focus-visible + .nf-track{outline:3px solid rgba(14,14,14,.35);outline-offset:1px}

/* Dashboard form fields: hairline borders, matching the flat cards/buttons.
   Element selectors (not classes) because nearly every dashboard input is
   unclassed — the border comes from wrappers like `.ugc-row input` (3px),
   `.pod-fee-inp input` (3px) and `.refer-link input` (3px). Those are all
   (0,1,1) specificity, same as these, so appending here wins on order.
   `.ugc-opt` is the checkbox row's own box, hence listed explicitly.
   Checkboxes/radios have no border-style, so this is a no-op on them. */
.dash-2col input,
.dash-2col select,
.dash-2col textarea,
.dash-2col .ugc-opt,
.dash-2col .team-invite-email{border-width:1px}
/* Attribute-qualified rules outrank the above, so match their specificity. */
.dash-2col input[type=text],
.dash-2col input[type=number],
.dash-2col input[type=email],
.dash-2col input[type=file]{border-width:1px}

/* ---- /pro plan picker -----------------------------------------------------
   Replaces two identical black slabs with two comparable choices. Each button
   states its own plan + price, so the decision happens on the button; Annual is
   the yellow "best value" pick and carries the SAVE badge. (The old markup put
   an unstyled `.save` span inside a dark button — `.save` is only themed under
   `.plan-price-alt`, so it rendered as bare text.) */
.plan-pick{display:grid;gap:10px}
.plan-pick form{margin:0}
.pp{display:flex;flex-direction:column;gap:7px;width:100%;text-align:left;
    font-family:inherit;color:var(--ink);background:#fff;cursor:pointer;
    border:1px solid var(--ink);border-radius:13px;padding:12px 15px;
    transition:background .12s ease}
.pp:hover{background:var(--cream)}
.pp:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.pp-top{display:flex;align-items:center;gap:8px}
.pp-plan{font-family:'Archivo',sans-serif;font-weight:900;font-size:12.5px;text-transform:uppercase;letter-spacing:.07em}
.pp-price{margin-left:auto;font-family:'Archivo',sans-serif;font-weight:900;font-size:17px;white-space:nowrap}
/* The CTA is the thing being clicked, so it leads — set in Archivo at the same
   weight as the price and a touch larger, with the arrow scaled to match. */
.pp-cta{display:flex;align-items:center;font-family:'Archivo',sans-serif;font-weight:900;font-size:18px;letter-spacing:-.01em}
.pp-go{margin-left:auto;font-weight:900;font-size:18px}
.pp-save{background:#0a8f3c;color:#fff;font-weight:900;font-size:9.5px;text-transform:uppercase;
         letter-spacing:.05em;border-radius:20px;padding:3px 8px;white-space:nowrap}
/* Annual = best value, so it wears the brand yellow. */
.pp-best{background:var(--yellow)}
.pp-best:hover{background:var(--yellow-deep)}
.pp-sub{font-family:inherit;font-weight:700;font-size:11.5px;color:#5f5f5f;margin-top:-1px}
.pp-best .pp-sub{color:#5a4a00}
/* Lifetime = the standout one-time deal: inverted ink card with yellow type. */
.pp-life{background:var(--ink);border-color:var(--ink)}
.pp-life:hover{background:#181818}
.pp-life .pp-plan,.pp-life .pp-price,.pp-life .pp-cta,.pp-life .pp-go{color:var(--yellow)}
.pp-life .pp-sub{color:#d7d7d7}
.pp-note{text-align:center;font-weight:600;color:#666;font-size:12.5px;margin:10px 0 0}

/* ================= /about =================================================
   Visual language: the site's flat neo-brutalist yellow/black. Motion reuses
   the global system (.reveal + [data-count] in assets/motion.js), which is
   already gated on prefers-reduced-motion — nothing here animates for users
   who asked it not to. */
.ab-hero{max-width:880px;margin:30px auto 4px;padding:0 4px;text-align:center}
.ab-kicker{display:inline-block;background:var(--ink);color:var(--yellow);font-family:'Archivo',sans-serif;font-weight:900;
           font-size:11px;letter-spacing:.14em;text-transform:uppercase;border-radius:20px;padding:6px 14px}
.ab-h1{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(30px,6vw,54px);line-height:1.03;letter-spacing:-.02em;margin:14px 0 0}
.ab-mark{background:var(--ink);color:var(--yellow);padding:0 .18em;border-radius:6px;display:inline-block;transform:rotate(-1.2deg)}
.ab-lede{max-width:660px;margin:16px auto 0;font-size:16.5px;font-weight:600;color:#3d3d22;line-height:1.6}
/* Staggered entrance — same easing/feel as the homepage hero. */
.motion .ab-kicker,.motion .ab-h1,.motion .ab-lede{opacity:0;animation:heroUp .8s cubic-bezier(.16,.84,.34,1) forwards}
.motion .ab-kicker{animation-delay:.04s}
.motion .ab-h1{animation-delay:.14s}
.motion .ab-lede{animation-delay:.26s}

.ab-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px}
.ab-stat{border:1px solid var(--ink);border-radius:13px;padding:14px 10px;background:#fff;text-align:center;min-width:0;transition:background .12s ease}
.ab-stat:hover{background:var(--cream)}
.ab-stat b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(20px,3.4vw,26px);line-height:1.1;font-variant-numeric:tabular-nums}
.ab-stat span{display:block;margin-top:4px;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:#8a8a6a;overflow-wrap:anywhere}
.ab-fine{text-align:center;font-size:12px;font-weight:600;color:#8a8a6a;margin:10px 0 0}

.ab-panel{margin-top:16px}
.ab-panel h2{margin:0 0 8px}

.ab-src{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:10px;margin-top:12px}
.ab-src-i{border:1px solid var(--ink);border-radius:11px;padding:12px;background:#fafaf5}
.ab-src-i b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:13.5px;margin-bottom:3px}
.ab-src-i span{font-size:13px;font-weight:600;color:#5c5c3e;line-height:1.5}

.ab-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:12px}
.ab-step{position:relative;border:1px solid var(--ink);border-radius:12px;padding:14px 13px 13px;background:#fafaf5}
.ab-step-n{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;
           background:var(--yellow);border:1px solid var(--ink);font-family:'Archivo',sans-serif;font-weight:900;font-size:13px;margin-bottom:7px}
.ab-step b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:14.5px;margin-bottom:4px}
.ab-step span{font-size:13px;font-weight:600;color:#5c5c3e;line-height:1.5}

.ab-brands .brand-logo-chip{border-width:1px}
.ab-who .ab-addr{margin-top:12px;padding:12px 14px;border-left:1px solid var(--yellow-deep);background:#fafaf5;border-radius:0 10px 10px 0;line-height:1.7}
.ab-cta{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}
@media(max-width:520px){.ab-cta .btn{width:100%;justify-content:center}}

/* ================= share bar ==============================================
   Desktop: a vertical rail pinned to the left edge of the viewport.
   Mobile (<=760px): a horizontal strip pinned BELOW the bottom tab bar — the
   tab bar shifts up by exactly the rail's height, and the rail carries the
   safe-area inset since it becomes the bottom-most element.
   Class prefix MUST stay `shr-`: `sr-*` belongs to the reels viewer. */
.share-rail{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:120;
            display:flex;flex-direction:column;align-items:stretch;
            background:#fff;border:1px solid var(--ink);border-left:none;
            border-radius:0 14px 14px 0;overflow:hidden}
/* Cap: real share count once shared, else a quiet "SHARE" label so the rail reads
   as a labelled control rather than a stack of anonymous icons. */
.shr-count,.shr-cap{background:var(--ink);color:var(--yellow);text-align:center}
.shr-count{padding:9px 6px 8px}
.shr-count b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:14px;line-height:1.05;font-variant-numeric:tabular-nums}
.shr-count span{display:block;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;opacity:.7}
.shr-cap{padding:8px 4px;font-family:'Archivo',sans-serif;font-weight:900;font-size:8.5px;
         letter-spacing:.12em;writing-mode:vertical-rl;transform:rotate(180deg);align-self:center;
         width:100%;box-sizing:border-box}
.shr-btn{position:relative;display:flex;align-items:center;justify-content:center;
         width:44px;height:42px;color:var(--ink);background:#fff;border:none;border-top:1px solid #ececdd;
         cursor:pointer;text-decoration:none;transition:background .13s ease,color .13s ease}
.shr-btn svg{display:block;transition:transform .13s ease}
.shr-btn:hover svg{transform:scale(1.12)}
.shr-btn:focus-visible{outline:2px solid var(--ink);outline-offset:-2px;z-index:1}
/* Brand colours on hover — instantly legible, and it makes the rail feel alive. */
.shr-x:hover{background:#0E0E0E;color:#fff}
.shr-facebook:hover{background:#1877F2;color:#fff}
.shr-linkedin:hover{background:#0A66C2;color:#fff}
.shr-reddit:hover{background:#FF4500;color:#fff}
.shr-whatsapp:hover{background:#25D366;color:#fff}
.shr-copy:hover{background:var(--yellow);color:var(--ink)}
/* Copy confirmation: swap the link glyph for a tick without touching the DOM. */
.shr-tick{position:absolute;inset:0;display:none;align-items:center;justify-content:center;
          font-weight:900;font-size:16px;color:#0a7d2c}
.shr-copy.ok{background:#d9f7e0}
.shr-copy.ok svg{opacity:0}
.shr-copy.ok .shr-tick{display:flex}
@media(max-width:760px){
  .share-rail{top:auto;left:0;right:0;bottom:0;transform:none;flex-direction:row;justify-content:center;
              border:none;border-top:1px solid var(--ink);border-radius:0;
              padding-bottom:env(safe-area-inset-bottom);z-index:299;background:#fff}
  .shr-cap{display:none}                       /* no room for the vertical label */
  /* Stacked, not side-by-side: laying the number and label on one baseline made the
     block ~110px wide, which crushed six icons into a 375px screen. Stacking halves
     the width and lets the number actually read as the headline. */
  .shr-count{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;
             gap:1px;min-width:54px;padding:0 9px;height:44px;background:var(--ink);
             border-right:1px solid var(--ink)}
  .shr-count b{font-size:15px;line-height:1;letter-spacing:-.01em}
  .shr-count span{font-size:7.5px;line-height:1;letter-spacing:.07em;opacity:.72}
  /* min-width:0 lets the icons shrink rather than overflow on a 360px phone. */
  .shr-btn{flex:1;min-width:0;max-width:72px;height:44px;border-top:none;border-left:1px solid #ececdd}
  .shr-btn:first-of-type{border-left:none}
  .shr-count + .shr-btn{border-left:none}
  /* THESE TWO ARE LOAD-BEARING: without them the tab bar stays at bottom:0 and
     (z-index 300 vs 299) simply covers the share strip. 46px = 44px buttons +
     the rail's 2px top border. Body padding clears both fixed bars. */
  .mobile-tabbar{bottom:calc(46px + env(safe-area-inset-bottom))}
  body{padding-bottom:calc(64px + 46px + env(safe-area-inset-bottom))}
}
/* Narrow desktop: shrink slightly so the rail can't collide with page content. */
@media(min-width:761px) and (max-width:1180px){
  .share-rail{transform:translateY(-50%) scale(.88);transform-origin:left center}
}

/* Narrow desktop: don't let the rail collide with page content. */
@media(min-width:761px) and (max-width:1180px){.share-rail{transform:translateY(-50%) scale(.9);transform-origin:left center}}

/* ================= featured video (landing page) ========================== */
#featured-video .fv-badge{background:var(--ytred,#FF0000);color:#fff;font-family:'Archivo',sans-serif;
  font-weight:900;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;border-radius:20px;padding:5px 12px}
.fv-card{display:flex;gap:18px;align-items:stretch;flex-wrap:wrap}
.fv-stage{position:relative;flex:1 1 560px;min-width:0;aspect-ratio:16/9;background:#000;
  border:1px solid var(--ink);border-radius:16px;overflow:hidden}
.fv-stage iframe,.fv-stage #fv-player{position:absolute;inset:0;width:100%;height:100%;border:0}
/* Prominent, pulsing unmute affordance — sound needs a user gesture, so we invite one. */
.fv-unmute{position:absolute;left:14px;bottom:14px;z-index:3;display:inline-flex;align-items:center;gap:7px;
  background:var(--yellow);color:var(--ink);border:1px solid var(--ink);border-radius:30px;
  padding:9px 16px;font-family:'Archivo',sans-serif;font-weight:900;font-size:14px;cursor:pointer;
  animation:fvPulse 1.8s ease-in-out infinite}
.fv-unmute .fv-unmute-ic{font-size:16px}
.fv-unmute.gone{display:none}
@keyframes fvPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.motion-reduce .fv-unmute,html:not(.motion) .fv-unmute{animation:none}
.fv-meta{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:8px}
.fv-title{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(18px,2.4vw,24px);line-height:1.2;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fv-sub{font-size:13.5px;font-weight:600;color:#5c5c3e;line-height:1.5}
.fv-yt{align-self:flex-start;font-family:'Archivo',sans-serif;font-weight:900;font-size:13px;
  color:var(--ink);text-decoration:none;border-bottom:1px solid var(--yellow-deep);padding-bottom:1px}
.fv-yt:hover{border-bottom-color:var(--ink)}
@media(max-width:760px){
  .fv-card{flex-direction:column;gap:14px}
  /* Stack full-width; reset the flex-basis (it was a 560px HEIGHT in a column) so the
     16:9 aspect-ratio governs the video height instead of stretching it. */
  .fv-stage{flex:0 0 auto;width:100%}
  .fv-meta{flex:0 0 auto}
  .fv-unmute{left:10px;bottom:10px;padding:8px 13px;font-size:13px}
  #featured-video .section-head{flex-wrap:wrap;gap:8px}
}

/* Dashboard — Media Kit Pro-upsell card (2nd column). Premium ink card + a little media-kit mock. */
.mk-card{background:var(--ink);border-color:var(--ink);color:#fff;position:relative;overflow:hidden}
.mk-pro{position:absolute;top:12px;right:12px;background:var(--yellow);color:var(--ink);font-family:'Archivo',sans-serif;font-weight:900;font-size:10px;letter-spacing:.08em;padding:3px 9px;border-radius:20px}
.mk-preview{display:flex;justify-content:center;margin:4px 0 15px}
.mk-doc{position:relative;display:block;width:128px;height:90px;background:#fff;border:1px solid var(--yellow);border-radius:9px;padding:9px;box-shadow:5px 5px 0 rgba(255,224,0,.30)}
.mk-doc-av{position:absolute;right:9px;top:9px;width:18px;height:18px;border-radius:50%;background:var(--yellow);border:1px solid var(--ink)}
.mk-doc-hd{display:block;height:11px;width:56%;background:var(--ink);border-radius:3px;margin-bottom:9px}
.mk-doc-ln{display:block;height:5px;background:#e7e7e7;border-radius:3px;margin-bottom:5px}
.mk-doc-ln.short{width:48%}
.mk-doc-stats{display:flex;gap:5px;margin-top:10px}
.mk-doc-stats i{flex:1;height:19px;background:#FFF3B0;border:1.5px solid var(--ink);border-radius:4px;display:block}
.mk-h{font-family:'Archivo',sans-serif;font-weight:900;font-size:19px;line-height:1.12;margin:0 0 8px;color:#fff}
.mk-sub{font-size:12.5px;color:#d6d6d6;font-weight:600;margin:0 0 13px;line-height:1.45}
.mk-feat{list-style:none;padding:0;margin:0 0 16px}
.mk-feat li{font-size:12.5px;font-weight:700;color:#efefef;padding:3px 0 3px 22px;position:relative}
.mk-feat li:before{content:"\2713";position:absolute;left:0;color:var(--yellow);font-weight:900}
.mk-cta{width:100%;box-sizing:border-box;text-align:center;background:var(--yellow);color:var(--ink);border-color:var(--yellow);font-weight:900}
.mk-cta:hover{background:var(--yellow-deep);color:var(--ink)}

/* Media kit — enriched sections + print-to-PDF */
.mk-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:#d9f7e0;border:1px solid #0a8f3c;border-radius:12px;padding:12px 16px;margin-bottom:16px}
.mk-tb-note{font-weight:700;font-size:13.5px;color:#0a5c2a}
.mk-tb-btns{display:flex;gap:8px}
.mk-rates{width:100%;border-collapse:collapse}
.mk-rates td{padding:9px 4px;border-bottom:1.5px solid #eee;font-weight:600;font-size:14px}
.mk-rates td:last-child{text-align:right;white-space:nowrap}
.mk-rates tr:last-child td{border-bottom:none}
.mk-aud{margin-bottom:10px}
.mk-bar-row{display:flex;align-items:center;gap:10px;margin-bottom:7px;font-weight:700;font-size:13px}
.mk-bar-row>span:first-child{width:78px;flex-shrink:0}
.mk-bar{flex:1;height:12px;background:#f0f0f0;border:1px solid var(--ink);border-radius:20px;overflow:hidden}
.mk-bar i{display:block;height:100%;background:var(--yellow)}
.mk-bar-row>b{width:40px;text-align:right}
.mk-age{display:flex;align-items:flex-end;gap:8px;height:86px;margin:14px 0 6px;padding-top:6px}
.mk-age-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px}
.mk-age-bar{display:block;width:68%;background:var(--ink);border-radius:4px 4px 0 0;min-height:6px}
.mk-age-l{font-size:10px;font-weight:700;color:#555}
.mk-age-p{font-size:10px;font-weight:800}
.mk-others{display:flex;flex-wrap:wrap;gap:8px}
.mk-other{display:inline-flex;align-items:center;gap:5px;background:#faf7ea;border:1px solid var(--ink);border-radius:20px;padding:5px 12px;font-size:13px;font-weight:700}
.mk-foot{text-align:center;font-weight:700;color:#888;font-size:13px;margin-top:18px}
.mk-foot a{text-decoration:underline;color:#888}
@media print{
  .site-header,.site-footer,.mobile-tabbar,.share-rail,.cookie-bar,.mk-toolbar,.mk-noprint{display:none!important}
  body{background:#fff!important}
  .mediakit{max-width:100%!important;margin:0!important;padding:0!important}
  .panel,.mk-hero,.mk-stat{box-shadow:none!important;break-inside:avoid}
  a{color:#000!important}
}

/* ===================== ID VERIFICATION ===================== */
.vid-wrap{max-width:560px;margin:26px auto 60px;padding:0 16px}
.vid-card{background:#fff;border:1px solid var(--ink);border-radius:18px;box-shadow:6px 6px 0 var(--ink);padding:26px 24px}
.vid-head{text-align:center;margin-bottom:18px}
.vid-badge{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#1d9bf0;color:#fff;font-size:26px;font-weight:900;border:1px solid var(--ink);box-shadow:3px 3px 0 var(--ink);margin-bottom:10px}
.vid-head h1{font-family:Archivo,sans-serif;font-size:28px;margin:6px 0 8px}
.vid-sub{color:#555;font-weight:600;font-size:14.5px;line-height:1.5;margin:0}
.vid-alert{border:1px solid var(--ink);border-radius:11px;padding:11px 14px;font-weight:700;font-size:14px;margin:0 0 16px}
.vid-alert.ok{background:#d9f7e0;border-color:#0a8f3c}
.vid-alert.warn{background:#fff3cd;border-color:#d9a800}
.vid-state{display:flex;gap:14px;align-items:center;border:1px solid #0a8f3c;background:#d9f7e0;border-radius:12px;padding:16px 18px}
.vid-state.pend{border-color:#d9a800;background:#fff8e1}
.vid-state-ic{font-size:30px}
.vid-state b{font-family:Archivo,sans-serif;font-size:17px}
.vid-state p{margin:4px 0 0;font-weight:600;font-size:13.5px}
.vid-pick{margin:0 0 14px}
.vid-pick label{display:block;font-weight:800;font-size:13px;margin-bottom:5px}
.vid-pick select{width:100%;padding:9px 11px;border:1px solid var(--ink);border-radius:10px;font-weight:700}
.vid-listing{display:flex;gap:12px;align-items:center;border:1px solid #eee;border-radius:12px;padding:10px 12px;margin:0 0 16px}
.vid-listing img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1px solid var(--ink)}
.vid-listing-name{font-family:Archivo,sans-serif;font-weight:800}
.vid-listing-sub{font-size:12.5px;color:#888;font-weight:600}
.vid-price{display:flex;align-items:baseline;gap:9px;margin:0 0 14px;flex-wrap:wrap}
.vid-amt{font-family:Archivo,sans-serif;font-size:30px;font-weight:900}
.vid-free{font-family:Archivo,sans-serif;font-size:24px;font-weight:900;color:#0a8f3c}
.vid-price-note{color:#888;font-weight:600;font-size:13px}
.vid-price-note a,.vid-note a{color:#1d9bf0;font-weight:800}
.vid-drop{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;border:1px dashed #bbb;border-radius:14px;padding:26px 18px;cursor:pointer;transition:.15s;position:relative}
.vid-drop:hover{border-color:#1d9bf0;background:#f5fbff}
.vid-drop.has{border-color:#0a8f3c;border-style:solid;background:#f3fdf5}
.vid-drop input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}
.vid-drop-ic{font-size:34px}
.vid-drop-t{font-family:Archivo,sans-serif;font-weight:800;font-size:15px}
.vid-drop-s{font-size:12px;color:#999;font-weight:600;line-height:1.4}
.vid-submit{width:100%;margin-top:14px;background:#1d9bf0;color:#fff;border-color:var(--ink);justify-content:center}
.vid-trust{font-size:12px;color:#888;font-weight:600;line-height:1.5;margin:12px 2px 0}
.vid-why{list-style:none;padding:14px 0 0;margin:14px 0 0;border-top:1px solid #f0f0f0;display:grid;gap:8px}
.vid-why li{font-size:13.5px;color:#555;font-weight:600;padding-left:22px;position:relative}
.vid-why li:before{content:"✓";position:absolute;left:0;color:#0a8f3c;font-weight:900}

/* ===================== DASHBOARD VERIFY CARD ===================== */
.vfy-card{position:relative;text-align:center}
.vfy-badge{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#1d9bf0;color:#fff;font-size:23px;font-weight:900;border:1px solid var(--ink);box-shadow:2px 2px 0 var(--ink);margin-bottom:8px}
.vfy-h{font-family:Archivo,sans-serif;font-size:20px;margin:4px 0 6px}
.vfy-sub{color:#666;font-weight:600;font-size:13px;line-height:1.5;margin:0 0 12px}
.vfy-feat{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:7px;text-align:left}
.vfy-feat li{font-size:12.5px;color:#444;font-weight:600;padding-left:20px;position:relative}
.vfy-feat li:before{content:"✓";position:absolute;left:0;color:#1d9bf0;font-weight:900}
.vfy-price{display:flex;align-items:baseline;justify-content:center;gap:7px;margin:0 0 12px;flex-wrap:wrap}
.vfy-amt{font-family:Archivo,sans-serif;font-size:24px;font-weight:900}
.vfy-free{font-family:Archivo,sans-serif;font-size:19px;font-weight:900;color:#0a8f3c}
.vfy-note{color:#999;font-weight:600;font-size:12px}
.vfy-note a{color:#1d9bf0;font-weight:800}
.vfy-cta{width:100%;box-sizing:border-box;background:#1d9bf0;color:#fff;border-color:var(--ink)}
.vfy-done{display:flex;gap:12px;align-items:center;text-align:left}
.vfy-check{display:inline-grid;place-items:center;min-width:40px;height:40px;border-radius:50%;background:#d9f7e0;border:1px solid #0a8f3c;font-size:20px}
.vfy-done.pend .vfy-check{background:#fff8e1;border-color:#d9a800}
.vfy-done b{font-family:Archivo,sans-serif;font-size:15px}
.vfy-done p{margin:3px 0 0;font-size:12.5px;color:#777;font-weight:600}

/* ===================== AI GROWTH ADVISOR ===================== */
.growth-panel{background:linear-gradient(180deg,#fffef5 0%,#fff 120px)}
.ga-top{display:flex;gap:13px;align-items:flex-start;margin-bottom:14px}
.ga-listing-picker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;padding:0 0 14px;border-bottom:1px dashed #e6e0c4}
.ga-lp-label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#8a8a6a;margin-right:2px}
.ga-lp-tab{display:inline-flex;align-items:center;gap:7px;max-width:210px;background:#fff;border:1px solid var(--ink);border-radius:11px;padding:7px 12px;font-size:13px;font-weight:800;color:#555;text-decoration:none;box-shadow:2px 2px 0 var(--ink);transition:transform .06s}
.ga-lp-tab:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink);color:var(--ink)}
.ga-lp-tab svg,.ga-lp-tab img{width:16px;height:16px;flex:none}
.ga-lp-tab .ga-lp-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ga-lp-tab.on{background:var(--yellow);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.ga-lp-dot{flex:none;color:#0a8f3c;font-weight:900;font-size:12px}
.ga-lp-tab.on .ga-lp-dot{color:#0E0E0E}
.ga-lp-lock{flex:none;font-size:11px;opacity:.7}
.ga-icon{flex:none;width:46px;height:46px;border-radius:12px;background:var(--ink);color:var(--yellow);font-size:24px;display:flex;align-items:center;justify-content:center;box-shadow:3px 3px 0 rgba(0,0,0,.12)}
.ga-top-tx{flex:1;min-width:0}
.ga-top-tx h2{font-family:Archivo,sans-serif;font-size:21px;margin:2px 0 4px;display:flex;align-items:center;gap:8px}
.ga-ai{font-size:10px;font-weight:900;background:linear-gradient(90deg,#7b2ff7,#1d9bf0);color:#fff;padding:2px 8px;border-radius:20px;letter-spacing:1px;box-shadow:0 1px 4px rgba(123,47,247,.35)}
.ga-intro{font-size:13px;color:#777;font-weight:600;margin:0;line-height:1.5}

.ga-empty{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border:1px dashed #d9d5b8;border-radius:14px;padding:20px 22px;background:#fffdf0}
.ga-empty-ic{font-size:40px;line-height:1}
.ga-empty-tx{flex:1;min-width:200px;display:flex;flex-direction:column;gap:3px}
.ga-empty-tx b{font-family:Archivo,sans-serif;font-size:16px}
.ga-empty-tx span{font-size:13px;color:#777;font-weight:600;line-height:1.5}

.ga-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.ga-chip{display:inline-flex;align-items:baseline;gap:5px;background:#fff;border:1px solid var(--ink);border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600;color:#666;box-shadow:2px 2px 0 var(--ink)}
.ga-chip b{font-family:Archivo,sans-serif;font-size:14px;color:var(--ink);font-weight:900}

.ga-headline{font-family:Archivo,sans-serif;font-weight:900;font-size:20px;line-height:1.3;margin:0 0 10px;letter-spacing:-.3px}
.ga-assess{font-size:14px;color:#3a3a3a;font-weight:500;line-height:1.65;margin:0 0 18px}

.ga-focus{position:relative;background:var(--yellow);border:1px solid var(--ink);border-radius:14px;padding:14px 18px;margin:0 0 22px;box-shadow:5px 5px 0 var(--ink)}
.ga-focus-lbl{font-family:Archivo,sans-serif;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;font-weight:900;margin-bottom:5px}
.ga-focus-tx{font-size:15px;font-weight:700;line-height:1.5}

.ga-tips-h{font-family:Archivo,sans-serif;font-weight:900;font-size:13px;letter-spacing:.5px;text-transform:uppercase;color:#999;margin:0 0 12px;display:flex;align-items:center;gap:10px}
.ga-tips-h:after{content:"";flex:1;height:2px;background:#f0f0f0}
.ga-tips{display:grid;gap:12px}
.ga-tip{display:flex;gap:14px;background:#fff;border:1px solid #ececec;border-radius:14px;padding:15px 16px;transition:transform .12s,border-color .12s,box-shadow .12s}
.ga-tip:hover{transform:translateY(-2px);border-color:var(--ink);box-shadow:4px 4px 0 var(--ink)}
.ga-tip-n{flex:none;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#1d1d1d,#3a3a3a);color:var(--yellow);font-weight:900;font-size:14px;display:flex;align-items:center;justify-content:center;font-family:Archivo,sans-serif;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.ga-tip-body{flex:1;min-width:0}
.ga-tip-t{font-family:Archivo,sans-serif;font-weight:800;font-size:15.5px;margin-bottom:5px;line-height:1.3}
.ga-tip-i{font-size:13px;color:#666;font-weight:500;line-height:1.6;margin-bottom:9px}
.ga-tip-a{font-size:13px;color:#0d3b66;font-weight:600;line-height:1.55;background:#eef6ff;border:1.5px solid #cfe4fb;padding:8px 11px;border-radius:9px}
.ga-tip-a-lbl{display:inline-block;font-family:Archivo,sans-serif;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;color:#1d6fe0;background:#fff;border:1.5px solid #cfe4fb;border-radius:6px;padding:1px 6px;margin-right:7px;vertical-align:1px}

.ga-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid #f2f2f2}
.ga-gen{font-size:11.5px;color:#aaa;font-weight:600}
.ga-refresh{padding:7px 15px;font-size:13px}
@media (max-width:560px){.ga-foot{flex-direction:column;align-items:stretch}.ga-refresh{width:100%}.ga-focus{box-shadow:3px 3px 0 var(--ink)}}

/* ---- Growth Advisor: generating overlay ---- */
.ga-loading{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(14,14,14,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.ga-loading.on{display:flex;animation:gaFade .2s ease}
@keyframes gaFade{from{opacity:0}to{opacity:1}}
.ga-loading-card{width:100%;max-width:380px;background:#fff;border:1px solid var(--ink);border-radius:20px;box-shadow:8px 8px 0 var(--ink);padding:32px 28px;text-align:center}
.ga-orb{position:relative;width:84px;height:84px;margin:0 auto 20px}
.ga-orb-emoji{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:38px;animation:gaPulse 1.6s ease-in-out infinite}
.ga-orb-ring{position:absolute;inset:0;border-radius:50%;border:1px solid #f0e6a8;border-top-color:var(--ink);animation:gaSpin .9s linear infinite}
@keyframes gaSpin{to{transform:rotate(360deg)}}
@keyframes gaPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.14)}}
.ga-loading-title{font-family:Archivo,sans-serif;font-weight:900;font-size:19px;letter-spacing:-.3px}
.ga-dots i{opacity:0;animation:gaDot 1.4s infinite}
.ga-dots i:nth-child(2){animation-delay:.2s}.ga-dots i:nth-child(3){animation-delay:.4s}
@keyframes gaDot{0%,60%,100%{opacity:0}30%{opacity:1}}
.ga-loading-msg{margin:8px 0 18px;font-size:14px;font-weight:700;color:#1d6fe0;min-height:20px;transition:opacity .3s}
.ga-loading-bar{height:9px;border-radius:6px;background:#f0f0f0;border:1px solid var(--ink);overflow:hidden}
.ga-loading-bar>span{display:block;height:100%;width:40%;background:var(--yellow);border-radius:4px;animation:gaSlide 1.3s ease-in-out infinite}
@keyframes gaSlide{0%{margin-left:-40%}100%{margin-left:100%}}
.ga-loading-sub{margin-top:14px;font-size:12px;color:#999;font-weight:600;line-height:1.5}
@media (prefers-reduced-motion: reduce){
  .ga-orb-ring{animation:none;border-top-color:#f0e6a8}
  .ga-orb-emoji,.ga-dots i{animation:none;opacity:1}
  .ga-loading-bar>span{animation:none;width:100%;margin-left:0}
  .ga-loading.on{animation:none}
}

/* ---- Growth Advisor: projection chart ---- */
.ga-proj{border:1px solid var(--ink);border-radius:16px;padding:16px 18px 14px;margin:0 0 20px;background:linear-gradient(180deg,#fffdf2,#fff);box-shadow:4px 4px 0 var(--ink)}
.ga-proj-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.ga-proj-lbl{font-family:Archivo,sans-serif;font-weight:900;font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:#777}
.ga-proj-big{font-family:Archivo,sans-serif;font-weight:900;font-size:26px;line-height:1.1;margin-top:3px;letter-spacing:-.5px}
.ga-proj-big span{font-size:13px;font-weight:700;color:#888;letter-spacing:0;text-transform:none}
.ga-proj-uplift{text-align:right;font-family:Archivo,sans-serif;font-weight:900;font-size:22px;color:#0a8f3c;line-height:1.1}
.ga-proj-uplift span{display:block;font-size:11px;font-weight:700;color:#8aa;letter-spacing:0}
.ga-chart-svg{display:block;width:100%;height:auto;margin:2px 0 6px}
.ga-proj-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:11.5px;font-weight:700;color:#666}
.ga-proj-legend i{display:inline-block;width:16px;height:4px;border-radius:2px;margin-right:6px;vertical-align:middle}
.ga-lg-plan{background:#0E0E0E}
.ga-lg-base{background:#c9c9c9}
.ga-proj-note{font-size:11px;color:#a5a5a5;font-weight:600;line-height:1.5;margin-top:8px}

/* locked regenerate + cooldown */
.ga-regen-locked{position:relative}
.ga-lock{display:inline-block;font-size:10px;font-weight:900;letter-spacing:.5px;background:var(--ink);color:var(--yellow);padding:1px 6px;border-radius:5px;margin-left:5px;vertical-align:1px}
.ga-cooldown{font-size:12.5px;color:#bbb;font-weight:700}

/* pro-gate modal feature list */
.gpg-feat{list-style:none;padding:0;margin:14px 0 16px;display:grid;gap:8px;text-align:left}
.gpg-feat li{font-size:13px;color:#444;font-weight:600;padding-left:24px;position:relative;line-height:1.5}
.gpg-feat li:before{content:"✓";position:absolute;left:0;top:0;color:#0a8f3c;font-weight:900}

/* ---- Pro coupon field ---- */
.pro-coupon{display:flex;gap:8px;margin:14px 0 4px;align-items:stretch}
.pro-coupon input{flex:1;min-width:0;padding:10px 13px;border:1px solid var(--ink);border-radius:10px;font-weight:700;font-size:14px;font-family:inherit;text-transform:uppercase}
.pro-coupon input::placeholder{text-transform:none;font-weight:600;color:#aaa}
.pro-coupon .btn{flex:none;padding:0 16px}
.pro-coupon-msg{font-size:12.5px;font-weight:700;min-height:16px;margin:2px 2px 0}
.pro-coupon-msg.ok{color:#0a8f3c}
.pro-coupon-msg.bad{color:#c0392b}

/* ---- deal page: Pro fee upsell ---- */
.dm-upsell{display:block;margin:8px 0 2px;font-weight:800;font-size:13px;color:#1d6fe0;text-decoration:none}
.dm-upsell:hover{text-decoration:underline}

/* ---- /pro coupon: animated strike-through of original price ---- */
.pp-price.discounted{white-space:nowrap}
.pp-orig{position:relative;color:rgba(0,0,0,.42);margin-right:7px}
.pp-life .pp-orig{color:rgba(255,224,0,.55)}   /* lifetime card is black — a dark strike is invisible there */
.pp-orig::after{content:'';position:absolute;left:-2px;right:-2px;top:52%;height:2px;background:currentColor;border-radius:2px;transform:scaleX(0);transform-origin:left;animation:ppStrike .34s ease forwards}
@keyframes ppStrike{to{transform:scaleX(1)}}
.pp-new{display:inline-block;opacity:0;animation:ppPop .42s .26s cubic-bezier(.2,.9,.3,1.4) both}
@keyframes ppPop{0%{opacity:0;transform:translateY(3px) scale(.85)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.pp-orig::after{animation:none;transform:scaleX(1)}.pp-new{animation:none;opacity:1}}
/* Mobile: with a coupon applied the was-price + new-price no longer fit on one line and overflowed the
   button — stack them (old above, new below), right-aligned, so they stay inside the card. */
@media(max-width:560px){
  .pp-top{flex-wrap:wrap;row-gap:2px}
  .pp-price.discounted{display:inline-flex;flex-direction:column;align-items:flex-end;white-space:normal;line-height:1.05}
  .pp-price.discounted .pp-orig{margin-right:0;font-size:12px}
}

/* ---- X / Twitter recent-posts feed ---- */
.xposts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.xpost{display:flex;flex-direction:column;gap:8px;border:1px solid #ececec;border-radius:12px;padding:12px 13px;text-decoration:none;color:inherit;transition:border-color .12s,box-shadow .12s,transform .12s;background:#fff}
.xpost:hover{border-color:var(--ink);box-shadow:3px 3px 0 var(--ink);transform:translateY(-2px)}
.xpost-media{position:relative;display:block;border-radius:9px;overflow:hidden;aspect-ratio:16/9;background:#0e0e0e}
.xpost-media img{width:100%;height:100%;object-fit:cover;display:block}
.xpost-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.6);color:#fff;border-radius:50%;font-size:16px;padding-left:3px}
.xpost-text{font-size:13.5px;font-weight:600;color:#222;line-height:1.5;white-space:pre-wrap;word-break:break-word}
.xpost-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;font-weight:700;color:#888;margin-top:auto;padding-top:2px}
.xpost-meta span{display:inline-flex;align-items:center;gap:4px}
.xpost-meta svg{opacity:.75}
@media(max-width:600px){.xposts{grid-template-columns:1fr}}

/* ---- X recent-posts: featured "top post" hero ---- */
.xpost-hero{display:flex;flex-direction:row;gap:15px;align-items:stretch;border-color:var(--ink);box-shadow:4px 4px 0 var(--ink);margin-bottom:14px}
.xpost-hero:hover{transform:translateY(-2px);box-shadow:6px 6px 0 var(--ink)}
.xpost-hero .xpost-media{aspect-ratio:16/10;min-width:190px;max-width:260px;flex:none;margin:0}
.xpost-hero .xpost-body{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}
.xpost-toptag{font-family:'Archivo',sans-serif;font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#e0475b}
@media(max-width:600px){.xpost-hero{flex-direction:column}.xpost-hero .xpost-media{max-width:none;width:100%}}

/* ---- Configure Deals panel (dashboard) ---- */
.dcfg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
.dcfg-title{margin:0;font-family:'Archivo',sans-serif;font-weight:900;font-size:21px;letter-spacing:-.3px}
.dcfg-sub{margin:4px 0 0;font-size:13px;font-weight:600;color:#666;max-width:640px;line-height:1.5}
.dcfg-listing{flex:none;display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--ink);border-radius:99px;box-shadow:2px 2px 0 var(--ink);padding:5px 13px;font-family:'Archivo',sans-serif;font-weight:900;font-size:13px}
.dcfg-listing svg{flex:none}
.dcfg-saved{background:#d9f7e0;border-color:#0a8f3c;margin:12px 0 0}
.dcfg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
@media(max-width:760px){
  /* minmax(0,1fr) (not 1fr) so a card's content can't force the column wider than the viewport. */
  .dcfg-grid{grid-template-columns:minmax(0,1fr)}
  .dcfg-card{min-width:0;max-width:100%}
  .dcfg-tierwrap,.dcfg-tiers,.dcfg-inputs{min-width:0;max-width:100%}
  .dcfg-tier .dcfg-price{width:100px}          /* narrower price segment leaves room for the label + remove */
  .dcfg-tier .dcfg-trm{width:34px}
  .dcfg-tlabel{min-width:0;flex:1 1 0}
}
.dcfg-card{border:1px solid var(--ink);border-radius:13px;background:#fff;box-shadow:3px 3px 0 var(--ink);padding:13px 15px;display:flex;flex-direction:column;gap:7px;transition:opacity .12s}
.dcfg-card.off{opacity:.5}
.dcfg-toprow{display:flex;align-items:center;gap:9px;cursor:pointer}
.dcfg-chk{width:18px;height:18px;flex:none;accent-color:var(--ink);cursor:pointer}
.dcfg-name{font-family:'Archivo',sans-serif;font-weight:900;font-size:14.5px;line-height:1.2;flex:1;min-width:0}
.dcfg-unit{flex:none;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#8a7a1c;background:var(--yellow);border:1.5px solid var(--ink);border-radius:99px;padding:2px 8px}
.dcfg-desc{font-size:12.5px;font-weight:600;color:#666;line-height:1.45;min-height:0}
.dcfg-inputs{display:flex;gap:8px;margin-top:2px;flex-wrap:wrap}
.dcfg-price{flex:none;display:flex;align-items:center;border:1px solid var(--ink);border-radius:9px;background:#fff;overflow:hidden;width:150px}
.dcfg-price:focus-within{outline:2.5px solid var(--yellow-deep);outline-offset:1px}
.dcfg-cur{padding:0 2px 0 11px;font-family:'Archivo',sans-serif;font-weight:900;font-size:15px;color:#555}
.dcfg-price input{flex:1;min-width:0;border:none;outline:none;background:transparent;padding:9px 6px 9px 2px;font-family:'Archivo',sans-serif;font-weight:900;font-size:15px;color:var(--ink)}
.dcfg-per{padding:0 10px 0 0;font-size:12px;font-weight:800;color:#999}
.dcfg-swap{flex:none;display:flex;align-items:center;width:150px;padding:9px 11px;border:1px dashed #bbb;border-radius:9px;font-weight:800;font-size:13px;color:#777}
.dcfg-terms{flex:1;min-width:180px;border:1px solid var(--ink);border-radius:9px;padding:9px 12px;font-family:inherit;font-weight:600;font-size:13.5px;color:var(--ink);background:#fff}
.dcfg-terms:focus{outline:2.5px solid var(--yellow-deep);outline-offset:1px}
.dcfg-terms::placeholder{color:#a3a3a3;font-weight:500}
.dcfg-save{margin-top:14px}
.dcfg-emo{margin-right:6px}
.dcfg-price{width:168px}

/* Configure-deals field labels (replaces terms placeholder with a real label) */
.dcfg-inputs{align-items:flex-end}
.dcfg-field{display:flex;flex-direction:column;gap:4px}
.dcfg-field-terms{flex:1;min-width:180px}
.dcfg-lbl{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#8a8a8a}
.dcfg-lbl .dcfg-opt{text-transform:none;letter-spacing:0;color:#b3b3b3;font-weight:600}
.dcfg-field-terms .dcfg-terms{width:100%;min-width:0}

/* ---- Collapsible Configure-Deals panel ---- */
details.dealcfg>summary{list-style:none;cursor:pointer;outline:none}
details.dealcfg>summary::-webkit-details-marker{display:none}
details.dealcfg>summary .dcfg-head{margin:0}
details.dealcfg>summary:hover .dcfg-title{color:var(--yellow-deep)}
.dcfg-chev{display:inline-block;font-size:14px;color:#aaa;transition:transform .18s ease;margin-left:2px}
details.dealcfg[open]>summary .dcfg-chev{transform:rotate(180deg)}
.dcfg-count{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--yellow);color:var(--ink);font-family:'Archivo',sans-serif;font-weight:900;font-size:11px;vertical-align:middle}

/* ---- Combined multi-listing deal config: one card, listing picker, one form at a time ---- */
.dcfg-combined .dcfg-chead{margin:0 0 14px}
.dcfg-picker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 18px;padding:0 0 16px;border-bottom:1px dashed #e6e0c4}
.dcfg-picker-label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#8a8a6a;margin-right:2px}
.dcfg-tab{display:inline-flex;align-items:center;gap:7px;max-width:230px;background:#fff;border:1px solid var(--ink);border-radius:11px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:800;color:#555;cursor:pointer;box-shadow:2px 2px 0 var(--ink);transition:transform .06s ease,box-shadow .06s ease}
.dcfg-tab:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink);color:var(--ink)}
.dcfg-tab svg,.dcfg-tab img{width:16px;height:16px;flex:none}
.dcfg-tab .dcfg-tab-nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dcfg-tab.on{background:var(--yellow);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.dcfg-tab.on .dcfg-count{background:var(--ink);color:var(--yellow)}
/* Inside the combined card the per-listing panel is just the form body — strip its card chrome + hide
   its own summary/header (the combined card + picker already frame it). */
.dcfg-combined .dealcfg{border:none;box-shadow:none;background:none;padding:0;margin:0;border-radius:0}
.dcfg-combined .dcfg-summary{display:none}

/* ---- Pricing-option tiers (buyer picks one) ---- */
.dcfg-tierwrap{width:100%}
.dcfg-tiers{display:flex;flex-direction:column;gap:8px;margin-top:4px}
/* Each option is ONE connected control — name | price | remove — instead of three floating boxes. */
.dcfg-tier{display:flex;align-items:stretch;border:1px solid var(--ink);border-radius:10px;background:#fff;overflow:hidden;box-shadow:2px 2px 0 var(--ink)}
.dcfg-tier:focus-within{outline:2.5px solid var(--yellow-deep);outline-offset:1px}
.dcfg-tlabel{flex:1;min-width:0;border:none;border-radius:0;padding:10px 13px;font-family:inherit;font-weight:800;font-size:13.5px;color:var(--ink);background:transparent}
.dcfg-tlabel:focus{outline:none}
.dcfg-tlabel::placeholder{color:#a3a3a3;font-weight:500}
.dcfg-tier .dcfg-price{width:132px;flex:none;border:none;border-left:1.5px solid #ececd6;border-radius:0;background:#faf8ec}
.dcfg-tier .dcfg-price:focus-within{outline:none}
.dcfg-tier .dcfg-price input{width:100%;background:transparent}
.dcfg-trm{flex:none;width:40px;border:none;border-left:1.5px solid #ececd6;border-radius:0;background:#fff;color:#ccccc0;font-size:16px;font-weight:900;line-height:1;cursor:pointer;padding:0;transition:background .1s ease,color .1s ease}
.dcfg-trm:hover{background:#c00;color:#fff}
/* + Add option — a light dashed pill (was a bare underline link). */
.dcfg-tadd{align-self:flex-start;margin-top:10px;background:none;border:1.5px dashed var(--ink);border-radius:9px;padding:6px 12px;font-family:'Archivo',sans-serif;font-weight:800;font-size:12.5px;color:var(--ink);cursor:pointer;transition:background .1s ease,color .1s ease}
.dcfg-tadd:hover{background:var(--ink);color:var(--yellow)}
.dcfg-optlink{align-self:flex-start;margin-top:2px;background:none;border:none;padding:0;font-weight:700;font-size:12px;color:#8a8a8a;text-decoration:underline;cursor:pointer}
.dcfg-optlink:hover{color:var(--ink)}
.dmr-from{font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#999;margin-right:2px}

/* ---- "Adding options is Pro" upgrade popup ---- */
.dcfg-progate{display:none;position:fixed;inset:0;z-index:1000;background:rgba(14,14,14,.55);align-items:center;justify-content:center;padding:20px}
.dcfg-progate.on{display:flex}
.dcfg-progate-card{position:relative;width:100%;max-width:440px;background:#fff;border:1px solid var(--ink);border-radius:20px;box-shadow:8px 8px 0 var(--ink);padding:30px 28px 26px;text-align:center}
.dcfg-progate-x{position:absolute;top:12px;right:14px;background:none;border:none;font-size:26px;line-height:1;font-weight:900;color:#999;cursor:pointer;padding:2px 6px}
.dcfg-progate-x:hover{color:var(--ink)}
.dcfg-progate-emo{font-size:40px;line-height:1;margin-bottom:8px}
.dcfg-progate-card h3{font-family:'Archivo',sans-serif;font-weight:900;font-size:21px;margin:0 0 8px;color:var(--ink)}
.dcfg-progate-card p{font-size:14.5px;font-weight:600;color:#555;margin:0 0 16px;line-height:1.5}
.dcfg-progate-list{list-style:none;padding:0;margin:0 0 20px;text-align:left;display:inline-block}
.dcfg-progate-list li{font-size:14px;font-weight:700;color:var(--ink);padding:5px 0}
.dcfg-progate-cta{width:100%;justify-content:center}
.dcfg-progate-later{display:block;width:100%;margin-top:10px;background:none;border:none;font-weight:700;font-size:13px;color:#999;cursor:pointer;text-decoration:underline}
.dcfg-progate-later:hover{color:var(--ink)}

/* ---- Channel-card action buttons (View / Edit / Configure deals) ---- */
.yc-act{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.yc-act>.btn{flex:1 1 calc(50% - 4px);min-width:0;display:flex;align-items:center;justify-content:center;gap:6px;white-space:normal;text-align:center;font-family:'Archivo',sans-serif;font-weight:900;font-size:13.5px;line-height:1.2;padding:10px 8px;border-radius:11px}
.yc-act>.btn.primary{background:var(--ink);color:var(--yellow)}
.yc-act>.btn.yc-deals{background:var(--yellow);color:var(--ink);border-color:var(--ink)}
.yc-act>.btn.yc-deals:hover{background:var(--ink);color:var(--yellow)}
@media(max-width:420px){.yc-act{flex-wrap:wrap}.yc-act>.btn{flex:1 1 100%}}

/* Owner viewing their own deal menu (preview mode) */
.deal-own-foot{padding:4px 16px 15px}
.deal-own-foot .btn{width:100%;justify-content:center}
.deal-box-own .deal-box-head{background:#fff8d6}

/* ---- YouTube Branding Guidelines (YouTube API ToS III.F.2a,b) --------------------------------
   The official YouTube mark must keep its shape and official colours and must NEVER render below
   20dp tall. Generic component rules (.pill svg, .chip svg, .also-chip svg …) size icons down to
   14px, which shrank the mark to ~10px. This global override wins over all of them and preserves
   the official 28:20 aspect. Do not remove or scale below these values. */
svg[aria-label="YouTube"]{width:28px !important;height:20px !important;flex:none !important;vertical-align:middle}
.pill svg[aria-label="YouTube"],.chip svg[aria-label="YouTube"],.also-chip svg[aria-label="YouTube"]{margin:-1px 0}
.platform-youtube .pill svg[aria-label="YouTube"]{color:inherit}

/* Landing hero: the combined-reach pill is the least useful of the three on a phone and pushed
   the row to a second line — hide it below the tab-bar breakpoint. */
@media(max-width:760px){.chip-reach{display:none!important}}
