/* ============================================================================
   UTG PORTAL — DESIGN SYSTEM
   One stylesheet. The portal, the Sales Console and the client review page all
   read from it, so a change lands everywhere and nothing drifts.
   ========================================================================== */
:root{
  /* brand anchors */
  --navy:#04293D; --navy-2:#0A3D5A; --navy-3:#14638F;
  --gold:#C9962C; --gold-2:#E8C36A; --gold-soft:#FBF3DF; --gold-line:#EBD9A8; --gold-deep:#8A6A18;
  /* the functional layer — UTG navy, lightened. Not a new colour. */
  --sky:#1B6E9E; --sky-2:#3F9FD1; --sky-soft:#E9F2F8; --sky-line:#C3DDEC;
  /* surfaces */
  --canvas:linear-gradient(155deg,#04293D 0%,#0A3D5A 46%,#14638F 100%);
  --mist:#EFF2F5; --card:#FFFFFF; --line:#E8EDF1;
  --ink:#0F2027; --ink-soft:#4A6270; --muted:#8FA3AE;
  --green:#12795A; --green-soft:#E6F4EF;
  --red:#B3402F; --red-soft:#FBEDEA;
  /* Notion Gig Status — the source of truth, untouched */
  --n-gray:#787774; --n-yellow:#CB912F; --n-blue:#337EA9; --n-orange:#D9730D;
  --n-purple:#9065B0; --n-green:#448361; --n-red:#D44C47; --n-pink:#C14C8A;
  --display:'Fraunces',Georgia,serif; --body:'Inter',system-ui,sans-serif; --mono:'JetBrains Mono',monospace;
  --r:20px; --r-sm:12px; --sh:0 2px 14px rgba(9,45,60,.06); --sh-lift:0 10px 30px rgba(9,45,60,.12);
}
html[data-theme="dark"]{
  --canvas:linear-gradient(155deg,#010F17 0%,#04293D 55%,#0A3D5A 100%);
  --mist:#0E1D26; --card:#16242E; --line:#27363F;
  --ink:#E9F0F4; --ink-soft:#A9BEC9; --muted:#7B909D;
  --sky-soft:#12303F; --sky-line:#255675;
  --green-soft:#12332A; --red-soft:#3A1F1B; --gold-soft:#33290F; --gold-line:#5A4818;
  --sh:0 2px 14px rgba(0,0,0,.3); --sh-lift:0 10px 30px rgba(0,0,0,.42);
}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--canvas);background-attachment:fixed;color:var(--ink);
  font-family:var(--body);line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh;
  padding:22px 18px 40px;}
a{color:var(--sky);}
.hidden{display:none !important;}

/* ---------------- the floating shell ---------------- */
.shell{max-width:1240px;margin:0 auto;background:var(--mist);border-radius:24px;
  box-shadow:0 30px 70px rgba(2,20,30,.36);overflow:hidden;}

/* ---------------- top bar ---------------- */
.topbar{background:var(--card);padding:13px 24px;display:flex;align-items:center;gap:22px;}
.topbar img.logo{height:25px;width:auto;}
html[data-theme="dark"] .topbar img.logo{filter:invert(1) brightness(2.2);}
.nav{display:flex;gap:3px;}
.nav button{background:none;border:none;padding:9px 15px;font-family:var(--body);font-size:13.5px;
  font-weight:600;color:var(--muted);cursor:pointer;border-radius:11px;}
.nav button:hover{color:var(--ink);}
.nav button.on{color:var(--sky);background:var(--sky-soft);}
.nav .count{font-family:var(--mono);font-size:10px;background:var(--n-red);color:#fff;
  border-radius:9px;padding:1px 6px;margin-left:6px;}
.tb-right{margin-left:auto;display:flex;align-items:center;gap:8px;}
.themebtn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:15px;
  padding:7px 9px;border-radius:10px;}
.themebtn:hover{background:var(--mist);color:var(--ink);}

/* avatar + menu (the profile lives here, not on the dashboard) */
.avwrap{position:relative;}
.avbtn{display:flex;align-items:center;gap:9px;background:none;border:none;cursor:pointer;
  padding:4px 5px 4px 10px;border-radius:12px;font-family:var(--body);}
.avbtn:hover{background:var(--mist);}
.avbtn .t{text-align:right;font-size:12.5px;font-weight:600;line-height:1.25;color:var(--ink);}
.avbtn .t small{display:block;color:var(--muted);font-weight:400;font-size:10.5px;}
.av{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,var(--navy),var(--sky));
  display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px;
  flex:none;overflow:hidden;}
.av img{width:100%;height:100%;object-fit:cover;}
.avmenu{position:absolute;top:calc(100% + 8px);right:0;background:var(--card);border-radius:14px;
  box-shadow:var(--sh-lift);min-width:190px;padding:6px;z-index:80;border:1px solid var(--line);}
.avmenu button{display:block;width:100%;text-align:left;background:none;border:none;padding:9px 12px;
  border-radius:9px;font-family:var(--body);font-size:13px;color:var(--ink);cursor:pointer;font-weight:500;}
.avmenu button:hover{background:var(--mist);}
.avmenu hr{border:none;border-top:1px solid var(--line);margin:5px 0;}

/* ---------------- layout ---------------- */
.wrap{padding:24px 24px 32px;}
.page-h{font-family:var(--display);font-weight:600;font-size:26px;letter-spacing:-.015em;}
.page-s{color:var(--muted);font-size:13.5px;margin-top:2px;margin-bottom:20px;}

/* ---------------- cards (borderless) ---------------- */
.card{background:var(--card);border-radius:var(--r);padding:18px 20px;box-shadow:var(--sh);}
.ch{display:flex;align-items:center;gap:9px;margin-bottom:14px;}
.ch h3{font-family:var(--display);font-weight:600;font-size:15.5px;}
.ch .ico{width:26px;height:26px;border-radius:9px;background:var(--sky-soft);color:var(--sky);
  display:flex;align-items:center;justify-content:center;font-size:13px;flex:none;}
.ch .more{margin-left:auto;font-size:11.5px;color:var(--sky);font-weight:600;cursor:pointer;}
.grid{display:grid;gap:16px;}

/* ---------------- dashboard ---------------- */
.hello{display:flex;align-items:flex-start;gap:20px;flex-wrap:wrap;margin-bottom:22px;}
.hello h1{font-family:var(--display);font-weight:600;font-size:30px;letter-spacing:-.015em;}
.hello p{color:var(--muted);font-size:13.5px;margin-top:2px;}
.kpis{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap;}
.kpi{background:var(--card);border-radius:16px;padding:10px 15px 10px 11px;display:flex;
  align-items:center;gap:10px;box-shadow:var(--sh);}
.kpi .ic{width:34px;height:34px;border-radius:11px;display:flex;align-items:center;
  justify-content:center;font-size:14px;flex:none;}
.kpi .v{font-family:var(--mono);font-weight:700;font-size:16px;line-height:1.1;}
.kpi .k{font-size:10.5px;color:var(--muted);white-space:nowrap;}
.dash{display:grid;grid-template-columns:310px 1fr 272px;gap:16px;}
@media(max-width:1080px){ .dash{grid-template-columns:1fr;} }

.todo{display:flex;gap:11px;padding:11px 0;border-bottom:1px solid var(--line);cursor:pointer;}
.todo:last-child{border:none;padding-bottom:0;}
.todo:hover .n{color:var(--sky);}
.todo .pin{width:3px;border-radius:2px;background:var(--c,var(--n-gray));flex:none;}
.todo .n{font-weight:600;font-size:13.5px;}
.todo .m{font-size:11.5px;color:var(--muted);margin-top:1px;}
.todo .due{margin-left:auto;font-family:var(--mono);font-size:9.5px;font-weight:700;padding:3px 7px;
  border-radius:6px;background:var(--red-soft);color:var(--n-red);height:fit-content;white-space:nowrap;}
.todo .due.soon{background:var(--sky-soft);color:var(--sky);}
.todo .due.ok{background:var(--green-soft);color:var(--green);}

.pipe{display:flex;gap:7px;}
.st{flex:1;background:var(--mist);border-radius:13px;padding:11px 8px;text-align:center;
  position:relative;overflow:hidden;cursor:pointer;}
.st::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--c);}
.st:hover{background:var(--sky-soft);}
.st .v{font-family:var(--mono);font-weight:700;font-size:19px;color:var(--c);}
.st .k{font-size:9.5px;color:var(--muted);margin-top:1px;}

