body{font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";-webkit-font-smoothing:antialiased;margin:0;background:white}h1,h2,h3,h4,h5,h6{font-weight:600;text-transform:uppercase;margin-bottom:0.5em}a:link,a:hover,a:visited{color:#333;text-decoration:none}.notifications{font-size:12px}.error{color:red}.success{color:green}.constrain{margin:0 auto;width:94%}@media (min-width: 480px){.constrain{max-width:480px}}@media (min-width: 600px){.constrain{max-width:600px}}@media (min-width: 800px){.constrain{max-width:800px}}@media (min-width: 992px){.constrain{max-width:992px}}@media (min-width: 1170px){.constrain{max-width:1170px}}@media (min-width: 992px){.constrain{width:initial}}.fine,.fine-print,.note{padding:1em 0;font-size:12px}@media (min-width: 992px){.fine,.fine-print,.note{font-size:12px}}.note{font-size:12px;display:block;line-height:1.6em}.pane{background-color:#fff;position:relative;margin-bottom:1em;padding:1em;vertical-align:top;-webkit-border-radius:8px;-moz-border-radius:8px;-ms-border-radius:8px;-o-border-radius:8px;border-radius:8px}.med-pane{max-width:800px}.sml-pane{max-width:500px}.col{margin:9px}@media (min-width: 992px){.col{display:inline-block;vertical-align:top;width:47%}.col.side-heavy{width:28%}.col.side-compensate{width:70%}}.fullspan .col{text-align:center}@media (min-width: 992px){.fullspan .col{display:initial}}.triple-col .col{margin:9px}@media (min-width: 600px){.triple-col .col{display:inline-block;width:32%}}@media (min-width: 992px){.triple-col .col{width:31%}}.quad-col .col{margin:9px}@media (min-width: 600px){.quad-col .col{display:inline-block;width:44%}}@media (min-width: 992px){.quad-col .col{width:22%}}.hexa-col .col{margin:8px}@media (min-width: 600px){.hexa-col .col{display:inline-block;width:20%}}@media (min-width: 992px){.hexa-col .col{width:10%}}.btn,.med-btn,.sml-btn{background-color:#ccc;border:1px solid #ccc;cursor:pointer;color:#fff;display:inline-block;font-size:12px;font-weight:600;outline-style:none;padding:0.4em 1em;text-decoration:none;text-transform:uppercase;-webkit-border-radius:6px;-moz-border-radius:6px;-ms-border-radius:6px;-o-border-radius:6px;border-radius:6px}.btn.disabled,.disabled.med-btn,.disabled.sml-btn{color:#777}.btn.disabled:hover,.disabled.med-btn:hover,.disabled.sml-btn:hover,.btn.disabled:focus,.disabled.med-btn:focus,.disabled.sml-btn:focus,.btn.disabled:active,.disabled.med-btn:active,.disabled.sml-btn:active{color:#777;cursor:not-allowed;opacity:1;outline:none !important;-webkit-box-shadow:none;box-shadow:none}.btn:hover,.med-btn:hover,.sml-btn:hover{opacity:0.8;color:#fff}.btn:active,.med-btn:active,.sml-btn:active{-webkit-box-shadow:0px 0px 2px 1px #444;-moz-box-shadow:0px 0px 2px 1px #444;-ms-box-shadow:0px 0px 2px 1px #444;-o-box-shadow:0px 0px 2px 1px #444;box-shadow:0px 0px 2px 1px #444}.btn:focus,.med-btn:focus,.sml-btn:focus{outline-style:none}.med-btn{font-size:16px}.sml-btn{font-size:16px}button.pill:hover{opacity:0.8}.ui-btn{display:inline;font-size:14px;padding:4px 12px;background-color:#fafafa;width:max-content;border:1px solid #999;border-radius:4px;cursor:pointer}.ui-btn:hover{background-color:#f3f2f2}.ui-table{margin-top:16px;border-collapse:collapse;border:1px solid #ccc}.ui-table th,.ui-table td{padding:8px;border-top:1px solid #ddd;border-right:1px solid #ccc;border-bottom:1px solid #ddd}.ui-table th{text-align:center;background-color:#fafafa}.ui-table tr:hover td:first-child,.ui-table tr:hover{background-color:#e5e3e3}.ui-table button{cursor:pointer}.left{float:left}.right{float:right}.hide{display:none}.absolute-bottom{position:absolute;bottom:0}.clearfix{clear:both;display:block}.nostyle-form{font-size:inherit}.nostyle-form td{border:0}.nostyle-form .error{display:block}strong{font-weight:600}.print-page-break{display:inline}.nowrap{white-space:nowrap}.ribbon{text-transform:uppercase;text-align:center;font-size:13px;font-weight:bold;background:#e43e43;color:#fff;padding:6px 14px;position:absolute;top:12px;right:-17px;z-index:30;-webkit-transform:rotate(35deg);-moz-transform:rotate(35deg);-ms-transform:rotate(35deg);-o-transform:rotate(35deg);transform:rotate(35deg);-webkit-border-radius:0 40% 0 40%;-moz-border-radius:0 40% 0 40%;-ms-border-radius:0 40% 0 40%;-o-border-radius:0 40% 0 40%;border-radius:0 40% 0 40%;-webkit-box-shadow:0px 1px 1px #666;-moz-box-shadow:0px 1px 1px #666;-ms-box-shadow:0px 1px 1px #666;-o-box-shadow:0px 1px 1px #666;box-shadow:0px 1px 1px #666}#mobile-nav{height:100%;width:0;position:fixed;z-index:999999;left:0;top:0;background-color:#000;background-color:rgba(47,156,208,0.9);overflow-x:hidden;overflow-y:hidden;transition:0.5s}#mobile-nav .overlay-content{position:relative;top:14%;width:100%;text-align:center;margin-top:30px;z-index:200}#mobile-nav .overlay-content ul{padding:0}#mobile-nav .overlay-content li{list-style:none}#mobile-nav .overlay-content a{padding:8px;text-decoration:none;font-size:36px;font-weight:800;color:#fff;margin:0 0 1em 0;display:block;transition:0.3s}#mobile-nav .closebtn{color:#fff;position:absolute;top:20px;right:45px;font-size:60px}#mobile-nav::after{opacity:0.4;position:absolute;bottom:-12%;right:-100px;transform:scale(1.5);z-index:100}.hamburger{float:right;cursor:pointer}.hamburger .bar1,.hamburger .bar2,.hamburger .bar3{width:35px;height:5px;background-color:#333;margin:6px 0;transition:0.4s}.hamburger .change .bar1{-webkit-transform:rotate(-45deg) translate(-9px, 6px);transform:rotate(-45deg) translate(-9px, 6px)}.hamburger .change .bar2{opacity:0}.hamburger .change .bar3{-webkit-transform:rotate(45deg) translate(-8px, -8px);transform:rotate(45deg) translate(-8px, -8px)}header{background-color:#f9f9f9;border-bottom:1px solid #ccc;color:#666;z-index:999}header a,header span.logged-in{font-size:12px}header #logo img{max-width:200px}p{font-size:16px;line-height:22px}.heading-module-icon{max-width:100px !important;vertical-align:middle;display:inline-block;padding-top:4px}.layout.l-col{display:inline-block;vertical-align:top;width:20%;position:sticky;top:0;background-color:#def3f8}@media (min-width: 1920px){.layout.l-col{width:16%}}.layout.r-col{display:inline-block;vertical-align:top;width:78%}@media (min-width: 1920px){.layout.r-col{width:83%}}.layout.r-col.maximize{width:99%}.layout.r-col .docs{height:90%;overflow-y:scroll}.dev-bar{text-align:center;border:6px dashed #f9f9f9;color:#fff;padding:8px 8px;position:fixed;width:20%;height:max-content;text-transform:uppercase;font-size:13px;font-weight:600;top:4px;left:0;right:0;margin:auto;z-index:999999}.notification-bar{text-align:center;padding:8px 8px;text-transform:uppercase;font-size:13px;font-weight:600;margin:auto}.notification-bar.error{color:#fff;background-color:red}.notification-bar.success{color:#fff;background-color:#339233}nav{text-align:right}nav a:link,nav a:hover,nav a:visited{color:#666;text-transform:uppercase}#side-menu.minimize{display:none}a.logged-as{font-size:12px;color:blue;text-transform:inherit !important}.nav-sidebar{overflow-y:scroll;height:90%}.nav-sidebar hr{height:1px;background-color:#fff;display:inherit}.nav-sidebar .pane{margin:8px 12px;background-color:#00a3d7}.nav-sidebar .pane h3{color:#fff;font-size:18px;margin:0}.nav-sidebar .pane a{color:#fff;display:block;font-size:16px;margin:12px 0}.nav-sidebar .pane .nav-heading{background-color:#0396c5;color:#fff;font-weight:600;padding:8px}.nav-sidebar .pane ul.child-links{list-style:inherit;color:#fff;padding:0 0 0 8px;margin:inherit}.nav-sidebar .pane.pane-user{background-color:#00a3d7}.nav-sidebar .pane.pane-admin{background-color:#00526c}.nav-sidebar .pane.pane-admin .nav-heading{background-color:#1283a7;color:#fff;font-weight:600;padding:8px}.nav-sidebar .sidebar-icon{width:30px;vertical-align:middle;margin-right:8px}section{padding:1em 0}#messages{text-align:center}#messages a{font-weight:600}#messages #msg-pane{margin:0 auto}

/* FOOTER 
.footer{border-top:1px solid #ccc;padding-top:8px;text-transform:uppercase;clear:both}.footer a{font-size:14px;padding:8px}.footer .footer-nav{text-align:center}.footer .footer-nav a{font-size:ms(-3)}.footer .col:last-child{text-align:right}.footer .copyright{font-size:14px}

*/

form{margin:0 auto;width:100%}form label{display:block;text-align:left;color:#3a3a3a;font-weight:600}@media (min-width: 992px){form label{font-size:20px}}form label a:link,form label a:visited,form label a:hover{color:#000}form .field{padding:0.5em 0;overflow:auto}form .field.options label{font-size:20px;line-height:1.4em}form .btn,form .med-btn,form .sml-btn{margin:0}form .form-msg{display:block;font-size:16px;padding-top:0.6em}form #dateSelection{color:#ca2626;text-transform:uppercase}form input[type="text"],form input[type="email"],form textarea[name="contact_msg"],form textarea,form select,form input[type="password"],form input[type="tel"]{border:1px solid #888;font-family:'Roboto', sans-serif;font-size:14px;font-weight:300;margin-top:0.4em;padding:1em;width:86%;-webkit-border-radius:6px;-moz-border-radius:6px;-ms-border-radius:6px;-o-border-radius:6px;border-radius:6px}@media (min-width: 800px){form input[type="text"],form input[type="email"],form textarea[name="contact_msg"],form textarea,form select,form input[type="password"],form input[type="tel"]{width:90%}}form textarea{height:220px}form .date-selected{font-size:20px;text-align:center}form .date-selected #dateSelection{font-family:'Oswald', 'Helvetica', 'sans-serif'}form #submissions .col{vertical-align:top}form #submissions .col .notices{width:84%}form input[type="file"]{border:0;font-weight:900;font-size:16px}form input[type="file"]:hover{cursor:pointer}form input[type="file"]+label{display:inline-block;margin:0.2em 0 0 0 !important;opacity:0}form input[type="file"]:hover+label{cursor:pointer}form .checkbox{display:block;position:relative;padding-left:35px;margin-bottom:12px;cursor:pointer;font-size:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}form .checkbox input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}form .checkbox .checkmark{background-color:#fff;border:1px solid #aaa;position:absolute;top:0;left:0;height:25px;width:25px}form .checkbox:hover input ~ .checkmark{background-color:#e8b7aa}form .checkbox input:checked ~ .checkmark{background-color:#fff}form .checkbox .checkmark:after{content:"";position:absolute;display:none}form .checkbox input:checked ~ .checkmark:after{display:block}form .checkbox .checkmark:after{left:9px;top:5px;width:5px;height:10px;border:solid #E85F3B;border-width:0 3px 3px 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}form .btn,form .med-btn,form .sml-btn{margin-top:8px;padding:14px 12px;vertical-align:bottom;background-color:#fe6845;color:#fff;border:0}form .btn:hover,form .med-btn:hover,form .sml-btn:hover{opacity:1}form select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:none;padding-right:20px;border:1px solid #ccc;border-radius:4px;padding:5px 10px;font-size:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23353e48'%3E%3Cpath d='M5 7l5 5 5-5z'/%3E%3C/svg%3E") no-repeat right center;background-size:15px}.masonry{column-count:3;column-gap:10px;position:relative;padding-bottom:40px}.masonry input[type="submit"]{position:absolute;left:0;right:0;bottom:0;margin:auto;width:100%;font-size:18px}.masonry table{margin:0;display:grid;grid-template-rows:1fr auto;margin-bottom:10px;break-inside:avoid}.ui-settings-form h2{font-size:24px}.ui-settings-form label{font-size:16px}.ui-settings-form table{display:block;border:1px solid #ccc;background-color:#fafafa;padding:8px}.ui-settings-form table tbody{display:block}.ui-settings-form table tr{display:block}.ui-settings-form table th{text-decoration:underline;text-align:left;font-size:18px}.ui-settings-form table td{width:100%;padding:8px 0;display:block}.ui-settings-form table input[type="text"],.ui-settings-form table input[type="email"],.ui-settings-form table textarea[name="contact_msg"],.ui-settings-form table textarea,.ui-settings-form table select,.ui-settings-form table input[type="date"],.ui-settings-form table input[type="password"],.ui-settings-form table input[type="tel"]{font-size:14px;padding:8px 12px;border-radius:0;border:1px solid #ccc;width:100%}.ui-settings-form table .checkboxes{width:43%;vertical-align:top;display:inline-block;padding:8px}.ui-settings-form table .checkboxes input,.ui-settings-form table .checkboxes label{display:inline}.ui-settings-form .radio-table td{width:inherit;display:inline-block}.ui-settings-form .module-table{border-collapse:collapse}.ui-settings-form .module-table tr{display:table-row-group}.ui-settings-form .module-table td{width:inherit;display:table-cell;vertical-align:top;border:1px solid #eaeaea;padding:8px 16px;background-color:#fff}.ui-settings-form .module-table .checkboxes{width:inherit;vertical-align:top;display:block;padding:8px 0;text-align:left}.ui-settings-form .module-table .checkboxes input,.ui-settings-form .module-table .checkboxes label{display:inline}.ui-settings-form .module-table input[type="checkbox"]{width:20px;height:20px;vertical-align:middle}.ui-settings-form .module-table label{font-size:14px;font-weight:400}.ui-settings-form .anchor{margin-bottom:32px}.overflow-table{width:100%;overflow-x:scroll}.overflow-table th:first-child,.overflow-table td:first-child{text-align:left;position:sticky;left:0;background-color:#f2f2f2;z-index:1}.overflow-table th:first-child a td:first-child a{display:inline-block;padding:4px;text-decoration:none;color:#333;cursor:pointer}.overflow-table tr:hover td:first-child,.overflow-table tr:hover{background-color:#e5e3e3}.overflow-table.no-hover tr:hover td:first-child{background-color:#f2f2f2}.overflow-table.no-hover tr:hover{background-color:#fff}.docs{padding:6px;font-size:18px;line-height:28px}.docs .docs-header{position:relative}.docs .docs-header h1{font-weight:600;font-size:32px}.docs .docs-header .welcome{position:absolute;right:0;top:0;bottom:0;margin:auto;width:max-content;height:max-content}.docs ol{list-style:number}.docs ol li{margin-left:24px;padding:12px 0}.docs .seperator{margin:24px 0}.docs img{width:100%;max-width:800px}.toc{width:500px;border:1px solid #ccc;padding:16px}.toc a{text-decoration:underline;margin:12px 0;display:block;color:#006699}.admin .admin-item.col{width:24%;display:inline-block;min-height:100px}.admin .register-employee{background-color:#fafafa;border:1px solid #ccc;padding:8px 16px;width:max-content}.admin .register-employee label{font-size:16px}.admin .register-employee input[type="text"],.admin .register-employee input[type="email"],.admin .register-employee textarea[name="contact_msg"],.admin .register-employee textarea,.admin .register-employee select,.admin .register-employee input[type="date"],.admin .register-employee input[type="password"],.admin .register-employee input[type="tel"]{font-size:14px;padding:8px 12px;border-radius:0;border:1px solid #ccc;width:100%;min-width:350px;max-width:350px}.admin .register-employee .checkboxes{width:44%;vertical-align:top;display:inline-block;padding:8px}.admin .register-employee .checkboxes input,.admin .register-employee .checkboxes label{display:inline}.manage-employees h1.sticky{position:sticky;top:-16px;z-index:99999;background-color:#fff;padding:12px 0}.manage-employees table{display:inline-block;vertical-align:top;margin:4px}.manage-employees .employee-contact-table,.manage-employees .office-location-table,.manage-employees .employment-information-table{width:31%;min-height:530px}@media (min-width: 1170px){.manage-employees .employee-contact-table,.manage-employees .office-location-table,.manage-employees .employment-information-table{width:32%;min-height:530px}}.manage-employees .system-fields-table{width:98%}@media (min-width: 1170px){.manage-employees .system-fields-table{width:28%}}.manage-employees .module-access-table{width:98%}@media (min-width: 1170px){.manage-employees .module-access-table{width:69%}}.manage-employees .emergency-contact-table-1,.manage-employees .emergency-contact-table-2,.manage-employees .expense-field-table,.manage-employees .parking-field-table{width:48%}.user-profile .employee-contact-table{width:97%;min-height:max-content}.user-profile .employee-contact-table-1,.user-profile .employee-contact-table-2{width:47%}.user-profile form.ui-settings-form{width:50%;margin:inherit}.staff-directory h1{display:inline-block;vertical-align:middle}.staff-directory h1 .ref-id{font-weight:400}.staff-directory .staff-directory-table{border-collapse:collapse}.staff-directory .staff-directory-table td,.staff-directory .staff-directory-table th{border:1px solid #ccc;padding:4px 8px;font-size:14px}.staff-directory .staff-directory-table th{background-color:#b9b9b9;font-weight:600;border:1px solid #939393}.staff-directory .staff-directory-table td{width:max-content;text-align:left}.staff-directory .staff-directory-table .name{min-width:150px}.staff-directory .staff-directory-table .mobile{width:125px}.staff-directory .staff-directory-table .role{min-width:146px}.staff-directory .staff-directory-table .teams{width:320px}.staff-directory .staff-directory-table .work-duties ul{padding:0;margin:0 0 0 28px}.staff-directory .tag-cloud{max-width:1130px}.staff-directory .pill{background-color:#00a3d7;border:none;color:#fff;font-family:sans-serif;font-size:12px;font-weight:400;padding:0 20px;text-align:center;text-decoration:none;text-transform:uppercase;display:inline-block;margin:4px 2px;cursor:pointer;border-radius:16px}.staff-directory .pill:hover{opacity:0.8}.staff-directory .pill.selected{background-color:green}.staff-directory .contractor{background-color:#f4f4f4}.dashboard .l-col,.dashboard .r-col{width:48.5%;display:inline-block;vertical-align:top}.item-grid{margin-left:8px}.item-grid .item{font-size:16px;line-height:22px;width:30%;display:inline-block;min-height:100px;padding:8px 0;margin:4px;text-align:center;vertical-align:top}.item-grid .item-icon{max-width:100px;display:block;margin:0 auto}.calendar-module{margin:0 auto}@media (min-width: 1920px){.calendar-module{max-width:1024px}}.calendar-module h1{display:inline-block;vertical-align:middle;margin:0 auto}.calendar-module h1 .ref-id{font-weight:400}.calendar-module .col{width:42%}@media (min-width: 1920px){.calendar-module .col{width:47%}}.calendar-module .col .note{width:100%}.calendar-module.three-col{max-width:80%;margin:inherit}.calendar-module.three-col .col{width:31%}.calendar-module form label{font-size:14px}.calendar-module form input[type="text"],.calendar-module form input[type="email"],.calendar-module form textarea[name="contact_msg"],.calendar-module form textarea,.calendar-module form select,.calendar-module form input[type="password"],.calendar-module form input[type="tel"]{border:1px solid #888;font-size:14px;margin-top:0.4em;padding:1em;width:86%;-webkit-border-radius:6px;-moz-border-radius:6px;-ms-border-radius:6px;-o-border-radius:6px;border-radius:6px}@media (min-width: 800px){.calendar-module form input[type="text"],.calendar-module form input[type="email"],.calendar-module form textarea[name="contact_msg"],.calendar-module form textarea,.calendar-module form select,.calendar-module form input[type="password"],.calendar-module form input[type="tel"]{width:90%}}.calendar-module form select{cursor:pointer}.calendar-module #bump_button:hover{color:#333}

.modal{display:none;position:fixed;z-index:1;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,0.4);-webkit-animation-name:fadeIn;-webkit-animation-duration:0.4s;animation-name:fadeIn;animation-duration:0.4s}.modal-content{position:fixed;bottom:0;background-color:#fefefe;width:100%;-webkit-animation-name:slideIn;-webkit-animation-duration:0.4s;animation-name:slideIn;animation-duration:0.4s}.close{color:white;float:right;font-size:28px;font-weight:bold}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer}.modal-header{padding:2px 16px;background-color:#5cb85c;color:white}.modal-body{padding:2px 16px}.modal-footer{padding:2px 16px;background-color:#5cb85c;color:white}@-webkit-keyframes slideIn{from{bottom:-300px;opacity:0}to{bottom:0;opacity:1}}@keyframes slideIn{from{bottom:-300px;opacity:0}to{bottom:0;opacity:1}}@-webkit-keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}#successModal{display:none;position:fixed;z-index:1;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,0.4);-webkit-animation-name:fadeIn;-webkit-animation-duration:0.4s;animation-name:fadeIn;animation-duration:0.4s}#successModal .modal-content{position:fixed;bottom:0;top:0;left:0;right:0;margin:auto;width:max-content;height:max-content;background-color:#fefefe;-webkit-animation-name:slideIn;-webkit-animation-duration:0.4s;animation-name:slideIn;animation-duration:0.4s;border-radius:6px}#successModal .close{color:white;float:right;font-size:28px;font-weight:bold}#successModal .close:hover,#successModal .close:focus{color:#000;text-decoration:none;cursor:pointer}#successModal .modal-header{padding:2px 16px;background-color:#5cb85c;color:white;border-radius:6px 6px 0 0}#successModal .modal-body{padding:2px 16px}#successModal .modal-footer{padding:2px 16px;background-color:#5cb85c;color:white}@-webkit-keyframes slideIn{from{bottom:-300px;opacity:0}to{bottom:0;opacity:1}}@keyframes slideIn{from{bottom:-300px;opacity:0}to{bottom:0;opacity:1}}@-webkit-keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.event-wrapper .entry{padding:8px;margin:16px 0}.reservation-ui #reservationForm .field{padding:0;margin:6px 0}.reservation-ui .select-col{width:46%}.reservation-ui .pane{border:1px solid #ccc}.success-msg{padding:24px;text-align:center;background-color:green;color:#fff;margin:auto;width:max-content;height:max-content;z-index:999}.policies .nwsi-logo{width:200px}.policies h1{line-height:42px}.policies h2{line-height:32px}.policies .table-of-contents h2{text-transform:none}.policies .table-of-contents a{padding:0 0 0 40px}.policies .table-of-contents a:hover{text-decoration:underline}.policies .table-of-contents .subsection{background-color:#eaeaea;margin:8px 0}.policies .table-of-contents .indent{padding-left:80px}.policies input[type="file"]{max-width:inherit;background-color:#fff}.policies input[type="submit"]{font-size:16px}.policies input[type="radio"]{transform:scale(1.2);margin-right:8px}.policies input[type="file"]{width:100%}.policies .manage-files .edit-section{padding:16px;margin:24px 0;border-bottom:1px solid #ccc}.policies .manage-files td{padding-right:48px}.policies .manage-files th{text-align:left}.policies .toc-manage-files table{border-collapse:collapse}.policies .toc-manage-files table td{padding:4px 8px}.policies .toc-manage-files table tr:hover{background-color:#fafafa}.policies .toc-manage-files .subsection h4{margin:0}.policies .back-btn{font-size:16px;margin-bottom:16px;text-align:right}.policies .label-note{color:#444;font-weight:400;font-size:16px;font-style:italic}.policies iframe,.policies embed{min-height:1120px;width:100%;height:100%}.policies select[name=status]{text-transform:capitalize}.expenses{overflow-x:scroll;max-width:100%}.expenses h1{display:inline-block;vertical-align:middle}.expenses h1 .ref-id{font-weight:400}.expenses .general-expense-h2,.expenses .mileage-h2{color:#fff;background-color:#2da5e0;padding:8px 12px !important;display:inline-block;text-transform:none}.expenses .mileage-h2{padding:16px 16px 0 0}.expenses .expenses-form,.expenses .expenses-table,.expenses .mileage-table{border-collapse:collapse}.expenses .expenses-form th,.expenses .expenses-table th,.expenses .mileage-table th{vertical-align:middle;font-size:14px;text-transform:none;background-color:#f0f0f0;padding:0 8px}.expenses .expenses-form td,.expenses .expenses-form th,.expenses .expenses-table td,.expenses .expenses-table th,.expenses .mileage-table td,.expenses .mileage-table th{border:1px solid #ccc}.expenses .expenses-form td input,.expenses .expenses-table td input,.expenses .mileage-table td input{border:0;font-size:16px;padding:8px;text-align:center}.expenses .expenses-form td input:focus,.expenses .expenses-table td input:focus,.expenses .mileage-table td input:focus{outline-width:0;outline:none}.expenses .expenses-form select,.expenses .expenses-table select,.expenses .mileage-table select{border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:14px;padding:8px;width:max-content;max-width:200px;cursor:pointer;text-align:center}.expenses .expenses-form select option,.expenses .expenses-table select option,.expenses .mileage-table select option{white-space:normal}.expenses .expenses-form textarea,.expenses .expenses-table textarea,.expenses .mileage-table textarea{width:400px;height:66px;border:0;font-size:14px}.expenses .expenses-form.stacked td,.expenses .expenses-table.stacked td,.expenses .mileage-table.stacked td{display:inline-block;vertical-align:top}.expenses .receipt{width:40px}.expenses select:focus,.expenses textarea:focus{outline:none}.expenses .sl,.expenses .project,.expenses .expense-type,.expenses .payment,.expenses .tax-rate{width:inherit}.expenses select.project,.expenses select.mileage-project{width:118px}.expenses select.expense-type,.expenses select.mileage-expense-type{width:150px;font-size:14px}.expenses select.payment{width:104px}.expenses .start-odometer,.expenses .end-odometer,.expenses .total-km,.expenses .mileage-gst,.expenses .mileage-hst,.expenses .mileage-pst,.expenses .mileage-total,.expenses .expenses-gst,.expenses .expenses-hst,.expenses .expenses-pst{width:74px !important}.expenses .expenses-pre-tax-amount,.expenses .mileage-pre-tax-amount{width:72px !important}.expenses input::-webkit-outer-spin-button,.expenses input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.expenses input[type=number]{-moz-appearance:textfield}.expenses input.expenses-gst,.expenses input.expenses-pst,.expenses input.mileage-gst,.expenses input.mileage-pst{width:70px;text-align:center}.expenses .th-expenses-total,.expenses .expenses-total,.expenses .th-mileage-pre-tax-amount,.expenses .td-mileage-pre-tax-amount,.expenses input.mileage-pre-tax-amount,.expenses input.mileage-subtotal-amount,.expenses input.mileage-tip,.expenses input.mileage-total,.expenses input.expenses-pre-tax-amount,.expenses input.expenses-subtotal-amount,.expenses input.tip,.expenses input.expenses-total{width:100px !important;text-align:center}.expenses .th-uploaded_image,.expenses input[type="file"]{width:100px;font-size:14px !important}.expenses .upload-image-filename{font-size:13px;color:#333;font-weight:600}.expenses .th-date,.expenses .td-date,.expenses .date{width:132px !important}.expenses textarea.description{width:260px}@media (min-width: 1920px){.expenses textarea.description{width:360px}}.expenses textarea.mileage-description{width:200px}.expenses .th-mileage-line-tax,.expenses .td-mileage-line-tax,.expenses .th-expenses-line-tax,.expenses .td-expenses-line-tax,.expenses .th-mileage-pre-tax-amount,.expenses .td-mileage-pre-tax-amount,.expenses .th-expenses-subtotal-amount,.expenses .td-expenses-subtotal-amount,.expenses .th-sl,.expenses .td-sl,.expenses .th-mileage-sl,.expenses .td-mileage-sl,.expenses .th-coding,.expenses .td-coding,.expenses .th-mileage-coding,.expenses .td-mileage-coding{display:none}.expenses input::placeholder,.expenses select::placeholder,.expenses textarea::placeholder{font-size:14px}.expenses .totals-table{margin-top:8px;border-collapse:collapse;background-color:#f0f0f0}.expenses .totals-table td,.expenses .totals-table th{padding:4px;border:1px solid #ccc}.expenses .totals-table td:nth-child(2){padding:0}.expenses .expenses-form{position:relative}.expenses .expenses-form input[type="submit"]{font-size:14px;background-color:#fafafa;border:1px solid #999;border-radius:4px;cursor:pointer;padding:4px 12px}.expenses .expenses-form input[type="submit"]:hover{background-color:#f3f2f2}.expenses .expenses-form #submit-approve-btn{background-color:#d51414;color:#fff;border:1px solid #d51414;margin-top:18px}.expenses .expenses-form .approver-line{font-size:14px;display:block}.expenses .expenses-form .row-function-buttons{display:inline-block;margin-top:8px}.expenses .summary-table,.expenses .expense-list{margin-top:16px;border-collapse:collapse;border:1px solid #ccc}.expenses .summary-table th,.expenses .summary-table td,.expenses .expense-list th,.expenses .expense-list td{padding:8px;border-top:1px solid #ddd;border-right:1px solid #ccc;border-bottom:1px solid #ddd}.expenses .summary-table tr:hover td:first-child,.expenses .summary-table tr:hover,.expenses .expense-list tr:hover td:first-child,.expenses .expense-list tr:hover{background-color:#e5e3e3}.expenses .summary-table th,.expenses .expense-list th{text-align:left;background-color:#fafafa}.expenses .summary-table button,.expenses .expense-list button{cursor:pointer}.expenses .manage-claims-table,.expenses .expense-totals{margin-top:16px;border-collapse:collapse;position:relative}.expenses .manage-claims-table td,.expenses .expense-totals td{vertical-align:top;padding:8px;border-bottom:1px solid #ccc}.expenses .manage-claims-table .line-numbers,.expenses .expense-totals .line-numbers{vertical-align:middle}.expenses .manage-claims-table .claims-details,.expenses .expense-totals .claims-details{width:100%;min-width:700px;border-collapse:collapse;vertical-align:top}.expenses .manage-claims-table .claims-details th,.expenses .manage-claims-table .claims-details td,.expenses .expense-totals .claims-details th,.expenses .expense-totals .claims-details td{padding:8px;border-top:1px solid #ddd;border-right:1px solid #ccc;border-bottom:1px solid #ddd}.expenses .manage-claims-table .claims-details td,.expenses .expense-totals .claims-details td{background-color:#fff}.expenses .manage-claims-table .claims-details th,.expenses .expense-totals .claims-details th{text-align:left;background-color:#fafafa}.expenses .manage-claims-table .claims-details button,.expenses .expense-totals .claims-details button{cursor:pointer}.expenses .pre-history{white-space:pre-line;font-size:16px;line-height:24px;font-family:sans-serif}.expenses .expense-totals .head{background-color:#ddd}.expenses .expense-totals table{border-collapse:collapse}.expenses .expense-totals table th,.expenses .expense-totals table td{padding:8px 12px;border:1px solid #ccc}.expenses .expense-totals table td{padding:8px 60px}.expenses .expense-totals table th{background-color:#fafafa}.expenses .expense-details{margin-top:16px;padding:8px 12px;border:1px solid #ccc}.expenses .expense-details table.info{font-size:16px;line-height:24px}.expenses .expense-details .summary-table td{padding:4px;min-width:200px}.expenses .expense-details .summary-table td:first-child{background-color:#fafafa}.expenses .expense-details .receipt-image{width:100%;max-width:400px;display:block;margin:0 auto;min-height:400px}.expenses .expense-details .receipt-image.small{max-width:200px}.expenses .expense-details .td-image{width:100%}.expenses .view-receipt{cursor:pointer}.expenses #imageModal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);justify-content:center;align-items:center;text-align:center;z-index:99999999;-webkit-animation-name:fadeIn;-webkit-animation-duration:0.4s;animation-name:fadeIn;animation-duration:0.4s;z-index:300}.expenses #modalContent{width:max-content;position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;z-index:999999}.expenses .embed-pdf{min-width:800px;height:90%}@media (min-width: 1170px){.expenses .embed-pdf{min-width:1024px}}.expenses #closeModal{position:absolute;top:10px;right:10px;cursor:pointer;color:#fff;font-size:20px}.expenses .approve-btn{display:inline}.expenses .edit-btn{display:inline}.expenses .decline-btn{display:inline}.decline-claim{max-width:325px}.page-404,.messages{text-align:center;padding:6em 0}.page-404 .header,.messages .header{font-size:40px;font-weight:800;color:#00a3d7}.page-404 p,.messages p{text-align:center;font-size:22px;color:#888;font-weight:600}.page-404 .btn,.page-404 .med-btn,.page-404 .sml-btn,.messages .btn,.messages .med-btn,.messages .sml-btn{padding:0.8em;margin:1em 0;font-size:100%;background-color:#00a3d7;border:0}.page-404 a,.messages a{color:#f79402}.page-404 .btn,.page-404 .med-btn,.page-404 .sml-btn,.messages .btn,.messages .med-btn,.messages .sml-btn{color:#fff}.masonry-container{display:grid;grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));grid-gap:16px}.masonry-item{margin:0;padding:16px;background-color:#ececec;border-radius:8px}.news h2{padding:0;margin:0 0 0.5em 0}.news .news-entry{border-top:1px solid #ccc;padding:16px 0;position:relative}.news .news-entry h3{position:relative;font-size:16px;margin:0;text-transform:inherit}@media (min-width: 1170px){.news .news-entry h3{width:max-content}}.news .news-entry h3 strong{text-transform:uppercase}.news .news-entry p{margin:0 0 16px 0}.login-page{position:relative}.login-page .login-link{width:max-content;position:absolute;right:12px;bottom:12px}.badge{color:#fff;font-size:14px;background-color:#f48521;padding:0px 24px;width:max-content;margin-left:8px}.badge.important{background-color:red}.badge.rotate.left{-webkit-transform:rotate(344deg);-moz-transform:rotate(344deg);-ms-transform:rotate(344deg);-o-transform:rotate(344deg);transform:rotate(344deg);position:absolute;top:-16px;left:-50px}.badge.rotate.right{-webkit-transform:rotate(26deg);-moz-transform:rotate(26deg);-ms-transform:rotate(26deg);-o-transform:rotate(26deg);transform:rotate(26deg);position:absolute;top:-16px;right:-57px}.pill{background-color:#ddd;border:none;color:black;padding:10px 20px;text-align:center;text-decoration:none;display:inline-block;margin:4px 2px;cursor:pointer;border-radius:16px}.border-left{border-left:1px solid #ccc}.h-sticky{position:sticky;top:0;left:0px}.xero-product-form label{font-size:16px}.xero-product-form table{display:table-cell;border:1px solid #ccc;background-color:#fafafa;padding:8px}.xero-product-form table tbody{display:block}.xero-product-form table th{text-decoration:underline;text-align:left;font-size:18px}.xero-product-form table td{width:max-content}.xero-product-form table td:nth-child(2){min-width:384px}.xero-product-form table input[type="text"],.xero-product-form table input[type="email"],.xero-product-form table textarea[name="contact_msg"],.xero-product-form table textarea,.xero-product-form table select,.xero-product-form table input[type="date"],.xero-product-form table input[type="password"],.xero-product-form table input[type="tel"]{font-size:14px;padding:8px 12px;border-radius:0;border:1px solid #ccc;width:100%}.xero-product-form table .checkboxes{width:43%;vertical-align:top;display:inline-block;padding:8px}.xero-product-form table .checkboxes input,.xero-product-form table .checkboxes label{display:inline}.xero-product-form .radio-table td{width:inherit;display:inline-block}.xero-product-form .anchor{margin-bottom:32px}.xero-product-form input,.xero-product-form td{outline:none}.t-center{text-align:center}.t-right{text-align:right}.t-left{text-align:right}.t-upper{text-transform:uppercase}.t-bold{font-weight:600}.t-dark{color:#333}.t-green{color:green}.t-red{color:red}.t-white{color:#fff}.t-blue{color:#00a3d8}.bg-black{background-color:#000}.bg-grey{background-color:#333}.hide,.no-display{display:none}.clearfix{clear:both}.nowrap{white-space:nowrap}.underline,.t-underline{text-decoration:underline !important}.sticky{position:sticky;top:0}.t-block{display:block}select{-webkit-appearance:none !important}.noselect:focus{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}

.staff-directory-table {
  width: 90%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 14px;
}

.staff-directory-table th,
.staff-directory-table td {
  padding: 8px 10px;
  border: 1px solid #ddd;
  vertical-align: top;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Role */
.staff-directory-table th:nth-child(1),
.staff-directory-table td:nth-child(1) {
  width: 140px;
}

/* Name */
.staff-directory-table th:nth-child(2),
.staff-directory-table td:nth-child(2) {
  width: 160px;
}

/* Work Duties — reduced to 60% */
.staff-directory-table th:nth-child(3),
.staff-directory-table td:nth-child(3) {
  width: 156px;
  white-space: normal;
  word-break: break-word;
}

/* Email */
.staff-directory-table th:nth-child(4),
.staff-directory-table td:nth-child(4) {
  width: 180px;
  white-space: normal;
  word-break: break-word;
}

/* Office Phone — increased to 110% */
.staff-directory-table th:nth-child(5),
.staff-directory-table td:nth-child(5) {
  width: 110px;
  text-align: center;
}

/* Ext */
.staff-directory-table th:nth-child(6),
.staff-directory-table td:nth-child(6) {
  width: 40px;
  text-align: center;
}

/* Mobile — reduced to 90% */
.staff-directory-table th:nth-child(7),
.staff-directory-table td:nth-child(7) {
  width: 110px;
}

/* Location — reduced to 85% */
.staff-directory-table th:nth-child(8),
.staff-directory-table td:nth-child(8) {
  width: 90px;
}

/* PATCH: Constrain form fields inside .ui-settings-form table to stay within the grey background */

.ui-settings-form table td input[type="text"],
.ui-settings-form table td input[type="email"],
.ui-settings-form table td input[type="date"],
.ui-settings-form table td input[type="tel"],
.ui-settings-form table td input[type="password"],
.ui-settings-form table td textarea,
.ui-settings-form table td select {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* Adjust this value to match your actual header height */
.ui-settings-container {
  padding-top: 100px;  /* or margin-top: 80px; */
}

/*# sourceMappingURL=styles.css.map */


.infographic-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  max-width: 100%;
}

.infographic-image {
  width: 240px !important;
  height: auto !important;
  object-fit: contain;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* YELLOW PILL BUTTON FOR NEWS & PARKING */

.pill-button {
  display: inline-block;
  padding: 8px 16px;
  background-color: #FFBB33;
  color: white;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: bold;
  border-radius: 6px;
  font-size: 14px;
  transition: background-color 0.2s ease;
}

.pill-button:hover {
  background-color: #e6a629;
}


/* PARKING CALENDAR */


#calendar{margin:0px auto;padding:0px;width:602px;font-family:Helvetica, "Times New Roman", Times, serif}
#calendar div.box{position:relative;top:0px;left:0px;width:100%;height:36px;background-color:#00a3d7}
#calendar div.header{line-height:40px;vertical-align:middle;position:absolute;left:11px;top:0px;width:582px;height:40px;text-align:center}
#calendar div.header a.prev,
#calendar div.header a.next{position:absolute;top:0px;height:16px;display:block;cursor:pointer;text-decoration:none;color:#FFF}
#calendar div.header span.title a{color:#FFF;font-size:18px;text-decoration:none}
#calendar div.header a.prev{left:0px}
#calendar div.header a.next{right:0px}
#calendar div.box-content{border:1px solid #787878;border-top:none;overflow:auto}

/* === WEEKDAY HEADERS & DATE GRID (CSS Grid) === */
#calendar ul.label,
#calendar ul.dates {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  column-gap: 2px;
  row-gap: 2px;
}

/* individual cells */
#calendar ul.label li,
#calendar ul.dates li {
  text-align: center;
  box-sizing: border-box;
  border: 1px solid #e0e0e0;
}

/* weekday headers */
#calendar ul.label li {
  font-weight: 600;
  line-height: 40px;
}

/* calendar rows */
#calendar ul.dates li {
  height: 76px;
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  padding-top: 18px; /* 👈 space below icons to push circle down */
}

