.staff-panel{max-width:none!important}.staff-top-tab{font-weight:800!important;color:#27586b!important}.staff-top-tab.active{background:#17475b!important;color:#fff!important}.staff-rail-tab{font-size:20px}
.staff-intro{display:flex;align-items:center;gap:17px;margin-bottom:19px;padding:19px 22px;border:1px solid #b9d8e2;border-radius:22px;background:linear-gradient(110deg,#fff,#e8f6f8);box-shadow:0 10px 24px #173d4c0e}.staff-intro img{width:52px;height:52px;object-fit:cover;border-radius:14px;box-shadow:0 5px 15px #172c3850}.staff-intro>div{display:grid;gap:5px}.staff-intro strong{font-size:16px;color:#173749}.staff-intro span{font-size:10px;line-height:1.6;color:#5c7b88}.staff-intro-mark{margin-left:auto;white-space:nowrap;border:1px solid #9acbd4;border-radius:999px;padding:9px 11px;color:#32849b!important;font-size:8px!important;font-weight:900;letter-spacing:1px}
.staff-layout{display:grid;grid-template-columns:minmax(245px,.7fr) minmax(0,1.7fr);gap:16px;align-items:start}.staff-panel .card{border:1px solid #d8e8eb;box-shadow:0 12px 28px #143e510d}.staff-card-heading{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:18px}.staff-card-heading span{color:#368ba0;font-size:9px;letter-spacing:1.4px;font-weight:900}.staff-card-heading h2{font-size:22px;margin:7px 0 0}.staff-hint{color:#668391;font-size:10px;line-height:1.7;margin:0 0 16px}
.staff-list{display:grid;gap:9px}.staff-person{display:flex;align-items:center;gap:11px;width:100%;padding:12px;border:1px solid #d5e7eb;border-radius:15px;background:#f5fafb;text-align:left;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}.staff-person:hover{transform:translateY(-2px);border-color:#7bb8c7}.staff-person.is-selected{border-color:#3395a9;background:#e8f6f8;box-shadow:inset 3px 0 #2490a8}.staff-avatar{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:12px;background:#163f52;color:#e5f9fb;font-size:19px}.staff-person-text{display:grid;gap:4px;min-width:0}.staff-person-text strong{font-size:12px;overflow:hidden;text-overflow:ellipsis}.staff-person-text small{font-size:9px;color:#668391;overflow:hidden;text-overflow:ellipsis}.staff-person-status{margin-left:auto;color:#aa6a37;font-size:8px;font-weight:900;white-space:nowrap}.staff-person-status.is-active{color:#0b946d}.staff-selected-role{border:1px solid #c6e0e7;border-radius:999px;padding:7px 10px;background:#eff8fa;white-space:nowrap}
.staff-permission-list{display:grid;gap:15px;max-height:730px;overflow:auto;padding-right:4px}.staff-permission-group{border:1px solid #d8e8eb;border-radius:17px;padding:15px;background:linear-gradient(140deg,#fff,#f6fbfc)}.staff-permission-group h3{font-size:13px;margin:0 0 7px;color:#194a5b}.staff-permission-row,.staff-status-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 0;border-top:1px solid #e1edf0}.staff-permission-row>div,.staff-status-row>div{display:grid;gap:4px;min-width:0}.staff-permission-row strong,.staff-status-row strong{font-size:11px}.staff-permission-row small,.staff-status-row small{font-size:9px;color:#718b96;line-height:1.5}.staff-status-row{border:1px solid #cbe1e6;border-radius:16px;padding:14px;background:#ecf7f8}
.staff-switch{flex:none;min-width:69px;min-height:33px;border:1px solid #cfdfe4;border-radius:999px;background:#f0f3f4;color:#637d88;font-size:9px;font-weight:900;letter-spacing:.5px;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s}.staff-switch:hover:not(:disabled){transform:translateY(-2px)}.staff-switch.is-on{border-color:#1aa87d;background:linear-gradient(115deg,#1db28b,#0b8a6c);color:#fff;box-shadow:0 5px 11px #13a4772d}.staff-switch:disabled{cursor:default;opacity:.67}.staff-panel button:focus-visible{outline:2px solid #ef9e5b;outline-offset:2px}
.staff-remove-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border:1px solid #edcac5;border-radius:16px;background:linear-gradient(115deg,#fff8f7,#fff)}.staff-remove-row>div{display:grid;gap:5px}.staff-remove-row strong{font-size:11px;color:#773c37}.staff-remove-row small{font-size:9px;color:#996b67;line-height:1.5}.staff-remove-open,.staff-remove-submit{flex:none;border:1px solid #d9958d;border-radius:999px;padding:10px 15px;background:#fff;color:#ad4f46;font-size:10px;font-weight:800;cursor:pointer}.staff-remove-open:hover{background:#fff0ee}.staff-remove-submit{background:#bd4d43;color:#fff}.staff-remove-submit:disabled{opacity:.42;cursor:default}.staff-remove-confirm{padding:17px;border:1px solid #e1aaa3;border-radius:16px;background:#fff8f7}.staff-remove-confirm p{margin:0 0 12px;font-size:10px;color:#773c37}.staff-remove-confirm input{max-width:360px;background:#fff!important}.staff-remove-actions{display:flex;gap:9px;margin-top:11px}.staff-remove-confirm[hidden]{display:none!important}
.staff-create-card{margin-top:2px}.staff-create-form{display:grid;grid-template-columns:1fr 1fr minmax(150px,.65fr) auto;gap:13px;align-items:end}.staff-create-form label{margin:0}.staff-create-form .primary-button{white-space:nowrap}.staff-first-password{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:16px;padding:14px;border:1px solid #9fd5bd;border-radius:13px;background:#e9f8f1}.staff-first-password strong{font-size:10px}.staff-first-password code{font-size:13px;user-select:all}.staff-message{min-height:20px;color:#168468;font-size:11px}.staff-message.is-error{color:#bc4f42}
.admin-setup{margin-top:15px;padding:18px;border:1px solid #a6ced9;border-radius:18px;background:#f0f8fa}.admin-setup h2{font-size:23px;margin:6px 0 11px}.admin-setup>p:not(.overline){font-size:11px;line-height:1.65;color:#547786}.admin-setup-secret{display:block;margin:13px 0;padding:13px;border:1px dashed #78b9c8;border-radius:10px;background:#fff;color:#194e61;font-size:15px;letter-spacing:2px;overflow-wrap:anywhere;user-select:all}.admin-setup label{margin:12px 0}.admin-setup-message{min-height:18px;color:#bc4f42;font-size:11px}
@media(max-width:1000px){.staff-layout{grid-template-columns:1fr}.staff-permission-list{max-height:none}.staff-create-form{grid-template-columns:1fr 1fr}.staff-create-form .primary-button{align-self:end}}
@media(max-width:600px){.staff-intro{align-items:start}.staff-intro-mark{display:none}.staff-create-form{grid-template-columns:1fr}.staff-permission-row{gap:8px}.staff-permission-row small{max-width:230px}}
body.theme-dark .staff-intro,body.theme-dark .staff-permission-group,body.theme-dark .staff-person,body.theme-dark .staff-status-row{background:linear-gradient(135deg,#123246,#0b2637);border-color:#315466;color:#ecf9fa}
body.theme-dark .staff-intro strong,body.theme-dark .staff-permission-group h3,body.theme-dark .staff-person-text strong,body.theme-dark .staff-permission-row strong,body.theme-dark .staff-status-row strong{color:#ecf9fa}
body.theme-dark .staff-person.is-selected{background:#17445a;border-color:#6ac9d2}
body.theme-dark .staff-person-text small,body.theme-dark .staff-permission-row small,body.theme-dark .staff-status-row small,body.theme-dark .staff-hint{color:#a4c0ca}
body.theme-dark .staff-selected-role{background:#123246;border-color:#315466;color:#a5e7ed}
body.theme-dark .staff-intro-mark{border-color:#315466;color:#a5e7ed!important}
body.theme-dark .staff-remove-row,body.theme-dark .staff-remove-confirm{background:#2b2027;border-color:#80505a}body.theme-dark .staff-remove-row strong,body.theme-dark .staff-remove-confirm p{color:#ffd7d2}body.theme-dark .staff-remove-row small{color:#d5aaa5}body.theme-dark .staff-remove-open{background:#38252b;border-color:#80505a;color:#ffd7d2}
@media(prefers-reduced-motion:reduce){.staff-person,.staff-switch{transition:none}}

/* Keep all seven command sections aligned without nested horizontal scrolling. */
.control-panel .control-tabs.has-staff{grid-template-columns:repeat(7,minmax(0,1fr));max-width:none;gap:5px;margin-bottom:16px}
.control-panel .control-tabs.has-staff button{min-width:0;min-height:65px;padding:8px;gap:7px}
.control-panel .control-tabs.has-staff .control-tab-icon{width:31px;height:31px;flex:none;font-size:16px}
.control-panel .control-tabs.has-staff .control-tab-copy{min-width:0}
.control-panel .control-tabs.has-staff .control-tab-copy small{font-size:8px}
.control-panel .control-tabs.has-staff .control-tab-copy strong{font-size:10px;line-height:1.25;white-space:normal}
.control-panel .control-tabs.has-staff .control-tab-arrow{display:none}
@media(max-width:1100px){.control-panel .control-tabs.has-staff{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){.control-panel .control-tabs.has-staff{grid-template-columns:repeat(2,minmax(0,1fr))}.control-panel .control-tabs.has-staff button{min-height:59px}}

/* TOTP enrollment is shown only inside the authenticated setup-only session. */
.login-card .admin-setup{margin:0;padding:0;border:0;border-radius:0;background:transparent}
.login-card .admin-setup .overline{margin-top:0}.login-card .admin-setup h2{margin:9px 0 10px;font-size:27px;color:#123849;letter-spacing:-.04em}
.login-card .admin-setup-copy{margin:0 0 12px;color:#64818f;font-size:11px;line-height:1.6}
.login-card .admin-setup-account{margin:0 0 13px;color:#14627a;font-size:10px;font-weight:800}
.admin-setup-methods{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;margin:10px 0 15px;border:1px solid #d2e6eb;border-radius:13px;background:#eef7f8}
.admin-setup-methods button{min-height:36px;border-radius:9px;color:#5c7b89;font-size:11px;font-weight:800}
.admin-setup-methods button.active{background:#fff;color:#0b6c73;box-shadow:0 4px 12px #1a64751b}
.admin-setup-qr{display:grid;place-items:center;min-height:200px;padding:12px;border:1px solid #d9e7eb;border-radius:15px;background:#fff}
.admin-setup-qr svg{display:block;max-width:190px;max-height:190px;width:100%;height:auto}
.admin-setup-key{padding:17px;border:1px solid #d4e8ec;border-radius:14px;background:#f3fafa}
.admin-setup-key>span{display:block;color:#4f8292;font-size:9px;font-weight:900;letter-spacing:.12em}
.login-card .admin-setup-secret{margin:11px 0;padding:12px;border:1px dashed #8cbfca;border-radius:9px;background:#fff;color:#123d4e;font-size:13px;letter-spacing:.1em;text-align:center;word-break:break-all}
.admin-setup-key small{color:#a85945;font-size:10px}.admin-setup-passwords{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.admin-setup-passwords label{min-width:0}.login-card .admin-setup label{margin:13px 0 0}.login-card .admin-setup-message{min-height:0;margin:13px 0 0;color:#b2503e;font-size:11px;font-weight:750;line-height:1.5}
.login-card .admin-setup-message.is-success{padding:12px 14px;border-radius:11px;background:#e7f8ef;color:#0b7956;animation:loginFeedbackIn .35s ease both}
@media(max-width:500px){.admin-setup-passwords{grid-template-columns:1fr;gap:0}.admin-setup-qr{min-height:170px}.admin-setup-qr svg{max-width:165px;max-height:165px}}
