.sharing-head { flex-wrap: wrap; }
.sharing-matrix th { padding: 10px 12px; font-size: 12px; }
.sharing-matrix td { padding: 10px 12px; font-size: 13px; }
.sharing-matrix td:nth-child(2), .sharing-matrix td:nth-child(3), .sharing-matrix td:nth-child(4) { white-space: nowrap; }
.sharing-matrix .row { flex-wrap: nowrap; }
.sharing-matrix .btn { padding: 6px 9px; font-size: 12px; }
.sharing-filters { display: grid; grid-template-columns: repeat(auto-fit,minmax(170px,1fr)); gap: 12px; margin-bottom: 16px; }
.sharing-users { border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface); overflow: hidden; }
.sharing-user + .sharing-user { border-top: 1px solid var(--line); }
.sharing-user-head { display: flex; align-items: center; gap: 12px; padding: 10px 16px; min-height: 58px; }
.sharing-user-icon { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 9px; color: var(--muted); background: var(--surface-2); }
.sharing-user-title { display: flex; flex: 1; align-items: center; gap: 14px; flex-wrap: wrap; min-width: 0; }
.sharing-user-email { border: 0; padding: 0; background: none; font: inherit; font-weight: 600; color: var(--ink); text-align: left; overflow-wrap: anywhere; cursor: pointer; }
.sharing-user-body { padding: 16px; background: var(--surface-2); border-top: 1px solid var(--line); }
.sharing-user-tools { margin-bottom: 12px; }
.sharing-user-tools > span { margin-right: auto; }
.sharing-user-tools .btn, .sharing-user-pages .btn { padding: 6px 9px; font-size: 12px; }
.sharing-user-pages { justify-content: flex-end; margin-top: 12px; }
.sharing-server-table { min-width: 760px; }
.sharing-server-table td, .sharing-server-table th { padding: 10px 12px; font-size: 13px; }
.sharing-server-table td:nth-child(2), .sharing-server-table td:nth-child(3) { white-space: nowrap; }
.sharing-server-table td:last-child .row { flex-wrap: nowrap; }
.sharing-server-table .btn { padding: 6px 9px; font-size: 12px; }
.sharing-permissions { display: flex; gap: 4px; flex-wrap: wrap; min-width: 160px; }
.sharing-permissions span { border-radius: 4px; padding: 2px 6px; font-size: 12px; background: var(--surface-2); }
.sharing-empty { padding: 20px; margin: 0; }
@media (max-width: 600px) {
  .admin-shell .topbar { height: auto; min-height: 60px; flex-wrap: wrap; padding-block: 12px; }
  .admin-shell .topbar .spacer { display: none; }
  .admin-shell .topbar #account-email { overflow-wrap: anywhere; }
  .sharing-user-head { flex-wrap: wrap; }
  .sharing-user-title { display: block; }
  .sharing-user-title > span { display: block; margin-top: 3px; }
  .sharing-user-head > .btn { margin-left: 44px; }
  .sharing-user-body { padding: 12px; }
}

