@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-BmRLXWpJ.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-DCQwxkRk.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-700-normal-D_uavGvn.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-700-normal-RFb1v-CK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-vietnamese-700-normal-CkEo6LDy.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-700-normal-BV5B8Are.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.woff)format("woff");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 Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff)format("woff");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}:root{--brand:#14808a;--brand-strong:#0e6970;--brand-tint:#e7f3f3;--brand-ring:#dcefef;--ink:#16202a;--ink-2:#3a4650;--muted:#5c6771;--on-brand:#fff;--on-dark:#fff;--on-dark-accent:#8fdde0;--on-brand-tint:#ffffff29;--bg:#f6f7f8;--surface:#fff;--surface-2:#eef1f2;--line:#e4e7ea;--line-soft:#f0f2f3;--field:#8a949c;--ok-fg:#0e6970;--ok-bg:#e7f3f3;--wait-fg:#80561a;--wait-bg:#f6efe3;--info-fg:#3c5a96;--info-bg:#e9eef7;--bad-fg:#a0404f;--bad-bg:#f9eeef;--idle-fg:#4a5560;--idle-bg:#eef1f2;--data-1:#1f9aa0;--data-2:#4f6fb0;--data-3:#c48a2c;--data-4:#d8dde0;--data-5:#a4505f;--font:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--text-xs:12px;--text-sm:13px;--text-md:14px;--text-base:15px;--text-lg:18px;--text-xl:24px;--text-2xl:30px;--text-3xl:44px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--gutter:18px;--r-sm:8px;--r-md:10px;--r-lg:14px;--r-xl:22px;--r-full:999px;--shadow-sheet:0 -8px 30px #16202a1f;--shadow-fab:0 6px 18px #0e697059;--scrim:#16202a6b;--shadow-sm:0 1px 2px #16202a1f;--shadow-md:0 12px 32px #16202a29;--shadow-lg:0 24px 60px #16202a47;--tap:44px;--focus:0 0 0 2px var(--surface), 0 0 0 4px var(--brand-strong);--ease:cubic-bezier(.2, .8, .2, 1);--t-fast:.12s;--t-med:.22s;--tabbar-h:68px}@media (prefers-reduced-motion:reduce){:root{--t-fast:0s;--t-med:0s}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);font-size:var(--text-md);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.4}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}h1,h2,h3,p,ul{margin:0;padding:0}ul{list-style:none}:focus-visible{box-shadow:var(--focus);border-radius:var(--r-sm);outline:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:var(--text-sm)}.xs{font-size:var(--text-xs)}.strong{font-weight:600}.right{text-align:right}.app{grid-template-columns:232px minmax(0,1fr);height:100%;display:grid}.side{background:var(--surface);border-right:1px solid var(--line);padding:var(--s-4) var(--s-3);gap:var(--s-4);z-index:20;flex-direction:column;display:flex;overflow-y:auto}.brand{padding:0 var(--s-2);align-items:center;gap:10px;display:flex}.brand__mark{background:var(--brand-strong);width:30px;height:30px;color:var(--on-dark);border-radius:7px;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.brand__name{font-size:14px;font-weight:600;line-height:1.1}.nav__group{flex-direction:column;gap:2px;display:flex}.nav__label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 10px 6px;font-size:11px;font-weight:600}.nav__item{min-height:36px;color:var(--ink-2);transition:background var(--t-fast);border-radius:6px;align-items:center;gap:10px;padding:0 10px;font-size:13.5px;display:flex}.nav__item:hover{background:var(--line-soft)}.nav__item.active{background:var(--brand-tint);color:var(--brand-strong);font-weight:600}.nav__badge{border-radius:var(--r-full);background:var(--bad-fg);min-width:20px;height:20px;color:var(--on-dark);justify-content:center;align-items:center;margin-left:auto;padding:0 6px;font-size:11px;font-weight:600;display:inline-flex}.main{flex-direction:column;min-width:0;height:100%;display:flex}.topbar{align-items:center;gap:var(--s-3);background:var(--surface);border-bottom:1px solid var(--line);flex:none;height:60px;padding:0 28px;display:flex}.topsearch{border:1px solid var(--line);align-items:center;gap:var(--s-2);min-width:0;height:36px;padding:0 var(--s-3);font-size:var(--text-sm);color:var(--muted);background:var(--surface);text-align:left;transition:border-color var(--t-fast);border-radius:6px;flex:0 360px;display:flex}.topsearch:hover{border-color:var(--field)}.kbd{border:1px solid var(--line);color:var(--muted);border-radius:4px;margin-left:auto;padding:1px 5px;font-size:11px}.topbar__end{align-items:center;gap:var(--s-2);margin-left:auto;display:flex}.content{flex:1;min-height:0;overflow-y:auto}.page{max-width:1280px;padding:var(--s-6) 28px 48px;gap:var(--s-4);flex-direction:column;margin:0 auto;display:flex}.pagehead{justify-content:space-between;align-items:flex-end;gap:var(--s-4);flex-wrap:wrap;display:flex}.pagehead__title{letter-spacing:-.01em;font-size:22px;font-weight:600;line-height:1.2}.pagehead__sub{font-size:var(--text-sm);color:var(--muted);margin-top:2px}.pagehead__actions{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.workspace-bar{justify-content:center;align-items:center;gap:var(--s-3);min-height:36px;padding:0 var(--s-4);background:var(--ink);color:var(--on-dark);font-size:var(--text-sm);flex:none;display:flex}.iconbtn.menu-toggle{display:none}.iconbtn{border-radius:var(--r-sm);width:36px;height:36px;color:var(--ink-2);transition:background var(--t-fast);flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.iconbtn:hover{background:var(--line-soft)}.iconbtn:active{background:var(--line)}.iconbtn__dot{border-radius:var(--r-full);background:var(--bad-fg);min-width:17px;height:17px;color:var(--on-dark);justify-content:center;align-items:center;padding:0 4px;font-size:10.5px;font-weight:600;display:flex;position:absolute;top:1px;right:0}.btn{min-height:36px;font-size:var(--text-sm);white-space:nowrap;transition:background var(--t-fast), transform var(--t-fast);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:500;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--brand);color:var(--on-brand)}.btn--primary:hover:not(:disabled){background:var(--brand-strong)}.btn--dark{background:var(--ink);color:var(--on-dark)}.btn--dark:hover:not(:disabled){background:#26333f}.btn--ghost{background:var(--surface);border:1px solid var(--field);color:var(--ink)}.btn--ghost:hover:not(:disabled){background:var(--line-soft)}.btn--danger{background:var(--surface);border:1px solid var(--bad-fg);color:var(--bad-fg)}.btn--danger:hover:not(:disabled){background:var(--bad-bg)}.btn--lg{min-height:44px;font-size:var(--text-md);padding:0 18px;font-weight:600}.btn--block{width:100%}.link{color:var(--brand-strong);font-weight:500;font-size:var(--text-sm)}.link:hover{text-decoration:underline}.pill{border-radius:var(--r-full);font-size:var(--text-xs);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;font-weight:500;display:inline-flex}.pill--ok{background:var(--ok-bg);color:var(--ok-fg)}.pill--wait{background:var(--wait-bg);color:var(--wait-fg)}.pill--info{background:var(--info-bg);color:var(--info-fg)}.pill--bad{background:var(--bad-bg);color:var(--bad-fg)}.pill--idle{background:var(--idle-bg);color:var(--idle-fg)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border-radius:var(--r-full);border:1px solid var(--field);background:var(--surface);min-height:32px;font-size:var(--text-sm);white-space:nowrap;transition:background var(--t-fast);align-items:center;gap:6px;padding:0 12px;display:inline-flex}.chip:hover{background:var(--line-soft)}.chip[aria-pressed=true],.chip[aria-checked=true]{background:var(--ink);border-color:var(--ink);color:var(--on-dark)}.chip__n{opacity:.85;font-variant-numeric:tabular-nums;font-size:11px}.tabs{gap:var(--s-5);border-bottom:1px solid var(--line);scrollbar-width:none;display:flex;overflow-x:auto}.tab{font-size:var(--text-md);color:var(--ink-2);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:0 0 10px;display:inline-flex}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--brand-strong);border-bottom-color:var(--brand);font-weight:600}.seg{background:var(--surface-2);border-radius:8px;gap:4px;padding:3px;display:inline-flex}.seg__opt{min-height:30px;font-size:var(--text-sm);color:var(--ink-2);border-radius:6px;padding:0 12px;font-weight:500}.seg__opt[aria-checked=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);font-weight:600}.grid{gap:var(--s-4);display:grid}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.split{gap:var(--s-4);grid-template-columns:minmax(0,1fr) 340px;align-items:start;display:grid}.split--even{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.split--nav{grid-template-columns:260px minmax(0,1fr)}.stack{gap:var(--s-4);flex-direction:column;display:flex}.stack--fill>:last-child{flex:1}@media (width>=1181px){.grid--fill>:last-child:nth-child(3n+1){grid-column:span 3}.grid--fill>:last-child:nth-child(3n+2){grid-column:span 2}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);min-width:0;padding:18px 20px}.card--flush{padding:0;overflow:hidden}.card__head{justify-content:space-between;align-items:baseline;gap:var(--s-2);display:flex}.card__title{font-size:14.5px;font-weight:600}.card__sub{font-size:var(--text-xs);color:var(--muted);margin-top:2px}.card__body{margin-top:var(--s-4)}.card--flush>.card__head{border-bottom:1px solid var(--line);padding:14px 20px}.today{gap:var(--s-4);grid-template-columns:340px minmax(0,1fr);align-items:stretch;display:grid}.today--solo{grid-template-columns:minmax(0,1fr)}.punch{background:var(--brand-strong);color:var(--on-dark);border-radius:var(--r-sm);gap:var(--s-3);flex-direction:column;padding:18px 20px;display:flex}.punch__top{justify-content:space-between;gap:var(--s-2);font-size:var(--text-sm);display:flex}.punch__stats{justify-content:space-between;align-items:flex-end;margin-top:auto;display:flex}.punch__label{font-size:var(--text-xs)}.punch__big{font-size:var(--text-2xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:600;line-height:1.1}.punch__mid{font-size:var(--text-lg);font-variant-numeric:tabular-nums;font-weight:600}.punch .btn--onbrand{background:var(--surface);min-height:44px;color:var(--brand-strong);font-weight:600;font-size:var(--text-md);margin-top:auto}.punch .btn--onbrand:hover{background:var(--brand-tint)}.punch .seg{background:var(--on-brand-tint);align-self:flex-start}.punch .seg__opt{color:var(--on-dark)}.punch .seg__opt[aria-checked=true]{background:var(--surface);color:var(--brand-strong)}.quick{gap:var(--s-4);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.quick__item{min-height:64px;padding:var(--s-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);font-size:var(--text-sm);color:var(--ink-2);text-align:left;transition:background var(--t-fast);align-items:center;gap:10px;font-weight:500;line-height:1.2;display:flex}.quick__item:hover{background:var(--line-soft)}.quick__icon{border-radius:var(--r-sm);background:var(--brand-tint);width:34px;height:34px;color:var(--brand-strong);flex:none;justify-content:center;align-items:center;display:flex}.row{align-items:center;gap:var(--s-3);text-align:left;border-top:1px solid var(--line-soft);width:100%;min-height:52px;transition:background var(--t-fast);padding:10px 20px;display:flex}.card--flush>.row:first-child,.rows>.row:first-child,.rows>li:first-child>.row{border-top:0}a.row:hover,button.row:hover{background:var(--bg)}.row.selected{background:var(--brand-tint);box-shadow:inset 3px 0 0 var(--brand)}.row__main{flex:1;min-width:0;line-height:1.3}.row__title{font-size:var(--text-md);font-weight:500}.row__sub{font-size:var(--text-xs);color:var(--muted);margin-top:1px}.row__icon{border-radius:var(--r-sm);background:var(--brand-tint);width:32px;height:32px;color:var(--brand-strong);flex:none;justify-content:center;align-items:center;display:flex}.avatar{background:var(--surface-2);width:32px;height:32px;color:var(--ink-2);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11.5px;font-weight:600;display:flex}.avatar--brand{background:var(--brand-ring);color:var(--brand-strong)}.avatar--lg{width:56px;height:56px;font-size:var(--text-lg)}.row__icon.row__icon--bad{background:var(--bad-bg);color:var(--bad-fg)}.row__icon.row__icon--wait{background:var(--wait-bg);color:var(--wait-fg)}.row__icon.row__icon--info{background:var(--info-bg);color:var(--info-fg)}.kpis{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.kpi{padding:var(--s-4) 18px;border-right:1px solid var(--line-soft);text-align:left;min-width:0;display:block}.kpi:last-child{border-right:0}a.kpi:hover,button.kpi:hover{background:var(--bg)}.kpi__label{color:var(--muted);font-size:12.5px}.kpi__value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;margin-top:6px;font-size:28px;font-weight:600;line-height:1.1;display:flex}.kpi__of{font-size:var(--text-sm);color:var(--muted);letter-spacing:0;font-weight:400}.kpi__note{font-size:var(--text-xs);color:var(--muted);margin-top:4px}.kpi__note--brand{color:var(--brand-strong)}.kpi__note--wait{color:var(--wait-fg)}.hbar{font-size:var(--text-sm);grid-template-columns:84px minmax(0,1fr) 28px;align-items:center;gap:10px;display:grid}.hbar__track{background:var(--surface-2);border-radius:3px;height:10px;overflow:hidden}.hbar__fill{background:var(--data-1);border-radius:3px;height:100%;display:block}.bars{gap:var(--s-3);flex-direction:column;display:flex}.stackbar{border-radius:3px;gap:2px;height:14px;display:flex;overflow:hidden}.swatch{border-radius:2px;flex:none;width:10px;height:10px;display:inline-block}.legend2{gap:14px var(--s-3);margin-top:var(--s-4);font-size:var(--text-sm);grid-template-columns:1fr 1fr;display:grid}.legend2 b{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600;display:block}.donut{border-radius:50%;flex:none;justify-content:center;align-items:center;width:128px;height:128px;display:flex}.donut__hole{background:var(--surface);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:84px;height:84px;display:flex}.meter{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.meter>i{background:var(--brand);border-radius:3px;height:100%;display:block}.meter--wait>i{background:var(--data-3)}.tablewrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.table th{text-align:left;color:var(--muted);background:var(--bg);padding:10px var(--s-4);border-bottom:1px solid var(--line);white-space:nowrap;font-weight:500;position:sticky;top:0}.table th.right{text-align:right}.table th button{color:inherit;align-items:center;gap:4px;font-weight:500;display:inline-flex}.table th button:hover{color:var(--ink)}.table td{padding:11px var(--s-4);border-bottom:1px solid var(--line-soft);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:var(--bg)}.tablebar{align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.tablefoot{justify-content:space-between;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-4);border-top:1px solid var(--line);font-size:var(--text-xs);color:var(--muted);display:flex}.filters{gap:var(--s-3);margin-top:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.multi{position:relative}.multi__btn{justify-content:space-between;align-items:center;gap:var(--s-2);text-align:left;display:flex}.multi__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.multi__panel{z-index:12;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);min-width:240px;max-height:300px;box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0}.multi__list{padding:4px;overflow-y:auto}.multi__opt{align-items:center;gap:var(--s-2);min-height:34px;font-size:var(--text-sm);cursor:pointer;border-radius:6px;padding:4px 8px;display:flex}.multi__opt:hover{background:var(--line-soft)}.legend{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--line);font-size:var(--text-xs);color:var(--ink-2);flex-wrap:wrap;gap:6px 14px;display:flex}.legend__item{align-items:center;gap:5px;display:inline-flex}.gridwrap{max-height:68vh;overflow:auto}.agrid{border-collapse:separate;border-spacing:0;font-size:var(--text-sm)}.agrid th,.agrid td{border-bottom:1px solid var(--line-soft);border-right:1px solid var(--line-soft);background:var(--surface);white-space:nowrap;text-align:left;padding:6px 10px}.agrid thead th{z-index:3;background:var(--bg);color:var(--muted);border-bottom:1px solid var(--line);font-weight:500;position:sticky;top:0}.agrid .sticky{z-index:2;box-shadow:1px 0 0 var(--line);min-width:188px;position:sticky;left:0}.agrid thead .sticky{z-index:4}.agrid .sticky-end{z-index:2;box-shadow:-1px 0 0 var(--line);position:sticky;right:0}.agrid thead .sticky-end{z-index:4}.agrid .daycol{text-align:center;min-width:40px;padding:2px}.agrid thead .daycol{line-height:1.15;font-size:var(--text-xs);padding:4px 2px}.agrid thead .daycol b{color:var(--ink);font-size:var(--text-sm);font-variant-numeric:tabular-nums;display:block}.agrid thead .daycol--off{background:var(--surface-2)}.agrid .totalcol{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.code{border-radius:5px;justify-content:center;align-items:center;width:36px;min-height:30px;font-size:11.5px;font-weight:600;display:inline-flex}button.code:hover{filter:brightness(.95)}.code--legend{border-radius:3px;width:30px;min-height:18px;font-size:10.5px}.code--ok{background:var(--ok-bg);color:var(--ok-fg)}.code--bad{background:var(--bad-bg);color:var(--bad-fg)}.code--wait{background:var(--wait-bg);color:var(--wait-fg)}.code--info{background:var(--info-bg);color:var(--info-fg)}.code--idle{background:var(--surface-2);color:var(--idle-fg)}.code--none{color:var(--muted)}.combo{position:relative}.combo__list{z-index:12;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);max-height:260px;box-shadow:var(--shadow-md);margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combo__opt{justify-content:space-between;gap:var(--s-2);min-height:36px;font-size:var(--text-sm);cursor:pointer;border-radius:6px;align-items:center;padding:4px 8px;display:flex}.combo__opt[aria-selected=true]{background:var(--brand-tint);color:var(--brand-strong)}.combo__new{color:var(--brand-strong);font-weight:600}.logform{gap:var(--s-3);grid-template-columns:minmax(0,1fr) 96px auto;align-items:end;display:grid}.logform--dated{grid-template-columns:170px minmax(0,1fr) 96px auto}.period{align-items:center;gap:4px;display:flex}.period__label{text-align:center;min-width:150px;font-weight:600;font-size:var(--text-md)}.field{flex-direction:column;gap:6px;display:flex}.field__label{font-size:var(--text-sm);color:var(--ink-2);font-weight:500}.field__req{color:var(--bad-fg)}.input{border:1px solid var(--field);background:var(--surface);width:100%;min-height:38px;font-size:var(--text-md);border-radius:6px;padding:7px 10px}.input:focus{box-shadow:var(--focus);outline:none}.input[aria-invalid=true]{border-color:var(--bad-fg)}textarea.input{resize:vertical;min-height:76px}.field__err{font-size:var(--text-xs);color:var(--bad-fg)}.grid2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.note{background:var(--bg);padding:10px var(--s-3);font-size:var(--text-sm);justify-content:space-between;gap:var(--s-2);border-radius:6px;display:flex}.note--brand{background:var(--brand-tint);color:var(--brand-strong)}.note--wait{background:var(--wait-bg);color:var(--wait-fg)}.searchbox{flex:220px;align-items:center;max-width:320px;display:flex;position:relative}.searchbox svg{color:var(--muted);pointer-events:none;position:absolute;left:10px}.searchbox .input{padding-left:32px}.scrim{z-index:30;background:var(--scrim);animation:fade var(--t-med) both;position:fixed;inset:0}.drawer{z-index:31;background:var(--surface);width:min(460px,100vw);box-shadow:var(--shadow-md);animation:slide var(--t-med) var(--ease) both;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer__head{align-items:center;gap:var(--s-2);min-height:60px;padding:0 var(--s-3) 0 var(--s-5);border-bottom:1px solid var(--line);flex:none;display:flex}.drawer__title{font-size:var(--text-lg);flex:1;font-weight:600}.drawer__body{padding:var(--s-5);gap:var(--s-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.drawer__foot{padding:var(--s-3) var(--s-5);border-top:1px solid var(--line);gap:var(--s-2);flex:none;justify-content:flex-end;display:flex}.palette{z-index:41;background:var(--surface);border-radius:var(--r-md);width:min(620px,100vw - 24px);max-height:70vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:fixed;top:12vh;left:50%;overflow:hidden;transform:translate(-50%)}.palette__input{padding:0 var(--s-4);border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex}.palette__input input{min-height:52px;font-size:var(--text-base);background:0 0;border:0;outline:0;flex:1}.palette__list{padding:6px;overflow-y:auto}.palette__group{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 10px 4px;font-size:11px;font-weight:600}.palette__item{text-align:left;width:100%;min-height:40px;font-size:var(--text-md);border-radius:6px;align-items:center;gap:10px;padding:6px 10px;display:flex}.palette__item[data-active=true]{background:var(--brand-tint);color:var(--brand-strong)}.palette__hint{font-size:var(--text-xs);color:var(--muted);margin-left:auto}.popover{z-index:25;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);width:360px;max-height:480px;box-shadow:var(--shadow-md);position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto}.popover--sm{width:240px;padding:6px}.popwrap{position:relative}.menuitem{width:100%;min-height:36px;font-size:var(--text-sm);text-align:left;border-radius:6px;align-items:center;gap:10px;padding:0 10px;display:flex}.menuitem:hover{background:var(--line-soft)}.menuitem[aria-checked=true]{color:var(--brand-strong);font-weight:600}.menusep{background:var(--line);height:1px;margin:6px 0}@keyframes slide{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}.toast{z-index:50;align-items:center;gap:var(--s-3);background:var(--ink);min-height:44px;color:var(--on-dark);border-radius:var(--r-sm);font-size:var(--text-md);box-shadow:var(--shadow-lg);padding:6px 8px 6px 14px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast__action{min-height:32px;color:var(--on-dark-accent);border-radius:6px;padding:0 10px;font-weight:600}.state{align-items:center;gap:var(--s-2);padding:32px var(--s-4);text-align:center;flex-direction:column;display:flex}.state__icon{background:var(--surface-2);width:44px;height:44px;color:var(--ink-2);border-radius:50%;justify-content:center;align-items:center;display:flex}.skel{background:linear-gradient(90deg, var(--surface-2), var(--line-soft), var(--surface-2));background-size:200% 100%;border-radius:6px;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.timeline{flex-direction:column;display:flex}.tl{gap:var(--s-3);padding-bottom:var(--s-3);display:flex;position:relative}.tl:not(:last-child):before{content:"";background:var(--line);width:2px;position:absolute;top:20px;bottom:0;left:9px}.tl__dot{background:var(--surface-2);width:20px;height:20px;color:var(--muted);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.tl__dot--done{background:var(--brand);color:var(--on-dark)}.tl__dot--current{background:var(--wait-bg);color:var(--wait-fg)}.tl__dot--declined{background:var(--bad-fg);color:var(--on-dark)}.kv{justify-content:space-between;gap:var(--s-3);border-top:1px solid var(--line-soft);font-size:var(--text-md);padding:9px 0;display:flex}.kv:first-child{border-top:0}.kv>span:first-child{color:var(--ink-2)}.kv>span:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:500}.kv--total{border-top:1px solid var(--line);font-weight:600}.cal{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal__dow{font-size:var(--text-xs);color:var(--muted);text-align:center;padding-bottom:4px}.cal__day{min-height:62px;font-size:var(--text-sm);text-align:left;font-variant-numeric:tabular-nums;border-radius:6px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:2px;padding:6px 8px;display:flex}.cal__day:hover:not(:disabled){filter:brightness(.97)}.cal__day:disabled{cursor:default}.cal__tag{font-size:10.5px;font-weight:500;line-height:1.1}.cal__day--ok{background:var(--ok-bg);color:var(--ok-fg)}.cal__day--wait{background:var(--wait-bg);color:var(--wait-fg)}.cal__day--info{background:var(--info-bg);color:var(--info-fg)}.cal__day--bad{background:var(--bad-bg);color:var(--bad-fg)}.cal__day--idle{background:var(--surface-2);color:var(--idle-fg)}.cal__day--future{color:var(--muted);background:var(--bg)}.cal__day--link:hover{box-shadow:inset 0 0 0 1px var(--brand)}.cal__day--today{box-shadow:inset 0 0 0 2px var(--brand-strong)}.login{grid-template-columns:minmax(0,1fr) 480px;min-height:100%;display:grid}.login__aside{background:var(--brand-strong);color:var(--on-dark);justify-content:flex-end;gap:var(--s-3);flex-direction:column;padding:56px;display:flex}.login__panel{background:var(--surface);justify-content:center;gap:var(--s-4);flex-direction:column;padding:56px;display:flex}.login__logo{background:var(--brand-strong);width:44px;height:44px;color:var(--on-dark);border-radius:10px;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex}.print-only{display:none}@media print{@page{size:landscape;margin:8mm}html,body,#root,.app,.main,.content,.gridwrap{height:auto;max-height:none;display:block;overflow:visible}.side,.topbar,.no-print,.toast{display:none!important}.page{max-width:none;padding:0}.print-only{margin-bottom:2px;font-size:8px;display:block}.pagehead__title{font-size:13px}.pagehead__sub{display:none}.page{gap:2px}.agrid .xs{font-size:6.5px}.agrid{width:100%;font-size:7px}.agrid th,.agrid td{white-space:normal;padding:1px 2px}.agrid thead .daycol b{font-size:7px}.agrid thead .daycol{font-size:6px}.agrid tbody tr{break-inside:avoid}.agrid thead{display:table-header-group}.legend{gap:2px 8px;padding:2px 0;font-size:7px}.code--legend{width:auto;min-height:0;padding:0 2px;font-size:6.5px}.agrid .sticky,.agrid thead th{box-shadow:none;position:static}.agrid .sticky,.agrid .daycol{min-width:0}.code{width:auto;min-height:0;padding:0 1px;font-size:6.5px}.card{border:0;padding:0}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.pin-actions th:last-child,.pin-actions td:last-child{z-index:1;box-shadow:-1px 0 0 var(--line);position:sticky;right:0}.pin-actions td:last-child{background:var(--surface)}.pin-actions th:last-child{background:var(--bg)}@media (width<=1180px){.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.split,.split--even,.split--nav,.today{grid-template-columns:minmax(0,1fr)}.kpis{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row}.kpi{border-bottom:1px solid var(--line-soft)}}@media (width>=861px) and (width<=1180px){.grid--fill>:last-child:nth-child(odd){grid-column:span 2}.kpis>:last-child:nth-child(3n+1){grid-column:span 3}.kpis>:last-child:nth-child(3n+2){grid-column:span 2}}@media (width<=860px){.app{grid-template-columns:minmax(0,1fr)}.side{width:260px;transition:transform var(--t-med) var(--ease);box-shadow:var(--shadow-md);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.side.open{transform:none}.iconbtn.menu-toggle{display:inline-flex}.topbar{padding:0 var(--s-3)}.topsearch{white-space:nowrap;flex:auto;overflow:hidden}.topbar{gap:var(--s-2)}.topbar__end{flex:none;gap:2px}.topbar .btn--primary{width:44px;padding:0}.kbd,.hide-sm{display:none}.logform,.logform--dated{grid-template-columns:minmax(0,1fr)}.table .hide-sm-col{display:none}.page{padding:var(--s-4) var(--s-4) 40px}.grid--2,.grid--3{grid-template-columns:minmax(0,1fr)}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.quick{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.quick>:last-child:nth-child(odd),.kpis>:last-child:nth-child(odd){grid-column:span 2}.login{grid-template-columns:minmax(0,1fr)}.login__aside{display:none}.login__panel{padding:32px var(--s-5)}.popover{width:auto;position:fixed;top:64px;left:12px;right:12px}.btn,.iconbtn,.chip,.nav__item,.menuitem{min-height:44px}.iconbtn{width:44px;height:44px}.input{min-height:44px;font-size:16px}}@media (prefers-reduced-motion:reduce){.skel,.drawer,.scrim{animation:none}}
