.platform-summary-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  margin-bottom: 22px;
}
.platform-metric,.platform-loading {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 18px;
}
.platform-loading { grid-column: 1/-1; color: var(--muted); }
.platform-metric small { display:block; color:var(--muted); font-size:11px; font-weight:700; }
.platform-metric strong { display:block; margin-top:7px; font-size:25px; }
.platform-metric span { display:block; margin-top:5px; color:var(--muted); font-size:11px; }
.platform-operator-note {
  display:flex;
  gap:13px;
  align-items:flex-start;
  background:#eaf3ee;
  border:1px solid #cadecf;
  border-radius:12px;
  padding:16px 18px;
  margin-bottom:20px;
  color:#174d38;
}
.platform-operator-note>span { display:grid; place-items:center; flex:0 0 32px; height:32px; border-radius:9px; background:#175f45; color:#fff; }
.platform-operator-note strong { font-size:13px; }
.platform-operator-note p { margin:4px 0 0; color:#49675a; font-size:12px; line-height:1.6; }
.platform-onboarding {
  margin:0 0 22px;
  padding:20px;
  background:#fff;
  border:1px solid #afc9ba;
  border-radius:14px;
  box-shadow:0 16px 38px #1735220d;
}
.platform-onboarding-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; margin-bottom:17px; }
.platform-onboarding-head h4 { margin:3px 0 0; font-size:20px; }
.platform-onboarding-head p:not(.eyebrow) { margin:5px 0 0; color:var(--muted); font-size:12px; }
.platform-onboarding-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.platform-onboarding-grid label span,.platform-invitation-result label { display:block; margin-bottom:6px; color:var(--muted); font-size:11px; font-weight:700; }
.platform-onboarding-wide { grid-column:span 2; }
.platform-onboarding-options { margin-top:15px; border:1px solid var(--line); border-radius:11px; background:#fafbfa; }
.platform-onboarding-options summary { cursor:pointer; padding:13px 15px; font-size:12px; font-weight:800; }
.platform-onboarding-options .platform-module-grid { padding:0 13px 13px; }
.platform-onboarding-foot { display:flex; justify-content:space-between; align-items:center; gap:18px; margin-top:16px; }
.platform-onboarding-foot p { margin:0; color:var(--muted); font-size:11px; }
.platform-invitation-result {
  margin:0 0 22px;
  padding:18px;
  background:#eaf3ee;
  border:1px solid #b8d2c1;
  border-radius:13px;
}
.platform-invitation-result>div:first-child { display:flex; gap:12px; align-items:flex-start; margin-bottom:14px; }
.platform-invitation-result strong { display:block; color:#174d38; }
.platform-invitation-result p { margin:4px 0 0; color:#49675a; font-size:11px; }
.platform-invitation-result input { width:100%; background:#fff; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:11px; }
.platform-invitation-result .head-actions { margin-top:12px; }
.platform-invitation-mark { display:grid; place-items:center; flex:0 0 30px; height:30px; border-radius:9px; background:#176044; color:#fff; font-weight:900; }
.platform-invitation-box { margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }
.platform-invitation-box-head { display:flex; justify-content:space-between; gap:14px; align-items:center; margin-bottom:10px; }
.platform-invitation-box-head h5 { margin:0; font-size:14px; }
.platform-invitation-box-head small { color:var(--muted); }
.platform-invitation-form { display:grid; grid-template-columns:1fr 1.3fr 160px auto; gap:10px; align-items:end; }
.platform-invitation-form label span { display:block; color:var(--muted); font-size:10px; margin-bottom:5px; }
.invite-activation-shell { padding:28px 18px; overflow:auto; }
.invite-activation-card { max-width:520px; }
.invite-activation-card form { display:grid; gap:13px; margin-top:20px; }
.invite-activation-card form label { display:grid; gap:6px; color:var(--muted); font-size:12px; font-weight:700; }
.invite-activation-card input[readonly] { background:#f4f6f4; color:#435048; }
.invite-activation-loading { display:flex; gap:13px; align-items:center; justify-content:center; min-height:130px; color:var(--muted); }
.invite-company-summary { padding:14px; background:#edf5f0; border:1px solid #cce0d3; border-radius:11px; }
.invite-company-summary small,.invite-company-summary strong,.invite-company-summary span { display:block; }
.invite-company-summary strong { margin-top:4px; color:#164c37; }
.invite-company-summary span { margin-top:4px; color:#5c7165; font-size:11px; }
.invite-activation-complete { text-align:center; padding:24px 0 8px; }
.invite-activation-complete>span { display:grid; place-items:center; width:46px; height:46px; margin:0 auto 12px; border-radius:50%; background:#176044; color:#fff; font-size:22px; }
.invite-activation-complete h2 { font-size:22px; }
.invite-activation-complete p { color:var(--muted); line-height:1.7; }
.invite-login-link { display:block; margin-top:18px; text-align:center; color:var(--muted); font-size:11px; }
.platform-section { margin:28px 0; }
.platform-section-head { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:13px; }
.platform-section-head h4 { margin:0; font-size:19px; }
.platform-section-head p { margin:5px 0 0; color:var(--muted); font-size:12px; }
.platform-count { color:var(--green); font-weight:800; }
.platform-company-list { display:grid; gap:13px; }
.platform-company {
  background:#fff;
  border:1px solid var(--line);
  border-radius:13px;
  overflow:hidden;
}
.platform-company[open] { border-color:#afc9ba; box-shadow:0 10px 30px #1735220a; }
.platform-company>summary { list-style:none; display:grid; grid-template-columns:minmax(220px,1fr) repeat(4,minmax(90px,auto)) 24px; gap:18px; align-items:center; padding:17px 19px; cursor:pointer; }
.platform-company>summary::-webkit-details-marker { display:none; }
.platform-company-title strong { display:block; }
.platform-company-title small { display:block; margin-top:4px; color:var(--muted); }
.platform-company-stat small { display:block; color:var(--muted); font-size:10px; }
.platform-company-stat strong { display:block; margin-top:3px; font-size:13px; }
.platform-company-arrow { color:var(--green); transition:transform .2s; }
.platform-company[open] .platform-company-arrow { transform:rotate(180deg); }
.platform-status { display:inline-flex; align-items:center; gap:5px; border-radius:999px; padding:5px 9px; font-size:10px; font-weight:800; background:#e8f2ec; color:#176044; }
.platform-status.trialing { background:#eef2ff; color:#485aa0; }
.platform-status.past_due,.platform-status.suspended { background:#fff0e8; color:#9a4829; }
.platform-status.cancelled { background:#f1f1f1; color:#69726d; }
.platform-company-body { border-top:1px solid var(--line); padding:19px; background:#fbfcfb; }
.platform-contract-form { display:grid; grid-template-columns:1fr 1fr 1fr 2fr auto; gap:12px; align-items:end; }
.platform-contract-form label span { color:var(--muted); font-size:10px; }
.platform-contract-form button { height:43px; }
.platform-module-head { display:flex; justify-content:space-between; align-items:center; margin:20px 0 10px; }
.platform-module-head h5 { margin:0; font-size:14px; }
.platform-module-head small { color:var(--muted); }
.platform-module-grid,.subscription-modules { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.platform-module,.subscription-module { display:flex; gap:11px; align-items:flex-start; background:#fff; border:1px solid var(--line); border-radius:10px; padding:13px; }
.platform-module.disabled,.subscription-module.disabled { opacity:.62; background:#f7f8f7; }
.platform-module input { width:18px; height:18px; margin:2px 0 0; accent-color:var(--green); }
.platform-module span,.subscription-module span { min-width:0; }
.platform-module strong,.subscription-module strong { display:block; font-size:12px; }
.platform-module small,.subscription-module small { display:block; color:var(--muted); margin-top:4px; line-height:1.45; font-size:10px; }
.subscription-module-mark { display:grid; place-items:center; flex:0 0 25px; height:25px; border-radius:8px; background:#e1efe6; color:var(--green); font-weight:900; }
.subscription-module.disabled .subscription-module-mark { background:#eceeed; color:#8a938e; }
.subscription-module-category { grid-column:1/-1; margin:13px 0 0; font-size:14px; }
.platform-empty { padding:30px; text-align:center; color:var(--muted); background:#fff; border:1px dashed var(--line); border-radius:12px; }
.subscription-usage-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.subscription-usage-grid article{padding:14px;border:1px solid var(--line);border-radius:11px;background:#fff}.subscription-usage-grid small,.subscription-usage-grid strong,.subscription-usage-grid span{display:block}.subscription-usage-grid small{color:var(--muted);font-size:10px}.subscription-usage-grid strong{margin-top:7px;font-size:19px}.subscription-usage-grid span{margin-top:5px;color:var(--muted);font-size:9px;line-height:1.45}.subscription-invoice-list{display:grid;gap:9px}.subscription-invoice-list>article{display:grid;grid-template-columns:minmax(200px,1fr) auto 150px auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:11px;background:#fff}.subscription-invoice-list small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.subscription-invoice-status{padding:5px 9px;border-radius:999px;background:#edf1ef;font-size:10px;font-weight:800}.subscription-invoice-status.issued,.subscription-invoice-status.partially_paid{background:#fff3dc;color:#8a5b0b}.subscription-invoice-status.paid{background:#e5f3ea;color:#176044}.subscription-invoice-status.void{background:#f3e9e7;color:#934636}
.subscription-billing-profile{padding:18px;border:1px solid var(--line);border-radius:13px;background:#fff}.subscription-billing-profile .platform-section-head{margin-bottom:14px}.subscription-profile-form{display:grid;grid-template-columns:1fr 1fr;gap:11px;align-items:end}.subscription-profile-form label span{display:block;margin-bottom:5px;color:var(--muted);font-size:10px;font-weight:700}.subscription-profile-wide{grid-column:1/-1}.subscription-profile-form button{justify-self:start}
@media(max-width:1100px){
  .platform-summary-grid{grid-template-columns:repeat(2,1fr)}
  .platform-company>summary{grid-template-columns:1fr repeat(2,minmax(80px,auto)) 20px}.platform-company-stat:nth-of-type(n+4){display:none}
  .platform-contract-form{grid-template-columns:1fr 1fr}.platform-contract-form label:nth-child(4){grid-column:1/-1}
  .platform-module-grid,.subscription-modules{grid-template-columns:repeat(2,1fr)}
  .platform-onboarding-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .platform-invitation-form{grid-template-columns:1fr 1fr}.platform-invitation-form button{height:43px}
  .subscription-usage-grid{grid-template-columns:repeat(3,1fr)}.subscription-invoice-list>article{grid-template-columns:1fr auto}
}
@media(max-width:700px){
  .platform-summary-grid,.platform-module-grid,.subscription-modules{grid-template-columns:1fr}
  .platform-company>summary{grid-template-columns:1fr auto 20px}.platform-company-stat{display:none!important}
  .platform-contract-form{grid-template-columns:1fr}
  .platform-onboarding-grid,.platform-invitation-form{grid-template-columns:1fr}
  .platform-onboarding-wide{grid-column:auto}
  .platform-onboarding-foot,.platform-onboarding-head{align-items:stretch;flex-direction:column}
  .platform-onboarding-foot button{width:100%}
  .subscription-usage-grid,.subscription-invoice-list>article{grid-template-columns:1fr}
  .subscription-profile-form{grid-template-columns:1fr}.subscription-profile-wide{grid-column:auto}
}