.hero{background:linear-gradient(155deg,#04293D 0%,#0F4E74 58%,#1B6E9E 125%);color:#fff;
  border-radius:var(--r);padding:19px;box-shadow:var(--sh-lift);display:flex;flex-direction:column;}
.hero .hh{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#A9C9DE;font-weight:600;}
.hero .big{font-family:var(--mono);font-weight:700;font-size:36px;margin-top:12px;letter-spacing:-.02em;}
.hero .sm{font-size:12px;color:#A9C9DE;}
.hero .brk{margin-top:14px;display:flex;flex-direction:column;gap:7px;}
.hero .br{display:flex;justify-content:space-between;font-size:12px;color:#BFD8E8;}
.hero .br b{color:#fff;font-family:var(--mono);}
.hero .br.tot{border-top:1px solid rgba(255,255,255,.16);padding-top:8px;}
.hero .br.tot span{color:#fff;font-weight:600;} .hero .br.tot b{color:var(--gold-2);}

.act{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12.5px;}
.act:last-child{border:none;}
.act .d{width:7px;height:7px;border-radius:50%;background:var(--sky);margin-top:6px;flex:none;}
.act .tm{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--muted);white-space:nowrap;}
.act b{font-weight:600;}

/* ---------------- buttons ---------------- */
.btn{font-family:var(--body);font-weight:600;font-size:13.5px;padding:10px 17px;border-radius:12px;
  border:1.5px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;transition:.13s;}
.btn:hover{border-color:var(--muted);}
.btn.pri{background:var(--navy);border-color:var(--navy);color:#fff;}
.btn.pri:hover{background:var(--navy-2);}
.btn.gold{background:var(--gold);border-color:var(--gold);color:#3A2A05;font-weight:700;}
.btn.danger{background:var(--red-soft);border-color:var(--red-soft);color:var(--red);}
.btn:disabled{opacity:.45;cursor:not-allowed;}
.btn.sm{padding:7px 12px;font-size:12.5px;border-radius:10px;}

/* ---------------- gigs ---------------- */
.giglist{display:flex;flex-direction:column;gap:10px;}
.gig{background:var(--card);border-radius:15px;padding:14px 18px;cursor:pointer;display:flex;
  align-items:center;gap:16px;box-shadow:var(--sh);border-left:4px solid var(--c,var(--n-gray));
  transition:transform .13s,box-shadow .13s;}
.gig:hover{transform:translateY(-2px);box-shadow:var(--sh-lift);}
.gig .g-main{flex:1;min-width:0;}
.gig .g-co{font-family:var(--display);font-weight:600;font-size:16px;}
.gig .g-meta{font-size:12.5px;color:var(--muted);margin-top:2px;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;}
.gig .g-right{text-align:right;flex:none;}
.gig .g-bid{font-family:var(--mono);font-size:11px;color:var(--muted);}
.gig .g-val{font-family:var(--mono);font-weight:700;font-size:15px;}
.pill{display:inline-block;font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.04em;
  padding:3px 8px;border-radius:7px;color:#fff;background:var(--c,var(--n-gray));white-space:nowrap;}

/* ---------------- forms ---------------- */
label{display:block;font-size:12px;font-weight:600;color:var(--ink-soft);margin-bottom:5px;}
label small{font-weight:400;color:var(--muted);}
input[type=text],input[type=email],input[type=date],input[type=number],input[type=tel],
input[type=password],input[type=search],select,textarea{
  width:100%;border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;font-family:var(--body);
  font-size:13.5px;color:var(--ink);background:var(--mist);}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--sky);background:var(--card);}
textarea{resize:vertical;min-height:70px;}
.f{margin-bottom:14px;}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media(max-width:700px){ .frow{grid-template-columns:1fr;} }

/* ---------------- profile ---------------- */
.pf{display:grid;grid-template-columns:290px 1fr;gap:16px;}
@media(max-width:900px){ .pf{grid-template-columns:1fr;} }
.avbig{width:104px;height:104px;border-radius:28px;background:linear-gradient(135deg,var(--navy),var(--sky));
  display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--display);
  font-size:34px;font-weight:600;margin:0 auto 14px;position:relative;box-shadow:var(--sh-lift);overflow:visible;}
.avbig .inner{width:100%;height:100%;border-radius:28px;overflow:hidden;display:flex;
  align-items:center;justify-content:center;}
.avbig img{width:100%;height:100%;object-fit:cover;}
.avbig .cam{position:absolute;bottom:-5px;right:-5px;width:32px;height:32px;border-radius:11px;
  background:var(--gold);color:#3A2A05;display:flex;align-items:center;justify-content:center;
  font-size:14px;border:3px solid var(--card);cursor:pointer;}
.tog{display:flex;align-items:center;gap:9px;margin-top:10px;cursor:pointer;user-select:none;}
.tog input{position:absolute;opacity:0;width:0;height:0;}
.tog .tk{width:38px;height:21px;border-radius:11px;background:var(--line);position:relative;flex:none;transition:.15s;}
.tog .tk::after{content:"";position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:50%;
  background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .15s;}
.tog input:checked + .tk{background:var(--sky);}
.tog input:checked + .tk::after{transform:translateX(17px);}
.tog .tl{font-size:12.5px;font-weight:600;color:var(--ink-soft);}

/* ---------------- misc ---------------- */
.empty{text-align:center;padding:48px 20px;color:var(--muted);font-size:14px;
  background:var(--card);border-radius:var(--r);box-shadow:var(--sh);}
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;
  padding:12px 22px;border-radius:12px;font-size:13.5px;box-shadow:0 10px 34px rgba(2,20,30,.4);z-index:200;}
.toast.err{background:var(--red);}
.spin{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);
  border-top-color:#fff;border-radius:50%;animation:sp .7s linear infinite;vertical-align:-2px;margin-right:7px;}
@keyframes sp{to{transform:rotate(360deg);}}

/* ---------------- login ---------------- */
.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;margin:-22px -18px -40px;}
.login{background:var(--card);border-radius:24px;padding:38px 34px;width:100%;max-width:400px;
  box-shadow:0 30px 70px rgba(2,20,30,.4);text-align:center;}
.login img{height:38px;margin-bottom:22px;}
html[data-theme="dark"] .login img{filter:invert(1) brightness(2.2);}
.login h1{font-family:var(--display);font-weight:600;font-size:22px;margin-bottom:6px;}
.login p{font-size:13.5px;color:var(--ink-soft);margin-bottom:22px;}
.login input{text-align:center;margin-bottom:12px;}
.login .btn{width:100%;}
.login .note{font-size:11.5px;color:var(--muted);margin-top:16px;line-height:1.5;}

/* ---------------- outreach log ---------------- */
.logitem{border-top:1px solid var(--line);padding:9px 0;font-size:13px;}
.logitem .lmeta{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted);display:flex;gap:8px;align-items:center;}
.logitem .lacts{margin-left:auto;display:flex;gap:6px;opacity:0;transition:opacity .12s;}
.logitem:hover .lacts{opacity:1;}
.logitem .lacts button{background:none;border:none;color:var(--muted);cursor:pointer;font-size:11px;
  padding:2px 5px;border-radius:5px;}
.logitem .lacts button:hover{color:var(--ink);background:var(--mist);}
.logitem .lacts button.del:hover{color:var(--red);}

/* ---------------- talent / submissions ---------------- */
.subgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(226px,1fr));gap:14px;margin-top:14px;}
.sub-c{background:var(--card);border:2px solid var(--line);border-radius:15px;overflow:hidden;
  box-shadow:var(--sh);transition:transform .13s,box-shadow .13s;}
.sub-c:hover{transform:translateY(-2px);box-shadow:var(--sh-lift);}
.sub-c.short{border-color:var(--gold);}
.sub-c .sph{background:var(--mist);aspect-ratio:4/5;position:relative;overflow:hidden;}
.sub-c .sph img{width:100%;height:100%;object-fit:cover;display:block;}
.sub-c .sph .cnt{position:absolute;bottom:6px;right:6px;background:rgba(0,0,0,.6);color:#fff;
  font-family:var(--mono);font-size:10px;padding:2px 6px;border-radius:5px;}
