:root{
  --ink:#111b2d;
  --soft-ink:#435168;
  --muted:#748094;
  --line:#dbe1e8;
  --line-soft:#e9edf2;
  --page:#f3f5f7;
  --panel:#ffffff;
  --blue:#3657ff;
  --blue-dark:#2645d8;
  --blue-soft:#edf1ff;
  --navy:#17243c;
  --green:#137a55;
  --green-soft:#eaf8f2;
  --danger:#b42318;
  --shadow:0 16px 42px rgba(16,24,40,.08);
}
*{box-sizing:border-box}
html{
  width:100%;
  max-width:100%;
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{
  width:100%;
  max-width:100%;
  margin:0;
  min-height:100vh;
  font-family:"Inter",sans-serif;
  color:var(--ink);
  background:var(--page);
}
button,input,select{font:inherit}
button,a{ -webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
[hidden]{display:none!important}

.portal-loading{
  min-height:100vh;
  display:grid;
  place-items:center;
  align-content:center;
  gap:18px;
  color:var(--muted);
  font-size:.8rem;
}
.portal-loading img{width:180px;height:auto}

.auth-view{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:36px 18px 60px;
  background:
    radial-gradient(circle at 15% 10%,rgba(54,87,255,.08),transparent 30%),
    radial-gradient(circle at 90% 90%,rgba(19,122,85,.07),transparent 28%),
    var(--page);
}
.auth-logo{
  position:absolute;
  top:28px;
  left:32px;
}
.auth-logo img{display:block;width:160px;height:auto}
.auth-panel{
  width:min(100%,460px);
  padding:34px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow);
}
.eyebrow{
  display:block;
  color:var(--blue-dark);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.auth-panel h1,.section-header h1,.hero-row h1,.workspace-hero h1{
  margin:8px 0 0;
  font:800 clamp(2rem,4vw,3.2rem)/1.05 "Manrope",sans-serif;
  letter-spacing:-.05em;
}
.auth-panel>p,.section-header p,.hero-row p,.workspace-hero p{
  margin:12px 0 0;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.65;
}
.auth-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  margin-top:26px;
  padding:4px;
  border-radius:10px;
  background:#f1f3f6;
}
.auth-tab{
  min-height:40px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--muted);
  font-size:.76rem;
  font-weight:700;
}
.auth-tab.active{
  background:#fff;
  color:var(--ink);
  box-shadow:0 1px 4px rgba(16,24,40,.09);
}
.auth-form,#onboarding-form,#workspace-form{
  margin-top:20px;
  display:grid;
  gap:14px;
}
.auth-form label,#onboarding-form label,#workspace-form label{
  display:grid;
  gap:6px;
  color:var(--soft-ink);
  font-size:.72rem;
  font-weight:700;
}
.auth-form input,#workspace-form input,#onboarding-form select{
  width:100%;
  min-height:44px;
  padding:10px 12px;
  border:1px solid #cfd6df;
  border-radius:8px;
  outline:0;
  background:#fff;
  color:var(--ink);
}
.auth-form input:focus,#workspace-form input:focus,#onboarding-form select:focus{
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(54,87,255,.1);
}
.form-status{
  min-height:18px;
  margin:0;
  color:var(--danger);
  font-size:.68rem;
  line-height:1.4;
}
.form-status.success{color:var(--green)}
.primary-button,.secondary-button{
  min-height:44px;
  padding:0 20px;
  border-radius:999px;
  font-size:.76rem;
  font-weight:800;
}
.primary-button{
  border:1px solid var(--blue);
  background:var(--blue);
  color:#fff;
}
.primary-button:hover{background:var(--blue-dark)}
.secondary-button{
  border:1px solid #c7ced8;
  background:#fff;
  color:var(--soft-ink);
}
.secondary-button:hover{background:#f5f7f9}
.primary-button:disabled,.secondary-button:disabled{opacity:.6;cursor:wait}
.compact{min-height:38px;padding:0 16px}
.privacy-copy{
  margin:0;
  color:var(--muted);
  font-size:.62rem;
  font-weight:400;
  line-height:1.5;
}
.privacy-copy a{text-decoration:underline}
.verification-panel{
  margin-top:24px;
  display:grid;
  justify-items:center;
  gap:10px;
  text-align:center;
}
.verification-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:var(--green-soft);
  color:var(--green);
  font-weight:800;
}
.verification-panel strong{font:800 1.1rem/1.3 "Manrope",sans-serif}
.verification-panel p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.55}

.portal-app{
  width:100%;
  max-width:100%;
  min-height:100vh;
}
.sidebar{
  position:fixed;
  inset:0 auto 0 0;
  z-index:30;
  width:230px;
  display:flex;
  flex-direction:column;
  padding:24px 18px 18px;
  border-right:1px solid var(--line);
  background:#fff;
}
.sidebar-logo{display:block;padding:0 8px 22px}
.sidebar-logo img{display:block;width:150px;height:auto}
.portal-nav{display:grid;gap:5px}
.nav-item{
  width:100%;
  min-height:46px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:0 11px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#536176;
  text-align:left;
  font-size:.78rem;
  font-weight:700;
}
.nav-item:hover{background:#f5f7f9;color:var(--ink)}
.nav-item.active{background:var(--blue-soft);color:var(--blue-dark)}
.nav-mark{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:7px;
  background:#f0f2f5;
  color:#647187;
  font-size:.66rem;
  font-weight:800;
}
.nav-item.active .nav-mark{background:#dce3ff;color:var(--blue-dark)}
.nav-mark svg{
  width:18px;
  height:18px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.sidebar-footer{
  margin-top:auto;
  padding:14px 8px 0;
  border-top:1px solid var(--line-soft);
  display:grid;
  gap:9px;
}
.sidebar-footer a,.sidebar-footer button{
  padding:0;
  border:0;
  background:transparent;
  color:var(--muted);
  text-align:left;
  font-size:.68rem;
}
.sidebar-footer a:hover,.sidebar-footer button:hover{color:var(--ink)}

.portal-main{
  min-height:100vh;
  margin-left:230px;
}
.portal-topbar{
  height:64px;
  position:sticky;
  top:0;
  z-index:20;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding:0 32px;
  border-bottom:1px solid rgba(219,225,232,.9);
  background:rgba(243,245,247,.92);
  backdrop-filter:blur(12px);
}
.mobile-section-label{display:none}
.account-chip{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid var(--navy);
  border-radius:50%;
  background:var(--navy);
  color:#fff;
  font-size:.72rem;
  font-weight:800;
}
.portal-view{
  width:min(calc(100% - 64px),1080px);
  margin:0 auto;
  padding:44px 0 72px;
}
.hero-row,.section-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:30px;
}
.hero-row>div,.section-header>div{max-width:720px}
.hero-row h1,.section-header h1{font-size:clamp(2rem,4vw,3.35rem)}
.role-pill{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  background:var(--blue-soft);
  color:var(--blue-dark);
}

.action-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:34px;
}
.action-grid.has-leader-card{grid-template-columns:repeat(3,minmax(0,1fr))}
.action-card{
  min-height:220px;
  padding:24px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  text-align:left;
  box-shadow:0 4px 16px rgba(16,24,40,.025);
}
.action-card:hover{
  border-color:#bcc7ff;
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(16,24,40,.06);
}
.action-kicker{
  color:var(--blue-dark);
  font-size:.66rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.action-card strong{
  margin-top:13px;
  font:800 1.45rem/1.2 "Manrope",sans-serif;
  letter-spacing:-.03em;
}
.action-card p{
  margin:10px 0 0;
  color:var(--muted);
  font-size:.8rem;
  line-height:1.6;
}
.action-link{
  margin-top:auto;
  padding-top:20px;
  color:var(--blue-dark);
  font-size:.74rem;
  font-weight:800;
}

.home-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:16px;
  margin-top:16px;
}
.panel{
  padding:22px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
}
.panel-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:14px;
}
.panel-heading h2,.phase-card h2,.workspace-empty h2,.modal-card h2,.account-drawer h2{
  margin:6px 0 0;
  font:800 1.25rem/1.3 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.text-button{
  padding:3px 0;
  border:0;
  background:transparent;
  color:var(--blue-dark);
  font-size:.7rem;
  font-weight:700;
}

.workspace-list{display:grid}
.workspace-item{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  width:100%;
  padding:13px 2px;
  border:0;
  border-top:1px solid var(--line-soft);
  background:transparent;
  text-align:left;
  transition:background-color .14s ease,transform .1s ease;
}
.workspace-item:first-child{border-top:0}
.workspace-item:active{background:#f5f7ff;transform:scale(.995)}
.workspace-item.is-opening,
.workspace-item.is-opening:disabled{
  background:#f2f5ff;
  opacity:1;
  cursor:wait;
}
.workspace-item.is-opening .workspace-copy>strong{color:var(--blue-dark)}
.workspace-item.is-opening .workspace-copy>span{color:var(--blue-dark);font-weight:700}
button.is-pending{
  opacity:.78;
  cursor:wait;
  pointer-events:none;
}
button.is-pending::after{
  content:"";
  display:inline-block;
  width:.8em;
  height:.8em;
  margin-left:8px;
  border:1.5px solid currentColor;
  border-right-color:transparent;
  border-radius:50%;
  vertical-align:-.08em;
  animation:workspace-spin .7s linear infinite;
}

.workspace-spinner{
  width:15px;
  height:15px;
  border:2px solid #cbd4ff;
  border-top-color:var(--blue-dark);
  border-radius:50%;
  animation:workspace-spin .7s linear infinite;
}
@keyframes workspace-spin{to{transform:rotate(360deg)}}
.portfolio-account-card.is-opening,
.portfolio-account-card.is-opening:disabled{
  opacity:.72;
  cursor:wait;
}
.workspace-icon{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:9px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:.65rem;
  font-weight:800;
  text-transform:uppercase;
}
.workspace-item[data-kind="analysis"] .workspace-icon{background:var(--green-soft);color:var(--green)}
.workspace-item[data-kind="general"] .workspace-icon{background:#f0f2f5;color:#647187}
.workspace-copy{min-width:0}
.workspace-copy strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.76rem;
}
.workspace-copy span,.workspace-time{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.63rem;
}
.workspace-arrow{color:#9aa5b4;font-size:.85rem}
.empty-list{
  padding:28px 8px;
  text-align:center;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.55;
}
.empty-list strong{display:block;color:var(--soft-ink);font-size:.78rem;margin-bottom:4px}

.activity-list{display:grid}
.activity-item{
  display:grid;
  grid-template-columns:8px 1fr;
  gap:10px;
  padding:12px 0;
  border-top:1px solid var(--line-soft);
}
.activity-item:first-child{border-top:0}
.activity-dot{
  width:7px;height:7px;margin-top:5px;border-radius:50%;background:#9aa9ff;
}
.activity-item strong{display:block;font-size:.72rem;font-weight:700}
.activity-item span{display:block;margin-top:4px;color:var(--muted);font-size:.61rem}

.section-header{margin-bottom:28px}
.phase-card{
  padding:28px;
  margin-bottom:16px;
  border:1px solid #d8def8;
  border-radius:16px;
  background:linear-gradient(135deg,#17243c,#233659);
  color:#fff;
}
.phase-number{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  color:#cbd4ff;
  font-size:.62rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.phase-card h2{margin-top:14px;color:#fff;font-size:1.55rem}
.phase-card p{
  max-width:720px;
  margin:9px 0 0;
  color:#c8d2e4;
  font-size:.82rem;
  line-height:1.65;
}
.phase-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}
.phase-tags span{
  padding:6px 8px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:7px;
  color:#e8edff;
  font-size:.63rem;
  font-weight:700;
}

.upload-preview{
  min-height:260px;
  margin-bottom:16px;
  display:grid;
  place-items:center;
  align-content:center;
  padding:30px;
  border:1.5px dashed #bdc6d3;
  border-radius:16px;
  background:#fff;
  text-align:center;
}
.upload-icon{
  display:grid;
  place-items:center;
  width:44px;height:44px;
  border-radius:12px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:1.15rem;
  font-weight:800;
}
.upload-preview strong{margin-top:15px;font:800 1.15rem/1.3 "Manrope",sans-serif}
.upload-preview p{max-width:560px;margin:8px 0 0;color:var(--muted);font-size:.78rem;line-height:1.6}
.upload-preview span{margin-top:12px;color:#9aa5b4;font-size:.63rem}

.back-button{
  padding:0;
  border:0;
  background:transparent;
  color:var(--blue-dark);
  font-size:.72rem;
  font-weight:700;
}
.workspace-hero{margin-top:30px;max-width:780px}
.workspace-hero p{font-size:.78rem}
.workspace-empty{margin-top:28px;max-width:760px}
.workspace-empty .phase-number{background:var(--blue-soft);color:var(--blue-dark)}
.workspace-empty p{margin:8px 0 0;color:var(--muted);font-size:.8rem;line-height:1.6}

.modal{
  position:fixed;
  inset:0;
  z-index:100;
  display:grid;
  place-items:center;
  padding:18px;
}
.modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(17,27,45,.58);
}
.modal-card{
  position:relative;
  z-index:1;
  width:min(100%,520px);
  max-height:calc(100vh - 36px);
  overflow:auto;
  padding:28px;
  border-radius:16px;
  background:#fff;
  box-shadow:0 30px 80px rgba(16,24,40,.22);
}
.onboarding-card{width:min(100%,560px)}
.modal-card>p,.account-drawer>p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.55;
}
.modal-close{
  position:absolute;
  top:14px;
  right:14px;
  width:32px;height:32px;
  border:0;border-radius:50%;
  background:#f1f3f6;color:#607084;
  font-size:1.05rem;
}
.modal-actions{
  display:flex;
  justify-content:flex-end;
  gap:9px;
  margin-top:4px;
}
.account-drawer{
  position:absolute;
  z-index:1;
  top:0;
  right:0;
  width:min(100%,390px);
  height:100%;
  overflow-y:auto;
  padding:30px 24px;
  background:#fff;
  box-shadow:-24px 0 60px rgba(16,24,40,.14);
}
.account-identity{
  margin:24px 0 18px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#f8f9fb;
}
.account-identity strong,.account-identity span{display:block;overflow:hidden;text-overflow:ellipsis}
.account-identity strong{font-size:.8rem}
.account-identity span{margin-top:4px;color:var(--muted);font-size:.68rem;white-space:nowrap}
.drawer-button{
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  padding:0 12px;
  margin-top:8px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  color:var(--soft-ink);
  text-align:left;
  font-size:.72rem;
  font-weight:700;
}
.drawer-button:hover{background:#f5f7f9}
.drawer-button.danger{color:var(--danger)}

.wallet-panel{
  margin:0 0 18px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fbfcff;
}
.wallet-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.wallet-heading h3{
  margin:5px 0 0;
  font:800 .92rem/1.3 "Manrope",sans-serif;
}
#wallet-balance{
  flex:none;
  font:800 1.2rem/1.2 "Manrope",sans-serif;
  letter-spacing:-.03em;
}
.wallet-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-top:10px;
  color:var(--muted);
  font-size:.62rem;
}
.wallet-note{
  margin:10px 0 0;
  color:var(--muted);
  font-size:.64rem;
  line-height:1.5;
}
.wallet-topups{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:14px;
}
.wallet-topup-button{width:100%;padding:0 8px}
.wallet-limit-form{margin-top:14px}
.wallet-limit-form>label{
  display:grid;
  gap:6px;
  color:var(--soft-ink);
  font-size:.66rem;
  font-weight:700;
}
.wallet-limit-form>label>span{
  color:var(--muted);
  font-size:.58rem;
  font-weight:500;
}
.wallet-limit-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
}
.wallet-limit-row>span{
  color:var(--muted);
  font-size:.72rem;
  font-weight:700;
}
.wallet-limit-row input{
  width:100%;
  min-width:0;
  min-height:38px;
  padding:8px 10px;
  border:1px solid #cfd6df;
  border-radius:8px;
  background:#fff;
  color:var(--ink);
}
.wallet-pricing{
  margin-top:14px;
  padding-top:13px;
  border-top:1px solid var(--line-soft);
}
.wallet-pricing-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.wallet-pricing-head strong{font-size:.68rem}
.wallet-pricing-head span{color:var(--muted);font-size:.55rem}
.wallet-price-list{margin-top:7px}
.wallet-price-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:5px 0;
  color:var(--soft-ink);
  font-size:.6rem;
}
.wallet-price-row strong{flex:none;color:var(--ink);font-size:.6rem}

.wallet-auto-reload{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:14px;
  padding-top:13px;
  border-top:1px solid var(--line-soft);
}
.wallet-auto-reload strong{font-size:.7rem}
.wallet-auto-reload p{
  margin:3px 0 0;
  color:var(--muted);
  font-size:.58rem;
  line-height:1.4;
}
.wallet-auto-reload>span{
  flex:none;
  padding:5px 7px;
  border-radius:999px;
  background:#f0f2f5;
  color:var(--muted);
  font-size:.54rem;
  font-weight:800;
}
.wallet-history{
  margin-top:14px;
  padding-top:13px;
  border-top:1px solid var(--line-soft);
}
.wallet-history>strong{font-size:.68rem}
.wallet-transaction-list{margin-top:7px}
.wallet-transaction{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 0;
  border-top:1px solid var(--line-soft);
}
.wallet-transaction:first-child{border-top:0}
.wallet-transaction>div{min-width:0}
.wallet-transaction>div strong,
.wallet-transaction>div span{display:block}
.wallet-transaction>div strong{font-size:.64rem}
.wallet-transaction>div span{
  margin-top:2px;
  color:var(--muted);
  font-size:.55rem;
}
.wallet-transaction>strong{flex:none;font-size:.62rem}
.wallet-credit{color:var(--green)}
.wallet-debit{color:var(--soft-ink)}
.wallet-empty{
  margin:7px 0 0;
  color:var(--muted);
  font-size:.6rem;
}
#wallet-status{margin-top:8px}

.toast{
  position:fixed;
  left:50%;
  bottom:24px;
  z-index:150;
  transform:translateX(-50%) translateY(12px);
  padding:9px 14px;
  border-radius:8px;
  background:var(--navy);
  color:#fff;
  font-size:.7rem;
  font-weight:700;
  opacity:0;
  pointer-events:none;
  transition:.18s ease;
}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

.company-context-card{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:16px;
  border:1px solid #dce3ff;
  border-radius:11px;
  background:var(--blue-soft);
}
.company-context-card>div{min-width:0}
.company-context-card strong{
  display:block;
  margin-top:6px;
  font:800 .82rem/1.4 "Manrope",sans-serif;
  color:var(--ink);
}
.company-context-card p{
  margin:5px 0 0;
  color:var(--soft-ink);
  font-size:.68rem;
  line-height:1.55;
}
.company-context-card .secondary-button{
  flex:none;
  background:#fff;
}
.company-modal-card{width:min(100%,640px)}
.company-form{
  margin-top:20px;
  display:grid;
  gap:14px;
}
.company-form label{
  display:grid;
  gap:6px;
  color:var(--soft-ink);
  font-size:.72rem;
  font-weight:700;
}
.company-form label>span{
  color:var(--muted);
  font-size:.62rem;
  font-weight:500;
}
.company-form input,
.company-form textarea{
  width:100%;
  min-width:0;
  padding:11px 12px;
  border:1px solid #cfd6df;
  border-radius:8px;
  outline:0;
  background:#fff;
  color:var(--ink);
  font-size:.78rem;
  line-height:1.45;
}
.company-form input{min-height:44px}
.company-form textarea{resize:vertical}
.company-form input:focus,
.company-form textarea:focus{
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(54,87,255,.1);
}

.workspace-hero #workspace-add-sales-data{
  margin-top:14px;
}
.customer-workspace-analytics{
  scroll-margin-top:24px;
}