/* style the date number (including circle) */
#calendar ul.dates .calendarDay a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  font-size: 18px;
  font-weight: 500;
  text-decoration: none;
  margin: auto; /* center vertically */
}

/* active date = blue circle */
#calendar ul.dates .calendarDay.active a {
  background: #00a3d7;
  color: white;
  font-weight: 600;
  border-radius: 50%;
}

/* hover circle effect */
#calendar ul.dates .calendarDay a:hover {
  background-color: #def3f8;
  border-radius: 50%;
}

/* empty placeholder days */
#calendar ul.dates li.empty {
  background: #f5f5f5;
}

/* Parking spot icons using SF Symbol-style labels */
.calendarDay .spot-icons {
  position: absolute;
  top: 4px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 4px;
  z-index: 2;
}

.sf-symbol.spot {
  font-family: system-ui, sans-serif;
  font-size: 10px;
  line-height: 1;
  font-style: normal;
}

.sf-symbol.sf-8::before {
  content: "8";
}

.sf-symbol.sf-9::before {
  content: "9";
}

.sf-symbol.sf-10::before {
  content: "10";
}

.sf-symbol.spot.available {
  background-color: #4CAF50;
  color: white;
  padding: 2px 4px;
  border-radius: 2px;
}

.sf-symbol.spot.partial {
  background-color: #FFC107;
  color: white;
  padding: 2px 4px;
  border-radius: 2px;
}

