/* Nova Creator Portal — agency style: calm, structured, one accent colour. */
:root{
  --bg:#06061A; --bg-2:#0D0D24; --surface:rgba(19,17,44,.94); --surface-2:rgba(28,24,60,.96);
  --text:#F3F3F8; --muted:#A1A1B5; --faint:#6E6E85;
  --line:rgba(255,255,255,.08); --line-2:rgba(255,255,255,.14);
  --accent:#8B5CF6; --accent-2:#A78BFA; --accent-soft:rgba(139,92,246,.12);
  --green:#25D366; --danger:#F87171; --ok:#4ADE80;
  --radius:16px; --radius-sm:10px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--bg);color:var(--text);
  font-family:'Inter',system-ui,sans-serif;font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column;
}
h1,h2,h3{font-family:'Space Grotesk',system-ui,sans-serif;letter-spacing:-.02em;font-weight:600;line-height:1.15}
a{color:inherit;text-decoration:none}
img,video{max-width:100%}

/* ---------- top bar & footer ---------- */
.topbar{position:sticky;top:0;z-index:50;background:rgba(10,10,18,.85);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.topbar-inner{max-width:1120px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;min-width:0}
.brand-mark{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line)}
.brand-mark svg{width:18px;height:18px}
.brand-name{font:600 15px 'Space Grotesk';letter-spacing:.01em;white-space:nowrap}
.brand-sub{font-size:12.5px;color:var(--muted);padding-left:10px;margin-left:2px;border-left:1px solid var(--line-2);white-space:nowrap}
.topbar-links{display:flex;align-items:center;gap:18px}
.back{font-size:14px;color:var(--muted);transition:color .15s}
.back:hover{color:var(--text)}
main{flex:1;width:100%;max-width:640px;margin:0 auto;padding:56px 24px 96px}
main.main-wide{max-width:1120px}
.foot{border-top:1px solid var(--line)}
.foot-inner{max-width:1120px;margin:0 auto;padding:22px 24px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--faint)}
.foot-inner a:hover{color:var(--muted)}
@media(max-width:600px){
  .brand-sub{display:none}
  main{padding:36px 18px 110px}
  .topbar-inner{padding:0 18px}
}