.customer-research-area{
  display:grid;
  gap:16px;
  margin-top:28px;
}
.research-input-panel{padding:26px}
.status-pill{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 9px;
  border-radius:999px;
  background:var(--green-soft);
  color:var(--green);
  font-size:.62rem;
  font-weight:800;
}
.status-pill.unavailable{
  background:#fff1f0;
  color:var(--danger);
}
.customer-research-form{
  display:grid;
  gap:15px;
}
.customer-research-form label{
  display:grid;
  gap:6px;
  color:var(--soft-ink);
  font-size:.72rem;
  font-weight:700;
}
.customer-research-form label>span{
  color:var(--muted);
  font-size:.62rem;
  font-weight:500;
}
.customer-research-form input,
.customer-research-form textarea,
.customer-research-form select{
  width:100%;
  min-width:0;
  padding:11px 12px;
  border:1px solid #cfd6df;
  border-radius:8px;
  outline:0;
  background:#fff;
  color:var(--ink);
  font-size:.78rem;
  line-height:1.45;
}
.customer-research-form input,
.customer-research-form select{min-height:44px}
.customer-research-form textarea{resize:vertical}
.customer-research-form input:focus,
.customer-research-form textarea:focus,
.customer-research-form select:focus{
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(54,87,255,.1);
}
.research-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.research-status{margin-top:-2px}
.research-submit-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-top:3px;
}
.research-submit-row p{
  max-width:600px;
  margin:0;
  color:var(--muted);
  font-size:.64rem;
  line-height:1.5;
}
.research-submit-row .primary-button{flex:none}
.research-progress{
  display:flex;
  align-items:center;
  gap:16px;
  padding:20px 24px;
  border-color:#d9e0ff;
  background:#f8f9ff;
}
.research-spinner{
  width:28px;
  height:28px;
  flex:none;
  border:3px solid #d9e0ff;
  border-top-color:var(--blue);
  border-radius:50%;
  animation:research-spin .8s linear infinite;
}
.research-progress strong{
  display:block;
  font-size:.76rem;
}
.research-progress p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.68rem;
  line-height:1.5;
}
@keyframes research-spin{to{transform:rotate(360deg)}}