.sf-symbol.spot.full {
  background-color: #F44336;
  color: white;
  padding: 2px 4px;
  border-radius: 2px;
}

.sf-symbol.spot.completed {
    background-color: #ccc; /* grey */
    color: #000;
    padding: 2px 4px;
    border-radius: 2px;
}

/* ========== Make Reservation Button Layout Fix ========== */

.make-reservation-btn {
  margin: 24px 0 16px 0;
  text-align: left;
}

@media (max-width: 640px) {
  .make-reservation-btn {
    text-align: center;
  }
}


/* PATCH: RESERVATION UI TABLE REFINEMENTS */

.reservation-ui .ui-table {
  font-size: 13px;
  border-collapse: collapse;
  border: 1px solid #ccc;
  width: 100%;
  margin-top: 16px;
}

.reservation-ui .ui-table th,
.reservation-ui .ui-table td {
  padding: 8px 10px;
  border: 1px solid #ddd;
  vertical-align: middle;
  text-align: center;
}

.reservation-ui .ui-table th {
  background-color: #fafafa;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 16px;
  letter-spacing: 0.5px;
}

.reservation-ui .ui-table tbody tr:hover {
  background-color: #f4faff;
}

/* PATCH: Column widths */
.reservation-ui .ui-table td:nth-child(1) { width: 160px; text-align: left; }  /* Employee */
.reservation-ui .ui-table td:nth-child(2) { width: 120px; }  /* Car */
.reservation-ui .ui-table td:nth-child(3) { width: 100px; }  /* Plate */
.reservation-ui .ui-table td:nth-child(4) { width: 60px; }   /* Stall */
.reservation-ui .ui-table td:nth-child(5),
.reservation-ui .ui-table td:nth-child(6) { width: 80px; }   /* Start / End */
.reservation-ui .ui-table td:nth-child(7) { width: 200px; text-align: left; } /* Actions */

