/* Shared button alignment: loaded after account, administration and licensing styles. */
:root{--control-height:44px;--control-action-width:120px}
button:not([hidden]),[role="button"]:not([hidden]),a.primary,a.secondary,a.nav-primary,.table-link,.account-row-actions a,.status-tabs a,.license-subnav a,.account-detail-tabs a,.account-dropdown a,.admin-tabs>a,summary:not([hidden]){
 display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;vertical-align:middle;gap:8px
}
button>svg,button>img,[role="button"]>svg,a.primary>svg,a.secondary>svg{display:block;flex:none;align-self:center}
button,input[type=button],input[type=submit],input[type=reset]{text-align:center;line-height:20px}
body .primary,body .secondary,body .text-action,body .nav-primary,
.license-content .primary,.license-content .secondary,.license-personal .primary,.license-personal .secondary,
.group-actions .secondary,.group-code-panel .secondary,.compact-code .secondary,.search-row .secondary,
.admin-section-header .primary,.activation-list-heading .primary{
 min-height:var(--control-height);height:auto;min-width:var(--control-action-width);padding:10px 16px;border-radius:6px;font-size:14px;font-weight:600;line-height:20px;box-sizing:border-box
}
body .primary,body .secondary,body .nav-primary{padding-block:10px;min-height:44px;line-height:20px}
.admin-shell .admin-tabs button{min-height:44px;padding:10px 16px;line-height:20px}
.account-branches button{flex-direction:column;gap:6px;min-height:74px;padding:12px;text-align:center}
.account-branches button strong,.account-branches button span{margin:0;text-align:center}
body .admin-menu-toggle{display:none!important;justify-content:center;gap:16px}
.account-dropdown a,.account-dropdown button{min-height:44px;padding:10px 12px;line-height:20px}
.account-menu summary{padding:4px 10px;gap:9px}.account-avatar{display:grid;place-items:center}
.password-toggle{height:40px;min-height:40px;padding:8px;line-height:20px}
input[type=file]::file-selector-button{text-align:center;vertical-align:middle;min-height:44px;line-height:20px;padding:11px 14px;margin-block:0}
summary{cursor:pointer;list-style:none;gap:8px}summary::-webkit-details-marker{display:none}
summary:not(.account-menu summary)::before{content:'▸';display:block;flex:none;line-height:1}
details[open]>summary:not(.account-menu summary)::before{content:'▾'}
.status-tabs a,.license-subnav a,.account-detail-tabs a{line-height:20px}
.table-link,.account-row-actions a{min-height:44px;line-height:20px}
/* Each group or activation purpose is one bounded card. */
.group-directory,.activation-directory{display:grid;gap:20px;border:0}
.group-directory-item,.activation-entry{padding:24px;border:1px solid #d5ddea;border-radius:12px;background:#fbfcff;min-width:0}
.group-directory-heading,.activation-entry>header{gap:20px;align-items:center}
.group-directory-heading>div,.activation-entry>header h2{min-width:0;overflow-wrap:anywhere}
.group-directory-heading .secondary{flex:none}
.group-directory-links{padding-top:16px;border-top:1px solid #e2e8f1;margin-top:16px}
.group-directory-links a{min-height:32px;display:inline-flex;align-items:center;justify-content:center;line-height:20px;text-align:center}
.group-members>summary{min-height:44px;padding:10px 12px;border:1px solid #d5ddea;border-radius:6px;background:white;font-size:13px;min-width:120px}
.group-members[open]>summary{margin-bottom:14px}
.activation-entry-content{gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
/* Code and copy form one input group; feedback gets its own row without moving the buttons. */
.activation-code-tools{min-width:0}
.activation-code-tools .group-code-panel{display:grid;grid-template-columns:minmax(0,1fr) 68px;gap:0;margin:0 0 12px;padding:0;border:0;background:transparent;align-items:stretch}
.activation-code-tools .group-code-panel input{width:100%;min-width:0;min-height:44px;height:44px;margin:0;padding:10px 10px;font-size:12px;line-height:20px;border-radius:6px 0 0 6px;border-right:0;background:white}
.activation-code-tools .group-code-panel .secondary{min-width:0;width:68px;min-height:44px;height:44px;margin:0;padding:10px 8px;font-size:13px;line-height:20px;border-radius:0 6px 6px 0;background:#f0f4ff;border-color:#b8c5da}
.activation-code-tools .group-code-panel [data-group-copy-status]{grid-column:1/-1;margin:0;font-size:12px;line-height:20px}
.activation-code-tools .group-code-panel [data-group-copy-status]:not(:empty){padding-top:6px}
.activation-code-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.activation-code-actions form{display:flex;align-items:center;margin:0}
.activation-code-actions .secondary{width:120px;min-width:120px;min-height:44px;height:44px;padding:10px 10px;line-height:20px}
.activation-create,.group-editor{background:white;box-shadow:none}
@media(max-width:760px){
 body .admin-menu-toggle:not([hidden]){display:inline-flex!important}
 .group-directory-item,.activation-entry{padding:20px}.activation-entry-content{grid-template-columns:1fr;gap:20px}
 .account-branches button{min-height:44px;padding:10px 6px;gap:0}.group-directory-heading{align-items:flex-start}
 .account-branches button span{display:none}.group-directory-links{gap:12px}
}
@media(max-width:420px){
 .group-directory-item,.activation-entry{padding:16px}.group-directory-heading{flex-wrap:wrap}
 .activation-code-tools .group-code-panel{grid-template-columns:minmax(0,1fr) 60px}
 .activation-code-tools .group-code-panel .secondary{width:60px}
 .activation-code-tools .group-code-panel input{font-size:11px;padding-inline:8px}
 .activation-entry>header{align-items:flex-start}.activation-entry>header .status{flex:none}
 body .nav-primary{min-width:76px;padding-inline:12px}
}
[hidden]{display:none!important}
/* Creation forms stay out of the list until the user opens them. */
.management-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}
.management-heading>.page-heading{flex:1;min-width:0;margin:0!important}
.management-heading>.primary{flex:none;white-space:nowrap}
.management-dialog{box-sizing:border-box;width:min(600px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:28px;border:1px solid #d5ddea;border-radius:14px;background:#fff;color:var(--ink);box-shadow:0 24px 80px #142c5433;text-align:left;overflow:auto}
.management-dialog::backdrop{background:rgb(16 30 52 / 36%)}
body:has(.management-dialog[open]){overflow:hidden}
.management-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.management-dialog-heading h2{margin:0;font-size:21px;line-height:1.4;text-align:left}
.management-dialog .dialog-dismiss{flex:none;width:44px;height:44px;padding:0;border:1px solid #d5ddea;border-radius:6px;background:white;color:var(--muted);font-size:24px;line-height:1;cursor:pointer}
.management-dialog-intro{font-size:13px;color:var(--muted);line-height:1.7;margin:0 0 24px}
.management-dialog .field{margin-bottom:20px}
.management-dialog-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding-top:20px;margin-top:24px;border-top:1px solid #e2e8f1}
.management-dialog :is(button,input,select):focus-visible{outline:2px solid var(--blue);outline-offset:3px}
@media(max-width:520px){.management-heading{gap:12px;flex-wrap:wrap}.management-heading>.page-heading{flex-basis:100%}.management-heading>.primary{margin-left:auto}.management-dialog{padding:20px;max-height:calc(100dvh - 24px)}.management-dialog-actions>*{flex:1;min-width:0!important}}
