:root{
  /* Chordential brand palette */
  --cream:#FCF7F8; --sand:#D8CDB6; --olive:#737469; --slate:#546671;
  --ink:#1F1E1E; --wine:#44161E; --orange:#E4671F; --white:#fff;

  /* semantic surfaces (warm light theme) */
  --bg:#FCF7F8;
  --card:#ffffff;
  --panel:#F5EFE6;          /* warm sand-tint surface (inputs, tracks) */
  --panel2:#EFE8DC;
  --border:#EAE2D4;         /* warm hairline */
  --border2:#DCD2C0;
  --text:#1F1E1E;
  --muted:#737469;
  --muted2:#9b9c91;

  --accent:#E4671F;         /* orange — primary / go */
  --accent-deep:#44161E;    /* wine — rich / special */
  --info:#546671;           /* slate — secondary / info */

  --radius:13px;
  --shadow:0 1px 2px rgba(31,30,30,.04), 0 10px 30px rgba(31,30,30,.07);
  --shadow-sm:0 1px 2px rgba(31,30,30,.05), 0 4px 14px rgba(31,30,30,.06);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:
    radial-gradient(1100px 540px at 88% -8%, #F3EAdf 0%, rgba(243,234,223,0) 60%),
    var(--bg);
  color:var(--text);
  font:14px/1.55 "Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
.link{color:var(--accent);font-weight:600}
.link:hover{text-decoration:underline}
.muted{color:var(--muted)}
.small{font-size:12px}
.strong{font-weight:650;color:var(--text)}

/* layout */
.shell{display:flex;min-height:100vh}
.sidebar{
  width:250px;flex-shrink:0;
  background:linear-gradient(180deg,#262322,#1F1E1E 60%,#191817);
  color:#E9E3D6;
  border-right:1px solid #2c2826;padding:22px 14px;position:sticky;top:0;height:100vh;
  display:flex;flex-direction:column;gap:6px;
}
.brand{display:block;padding:8px 10px 2px}
.brand-plate{display:block}
.brand-plate img{display:block;width:100%;height:auto}
.brand-tag{padding:8px 10px 18px;font-size:10.5px;color:#9d9a8e;text-transform:uppercase;letter-spacing:1.6px}
.nav{display:flex;flex-direction:column;gap:2px}
.nav a{
  display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:9px;
  color:#B7B2A4;font-weight:550;font-size:13.5px;transition:background .12s,color .12s;
}
.nav a:hover{background:rgba(255,255,255,.05);color:#FCF7F8}
.nav a.active{
  background:linear-gradient(90deg,rgba(228,103,31,.22),rgba(228,103,31,.05));
  color:#fff;box-shadow:inset 0 0 0 1px rgba(228,103,31,.35);
}
.nav .ico{opacity:.85;width:16px;text-align:center}
.nav-section{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:#7d7a70;padding:18px 11px 6px}
.dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.dot.pursue{background:var(--orange)} .dot.review{background:var(--slate)}
.dot.pass{background:var(--olive)} .dot.won{background:var(--sand)}
.sidebar-foot{margin-top:auto;padding:12px 10px;color:#7d7a70;font-size:11px;border-top:1px solid #2c2826}
.sidebar-signout{display:inline-block;margin-top:8px;color:#b7b2a4;font-weight:600}
.sidebar-signout:hover{color:#fff}
/* hamburger toggle (no JS) — hidden on desktop; nav wrap always shown */
.m-toggle{position:absolute;left:-9999px;opacity:0}
.sidebar-burger{display:none}

/* admin sign-in (gate) */
.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;
  background:radial-gradient(1100px 540px at 88% -8%, #F3EAdf 0%, rgba(243,234,223,0) 60%), var(--bg)}
.admin-login-card{width:100%;max-width:380px;text-align:center;padding:30px 28px}
.admin-login-logo{height:30px;width:auto;margin:2px auto 6px;display:block}
.admin-login-tag{font-size:11px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted2);margin-bottom:18px}
.admin-login-form{display:flex;flex-direction:column;gap:10px}
.admin-login-form input{background:var(--panel);border:1px solid var(--border2);border-radius:9px;padding:11px 13px;font:inherit;color:var(--text)}
.admin-login-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(228,103,31,.12)}
.admin-login-error{background:rgba(120,30,40,.1);color:#7a2330;border:1px solid rgba(120,30,40,.26);border-radius:9px;padding:9px 12px;font-size:13px;margin-bottom:14px}
.admin-login-foot{margin-top:16px}

.main{flex:1;min-width:0;display:flex;flex-direction:column}
.topbar{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:16px 30px;border-bottom:1px solid var(--border);
  position:sticky;top:0;background:rgba(252,247,248,.86);backdrop-filter:blur(10px);z-index:5;
}
.topbar-title{font-size:18px;font-weight:700;letter-spacing:.2px;color:var(--ink)}
.crumb{color:var(--muted)}
.topbar-search input{
  width:340px;max-width:38vw;background:var(--white);border:1px solid var(--border2);
  color:var(--text);border-radius:9px;padding:9px 13px;font-size:13px;
}
.topbar-search input::placeholder{color:var(--muted2)}
.topbar-search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(228,103,31,.12)}
.content{padding:26px 30px 64px;max-width:1300px;width:100%}

/* cards */
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-sm)}
.card.no-pad{padding:0;overflow:hidden}
.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
.card-head h2{font-size:14px;margin:0;font-weight:680;letter-spacing:.2px;color:var(--ink)}
.cols-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}
@media(max-width:920px){.cols-2{grid-template-columns:1fr}}

/* KPIs */
.kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.kpi-grid.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.kpi-grid,.kpi-grid.three{grid-template-columns:repeat(2,1fr)}}
.kpi{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}
.kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--sand)}
.kpi.accent-pursue::before{background:var(--orange)}
.kpi.accent-review::before{background:var(--slate)}
.kpi.accent-won::before{background:var(--wine)}
.kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted2);font-weight:600}
.kpi-value{font-size:28px;font-weight:740;margin-top:6px;letter-spacing:-.6px;color:var(--ink)}
.kpi-sub{font-size:12px;color:var(--muted);margin-top:3px}