/* PATCH: Button styling (Edit/Delete/Bump) */
.reservation-ui .sml-btn {
  color: #fff;
  border: none;
  padding: 6px 6px;
  font-size: 12px;
  font-weight: 600;
  border-radius: 10px;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  margin: 0 2px;
}

.reservation-ui .sml-btn:hover {
  opacity: 0.85;
}

/* RESERVATION ACTION BUTTON COLORS */
.reservation-ui .edit-btn {
  background-color: #2196F3; /* Blue */
}

.reservation-ui .delete-btn {
  background-color: #FF3333; /* Red */
}

.reservation-ui .bump-btn {
  background-color: #FF9600; /* Orange */
}


/* PARKING MONTHLY REPORT */

.parking-report-wrapper h1 {
  margin-top: 16px;
  margin-bottom: 16px;
}

.parking-report-wrapper .btn-row {
  margin-top: 16px;
  margin-bottom: 16px;
}

.parking-report-wrapper .btn-row .export-buttons {
  margin-top: 20px;
  margin-bottom: 16px;

}

.parking-report-table {
    width: 80%;
    font-size: 13px;
    border-collapse: collapse;
    margin-top: 20px;
    table-layout: fixed;
}

.parking-report-table th,
.parking-report-table td {
    border: 1px solid #ccc;
    padding: 6px;
    font-size: 16px;
    text-align: left;
    white-space: nowrap;
}

