.access-login{max-width:450px;margin:40px auto;padding:24px}.access-login label,.access-form label{display:block;margin:12px 0}.access-login input,.access-form input:not([type=checkbox]),.access-form select{display:block;width:100%;box-sizing:border-box;padding:9px}.access-form{padding:20px;max-width:600px}.hotel-feedback{font-size:14px;padding:10px 0}.hotel-feedback .button-row{margin-top:6px}.employee-row{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #ddd}.employee-row p{margin:4px 0}.employee-hotel{background:#fffbe6;padding:12px}.employee-mode .sidebar-note,.employee-mode .stage{display:none}.employee-mode #main .geographic-map{height:280px}
@media(max-width:700px){.employee-mode .sidebar{position:static;width:auto;height:auto;padding:10px}.employee-mode .brand{display:none}.employee-mode .nav-label,.employee-mode .local-label{display:none}.employee-mode .workspace{margin:0;width:100%}.employee-mode .topbar{position:static;padding:8px;flex-wrap:wrap;height:auto}.employee-mode #main{padding:12px}.employee-mode .employee-row{grid-template-columns:1fr;gap:2px}.employee-mode .panel{padding:12px}}
.time-note{white-space:pre-wrap}.access-form textarea{display:block;width:100%;box-sizing:border-box;min-height:70px;font:inherit;padding:9px}.access-form select{max-width:100%}
.access-form .error:empty{display:none}
.hotel-picker-form .hotel-picker-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 10px}
.hotel-picker-form .hotel-choice-list{display:grid;gap:16px;margin:18px 0}
.hotel-picker-form .hotel-choice-card{padding:22px;border:1px solid #dce0e5;border-radius:10px;background:#fff;margin:12px 0}
.hotel-picker-form .hotel-choice-card h3{font-size:18px;margin:0 0 10px;line-height:1.35}
.hotel-picker-form .hotel-choice-address{margin:0 0 6px;line-height:1.5;overflow-wrap:anywhere}
.hotel-picker-form .hotel-choice-distance{margin:0 0 16px;color:#525b66;font-size:14px}
.hotel-picker-form .button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;line-height:1.35;white-space:normal}
.hotel-picker-form .hotel-choice-select{background:#810c41;color:#fff;border-color:#810c41}
.hotel-picker-form .hotel-feedback{border-top:1px solid #e1e4e8;margin-top:18px;padding-top:14px;font-size:13px;line-height:1.5}
.hotel-picker-form .hotel-feedback .button{min-height:36px;font-size:12px;padding:7px 10px;background:#fff;color:#555;border:1px solid #cbd0d8}
.hotel-picker-form .hotel-feedback [aria-pressed=true]{background:#fbf0f5;color:#810c41;border:2px solid #810c41;font-weight:600}
.hotel-picker-form .hotel-feedback [aria-pressed=true]::before{content:'✓ ';margin-right:4px}
.hotel-picker-form .hotel-feedback details{margin-top:10px}
.hotel-picker-form .button:disabled{opacity:.5;cursor:wait;box-shadow:none}
.hotel-picker-form .button:focus-visible{outline:3px solid #810c41;outline-offset:3px}
.hotel-picker-form .hotel-stay-summary{font-weight:600;margin:0 0 22px;line-height:1.6}
.hotel-picker-form .hotel-stay-options{display:grid;gap:12px;margin:22px 0}
.hotel-picker-form label.hotel-option{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:14px;line-height:1.5;cursor:pointer}
.hotel-picker-form .hotel-option input[type=checkbox]{width:18px;height:18px;min-height:18px;flex:0 0 18px;margin:2px 0 0;padding:0;accent-color:#810c41;cursor:pointer}
.hotel-picker-form .hotel-edit-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.hotel-picker-form #hotel-progress:not(:empty){padding:12px;background:#fff8c6;border-left:3px solid #810c41}
.hotel-picker-form #hotel-progress:empty,.hotel-picker-form .hotel-feedback [role=status]:empty{display:none}
@media(max-width:600px){.hotel-picker-form .hotel-choice-card{padding:16px}.hotel-picker-form .hotel-picker-actions{display:grid}.hotel-picker-form .hotel-choice-select{width:100%}.hotel-picker-form .hotel-feedback .button-row{gap:8px}.hotel-picker-form .hotel-feedback .button{flex:1 1 120px}}

/* Assignment dialog: neutralize full-width/min-height generic input rules. */
.access-form.assignment-form .assignment-option { display:flex; align-items:center; gap:10px; margin:6px 0; padding:8px 0; cursor:pointer; font-weight:400; }
.assignment-form .assignment-option input[type="checkbox"] { display:block; width:18px; height:18px; min-height:18px; min-width:18px; flex:0 0 18px; padding:0; margin:0; accent-color:#810C41; }
.assignment-option span { min-width:0; overflow-wrap:anywhere; }
.assignment-option small { color:#59646b; }
.assignment-form { box-sizing:border-box; width:100%; }
.assignment-form > .button { margin:4px 4px 4px 0; }
