:root{--ink:#1a1a1a;--ink-soft:#333;--bg:#ececec;--bg-mist:#e2e2e2;--bg-sand:#f0f0f0;--surface:#f7f7f7;--surface-raised:#fff;--text:#1a1a1a;--text-muted:#5c5c5c;--border:#c8c8c8;--border-strong:#a3a3a3;--primary:#2f2f2f;--primary-hover:#1f1f1f;--primary-soft:#e8e8e8;--primary-ink:#1a1a1a;--table-header-bg:#e6e6e6;--accent:#525252;--accent-soft:#ebebeb;--danger:#b33a3a;--danger-hover:#932e2e;--danger-soft:#f8e4e4;--success:#2f7a52;--success-soft:#dceee4;--warning-soft:#efefef;--warning-ink:#3d3d3d;--focus-ring:0 0 0 2px var(--surface),0 0 0 4px #2f2f2f66;--radius:10px;--radius-sm:6px;--radius-lg:16px;--shadow-sm:0 1px 2px #152a320a,0 1px 3px #152a320f;--shadow-md:0 8px 24px #152a3214,0 2px 6px #152a320a;--shadow-lg:0 18px 40px #152a321f;--font-display:"Fraunces",Georgia,"Times New Roman",serif;--font-body:"Outfit","Segoe UI",sans-serif;--space-page:clamp(0.75rem,2vw,1.5rem);--header-h:3.5rem;--ease-out:cubic-bezier(0.22,1,0.36,1);--bp-mobile:720px;--bp-tablet:960px}@media (max-width:720px){:root{--header-h:3.25rem;--space-page:0.65rem}}*{box-sizing:border-box;margin:0;padding:0}body,html{min-height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;background-color:#ececec;background-color:var(--bg);background-image:radial-gradient(ellipse 90% 55% at 10% -10%,#0000000f,#0000 55%),radial-gradient(ellipse 70% 45% at 95% 0,#0000000a,#0000 50%),linear-gradient(165deg,#e2e2e2,#ececec 42%,#f0f0f0);background-image:radial-gradient(ellipse 90% 55% at 10% -10%,#0000000f,#0000 55%),radial-gradient(ellipse 70% 45% at 95% 0,#0000000a,#0000 50%),linear-gradient(165deg,var(--bg-mist) 0,var(--bg) 42%,var(--bg-sand) 100%);color:#1a1a1a;color:var(--text);font-family:Outfit,Segoe UI,sans-serif;font-family:var(--font-body);font-size:14.5px;line-height:1.5}code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.875rem}.card-header h2,.card-header h3,.page-header h2,h1,h2,h3{font-family:Fraunces,Georgia,Times New Roman,serif;font-family:var(--font-display);font-weight:600;letter-spacing:-.02em}:focus-visible{outline:2px solid #2f2f2f;outline:2px solid var(--primary);outline-offset:2px}a:focus:not(:focus-visible),button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none}@keyframes fade-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes brand-underline{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.maintenance-mode-overlay{align-items:center;background:radial-gradient(120% 80% at 50% 0,#ffffff8c,#0000 55%),color-mix(in srgb,#f4f1ea 88%,#1f2937);background:radial-gradient(120% 80% at 50% 0,#ffffff8c,#0000 55%),color-mix(in srgb,var(--bg-sand,#f4f1ea) 88%,#1f2937);color:#111827;color:var(--text,#111827);display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:100000}.maintenance-mode-card{background:color-mix(in srgb,#fff 96%,#fff);background:color-mix(in srgb,var(--surface,#fff) 96%,#fff);border:1px solid color-mix(in srgb,#d1d5db 85%,#0000);border:1px solid color-mix(in srgb,var(--border,#d1d5db) 85%,#0000);border-radius:.75rem;border-radius:var(--radius,.75rem);box-shadow:0 12px 40px #0f172a1f;box-shadow:var(--shadow-md,0 12px 40px #0f172a1f);padding:1.75rem 1.5rem;text-align:center;width:min(28rem,100%)}.maintenance-mode-eyebrow{color:#6b7280;color:var(--text-muted,#6b7280);font-size:.75rem;font-weight:650;letter-spacing:.06em;margin:0 0 .5rem;text-transform:uppercase}.maintenance-mode-card h1{font-size:1.55rem;line-height:1.2;margin:0 0 .65rem}.maintenance-mode-card p#maintenance-mode-message{color:#6b7280;color:var(--text-muted,#6b7280);font-size:.95rem;line-height:1.5;margin:0 0 1.25rem}.App{background:#0000;min-height:100vh}.app-chrome{position:-webkit-sticky;position:sticky;top:0;z-index:100}.App-header{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:color-mix(in srgb,var(--surface) 88%,#0000);border-bottom:1px solid color-mix(in srgb,var(--border) 80%,#0000);box-shadow:inset 0 1px 0 #ffffff80;padding:.55rem var(--space-page)}.header-content{gap:.5rem;max-width:100%;width:100%}.header-content,.header-nav{align-items:center;display:flex}.header-nav{-webkit-overflow-scrolling:touch;flex:1 1 auto;flex-wrap:nowrap;gap:.2rem;justify-content:flex-start;mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 1.1rem),#0000);-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 1.1rem),#0000);min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding:.05rem 0;scrollbar-width:thin}.header-nav::-webkit-scrollbar{height:3px}.header-nav::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--border-strong) 80%,#0000);border-radius:999px}.header-nav-account{align-items:center;display:flex;flex-shrink:0;gap:.25rem;margin-left:auto}.header-link{border:1px solid #0000;border-radius:var(--radius-sm);color:var(--ink-soft);flex:0 0 auto;font-size:.8125rem;font-weight:500;padding:.35rem .55rem;text-decoration:none;transition:background-color .18s var(--ease-out),border-color .18s var(--ease-out),color .18s;white-space:nowrap}.header-link:hover{background-color:color-mix(in srgb,var(--primary-soft) 70%,#fff);border-color:#0000;color:var(--primary-ink)}.header-link.active{background-color:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 28%,#0000);color:var(--primary-ink);font-weight:600}.header-username-btn{background:color-mix(in srgb,var(--surface) 70%,#fff);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-block;font-size:.8125rem;font-style:normal;font-weight:500;padding:.4rem .75rem;text-decoration:none;transition:background-color .18s,border-color .18s,color .18s;white-space:nowrap}.header-username-btn:hover{background-color:var(--surface);border-color:var(--border-strong);color:var(--text)}.header-username-btn.active{background-color:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 35%,#0000);color:var(--ink);font-weight:600}.btn-header,button.btn.btn-header{background:var(--surface)!important;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--ink)!important;cursor:pointer;flex-shrink:0!important;font-size:.8125rem!important;font-weight:600!important;line-height:1.5!important;padding:.4rem .85rem;white-space:nowrap}.btn-header:hover,button.btn.btn-header:hover{background:var(--primary-soft)!important;border-color:color-mix(in srgb,var(--primary) 35%,var(--border));color:var(--primary-ink)!important}.App-main{margin:0 auto;max-width:1600px;padding:var(--space-page);padding-bottom:2rem}.App--public-form .App-main{max-width:none}.App-main.App-main--enter{animation:page-enter .4s var(--ease-out) both}@keyframes page-enter{0%{opacity:0}to{opacity:1}}.btn{align-items:center;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--text);cursor:pointer;display:inline-flex;flex-shrink:0;font-family:var(--font-body);font-size:.875rem;font-weight:500;justify-content:center;line-height:1.4;padding:.42rem .95rem;text-decoration:none;transition:background-color .18s var(--ease-out),border-color .18s var(--ease-out),color .18s,transform .18s var(--ease-out),box-shadow .18s var(--ease-out);white-space:nowrap;width:auto}.btn-block{display:flex;width:100%}.btn:hover:not(:disabled){background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 30%,var(--border));transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.55;transform:none}.btn-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 92%,#fff) 0,var(--primary) 100%);border-color:var(--primary-hover);box-shadow:inset 0 1px 0 #fff3;color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover);box-shadow:var(--shadow-sm);color:#fff}.btn-secondary{background:color-mix(in srgb,var(--bg-mist) 55%,#fff);border-color:var(--border-strong)}.btn-danger{background:var(--danger);border-color:var(--danger-hover);color:#fff}.btn-danger:hover:not(:disabled){background:var(--danger-hover);color:#fff}.btn-success{background:var(--success);border-color:color-mix(in srgb,var(--success) 80%,#000);color:#fff}.btn-success:hover:not(:disabled){color:#fff;filter:brightness(.94)}.btn-sm{font-size:.75rem;line-height:1.2;min-height:1.9rem;padding:.3rem .65rem}.btn-header-action{align-items:center;box-sizing:border-box;display:inline-flex;font-size:.875rem;height:2.5rem;justify-content:center;padding:.25rem .85rem}.page-header{align-items:center;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,#0000);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.15rem 0 .35rem}.page-header h2{color:var(--ink);font-size:1.55rem;font-weight:600;margin:0}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.modal-actions{border-top:1px solid var(--border);display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem;padding-top:.85rem}.card{background:color-mix(in srgb,var(--surface) 94%,#fff);border:1px solid color-mix(in srgb,var(--border) 85%,#0000);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:.85rem;padding:1rem 1.1rem;width:100%}.card-header{align-items:center;border-bottom:1px solid color-mix(in srgb,var(--border) 75%,#0000);display:flex;justify-content:space-between;margin-bottom:.65rem;padding-bottom:.55rem}.card-header h2{color:var(--text);font-size:1.2rem;margin:0}.card-header h3{color:var(--ink-soft);font-size:1.05rem;margin:0}.form-group{margin-bottom:.75rem}.form-group label{color:var(--ink-soft);display:block;font-size:.8125rem;font-weight:500;letter-spacing:.01em;margin-bottom:.35rem}.form-group input,.form-group select,.form-group textarea{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-body);font-size:.875rem;padding:.5rem .7rem;transition:border-color .15s,box-shadow .15s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2f2f2f2e;outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-row{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:.5rem}.text-right{margin-top:.5rem;text-align:right}.badge{border:1px solid;border-radius:var(--radius-sm);display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.01em;padding:.2rem .55rem;text-transform:capitalize}.badge-active{background-color:var(--success-soft);border-color:color-mix(in srgb,var(--success) 28%,#0000);color:var(--success)}.badge-terminated{background-color:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 28%,#0000);color:var(--danger)}.list-item{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:.75rem}.list-item:last-child{border-bottom:none}.list-item:hover{background-color:color-mix(in srgb,var(--primary-soft) 45%,#0000)}.loading{font-size:1rem;padding:3rem 1.5rem}.mt-2{margin-top:1rem}.mb-2{margin-bottom:1rem}.text-center{text-align:center}@media (max-width:720px){.App-header{padding:.4rem .5rem}.header-content{align-items:center;flex-direction:row;gap:.35rem}.header-nav{padding:.1rem 0;scrollbar-width:none}.header-nav::-webkit-scrollbar{display:none}.header-link{padding:.45rem .65rem}.header-nav-account{gap:.2rem;margin-left:0}.header-username-btn{font-size:.75rem;max-width:5.5rem;overflow:hidden;padding:.4rem .5rem;text-overflow:ellipsis}.btn-header,button.btn.btn-header{font-size:.75rem!important;padding:.4rem .55rem}.App-main{padding:.65rem}.page-header{align-items:stretch;flex-direction:column;gap:.5rem}.page-header h2{font-size:1.3rem}.header-actions{width:100%}.header-actions .btn{flex:1 1 auto}.card{padding:.75rem}.card-header{align-items:stretch;flex-direction:column;gap:.4rem}.form-row{grid-template-columns:1fr}.form-group input,.form-group select,.form-group textarea{font-size:1rem}.list-item{align-items:stretch;flex-direction:column;gap:.5rem}.modal-actions{flex-wrap:wrap}.modal-actions .btn{flex:1 1 auto}}.table-scroll{-webkit-overflow-scrolling:touch;background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--border) 85%,#0000);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow-x:auto}.card.table-scroll{background:var(--surface-raised);overflow:auto;padding:0}.card.table-scroll>table,.card>.employees-table,.card>.spreadsheet-table,.card>.square-employees-table,.card>.users-table,.table-scroll>table{border:none;border-radius:0;box-shadow:none}.employees-table,.spreadsheet-table,.square-employees-table,.users-table{background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--border) 85%,#0000);border-collapse:initial;border-radius:var(--radius);border-spacing:0;box-shadow:var(--shadow-sm);font-size:.875rem;width:100%}.table-scroll .employees-table,.table-scroll .spreadsheet-table,.table-scroll .square-employees-table,.table-scroll .users-table{border-radius:0}.employees-table.limited-view{width:100%}.employees-table thead,.spreadsheet-table thead,.square-employees-table thead,.users-table thead{background:var(--table-header-bg);position:relative;z-index:2}.employees-table thead th,.spreadsheet-table thead th,.square-employees-table thead th,.users-table thead th{background-clip:initial;background-color:var(--table-header-bg)!important;background-image:none!important;box-shadow:0 1px 0 var(--border),0 4px 10px #152a3214;position:-webkit-sticky;position:sticky;top:0;z-index:4}.employees-table th,.spreadsheet-table th,.square-employees-table th,.users-table th{border-bottom:1px solid var(--border);border-right:none;color:var(--ink-soft);font-family:var(--font-body);font-size:.6875rem;font-weight:600;letter-spacing:.06em;padding:.7rem .85rem;text-align:left;text-transform:uppercase;vertical-align:middle;white-space:nowrap}.employees-table td,.spreadsheet-table td,.square-employees-table td,.users-table td{border-bottom:1px solid color-mix(in srgb,var(--border) 55%,#0000);border-right:none;color:var(--text);padding:.65rem .85rem;position:relative;transition:background-color .15s var(--ease-out);vertical-align:middle;z-index:0}.employees-table tbody,.spreadsheet-table tbody,.square-employees-table tbody,.users-table tbody{position:relative;z-index:0}.employees-table .btn:hover:not(:disabled),.spreadsheet-table .btn:hover:not(:disabled),.square-employees-table .btn:hover:not(:disabled),.users-table .btn:hover:not(:disabled){transform:none}.spreadsheet-table td{word-wrap:break-word;vertical-align:top}.employees-table td:nth-of-type(2){word-wrap:break-word}.employees-table td:last-child,.employees-table th:last-child{white-space:nowrap;width:1%}.employees-table tbody tr:last-child td,.spreadsheet-table tbody tr:last-child td,.square-employees-table tbody tr:last-child td,.users-table tbody tr:last-child td{border-bottom:none}.employees-table tbody tr,.spreadsheet-table tbody tr,.square-employees-table tbody tr,.users-table tbody tr{background-color:var(--surface-raised)}.employees-table tbody tr:nth-child(2n),.spreadsheet-table tbody tr:nth-child(2n),.square-employees-table tbody tr:nth-child(2n),.users-table tbody tr:nth-child(2n){background-color:color-mix(in srgb,var(--bg-sand) 28%,#fff)}.employees-table tbody tr:hover,.spreadsheet-table tbody tr:hover,.square-employees-table tbody tr:hover,.users-table tbody tr:hover{background-color:color-mix(in srgb,var(--primary-soft) 70%,#fff)}.employees-table tbody tr:hover td:first-child,.spreadsheet-table tbody tr:hover td:first-child,.square-employees-table tbody tr:hover td:first-child,.users-table tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--primary)}.employees-table tbody tr input[type=text],.employees-table tbody tr select{border-radius:var(--radius-sm);font-family:inherit}.employees-table tbody tr input[type=text]:focus,.employees-table tbody tr select:focus{background-color:var(--primary-soft)}.employees-table tr.row-selected,.users-table tbody tr.selected{background-color:var(--accent-soft)!important}.employees-table tr.row-selected:hover,.users-table tbody tr.selected:hover{background-color:color-mix(in srgb,var(--accent-soft) 75%,var(--warning-soft))!important}.employees-table tr.row-selected td:first-child,.users-table tbody tr.selected td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.users-table{width:-webkit-max-content;width:max-content}.users-table td,.users-table th{white-space:nowrap;width:1%}.users-table tbody tr{cursor:pointer}.employees-table input[type=checkbox],.square-employees-table input[type=checkbox]{accent-color:var(--primary);cursor:pointer;height:16px;width:16px}.sortable-header{cursor:pointer;padding-right:1.6rem!important;position:relative;transition:background-color .15s var(--ease-out),color .15s;-webkit-user-select:none;user-select:none}.sortable-header:hover{background-color:#d0e5e1!important;color:var(--primary-ink);cursor:pointer}.sortable-header:not(.sort-active):after{color:var(--text-muted);content:"↕";font-size:.7rem;font-weight:500;letter-spacing:0;line-height:1;opacity:.28;position:absolute;right:.55rem;text-transform:none;top:50%;transform:translateY(-50%)}.sortable-header:hover:not(.sort-active):after{color:var(--primary);opacity:.65}.sortable-header.sort-active{background-color:#cce3df!important;color:var(--primary-ink)}.sortable-header.sort-active:after{content:""}.action-buttons,.document-actions,.request-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem}.action-buttons .btn,.document-actions .btn,.request-actions .btn{flex:0 0 auto}.modal-overlay{align-items:flex-start;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#152a3273;display:flex;inset:0;justify-content:center;padding:max(1rem,env(safe-area-inset-top,0px)) 1rem max(1rem,env(safe-area-inset-bottom,0px));position:fixed;z-index:1100}.modal-content,.modal-overlay{animation:fade-in .15s var(--ease-out) both;overflow-y:auto}.modal-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin:auto 0;max-height:min(90vh,100%);max-width:640px;padding:1.15rem 1.35rem;width:100%}.modal-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:.65rem;padding-bottom:.65rem}.modal-header h3{color:var(--ink);font-family:var(--font-display);font-size:1.25rem;margin:0}.modal-close{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-soft);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:1.25rem;height:28px;justify-content:center;line-height:1;padding:0;transition:background-color .15s,border-color .15s;width:28px}.modal-close:hover{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}.loading{color:var(--text-muted);font-family:var(--font-display);font-size:1.05rem;padding:2.5rem;text-align:center}.empty-state{padding:3rem 2rem;text-align:center}.empty-state-content{margin:0 auto;max-width:500px}.empty-state-title{color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.empty-state-message{color:var(--text-muted);font-size:.9375rem;line-height:1.65;margin:0}.btn-link{background:none;border:none;color:var(--primary);cursor:pointer;display:inline;font-family:inherit;font-size:inherit;padding:0;text-decoration:underline;text-underline-offset:.15em;white-space:normal;width:auto}.btn-link:hover{color:var(--primary-hover);text-decoration:none}@media (max-width:720px){.modal-overlay{align-items:flex-end;padding:.5rem}.modal-content{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92vh;max-width:100%;padding:.9rem 1rem}.table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.employees-table td,.employees-table th,.spreadsheet-table td,.spreadsheet-table th,.square-employees-table td,.square-employees-table th,.users-table td,.users-table th{font-size:.8125rem;padding:.5rem .6rem}.employees-table th,.spreadsheet-table th,.square-employees-table th,.users-table th{font-size:.625rem;letter-spacing:.05em}.table-as-cards,.table-scroll.table-as-cards{background:#0000;border:none;box-shadow:none;overflow:visible;padding:0}.table-as-cards table,.table-as-cards tbody,.table-as-cards td,.table-as-cards th,.table-as-cards thead,.table-as-cards tr,table.table-as-cards{display:block;width:100%}.table-as-cards table,table.table-as-cards{background:#0000;border:none}.table-as-cards thead{display:none!important}.table-as-cards tbody tr{border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);margin-bottom:.5rem;padding:.55rem .65rem .45rem}.table-as-cards tbody tr,.table-as-cards tbody tr:hover,.table-as-cards tbody tr:nth-child(2n){background:var(--surface-raised)}.table-as-cards tbody tr:hover td:first-child{box-shadow:none}.table-as-cards td{border:none!important;font-size:.8125rem;line-height:1.3;padding:.2rem 0!important}.table-as-cards td[data-label]{grid-gap:.35rem;align-items:start;display:grid!important;gap:.35rem;grid-template-columns:5.25rem minmax(0,1fr)}.table-as-cards td[data-label]:before{color:#888;content:attr(data-label);font-size:.625rem;font-weight:600;letter-spacing:.02em;padding-top:.15rem;text-transform:uppercase}.table-as-cards td.col-actions,.table-as-cards td.inventory-row-actions,.table-as-cards td.roles-actions-col,.table-as-cards td.time-off-actions-col,.table-as-cards td:not([data-label]){display:flex!important;flex-wrap:wrap;gap:.35rem;padding-top:.4rem!important}.table-as-cards td.col-actions:before,.table-as-cards td.inventory-row-actions:before,.table-as-cards td.roles-actions-col:before,.table-as-cards td.time-off-actions-col:before,.table-as-cards td:not([data-label]):before{content:none}.table-as-cards td.col-actions .btn,.table-as-cards td.inventory-row-actions .btn,.table-as-cards td.time-off-actions-col .btn,.table-as-cards td:not([data-label]) .btn{flex:1 1 auto}}.login-container{background:radial-gradient(ellipse 80% 50% at 15% 10%,#00000014,#0000 55%),radial-gradient(ellipse 60% 40% at 90% 20%,#0000000d,#0000 50%),linear-gradient(160deg,#e2e2e2,#ececec 45%,#f0f0f0);display:grid;min-height:100vh;overflow:hidden;padding:1.5rem;place-items:center;position:relative}.login-container:before{background-image:repeating-linear-gradient(-12deg,#0000,#0000 18px,rgba(21,42,50,.015) 0,rgba(21,42,50,.015) 19px);content:"";inset:0;pointer-events:none;position:absolute}.login-stage{animation:fade-rise .55s var(--ease-out) both;max-width:420px;position:relative;width:100%;z-index:1}.login-brand{margin-bottom:1.35rem;text-align:center}.login-brand-name{color:var(--ink);display:block;font-family:var(--font-display);font-size:clamp(2rem,5vw,2.55rem);font-weight:700;letter-spacing:-.03em;line-height:1.05}.login-brand-name:after{animation:brand-underline .6s var(--ease-out) .15s both;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:2px;content:"";display:block;height:3px;margin:.65rem auto 0;transform-origin:center;width:3rem}.login-brand-tagline{color:var(--text-muted);font-size:.95rem;font-weight:400;margin:.85rem 0 0}.login-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:color-mix(in srgb,var(--surface) 92%,#fff);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1.75rem 1.85rem;width:100%}.login-card h2{color:var(--ink);font-family:var(--font-display);font-size:1.35rem;font-weight:600;margin:0 0 1.25rem;text-align:left}.login-footer{display:flex;flex-direction:column;gap:.45rem;margin-top:1.35rem;text-align:center}.login-submit{font-size:.9375rem;font-weight:600;margin-top:.35rem;padding:.65rem .85rem;width:100%}.required-mark{color:var(--danger)}.login-card .btn-link{background:none;border:none;color:var(--primary);cursor:pointer;font-family:var(--font-body);font-size:.875rem;text-decoration:underline;text-underline-offset:.15em}.login-card .btn-link:hover{color:var(--primary-hover)}.error-message,.login-error{background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 30%,#0000);border-radius:var(--radius-sm);margin-bottom:1rem;padding:.7rem .8rem}.error-message,.login-error-message{color:var(--danger);font-size:.875rem;line-height:1.5;margin-bottom:0}.success-message{padding:.7rem .8rem}@media (max-width:720px){.login-container{align-items:flex-start;padding:2.5rem 1rem 1rem}.login-card{padding:1.35rem}.login-card h2{font-size:1.2rem}.login-card .form-group input{font-size:1rem}}.change-password-container{align-items:center;display:flex;justify-content:center;min-height:80vh;padding:2rem 1rem}.change-password-card{animation:fade-rise .4s var(--ease-out) both;background:color-mix(in srgb,var(--surface) 92%,#fff);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:500px;padding:2rem;width:100%}.change-password-card h2{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;margin:0 0 1rem;text-align:center}.change-password-message{background:var(--warning-soft);border:1px solid color-mix(in srgb,var(--warning-ink) 25%,#0000);border-radius:var(--radius-sm);color:var(--warning-ink);font-size:.875rem;margin-bottom:1.5rem;padding:.75rem;text-align:center}.change-password-card .form-group{margin-bottom:1rem}.change-password-card .form-group label{color:var(--ink-soft);display:block;font-weight:500;margin-bottom:.25rem}.change-password-card .form-group input{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.875rem;padding:.5rem .7rem;width:100%}.change-password-card .form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2f2f2f2e;outline:none}.change-password-card .form-group small{color:var(--text-muted);display:block;margin-top:.25rem}.change-password-card .error-message{background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 30%,#0000);border-radius:var(--radius-sm);color:var(--danger);font-size:.875rem;margin-bottom:1rem;padding:.5rem}.change-password-card .btn{font-size:1rem;font-weight:600;padding:.75rem;width:100%}.forgot-password-container{background:radial-gradient(ellipse 80% 50% at 15% 10%,#00000012,#0000 55%),linear-gradient(160deg,#e2e2e2,#ececec 45%,#f0f0f0);display:grid;min-height:100vh;padding:1.5rem;place-items:center}.forgot-password-card{animation:fade-rise .45s var(--ease-out) both;background:color-mix(in srgb,var(--surface) 92%,#fff);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:420px;padding:1.75rem 1.85rem;width:100%}.forgot-password-card h2{color:var(--ink);font-family:var(--font-display);font-size:1.45rem;font-weight:600;margin:0 0 .35rem}.forgot-password-card .info-box+form,.forgot-password-card>p,.forgot-password-intro{color:var(--text-muted);font-size:.9rem;margin-bottom:1rem}.forgot-password-footer{margin-top:1.15rem;text-align:center}.forgot-password-card .btn{font-weight:600;padding:.65rem .85rem;width:100%}.forgot-password-card .btn-link{background:none;border:none;color:var(--primary);cursor:pointer;font-family:var(--font-body);font-size:.875rem;padding:0;text-decoration:underline;text-underline-offset:.15em}.forgot-password-card .btn-link:hover{color:var(--primary-hover)}.success-message{background:var(--success-soft);border:1px solid color-mix(in srgb,var(--success) 30%,#0000);border-radius:var(--radius-sm);color:var(--success)}.error-message,.success-message{font-size:.875rem;margin-bottom:1rem;padding:.75rem}.error-message{background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 30%,#0000);border-radius:var(--radius-sm);color:var(--danger)}.info-box{background:var(--warning-soft);border:1px solid color-mix(in srgb,var(--warning-ink) 25%,#0000);border-radius:var(--radius-sm);color:var(--warning-ink);font-size:.875rem;margin-bottom:1rem;padding:.75rem}.error-modal{animation:errorModalSlideIn .2s ease-out;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:500px;width:90%;z-index:10001}@keyframes errorModalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.error-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.error-modal-header h3{color:#b02a37;font-size:1.25rem;font-weight:600;margin:0}.error-modal-body{padding:1.5rem}.error-modal-body p{color:#555;font-size:.9375rem;line-height:1.6;margin:0;white-space:pre-wrap;word-break:break-word}.error-modal-actions{border-top:1px solid #e0e0e0;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.error-modal-overlay.modal-overlay{animation:errorOverlayFadeIn .2s ease-out;background:#00000080;z-index:10000}@keyframes errorOverlayFadeIn{0%{opacity:0}to{opacity:1}}.error-modal .modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.error-modal .modal-close:hover{background-color:#f0f0f0;color:#333}.new-changes-modal{animation:newChangesSlideIn .2s ease-out;background:#fff;background:var(--surface,#fff);border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:560px;position:relative;width:90%;z-index:10001}@keyframes newChangesSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.new-changes-header{border-bottom:1px solid #e0e0e0;padding:1.25rem 3.25rem 1rem 1.5rem}.new-changes-eyebrow{color:#666;color:var(--text-muted,#666);font-size:.75rem;font-weight:650;letter-spacing:.06em;margin:0 0 .2rem;text-transform:uppercase}.new-changes-header h3{color:#333;font-size:1.25rem;font-weight:600;margin:0}.new-changes-body{padding:1.25rem 1.5rem .5rem}.new-changes-body p{color:#555;font-size:.9375rem;line-height:1.6;margin:0}.new-changes-list{color:#555;font-size:.9375rem;line-height:1.5;margin:.85rem 0 0;max-height:40vh;overflow-y:auto;padding-left:1.15rem}.new-changes-list li+li{margin-top:.45rem}.new-changes-actions{border-top:1px solid #e0e0e0;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.new-changes-overlay.modal-overlay{background:#00000080;z-index:10000}.new-changes-modal .modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;position:absolute;right:.85rem;top:.85rem;width:32px}.new-changes-modal .modal-close:hover{background-color:#f0f0f0;color:#333}.permission-preview-banner{align-items:center;background:var(--warning-soft);border-bottom:1px solid color-mix(in srgb,var(--warning-ink) 28%,#0000);color:var(--warning-ink);display:flex;font-size:.8125rem;gap:.75rem;justify-content:space-between;line-height:1.4;padding:.55rem var(--space-page)}.permission-preview-banner-text{align-items:baseline;display:flex;flex-wrap:wrap;gap:.35rem .6rem;min-width:0}.permission-preview-banner-text strong{color:var(--ink);font-weight:700}.permission-preview-banner-text em{font-style:normal;font-weight:600}.permission-preview-exit{background:var(--surface);border:1px solid color-mix(in srgb,var(--warning-ink) 35%,#0000);color:var(--ink);flex-shrink:0}.permission-preview-exit:hover{background:color-mix(in srgb,var(--accent-soft) 70%,#fff);border-color:var(--accent)}@media (max-width:640px){.permission-preview-banner{align-items:stretch;flex-direction:column}.permission-preview-exit{align-self:flex-end}}.no-permissions{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:2rem}.no-permissions-content{animation:fade-rise .4s var(--ease-out) both;background:color-mix(in srgb,var(--surface) 92%,#fff);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:600px;padding:2.25rem;text-align:center}.no-permissions-content h2{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;margin:0 0 1rem}.no-permissions-content p{color:var(--text-muted);font-size:.9375rem;line-height:1.65;margin:.75rem 0}.no-permissions-contact{border-top:1px solid var(--border);margin-top:1.5rem!important;padding-top:1.5rem}.no-permissions-contact strong{color:var(--ink)}.confirmation-modal{animation:modalSlideIn .2s ease-out;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:500px;width:90%;z-index:10001}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.confirmation-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.confirmation-modal-header h3{color:#333;font-size:1.25rem;font-weight:600;margin:0}.confirmation-modal-body{padding:1.5rem}.confirmation-modal-body p{color:#555;font-size:.9375rem;line-height:1.6;margin:0}.confirmation-modal-list{color:#555;font-size:.9rem;line-height:1.45;margin:.85rem 0 0;max-height:40vh;overflow-y:auto;padding-left:1.15rem}.confirmation-modal-list li+li{margin-top:.45rem}.confirmation-modal-list-who{color:#333;font-weight:600}.confirmation-modal-list-detail{color:#666;display:block;font-size:.85rem}.confirmation-modal-actions{border-top:1px solid #e0e0e0;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.confirmation-modal-overlay.modal-overlay{animation:overlayFadeIn .2s ease-out;background:#00000080;z-index:10000}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.confirmation-modal .modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.confirmation-modal .modal-close:hover{background-color:#f0f0f0;color:#333}body:has(.time-cards),html:has(.time-cards){height:100%;overflow:hidden}.App:has(.time-cards){display:flex;flex-direction:column;height:100dvh;max-height:100dvh;overflow:hidden}.App:has(.time-cards) .app-chrome{flex-shrink:0}.App-main:has(.time-cards){box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;height:auto;margin:0 auto;max-height:none;max-width:1600px;min-height:0;overflow:hidden;padding:var(--space-page);width:100%}.time-cards{flex-direction:column;gap:.5rem;padding:0;width:100%}.time-cards,.time-cards-body{display:flex;flex:1 1 auto;min-height:0;overflow:hidden}.time-cards-body{flex-direction:column}.time-cards-page-tabs{align-items:stretch;background:color-mix(in srgb,#ddd 35%,#0000);background:color-mix(in srgb,var(--border,#ddd) 35%,#0000);border:1px solid color-mix(in srgb,#ddd 70%,#0000);border:1px solid color-mix(in srgb,var(--border,#ddd) 70%,#0000);border-radius:10px;border-radius:calc(var(--radius, 8px) + 2px);display:flex;flex-shrink:0;gap:.2rem;margin:0 0 .15rem;padding:.15rem;width:100%}.time-cards-page-tab{-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:8px;border-radius:var(--radius,8px);color:#666;color:var(--text-muted,#666);cursor:pointer;flex:0 0 auto;font-family:inherit;font-family:var(--font-body,inherit);font-size:.875rem;font-weight:550;line-height:1.2;min-width:7.5rem;padding:.45rem .95rem;transition:background .12s ease,color .12s ease,box-shadow .12s ease}.time-cards-page-tab:hover{background:color-mix(in srgb,#fff 70%,#0000);background:color-mix(in srgb,var(--surface-raised,#fff) 70%,#0000);color:#222;color:var(--ink,var(--text,#222))}.time-cards-page-tab.is-active{background:#fff;background:var(--surface-raised,#fff);box-shadow:0 1px 2px #00000014;box-shadow:var(--shadow-sm,0 1px 2px #00000014);color:#222;color:var(--ink,var(--text,#222))}.time-cards-page-tab:focus-visible{outline:2px solid #2563eb;outline:2px solid var(--primary,#2563eb);outline-offset:1px}.time-cards-settings{overflow:auto;padding:1rem 1.15rem 1.25rem}.time-cards-settings-inner{display:flex;flex-direction:column;gap:.75rem;max-width:40rem}.time-cards-settings-inner h3{font-size:1.05rem;margin:0}.time-cards-settings-empty,.time-cards-settings-help,.time-cards-settings-note{color:#666;color:var(--text-muted,#666);font-size:.8125rem;line-height:1.45;margin:0}.time-cards-settings-roles{display:flex;flex-direction:column;gap:.35rem;max-height:min(50vh,22rem);overflow:auto;padding:.35rem 0}.time-cards-settings-role{align-items:center;border-radius:6px;border-radius:var(--radius,6px);cursor:pointer;display:flex;gap:.55rem;padding:.35rem .45rem}.time-cards-settings-role:hover{background:color-mix(in srgb,#fff 88%,#ddd);background:color-mix(in srgb,var(--surface-raised,#fff) 88%,var(--border,#ddd))}.time-cards-settings-role input{margin:0}.time-cards-settings-role.is-readonly{cursor:default;opacity:.92}.time-cards-settings-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.time-cards-settings-divider{border:none;border-top:1px solid color-mix(in srgb,#ddd 85%,#0000);border-top:1px solid color-mix(in srgb,var(--border,#ddd) 85%,#0000);margin:.5rem 0 .15rem}.time-cards-lead-day-form{display:flex;flex-direction:column;gap:.65rem}.time-cards-lead-day-form label{color:#111;color:var(--ink,#111);display:flex;flex-direction:column;font-size:.8125rem;font-weight:600;gap:.3rem}.time-cards-lead-day-form input[type=date],.time-cards-lead-day-form select{background:#fff;background:var(--surface-raised,#fff);border:1px solid #d1d5db;border:1px solid var(--border,#d1d5db);border-radius:6px;border-radius:var(--radius,6px);color:inherit;font:inherit;font-weight:400;min-height:2.25rem;padding:.45rem .6rem}.time-cards-lead-day-list{display:flex;flex-direction:column;gap:.45rem;list-style:none;margin:0;padding:0}.time-cards-lead-day-list li{align-items:center;background:color-mix(in srgb,#fff 92%,#eee);background:color-mix(in srgb,var(--surface-raised,#fff) 92%,var(--border,#eee));border:1px solid color-mix(in srgb,#ddd 85%,#0000);border:1px solid color-mix(in srgb,var(--border,#ddd) 85%,#0000);border-radius:6px;border-radius:var(--radius,6px);display:flex;gap:.75rem;justify-content:space-between;padding:.55rem .65rem}.time-cards-lead-day-list li>div{display:flex;flex-direction:column;gap:.15rem;min-width:0}.time-cards-lead-day-list strong{font-size:.875rem}.time-cards-lead-day-list span{color:#666;color:var(--text-muted,#666);font-size:.75rem}.time-cards-panel{-webkit-overflow-scrolling:touch;background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--border) 85%,#0000);border-radius:var(--radius);box-shadow:var(--shadow-sm);contain:layout paint;flex:1 1;min-height:0;overflow:auto;padding:0}.time-cards-panel>.spreadsheet-table{border:none;border-radius:0;box-shadow:none}.time-cards .timecard-results-table thead th{background-color:var(--table-header-bg)!important;z-index:5}.time-cards .timecard-results-table td.col-date,.time-cards .timecard-results-table td.col-end,.time-cards .timecard-results-table td.col-start,.time-cards .timecard-results-table th.col-date,.time-cards .timecard-results-table th.col-end,.time-cards .timecard-results-table th.col-start{max-width:8.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.time-cards-panel.timecard-results{-webkit-overflow-scrolling:touch;overflow-x:auto}.page-header.time-cards-header{align-items:flex-end;display:flex;flex-direction:row;flex-shrink:0;flex-wrap:wrap;gap:.65rem .75rem;justify-content:flex-start;margin-bottom:0;padding-bottom:.15rem}.time-cards-header h2{margin:0;min-width:0;padding-bottom:.45rem}.time-cards-create-btn,.time-cards-header h2{align-self:flex-end;flex:0 0 auto;line-height:1}.time-cards-create-btn{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-size:1.35rem;font-weight:500;height:2.5rem;justify-content:center;min-height:2.5rem;padding:0;width:2.5rem}.time-cards-toolbar{flex:1 1 auto;gap:.75rem 1rem}.time-cards-toolbar,.time-cards-toolbar-group{align-items:flex-end;display:flex;flex-wrap:nowrap;min-width:0}.time-cards-toolbar-group{flex:1 1 auto;gap:.5rem}.time-cards-toolbar-divider{align-self:flex-end;background:#d8d8d8;flex-shrink:0;height:2.25rem;margin-bottom:.125rem;width:1px}.time-cards-toolbar .filter-group{display:flex;flex:0 1 auto;flex-direction:column;gap:.2rem;min-width:0}.time-cards-toolbar .filter-group label{color:#6b7280;font-size:.6875rem;font-weight:600;letter-spacing:.02em;line-height:1;text-transform:uppercase}.time-cards-toolbar .filter-group input[type=date],.time-cards-toolbar .filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:4px;box-sizing:border-box;color:var(--ink);font-size:.875rem;height:2.5rem;line-height:1.25;max-width:100%;min-height:2.5rem;padding:0 .625rem;width:100%}.time-cards-toolbar .filter-group input[type=date]{min-width:8.5rem}.time-cards-toolbar .filter-group:has(input[type=date]){flex:0 1 10.5rem;max-width:10.5rem;width:10.5rem}.time-cards-toolbar .filter-group:has(select){flex:1 1 8.5rem;max-width:14rem;min-width:7.5rem}.time-cards-toolbar .filter-group select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%23666' d='m1 1 5 5 5-5'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;min-width:0;padding-right:1.75rem}.time-cards-toolbar .filter-group input[type=date]:focus,.time-cards-toolbar .filter-group select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #2f2f2f2e;outline:none}.time-cards-toolbar .btn-header-action{flex-shrink:0}.time-cards-view-toggle{align-self:flex-end;display:inline-flex;flex-shrink:0}.time-cards-view-toggle .btn{border-radius:0;box-sizing:border-box;font-size:.875rem;height:2.5rem;padding:.25rem .85rem}.time-cards-view-toggle .btn:first-child{border-radius:4px 0 0 4px}.time-cards-view-toggle .btn:last-child{border-radius:0 4px 4px 0;margin-left:-1px}.time-cards-view-toggle .btn.is-active{background:var(--primary);border-color:var(--primary);color:#fff;z-index:1}.time-cards-view-toggle .btn:hover:not(:disabled){transform:none}.status-badge{border-radius:var(--radius-sm);display:inline-block;font-size:.6875rem;font-weight:600;letter-spacing:.04em;padding:.25rem .55rem;text-transform:uppercase}.status-closed{background-color:var(--success-soft);color:var(--success)}.status-open{background-color:#ffe8cc;color:#c05600}.status-missed{background-color:#fdecea;color:#c62828}.status-other{background-color:color-mix(in srgb,var(--bg-mist) 50%,#fff);color:var(--text-muted)}.gantt-view{background:#fff;border:1px solid #d0d0d0;font-size:.875rem}.gantt-header{border-bottom:1px solid #d0d0d0;display:flex;top:0;z-index:10}.gantt-header,.gantt-sidebar-header{background-color:#f8f8f8;position:-webkit-sticky;position:sticky}.gantt-sidebar-header{border-right:1px solid #d0d0d0;font-weight:600;left:0;min-width:200px;padding:.75rem;width:200px;z-index:12}.gantt-dates-container{display:flex;flex:1 1;min-width:0}.gantt-date-column{background-color:#f8f8f8;border-right:1px solid #d0d0d0;flex:1 1;max-width:100%;min-width:120px;overflow:hidden;padding:.5rem;text-align:center}.gantt-date-column.is-restricted{background-color:#e5e7eb;color:#6b7280}.gantt-date-column.is-restricted .gantt-date-header{color:#6b7280}.gantt-date-header{color:var(--ink);font-weight:500;line-height:1.4}.gantt-date-summary{color:#374151;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-date-restricted-note,.gantt-date-summary{font-size:.6875rem;font-weight:500;line-height:1.3;margin-top:.35rem}.gantt-date-restricted-note{color:#6b7280}.gantt-date-cell.is-restricted{background:#e5e7eb;background-image:none;pointer-events:none}.gantt-date-cell-restricted{background:repeating-linear-gradient(-45deg,#e5e7eb,#e5e7eb 6px,#d1d5db 0,#d1d5db 12px);inset:0;opacity:.85;position:absolute}.gantt-row{background-color:#fff;border-bottom:1px solid #e0e0e0;contain-intrinsic-size:auto 72px;content-visibility:auto;display:flex}.timecard-results-table tbody tr{contain-intrinsic-size:auto 3rem;content-visibility:auto}.gantt-row:nth-child(2n){background-color:#fafafa}.gantt-sidebar{align-items:flex-start;background-color:#fff;border-right:1px solid #d0d0d0;box-shadow:4px 0 8px -4px #0000001f;display:flex;flex-direction:column;gap:.25rem;justify-content:center;left:0;min-width:200px;padding:.75rem;position:-webkit-sticky;position:sticky;width:200px;z-index:6}.gantt-row:nth-child(2n) .gantt-sidebar{background-color:#fafafa}.gantt-member-name{color:var(--ink);font-weight:500}.gantt-member-name,.gantt-member-stats{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-member-stats{color:var(--text-muted);font-size:.75rem}.gantt-timeline-container{display:flex;flex:1 1;min-width:0;position:relative;z-index:1}.gantt-date-cell{--hour-divisions:1;background:#fff;background-image:repeating-linear-gradient(to right,#0000,#0000 calc(100%/var(--hour-divisions) - .5px),#e8e8e8 calc(100%/var(--hour-divisions) - .5px),#e8e8e8 calc(100%/var(--hour-divisions)));border-right:1px solid #e0e0e0;flex:1 1;height:72px;min-width:120px;overflow:hidden;position:relative}.gantt-lead-override{color:#b45309;font-size:.75rem;left:4px;line-height:1;pointer-events:none;position:absolute;top:3px;z-index:4}.timecard-lead-override{color:#b45309;font-size:.85em;margin-left:.3rem;vertical-align:.05em}.gantt-timeline{height:100%;isolation:isolate;position:relative;width:100%;z-index:0}.gantt-bar{background-color:#66bb6a;border:none;border-radius:0;cursor:pointer;height:100%;overflow:hidden;position:absolute;top:0;transition:opacity .2s;z-index:2}.gantt-bar:hover{opacity:.8;z-index:3}.gantt-bar-open{animation:pulse-open 2s ease-in-out infinite;background-color:#ec407a;border-radius:0}.gantt-bar-open:hover{opacity:.85}.gantt-bar-unscheduled{background-color:#e53935}.gantt-bar-variance{background-color:#e67e22}.gantt-bar-wrong-location{background-color:#5e35b1}.gantt-bar-flag:before{background-color:initial;background-color:var(--gantt-flag-color,#0000);bottom:0;content:"";left:0;position:absolute;top:0;width:5px;z-index:3}.gantt-bar-break{inset:0;pointer-events:none;position:absolute;z-index:1}.gantt-bar-break-paid{background-image:repeating-linear-gradient(-45deg,#ffffff6b,#ffffff6b 2px,#0000 0,#0000 12px)}.gantt-bar-break-unpaid{background-image:repeating-linear-gradient(-45deg,#0000,#0000 2px,#ffffff6b 0,#ffffff6b 12px)}.gantt-bar-flag-unscheduled{--gantt-flag-color:#e53935}.gantt-bar-flag-variance{--gantt-flag-color:#e67e22}.gantt-bar-flag-wrong-location{--gantt-flag-color:#5e35b1}.gantt-bar-scheduled{background-color:initial;border:1px dashed #000;bottom:4px;pointer-events:none;position:absolute;top:4px;z-index:3}.gantt-bar-scheduled-missed{border-color:#e53935}.gantt-bar-scheduled-missed-fill{background-image:repeating-linear-gradient(45deg,#e5393559,#e5393559 5px,#0000 0,#0000 10px);bottom:0;left:0;position:absolute;top:0}@keyframes pulse-open{0%,to{opacity:1}50%{opacity:.85}}.gantt-bar-content{align-items:flex-start;color:#fff;display:flex;flex-direction:column;font-size:.6875rem;font-weight:500;gap:.0625rem;height:100%;justify-content:center;line-height:1.25;overflow:hidden;padding:.25rem .5rem;position:relative;white-space:nowrap;z-index:2}.gantt-bar-time{font-size:.8125rem;font-weight:700;white-space:nowrap}.gantt-bar-cost,.gantt-bar-duration,.gantt-bar-job{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-bar-job{font-weight:600;opacity:.95}.gantt-bar-open-indicator{animation:blink 1.5s ease-in-out infinite;font-size:.875rem;margin-left:.25rem}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.timecard-alert-wrap{align-items:center;display:inline-flex;margin-left:.25rem;position:relative;vertical-align:middle}.timecard-alert-mark{-webkit-tap-highlight-color:transparent;-webkit-appearance:none;appearance:none;background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;font-size:.75rem;line-height:1;margin:-.25rem;padding:.25rem}.timecard-unscheduled-alert .timecard-alert-mark{color:#e53935}.timecard-variance-alert .timecard-alert-mark{color:#e67e22}.timecard-location-alert .timecard-alert-mark{color:#5e35b1}.timecard-alert-bubble{background:#1f2937;border-radius:.35rem;box-shadow:0 4px 14px #00000038;color:#fff;font-size:.75rem;font-weight:500;line-height:1.35;max-width:min(16rem,70vw);min-width:9rem;padding:.45rem .6rem;pointer-events:none;position:fixed;text-align:left;transform:translate(-50%,calc(-100% - .4rem));white-space:normal;z-index:10000}.timecard-alert-bubble:after{border:5px solid #0000;border-top-color:#1f2937;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.time-cards .timecard-results-table tbody tr.timecard-row-missed,.time-cards .timecard-results-table tbody tr.timecard-row-missed:hover,.time-cards .timecard-results-table tbody tr.timecard-row-missed:nth-child(2n){background-color:#fff8f7;background-image:repeating-linear-gradient(45deg,#e5393524,#e5393524 6px,#e539350a 0,#e539350a 12px)}.time-cards .timecard-results-table tbody tr.timecard-row-missed>td{background:#0000}.timecard-modal{max-width:600px;width:min(90vw,600px)}.timecard-modal-form{display:flex;flex-direction:column;min-height:0}.timecard-modal-body{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.timecard-modal-actions{align-items:center;border-top:1px solid #e0e0e0;display:flex;flex-shrink:0;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.timecard-modal-actions .timecard-modal-delete{margin-right:auto}.timecard-review-email-btn{align-items:center;display:inline-flex;justify-content:center;min-width:2.4rem;padding:.5rem .7rem}.timecard-review-email-btn svg{display:block}.timecard-review-email-field{color:#333;display:flex;flex-direction:column;font-size:.875rem;font-weight:500;gap:.4rem;margin-top:.85rem}.timecard-review-email-input{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-size:.95rem;font-weight:400;min-height:2.4rem;padding:.45rem .65rem;width:100%}.timecard-review-email-input:focus{border-color:#2f6f7e;box-shadow:0 0 0 3px #2f6f7e26;outline:none}.timecard-mobile-list{-webkit-overflow-scrolling:touch;background:#0000;border:none;box-shadow:none;overflow:auto;padding:0}.timecard-mobile-day{margin:0 0 .65rem}.timecard-mobile-day-label{align-items:baseline;color:var(--text-muted);display:flex;font-family:var(--font-body);font-size:.72rem;font-weight:600;gap:.5rem;justify-content:space-between;letter-spacing:.04em;margin:0 0 .3rem;padding:0 .1rem;text-transform:uppercase}.timecard-mobile-day-count{font-feature-settings:"tnum";color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0;opacity:.8;text-transform:none}.timecard-mobile-cards{background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-sm);list-style:none;margin:0;overflow:hidden;padding:0}.timecard-mobile-card{--tc-accent:#66bb6a;align-items:stretch;border-bottom:1px solid color-mix(in srgb,var(--border) 55%,#0000);box-shadow:inset 3px 0 0 var(--tc-accent);display:grid;grid-template-columns:minmax(0,1fr) auto}.timecard-mobile-card:last-child{border-bottom:none}.timecard-mobile-card.is-ok{--tc-accent:#66bb6a}.timecard-mobile-card.is-open{--tc-accent:#ec407a}.timecard-mobile-card.is-missed,.timecard-mobile-card.is-unscheduled{--tc-accent:#e53935}.timecard-mobile-card.is-variance{--tc-accent:#e67e22}.timecard-mobile-card.is-wrong-location{--tc-accent:#5e35b1}.timecard-mobile-card.is-missed{background:color-mix(in srgb,#fff8f7 85%,var(--surface-raised))}.timecard-mobile-card-main{-webkit-appearance:none;appearance:none;background:#0000;border:none;color:inherit;cursor:pointer;font:inherit;margin:0;min-width:0;padding:.55rem .65rem;text-align:left}.timecard-mobile-card-main:disabled{cursor:default}.timecard-mobile-card-top{align-items:baseline;display:flex;gap:.5rem;justify-content:space-between}.timecard-mobile-card-name{color:var(--ink);font-size:.9rem;font-weight:600;line-height:1.25;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timecard-mobile-status{color:var(--text-muted);flex-shrink:0;font-size:.68rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.timecard-mobile-status.status-open{color:#a1285a}.timecard-mobile-status.status-missed{color:var(--danger)}.timecard-mobile-card-time{font-feature-settings:"tnum";color:var(--ink-soft);font-size:.8125rem;font-variant-numeric:tabular-nums;font-weight:500;margin-top:.1rem}.timecard-mobile-card-time span{color:var(--text-muted);font-weight:400}.timecard-mobile-card-meta{color:var(--text-muted);font-size:.75rem;margin-top:.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timecard-mobile-card-cost{font-feature-settings:"tnum";color:var(--ink-soft);font-variant-numeric:tabular-nums;font-weight:500}.timecard-mobile-card-flags{color:#8a5a00;font-size:.72rem;margin-top:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timecard-mobile-card.is-missed .timecard-mobile-card-flags{color:var(--danger)}.timecard-mobile-edit{align-self:stretch;-webkit-appearance:none;appearance:none;background:#0000;border:none;border-left:1px solid color-mix(in srgb,var(--border) 55%,#0000);color:var(--ink);cursor:pointer;font:inherit;font-size:.8125rem;font-weight:600;margin:0;padding:0 .85rem}.timecard-mobile-edit:active{background:var(--primary-soft)}.timecard-mobile-edit.is-danger{color:var(--danger)}.timecard-mobile-calendar{-webkit-overflow-scrolling:touch;background:#0000;border:none;box-shadow:none;display:flex;flex-direction:column;gap:.65rem;overflow:auto;padding:0}.timecard-mobile-cal-days{-webkit-overflow-scrolling:touch;display:flex;gap:.4rem;overflow-x:auto;padding:.1rem .05rem .25rem;scrollbar-width:none}.timecard-mobile-cal-days::-webkit-scrollbar{display:none}.timecard-mobile-cal-day{-webkit-tap-highlight-color:transparent;align-items:center;-webkit-appearance:none;appearance:none;background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;display:flex;flex:0 0 auto;flex-direction:column;font:inherit;gap:.1rem;margin:0;min-width:3.35rem;padding:.4rem .45rem .35rem;text-align:center}.timecard-mobile-cal-day.is-selected{background:var(--ink);border-color:var(--ink);color:#fff}.timecard-mobile-cal-day.is-restricted{opacity:.55}.timecard-mobile-cal-day.is-selected.is-restricted{background:#6b7280;border-color:#6b7280;opacity:.85}.timecard-mobile-cal-weekday{font-size:.65rem;font-weight:600;letter-spacing:.04em;opacity:.75;text-transform:uppercase}.timecard-mobile-cal-date{font-feature-settings:"tnum";font-size:1.1rem;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.1}.timecard-mobile-cal-day-meta{font-feature-settings:"tnum";font-size:.6rem;font-variant-numeric:tabular-nums;font-weight:500;min-height:.85em;opacity:.75}.timecard-mobile-cal-day-panel{background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-sm);overflow:hidden}.timecard-mobile-cal-day-heading{border-bottom:1px solid color-mix(in srgb,var(--border) 55%,#0000);padding:.65rem .75rem .5rem}.timecard-mobile-cal-day-heading h3{color:var(--ink);font-size:.95rem;font-weight:650;line-height:1.25;margin:0}.timecard-mobile-cal-day-note{font-feature-settings:"tnum";color:var(--text-muted);font-size:.75rem;font-variant-numeric:tabular-nums;margin:.15rem 0 0}.timecard-mobile-cal-empty{color:var(--text-muted);font-size:.85rem;padding:1.25rem .85rem;text-align:center}.timecard-mobile-cal-hours{height:1.1rem;margin:.35rem .65rem 0;pointer-events:none;position:relative}.timecard-mobile-cal-hour{font-feature-settings:"tnum";color:var(--text-muted);font-size:.62rem;font-variant-numeric:tabular-nums;font-weight:500;position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}.timecard-mobile-cal-hour:first-child{transform:translateX(0)}.timecard-mobile-cal-hour:last-child{transform:translateX(-100%)}.timecard-mobile-cal-rows{list-style:none;margin:0;padding:.35rem 0 .5rem}.timecard-mobile-cal-row{border-bottom:1px solid color-mix(in srgb,var(--border) 45%,#0000);padding:.4rem .65rem .55rem}.timecard-mobile-cal-row:last-child{border-bottom:none}.timecard-mobile-cal-member{margin-bottom:.25rem}.timecard-mobile-cal-member-name{color:var(--ink);font-size:.85rem;font-weight:600;line-height:1.25}.timecard-mobile-cal-track{--hour-divisions:1;background-color:color-mix(in srgb,var(--border) 22%,#fff);background-image:repeating-linear-gradient(to right,#0000,#0000 calc(100%/var(--hour-divisions) - .5px),color-mix(in srgb,var(--border) 70%,#0000) calc(100%/var(--hour-divisions) - .5px),color-mix(in srgb,var(--border) 70%,#0000) calc(100%/var(--hour-divisions)));border-radius:.3rem;height:3.25rem;overflow:hidden;position:relative}.timecard-mobile-cal-track .gantt-timeline{height:100%}.timecard-mobile-cal-track .gantt-bar{-webkit-appearance:none;appearance:none;border:none;border-radius:.25rem;bottom:.2rem;color:inherit;font:inherit;height:auto;margin:0;padding:0;text-align:left;top:.2rem}.timecard-mobile-cal-track .gantt-bar-content{font-size:.65rem;gap:.02rem;padding:.2rem .4rem}.timecard-mobile-cal-track .gantt-bar-time{font-size:.72rem}.timecard-mobile-cal-track .gantt-bar-duration,.timecard-mobile-cal-track .gantt-bar-job{display:block;font-size:.62rem;opacity:.95}.timecard-mobile-cal-track .gantt-bar-scheduled{border-radius:.25rem;bottom:.35rem;top:.35rem}.time-cards-mobile-chrome{display:none}.timecard-form-section{background-color:#fafafa;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:.875rem;padding:1rem}.timecard-form-grid{grid-gap:.875rem;display:grid;gap:.875rem}.timecard-form-grid.two-column{grid-template-columns:1fr 1fr}.timecard-field label{color:var(--ink);display:block;font-size:.875rem;font-weight:500;margin-bottom:.375rem}.timecard-field input,.timecard-field select{background-color:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.9375rem;padding:.5rem .625rem;width:100%}.timecard-field select:disabled{background-color:#f3f4f6;color:#4b5563;cursor:not-allowed}.timecard-checkbox-row{align-items:center;display:flex;font-weight:500;gap:.5rem;min-height:100%;padding-top:1.7rem}.timecard-checkbox-row input{cursor:pointer}.timecard-shift-lead-day-row{align-items:flex-start;margin-bottom:.75rem;padding-top:.25rem}.timecard-shift-lead-day-row input{margin-top:.2rem}.timecard-shift-lead-day-row input:disabled{cursor:not-allowed}.timecard-shift-lead-day-help{color:#6b7280;display:block;font-size:.8125rem;font-weight:400;line-height:1.35;margin-top:.15rem}.timecard-section-title{color:#1f2937;font-weight:600}.timecard-breaks-section{background-color:#fff}.timecard-breaks-header{align-items:center;display:flex;gap:.75rem;justify-content:flex-start}.timecard-add-break-btn{flex:0 0 auto;margin-left:auto}.timecard-empty-state{color:#6b7280;font-size:.875rem;font-style:italic;margin:0}.timecard-breaks-list{display:flex;flex-direction:column;gap:.75rem}.timecard-break-card{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:8px;display:flex;flex-direction:column;gap:.625rem;padding:.75rem}.timecard-break-card-header{align-items:center;display:flex;justify-content:space-between}.timecard-break-title{color:#374151;font-size:.875rem;font-weight:600}.timecard-breaks-cell{font-size:.75rem}.timecard-break-paid{color:var(--text-muted);margin-left:.25rem}.timecard-break-hint{color:var(--text-muted);font-size:.75rem;line-height:1.35;margin:0 0 .75rem}.timecard-row-actions{display:flex;flex-wrap:wrap;gap:.35rem}.timecard-row-clickable{cursor:pointer}.timecard-mobile-shift{display:none}@media (max-width:720px){.App-main:has(.time-cards){padding:.45rem .5rem calc(.5rem + env(safe-area-inset-bottom, 0px))}.time-cards.is-narrow{gap:.35rem}.page-header.time-cards-header{margin:0;padding:0}.page-header.time-cards-header,.time-cards-toolbar{align-items:stretch;flex-direction:column;gap:.35rem}.time-cards-toolbar{display:flex;flex:none;width:100%}.time-cards-mobile-chrome{--tc-chrome-h:3rem;grid-gap:.35rem;align-items:stretch;display:grid;gap:.35rem;grid-template-columns:minmax(0,1fr) auto auto auto;height:var(--tc-chrome-h)}.time-cards-mobile-view{background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-sm);box-sizing:border-box;display:flex;flex-direction:column;gap:.05rem;height:100%;justify-content:center;min-width:5.75rem;padding:.25rem .4rem}.time-cards-mobile-view-label{color:var(--text-muted);font-size:.62rem;font-weight:650;letter-spacing:.04em;line-height:1;text-transform:uppercase}.time-cards-mobile-view select{-webkit-appearance:none;appearance:none;background:#0000 url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath fill='%23666' d='m0 0 5 6 5-6z'/%3E%3C/svg%3E") right .1rem center /.55rem no-repeat;border:none;color:var(--ink);cursor:pointer;font:inherit;font-size:.78rem;font-weight:600;line-height:1.2;margin:0;padding:0 1rem 0 0;width:100%}.time-cards-mobile-view select:focus{outline:none}.time-cards-mobile-view:focus-within{border-color:color-mix(in srgb,var(--ink) 28%,var(--border))}.time-cards-filter-toggle{align-items:flex-start;-webkit-appearance:none;appearance:none;background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--border) 80%,#0000);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:.05rem;height:100%;justify-content:center;margin:0;min-width:0;padding:.3rem .55rem;text-align:left}.time-cards-filter-toggle.has-filters,.time-cards-filter-toggle.is-open{border-color:color-mix(in srgb,var(--ink) 28%,var(--border))}.time-cards-filter-toggle-label{color:var(--text-muted);font-size:.68rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.time-cards-filter-toggle-summary{color:var(--ink);font-size:.78rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.time-cards-mobile-fetch{align-items:center;box-sizing:border-box;display:inline-flex;font-size:.8125rem;height:100%;justify-content:center;min-height:0;min-width:3.6rem;padding:0 .65rem}.time-cards-create-btn{box-sizing:border-box;font-size:1.25rem;height:100%;margin:0;min-height:0;width:2.75rem}.time-cards-mobile-filters{grid-gap:.35rem .4rem;background:var(--surface);border:1px solid color-mix(in srgb,var(--border) 75%,#0000);border-radius:var(--radius-sm);display:grid;gap:.35rem .4rem;grid-template-columns:1fr 1fr;padding:.45rem;width:100%}.time-cards-mobile-filters[hidden]{display:none!important}.time-cards-toolbar .time-cards-mobile-filters .filter-group,.time-cards-toolbar .time-cards-mobile-filters .filter-group:has(input[type=date]),.time-cards-toolbar .time-cards-mobile-filters .filter-group:has(select){flex:none;max-width:none;min-width:0;width:100%}.time-cards-toolbar .time-cards-mobile-filters .filter-group label{font-size:.65rem;margin-bottom:.15rem}.time-cards-toolbar .time-cards-mobile-filters .filter-group input[type=date],.time-cards-toolbar .time-cards-mobile-filters .filter-group select{font-size:.875rem;height:2.1rem;max-width:none;min-height:2.1rem;min-width:0;padding:.3rem .4rem;width:100%}.time-cards-panel.timecard-results,.time-cards-toolbar-divider,.time-cards-view-toggle{display:none}.timecard-form-grid.two-column{grid-template-columns:1fr}.timecard-checkbox-row{min-height:auto;padding-top:.25rem}.timecard-field input,.timecard-field select{font-size:1rem;min-height:2.75rem}.modal-overlay:has(.timecard-modal-sheet){align-items:stretch;padding:0}.timecard-modal.timecard-modal-sheet{-webkit-overflow-scrolling:touch;border-radius:0;display:flex;flex-direction:column;height:100%;margin:0;max-height:100%;max-width:100%;overflow:auto;width:100%}.timecard-modal.timecard-modal-sheet:has(.timecard-modal-form){overflow:hidden}.timecard-modal-sheet .modal-header{flex-shrink:0;padding:max(.75rem,env(safe-area-inset-top,0px)) .9rem .75rem}.timecard-modal-sheet .timecard-modal-form{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.timecard-modal-sheet .timecard-modal-body{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow:auto;padding:.85rem .9rem 1rem}.timecard-modal-sheet .timecard-modal-actions{background:#fff;background:var(--surface,#fff);bottom:0;box-shadow:0 -4px 16px #0000000f;padding:.75rem .9rem max(.75rem,env(safe-area-inset-bottom,0px));position:-webkit-sticky;position:sticky}.timecard-modal-sheet .timecard-modal-actions .btn{flex:1 1;min-height:2.85rem}}
/*# sourceMappingURL=main.6d8aa2a3.css.map*/