/* Manager's Report */

.parking-report-table th:nth-child(1) { width: 100px; } /* Date */
.parking-report-table th:nth-child(2),
.parking-report-table th:nth-child(3) { width: 70px; }  /* Times */
.parking-report-table td:nth-child(2),
.parking-report-table td:nth-child(3) {text-align: right;}
.parking-report-table th:nth-child(4) { width: 50px; }  /* Stall */
.parking-report-table td:nth-child(4) {text-align: center;}
.parking-report-table th:nth-child(5) { width: 180px; } /* Employee */
.parking-report-table th:nth-child(6) { width: 160px; } /* Car */
.parking-report-table th:nth-child(7) { width: 80px; } /* Plate */
.parking-report-table th:nth-child(8) { width: 172px; } /* Actions */

/* User's Monthly Report */

.my-month-report .parking-report-table th:nth-child(1) { width: 100px; } /* Date */
.my-month-report .parking-report-table th:nth-child(2),
.my-month-report .parking-report-table th:nth-child(3) { width: 70px; }  /* Times */
.my-month-report .parking-report-table td:nth-child(2),
.my-month-report .parking-report-table td:nth-child(3) {text-align: right;}
.my-month-report .parking-report-table th:nth-child(4) { width: 50px; }  /* Stall */
.my-month-report .parking-report-table td:nth-child(4) {text-align: center;}
.my-month-report .parking-report-table th:nth-child(5) { width: 180px; } /* Employee */
.my-month-report .parking-report-table th:nth-child(6) { width: 160px; } /* Car */
.my-month-report .parking-report-table th:nth-child(7) { width: 80px; } /* Plate */
.my-month-report .parking-report-table th:nth-child(8) { width: 172px; } /* Actions */

