@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--app-background:#f7f7f8;--foreground:#111827;--muted:#6b7280;--primary:#2563eb;--primary-dark:#2457db;--border:#d1d5db;--border-soft:#e5e7eb;--table-head:#f9fafb;--row-shade:#f9fafb;--shadow-soft:0 1px 2px #11182714}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--background);color:var(--foreground);font-family:var(--font-inter), Inter, system-ui, sans-serif;margin:0}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}.login-page{background:#fff;grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-panel,.brand-panel{min-height:100vh}.login-panel{justify-content:center;align-items:center;padding:56px;display:flex}.login-form-wrap{width:min(100%,736px)}.login-form{width:100%}.login-form h1{color:#111827;letter-spacing:0;margin:0 0 32px;font-size:1.75rem;font-weight:800;line-height:1.2}.field{color:#111827;gap:12px;margin-bottom:27px;font-size:1.125rem;font-weight:600;line-height:1.2;display:grid}.field input{border:1px solid var(--border);color:#111827;background:#fff;border-radius:8px;outline:none;width:100%;height:54px;padding:0 19px;font-size:1.125rem;font-weight:400;line-height:1;transition:border-color .16s,box-shadow .16s}.field input::placeholder{color:#6b7280;opacity:1}.field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb24}.checkbox-field{color:#6b7280;align-items:center;gap:10px;margin:-1px 0 25px;font-size:1.125rem;font-weight:500;line-height:1;display:inline-flex}.checkbox-field input{appearance:none;border:1px solid var(--border-soft);background:#fff;border-radius:5px;place-items:center;width:22px;height:22px;margin:0;display:grid}.checkbox-field input:checked{border-color:var(--primary);background:var(--primary)}.checkbox-field input:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:11px;margin-top:-2px;transform:rotate(45deg)}.primary-button{background:var(--primary-dark);color:#fff;cursor:pointer;border:0;border-radius:8px;width:100%;height:52px;font-size:1.125rem;font-weight:500;line-height:1;transition:background .16s,transform .16s}.primary-button:hover{background:#1d4ed8}.primary-button:active{transform:translateY(1px)}.brand-panel{color:#fff;background:#2563eb;align-items:center;padding:56px clamp(56px,9vw,92px);display:flex}.brand-content{width:min(100%,720px)}.brand-name{color:#fff;letter-spacing:0;margin:0 0 24px;font-size:3.25rem;font-weight:800;line-height:1}.brand-copy{color:#ffffffd1;letter-spacing:0;margin:0;font-size:1.5rem;font-weight:400;line-height:1.36}.app-page{background:var(--app-background);color:#111827;min-height:100vh}.app-header{background:#fff;justify-content:space-between;align-items:center;gap:32px;height:88px;padding:0 28px;display:flex}.app-header-left{align-items:center;gap:58px;display:flex}.brand-link{color:#111827;letter-spacing:0;font-size:2rem;font-weight:800;line-height:1}.nav-link{color:#111827;font-size:1.125rem;font-weight:600;line-height:1}.user-menu{color:#6b7280;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 0;font-size:1.25rem;font-weight:500;line-height:1;display:inline-flex}.chevron{border-bottom:2px solid;border-right:2px solid;width:10px;height:10px;display:inline-block;transform:rotate(45deg)translateY(-2px)}.app-content{width:min(100% - 48px,1636px);margin:0 auto;padding:34px 0 124px}.content-card,.app-footer{box-shadow:var(--shadow-soft);background:#fff;border:1px solid #e5e7eb;border-radius:8px}.timesheets-card{padding:29px 31px 30px}.timesheets-card h1{color:#111827;letter-spacing:0;margin:0 0 28px;font-size:2rem;font-weight:800;line-height:1.15}.filter-row{flex-wrap:wrap;gap:14px;margin-bottom:29px;display:flex}.select-button{border:1px solid var(--border);color:#6b7280;cursor:pointer;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;min-width:194px;height:54px;padding:0 16px;font-size:1.125rem;font-weight:400;line-height:1;display:inline-flex}.select-button .chevron{border-width:2px;width:9px;height:9px}.table-wrap{border-radius:8px;overflow-x:auto;box-shadow:0 2px 4px #1118271a}.timesheet-table{border-collapse:collapse;table-layout:fixed;color:#111827;width:100%;min-width:900px}.timesheet-table th,.timesheet-table td{text-align:left;border-bottom:1px solid #e5e7eb}.timesheet-table th{background:var(--table-head);color:#6b7280;text-transform:uppercase;height:65px;padding:0 14px;font-size:.875rem;font-weight:800;line-height:1}.timesheet-table td{color:#6b7280;height:70px;padding:0 20px;font-size:1.125rem;font-weight:400}.timesheet-table th:first-child,.timesheet-table td:first-child{background:var(--row-shade);color:#111827;width:138px}.timesheet-table th:nth-child(2),.timesheet-table td:nth-child(2){width:41%}.timesheet-table th:nth-child(3),.timesheet-table td:nth-child(3){width:34%}.timesheet-table th:last-child,.timesheet-table td:last-child{text-align:center;width:160px}.sortable-heading{align-items:center;gap:24px;display:inline-flex}.sort-icon{width:12px;height:16px;display:inline-block;position:relative}.sort-icon:before{content:"";background:#6b7280;border-radius:999px;width:2px;height:11px;position:absolute;top:1px;left:5px}.sort-icon:after{content:"";border-bottom:2px solid #6b7280;border-right:2px solid #6b7280;width:8px;height:8px;position:absolute;bottom:1px;left:2px;transform:rotate(45deg)}.status-pill{text-transform:uppercase;border-radius:8px;justify-content:center;align-items:center;min-width:92px;height:29px;padding:0 13px;font-size:1rem;font-weight:600;line-height:1;display:inline-flex}.status-pill.completed{color:#00624d;background:#d9f8ea}.status-pill.incomplete{color:#7c4a03;background:#fff0a8}.status-pill.missing{color:#b00045;background:#fde7f2;min-width:90px}.action-link{color:#0057ff;font-size:1.25rem;font-weight:400;line-height:1}button.action-link{cursor:pointer;background:0 0;border:0;padding:0}.table-controls{justify-content:space-between;align-items:center;gap:24px;margin-top:31px;display:flex}.page-size-button{color:#4b5563;min-width:150px;height:48px}.pagination{background:#fff;border:1px solid #e5e7eb;border-radius:14px;align-items:center;display:inline-flex;overflow:hidden}.page-link{color:#4b5563;border-right:1px solid #e5e7eb;justify-content:center;align-items:center;min-width:45px;height:46px;padding:0 14px;font-size:1.125rem;font-weight:500;line-height:1;display:inline-flex}.page-link:first-child,.page-link:last-child{min-width:104px}.page-link:last-child{border-right:0}.page-link.active{color:#004dff;font-weight:700}.app-footer{color:#6b7280;justify-content:center;align-items:center;width:min(100% - 48px,1636px);min-height:109px;margin:20px auto 0;font-size:1.125rem;font-weight:400;display:flex}.detail-content{width:min(100% - 48px,1386px);margin:0 auto;padding:17px 0 96px}.week-card{padding:27px 32px 57px}.week-card-header{justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:30px;display:flex}.week-card h1{color:#111827;letter-spacing:0;margin:0;font-size:1.75rem;font-weight:800;line-height:1.15}.week-card-header p{color:#6b7280;margin:31px 0 0;font-size:1rem;font-weight:400;line-height:1}.progress-block{justify-items:end;width:240px;margin-top:-16px;display:grid}.progress-label{color:#111827;background:#fff;border:1px solid #eef0f4;border-radius:4px;justify-content:center;align-items:center;min-width:103px;height:39px;font-size:.9375rem;font-weight:600;line-height:1;display:inline-flex;transform:translate(-55px);box-shadow:0 1px 2px #1118270d}.progress-label:after{content:"";background:#fff;border-bottom:1px solid #eef0f4;border-right:1px solid #eef0f4;width:12px;height:12px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.progress-row{align-items:center;gap:14px;width:221px;margin-top:10px;display:flex}.progress-track{background:#e6e9ee;border-radius:999px;width:146px;height:7px;overflow:hidden}.progress-track span{border-radius:inherit;background:#ff875a;width:50%;height:100%;display:block}.progress-percent{color:#4b5563;font-size:.875rem;font-weight:500;line-height:1}.week-list{gap:27px;display:grid}.day-section{grid-template-columns:140px minmax(0,1fr);gap:27px;display:grid}.day-section h2{color:#111827;letter-spacing:0;margin:8px 0 0;font-size:1.25rem;font-weight:800;line-height:1}.day-entries{gap:11px;min-width:0;display:grid}.task-row{background:#fff;border:1px solid #e1e5ea;border-radius:8px;justify-content:space-between;align-items:center;gap:24px;min-height:46px;padding:0 11px 0 14px;display:flex;position:relative}.task-title{color:#111827;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:1.125rem;font-weight:500;line-height:1;overflow:hidden}.task-meta{flex-shrink:0;align-items:center;gap:11px;display:inline-flex;position:relative}.task-hours{color:#98a1b2;font-size:.9375rem;font-weight:400;line-height:1}.project-chip{color:#0f4aa8;background:#dbeafe;border-radius:6px;justify-content:center;align-items:center;min-width:106px;height:24px;padding:0 10px;font-size:.8125rem;font-weight:600;line-height:1;display:inline-flex}.task-menu-button{color:#6b7280;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:3px;width:23px;height:24px;padding:0;display:inline-flex}.task-menu-button span{background:currentColor;border-radius:999px;width:3px;height:3px}.task-dropdown{z-index:2;background:#fff;border:1px solid #edf0f3;border-radius:8px;gap:7px;width:111px;padding:12px 0;display:grid;position:absolute;top:25px;right:-6px;box-shadow:0 6px 16px #1118271a}.task-dropdown button{color:#374151;cursor:pointer;text-align:left;background:0 0;border:0;padding:5px 17px;font-size:.9375rem;font-weight:400}.task-dropdown .danger{color:#ff1f1f}.add-task-row{color:#6b7280;cursor:pointer;background:#fff;border:1px dashed #d5dbe4;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:49px;padding:0 16px;font-size:1.125rem;font-weight:500;line-height:1;display:inline-flex}.add-task-row span{color:currentColor;font-size:1.25rem;font-weight:400;line-height:1}.add-task-row.active{color:#0057ff;background:#f7fbff;border-color:#2563eb}.modal-backdrop{z-index:20;background:#3e4a5aeb;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.entry-modal{background:#fff;border:1px solid #d7dce3;border-radius:8px;width:min(100%,565px);overflow:hidden;box-shadow:0 20px 60px #11182733}.entry-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;height:60px;padding:0 17px;display:flex}.entry-modal-header h2{color:#111827;letter-spacing:0;margin:0;font-size:1rem;font-weight:800;line-height:1}.modal-close{color:#9ca3af;cursor:pointer;background:0 0;border:0;width:24px;height:24px;padding:0;font-size:1.5rem;font-weight:300;line-height:1}.entry-form{padding:20px 17px 16px}.modal-field{color:#111827;gap:8px;width:min(100%,319px);margin-bottom:16px;font-size:.8125rem;font-weight:600;line-height:1;display:grid}.modal-field.narrow{margin-bottom:18px}.modal-field.description{width:min(100%,431px);margin-bottom:0}.modal-field b{color:#fff;background:#9ca3af;border-radius:999px;justify-content:center;align-items:center;width:11px;height:11px;font-size:.5625rem;font-style:normal;font-weight:700;line-height:1;display:inline-flex}.modal-field select,.modal-field textarea{color:#6b7280;background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;width:100%;font-size:.8125rem;font-weight:400}.modal-field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#6b7280 50%),linear-gradient(135deg,#6b7280 50%,#0000 50%);background-position:calc(100% - 18px) 16px,calc(100% - 13px) 16px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;height:38px;padding:0 34px 0 11px}.modal-field textarea{resize:none;height:142px;padding:13px}.modal-field textarea::placeholder{color:#6b7280}.modal-help{color:#6b7280;margin:9px 0 19px;font-size:.75rem;font-weight:400;line-height:1}.hours-field{color:#111827;gap:9px;font-size:.8125rem;font-weight:600;line-height:1;display:grid}.hours-stepper{background:#f8fafc;border:1px solid #d1d5db;border-radius:6px;grid-template-columns:33px 33px 33px;width:99px;height:33px;display:grid;overflow:hidden}.hours-stepper button,.hours-stepper output{color:#111827;background:0 0;border:0;border-right:1px solid #d1d5db;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;line-height:1;display:inline-flex}.hours-stepper output{color:#6b7280;font-weight:400}.hours-stepper button:last-child{border-right:0}.entry-modal-actions{border-top:1px solid #e5e7eb;grid-template-columns:1fr 1fr;gap:15px;height:67px;padding:17px;display:grid}.entry-submit,.entry-cancel{cursor:pointer;border-radius:6px;height:34px;font-size:.8125rem;font-weight:500;line-height:1}.entry-submit{color:#fff;background:#2563eb;border:0}.entry-cancel{color:#111827;background:#fff;border:1px solid #e5e7eb}@media (max-width:980px){.login-page{grid-template-columns:1fr}.login-panel,.brand-panel{min-height:auto}.login-panel{min-height:58vh;padding:40px 24px}.brand-panel{min-height:42vh;padding:44px 24px}.brand-name{font-size:2.75rem}.brand-copy{font-size:1.125rem}.app-header{height:76px}.app-header-left{gap:28px}.app-content{width:min(100% - 32px,1636px);padding-top:24px}.table-controls{flex-direction:column;align-items:flex-start}.pagination{max-width:100%;overflow-x:auto}.detail-content{width:min(100% - 32px,1644px);padding-top:24px}.week-card-header{flex-direction:column}.progress-block{justify-items:start;margin-top:0}.progress-label{transform:translate(42px)}.day-section{grid-template-columns:1fr;gap:12px}.day-section h2{margin-top:0}}@media (max-width:560px){.login-panel{align-items:flex-start}.login-form h1{font-size:1.5rem}.field,.field input,.checkbox-field,.primary-button{font-size:1rem}.field input,.primary-button{height:50px}.app-header{padding:0 16px}.app-header-left{gap:18px}.brand-link{font-size:1.5rem}.nav-link,.user-menu,.select-button,.app-footer{font-size:.9375rem}.user-menu span:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:82px;overflow:hidden}.timesheets-card{padding:24px 16px}.timesheets-card h1{font-size:1.5rem}.select-button{min-width:100%}.week-card{padding:24px 16px 36px}.week-card h1{font-size:1.5rem}.task-row{flex-direction:column;align-items:flex-start;gap:10px;min-height:72px;padding:12px}.task-meta{justify-content:flex-end;width:100%}.progress-block,.progress-row{width:100%}.progress-track{flex:1;width:auto}}.user-menu-wrapper{display:inline-block;position:relative}.profile-menu{z-index:1000;background:#fff;border:1px solid #e5e7eb;border-radius:8px;width:280px;margin-top:12px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.profile-header{border-bottom:1px solid #f3f4f6;align-items:center;padding:20px 24px;display:flex}.profile-avatar{background:#dbeafe;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-right:16px;display:flex}.avatar-initial{color:#2563eb;font-size:1.5rem;font-weight:600}.profile-info{flex:1}.profile-name{color:#111827;margin-bottom:4px;font-size:1.125rem;font-weight:600}.profile-email{color:#6b7280;font-size:.875rem}.profile-divider{background:#f3f4f6;height:1px;margin:8px 0}.profile-nav-item{color:#374151;cursor:pointer;align-items:center;padding:12px 24px;font-size:.875rem;font-weight:500;transition:background-color .2s;display:flex}.profile-nav-item:hover{background-color:#f9fafb}.profile-nav-item.logout-btn{color:#dc2626;border:none;justify-content:center;width:100%;font-weight:600}.profile-nav-item.logout-btn:hover{background-color:#fef2f2}.filter-group{align-items:center;gap:8px;margin-right:24px;display:flex}.filter-label{color:#6b7280;white-space:nowrap;font-size:.875rem;font-weight:600}.select-button{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;min-width:160px;height:44px;padding:0 12px;font-size:.875rem;font-weight:400;transition:border-color .16s,box-shadow .16s;display:inline-flex}.select-button:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.select-button .chevron{border-width:1.5px;width:8px;height:8px;transition:transform .16s}.select-button[aria-expanded=true] .chevron{transform:rotate(180deg)}.page-size-group{align-items:center;gap:8px;display:flex}.page-size-label{color:#6b7280;white-space:nowrap;font-size:.875rem;font-weight:600}.pagination{background:#fff;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:4px;display:inline-flex;overflow:hidden}.pagination button,.pagination .page-link{color:#6b7280;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;min-width:36px;height:36px;padding:0 8px;font-size:.875rem;font-weight:500;transition:background-color .16s,color .16s;display:inline-flex}.pagination button:hover:not(:disabled),.pagination .page-link:hover:not(.disabled):not(.active){color:#111827;background-color:#f9fafb}.pagination button:disabled,.pagination .page-link.disabled{opacity:.5;cursor:not-allowed}.pagination .page-link.active{color:#fff;background-color:#2563eb}.page-info{color:#6b7280;white-space:nowrap;margin:0 12px;font-size:.875rem;font-weight:500}.empty-state{text-align:center;color:#6b7280;padding:40px 20px;font-size:.875rem}.action-link{color:#0057ff;border-radius:4px;padding:2px 6px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .16s}.action-link:hover{background-color:#dbeafe}@media (max-width:768px){.filter-row{flex-wrap:wrap;gap:16px}.filter-group{min-width:150px;margin-bottom:12px}.table-controls{flex-wrap:wrap;gap:16px;margin-top:24px}.page-size-group,.pagination{min-width:150px}}