.access-page .section-head>label{min-width:280px}.access-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:14px;align-items:end;margin:18px 0}.access-filters .check{padding:10px 0}.access-matrix th,.access-matrix td{vertical-align:middle}.access-matrix th:not(:nth-child(2)),.access-matrix td:not(:nth-child(2)){text-align:center}.access-matrix th{white-space:nowrap}.access-matrix td:nth-child(2){min-width:180px}.access-check{display:flex;align-items:center;justify-content:center;min-height:34px}.access-check input{width:17px;height:17px}.access-dirty{background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.access-pagination,.access-savebar,.access-bulk{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0}.access-pagination .row>label{display:flex;gap:8px;align-items:center}.access-pagination select{width:auto}.access-bulk{padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.access-bulk select{width:auto}.access-savebar{padding-top:18px;border-top:1px solid var(--line)}.access-domain{max-width:450px;margin:20px 0}.access-page .table-wrap{max-width:100%;overflow-x:auto}.access-plans>.hestia-page>.h-heading,.access-plans .h-plans>[data-back-services]{display:none}.access-plans .h-plans>.h-heading>[data-back-services]{display:none}.access-plans .page{padding:0}.customer-profile-fields{grid-column:1/-1;border:1px solid var(--line);border-radius:10px;padding:18px;margin:12px 0}.customer-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.customer-profile-grid label{min-width:0}.customer-profile-grid input,.customer-profile-grid select{width:100%;box-sizing:border-box}.customer-profile-dialog{width:min(900px,calc(100vw - 30px));max-width:900px;max-height:90vh;overflow:auto}.customer-profile-dialog [type=submit]{margin-left:auto}.h-check{display:flex!important;align-items:center;gap:8px}.h-check input[type=checkbox]{width:16px!important;flex:0 0 16px}
@media(max-width:900px){.access-filters{grid-template-columns:1fr 1fr}.access-filters>label:first-child{grid-column:1/-1}.customer-profile-grid{grid-template-columns:1fr 1fr}}@media(max-width:540px){.access-page .section-head>label{min-width:0;width:100%}.access-filters,.customer-profile-grid{grid-template-columns:1fr}.access-matrix{min-width:820px}}

.customer-profile-extra{grid-column:1/-1;width:100%;margin:12px 0}.customer-profile-extra>summary{padding:12px 0;font-weight:500}.customer-profile-extra .customer-profile-fields{margin:12px 0}.access-plans .h-plans{margin-top:0}

.access-filters{grid-template-columns:2fr 1fr 1fr}.access-matrix td,.access-matrix th{padding-left:8px;padding-right:8px}@media(max-width:900px){.access-filters{grid-template-columns:1fr 1fr}}@media(max-width:540px){.access-filters{grid-template-columns:1fr}}

.access-service-picker{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0}.access-service-picker>.access-domain{margin:0;flex:0 1 480px;min-width:0}@media(max-width:540px){.access-service-picker>.access-domain{flex-basis:100%}}

.access-column-check{display:flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;font-size:inherit;margin:0}
.access-column-check input{flex-shrink:0}
.access-page [data-access-bulk-hint]{margin:12px 0}

.access-page .access-filters{grid-template-columns:minmax(200px,1fr) minmax(200px,1fr)}
@media(max-width:600px){.access-page .access-filters{grid-template-columns:1fr}}

.access-file-bulk{margin:18px 0}.access-file-page>label{max-width:480px}

.access-service-picker{align-items:center}.access-service-picker>.access-domain{display:flex;align-items:center;gap:12px;flex:0 1 620px;max-width:620px;white-space:nowrap}.access-service-picker>.access-domain>select{flex:1;min-width:0;width:auto}@media(max-width:540px){.access-service-picker>.access-domain{flex-basis:100%;gap:8px}.access-service-picker>.access-domain>select{width:0}}

.access-server-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:18px 0}.access-server-controls>.access-service-picker{margin:0;flex:1 1 600px}.access-server-search{display:flex!important;align-items:center;gap:12px;flex:1 1 340px;white-space:nowrap}.access-server-search>input{min-width:0;flex:1;width:0}.access-file-search{display:flex!important;align-items:center;gap:12px;max-width:620px;white-space:nowrap}.access-file-search>input{flex:1;min-width:0;width:0}.access-server-controls .access-domain{flex:1 1 420px}.access-file-page>.access-file-search{max-width:620px}@media(max-width:540px){.access-server-controls>.access-service-picker{flex-basis:100%}.access-server-search{flex-basis:100%}}

[data-plans-panel][hidden],[data-backup-admin-panel][hidden]{display:none!important}

.admin-menu-heading{justify-content:space-between;flex-wrap:wrap}.admin-menu-heading h1{margin:0}.admin-menu-heading{margin-bottom:18px}[data-menu-choices]{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}[data-menu-admin]{width:100%}@media(max-width:420px){[data-menu-choices]{grid-template-columns:1fr}}

#version-badge{display:none!important}.settings.settings-tabbed{max-width:none;display:block}.settings-tabbed>.tabs{margin-bottom:18px}.settings-tabbed>[hidden],.section-head>label[hidden],.users-create-dialog [hidden]{display:none!important}.settings-tabbed .settings-card{max-width:900px;margin-top:0}.users-heading h2{margin:0}.users-heading p{margin:6px 0}.users-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}.users-filters label{display:flex;align-items:center;gap:8px;min-width:0}.users-search{flex:1 1 220px}.users-search input{width:100%}.users-create-dialog .user-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.users-create-dialog .user-form>.check,.users-create-dialog .customer-profile-extra,.users-create-dialog .user-form>p{grid-column:1/-1}.users-create-dialog .user-form>button.primary{grid-column:1/-1;justify-self:end;grid-row:20}.users-more{position:relative;display:inline-block}.users-more summary{border:1px solid var(--line);border-radius:6px;padding:7px 10px;cursor:pointer}.users-more[open]{display:flex;flex-wrap:wrap;gap:6px;max-width:440px}.users-more[open] summary{flex-basis:100%}.customers-table .actions{white-space:normal;min-width:230px}.panel-access-matrix{min-width:1320px}.panel-access-matrix th:not(:nth-child(2)),.panel-access-matrix td:not(:nth-child(2)){text-align:center}.panel-access-matrix th label{display:grid;justify-items:center;gap:8px;font-size:12px;white-space:normal}.panel-access-matrix td:nth-child(2){min-width:230px}.panel-access-matrix td select{display:block;margin-top:6px;max-width:220px}.panel-access>.table-wrap{max-width:100%;overflow-x:auto}.users-create-dialog{max-height:90vh;overflow:auto}@media(max-width:600px){.users-create-dialog .user-form{grid-template-columns:1fr}.users-filters label{flex-basis:100%}.users-filters select{flex:1;min-width:0}.customers-table{min-width:760px}}

#admin-view .admin-inner{min-width:0;overflow-x:clip}#admin-view .admin-inner .table-wrap{max-width:100%}.users-create-dialog .with-button>input{min-width:0}.users-create-dialog .customer-profile-extra{min-width:0}

.users-create-dialog .user-form>button.primary{grid-row:auto}
#admin-view .table-wrap,#admin-view .tabs{contain:layout paint}

/* Group service permissions by connection and domain; retain individual resource IDs. */
.access-domain-matrix{min-width:650px}
.access-domain-matrix tbody td{padding-top:8px;padding-bottom:8px}
.access-domain-matrix td.access-domain-name{vertical-align:top;text-align:left;min-width:200px;width:30%}
.access-domain-matrix .access-domain-name strong{font-weight:700}
.access-domain-matrix td.access-domain-service{text-align:left;min-width:90px;width:15%}
.access-domain-matrix .access-domain-connection th{background:var(--surface);color:var(--ink);text-align:left;font-size:12px;font-weight:600;padding:9px 12px}
.access-domain-matrix .access-domain-start td{border-top:1px solid var(--line)}

/* Compact permissions hierarchy approved for the administrator portal. */
.access-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 8px;border-bottom:1px solid var(--line)}
.access-heading>.tabs{margin:0;border:0}.access-heading>label{display:flex;align-items:center;gap:8px;min-width:0;font-size:12px;margin:0 0 6px}.access-heading select{min-width:0;max-width:320px}
.access-page .tabs{gap:4px;margin-top:0;margin-bottom:8px;padding-bottom:0;flex-wrap:wrap}
.access-page .tab{font-size:12px;padding:8px 10px}.access-page .tab[aria-selected="true"]{font-size:13px;font-weight:700;color:var(--ink);border-bottom-color:var(--ink);background:transparent}
.access-web-sections .tab{padding:6px 8px}.access-reference{margin-left:auto}
.access-page [data-access-body]>h3,.access-page .panel-access>h3,.access-page .access-file-page>h3,.access-page .vpn-surface>h3{display:none}
.access-page [data-access-error]:empty{display:none}.access-page .access-service-picker,.access-page .access-server-controls{margin-top:10px;margin-bottom:10px}
.access-page .access-server-controls{gap:10px}.access-page .vpn-surface>p.muted{margin-top:6px;margin-bottom:8px}
.access-domain-matrix td[rowspan]{vertical-align:top}.access-domain-matrix td.access-domain-service{width:15%;min-width:90px}
#admin-view>.admin-inner>.tabs .tab[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ink);font-weight:700}
@media(max-width:600px){.access-heading>label{width:100%}.access-heading select{flex:1;width:0;max-width:none}.access-reference{margin-left:0}}