.customer-brief-output{
  display:grid;
  gap:16px;
}
.brief-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:28px;
  border-radius:16px;
  background:var(--navy);
  color:#fff;
}
.brief-hero>div{max-width:760px}
.brief-hero h2{
  margin:8px 0 0;
  font:800 clamp(1.8rem,3vw,2.6rem)/1.08 "Manrope",sans-serif;
  letter-spacing:-.045em;
}
.brief-hero p{
  margin:10px 0 0;
  color:#c8d2e4;
  font-size:.8rem;
  line-height:1.65;
}
.brief-hero .secondary-button{
  border-color:rgba(255,255,255,.35);
  background:transparent;
  color:#fff;
}
.brief-hero .secondary-button:hover{background:rgba(255,255,255,.08)}
.brief-summary{padding:26px}
.brief-summary>h2{
  margin:7px 0 0;
  font:800 1.5rem/1.25 "Manrope",sans-serif;
  letter-spacing:-.03em;
}
.brief-summary>p{
  max-width:850px;
  margin:10px 0 0;
  color:var(--soft-ink);
  font-size:.84rem;
  line-height:1.7;
}
.company-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:20px;
}
.company-fact{
  padding:12px;
  border:1px solid var(--line-soft);
  border-radius:9px;
  background:#fafbfc;
}
.company-fact span{
  display:block;
  color:var(--muted);
  font-size:.58rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.company-fact strong{
  display:block;
  margin-top:6px;
  color:var(--soft-ink);
  font-size:.71rem;
  line-height:1.45;
}
.brief-section{padding:24px}
.section-note{
  margin:-4px 0 18px;
  color:var(--muted);
  font-size:.67rem;
  line-height:1.55;
}
.brief-list{display:grid}
.brief-list-item{
  padding:16px 0;
  border-top:1px solid var(--line-soft);
}
.brief-list-item:first-child{border-top:0;padding-top:2px}
.brief-item-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}
.brief-list-item h3{
  margin:0;
  font:800 .82rem/1.4 "Manrope",sans-serif;
  letter-spacing:-.015em;
}
.brief-item-heading>span{
  flex:none;
  color:var(--muted);
  font-size:.6rem;
}
.brief-list-item>p{
  margin:7px 0 0;
  color:var(--soft-ink);
  font-size:.74rem;
  line-height:1.62;
}
.evidence-refs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:9px;
}
.evidence-refs a,
.evidence-refs button{
  min-height:26px;
  padding:4px 7px;
  border:0;
  border-radius:6px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:.58rem;
  font-weight:800;
}
.evidence-refs button{
  background:var(--green-soft);
  color:var(--green);
}
.evidence-refs a:hover{text-decoration:underline}
.hypothesis-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.hypothesis-card{
  padding:18px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.hypothesis-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.hypothesis-top h3{
  margin:0;
  font:800 .86rem/1.4 "Manrope",sans-serif;
  letter-spacing:-.02em;
}
.confidence-pill{
  flex:none;
  padding:4px 6px;
  border-radius:999px;
  background:#f1f3f6;
  color:#68758a;
  font-size:.52rem;
  font-weight:800;
  text-transform:capitalize;
}
.confidence-high{background:var(--green-soft);color:var(--green)}
.confidence-medium{background:#fff6df;color:#8a5b00}
.hypothesis-card>p{
  margin:9px 0 0;
  color:var(--soft-ink);
  font-size:.71rem;
  line-height:1.55;
}
.hypothesis-evidence,.hypothesis-question{
  margin-top:13px;
  padding:10px 11px;
  border-radius:8px;
  background:#f7f8fa;
}
.hypothesis-question{background:var(--blue-soft)}
.hypothesis-evidence strong,.hypothesis-question strong{
  display:block;
  color:var(--muted);
  font-size:.57rem;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.hypothesis-question strong{color:var(--blue-dark)}
.hypothesis-evidence p,.hypothesis-question p{
  margin:5px 0 0;
  color:var(--soft-ink);
  font-size:.67rem;
  line-height:1.5;
}
.brief-two-column{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.question-list{
  margin:0;
  padding:0 0 0 22px;
}
.question-list li{
  padding:9px 4px 9px 6px;
  border-top:1px solid var(--line-soft);
  color:var(--soft-ink);
  font-size:.72rem;
  line-height:1.55;
}
.question-list li:first-child{border-top:0;padding-top:2px}
.action-item:first-child{padding-top:2px}
.source-list{display:grid}
.source-card{
  display:grid;
  grid-template-columns:30px minmax(0,1fr) auto;
  gap:11px;
  align-items:center;
  padding:12px 0;
  border-top:1px solid var(--line-soft);
}
.source-card:first-child{border-top:0;padding-top:2px}
.source-number{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:7px;
  background:#f0f2f5;
  color:#667388;
  font-size:.6rem;
  font-weight:800;
}
.source-copy{min-width:0}
.source-copy strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.7rem;
}
.source-copy span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.58rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.source-arrow{color:var(--blue-dark);font-size:.75rem}

.inline-source-link{
  display:inline;
  color:var(--blue-dark);
  font-weight:800;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
  white-space:nowrap;
}
.inline-source-link:hover{color:var(--blue)}


.brief-hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.meeting-evidence-stack{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:16px;
}
.meeting-evidence-chip{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:0 8px;
  border-radius:999px;
  background:#f1f3f6;
  color:#7a8798;
  font-size:.56rem;
  font-weight:800;
}
.meeting-evidence-chip.used{
  background:var(--green-soft);
  color:var(--green);
}
.meeting-evidence-refs button{
  cursor:pointer;
}

.meeting-launch{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:22px 24px;
  border-color:#d7defd;
  background:linear-gradient(135deg,#f7f9ff,#ffffff);
}
.meeting-launch>div{max-width:720px}
.meeting-launch h2{
  margin:6px 0 0;
  font:800 1.16rem/1.35 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.meeting-launch p{
  margin:7px 0 0;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.55;
}
.meeting-launch .primary-button{flex:none}
.meeting-brief-output{
  display:grid;
  gap:16px;
}
.meeting-brief-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:26px 28px;
  border:1px solid #d8def8;
  border-radius:16px;
  background:linear-gradient(135deg,#eef2ff,#f9faff);
}
.meeting-brief-hero>div{max-width:760px}
.meeting-brief-hero h2{
  margin:7px 0 0;
  font:800 clamp(1.45rem,2.6vw,2rem)/1.15 "Manrope",sans-serif;
  letter-spacing:-.04em;
}
.meeting-brief-hero p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.55;
}
.meeting-summary-panel{padding:25px}
.meeting-summary-panel>h2{
  margin:7px 0 0;
  font:800 1.35rem/1.3 "Manrope",sans-serif;
  letter-spacing:-.03em;
}
.meeting-summary-panel>p{
  max-width:860px;
  margin:9px 0 0;
  color:var(--soft-ink);
  font-size:.8rem;
  line-height:1.7;
}
.desired-next-step{
  margin-top:18px;
  padding:13px 14px;
  border-radius:10px;
  background:var(--green-soft);
}
.desired-next-step span{
  display:block;
  color:var(--green);
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.desired-next-step strong{
  display:block;
  margin-top:5px;
  color:#125a42;
  font-size:.76rem;
  line-height:1.5;
}
.meeting-question-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.meeting-question-card{
  padding:14px;
  border:1px solid var(--line-soft);
  border-radius:10px;
  background:#fafbfc;
}
.meeting-question-card strong{
  display:block;
  font:800 .76rem/1.5 "Manrope",sans-serif;
  letter-spacing:-.015em;
}
.meeting-question-card p{
  margin:7px 0 0;
  color:var(--muted);
  font-size:.65rem;
  line-height:1.5;
}
.meeting-risk-type{
  flex:none;
  padding:4px 6px;
  border-radius:999px;
  background:#fff2e8;
  color:#985214;
  font-size:.52rem!important;
  font-weight:800;
  text-transform:capitalize;
}
.meeting-flow{
  margin:0;
  padding:0;
  list-style:none;
}
.meeting-flow li{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:10px;
  padding:11px 0;
  border-top:1px solid var(--line-soft);
}
.meeting-flow li:first-child{border-top:0;padding-top:2px}
.meeting-flow li>span{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:7px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:.56rem;
  font-weight:800;
}
.meeting-flow strong{
  display:block;
  font-size:.71rem;
}
.meeting-flow p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:.63rem;
  line-height:1.5;
}
.meeting-modal-card{width:min(100%,620px)}
.meeting-form{
  margin-top:20px;
  display:grid;
  gap:14px;
}
.meeting-form label{
  display:grid;
  gap:6px;
  color:var(--soft-ink);
  font-size:.72rem;
  font-weight:700;
}
.meeting-form label>span{
  color:var(--muted);
  font-size:.62rem;
  font-weight:500;
}
.meeting-form input,
.meeting-form textarea,
.meeting-form select{
  width:100%;
  min-width:0;
  padding:11px 12px;
  border:1px solid #cfd6df;
  border-radius:8px;
  outline:0;
  background:#fff;
  color:var(--ink);
  font-size:.78rem;
  line-height:1.45;
}
.meeting-form input,
.meeting-form select{min-height:44px}
.meeting-form textarea{resize:vertical}
.meeting-form input:focus,
.meeting-form textarea:focus,
.meeting-form select:focus{
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(54,87,255,.1);
}

.live-upload,
.workspace-dropzone{
  transition:border-color .16s ease,background .16s ease,transform .16s ease;
}
.live-upload.drag-active,
.workspace-dropzone.drag-active{
  border-color:var(--blue);
  background:var(--blue-soft);
  transform:translateY(-1px);
}
.analysis-area{
  display:grid;
  gap:16px;
  margin-top:28px;
}
.analysis-upload-panel{padding:24px}
.workspace-dropzone{
  min-height:220px;
  display:grid;
  place-items:center;
  align-content:center;
  padding:28px;
  border:1.5px dashed #bdc6d3;
  border-radius:14px;
  background:#fafbfc;
  text-align:center;
}
.workspace-dropzone strong{margin-top:13px;font:800 1.02rem/1.35 "Manrope",sans-serif}
.workspace-dropzone p{max-width:560px;margin:7px 0 0;color:var(--muted);font-size:.72rem;line-height:1.55}
.workspace-dropzone>span{margin-top:10px;color:var(--blue-dark);font-size:.64rem;font-weight:800}
.analysis-output{display:grid;gap:16px}
.analysis-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:26px 28px;
  border-radius:16px;
  background:var(--navy);
  color:#fff;
}
.analysis-hero h2{
  margin:7px 0 0;
  font:800 clamp(1.6rem,3vw,2.25rem)/1.12 "Manrope",sans-serif;
  letter-spacing:-.04em;
}
.analysis-hero p{margin:8px 0 0;color:#c8d2e4;font-size:.7rem;line-height:1.5}
.analysis-hero .secondary-button{border-color:rgba(255,255,255,.35);background:transparent;color:#fff}
.analysis-kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.analysis-kpi{
  padding:18px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
}
.analysis-kpi>span{
  display:block;
  color:var(--muted);
  font-size:.61rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.analysis-kpi>strong{
  display:block;
  margin-top:8px;
  font:800 1.7rem/1.15 "Manrope",sans-serif;
  letter-spacing:-.04em;
}
.analysis-kpi>p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:.58rem;
  line-height:1.45;
}
.field-mapping-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.field-mapping-grid label{
  display:grid;
  gap:6px;
  color:var(--soft-ink);
  font-size:.64rem;
  font-weight:700;
}
.field-mapping-grid select{
  min-width:0;
  min-height:40px;
  padding:8px 9px;
  border:1px solid #cfd6df;
  border-radius:8px;
  background:#fff;
  color:var(--ink);
  font-size:.7rem;
}
.analysis-findings{display:grid}
.analysis-finding{
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:12px;
  padding:14px 0;
  border-top:1px solid var(--line-soft);
}
.analysis-finding:first-child{border-top:0;padding-top:2px}
.analysis-finding>span{
  display:grid;
  place-items:center;
  width:30px;height:30px;
  border-radius:8px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:.58rem;
  font-weight:800;
}
.analysis-finding strong{display:block;font:800 .76rem/1.4 "Manrope",sans-serif}
.analysis-finding p{margin:5px 0 0;color:var(--soft-ink);font-size:.7rem;line-height:1.55}
.analysis-finding small{display:block;margin-top:6px;color:var(--muted);font-size:.56rem;line-height:1.45}
.analysis-charts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.analysis-chart-card{min-width:0;overflow:hidden}
.analysis-chart-heading h2{
  margin:0;
  font:800 1rem/1.35 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.analysis-chart-heading p{margin:5px 0 18px;color:var(--muted);font-size:.58rem;line-height:1.45}
.bar-chart{display:grid;gap:9px}
.bar-row{
  display:grid;
  grid-template-columns:minmax(80px,1fr) minmax(100px,2.3fr) auto;
  gap:9px;
  align-items:center;
}
.bar-label{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--soft-ink);
  font-size:.61rem;
}
.bar-track{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:#edf0f4;
}
.bar-fill{
  height:100%;
  border-radius:999px;
  background:var(--blue);
}
.bar-row>strong{font-size:.6rem;font-weight:700;color:var(--soft-ink)}
.analysis-line-chart{
  width:100%;
  height:auto;
  color:var(--blue);
  overflow:visible;
}
.line-chart-labels{
  display:flex;
  justify-content:space-between;
  gap:8px;
  margin-top:5px;
  overflow:hidden;
}
.line-chart-labels span{
  color:var(--muted);
  font-size:.5rem;
  white-space:nowrap;
}
.analysis-evidence-panel{background:#fafbfc}
.analysis-evidence-panel h2{margin:6px 0 0;font:800 1rem/1.35 "Manrope",sans-serif}
.analysis-evidence-panel p{margin:7px 0 0;color:var(--muted);font-size:.68rem;line-height:1.55}

.analysis-hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.dashboard-customize-note{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:4px 2px 0;
}
.dashboard-customize-note p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.66rem;
  line-height:1.5;
}
.analysis-component-head,
.analysis-finding-title-row,
.analysis-chart-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.pinned-badge{
  flex:none;
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 7px;
  border-radius:999px;
  background:var(--green-soft);
  color:var(--green);
  font-size:.52rem;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.analysis-kpi.is-pinned,
.analysis-finding.is-pinned,
.analysis-chart-card.is-pinned{
  border-color:#b9d9cb;
  box-shadow:0 0 0 1px rgba(19,122,85,.05);
}
.analysis-component-actions{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid var(--line-soft);
}
.component-action{
  min-height:28px;
  padding:0 8px;
  border:1px solid var(--line);
  border-radius:7px;
  background:#fff;
  color:var(--soft-ink);
  font-size:.57rem;
  font-weight:750;
}
.component-action:hover{
  border-color:#bdc7d5;
  background:#f7f8fa;
  color:var(--ink);
}
.component-action[data-action="explore"]{
  border-color:#d5dcff;
  background:var(--blue-soft);
  color:var(--blue-dark);
}
.component-action[data-action="remove"]{
  color:#8c3e39;
}
.analysis-explore-card{
  width:min(100%,700px);
}
.analysis-explore-card>p{
  max-width:610px;
}
.explore-value{
  margin-top:22px;
  padding:18px;
  border-radius:12px;
  background:var(--navy);
  color:#fff;
  font:800 clamp(1.8rem,5vw,2.7rem)/1.05 "Manrope",sans-serif;
  letter-spacing:-.045em;
}
.explore-chart{
  margin-top:20px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
}
.explore-evidence{
  margin-top:20px;
  padding:13px 14px;
  border-radius:9px;
  background:#f7f8fa;
}
.explore-evidence>span{
  display:block;
  color:var(--muted);
  font-size:.56rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.explore-evidence>p{
  margin:5px 0 0;
  color:var(--soft-ink);
  font-size:.68rem;
  line-height:1.55;
}
.explore-details{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.explore-detail-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:9px 0;
  border-bottom:1px solid var(--line-soft);
}
.explore-detail-row>span{
  color:var(--muted);
  font-size:.63rem;
  text-transform:capitalize;
}
.explore-detail-row>strong{
  max-width:62%;
  color:var(--soft-ink);
  font-size:.66rem;
  text-align:right;
}
.explore-breakdown{
  padding:12px 0 0;
}
.explore-breakdown>strong{
  display:block;
  margin-bottom:7px;
  color:var(--soft-ink);
  font-size:.66rem;
  text-transform:capitalize;
}
.explore-breakdown>div{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:7px 0;
  border-top:1px solid var(--line-soft);
}
.explore-breakdown span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--soft-ink);
  font-size:.62rem;
}
.explore-breakdown b{
  flex:none;
  color:var(--soft-ink);
  font-size:.62rem;
}
.analysis-explore-actions{
  margin-top:20px;
  padding-top:16px;
  border-top:1px solid var(--line-soft);
}
.analysis-explore-actions #analysis-explore-remove{
  color:#8c3e39;
}

.dashboard-guidance{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:22px 24px;
}
.dashboard-guidance>div:first-child{max-width:720px}
.dashboard-guidance h2{
  margin:6px 0 0;
  font:800 1.15rem/1.35 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.dashboard-guidance p{
  margin:7px 0 0;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.55;
}
.dashboard-lock-status{
  flex:none;
  min-width:180px;
  padding:12px 14px;
  border-radius:10px;
  background:#f7f8fa;
}
.dashboard-lock-status strong{
  display:block;
  color:var(--ink);
  font-size:.72rem;
}
.dashboard-lock-status span{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:.6rem;
  line-height:1.45;
}
.ai-dashboard-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.ai-dashboard-card{
  min-width:0;
  overflow:hidden;
  transition:border-color .16s ease, box-shadow .16s ease;
}
.ai-dashboard-card.is-locked{
  border-color:#b9d9cb;
  box-shadow:0 0 0 1px rgba(19,122,85,.06);
}
.ai-chart-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
}
.ai-chart-heading>div{min-width:0}
.ai-chart-number{
  display:block;
  color:var(--blue-dark);
  font-size:.56rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ai-chart-heading h2{
  margin:5px 0 0;
  font:800 1rem/1.35 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.ai-chart-heading p{
  margin:6px 0 0;
  color:var(--muted);
  font-size:.64rem;
  line-height:1.5;
}
.locked-badge{
  flex:none;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  background:var(--green-soft);
  color:var(--green);
  font-size:.54rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.ai-chart-evidence{
  margin:14px 0 0;
  padding-top:11px;
  border-top:1px solid var(--line-soft);
  color:var(--muted);
  font-size:.56rem;
  line-height:1.45;
}
.ai-chart-insight{
  margin-top:12px;
  padding:12px 13px;
  border:1px solid #dfe5ff;
  border-radius:10px;
  background:#f7f8ff;
}
.ai-chart-insight>span{
  display:block;
  color:var(--blue-dark);
  font-size:.52rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ai-chart-insight>p{
  margin:5px 0 0;
  color:var(--soft-ink);
  font-size:.66rem;
  line-height:1.55;
}
.ai-chart-guidance{
  margin-top:10px;
  border-top:1px solid var(--line-soft);
  border-bottom:1px solid var(--line-soft);
}
.ai-chart-guidance summary{
  padding:10px 0;
  cursor:pointer;
  color:var(--ink);
  font-size:.63rem;
  font-weight:800;
  list-style:none;
}
.ai-chart-guidance summary::-webkit-details-marker{display:none}
.ai-chart-guidance summary::after{
  content:"+";
  float:right;
  color:var(--blue-dark);
  font-size:.72rem;
}
.ai-chart-guidance[open] summary::after{content:"−"}
.ai-chart-guidance ul{
  margin:0 0 11px;
  padding-left:18px;
  color:var(--soft-ink);
  font-size:.62rem;
  line-height:1.55;
}
.ai-chart-guidance li+li{margin-top:5px}
.ai-chart-actions{
  display:flex;
  gap:8px;
  margin-top:12px;
}
.ai-chart-actions button{
  min-height:34px;
  padding:0 12px;
  border-radius:8px;
  font-size:.62rem;
  font-weight:800;
}
.chart-lock-button{
  border:1px solid #c8d0db;
  background:#fff;
  color:var(--soft-ink);
}
.chart-lock-button.locked{
  border-color:#aad5c2;
  background:var(--green-soft);
  color:var(--green);
}
.chart-retry-button{
  border:1px solid #d6dcff;
  background:var(--blue-soft);
  color:var(--blue-dark);
}
.chart-retry-button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.pie-chart-wrap{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:18px;
  align-items:center;
}
.pie-chart{
  width:140px;
  height:140px;
  border-radius:50%;
  box-shadow:inset 0 0 0 30px #fff;
  background:#e7ebf0;
}
.pie-legend{display:grid;gap:8px}
.pie-legend>div{
  display:grid;
  grid-template-columns:9px minmax(0,1fr) auto;
  gap:7px;
  align-items:center;
}
.pie-legend>div>span:nth-child(2){
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--soft-ink);
  font-size:.6rem;
}
.pie-legend strong{
  color:var(--soft-ink);
  font-size:.58rem;
}
.pie-dot{
  width:8px;
  height:8px;
  border-radius:50%;
}
.pie-dot-0{background:#3657ff}
.pie-dot-1{background:#137a55}
.pie-dot-2{background:#8b5cf6}
.pie-dot-3{background:#e09f3e}
.pie-dot-4{background:#cf5c78}
.pie-dot-5{background:#557c9c}
.analysis-reupload-note{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.analysis-reupload-note>div{max-width:720px}
.analysis-reupload-note h2{
  margin:6px 0 0;
  font:800 1rem/1.35 "Manrope",sans-serif;
}
.analysis-reupload-note p{
  margin:6px 0 0;
  color:var(--muted);
  font-size:.67rem;
  line-height:1.5;
}

.customer-synthesis-area{
  display:grid;
  gap:16px;
  margin-top:28px;
}
.synthesis-launch{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:24px;
  border-color:#d7defd;
  background:linear-gradient(135deg,#f8f9ff,#ffffff);
}
.synthesis-launch>div{max-width:760px}
.synthesis-launch h2{
  margin:6px 0 0;
  font:800 1.2rem/1.35 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.synthesis-launch p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.6;
}
.synthesis-launch .primary-button{flex:none}
.customer-synthesis-output{
  display:grid;
  gap:16px;
}
.synthesis-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:28px;
  border-radius:16px;
  background:linear-gradient(135deg,#17243b,#22365a);
  color:#fff;
}
.synthesis-hero>div{max-width:820px}
.synthesis-hero h2{
  margin:8px 0 0;
  font:800 clamp(1.55rem,3vw,2.2rem)/1.14 "Manrope",sans-serif;
  letter-spacing:-.04em;
}
.synthesis-hero p{
  margin:9px 0 0;
  color:#cfdaeb;
  font-size:.76rem;
  line-height:1.65;
}
.synthesis-hero .secondary-button{
  flex:none;
  border-color:rgba(255,255,255,.35);
  background:transparent;
  color:#fff;
}
.synthesis-observations-panel{padding:24px}
.synthesis-observations{display:grid}
.synthesis-observation{
  padding:18px 0;
  border-top:1px solid var(--line-soft);
}
.synthesis-observation:first-child{border-top:0;padding-top:2px}
.synthesis-observation-top{
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  gap:11px;
  align-items:start;
}
.synthesis-observation-top>span:first-child{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:8px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:.58rem;
  font-weight:800;
}
.synthesis-observation h3{
  margin:4px 0 0;
  font:800 .86rem/1.4 "Manrope",sans-serif;
  letter-spacing:-.02em;
}
.synthesis-observation-copy{
  margin:10px 0 0 43px;
  color:var(--soft-ink);
  font-size:.75rem;
  line-height:1.62;
}
.synthesis-why,
.synthesis-question{
  margin:12px 0 0 43px;
  padding:11px 12px;
  border-radius:9px;
  background:#f7f8fa;
}
.synthesis-question{background:var(--blue-soft)}
.synthesis-why strong,
.synthesis-question strong{
  display:block;
  color:var(--muted);
  font-size:.56rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.synthesis-question strong{color:var(--blue-dark)}
.synthesis-why p,
.synthesis-question p{
  margin:5px 0 0;
  color:var(--soft-ink);
  font-size:.68rem;
  line-height:1.55;
}
.synthesis-evidence-refs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:12px 0 0 43px;
}
.synthesis-evidence-refs a,
.synthesis-evidence-refs button{
  min-height:27px;
  padding:0 8px;
  border:0;
  border-radius:7px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:.57rem;
  font-weight:800;
}
.synthesis-evidence-refs button{
  background:var(--green-soft);
  color:var(--green);
}
.evidence-highlight{
  box-shadow:0 0 0 3px rgba(54,87,255,.18)!important;
  transition:box-shadow .2s ease;
}

.growth-opportunities-area{
  display:grid;
  gap:16px;
  margin-top:28px;
}
.growth-launch{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:24px;
  border-color:#cfe5da;
  background:linear-gradient(135deg,#f3fbf7,#ffffff);
}
.growth-launch>div{max-width:760px}
.growth-launch h2{
  margin:6px 0 0;
  font:800 1.2rem/1.35 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.growth-launch p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.6;
}
.growth-launch .primary-button{flex:none}
.growth-opportunities-output{
  display:grid;
  gap:16px;
}
.growth-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:28px;
  border-radius:16px;
  background:linear-gradient(135deg,#103e32,#165844);
  color:#fff;
}
.growth-hero>div{max-width:820px}
.growth-hero h2{
  margin:8px 0 0;
  font:800 clamp(1.55rem,3vw,2.2rem)/1.14 "Manrope",sans-serif;
  letter-spacing:-.04em;
}
.growth-hero p{
  margin:9px 0 0;
  color:#d3ebe1;
  font-size:.76rem;
  line-height:1.65;
}
.growth-hero .secondary-button{
  flex:none;
  border-color:rgba(255,255,255,.35);
  background:transparent;
  color:#fff;
}
.growth-opportunities-panel{padding:24px}
.growth-opportunities-list{display:grid}
.growth-opportunity-card{
  padding:20px 0;
  border-top:1px solid var(--line-soft);
}
.growth-opportunity-card:first-child{border-top:0;padding-top:2px}
.growth-opportunity-top{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  gap:12px;
  align-items:start;
}
.growth-opportunity-number{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:8px;
  background:var(--green-soft);
  color:var(--green);
  font-size:.58rem;
  font-weight:800;
}
.growth-type{
  display:inline-flex;
  min-height:22px;
  align-items:center;
  padding:0 7px;
  border-radius:999px;
  background:#f1f3f6;
  color:#68758a;
  font-size:.52rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.growth-type-whitespace,
.growth-type-cross_sell,
.growth-type-expansion{
  background:var(--green-soft);
  color:var(--green);
}
.growth-type-decline,
.growth-type-retention{
  background:#fff1f0;
  color:#9b453e;
}
.growth-type-concentration{
  background:#fff6df;
  color:#8a5b00;
}
.growth-type-timing{
  background:var(--blue-soft);
  color:var(--blue-dark);
}
.growth-opportunity-card h3{
  margin:7px 0 0;
  font:800 .9rem/1.4 "Manrope",sans-serif;
  letter-spacing:-.02em;
}
.growth-hypothesis{
  margin:11px 0 0 46px;
  color:var(--soft-ink);
  font-size:.77rem;
  line-height:1.65;
}
.growth-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin:14px 0 0 46px;
}
.growth-detail-grid>div{
  padding:12px;
  border-radius:9px;
  background:#f7f8fa;
}
.growth-detail-grid>div:nth-child(3){
  background:var(--blue-soft);
}
.growth-detail-grid>div:nth-child(4){
  background:var(--green-soft);
}
.growth-detail-grid strong{
  display:block;
  color:var(--muted);
  font-size:.55rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.growth-detail-grid>div:nth-child(3) strong{color:var(--blue-dark)}
.growth-detail-grid>div:nth-child(4) strong{color:var(--green)}
.growth-detail-grid p{
  margin:5px 0 0;
  color:var(--soft-ink);
  font-size:.67rem;
  line-height:1.55;
}
.growth-opportunity-card .synthesis-evidence-refs{
  margin-left:46px;
}

.customer-command-center{
  display:grid;
  gap:16px;
  margin-top:26px;
  scroll-margin-top:20px;
}
.account-command-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:28px;
  padding:28px;
  border-radius:18px;
  background:var(--navy);
  color:#fff;
}
.account-command-hero>div:first-child{max-width:720px}
.account-command-hero h2{
  margin:7px 0 0;
  font:800 clamp(1.55rem,3vw,2.15rem)/1.15 "Manrope",sans-serif;
  letter-spacing:-.04em;
}
.account-command-hero p{
  margin:9px 0 0;
  max-width:680px;
  color:#cbd5e5;
  font-size:.76rem;
  line-height:1.6;
}
.account-command-actions{
  flex:none;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.account-command-hero .secondary-button{
  border-color:rgba(255,255,255,.34);
  background:transparent;
  color:#fff;
}
.account-command-hero .secondary-button:disabled{
  opacity:.5;
}
.account-status-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.account-status-card{
  min-width:0;
  min-height:118px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  text-align:left;
}
.account-status-card:hover{
  border-color:#c6cfdb;
  transform:translateY(-1px);
}
.account-status-card>div{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
}
.account-status-card strong{
  color:var(--ink);
  font:800 .69rem/1.4 "Manrope",sans-serif;
}
.account-status-card p{
  margin:12px 0 0;
  color:var(--muted);
  font-size:.59rem;
  line-height:1.5;
}
.account-status-pill{
  flex:none;
  display:inline-flex;
  align-items:center;
  min-height:21px;
  padding:0 6px;
  border-radius:999px;
  background:#f1f3f6;
  color:#6e7b8d;
  font-size:.48rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.account-status-card.status-current .account-status-pill{
  background:var(--green-soft);
  color:var(--green);
}
.account-status-card.status-stale{
  border-color:#efd9a5;
  background:#fffdf8;
}
.account-status-card.status-stale .account-status-pill{
  background:#fff3d5;
  color:#8a5b00;
}
.account-status-card.status-ready .account-status-pill{
  background:var(--blue-soft);
  color:var(--blue-dark);
}
.account-status-card.status-waiting{
  background:#fafbfc;
}
.account-command-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
  gap:16px;
}
.account-attention-panel,
.account-opportunity-panel,
.account-activity-panel{
  padding:22px;
}
.account-attention-list{
  display:grid;
}
.account-attention-item{
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:11px;
  width:100%;
  padding:13px 0;
  border:0;
  border-top:1px solid var(--line-soft);
  background:transparent;
  text-align:left;
}
.account-attention-item:first-child{
  border-top:0;
  padding-top:2px;
}
.account-attention-item>span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:8px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:.55rem;
  font-weight:800;
}
.account-attention-item small{
  display:block;
  color:var(--muted);
  font-size:.52rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.account-attention-item strong{
  display:block;
  margin-top:4px;
  color:var(--ink);
  font:800 .73rem/1.4 "Manrope",sans-serif;
}
.account-attention-item p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.64rem;
  line-height:1.52;
}
.account-opportunity-preview{
  display:grid;
}
.account-opportunity-item{
  display:grid;
  grid-template-columns:1fr;
  gap:4px;
  width:100%;
  padding:12px 0;
  border:0;
  border-top:1px solid var(--line-soft);
  background:transparent;
  text-align:left;
}
.account-opportunity-item:first-child{
  border-top:0;
  padding-top:2px;
}
.account-opportunity-item>span{
  color:var(--green);
  font-size:.52rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.account-opportunity-item>strong{
  color:var(--ink);
  font:800 .72rem/1.42 "Manrope",sans-serif;
}
.account-opportunity-item>small{
  color:var(--muted);
  font-size:.56rem;
  text-transform:capitalize;
}
.account-command-empty{
  padding:16px 0 4px;
}
.account-command-empty strong{
  display:block;
  color:var(--ink);
  font:800 .76rem/1.4 "Manrope",sans-serif;
}
.account-command-empty p{
  margin:6px 0 0;
  color:var(--muted);
  font-size:.64rem;
  line-height:1.55;
}
.account-activity-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:24px;
}
.account-activity-item{
  display:grid;
  grid-template-columns:10px minmax(0,1fr);
  gap:9px;
  padding:10px 0;
  border-top:1px solid var(--line-soft);
}
.account-activity-item:nth-child(-n+2){border-top:0}
.account-activity-item .activity-dot{
  margin-top:5px;
}
.account-activity-item strong{
  display:block;
  color:var(--soft-ink);
  font-size:.66rem;
  line-height:1.45;
}
.account-activity-item span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.56rem;
}

.account-plan-area{
  display:grid;
  gap:16px;
  margin-top:28px;
  scroll-margin-top:22px;
}
.account-plan-launch{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:24px;
  border-color:#d9dfeb;
  background:linear-gradient(135deg,#f8f9fb,#ffffff);
}
.account-plan-launch>div{max-width:780px}
.account-plan-launch h2{
  margin:6px 0 0;
  font:800 1.2rem/1.35 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.account-plan-launch p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.62;
}
.account-plan-launch .primary-button{flex:none}
.account-plan-editor{
  padding:24px;
}
.account-plan-heading-actions{
  display:flex;
  align-items:center;
  gap:8px;
}
.account-plan-executive-view{
  display:grid;
  gap:16px;
  margin-bottom:4px;
}
.executive-plan-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:24px;
  border-radius:14px;
  background:linear-gradient(135deg,#17243c,#223554);
  color:#fff;
}
.executive-plan-hero>div:first-child{max-width:720px}
.executive-plan-hero h2{
  margin:7px 0 0;
  font:800 clamp(1.5rem,3vw,2rem)/1.15 "Manrope",sans-serif;
  letter-spacing:-.035em;
}
.executive-plan-hero p{
  margin:7px 0 0;
  color:#ced8e7;
  font-size:.66rem;
  line-height:1.5;
}
.executive-plan-hero-actions{
  display:flex;
  align-items:flex-start;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.executive-plan-hero .secondary-button{
  border-color:rgba(255,255,255,.34);
  background:transparent;
  color:#fff;
}
.executive-freshness{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:0 9px;
  border-radius:999px;
  background:rgba(32,179,116,.16);
  color:#d8f7e7;
  font-size:.55rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.executive-freshness.needs-review{
  background:rgba(235,174,48,.16);
  color:#ffe7a8;
}
.executive-objective{
  padding:20px 22px;
  border:1px solid #d5dcff;
  border-radius:12px;
  background:var(--blue-soft);
}
.executive-objective p{
  margin:8px 0 0;
  color:var(--ink);
  font:800 1rem/1.5 "Manrope",sans-serif;
  letter-spacing:-.015em;
}
.executive-plan-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.executive-plan-block{
  padding:18px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.executive-plan-block>p{
  margin:8px 0 0;
  color:var(--soft-ink);
  font-size:.7rem;
  line-height:1.62;
  white-space:pre-line;
}
.executive-action-health{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:12px;
}
.executive-action-health>div{
  padding:11px 9px;
  border-radius:9px;
  background:#f6f8fa;
  text-align:center;
}
.executive-action-health strong{
  display:block;
  color:var(--ink);
  font:800 1rem/1 "Manrope",sans-serif;
}
.executive-action-health span{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:.51rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.executive-ranked-list{
  display:grid;
  margin-top:10px;
}
.executive-ranked-item{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:9px;
  align-items:start;
  padding:10px 0;
  border-top:1px solid var(--line-soft);
}
.executive-ranked-item:first-child{
  border-top:0;
  padding-top:0;
}
.executive-ranked-item>span,
.executive-action-number{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:7px;
  background:#f0f3f7;
  color:#647287;
  font-size:.51rem;
  font-weight:800;
}
.executive-ranked-item p{
  margin:2px 0 0;
  color:var(--soft-ink);
  font-size:.65rem;
  line-height:1.5;
}
.executive-next-actions{
  padding:18px;
}
.executive-plan-section-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.executive-plan-section-heading strong{
  display:block;
  margin-top:4px;
  color:var(--ink);
  font:800 .82rem/1.4 "Manrope",sans-serif;
}
.executive-action-list{
  display:grid;
  margin-top:10px;
}
.executive-action-item{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:11px 0;
  border-top:1px solid var(--line-soft);
}
.executive-action-item:first-child{border-top:0}
.executive-action-item strong{
  display:block;
  color:var(--ink);
  font-size:.68rem;
  line-height:1.45;
}
.executive-action-item p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:.56rem;
  line-height:1.4;
}
.executive-empty{
  margin:8px 0 0;
  color:var(--muted);
  font-size:.62rem;
  line-height:1.5;
}
.executive-plan-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 2px 0;
  border-top:1px solid var(--line-soft);
}
.executive-plan-footer p{
  margin:0;
  color:var(--muted);
  font-size:.59rem;
  line-height:1.45;
}

.account-plan-principle{
  margin:8px 0 20px;
  padding:15px 16px;
  border:1px solid #d5dcff;
  border-radius:11px;
  background:var(--blue-soft);
}
.account-plan-principle strong{
  display:block;
  color:var(--blue-dark);
  font:800 .75rem/1.4 "Manrope",sans-serif;
}
.account-plan-principle p{
  margin:5px 0 0;
  color:var(--soft-ink);
  font-size:.66rem;
  line-height:1.55;
}
.account-plan-evidence-update{
  display:grid;
  gap:13px;
  margin:0 0 20px;
  padding:16px;
  border:1px solid #efd9a5;
  border-radius:12px;
  background:#fffdf8;
}
.account-plan-evidence-update-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.account-plan-evidence-update-head>div{max-width:760px}
.account-plan-evidence-update-head h3{
  margin:5px 0 0;
  color:var(--ink);
  font:800 .92rem/1.4 "Manrope",sans-serif;
  letter-spacing:-.02em;
}
.account-plan-evidence-update-head p{
  margin:6px 0 0;
  color:var(--soft-ink);
  font-size:.65rem;
  line-height:1.55;
}
.account-plan-evidence-update-list{
  display:grid;
  border-top:1px solid #eee2c5;
}
.account-plan-evidence-update-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:11px 0;
  border-bottom:1px solid #eee2c5;
}
.account-plan-update-badge{
  display:inline-flex;
  align-items:center;
  min-height:23px;
  padding:0 7px;
  border-radius:999px;
  background:#fff3d5;
  color:#8a5b00;
  font-size:.5rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.account-plan-update-badge.refresh_required{
  background:#fff1f0;
  color:#9b453e;
}
.account-plan-evidence-update-row strong{
  display:block;
  color:var(--ink);
  font-size:.66rem;
}
.account-plan-evidence-update-row p{
  margin:3px 0 0;
  color:var(--muted);
  font-size:.58rem;
  line-height:1.45;
}
.account-plan-evidence-update-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.account-plan-evidence-update-footer p{
  margin:0;
  color:var(--muted);
  font-size:.58rem;
  line-height:1.45;
}
.account-status-card.status-review{
  border-color:#efd9a5;
  background:#fffdf8;
}
.account-status-card.status-review .account-status-pill{
  background:#fff3d5;
  color:#8a5b00;
}
.account-plan-form{
  display:grid;
  gap:16px;
}
.account-plan-form label{
  display:grid;
  gap:7px;
  color:var(--soft-ink);
  font-size:.66rem;
  font-weight:800;
}
.account-plan-form label>span{
  color:var(--muted);
  font-size:.57rem;
  font-weight:500;
  line-height:1.45;
}
.account-plan-form textarea{
  width:100%;
  min-height:96px;
  resize:vertical;
  padding:12px 13px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
  color:var(--ink);
  font:500 .7rem/1.55 "Inter",sans-serif;
}
.account-plan-form textarea:focus{
  outline:none;
  border-color:#9eabff;
  box-shadow:0 0 0 3px rgba(54,87,255,.1);
}
.account-plan-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.account-plan-footer{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding-top:16px;
  border-top:1px solid var(--line-soft);
}
.account-plan-footer>p{
  max-width:650px;
  margin:0;
  color:var(--muted);
  font-size:.61rem;
  line-height:1.5;
}
.account-plan-footer>div{
  flex:none;
  display:flex;
  gap:8px;
}

.account-actions-section{
  margin-top:24px;
  padding-top:22px;
  border-top:1px solid var(--line-soft);
}
.account-action-heading-actions{
  display:flex;
  align-items:center;
  gap:8px;
}
.account-action-candidates-wrap{
  margin-top:16px;
  padding:14px;
  border:1px solid #dce2ea;
  border-radius:11px;
  background:#fafbfc;
}
.account-action-candidates-wrap>strong{
  display:block;
  color:var(--ink);
  font:800 .72rem/1.4 "Manrope",sans-serif;
}
.account-action-candidates-wrap>p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.61rem;
  line-height:1.5;
}
.account-action-candidates{
  display:grid;
  gap:7px;
  margin-top:11px;
}
.account-action-candidate{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:9px 0;
  border-top:1px solid var(--line-soft);
}
.account-action-candidate:first-child{border-top:0}
.account-action-candidate>span{
  color:var(--soft-ink);
  font-size:.65rem;
  line-height:1.45;
}
.account-action-candidate .secondary-button{flex:none}
.account-action-form{
  display:grid;
  gap:13px;
  margin-top:16px;
  padding:16px;
  border:1px solid #d5dcff;
  border-radius:12px;
  background:#f8f9ff;
}
.account-action-form-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.account-action-form-heading>strong{
  color:var(--ink);
  font:800 .78rem/1.4 "Manrope",sans-serif;
}
.account-action-form label,
.account-action-card label{
  display:grid;
  gap:6px;
  color:var(--soft-ink);
  font-size:.61rem;
  font-weight:800;
}
.account-action-form textarea,
.account-action-form input,
.account-action-form select,
.account-action-card textarea,
.account-action-card input,
.account-action-card select{
  width:100%;
  min-height:39px;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  color:var(--ink);
  font:500 .65rem/1.5 "Inter",sans-serif;
}
.account-action-form textarea,
.account-action-card textarea{
  min-height:70px;
  resize:vertical;
}
.account-action-form textarea:focus,
.account-action-form input:focus,
.account-action-form select:focus,
.account-action-card textarea:focus,
.account-action-card input:focus,
.account-action-card select:focus{
  outline:none;
  border-color:#9eabff;
  box-shadow:0 0 0 3px rgba(54,87,255,.08);
}
.account-action-fields,
.account-action-card-fields{
  display:grid;
  grid-template-columns:1fr .8fr .8fr;
  gap:10px;
}
.account-action-form-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.account-action-form-footer .form-status{margin:0}
.account-actions-list{
  display:grid;
  gap:11px;
  margin-top:16px;
}
.account-action-card{
  display:grid;
  gap:11px;
  padding:15px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
}
.account-action-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.account-action-card-top>span:last-child{
  color:var(--muted);
  font-size:.56rem;
}
.account-action-status{
  display:inline-flex;
  align-items:center;
  min-height:23px;
  padding:0 7px;
  border-radius:999px;
  background:#f1f3f6;
  color:#657386;
  font-size:.52rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.action-status-in_progress{
  background:var(--blue-soft);
  color:var(--blue-dark);
}
.action-status-done{
  background:var(--green-soft);
  color:var(--green);
}
.action-status-blocked{
  background:#fff1f0;
  color:#9b453e;
}
.account-action-overdue{
  color:#9b453e!important;
  font-weight:800;
}
.account-action-text{
  min-height:64px!important;
  font-weight:700!important;
}
.account-action-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-top:9px;
  border-top:1px solid var(--line-soft);
}
.account-action-card-footer>span{
  color:var(--muted);
  font-size:.56rem;
}

.account-plan-evidence-links{
  display:grid;
  gap:7px;
  margin-top:2px;
  padding:10px 11px;
  border:1px solid #e1e6ed;
  border-radius:9px;
  background:#fafbfc;
}
.account-plan-evidence-entry{
  display:grid;
  gap:6px;
  padding-top:8px;
  border-top:1px solid var(--line-soft);
}
.account-plan-evidence-entry:first-child{
  padding-top:0;
  border-top:0;
}
.account-plan-evidence-statement{
  color:var(--soft-ink)!important;
  font-size:.56rem!important;
  font-weight:700!important;
  line-height:1.45!important;
}
.account-plan-evidence-chips{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
}
.account-plan-evidence-chips a,
.account-plan-evidence-chips button,
.account-plan-evidence-chips span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  max-width:100%;
  padding:0 7px;
  border:0;
  border-radius:6px;
  background:var(--blue-soft);
  color:var(--blue-dark);
  font-size:.53rem;
  font-weight:800;
  line-height:1.3;
  text-decoration:none;
}
.account-plan-evidence-chips button{
  cursor:pointer;
}
.account-plan-evidence-chips span.archived-evidence{
  background:#f0f2f5;
  color:#667386;
}
.account-plan-evidence-chips span.archived-evidence::after{
  content:" · original evidence";
  color:#8a95a5;
  font-weight:700;
}


.portfolio-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.portfolio-summary-card{
  min-height:136px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
}
.portfolio-summary-card strong{
  display:block;
  font:800 1.65rem/1 "Manrope",sans-serif;
  letter-spacing:-.04em;
}
.portfolio-summary-card span{
  display:block;
  margin-top:10px;
  color:var(--soft-ink);
  font-size:.66rem;
  font-weight:800;
}
.portfolio-summary-card p{
  margin:7px 0 0;
  color:var(--muted);
  font-size:.58rem;
  line-height:1.45;
}
.portfolio-attention-panel{padding:24px}
.portfolio-note{
  max-width:760px;
  margin:-4px 0 16px;
  color:var(--muted);
  font-size:.64rem;
  line-height:1.55;
}
.portfolio-account-list{display:grid;gap:10px}
.portfolio-account-card{
  width:100%;
  display:grid;
  gap:13px;
  padding:17px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--ink);
  text-align:left;
}
.portfolio-account-card:hover{
  border-color:#bcc7ff;
  box-shadow:0 8px 20px rgba(16,24,40,.045);
}
.portfolio-account-card.attention-high{
  border-left:4px solid #b42318;
}
.portfolio-account-card.attention-medium{
  border-left:4px solid #c48817;
}
.portfolio-account-card.attention-current{
  border-left:4px solid var(--green);
}
.portfolio-account-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.portfolio-account-top>div{min-width:0}
.portfolio-account-top strong{
  display:block;
  font:800 .86rem/1.35 "Manrope",sans-serif;
}
.portfolio-account-top p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.63rem;
  line-height:1.5;
}
.portfolio-attention-pill{
  flex:none;
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 8px;
  border-radius:999px;
  background:#f1f3f6;
  color:#657386;
  font-size:.53rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.portfolio-attention-pill.high{
  background:#fff1f0;
  color:#9b453e;
}
.portfolio-attention-pill.medium{
  background:#fff3d5;
  color:#8a5b00;
}
.portfolio-attention-pill.current{
  background:var(--green-soft);
  color:var(--green);
}
.portfolio-signal-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.portfolio-signal{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 7px;
  border-radius:7px;
  background:#f0f2f5;
  color:#657386;
  font-size:.53rem;
  font-weight:800;
}
.portfolio-signal.signal-blocked,
.portfolio-signal.signal-overdue{
  background:#fff1f0;
  color:#9b453e;
}
.portfolio-signal.signal-evidence,
.portfolio-signal.signal-planning,
.portfolio-signal.signal-follow_through{
  background:#fff3d5;
  color:#8a5b00;
}
.portfolio-signal.signal-current{
  background:var(--green-soft);
  color:var(--green);
}
.portfolio-coaching-focus{
  padding:12px 13px;
  border:1px solid #e3e7ee;
  border-radius:9px;
  background:#fafbfc;
}
.portfolio-coaching-focus span{
  display:block;
  color:var(--blue-dark);
  font-size:.52rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.portfolio-coaching-focus p{
  margin:5px 0 0;
  color:var(--soft-ink);
  font-size:.63rem;
  line-height:1.5;
}
.portfolio-account-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding-top:2px;
  color:var(--muted);
  font-size:.56rem;
}
.portfolio-account-footer span:last-child{
  flex:none;
  color:var(--blue-dark);
  font-weight:800;
}

@media(max-width:900px){
  .action-grid.has-leader-card{grid-template-columns:1fr 1fr}
  .portfolio-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-command-grid{grid-template-columns:1fr}
  .hypothesis-grid{grid-template-columns:1fr}
  .ai-dashboard-grid{grid-template-columns:1fr}
  .dashboard-guidance{display:grid}
  .dashboard-lock-status{min-width:0}
  .analysis-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .analysis-charts{grid-template-columns:1fr}
  .field-mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .meeting-question-grid{grid-template-columns:1fr}
  .brief-two-column{grid-template-columns:1fr}
  .company-facts{grid-template-columns:1fr}
  .sidebar{width:188px;padding-left:12px;padding-right:12px}
  .portal-main{margin-left:188px}
  .portal-view{width:min(calc(100% - 40px),1080px)}
  .home-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  /* Mobile workspace hardening */
  html,body{
    width:100%;
    max-width:100%;
    overflow-x:clip;
    overscroll-behavior-x:none;
    touch-action:pan-y;
  }
  .portal-app,
  .portal-main{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:clip;
    overscroll-behavior-x:none;
  }
  html,body{max-width:100%}
  .portal-app,.portal-main,.portal-view,
  .customer-command-center,.customer-research-area,
  .customer-brief-output,.analysis-output,.ai-dashboard-grid,
  .panel,.brief-section,.brief-summary,
  .growth-opportunities-panel,.synthesis-output,
  .account-plan-area{min-width:0;max-width:100%}

  /* Never let long URLs, generated copy, or flex/grid min-content widen the viewport. */
  .brief-hero>div,
  .brief-summary,
  .company-facts,
  .company-fact,
  .brief-section,
  .brief-list,
  .brief-list-item,
  .brief-item-heading,
  .hypothesis-grid,
  .hypothesis-card,
  .meeting-launch,
  .meeting-launch>div,
  .meeting-brief-hero>div,
  .growth-hero>div,
  .growth-opportunity-card,
  .growth-opportunity-top,
  .growth-opportunity-top>div,
  .growth-detail-grid,
  .synthesis-hero>div,
  .synthesis-observation-card,
  .account-command-hero>div,
  .account-command-grid,
  .account-command-grid>*,
  .account-status-card,
  .analysis-hero>div,
  .ai-dashboard-card,
  .ai-chart-heading>div{
    min-width:0;
    max-width:100%;
  }

  .brief-hero p,
  .brief-summary>p,
  .company-fact strong,
  .brief-list-item h3,
  .brief-list-item>p,
  .section-note,
  .hypothesis-card,
  .hypothesis-card p,
  .meeting-launch,
  .meeting-launch p,
  .growth-hypothesis,
  .growth-detail-grid p,
  .synthesis-observation-copy,
  .synthesis-why,
  .synthesis-question,
  .account-command-hero p,
  .account-status-card p,
  .ai-chart-heading h2,
  .ai-chart-heading p,
  .ai-chart-evidence,
  .ai-chart-insight p,
  .ai-chart-guidance li{
    overflow-wrap:anywhere;
    word-break:break-word;
  }

  .primary-button,
  .secondary-button{
    max-width:100%;
    white-space:normal;
    text-align:center;
    line-height:1.25;
    padding-top:10px;
    padding-bottom:10px;
  }
  .portal-view{
    width:calc(100% - 24px);
    padding:22px 0 38px;
  }
  .portal-topbar{
    padding-left:max(14px,env(safe-area-inset-left));
    padding-right:max(14px,env(safe-area-inset-right));
  }
  .workspace-hero{margin-top:20px;max-width:100%}
  .workspace-hero h1{
    font-size:clamp(1.7rem,8vw,2.2rem);
    line-height:1.08;
    overflow-wrap:anywhere;
  }
  .workspace-hero p{font-size:.78rem;line-height:1.55}
  .panel{padding:20px}
  .panel-heading{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
  }
  .primary-button,.secondary-button,
  .chart-lock-button,.chart-retry-button{
    min-height:44px;
  }
  .back-button,.text-button{
    min-height:44px;
    display:inline-flex;
    align-items:center;
  }
  .customer-workspace-analytics,
  .customer-research-area,
  .meeting-brief-area,
  .synthesis-area,
  .growth-opportunities-area,
  .account-plan-area{scroll-margin-top:72px}
  .account-command-hero,
  .brief-hero,.analysis-hero,
  .meeting-brief-hero,.growth-hero,.synthesis-hero,
  .executive-plan-hero{
    padding:20px;
    border-radius:14px;
  }
  .account-command-hero h2,
  .brief-hero h2,
  .analysis-hero h2{
    font-size:clamp(1.45rem,7vw,1.9rem);
    overflow-wrap:anywhere;
  }
  .account-command-hero p,
  .brief-hero p,
  .analysis-hero p{font-size:.74rem;line-height:1.55}
  .account-command-actions,
  .brief-hero-actions,
  .analysis-hero-actions,
  .executive-plan-hero-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  .account-command-actions .primary-button,
  .account-command-actions .secondary-button,
  .brief-hero-actions .primary-button,
  .brief-hero-actions .secondary-button,
  .analysis-hero-actions .primary-button,
  .analysis-hero-actions .secondary-button,
  .executive-plan-hero-actions .primary-button,
  .executive-plan-hero-actions .secondary-button,
  .meeting-launch .primary-button,
  .meeting-launch .secondary-button,
  .growth-launch .primary-button,
  .growth-launch .secondary-button,
  .synthesis-launch .primary-button,
  .synthesis-launch .secondary-button{
    width:100%;
    min-width:0;
  }
  .brief-summary,.brief-section,
  .growth-opportunities-panel{padding:18px}
  .brief-summary>h2{font-size:1.3rem}
  .brief-summary>p,
  .brief-list-item>p,
  .hypothesis-card>p,
  .growth-hypothesis,
  .growth-detail-grid p{font-size:.74rem}
  .brief-item-heading{display:grid;gap:6px}
  .brief-item-heading>span{justify-self:start}
  .source-card{
    grid-template-columns:28px minmax(0,1fr) 14px;
    align-items:start;
  }
  .source-copy strong,
  .source-copy span{
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    overflow-wrap:anywhere;
  }
  .evidence-refs,
  .account-plan-evidence-chips{gap:7px}
  .evidence-refs a,
  .evidence-refs button,
  .account-plan-evidence-chips a,
  .account-plan-evidence-chips button,
  .account-plan-evidence-chips span{
    min-height:30px;
    padding:5px 10px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    width:auto;
    max-width:100%;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    overflow-wrap:normal;
    line-height:1.1;
  }
  .research-input-panel{padding:20px}
  .workspace-dropzone{
    min-height:190px;
    padding:24px 16px;
  }
  .workspace-dropzone p{font-size:.7rem}
  .analysis-hero-actions{justify-content:stretch}
  .dashboard-guidance{
    gap:12px;
    padding:18px;
  }
  .ai-dashboard-card{padding:18px}
  .ai-chart-heading{
    display:grid;
    gap:8px;
    margin-bottom:14px;
  }
  .ai-chart-heading h2{font-size:1rem}
  .ai-chart-heading p{font-size:.7rem;line-height:1.5}
  .locked-badge{justify-self:start}
  .ai-chart-evidence{font-size:.61rem}
  .ai-chart-insight{padding:12px}
  .ai-chart-insight>p{font-size:.72rem}
  .ai-chart-guidance summary{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    font-size:.7rem;
  }
  .ai-chart-guidance summary::after{float:none;flex:none}
  .ai-chart-guidance ul{
    padding-left:20px;
    font-size:.69rem;
    line-height:1.6;
  }
  .ai-chart-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .ai-chart-actions button{width:100%;min-height:44px}
  .pie-chart{margin-inline:auto}
  .pie-legend{width:100%}
  .bar-row{
    grid-template-columns:minmax(0,1fr) auto;
    gap:6px 10px;
  }
  .bar-label{
    min-width:0;
    font-size:.65rem;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .bar-track{grid-column:1/-1;grid-row:2}
  .bar-row>strong{font-size:.64rem}
  .line-chart-labels{gap:5px}
  .line-chart-labels span{font-size:.52rem}
  .modal{
    place-items:end center;
    padding:0;
  }
  .modal-card{
    width:100%;
    max-height:min(88dvh,calc(100dvh - 12px));
    padding:24px 18px calc(22px + env(safe-area-inset-bottom));
    border-radius:18px 18px 0 0;
  }
  .modal-close{
    width:40px;
    height:40px;
  }
  .account-drawer{
    width:100%;
    height:100dvh;
    padding:24px 18px calc(24px + env(safe-area-inset-bottom));
  }
  .toast{
    max-width:calc(100% - 28px);
    bottom:calc(76px + env(safe-area-inset-bottom));
    text-align:center;
  }
  .action-grid.has-leader-card{grid-template-columns:1fr}
  .portfolio-summary{grid-template-columns:1fr}
  .portfolio-summary-card{min-height:0}
  .portfolio-account-top{display:grid}
  .portfolio-attention-pill{justify-self:start}
  .portfolio-account-footer{display:grid}
  .account-plan-heading-actions{align-items:flex-start}
  .executive-plan-hero{display:grid}
  .executive-plan-hero-actions{justify-content:flex-start}
  .executive-plan-grid{grid-template-columns:1fr}
  .executive-action-health{grid-template-columns:repeat(2,minmax(0,1fr))}
  .executive-plan-footer{display:grid}
  .executive-plan-footer .primary-button{width:100%}
  .account-plan-evidence-update-head,
  .account-plan-evidence-update-footer{display:grid}
  .account-plan-evidence-update-row{grid-template-columns:auto minmax(0,1fr)}
  .account-plan-evidence-update-row .secondary-button{grid-column:1/-1;width:100%}
  .account-action-heading-actions{align-items:flex-start}
  .account-action-candidate{align-items:flex-start}
  .account-action-fields,
  .account-action-card-fields{grid-template-columns:1fr}
  .account-action-form-footer,
  .account-action-card-footer{display:grid}
  .account-action-card-footer .secondary-button{width:100%}
  .account-plan-launch{display:grid}
  .account-plan-launch .primary-button{width:100%}
  .account-plan-grid{grid-template-columns:1fr}
  .account-plan-footer{display:grid}
  .account-plan-footer>div{width:100%}
  .account-plan-footer .primary-button,
  .account-plan-footer .secondary-button{flex:1}
  .account-command-hero{display:grid;padding:22px}
  .account-command-actions{justify-content:flex-start}
  .account-command-actions .primary-button,
  .account-command-actions .secondary-button{width:100%}
  .account-status-grid{grid-template-columns:1fr}
  .account-status-card{min-height:0}
  .account-activity-list{grid-template-columns:1fr}
  .account-activity-item:nth-child(2){border-top:1px solid var(--line-soft)}
  .research-grid{grid-template-columns:1fr}
  .growth-launch{display:grid}
  .growth-launch .primary-button{width:100%}
  .growth-hero{display:grid}
  .growth-opportunity-top{grid-template-columns:34px minmax(0,1fr)}
  .growth-opportunity-top .confidence-pill{grid-column:2}
  .growth-hypothesis,
  .growth-detail-grid,
  .growth-opportunity-card .synthesis-evidence-refs{margin-left:0}
  .growth-detail-grid{grid-template-columns:1fr}
  .synthesis-launch{display:grid}
  .synthesis-launch .primary-button{width:100%}
  .synthesis-hero{display:grid}
  .synthesis-observation-top{grid-template-columns:32px minmax(0,1fr)}
  .synthesis-observation-top .confidence-pill{grid-column:2}
  .synthesis-observation-copy,
  .synthesis-why,
  .synthesis-question,
  .synthesis-evidence-refs{margin-left:0}
  .pie-chart-wrap{grid-template-columns:1fr}
  .analysis-reupload-note{display:grid}
  .analysis-reupload-note .secondary-button{width:100%}
  .analysis-hero-actions{justify-content:flex-start}
  .analysis-component-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .component-action{width:100%}
  .analysis-kpis{grid-template-columns:1fr}
  .field-mapping-grid{grid-template-columns:1fr}
  .analysis-hero{display:grid}
  .meeting-launch{display:grid}
  .meeting-launch .primary-button{width:100%}
  .meeting-brief-hero{display:grid}
  .brief-hero-actions{justify-content:flex-start}
  .company-context-card{display:grid}
  .company-context-card .secondary-button{width:100%}
  .research-submit-row{display:grid}
  .research-submit-row .primary-button{width:100%}
  .brief-hero{display:grid}
  .brief-hero .secondary-button{justify-self:start}
  .sidebar{
    inset:auto 0 0 0;
    width:auto;
    height:calc(62px + env(safe-area-inset-bottom));
    flex-direction:row;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom));
    border-top:1px solid var(--line);
    border-right:0;
  }
  .sidebar-logo,.sidebar-footer{display:none}
  .portal-nav{
    width:100%;
    min-width:0;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:3px;
  }
  .portal-nav.has-portfolio{grid-template-columns:repeat(5,minmax(0,1fr))}
  .nav-item{
    min-height:48px;
    justify-content:center;
    flex-direction:column;
    gap:3px;
    padding:3px;
    font-size:.56rem;
  }
  .nav-mark{
    width:24px;
    height:24px;
    font-size:0;
    background:transparent;
  }
  .nav-mark svg{width:19px;height:19px}
  .nav-item.active .nav-mark{background:transparent}
  .portal-main{
    margin-left:0;
    padding-bottom:calc(62px + env(safe-area-inset-bottom));
  }
  .portal-topbar{
    height:56px;
    padding-left:max(14px,env(safe-area-inset-left));
    padding-right:max(14px,env(safe-area-inset-right));
    justify-content:space-between;
  }
  .mobile-section-label{display:block;color:var(--soft-ink);font-size:.72rem;font-weight:700}
  .portal-view{width:calc(100% - 24px);padding:22px 0 38px}
  .hero-row,.section-header{display:block}
  .hero-row>.secondary-button,.section-header>.primary-button{margin-top:18px}
  .action-grid{grid-template-columns:1fr}
  .action-card{min-height:190px}
  .home-grid{grid-template-columns:1fr}
  .auth-logo{top:20px;left:20px}
  .auth-logo img{width:136px}
  .auth-view{padding-top:90px}
  .auth-panel{padding:26px 22px}
}
@media(max-width:430px){
  /* Compact phone refinements */
  .portal-view{width:calc(100% - 20px);padding-top:18px}
  .portal-topbar{height:52px}
  .panel{padding:16px}
  .account-command-hero,
  .brief-hero,.analysis-hero,
  .meeting-brief-hero,.growth-hero,.synthesis-hero,
  .executive-plan-hero{padding:18px}
  .account-status-card{padding:13px}
  .research-input-panel{padding:16px}
  .brief-summary,.brief-section,
  .growth-opportunities-panel{padding:16px}
  .analysis-hero h2{font-size:1.35rem}
  .dashboard-guidance{padding:16px}
  .ai-dashboard-card{padding:16px}
  .pie-chart{width:126px;height:126px}
  .line-chart-labels span{display:none}
  .line-chart-labels span:first-child,
  .line-chart-labels span:last-child,
  .line-chart-labels span:nth-child(4n+1){display:block}
  .nav-item{font-size:.52rem}
  .nav-mark{width:22px;height:22px}
  .nav-mark svg{width:18px;height:18px}
  .workspace-item{grid-template-columns:34px minmax(0,1fr) 16px}
  .workspace-time{display:none}
  .modal{padding:0}
  .modal-card{
    padding:22px 18px calc(20px + env(safe-area-inset-bottom));
  }
  .modal-actions{display:grid;grid-template-columns:1fr}
  .modal-actions .primary-button,.modal-actions .secondary-button{width:100%}
}
/* Wallet is a full workspace surface, not an account drawer. */
.topbar-wallet{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-left:auto;
  margin-right:12px;
  padding:9px 13px;
  min-height:36px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--ink);
  font-size:.7rem;
  font-weight:800;
  white-space:nowrap;
}
.topbar-wallet:hover{border-color:#aebdff;background:var(--blue-soft)}
.topbar-wallet svg{width:16px;height:16px;flex:none;color:var(--blue-dark)}
.wallet-page-header{align-items:flex-end}
.wallet-page-header .secondary-button{flex:none}
.wallet-layout{width:100%;max-width:950px;margin-top:28px}
#view-wallet .wallet-panel{
  margin:0;
  padding:clamp(20px,4vw,36px);
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 28px rgba(16,24,40,.035);
}
#view-wallet .wallet-heading{align-items:center}
#view-wallet .wallet-heading h3{font-size:1.1rem}
#view-wallet #wallet-balance{
  font:800 clamp(1.8rem,3.5vw,2.7rem)/1.1 "Manrope",sans-serif;
}
#view-wallet .wallet-meta{justify-content:flex-start;gap:14px;font-size:.74rem;margin-top:14px}
#view-wallet .wallet-note{max-width:580px;font-size:.75rem;line-height:1.6;margin-top:16px}
#view-wallet .wallet-topups{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:24px;
}
#view-wallet .wallet-topup-button{
  border-radius:11px;
  min-height:50px;
  font-size:.86rem;
}
#view-wallet #wallet-status{font-size:.76rem;margin-top:12px}
#view-wallet .wallet-limit-form,
#view-wallet .wallet-pricing,
#view-wallet .wallet-auto-reload,
#view-wallet .wallet-history{
  margin-top:28px;
  padding-top:22px;
  border-top:1px solid var(--line-soft);
}
#view-wallet .wallet-limit-form{max-width:480px}
#view-wallet .wallet-limit-form>label{font-size:.82rem}
#view-wallet .wallet-limit-form>label>span{font-size:.7rem}
#view-wallet .wallet-pricing-head strong,
#view-wallet .wallet-history>strong{font-size:.85rem}
#view-wallet .wallet-pricing-head span{font-size:.7rem}
#view-wallet .wallet-price-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:32px;
  margin-top:10px;
}
#view-wallet .wallet-price-row{font-size:.75rem;padding:12px 0;border-bottom:1px solid var(--line-soft)}
#view-wallet .wallet-price-row strong{font-size:.74rem}
#view-wallet .wallet-auto-reload strong{font-size:.82rem}
#view-wallet .wallet-auto-reload p{font-size:.73rem}
#view-wallet .wallet-auto-reload>span{font-size:.65rem}
#view-wallet .wallet-transaction{padding:13px 0}
#view-wallet .wallet-transaction>div strong,
#view-wallet .wallet-transaction>strong{font-size:.76rem}
#view-wallet .wallet-transaction>div span{font-size:.68rem}
#view-wallet .wallet-empty{font-size:.75rem;padding:14px 0}

/* Checkout is contained in the app, while sensitive payment fields belong to Stripe. */
.wallet-checkout-card{
  width:min(100%,620px);
  max-height:min(94vh,900px);
  padding:clamp(20px,3vw,30px);
  overflow-y:auto;
  overscroll-behavior:contain;
}
.wallet-checkout-card h2{margin:8px 45px 0 0;font:800 1.5rem/1.2 "Manrope",sans-serif}
.wallet-checkout-intro{font-size:.76rem;color:var(--muted);line-height:1.6}
.wallet-checkout-status{
  margin:10px 0 0;
  color:var(--soft-ink);
  font-size:.78rem;
  line-height:1.5;
  min-height:16px;
}
.wallet-checkout-status.success{color:var(--green);font-weight:800}
.wallet-checkout-host{margin-top:14px;min-height:200px}
.wallet-checkout-host[hidden]{display:none}
.wallet-checkout-done{margin-top:20px;width:100%}
@media(max-width:700px){
  .portal-nav,
  .portal-nav.has-portfolio{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
  .portal-nav.has-portfolio{grid-template-columns:repeat(6,minmax(0,1fr))}
  .topbar-wallet{margin-right:10px;padding:8px 10px;font-size:.69rem}
  .wallet-page-header .secondary-button{margin-top:16px}
  #view-wallet .wallet-panel{padding:20px}
  #view-wallet .wallet-heading{align-items:flex-start}
  #view-wallet #wallet-balance{font-size:1.55rem}
  #view-wallet .wallet-topups{grid-template-columns:repeat(2,minmax(0,1fr))}
  #view-wallet .wallet-price-list{grid-template-columns:1fr}
  .wallet-checkout-card{width:100%;max-height:100dvh;border-radius:16px 16px 0 0}
  #wallet-checkout-modal{align-items:end}
}
@media(max-width:430px){
  .portal-nav .nav-item{font-size:.49rem;padding:2px;gap:1px}
  .topbar-wallet{font-size:.65rem}
  #view-wallet .wallet-meta{flex-wrap:wrap}
  #view-wallet .wallet-heading{display:grid;gap:14px}
}

/* Native settings screen inspired by familiar in-app settings navigation. */
.settings-layout{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:42px;
  align-items:start;
  margin-top:32px;
}
.settings-side{
  display:grid;
  gap:5px;
  padding:8px;
  border-radius:14px;
  background:#fff;
  border:1px solid var(--line);
}
.settings-nav-item{
  width:100%;
  border:0;
  background:transparent;
  text-align:left;
  color:var(--soft-ink);
  font-weight:700;
  font-size:.8rem;
  padding:12px 14px;
  border-radius:9px;
}
.settings-nav-item:hover{background:#f6f7fa}
.settings-nav-item.active{background:var(--blue-soft);color:var(--blue-dark)}
.settings-content{min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 28px;min-height:340px}
.settings-section h2{font:800 1.4rem/1.3 "Manrope",sans-serif;margin:0 0 20px}
.settings-description{margin:-10px 0 20px;color:var(--soft-ink);font-size:.77rem;line-height:1.6}
.settings-option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 0;
  border-top:1px solid var(--line-soft);
}
.settings-option>div{min-width:0}
.settings-option strong{font-size:.8rem}
.settings-option p{margin:5px 0 0;color:var(--muted);font-size:.72rem;line-height:1.5}
.settings-option .secondary-button{flex:none}
.settings-muted{font-size:.72rem;color:var(--muted)}
.settings-action-link{display:inline-flex;align-items:center;justify-content:center}
.settings-account-identity{margin:0 0 20px}
.wallet-usage-policy{max-width:760px;margin:12px 0 0;color:var(--soft-ink);font-size:.75rem;line-height:1.6}
.wallet-usage-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.wallet-usage-summary>div{padding:16px 18px;background:#f6f8fc;border:1px solid var(--line-soft);border-radius:12px}
.wallet-usage-summary span{display:block;color:var(--muted);font-size:.7rem;margin-bottom:6px}
.wallet-usage-summary strong{font:800 1.25rem/1.3 "Manrope",sans-serif}
.wallet-usage-head{margin:22px 0 6px}
.wallet-usage-events{display:grid;gap:0}
.wallet-usage-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  padding:13px 0;
  border-top:1px solid var(--line-soft);
}
.wallet-usage-row>div{min-width:0}
.wallet-usage-row strong{font-size:.78rem}
.wallet-usage-row>div span{display:block;margin-top:5px;font-size:.68rem;color:var(--muted);line-height:1.5}
.wallet-usage-row>strong{white-space:nowrap;font-size:.78rem}
.wallet-usage-row .wallet-unpriced{color:var(--muted)}
@media(max-width:800px){
  .settings-layout{grid-template-columns:170px minmax(0,1fr);gap:16px}
  .settings-content{padding:20px}
}
@media(max-width:700px){
  .settings-layout{grid-template-columns:1fr;gap:16px;margin-top:20px}
  .settings-side{grid-template-columns:repeat(2,minmax(0,1fr))}
  .settings-nav-item{text-align:center;font-size:.7rem}
  .settings-option{align-items:flex-start;flex-wrap:wrap;gap:12px}
  .wallet-usage-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .wallet-usage-summary{gap:8px}
  .wallet-usage-summary>div{padding:12px}
  .wallet-usage-summary strong{font-size:1.05rem}
}
/* Customer story navigation: compact on phones, full-width on desktop. */
#workspace-detail .customer-stage[hidden],
#workspace-detail .customer-journey[hidden],
#workspace-detail .customer-journey-intro[hidden],
#workspace-detail .research-input-panel[hidden],
#workspace-detail .analysis-upload-panel[hidden]{display:none!important}
.customer-journey{
  position:sticky;
  top:64px;
  z-index:19;
  margin-top:22px;
  background:rgba(243,245,247,.97);
  border-bottom:1px solid var(--line);
  padding:8px 0 9px;
  backdrop-filter:blur(14px);
}
.customer-journey-nav{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:6px;
}
.customer-step{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:3px;
  min-height:60px;
  padding:10px 14px;
  border:1px solid transparent;
  border-radius:12px;
  color:var(--soft-ink);
  background:transparent;
  text-align:left;
  cursor:pointer;
  transition:background .15s,border-color .15s;
}
.customer-step:hover{background:#fff;border-color:var(--line)}
.customer-step.active{
  background:#fff;
  border-color:#b8c9fc;
  box-shadow:0 2px 9px rgba(14,38,96,.045);
  color:var(--blue-dark);
}
.customer-step:focus-visible,.customer-journey-next:focus-visible{
  outline:3px solid #6585fa;
  outline-offset:2px;
}
.customer-step-label{font-size:.81rem;font-weight:800;line-height:1.25}
.customer-step .step-narrow{display:none}
.customer-step small{
  font-size:.63rem;
  font-weight:600;
  line-height:1.3;
  color:var(--muted);
}
.customer-step.is-complete small{color:var(--green)}
.customer-step.active small{color:var(--blue-dark)}
.customer-journey-intro{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:24px 0 8px;
  scroll-margin-top:156px;
}
.customer-journey-intro h2{
  margin:5px 0 0;
  font:800 clamp(1.18rem,2.4vw,1.5rem)/1.25 "Manrope",sans-serif;
  letter-spacing:-.025em;
}
.customer-journey-intro p{
  max-width:720px;
  margin:6px 0 0;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.55;
}
.customer-journey-next{
  flex:none;
  padding:11px 15px;
  border:1px solid #c5d1e2;
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  font-size:.73rem;
  font-weight:800;
}
.customer-journey-next:hover{border-color:var(--blue-dark);color:var(--blue-dark)}
.customer-journey-next span{margin-left:5px}
#workspace-detail .customer-stage{
  margin-top:14px;
  scroll-margin-top:158px;
}
#workspace-detail .customer-stage .panel{min-width:0}
.customer-activity-details,
.customer-research-details,
.dashboard-refine-details{
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
.customer-activity-details>summary,
.customer-research-details>summary,
.dashboard-refine-details>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:15px 18px;
  color:var(--ink);
  font-weight:800;
  font-size:.78rem;
  cursor:pointer;
  list-style:none;
}
.customer-activity-details>summary::-webkit-details-marker,
.customer-research-details>summary::-webkit-details-marker,
.dashboard-refine-details>summary::-webkit-details-marker{display:none}
.customer-activity-details>summary::after,
.customer-research-details>summary::after,
.dashboard-refine-details>summary::after{
  content:"⌄";
  font-size:1.15rem;
  color:var(--muted);
}
.customer-activity-details[open]>summary::after,
.customer-research-details[open]>summary::after,
.dashboard-refine-details[open]>summary::after{content:"⌃"}
.customer-activity-details>summary span,
.customer-research-details>summary span,
.dashboard-refine-details>summary span{
  margin-left:auto;
  color:var(--muted);
  font-weight:500;
  font-size:.65rem;
}
.customer-activity-details>.account-activity-panel{border:0;border-top:1px solid var(--line-soft);border-radius:0}
.customer-research-details-content{
  display:grid;
  gap:16px;
  padding:0 16px 18px;
}
.customer-research-details-content>.panel:first-child{margin-top:12px}
.dashboard-refine-details .dashboard-guidance{
  border:0;
  border-top:1px solid var(--line-soft);
  border-radius:0;
}
#analysis-area.has-saved-dashboard{display:flex;flex-direction:column}
#analysis-area.has-saved-dashboard #analysis-output{order:-1}
#analysis-area .analysis-output{scroll-margin-top:158px}
#workspace-detail [id^="brief-"],
#workspace-detail #account-plan-editor,
#workspace-detail #meeting-brief-output,
#workspace-detail #account-plan-evidence-update,
#workspace-detail #growth-opportunities-area{scroll-margin-top:158px}
@media(max-width:700px){
  #workspace-detail.portal-view{
    padding-top:14px;
  }
  #workspace-detail .workspace-hero{
    margin-top:10px;
  }
  #workspace-detail .workspace-hero h1{
    font-size:clamp(1.45rem,6.4vw,1.95rem);
    line-height:1.16;
  }
  #workspace-detail .workspace-hero p{margin-top:5px;font-size:.68rem}
  #workspace-detail #workspace-back{font-size:.68rem}
  .customer-journey{
    top:56px;
    margin-top:13px;
    padding:6px 0;
  }
  .customer-journey-nav{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:3px;
    padding:1px 0 2px;
  }
  .customer-step{
    position:relative;
    min-width:0;
    min-height:48px;
    align-items:center;
    padding:8px 2px;
    border-radius:9px;
    text-align:center;
  }
  .customer-step-label{font-size:.66rem}
  .customer-step small{display:none}
  .customer-step.is-complete::after{
    content:"";
    position:absolute;
    top:5px;
    right:6px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--green);
  }
  .customer-step .step-wide{display:none}
  .customer-step .step-narrow{display:inline}
  .customer-journey-intro{
    display:grid;
    gap:10px;
    padding:16px 1px 2px;
    scroll-margin-top:132px;
  }
  .customer-journey-intro h2{font-size:1.16rem}
  .customer-journey-intro p{font-size:.71rem}
  .customer-journey-next{
    width:100%;
    min-height:44px;
    text-align:center;
    font-size:.74rem;
  }
  #workspace-detail .customer-stage{margin-top:10px;scroll-margin-top:132px}
  #workspace-detail .customer-command-center{gap:11px}
  #workspace-detail .account-command-hero{padding:17px}
  #workspace-detail .account-command-hero h2{font-size:1.22rem}
  #workspace-detail .account-command-hero p{font-size:.71rem}
  #workspace-detail .account-status-grid{gap:7px}
  #workspace-detail .account-status-card{min-height:0;padding:10px}
  #workspace-detail .account-command-grid{gap:10px}
  #workspace-detail .customer-research-area,
  #workspace-detail .analysis-area,
  #workspace-detail .customer-synthesis-area,
  #workspace-detail .growth-opportunities-area,
  #workspace-detail .account-plan-area{gap:10px}
  .customer-research-details-content{padding:0 10px 10px;gap:10px}
  .dashboard-refine-details .dashboard-guidance{display:grid;gap:12px;padding:14px}
  .dashboard-refine-details .dashboard-lock-status{min-width:0}
  .customer-activity-details>summary,
  .customer-research-details>summary,
  .dashboard-refine-details>summary{padding:13px 12px;font-size:.73rem}
  .customer-research-details>summary span{display:none}
}
@media(max-width:430px){
  .customer-step-label{font-size:.61rem}
  .customer-journey{top:52px}
  .customer-journey-intro{scroll-margin-top:128px}
  #workspace-detail .customer-stage{scroll-margin-top:128px}
}
/* The same five chapter buttons become the ONE bottom navigation on
   mobile customer workspaces. Desktop keeps its inline customer navigation. */
.customer-step-icon{display:none}
@media(max-width:700px){
  .sidebar.customer-context{display:none!important}
  #workspace-detail.customer-context .workspace-hero,
  #workspace-detail.customer-context #customer-journey-intro{
    display:none!important;
  }
  #workspace-detail.customer-context .customer-journey{
    position:fixed;
    z-index:35;
    top:auto;
    bottom:0;
    left:0;
    right:0;
    width:100%;
    height:calc(62px + env(safe-area-inset-bottom));
    margin:0;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom));
    border:0;
    border-top:1px solid var(--line);
    border-radius:0;
    background:#fff;
    box-shadow:0 -6px 18px rgba(17,27,45,.035);
  }
  #workspace-detail.customer-context .customer-journey-nav{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    width:100%;
    height:100%;
    gap:3px;
    padding:0;
  }
  #workspace-detail.customer-context .customer-step{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-width:0;
    min-height:48px;
    gap:3px;
    padding:3px 1px;
    border:0;
    border-radius:12px;
    box-shadow:none;
    background:transparent;
    color:#536176;
    text-align:center;
  }
  #workspace-detail.customer-context .customer-step:hover{background:#f5f7f9}
  #workspace-detail.customer-context .customer-step.active{
    background:var(--blue-soft);
    color:var(--blue-dark);
  }
  #workspace-detail.customer-context .customer-step-icon{
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
  }
  #workspace-detail.customer-context .customer-step-icon svg{
    display:block;
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
  }
  #workspace-detail.customer-context .customer-step-label{font-size:.57rem;font-weight:800;line-height:1.2}
  #workspace-detail.customer-context .customer-step small{display:none}
  #workspace-detail.customer-context .customer-step.is-complete::after{
    top:3px;
    right:8px;
  }
  #workspace-detail.customer-context .customer-stage,
  #workspace-detail.customer-context #analysis-output,
  #workspace-detail.customer-context #meeting-brief-output{
    scroll-margin-top:72px;
  }
  #workspace-detail.customer-context #workspace-back{
    margin-bottom:10px;
  }
  #workspace-detail.customer-context .customer-stage{margin-top:0}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}
