@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.088ba3ed.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:Instrument Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.c68a79fb.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:Instrument Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.088ba3ed.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:Instrument Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.c68a79fb.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:Instrument Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.088ba3ed.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:Instrument Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.c68a79fb.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:Instrument Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.088ba3ed.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:Instrument Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.c68a79fb.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:Instrument Sans Fallback;src:local(Arial);ascent-override:94.42%;descent-override:24.33%;line-gap-override:0.0%;size-adjust:102.74%}.instrument_sans_64bf3bc2-module__kMvudW__className{font-family:Instrument Sans,Instrument Sans Fallback;font-style:normal}.instrument_sans_64bf3bc2-module__kMvudW__variable{--font-sans:"Instrument Sans","Instrument Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.a82ecf4e.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.afa48be3.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.764b43eb.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.cb53f04b.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.64b9304e.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.6b5ea6af.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1dcddae6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.8da66e7f.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.e6cd1753.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.19510058.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.140490a3.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a69062cfe6f77f8-s.b36ae37c.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.bf5f8a12.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.10086973.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.2902b61f.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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_e06d9437-module__v8ILfq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_e06d9437-module__v8ILfq__variable{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}
@font-face{font-family:League Spartan;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8bf306ca80378054-s.0713edff.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:League Spartan;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d33cd7f74dcc750d-s.5d76a523.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:League Spartan;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7a514bda021b6b92-s.p.b628dbda.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:League Spartan;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8bf306ca80378054-s.0713edff.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:League Spartan;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d33cd7f74dcc750d-s.5d76a523.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:League Spartan;font-style:normal;font-weight:600;font-display:swap;src:url(../media/7a514bda021b6b92-s.p.b628dbda.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:League Spartan;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8bf306ca80378054-s.0713edff.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:League Spartan;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d33cd7f74dcc750d-s.5d76a523.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:League Spartan;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7a514bda021b6b92-s.p.b628dbda.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:League Spartan Fallback;src:local(Arial);ascent-override:75.47%;descent-override:23.72%;line-gap-override:0.0%;size-adjust:92.75%}.league_spartan_b1f7f66e-module__7pRoZq__className{font-family:League Spartan,League Spartan Fallback;font-style:normal}.league_spartan_b1f7f66e-module__7pRoZq__variable{--font-condensed:"League Spartan","League Spartan Fallback"}
:root{--bg:#fff;--bg-2:#fff;--fg:#101418;--muted:#5b6774;--stroke:#10141833;--accent:#f8b014;--focus:#377df7;--ok:#1f883d;--warn:#b35a00;--danger:#d1252f;--radius:10px;--shadow:0 1px 2px #10141814;--shadow-2:0 8px 24px #10141829;--cm-grid:#1014180f;--cm-blob-warm:#f8b0140e;--cm-blob-cool:#0000}
:root{--container:1120px}*{box-sizing:border-box}html,body{height:100%}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-tap-highlight-color:transparent}body{--cm-bg-base:var(--bg);--cm-grid-color:var(--cm-grid);--cm-blob-warm-active:var(--cm-blob-warm);--cm-blob-cool-active:var(--cm-blob-cool);background:radial-gradient(1100px 520px at 20% -20%,var(--cm-blob-warm-active),transparent 60%),radial-gradient(900px 520px at 100% 0%,var(--cm-blob-cool-active),transparent 58%),repeating-linear-gradient(0deg,var(--cm-grid-color),var(--cm-grid-color)1px,transparent 1px,transparent 32px),repeating-linear-gradient(90deg,var(--cm-grid-color),var(--cm-grid-color)1px,transparent 1px,transparent 32px),var(--cm-bg-base);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;margin:0;font-size:16px;line-height:1.45}body[data-cm-tex=white-grid]{--cm-bg-base:var(--bg-2);--cm-grid-color:color-mix(in srgb,var(--fg),transparent 92%);--cm-blob-warm-active:#0000;--cm-blob-cool-active:#0000}body[data-cm-tex=paper-grid]{--cm-bg-base:var(--bg);--cm-grid-color:color-mix(in srgb,var(--fg),transparent 92%);--cm-blob-warm-active:var(--cm-blob-warm);--cm-blob-cool-active:var(--cm-blob-cool)}body[data-cm-tex=paper],body[data-cm-tex=white]{--cm-bg-base:var(--bg-2);--cm-grid-color:transparent;--cm-blob-warm-active:#0000;--cm-blob-cool-active:#0000}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--font-condensed);letter-spacing:.02em;text-wrap:balance}main{min-height:100%}.container{max-width:var(--container);margin:0 auto;padding:20px}.content{max-width:var(--container);margin:0 auto;padding:18px 20px 40px}.card{background:var(--bg-2);border:1px solid var(--stroke);border-radius:var(--radius);box-shadow:var(--shadow)}.cardHeader{padding:18px 18px 0}.cardBody{padding:18px}.muted{color:var(--muted)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.calendarCell{text-align:left;width:100%;color:inherit;font:inherit;appearance:none;background:0 0;border:0;padding:0;display:block}.calendarCell:focus-visible{outline:2px solid color-mix(in srgb,var(--focus),transparent 15%);outline-offset:2px}.timesheetCellHint{letter-spacing:.04em;font-size:11px;font-weight:700;line-height:1.15}.timesheetCellContent{grid-template-rows:auto 1fr;gap:8px;min-height:72px;padding:10px;display:grid}.timesheetCellContentLocked{position:relative}.timesheetCellContentLocked .timesheetCellHeader{padding-right:16px}.timesheetCellHeader{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;column-gap:4px;display:grid;overflow:hidden}.timesheetCellDayNum{font-family:var(--font-mono);font-size:13px;line-height:1}.timesheetCellHours{white-space:nowrap;text-align:right;font-size:12px;line-height:1}.timesheetCellHintSpacer{height:12px}.timesheetCalendarDayLink{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}.timesheetCellSelectMark{border-radius:2px;place-items:center;width:16px;height:16px;font-size:11px;font-weight:900;line-height:1;display:grid;position:absolute;bottom:8px;right:8px}.timesheetCellLock{width:14px;height:14px;color:color-mix(in srgb,var(--muted),var(--fg)16%);pointer-events:none;display:block;position:absolute;top:8px;right:8px}.timesheetCellLock svg{width:100%;height:100%;display:block}.timesheetCellHint,.timesheetCellHintSpacer{align-self:end}.timesheetDayPlaceholder{height:72px}.timesheetCellHoursCompact,.timesheetCellHintShort{display:none}.timesheetCellHintFull{display:inline}.timesheetMonthGridWrap{padding-bottom:2px;overflow:auto hidden}.timesheetMonthGrid{min-width:700px}.timesheetCalendarTopBar{justify-content:stretch;align-items:center;width:100%;min-height:44px;display:flex}.timesheetMonthNav{grid-template-columns:56px minmax(0,1fr) 56px;align-items:stretch;gap:8px;width:100%;display:grid}.timesheetMonthNavCenter{justify-content:center;min-width:0;display:flex;position:relative}.timesheetMonthNavBtn{color:color-mix(in srgb,var(--fg),black 6%);justify-content:center;place-self:center;align-items:center;transition:background-color .15s,color .15s,opacity .15s;background:0 0!important;border:0!important;border-radius:999px!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;display:inline-flex!important}.timesheetMonthNavChevron{border-bottom:2px solid;border-right:2px solid;width:10px;height:10px;display:block}.timesheetMonthNavChevron.isPrev{transform:rotate(135deg)}.timesheetMonthNavChevron.isNext{transform:rotate(-45deg)}.timesheetMonthNavBtn:hover:not(:disabled){background:color-mix(in srgb,var(--fg),transparent 91%)!important}.timesheetMonthNavBtn:focus-visible,.timesheetMonthNavTrigger:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.timesheetMonthNavBtn:disabled{opacity:.34}.timesheetMonthNavTrigger{width:fit-content;min-width:0;max-width:min(100%,280px);min-height:44px;color:var(--fg);font:inherit;letter-spacing:.01em;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:0 10px;font-size:16px;font-weight:700;line-height:1.2;transition:color .15s,background-color .15s;display:inline-flex}.timesheetMonthNavTrigger:hover{background:color-mix(in srgb,var(--fg),transparent 96%)}.timesheetMonthNavLabel{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.timesheetMonthNavLabelChevron{border-bottom:2px solid;border-right:2px solid;flex:0 0 9px;width:9px;height:9px;display:block;transform:rotate(45deg)translateY(-1px)}.timesheetMonthPickerPopover{z-index:1200;border:1px solid color-mix(in srgb,var(--stroke),var(--fg)3%);background:var(--bg);width:min(316px,100vw - 32px);box-shadow:0 20px 42px color-mix(in srgb,var(--fg),transparent 88%);border-radius:12px;gap:10px;padding:12px 12px 10px;display:grid;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.timesheetMonthPickerSheetBackdrop{z-index:2400;background:color-mix(in srgb,var(--fg),transparent 58%);align-items:end;padding:0;display:grid;position:fixed;inset:0}.timesheetMonthPickerSheetCard{width:min(520px,100%);max-height:min(560px,100dvh - 18px);box-shadow:0 -12px 34px color-mix(in srgb,var(--fg),transparent 86%);border-radius:16px 16px 0 0;margin:0 auto;overflow:hidden}.timesheetMonthPickerSheetBody{padding:10px 16px max(18px,env(safe-area-inset-bottom));gap:10px;display:grid;overflow:hidden auto}.timesheetMonthPickerSheetHandle{background:color-mix(in srgb,var(--muted),white 15%);border-radius:999px;width:44px;height:4px;margin:0 auto}.timesheetMonthPickerYearBtn:focus-visible,.timesheetMonthPickerMonthBtn:focus-visible,.timesheetMonthPickerFooterLink:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--focus),transparent 55%);outline:none}.timesheetMonthPickerYearRow{grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:6px;display:grid}.timesheetMonthPickerYearBtn{justify-content:center;align-items:center;transition:background-color .15s,color .15s,box-shadow .15s;background:0 0!important;border:0!important;border-radius:999px!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;display:inline-flex!important}.timesheetMonthPickerYearBtn:hover:not(:disabled){background:color-mix(in srgb,var(--fg),transparent 95%)!important}.timesheetMonthPickerYearLabel{font-family:var(--font-mono);text-align:center;font-size:.98rem;font-weight:700}.timesheetMonthPickerGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.timesheetMonthPickerMonthBtn{min-height:42px;color:var(--fg);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.92rem;font-weight:600;line-height:1.1;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex;position:relative}.timesheetMonthPickerMonthBtn:hover:not(:disabled){background:color-mix(in srgb,var(--fg),transparent 95%)}.timesheetMonthPickerMonthBtn.isSelected{background:color-mix(in srgb,var(--focus),white 90%);border-color:color-mix(in srgb,var(--focus),transparent 70%);color:color-mix(in srgb,var(--focus),black 18%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--focus),transparent 76%);border-radius:8px;font-weight:700}.timesheetMonthPickerMonthBtn.isCurrent:not(.isSelected){color:color-mix(in srgb,var(--focus),black 10%)}.timesheetMonthPickerMonthBtn:disabled{opacity:.42;cursor:not-allowed}.timesheetMonthPickerMonthLabel{white-space:nowrap;min-width:0}.timesheetMonthPickerCurrentMarker{background:color-mix(in srgb,var(--focus),transparent 38%);border-radius:999px;width:12px;height:2px;position:absolute;bottom:7px;left:50%;transform:translate(-50%)}.timesheetMonthPickerFooterLink{color:color-mix(in srgb,var(--focus),black 10%);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:center;padding:2px 0 0;font-size:.92rem;font-weight:600;line-height:1.2;transition:color .15s,opacity .15s}.timesheetMonthPickerFooterLink:hover{color:var(--focus)}.timesheetLegendRow{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 16px;display:grid}.timesheetLegendItem{grid-template-columns:12px minmax(0,1fr);align-items:center;column-gap:8px;min-width:0;display:grid}.timesheetLegendSwatch{width:12px;height:12px}.timesheetLegendLabel{font-size:13px;line-height:1.25}.field{gap:8px;margin-top:14px;display:grid}.labelRow{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px}.input{appearance:none;background:var(--bg-2);border:1px solid var(--stroke);border-radius:var(--radius);width:100%;min-height:44px;color:var(--fg);outline:none;padding:10px 12px;font-size:16px}.input:focus{border-color:color-mix(in srgb,var(--focus),black 6%);box-shadow:0 0 0 2px color-mix(in srgb,var(--focus),transparent 72%)}.input:focus:not(:focus-visible){border-color:var(--stroke);box-shadow:none}.btn{appearance:none;border:1px solid var(--stroke);background:var(--bg-2);color:var(--fg);border-radius:var(--radius);text-align:center;cursor:pointer;touch-action:manipulation;justify-content:center;align-items:center;min-height:44px;padding:10px 14px;font-size:15px;font-weight:600;line-height:1.2;transition:background-color .14s,border-color .14s,color .14s,box-shadow .14s;display:inline-flex}.btn:hover{background:color-mix(in srgb,var(--bg-2),var(--fg)4%);border-color:color-mix(in srgb,var(--stroke),black 12%)}.btn:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--focus),transparent 70%);outline:none}.btn:disabled{cursor:not-allowed;opacity:1;color:color-mix(in srgb,var(--fg),var(--muted)48%);background:color-mix(in srgb,var(--bg-2),var(--fg)3%);border-color:color-mix(in srgb,var(--stroke),var(--fg)20%);box-shadow:none}.btnPrimary{border-color:color-mix(in srgb,var(--accent),black 16%);background:var(--accent);color:#fff}.btnAction{border-color:color-mix(in srgb,var(--focus),black 16%);background:var(--focus);color:#fff}.btnDanger{border-color:color-mix(in srgb,var(--danger),black 18%);background:var(--danger);color:#fff}.btnSuccess{border-color:color-mix(in srgb,var(--ok),black 16%);background:var(--ok);color:#fff}.btnPrimary:hover:not(:disabled){background:color-mix(in srgb,var(--accent),black 10%)}.btnAction:hover:not(:disabled){background:color-mix(in srgb,var(--focus),black 10%)}.btnDanger:hover:not(:disabled){background:color-mix(in srgb,var(--danger),black 10%)}.btnSuccess:hover:not(:disabled){background:color-mix(in srgb,var(--ok),black 10%)}.btnPrimary:disabled{background:color-mix(in srgb,var(--accent),white 34%);border-color:color-mix(in srgb,var(--accent),black 8%);color:#fff}.btnAction:disabled{background:color-mix(in srgb,var(--focus),white 34%);border-color:color-mix(in srgb,var(--focus),black 8%);color:#fff}.btnDanger:disabled{background:color-mix(in srgb,var(--danger),white 34%);border-color:color-mix(in srgb,var(--danger),black 8%);color:#fff}.btnSuccess:disabled{background:color-mix(in srgb,var(--ok),white 34%);border-color:color-mix(in srgb,var(--ok),black 8%);color:#fff}input[type=checkbox],input[type=radio]{accent-color:var(--focus);width:16px;height:16px}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid color-mix(in srgb,var(--focus),transparent 65%);outline-offset:2px}.pill{border:1px solid var(--stroke);border-radius:var(--radius);background:color-mix(in srgb,var(--bg-2),var(--bg)18%);color:var(--muted);align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:inline-flex}.pillStatusDraft{color:var(--muted)}.pillStatusSubmitted{border-color:color-mix(in srgb,var(--focus),transparent 50%);background:color-mix(in srgb,var(--focus),white 92%);color:var(--fg)}.pillStatusPending{border-color:color-mix(in srgb,var(--accent),transparent 45%);background:color-mix(in srgb,var(--accent),white 92%);color:color-mix(in srgb,var(--fg),black 6%)}.pillStatusApproved{border-color:color-mix(in srgb,var(--ok),transparent 55%);background:color-mix(in srgb,var(--ok),white 94%);color:var(--fg)}.pillStatusRejected{border-color:color-mix(in srgb,var(--danger),transparent 48%);background:color-mix(in srgb,var(--danger),white 92%);color:var(--fg)}.pillStatusLocked{border-color:color-mix(in srgb,var(--focus),transparent 55%);background:color-mix(in srgb,var(--focus),white 94%);color:var(--fg)}.documentViewer{gap:12px;display:grid}.documentViewerToolbar{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;display:grid}.documentViewerToolbarStart,.documentViewerToolbarCenter,.documentViewerToolbarEnd{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.documentViewerToolbarCenter{justify-content:center}.documentViewerToolbarEnd{justify-content:flex-end}.documentViewerToolbarTitle{min-width:0;font-weight:700}.documentViewerToolbarMeta{color:var(--muted);font-size:13px}.documentViewerToolbarBtn{white-space:nowrap;min-height:34px;padding-inline:10px}.documentViewerToolbarBtn.isActive{border-color:color-mix(in srgb,var(--focus),transparent 48%);background:color-mix(in srgb,var(--focus),white 95%);color:color-mix(in srgb,var(--focus),black 12%)}.documentViewerViewport{border:1px solid var(--stroke);background:#f8fafc;border-radius:8px;height:min(72vh,760px);min-height:420px;position:relative;overflow:auto}.documentViewer.isFull .documentViewerViewport{height:min(78vh,920px)}.documentViewerLoading{z-index:2;border:1px solid color-mix(in srgb,var(--stroke),transparent 10%);color:var(--muted);background:#fffffff0;border-radius:999px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:inline-flex;position:absolute;top:12px;right:12px;box-shadow:0 4px 12px #10182814}.documentViewerLoadingDot{background:currentColor;border-radius:999px;width:8px;height:8px;animation:.9s ease-in-out infinite alternate documentViewerPulse}@keyframes documentViewerPulse{0%{opacity:.35;transform:scale(.92)}to{opacity:.9;transform:scale(1)}}.documentViewerFrame{background:#fff;border:0;width:100%;height:100%;display:block}.documentViewerImageStage{place-items:center;min-height:100%;padding:18px;display:grid;overflow:auto}.documentViewerImage{object-fit:contain;max-width:100%;max-height:100%;transform:scale(var(--document-viewer-image-scale,1));transform-origin:50%;margin:0 auto;display:block}.documentViewerFallback{justify-content:center;align-items:center;gap:14px;min-height:100%;padding:20px;display:flex}.documentViewerFallbackTile{border:1px solid color-mix(in srgb,var(--stroke),var(--fg)8%);min-width:72px;min-height:72px;font-family:var(--font-condensed);background:#fff;border-radius:12px;place-items:center;padding:14px;font-size:22px;line-height:1;display:grid}.documentViewerFallbackTile.isPdf{border-color:color-mix(in srgb,var(--danger),transparent 68%);background:color-mix(in srgb,var(--danger),white 94%);color:color-mix(in srgb,var(--danger),black 12%)}.documentViewerFallbackTile.isImage{border-color:color-mix(in srgb,var(--focus),transparent 68%);background:color-mix(in srgb,var(--focus),white 95%);color:color-mix(in srgb,var(--focus),black 10%)}.documentViewerFallbackBody{gap:10px;max-width:46ch;display:grid}.documentViewerFallbackTitle,.documentViewerFallbackText{margin:0}.documentViewerFallbackMeta{overflow-wrap:anywhere;gap:3px;display:grid}.documentViewerFallbackActions{flex-wrap:wrap;gap:8px;display:flex}.documentViewerFooter{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:2px;display:flex}@media (max-width:960px){.documentViewerToolbar{grid-template-columns:minmax(0,1fr)}.documentViewerToolbarCenter,.documentViewerToolbarEnd{justify-content:flex-start}}@media (max-width:720px){.documentViewerViewport{height:min(58vh,520px);min-height:280px}.documentViewer.isFull .documentViewerViewport{height:min(64vh,580px)}.documentViewerFallback{align-items:flex-start}.documentViewerFallbackTile{min-width:54px;min-height:54px;font-size:16px}}.topbar{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:color-mix(in srgb,var(--bg-2),transparent 10%);border-bottom:1px solid color-mix(in srgb,var(--stroke),transparent 10%);position:sticky;top:0}.topbarInner,.appTopbarInner{max-width:var(--container);justify-content:space-between;align-items:center;gap:14px;margin:0 auto;padding:14px 20px;display:flex}.topbarActions,.appTopbarActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.topbarRight,.appTopbarRight{align-items:center;gap:10px;display:inline-flex}.brand,.appBrand{align-items:center;gap:12px;display:flex}.brandLogo,.appBrandLogo{flex:none;width:auto;height:24px}.brandBlock,.appBrandBlock{gap:2px;min-width:0;display:grid}.brandTitle,.appBrandTitle{font-family:var(--font-condensed);letter-spacing:.02em;font-size:18px;line-height:1.1}.brandWelcome,.appBrandWelcome{font-size:12px}.appVersionTag{color:var(--muted);opacity:.9;font-size:11px}.nav,.appNav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.navLink,.appNavLink{border-radius:var(--radius);color:var(--muted);border:1px solid #0000;padding:10px 12px}.navLink:hover,.appNavLink:hover{border-color:color-mix(in srgb,var(--stroke),transparent 0%);color:var(--fg)}.navLink:focus-visible,.appNavLink:focus-visible{outline:2px solid color-mix(in srgb,var(--focus),transparent 25%);outline-offset:2px;border-color:color-mix(in srgb,var(--stroke),transparent 0%);color:var(--fg)}.navLinkActive,.appNavLinkActive{border-color:color-mix(in srgb,var(--focus),transparent 48%);color:var(--fg);background:color-mix(in srgb,var(--focus),white 90%)}.card:focus-visible{outline:2px solid color-mix(in srgb,var(--focus),transparent 25%);outline-offset:2px}.localeSwitcher{border:1px solid var(--stroke);border-radius:var(--radius);background:var(--bg-2);align-items:center;display:inline-flex;overflow:hidden}.localeOption{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-left:1px solid var(--stroke);padding:9px 10px;font-size:12px}.localeOption:first-child{border-left:none}.localeOption:hover{background:color-mix(in srgb,var(--bg-2),var(--fg)2%);color:var(--fg)}.localeOption:focus-visible{outline:2px solid color-mix(in srgb,var(--focus),transparent 20%);outline-offset:-2px}.localeOptionActive{background:color-mix(in srgb,var(--accent),white 92%);color:var(--fg)}.skipLink{z-index:100;background:var(--bg-2);border:1px solid var(--stroke);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 12px;position:absolute;top:10px;left:10px;transform:translateY(-120%)}.skipLink:focus,.skipLink:focus-visible{outline:2px solid color-mix(in srgb,var(--focus),transparent 15%);outline-offset:2px;transform:translateY(0)}.errorBox{border:1px solid color-mix(in srgb,var(--danger),transparent 55%);background:color-mix(in srgb,var(--danger),white 92%);border-radius:var(--radius);color:color-mix(in srgb,var(--danger),black 15%);margin-top:12px;padding:12px 14px;font-size:14px}.cmPopover{z-index:20;border:1px solid var(--stroke);border-radius:var(--radius);background:var(--bg-2);box-shadow:var(--shadow);max-height:280px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto}.cmPopoverList{gap:2px;padding:6px;display:grid}.cmPopoverOption{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:2px;gap:2px;padding:8px 10px;display:grid}.cmPopoverOption:hover{background:color-mix(in srgb,var(--bg),var(--fg)4%)}.cmPopoverOption.isActive{background:color-mix(in srgb,var(--focus),white 88%)}.cmPopoverOption:focus-visible{outline:2px solid color-mix(in srgb,var(--focus),transparent 20%);outline-offset:1px}@media (max-width:960px){.topbarInner,.appTopbarInner{flex-direction:column;align-items:flex-start;gap:10px}.brand,.appBrand{width:100%}.topbarActions,.appTopbarActions{justify-content:space-between;width:100%}}@media (max-width:680px){.topbarInner,.appTopbarInner{gap:8px;padding:8px 10px}.content{padding:12px 12px 28px}.container{padding:12px}.topbarActions,.appTopbarActions{gap:6px;display:grid}.nav,.appNav{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;display:grid}.navLink,.appNavLink{text-align:center;justify-content:center;align-items:center;min-height:44px;padding:6px;font-size:13px;line-height:1.2;display:inline-flex}.topbarRight,.appTopbarRight{flex-wrap:nowrap;justify-content:space-between;gap:6px;width:100%}.localeSwitcher{flex:auto;min-width:0}.localeOption{text-align:center;flex:1 1 0;padding:9px 8px}.topbarRight form,.appTopbarRight form{flex:none}.topbarRight form .btn,.appTopbarRight form .btn{min-width:88px;min-height:44px;padding-left:8px;padding-right:8px}.brandTitle{font-size:16px!important}.brandWelcome{white-space:nowrap;text-overflow:ellipsis;max-width:100%;line-height:1.2;overflow:hidden;font-size:11px!important}}@media (max-width:760px){.timesheetMonthNav{grid-template-columns:44px minmax(0,1fr) 44px;width:100%;max-width:none;margin-left:0;margin-right:0}.timesheetMonthNavTrigger{min-width:0;max-width:min(68vw,240px);padding-left:8px;padding-right:8px;font-size:15px}.timesheetMonthPickerPopover{width:min(312px,100vw - 24px)}.timesheetMonthPickerGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.timesheetMonthPickerSheetCard{width:100%}.timesheetMonthPickerYearBtn{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important}.timesheetMonthPickerYearRow{grid-template-columns:44px minmax(0,1fr) 44px}.timesheetMonthPickerMonthBtn{min-height:46px}.timesheetMonthPickerFooterLink{align-self:start;min-height:44px}}@media (max-width:420px){.navLink,.appNavLink{font-size:12px}.brandTitle{font-size:15px!important}.brandWelcome{display:none}}.timesheetDayEditorShellBody{gap:12px;display:grid}.timesheetDayEditorSection{gap:10px;display:grid}.timesheetDayEditorActions{flex-wrap:wrap;gap:8px;display:flex}.timesheetDayEditorError{margin:0}