/* Force right border on last column */
.parking-report-table td:last-child {
  border-right: 1px solid #ccc;
}

/* Force bottom border on last row */
.parking-report-table tr:last-child td {
  border-bottom: 1px solid #ccc !important;
}

.parking-report-table td {
  background-color: #fff;
}

/* PATCH: Button styling (Edit/Delete/Bump) */

.parking-report-table .action-group {
  padding: 2px;         /* small internal spacing */
  align-items: center;
}

td.action-group a {
  margin-right: 2px;
  margin-left: 2px;
}

.parking-report-table .action-btn {
  color: #fff;
  padding: 6px 12px;
  margin: 0;
  font-size: 12px;
  line-height: 1.2;
  border-radius: 6px;
  border: none;
}

/* RESERVATION ACTION BUTTON COLORS */
.parking-report-table .edit-btn {
  background-color: #2196F3; /* Blue */
	margin-right: 2px;
	margin-left: 2px;
}

.parking-report-table .delete-btn {
  background-color: #FF3333; /* Red */
	margin-right: 2px;
}

.parking-report-table .bump-btn {
  background-color: #FF9600; /* Orange */
}

/* Compact summary table for parking module */
.parking-summary-table {
  border-collapse: collapse;
  margin-top: 20px;
  border: 1px solid #ccc;
  font-size: 0.95rem;
}