.sub-c .sph .tag{position:absolute;top:6px;left:6px;font-family:var(--mono);font-size:9px;font-weight:700;
  padding:3px 6px;border-radius:5px;background:var(--n-green);color:#fff;letter-spacing:.05em;}
.sub-c .sph .tag.open{background:var(--n-gray);}
.sub-c .si{padding:11px 13px;}
.sub-c .si .n{font-weight:600;font-size:14px;}
.sub-c .si .d{font-size:11.5px;color:var(--muted);margin-top:1px;}
.sub-c .si .cts{font-size:11.5px;color:var(--ink-soft);margin-top:6px;line-height:1.7;word-break:break-all;}
.sub-c .si .cts a{color:var(--sky);}
.sub-c .sact{padding:0 13px 12px;display:flex;gap:6px;}
.sub-c .sact button{flex:1;border:1.5px solid var(--line);background:var(--card);border-radius:9px;
  padding:6px;font-size:12px;font-weight:600;cursor:pointer;color:var(--ink-soft);font-family:var(--body);}
.sub-c .sact button.on{background:var(--gold);border-color:var(--gold);color:#3A2A05;}
.cdec{font-family:var(--mono);font-size:9.5px;font-weight:700;padding:3px 7px;border-radius:5px;
  letter-spacing:.05em;display:inline-block;margin-top:6px;}
.cdec.approved{background:var(--green-soft);color:var(--green);}
.cdec.maybe{background:var(--gold-soft);color:var(--gold-deep);}
.cdec.passed{background:var(--mist);color:var(--muted);}
.pubbox{background:var(--gold-soft);border-radius:14px;padding:14px 16px;margin-top:14px;}
.pubbox .lnk{display:flex;gap:8px;margin-top:9px;}
.pubbox .lnk input{font-family:var(--mono);font-size:11.5px;}
.rt{display:flex;align-items:center;gap:9px;cursor:pointer;user-select:none;}
.rt input{position:absolute;opacity:0;width:0;height:0;}
.rt .track{width:38px;height:21px;border-radius:11px;background:var(--line);position:relative;flex:none;transition:.15s;}
.rt .track::after{content:"";position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:50%;
  background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .15s;}
.rt input:checked + .track{background:var(--sky);}
.rt input:checked + .track::after{transform:translateX(17px);}
.rt .lab{font-size:12.5px;font-weight:600;color:var(--ink-soft);}

/* ---------------- top bar: never overflow ---------------- */
body{overflow-x:hidden;}
.topbar{flex-wrap:wrap;row-gap:8px;}
.topbar img.logo{flex:none;}
.nav{flex:1;min-width:0;flex-wrap:wrap;}
.tb-right{flex:none;min-width:0;}
.avbtn .t{max-width:150px;overflow:hidden;}
.avbtn .t small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.avbtn .t > span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;}
@media(max-width:820px){
  .avbtn .t{display:none;}          /* just the avatar on small screens */
  .nav button{padding:8px 11px;font-size:12.5px;}
}
.wrap{overflow-x:hidden;}
.pf{min-width:0;} .pf > *{min-width:0;}
.dash{min-width:0;} .dash > *{min-width:0;}

/* ---------------- team ---------------- */
.trow{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);}
.trow:last-child{border:none;}
.trow .av{width:40px;height:40px;border-radius:12px;}
.trow .who{flex:1;min-width:0;}
.trow .who .n{font-weight:600;font-size:14px;}
.trow .who .e{font-size:11.5px;color:var(--muted);}
.trow .code{font-family:var(--mono);font-size:11px;color:var(--muted);background:var(--mist);
  padding:4px 8px;border-radius:7px;}
.trow .badge{font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.06em;
  padding:4px 8px;border-radius:7px;}
.trow .badge.admin{background:var(--gold-soft);color:var(--gold-deep);}
.trow .badge.agent{background:var(--sky-soft);color:var(--sky);}
.trow .badge.off{background:var(--red-soft);color:var(--red);}
.trow .seen{font-size:11px;color:var(--muted);min-width:92px;}
.trow .tacts{display:flex;gap:6px;}
html[data-theme="dark"] .trow .badge.admin{color:var(--gold-2);}
.linkbox{background:var(--gold-soft);border-radius:12px;padding:12px 14px;margin-top:12px;}
.linkbox input{font-family:var(--mono);font-size:11px;}

/* ---------------- talent roster ---------------- */
.tfilters{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap;}
.tfilters button{border:none;background:var(--card);border-radius:11px;padding:8px 14px;font-size:12.5px;
  font-weight:600;color:var(--muted);cursor:pointer;box-shadow:var(--sh);font-family:var(--body);}