/* ---------- type ---------- */
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);margin-bottom:12px}
h1{font-size:clamp(30px,4.2vw,44px)}
h1 span{color:var(--accent-2)}
h2{font-size:clamp(20px,2.4vw,24px)}
.lede{color:var(--muted);font-size:17px;margin-top:12px;max-width:620px}
.prose p{color:var(--muted)}
.prose p+p{margin-top:12px}
.muted{color:var(--muted)}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:13px 22px;border-radius:12px;border:1px solid transparent;cursor:pointer;
  font:600 15px 'Inter',sans-serif;background:var(--accent);color:#fff;
  transition:background .15s,border-color .15s,transform .15s;
}
.btn:hover{background:#7C4DEB}
.btn:active{transform:translateY(1px)}
.btn[disabled]{opacity:.6;cursor:wait}
.btn-ghost{background:transparent;color:var(--text);border-color:var(--line-2)}
.btn-ghost:hover{background:var(--surface-2)}
.wa-btn{background:var(--green);color:#06140B}
.wa-btn:hover{background:#2EE072}
.form-btn{width:100%;margin-top:22px}

/* ---------- forms ---------- */
form{display:block}
label{display:block;font-size:13px;font-weight:500;color:var(--muted);margin:16px 0 7px}
input,textarea,select{
  width:100%;padding:12px 14px;border-radius:var(--radius-sm);
  background:var(--bg-2);border:1px solid var(--line-2);color:var(--text);
  font:400 15px 'Inter',sans-serif;transition:border-color .15s,box-shadow .15s;
}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
textarea{resize:vertical;line-height:1.5}
select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
select option{background:var(--bg-2);color:var(--text)}
input.code{font:600 20px 'Space Grotesk';letter-spacing:.16em;text-transform:uppercase;text-align:center;padding:16px}
input[type=file]{padding:10px;font-size:13.5px}
.hint{margin-top:8px;font-size:13.5px;color:var(--muted)}
.hint a,.lede a{color:var(--accent-2)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
label.check{display:flex;align-items:center;gap:9px;margin:14px 0 0;color:var(--text);font-size:14.5px;cursor:pointer}
label.check input{width:16px;height:16px;accent-color:var(--accent)}
.alert,.notice{padding:12px 14px;border-radius:var(--radius-sm);font-size:14.5px;margin-bottom:18px}
.alert{background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.35);color:#FECACA}
.notice{background:rgba(74,222,128,.08);border:1px solid rgba(74,222,128,.3);color:#BBF7D0}
.alert p+p{margin-top:4px}
.alert a{text-decoration:underline}

/* ---------- code page ---------- */
.gate{display:grid;gap:28px;align-items:start;grid-template-columns:1fr;max-width:1000px;margin:0 auto}
@media(min-width:900px){.gate{grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-top:24px}}
.gate-card{padding:36px;border-radius:20px;background:var(--surface);border:1px solid var(--line);box-shadow:0 24px 60px rgba(0,0,0,.35)}
.gate-mark{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;margin-bottom:22px;background:var(--surface-2);border:1px solid var(--line)}
.gate-mark svg{width:24px;height:24px}
.gate h1{font-size:clamp(30px,4vw,40px)}
.gate .lede{font-size:16px;margin:10px 0 6px}
.gate-foot{display:flex;align-items:center;gap:8px;margin-top:16px;font-size:13px;color:var(--faint)}
.gate-aside .eyebrow{color:var(--muted)}
.gate-perks{list-style:none;display:grid;gap:2px}
.gate-perks li{padding:16px 0;border-bottom:1px solid var(--line)}
.gate-perks li:last-child{border-bottom:0}
.gate-perks b{display:block;font:600 16px 'Space Grotesk';margin-bottom:2px}
.gate-perks span{color:var(--muted);font-size:14.5px}
@media(max-width:600px){.gate-card{padding:26px 20px}}

/* ---------- campaigns list ---------- */
.hub-head{max-width:720px}
.hub-title{font-size:clamp(28px,3.6vw,38px)}
.ease-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:30px 0 28px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--line)}
.ease-strip div{background:var(--surface);padding:16px 18px}
.ease-strip b{display:block;font:600 15px 'Space Grotesk'}
.ease-strip span{font-size:13.5px;color:var(--muted)}
@media(max-width:700px){.ease-strip{grid-template-columns:1fr}}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
.card{
  display:flex;flex-direction:column;gap:8px;padding:20px;min-height:178px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  transition:border-color .15s,background .15s,transform .15s;
}
.card:hover{border-color:rgba(167,139,250,.5);background:var(--surface-2);transform:translateY(-2px)}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.card-title{font:600 19px 'Space Grotesk';letter-spacing:-.01em}
.card-text{font-size:14px;color:var(--muted)}
.card-pay{font:600 14px 'Space Grotesk';color:var(--text);white-space:nowrap}
.card-pay small{font:500 12px 'Inter';color:var(--muted)}
.card-cta{margin-top:auto;padding-top:10px;font-size:14px;font-weight:600;color:var(--accent-2)}
.type-chip{display:inline-block;padding:3px 9px;border-radius:6px;font:600 11px 'Inter';letter-spacing:.06em;text-transform:uppercase;color:var(--accent-2);background:var(--accent-soft);border:1px solid rgba(167,139,250,.25)}
.hub-contact{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:28px;padding:20px 22px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}
.hub-contact b{display:block;font:600 16px 'Space Grotesk'}
.hub-contact span{font-size:14.5px;color:var(--muted)}
.signout{margin-top:26px;font-size:13.5px;color:var(--faint)}
.signout a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}

/* ---------- campaign page ---------- */
.c-head{max-width:760px;margin-bottom:32px}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.tag{padding:4px 10px;border-radius:6px;font:600 11.5px 'Inter';letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);border:1px solid var(--line)}
.tag-type{color:var(--accent-2);background:var(--accent-soft);border-color:rgba(167,139,250,.25)}
.tag-live{color:var(--ok);background:rgba(74,222,128,.08);border-color:rgba(74,222,128,.25)}
.c-layout{display:grid;gap:20px;grid-template-columns:1fr}
@media(min-width:960px){
  .c-layout{grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
  .c-side{order:2;position:sticky;top:88px}
}
.c-main{display:grid;gap:20px;min-width:0}
.block{padding:28px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}
.block h2{margin-bottom:6px}
.block-lede{color:var(--muted);margin-bottom:20px;max-width:620px}
.side-card{padding:24px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line-2);box-shadow:0 20px 50px rgba(0,0,0,.3)}
.side-card hr{border:0;border-top:1px solid var(--line);margin:20px 0}
.side-label{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.pay-amount{font:600 36px/1.05 'Space Grotesk';letter-spacing:-.02em}
.pay-period{color:var(--muted);font-size:14.5px;margin-top:4px}
.side-name{font:600 18px 'Space Grotesk';margin-bottom:14px}
.side-card .btn{width:100%}
.side-note{font-size:13.5px;color:var(--muted);margin-top:10px}
.side-app{margin-top:16px}
.easy-block{background:linear-gradient(180deg,rgba(139,92,246,.09),rgba(139,92,246,0) 70%),var(--surface);border-color:rgba(167,139,250,.22)}
.easy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(max-width:640px){.easy-grid{grid-template-columns:1fr}}
.easy-item{display:flex;flex-direction:column;gap:3px;padding:16px;border-radius:12px;background:rgba(10,10,18,.5);border:1px solid var(--line)}
.easy-num{font:600 12px 'Space Grotesk';color:var(--accent-2);letter-spacing:.08em;margin-bottom:4px}
.easy-item b{font:600 15.5px 'Space Grotesk'}
.easy-item span:last-child{font-size:14px;color:var(--muted)}
.ticks{list-style:none;display:grid;gap:12px;margin-top:4px}
.ticks li{position:relative;padding-left:32px;font-size:16px}
.ticks li::before{content:'';position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A78BFA' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat;border:1px solid rgba(167,139,250,.35)}
.note{margin-top:18px;padding:12px 14px;border-radius:10px;background:var(--bg-2);border:1px solid var(--line);color:var(--muted);font-size:14.5px}
.videos{display:grid;gap:16px;margin-top:16px;grid-template-columns:1fr}
@media(min-width:560px){.videos-2,.videos-3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.videos-3{grid-template-columns:repeat(3,1fr)}}
.videos-1{max-width:320px}
.vid{margin:0}
.vid figcaption{font-size:13.5px;font-weight:600;color:var(--muted);margin-bottom:8px}
.vid-frame{position:relative;border-radius:12px;overflow:hidden;background:#000;border:1px solid var(--line);aspect-ratio:9/16;max-height:620px}
.vid-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}
.sound-btn{position:absolute;top:10px;right:10px;padding:7px 12px;border-radius:8px;border:0;cursor:pointer;background:rgba(10,10,18,.85);color:#fff;font:600 12.5px 'Inter'}
.closing{text-align:left}
.closing .btn{margin-top:18px}
.wa-sticky{display:none}
@media(max-width:959px){
  .wa-sticky{
    position:fixed;left:14px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:60;
    display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 18px;border-radius:14px;
    background:var(--green);color:#06140B;font:600 15.5px 'Inter';box-shadow:0 12px 30px rgba(0,0,0,.5);
    transition:transform .25s ease,opacity .25s ease;
  }
  .wa-sticky.hide{transform:translateY(140%);opacity:0;pointer-events:none}
}

/* ---------- admin ---------- */
.admin .lede{margin-bottom:24px}
.tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:22px;padding:4px;border-radius:12px;background:var(--surface);border:1px solid var(--line);width:max-content;max-width:100%}
.tabs a{padding:8px 14px;border-radius:9px;font-size:14px;color:var(--muted)}
.tabs a.on{background:var(--surface-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--line-2)}
.editor,.inline-form,.bar{padding:24px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}
.editor h2{font-size:18px;margin:28px 0 2px;padding-top:22px;border-top:1px solid var(--line)}
.editor h2:first-of-type{margin-top:0;padding-top:0;border-top:0}
.ai-box{border-color:rgba(167,139,250,.35);background:linear-gradient(180deg,rgba(139,92,246,.08),transparent 80%),var(--surface)}
.ai-box textarea{margin:12px 0 14px}
.ai-box .save-status{margin-left:12px}
.inline-form{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;margin-bottom:18px}
.inline-form>div{flex:1 1 200px}
.inline-form label{margin-top:0}
.bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 18px;margin-bottom:14px}
.bar a{color:var(--accent-2)}
.spaced{margin-top:20px}
.two,.video-edit{display:grid;gap:0 16px;grid-template-columns:1fr}
@media(min-width:700px){.two,.video-edit{grid-template-columns:1fr 1fr}}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
table{width:100%;border-collapse:collapse;text-align:left;font-size:14.5px}
th,td{padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}
th{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;background:var(--bg-2)}
tbody tr:last-child td{border-bottom:0}
td a{color:var(--accent-2)}
td.muted{text-align:center}
td.num{text-align:center;font:600 15px 'Space Grotesk'}
td.actions{text-align:right}
td.wrap-cell{white-space:normal;line-height:1.9}
td b{color:var(--text)}
form.plain{display:inline;padding:0;border:0;background:none}
form.plain select{width:auto;padding:7px 32px 7px 10px;font-size:13.5px}
code{font:600 13px 'Space Grotesk';letter-spacing:.06em}
.pill{padding:3px 9px;border-radius:6px;font-size:12px;font-weight:600}
.pill.on{background:rgba(74,222,128,.1);color:var(--ok)}
.pill.off{background:rgba(248,113,113,.1);color:var(--danger)}
button.small{padding:6px 12px;border-radius:8px;border:1px solid var(--line-2);background:var(--surface-2);color:var(--text);font:500 13px 'Inter';cursor:pointer}
button.small:hover{border-color:rgba(255,255,255,.3)}
button.small.danger{color:var(--danger)}
button.copy{margin-left:6px;padding:3px 9px;font-size:12px}
.admin-list{display:grid;gap:10px}
.admin-item{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.admin-item b{font:600 17px 'Space Grotesk'}
.admin-item span{color:var(--muted);font-size:14px}
.admin-item .type-chip{color:var(--accent-2)}
.admin-item .go{margin-left:auto;color:var(--accent-2)}
.admin-item:hover{border-color:rgba(167,139,250,.45)}
.market-table{margin-top:12px}
.market-table input{padding:8px 10px;font-size:14px;min-width:110px}
.market-table tr:not(.on) td:not(:first-child) input{opacity:.4}
.market-table label.check{margin:0}
.ref-row{display:grid;gap:8px;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:10px}
.ref-row small{color:var(--muted);word-break:break-all}
.ref-row label.check{margin:0}
.key-ok{color:var(--ok);font-size:14px;margin:6px 0 8px}
.save-bar{position:sticky;bottom:0;z-index:20;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end;margin-top:18px;padding:14px 18px;border:1px solid var(--line-2);border-radius:var(--radius);background:rgba(16,16,26,.95);backdrop-filter:blur(10px)}
.save-status{flex:1;min-width:200px;text-align:left;color:var(--muted);font-size:14px}
.save-status.bad{color:var(--danger)}
.toast{position:fixed;left:50%;top:80px;transform:translateX(-50%);z-index:100;width:min(560px,calc(100% - 32px));margin:0;box-shadow:0 12px 40px rgba(0,0,0,.5);font-weight:500;cursor:pointer;transition:opacity .4s;backdrop-filter:blur(12px)}
.toast.notice{background:rgba(14,40,26,.95)}
.toast.alert{background:rgba(48,14,18,.96)}
.toast.gone{opacity:0;pointer-events:none}
.narrow{max-width:440px;margin:0 auto}
.narrow form{padding:28px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}
.wide{max-width:1120px;margin:0 auto}

@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms !important}}


/* =================== GALAXY THEME =================== */
#stars{position:fixed;inset:0;z-index:0;pointer-events:none}
.nebula{position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(700px 480px at 12% 8%,rgba(124,58,237,.30),transparent 70%),
    radial-gradient(640px 460px at 92% 18%,rgba(168,85,247,.20),transparent 70%),
    radial-gradient(760px 520px at 70% 92%,rgba(91,33,182,.28),transparent 70%);
}
.topbar,main,.foot{position:relative;z-index:1}
.topbar{background:rgba(6,6,26,.7)}
.grad{background:linear-gradient(90deg,#C4B5FD,#E9D5FF 50%,#A78BFA);-webkit-background-clip:text;background-clip:text;color:transparent}
h1{font-weight:700;letter-spacing:-.03em}
.btn{background:linear-gradient(135deg,#7C3AED,#A855F7);box-shadow:0 8px 24px rgba(124,58,237,.4)}
.btn:hover{background:linear-gradient(135deg,#8B4DF5,#B66CF8)}
.btn-ghost{background:rgba(255,255,255,.04);box-shadow:none}
.btn-ghost:hover{background:rgba(255,255,255,.08)}
.wa-btn{background:var(--green);box-shadow:0 8px 24px rgba(37,211,102,.3)}
.wa-btn:hover{background:#2EE072}
.btn-lg{padding:16px 22px;font-size:16px;border-radius:14px;width:100%}

/* code page */
.gate h1{font-size:clamp(34px,4.6vw,50px)}
.gate-card{background:linear-gradient(160deg,rgba(124,58,237,.24),rgba(20,18,46,.85) 60%);border-color:rgba(196,181,253,.3);box-shadow:0 30px 80px rgba(0,0,0,.45),0 0 80px rgba(139,92,246,.18)}
.gate-mark{background:linear-gradient(135deg,#6D28D9,#A855F7);border:0}
.gate-perks b{background:linear-gradient(90deg,#E9D5FF,#C4B5FD);-webkit-background-clip:text;background-clip:text;color:transparent}

/* campaigns list */
.hub-title{font-size:clamp(32px,4.4vw,48px)}
.ease-strip{background:rgba(196,181,253,.18);border-color:rgba(196,181,253,.25)}
.ease-strip div{background:rgba(20,18,46,.85)}
.ease-strip b{background:linear-gradient(90deg,#E9D5FF,#C4B5FD);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:16px}
.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:18px}
.card{padding:0;overflow:hidden;min-height:0;border-color:rgba(255,255,255,.1)}
.card:hover{border-color:var(--c1);box-shadow:0 18px 50px rgba(0,0,0,.4),0 0 40px color-mix(in srgb,var(--c1) 35%,transparent);transform:translateY(-4px)}
.card-visual{position:relative;height:150px;overflow:hidden;background:
  radial-gradient(120px 90px at 80% 20%,rgba(255,255,255,.25),transparent 70%),
  linear-gradient(135deg,var(--c1),var(--c2))}
.card-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:.14;filter:saturate(.6)}
.card-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,6,26,.6))}
.card-initial{position:absolute;right:14px;bottom:-14px;z-index:1;font:700 96px/1 'Space Grotesk';color:rgba(255,255,255,.22)}
.card-visual .type-chip{position:absolute;left:14px;top:14px;z-index:2;color:#fff;background:rgba(6,6,26,.6);border-color:rgba(255,255,255,.3)}
.card-body{display:flex;flex-direction:column;gap:4px;padding:18px 20px 20px;flex:1}
.card-pay{font:700 30px/1.05 'Space Grotesk';letter-spacing:-.02em;background:linear-gradient(90deg,#fff,#D8B4FE);-webkit-background-clip:text;background-clip:text;color:transparent}
.card-period{font-size:13px;color:var(--muted);margin-bottom:8px}
.card-title{font-size:20px}
.card-cta{color:#fff}
.hub-contact{background:linear-gradient(135deg,rgba(124,58,237,.2),rgba(20,18,46,.85));border-color:rgba(167,139,250,.35)}

/* campaign page */
.campaign{--c1:#7C3AED;--c2:#A855F7}
.c-hero{display:grid;gap:22px;grid-template-columns:1fr;margin-bottom:24px;align-items:center}
@media(min-width:900px){.c-hero{grid-template-columns:minmax(0,1fr) 400px;gap:40px}}
.c-title{font-size:clamp(44px,7vw,80px);line-height:1;background:linear-gradient(90deg,#fff 30%,#D8B4FE);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:4px}
.c-hero .lede{font-size:18px}
.tag-type{color:#fff;background:linear-gradient(135deg,var(--c1),var(--c2));border:0}
.tag-live .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok);margin-right:6px;box-shadow:0 0 8px var(--ok);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35}}
.hero-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.hero-points span{padding:7px 12px;border-radius:100px;font-size:13.5px;font-weight:500;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}

.price-panel{position:relative;padding:28px;border-radius:22px;overflow:hidden;
  background:linear-gradient(160deg,color-mix(in srgb,var(--c1) 40%,transparent),color-mix(in srgb,var(--c2) 18%,transparent) 55%,rgba(20,18,46,.9));
  border:1px solid color-mix(in srgb,var(--c1) 55%,transparent);
  box-shadow:0 30px 80px rgba(0,0,0,.45),0 0 70px color-mix(in srgb,var(--c1) 30%,transparent)}
.price-panel::before{content:'';position:absolute;right:-80px;top:-80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.18),transparent);pointer-events:none}
.price-label{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.price{font:700 clamp(52px,7vw,72px)/1 'Space Grotesk';letter-spacing:-.03em;margin-top:6px;color:#fff;text-shadow:0 0 40px color-mix(in srgb,var(--c2) 60%,transparent)}
.price-sm{font-size:30px}
.price-period{font-size:17px;font-weight:500;color:rgba(255,255,255,.8);margin-top:6px}
.price-divider{height:1px;background:rgba(255,255,255,.15);margin:22px 0 18px}
.price-manager{font-size:14.5px;color:rgba(255,255,255,.8);margin-bottom:12px}
.price-manager b{color:#fff}
.price-note{font-size:13px;color:rgba(255,255,255,.7);margin:10px 0 0}
.price-panel .btn-ghost{width:100%;margin-top:12px}
.c-main{display:grid;gap:20px}
.two-col{display:grid;gap:20px;grid-template-columns:1fr}
@media(min-width:900px){.two-col{grid-template-columns:1fr 1fr}}
.two-col:has(> :only-child){grid-template-columns:1fr}
.block{border-color:rgba(255,255,255,.1)}
.big-h{font-size:clamp(24px,3vw,32px);font-weight:700;margin-bottom:8px}
.easy-block{background:linear-gradient(135deg,color-mix(in srgb,var(--c1) 22%,transparent),rgba(20,18,46,.8) 60%);border-color:color-mix(in srgb,var(--c1) 45%,transparent)}
.easy-block .big-h .grad{background:linear-gradient(90deg,#C4B5FD,#E9D5FF);-webkit-background-clip:text;background-clip:text;color:transparent}
.easy-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
.easy-item{padding:18px;background:rgba(6,6,26,.45);border-color:rgba(255,255,255,.08)}
.easy-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;margin-bottom:10px;color:#fff;background:linear-gradient(135deg,var(--c1),var(--c2));box-shadow:0 8px 20px color-mix(in srgb,var(--c1) 40%,transparent)}
.easy-icon svg{width:22px;height:22px}
.easy-item:nth-child(2) .easy-icon{background:linear-gradient(135deg,#5B21B6,#8B5CF6)}
.easy-item:nth-child(3) .easy-icon{background:linear-gradient(135deg,#7E22CE,#C084FC)}
.easy-item:nth-child(4) .easy-icon{background:linear-gradient(135deg,#4C1D95,#A78BFA)}
.easy-item b{font-size:16.5px}
.steps{list-style:none;display:grid;gap:12px;margin-top:6px}
.steps li{display:flex;gap:12px;align-items:flex-start;font-size:16px}
.step-n{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font:700 13px 'Space Grotesk';color:#fff;background:linear-gradient(135deg,var(--c1),var(--c2))}
.closing{display:grid;gap:20px;align-items:center;grid-template-columns:1fr;background:linear-gradient(135deg,rgba(124,58,237,.2),rgba(20,18,46,.85) 60%);border-color:rgba(167,139,250,.35)}
@media(min-width:900px){.closing{grid-template-columns:1fr 360px}}
.closing .btn{margin-top:0}
.closing-price{font:700 34px/1 'Space Grotesk';margin-bottom:14px;text-align:center}
.closing-price small{font:500 15px 'Inter';color:var(--muted)}
.vid-frame{border-color:color-mix(in srgb,var(--c1) 40%,transparent);box-shadow:0 16px 40px rgba(0,0,0,.35)}

/* ---------- galaxy icons ---------- */
.hero-points span{display:inline-flex;align-items:center;gap:7px}
.hero-points svg{width:16px;height:16px;color:#C4B5FD}
.price-label{display:flex;align-items:center;gap:7px}
.price-label svg{width:14px;height:14px;color:#E9D5FF}
.tag-live{display:inline-flex;align-items:center;gap:6px}
.twinkle{display:inline-grid;color:#C4B5FD;animation:twinkle 1.8s ease-in-out infinite}
.twinkle svg{width:11px;height:11px}
@keyframes twinkle{50%{opacity:.35;transform:scale(.75) rotate(20deg)}}
.tag-live{color:#E9D5FF;background:rgba(124,58,237,.18);border-color:rgba(167,139,250,.4)}
.card-art{position:absolute;right:14px;bottom:12px;z-index:1;width:72px;height:72px;color:rgba(255,255,255,.85);filter:drop-shadow(0 0 18px rgba(233,213,255,.6))}
.card-art svg{width:100%;height:100%}
.card-visual::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
  background-image:radial-gradient(1.2px 1.2px at 18% 30%,#fff,transparent),radial-gradient(1px 1px at 42% 70%,#fff,transparent),radial-gradient(1.4px 1.4px at 68% 22%,#fff,transparent),radial-gradient(1px 1px at 30% 85%,#fff,transparent),radial-gradient(1.2px 1.2px at 85% 55%,#fff,transparent),radial-gradient(1px 1px at 55% 45%,#fff,transparent);opacity:.8}
.ease-strip div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}
.ease-strip i,.gate-perks i{grid-row:span 2;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:#E9D5FF;background:linear-gradient(135deg,rgba(124,58,237,.55),rgba(168,85,247,.25));border:1px solid rgba(196,181,253,.3)}
.ease-strip i svg,.gate-perks i svg{width:20px;height:20px}
.gate-perks li{display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center}
.gate-perks b{grid-column:2}
.gate-perks span{grid-column:2}
.easy-icon svg{width:24px;height:24px}
.h-icon{display:inline-grid;place-items:center;width:34px;height:34px;margin-right:10px;vertical-align:-6px;border-radius:10px;color:#E9D5FF;background:linear-gradient(135deg,rgba(124,58,237,.6),rgba(168,85,247,.3))}
.h-icon svg{width:19px;height:19px}
.card-visual .type-chip{display:inline-flex}

/* ---------- app logos ---------- */
.card-logo{position:absolute;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:20px;overflow:hidden;
  background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.45),0 0 0 3px rgba(255,255,255,.18),0 0 40px rgba(196,181,253,.5)}
.card-logo img{width:100%;height:100%;object-fit:cover;display:block}
.card:hover .card-logo{transform:translate(-50%,-50%) scale(1.05);transition:transform .2s}
.c-title-row{display:flex;align-items:center;gap:18px}
.c-logo{width:clamp(56px,7vw,84px);height:clamp(56px,7vw,84px);border-radius:22%;object-fit:cover;flex:none;background:#fff;
  box-shadow:0 12px 30px rgba(0,0,0,.45),0 0 0 3px rgba(255,255,255,.15),0 0 40px rgba(196,181,253,.45)}
.logo-edit{display:flex;align-items:center;gap:18px;margin-top:10px}
.logo-preview{width:72px;height:72px;flex:none;border-radius:18px;overflow:hidden;display:grid;place-items:center;color:#E9D5FF;
  background:linear-gradient(135deg,rgba(124,58,237,.6),rgba(168,85,247,.3));border:1px solid rgba(196,181,253,.3)}
.logo-preview img{width:100%;height:100%;object-fit:cover}
.logo-preview svg{width:34px;height:34px}

/* ---------- app screenshots ---------- */
.inside-app{margin-top:18px}
.inside-label{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#C4B5FD;margin-bottom:10px}
.inside-label svg{width:14px;height:14px}
.shot-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.shot-row img{width:100%;aspect-ratio:9/19.5;object-fit:cover;border-radius:14px;border:1px solid rgba(196,181,253,.25);box-shadow:0 12px 28px rgba(0,0,0,.4);background:#0D0D24}
.app-fetch .shot-row{max-width:360px;margin:10px 0 14px}

/* =================== CENTRED PRICES =================== */
.price-panel{text-align:center}
.price-label{justify-content:center}
.price-manager,.price-note{text-align:center}
.closing-cta{text-align:center}
.card-price-box{margin:2px 0 12px;padding:12px 10px;border-radius:14px;text-align:center;
  background:linear-gradient(135deg,rgba(124,58,237,.28),rgba(168,85,247,.1));border:1px solid rgba(196,181,253,.28)}
.card-price-box .card-pay{display:block}
.card-price-box .card-period{display:block;margin:2px 0 0}

/* =================== ADMIN: DESKTOP =================== */
.danger-zone{border-color:rgba(248,113,113,.35);background:linear-gradient(135deg,rgba(248,113,113,.08),rgba(20,18,46,.8))}
.delete-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.delete-row input{flex:1 1 200px}
.btn-danger{background:#DC2626;box-shadow:none}
.btn-danger:hover{background:#EF4444}

/* =================== PHONE LAYOUT =================== */
@media (max-width:700px){
  body{font-size:16px}
  main{padding:24px 14px 120px}
  .topbar-inner{height:58px;padding:0 14px}
  .brand-name{font-size:14px}

  /* creator pages */
  .c-hero{gap:16px;margin-bottom:16px}
  .c-title{font-size:44px}
  .c-title-row{gap:12px}
  .c-logo{width:52px;height:52px}
  .hero-points{gap:6px;margin-top:14px}
  .hero-points span{font-size:13px;padding:6px 10px}
  .price-panel{padding:22px 18px;border-radius:20px}
  .price{font-size:56px}
  .block{padding:20px 16px;border-radius:16px}
  .big-h{font-size:24px}
  .easy-grid{grid-template-columns:1fr 1fr;gap:10px}
  .easy-item{padding:14px}
  .easy-item span:last-child{font-size:13.5px}
  .videos{grid-template-columns:1fr 1fr;gap:10px}
  .videos-1{grid-template-columns:1fr;max-width:none}
  .shot-row{gap:8px}
  .closing{text-align:center}
  .closing-cta .btn{width:100%}
  .hub-title{font-size:32px}
  .ease-strip{margin:20px 0}
  .grid{grid-template-columns:1fr;gap:14px}
  .card-visual{height:130px}
  .gate-card{padding:24px 18px}
  .gate h1{font-size:34px}

  /* admin: scrollable tab bar */
  .tabs{width:100%;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .tabs a{white-space:nowrap;padding:10px 14px}
  .admin h1{font-size:30px}
  .admin .lede{font-size:14.5px;word-break:break-word}

  /* admin: every table becomes a stack of cards */
  .table-wrap{border:0;background:none;overflow:visible;backdrop-filter:none}
  .table-wrap table,.table-wrap thead,.table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;width:100%}
  .table-wrap thead{display:none}
  .table-wrap tr{margin-bottom:12px;padding:12px 14px;border-radius:14px;background:var(--surface);border:1px solid var(--line-2)}
  .table-wrap td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;border:0;white-space:normal;text-align:right}
  .table-wrap td::before{content:attr(data-label);flex:none;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left}
  .table-wrap td:not([data-label])::before,.table-wrap td[data-label=""]::before{content:none}
  .table-wrap td.actions{justify-content:flex-end;padding-top:10px;border-top:1px solid var(--line);margin-top:4px}
  .table-wrap td.muted{justify-content:center}
  td.wrap-cell{text-align:right}

  /* admin: markets & pay table — one card per market, inputs full width */
  .market-table tr{padding:14px}
  .market-table td{display:block;text-align:left;padding:5px 0}
  .market-table td::before{display:block;margin-bottom:4px}
  .market-table td:first-child::before{content:none}
  .market-table td:first-child{font-weight:600;font-size:16px}
  .market-table input{width:100%;min-width:0;padding:11px 12px;font-size:16px}
  .market-table tr:not(.on) td:not(:first-child){display:none}

  /* admin: forms */
  .editor,.inline-form,.bar{padding:18px 14px}
  .inline-form{flex-direction:column;align-items:stretch}
  .inline-form .btn{width:100%}
  input,textarea,select{font-size:16px}   /* stops iPhone zooming in on tap */
  .save-bar{flex-direction:column;align-items:stretch;padding:12px;border-radius:14px}
  .save-bar .btn{width:100%}
  .save-status{min-width:0;text-align:center}
  .ai-box .btn{width:100%}
  .ai-box .save-status{display:block;margin:8px 0 0}
  .delete-row{flex-direction:column}
  .delete-row .btn{width:100%}
  .logo-edit{flex-direction:column;align-items:flex-start}
  .admin-item{padding:14px}
  .admin-item .go{margin-left:0}
  .toast{top:66px}
}

/* lighter drawing on phones */
@media (max-width:700px){
  .topbar{backdrop-filter:none;background:rgba(6,6,26,.96)}
  .price-panel,.side-card,.gate-card{box-shadow:0 12px 30px rgba(0,0,0,.35)}
}

/* =================== RETAINERS =================== */
.price-month{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:7px 14px;border-radius:100px;font-size:14px;color:#E9D5FF;background:rgba(124,58,237,.3);border:1px solid rgba(196,181,253,.35)}
.price-month svg{width:16px;height:16px}
.price-month b{color:#fff}
.card-month{display:inline-block;margin-top:6px;padding:3px 10px;border-radius:100px;font-size:12px;font-weight:600;color:#E9D5FF;background:rgba(124,58,237,.35)}
.retainer-block{display:grid;gap:22px;align-items:center;grid-template-columns:1fr;
  background:radial-gradient(500px 260px at 100% 0%,rgba(168,85,247,.22),transparent 70%),linear-gradient(135deg,rgba(91,33,182,.3),rgba(19,17,44,.94) 65%);
  border-color:rgba(196,181,253,.35)}
@media(min-width:900px){.retainer-block{grid-template-columns:1fr 1fr;gap:32px}}
.retainer-block .block-lede{margin-bottom:0}
.weeks{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:8px}
.week{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 6px;border-radius:12px;background:rgba(6,6,26,.5);border:1px solid rgba(196,181,253,.22);position:relative}
.week-n{font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.week-pay{font:700 16px 'Space Grotesk';color:#fff;white-space:nowrap}
.month-total{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px;padding:16px;border-radius:14px;
  background:linear-gradient(135deg,#6D28D9,#A855F7);box-shadow:0 12px 30px rgba(124,58,237,.35);color:#fff}
.month-total svg{width:24px;height:24px}
.month-total span{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;opacity:.85}
.month-total b{font:700 26px 'Space Grotesk';letter-spacing:-.01em}
@media(max-width:700px){
  .weeks{grid-template-columns:repeat(2,1fr)}
  .month-total{flex-wrap:wrap}
  .month-total b{font-size:24px}
}

/* =================== PRICE CARD (v2) =================== */
.price-panel{
  position:relative;padding:26px;border-radius:24px;text-align:center;overflow:hidden;
  background:linear-gradient(180deg,rgba(43,25,92,.96),rgba(19,15,44,.98)) padding-box,
             linear-gradient(135deg,rgba(196,181,253,.75),rgba(124,58,237,.25) 40%,rgba(168,85,247,.6)) border-box;
  border:1.5px solid transparent;box-shadow:0 24px 60px rgba(0,0,0,.45)}
.price-panel::before{content:'';position:absolute;inset:-40% -20% auto auto;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(168,85,247,.28),transparent);pointer-events:none}
.pp-top{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.pp-label{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#D8B4FE}
.pp-label svg{width:13px;height:13px}
.pp-chip{padding:4px 11px;border-radius:100px;font-size:12.5px;font-weight:600;color:#fff;background:rgba(168,85,247,.35);border:1px solid rgba(216,180,254,.35)}
/* the amount is one centred unit: no trailing letter-spacing to push it off-centre */
.pp-amount{position:relative;display:flex;align-items:flex-start;justify-content:center;gap:6px;margin:14px 0 4px;line-height:1}
.pp-num{font:700 clamp(60px,8vw,80px)/.95 'Space Grotesk';letter-spacing:0;font-variant-numeric:lining-nums tabular-nums;color:#fff;
  text-shadow:0 0 50px rgba(168,85,247,.55)}
.pp-num.pp-long{font-size:clamp(34px,5vw,46px);line-height:1.05}
.pp-sym{font:700 34px/1 'Space Grotesk';color:#E9D5FF;margin-top:8px}
.pp-cur{font:700 18px/1 'Space Grotesk';color:#E9D5FF;margin-top:10px;padding:5px 8px;border-radius:8px;background:rgba(255,255,255,.08);letter-spacing:.04em}
.pp-month{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:8px 14px;border-radius:100px;font-size:14px;color:#E9D5FF;background:rgba(124,58,237,.32);border:1px solid rgba(196,181,253,.35)}
.pp-month svg{width:16px;height:16px}
.pp-month b{color:#fff}
.pp-manager{position:relative;display:flex;align-items:center;gap:12px;margin:22px 0 12px;padding:12px 14px;border-radius:14px;text-align:left;
  background:rgba(6,6,26,.45);border:1px solid rgba(255,255,255,.08)}
.pp-avatar{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font:700 17px 'Space Grotesk';color:#fff;background:linear-gradient(135deg,#7C3AED,#C084FC)}
.pp-who{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.pp-who small{font-size:12px;color:var(--muted)}
.pp-who b{font:600 16px 'Space Grotesk';color:#fff}
.pp-online{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#86EFAC}
.pp-dot{width:8px;height:8px;border-radius:50%;background:#25D366;box-shadow:0 0 8px #25D366}
.price-panel .wa-btn{width:100%}
.pp-note{font-size:13px;color:rgba(255,255,255,.65);margin-top:10px}
.pp-app{position:relative;display:flex;align-items:center;gap:12px;margin-top:16px;padding:10px 14px;border-radius:14px;text-align:left;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);transition:background .15s}
.pp-app:hover{background:rgba(255,255,255,.09)}
.pp-app img,.pp-app-icon{flex:none;width:40px;height:40px;border-radius:10px;object-fit:cover;background:#fff}
.pp-app-icon{display:grid;place-items:center;background:linear-gradient(135deg,#6D28D9,#A855F7);color:#fff}
.pp-app-icon svg{width:20px;height:20px}
.pp-app-text{display:flex;flex-direction:column;line-height:1.25}
.pp-app-text small{font-size:11.5px;color:var(--muted)}
.pp-app-text b{font:600 15.5px 'Space Grotesk';color:#fff}
.pp-app-arrow{margin-left:auto;font-size:18px;color:#D8B4FE}
@media (max-width:700px){
  .price-panel{padding:22px 16px}
  .pp-num{font-size:64px}
  .pp-num.pp-long{font-size:38px}
}

/* The number sits in the exact middle column; the currency hangs in the right column
   so it never pushes the number off-centre. */
.pp-amount{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:8px}
.pp-side{display:flex}
.pp-right{justify-content:flex-start}
.pp-num{display:block;text-align:center;white-space:nowrap}
.pp-num.pp-mid{font-size:clamp(46px,6vw,60px)}
.pp-num.pp-long{font-size:clamp(34px,5vw,44px)}
.pp-cur{margin-top:10px}
@media (max-width:700px){
  .pp-num{font-size:62px}
  .pp-num.pp-mid{font-size:48px}
  .pp-num.pp-long{font-size:36px}
  .pp-cur{font-size:15px;margin-top:8px}
}

.pp-amount{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
/* wide prices (ranges): currency goes underneath so the number stays dead centre */
.pp-amount.pp-stack{grid-template-columns:1fr;justify-items:center;gap:6px}
.pp-amount.pp-stack .pp-left{display:none}
.pp-amount.pp-stack .pp-right{justify-content:center}
.pp-amount.pp-stack .pp-cur{margin-top:0}

/* =================== RETAINER THEME =================== */
.hub-retainer{display:flex;align-items:center;gap:16px;margin:24px 0 0;padding:18px 20px;border-radius:18px;
  background:radial-gradient(400px 160px at 0% 0%,rgba(168,85,247,.3),transparent 70%),linear-gradient(135deg,rgba(91,33,182,.45),rgba(19,17,44,.95) 70%);
  border:1px solid rgba(196,181,253,.4)}
.hr-icon{flex:none;width:52px;height:52px;border-radius:15px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#6D28D9,#A855F7);box-shadow:0 10px 26px rgba(124,58,237,.45)}
.hr-icon svg{width:28px;height:28px}
.hub-retainer b{display:block;font:700 18px 'Space Grotesk';color:#fff;margin-bottom:2px}
.hub-retainer span{color:#DDD6FE;font-size:14.5px}
.weeks-line{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.weeks-line span{padding:5px 10px;border-radius:8px;font-size:12.5px;font-weight:600;color:#E9D5FF;background:rgba(6,6,26,.5);border:1px solid rgba(196,181,253,.22)}
.months{display:grid;gap:10px}
.month{display:grid;grid-template-columns:76px 1fr auto;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;background:rgba(6,6,26,.5);border:1px solid rgba(196,181,253,.2)}
.month-n{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.month-bar{height:8px;border-radius:100px;background:rgba(255,255,255,.08);overflow:hidden}
.month-bar span{display:block;height:100%;border-radius:100px;background:linear-gradient(90deg,#7C3AED,#C084FC)}
.month b{font:700 17px 'Space Grotesk';color:#fff;white-space:nowrap}
.month.m6{border-color:rgba(196,181,253,.45);background:rgba(124,58,237,.18)}
.month.m6 b{font-size:20px}
@media (max-width:700px){
  .hub-retainer{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}
  .month{grid-template-columns:auto 1fr auto;gap:10px;padding:10px 12px}
  .month-n{white-space:nowrap;font-size:11px}
}
.month-n{white-space:nowrap}

/* very light view-range note */
.soft-note{display:flex;align-items:flex-start;gap:7px;margin-top:12px;font-size:12.5px;line-height:1.45;color:rgba(221,214,254,.62)}
.soft-note svg{flex:none;width:14px;height:14px;margin-top:1px;opacity:.8}
.hub-retainer .soft-note{margin-top:6px;font-size:12px}
.hub-retainer small.soft-note{display:flex}

/* ===================== INFLUENCERS & EVENTS (admin) ===================== */
.three{display:grid;gap:0 16px;grid-template-columns:1fr}
@media(min-width:700px){.three{grid-template-columns:1fr 1fr 1fr}}
.sc-item{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);margin:10px 0}
.sc-item summary{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;flex-wrap:wrap}
.sc-item summary::-webkit-details-marker{display:none}
.sc-item summary .go{margin-left:auto;color:var(--accent);font-size:13.5px}
.sc-item[open] summary{border-bottom:1px solid var(--line)}
.sc-new summary{color:var(--accent)}
.sc-av{width:38px;height:38px;border-radius:50%;object-fit:cover;background:var(--surface);border:1px solid var(--line-2);flex:none}
.sc-av.sq{border-radius:8px}
.sc-form{padding:4px 16px 18px}
.sc-tools{display:flex;gap:6px;padding:12px 16px 0;justify-content:flex-end}
.sc-tools form{margin:0}
.sc-thumb{display:block;max-height:150px;max-width:100%;border-radius:10px;border:1px solid var(--line-2);margin:6px 0 8px}
.sc-thumb.round{width:72px;height:72px;object-fit:cover;border-radius:50%}
.sc-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin:6px 0 4px}
.sc-photo{display:block;margin:0;cursor:pointer}
.sc-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;border:1px solid var(--line-2)}
.sc-photo span{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);margin-top:4px}

/* ===================== BRAND ENQUIRIES (admin) ===================== */
.enq{margin-top:12px}
.enq-done{opacity:.6}
.enq-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.enq-top b{font-size:17px;margin-right:8px}
.enq-top .sc-tools{padding:0;align-items:flex-start}
.enq-facts{display:flex;flex-wrap:wrap;gap:8px 24px;margin:14px 0 0}
.enq-facts dt{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.enq-facts dd{margin:0}
.enq-msg{margin-top:14px;padding:14px;border-radius:10px;background:var(--surface-2);white-space:normal}