.parking-summary-table th,
.parking-summary-table td {
  padding: 10px 12px;
  border: 1px solid #ddd;
  vertical-align: middle;
}

.parking-summary-table th {
  background-color: #f8f8f8;
  font-weight: 600;
}

.parking-summary-table th:nth-child(1) { width: 160px; } /* Employee */
.parking-summary-table th:nth-child(2) { width: 80px; } /* Bookings */

/* MANAGE EMPLOYEE MANUAL */

/* Sticky Header Bar */
.sticky-header-bar {
  position: sticky;
  top: 0;
  z-index: 999;
  background-color: #fff;
  padding: 12px 16px;
  border-bottom: 1px solid #ddd;
}

.edit-header {
  margin: 0;
  font-size: 2em;
  font-weight: 600;
}

.scrollable-module-table {
  max-height: calc(100vh - 220px);
  overflow-y: auto;
  border: 1px solid #ddd;
}

.sticky-save-bar {
  position: sticky;
  bottom: 0;
  z-index: 999;
  background-color: #fff;
  padding: 12px;
  border-top: 1px solid #ddd;
  text-align: center;
}

/* Sticky Pill Bar (directly under header in Staff Directory) */
.sticky-pill-bar {
  position: sticky;
  top: 64px; /* height of the sticky-header-bar */
  z-index: 998;
  background-color: #fff;
  padding: 8px 16px;
  border-bottom: 1px solid #ddd;
	/* ✅ Wrap pills instead of horizontal scroll */
  display: flex;
  flex-wrap: wrap;
  gap: 8px; /* optional for spacing between pills */
}

/* EDIT EMPLOYEE MODULE */

.employee-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 24px 0;
}

.employee-grid-item {
  background: #fafafa;
  border: 1px solid #ccc;
  padding: 6px 12px; /* top/bottom: 6px, left/right: 12px */
  font-size: 13px;
}

.employee-grid-item h2 {
  font-size: 16px;
  font-weight: 600;
  text-decoration: underline;
  margin-bottom: 6px;
}

.employee-grid-item .field-group {
  margin-bottom: 10px;
}

.employee-grid-item label {
  display: block;
  margin: 3px 0 2px 0;
  font-weight: 600;
  font-size: 14px;
}

.employee-grid-item input[type="text"],
.employee-grid-item input[type="email"],
.employee-grid-item input[type="date"],
.employee-grid-item input[type="tel"],
.employee-grid-item input[type="password"],
.employee-grid-item select,
.employee-grid-item textarea {
  width: 100%;
  font-size: 13px;
  padding: 6px 8px;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 0;
  background-color: #fff;
  line-height: 1.2;
}

