
:root{--bg:#07101f;--panel:#0d1728;--panel2:#111e32;--line:#20314b;--text:#f4f8ff;--muted:#91a3bf;--accent:#2f8fff;--good:#29d391;--bad:#ff6175}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}.brand{display:flex;align-items:center;gap:12px}.brand strong,.brand small{display:block}.brand small{color:var(--muted);font-size:11px;margin-top:2px}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#1685ff,#55b6ff);box-shadow:0 0 30px #1685ff55;font-weight:800}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:11px 16px;background:var(--accent);color:white;font-weight:700;cursor:pointer}.button.secondary{background:#16263d;border:1px solid var(--line)}.button.small{padding:8px 12px;font-size:13px}.setup-body{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 20% 20%,#0e315d 0,transparent 32%),var(--bg)}.setup-card,.login-card{width:min(100%,560px);background:#0d1728;border:1px solid var(--line);border-radius:20px;padding:28px}.setup-card.wide{width:min(100%,820px)}.hero-brand{margin-bottom:22px}.setup-card p,.login-card p,.muted{color:var(--muted)}label{display:grid;gap:7px;color:#dbe7f8;font-size:13px;font-weight:650;margin-bottom:14px}input,select,textarea{width:100%;border-radius:10px;border:1px solid var(--line);background:#081322;color:white;padding:11px 12px;font:inherit}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid h2{grid-column:1/-1;font-size:16px}.span-2{grid-column:1/-1}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:20px 0}.check{padding:9px 11px;border-radius:9px;background:#0b1525;border:1px solid var(--line);font-size:13px}.check span{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:50%}.check.ok span{background:#143c30;color:var(--good)}.check.bad span{background:#401d28;color:var(--bad)}.alert,.success{border-radius:11px;padding:12px 14px;margin:14px 0;font-size:14px}.alert.danger{background:#3c1622;border:1px solid #6c283a}.alert.warning{background:#352a12;border:1px solid #66501d}.success{background:#123a2b;border:1px solid #245c46}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#091321;border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column}.sidebar nav{display:grid;gap:5px;margin-top:28px}.sidebar-footer{margin-top:auto}.nav-link{display:block;padding:10px 12px;border-radius:9px;color:#aebdd2;font-size:14px}.nav-link:hover,.nav-link.active{background:#14243a;color:white}.main{margin-left:248px;min-height:100vh;padding:0 30px 40px}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #14243a;margin-bottom:26px}.topbar h1{font-size:23px}.user-pill{padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:#bdcadc;font-size:13px}.hero-panel{background:linear-gradient(125deg,#0f2541,#101b2e 60%,#0c1727);border:1px solid #294669;border-radius:18px;padding:25px;display:flex;gap:24px;align-items:center;justify-content:space-between;margin-bottom:18px}.hero-panel h2{font-size:30px;margin:6px 0}.hero-panel p{color:var(--muted);margin:0}.eyebrow{font-size:11px;letter-spacing:.16em;color:#74b6ff;font-weight:800}.health-chip{white-space:nowrap;border:1px solid #245c46;background:#103326;border-radius:999px;padding:9px 13px;color:#76e5b2;font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat,.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px}.stat span{display:block;color:var(--muted);font-size:12px}.stat strong{display:block;font-size:22px;margin-top:8px}.panel{margin-bottom:18px}.panel.narrow{max-width:680px}.panel-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}.panel h3{margin:0}.panel p{color:var(--muted)}.app-grid{display:grid;gap:12px}.app-card{display:flex;align-items:center;gap:14px;background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:14px}.app-card h3{margin:0 0 5px}.app-card p{margin:0 0 8px;font-size:13px}.grow{flex:1}.app-icon{width:42px;height:42px;border-radius:12px;background:#173456;display:grid;place-items:center;font-weight:800;color:#76b9ff}.meta{display:flex;gap:9px;color:var(--muted);font-size:12px}.status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:750}.status.online,.status.active{background:#123a2b;color:#75e4b1}.status.development{background:#2b2848;color:#aaa6ff}.status.maintenance{background:#3b2d13;color:#f5c75b}.status.offline,.status.disabled{background:#401d28;color:#ff8d9d}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:620px}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--line);font-size:13px}th{color:#8fa3c0;font-size:11px;text-transform:uppercase}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.feature-grid>div,.config-card{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:14px}.feature-grid p{font-size:13px}.app-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.config-title{display:flex;gap:10px;align-items:center;margin-bottom:14px}.config-title small{display:block;color:var(--muted)}.readout{display:grid;gap:5px;margin:12px 0}.readout code{overflow:auto;background:#081321;padding:9px;border-radius:8px}.actions{display:flex;gap:8px}.health-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.health-row small{display:block;color:var(--muted);margin-top:4px}.public-nav{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #162840}.landing{background:radial-gradient(circle at 70% 10%,#143a68 0,transparent 34%),var(--bg)}.landing-main{max-width:1100px;margin:0 auto;padding:110px 5vw}.landing-main h1{font-size:clamp(45px,7vw,82px);line-height:.98;letter-spacing:-.05em}.landing-main>p{max-width:680px;font-size:18px;line-height:1.6;color:var(--muted)}.landing-actions{margin:28px 0 70px}.landing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.landing-grid>div{background:#0d1829;border:1px solid var(--line);border-radius:15px;padding:18px}.landing-grid p{color:var(--muted)}@media(max-width:960px){.sidebar{position:static;width:auto}.sidebar nav{grid-template-columns:repeat(3,1fr)}.sidebar-footer{display:none}.main{margin:0;padding:0 18px 30px}.stats-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.form-grid,.app-config-grid,.landing-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.check-grid{grid-template-columns:1fr}.sidebar nav{grid-template-columns:1fr 1fr}.hero-panel{align-items:flex-start;flex-direction:column}.stats-grid{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1fr}.app-card{align-items:flex-start;flex-wrap:wrap}}


/* ==========================================================================
   CCUS Connect v2.9.17 — UI Button Consistency & Polish
   ========================================================================== */

:root{
    --ccus-button-height:42px;
    --ccus-button-height-small:34px;
    --ccus-button-radius:11px;
    --ccus-button-pad-x:16px;
    --ccus-button-small-pad-x:12px;
}

/* All CCUS action bubbles share the same box model. */
.button,
button.button,
a.button,
input.button[type="submit"],
input.button[type="button"]{
    box-sizing:border-box;
    min-height:var(--ccus-button-height);
    height:var(--ccus-button-height);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:0 var(--ccus-button-pad-x);
    border-radius:var(--ccus-button-radius);
    line-height:1;
    white-space:nowrap;
    vertical-align:middle;
    font-size:14px;
    font-weight:700;
    text-decoration:none;
}

/* Small inline/table actions stay compact but are still identical to each other. */
.button.small,
button.button.small,
a.button.small{
    min-height:var(--ccus-button-height-small);
    height:var(--ccus-button-height-small);
    padding:0 var(--ccus-button-small-pad-x);
    border-radius:9px;
    font-size:13px;
}

/* Preserve visual hierarchy without changing physical dimensions. */
.button.secondary{
    border-width:1px;
    border-style:solid;
}
.button.danger,
.button.warning{
    min-height:var(--ccus-button-height);
    height:var(--ccus-button-height);
}

/* Native buttons used as styled action bubbles should align with .button controls. */
.actions button,
.panel-head button,
.identity-action-row button,
.reset-actions button,
.event-actions button,
.security-alert-head-actions button{
    box-sizing:border-box;
}

/* Action groups align cleanly and do not produce odd-height rows. */
.actions,
.panel-head .actions,
.identity-action-row,
.reset-actions,
.event-actions,
.security-alert-head-actions{
    align-items:center;
}

/* Forms that contain only an action button should not alter the button size. */
.actions form,
.reset-actions form,
.event-actions form,
.security-alert-head-actions form,
td form{
    margin:0;
    display:inline-flex;
    align-items:center;
}

/* Consistent focus treatment across links and buttons. */
.button:focus-visible,
button.button:focus-visible,
a.button:focus-visible{
    outline:2px solid rgba(85,182,255,.9);
    outline-offset:2px;
}

/* Disabled state keeps its geometry. */
.button:disabled,
.button[aria-disabled="true"]{
    opacity:.52;
    cursor:not-allowed;
}

/* On smaller screens, retain equal heights; only intentionally full-width
   actions expand horizontally through existing page rules. */
@media(max-width:720px){
    .button,
    button.button,
    a.button{
        min-height:44px;
        height:44px;
    }
    .button.small,
    button.button.small,
    a.button.small{
        min-height:36px;
        height:36px;
    }
}


/* CCUS Connect v2.11.0 — Ecosystem Control Centre */
.ecosystem-hero{background:linear-gradient(125deg,#102b4c,#101c30 62%,#0a1727)}
.stat small{display:block;color:var(--muted);font-size:11px;margin-top:6px}
.ecosystem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.monitor-grid{margin-bottom:18px}
.ecosystem-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:17px;min-width:0}
.ecosystem-card-head{display:flex;align-items:center;gap:12px;margin-bottom:15px}
.ecosystem-card-head h3,.ecosystem-card-head strong{margin:0;display:block}.ecosystem-card-head small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.ecosystem-card-head .status{margin-left:auto;white-space:nowrap}
.ecosystem-facts{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-size:12px}.ecosystem-facts b{color:#dce8f8;font-weight:700}
.monitor-list{display:grid;gap:0;margin:4px 0 14px}.monitor-list>div{display:flex;justify-content:space-between;gap:18px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}.monitor-list span{color:var(--muted)}.monitor-list b{text-align:right}
.monitor-error{padding:10px 12px;margin:0 0 12px;border-radius:10px;background:#351923;border:1px solid #6a2d3d;color:#ff9dad;font-size:12px;line-height:1.45}
.dependency-list{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 13px}.dependency-list span{padding:6px 8px;border-radius:8px;background:#111f33;border:1px solid var(--line);font-size:11px;color:var(--muted)}.dependency-list b{color:#76e5b2}
.toggle-line{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:11px 12px;background:var(--panel2);border:1px solid var(--line);border-radius:10px}.toggle-line input{width:auto;margin:0}.toggle-line span{font-size:13px}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}
@media(max-width:1050px){.ecosystem-grid{grid-template-columns:1fr}}
@media(max-width:680px){.ecosystem-card-head{align-items:flex-start;flex-wrap:wrap}.ecosystem-card-head .status{margin-left:0}.monitor-list>div{align-items:flex-start}.panel-head{align-items:flex-start;flex-direction:column}.panel-head .actions{width:100%;flex-wrap:wrap}}


/* v2.11.6 — Ecosystem Updates polish */
.deployment-panel{padding:20px}
.deployment-form{margin-top:18px}
.deployment-form-grid{gap:18px}
.deployment-form-grid label{display:flex;flex-direction:column;gap:8px;font-weight:700}
.deployment-form-grid select,
.release-package-input{
  width:100%;
  min-height:48px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#0a1424;
  color:var(--text);
}
.deployment-form-grid select{padding:0 13px}
.release-package-input{
  padding:6px 8px;
  font:inherit;
}
.release-package-input::file-selector-button{
  min-height:34px;
  margin-right:12px;
  padding:7px 12px;
  border:1px solid #355170;
  border-radius:8px;
  background:#182a43;
  color:var(--text);
  font-weight:750;
  cursor:pointer;
}
.release-package-input::-webkit-file-upload-button{
  min-height:34px;
  margin-right:12px;
  padding:7px 12px;
  border:1px solid #355170;
  border-radius:8px;
  background:#182a43;
  color:var(--text);
  font-weight:750;
}
.form-help{
  display:block;
  margin-top:0;
  color:var(--muted);
  font-size:12px;
  font-weight:600;
  line-height:1.45;
}
.form-help code{
  padding:2px 5px;
  border:1px solid var(--line);
  border-radius:5px;
  background:#0a1424;
  color:#cfe3ff;
}
.deployment-form-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--line);
}
.deployment-form-note{
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}
.deployment-success{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.deployment-result-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
}
.deployment-result-meta span{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
}
.deployment-result-meta b{
  color:#bfe8d5;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.deployment-result-meta code{
  color:#e9fff4;
  font-size:12px;
  overflow-wrap:anywhere;
}
.deployment-history-panel{padding:20px}
.deployment-history-list{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.deployment-history-item{
  padding:15px 16px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel2);
}
.deployment-history-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding-bottom:12px;
  margin-bottom:12px;
  border-bottom:1px solid var(--line);
}
.deployment-history-head>div{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:7px 12px;
}
.deployment-history-head strong{
  font-size:14px;
  color:var(--text);
}
.deployment-history-head>div>span{
  color:#b7c6db;
  font-size:12px;
  font-weight:650;
}
.deployment-history-head>div>span b{
  color:#6faeff;
}
.deployment-history-meta{
  display:grid;
  grid-template-columns:minmax(145px,.8fr) minmax(220px,1.2fr) minmax(250px,1.4fr);
  gap:12px 20px;
}
.deployment-history-meta>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:5px;
}
.deployment-history-meta>div>span{
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.deployment-history-meta strong{
  color:var(--text);
  font-size:12px;
}
.deployment-history-meta code{
  display:block;
  color:#c8d8ee;
  font-size:11px;
  line-height:1.4;
  overflow-wrap:anywhere;
  word-break:break-word;
}
@media(max-width:980px){
  .deployment-history-meta{grid-template-columns:1fr 1fr}
  .deployment-history-meta>div:last-child{grid-column:1/-1}
}
@media(max-width:680px){
  .deployment-form-grid{grid-template-columns:1fr}
  .deployment-form-actions{align-items:stretch;flex-direction:column}
  .deployment-form-actions .button{width:100%}
  .deployment-history-meta{grid-template-columns:1fr}
  .deployment-history-meta>div:last-child{grid-column:auto}
  .deployment-result-meta{flex-direction:column}
}


/* v2.11.7 — coordinated ecosystem release board */
.ecosystem-update-hero{margin-bottom:18px}
.release-board-panel{padding:20px}
.release-board-head{align-items:flex-start}
.release-board-order{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:3px;
  color:var(--muted);
  font-size:11px;
}
.release-board-order strong{color:#dce9fb;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.release-target-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}
.release-target-card{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel2);
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.release-target-card.has-package{
  border-color:#3c7fc8;
  box-shadow:0 0 0 1px rgba(47,143,255,.15),0 12px 30px rgba(0,0,0,.14);
}
.release-target-card.is-disabled{opacity:.62}
.release-target-head{
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto;
  gap:11px;
  align-items:center;
  padding:15px;
  border-bottom:1px solid var(--line);
}
.release-target-head .ecosystem-icon{
  width:40px;
  height:40px;
  border-radius:11px;
  display:grid;
  place-items:center;
  background:#173a63;
  color:#84c4ff;
  font-weight:850;
}
.release-target-head>div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}
.release-target-head>div strong{
  overflow:hidden;
  color:var(--text);
  font-size:14px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.release-target-head>div span{
  overflow:hidden;
  color:var(--muted);
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.release-target-body{padding:15px}
.release-target-body label{
  display:block;
  margin-bottom:8px;
  color:#dbe7f8;
  font-size:11px;
  font-weight:800;
}
.release-file-shell{
  padding:6px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#091425;
}
.release-file-shell .release-package-input{
  width:100%;
  min-height:38px;
  padding:0;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--text);
  font-size:11px;
}
.release-file-shell .release-package-input::file-selector-button{
  min-height:34px;
  margin-right:8px;
  padding:7px 10px;
  border:1px solid #355170;
  border-radius:8px;
  background:#182a43;
  color:var(--text);
  font-weight:750;
  cursor:pointer;
}
.release-file-shell .release-package-input::-webkit-file-upload-button{
  min-height:34px;
  margin-right:8px;
  padding:7px 10px;
  border:1px solid #355170;
  border-radius:8px;
  background:#182a43;
  color:var(--text);
  font-weight:750;
}
.release-target-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:10px;
  color:var(--muted);
  font-size:10px;
}
.release-target-foot code{
  padding:2px 5px;
  border:1px solid var(--line);
  border-radius:5px;
  background:#091425;
  color:#cfe3ff;
}
.batch-deploy-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:18px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#0a1424;
}
.batch-deploy-bar>div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:4px;
}
.batch-deploy-bar strong{font-size:13px;color:var(--text)}
.batch-deploy-bar span{font-size:11px;color:var(--muted);line-height:1.45}
.batch-deploy-button{min-width:255px}
.batch-deploy-button:disabled{
  cursor:not-allowed;
  opacity:.45;
}
.batch-result-panel{padding:20px}
.batch-result-list{display:grid;gap:9px;margin-top:16px}
.batch-result-row{
  display:grid;
  grid-template-columns:minmax(180px,.7fr) minmax(0,1.5fr) auto;
  gap:16px;
  align-items:center;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--panel2);
}
.batch-result-main{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}
.batch-result-main strong{font-size:13px;color:var(--text)}
.batch-result-main span{font-size:11px;color:var(--muted)}
.batch-result-detail{
  display:flex;
  min-width:0;
  flex-wrap:wrap;
  gap:6px 16px;
}
.batch-result-detail>span{
  display:flex;
  min-width:0;
  align-items:center;
  gap:6px;
  color:var(--muted);
  font-size:10px;
}
.batch-result-detail b{
  color:#9eb2cf;
  font-size:9px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.batch-result-detail code{
  color:#cbd9ec;
  overflow-wrap:anywhere;
}
.batch-result-error{color:#ff9aaa!important}
@media(max-width:1100px){
  .release-target-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .release-target-grid{grid-template-columns:1fr}
  .release-board-order{align-items:flex-start}
  .batch-deploy-bar{align-items:stretch;flex-direction:column}
  .batch-deploy-button{width:100%;min-width:0}
  .batch-result-row{grid-template-columns:1fr}
  .release-target-foot{align-items:flex-start;flex-direction:column}
}


/* v2.11.9 — one-file Ecosystem Release Bundle */
.ecosystem-bundle-panel{padding:20px}
.bundle-panel-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  gap:24px;
  align-items:center;
}
.bundle-panel-copy h3{
  margin:5px 0 8px;
  font-size:20px;
}
.bundle-panel-copy p{
  max-width:760px;
  margin:0;
  color:var(--muted);
  line-height:1.5;
}
.bundle-capabilities{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 14px;
  margin-top:16px;
}
.bundle-capabilities span{
  color:#bed0e8;
  font-size:11px;
  font-weight:650;
}
.ecosystem-bundle-form{
  padding:15px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#091425;
}
.ecosystem-bundle-form label{
  display:block;
  margin-bottom:8px;
  color:#dbe7f8;
  font-size:11px;
  font-weight:800;
}
.bundle-file-shell{margin-bottom:8px}
.ecosystem-bundle-form small{
  display:block;
  color:var(--muted);
  font-size:10px;
  line-height:1.45;
}
.ecosystem-bundle-form small code{
  color:#cfe3ff;
}
.ecosystem-bundle-form .button{
  width:100%;
  margin-top:13px;
}
.release-method-divider{
  display:flex;
  align-items:center;
  gap:14px;
  margin:16px 0;
  color:#6f83a0;
  font-size:9px;
  font-weight:850;
  letter-spacing:.11em;
}
.release-method-divider::before,
.release-method-divider::after{
  content:"";
  height:1px;
  flex:1;
  background:var(--line);
}
@media(max-width:900px){
  .bundle-panel-layout{grid-template-columns:1fr}
}
@media(max-width:620px){
  .bundle-capabilities{grid-template-columns:1fr}
}


/* v2.12.0 — System Health Control Centre */
.system-health-hero{margin-bottom:18px}
.health-overview-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:18px;
  padding:20px;
  border:1px solid var(--line);
  border-radius:15px;
  background:linear-gradient(135deg,#0d1728,#101f35);
}
.health-overview-status{
  display:flex;
  align-items:center;
  gap:13px;
}
.health-overview-status>div{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.health-overview-status span:not(.health-pulse){
  color:var(--muted);
  font-size:10px;
  font-weight:850;
  letter-spacing:.1em;
}
.health-overview-status strong{
  font-size:20px;
  color:var(--text);
}
.health-pulse{
  width:15px;
  height:15px;
  flex:0 0 auto;
  border-radius:50%;
  box-shadow:0 0 0 6px rgba(145,163,191,.08);
  background:#91a3bf;
}
.health-pulse.online{background:var(--good);box-shadow:0 0 0 6px rgba(41,211,145,.10),0 0 24px rgba(41,211,145,.35)}
.health-pulse.maintenance{background:#f0b34e;box-shadow:0 0 0 6px rgba(240,179,78,.10),0 0 24px rgba(240,179,78,.25)}
.health-pulse.offline{background:var(--bad);box-shadow:0 0 0 6px rgba(255,97,117,.10),0 0 24px rgba(255,97,117,.25)}
.health-overview-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(110px,1fr));
  gap:10px;
}
.health-overview-stats>div{
  min-width:0;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#091425;
}
.health-overview-stats span{
  display:block;
  color:var(--muted);
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.health-overview-stats strong{
  display:block;
  margin-top:4px;
  color:var(--text);
  font-size:18px;
}
.system-issues-panel{padding:20px}
.system-clear-state{
  display:flex;
  flex-direction:column;
  gap:5px;
  margin-top:15px;
  padding:15px;
  border:1px solid #205b47;
  border-radius:12px;
  background:#0b2a20;
}
.system-clear-state strong{color:#9aebc7}
.system-clear-state span{color:#8eb9a8;font-size:12px}
.system-issue-list{display:grid;gap:8px;margin-top:15px}
.system-issue-row{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto;
  gap:11px;
  align-items:center;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel2);
}
.system-issue-row.critical{border-color:#67303d;background:#2b1720}
.system-issue-row.warning{border-color:#5a4929;background:#251f15}
.system-issue-mark{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#16263d;
  color:#dcecff;
  font-weight:900;
}
.system-issue-row.critical .system-issue-mark{background:#542330;color:#ffb4bf}
.system-issue-row.warning .system-issue-mark{background:#4d3c1d;color:#ffd792}
.system-issue-row>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.system-issue-row strong{font-size:12px;color:var(--text)}
.system-issue-row div span{font-size:11px;color:var(--muted);line-height:1.4}
.system-issue-row small{color:#8396b2;font-size:10px}
.system-app-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
  margin-top:17px;
}
.system-app-card{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel2);
}
.system-app-head{
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:14px;
  border-bottom:1px solid var(--line);
}
.system-app-head>div:not(.app-icon){
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}
.system-app-head strong{
  overflow:hidden;
  color:var(--text);
  font-size:13px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.system-app-head div span{
  overflow:hidden;
  color:var(--muted);
  font-size:10px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.system-diagnostic-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
}
.system-diagnostic-grid>div{
  min-width:0;
  padding:12px 13px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.system-diagnostic-grid>div:nth-child(2n){border-right:0}
.system-diagnostic-grid>div:nth-last-child(-n+2){border-bottom:0}
.system-diagnostic-grid span{
  display:block;
  color:var(--muted);
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.system-diagnostic-grid strong{
  display:block;
  margin-top:4px;
  color:var(--text);
  font-size:12px;
  overflow-wrap:anywhere;
}
.system-diagnostic-grid small{
  display:block;
  margin-top:3px;
  color:#7990ad;
  font-size:9px;
  overflow-wrap:anywhere;
}
.system-dependency-strip{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:10px 13px 13px;
  border-top:1px solid var(--line);
}
.system-dependency-strip span{
  padding:4px 7px;
  border-radius:999px;
  font-size:9px;
  font-weight:750;
}
.system-dependency-strip .ok{background:#123628;color:#84ddb5}
.system-dependency-strip .bad{background:#42202a;color:#ff9aaa}
.system-health-columns{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:18px;
}
.system-health-columns>.panel{min-width:0}
.system-local-checks .health-row small{max-width:640px;overflow-wrap:anywhere}
.system-fact-list{
  display:grid;
  margin-top:10px;
}
.system-fact-list>div{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:11px 0;
  border-bottom:1px solid var(--line);
}
.system-fact-list>div:last-child{border-bottom:0}
.system-fact-list span{color:var(--muted);font-size:11px}
.system-fact-list strong{
  max-width:62%;
  color:var(--text);
  font-size:11px;
  text-align:right;
  overflow-wrap:anywhere;
}
.system-deployment-list{display:grid;gap:8px;margin-top:14px}
.system-deployment-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel2);
}
.system-deployment-row>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.system-deployment-row strong{color:var(--text);font-size:11px}
.system-deployment-row div span{color:var(--muted);font-size:10px;overflow-wrap:anywhere}
.system-health-note p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:1100px){
  .health-overview-card{align-items:stretch;flex-direction:column}
  .health-overview-stats{grid-template-columns:repeat(4,1fr)}
  .system-app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .health-overview-stats{grid-template-columns:repeat(2,1fr)}
  .system-health-columns{grid-template-columns:1fr}
}
@media(max-width:620px){
  .system-app-grid{grid-template-columns:1fr}
  .system-issue-row{grid-template-columns:28px minmax(0,1fr)}
  .system-issue-row>small{grid-column:2}
  .health-overview-stats{grid-template-columns:1fr 1fr}
  .system-deployment-row{align-items:flex-start}
}


/* v2.12.1 — component health timing diagnostics */
.system-timing-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--line);
  background:#0a1424;
}
.system-timing-strip>div{
  min-width:0;
  padding:10px 12px;
  border-right:1px solid var(--line);
}
.system-timing-strip>div:last-child{border-right:0}
.system-timing-strip span{
  display:block;
  color:var(--muted);
  font-size:8px;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.system-timing-strip strong{
  display:block;
  margin-top:4px;
  color:#dce9fb;
  font-size:11px;
  overflow-wrap:anywhere;
}
@media(max-width:680px){
  .system-timing-strip{grid-template-columns:1fr 1fr}
  .system-timing-strip>div:nth-child(2){border-right:0}
  .system-timing-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
}


/* v2.12.2 — separate clock drift from health sample age */
.system-diagnostic-grid .system-sample-cell{
  grid-column:1/-1;
  border-right:0;
  border-top:1px solid var(--line);
  border-bottom:0;
}


/* v2.13.0 — Security & Audit Centre */
.security-centre-hero{margin-bottom:16px}
.security-posture-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:160px;
  padding:10px 14px;
  border:1px solid var(--line);
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.security-posture-chip.online{background:#103326;border-color:#245c46;color:#7be6b6}
.security-posture-chip.maintenance{background:#392d14;border-color:#66501d;color:#f7ce72}
.security-posture-chip.offline{background:#3b1823;border-color:#6a2d3d;color:#ff9cac}
.security-summary-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  margin-bottom:16px;
}
.security-summary-card{
  min-width:0;
  padding:14px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel);
}
.security-summary-card span{
  display:block;
  color:var(--muted);
  font-size:9px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.security-summary-card strong{
  display:block;
  margin-top:6px;
  color:var(--text);
  font-size:22px;
}
.security-summary-card small{
  display:block;
  margin-top:5px;
  color:#7187a6;
  font-size:9px;
  line-height:1.35;
}
.security-action-bar{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-bottom:18px;
}
.security-action{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#0d192b;
  transition:border-color .15s ease,background .15s ease;
}
.security-action:hover{border-color:#34577e;background:#102038}
.security-action strong{font-size:12px;color:var(--text)}
.security-action span{font-size:10px;color:var(--muted)}
.security-layout{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.security-layout>.panel{min-width:0}
.security-check-list{display:grid}
.security-check-row{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:10px 0;
  border-bottom:1px solid var(--line);
}
.security-check-row:last-child{border-bottom:0}
.security-check-icon{
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:8px;
  font-weight:900;
  font-size:12px;
}
.security-check-icon.ok{background:#123a2b;color:#77e3b1}
.security-check-icon.bad{background:#401d28;color:#ff91a0}
.security-check-row>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.security-check-row strong{font-size:11px;color:var(--text)}
.security-check-row small{font-size:9px;color:var(--muted);line-height:1.4;overflow-wrap:anywhere}
.security-fact-list{display:grid}
.security-fact-list>div,
.security-token-apps>div,
.security-event-types>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:9px 0;
  border-bottom:1px solid var(--line);
}
.security-fact-list>div:last-child,
.security-token-apps>div:last-child,
.security-event-types>div:last-child{border-bottom:0}
.security-fact-list span,
.security-token-apps span{font-size:10px;color:var(--muted)}
.security-fact-list strong,
.security-token-apps strong{font-size:11px;color:var(--text)}
.security-subtitle{
  display:block!important;
  margin-top:15px;
  padding-bottom:7px;
  border-bottom:1px solid var(--line);
  color:#7890b0!important;
  font-size:8px!important;
  font-weight:900;
  letter-spacing:.09em;
}
.security-risk-list{display:grid;gap:8px}
.security-risk-row{
  display:grid;
  grid-template-columns:72px minmax(0,1fr) minmax(145px,.55fr) auto;
  gap:12px;
  align-items:center;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel2);
}
.security-severity{
  display:inline-flex;
  justify-content:center;
  padding:5px 7px;
  border-radius:999px;
  font-size:9px;
  font-weight:850;
}
.security-severity.online{background:#123a2b;color:#75e4b1}
.security-severity.maintenance{background:#3b2d13;color:#f5c75b}
.security-severity.offline{background:#401d28;color:#ff8d9d}
.security-risk-main,
.security-risk-time{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}
.security-risk-main strong{font-size:11px;color:var(--text)}
.security-risk-main span,
.security-risk-time span{font-size:9px;color:var(--muted);overflow-wrap:anywhere}
.security-risk-time strong{font-size:10px;color:#c5d5e9}
.security-empty-ok{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:13px;
  border:1px solid #245c46;
  border-radius:10px;
  background:#103326;
}
.security-empty-ok.compact{margin-top:8px}
.security-empty-ok strong{font-size:11px;color:#91e9c3}
.security-empty-ok span{font-size:10px;color:#8cb6a7}
.security-auth-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
.security-auth-grid>div{
  padding:11px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel2);
}
.security-auth-grid span{display:block;color:var(--muted);font-size:9px}
.security-auth-grid strong{display:block;margin-top:4px;color:var(--text);font-size:17px}
.security-event-types{margin-top:12px}
.security-event-types code{
  color:#bfd2ea;
  font-size:9px;
  overflow-wrap:anywhere;
}
.security-event-types strong{font-size:10px;color:var(--text)}
.security-suspicious-list,
.security-session-list,
.security-privileged-list{display:grid;gap:7px}
.security-suspicious-row,
.security-session-row,
.security-privileged-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 11px;
  border:1px solid var(--line);
  border-radius:9px;
  background:var(--panel2);
}
.security-suspicious-row>div,
.security-session-row>div,
.security-privileged-row>div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}
.security-suspicious-row strong,
.security-session-row strong,
.security-privileged-row strong{font-size:10px;color:var(--text)}
.security-suspicious-row div span,
.security-session-row div span,
.security-privileged-row div span{font-size:9px;color:var(--muted)}
.security-session-row>small,
.security-privileged-row>small{
  max-width:45%;
  color:#768ca9;
  font-size:8px;
  text-align:right;
  overflow-wrap:anywhere;
}
.security-audit-note .panel-head{margin-bottom:0}
@media(max-width:1180px){
  .security-summary-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .security-layout{grid-template-columns:1fr}
  .security-action-bar{grid-template-columns:repeat(2,1fr)}
  .security-risk-row{grid-template-columns:70px minmax(0,1fr) auto}
  .security-risk-time{grid-column:2}
}
@media(max-width:650px){
  .security-summary-grid{grid-template-columns:repeat(2,1fr)}
  .security-action-bar{grid-template-columns:1fr}
  .security-auth-grid{grid-template-columns:1fr 1fr}
  .security-risk-row{grid-template-columns:1fr}
  .security-risk-time{grid-column:auto}
  .security-session-row,
  .security-privileged-row{align-items:flex-start;flex-direction:column}
  .security-session-row>small,
  .security-privileged-row>small{max-width:100%;text-align:left}
}


/* v2.13.1 — suspicious-authentication resolution workflow */
.security-suspicious-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}
.security-suspicious-main{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
}
.security-suspicious-main>div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}
.security-suspicious-resolve{
  display:flex;
  margin:0;
}
.security-suspicious-resolve .button{min-width:108px}
@media(max-width:650px){
  .security-suspicious-row{grid-template-columns:1fr}
  .security-suspicious-resolve .button{width:100%}
}


/* v2.13.2 — security posture thresholds + destructive log maintenance */
.security-action-bar{grid-template-columns:repeat(5,1fr)}
.security-action.danger{
  border-color:#63303c;
  background:#28151d;
}
.security-action.danger strong{color:#ff9dab}
.security-action.danger span{color:#b88992}
.security-log-maintenance{
  border-color:#5b2935;
  background:linear-gradient(135deg,#121927,#25131a);
}
.eyebrow.danger{color:#ff8597}
.security-log-count{
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border:1px solid #60303c;
  border-radius:999px;
  background:#351822;
  color:#ff9dab;
  font-size:11px;
  font-weight:800;
}
.security-log-scope{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:14px;
}
.security-log-scope>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#0b1627;
}
.security-log-scope span{color:var(--muted);font-size:9px}
.security-log-scope strong{color:var(--text);font-size:11px}
.security-log-preserved{
  margin-top:12px;
  padding:11px 12px;
  border:1px solid #284a40;
  border-radius:9px;
  background:#10251f;
  color:#8fb9aa;
  font-size:10px;
  line-height:1.5;
}
.security-log-preserved strong{color:#91e7c1}
.security-log-warning{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-top:12px;
  padding:12px;
  border:1px solid #6b303e;
  border-radius:10px;
  background:#351820;
}
.security-log-warning strong{color:#ff9dab;font-size:11px}
.security-log-warning span{color:#c69aa3;font-size:10px;line-height:1.45}
.security-clear-logs-form{margin-top:14px}
.security-clear-logs-form label{
  display:block;
  margin-bottom:7px;
  color:#cfdae9;
  font-size:10px;
  font-weight:750;
}
.security-clear-logs-form code{
  padding:2px 5px;
  border:1px solid #5f3340;
  border-radius:5px;
  background:#25131a;
  color:#ffabb7;
}
.security-clear-logs-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
}
.security-clear-logs-controls input{
  width:100%;
  min-height:44px;
  padding:0 12px;
  border:1px solid #5d3440;
  border-radius:10px;
  background:#091321;
  color:var(--text);
  font:inherit;
}
.button.danger{
  border-color:#a83e55;
  background:#9f3048;
  color:#fff;
}
.button.danger:hover{background:#b43852}
.button.danger:disabled{
  cursor:not-allowed;
  opacity:.42;
}
@media(max-width:1100px){
  .security-action-bar{grid-template-columns:repeat(3,1fr)}
  .security-log-scope{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  .security-action-bar{grid-template-columns:1fr}
  .security-log-scope{grid-template-columns:1fr}
  .security-clear-logs-controls{grid-template-columns:1fr}
}


/* v2.13.3 — security posture indicator + 8-hour identity session expiry */
.security-posture-chip{display:none}
.security-posture-status{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:9px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#0a1627;
}
.security-posture-status>div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:2px;
}
.security-posture-status small{
  color:#7e91ab;
  font-size:8px;
  font-weight:900;
  letter-spacing:.10em;
  white-space:nowrap;
}
.security-posture-status strong{
  color:var(--text);
  font-size:11px;
  line-height:1.2;
  white-space:nowrap;
}
.security-posture-dot{
  width:10px;
  height:10px;
  flex:0 0 auto;
  border-radius:50%;
  background:#8292a8;
  box-shadow:0 0 0 4px rgba(130,146,168,.10);
}
.security-posture-status.online{
  border-color:#245c46;
  background:#0e2c23;
}
.security-posture-status.online .security-posture-dot{
  background:#43d59b;
  box-shadow:0 0 0 4px rgba(67,213,155,.10);
}
.security-posture-status.online strong{color:#8de8bf}
.security-posture-status.maintenance{
  border-color:#68501f;
  background:#302612;
}
.security-posture-status.maintenance .security-posture-dot{
  background:#efb94e;
  box-shadow:0 0 0 4px rgba(239,185,78,.10);
}
.security-posture-status.maintenance strong{color:#f6cf77}
.security-posture-status.offline{
  border-color:#6b2f3e;
  background:#331820;
}
.security-posture-status.offline .security-posture-dot{
  background:#f06d82;
  box-shadow:0 0 0 4px rgba(240,109,130,.10);
}
.security-posture-status.offline strong{color:#ff9cab}
@media(max-width:720px){
  .security-posture-status{width:100%;box-sizing:border-box}
}


/* v2.13.4 — automatic System Health + wrapped security posture status */
.security-posture-status{
  width:182px;
  max-width:182px;
  flex:0 0 182px;
  padding:9px 11px;
}
.security-posture-status>div{
  min-width:0;
  width:100%;
}
.security-posture-status small{
  white-space:normal;
  line-height:1.2;
}
.security-posture-status strong{
  white-space:normal;
  overflow-wrap:anywhere;
  line-height:1.25;
  max-width:132px;
}
.system-health-auto{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:-2px 0 18px;
  padding:12px 14px;
  border:1px solid #245c46;
  border-radius:12px;
  background:#0d281f;
}
.system-health-auto-state{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.system-health-auto-state>div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}
.system-health-auto-state strong{
  color:#a0e9c8;
  font-size:11px;
}
.system-health-auto-state span{
  color:#8fb7a9;
  font-size:10px;
  line-height:1.35;
}
.system-health-auto-dot{
  width:10px;
  height:10px;
  flex:0 0 auto;
  border-radius:50%;
  background:#44d59c;
  box-shadow:0 0 0 4px rgba(68,213,156,.10);
}
.system-health-auto.checking .system-health-auto-dot{
  animation:systemHealthPulse 1s ease-in-out infinite;
}
.system-health-auto.error{
  border-color:#68404a;
  background:#2d1920;
}
.system-health-auto.error .system-health-auto-dot{
  background:#f06d82;
  box-shadow:0 0 0 4px rgba(240,109,130,.10);
}
.system-health-auto-next{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:2px;
  flex:0 0 auto;
}
.system-health-auto-next span{
  color:#75927f;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
.system-health-auto-next strong{
  min-width:62px;
  color:#d9f3e8;
  font-size:11px;
  text-align:right;
}
@keyframes systemHealthPulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.45;transform:scale(.82)}
}
@media(max-width:720px){
  .security-posture-status{
    width:100%;
    max-width:100%;
    flex-basis:auto;
  }
  .security-posture-status strong{max-width:none}
  .system-health-auto{
    align-items:flex-start;
    flex-direction:column;
  }
  .system-health-auto-next{
    align-items:flex-start;
  }
  .system-health-auto-next strong{text-align:left}
}


/* v2.13.5 — centre Security Posture status text independently of status dot */
.security-posture-status{
  position:relative;
  justify-content:center;
  text-align:center;
  padding-left:34px;
  padding-right:14px;
}
.security-posture-status>div{
  align-items:center;
  justify-content:center;
  text-align:center;
}
.security-posture-status small,
.security-posture-status strong{
  width:100%;
  text-align:center;
}
.security-posture-status .security-posture-dot{
  position:absolute;
  left:12px;
  top:50%;
  transform:translateY(-50%);
}

/* v2.13.6 — ecosystem release trust + central package verification */
.release-trust-panel{overflow:hidden}
.release-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.release-trust-card{background:var(--panel2);border:1px solid var(--line);border-radius:13px;padding:14px;min-width:0}
.release-trust-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.release-trust-card-head>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.release-trust-card-head strong{font-size:14px;color:#f4f8ff}
.release-trust-card-head span:not(.status){font-size:10px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;overflow-wrap:anywhere}
.release-trust-fingerprint{display:flex;flex-direction:column;gap:6px;padding-top:10px;border-top:1px solid var(--line)}
.release-trust-fingerprint>span{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7f94b2}
.release-trust-fingerprint code{display:block;background:#081321;border:1px solid #172b45;border-radius:8px;padding:8px;font-size:9px;line-height:1.45;overflow-wrap:anywhere;white-space:normal;color:#bcd4f5}
@media(max-width:1100px){.release-trust-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.release-trust-grid{grid-template-columns:1fr}.release-trust-card-head{align-items:flex-start;flex-direction:column}}

/* v2.14.0 security */
.status.maintenance{white-space:normal;text-align:center}
code{overflow-wrap:anywhere}

/* v2.15.0 — Customer Operations */
.subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.subnav-link{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:#0b1626;color:#9fb0c7;font-size:13px;font-weight:700}
.subnav-link:hover,.subnav-link.active{background:#173253;border-color:#315a88;color:#fff}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;overflow-wrap:anywhere}
.customer-ops-inline-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:8px;align-items:end;min-width:260px}
.customer-ops-inline-form input{min-width:0}
.customer-ops-toggle{display:flex;align-items:center;gap:9px;margin:4px 0 14px;color:#dbe7f8;font-size:13px;font-weight:650}
.customer-ops-toggle input[type="checkbox"]{width:auto;margin:0}
@media(max-width:720px){.subnav{display:grid;grid-template-columns:1fr 1fr}.customer-ops-inline-form{grid-template-columns:1fr;min-width:220px}}
.health-list{display:grid}

/* v2.16.0 — Passkeys & Authentication Modernisation */
.passkey-hero{align-items:center}
.passkey-list{display:grid;gap:12px}
.passkey-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--panel2)}
.passkey-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#10243d;border:1px solid #284c78;font-size:20px}
.passkey-main{display:flex;flex-direction:column;gap:4px;min-width:0}
.passkey-main strong{font-size:14px;color:#f4f8ff}
.passkey-main small{font-size:11px;color:var(--muted);overflow-wrap:anywhere}
.passkey-main .status{align-self:flex-start;margin-top:4px}
.passkey-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.passkey-inline{display:flex;gap:8px;align-items:center;margin:0}
.passkey-inline input{min-width:170px;max-width:240px;margin:0}
.passkey-browser-status{min-height:18px;margin:10px 0 0;color:var(--muted);font-size:12px;line-height:1.45;text-align:center}
.passkey-primary{display:block;width:100%;min-height:48px}
.empty-state{padding:22px;border:1px dashed var(--line);border-radius:12px;text-align:center;background:#0a1525}
.empty-state strong{display:block;color:#eef5ff;margin-bottom:5px}
.empty-state p{margin:0;color:var(--muted)}
@media(max-width:850px){
  .passkey-row{grid-template-columns:auto 1fr}
  .passkey-actions{grid-column:1/-1;justify-content:stretch}
  .passkey-actions form,.passkey-inline{width:100%}
  .passkey-inline{display:grid;grid-template-columns:1fr auto}
  .passkey-inline input{min-width:0;max-width:none}
}
@media(max-width:520px){
  .passkey-row{grid-template-columns:1fr}
  .passkey-icon{display:none}
  .passkey-inline{grid-template-columns:1fr}
  .passkey-actions .button{width:100%}
}


/* v2.16.2 — Passkey sign-in secondary action centring */
.passkey-secondary-actions{width:100%;display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:10px}
.passkey-secondary-action{width:100%;margin:0!important;display:flex!important;justify-content:center!important;align-items:center}
.passkey-secondary-action .button{width:auto!important;margin-left:auto!important;margin-right:auto!important;flex:0 0 auto}


/* v2.17.2 — Passkey redirect reliability + consistent sign-in action geometry */
#passkey-login-form{width:100%;margin:0}
.passkey-secondary-actions{width:100%;align-items:stretch!important}
.passkey-secondary-action{width:100%;margin:0!important;display:flex!important;justify-content:stretch!important;align-items:stretch!important}
#passkey-login-form .passkey-login-action,
.passkey-secondary-action .passkey-login-action{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:48px!important;
  box-sizing:border-box!important;
  margin:0!important;
  text-align:center!important;
}


/* v2.17.4 — compact professional passkey sign-in actions */
#passkey-login-form,
.passkey-secondary-actions{
  width:min(360px,100%)!important;
  max-width:360px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.passkey-secondary-actions{
  align-items:stretch!important;
  gap:8px!important;
  margin-top:8px!important;
}
.passkey-secondary-action{
  width:100%!important;
}
#passkey-login-form .passkey-login-action,
.passkey-secondary-action .passkey-login-action{
  width:100%!important;
  min-height:42px!important;
  height:auto!important;
  padding:9px 16px!important;
  border-radius:9px!important;
  font-size:14px!important;
  line-height:1.2!important;
}
#passkey-login-form .passkey-browser-status{
  margin-top:8px!important;
}
@media(max-width:520px){
  #passkey-login-form,.passkey-secondary-actions{width:100%!important;max-width:100%!important}
  #passkey-login-form .passkey-login-action,.passkey-secondary-action .passkey-login-action{min-height:42px!important;padding:9px 14px!important}
}


/* ==========================================================================
   CCUS Connect v2.18.2 — Recovery & Resilience UI Polish
   Scoped to the recovery page so no security/recovery behaviour is affected.
   ========================================================================== */
.resilience-hero{margin-bottom:16px}
.resilience-stats-grid{align-items:stretch;margin-bottom:20px}
.resilience-stat{display:flex;min-width:0;min-height:138px;flex-direction:column}
.resilience-stat>span{font-weight:750;letter-spacing:.02em}
.resilience-stat>strong{line-height:1.12}
.resilience-stat>small{margin-top:auto;padding-top:10px;line-height:1.4}
.resilience-snapshot-id{
    display:block;
    margin-top:8px;
    color:var(--text);
    background:transparent;
    padding:0;
    border-radius:0;
    font-size:17px;
    font-weight:800;
    line-height:1.25;
    overflow-wrap:anywhere;
    word-break:normal;
}
.resilience-panel-head{align-items:flex-start;margin-bottom:14px}
.resilience-panel-head>div{min-width:0;max-width:860px}
.resilience-panel-head p{margin:7px 0 0;line-height:1.5}
.resilience-passphrase-warning{margin:0 0 16px}
.resilience-backup-form{margin:0}
.resilience-passphrase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.resilience-passphrase-grid label{margin:0}
.resilience-passphrase-grid input{min-height:44px}
.resilience-backup-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:16px;
    margin:12px 0 12px;
}
.resilience-backup-actions>span{color:var(--muted);font-size:12px;line-height:1.4;text-align:right}
.resilience-feature-grid{gap:12px;margin-top:0}
.resilience-feature-grid>div{display:flex;min-height:116px;flex-direction:column}
.resilience-feature-grid strong{font-size:15px}
.resilience-feature-grid p{margin:8px 0 0;line-height:1.45}
.resilience-header-action{flex:0 0 auto;align-self:flex-start}
.resilience-header-form{display:inline-flex;align-items:center;margin:0;flex:0 0 auto}
.resilience-empty-state{
    display:flex;
    flex-direction:column;
    gap:5px;
    padding:16px;
    border:1px dashed #314967;
    border-radius:12px;
    background:#0a1525;
}
.resilience-empty-state strong{color:#dce8f8;font-size:14px}
.resilience-empty-state span{color:var(--muted);font-size:13px;line-height:1.5}
.resilience-exports-panel .table-wrap{margin-top:2px}
.resilience-snapshot-panel .resilience-feature-grid{margin-top:2px}

@media(max-width:1120px){
    .resilience-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
    .resilience-passphrase-grid{grid-template-columns:1fr}
    .resilience-backup-actions{align-items:stretch;flex-direction:column;margin-top:14px}
    .resilience-backup-actions>span{text-align:left}
    .resilience-backup-actions .button{width:100%}
    .resilience-header-action,.resilience-header-form{width:100%}
    .resilience-header-action,.resilience-header-form .button{width:100%}
}
@media(max-width:560px){
    .resilience-stats-grid{grid-template-columns:1fr}
    .resilience-stat{min-height:0}
}


/* ==========================================================================
   CCUS Connect v2.18.3 — Administrator Backup Passphrase Generator
   ========================================================================== */
.resilience-passphrase-tools{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:12px;
    padding:12px 14px;
    border:1px solid #253b58;
    border-radius:12px;
    background:#0a1525;
}
.resilience-passphrase-tool-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.resilience-passphrase-tool-actions .button{min-width:0;white-space:nowrap}
.resilience-passphrase-tool-actions .button:disabled{opacity:.48;cursor:not-allowed}
.resilience-passphrase-status{color:var(--muted);font-size:12px;line-height:1.45;text-align:right;max-width:440px}
@media(max-width:860px){
    .resilience-passphrase-tools{align-items:stretch;flex-direction:column}
    .resilience-passphrase-status{text-align:left;max-width:none}
}
@media(max-width:560px){
    .resilience-passphrase-tool-actions{display:grid;grid-template-columns:1fr}
    .resilience-passphrase-tool-actions .button{width:100%}
}


/* ========================================================================== 
   CCUS Connect v2.18.4 — Recovery Export Action Layout Polish
   ========================================================================== */
.resilience-exports-panel table{width:100%}
.resilience-window-cell,
.resilience-offsite-cell{vertical-align:middle;text-align:center}
.resilience-window-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:86px;
    max-width:108px;
    text-align:center;
    line-height:1.2;
    white-space:normal;
}
.resilience-actions-cell{vertical-align:middle;min-width:250px}
.resilience-export-actions{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    min-width:0;
}
.resilience-export-action-row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    align-items:stretch;
}
.resilience-export-action-row .button,
.resilience-export-action-row form,
.resilience-export-action-row form .button{
    width:100%;
    min-width:0;
    margin:0;
    box-sizing:border-box;
}
.resilience-export-action-row .button{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:7px 10px;
    white-space:normal;
    text-align:center;
    line-height:1.2;
}
.resilience-export-action-row form{display:flex}
.resilience-no-actions{display:block;text-align:center;font-size:12px}
.resilience-exports-panel td code{overflow-wrap:anywhere;word-break:normal}
.resilience-exports-panel td{vertical-align:middle}

@media(max-width:1180px){
    .resilience-actions-cell{min-width:220px}
    .resilience-export-action-row{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
    .resilience-exports-panel .table-wrap{overflow-x:visible}
    .resilience-exports-panel table,
    .resilience-exports-panel thead,
    .resilience-exports-panel tbody,
    .resilience-exports-panel tr,
    .resilience-exports-panel th,
    .resilience-exports-panel td{display:block;width:100%}
    .resilience-exports-panel thead{display:none}
    .resilience-exports-panel tr{padding:14px;border:1px solid #253b58;border-radius:12px;background:#0a1525;margin-bottom:12px}
    .resilience-exports-panel td{padding:6px 0;border:0;text-align:left}
    .resilience-window-cell,.resilience-offsite-cell{text-align:left}
    .resilience-actions-cell{min-width:0;padding-top:10px!important}
}
@media(max-width:520px){
    .resilience-export-action-row{grid-template-columns:1fr}
}


/* ==========================================================================
   CCUS Connect v2.18.5 — Administrator Recovery UI Polish
   ========================================================================== */
.resilience-admin-recovery-head{align-items:flex-start}
.resilience-admin-recovery-head .status{flex:0 0 auto;margin-top:1px}
.resilience-admin-recovery-grid{gap:12px;margin-top:2px}
.resilience-admin-recovery-grid>div{display:flex;min-height:112px;flex-direction:column}
.resilience-admin-recovery-grid strong{font-size:15px}
.resilience-admin-recovery-grid p{margin:8px 0 0;line-height:1.45}
.resilience-admin-recovery-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-top:20px;
    padding-top:16px;
    border-top:1px solid var(--line);
}
.resilience-admin-recovery-note{max-width:650px;color:var(--muted);font-size:12px;line-height:1.45}
.resilience-admin-recovery-buttons{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:0 0 auto}
.resilience-admin-recovery-buttons .button{min-height:36px;margin:0;white-space:nowrap}
@media(max-width:860px){
    .resilience-admin-recovery-actions{align-items:stretch;flex-direction:column}
    .resilience-admin-recovery-buttons{justify-content:flex-start}
}
@media(max-width:560px){
    .resilience-admin-recovery-head .status{align-self:flex-start}
    .resilience-admin-recovery-buttons{display:grid;grid-template-columns:1fr;width:100%}
    .resilience-admin-recovery-buttons .button{width:100%}
}

/* ==========================================================================
   CCUS Connect v2.20.0 — Ecosystem Restore Centre
   ========================================================================== */
.restore-hero{align-items:flex-start}
.restore-hero .health-chip{flex:0 0 auto;margin-top:2px}
.restore-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}
.restore-mode-card{position:relative;min-height:180px;padding:22px 22px 20px 74px}
.restore-mode-card h3{margin:0 0 8px}
.restore-mode-card p{margin:0 0 14px;color:var(--muted);line-height:1.55}
.restore-mode-card>strong{display:block;margin-top:auto}
.restore-mode-number{position:absolute;left:22px;top:22px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:#173252;color:#8fc1ff;font-weight:800;font-size:16px}
.restore-mode-card.danger-mode{border-color:#64323a;background:linear-gradient(180deg,rgba(93,33,42,.16),rgba(13,28,48,.95))}
.restore-mode-card.danger-mode .restore-mode-number{background:#47212a;color:#ffadb7}
.restore-upload-panel,.restore-validation-panel{margin-top:14px}
.restore-upload-form{display:block;margin-top:18px}
.restore-upload-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.restore-upload-field{display:flex;flex-direction:column;gap:8px;margin:0}
.restore-upload-form input[type=file],.restore-upload-form input[type=password],.restore-confirm-form input[type=text]{width:100%;box-sizing:border-box}
.restore-upload-form input[type=file],.restore-upload-form input[type=password]{min-height:46px;margin:0}
.restore-upload-form input[type=file]{padding:7px 10px}
.restore-upload-meta{margin-top:8px;color:var(--muted);font-size:12px;font-weight:500;line-height:1.4}
.restore-upload-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.restore-upload-actions span{max-width:700px;color:var(--muted);font-size:12px;line-height:1.45}
.restore-upload-actions .button{flex:0 0 auto;margin:0;min-height:38px}
.restore-validation-stats{margin:16px 0}
.restore-validation-stats .stat code{display:block;max-width:100%;overflow-wrap:anywhere;font-size:13px}
.restore-component-table td,.restore-component-table th{vertical-align:middle}
.restore-component-table td code{overflow-wrap:anywhere}
.restore-safety-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.restore-safety-grid>div{min-height:122px;padding:16px;border:1px solid var(--line);border-radius:12px;background:rgba(9,21,37,.56)}
.restore-safety-grid strong{display:block;margin-bottom:8px}
.restore-safety-grid p{margin:0;color:var(--muted);line-height:1.5}
.restore-confirm-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;margin-top:18px;padding:18px;border:1px solid #6f343e;border-radius:12px;background:rgba(83,27,37,.18)}
.restore-confirm-form label{margin:0}
.restore-danger-button{margin:0;min-width:190px;min-height:40px;background:#a8333d!important;border-color:#c44650!important;color:#fff!important}
.restore-danger-button:hover:not(:disabled){background:#be3b46!important}
.restore-danger-button:disabled{opacity:.48;cursor:not-allowed}
.restore-discard-form{display:flex;justify-content:flex-end;margin-top:12px}
.restore-discard-form .button{margin:0}
.restore-guardrails-panel>h3{margin:0 0 20px}
.restore-guardrails-panel .feature-grid{margin-top:0}

@media(max-width:960px){
    .restore-mode-grid{grid-template-columns:1fr}
    .restore-upload-fields{grid-template-columns:1fr}
    .restore-safety-grid{grid-template-columns:1fr}
    .restore-confirm-form{grid-template-columns:1fr}
    .restore-danger-button{width:100%}
}
@media(max-width:850px){
    .restore-validation-panel .table-wrap{overflow-x:visible}
    .restore-component-table,.restore-component-table thead,.restore-component-table tbody,.restore-component-table tr,.restore-component-table th,.restore-component-table td{display:block;width:100%}
    .restore-component-table thead{display:none}
    .restore-component-table tr{padding:14px;border:1px solid var(--line);border-radius:12px;background:rgba(9,21,37,.56);margin-bottom:12px}
    .restore-component-table td{display:grid;grid-template-columns:132px minmax(0,1fr);gap:10px;padding:6px 0;border:0;text-align:left}
    .restore-component-table td:nth-child(1)::before{content:'Application'}
    .restore-component-table td:nth-child(2)::before{content:'Backup Version'}
    .restore-component-table td:nth-child(3)::before{content:'Installed Version'}
    .restore-component-table td:nth-child(4)::before{content:'Entries'}
    .restore-component-table td:nth-child(5)::before{content:'Expanded Data'}
    .restore-component-table td:nth-child(6)::before{content:'Status'}
    .restore-component-table td::before{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
}
@media(max-width:620px){
    .restore-mode-card{padding:68px 16px 18px}
    .restore-mode-number{left:16px;top:16px}
    .restore-upload-actions{align-items:stretch;flex-direction:column}
    .restore-upload-actions .button{width:100%}
    .restore-validation-stats{grid-template-columns:1fr}
    .restore-component-table td{grid-template-columns:1fr;gap:3px}
    .restore-discard-form{justify-content:stretch}
    .restore-discard-form .button{width:100%}
}
.resilience-panel-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:0 0 auto}
.resilience-panel-header-actions .button{margin:0;min-height:34px}
@media(max-width:700px){.resilience-panel-header-actions{justify-content:flex-start;width:100%}}

/* CCUS Connect 2.20.17 — consolidated Control Centre monitoring */
.control-centre-hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.control-centre-hero .security-posture-status{display:flex;min-width:210px;margin:0}
.control-centre-stats .stat{min-width:0}
.control-centre-stats .stat strong{font-size:20px;overflow-wrap:anywhere}
.control-centre-stats .stat small{display:block;color:var(--muted);font-size:11px;line-height:1.4;margin-top:6px}
.control-centre-app-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.control-centre-operations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.control-centre-operation{margin-bottom:0;min-width:0}
.control-centre-operation .panel-head{align-items:flex-start}
.control-centre-operation .panel-head p{margin:5px 0 0;font-size:12px}
.control-operation-value{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 6px}
.control-operation-value strong{font-size:14px;overflow-wrap:anywhere}
.control-centre-operation>small{display:block;color:var(--muted);line-height:1.45}
.control-operation-list{display:grid;gap:0}
.control-operation-list>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}
.control-operation-list>div:last-child{border-bottom:0}
.control-operation-list span{color:var(--muted);font-size:12px}.control-operation-list b{font-size:12px;text-align:right}
.control-inline-alert{margin:14px 0 0}
.control-warning-list{display:grid;gap:8px}
.control-warning-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border-radius:12px;background:var(--panel2);border:1px solid var(--line)}
.control-warning-row:hover{border-color:#355578}
.control-warning-row strong,.control-warning-row small{display:block}.control-warning-row small{color:var(--muted);margin-top:3px;line-height:1.4}
.control-warning-open{color:#79baff;font-size:12px;white-space:nowrap}
.control-centre-clear{display:grid;gap:4px;padding:14px;border-radius:12px;background:var(--panel2);border:1px solid var(--line)}
.control-centre-clear span{color:var(--muted);font-size:13px;line-height:1.45}
.control-centre-refresh-note{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:11px;padding:0 3px 12px}
@media(max-width:1180px){.control-centre-app-grid,.control-centre-operations-grid{grid-template-columns:1fr 1fr}.control-centre-operations-grid .control-centre-operation:last-child{grid-column:1/-1}}
@media(max-width:760px){.control-centre-app-grid,.control-centre-operations-grid{grid-template-columns:1fr}.control-centre-operations-grid .control-centre-operation:last-child{grid-column:auto}.control-centre-hero-actions{width:100%;justify-content:flex-start}.control-centre-hero-actions .security-posture-status{width:100%}.control-warning-row{grid-template-columns:auto minmax(0,1fr)}.control-warning-open{grid-column:2}.control-centre-refresh-note{flex-direction:column;gap:4px}}

/* CCUS Connect 2.20.18 — Workshop Print Service monitoring */
.control-centre-print-service{margin-bottom:18px}
.print-service-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.25fr) minmax(220px,.75fr);gap:14px;align-items:stretch}
.print-service-summary,.print-service-printers,.print-service-queue{min-width:0}
.print-service-summary .monitor-list{margin:0}
.print-service-printers{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.print-service-printers article{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--panel2)}
.print-service-printers article>span{font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--muted)}
.print-service-printers article>strong{font-size:16px}
.print-service-printers article>small{color:var(--muted);line-height:1.45;overflow-wrap:anywhere}
.print-service-queue{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.print-service-queue>div{display:grid;align-content:center;gap:5px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--panel2)}
.print-service-queue>div:last-child{grid-column:1/-1}
.print-service-queue span{color:var(--muted);font-size:11px}.print-service-queue strong{font-size:18px;overflow-wrap:anywhere}
.monitor-service-detail{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.monitor-service-detail>strong{display:block;margin-bottom:8px;font-size:12px}
.monitor-service-detail .monitor-list{margin-bottom:8px}
@media(max-width:1100px){.print-service-grid{grid-template-columns:1fr 1fr}.print-service-queue{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.print-service-queue>div:last-child{grid-column:auto}}
@media(max-width:720px){.print-service-grid,.print-service-printers,.print-service-queue{grid-template-columns:1fr}.print-service-queue{grid-column:auto}.print-service-queue>div:last-child{grid-column:auto}}

/* ==========================================================================
   CCUS Connect v2.20.19 — public ecosystem gateway
   ========================================================================== */
.landing-platform{
    min-height:100vh;
    background:
        radial-gradient(circle at 78% 7%,rgba(35,118,205,.24),transparent 31%),
        radial-gradient(circle at 11% 42%,rgba(21,84,151,.13),transparent 32%),
        var(--bg);
}
.landing-nav{max-width:1500px;margin:0 auto;background:rgba(7,16,31,.66);backdrop-filter:blur(14px)}
.landing-brand{min-width:0}
.landing-nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
.landing-session-user{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}
.landing-platform-main{width:min(1380px,100%);margin:0 auto;padding:76px 5vw 42px}
.landing-platform-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:48px;align-items:center;min-height:510px}
.landing-platform-copy h1{max-width:850px;margin:13px 0 20px;font-size:clamp(48px,6.6vw,86px);line-height:.96;letter-spacing:-.052em}
.landing-platform-copy>p{max-width:760px;margin:0;color:#a4b4ca;font-size:18px;line-height:1.7}
.landing-platform-actions{display:flex;gap:11px;flex-wrap:wrap;margin:30px 0 21px}
.landing-primary-action{min-width:150px}
.landing-security-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#8ea1bc;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.055em}
.landing-security-line span{display:inline-flex;align-items:center;gap:8px}
.landing-security-line span:not(:last-child)::after{content:'•';color:#345479}
.landing-access-panel{border:1px solid #294563;border-radius:22px;padding:20px;background:linear-gradient(180deg,rgba(14,31,53,.95),rgba(8,21,38,.96));box-shadow:0 28px 72px rgba(0,0,0,.24)}
.landing-access-head{padding:4px 4px 17px;border-bottom:1px solid #213652}
.landing-access-head strong{display:block;margin-top:7px;font-size:18px;line-height:1.35}
.landing-access-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:17px 4px;border-bottom:1px solid #1b304a}
.landing-access-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#14365a;border:1px solid #2e5886;color:#85c4ff;font-weight:850}
.landing-access-icon.customer{background:#143a30;border-color:#2a6550;color:#87e4bd}
.landing-access-copy{min-width:0}
.landing-access-copy strong,.landing-access-copy span{display:block}
.landing-access-copy strong{font-size:14px;color:#f1f6fd}
.landing-access-copy span{margin-top:4px;color:#8fa2bc;font-size:12px;line-height:1.4}
.landing-access-note{padding:15px 4px 2px;color:#778da9;font-size:11px;line-height:1.55;text-align:center}
.landing-your-apps{margin:16px 0 34px;padding:22px;border:1px solid var(--line);border-radius:19px;background:rgba(11,24,42,.86)}
.landing-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}
.landing-section-head h2{margin:6px 0 4px;font-size:24px}
.landing-section-head p{margin:0;color:var(--muted);font-size:13px}
.landing-app-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:11px}
.landing-app-tile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid #263c58;border-radius:14px;background:#0d1a2d;transition:border-color .16s ease,transform .16s ease,background .16s ease}
.landing-app-tile:hover{border-color:#3f6c9f;background:#10213a;transform:translateY(-1px)}
.landing-app-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#173456;color:#76b9ff;font-weight:850}
.landing-app-tile>span:nth-child(2){min-width:0}
.landing-app-tile strong,.landing-app-tile small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.landing-app-tile strong{font-size:14px}.landing-app-tile small{margin-top:3px;color:var(--muted);font-size:11px}
.landing-app-tile b{color:#73b9ff;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.landing-app-empty{grid-column:1/-1;padding:15px;border:1px dashed #2a415e;border-radius:12px;color:var(--muted);font-size:13px;line-height:1.55;text-align:center}
.landing-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:0 0 18px}
.landing-trust-grid article{position:relative;min-height:170px;padding:21px;border:1px solid var(--line);border-radius:17px;background:rgba(13,24,41,.88)}
.landing-feature-number{display:block;margin-bottom:24px;color:#4f769e;font-size:10px;font-weight:850;letter-spacing:.12em}
.landing-trust-grid strong{display:block;font-size:17px}.landing-trust-grid p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.6}
.landing-status-strip{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 18px;border:1px solid #253a54;border-radius:16px;background:#0a1728}
.landing-status-summary{display:flex;align-items:center;gap:11px;min-width:max-content}
.landing-status-summary small,.landing-status-summary strong{display:block}.landing-status-summary small{color:#758aa5;font-size:10px;text-transform:uppercase;letter-spacing:.09em}.landing-status-summary strong{margin-top:3px;font-size:13px}
.landing-status-dot,.landing-service-status i{display:block;width:9px;height:9px;border-radius:50%;background:#71869f;box-shadow:0 0 0 4px rgba(113,134,159,.09)}
.landing-status-strip.is-online .landing-status-dot,.landing-service-status.online i{background:#39d99d;box-shadow:0 0 0 4px rgba(57,217,157,.10)}
.landing-status-strip.is-attention .landing-status-dot,.landing-service-status.maintenance i{background:#e8b94d;box-shadow:0 0 0 4px rgba(232,185,77,.10)}
.landing-service-status.offline i{background:#ff6d7c;box-shadow:0 0 0 4px rgba(255,109,124,.10)}
.landing-service-statuses{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.landing-service-status{display:inline-grid;grid-template-columns:auto auto auto;align-items:center;gap:7px;padding:7px 10px;border:1px solid #223650;border-radius:999px;color:#c4d0df;font-size:11px}
.landing-service-status i{width:6px;height:6px;box-shadow:none}.landing-service-status b{color:#7f92aa;font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.landing-footer{width:min(1380px,100%);margin:0 auto;padding:0 5vw 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#607591;font-size:10px;text-transform:uppercase;letter-spacing:.055em}
@media(max-width:980px){
    .landing-platform-main{padding-top:54px}.landing-platform-hero{grid-template-columns:1fr;gap:28px;min-height:0}.landing-platform-copy h1{max-width:760px}.landing-access-panel{max-width:720px}.landing-status-strip{align-items:flex-start;flex-direction:column}.landing-service-statuses{justify-content:flex-start}
}
@media(max-width:700px){
    .landing-nav{height:auto;min-height:72px;padding:13px 18px;gap:12px}.landing-brand small{display:none}.landing-nav-actions{gap:8px}.landing-session-user{display:none}.landing-platform-main{padding:42px 18px 28px}.landing-platform-copy h1{font-size:clamp(42px,14vw,62px)}.landing-platform-copy>p{font-size:16px}.landing-platform-actions{display:grid;grid-template-columns:1fr}.landing-platform-actions .button{width:100%}.landing-security-line{line-height:1.8}.landing-access-panel{padding:15px}.landing-access-option{grid-template-columns:auto minmax(0,1fr);padding:15px 2px}.landing-access-option .button{grid-column:1/-1;width:100%}.landing-section-head{align-items:flex-start;flex-direction:column}.landing-section-head .button{width:100%}.landing-trust-grid{grid-template-columns:1fr}.landing-trust-grid article{min-height:0}.landing-status-strip{padding:15px}.landing-service-statuses{width:100%;display:grid;grid-template-columns:1fr}.landing-service-status{border-radius:11px}.landing-footer{padding:0 18px 24px;align-items:flex-start;flex-direction:column;gap:6px}
}

/* CCUS Connect 2.21.0 — Traffic & Analytics */
.analytics-hero{align-items:center}.analytics-live{min-width:180px;display:flex;align-items:center;gap:13px;padding:16px 18px;border:1px solid #255947;border-radius:16px;background:rgba(22,85,61,.20)}.analytics-live-dot{width:11px;height:11px;border-radius:50%;background:#42dda5;box-shadow:0 0 0 6px rgba(66,221,165,.09)}.analytics-live small,.analytics-live strong{display:block}.analytics-live small{color:#83bca9;font-size:10px;font-weight:800;letter-spacing:.08em}.analytics-live strong{margin-top:3px;font-size:27px}.analytics-filter-panel{padding:14px 16px}.analytics-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,.55fr) minmax(170px,.55fr) auto;gap:12px;align-items:end}.analytics-filters label,.analytics-site-form label{display:grid;gap:7px;color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.055em}.analytics-filters select,.analytics-site-form input,.analytics-site-form textarea{width:100%;box-sizing:border-box}.analytics-filters .button{margin:0;min-height:46px}.analytics-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.analytics-kpis .stat small{display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.35}.analytics-grid{display:grid;gap:16px;margin-bottom:18px}.analytics-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-grid .panel{margin:0;min-width:0}.analytics-empty{display:grid;place-items:center;min-height:180px;padding:24px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:13px;line-height:1.6;text-align:center}.analytics-bars{display:grid;gap:14px;margin-top:16px}.analytics-bar-row{display:grid;gap:7px}.analytics-bar-label{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;font-size:12px}.analytics-bar-label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c4d1e1}.analytics-bar-label b{font-size:12px}.analytics-bar-track{height:7px;border-radius:999px;background:#10213a;overflow:hidden}.analytics-bar-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2688ff,#57b6ff)}.analytics-trend{height:240px;display:flex;align-items:stretch;gap:7px;padding:16px 4px 0;overflow-x:auto}.analytics-trend-col{min-width:38px;flex:1;display:grid;grid-template-rows:22px 1fr 22px;gap:5px;align-items:end;text-align:center}.analytics-trend-value{font-size:9px;color:var(--muted)}.analytics-trend-bar{height:100%;min-height:120px;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #29405d}.analytics-trend-bar i{display:block;width:min(28px,72%);min-height:4px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#56b5ff,#287cff)}.analytics-trend-col small{font-size:9px;color:var(--muted)}.analytics-funnel{display:grid;gap:9px;margin-top:15px}.analytics-funnel>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}.analytics-funnel span{color:#b7c5d8;font-size:12px}.analytics-funnel strong{font-size:18px}.analytics-table-list{display:grid;margin-top:11px}.analytics-table-list>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line)}.analytics-table-list>div:last-child{border-bottom:0}.analytics-table-list span{min-width:0}.analytics-table-list strong,.analytics-table-list small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-table-list strong{font-size:12px}.analytics-table-list small{margin-top:3px;color:var(--muted);font-size:10px}.analytics-table-list b{font-size:13px}.analytics-site-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.analytics-site-card{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}.analytics-site-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.analytics-site-head strong,.analytics-site-head code{display:block}.analytics-site-head code{margin-top:4px;color:#7fa7d4;font-size:10px}.analytics-site-card>small{display:block;margin:11px 0;color:var(--muted)}.analytics-origins{display:flex;flex-wrap:wrap;gap:6px}.analytics-origins span{max-width:100%;padding:5px 8px;border:1px solid #294563;border-radius:999px;color:#9fb4cd;font-size:9px;overflow-wrap:anywhere}.analytics-site-card details,.analytics-add-site{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.analytics-site-card summary,.analytics-add-site summary{cursor:pointer;color:#84c4ff;font-size:11px;font-weight:800}.analytics-site-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.analytics-site-form label:nth-of-type(3){grid-column:1/-1}.analytics-site-form textarea{resize:vertical;min-height:76px}.analytics-site-form .button{justify-self:start;margin:0}.analytics-toggle-form{margin-top:10px}.analytics-toggle-form .button{margin:0}.analytics-add-site{margin-top:20px}.analytics-add-site .analytics-site-form{max-width:900px}.analytics-privacy{display:flex;align-items:center;justify-content:space-between;gap:28px}.analytics-privacy>div{max-width:850px}.analytics-privacy p{margin-bottom:0;color:var(--muted);line-height:1.65}.analytics-privacy .button{margin:0;white-space:nowrap}.analytics-lifetime{position:relative;overflow:hidden}.analytics-lifetime:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#57b6ff,#2688ff)}.analytics-lifetime-head{align-items:flex-start}.analytics-lifetime-head .muted{max-width:780px;margin-bottom:0}.analytics-tracking-since{min-width:150px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);text-align:right}.analytics-tracking-since small,.analytics-tracking-since strong{display:block}.analytics-tracking-since small{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em}.analytics-tracking-since strong{margin-top:5px;font-size:16px}.analytics-lifetime-kpis{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:16px}.analytics-lifetime-kpis .stat{min-width:0}.analytics-lifetime-kpis .stat small{display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.35}.analytics-record-stat strong{font-size:24px}.analytics-lifetime-note{margin-top:12px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:var(--panel2);color:var(--muted);font-size:10px;line-height:1.5}

@media(max-width:1180px){.analytics-kpis,.analytics-lifetime-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-grid-3{grid-template-columns:1fr 1fr}.analytics-grid-3 .panel:last-child{grid-column:1/-1}.analytics-filters{grid-template-columns:1fr 1fr}.analytics-filters .button{width:100%}}
@media(max-width:780px){.analytics-grid-2,.analytics-grid-3{grid-template-columns:1fr}.analytics-grid-3 .panel:last-child{grid-column:auto}.analytics-kpis,.analytics-lifetime-kpis{grid-template-columns:1fr 1fr}.analytics-filters{grid-template-columns:1fr}.analytics-site-form{grid-template-columns:1fr}.analytics-site-form label:nth-of-type(3){grid-column:auto}.analytics-privacy{align-items:stretch;flex-direction:column}.analytics-privacy .button{width:100%}.analytics-lifetime-head{display:grid;gap:14px}.analytics-tracking-since{min-width:0;text-align:left}}
@media(max-width:520px){.analytics-kpis,.analytics-lifetime-kpis{grid-template-columns:1fr}.analytics-live{width:100%;box-sizing:border-box}.analytics-trend{gap:5px}.analytics-trend-col{min-width:34px}}

/* CCUS Connect 2.21.4 — Operations Dashboard & Repair Conversion */
.operations-hero{align-items:center}.operations-refresh{display:grid;gap:8px;justify-items:end;text-align:right}.operations-refresh small{color:var(--muted);font-size:10px}.operations-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:18px 0}.operations-kpi{display:grid;gap:5px;padding:16px 17px;border:1px solid var(--line);border-radius:15px;background:var(--panel);color:inherit;text-decoration:none;min-width:0;transition:border-color .15s ease,transform .15s ease}.operations-kpi:hover{border-color:#31577f;transform:translateY(-1px)}.operations-kpi span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.operations-kpi strong{font-size:27px;line-height:1.05}.operations-kpi small{color:var(--muted);font-size:10px;line-height:1.4}.operations-kpi-money{border-color:#275744;background:linear-gradient(145deg,rgba(29,105,76,.22),var(--panel))}.operations-kpi.attention{border-color:#6a4d21;background:linear-gradient(145deg,rgba(135,91,25,.20),var(--panel))}.operations-grid{display:grid;gap:16px;margin:0 0 18px}.operations-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-grid .panel{margin:0;min-width:0}.operations-panel-total{font-size:26px}.operations-split-grid,.operations-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}.operations-split-grid>div,.operations-status-grid>div{padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);min-width:0}.operations-split-grid span,.operations-status-grid span{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.045em}.operations-split-grid strong,.operations-status-grid strong{display:block;margin-top:5px;font-size:18px}.operations-status-grid>div.danger{border-color:#713b47;background:rgba(112,43,58,.14)}.operations-big-number{margin:14px 0 6px;font-size:42px;font-weight:850;line-height:1}.operations-mini-line{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.operations-mini-line span{color:var(--muted);font-size:11px}.operations-mini-line strong{font-size:18px}.operations-mini-list{display:grid;margin-top:14px}.operations-mini-list>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line)}.operations-mini-list>div:last-child{border-bottom:0}.operations-mini-list span{color:var(--muted);font-size:11px}.operations-mini-list strong{font-size:16px}.operations-website-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-health-list{display:grid;margin-top:10px}.operations-health-list>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.operations-health-list>div:last-child{border-bottom:0}.operations-health-list strong,.operations-health-list small{display:block}.operations-health-list small{margin-top:3px;color:var(--muted);font-size:9px}.operations-queue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:14px}.operations-queue-grid h4{margin:0 0 9px;font-size:12px}.operations-queue{display:grid;border:1px solid var(--line);border-radius:13px;overflow:hidden}.operations-queue>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 12px;background:var(--panel2);border-bottom:1px solid var(--line)}.operations-queue>div:last-child{border-bottom:0}.operations-queue strong,.operations-queue small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.operations-queue strong{font-size:11px}.operations-queue small{margin-top:3px;color:var(--muted);font-size:9px}.operations-queue b{max-width:150px;color:#9fc7ef;font-size:9px;text-align:right;overflow:hidden;text-overflow:ellipsis}.operations-empty{margin:0;padding:18px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:11px;text-align:center}.analytics-conversion-panel{position:relative}.analytics-revenue{font-size:24px;color:#8eddbf}.analytics-funnel-full{grid-template-columns:1fr}.analytics-funnel-full>div{min-height:50px}.analytics-funnel-full small{display:block;margin-top:3px;color:var(--muted);font-size:9px}.analytics-funnel-downstream{border-color:#2c536f!important;background:linear-gradient(90deg,rgba(34,103,151,.13),var(--panel2))!important}.analytics-funnel-warning{display:grid!important;grid-template-columns:1fr auto;align-items:center}.analytics-funnel-warning small{grid-column:1/-1}.analytics-conversion-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.analytics-conversion-summary>div{padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel2)}.analytics-conversion-summary span,.analytics-conversion-summary strong{display:block}.analytics-conversion-summary span{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.045em}.analytics-conversion-summary strong{margin-top:4px;font-size:16px}.analytics-attribution-note{margin:10px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.analytics-downstream-repairs{margin-bottom:18px}
@media(max-width:1280px){.operations-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-grid-3{grid-template-columns:1fr 1fr}.operations-grid-3 .panel:last-child{grid-column:1/-1}.operations-queue-grid{grid-template-columns:1fr 1fr}.operations-queue-grid>div:last-child{grid-column:1/-1}}
@media(max-width:820px){.operations-grid-2,.operations-grid-3,.operations-queue-grid{grid-template-columns:1fr}.operations-grid-3 .panel:last-child,.operations-queue-grid>div:last-child{grid-column:auto}.operations-split-grid,.operations-status-grid,.operations-website-grid{grid-template-columns:1fr 1fr}.analytics-conversion-summary{grid-template-columns:1fr 1fr}.operations-refresh{justify-items:start;text-align:left}}
@media(max-width:540px){.operations-kpis{grid-template-columns:1fr 1fr}.operations-split-grid,.operations-status-grid,.operations-website-grid,.analytics-conversion-summary{grid-template-columns:1fr}.operations-kpi strong{font-size:23px}.operations-queue>div{grid-template-columns:1fr}.operations-queue b{max-width:none;text-align:left}}

/* 2.21.5 — Review follow-up intelligence */
.operations-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-review-disclaimer{margin:14px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.operations-feedback-list{display:grid;gap:10px}.operations-feedback-list article{padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft)}.operations-feedback-list article>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.operations-feedback-list small{display:block;margin-top:3px;color:var(--muted)}.operations-feedback-list p{margin:8px 0 0;line-height:1.5}.operations-rating{letter-spacing:.04em;font-weight:900}.operations-review-panel .operations-panel-total{font-size:34px}
@media(max-width:760px){.operations-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-feedback-list article>div{align-items:flex-start;flex-direction:column;gap:3px}}
/* 2.21.6 — Repair Demand Intelligence */
.analytics-demand-intelligence{position:relative;overflow:hidden;margin-bottom:18px}.analytics-demand-intelligence:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#8a63ff,#36b5ff)}.analytics-demand-intelligence>.panel-head{margin-bottom:16px}.analytics-demand-intelligence>.analytics-grid{margin:0}.analytics-demand-card{background:linear-gradient(145deg,rgba(70,91,130,.08),var(--panel));min-width:0}.analytics-demand-card .analytics-bars{margin-top:12px}.analytics-demand-card .analytics-empty{margin-top:12px}.analytics-demand-card .analytics-bar-label span small{display:block;margin-top:2px;color:var(--muted);font-size:9px;font-weight:600}.analytics-demand-card .analytics-attribution-note{padding-top:8px;border-top:1px solid var(--line)}

