.kiosk-page{min-height:100vh;background:#eef1f2;color:#17212b}
.kiosk-welcome-header{display:flex;align-items:center;gap:14px;padding:20px max(20px,calc((100% - 1100px)/2));background:#17212b;color:#fff}
.kiosk-welcome-header div{display:grid}
.kiosk-welcome-header strong{color:#bac4cb}
.kiosk-shell{width:min(1100px,calc(100% - 32px));margin:0 auto;padding:42px 0 64px}
.kiosk-shell h1{font-size:clamp(2rem,5vw,3.5rem);margin:.2em 0}
.employee-departments{display:grid;gap:28px;margin-top:30px}
.employee-department{--kiosk-initials-bg:#d9481c;--kiosk-initials-ring:#ffd8ca}
.employee-department.metal{--kiosk-initials-bg:#285673;--kiosk-initials-ring:#cfe5f2}
.employee-department.general_facility{--kiosk-initials-bg:#26705a;--kiosk-initials-ring:#cce9df}
.employee-department h2{margin:0 0 10px;font-size:1.25rem}
.employee-grid,.kiosk-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
.kiosk-module-grid{margin-top:28px}
.employee-card,.kiosk-module-grid a{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid #dce1e3;border-radius:18px;background:#fff;color:#17212b;text-decoration:none;box-shadow:0 5px 18px #17212b12;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}
.employee-card{min-height:162px;padding:9px 14px;justify-content:center;gap:5px;font:inherit;cursor:pointer}
.kiosk-module-grid a{min-height:190px;padding:24px 18px;justify-content:center;gap:12px}
.employee-card:hover,.employee-card:focus-visible,.kiosk-module-grid a:hover,.kiosk-module-grid a:focus-visible{transform:translateY(-3px);border-color:#e85a35;outline:2px solid #e85a3533;outline-offset:2px;box-shadow:0 12px 26px #17212b24}
.employee-card:active,.kiosk-module-grid a:active{transform:translateY(0);box-shadow:0 4px 12px #17212b1c}
.employee-card[aria-disabled="true"]{cursor:not-allowed;opacity:1;background:#f8faf9}
.employee-card[aria-disabled="true"] small{color:#a14b27;font-weight:700}
.kiosk-employee-initials{display:grid;place-items:center;width:88px;height:88px;flex:0 0 88px;border:4px solid #fff;border-radius:50%;background:var(--kiosk-initials-bg);color:#fff;box-shadow:0 0 0 4px var(--kiosk-initials-ring),0 7px 16px #17212b24;font-size:1.5rem;font-weight:900;line-height:1;letter-spacing:.04em}
.employee-card strong{font-size:1.1rem}
.kiosk-module-grid strong{font-size:1.2rem;line-height:1.25;text-align:center}
.employee-card small,.kiosk-module-grid span{color:#68747c;text-align:center}
.kiosk-module-grid span{max-width:230px;line-height:1.4}
.kiosk-module-grid .ui-icon{width:52px;height:52px;color:#e85a35}
.pin-dialog{padding:0}
.pin-dialog form{display:grid;gap:18px;padding:30px}
.pin-dialog label{display:grid;gap:7px;font-weight:700}.kiosk-notice,.kiosk-admin-card{margin:18px 0;padding:18px;border-radius:14px;background:#fff;border:1px solid #dce1e3}
.kiosk-footer{padding:24px;text-align:center;color:#68747c}
.kiosk-admin{width:min(1000px,calc(100% - 32px));margin:auto;padding:35px 0}
.kiosk-admin-card form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.kiosk-admin-card label{display:grid;gap:6px;flex:1}
.device-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-top:1px solid #e3e6e8}
.device-list article div{display:grid;gap:4px}
.device-list small{color:#68747c}
@media(max-width:620px){
  .kiosk-shell{padding-top:28px}
  .employee-departments{gap:24px}
  .employee-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .employee-card{min-height:162px;padding:9px 8px}
  .kiosk-module-grid a{min-height:170px;padding:20px 14px}
  .device-list article{align-items:flex-start;flex-direction:column}
}
@media(max-width:360px){.employee-grid{grid-template-columns:1fr}}