.tfilters button.on{background:var(--sky);color:#fff;}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;}
.tc{background:var(--card);border-radius:16px;padding:16px;box-shadow:var(--sh);display:flex;gap:13px;
  align-items:flex-start;transition:transform .13s,box-shadow .13s;}
.tc:hover{transform:translateY(-2px);box-shadow:var(--sh-lift);}
.tc .tav{width:52px;height:52px;border-radius:15px;flex:none;overflow:hidden;
  background:linear-gradient(135deg,var(--navy),var(--sky));display:flex;align-items:center;
  justify-content:center;color:#fff;font-weight:700;font-size:15px;}
.tc .tav img{width:100%;height:100%;object-fit:cover;}
.tc .tb{flex:1;min-width:0;}
.tc .tn{font-weight:600;font-size:14px;}
.tc .tm{font-size:11.5px;color:var(--muted);margin-top:1px;}
.tc .tcat{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px;}
.tc .tcat span{font-size:9.5px;font-weight:700;font-family:var(--mono);padding:2px 6px;border-radius:5px;
  background:var(--sky-soft);color:var(--sky);}
.tstat{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.05em;padding:3px 7px;
  border-radius:6px;display:inline-block;margin-top:7px;}
.tstat.new{background:var(--sky-soft);color:var(--sky);}
.tstat.approved,.tstat.active{background:var(--green-soft);color:var(--green);}
.tstat.review{background:var(--gold-soft);color:var(--gold-deep);}
.tstat.declined{background:var(--red-soft);color:var(--red);}
.tc .tgo{margin-top:9px;}
.haslogin{font-size:10px;color:var(--green);font-family:var(--mono);margin-top:5px;}

/* ---------------- talent detail drawer ---------------- */
.scrim{position:fixed;inset:0;background:rgba(2,16,24,.72);backdrop-filter:blur(3px);z-index:150;
  display:flex;justify-content:flex-end;}
.drawer{background:var(--mist);width:100%;max-width:720px;height:100%;overflow-y:auto;
  box-shadow:-20px 0 60px rgba(0,0,0,.4);animation:slide .22s ease-out;}
@keyframes slide{from{transform:translateX(40px);opacity:.4;}to{transform:none;opacity:1;}}
.dhead{background:linear-gradient(150deg,#04293D,#0A3D5A 60%,#14638F);color:#fff;padding:22px 24px;
  display:flex;gap:16px;align-items:flex-start;position:sticky;top:0;z-index:2;}
.dhead .dav{width:74px;height:74px;border-radius:20px;overflow:hidden;flex:none;background:rgba(255,255,255,.12);
  display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:24px;font-weight:600;}
.dhead .dav img{width:100%;height:100%;object-fit:cover;}
.dhead .dn{font-family:var(--display);font-weight:600;font-size:22px;}
.dhead .dm{font-size:12.5px;color:#BFD8E8;margin-top:3px;}
.dhead .dclose{margin-left:auto;background:rgba(255,255,255,.14);border:none;color:#fff;width:32px;height:32px;
  border-radius:10px;cursor:pointer;font-size:16px;flex:none;}
.dbody{padding:20px 24px 40px;}
.dsec{background:var(--card);border-radius:16px;padding:16px 18px;margin-bottom:14px;box-shadow:var(--sh);}
.dsec h4{font-family:var(--display);font-weight:600;font-size:14px;margin-bottom:12px;
  display:flex;align-items:center;gap:7px;}
.dsec h4 .c{font-family:var(--mono);font-size:9.5px;color:var(--muted);font-weight:400;}
.prop{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px;align-items:flex-start;}
.prop:last-child{border:none;}
.prop .pk{width:180px;flex:none;color:var(--muted);font-size:12px;padding-top:2px;}
.prop .pv{flex:1;min-width:0;word-break:break-word;}
.prop .pv a{color:var(--sky);}
.prop .pe{opacity:0;background:none;border:none;color:var(--muted);cursor:pointer;font-size:11px;
  padding:2px 6px;border-radius:5px;flex:none;}
.prop:hover .pe{opacity:1;}
.prop .pe:hover{background:var(--mist);color:var(--sky);}
.prop.locked .pe{display:none;}
.chipv{display:inline-block;font-size:10.5px;font-weight:700;font-family:var(--mono);padding:2px 7px;
  border-radius:6px;background:var(--sky-soft);color:var(--sky);margin:0 4px 4px 0;}
.dphotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;}
.dphotos img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:10px;cursor:pointer;}
.hist{font-size:12px;padding:8px 0;border-bottom:1px solid var(--line);}
.hist:last-child{border:none;}
.hist .hm{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
.hist .hb{margin-top:2px;color:var(--ink-soft);}
.hist .hd{color:var(--red);text-decoration:line-through;}
.hist .ha{color:var(--green);}
.statsel{border:1.5px solid var(--line);border-radius:10px;padding:7px 9px;font-size:12px;font-weight:600;
  background:var(--mist);color:var(--ink);font-family:var(--body);width:100%;cursor:pointer;}
.tc .tage{font-family:var(--mono);font-size:11px;color:var(--muted);}

/* ---- talent drawer: gig submissions + clickable links ---- */
.subblk{ padding:12px 0; border-top:1px solid var(--line); }
.subblk:first-of-type{ border-top:0; }
.subhd{ display:flex; align-items:center; gap:10px; justify-content:space-between; margin-bottom:9px; }
.subhd .bid{ font-family:var(--mono,ui-monospace,monospace); font-size:11px; letter-spacing:.06em;
  color:var(--gold); background:rgba(201,150,44,.10); border:1px solid rgba(201,150,44,.28);
  padding:3px 8px; border-radius:6px; }
.sublinks{ display:flex; flex-wrap:wrap; gap:8px; margin-top:9px; }
.sublinks a{ font-size:12px; padding:5px 10px; border-radius:999px;
  background:var(--chip); border:1px solid var(--line); text-decoration:none; }
.sublinks a:hover{ border-color:var(--sky-2); }
.dsec .pv a{ color:var(--sky-2); text-decoration:none; border-bottom:1px solid rgba(63,159,209,.35);
  word-break:break-all; }
.dsec .pv a:hover{ color:var(--gold-2); border-bottom-color:var(--gold-2); }
.dphotos img{ cursor:zoom-in; }

/* page header with an action on the right */
.page-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.page-head .page-s{ margin-bottom:14px; }

/* ---- inbox / notifications ---- */
.badge{ display:inline-flex; align-items:center; justify-content:center; min-width:17px; height:17px;
  padding:0 5px; margin-left:6px; border-radius:999px; background:var(--n-red); color:#fff;
  font-size:10.5px; font-weight:700; line-height:1; vertical-align:middle; }
.cpill{ margin-left:auto; font-size:11px; padding:2px 8px; border-radius:999px;
  background:var(--chip); border:1px solid var(--line); color:var(--muted); }
.nlist{ display:flex; flex-direction:column; gap:2px; margin-top:12px; }
.nrow{ display:flex; align-items:flex-start; gap:12px; padding:13px 14px; border-radius:12px;
  background:var(--card); transition:background .12s ease; }
.nrow:hover{ background:var(--chip); }
.nrow.read{ opacity:.5; }
.ndot{ width:8px; height:8px; border-radius:50%; margin-top:6px; flex:0 0 8px; }
.nrow.read .ndot{ background:var(--muted) !important; }
.nmain{ flex:1; min-width:0; }
.ntitle{ font-size:13.5px; font-weight:600; color:var(--text); }
.nbody{ font-size:12.5px; color:var(--muted); margin-top:3px; line-height:1.45;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nmeta{ font-size:11px; color:var(--muted); margin-top:5px; }
.ntype{ font-weight:600; }
.tick{ flex:0 0 auto; background:transparent; border:1px solid var(--line); color:var(--muted);
  width:26px; height:26px; border-radius:7px; cursor:pointer; font-size:12px; line-height:1; }
.tick:hover{ border-color:var(--sky-2); color:var(--sky-2); }
.act{ position:relative; }
.act .tick{ margin-left:8px; }

/* ---- sales: gig picker ---- */
.gsearch{ width:100%; padding:11px 13px; border-radius:10px; border:1px solid var(--line);
  background:var(--chip); color:var(--text); font-size:13.5px; }
.gsearch:focus{ outline:none; border-color:var(--sky-2); }
.ghits{ display:flex; flex-direction:column; gap:2px; margin-top:10px; }
.ghit{ display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:10px; }
.ghit:hover{ background:var(--chip); }
.gh-main{ flex:1; min-width:0; cursor:pointer; }
.gh-co{ font-size:13.5px; font-weight:600; color:var(--text); }
.gh-meta{ font-size:11.5px; color:var(--muted); margin-top:2px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* ---- login: password ---- */
/* password field + its show/hide toggle */
.pwwrap{ position:relative; margin-top:8px; }
.pwwrap input{ padding-right:62px !important; }
.login .pwwrap input{ text-align:center; margin-bottom:0; }
.eye{ position:absolute; right:8px; top:50%; transform:translateY(-50%);
  background:transparent; border:0; padding:5px 8px; border-radius:7px; cursor:pointer;
  font-family:var(--body); font-size:11px; font-weight:600; letter-spacing:.03em;
  color:var(--muted); text-transform:uppercase; }
.eye:hover{ color:var(--sky-2); background:var(--chip); }
.login .pwwrap{ margin-bottom:12px; }
.loginerr{ margin-top:10px; padding:10px 12px; border-radius:9px; font-size:12.5px; line-height:1.5;
  background:rgba(212,76,71,.10); border:1px solid rgba(212,76,71,.35); color:#D44C47; }
.loginalt{ margin-top:14px; text-align:center; }
.linkbtn{ background:none; border:0; padding:0; cursor:pointer; font-size:12.5px;
  color:var(--sky-2); text-decoration:underline; text-underline-offset:2px; }
.linkbtn:hover{ color:var(--gold); }

/* hide/show the earnings numbers */
.hero .hh{ position:relative; }
.heye{ margin-left:auto; background:rgba(255,255,255,.12); border:0; color:#fff; cursor:pointer;
  width:24px; height:24px; border-radius:7px; font-size:11px; line-height:1; padding:0; }
.heye:hover{ background:rgba(255,255,255,.26); }

/* gig status filters — same colours as the Notion status, so the chip reads
   the same way the pipeline does */
.tfilters.gstat{ margin-top:8px; margin-bottom:4px; }
.sfilter{ display:inline-flex; align-items:center; gap:7px; }
.sfilter .sdot{ width:7px; height:7px; border-radius:50%; background:var(--c,var(--muted));
  flex:none; display:inline-block; }
.sfilter.on{ background:var(--c,var(--sky)) !important; border-color:var(--c,var(--sky)) !important;
  color:#fff !important; }
.sfilter.on .sdot{ background:rgba(255,255,255,.85); }
.sfilter.on .c{ color:#fff; opacity:.85; }

/* destructive action — reads as a warning without shouting */
.btn.danger{ color:var(--n-red); border-color:rgba(212,76,71,.4); background:transparent; }
.btn.danger:hover{ background:var(--n-red); border-color:var(--n-red); color:#fff; }

/* ==================== TALENT SIDE ==================== */
.vcheck{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;
  border-radius:50%;background:var(--sky);color:#fff;font-size:12px;vertical-align:middle;margin-left:4px;}
.tstat{display:inline-block;font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.1em;
  padding:4px 9px;border-radius:7px;color:#fff;margin-top:9px;background:var(--muted);}
.tstat.s-signed{background:var(--n-green);}
.tstat.s-network{background:var(--n-purple);}

/* the onboarding gate */
.gate{background:linear-gradient(150deg,#3A2A05,#5A4818 130%);border-radius:20px;padding:20px 22px;
  margin-bottom:20px;box-shadow:var(--sh-lift);border:1px solid rgba(232,195,106,.28);}
.gate .gh h3{font-family:var(--display);font-size:17px;font-weight:600;color:var(--gold-2);}
.gate .gsub{font-size:13px;color:#E0CFA0;margin:5px 0 16px;line-height:1.5;}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:10px;}
.step{background:rgba(0,0,0,.26);border-radius:13px;padding:12px 14px;display:flex;align-items:center;gap:11px;}
.step .mk{width:22px;height:22px;border-radius:50%;flex:none;display:flex;align-items:center;
  justify-content:center;font-size:11px;font-weight:700;}
.step.done .mk{background:var(--n-green);color:#fff;}
.step.todo .mk{background:rgba(255,255,255,.14);color:var(--gold-2);border:1.5px dashed rgba(232,195,106,.5);}
.step .lb{font-size:12.5px;font-weight:600;color:#fff;}
.step.done .lb{color:#C8DCC8;}
.step .sub{font-size:10.5px;color:#BFAE7E;margin-top:1px;}
.step .go{margin-left:auto;font-size:11px;font-weight:700;color:#3A2A05;background:var(--gold-2);
  padding:5px 10px;border-radius:8px;cursor:pointer;white-space:nowrap;}
.step .go:hover{background:#fff;}

/* talent gig cards */
.gigs{display:flex;flex-direction:column;gap:10px;}
.tgig{background:var(--mist);border-radius:15px;padding:14px 16px;display:flex;gap:14px;align-items:center;
  border-left:3px solid var(--c,var(--sky));transition:.14s;}
.tgig:hover{transform:translateX(2px);}
.tgig .gmain{flex:1;min-width:0;}
.tgig .gt{font-weight:600;font-size:14.5px;}
.tgig .gm{font-size:11.5px;color:var(--muted);margin-top:3px;}
.tgig .gtags{display:flex;gap:5px;margin-top:7px;flex-wrap:wrap;}
.tag{font-size:10px;background:var(--chip,rgba(127,127,127,.12));color:var(--ink-soft);
  padding:3px 7px;border-radius:6px;}
.tgig .pay{text-align:right;flex:none;}
.tgig .pay .amt{font-family:var(--mono);font-weight:700;font-size:17px;color:var(--gold);}
html[data-theme="dark"] .tgig .pay .amt{color:var(--gold-2);}
.tgig .pay .per{font-size:10px;color:var(--muted);}

/* application tracker */
.app{padding:13px 0;border-bottom:1px solid var(--line);}
.app:last-child{border:0;padding-bottom:0;}
.app .at{font-weight:600;font-size:13.5px;}
.app .am{font-size:11px;color:var(--muted);margin-top:2px;}
.track{display:flex;align-items:center;margin-top:10px;}
.track .n{width:9px;height:9px;border-radius:50%;background:var(--line);flex:none;}
.track .n.on{background:var(--sky-2);}
.track .n.win{background:var(--n-green);}
.track .n.off{background:var(--muted);}
.track .l{flex:1;height:2px;background:var(--line);}
.track .l.on{background:var(--sky-2);}
.tracklb{display:flex;justify-content:space-between;font-size:9.5px;color:var(--muted);margin-top:5px;
  font-family:var(--mono);letter-spacing:.05em;}

/* photos */
.phgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;}
.ph{aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:var(--mist);position:relative;
  display:flex;align-items:center;justify-content:center;}
.ph img{width:100%;height:100%;object-fit:cover;}
.ph.add{border:1.5px dashed var(--line);color:var(--muted);font-size:24px;cursor:pointer;}
.ph.add:hover{border-color:var(--gold);color:var(--gold);}
.ph .x{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:6px;background:rgba(0,0,0,.6);
  color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.ph .prim{position:absolute;bottom:6px;left:6px;font-family:var(--mono);font-size:8.5px;font-weight:700;
  letter-spacing:.1em;background:var(--gold);color:#3A2A05;padding:3px 6px;border-radius:5px;}

/* apply modal */
.modal{background:var(--card);border-radius:20px;padding:22px;max-width:520px;width:100%;
  box-shadow:var(--sh-lift);max-height:86vh;overflow:auto;}
.modal .mh{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;}
.modal .mt{font-family:var(--display);font-size:18px;font-weight:600;}
.modal .ms{font-size:12.5px;color:var(--muted);margin-top:3px;line-height:1.5;}
.modal .dclose{margin-left:auto;background:none;border:0;color:var(--muted);font-size:24px;cursor:pointer;
  line-height:1;}
.pickgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;}
.pick{aspect-ratio:3/4;border-radius:10px;overflow:hidden;position:relative;cursor:pointer;
  border:2px solid transparent;opacity:.5;transition:.13s;}
.pick img{width:100%;height:100%;object-fit:cover;}
.pick .tick{position:absolute;top:5px;right:5px;width:19px;height:19px;border-radius:50%;
  background:var(--n-green);color:#fff;font-size:11px;display:none;align-items:center;justify-content:center;}
.pick.on{opacity:1;border-color:var(--n-green);}
.pick.on .tick{display:flex;}

/* docs */
.doc{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);}
.doc:last-of-type{border:0;}
.doc .di{width:30px;height:30px;border-radius:9px;background:var(--chip,rgba(127,127,127,.1));
  display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex:none;}
.doc .dn{font-size:13.5px;font-weight:600;}
.doc .dm{font-size:11px;color:var(--muted);}
.doc .ds{margin-left:auto;}

.note{background:rgba(63,159,209,.09);border-left:3px solid var(--sky-2);border-radius:10px;
  padding:11px 13px;font-size:12px;color:var(--ink-soft);line-height:1.55;margin-top:14px;}
.note b{color:var(--sky-2);}
.scrim{position:fixed;inset:0;background:rgba(2,14,20,.62);backdrop-filter:blur(3px);z-index:200;
  display:flex;align-items:center;justify-content:center;padding:20px;}

/* ---- signing ---- */
.modal.wide{ max-width:640px; }
.docview{ border:1px solid var(--line); border-radius:12px; overflow:hidden; margin-bottom:8px;
  background:var(--mist); }
.docview iframe{ width:100%; height:340px; border:0; display:block; }
.dlink{ display:inline-block; font-size:12px; margin-bottom:14px; }
.sform .frow3{ display:grid; grid-template-columns:2fr 1fr 1fr; gap:12px; }
@media(max-width:600px){ .sform .frow3{ grid-template-columns:1fr; } }
.cert{ background:var(--chip,rgba(127,127,127,.08)); border-left:3px solid var(--gold);
  border-radius:10px; padding:11px 13px; font-size:11.5px; line-height:1.55; color:var(--ink-soft);
  margin-bottom:14px; }
.cert b{ color:var(--ink); }
.signbox{ border:1.5px dashed var(--line); border-radius:14px; padding:15px; background:var(--mist); }
.sigfield{ font-family:var(--display) !important; font-size:22px !important; padding:12px 14px !important;
  letter-spacing:.01em; }
.consent{ display:flex; gap:9px; align-items:flex-start; margin-top:12px; font-weight:400 !important;
  font-size:12px !important; color:var(--ink-soft) !important; line-height:1.5; cursor:pointer; }
.consent input{ width:auto !important; margin-top:2px; flex:none; }

/* W-9 certification — the IRS requires this to stand out from everything else */
.cert{ background:var(--chip,rgba(127,127,127,.08)); border:1.5px solid var(--gold);
  border-radius:12px; padding:14px 15px; font-size:11.5px; line-height:1.55;
  color:var(--ink-soft); margin-bottom:14px; }
.cert b{ color:var(--ink); }
.certh{ font-family:var(--mono); font-size:9.5px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--gold); font-weight:700; margin-bottom:7px; }
.certlist{ margin:8px 0 0 16px; padding:0; }
.certlist li{ margin-bottom:6px; transition:.15s; }

/* the agreement, readable — an iframed PDF is a blank box on iOS Safari */
.docview{ border:1px solid var(--line); border-radius:12px; background:var(--mist);
  max-height:300px; overflow-y:auto; -webkit-overflow-scrolling:touch; padding:16px 18px; }
.docview iframe{ display:none; }
.agr{ font-size:12.5px; line-height:1.6; color:var(--ink-soft); }
.agr .agr-t{ font-family:var(--display); font-size:15px; font-weight:600; color:var(--ink);
  text-align:center; margin-bottom:4px; }
.agr .agr-h{ font-family:var(--display); font-size:13.5px; font-weight:600; color:var(--ink);
  margin:16px 0 6px; padding-top:10px; border-top:1px solid var(--line); }
.agr p{ margin-bottom:9px; }
.agr b{ color:var(--ink); }
.agrfoot{ display:flex; align-items:center; justify-content:space-between; gap:10px;
  margin:8px 0 14px; flex-wrap:wrap; }
.agrhint{ font-size:11.5px; color:var(--muted); }
.agrhint.done{ color:var(--n-green); font-weight:600; }
.btn:disabled{ opacity:.45; cursor:not-allowed; }

/* ---- hamburger ---- */
.burger{ display:none; background:none; border:0; cursor:pointer; padding:8px 6px;
  flex-direction:column; gap:4px; }
.burger span{ display:block; width:19px; height:2px; border-radius:2px; background:var(--ink-soft);
  transition:.18s; }
.burger.on span:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.burger.on span:nth-child(2){ opacity:0; }
.burger.on span:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }

@media(max-width:820px){
  .burger{ display:flex; }
  .topbar{ gap:12px; padding:12px 16px; }
  .nav{ display:none; position:absolute; top:58px; left:12px; right:12px; z-index:90;
    flex-direction:column; gap:2px; background:var(--card); border:1px solid var(--line);
    border-radius:16px; padding:8px; box-shadow:var(--sh-lift); }
  .nav.open{ display:flex; }
  .nav button{ text-align:left; padding:12px 14px; font-size:14.5px; }
  .topbar{ position:relative; }
  .avbtn .t{ display:none; }
}

/* ---- profile editor ---- */
.pgrid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:12px;
  margin-bottom:18px; }
.pgrid .f{ margin-bottom:0; }

/* ---- payouts ---- */
.paycur{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; background:var(--mist);
  border-radius:12px; padding:12px 14px; }
.paycur .mono{ font-family:var(--mono); font-size:13px; color:var(--gold); font-weight:700; }
.paypick{ display:flex; gap:8px; flex-wrap:wrap; }
.paybtn{ flex:1; min-width:110px; padding:13px 10px; border-radius:12px; border:1.5px solid var(--line);
  background:var(--card); color:var(--ink); font-family:var(--body); font-size:13.5px; font-weight:600;
  cursor:pointer; transition:.13s; }
.paybtn:hover{ border-color:var(--sky-2); }
.paybtn.on{ border-color:var(--gold); background:var(--gold-soft); color:var(--gold-deep); }
html[data-theme="dark"] .paybtn.on{ color:var(--gold-2); }

/* what you do — talent categories */
.catwrap{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:20px; }
.catbtn{ padding:9px 14px; border-radius:999px; border:1.5px solid var(--line);
  background:var(--card); color:var(--ink-soft); font-family:var(--body); font-size:12.5px;
  font-weight:600; cursor:pointer; transition:.13s; }
.catbtn:hover{ border-color:var(--sky-2); color:var(--sky-2); }
.catbtn.on{ background:var(--sky); border-color:var(--sky); color:#fff; }

/* make main */
.ph .mkmain{ position:absolute; bottom:6px; left:6px; right:6px; padding:5px;
  border:0; border-radius:7px; background:rgba(0,0,0,.62); color:#fff;
  font-family:var(--body); font-size:10.5px; font-weight:600; cursor:pointer;
  opacity:0; transition:.14s; }
.ph:hover .mkmain{ opacity:1; }
.ph .mkmain:hover{ background:var(--gold); color:#3A2A05; }
@media(hover:none){ .ph .mkmain{ opacity:1; } }

/* a KPI that only appears when it's a problem */
.kpi-warn{ border:1px solid rgba(201,150,44,.35); }
.kpi-warn:hover{ border-color:var(--gold); }
.kpi-warn .k{ color:var(--gold-2); }

.tstat.s-onboarding{ background:var(--gold); color:#3A2A05; }
.tstat.s-review{ background:var(--n-gray); }

/* money inputs — a $ so nobody wonders whether 70 is dollars or hours */
.moneyf{ display:flex; align-items:center; border:1.5px solid var(--line); border-radius:12px;
  background:var(--mist); overflow:hidden; }
.moneyf span{ padding:0 2px 0 12px; color:var(--muted); font-family:var(--mono); font-size:13px; }
.moneyf input{ border:0 !important; background:transparent !important; border-radius:0 !important; }
.moneyf:focus-within{ border-color:var(--sky); }

/* a plain switch row */
.togrow{ display:flex; align-items:center; gap:10px; cursor:pointer; font-size:13px;
  font-weight:500 !important; color:var(--ink) !important; margin-bottom:2px; }
.togrow input{ width:auto !important; }

/* talent gig card extras */
.gdesc{ font-size:12.5px; color:var(--ink-soft); margin-top:8px; line-height:1.5;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.gcoord{ display:flex; align-items:center; gap:7px; margin-top:9px; font-size:11.5px;
  color:var(--muted); }
.gcoord .cav{ width:20px; height:20px; border-radius:6px; background:linear-gradient(135deg,var(--navy),var(--sky));
  color:#fff; font-size:8.5px; font-weight:700; display:flex; align-items:center; justify-content:center; }
.gcoord b{ color:var(--ink-soft); }
.conf{ font-family:var(--mono); font-size:9.5px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted); background:var(--chip,rgba(127,127,127,.12)); padding:3px 7px; border-radius:6px;
  vertical-align:middle; }

/* ---------- manage a live submission ---------- */
.manage{ display:flex; align-items:center; gap:7px; background:none; border:none; cursor:pointer;
  font-family:var(--body); font-size:12px; font-weight:600; color:var(--muted);
  padding:9px 0 0; margin-top:4px; }
.manage:hover{ color:var(--sky); }
.manage .cv{ display:inline-block; transition:transform .18s; font-size:10px; }
.manage.on{ color:var(--sky); }
.manage.on .cv{ transform:rotate(180deg); }
.mgpanel{ margin-top:10px; padding-top:12px; border-top:1px solid var(--line);
  display:flex; flex-direction:column; gap:12px; align-items:flex-start; }
.optout{ background:var(--mist); border-radius:12px; padding:12px 13px; width:100%; }
.optout .oh{ font-size:12.5px; font-weight:600; color:var(--ink); }
.optout .om{ font-size:11.5px; color:var(--muted); margin:3px 0 10px; line-height:1.5; }
.btn.danger{ background:var(--red-soft); color:var(--red); border-color:transparent; }
.btn.danger:hover{ background:var(--red); color:#fff; }

/* reference links in the apply modal */
.linkrow{ display:flex; gap:6px; margin-bottom:6px; }
.linkrow input{ flex:1; margin:0 !important; }
.lx{ flex:none; width:34px; border:1.5px solid var(--line); background:var(--mist);
  border-radius:10px; color:var(--muted); cursor:pointer; font-size:16px; line-height:1; }
.lx:hover{ color:var(--red); border-color:var(--red); }
.pickmore{ font-size:11.5px; color:var(--muted); margin-top:9px; }

.frow3{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:10px; }
@media(max-width:520px){ .frow3{ grid-template-columns:1fr; } }

/* the day's pay is the headline; the hourly rate is the working. */
.tgig .pay .amt.big{ font-size:22px; color:var(--gold); font-weight:700; line-height:1.1; }
.tgig .pay .amt.big + .per{ color:var(--muted); margin-top:2px; }
.tgig .pay .amt.big .tot{ font-size:10px; font-weight:600; color:var(--muted); margin-left:5px;
  letter-spacing:.04em; text-transform:uppercase; }

/* the talent's own words, on the agent's submission card */
.tnote{ margin-top:8px; font-size:12px; line-height:1.5; color:var(--ink-soft);
  background:var(--mist); border-left:3px solid var(--sky); border-radius:0 7px 7px 0; padding:7px 9px; }
.tnote .lbl{ font-family:var(--mono); font-size:9px; letter-spacing:.1em; color:var(--muted); }

/* what leaves the building — the agent's call, per person */
.shr{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:9px;
  padding-top:8px; border-top:1px dashed var(--line); }
.shr .shl{ font-family:var(--mono); font-size:9px; letter-spacing:.09em; color:var(--muted);
  text-transform:uppercase; }
.shr .chk{ display:flex; align-items:center; gap:4px; font-size:11.5px; color:var(--ink-soft);
  cursor:pointer; }
.shr .chk input{ width:auto; margin:0; cursor:pointer; }
.cts .lnum{ font-family:var(--mono); font-size:9px; letter-spacing:.08em; color:var(--muted);
  margin-right:6px; text-transform:uppercase; }
.cts .lnk-off{ opacity:.42; }
.cts .lnk-off a{ text-decoration:line-through; color:var(--muted); }

/* ---------- one gig, in full (talent) ---------- */
.gigpage{ padding:20px 22px 22px; }
.gp-h{ display:flex; justify-content:space-between; align-items:flex-start; gap:16px;
  padding-bottom:16px; border-bottom:1px solid var(--line); }
.gp-t{ font-family:var(--display); font-weight:600; font-size:23px; letter-spacing:-.01em; line-height:1.2; }
.gp-c{ font-size:13px; color:var(--ink-soft); margin-top:3px; }
.gp-pay{ text-align:right; flex:none; }
.gp-pay .amt.big{ font-size:26px; color:var(--gold); font-weight:700; line-height:1.1; }
.gp-pay .amt.big .tot{ font-size:10px; font-weight:600; color:var(--muted); margin-left:5px;
  letter-spacing:.04em; text-transform:uppercase; }
.gp-pay .amt{ font-family:var(--mono); font-size:20px; font-weight:700; }
.gp-pay .per{ font-size:11.5px; color:var(--muted); margin-top:2px; }

.gp-facts{ display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:12px 18px;
  padding:16px 0; border-bottom:1px solid var(--line); }
.gp-facts > div{ display:flex; flex-direction:column; gap:2px; }
.gp-facts .k{ font-family:var(--mono); font-size:9.5px; letter-spacing:.09em; text-transform:uppercase;
  color:var(--muted); }
.gp-facts .v{ font-size:13.5px; font-weight:600; color:var(--ink); }

.gp-d{ padding:16px 0; }
.gp-d h4{ font-family:var(--display); font-size:14.5px; font-weight:600; margin-bottom:7px; }
.gp-d p{ font-size:13.5px; line-height:1.65; color:var(--ink-soft); margin-bottom:9px; }
.gp-d p:last-child{ margin-bottom:0; }

.gp-co{ display:flex; align-items:center; gap:10px; margin-top:14px; padding:12px;
  background:var(--mist); border-radius:12px; font-size:12px; color:var(--ink-soft); }
.gp-co .cav{ width:34px; height:34px; border-radius:10px; flex:none;
  background:linear-gradient(135deg,var(--navy),var(--sky)); color:#fff; font-size:12px; font-weight:700;
  display:flex; align-items:center; justify-content:center; }
.gp-co small{ color:var(--muted); font-size:11px; }

.gp-act{ display:flex; gap:9px; align-items:center; margin-top:18px; flex-wrap:wrap; }
.gp-act .btn.gold{ flex:1; min-width:180px; }
@media(max-width:560px){
  .gp-h{ flex-direction:column; gap:10px; }
  .gp-pay{ text-align:left; }
}

/* ---------- the offer ---------- */
.offer{ background:linear-gradient(150deg,#2A1F08 0%,#3A2C0C 60%,#4A3810 100%);
  border:1.5px solid var(--gold-line); border-radius:var(--r); padding:20px 22px;
  box-shadow:var(--sh-lift); margin-bottom:16px; }
html[data-theme="light"] .offer{ background:linear-gradient(150deg,#FDF8EC,#F7EDD6); }
.offer .oh{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.offer .tagline{ font-family:var(--mono); font-size:9.5px; letter-spacing:.14em; color:var(--gold-2);
  font-weight:700; }
.offer .clock{ font-family:var(--mono); font-size:10px; letter-spacing:.05em; color:#04293D;
  background:var(--gold-2); padding:3px 8px; border-radius:7px; font-weight:700; }
.offer .clock.dead{ background:var(--muted); color:#fff; }
.offer .ot{ font-family:var(--display); font-weight:600; font-size:22px; color:#fff; margin-top:10px; }
.offer .om{ font-size:13px; color:#D8C79B; margin-top:3px; }
.offer .opay{ font-family:var(--mono); font-size:26px; font-weight:700; color:var(--gold-2); margin-top:12px; }
.offer .opay span{ font-family:var(--body); font-size:11.5px; font-weight:500; color:#BFA96F; }
.offer .oact{ display:flex; gap:9px; margin-top:16px; flex-wrap:wrap; }
.offer .oact .btn{ flex:1; min-width:150px; }
.offer .ofoot{ font-size:11.5px; color:#A99560; margin-top:12px; line-height:1.5; }

.sec-h{ font-family:var(--display); font-weight:600; font-size:15px; margin:20px 0 10px; color:var(--ink); }

/* ---------- call sheet ---------- */
.csheet{ margin-top:14px; padding-top:14px; border-top:1px solid var(--line); }
.cs-g{ display:grid; gap:10px; margin-bottom:10px; }
.cs-g > div{ display:flex; flex-direction:column; gap:1px; }
.cs-g .k{ font-family:var(--mono); font-size:9.5px; letter-spacing:.09em; text-transform:uppercase;
  color:var(--muted); }
.cs-g .v{ font-size:13.5px; font-weight:600; color:var(--ink); }
.cs-n{ font-size:12.5px; color:var(--ink-soft); line-height:1.6; background:var(--mist);
  border-radius:10px; padding:10px 12px; margin-bottom:10px; }

.paidrow{ margin-top:12px; padding:10px 12px; border-radius:10px; background:var(--gold-soft);
  color:var(--gold-deep); font-size:12.5px; }
.paidrow.on{ background:var(--green-soft); color:var(--green); }
html[data-theme="dark"] .paidrow{ color:var(--gold-2); }

/* ---------- booking panel (agent) ---------- */
.bk-step{ padding:14px 0; border-top:1px solid var(--line); }
.bk-step:first-of-type{ border-top:none; padding-top:4px; }
.bk-step h4{ font-family:var(--display); font-size:14.5px; font-weight:600; display:flex;
  align-items:center; gap:8px; }
.bk-step p{ font-size:12px; color:var(--muted); margin-top:3px; line-height:1.55; max-width:64ch; }
.bk-step.bad h4{ color:var(--red); }

.bk-list{ margin-top:11px; display:flex; flex-direction:column; gap:6px; }
.bk-row{ display:flex; align-items:center; gap:9px; padding:9px 11px; background:var(--mist);
  border-radius:10px; font-size:13px; }
label.bk-row{ cursor:pointer; }
label.bk-row.on{ background:var(--sky-soft); }
.bk-row input{ width:auto; margin:0; }
.bk-row .nm{ font-weight:600; color:var(--ink); }
.bk-row .mt{ margin-left:auto; font-size:11.5px; color:var(--muted); text-align:right; }
.bk-row .mt.bad, .bad{ color:var(--red); }

.bk-ctl{ display:flex; align-items:center; gap:10px; margin-top:12px; flex-wrap:wrap; }
.bk-ctl label{ font-size:12px; color:var(--muted); display:flex; align-items:center; gap:6px;
  margin:0 !important; font-weight:400 !important; }
.bk-ctl select{ width:auto; margin:0; padding:6px 8px; font-size:12px; }

.bk-form{ display:grid; grid-template-columns:1fr 1fr; gap:10px 12px; margin-top:12px; }
@media(max-width:640px){ .bk-form{ grid-template-columns:1fr; } }

.bk-pay{ display:flex; align-items:center; gap:12px; padding:10px 12px; background:var(--mist);
  border-radius:10px; flex-wrap:wrap; }
.bk-pay .who{ display:flex; flex-direction:column; gap:1px; min-width:0; }
.bk-pay .nm{ font-size:13px; font-weight:600; }
.bk-pay .mt{ font-size:11px; color:var(--muted); }
.bk-pay .doing{ margin-left:auto; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.bk-pay .doing input{ margin:0; padding:7px 9px; font-size:13px; }
.bk-pay .owed{ font-family:var(--mono); font-size:12px; font-weight:700; color:var(--gold-deep); }
html[data-theme="dark"] .bk-pay .owed{ color:var(--gold-2); }

/* ---------- quotes ---------- */
.qrow{ display:flex; align-items:center; gap:14px; padding:12px 0; border-bottom:1px solid var(--line);
  flex-wrap:wrap; }
.qrow:last-child{ border:none; padding-bottom:0; }
.qmain{ flex:1; min-width:180px; }
.qrow .qt{ font-size:14px; font-weight:600; }
.qrow .qm{ font-size:11.5px; color:var(--muted); margin-top:2px; }
.qrow .qv{ font-family:var(--mono); font-size:15px; font-weight:700; color:var(--gold); }
.qrow .qact{ display:flex; gap:6px; flex-wrap:wrap; }

/* ---------- help / SOPs ---------- */
.sop{ display:flex; align-items:flex-start; gap:14px; padding:16px 0; text-decoration:none;
  border-bottom:1px solid var(--line); }
.sop:last-child{ border-bottom:none; padding-bottom:2px; }
.sop:hover .stitle{ color:var(--sky); }
.sop:hover .sgo{ color:var(--sky); transform:translate(2px,-2px); }
.sop .sicon{ width:38px; height:38px; border-radius:11px; flex:none;
  background:var(--sky-soft); color:var(--sky); display:flex; align-items:center;
  justify-content:center; font-size:15px; }
.sop .sbody{ flex:1; min-width:0; }
.sop .skick{ display:inline-block; font-family:var(--mono); font-size:9px; letter-spacing:.13em;
  color:var(--sky); background:var(--sky-soft); padding:2px 7px; border-radius:5px;
  font-weight:700; margin-bottom:5px; }
.sop .stitle{ font-family:var(--display); font-weight:600; font-size:17px; color:var(--sky);
  transition:color .15s; }
.sop .sdesc{ font-size:13px; color:var(--ink-soft); line-height:1.55; margin-top:3px; max-width:62ch; }
.sop .smeta{ font-family:var(--mono); font-size:10px; color:var(--muted); margin-top:6px;
  letter-spacing:.04em; }
.sop .sgo{ color:var(--muted); font-size:15px; flex:none; transition:all .15s; }
.sharehint{ font-size:10.5px; color:var(--muted); line-height:1.45; margin-top:6px; text-align:center; }

/* ---------- public comp card ---------- */
.ccbox{ background:var(--mist); border-radius:12px; padding:13px 14px; }
.ccbox.on{ background:var(--gold-soft); border:1px solid var(--gold-line); }
.cclink{ display:flex; gap:7px; margin-top:11px; }
.cclink input{ flex:1; margin:0 !important; font-family:var(--mono); font-size:11.5px; }
.ccbox .linkbtn{ margin-top:8px; display:inline-block; }
.ccrow{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:8px; }
.ccrow .live{ font-family:var(--mono); font-size:9px; letter-spacing:.1em; padding:3px 7px;
  border-radius:6px; background:var(--green-soft); color:var(--green); font-weight:700; }
.ccrow .off{ background:var(--mist); color:var(--muted); }

/* ---------- intro video ---------- */
.vgrid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:10px;
  margin-bottom:12px; }
.vcell{ position:relative; }
.vcell video{ width:100%; border-radius:12px; background:var(--mist); display:block; }
.vdel{ position:absolute; top:7px; right:7px; width:26px; height:26px; border-radius:8px;
  border:none; background:rgba(0,0,0,.62); color:#fff; font-size:15px; cursor:pointer;
  line-height:1; }
.vdel:hover{ background:var(--red); }
.vprog{ margin-top:10px; display:flex; align-items:center; gap:10px; }
.vprog .bar{ flex:1; height:6px; border-radius:4px; background:var(--mist); overflow:hidden; }
.vprog .bar i{ display:block; height:100%; width:0; background:var(--gold);
  transition:width .2s; }
.vprog span{ font-family:var(--mono); font-size:11px; color:var(--muted); min-width:64px;
  text-align:right; }

/* ---------- the talent's own card, on their dashboard ---------- */
.mecard{ display:flex; align-items:center; gap:13px; background:var(--card); border-radius:16px;
  padding:12px 14px; box-shadow:var(--sh); margin-bottom:16px; }
.mecard.live{ box-shadow:var(--sh), inset 0 0 0 1px var(--gold-line); }
.mshot{ width:46px; height:46px; border-radius:12px; flex:none; overflow:hidden;
  background:linear-gradient(135deg,var(--navy),var(--sky)); display:flex; align-items:center;
  justify-content:center; color:#fff; font-weight:700; font-size:14px; }
.mshot img{ width:100%; height:100%; object-fit:cover; }
.mbody{ flex:1; min-width:0; }
.mname{ font-size:14.5px; font-weight:600; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.mstate{ font-family:var(--mono); font-size:8.5px; letter-spacing:.11em; padding:3px 6px;
  border-radius:5px; background:var(--mist); color:var(--muted); font-weight:700; }
.mstate.on{ background:var(--gold-soft); color:var(--gold-deep); }
html[data-theme="dark"] .mstate.on{ color:var(--gold-2); }
.mmeta{ font-size:11.5px; color:var(--muted); margin-top:2px; overflow:hidden;
  text-overflow:ellipsis; white-space:nowrap; }
.mmeta a{ font-family:var(--mono); font-size:11px; }
.mact{ display:flex; align-items:center; gap:6px; flex:none; }
.micon{ width:32px; height:32px; border-radius:9px; border:1px solid var(--line);
  background:transparent; color:var(--muted); cursor:pointer; font-size:14px; line-height:1; }
.micon:hover{ color:var(--sky); border-color:var(--sky); }

/* a real switch — a checkbox reads as a form, this reads as a power button */
.mswitch{ position:relative; width:42px; height:24px; flex:none; cursor:pointer; }
.mswitch input{ opacity:0; width:0; height:0; position:absolute; }
.mswitch span{ position:absolute; inset:0; background:var(--line); border-radius:20px;
  transition:background .18s; }
.mswitch span::before{ content:""; position:absolute; width:18px; height:18px; left:3px; top:3px;
  background:#fff; border-radius:50%; transition:transform .18s; }
.mswitch input:checked + span{ background:var(--gold); }
.mswitch input:checked + span::before{ transform:translateX(18px); }
.chleft{ font-family:var(--mono); font-size:10px; color:var(--muted); text-align:right; margin-top:4px; }
.dsigned{ grid-column:1 / -1; font-size:11px; color:var(--muted); margin-top:6px;
  font-family:var(--mono); letter-spacing:.02em; }

/* ------------------------------------------------------------ ANNOUNCEMENTS -
   Pinned to the top of the talent dashboard. It has to be impossible to scroll
   past and impossible to mistake for a KPI card, without being a red alert bar
   that people learn to tune out. So: a left rule in the tone colour, a symbol,
   and real prose. No dismiss button — see app.js. */
.announce{display:flex;gap:13px;align-items:flex-start;padding:15px 17px;border-radius:14px;
  border:1px solid var(--line);background:var(--card);box-shadow:var(--sh);
  border-left:4px solid var(--c,var(--sky));margin-bottom:20px;}
.announce.info  { --c:var(--sky);   }
.announce.good  { --c:var(--n-green,#448361); }
.announce.urgent{ --c:var(--gold,#C9962C);    }
.announce .an-ic{font-size:17px;line-height:1.35;flex:none;color:var(--c);}
.announce .an-b{flex:1;min-width:0;}
.announce .an-t{font-family:var(--display,inherit);font-weight:600;font-size:16px;
  color:var(--ink);margin-bottom:4px;}
.announce .an-x{font-size:13.5px;line-height:1.6;color:var(--ink);}
.announce .an-m{font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);margin-top:9px;}

.an-old{display:flex;justify-content:space-between;gap:12px;padding:8px 0;
  border-bottom:1px solid var(--line);font-size:12.5px;color:var(--muted);}
.an-old:last-child{border-bottom:none;}
.an-old span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.an-old em{font-style:normal;flex:none;font-size:11.5px;}

/* tone / yes-no pickers (shared with the booking form's look) */
.yn{display:flex;gap:8px;}
.ynb{flex:1;background:var(--card);border:1.5px solid var(--line);color:var(--muted);
  padding:10px;border-radius:11px;font-family:var(--body);font-size:13.5px;font-weight:600;
  cursor:pointer;transition:.13s;}
.ynb:hover{border-color:var(--gold,#C9962C);}
.ynb.on{background:var(--gold,#C9962C);border-color:var(--gold,#C9962C);color:#fff;}

/* ---------------------------------------------------------- INQUIRY SOURCE -
   A gig one of our own talent brought in. Reuses the announcement's anatomy —
   it's the same shape of statement: someone is telling you something. */
.srcbar{display:flex;gap:13px;align-items:flex-start;padding:14px 16px;border-radius:14px;
  border:1px solid var(--line);border-left:4px solid var(--n-green,#448361);
  background:var(--card);box-shadow:var(--sh);margin-bottom:18px;}
.srcbar.urgent{border-left-color:var(--gold,#C9962C);}
.srcbar code{font-family:var(--mono,monospace);font-size:12px;background:var(--mist);
  padding:1px 5px;border-radius:5px;}

.viatag{display:inline-block;vertical-align:middle;font-size:10.5px;font-weight:600;
  letter-spacing:.04em;color:var(--n-green,#448361);background:rgba(68,131,97,.12);
  border-radius:6px;padding:2px 7px;margin-left:6px;white-space:nowrap;}

/* --------------------------------------------------------- TELEGRAM / STEPS -
   Numbered steps. Three of them, so they get numbers rather than bullets —
   the order is the instruction. */
.tgstep{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);}
.tgstep:last-of-type{border-bottom:none;}
.tgn{flex:none;width:26px;height:26px;border-radius:50%;background:var(--gold,#C9962C);
  color:#fff;font-size:12.5px;font-weight:700;display:flex;align-items:center;
  justify-content:center;margin-top:1px;}
.tgb{flex:1;min-width:0;}
.tgt{font-weight:600;font-size:14.5px;color:var(--ink);margin-bottom:4px;}
.tgb p{font-size:13.5px;line-height:1.65;color:var(--ink-soft);margin:0;}
.tgl{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px;}
.tgl .btn{text-decoration:none;}

.tgchat{display:grid;gap:9px;margin-top:12px;}
.tgchat a{display:block;text-decoration:none;padding:12px 14px;border-radius:12px;
  border:1.5px solid var(--line);background:var(--mist);transition:.13s;}
.tgchat a:hover{border-color:var(--gold,#C9962C);}
.tgc{display:block;font-weight:600;font-size:14px;color:var(--ink);}
.tgd{display:block;font-size:12.5px;line-height:1.5;color:var(--muted);margin-top:3px;}

/* ------------------------------------------------------------ WHICH DOOR ---
   Re-sign vs New Applicant. Deliberately not the same shape as the status pill:
   they are different questions and an agent must never read one for the other. */
.srctag{display:inline-flex;align-items:center;gap:5px;margin-top:6px;font-size:10.5px;
  font-weight:600;letter-spacing:.05em;padding:3px 8px;border-radius:7px;
  border:1px solid var(--line);color:var(--muted);background:var(--mist);}
.srctag.re{color:var(--sky);border-color:rgba(63,159,209,.35);background:rgba(63,159,209,.10);}
.srctag.nw{color:var(--gold,#C9962C);border-color:rgba(201,150,44,.4);background:rgba(201,150,44,.12);}

.tfilters.src{margin-top:-6px;padding-top:10px;border-top:1px dashed var(--line);}

/* ------------------------------------------------------- THE GROUP CHATS ---
   On the talent dashboard, the moment their paperwork clears. Gold left rule so
   it reads as an unlock, not a warning. Dismissable — a banner you can't get rid
   of is a banner you stop seeing. */
.tgcard{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--gold,#C9962C);
  border-radius:0 12px 12px 0;padding:16px 18px;margin-bottom:20px;box-shadow:var(--sh);}
.tgc-h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.tgc-t{font-family:var(--display,Georgia,serif);font-size:17px;color:var(--ink);margin-bottom:5px;}
.tgc-h p{font-size:13px;line-height:1.6;color:var(--ink-soft);margin:0 0 14px;max-width:460px;}
.tgc-new{font-family:var(--mono,monospace);font-size:10px;letter-spacing:.1em;
  color:var(--gold-2,#E8C36A);white-space:nowrap;padding-top:3px;flex:none;}

.tgc-links{display:grid;gap:8px;margin-bottom:12px;}
.tgc-links a{display:block;text-decoration:none;background:var(--mist);border:1px solid var(--line);
  border-radius:10px;padding:11px 13px;transition:.13s;}
.tgc-links a:hover{border-color:var(--gold,#C9962C);}
.tgc-n{display:block;font-size:14px;font-weight:600;color:var(--ink);}
.tgc-n b{color:var(--gold-2,#E8C36A);font-weight:400;}
.tgc-d{display:block;font-size:12px;color:var(--muted);margin-top:2px;}

.tgc-f{display:flex;align-items:center;justify-content:space-between;gap:12px;
  border-top:1px solid var(--line);padding-top:11px;}
.tgc-f span{font-size:11.5px;line-height:1.5;color:var(--muted);}
.tgc-x{background:none;border:none;color:var(--muted);font-size:12px;text-decoration:underline;
  cursor:pointer;white-space:nowrap;padding:0;font-family:var(--body);flex:none;}
.tgc-x:hover{color:var(--ink);}
@media(max-width:600px){ .tgc-f{flex-direction:column;align-items:flex-start;gap:8px;} }

/* a chat they've already opened — ticked, not removed */
.tgc-tick{display:none;font-style:normal;font-size:11px;font-weight:600;letter-spacing:.04em;
  color:var(--n-green,#448361);background:rgba(68,131,97,.12);border-radius:6px;
  padding:2px 7px;margin-left:6px;vertical-align:1px;}
.tgc-links a.joined{border-color:rgba(68,131,97,.4);}
.tgc-links a.joined .tgc-tick{display:inline-block;}
.tgc-links a.joined .tgc-n b{display:none;}
