@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-semi-condensed-vietnamese-500-normal-DGADhYWF.woff2)format("woff2"),url(/assets/barlow-semi-condensed-vietnamese-500-normal-hJ2t9k9e.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-semi-condensed-latin-ext-500-normal-BXdp1BvY.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-500-normal-rZeYuEMb.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-semi-condensed-latin-500-normal-G0uxJNrM.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-500-normal-CFOoVYFH.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-vietnamese-600-normal-b1FQiZcx.woff2)format("woff2"),url(/assets/barlow-semi-condensed-vietnamese-600-normal-DzVrjA0Q.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-latin-ext-600-normal-BkQ9hN72.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-600-normal-BuP8AaxH.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-latin-600-normal-BkLiAYu4.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-600-normal-DyOfdMBA.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-vietnamese-700-normal-Dm7RZTvf.woff2)format("woff2"),url(/assets/barlow-semi-condensed-vietnamese-700-normal-BvUTSFNY.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-latin-ext-700-normal-BhgEo64M.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-700-normal-C0vCoZIV.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-latin-700-normal-BpqDG8I9.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-700-normal-BMyZXq_9.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: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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/montserrat-cyrillic-ext-500-normal-11xBT7e1.woff2)format("woff2"),url(/assets/montserrat-cyrillic-ext-500-normal-DOzfAZ45.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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/montserrat-cyrillic-500-normal-T0SG181k.woff2)format("woff2"),url(/assets/montserrat-cyrillic-500-normal-CyGtXmN9.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/montserrat-vietnamese-500-normal-NT-t8RG1.woff2)format("woff2"),url(/assets/montserrat-vietnamese-500-normal-DpeZlV_K.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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/montserrat-latin-ext-500-normal-BKtbrd6n.woff2)format("woff2"),url(/assets/montserrat-latin-ext-500-normal-DWPqqZgs.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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/montserrat-latin-500-normal-DRFEGfly.woff2)format("woff2"),url(/assets/montserrat-latin-500-normal-Dok2oTci.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:Montserrat;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/montserrat-cyrillic-ext-800-normal-GOAQXnVZ.woff2)format("woff2"),url(/assets/montserrat-cyrillic-ext-800-normal-mB3PmEeV.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:Montserrat;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/montserrat-cyrillic-800-normal-DDmpGQGC.woff2)format("woff2"),url(/assets/montserrat-cyrillic-800-normal-B_mUCQ9O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/montserrat-vietnamese-800-normal-BDwqwvSG.woff2)format("woff2"),url(/assets/montserrat-vietnamese-800-normal-Chy8GRiB.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:Montserrat;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/montserrat-latin-ext-800-normal-BBvmbyWk.woff2)format("woff2"),url(/assets/montserrat-latin-ext-800-normal-Wjq_OapB.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:Montserrat;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/montserrat-latin-800-normal-axpkC1rd.woff2)format("woff2"),url(/assets/montserrat-latin-800-normal-C3dfDxXV.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{--bg:#eceff2;--surface:#fff;--sunk:#e1e6eb;--line:#cfd6dd;--fg:#1b2329;--muted:#5a6671;--accent:#2753c9;--accent-soft:#e2e9fb;--accent-ink:#fff;--warn:#9a5800;--warn-bg:#fff1d9;--ok:#23784a;--ok-bg:#dff2e7;--late:#b8342a;--late-bg:#fbe4e1;--priv:#6a4bb3;--priv-bg:#f1edfa;--priv-ink:#4a2d8c;--shadow:0 1px 2px #141e2814, 0 2px 8px #141e280f;--f-display:"Barlow Semi Condensed", "Arial Narrow", system-ui, sans-serif;--f-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#12161a;--surface:#1b2127;--sunk:#0f1316;--line:#2d363e;--fg:#e3e8ec;--muted:#96a2ac;--accent:#7398f5;--accent-soft:#1f2b48;--accent-ink:#0c1322;--warn:#f2a945;--warn-bg:#352612;--ok:#5ec48b;--ok-bg:#15301f;--late:#ff8174;--late-bg:#3a1a17;--priv:#b49cf0;--priv-bg:#241d36;--priv-ink:#d3c2ff;--shadow:0 1px 2px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--fg);font:14px/1.45 var(--f-body);margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mono{font-family:var(--f-mono);letter-spacing:.01em;font-size:.85em}.vh{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}svg.i{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:13px;height:13px}header.top{top:env(safe-area-inset-top,0px);z-index:5;background:var(--surface);border-bottom:1px solid var(--line);position:sticky}.bar{flex-wrap:wrap;align-items:center;gap:10px 18px;max-width:1320px;margin:0 auto;padding:10px 16px;display:flex}.brand{font-family:var(--f-display);letter-spacing:.02em;align-items:center;gap:8px;font-size:20px;font-weight:700;display:flex}nav.views{background:var(--sunk);border-radius:8px;flex-wrap:wrap;gap:4px;padding:3px;display:flex}nav.views button{color:var(--muted);background:0 0;border:0;border-radius:6px;padding:6px 12px;font-weight:500}nav.views button[aria-pressed=true]{background:var(--surface);color:var(--fg);box-shadow:var(--shadow)}.spacer{flex:1}.who{align-items:center;display:flex;position:relative}.umenu{z-index:8;background:var(--surface);border:1px solid var(--line);min-width:240px;box-shadow:var(--shadow);border-radius:10px;flex-direction:column;align-items:flex-start;gap:12px;padding:12px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.umhead{flex-direction:column;gap:2px;display:flex}.umhead b{font-weight:600}.conn{color:var(--muted);align-items:center;gap:5px;font-size:12px;display:inline-flex}.conn:before{content:"";background:var(--late);border-radius:50%;width:8px;height:8px}.conn.on:before{background:var(--ok)}main{max-width:1320px;margin:0 auto;padding-block:14px 40px;padding-inline:16px}h2{font-family:var(--f-display);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0;font-size:15px;font-weight:600}select,input[type=text],input[type=password],input[type=date],input[type=datetime-local],textarea{background:var(--surface);border:1px solid var(--line);border-radius:6px;min-width:0;padding:6px 8px}textarea{resize:vertical;width:100%}.btn{border:1px solid var(--line);background:var(--surface);border-radius:6px;align-items:center;gap:5px;padding:6px 12px;font-weight:500;display:inline-flex}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.warn{border-color:var(--warn);color:var(--warn);background:0 0}.btn.small{padding:3px 9px;font-size:12.5px}.btn:hover:not(:disabled){filter:brightness(.97)}.x{color:var(--muted);background:0 0;border:0;padding:2px 6px;font-size:22px;line-height:1}.x.sm{padding:0 4px;font-size:16px}.row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hint{color:var(--muted);font-size:12.5px}.hint.sug{color:var(--accent)}.empty{color:var(--muted);text-align:center;padding:10px 6px;font-size:13px}.field{flex-direction:column;gap:5px;display:flex}.field>span,.lbl{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px;font-weight:500}.checks{flex-wrap:wrap;gap:6px 14px;display:flex}.checks label{align-items:center;gap:5px;display:flex}.actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.dates{grid-template-columns:1fr 1fr;gap:10px;display:grid}.add{margin-top:4px}.add input[type=text]{flex:1}.chip{white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:1px 6px;font-size:12px;font-weight:500;display:inline-flex}.chip.comm{background:var(--accent-soft);color:var(--accent);font-family:var(--f-mono);font-size:11.5px}.chip.tolink{background:var(--warn-bg);color:var(--warn)}.chip.prop{background:var(--warn-bg);color:var(--warn);font-family:var(--f-mono);border:1px dashed var(--warn);font-size:11.5px}.chip.pers{background:var(--surface);color:var(--priv-ink);border:1px solid color-mix(in srgb,var(--priv) 40%,transparent)}.chip.int{background:var(--sunk);color:var(--muted);font-family:var(--f-mono);font-size:11.5px}.chip.ok{background:var(--ok-bg);color:var(--ok)}.chip.late{background:var(--late-bg);color:var(--late)}.avs{gap:3px;display:flex}.av{border:2px solid var(--line);width:24px;height:24px;color:var(--muted);background:var(--surface);border-radius:50%;flex:none;place-items:center;font-size:10px;font-weight:600;display:inline-grid}.av.tone-accent{border-color:var(--accent);color:var(--accent)}.av.tone-warn{border-color:var(--warn);color:var(--warn);border-style:dashed}.av.tone-ok{border-color:var(--ok);background:var(--ok);color:var(--surface)}.st.tone-accent{color:var(--accent)}.st.tone-warn{color:var(--warn)}.st.tone-ok{color:var(--ok)}.st{color:var(--muted);font-size:12.5px}.dot{background:var(--muted);border-radius:50%;width:8px;height:8px;display:inline-block}.dot.tone-accent{background:var(--accent)}.dot.tone-warn{background:var(--warn)}.dot.tone-ok{background:var(--ok)}.due{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.due.late{color:var(--late);font-weight:600}.prog{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.board{grid-template-columns:repeat(var(--cols),minmax(0,1fr));align-items:start;gap:14px;display:grid}.col{background:var(--sunk);border-radius:10px;flex-direction:column;gap:8px;min-height:180px;padding:10px;display:flex}.col.drop-end{box-shadow:inset 0 -3px 0 var(--accent)}.colhead{justify-content:space-between;align-items:center;padding:2px 4px 4px;display:flex}.colhead h2{align-items:center;gap:7px;display:flex}.count{font-family:var(--f-mono);color:var(--muted);font-size:12px}.card{background:var(--surface);border:1px solid var(--line);cursor:grab;box-shadow:var(--shadow);text-align:left;border-radius:8px;flex-direction:column;gap:7px;padding:9px 10px;display:flex;position:relative}.card:hover{border-color:var(--accent)}.card.pers{background:var(--priv-bg)}.card.dim{opacity:.6}.card.dragging{opacity:.35}.card.drop-before:before{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;top:-6px;left:0;right:0}.card .t{font-weight:500;line-height:1.3}.meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.icons{color:var(--muted);font-variant-numeric:tabular-nums;gap:10px;font-size:12px;display:flex}.icons span{align-items:center;gap:3px;display:inline-flex}.icons .mine{color:var(--priv-ink)}.wait{color:var(--muted);font-size:12px}.tools{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.tools input[type=text]{flex:200px}.tools label{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.group{margin-bottom:18px}.ghead{flex-wrap:wrap;align-items:baseline;gap:10px;padding:6px 2px;display:flex}.ghead .gname{font-weight:600}.ghead .gsub{color:var(--muted);font-size:13px}.group.tolink .tablewrap{border-color:var(--warn);border-width:1.5px}.group.tolink .ghead .gname{color:var(--warn)}.tablewrap{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:680px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:8px 10px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:var(--sunk);font-size:12px;font-weight:500}tr:last-child td{border-bottom:0}tbody tr.click{cursor:pointer}tbody tr.click:hover td{background:var(--bg)}tbody tr.pers td{background:var(--priv-bg)}tbody tr.pers.click:hover td{background:color-mix(in srgb,var(--priv) 16%,var(--surface))}td.num{font-variant-numeric:tabular-nums;white-space:nowrap}.sub{color:var(--warn);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:12.5px;display:flex}.cgrid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:12px;padding:14px;display:flex}.pend{border:1px dashed var(--warn);border-radius:8px;flex-direction:column;gap:6px;padding:10px;font-size:13px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.scrim{z-index:10;background:#0a0f1459;position:fixed;inset:0}.dialog{background:var(--surface);border:1px solid var(--line);z-index:11;border-radius:12px;flex-direction:column;gap:18px;width:min(1060px,100% - 32px);max-height:calc(100% - 48px);padding:20px 22px 26px;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 12px 48px #00000047}.dialog.narrow{width:min(560px,100% - 32px)}.dhead{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.dhead h3,.dialog h3{font-family:var(--f-display);text-wrap:balance;margin:0;font-size:22px;font-weight:600;line-height:1.15}.dhead h3 button.title{all:unset;cursor:text;border-radius:4px}.dhead h3 button.title:hover{background:var(--sunk)}.viewers{color:var(--ok);align-items:center;gap:8px;font-size:12.5px;display:flex}.viewers b{font-weight:600}.viewers .av{border-color:var(--ok);color:var(--ok)}.dhead input.title{font-family:var(--f-display);width:100%;font-size:22px;font-weight:600}.sec{flex-direction:column;gap:8px;display:flex}.dsec{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:16px;display:flex}.dsec:first-of-type{border-top:0;padding-top:0}.dsec h4{font-family:var(--f-display);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:16.5px;font-weight:600;display:flex}.dsec h4 .cnt{font-family:var(--f-body);background:var(--sunk);color:var(--muted);border-radius:9px;padding:0 7px;font-size:11.5px;font-weight:500;line-height:18px}.dsec h4 small{font-family:var(--f-body);color:var(--muted);font-size:12.5px;font-weight:400}details.dsec{display:block}details.dsec summary{cursor:pointer;border-radius:5px;list-style:none}details.dsec summary::-webkit-details-marker{display:none}details.dsec summary h4:before{content:"▸";color:var(--muted);width:10px;font-size:12px}details.dsec[open] summary h4:before{content:"▾"}details.dsec[open] .hist{margin-top:10px}.private .dsec{border-top-color:color-mix(in srgb,var(--priv) 30%,transparent)}.private .dsec h4{color:var(--priv-ink)}.private .dsec h4 .cnt{background:var(--surface);color:var(--priv-ink)}.dgrid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.dcol{flex-direction:column;gap:16px;min-width:0;display:flex}.dtabs{background:var(--sunk);border-radius:8px;gap:4px;padding:3px;display:none}.dtabs button{color:var(--muted);background:0 0;border:0;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:7px 10px;font-weight:500;display:inline-flex}.dtabs button[aria-selected=true]{background:var(--surface);color:var(--fg);box-shadow:var(--shadow)}.dtabs button.mine[aria-selected=true]{color:var(--priv)}.badge{background:var(--priv);color:var(--surface);font-variant-numeric:tabular-nums;border-radius:9px;padding:0 6px;font-size:11px}.people{flex-direction:column;gap:6px;display:flex}.person{border:1px solid var(--line);border-radius:7px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;display:flex}.person.me{border-color:var(--accent)}.seg{border:1px solid var(--line);border-radius:6px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.seg button{color:var(--muted);background:0 0;border:0;padding:4px 9px;font-size:12.5px}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.cl{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.clhead{align-items:center;gap:8px;display:flex}.cltitle{flex:1;min-width:0;font-weight:600}.item{align-items:center;gap:8px;padding:2px 0;display:flex}.item label{cursor:pointer;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.item.done label span:first-of-type{color:var(--muted);text-decoration:line-through}.item .x{opacity:.5}.item:hover .x{opacity:1}.item.priv{background:var(--priv-bg);border-radius:5px;margin-inline:-5px;padding:2px 5px}.item.priv label{color:var(--priv)}.lockmark{color:var(--priv);display:inline-flex}.lockt{color:var(--priv);white-space:nowrap;cursor:pointer;align-items:center;gap:4px;font-size:12px;display:inline-flex}.private{border:1.5px dashed var(--priv);background:var(--priv-bg);border-radius:10px;flex-direction:column;gap:16px;padding:14px;display:flex}.privhead{flex-direction:column;gap:2px;display:flex}.privhead b{color:var(--priv);font-family:var(--f-display);align-items:center;gap:6px;font-size:17px;font-weight:600;display:flex}.privhead b svg.i{width:16px;height:16px}.private .lbl{color:var(--priv-ink)}.private input[type=datetime-local]{width:100%}.rem{background:var(--surface);border:1px solid var(--line);border-radius:7px;align-items:center;gap:8px;padding:5px 8px;font-size:13px;display:flex}.rem time{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.rem span{flex:1;min-width:0}.rem .remtxt{text-align:left;min-width:0;color:inherit;font:inherit;cursor:text;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:0;display:flex}.rem .remtxt:hover span{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.rem.editing{border-color:var(--accent);flex-direction:column;align-items:stretch}.hist{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.hist li{color:var(--muted);grid-template-columns:auto 1fr;gap:8px;display:grid}.hist li b{color:var(--fg);font-weight:500}.hist time{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.atts{flex-direction:column;gap:6px;display:flex}.att{border:1px solid var(--line);white-space:normal;border-radius:7px;align-items:center;gap:10px;padding:6px 8px;display:flex}.att .thumb,.att .ext{border-radius:5px;flex:none;place-items:center;width:38px;height:38px;display:grid;overflow:hidden}.att .thumb img{object-fit:cover;width:100%;height:100%}.att .ext{background:var(--sunk);color:var(--muted);font-family:var(--f-mono);text-transform:uppercase;font-size:10px}.att .nm{min-width:0;color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.att .nm b{overflow-wrap:anywhere;font-weight:500}.att a.nm:hover b{text-decoration:underline}.att .nm span{color:var(--muted);font-size:12px}.minichips{white-space:normal;flex-wrap:wrap;gap:5px;display:flex}.minichip{background:var(--surface);border:1px solid var(--line);max-width:100%;color:inherit;border-radius:5px;align-items:center;gap:4px;padding:1px 6px;font-size:12px;text-decoration:none;display:inline-flex}.minichip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}a.minichip:hover span{text-decoration:underline}.comments{flex-direction:column;gap:8px;display:flex}.cmt{background:var(--sunk);white-space:pre-wrap;border-radius:7px;flex-direction:column;gap:5px;padding:7px 9px;font-size:13px;display:flex}.cmt .by{color:var(--muted);white-space:normal;font-size:12px}.callout{border-radius:7px;flex-direction:column;gap:8px;padding:9px 11px;font-size:13px;display:flex}.callout.warn{background:var(--warn-bg);color:var(--warn)}.callout.ok{background:var(--ok-bg);color:var(--ok)}.callout.plain{background:var(--sunk);color:var(--fg)}.callout.err{background:var(--late-bg);color:var(--late)}.confirm{border:1px solid var(--warn);border-radius:7px;flex-direction:column;gap:8px;padding:10px;font-size:13px;display:flex}.picker{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;padding:4px 6px;display:flex;position:relative}.picker:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.picker input.pk-input{background:0 0;border:0;outline:none;flex:160px;padding:4px}.pk-chip{background:var(--accent-soft);border-radius:14px;align-items:center;gap:5px;padding:2px;font-size:13px;display:inline-flex}.pk-chip .av{border-width:1px;width:20px;height:20px;font-size:9px}.pk-list{z-index:3;background:var(--surface);border:1px solid var(--line);border-radius:8px;max-height:264px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:-1px;right:-1px;overflow-y:auto;box-shadow:0 8px 24px #0000002e}.pk-list li{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;display:flex}.pk-list li.hi{background:var(--accent-soft)}.pk-list .pk-n b{color:var(--accent);font-weight:600}.pk-list .pk-d{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:12px}.pk-list .pk-empty{color:var(--muted);cursor:default}.login{place-items:center;min-height:100vh;padding:16px;display:grid}.login>form{background:var(--surface);border:1px solid var(--line);width:min(380px,100%);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;gap:14px;padding:24px;display:flex}.login .brand{font-size:26px}#toast{left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:20;background:var(--fg);color:var(--bg);max-width:calc(100% - 32px);box-shadow:var(--shadow);border-radius:8px;padding:10px 16px;font-size:13.5px;position:fixed;transform:translate(-50%)}@media (width<=860px){.cgrid{grid-template-columns:minmax(0,1fr)}}@media (width<=760px){.board{grid-template-columns:minmax(0,1fr)}.col{min-height:0}.dgrid{grid-template-columns:minmax(0,1fr)}.dtabs{display:flex}.dgrid[data-tab=shared] .dmine,.dgrid[data-tab=mine] .dshared{display:none}}@media (width<=600px){.dialog,.dialog.narrow{width:100%;height:100%;max-height:none;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(24px + env(safe-area-inset-bottom,0px));border:0;border-radius:0;top:0;left:0;transform:none}}@media (prefers-reduced-motion:no-preference){.card,.btn,nav.views button{transition:border-color .15s,background .15s}}.setup{background:var(--surface);border:1px solid var(--line);width:min(440px,100%);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;gap:14px;padding:24px;display:flex}.setup .brand{font-size:26px}.setup>.btn.small,.login>form>.btn.small,.acct>.btn.small{align-self:flex-start}.setup p,.dialog .sec p{margin:0}.linkish{all:unset;cursor:pointer;color:var(--accent);align-self:flex-start;font-size:13px}.linkish:hover{text-decoration:underline}.linkish:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.qr{border:1px solid var(--line);background:#fff;border-radius:8px;align-self:center;width:200px;height:200px;padding:8px}.secret{font-family:var(--f-mono);background:var(--sunk);word-break:break-all;-webkit-user-select:all;user-select:all;border-radius:6px;padding:6px 9px;font-size:13px}.codes{font-family:var(--f-mono);background:var(--sunk);border-radius:8px;grid-template-columns:repeat(2,1fr);gap:4px 24px;margin:0;padding:12px 12px 12px 34px;font-size:14px;display:grid}.check{align-items:center;gap:6px;display:flex}@media (width<=420px){.codes{grid-template-columns:1fr}}.levels{flex-wrap:wrap;gap:14px;margin:-6px 0 12px;display:flex}.levels b{color:var(--fg)}tbody tr.off td,.sub.plain{color:var(--muted)}.chip.role-user{background:var(--sunk);color:var(--fg)}.chip.role-gestore{background:var(--accent-soft);color:var(--accent)}.chip.role-admin{background:var(--priv-bg);color:var(--priv-ink)}.roles{flex-direction:column;gap:6px;display:flex}.roles label{border:1px solid var(--line);cursor:pointer;border-radius:7px;align-items:flex-start;gap:9px;padding:8px 10px;display:flex}.roles label.on{border-color:var(--accent);background:var(--accent-soft)}.roles label:has(input:disabled){cursor:default;opacity:.75}.roles input{margin-top:3px}.roles span{flex-direction:column;gap:1px;display:flex}.roles small{color:var(--muted);font-size:12.5px;line-height:1.35}.roles.vis{flex-flow:wrap}.roles.vis label{flex:140px}.calhead .mtitle{font-family:var(--f-display);text-align:center;text-transform:capitalize;min-width:170px;margin:0 4px;font-size:22px;font-weight:600}.calfilters{margin-top:-6px}.kind i{border-radius:3px;width:10px;height:10px;display:inline-block}.k-company i,.ci.k-company{--k:var(--accent);--kb:var(--accent-soft)}.k-shared i,.ci.k-shared{--k:var(--ok);--kb:var(--ok-bg)}.k-personal i,.ci.k-personal{--k:var(--priv);--kb:var(--priv-bg)}.k-due i,.ci.k-due{--k:var(--warn);--kb:var(--warn-bg)}.ci.k-due.late{--k:var(--late);--kb:var(--late-bg)}.k-rem i,.ci.k-rem{--k:var(--muted);--kb:var(--surface)}.kind i{background:var(--k)}.cal{border:1px solid var(--line);background:var(--line);border-radius:10px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cal-wd{background:var(--sunk);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:6px 8px;font-size:12px;font-weight:500}.cal-day{background:var(--surface);cursor:copy;flex-direction:column;gap:2px;min-width:0;min-height:108px;padding:4px 4px 6px;display:flex}.cal-day.we{background:color-mix(in srgb,var(--surface) 70%,var(--sunk))}.cal-day.out{background:var(--bg)}.cal-day.out .cal-n{opacity:.5}.cal-n{color:var(--muted);font-variant-numeric:tabular-nums;border-radius:10px;align-self:flex-start;padding:1px 4px;font-size:12.5px}.cal-day.today .cal-n{background:var(--accent);color:var(--accent-ink);font-weight:600}.cal-more{all:unset;cursor:pointer;color:var(--accent);padding:0 4px;font-size:12px}.cal-more:hover{text-decoration:underline}.ci{text-align:left;border:0;border-left:3px solid var(--k);background:var(--kb);width:100%;color:var(--fg);border-radius:4px;align-items:baseline;gap:4px;min-width:0;padding:1px 5px;font-size:12px;line-height:1.35;display:flex}.ci.k-rem{border:1px dashed var(--line);border-left:3px solid var(--k)}.ci.cont{opacity:.8;border-top-left-radius:0;border-bottom-left-radius:0}.ci:hover{filter:brightness(.96)}.ci time{font-family:var(--f-mono);color:var(--muted);flex:none;font-size:11px}.ci .ct{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.ci .cw{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;padding-left:8px;font-size:12px;overflow:hidden}.agenda{flex-direction:column;gap:10px;display:flex}.ag-day{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:5px;padding:10px 12px;display:flex}.ag-day.today{border-color:var(--accent)}.ag-day h4{text-transform:capitalize;align-items:center;gap:8px;margin:0 0 2px;font-size:13.5px;display:flex}.ag-day .ci{padding:4px 8px;font-size:13px}.chip.vis-company{background:var(--accent-soft);color:var(--accent)}.chip.vis-shared{background:var(--ok-bg);color:var(--ok)}.chip.vis-personal{background:var(--priv-bg);color:var(--priv-ink)}.notes{white-space:pre-wrap;margin:0}.gantt{border:1px solid var(--line);background:var(--surface);border-radius:10px;max-height:calc(100vh - 190px);overflow:auto}.g-row{width:calc(var(--gw) + 290px);border-bottom:1px solid var(--line);display:flex}.g-label{z-index:2;background:var(--surface);border-right:1px solid var(--line);flex:none;align-items:center;gap:8px;width:290px;min-width:0;padding:6px 10px;display:flex;position:sticky;left:0}.g-track{flex:none;min-height:34px;position:relative}.g-head{z-index:3;background:var(--sunk);position:sticky;top:0}.g-head .g-label{background:var(--sunk);z-index:4;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:500}.g-head .g-track{height:44px}.g-month{border-left:1px solid var(--line);white-space:nowrap;text-transform:capitalize;height:22px;padding:3px 6px;font-size:12px;font-weight:600;position:absolute;top:0;overflow:hidden}.g-tick{height:22px;color:var(--muted);border-left:1px solid var(--line);text-align:center;font-variant-numeric:tabular-nums;padding:3px 2px;font-size:11px;position:absolute;top:22px}.g-tick.wk{text-align:left;padding-left:4px}.g-tick.we{background:var(--line)}.g-tick.today{background:var(--accent);color:var(--accent-ink);font-weight:600}.g-ghead .g-label{background:var(--sunk);flex-direction:column;align-items:flex-start;gap:0}.g-ghead .gname{font-weight:600}.g-ghead .gsub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:12px;overflow:hidden}.g-span{background:var(--muted);opacity:.45;border-radius:3px;height:6px;margin-top:-3px;position:absolute;top:50%}.g-today{background:var(--accent);opacity:.7;pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.g-card{cursor:pointer}.g-card:hover .g-label,.g-card:hover .g-track{filter:brightness(.97)}.g-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.g-bar{background:var(--b);border:1px solid var(--bb);height:20px;color:var(--bi);white-space:nowrap;text-overflow:ellipsis;border-radius:5px;min-width:6px;padding:1px 6px;font-size:11.5px;position:absolute;top:7px;overflow:hidden}.g-bar.open{border-right-style:dashed;border-top-right-radius:0;border-bottom-right-radius:0}.g-ms{background:var(--bb);border-radius:2px;width:13px;height:13px;margin-left:-6.5px;position:absolute;top:10px;transform:rotate(45deg)}.t-neutral{--b:var(--sunk);--bb:var(--muted);--bi:var(--fg)}.t-accent{--b:var(--accent);--bb:var(--accent);--bi:var(--accent-ink)}.t-warn{--b:var(--warn-bg);--bb:var(--warn);--bi:var(--warn)}.t-late{--b:var(--late-bg);--bb:var(--late);--bi:var(--late)}.t-ok{--b:var(--ok-bg);--bb:var(--ok);--bi:var(--ok)}.g-legend{flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px;display:flex}.g-key{background:var(--b);border:1px solid var(--bb);border-radius:3px;width:14px;height:10px;margin-left:6px;display:inline-block}@media (width<=700px){.g-label{width:150px}.g-row{width:calc(var(--gw) + 150px)}.g-label .avs{display:none}.cal-day{min-height:72px}.calhead .mtitle{min-width:0;font-size:18px}}.nudge{background:var(--accent-soft);color:var(--fg);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:14px;padding:8px 12px;font-size:13.5px;display:flex}.nudge>span{flex:260px}.kinds{flex-direction:column;gap:8px;display:flex}.kinds label{cursor:pointer;align-items:flex-start;gap:9px;display:flex}.kinds input{margin-top:3px}.kinds span{flex-direction:column;gap:1px;display:flex}.kinds small{color:var(--muted);font-size:12.5px}.devices{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.devices li{border:1px solid var(--line);border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;display:flex}.devices li>span{flex-wrap:wrap;align-items:center;gap:2px 8px;min-width:0;display:flex}.devices small{color:var(--muted);flex-basis:100%;font-size:12px}h4.lbl{margin:0}.app{min-height:100dvh;display:flex}.content{flex:1;min-width:0}.content main{max-width:1320px;margin:0 auto;padding:22px 28px 48px}svg.ni{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none}.side{background:var(--surface);border-right:1px solid var(--line);z-index:4;flex-direction:column;flex:none;gap:2px;width:244px;height:100dvh;padding:16px 12px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.sbrand{font-family:var(--f-display);letter-spacing:.01em;align-items:center;gap:10px;padding:2px 8px 14px;font-size:20px;font-weight:700;display:flex}.ssearch{border:1px solid var(--line);background:var(--bg);color:var(--muted);text-align:left;border-radius:8px;align-items:center;gap:8px;margin-bottom:8px;padding:8px 10px;display:flex}.ssearch span.nl,.ssearch>span:not(.nl){flex:1}.ssearch kbd{font-family:var(--f-mono);border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:0 5px;font-size:11px}.snew{justify-content:center;margin-bottom:10px;padding:8px 12px}.nitem{color:var(--muted);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;min-height:38px;padding:8px 10px;font-weight:500;display:flex;position:relative}.nitem:hover{background:var(--sunk);color:var(--fg)}.nitem[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:600}.nitem .nl{flex:1}.ncount{color:var(--muted);text-align:right;min-width:18px;font-size:12px;font-weight:600}.ncount.warn{color:var(--warn);background:var(--warn-bg);text-align:center;border-radius:10px;padding:0 7px}.nsep{background:var(--line);align-self:stretch;height:1px;margin:10px 6px}.ngroup{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:2px 10px 4px;font-size:11.5px;font-weight:600}.side .who{display:block}.uchip{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:10px;align-items:center;gap:10px;width:100%;padding:7px 10px;display:flex}.uav{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:12.5px;font-weight:600;display:grid;position:relative}.uav i{background:var(--late);border:2px solid var(--surface);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.uav i.on{background:var(--ok)}.un{flex-direction:column;flex:1;min-width:0;display:flex}.un b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.un span{color:var(--muted);font-size:12px}.umenu.up{min-width:260px;inset:auto auto calc(100% + 6px) 0}.acctpanel{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.phead{align-items:center;gap:12px;margin-bottom:14px;display:flex}.phead h1{font-family:var(--f-display);margin:0;font-size:28px;font-weight:700;line-height:1.1}@media (width>=761px) and (width<=1100px){.side{align-items:center;width:68px;padding:14px 10px}.side .nl{display:none}.sbrand{padding:2px 0 12px}.ssearch,.snew,.nitem{justify-content:center;width:44px;padding:9px}.ncount{min-width:0;padding:0 4px;font-size:10px;position:absolute;top:1px;right:-2px}.nsep{width:36px}.uchip{border:0;justify-content:center;width:auto;padding:4px}.uchip .un,.uchip>svg{display:none}}.tabbar,.fab{display:none}.tab{color:var(--muted);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-height:52px;font-size:11px;font-weight:500;display:flex}.tab[aria-current=page]{color:var(--accent);font-weight:600}.ticon{display:grid;position:relative}.tbadge{background:var(--accent);min-width:16px;height:16px;color:var(--accent-ink);border-radius:8px;place-items:center;padding:0 4px;font-size:10px;font-weight:700;display:grid;position:absolute;top:-4px;right:-12px}.tbadge.warn{background:var(--warn);color:var(--surface)}.sheet{z-index:11;background:var(--surface);padding:8px 16px calc(20px + env(safe-area-inset-bottom,0px));border-radius:16px 16px 0 0;flex-direction:column;gap:14px;max-height:85vh;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -10px 40px #00000040}.grip{background:var(--line);border-radius:2px;align-self:center;width:40px;height:4px}.sheet .ssearch{min-height:44px;margin:0}.sgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sitem{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:10px;align-items:center;gap:10px;min-height:48px;padding:10px 12px;font-weight:500;display:flex}.sitem .ncount{margin-left:auto}@media (width<=760px){.side{display:none}.content main{padding:14px 16px calc(100px + env(safe-area-inset-bottom,0px))}.tabbar{z-index:6;background:var(--surface);border-top:1px solid var(--line);padding:4px 4px calc(4px + env(safe-area-inset-bottom,0px));display:flex;position:fixed;bottom:0;left:0;right:0}.fab{right:16px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:6;background:var(--accent);width:56px;height:56px;color:var(--accent-ink);box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 40%,transparent);border:0;border-radius:16px;place-items:center;display:grid;position:fixed}.phead h1{font-size:24px}}.today{flex-direction:column;gap:20px;display:flex}.thead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 20px;display:flex}.thead h1{font-family:var(--f-display);margin:0;font-size:32px;font-weight:700;line-height:1.1}.thead p{margin:6px 0 0;font-size:14px}.tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.tile{background:var(--surface);border:1px solid var(--line);text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;display:flex}.tile:hover{border-color:var(--accent)}.tile span{color:var(--muted);font-size:13px;font-weight:500}.tile b{font-family:var(--f-display);font-size:34px;font-weight:700;line-height:1}.tile b.soon{color:var(--warn)}.tile b.late{color:var(--late)}.tile b.acc{color:var(--accent)}.tile small{color:var(--muted);font-size:12.5px}.tile.alarm{border-color:color-mix(in srgb,var(--late) 45%,var(--line))}.tcols{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.tmain{flex-direction:column;flex:999 520px;gap:18px;min-width:0;display:flex}.tside{flex-direction:column;flex:300px;gap:18px;min-width:0;display:flex}.tpanel{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.tpanel.pad{flex-direction:column;gap:10px;padding:14px 16px;display:flex}.tpanel.warnp{border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}.tpanel.warnp .tph{background:var(--warn-bg)}.tph{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:10px;padding:12px 16px;display:flex}.tph.flat{border:0;padding:0}.tph h2,h2.kt{font-family:var(--f-display);text-transform:none;letter-spacing:0;color:var(--fg);margin:0;font-size:20px;font-weight:600}.tlist{margin:0;padding:0;list-style:none}.tlist li+li{border-top:1px solid var(--line)}.tlist li>button.trow{all:unset;box-sizing:border-box;cursor:pointer;align-items:center;gap:12px;width:100%;padding:11px 16px;display:flex}.tlist li>button.trow:hover{background:var(--bg)}.tlist li>button.trow:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.tact{flex-wrap:wrap;align-items:center;gap:12px;padding:11px 16px;display:flex}.tt{flex-direction:column;flex:220px;gap:3px;min-width:0;display:flex}.tt b{font-weight:600}.duep{white-space:nowrap;background:var(--sunk);color:var(--fg);border-radius:20px;padding:2px 9px;font-size:12px;font-weight:600}.duep.soon{background:var(--warn-bg);color:var(--warn)}.duep.late{background:var(--late-bg);color:var(--late)}.tlist .duep{text-align:center;min-width:92px}.stp{white-space:nowrap;background:var(--sunk);color:var(--fg);border-radius:20px;padding:2px 9px;font-size:12px;font-weight:600}.stp.tone-accent{background:var(--accent-soft);color:var(--accent)}.stp.tone-warn{background:var(--warn-bg);color:var(--warn)}.stp.tone-ok{background:var(--ok-bg);color:var(--ok)}.av.empty{border-style:dashed}.agi{align-items:stretch;gap:10px;display:flex}.agi time{font-family:var(--f-mono);color:var(--muted);flex:none;width:42px;padding-top:7px;font-size:12px}.agb{text-align:left;border:0;border-left:3px solid var(--k);background:var(--kb);color:var(--fg);border-radius:6px;flex-direction:column;flex:1;align-items:flex-start;padding:6px 10px;display:flex}.agb b{font-weight:600}.agb span{color:var(--muted);font-size:12px}.agb.k-company{--k:var(--accent);--kb:var(--accent-soft)}.agb.k-shared{--k:var(--ok);--kb:var(--ok-bg)}.agb.k-personal,.agb.k-rem{--k:var(--priv);--kb:var(--priv-bg)}.feed{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.feed li{align-items:flex-start;gap:10px;display:flex}.feed button{all:unset;cursor:pointer;flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.feed button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.feed .quote{background:var(--bg);-webkit-line-clamp:2;border-radius:6px;-webkit-box-orient:vertical;padding:6px 8px;font-size:13px;display:-webkit-box;overflow:hidden}.feed small{color:var(--muted);font-size:12px}@media (width<=1000px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.thead h1{font-size:26px}.thead .row{display:none}.tile b{font-size:28px}.tile{padding:12px}.tlist .duep{min-width:0}.tlist .avs,.tlist .tt .hint{display:none}}.cardwrap{position:relative}.card{border-radius:10px;gap:8px;padding:11px 12px}.card .t{font-size:14.5px;font-weight:600}.ctop{align-items:center;gap:6px;display:flex}.cpeople{align-items:center;gap:8px;display:flex}.pbar{flex:1;gap:3px;max-width:120px;display:flex}.pbar i{background:var(--line);border-radius:2px;flex:1;height:4px}.pbar i.on{background:var(--ok)}.cnote{color:var(--muted);background:var(--bg);border-radius:6px;padding:4px 8px;font-size:12.5px}.cnote.ok{background:var(--ok-bg);color:var(--ok)}.colempty{border:2px dashed var(--line);color:var(--muted);text-align:center;border-radius:10px;padding:16px 12px;font-size:13px;line-height:1.45}.closedtoggle{color:var(--muted);text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:6px 4px;font-size:12.5px;display:flex}.chev{transition:transform .15s;display:inline-grid}.chev.shut{transform:rotate(-90deg)}.colpick{scrollbar-width:none;gap:6px;margin:0 -16px 12px;padding:0 16px;display:flex;overflow-x:auto}.colpick button{border:1px solid var(--line);background:var(--surface);height:40px;color:var(--muted);white-space:nowrap;border-radius:20px;flex:none;padding:0 14px;font-weight:500}.colpick button b{font-weight:600}.colpick button[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.swipehint{color:var(--muted);margin:4px 2px 0;font-size:12.5px}.chip.pers svg.i{width:11px;height:11px}.presets{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.tools .presets{margin:0}.pchip{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:20px;align-items:center;gap:6px;min-height:34px;padding:5px 12px;font-size:13px;font-weight:500;display:inline-flex}.pchip b{color:var(--fg);font-weight:600}.pchip[aria-selected=true],.pchip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.pchip[aria-selected=true] b,.pchip[aria-pressed=true] b{color:var(--accent)}.pchip.late{border-color:color-mix(in srgb,var(--late) 45%,var(--line));color:var(--late)}.pchip.late b{color:var(--late)}.pchip.warn{border-style:dashed;border-color:var(--warn);color:var(--warn)}.pchip.warn b{color:var(--warn)}.searchbox{background:var(--surface);border:1px solid var(--line);max-width:440px;color:var(--muted);border-radius:8px;flex:240px;align-items:center;gap:8px;padding:0 10px;display:flex}.searchbox input{min-width:0;color:var(--fg);background:0 0;border:0;outline:none;flex:1;padding:8px 0}.searchbox:focus-within{border-color:var(--accent)}table.jobs{min-width:820px}.jobs .grow th{background:var(--bg);text-transform:none;letter-spacing:0;color:var(--fg);border-bottom:1px solid var(--line);padding:0;font-size:14px;font-weight:400}.gtoggle{all:unset;box-sizing:border-box;cursor:pointer;flex-wrap:wrap;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.gtoggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.gtoggle .gname{font-weight:600}.gtoggle .gsub{color:var(--muted);font-size:13px}.gstat{color:var(--muted);font-size:12.5px}.gstat .late{color:var(--late)}.grow.warn th{background:var(--warn-bg)}.grow.warn .gname{color:var(--warn)}.gprog{background:var(--line);border-radius:3px;flex:none;width:90px;height:6px;display:inline-flex;overflow:hidden}.gprog i{background:var(--ok);height:100%;display:block}.gprog.wide{border-radius:4px;width:100%;height:8px}.jt{font-weight:600}.duecell{flex-direction:column;display:flex}.duecell b{font-weight:600}.duecell b.late{color:var(--late)}.duecell b.soon{color:var(--warn)}.duecell small{color:var(--muted);font-size:12px}.row.nowrap{flex-wrap:nowrap}.empty.big{padding:40px 10px;font-size:14px}.cgrid2{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.kc{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.kc.alarm{border-color:color-mix(in srgb,var(--late) 45%,var(--line))}.kc.pending{background:var(--warn-bg);border:1.5px dashed var(--warn)}.kc p.hint{margin:2px 0 0}h2.kt{font-size:18px}.kp{flex-direction:column;gap:6px;display:flex}.kstats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.kstats div{flex-direction:column;gap:1px;display:flex}.kstats b{font-family:var(--f-display);font-size:24px;font-weight:700;line-height:1.1}.kstats b.small{padding-top:4px;font-size:17px}.kstats b.late{color:var(--late)}.kstats span{color:var(--muted);font-size:12px}.kfoot{border-top:1px solid var(--line);align-items:center;gap:12px;padding-top:10px;display:flex}.warn-t{color:var(--warn);font-size:12.5px}.seg.big button{padding:6px 12px;font-size:13px}.qsearch{gap:10px;top:12vh;transform:translate(-50%)}.qsearch input{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;padding:10px 12px;font-size:16px}.qsearch ul{flex-direction:column;gap:2px;max-height:55vh;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.qsearch li button{all:unset;box-sizing:border-box;cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr);column-gap:10px;width:100%;padding:8px 10px;display:grid}.qsearch li button.hi{background:var(--accent-soft)}.qk{background:var(--sunk);color:var(--muted);border-radius:4px;grid-row:1/3;align-self:center;padding:2px 6px;font-size:11px;font-weight:600}.qk.comm{background:var(--accent-soft);color:var(--accent)}.qt{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.qs{color:var(--muted);font-size:12px}@media (width<=760px){table.jobs{min-width:0}.jobs thead{display:none}.jobs,.jobs tbody,.jobs tr,.jobs th{width:auto;display:block}.jobs tr.click{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 10px;padding:10px 12px;display:grid}.jobs tr.click td{border:0;padding:0;display:block}.jobs tr.click td:first-child{grid-column:1/-1}.jobs tr.click td.tcli{color:var(--muted);grid-column:1/-1;font-size:12.5px}.jobs tr.click td.tcli:has(.hint){display:none}.jobs tr.click td:nth-child(6){display:none}}.extbox{border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface));border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.exthead{flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.extbadge{color:var(--accent);background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:4px;padding:1px 6px;font-size:11.5px;font-weight:600}.extdesc{font-weight:600}.extgrid{grid-template-columns:max-content minmax(0,1fr);gap:3px 12px;margin:0;font-size:13px;display:grid}.extgrid dt{color:var(--muted)}.extgrid dd{flex-direction:column;gap:4px;margin:0;display:flex}.extnote{white-space:pre-wrap;background:var(--surface);border:1px solid var(--line);border-radius:6px;margin:0;padding:6px 8px;font-size:13px}.gprog.over i{background:var(--late)}.descr{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.descr p{white-space:pre-wrap;margin:0;line-height:1.5}.descr-empty{border:1px dashed var(--line);color:var(--muted);text-align:left;background:0 0;border-radius:8px;padding:10px 12px}.descr-empty:hover{border-color:var(--accent);color:var(--accent)}button.cltitle.editable{all:unset;cursor:text;border-radius:4px;flex:1;min-width:0;margin-left:-3px;padding:1px 3px;font-weight:600}button.cltitle.editable:hover{background:var(--sunk)}button.cltitle.editable:focus-visible{outline:2px solid var(--accent)}input.inline{min-width:0;font-size:inherit;flex:1;padding:3px 6px}.item .x.edit{opacity:0}.item:hover .x.edit,.item .x.edit:focus-visible{opacity:1}@media (hover:none){.item .x.edit{opacity:.6}}.imphead{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:14px;padding:10px 14px;display:flex}.impinfo{flex-direction:column;flex:320px;gap:2px;min-width:0;font-size:13.5px;display:flex}.syncdot{background:var(--muted);border-radius:50%;flex:none;width:10px;height:10px}.syncdot.ok{background:var(--ok)}.syncdot.err{background:var(--late)}.bulkbar{background:var(--sunk);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;padding:8px 12px;font-size:13px;display:flex}.bulkbar select,.bulkbar input[type=date]{padding:4px 6px}table.imp{min-width:900px}.imp td,.imp th{vertical-align:top}.imp .ck{width:36px}.imp tr.selected td{background:var(--accent-soft)}.imp .acts{white-space:nowrap}.imp .acts .btn+.btn{margin-left:6px}.impnote summary{cursor:pointer;color:var(--accent);font-size:12.5px}.impnote p{white-space:pre-wrap;color:var(--muted);max-width:520px;margin:4px 0 0;font-size:12.5px}@media (width<=760px){table.imp{min-width:0}.imp thead{display:none}.imp,.imp tbody,.imp tr{display:block}.imp tr{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);gap:4px 10px;padding:10px 12px;display:grid}.imp td{border:0;padding:0;display:block}.imp td:not(.ck){grid-column:2}.imp .ck{grid-row:1/span 6}.imp .acts{white-space:normal;flex-wrap:wrap;gap:6px;padding-top:4px;display:flex}}.chatbox{border:1px solid var(--line);background:color-mix(in srgb,var(--sunk) 35%,var(--surface));border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px;padding:10px 12px;display:flex}.chatbox .chatico{color:var(--accent);display:flex}.chatbox .chattext{flex-direction:column;flex:220px;gap:2px;min-width:0;display:flex}.chatbox .hint.warn{color:var(--warn)}.chatbox a.btn{text-decoration:none}.hours{width:7em}.hoursro{color:var(--muted);padding:6px 0;font-size:13.5px}.chip.absence{background:var(--warn-bg);color:var(--warn)}.mmstatus{flex-wrap:wrap;margin-bottom:12px}.mmstatus.bad{border-color:color-mix(in srgb,var(--late) 50%,var(--line))}.mmstatus .hint.warn{color:var(--warn)}.res{flex-direction:column;gap:16px;display:flex}.restools{flex-wrap:wrap;align-items:flex-end;gap:10px 16px;display:flex}.field.inline{flex-direction:column;gap:2px;font-size:12px}.field.inline select{font-size:13.5px}.tile.static:hover{border-color:var(--line)}.tile.static.alarm:hover{border-color:color-mix(in srgb,var(--late) 45%,var(--line))}.tile b.warnb{color:var(--warn)}.tile b.okb{color:var(--ok)}.resgrid{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.resgrid .heat{flex:999 600px;gap:0;min-width:0;padding:0;overflow:hidden}.resgrid .person{text-align:left;flex:320px;align-items:stretch;min-width:0}.phd{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.panel.heat .phd{border-bottom:1px solid var(--line);padding:14px 16px}.phd h2{font-family:var(--f-display);text-transform:none;letter-spacing:0;color:var(--fg);margin:0;font-size:20px;font-weight:600}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 6px;margin-left:auto;font-size:12px;display:flex}.legend i{border-radius:3px;width:12px;height:12px;margin-left:6px;display:inline-block}.heatscroll{overflow-x:auto}.heatt{border-collapse:separate;border-spacing:5px;width:100%;min-width:640px;padding:4px 8px 8px}.heatt thead th{color:var(--muted);text-align:center;text-transform:none;letter-spacing:0;background:0 0;border:0;border-radius:6px;padding:4px 2px;font-size:11.5px;font-weight:400}.heatt thead th:first-child{text-align:left;width:190px;padding-left:8px}.heatt thead th b{color:var(--fg);font-weight:600;display:block}.heatt thead th.now{background:var(--warn-bg);color:var(--warn)}.heatt tbody th{text-align:left;text-transform:none;letter-spacing:0;font-weight:400;font-size:inherit;color:inherit;background:0 0;border:0;padding:0}.heatt tbody th button{all:unset;box-sizing:border-box;text-align:left;cursor:pointer;border-radius:8px;justify-content:flex-start;align-items:center;gap:9px;width:100%;min-height:44px;padding:4px 8px;display:flex}.heatt tbody th button:focus-visible{outline:2px solid var(--accent)}.heatt tbody tr.sel th button{background:var(--accent-soft)}.heatt tbody tr.sel th .av{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.heatt .av{width:30px;height:30px;font-size:11px}.heatt .who{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.heatt .who b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.heatt .who small{color:var(--muted);font-size:12px}.heatt td{border:0;padding:0}.cell{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:100%;min-height:46px;padding:3px;font-size:13.5px;font-weight:600;display:flex}.cell:focus-visible{outline:2px solid var(--fg);outline-offset:1px}.cell .m{align-items:center;gap:4px;display:flex}.cell .s{opacity:.85;font-size:11px;font-weight:500}.lv-zero{background:color-mix(in srgb,var(--sunk) 55%,var(--surface));color:var(--muted)}.lv-low{background:var(--accent-soft);color:var(--accent)}.lv-mid{background:color-mix(in srgb,var(--accent) 35%,var(--surface));color:var(--fg)}.lv-high{background:var(--accent);color:var(--accent-ink)}.lv-over{color:#fff;background:#a14a00;box-shadow:inset 0 0 0 2px #6b3000}.lv-away{background:repeating-linear-gradient(135deg,var(--sunk) 0 6px,color-mix(in srgb,var(--line) 70%,var(--sunk)) 6px 10px);color:var(--muted);font-weight:500}:root[data-theme=dark] .lv-over{color:#140b02;background:#c46a1a;box-shadow:inset 0 0 0 2px #f2a945}.person .phead2{align-items:center;gap:12px;display:flex}.person .phead2>span:last-child{flex-direction:column;min-width:0;display:flex}.person .phead2 b{font-family:var(--f-display);font-size:21px;font-weight:600;line-height:1.1}.person .phead2 small{color:var(--muted);font-size:12.5px}.av.big{border-color:var(--accent);width:40px;height:40px;color:var(--accent);background:var(--accent-soft);font-size:13px}.nowbar{flex-direction:column;gap:6px;display:flex}.nowbar>span:first-child{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.nowbar .warnt{color:var(--warn);font-weight:600}.nowbar .loadbar{background:var(--sunk);border-radius:5px;height:10px;display:flex;overflow:hidden}.nowbar .loadbar i{background:var(--accent);border-radius:5px}.nowbar .loadbar i.over{background:#a14a00}.ptasks{flex-direction:column;gap:2px;display:flex}.ptl{align-items:baseline;gap:8px;display:flex}.ptl small{color:var(--muted);font-size:12.5px}.wkhead{color:var(--muted);text-align:center;gap:2px;margin:6px 0 2px;font-size:11px;display:grid}.ptask{all:unset;box-sizing:border-box;cursor:pointer;border-top:1px solid var(--line);border-radius:4px;flex-direction:column;gap:4px;padding:8px 4px;display:flex}.ptask:hover{background:color-mix(in srgb,var(--sunk) 40%,var(--surface))}.ptask:focus-visible{outline:2px solid var(--accent)}.ptask .pt1{align-items:center;gap:6px;display:flex}.ptask .pt1 b{flex:1;min-width:0;font-size:13.5px;font-weight:600}.ptask small{color:var(--muted);font-size:12px}.chip.gest{background:var(--accent-soft);color:var(--accent)}.code{font-family:var(--f-mono);color:var(--accent);background:var(--accent-soft);white-space:nowrap;border-radius:4px;margin-right:4px;padding:1px 6px;font-size:12px}.code.none{color:var(--muted);background:var(--sunk);font-family:var(--f-body)}.wkbar{background:var(--sunk);border-radius:4px;gap:2px;height:8px;display:grid}.wkbar i{border-radius:4px}.unsched{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:2px;padding-top:8px;display:flex}.unsched small{color:var(--muted)}.linkbtn{all:unset;cursor:pointer;color:var(--accent);font-size:13px}.linkbtn:hover{text-decoration:underline}.psplit{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:12px;display:flex}.psplit .sbar{border-radius:6px;gap:2px;height:12px;display:flex;overflow:hidden}.psplit ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.psplit li{align-items:center;gap:8px;font-size:13px;display:flex}.psplit li>i{border-radius:3px;flex:none;width:12px;height:12px}.psplit li .grow{flex:1}.psplit li small{color:var(--muted);text-align:right;width:4.5em}.qlist{margin:0;padding:0;list-style:none}.qlist li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 0;display:flex}.qlist li:first-child{border-top:0}.qtitle{all:unset;cursor:pointer;flex-direction:column;flex:300px;gap:2px;min-width:0;display:flex}.qtitle b{font-weight:600}.qtitle small{color:var(--muted);font-size:12.5px}.qtitle .late{color:var(--late)}.qtitle .gest{color:var(--accent);margin-left:4px;font-weight:600}.qtips{color:var(--muted);font-size:13px}.qtips .okt{color:var(--ok)}.resnote{max-width:900px}@media (width<=760px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.legend{margin-left:0}}.cmove{color:var(--muted);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;width:36px;height:36px;margin:-8px -8px -8px 0;display:grid}.cmove:active{background:var(--sunk)}.movet{font-size:14px}.movelist{flex-direction:column;gap:6px;display:flex}.moveopt{border:1px solid var(--line);background:var(--surface);min-height:48px;font:inherit;color:var(--fg);text-align:left;border-radius:10px;align-items:center;gap:10px;padding:0 14px;font-weight:500;display:flex}.moveopt.on{background:var(--sunk);color:var(--muted)}.moveopt small{color:var(--muted);margin-left:auto;font-weight:400}#toast{align-items:center;gap:12px;display:flex}#toast[hidden]{display:none}.toastact{color:var(--accent-soft);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 4px;font-weight:700;text-decoration:underline}.chip.cli{background:var(--sunk);color:var(--fg);text-overflow:ellipsis;max-width:16em;overflow:hidden}.tcli{max-width:14em;font-size:13px}.sortth{all:unset;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;align-items:center;gap:4px;display:inline-flex}.sortth:hover,.sortth.on{color:var(--fg)}.sortth:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.sarrow{opacity:.55;font-size:9px}.sortth.on .sarrow{opacity:1;color:var(--accent)}.cmt .edited{font-style:italic}.cmt .cedit{margin-left:8px;font-size:12px}.histq{width:100%;margin:4px 0 8px}.delzone{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:8px;margin-top:4px;padding-top:12px;font-size:13px;display:flex}.btn.dangerline{border-color:color-mix(in srgb,var(--late) 55%,var(--line));color:var(--late);background:0 0}.btn.danger{background:var(--late);border-color:var(--late);color:var(--surface)}.trashintro{max-width:760px;margin:0 0 12px}.trashlist{background:var(--surface);border:1px solid var(--line);border-radius:10px;margin:0;padding:0;list-style:none}.trashlist li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 14px;display:flex}.trashlist li:first-child{border-top:0}.trashlist .tinfo{flex-direction:column;flex:320px;gap:3px;min-width:0;display:flex}.trashlist .tinfo small{color:var(--muted);font-size:12.5px}.callout.bad{border-color:color-mix(in srgb,var(--late) 45%,var(--line));background:var(--late-bg);color:var(--fg)}:root{--logo-box:#111;--logo-bar:#fff;--logo-blue:#2f5bea;--logo-ink:#111}:root[data-theme=dark]{--logo-box:#fff;--logo-bar:#111;--logo-ink:#e3e8ec}.wmlogo{align-items:center;gap:calc(var(--wm-size) * .36);color:var(--logo-ink);display:inline-flex}.wmicon{flex:none;display:block}.wmicon .box{fill:var(--logo-box)}.wmicon .b{stroke:var(--logo-bar);stroke-width:9px;stroke-linecap:round;fill:none}.wmicon .b3{stroke:var(--logo-blue)}.wmlogo .wm{font-family:"Montserrat",var(--f-body);font-weight:500;font-size:calc(var(--wm-size) * .62);letter-spacing:.01em;white-space:nowrap;line-height:1;display:inline-flex}.wmlogo .wm .ch{display:inline-block}.wmlogo .wm .bold{font-weight:800}.wmicon.anim-intro .b{stroke-dasharray:1 2;stroke-dashoffset:1px;animation:.9s cubic-bezier(.33,1,.68,1) forwards wm-draw}.wmicon.anim-intro .b2{animation-delay:.18s}.wmicon.anim-intro .b3{animation-delay:.36s}@keyframes wm-draw{0%{stroke-dashoffset:1px;opacity:0}12%{opacity:1}to{stroke-dashoffset:0;opacity:1}}.wmlogo.anim-intro .wm .ch{opacity:0;animation:.42s cubic-bezier(.33,1,.68,1) forwards wm-letter;animation-delay:calc(.5s + var(--i) * 55ms)}@keyframes wm-letter{0%{opacity:0;transform:translateY(.25em)}to{opacity:1;transform:none}}.wmicon.anim-loop .b{stroke-dasharray:1 2;stroke-dashoffset:1px;animation:2s cubic-bezier(.45,0,.25,1) infinite wm-flow}.wmicon.anim-loop .b2{animation-delay:.2s}.wmicon.anim-loop .b3{animation-delay:.4s}@keyframes wm-flow{0%{stroke-dashoffset:1px;opacity:0}8%{opacity:1}40%,62%{stroke-dashoffset:0;opacity:1}92%{opacity:1}to{stroke-dashoffset:-1px;opacity:0}}@media (prefers-reduced-motion:reduce){.wmicon .b{stroke-dasharray:none!important;stroke-dashoffset:0!important;opacity:1!important;animation:none!important}.wmlogo .wm .ch{opacity:1!important;animation:none!important}}.boot{place-items:center;min-height:100vh;display:grid}.boot.inline{flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:40vh;display:flex}.sbrand .wmlogo{color:var(--fg)}.sectoggle{all:unset;cursor:pointer;border-radius:5px;align-items:center;gap:8px;display:inline-flex}.sectoggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sectoggle .chev{color:var(--muted);width:10px;font-size:12px;transition:transform .15s}.dsec.shut .sectoggle .chev{transform:rotate(-90deg)}.dsec.shut{gap:0}.clchev{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;width:22px;height:22px;margin-left:-4px;font-size:12px;display:grid}.clchev:hover{background:var(--sunk)}.col,.card{min-width:0}.card .t{overflow-wrap:anywhere}.ctop,.ctop>.row{flex-wrap:wrap;min-width:0}.card .chip{text-overflow:ellipsis;max-width:100%;overflow:hidden}.cpeople{flex-wrap:wrap;min-width:0}.icons{flex-wrap:wrap;row-gap:4px}.card .cnote{overflow-wrap:anywhere}@media (height<=500px) and (pointer:coarse){.board{grid-template-columns:minmax(0,1fr)}}.dialog.game{width:min(720px,100vw - 24px);max-height:none}.gamearea{all:unset;border:1px solid var(--line);background:var(--surface);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;border-radius:10px;width:100%;display:block;position:relative}.gamearea:focus-visible{outline:2px solid var(--accent)}.gamearea canvas{display:block}.gameover{background:color-mix(in srgb,var(--surface) 70%,transparent);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:14px;display:flex;position:absolute;inset:0}.gameover b{font-family:var(--f-display);font-size:22px}.gamestats{color:var(--muted);font-size:13px}.gamestats b{color:var(--fg)}
