/* Access-key management stays independent of global siting form layout. */
#access-keys-page { width:100%; max-width:1530px; min-width:0; }
#access-keys-page > .hub-page-heading { flex-wrap:wrap; align-items:flex-start; }
#access-keys-page > .hub-page-heading > div { flex:1 1 20rem; min-width:0; }
#access-keys-mount { container:access-manager / inline-size; min-width:0; }
#access-keys-page .access-keys { min-width:0; }
#access-keys-page .access-keys * { box-sizing:border-box; }
#access-keys-page :is(h2,p,label,small,strong,span,dd,dt,code) { overflow-wrap:anywhere; }
#access-keys-page .access-keys button { min-width:0; max-width:100%; min-height:40px; padding:9px 13px; border:1px solid var(--border); border-radius:7px; background:var(--field); color:var(--text); font-family:inherit; font-size:12px; line-height:1.5; white-space:normal; cursor:pointer; }
#access-keys-page .access-keys button:hover:not(:disabled) { border-color:var(--accent-secondary); background:var(--surface-hover); }
#access-keys-page .access-keys button:disabled { opacity:.45; cursor:default; }
#access-keys-page .access-keys .access-keys-primary { width:100%; margin-top:5px; border-color:var(--accent); background:var(--accent); color:var(--on-accent); font-weight:650; }
#access-keys-page .access-keys-intro { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:12px 24px; margin-bottom:22px; }
#access-keys-page .access-keys-intro > p { flex:1 1 24rem; min-width:0; margin:0; color:var(--muted); font-size:12px; line-height:1.8; }
#access-keys-page .access-keys-manager-badge { flex:none; padding:7px 10px; border:1px solid var(--accent-border); border-radius:6px; background:var(--accent-soft); color:var(--accent); font-size:10px; line-height:1.6; }
#access-keys-page .access-keys-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:22px; align-items:start; min-width:0; }
#access-keys-page :is(.access-keys-create,.access-keys-history,.access-keys-issued) { min-width:0; padding:22px; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
#access-keys-page .access-keys-create { border-top:4px solid var(--accent-secondary); }
#access-keys-page .access-keys h2 { margin:0; color:var(--text); font-size:18px; line-height:1.5; font-weight:600; }
#access-keys-page .access-keys-create > header { margin-bottom:20px; }
#access-keys-page .access-keys form > label { display:flex; flex-direction:column; gap:8px; min-width:0; margin:0 0 20px; color:var(--text); font-size:12px; font-weight:550; line-height:1.6; }
#access-keys-page .access-keys :is(input,select) { display:block; width:100%; min-width:0; max-width:100%; height:auto; min-height:44px; margin:0; padding:10px 12px; border:1px solid var(--border); border-radius:7px; background:var(--field); color:var(--text); font-family:inherit; font-size:13px; line-height:1.6; }
#access-keys-page .access-keys :is(input,select):focus-visible { outline:2px solid var(--accent-secondary); outline-offset:2px; }
#access-keys-page .access-keys form small { color:var(--muted); font-size:11px; font-weight:400; line-height:1.8; }
#access-keys-page .access-keys-security-note { margin:16px 0 0; padding-top:16px; border-top:1px solid var(--border); color:var(--muted); font-size:11px; line-height:1.8; }
#access-keys-page .access-keys-workspace { min-width:0; }
#access-keys-page .access-keys-feedback { margin:0 0 18px; padding:13px 15px; border:1px solid var(--accent-border); border-radius:8px; background:var(--accent-soft); color:var(--text); font-size:12px; line-height:1.8; }
#access-keys-page .access-keys-feedback.is-error { border-color:#9d544b; background:#3a2427; color:#ffd4cd; }
#access-keys-page .access-keys-issued { margin-bottom:22px; border-color:var(--accent-border); }
#access-keys-page .access-keys-list-heading { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:12px 18px; margin-bottom:18px; }
#access-keys-page .access-keys-list-heading > div { flex:1 1 14rem; min-width:0; }
#access-keys-page .access-keys-list-heading > button { flex:0 1 auto; }
#access-keys-page .access-keys-list-heading p:not(.hub-eyebrow) { margin:6px 0 0; color:var(--muted); font-size:11px; line-height:1.8; }
#access-keys-page .access-keys-issued-actions { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:17px; }
#access-keys-page .access-keys-secret-list { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; min-width:0; }
#access-keys-page .access-keys-secret-card { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:12px; min-width:0; padding:16px; border:1px solid var(--border); border-radius:9px; background:var(--field); }
#access-keys-page .access-keys-secret-meta { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:5px 14px; min-width:0; }
#access-keys-page .access-keys-secret-meta strong { color:var(--accent); font-size:11px; line-height:1.6; }
#access-keys-page .access-keys-secret-meta span { color:var(--muted); font-size:10px; line-height:1.7; }
#access-keys-page .access-key-secret { display:block; min-width:0; padding:12px; border:1px solid var(--border); border-radius:7px; background:var(--bg); color:var(--text); font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace; word-break:break-all; user-select:all; }
#access-keys-page .access-keys-secret-card > button { justify-self:start; }
#access-keys-page .access-keys-status-guide { display:flex; flex-wrap:wrap; gap:10px 17px; margin:0 0 20px; padding-bottom:17px; border-bottom:1px solid var(--border); color:var(--muted); font-size:10px; line-height:1.8; }
#access-keys-page .access-keys-status-guide > span { display:flex; align-items:center; gap:7px; }
#access-keys-page .access-keys-status-guide i { display:block; width:6px; height:6px; border-radius:50%; background:var(--muted); }
#access-keys-page .access-keys-status-guide .is-available { background:var(--success); }
#access-keys-page .access-keys-status-guide .is-redeemed { background:var(--accent-secondary); }
#access-keys-page .access-keys-status-guide .is-expired { background:#d5b879; }
#access-keys-page .access-keys-status-guide .is-revoked { background:var(--danger); }
#access-key-list { display:grid; gap:12px; min-width:0; }
#access-keys-page .access-keys-row { min-width:0; padding:16px; border:1px solid var(--border); border-radius:9px; background:var(--field); }
#access-keys-page .access-keys-row-title { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 14px; margin-bottom:14px; }
#access-keys-page .access-keys-row-title strong { font-size:12px; line-height:1.7; }
#access-keys-page .access-keys-status { padding:4px 8px; border:1px solid var(--border); border-radius:5px; color:var(--muted); font-size:10px; line-height:1.6; }
#access-keys-page .access-keys-status.is-available { border-color:#93d9b745; background:var(--success-soft); color:var(--success); }
#access-keys-page .access-keys-status.is-redeemed { border-color:#baa6f745; background:var(--violet-soft); color:var(--accent-secondary); }
#access-keys-page .access-keys-status.is-expired { border-color:#d5b87945; background:#d5b87912; color:#e7cb95; }
#access-keys-page .access-keys-status.is-revoked { border-color:#f4a7b545; background:var(--danger-soft); color:var(--danger); }
#access-keys-page .access-keys-row dl { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr)); gap:12px 18px; margin:0 0 14px; min-width:0; }
#access-keys-page .access-keys-row dl > div { min-width:0; }
#access-keys-page .access-keys-row dt { margin:0 0 3px; color:var(--muted); font-size:10px; line-height:1.7; }
#access-keys-page .access-keys-row dd { margin:0; color:var(--text); font-size:11px; line-height:1.8; }
#access-keys-page .access-keys-row-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; min-width:0; }
#access-keys-page .access-keys-row-footer small { flex:1 1 12rem; min-width:0; color:var(--muted); font-size:9px; line-height:1.8; }
#access-keys-page .access-keys-row-footer button { flex:0 1 auto; color:var(--danger); font-size:11px; }
#access-keys-page .access-keys-empty { margin:0; padding:16px 0; color:var(--muted); font-size:12px; line-height:1.8; }
#access-keys-page .access-keys-denied { padding:24px; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
#access-keys-page .access-keys-denied h2 { margin:0 0 12px; font-size:20px; }
#access-keys-page .access-keys-denied p { color:var(--muted); font-size:13px; line-height:1.8; }
@container access-manager (min-width:960px) {
  #access-keys-page .access-keys-layout { grid-template-columns:minmax(280px,.38fr) minmax(0,1fr); }
}
@container access-manager (max-width:480px) {
  #access-keys-page :is(.access-keys-create,.access-keys-history,.access-keys-issued) { padding:16px; }
  #access-keys-page .access-keys-issued-actions > button { flex:1 1 130px; }
  #access-keys-page .access-keys-secret-card { padding:13px; }
}
#access-keys-page .access-keys-permissions { display:flex; flex-direction:column; gap:8px; min-width:0; margin-bottom:20px; color:var(--text); font-size:12px; font-weight:550; line-height:1.6; }
#access-keys-page #access-key-permissions-toggle { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:44px; padding:10px 12px; text-align:left; }
#access-keys-page #access-key-permissions-panel { min-width:0; max-height:420px; padding:8px; overflow:auto; border:1px solid var(--border); border-radius:8px; background:var(--field); scrollbar-gutter:stable; }
#access-keys-page .access-keys-permission-actions { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:8px; }
#access-keys-page .access-keys-permission-option { display:flex; align-items:flex-start; gap:11px; min-width:0; margin:0; padding:12px 7px; border-top:1px solid var(--border); cursor:pointer; }
#access-keys-page .access-keys-permission-option input { flex:none; width:18px; min-width:18px; max-width:18px; height:18px; min-height:18px; margin:3px 0 0; padding:0; accent-color:var(--accent); }
#access-keys-page .access-keys-permission-option > span { display:block; min-width:0; }
#access-keys-page .access-keys-permission-option strong { display:block; font-size:12px; line-height:1.7; }
#access-keys-page .access-keys-permission-option small { display:block; margin-top:4px; }
#access-keys-page .access-keys-granted-tools { margin:0 0 14px; color:var(--muted); font-size:11px; line-height:1.8; }
#access-keys-page .access-keys-limited-note { margin:0 0 14px; padding:10px 12px; border-left:3px solid var(--accent-secondary); border-radius:4px; background:var(--violet-soft); color:var(--muted); font-size:11px; line-height:1.8; }
