.dbk-staff [hidden] { display: none !important; }
.dbk-staff { min-width: 0; }
.dbk-staff h2 { font: 750 clamp(21px, 4vw, 30px)/1.3 system-ui,sans-serif; }
.dbk-staff .dbk-staff-term { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.dbk-staff .dbk-staff-toolbar, .dbk-staff .dbk-staff-modes { display:flex; flex-wrap:wrap; gap:10px; align-items:end; margin:16px 0; }
.dbk-staff button:not(.dbk-confirm) { min-height:44px; padding:10px 14px; border:1px solid #cbdacf; border-radius:9px; color:#174d35; background:#f2f7f2; font:600 14px/1.4 system-ui,sans-serif; cursor:pointer; text-transform:none; }
.dbk-staff button[aria-pressed="true"] { background:#186b46; color:white; }
.dbk-staff button:disabled { opacity:.55; cursor:wait; }
.dbk-staff .dbk-field { display:grid; gap:6px; margin:0 0 12px; font-size:14px; font-weight:600; }
.dbk-staff .dbk-field input, .dbk-staff .dbk-field select { display:block; width:100%; min-width:0; min-height:48px; margin:0; padding:10px 12px; border:1px solid #b9cac0; border-radius:9px; background:#fff; color:var(--dbk-ink); font:400 16px/1.4 system-ui,sans-serif; box-shadow:none; }
.dbk-staff .dbk-staff-toolbar .dbk-field { flex:1 1 180px; }
.dbk-staff .dbk-staff-login { max-width:420px; }
.dbk-staff .dbk-staff-map { min-width:0; }
.dbk-staff .dbk-staff-map svg { display:block; width:100%; max-width:430px; height:auto; margin:0 auto 16px; }
.dbk-staff .dbk-staff-summary { white-space:pre-line; overflow-wrap:anywhere; line-height:1.65; }
.dbk-staff .dbk-staff-message, .dbk-staff .dbk-staff-availability-message { padding:12px; border-radius:9px; background:#edf5ee; overflow-wrap:anywhere; }
.dbk-staff .dbk-staff-list-section { margin-top:28px; }
.dbk-staff .dbk-staff-day { margin:16px 0; border:1px solid #d7e2d7; border-radius:12px; background:white; overflow:hidden; }
.dbk-staff .dbk-staff-day summary { padding:16px; font-weight:750; cursor:pointer; overflow-wrap:anywhere; }
.dbk-staff .dbk-staff-entry { display:grid; grid-template-columns:minmax(0,1fr) 46px; gap:10px; padding:14px; border-top:1px solid #e0e7df; }
.dbk-staff .dbk-staff-entry p { margin:3px 0; overflow-wrap:anywhere; font-size:14px; }
.dbk-staff .dbk-staff-entry strong { font-size:16px; overflow-wrap:anywhere; }
.dbk-staff .dbk-staff-entry[data-status="cancelled"] { color:#657267; background:#f6f7f5; }
.dbk-staff .dbk-staff-entry button, .dbk-staff .dbk-staff-dialog [data-action="cancel"] { color:#ab2424; background:#fff1f1; border-color:#e9caca; }
.dbk-staff .dbk-staff-entry button { align-self:center; width:46px; padding:10px 0; }
.dbk-staff .dbk-staff-entry[data-kind="group"] { grid-template-columns:minmax(0,1fr); }
.dbk-staff .dbk-staff-entry[data-kind="group"] > button { width:auto; justify-self:start; padding:10px 14px; }
.dbk-staff .dbk-staff-conflicts { padding:12px; background:#fff1f1; border:1px solid #e9caca; border-radius:9px; color:#952323; white-space:pre-line; overflow-wrap:anywhere; }
.dbk-staff .dbk-board[data-conflict="true"] .dbk-board-hit { stroke:#a92424; stroke-width:3; }
.dbk-staff .dbk-board[data-conflict="true"] { cursor:pointer; }
.dbk-staff .dbk-staff-event-details { margin:8px 0; }
.dbk-staff .dbk-staff-event-details summary { padding:8px 0; font-size:14px; }
.dbk-staff .dbk-staff-dialog { max-width:min(440px,calc(100vw - 32px)); box-sizing:border-box; border:1px solid #cadacb; border-radius:14px; padding:22px; font:16px/1.5 system-ui,sans-serif; color:#193e2e; overflow-wrap:anywhere; }
.dbk-staff .dbk-staff-dialog::backdrop { background:#102f2566; }
.dbk-staff .dbk-staff-dialog div { display:flex; flex-wrap:wrap; gap:12px; justify-content:end; }
.dbk-staff button:focus-visible, .dbk-staff summary:focus-visible { outline:3px solid #193e5c; outline-offset:2px; }
@media(min-width:768px) { .dbk-staff .dbk-layout { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); } .dbk-staff .dbk-staff-term { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:767px) { .dbk-staff .dbk-layout { grid-template-columns:minmax(0,1fr); } }