/* Permissions toolbar: compact navigation and actions before long tables. */
.access-heading{align-items:flex-start;position:relative;min-height:40px;margin-bottom:4px}
.access-heading>.access-user-tools{margin-left:auto;display:grid;gap:6px;justify-items:end;position:absolute;right:0;top:0}
.access-user-tools>label{display:flex;align-items:center;gap:8px;font-size:12px}
.access-user-tools[hidden]{display:none!important}
.access-user-tools .access-reference{margin:0}
.access-page:has(.access-user-tools:not([hidden])) .access-heading{border-bottom:0;margin-bottom:0}
.access-page:has(.access-user-tools:not([hidden])) .access-services{margin-top:0;margin-right:360px;min-height:34px}
.access-page .access-savebar{position:sticky;top:0;z-index:5;background:var(--bg,var(--surface));margin:8px 0;padding:8px 0;border-top:0;border-bottom:1px solid var(--line)}
.access-page [data-access-savebar]{position:sticky;top:0;z-index:5;background:var(--bg,var(--surface))}
.access-page .panel-user-picker{justify-content:flex-end;margin:0 0 8px;gap:8px}
.access-page .panel-user-picker .access-domain{margin:0}
.access-page .panel-user-picker select{max-width:450px}
.access-page .panel-access>.row{justify-content:flex-start;align-items:end;gap:8px}
@media(max-width:650px){.access-heading>.access-user-tools{width:100%;position:static}.access-user-tools>label{max-width:100%}.access-user-tools select{max-width:240px}.access-page:has(.access-user-tools:not([hidden])) .access-services{margin-top:0;margin-right:0}.access-page .panel-user-picker{flex-wrap:wrap}.access-page .access-savebar{gap:6px}}

