:root{color-scheme:light;--bg:#eef3f7;--ink:#142133;--ink2:#455469;--muted:#748298;--glass:rgba(255,255,255,.68);--glass-strong:rgba(255,255,255,.86);--dark:#102033;--dark2:#162d45;--line:rgba(64,91,120,.14);--line2:rgba(64,91,120,.23);--cyan:#19a7d8;--blue:#526dff;--rose:#ef6c8c;--green:#19a46b;--amber:#c98921;--red:#d64b5d;--shadow:0 18px 55px rgba(47,68,91,.15);--radius:20px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}body:before{content:"";position:fixed;inset:-26px;background:linear-gradient(120deg,rgba(248,251,253,.78),rgba(250,241,237,.6)),url('/assets/salon-glass-bg.png') center/cover no-repeat;filter:blur(10px) saturate(.8);transform:scale(1.05);z-index:-3}body:after{content:"";position:fixed;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.45),rgba(221,237,246,.32),rgba(255,241,235,.36));z-index:-2;pointer-events:none}button,input,select,textarea{font:inherit}.glass-panel,.panel,.auth-card,.glass-sidebar{background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(247,251,254,.62));border:1px solid rgba(255,255,255,.88);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),var(--shadow);backdrop-filter:blur(24px) saturate(125%);-webkit-backdrop-filter:blur(24px) saturate(125%)}.ambient{display:none}.shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr);position:relative}.sidebar{position:sticky;top:0;height:100vh;padding:24px 15px;border:0;border-right:1px solid rgba(61,86,112,.1);border-radius:0;display:flex;flex-direction:column;background:rgba(248,251,253,.72)}.brand{display:flex;align-items:center;gap:10px}.mark{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#6fd7f3,#7892ff);font-weight:900;color:#092137}.brand strong{display:block;font-size:14px}.brand small{display:block;font-size:8px;letter-spacing:.17em;color:var(--muted);margin-top:2px}.admin-chip{margin:25px 0 14px;padding:12px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.5)}.admin-chip span{display:block;text-transform:uppercase;font-size:8px;letter-spacing:.13em;color:var(--muted)}.admin-chip strong{display:block;margin-top:4px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar nav{display:grid;gap:5px}.sidebar nav button{border:0;background:transparent;border-radius:11px;padding:11px 12px;display:flex;gap:9px;align-items:center;text-align:left;color:#526176;font-size:11px;font-weight:700;cursor:pointer}.sidebar nav button:hover{background:rgba(255,255,255,.65);color:var(--ink)}.sidebar nav button.active{background:linear-gradient(90deg,rgba(65,175,225,.15),rgba(100,119,255,.09));box-shadow:inset 3px 0 0 var(--cyan);color:#152a41}.sidebar nav button span{width:20px;text-align:center;color:#168fbe}.sidebar-foot{margin-top:auto;padding-top:15px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.sidebar-foot>div{display:flex;align-items:center;gap:6px;font-size:8px;letter-spacing:.12em;color:var(--muted)}.env-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px rgba(25,164,107,.5)}.text-btn{border:0;background:transparent;color:var(--muted);font-size:9px;cursor:pointer}.text-btn.danger{color:var(--red)}.content{padding:27px clamp(18px,3vw,42px) 50px;min-width:0;max-width:1700px;width:100%;margin:auto}.ops-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:17px}.ops-hero h1,.page-head h1{margin:5px 0 7px;font-size:clamp(29px,3vw,43px);letter-spacing:-.04em}.ops-hero p,.page-head p{margin:0;color:var(--ink2);font-size:12px;line-height:1.6;max-width:800px}.ops-kicker,.eyebrow{color:#138ab4;font-size:8px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.ops-hero-actions{display:flex;gap:9px;align-items:center}.glass-btn,.btn{border:1px solid var(--line2);border-radius:10px;padding:10px 13px;background:rgba(255,255,255,.72);color:var(--ink);font-size:10px;font-weight:800;cursor:pointer;box-shadow:0 5px 18px rgba(49,70,93,.07)}.glass-btn.primary,.btn.primary{background:linear-gradient(135deg,#3fbbe3,#6575f5);color:#fff;border-color:transparent}.ops-notice{margin:0 0 14px;padding:10px 12px;border-radius:10px;font-size:10px;background:rgba(255,255,255,.72);border:1px solid var(--line)}.ops-notice.success{color:#087448;border-color:rgba(25,164,107,.22);background:rgba(236,255,246,.76)}.ops-notice.error{color:#a52d3c;border-color:rgba(214,75,93,.25);background:rgba(255,239,242,.78)}.ops-sync-strip{display:grid;grid-template-columns:repeat(4,1fr);border-radius:var(--radius);overflow:hidden;margin-bottom:12px}.ops-sync-strip>div{padding:12px 15px;border-right:1px solid var(--line)}.ops-sync-strip>div:last-child{border-right:0}.ops-sync-strip span{display:block;font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.ops-sync-strip strong{display:block;margin-top:4px;font-size:10px}.ops-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.ops-kpis.five{grid-template-columns:repeat(5,minmax(0,1fr))}.ops-kpi{padding:16px;border-radius:var(--radius);min-height:165px;position:relative;overflow:hidden}.ops-kpi.dark-card{background:linear-gradient(145deg,rgba(14,37,58,.92),rgba(20,49,74,.84));border-color:rgba(255,255,255,.12);color:#f4f8fb}.ops-kpi.dark-card .ops-kpi-head span,.ops-kpi.dark-card small,.ops-kpi.dark-card .ops-kpi-foot{color:#b9c8d6}.ops-kpi-head,.ops-kpi-foot{display:flex;justify-content:space-between;gap:8px}.ops-kpi-head span{font-size:10px;font-weight:750;color:var(--ink2)}.ops-kpi-head b{font-size:7px;letter-spacing:.13em;color:var(--muted)}.ops-kpi>strong{display:block;font-size:clamp(25px,2.2vw,34px);letter-spacing:-.045em;margin:16px 0 4px}.ops-kpi>small{display:block;color:var(--muted);font-size:9px}.ops-progress{height:4px;background:rgba(66,90,115,.1);margin:15px 0 12px;border-radius:99px;overflow:hidden}.ops-progress i{height:100%;display:block;background:linear-gradient(90deg,var(--cyan),var(--blue))}.ops-kpi.warning{border-color:rgba(201,137,33,.35)}.ops-kpi.critical{border-color:rgba(214,75,93,.4)}.ops-kpi-foot{font-size:8px;color:var(--muted)}.source-pills{display:flex;gap:5px;flex-wrap:wrap;margin:14px 0}.source-pills span{font-size:8px;padding:5px 7px;border-radius:999px;background:rgba(22,143,188,.08);color:#147fa6;border:1px solid rgba(22,143,188,.12)}.ops-grid{display:grid;gap:12px;margin-bottom:12px}.ops-grid.two{grid-template-columns:minmax(0,1.45fr) minmax(330px,.7fr)}.ops-grid.analytics-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.65fr)}.ops-grid.accounting-layout{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr)}.ops-panel{border-radius:var(--radius);padding:17px;min-width:0;margin-bottom:12px}.ops-grid>.ops-panel{margin-bottom:0}.ops-panel-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:13px}.ops-panel-head h2{margin:4px 0 0;font-size:16px}.ops-dim{color:var(--muted);font-size:8px}.ops-status{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:999px;font-size:7px;font-weight:900;letter-spacing:.06em;color:#087448;background:rgba(25,164,107,.08);border:1px solid rgba(25,164,107,.16);white-space:nowrap}.ops-status i{width:5px;height:5px;border-radius:50%;background:currentColor}.ops-status.warning{color:#9a6110;background:rgba(201,137,33,.09);border-color:rgba(201,137,33,.18)}.ops-status.critical{color:#b43142;background:rgba(214,75,93,.09);border-color:rgba(214,75,93,.2)}.ops-status.muted{color:#748298;background:rgba(100,117,136,.07);border-color:rgba(100,117,136,.12)}.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:13px}.metric-strip>div{padding:10px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.5)}.metric-strip span{display:block;color:var(--muted);font-size:8px}.metric-strip strong{display:block;margin-top:4px;font-size:14px}.dual-chart{padding-top:4px}.dual-chart svg{width:100%;height:auto;display:block}.dual-chart text{font-size:8px;fill:#8290a2}.grid-lines line{stroke:rgba(71,94,118,.11);stroke-width:1}.cost-line,.call-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.cost-line{stroke:var(--rose)}.call-line{stroke:var(--blue)}.chart-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:5px;color:var(--muted);font-size:8px}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:8px;height:8px;border-radius:2px}.chart-legend i.cost{background:var(--rose)}.chart-legend i.calls{background:var(--blue)}.chart-legend i.outbound{background:#4f72ff}.chart-legend i.inbound{background:#42bd88}.chart-empty{height:190px;display:grid;place-items:center;color:var(--muted);font-size:9px;border:1px dashed var(--line);border-radius:12px}.chart-empty.small{height:80px}.project-list,.provider-stack{display:grid;gap:7px}.project-row,.provider-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.45)}.project-row strong,.provider-row strong{display:block;font-size:9px}.project-row span,.project-row small,.provider-row span{display:block;color:var(--muted);font-size:7px;margin-top:3px}.project-row>div:last-child,.provider-value{text-align:right}.provider-row{grid-template-columns:30px minmax(0,1fr) auto;align-items:center}.provider-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:rgba(22,143,188,.08);color:#1183ac;font-weight:900;font-size:8px}.ops-callout{margin-top:9px;padding:10px;display:flex;gap:8px;border-radius:10px;border:1px solid rgba(25,164,107,.14);background:rgba(233,252,243,.6)}.pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--green);margin-top:2px}.ops-callout strong{font-size:8px;color:#087448}.ops-callout p{font-size:8px;color:var(--muted);line-height:1.5;margin:3px 0 0}.wa-bars{height:92px;display:flex;gap:3px;align-items:flex-end;padding:8px 0;border-bottom:1px solid var(--line)}.wa-day{height:100%;flex:1;display:flex;align-items:flex-end;gap:1px}.wa-day span{width:50%;min-height:2px;border-radius:3px 3px 0 0}.wa-day .out{background:#4f72ff}.wa-day .in{background:#42bd88}.ops-table-wrap{overflow:auto}.ops-table{width:100%;border-collapse:collapse;font-size:9px}.ops-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:7px;padding:8px;border-bottom:1px solid var(--line)}.ops-table td{padding:9px 8px;border-bottom:1px solid rgba(72,96,120,.08);white-space:nowrap;color:var(--ink2)}.ops-table td strong{display:block;color:var(--ink);font-size:9px}.ops-table td small{display:block;color:var(--muted);font-size:7px;margin-top:2px}.trigger{display:inline-block;padding:4px 6px;border-radius:6px;border:1px solid var(--line);font-size:7px;font-weight:850;text-transform:uppercase}.trigger.schedule{color:#9a6110;background:rgba(201,137,33,.07)}.trigger.event{color:#147fa6;background:rgba(22,143,188,.06)}.positive{color:var(--green)!important;font-weight:800}.negative{color:var(--red)!important;font-weight:800}.accounting-kpis{grid-template-columns:repeat(3,1fr);max-width:900px}.finance-form,.settings-panel label,.panel label,.auth-card label{display:grid;gap:6px;color:var(--ink2);font-size:8px;font-weight:700}.finance-form{gap:9px}.grid{display:grid;gap:9px}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:1fr 1fr 1fr}input,select,textarea{width:100%;padding:9px 10px;border:1px solid var(--line2);border-radius:9px;background:rgba(255,255,255,.72);color:var(--ink);outline:0}input:focus,select:focus,textarea:focus{border-color:rgba(25,167,216,.45);box-shadow:0 0 0 3px rgba(25,167,216,.08)}textarea{resize:vertical}.panel{border-radius:var(--radius);padding:18px;margin-bottom:12px}.panel-title{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px}.panel-title.with-action{justify-content:space-between}.panel-title>span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:rgba(22,143,188,.08);color:#138ab4;font-size:8px;font-weight:900}.panel-title h2{margin:0;font-size:14px}.panel-title p{margin:3px 0 0;color:var(--muted);font-size:8px}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn.secondary{background:rgba(255,255,255,.62)}.btn.quiet{background:transparent}.preflight,.service-card,.client-row,.boundary-card{border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.48);padding:11px}.preflight strong,.preflight span{display:block}.preflight span{font-size:8px;color:var(--muted);margin-top:3px}.services,.client-list{display:grid;gap:9px}.client-row{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(220px,.8fr);gap:12px;align-items:center}.client-row span,.client-row small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.client-status{padding:5px 7px;border-radius:999px;font-size:7px;font-weight:850}.client-status.ready{color:#087448;background:rgba(25,164,107,.08)}.client-status.pending{color:#9a6110;background:rgba(201,137,33,.08)}.empty{padding:16px!important;text-align:center;color:var(--muted)!important}.safety{color:var(--muted);font-size:8px}.resolve{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.center-state,.ops-loading{min-height:100vh;display:grid;place-items:center;gap:10px;color:var(--ink2)}.loader,.ops-ring{width:25px;height:25px;border-radius:50%;border:2px solid rgba(42,78,110,.12);border-top-color:var(--cyan);animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.auth-story{padding:clamp(32px,6vw,80px);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,rgba(14,37,58,.9),rgba(23,66,92,.76));color:#fff}.auth-copy{max-width:620px;padding-bottom:8vh}.auth-copy span{font-size:9px;letter-spacing:.14em;color:#8ee5ff;font-weight:850}.auth-copy h1{font-size:clamp(38px,5vw,66px);letter-spacing:-.055em;margin:12px 0}.auth-copy p{color:#cad7e1;line-height:1.65}.auth-form-zone{display:grid;place-items:center;padding:24px;background:rgba(255,255,255,.35)}.auth-card{width:min(420px,100%);padding:27px;border-radius:20px}.auth-card h2{font-size:26px;margin:7px 0}.auth-card>p{color:var(--muted);font-size:10px}.auth-card label{margin-top:10px}.auth-card button{width:100%;margin-top:16px}.brand.mobile{display:none}.state-card{width:min(520px,calc(100vw - 28px));padding:24px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.8);box-shadow:var(--shadow);text-align:center}.state-card p{color:var(--ink2)}.state-icon{width:38px;height:38px;display:grid;place-items:center;margin:auto;border-radius:12px;background:rgba(201,137,33,.1);color:#9a6110}.ops-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.ops-settings-inline{display:grid;grid-template-columns:100px 1fr auto;gap:9px;align-items:end}.ops-copy{color:var(--muted);font-size:8px}.ops-footnote{margin-top:9px;color:var(--muted);font-size:8px}.ops-spark-empty{min-height:44px;margin:12px 0;display:flex;align-items:center;color:var(--muted);font-size:8px}.ops-spark{height:44px;display:flex;align-items:flex-end;gap:3px;margin:10px 0}.ops-spark span{flex:1;background:linear-gradient(to top,rgba(82,109,255,.2),rgba(25,167,216,.8));border-radius:3px 3px 0 0}@media(max-width:1320px){.ops-kpis.five{grid-template-columns:repeat(3,1fr)}.ops-grid.analytics-grid,.ops-grid.two,.ops-grid.accounting-layout{grid-template-columns:1fr}}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.admin-chip{display:none}.sidebar nav{display:flex;overflow:auto}.sidebar nav button{white-space:nowrap}.sidebar-foot{margin:0;padding:0;border:0}.ops-kpis,.ops-kpis.five,.accounting-kpis{grid-template-columns:repeat(2,1fr)}.ops-sync-strip{grid-template-columns:1fr 1fr}.auth-layout{grid-template-columns:1fr}.auth-story{display:none}.brand.mobile{display:flex}}@media(max-width:640px){.content{padding:15px 10px 35px}.ops-hero{flex-direction:column;align-items:flex-start}.ops-kpis,.ops-kpis.five,.accounting-kpis,.ops-sync-strip,.metric-strip,.grid.two,.grid.three,.ops-settings-grid{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr}.sidebar .brand,.sidebar-foot{display:none}.client-row{grid-template-columns:1fr}.ops-settings-inline{grid-template-columns:1fr}}

/* M070 accounting entry reliability */
.accounting-form-notice{padding:9px 10px;border-radius:9px;border:1px solid rgba(214,75,93,.25);background:rgba(255,239,242,.78);color:#a52d3c;font-size:9px;line-height:1.45}.accounting-form-notice[hidden]{display:none}.form-field-hint{display:block;color:var(--muted);font-size:7px;font-weight:500;line-height:1.4;margin-top:1px}.finance-form button[disabled]{opacity:.6;cursor:wait}


/* M073 onboarding review queue */
.review-list{display:grid;gap:16px}.review-card{padding:22px;display:grid;gap:16px}.review-card-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.review-card-head h2{margin:4px 0}.review-card-head p{margin:0;color:var(--muted)}.review-progress{padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;background:rgba(255,255,255,.6)}.review-progress.ready{color:#17613e}.review-progress.blocked{color:#8b3f32}.review-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-size:13px}.review-warning,.review-note{display:grid;gap:4px;padding:12px 14px;border-radius:14px;background:rgba(255,247,238,.86)}.review-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.review-live{font-weight:800;color:#17613e}.review-empty{padding:30px;display:grid;gap:5px;text-align:center}

.glass-btn.danger{color:#a9273a;border-color:rgba(214,75,93,.28);background:rgba(255,239,242,.88)}.glass-btn.danger:hover{background:rgba(255,229,234,.96)}.review-card.is-platform-paused{border-color:rgba(214,75,93,.3);box-shadow:inset 3px 0 0 rgba(214,75,93,.6),var(--shadow)}.review-paused{font-weight:800;color:#a9273a;background:rgba(214,75,93,.08);border:1px solid rgba(214,75,93,.16);padding:7px 10px;border-radius:999px}


/* M075 production-readiness diagnostics */
.launch-diagnostics {
  margin: 16px 0 18px;
  border: 1px solid rgba(63, 73, 89, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.72);
  overflow: hidden;
}
.launch-diagnostics > summary {
  list-style: none;
  cursor: pointer;
  padding: 15px 17px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.launch-diagnostics > summary::-webkit-details-marker { display: none; }
.launch-diagnostics > summary span:first-child {
  display: grid;
  gap: 3px;
}
.launch-diagnostics > summary small,
.launch-check small {
  color: rgba(26, 35, 48, 0.62);
  font-size: 12px;
  line-height: 1.45;
}
.launch-diagnostic-state {
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .03em;
  white-space: nowrap;
}
.launch-diagnostic-state.ready {
  color: #126a43;
  background: #e8f7ef;
}
.launch-diagnostic-state.pending {
  color: #7b5c16;
  background: #fff6d9;
}
.launch-diagnostic-state.blocked {
  color: #9a3440;
  background: #fdebee;
}
.launch-diagnostic-body {
  padding: 0 17px 17px;
  display: grid;
  gap: 14px;
}
.launch-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
}
.launch-check {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 11px 12px;
  border-radius: 14px;
  border: 1px solid rgba(63, 73, 89, 0.10);
  background: rgba(249, 251, 253, 0.9);
}
.launch-check-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: inline-grid;
  place-items: center;
  font-weight: 900;
  flex: 0 0 24px;
}
.launch-check.pass .launch-check-icon {
  color: #126a43;
  background: #def3e8;
}
.launch-check.fail .launch-check-icon {
  color: #9a3440;
  background: #fde1e5;
}
.launch-check > div {
  display: grid;
  gap: 3px;
}
.launch-database-gates {
  display: grid;
  gap: 9px;
}
.launch-gate-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.launch-gate-pill {
  border-radius: 999px;
  padding: 7px 9px;
  font-size: 11px;
  font-weight: 700;
  border: 1px solid rgba(63, 73, 89, 0.11);
}
.launch-gate-pill.pass {
  color: #126a43;
  background: #edf9f2;
}
.launch-gate-pill.fail {
  color: #9a3440;
  background: #fff0f2;
}
.launch-smoke-note {
  border-radius: 14px;
  border: 1px solid rgba(98, 71, 16, 0.16);
  background: #fff8e7;
  padding: 12px 13px;
  display: grid;
  gap: 4px;
  color: #624710;
}
.launch-smoke-note span {
  font-size: 12px;
  line-height: 1.5;
}


/* M076 tenant AI control + prompt studio */
.ai-control-list { display:grid; gap:18px; }
.ai-control-empty { padding:22px; display:grid; gap:5px; }
.ai-tenant-card { padding:20px; display:grid; gap:16px; }
.ai-tenant-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.ai-tenant-head h2 { margin:4px 0 2px; }
.ai-tenant-head p { margin:0; color:rgba(26,35,48,.58); }
.ai-master-state { border-radius:999px; padding:8px 11px; font-size:11px; font-weight:900; letter-spacing:.04em; white-space:nowrap; }
.ai-master-state.on { color:#126a43; background:#e7f7ef; }
.ai-master-state.off { color:#9a3440; background:#fdebee; }
.ai-master-state.warn { color:#7b5c16; background:#fff5d8; }
.ai-master-state.missing { color:#586171; background:#eef1f5; }
.ai-runtime-strip { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; }
.ai-runtime-strip > div { padding:10px 12px; border:1px solid rgba(63,73,89,.10); border-radius:13px; background:rgba(255,255,255,.62); display:grid; gap:3px; }
.ai-runtime-strip span { color:rgba(26,35,48,.58); font-size:11px; }
.ai-runtime-strip strong { font-size:13px; }
.ai-master-control { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:15px 16px; border-radius:16px; border:1px solid rgba(63,73,89,.12); background:rgba(248,250,252,.85); }
.ai-master-control > div { display:grid; gap:4px; }
.ai-master-control span { color:rgba(26,35,48,.64); font-size:12px; line-height:1.45; max-width:720px; }
.ai-prompt-editor { display:grid; gap:10px; }
.ai-prompt-title { display:flex; justify-content:space-between; gap:18px; align-items:flex-end; }
.ai-prompt-title > div { display:grid; gap:4px; }
.ai-prompt-title span { color:rgba(26,35,48,.64); font-size:12px; line-height:1.45; }
.ai-prompt-count { white-space:nowrap; }
.ai-prompt-editor textarea { width:100%; min-height:150px; resize:vertical; border:1px solid rgba(63,73,89,.16); border-radius:14px; background:#fffdfc; color:#241f1e; padding:13px 14px; font:inherit; line-height:1.5; }
.ai-prompt-actions { display:flex; justify-content:space-between; align-items:center; gap:14px; }
.ai-prompt-actions > span { color:rgba(26,35,48,.58); font-size:11px; }
.general-prompt-viewer { border:1px solid rgba(63,73,89,.12); border-radius:16px; background:rgba(255,255,255,.72); overflow:hidden; }
.general-prompt-viewer > summary { list-style:none; cursor:pointer; padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:14px; }
.general-prompt-viewer > summary::-webkit-details-marker { display:none; }
.general-prompt-viewer > summary span:first-child { display:grid; gap:3px; }
.general-prompt-viewer > summary small { color:rgba(26,35,48,.58); }
.general-prompt-note { margin:0 16px 12px; border-radius:12px; background:#fff8e7; color:#624710; padding:11px 12px; display:grid; gap:3px; }
.general-prompt-note span { font-size:12px; line-height:1.45; }
.general-prompt-viewer pre { margin:0; max-height:500px; overflow:auto; white-space:pre-wrap; word-break:break-word; background:#171a1f; color:#f6f3ef; padding:18px; font-size:12px; line-height:1.55; }
@media (max-width:760px) {
  .ai-tenant-head,.ai-master-control,.ai-prompt-title,.ai-prompt-actions { align-items:stretch; flex-direction:column; }
  .ai-master-control .glass-btn,.ai-prompt-actions .glass-btn { width:100%; }
}


/* M077 production launch simulation suite */
.launch-qa-list { display: grid; gap: 18px; }
.launch-qa-empty { padding: 28px; display: grid; gap: 6px; }
.launch-qa-card { padding: 22px; }
.launch-qa-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.launch-qa-head h2 { margin: 5px 0 3px; }
.launch-qa-head p { margin: 0; opacity: .62; }
.launch-qa-state { border-radius: 999px; padding: 8px 11px; font-size: 11px; font-weight: 850; letter-spacing: .04em; white-space: nowrap; }
.launch-qa-state.pass { color: #126a43; background: #e8f7ef; }
.launch-qa-state.warn { color: #7b5c16; background: #fff5d5; }
.launch-qa-state.fail { color: #963644; background: #fdebee; }
.launch-qa-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; margin: 17px 0; }
.launch-qa-summary > div { padding: 11px 12px; border: 1px solid rgba(63,73,89,.10); border-radius: 14px; background: rgba(255,255,255,.68); display: grid; gap: 3px; }
.launch-qa-summary span { color: rgba(26,35,48,.6); font-size: 11px; }
.launch-qa-summary strong { font-size: 13px; }
.launch-qa-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(235px,1fr)); gap: 10px; }
.launch-qa-scenario { display: flex; gap: 10px; padding: 12px; border-radius: 15px; border: 1px solid rgba(63,73,89,.10); background: rgba(249,251,253,.92); }
.launch-qa-icon { width: 25px; height: 25px; flex: 0 0 25px; border-radius: 50%; display: grid; place-items: center; font-weight: 900; }
.launch-qa-scenario.pass .launch-qa-icon { color: #126a43; background: #def3e8; }
.launch-qa-scenario.fail .launch-qa-icon { color: #963644; background: #fde1e5; }
.launch-qa-scenario.skip .launch-qa-icon { color: #596575; background: #edf0f3; }
.launch-qa-scenario > div { display: grid; gap: 3px; }
.launch-qa-scenario small { color: rgba(26,35,48,.62); line-height: 1.45; }
.launch-qa-proof { margin-top: 14px; padding: 12px 13px; border-radius: 14px; background: rgba(238,247,243,.85); border: 1px solid rgba(18,106,67,.12); display: grid; gap: 4px; color: #245b43; }
.launch-qa-proof span { font-size: 12px; line-height: 1.5; }
@media (max-width: 900px) { .launch-qa-summary { grid-template-columns: repeat(2,minmax(0,1fr)); } .launch-qa-head { flex-direction: column; } }
@media (max-width: 560px) { .launch-qa-summary { grid-template-columns: 1fr; } }


/* M078 First-Week Health & Incident Center */
.health-list {
  display: grid;
  gap: 18px;
}
.health-card {
  padding: 20px;
}
.health-card.critical {
  border-color: rgba(154, 52, 64, .28);
}
.health-card.attention {
  border-color: rgba(123, 92, 22, .22);
}
.health-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.health-head h2 {
  margin: 4px 0 2px;
}
.health-head p {
  margin: 0;
  opacity: .62;
}
.health-state {
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
  white-space: nowrap;
}
.health-state.healthy {
  color: #126a43;
  background: #e8f7ef;
}
.health-state.attention {
  color: #7b5c16;
  background: #fff6d9;
}
.health-state.critical {
  color: #9a3440;
  background: #fdebee;
}
.health-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 17px 0 12px;
}
.health-summary > div,
.health-kpis > div,
.health-signal-grid > div {
  border: 1px solid rgba(63, 73, 89, .10);
  border-radius: 14px;
  background: rgba(255,255,255,.72);
  padding: 11px 12px;
  display: grid;
  gap: 4px;
}
.health-summary span,
.health-kpis span,
.health-signal-grid span {
  font-size: 11px;
  color: rgba(26,35,48,.58);
}
.health-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.health-kpis strong {
  font-size: 24px;
}
.health-kpis small {
  color: rgba(26,35,48,.55);
  font-size: 11px;
}
.health-kpis .warn {
  background: #fff9e9;
  border-color: rgba(123,92,22,.16);
}
.health-kpis .critical {
  background: #fff0f2;
  border-color: rgba(154,52,64,.18);
}
.health-incidents {
  display: grid;
  gap: 8px;
  margin: 14px 0;
}
.health-section-title {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
}
.health-section-title span {
  font-size: 11px;
  opacity: .58;
}
.health-incident {
  border-radius: 14px;
  padding: 11px 12px;
  display: grid;
  grid-template-columns: 74px 1fr;
  gap: 10px;
  border: 1px solid rgba(63,73,89,.10);
}
.health-incident > span {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
}
.health-incident > div {
  display: grid;
  gap: 3px;
}
.health-incident small {
  color: rgba(26,35,48,.62);
  line-height: 1.45;
}
.health-incident.critical {
  background: #fff0f2;
  color: #7f2833;
}
.health-incident.warning {
  background: #fff9e9;
  color: #654b13;
}
.health-incident.info {
  background: #f5f8fb;
}
.health-clear {
  margin: 14px 0;
  padding: 13px 14px;
  border-radius: 14px;
  border: 1px solid rgba(18,106,67,.15);
  background: #eef9f3;
  color: #145c3d;
  display: grid;
  gap: 3px;
}
.health-clear span {
  font-size: 12px;
}
.health-transport {
  margin: 14px 0;
  border: 1px solid rgba(63,73,89,.10);
  border-radius: 14px;
  background: rgba(255,255,255,.64);
}
.health-transport summary {
  cursor: pointer;
  list-style: none;
  padding: 12px 13px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
.health-transport summary::-webkit-details-marker { display: none; }
.health-transport summary span {
  font-size: 11px;
  opacity: .58;
}
.health-signal-grid {
  padding: 0 13px 13px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 8px;
}
.health-boundary {
  margin-top: 12px;
  border-radius: 14px;
  background: rgba(244,247,250,.85);
  padding: 12px 13px;
  display: grid;
  gap: 4px;
}
.health-boundary span {
  font-size: 12px;
  color: rgba(26,35,48,.65);
  line-height: 1.5;
}
.health-empty {
  padding: 22px;
  display: grid;
  gap: 4px;
}
.health-empty span {
  color: rgba(26,35,48,.62);
}
@media (max-width: 900px) {
  .health-summary,
  .health-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .health-signal-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 580px) {
  .health-head { display: grid; }
  .health-summary,
  .health-kpis,
  .health-signal-grid { grid-template-columns: 1fr; }
}


/* M079 repeatable client provisioning */
.owner-resolution {
  margin-top: 12px;
  padding: 12px 13px;
  border-radius: 14px;
  border: 1px solid rgba(123, 92, 22, .15);
  background: #fff9e9;
  display: grid;
  gap: 3px;
}
.owner-resolution.ready {
  border-color: rgba(18, 106, 67, .16);
  background: #eef9f3;
  color: #145c3d;
}
.owner-resolution span {
  font-size: 12px;
  line-height: 1.5;
}
.provisioning-list {
  display: grid;
  gap: 16px;
}
.provisioning-card {
  padding: 19px;
}
.provisioning-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}
.provisioning-head h2 {
  margin: 4px 0 2px;
}
.provisioning-head p {
  margin: 0;
  opacity: .6;
}
.provisioning-stage {
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
  white-space: nowrap;
}
.provisioning-stage.neutral { background:#f2f4f7; color:#475467; }
.provisioning-stage.progress { background:#eef3ff; color:#3557a5; }
.provisioning-stage.pending { background:#fff6d9; color:#7b5c16; }
.provisioning-stage.ready { background:#e8f7ef; color:#126a43; }
.provisioning-stage.live { background:#dff5ea; color:#0b6b3c; }
.provisioning-stage.blocked { background:#fdebee; color:#9a3440; }

.provisioning-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 9px;
  margin: 15px 0 12px;
}
.provisioning-grid > div {
  border-radius: 13px;
  border: 1px solid rgba(63,73,89,.1);
  background: rgba(255,255,255,.72);
  padding: 10px 11px;
  display: grid;
  gap: 3px;
}
.provisioning-grid span,
.provisioning-grid small {
  font-size: 11px;
  color: rgba(26,35,48,.58);
}
.provisioning-next {
  display: grid;
  gap: 4px;
  border-radius: 14px;
  padding: 12px 13px;
  background: #f5f8fb;
  border: 1px solid rgba(63,73,89,.1);
}
.provisioning-next span {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
  opacity: .58;
}
.provisioning-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin: 12px 0;
  font-size: 11px;
  color: rgba(26,35,48,.58);
}
.provisioning-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.provisioning-actions > span {
  font-size: 11px;
  color: rgba(26,35,48,.58);
}
.provisioning-empty {
  padding: 22px;
  display: grid;
  gap: 4px;
}
.provisioning-empty span { opacity:.62; }
@media (max-width: 920px) {
  .provisioning-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 580px) {
  .provisioning-head,
  .provisioning-actions { display:grid; }
  .provisioning-grid { grid-template-columns: 1fr; }
}

/* M080 telemetry charts: visible spike-oriented daily trend lines. */
.wa-chart{padding-top:4px}.wa-chart svg{width:100%;height:auto;display:block;min-height:180px}.wa-chart.compact svg{min-height:74px}.wa-chart text{font-size:8px;fill:#8290a2}.wa-out-line,.wa-in-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.wa-out-line{stroke:#4f72ff}.wa-in-line{stroke:#42bd88}.wa-out-dot{fill:#4f72ff}.wa-in-dot{fill:#42bd88}.chart-peak{margin-top:4px;color:var(--ink2);font-size:8px;font-weight:750}


/* M081 client usage analytics */
.usage-head{align-items:flex-start}
.usage-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:18px;align-items:end;padding:18px 20px;margin-bottom:16px}
.usage-toolbar label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.usage-toolbar select{width:100%;min-height:44px;border:1px solid rgba(127,151,179,.26);border-radius:13px;background:rgba(255,255,255,.72);color:var(--ink);padding:0 12px;font:inherit;font-size:14px;text-transform:none;letter-spacing:0}
.usage-range{display:flex;gap:6px;padding:5px;border:1px solid rgba(127,151,179,.20);border-radius:14px;background:rgba(239,245,251,.64)}
.usage-range button{border:0;background:transparent;color:var(--muted);font-weight:850;border-radius:10px;min-width:46px;height:36px;cursor:pointer}
.usage-range button.active{background:#17344c;color:#fff}
.usage-sync{display:grid;gap:4px;text-align:right}.usage-sync span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.usage-sync strong{font-size:13px;color:var(--ink)}
.usage-warning{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border:1px solid rgba(202,132,30,.26);background:rgba(255,246,225,.78);border-radius:15px;padding:12px 16px;margin-bottom:16px;color:#7c5417}.usage-warning strong{color:#6b430b}.usage-warning span{font-size:13px}
.usage-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.usage-kpis article{background:rgba(255,255,255,.66);border:1px solid rgba(127,151,179,.22);border-radius:18px;padding:17px 18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}.usage-kpis span{display:block;color:var(--muted);font-size:12px;font-weight:750}.usage-kpis strong{display:block;color:var(--ink);font-size:28px;line-height:1.1;margin:7px 0 5px}.usage-kpis strong.usage-date-value{font-size:22px}.usage-kpis small{color:var(--muted);font-size:11px}
.usage-panel{padding:20px;margin-bottom:16px}.usage-chart-scroll{overflow-x:auto;overflow-y:hidden;padding-top:8px}.usage-chart{display:block;width:100%;min-width:760px;height:auto}.usage-grid line{stroke:rgba(104,128,156,.16);stroke-width:1}.usage-grid text,.usage-chart .x-label{fill:#71819a;font-size:10px}.usage-bar{transition:opacity .15s ease}.usage-bar.conversations{fill:#4d73ff}.usage-bar.inbound{fill:#35b779}.usage-bar.outbound{fill:#5674f7}.usage-mark:hover .usage-bar{opacity:.72}.usage-legend{display:flex;gap:18px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:12px;margin-top:8px}.usage-legend span{display:flex;gap:7px;align-items:center}.usage-legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.usage-legend i.conversations{background:#4d73ff}.usage-legend i.inbound{background:#35b779}.usage-legend i.outbound{background:#5674f7}.usage-method{font-size:12px;color:var(--muted);line-height:1.55;margin:12px 0 0}.usage-empty{min-height:210px;display:grid;place-items:center;color:var(--muted);font-weight:700}.usage-panel .ops-panel-head{margin-bottom:6px}
@media(max-width:980px){.usage-toolbar{grid-template-columns:1fr}.usage-sync{text-align:left}.usage-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.usage-kpis{grid-template-columns:1fr}.usage-range{overflow-x:auto}.usage-toolbar{padding:14px}.usage-panel{padding:14px}}

/* M081 v1.1 per-client provider analytics */
.usage-provider-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.usage-provider-kpis article{background:rgba(255,255,255,.66);border:1px solid rgba(127,151,179,.22);border-radius:18px;padding:17px 18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}.usage-provider-kpis span{display:block;color:var(--muted);font-size:12px;font-weight:750}.usage-provider-kpis strong{display:block;color:var(--ink);font-size:26px;line-height:1.1;margin:7px 0 5px}.usage-provider-kpis strong.usage-project-value{font-size:16px;line-height:1.25}.usage-provider-kpis small{color:var(--muted);font-size:11px;line-height:1.4}.usage-bar.openai-calls{fill:#9b6cff}.usage-bar.openai-cost{fill:#ef6a8a}.usage-legend i.openai-calls{background:#9b6cff}.usage-legend i.openai-cost{background:#ef6a8a}.usage-provider-legend{margin-top:10px}.usage-provider-legend i{flex:0 0 auto}@media(max-width:980px){.usage-provider-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.usage-provider-kpis{grid-template-columns:1fr}}
