:root{--cui-body-font-family:system-ui,"Microsoft YaHei",sans-serif;--cui-body-font-size:.9375rem}
[hidden]{display:none!important}body{margin:0;background:#f3f4f7}.header{min-height:68px}.header-brand{font-weight:700;color:var(--cui-body-color);text-decoration:none}.header-caption{font-size:.875rem;margin-left:1.5rem;margin-right:auto}.container-fluid{max-width:1540px}.toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:1.25rem}.customer-navigation{align-self:start;overflow:hidden}#customers .list-group-item{padding:1rem;text-align:left;overflow-wrap:anywhere}#customers .list-group-item small{font-size:.75rem;margin-top:.35rem}#customers .list-group-item.active small{color:inherit;opacity:.85}#customers>p{padding:1rem;margin:0}.empty-state{padding:3rem 1.5rem;text-align:center}#login{max-width:450px;margin:5vh auto}.meta{display:flex;gap:.65rem 1.25rem;flex-wrap:wrap;align-items:center;color:var(--cui-secondary-color);font-size:.875rem;overflow-wrap:anywhere}.actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-top:1rem}.actions .btn{font-size:.875rem}.server-summary{border-top:1px solid var(--cui-border-color);margin:1.5rem 0 1rem;padding-top:1.25rem}.server-summary details{margin-top:1.25rem}.server-summary code{display:block;margin:.75rem 0;font-size:.75rem;overflow-wrap:anywhere}small{display:block;color:var(--cui-secondary-color)}.muted,.hint{font-size:.8125rem;color:var(--cui-secondary-color)}.version{width:auto;max-width:180px;font-size:.875rem}.job-status{white-space:nowrap}th,td{font-size:.8125rem;overflow-wrap:anywhere}th:first-child,td:first-child{padding-left:1rem}table{min-width:540px}progress{max-width:120px}summary{cursor:pointer}
/* Native dialogs share CoreUI modal components, without the JS-driven .modal shell. */
.control-dialog{
  --cui-modal-padding:1.25rem;
  --cui-modal-color:var(--cui-body-color);
  --cui-modal-bg:var(--cui-body-bg);
  --cui-modal-border-color:var(--cui-border-color-translucent);
  --cui-modal-border-width:var(--cui-border-width);
  --cui-modal-border-radius:var(--cui-border-radius-lg);
  --cui-modal-inner-border-radius:var(--cui-border-radius-lg);
  --cui-modal-header-padding-x:1.25rem;
  --cui-modal-header-padding-y:1rem;
  --cui-modal-header-padding:var(--cui-modal-header-padding-y) var(--cui-modal-header-padding-x);
  --cui-modal-header-border-color:var(--cui-border-color);
  --cui-modal-header-border-width:var(--cui-border-width);
  --cui-modal-title-line-height:1.5;
  --cui-modal-footer-gap:.5rem;
  --cui-modal-footer-bg:var(--cui-body-bg);
  --cui-modal-footer-border-color:var(--cui-border-color);
  --cui-modal-footer-border-width:var(--cui-border-width);
  width:calc(100% - 2rem);max-width:800px;max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);
  margin:auto;padding:0;border:0;border-radius:var(--cui-modal-border-radius);
  background:var(--cui-modal-bg);box-shadow:var(--cui-box-shadow-lg);overflow:hidden;
}
.control-dialog::backdrop{background:#121a2d80}
.control-dialog .modal-content{max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);min-width:0;border:0;overflow:hidden}
.control-dialog .modal-header{gap:1rem;background:var(--cui-modal-bg)}
.control-dialog .modal-title{min-width:0;overflow-wrap:anywhere}
.control-dialog .modal-header .btn-close{flex-shrink:0}
.control-dialog .modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--cui-modal-padding)}
.control-dialog .modal-footer{gap:var(--cui-modal-footer-gap);padding:var(--cui-modal-padding)}
.control-dialog .modal-footer>*{margin:0}
.control-dialog .input-group{margin-top:.375rem}.control-dialog .input-group>.form-control{margin-top:0;min-width:0}.control-dialog .input-group-text{white-space:nowrap}#domain-dialog{max-width:520px}
.control-dialog fieldset{min-width:0;border:1px solid var(--cui-border-color);border-radius:var(--cui-border-radius);padding:1rem;margin-top:1rem;background:var(--cui-body-bg)}.control-dialog legend{float:none;width:auto;font-size:.9375rem;font-weight:600;padding:0 .5rem;margin-bottom:.25rem}.control-dialog .form-label{display:block;width:100%;margin-bottom:1rem}.control-dialog .form-control,.control-dialog .form-select{margin-top:.375rem}.control-dialog .check{display:flex;gap:.5rem;align-items:flex-start;font-size:.875rem}.control-dialog .form-check-input{flex-shrink:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:end}.form-row>.btn{margin-bottom:1rem;justify-self:start}.form-control[readonly]{background:var(--cui-tertiary-bg);color:var(--cui-secondary-color)}.control-dialog details{padding-top:.25rem}.control-dialog details[open]>summary{margin-bottom:1rem}#notice{display:none;position:sticky;top:0;z-index:20}#notice.show{display:block}.btn:disabled{cursor:wait}
@media(max-width:900px){.layout{grid-template-columns:1fr}.header-caption{display:none}.header-brand{font-size:1rem}.customer-navigation #customers{max-height:220px;overflow:auto}.card-header.toolbar .btn{margin-left:0}}
@media(max-width:600px){.control-dialog{--cui-modal-padding:1rem;--cui-modal-header-padding-x:1rem}.form-row{grid-template-columns:1fr;gap:0}.control-dialog .modal-body{padding:1rem}.control-dialog fieldset{padding:.75rem}.meta{gap:.5rem 1rem}.toolbar{gap:.5rem}.card-header.toolbar{align-items:center}.card-header.toolbar h2{flex-basis:100%;overflow-wrap:anywhere}.actions .btn{flex-grow:1}.actions .version{max-width:none;flex-grow:1}.control-dialog .modal-footer .btn{font-size:.875rem}#login{margin-top:2vh}}
