/* Shared administration layout; design tokens and identity stay common-owned. */
.admin-workspace{--admin-line:var(--line,#dbe1e8);color:var(--text,#182536);font-family:var(--font-ui,Inter,sans-serif);min-width:0;text-align:left}
.admin-workspace *{box-sizing:border-box;min-width:0}
/* Visible inline admin retains shell spacing over lifted messenger overrides. */
body[data-shell-app] main:has(>#admin-panel:not([hidden])){padding-top:18px!important}
@media(max-width:767px){
 body[data-shell-app] main:has(>#admin-panel:not([hidden])){padding-inline:12px!important}
}
.admin-workspace [hidden],.admin-modal [hidden]{display:none!important}
.admin-workspace h2,.admin-workspace h3,.admin-modal h2,.admin-modal h3{margin:0 0 10px;overflow-wrap:anywhere}
.admin-workspace p,.admin-modal p{line-height:1.55;overflow-wrap:anywhere}
.admin-workspace .admin-top{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:24px}
.admin-workspace .admin-eyebrow{font-size:12px;font-weight:800;letter-spacing:.09em;color:var(--muted);margin:0 0 6px}
.admin-workspace .admin-layout{display:grid;grid-template-columns:205px minmax(0,1fr);gap:28px;align-items:start}
.admin-workspace .admin-nav{display:grid;gap:5px;position:sticky;top:0}
.admin-workspace .admin-nav p{margin:12px 10px 4px;font-size:11px;letter-spacing:.08em;font-weight:800;color:var(--muted)}
.admin-workspace .admin-nav button{width:100%;text-align:left;border:0;background:transparent;border-radius:12px;white-space:normal}
.admin-workspace .admin-nav button[aria-current=page]{background:var(--brand-soft,#e4f0fd);color:var(--brand,#1765a3);font-weight:800}
.admin-workspace .admin-mobile-nav{display:none}
.admin-workspace .admin-heading{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:20px}
.admin-workspace .admin-heading p{color:var(--muted);margin:0}
.admin-workspace .admin-split{display:grid;grid-template-columns:minmax(180px, .8fr) minmax(0,1.7fr);gap:18px;align-items:start}
.admin-workspace .admin-card,.admin-modal .admin-card{border:1px solid var(--admin-line,#dbe1e8);background:var(--surface,#fff);border-radius:18px;padding:22px;margin:0 0 18px;box-shadow:none}
.admin-workspace .admin-records{display:grid;gap:7px;margin-top:14px;max-height:60vh;overflow-y:auto}
.admin-workspace .admin-record{display:grid;gap:6px;align-content:center;width:100%;text-align:left;border:1px solid var(--admin-line);border-radius:12px;background:var(--surface,#fff);padding:12px;white-space:normal;overflow-wrap:anywhere}
.admin-workspace .admin-record[aria-pressed=true]{border-color:var(--brand,#1765a3);background:var(--brand-soft,#eff7ff)}
.admin-workspace .admin-record small{color:var(--muted);font-size:12px;font-weight:400}
.admin-workspace label,.admin-modal label{display:grid;gap:7px;font-size:14px;font-weight:600;margin-bottom:14px}
.admin-workspace :is(input,select,textarea),.admin-modal :is(input,select,textarea){width:100%;max-width:100%;min-width:0!important;border:1px solid var(--admin-line,#dbe1e8);background:var(--surface,#fff);color:inherit;border-radius:10px;padding:10px 12px;font:inherit;font-size:16px;min-height:44px!important}
.admin-workspace textarea,.admin-modal textarea{min-height:90px;resize:vertical}
.admin-workspace button,.admin-modal button{min-height:44px!important;min-width:44px!important;border:1px solid var(--admin-line,#dbe1e8);border-radius:999px;padding:10px 16px;font:inherit;font-size:14px;font-weight:700;color:inherit;background:var(--surface,#fff);cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.admin-workspace button.primary,.admin-modal button.primary{background:var(--brand,#1765a3);color:#fff;border-color:transparent}
.admin-workspace button:disabled,.admin-modal button:disabled{opacity:.55;cursor:default}
.admin-workspace :is(button,select,input,summary):focus-visible,.admin-modal :is(button,select,input):focus-visible{outline:3px solid var(--brand,#1765a3);outline-offset:3px}
.admin-workspace small,.admin-modal small{font-size:12px;line-height:1.5;color:var(--muted);font-weight:400;overflow-wrap:anywhere}
.admin-workspace .admin-form-grid,.admin-modal .admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.admin-workspace .admin-actions,.admin-modal .admin-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px}
.admin-workspace .admin-note,.admin-modal .admin-note{padding:14px 16px;background:var(--brand-soft,#eef5fc);border-radius:12px;line-height:1.6;margin:16px 0;overflow-wrap:anywhere}
.admin-workspace .admin-error,.admin-modal .admin-error{color:var(--danger,#a12330);white-space:pre-line;overflow-wrap:anywhere}
.admin-workspace .admin-member,.admin-modal .admin-member{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,.5fr) auto;gap:12px;align-items:center;border-bottom:1px solid var(--admin-line,#dbe1e8);padding:14px 0}
.admin-workspace .admin-person,.admin-modal .admin-person{display:grid;gap:4px;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
.admin-workspace .admin-kv{display:grid;grid-template-columns:minmax(100px,.6fr) minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--admin-line)}
.admin-workspace .admin-kv dd{margin:0;overflow-wrap:anywhere}
.admin-workspace .admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.admin-workspace .admin-tabs button[aria-selected=true]{color:var(--brand,#1765a3);border-color:currentColor}
.admin-workspace .admin-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.admin-workspace .admin-chip-list,.admin-modal .admin-chip-list{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.admin-workspace .admin-chip,.admin-modal .admin-chip{display:flex;align-items:center;gap:8px;max-width:100%;padding-left:12px;background:var(--brand-soft,#eef5fc);border-radius:24px;overflow-wrap:anywhere}
.admin-workspace .admin-inline,.admin-modal .admin-inline{display:flex;gap:8px;align-items:start}.admin-inline input{flex:1}
.admin-workspace .admin-check,.admin-modal .admin-check{display:flex;align-items:center;gap:10px;min-height:44px}
.admin-workspace .admin-check input,.admin-modal .admin-check input{width:44px;height:44px;flex:0 0 44px}
.admin-workspace .admin-danger,.admin-modal .admin-danger{color:var(--danger,#a12330)}
/* Native top layer owns the scrim; page length and transformed ancestors cannot clip it. */
dialog.admin-modal,dialog#native-admin-dialog.admin-workspace{position:fixed!important;inset:0!important;margin:auto!important;width:min(720px,calc(100% - 24px))!important;height:fit-content!important;max-width:calc(100% - 24px)!important;max-height:calc(100dvh - 24px)!important;padding:24px!important;overflow:auto!important;border:1px solid var(--admin-line,#dbe1e8);border-radius:20px!important;background:var(--surface,#fff);color:var(--text,#182536)}
dialog#native-admin-dialog.admin-workspace{width:min(1240px,calc(100% - 24px))!important}
dialog.admin-modal::backdrop,dialog#native-admin-dialog.admin-workspace::backdrop{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;background:rgba(15,27,45,.55)!important;border-radius:0!important;transform:none!important}
@media(max-width:1050px){.admin-workspace .admin-split{grid-template-columns:minmax(0,1fr)}.admin-workspace .admin-records{max-height:220px}}
@media(max-width:767px){
 .admin-workspace .admin-layout{grid-template-columns:minmax(0,1fr);gap:16px}
 .admin-workspace .admin-nav{display:none}.admin-workspace .admin-mobile-nav{display:grid}
 .admin-workspace .admin-top,.admin-workspace .admin-heading{flex-direction:column;gap:12px;margin-bottom:16px}
 .admin-workspace .admin-card,.admin-modal .admin-card{padding:16px;border-radius:14px}
 .admin-workspace .admin-summary,.admin-workspace .admin-form-grid,.admin-modal .admin-form-grid{grid-template-columns:minmax(0,1fr)}
 .admin-workspace .admin-member,.admin-modal .admin-member{grid-template-columns:minmax(0,1fr) auto}
 .admin-workspace .admin-member>.admin-person,.admin-modal .admin-member>.admin-person{grid-column:1/-1;width:100%}
 .admin-workspace .admin-member>label,.admin-modal .admin-member>label{grid-column:1/-1;width:100%}
 .admin-workspace .admin-kv{grid-template-columns:minmax(0,1fr);gap:5px}
 .admin-workspace .admin-actions>button,.admin-modal .admin-actions>button{flex:1 1 120px}
 dialog.admin-modal,dialog#native-admin-dialog.admin-workspace{padding:16px!important}
}

/* Override broad legacy form/button rules only inside the approved workspace. */
.admin-workspace form,.admin-modal form{display:block;margin:16px 0}
.admin-workspace .admin-heading>button{flex:0 0 auto;width:auto!important}
.admin-workspace .admin-nav button:not([aria-current=page]){background:transparent!important;color:inherit!important}
.admin-workspace .admin-record{border-radius:12px!important}
.admin-workspace .admin-card label,.admin-modal label{width:100%}
.admin-workspace .password-control,.admin-modal .password-control{position:relative;display:block;min-width:0}
.admin-workspace .password-control input,.admin-modal .password-control input{padding-right:72px}
.admin-workspace [data-admin-password],.admin-modal [data-admin-password]{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:transparent;border:0;padding:8px}