/* Approved left-aligned account and category filters. */
.access-page .access-heading{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:0;margin-bottom:6px}
.access-page .access-heading>.access-user-tools{position:static;margin-left:0;display:flex;align-items:end;justify-content:flex-start;flex-wrap:wrap;gap:8px}
.access-page .access-user-tools>label{display:grid;gap:6px}
.access-page .access-user-tools select{width:280px;max-width:100%}
.access-page:has(.access-user-tools:not([hidden])) .access-services{margin:0 0 8px;min-height:0}
.access-page .access-server-controls{display:flex;justify-content:flex-start;align-items:end;flex-wrap:wrap;gap:10px}
.access-page .access-server-controls>.access-service-picker{margin:0;flex:0 1 300px}
.access-page .access-server-controls .access-domain{display:grid;gap:6px;margin:0;width:100%}
.access-page .access-server-search{display:grid;gap:6px;flex:0 1 300px;margin:0}
.access-page .access-server-search input{width:100%}
.access-page .panel-access-filters{display:flex;align-items:end;justify-content:flex-start;gap:10px;flex-wrap:wrap;margin:10px 0}
.access-page .panel-access-filters>label{display:grid;gap:6px;margin:0;max-width:100%;width:260px}
.access-page .panel-access-filters>.access-domain{width:340px}
.access-page .panel-access-filters input,.access-page .panel-access-filters select{width:100%;min-width:0}
@media(max-width:600px){.access-page .access-user-tools>label{width:100%}.access-page .access-user-tools select{width:100%;max-width:none}.access-page .panel-access-filters>label{width:100%}}

/* Client permissions: account on the right; search before server. */
.access-page:has(.access-user-tools:not([hidden])) .access-heading{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;position:relative;min-height:40px;margin-bottom:0;padding-right:310px}
.access-page .access-heading>.access-user-tools:not([hidden]){position:absolute;right:0;top:0;margin-left:auto;display:grid;justify-items:end;gap:6px;width:290px}
.access-page .access-user-tools>label{display:grid;gap:6px;text-align:right;width:auto}
.access-page .access-user-tools select{width:280px;max-width:100%}
.access-page:has(.access-user-tools:not([hidden])) .access-services{margin:0 310px 12px 0;min-height:44px}
.access-page .access-server-controls>.access-server-search{display:grid!important;grid-template-columns:1fr;gap:6px;flex:0 1 300px;min-width:0}
@media(max-width:650px){.access-page:has(.access-user-tools:not([hidden])) .access-heading{padding-right:0;flex-direction:column;gap:8px}.access-page .access-heading>.access-user-tools:not([hidden]){position:static;align-self:flex-end;width:min(290px,100%)}.access-page:has(.access-user-tools:not([hidden])) .access-services{margin:0 0 8px;min-height:0}}

/* Checkbox columns use semantic cells, including grouped rows with rowspans. */
:is(#admin-view,.access-page) table th:has(input[type=checkbox]),:is(#admin-view,.access-page) table td:has(>input[type=checkbox]){text-align:center!important;vertical-align:middle}
:is(#admin-view,.access-page) table td:has(>input[type=checkbox]) input[type=checkbox]{display:inline-block;margin:0;vertical-align:middle}
:is(#admin-view,.access-page) table th label:has(input[type=checkbox]){display:flex;justify-content:center;align-items:center;gap:7px;min-width:0}
:is(#admin-view,.access-page) .access-domain-matrix td:has(>[data-access-service]){width:15%;min-width:95px;text-align:center!important}
:is(#admin-view,.access-page) .access-domain-matrix td.access-domain-service{text-align:left!important}
.access-page .access-inline-filters{display:flex;justify-content:flex-start;align-items:end;flex-wrap:wrap;gap:10px;margin:10px 0}
.access-page .access-inline-filters>label{display:grid;gap:6px;margin:0;flex:0 1 300px;min-width:0;max-width:100%}
.access-page .access-inline-filters>.access-domain{flex-basis:440px}
.access-page .access-inline-filters input,.access-page .access-inline-filters select{width:100%;min-width:0}
.service-subnav .nav-item,.support-subnav .nav-item{display:flex;align-items:center;gap:8px}
.service-subnav .icon,.support-subnav .icon{width:13px;height:13px;flex:0 0 13px;pointer-events:none;stroke:currentColor}