/* tables */
.table{width:100%;border-collapse:collapse}
.table th{
  text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted2);
  padding:11px 14px;border-bottom:1px solid var(--border);font-weight:600;
}
.table td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}
.table tbody tr:hover{background:#FBF6EE}
.table.compact td,.table.compact th{padding:8px 10px}
.table tfoot td{border-bottom:none;padding-top:12px}
.result-count{color:var(--muted);font-size:13px;margin:16px 2px 8px}

/* pills */
.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:650;border:1px solid transparent;white-space:nowrap}
.pill.pursue{background:rgba(228,103,31,.13);color:#B5500F;border-color:rgba(228,103,31,.32)}
.pill.review{background:rgba(84,102,113,.13);color:#3C4D58;border-color:rgba(84,102,113,.3)}
.pill.watch{background:rgba(115,116,105,.15);color:#5A5B51;border-color:rgba(115,116,105,.28)}
.pill.pass{background:rgba(115,116,105,.10);color:#7c7d71;border-color:rgba(115,116,105,.22)}
.pill.ghost{background:var(--panel);color:var(--muted);border-color:var(--border2)}
.pill.tier-a{background:rgba(228,103,31,.13);color:#B5500F;border-color:rgba(228,103,31,.3)}
.pill.tier-b{background:rgba(84,102,113,.13);color:#3C4D58;border-color:rgba(84,102,113,.3)}
.pill.tier-c{background:rgba(115,116,105,.14);color:#5A5B51;border-color:rgba(115,116,105,.28)}
.pill.tier-watch{background:var(--panel);color:var(--muted)}
.pill.st-new{background:var(--panel);color:var(--muted);border-color:var(--border2)}
.pill.st-pursuing{background:rgba(84,102,113,.14);color:#3C4D58}
.pill.st-submitted{background:rgba(84,102,113,.10);color:#46586a}
.pill.st-won{background:rgba(228,103,31,.16);color:#B5500F;border-color:rgba(228,103,31,.36)}
.pill.st-lost{background:rgba(68,22,30,.12);color:#7a2330;border-color:rgba(68,22,30,.28)}
.pill.st-passed{background:rgba(115,116,105,.12);color:#7c7d71}
/* inbound-lead review states */
.pill.st-reviewed{background:rgba(84,102,113,.13);color:#3C4D58;border-color:rgba(84,102,113,.3)}
.pill.st-qualified{background:rgba(34,110,70,.12);color:#1d6b43;border-color:rgba(34,110,70,.3)}
.pill.st-dismissed{background:rgba(115,116,105,.10);color:#7c7d71;border-color:rgba(115,116,105,.22)}
/* discovery crawl-target states */
.pill.st-proposed{background:var(--panel);color:var(--muted);border-color:var(--border2)}
.pill.st-approved{background:rgba(34,110,70,.12);color:#1d6b43;border-color:rgba(34,110,70,.3)}
.pill.st-fetched{background:rgba(228,103,31,.13);color:#B5500F;border-color:rgba(228,103,31,.32)}
/* proposal + invoice states */
.pill.st-draft{background:var(--panel);color:var(--muted);border-color:var(--border2)}
.pill.st-sent{background:rgba(84,102,113,.13);color:#3C4D58;border-color:rgba(84,102,113,.3)}
.pill.st-accepted{background:rgba(34,110,70,.12);color:#1d6b43;border-color:rgba(34,110,70,.3)}
.pill.st-declined{background:rgba(68,22,30,.12);color:#7a2330;border-color:rgba(68,22,30,.28)}
.pill.st-issued{background:rgba(84,102,113,.13);color:#3C4D58;border-color:rgba(84,102,113,.3)}
.pill.st-paid{background:rgba(34,110,70,.14);color:#1d6b43;border-color:rgba(34,110,70,.34)}
.lead-actions{display:flex;gap:6px;flex-wrap:wrap}
.lead-actions form{margin:0}
/* talent provenance badge (where a creator came from) */
.src-badge{
  display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.4px;
  padding:2px 8px;border-radius:999px;text-transform:uppercase;
  background:var(--panel);color:var(--muted);border:1px solid var(--border2);
}
.src-badge.src-applicant{background:rgba(228,103,31,.12);color:#B5500F;border-color:rgba(228,103,31,.3)}
.src-badge.src-sample,.src-badge.src-demo,.src-badge.src-crawl{background:rgba(84,102,113,.13);color:#3C4D58;border-color:rgba(84,102,113,.3)}
.pill-row{display:flex;gap:7px;flex-wrap:wrap;align-items:center}

/* alignment bar */
.align{display:flex;align-items:center;gap:8px}
.align-track{flex:1;height:6px;background:var(--panel2);border-radius:999px;overflow:hidden;min-width:46px}
.align-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--orange),var(--wine))}
.align-num{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;min-width:30px;text-align:right}

/* filters + buttons */
.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.filters select,.filters input,.filter-search{
  background:var(--white);border:1px solid var(--border2);color:var(--text);
  border-radius:8px;padding:8px 11px;font-size:13px;
}
.filters select:focus,.filters input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(228,103,31,.12)}
.filter-search{flex:1;min-width:180px}
.btn{
  background:var(--white);border:1px solid var(--border2);color:var(--text);
  border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .12s,background .12s;
}
.btn:hover{border-color:var(--accent)}
.btn.primary{background:linear-gradient(135deg,#E4671F,#cc551a);border:none;color:#fff;box-shadow:0 4px 14px rgba(228,103,31,.28)}
.btn.primary:hover{filter:brightness(1.05)}
.btn.ghost{background:transparent}

/* lanes */
.lanes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:920px){.lanes{grid-template-columns:1fr}}
.lane{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:14px;min-height:200px}
.lane-head{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;color:var(--ink)}
.lane-count{margin-left:auto;background:var(--white);border:1px solid var(--border2);border-radius:999px;padding:1px 9px;font-size:12px;color:var(--muted)}
.lane-sub{color:var(--muted2);font-size:11.5px;margin:3px 0 12px}
.lane-body{display:flex;flex-direction:column;gap:10px}
.lane-empty{color:var(--muted2);font-size:13px;padding:18px 6px;text-align:center;border:1px dashed var(--border2);border-radius:9px}
.lane-pursue{box-shadow:inset 0 3px 0 var(--orange)}
.lane-review{box-shadow:inset 0 3px 0 var(--slate)}
.lane-pass{box-shadow:inset 0 3px 0 var(--olive)}

.opp-card{display:block;background:var(--card);border:1px solid var(--border);border-radius:11px;padding:12px;transition:border-color .12s,transform .12s,box-shadow .12s;box-shadow:var(--shadow-sm)}
.opp-card:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow)}
.opp-card-top{display:flex;gap:6px;margin-bottom:8px}
.opp-card-need{font-weight:650;font-size:13.5px;line-height:1.35;color:var(--ink)}
.opp-card-client{color:var(--muted);font-size:12px;margin-top:2px}
.opp-card-meta{display:flex;justify-content:space-between;color:var(--muted2);font-size:12px;margin:9px 0 8px}

/* detail */
.detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.detail-title{font-size:23px;margin:10px 0 6px;letter-spacing:-.4px;font-weight:740;color:var(--ink)}
.detail-buyer a{color:var(--accent);font-weight:650}
.detail-fit{text-align:center;flex-shrink:0}
.big-num{font-size:35px;font-weight:780;letter-spacing:-1px;background:linear-gradient(135deg,#44161E,#E4671F);-webkit-background-clip:text;background-clip:text;color:transparent}
.subnav{display:flex;gap:4px;margin:18px 0;border-bottom:1px solid var(--border);overflow-x:auto}
.subnav a{padding:10px 14px;color:var(--muted);font-weight:600;font-size:13px;border-bottom:2px solid transparent;white-space:nowrap}
.subnav a:hover{color:var(--ink)}
.subnav a.active{color:var(--ink);border-bottom-color:var(--accent)}
.action-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 18px}
.action-bar form{margin:0}
.action-bar a.btn{text-decoration:none}
.action-bar .action-right{margin-left:auto}
.website-form{display:flex;gap:7px;align-items:center;margin-top:8px;flex-wrap:wrap}
.website-ico{font-size:13px}
.website-form input{background:var(--white);border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:6px 10px;font-size:13px;min-width:180px}
.website-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(228,103,31,.12)}
.reach-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.reach-actions a{text-decoration:none}
.reach-hint{margin:8px 0 14px}
.prose{color:var(--muted);line-height:1.65}
.kv{width:100%;border-collapse:collapse;margin-top:10px}
.kv td{padding:9px 0;border-bottom:1px solid var(--border);vertical-align:top}
.kv td:first-child{color:var(--muted2);width:42%;font-size:13px}
.summary-line{margin-top:14px;padding:12px 15px;background:var(--panel);border-left:3px solid var(--accent);border-radius:8px;color:var(--text);font-weight:550}
.summary-line.big{font-size:15px}

.stack{display:flex;flex-direction:column;gap:9px}
.stack label{font-size:12px;color:var(--muted2);text-transform:uppercase;letter-spacing:.6px;margin-top:4px}
.stack input,.stack textarea{background:var(--white);border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:9px 11px;font:inherit}
.stack input:focus,.stack textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(228,103,31,.12)}
.status-now{margin-bottom:12px}
.status-buttons{display:flex;flex-wrap:wrap;gap:7px}
.pill-btn{padding:6px 12px;border-radius:999px;font-size:12px}
.pill-btn.is-current{box-shadow:0 0 0 2px var(--accent)}

/* verdict */
.verdict{display:flex;justify-content:space-between;align-items:center;border-left:4px solid var(--border2)}
.verdict.pursue{border-left-color:var(--orange)}
.verdict.review{border-left-color:var(--slate)}
.verdict.pass{border-left-color:var(--olive)}
.verdict-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted2);font-weight:600}
.verdict-action{font-size:26px;font-weight:760;margin:2px 0 4px;color:var(--ink)}
.reason-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.reason-list li{padding:9px 12px;border-radius:8px;background:var(--panel);font-size:13px}
.reason-list.good li{border-left:3px solid var(--orange)}
.reason-list.warn li{border-left:3px solid var(--slate)}
.reason-list.bad li{border-left:3px solid var(--wine)}

/* estimate */
.banner{background:rgba(216,205,182,.35);border:1px solid var(--sand);color:#6b4a2a;padding:10px 14px;border-radius:9px;font-size:13px;font-weight:550;margin-bottom:16px}
.assume{margin:12px 0 0;padding-left:18px;color:var(--muted2);font-size:12px;line-height:1.7}

/* mix */
.mix{display:flex;flex-direction:column;gap:10px}
.mix-row{display:flex;align-items:center;gap:10px}
.mix-label{width:150px;font-size:13px;color:var(--muted)}
.mix-bar{flex:1;height:8px;background:var(--panel2);border-radius:999px;overflow:hidden}
.mix-fill{height:100%;background:linear-gradient(90deg,var(--slate),var(--orange));border-radius:999px}
.mix-num{width:26px;text-align:right;color:var(--muted);font-size:12px}
.mini-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.mini-list li{font-size:13px}
.mini-list a{color:var(--text);font-weight:550}
.mini-list a:hover{color:var(--accent)}

/* strategic value */
.pill.sv-door{background:rgba(228,103,31,.16);color:#B5500F;border-color:rgba(228,103,31,.38)}
.pill.sv-high{background:rgba(68,22,30,.12);color:#7a2330;border-color:rgba(68,22,30,.3)}
.pill.sv-medium{background:rgba(84,102,113,.13);color:#3C4D58;border-color:rgba(84,102,113,.3)}
.pill.sv-low{background:var(--panel);color:var(--muted)}
.callout{display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:11px;margin:16px 0;font-size:13.5px;background:linear-gradient(90deg,rgba(228,103,31,.14),rgba(68,22,30,.06));border:1px solid rgba(228,103,31,.32);color:var(--ink)}
.callout-ico{font-size:18px}
.strat-card{margin-top:18px;border-left:3px solid var(--orange)}
.strat-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}
@media(max-width:760px){.strat-grid{grid-template-columns:1fr}}
.strat-bars{display:flex;flex-direction:column;gap:12px}
.strat-row{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:12px;font-size:13px;color:var(--muted)}
.strat-form{display:flex;flex-direction:column;gap:9px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:14px}
.strat-form label{font-size:12px;color:var(--muted2);text-transform:uppercase;letter-spacing:.6px}
.strat-form select{background:var(--white);border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:9px 11px}
.strat-form .check{display:flex;flex-direction:row;align-items:center;gap:8px;text-transform:none;letter-spacing:0;font-size:13px;color:var(--text)}
.strat-form .check input{width:auto;accent-color:var(--orange)}

/* executive pipeline columns (Top targets → Tentative → Won) */
.pipeline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px;align-items:start}
@media(max-width:1000px){.pipeline-grid{grid-template-columns:1fr}}
.pipe{border-top:3px solid var(--border)}
.pipe-pursue{border-top-color:var(--orange)}
.pipe-tentative{border-top-color:var(--slate)}
.pipe-won{border-top-color:#1d6b43}
.deal-list{display:flex;flex-direction:column;gap:12px;margin-top:8px}
.deal{padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--panel)}
.deal-need{display:block;font-weight:650;font-size:13.5px;line-height:1.35;color:var(--ink)}
.deal-need:hover{color:var(--accent)}
.deal-sub{color:var(--muted);font-size:12px;margin-top:2px}
.deal-money{margin:8px 0 7px;display:flex;flex-direction:column;gap:1px}
.money-lead{font-weight:740;font-size:15px;color:var(--ink);letter-spacing:-.3px}
.money-won{color:#1d6b43}
.deal-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.deal-next{margin-top:7px}
.deal-links{display:flex;gap:14px;margin-top:9px;flex-wrap:wrap}
.dl{font-size:12px;font-weight:600;color:var(--accent)}
.dl:hover{text-decoration:underline}
.deal-crew{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px}
.crew-chip{background:rgba(34,110,70,.12);color:#1d6b43;border:1px solid rgba(34,110,70,.3);border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:600}

/* spotlight */
.spotlight{margin-bottom:18px;border-left:3px solid var(--orange)}
.spotlight-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.spot-card{display:block;background:var(--panel);border:1px solid var(--border);border-radius:11px;padding:12px;transition:border-color .12s,transform .12s}
.spot-card:hover{border-color:var(--orange);transform:translateY(-1px)}
.spot-need{font-weight:650;font-size:13px;margin:8px 0 3px;line-height:1.35;color:var(--ink)}

/* pursuit brief */
.brief-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.brief-actions{display:flex;gap:8px;flex-shrink:0}
.brief-list{margin:6px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:7px}
.brief-list li{font-size:13.5px;line-height:1.5;padding-left:2px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:pre}

/* outreach-to-win */
.cadence{gap:12px}
.cadence li{padding-left:4px}
.cadence-action{font-weight:650;font-size:13.5px;color:var(--ink)}
.cadence-point{font-size:13px;line-height:1.45;margin-top:3px}
.log-row{display:flex;gap:9px}
.log-row select{flex:1;background:var(--white);border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:9px 11px}
.event-log{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:11px}
.event-log li{font-size:13px;line-height:1.45;border-left:2px solid var(--border2);padding:2px 0 2px 11px}
.event-log .pill{margin-right:6px}

/* buyer graph — relationship */
.pill.rel-cold{background:rgba(84,102,113,.12);color:#3C4D58;border-color:rgba(84,102,113,.28)}
.pill.rel-warming{background:rgba(228,103,31,.14);color:#B5500F;border-color:rgba(228,103,31,.32)}
.pill.rel-engaged{background:rgba(228,103,31,.2);color:#9c3f06;border-color:rgba(228,103,31,.45)}
.pill.rel-client{background:rgba(34,110,70,.14);color:#1d6b43;border-color:rgba(34,110,70,.34)}
.contact-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.contact-list li{font-size:13px;border-left:2px solid var(--border2);padding-left:10px}

/* talent / supply side */
.pill.rev-pending{background:rgba(228,103,31,.14);color:#B5500F;border-color:rgba(228,103,31,.32)}
.pill.rev-approved{background:rgba(34,110,70,.14);color:#1d6b43;border-color:rgba(34,110,70,.34)}
.pill.rev-declined{background:rgba(120,30,40,.1);color:#7a2330;border-color:rgba(120,30,40,.26)}
.pill.inv-prospect{background:var(--panel);color:var(--muted);border-color:var(--border)}
.pill.inv-invited{background:rgba(84,102,113,.13);color:#3C4D58;border-color:rgba(84,102,113,.3)}
.pill.inv-joined{background:rgba(34,110,70,.12);color:#1d6b43;border-color:rgba(34,110,70,.3)}
.talent-card .pill-row{margin-bottom:8px}
.mini-meter{height:6px;background:var(--panel2);border-radius:999px;overflow:hidden;margin:10px 0 4px}
.mini-fill{height:100%;background:linear-gradient(90deg,var(--slate),var(--orange));border-radius:999px}
.filterbar{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.filterbar select{background:var(--white);border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:9px 11px}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}
.check-grid .check{display:flex;flex-direction:row;align-items:center;gap:7px;font-size:13px;color:var(--text)}
.check-grid .check input{width:auto;accent-color:var(--orange)}
.edit-block{margin-top:16px}
.edit-block summary{display:inline-block;cursor:pointer;margin-bottom:12px}
.pill-btn.rev-approved.is-current,.pill-btn.inv-joined.is-current{outline:2px solid var(--orange)}

/* talent match */
.match-score{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--slate),var(--orange));color:#fff;font-weight:700;font-size:15px}
.match-reasons{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}
.match-reasons li{font-size:12.5px;color:var(--muted);line-height:1.4}
.match-reasons li:before{content:"› ";color:var(--orange)}

/* projects + assignment */
.role-list{display:flex;flex-direction:column;gap:14px}
.role-block{border:1px solid var(--border);border-radius:11px;padding:13px;background:var(--panel)}
.role-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.assigned-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 0;font-size:13.5px}
.assign-form{display:flex;gap:8px;margin-top:8px}
.assign-form select{flex:1;background:var(--white);border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:9px 11px}
.inline{display:inline}
.btn.tiny{padding:4px 9px;font-size:12px}
.match-score.sm{width:34px;height:34px;font-size:13px}

/* milestones / delivery progress */
.milestone-list{display:flex;flex-direction:column;gap:8px}
.milestone-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;background:var(--panel)}
.milestone-row .ms-title{flex:1;font-size:13.5px}
.milestone-row.ms-done .ms-title{color:var(--muted);text-decoration:line-through}
.ms-status{display:flex;gap:4px}
.ms-btn{opacity:.55}
.ms-btn.is-current{opacity:1;outline:2px solid var(--orange)}
.ms-btn.ms-done.is-current{outline-color:#1d6b43}

/* project activity feed / broadcast */
.crew-line{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.feed{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.feed-item{font-size:13px;line-height:1.45;border-left:3px solid var(--border2);padding:3px 0 3px 11px}
.feed-item.kind-milestone{border-left-color:var(--orange)}
.feed-item.kind-assignment{border-left-color:var(--slate)}
.feed-item.kind-update{border-left-color:#1d6b43}

/* ── Decision-surface ergonomics (council reorg: P1/P2/P3) ─────────── */
a.kpi{text-decoration:none;color:inherit;display:block;transition:border-color .12s,transform .12s}
a.kpi:hover{border-color:var(--accent);transform:translateY(-1px)}

/* Dashboard KPI strip */
.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
@media(max-width:680px){.kpi-strip{grid-template-columns:repeat(2,1fr)}}
.kpi-cell{display:block;text-decoration:none;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px 15px;box-shadow:var(--shadow-sm);transition:border-color .12s,transform .12s}
.kpi-cell:hover{border-color:var(--accent);transform:translateY(-1px)}
.kpi-cell-val{font-size:23px;font-weight:740;letter-spacing:-.5px;color:var(--ink)}
.kpi-cell-lbl{font-size:11.5px;color:var(--muted);margin-top:2px;text-transform:uppercase;letter-spacing:.6px}
.kpi-cell.kpi-alert{border-color:rgba(228,103,31,.45);background:linear-gradient(90deg,rgba(228,103,31,.10),transparent)}
.kpi-cell.kpi-alert .kpi-cell-val{color:var(--accent)}

/* Pipeline column header: count + View-all link on the right */
.pipe-head-right{display:flex;align-items:center;gap:12px;white-space:nowrap}

/* Urgent card accent (follow-ups, review queue) */
.card.urgent{border-color:rgba(228,103,31,.40);box-shadow:inset 0 3px 0 var(--orange),var(--shadow-sm)}

/* Inline advance controls */
.inline-advance{display:inline}
.dl-btn{background:none;border:none;cursor:pointer;font:inherit;color:var(--accent);font-weight:600;padding:0}
.dl-btn:hover{text-decoration:underline}
.row-action form{margin:0}
.row-action{white-space:nowrap}

/* Sortable table headers */
.sortable{color:var(--muted2);font-weight:700;text-decoration:none;white-space:nowrap}
.sortable:hover{color:var(--ink)}
.sortable.sorted{color:var(--accent)}

/* Status kanban (Pipeline Lanes) */
.kanban{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:start}
@media(max-width:1100px){.kanban{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.kanban{grid-template-columns:1fr}}
.kcol{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:12px;min-height:120px}
.kcol-head{font-weight:700;font-size:13px;color:var(--ink);margin-bottom:10px;display:flex;align-items:center;gap:6px}
.kcol-new{box-shadow:inset 0 3px 0 var(--slate)}
.kcol-pursuing{box-shadow:inset 0 3px 0 var(--orange)}
.kcol-submitted{box-shadow:inset 0 3px 0 #d8a200}
.kcol-won{box-shadow:inset 0 3px 0 #2e8b57}
.kcol-lost{box-shadow:inset 0 3px 0 var(--muted2)}
.kcol-body{display:flex;flex-direction:column;gap:9px}
.kcard{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px;box-shadow:var(--shadow-sm)}
.kcard-need{display:block;font-weight:650;font-size:13px;color:var(--ink);text-decoration:none;line-height:1.3}
.kcard-need:hover{color:var(--accent)}
.kcard-client{color:var(--muted);font-size:12px;margin:2px 0 7px}
.kcard-meta{display:flex;align-items:center;gap:7px;margin-bottom:7px}
.kcard-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.kcard-actions form{margin:0}
.btn.tiny.win{border-color:#2e8b57;color:#2e8b57}
.kcard-flat{display:block;text-decoration:none}
.passed-strip{margin-top:18px;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:10px 14px}
.passed-strip summary{cursor:pointer;font-weight:600;color:var(--muted);font-size:13px}
.kanban-passed{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;margin-top:12px}

/* Buyer Graph: next-best-action + recency */
.nba{font-weight:600;color:var(--ink);font-size:13px}
.stale{color:#b4541f;font-weight:600}

/* Segmented filter bar */
.seg-bar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.seg{display:inline-flex;align-items:center;gap:5px;padding:6px 13px;border:1px solid var(--border2);border-radius:999px;font-size:13px;font-weight:600;color:var(--muted);text-decoration:none;background:var(--white)}
.seg:hover{border-color:var(--accent);color:var(--ink)}
.seg.on{background:var(--accent);border-color:var(--accent);color:#fff}
.seg.on .muted{color:rgba(255,255,255,.85)}

/* Talent reel-review queue */
.review-queue{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.review-queue li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--border);flex-wrap:wrap}
.review-queue li:last-child{border-bottom:none}
.rq-who{display:flex;flex-direction:column;gap:2px}
.rq-actions{display:flex;gap:6px;align-items:center}
.rq-actions form{margin:0}

/* Project flags */
.flag{display:inline-block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:1px 7px;border-radius:999px;margin-left:7px;vertical-align:middle}
.flag-warn{background:rgba(228,103,31,.15);color:#b4541f}
.flag-late{background:rgba(180,40,40,.14);color:#b42828}
.row-flag{background:rgba(228,103,31,.045)}

/* First-touch message (multi-paragraph, preserve line breaks) */
.first-touch{white-space:pre-line;line-height:1.6;color:var(--text);background:var(--panel);border-left:3px solid var(--accent);border-radius:8px;padding:14px 16px;font-size:13.5px}
.attach-box{margin-top:14px;border:1px solid var(--border2);border-radius:10px;padding:12px 14px;background:var(--card)}
.attach-head{font-weight:650;font-size:13px;color:var(--ink);margin-bottom:8px}
.attach-list{margin:0;padding-left:18px;color:var(--text);font-size:13px;line-height:1.7}

/* Pursuit checklist (merged outline + next steps, tracked) */
.checklist{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}
.checklist li{display:flex;align-items:flex-start;gap:10px;padding:9px 4px;border-bottom:1px solid var(--border)}
.checklist li:last-child{border-bottom:none}
.checklist form{margin:0;flex-shrink:0}
.check-toggle{background:none;border:none;cursor:pointer;font-size:19px;line-height:1;padding:0;color:var(--muted2)}
.check-toggle:hover{color:var(--accent)}
.checklist li.checked .check-toggle{color:#2e8b57}
.check-text{font-size:13.5px;color:var(--text);line-height:1.45}
.checklist li.checked .check-text{color:var(--muted2);text-decoration:line-through}

/* ===================================================================== */
/* Match Board — opportunities (left) x qualified talent (right)          */
/* ===================================================================== */
/* two columns at every width (it's a matching board) — opportunities left,
   talent right, side by side. */
.mb{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start;margin-top:14px}
.mb-col{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);
  padding:14px;box-shadow:var(--shadow-sm)}
.mb-col-head{display:flex;justify-content:space-between;font-weight:700;color:var(--ink);margin-bottom:10px;font-size:14px}
.mb-col-head span{color:var(--muted)}
.mb-opp{border:1px solid var(--border);border-radius:11px;padding:12px;margin-bottom:10px;background:var(--panel);transition:border-color .12s,background .12s}
.mb-opp.over{border-color:var(--orange);background:#FBF1E8}
.mb-opp.focus{box-shadow:inset 0 0 0 2px var(--orange)}
.body.mb-picking .mb-opp,.mb-picking .mb-opp{cursor:pointer}
.mb-opp-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
.mb-opp-links{display:flex;gap:10px;white-space:nowrap;flex-shrink:0}
.mb-rank-link{font-size:12px;color:var(--accent);font-weight:650;white-space:nowrap}
.mb-rank-link:hover{text-decoration:underline}
.mb-crew{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;min-height:30px}
.mb-chip{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid var(--border2);border-radius:999px;padding:4px 6px 4px 11px;font-size:12.5px;font-weight:600}
.mb-x-form{margin:0;display:inline-flex}
.mb-x{border:none;background:none;cursor:pointer;color:var(--muted);font-size:15px;line-height:1;padding:0 2px}
.mb-x:hover{color:var(--wine)}
.mb-drop-hint{color:var(--muted2);font-size:12px;border:1px dashed var(--border2);border-radius:8px;padding:6px 10px;width:100%}
.mb-bubbles{display:flex;flex-wrap:wrap;gap:10px}
.mb-bubble{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,#fff,#FBF6EE);border:1px solid var(--border2);border-radius:999px;padding:7px 15px 7px 7px;cursor:grab;box-shadow:var(--shadow-sm);user-select:none}
.mb-bubble:hover{border-color:var(--orange)}
.mb-bubble:active{cursor:grabbing}
.mb-bubble.dragging{opacity:.5}
.mb-bubble.picked{border-color:var(--orange);box-shadow:0 0 0 2px rgba(228,103,31,.32)}
.mb-score{width:34px;height:34px;border-radius:50%;background:var(--slate);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0}
.mb-score.hi{background:var(--wine)}
.mb-bubble-main{display:flex;flex-direction:column;line-height:1.2;gap:1px}
.mb-name{font-weight:680;font-size:13.5px;color:var(--ink);white-space:nowrap}
.mb-role{font-size:11.5px;color:var(--muted);white-space:nowrap}
/* phones: keep both columns, just tighten so they fit side by side */
@media(max-width:560px){
  .mb{gap:8px;margin-top:10px}
  .mb-col{padding:9px}
  .mb-col-head{font-size:12.5px}
  .mb-opp{padding:9px;margin-bottom:8px}
  .mb-opp-top{flex-direction:column;align-items:flex-start;gap:2px}
  .mb-opp-top .strong{font-size:12.5px}
  .mb-rank-link{font-size:11px}
  .mb-drop-hint{font-size:11px;padding:5px 8px}
  .mb-chip{font-size:11.5px;padding:3px 5px 3px 9px}
  .mb-bubbles{gap:7px}
  .mb-bubble{gap:7px;padding:5px 10px 5px 5px}
  .mb-score{width:28px;height:28px;font-size:12px}
  .mb-name{font-size:12.5px}
  .mb-role{font-size:11px}
}

/* ===================================================================== */
/* Mobile / tablet — the dashboard becomes a stacked, top-nav layout      */
/* ===================================================================== */
@media(max-width:860px){
  /* stack: sidebar becomes a full-width top bar */
  .shell{flex-direction:column}
  .sidebar{
    width:100%;height:auto;position:static;
    flex-direction:column;gap:6px;padding:10px 14px 12px;
    border-right:none;border-bottom:1px solid #2c2826;
  }
  .brand-tag{display:none}
  /* brand + hamburger on one row; nav collapses into a dropdown */
  .side-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 4px}
  .brand{padding:0}
  .brand-plate img{width:auto;height:24px}
  .sidebar-burger{
    display:inline-flex;align-items:center;justify-content:center;width:44px;height:40px;
    border-radius:9px;color:#E9E3D6;font-size:20px;line-height:1;cursor:pointer;
    background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  }
  .side-nav-wrap{display:none;margin-top:8px}
  #side-toggle:checked ~ .side-nav-wrap{display:block}
  .nav-section{padding:10px 8px 2px;font-size:9.5px}
  .nav{flex-direction:column;gap:2px}
  .nav a{padding:11px 12px;font-size:14px}

  /* topbar + content */
  .topbar{position:static;padding:12px 16px;flex-wrap:wrap;gap:10px}
  .topbar-title{font-size:16px}
  .topbar-search{flex:1 1 100%}
  .topbar-search input{width:100%;max-width:none}
  .content{padding:16px 14px 48px}

  /* detail/header rows stack */
  .detail-head{flex-direction:column;gap:14px}
  .detail-head .detail-fit{align-self:flex-start}

  /* wide tables scroll horizontally inside their card instead of overflowing */
  .content .card{overflow-x:auto}
  .table{min-width:560px}
}

@media(max-width:560px){
  .topbar{flex-direction:column;align-items:stretch}
  .nav a{font-size:12.5px;padding:6px 9px}
  .content{padding:14px 12px 44px}
  .card{padding:14px}
  .big-num{font-size:22px}
  .detail-title{font-size:22px}
}