/* Match dropdown style to inputs */
.employee-grid-item select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 16px;
  margin: 0;
  padding-right: 30px;
}

/* Consistent textarea */
.employee-grid-item textarea {
  resize: vertical;
  min-height: 60px;
}

/* Remove conflicting inherited padding */
.employee-grid-item .field-group input,
.employee-grid-item .field-group select,
.employee-grid-item .field-group textarea {
  margin-bottom: 0;
}

/* Responsive layout fallback */
@media (max-width: 991px) {
  .employee-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .employee-grid {
    grid-template-columns: 1fr;
  }
}

/* USER PROFILE */

/* Lock icon positioning */
.input-wrapper {
  position: relative;
}

.input-wrapper .lock-icon {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: #999;
  font-size: 16px;
  pointer-events: none;
}

input.readonly-field, select.readonly-field, textarea.readonly-field {
  background-color: #f3f3f3 !important;
  border: 1px solid #ccc !important;
  color: #333;
}
.lock-icon {
  font-size: 0.9em;
  pointer-events: none;
}

/* ===== MANAGE MODULES STYLING ===== */

.overflow-table {
  table-layout: fixed;
  width: 100%;
  border-collapse: collapse;
}

/* Sticky Name column */
.sticky-col {
  position: sticky;
  left: 0;
  background-color: #fff;
  z-index: 3;
  min-width: 180px;
  max-width: 220px;
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
  padding: 4px 10px;
  box-shadow: 2px 0 4px -2px rgba(0, 0, 0, 0.08);
  background-clip: padding-box;
}

thead tr th.sticky-col {
  z-index: 4;
  background-color: #fff;
}

/* Header rows */
th.parent-header {
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  white-space: nowrap;
  padding: 6px;
  border-bottom: 1px solid #ddd;
}

th.category-header {
  text-align: center;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  padding: 4px 6px;
  border-bottom: 1px solid #e2e2e2;
}

th.module-label {
  text-align: center;
  font-size: 12px;
  white-space: normal;
  word-break: break-word;
  padding: 4px 6px;
  line-height: 1.2;
  width: 100px;
  min-width: 90px;
  max-width: 120px;
  border-bottom: 1px solid #ddd;
}

/* Checkbox cells */
.checkbox-cell {
  width: 36px;
  max-width: 36px;
  text-align: center;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
}
.checkbox-cell input[type="checkbox"] {
  margin: 0 auto;
  display: block;
}

/* Wrapper layout */
.module-access-wrapper {
  overflow-x: auto;
  padding-bottom: 1rem;
}

/* Pill buttons */
.jump-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px;
}
.pill {
  padding: 6px 12px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  color: #000;
  display: inline-block;
  transition: background 0.2s ease;
}
.pill:hover {
  opacity: 0.85;
}

/* ===== COLOR GROUPS - MATCHES PHP sanitizedParent ===== */

/* GENERAL */
.pill.pill-general { background-color: #d6eaff; }
th.parent-header.parent-general { background-color: #d6eaff; }
th.category-header.parent-general { background-color: #e6f2ff; }
th.module-label.parent-general,
td.checkbox-cell.parent-general { background-color: #f5faff; }

/* DOCUMENTS */
.pill.pill-documents { background-color: #fff3b3; }
th.parent-header.parent-documents { background-color: #fff3b3; }
th.category-header.parent-documents { background-color: #fff8cc; }
th.module-label.parent-documents,
td.checkbox-cell.parent-documents { background-color: #fffceb; }

/* EXPENSES */
.pill.pill-expenses { background-color: #d6f5d6; }
th.parent-header.parent-expenses { background-color: #d6f5d6; }
th.category-header.parent-expenses { background-color: #e6f9e6; }
th.module-label.parent-expenses,
td.checkbox-cell.parent-expenses { background-color: #f5fdf5; }

/* TOOLS */
.pill.pill-tools { background-color: #ffe6cc; }
th.parent-header.parent-tools { background-color: #ffe6cc; }
th.category-header.parent-tools { background-color: #fff0db; }
th.module-label.parent-tools,
td.checkbox-cell.parent-tools { background-color: #fff8f0; }

/* ADMINISTRATION */
.pill.pill-administration { background-color: #e5d6ff; }
th.parent-header.parent-administration { background-color: #e5d6ff; }
th.category-header.parent-administration { background-color: #eee6ff; }
th.module-label.parent-administration,
td.checkbox-cell.parent-administration { background-color: #f7f5ff; }

/* WIP */
.pill.pill-wip { background-color: #dddddd; }
th.parent-header.parent-wip { background-color: #dddddd; }
th.category-header.parent-wip { background-color: #e8e8e8; }
th.module-label.parent-wip,
td.checkbox-cell.parent-wip { background-color: #f5f5f5; }


/* === PATCH: Reset/Login Box Styling Consistency === */
.login-box {
  width: 420px;
  height: 520px; /* ✅ Fixed height to prevent resize */
  margin: 80px auto;
  padding: 2rem;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
}

.login-box .logo {
  display: block;
  max-width: 180px;
  margin: 0 auto 1.5rem auto;
}

.login-box h2,
.login-box h1 {
  text-align: center;
  font-size: 1.4em;
  margin-bottom: 1rem;
}

/* ✅ Reserves height for message and keeps layout stable */
.status-msg {
  min-height: 2.8em;
  text-align: center;
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 1rem;
  padding: 0 4px;
  word-wrap: break-word;
  word-break: break-word;
}

.login-box .error {
  color: red;
}

.login-box .success {
  color: green;
}

.login-box input[type="email"],
.login-box input[type="password"] {
  width: 100%;
  padding: 0.6rem;
  margin-top: 0.3rem;
  margin-bottom: 1rem;
  font-size: 1rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
}

.login-box .submit-btn {
  display: block;
  width: 100%;
  background-color: #007bff;
  color: #fff;
  padding: 0.6rem;
  font-size: 1rem;
  border: none;
  border-radius: 4px;
  margin-top: 1.5rem;
  text-align: center;
  cursor: pointer;
}

.login-box .submit-btn:hover {
  background-color: #0056b3;
}

.login-box .forgot {
  text-align: right;
  font-size: 0.9rem;
  margin-top: auto;
  padding-top: 1rem;
}

.nav-sidebar .pane:empty {
  display: none;
}



.parking-modal-wrapper .modal-content {
  top: 8vh !important; /* ⬆️ Raise it higher on the screen */
  max-width: 640px;
  border-radius: 12px;
  background: #fff;
	padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 20px;
}

/* --- Uniform Xero Button Styles --- */
.xero-ui .sml-btn {
  color: #fff;
  border: none;
  padding: 10px 16px;              /* ⬆️ slightly taller */
  font-size: 13px;
  font-weight: 600;
  border-radius: 10px;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  min-width: 110px;
  height: 38px;                    /* ✅ forces equal button height */
  line-height: 18px;               /* ✅ centers text vertically */
  text-align: center;
  box-sizing: border-box;
  cursor: pointer;
}

.xero-ui button.sml-btn {
  appearance: none;                /* ✅ removes native button shrinkage */
  -webkit-appearance: none;
}

.xero-ui .save-btn {
  background-color: #4CAF50; /* Light green */
}

.xero-ui .cancel-btn {
  background-color: #E57373; /* Light red */
}

.xero-ui .sml-btn:hover {
  opacity: 0.9;
}

.btn-row.xero-ui {
  margin-top: 20px;
  display: flex;
  justify-content: center;
  gap: 10px;
}