.login-screen{overflow:auto}.login-card{max-height:calc(100vh - 40px);overflow:auto}.login-card form{display:grid;gap:10px}.login-card label{display:grid;gap:5px}.login-card input{width:100%;box-sizing:border-box}.login-card details{margin:8px 0}.online-actions{display:flex;flex-wrap:wrap;gap:8px}.online-secret{font-family:monospace;overflow-wrap:anywhere;user-select:all}.online-registration,.online-conflict{padding:16px;border:1px solid var(--line, #64748b);border-radius:14px;margin:12px 0}.online-registration label{display:block;margin:8px 0}.online-conflict pre{white-space:pre-wrap}.online-pre{white-space:pre-wrap}.top-actions{flex-wrap:wrap}#onlineDepartment{max-width:180px}#authMessage{white-space:pre-wrap;line-height:1.5;color:var(--text,inherit)}
@media(max-width:800px){.app{display:flex!important;flex-direction:column!important;height:100dvh}.app.hidden{display:none!important}.sidebar{width:auto!important;max-height:145px;padding:8px!important;flex-shrink:0;overflow:auto}.brand,.side-copyright,.userBadge{display:none!important}#nav{display:flex;gap:6px;overflow:auto}#nav button{min-width:130px;flex-shrink:0}.side-footer{display:flex;align-items:center;gap:8px;padding:4px}.main{min-height:0;flex:1}.topbar{padding:10px;display:block;height:auto}.topbar h2{font-size:21px}.top-actions{margin-top:8px}.content{padding:10px!important}.metric-grid,.home-grid,.info-grid{grid-template-columns:1fr!important}.modal-card{max-height:92dvh;max-width:96vw}.table-wrap{overflow:auto}}
.chat-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px}.chat-rooms{display:flex;flex-direction:column;gap:8px}.chat-message{margin:12px 0;padding:14px;border-radius:14px;background:rgba(120,150,170,.12)}.chat-message.mine{margin-left:12%;background:rgba(45,120,205,.2)}.chat-message header{font-size:12px;opacity:.75}.chat-message p{white-space:pre-wrap;overflow-wrap:anywhere}.chat-file{display:grid;gap:6px;margin-top:8px;padding:10px;border:1px solid #64748b;border-radius:10px}.chat-conversation{min-width:0}#chatMessages{max-height:50vh;overflow:auto}#chatCompose{display:grid;gap:10px}#chatCompose label{display:grid;gap:5px}@media(max-width:800px){.chat-layout{grid-template-columns:1fr}.chat-rooms{max-height:160px;overflow:auto}}

.online-update{position:fixed;right:20px;bottom:20px;z-index:2000;max-width:calc(100vw - 40px);box-shadow:0 8px 24px #0005;}

.login-card h1,.login-card h2{text-align:center}.login-card #authPanel>p{text-align:center}
button,input,select,textarea{font-family:var(--font-ui)}
button:disabled,select:disabled{cursor:default;opacity:.6}
@media(max-width:800px){
.app{padding:8px;gap:8px}.sidebar{max-height:none;gap:6px;overflow:visible}
#nav{flex-direction:row;flex:0 0 auto;overflow-x:auto;overflow-y:hidden;min-height:48px}
#nav .nav-btn{min-width:150px;width:auto;height:44px;min-height:44px;grid-template-columns:22px 1fr;justify-items:start;padding:8px}
#nav .nav-btn b{display:block;font-size:12px}#nav .nav-btn[data-section="settings"]{margin-top:0}
#userBadge,.side-copyright{display:none}.side-footer{border:0;justify-content:flex-end;padding:0}.side-footer button{font-size:12px;min-height:36px}
.topbar{padding:10px;min-height:0}.topbar h2{font-size:20px}.top-actions{justify-content:flex-start;margin-top:6px;gap:8px}.main{gap:8px}.content{padding:0 0 12px!important}
.panel{padding:12px}.month-line,.seg-row,.shift-row,.schedule-legend{flex-wrap:wrap}.schedule-legend .muted{display:none}.sched-cell{min-width:36px;min-height:40px}
.modal-card{width:calc(100vw - 16px);max-width:calc(100vw - 16px)}.employee-dossier,.dossier-fields{display:grid;grid-template-columns:1fr}.chat-file,.chat-rooms{overflow-wrap:anywhere}}
@media(hover:none){.tooltip{display:none!important}}

@media(max-width:800px){.map-caption{display:block;left:8px;right:8px;top:8px;padding:8px;font-size:12px}.map-caption>span{display:none}.map-caption em{display:flex;gap:4px;flex-wrap:wrap}.map-caption b{font-size:12px}.map-caption .pill{font-size:11px;padding:3px 6px}.map-tools button{min-width:40px;min-height:40px}}

.online-field{display:grid;gap:5px}.password-field{position:relative;min-width:0}.password-field input{padding-right:52px;min-height:44px}.password-field .password-toggle{position:absolute;right:2px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:40px;min-height:40px;padding:8px;margin:0;border:0;border-radius:8px;background:transparent;color:var(--text);cursor:pointer}.password-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.password-toggle .password-eye-slash{display:none}.password-toggle[aria-pressed="true"] .password-eye-slash{display:block}.password-field .password-toggle:hover{background:rgba(120,150,170,.15)}.password-field .password-toggle:focus-visible{outline:2px solid var(--accent,#4285f4);outline-offset:-2px}
