@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/montserrat-cyrillic-ext-400-normal-Xqov12YL.woff2)format("woff2"),url(/assets/montserrat-cyrillic-ext-400-normal-DRPPeomZ.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:400;src:url(/assets/montserrat-cyrillic-400-normal-BPq32Q8K.woff2)format("woff2"),url(/assets/montserrat-cyrillic-400-normal-jEs4Tk-Z.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:400;src:url(/assets/montserrat-vietnamese-400-normal-D4oHqQTd.woff2)format("woff2"),url(/assets/montserrat-vietnamese-400-normal-BeEscFYY.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:400;src:url(/assets/montserrat-latin-ext-400-normal-B8bwfy6Y.woff2)format("woff2"),url(/assets/montserrat-latin-ext-400-normal-BffdBkAA.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:400;src:url(/assets/montserrat-latin-400-normal-BLhwKU8k.woff2)format("woff2"),url(/assets/montserrat-latin-400-normal-xItZbAXg.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:600;src:url(/assets/montserrat-cyrillic-ext-600-normal-BtBW-rpm.woff2)format("woff2"),url(/assets/montserrat-cyrillic-ext-600-normal-wReYPmz2.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:600;src:url(/assets/montserrat-cyrillic-600-normal-CQEPC0hM.woff2)format("woff2"),url(/assets/montserrat-cyrillic-600-normal-DUglwBrH.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:600;src:url(/assets/montserrat-vietnamese-600-normal-DKe6qT_E.woff2)format("woff2"),url(/assets/montserrat-vietnamese-600-normal-SJ-HTWuM.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:600;src:url(/assets/montserrat-latin-ext-600-normal-DSkTqI9L.woff2)format("woff2"),url(/assets/montserrat-latin-ext-600-normal-CSDhkhgS.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:600;src:url(/assets/montserrat-latin-600-normal-UVxSCcoG.woff2)format("woff2"),url(/assets/montserrat-latin-600-normal-CdhFl4lI.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:700;src:url(/assets/montserrat-cyrillic-ext-700-normal-MyDreaeu.woff2)format("woff2"),url(/assets/montserrat-cyrillic-ext-700-normal-D-Mk2xRJ.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:700;src:url(/assets/montserrat-cyrillic-700-normal-D-Pqjtdp.woff2)format("woff2"),url(/assets/montserrat-cyrillic-700-normal-BvLYcGP1.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:700;src:url(/assets/montserrat-vietnamese-700-normal-C0x1De3p.woff2)format("woff2"),url(/assets/montserrat-vietnamese-700-normal-DnwGT2D9.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:700;src:url(/assets/montserrat-latin-ext-700-normal-BOP2Nhf0.woff2)format("woff2"),url(/assets/montserrat-latin-ext-700-normal-DdDFr05Z.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:700;src:url(/assets/montserrat-latin-700-normal-BdjcYUrC.woff2)format("woff2"),url(/assets/montserrat-latin-700-normal-BWkrl476.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}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-cyrillic-ext-400-normal-B28g4zcY.woff2)format("woff2"),url(/assets/open-sans-cyrillic-ext-400-normal-CtkCLoLZ.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:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-cyrillic-400-normal-DvjyhnTk.woff2)format("woff2"),url(/assets/open-sans-cyrillic-400-normal-XMp_Qeuo.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-greek-ext-400-normal-CnZCBtTu.woff2)format("woff2"),url(/assets/open-sans-greek-ext-400-normal-NNHf8TFl.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-greek-400-normal-BKm6CSmU.woff2)format("woff2"),url(/assets/open-sans-greek-400-normal-yVf9KAAO.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:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-hebrew-400-normal-C3uFZKNA.woff2)format("woff2"),url(/assets/open-sans-hebrew-400-normal-Cowz_U6T.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-math-400-normal-C76BUjK0.woff2)format("woff2"),url(/assets/open-sans-math-400-normal-Cs0GbA_j.woff)format("woff");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-symbols-400-normal-OZvd8qMe.woff2)format("woff2"),url(/assets/open-sans-symbols-400-normal-B5VgOMNH.woff)format("woff");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-vietnamese-400-normal-Dqpvjuft.woff2)format("woff2"),url(/assets/open-sans-vietnamese-400-normal-DCU23d-J.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:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-latin-ext-400-normal-URAvo6nN.woff2)format("woff2"),url(/assets/open-sans-latin-ext-400-normal-BfzJ9CTS.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:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-latin-400-normal-Bk63H6sG.woff2)format("woff2"),url(/assets/open-sans-latin-400-normal-DKniycaP.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:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-cyrillic-ext-600-normal-CivhzOCV.woff2)format("woff2"),url(/assets/open-sans-cyrillic-ext-600-normal-DX5V8c14.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:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-cyrillic-600-normal-BuMhxFId.woff2)format("woff2"),url(/assets/open-sans-cyrillic-600-normal-C5LXWJm_.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-greek-ext-600-normal-L6B86u0X.woff2)format("woff2"),url(/assets/open-sans-greek-ext-600-normal-BiKrQ9TX.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-greek-600-normal-CkCBI2Km.woff2)format("woff2"),url(/assets/open-sans-greek-600-normal-Xt_394w2.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:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-hebrew-600-normal-CQztwT7q.woff2)format("woff2"),url(/assets/open-sans-hebrew-600-normal-D7z6DfF6.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-math-600-normal-DQ8cZjrd.woff2)format("woff2"),url(/assets/open-sans-math-600-normal-CWMKYWAo.woff)format("woff");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-symbols-600-normal-DgwZOEXg.woff2)format("woff2"),url(/assets/open-sans-symbols-600-normal-BiWokiHG.woff)format("woff");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-vietnamese-600-normal-cWHhjaNO.woff2)format("woff2"),url(/assets/open-sans-vietnamese-600-normal-CVI-Ycr6.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:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-latin-ext-600-normal-CXDaa6Q7.woff2)format("woff2"),url(/assets/open-sans-latin-ext-600-normal-YZ6Vktkr.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:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-latin-600-normal-Cp4N6AwT.woff2)format("woff2"),url(/assets/open-sans-latin-600-normal-C3dWW5mx.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:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-cyrillic-ext-700-normal-BWp9aGB1.woff2)format("woff2"),url(/assets/open-sans-cyrillic-ext-700-normal-hbT5P32v.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:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-cyrillic-700-normal-Db4W_Rwa.woff2)format("woff2"),url(/assets/open-sans-cyrillic-700-normal-FWckWEfO.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-greek-ext-700-normal-DBa4YTmu.woff2)format("woff2"),url(/assets/open-sans-greek-ext-700-normal-DsDDMAga.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-greek-700-normal-YcFp24oM.woff2)format("woff2"),url(/assets/open-sans-greek-700-normal-bcfTBw-h.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:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-hebrew-700-normal-DnAL3HC_.woff2)format("woff2"),url(/assets/open-sans-hebrew-700-normal-CZc_Q6SQ.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-math-700-normal-EYnC2qGX.woff2)format("woff2"),url(/assets/open-sans-math-700-normal-B7X9EnEK.woff)format("woff");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-symbols-700-normal-DfXrtqu8.woff2)format("woff2"),url(/assets/open-sans-symbols-700-normal-DNvDgxgv.woff)format("woff");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-vietnamese-700-normal-C0rmKuKj.woff2)format("woff2"),url(/assets/open-sans-vietnamese-700-normal-BwQSBZ9d.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:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-latin-ext-700-normal-DatbY7Hl.woff2)format("woff2"),url(/assets/open-sans-latin-ext-700-normal-IE4yTLg1.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:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-latin-700-normal-CceUhp2e.woff2)format("woff2"),url(/assets/open-sans-latin-700-normal-CZCQA30i.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}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}:root{--font-display:"Montserrat", "Open Sans", Helvetica, Arial, sans-serif;--font-body:"Open Sans", Helvetica, Arial, sans-serif;--fs-title:15px;--fs-detail:14px;--fs-row:13px;--fs-body:12px;--fs-meta:11px;--fs-label:10px;--fs-badge:9px;--tracking-eyebrow:.12em;--tracking-badge:.04em;--row-height:48px;--add-row-height:30px;--backlog-row-height:32px;--header-height:48px;--week-label-height:18px;--periods-row-height:0px;--project-col:140px;--features-col:164px;--week-width:36px;--bar-height:36px;--bar-radius:8px;--left-panel:304px;--section-header-height:44px;--card-radius:14px;--note-ink:#2a2620}:root,[data-theme=dark]{--brand-accent:#ce181e;--bg-app:#0b0c0e;--bg-header:#151719;--bg-surface:#17191c;--bg-surface-2:#212429;--bg-row-even:#131518;--bg-row-odd:#101214;--text-primary:#eee;--text-secondary:#8a9298;--text-muted:#888e93;--text-header:#eee;--accent-primary:#4e44db;--accent-primary-hover:#5d54e3;--accent-secondary:#00b8cc;--success:#009991;--free:#3fb86c;--warning:#cb6600;--error:#99001b;--error-bright:#e26469;--warning-text:#e07a10;--success-text:#14afa6;--contention:#c0466a;--on-accent:#fff;--on-secondary:#0b0c0e;--error-solid:#c62828;--free-ink:#3fb86c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--grid-weekly:#ffffff0f;--grid-monthly:#ffffff1f;--border:#ffffff1a;--border-strong:#ffffff2e;--hover:#ffffff0f;--hover-strong:#ffffff1f;--week-label-color:#878e94;--today-line:#ffb224;--today-strip:#ffb2241f;--milestone-fill:#46a758;--milestone-stroke:#eaf6ec;--highlight-month:#f5a42a;--card-shadow:0 8px 24px #00000073;--freeze-band:#7d9bff1a;--freeze-edge:#8ca5ff80;--freeze-pill:#7896ff33;--freeze-ink:#b9c8ff;--closure-pill:#2a2e33;--closure-ink:#c9cdd1;--closure-hatch:#ffffff17;--raid-status:#8f9bff;--rag-on:#3fb86c;--rag-on-soft:#3fb86c21;--rag-on-ink:#5fd08a;--rag-at:#e0a030;--rag-at-soft:#e0a03021;--rag-at-ink:#f0b34a;--rag-off:#e5534b;--rag-off-soft:#e5534b21;--rag-off-ink:#f27a73}[data-theme=light]{--brand-accent:#ce181e;--freeze-band:#3e63dd13;--freeze-edge:#3e63dd80;--freeze-pill:#e4eafb;--freeze-ink:#2b4aae;--closure-pill:#ecedee;--closure-ink:#3f4448;--closure-hatch:#5a5f642b;--raid-status:#3c4fc4;--rag-on:#1f9e5a;--rag-on-soft:#e3f5ea;--rag-on-ink:#17703f;--rag-at:#d9821f;--rag-at-soft:#fcefdc;--rag-at-ink:#9a4d00;--rag-off:#d9342b;--rag-off-soft:#fbe4e2;--rag-off-ink:#b52222;--bg-app:#f6f6f7;--bg-header:#fff;--bg-surface:#fff;--bg-surface-2:#e9eaeb;--bg-row-even:#fafafa;--bg-row-odd:#f1f1f2;--text-primary:#151719;--text-secondary:#5a5f64;--text-muted:#63696d;--text-header:#151719;--accent-primary:#151719;--accent-primary-hover:#2d2a63;--accent-secondary:#00929f;--success:#00897e;--free:#2f9e5a;--warning:#cb6600;--error:#99001b;--error-bright:#b52222;--warning-text:#9a4d00;--success-text:#006b62;--contention:#7a1f3d;--on-accent:#fff;--on-secondary:#0b0c0e;--error-solid:#c62828;--free-ink:#237744;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--grid-weekly:#e2e3e4;--grid-monthly:#c3c4c6;--border:#dcddde;--border-strong:#b9bbbd;--hover:#0000000d;--hover-strong:#0000001a;--week-label-color:#63696d;--today-line:#a06700;--today-strip:#ffb22429;--milestone-fill:#d5e8d4;--milestone-stroke:#82b366;--highlight-month:#f5a42a;--card-shadow:0 4px 16px #00000014}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--bg-app);color:var(--text-primary);overflow:hidden}h1,h2,h3{font-family:var(--font-display)}button,input,select,textarea,optgroup,option,kbd{font-family:var(--font-body)}input,textarea,select{color:var(--text-primary)}.eyebrow,.kicker,.left-panel-header-cell,.view-menu-group-label,.bar-env-popover-title,.people-picker-group-label,.modal label,.people-panel-person-meta label,.people-roster-unteamed,.people-detail-section h4,.notes-panel-divider,.env-panel-identity label,.env-panel-section-header h4,.phase-types-row-header,.phase-types-label,.phase-type-picker-title,.key-features-popover-eyebrow,.project-filter-section-name{font-family:var(--font-display);font-size:var(--fs-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;font-weight:700}.eyebrow,.kicker{color:var(--text-secondary)}.swimlane-features-more,.env-pill-pick,.phase-type-chip,.people-detail-kind,.assistant-json-mode,.ai-provider-active-chip{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;font-weight:700}.kicker:before{content:"";background:var(--brand-accent);border-radius:1px;width:28px;height:3px;margin-bottom:6px;display:block}.teach-state{text-align:center;flex-direction:column;align-items:center;padding:28px 18px;display:flex}.teach-state .kicker:before{margin-left:auto;margin-right:auto}.teach-state p{font-size:var(--fs-body);color:var(--text-secondary);max-width:260px;margin:8px 0 14px;line-height:1.55}.teach-state .teach-state-note{font-size:var(--fs-meta);color:var(--text-muted);margin:2px 0 0}.btn-quiet{color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;margin-top:10px}.btn-quiet:hover{color:var(--text-primary);text-decoration:underline}.btn-primary,.btn-secondary,.btn-danger{font-size:var(--fs-body);font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap;border-radius:999px;padding:7px 16px;transition:background .12s,border-color .12s}.btn-primary{background:var(--accent-primary);color:var(--on-accent);border:1px solid #0000}.btn-primary:hover{background:var(--accent-primary-hover)}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-strong);background:0 0}.btn-secondary:hover{background:var(--hover)}.btn-danger{color:var(--error-bright);border:1px solid var(--error-bright);background:0 0}.btn-danger:hover{background:color-mix(in srgb, var(--error-bright) 12%, transparent)}.btn-danger.confirm,.btn-secondary.confirm{background:var(--error-solid);border-color:var(--error-solid);color:#fff;font-size:var(--fs-meta)}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.4;cursor:default}select option{background:var(--bg-surface);color:var(--text-primary)}#root{flex-direction:column;width:100vw;height:100vh;display:flex}.toolbar{background:var(--bg-header);color:var(--text-header);z-index:100;flex-shrink:0;align-items:center;gap:8px;padding:8px 16px;display:flex}.bbd-logo{flex-shrink:0;height:17px;display:block}.bbd-logo-black,[data-theme=light] .bbd-logo-white{display:none}[data-theme=light] .bbd-logo-black{display:block}.runway-lockup{--lockup-h:17px;align-items:center;gap:calc(var(--lockup-h) * .42);line-height:1;display:inline-flex}.runway-lockup .bbd-logo{height:var(--lockup-h)}.runway-lockup-rule{width:1px;height:var(--lockup-h);background:var(--text-header);opacity:.24}.runway-mark{height:calc(var(--lockup-h) * .8);width:calc(var(--lockup-h) * .8 * 47.4 / 28);color:var(--text-header);flex-shrink:0;display:block}.runway-word{margin-left:calc(var(--lockup-h) * -.12);font-family:var(--font-display);font-weight:500;font-size:calc(var(--lockup-h) * 1.2536);letter-spacing:-.01em;color:var(--text-header);white-space:nowrap}.toolbar-filename-dirty{color:var(--warning-text);opacity:1;font-weight:700}.toolbar-logo-btn{cursor:pointer;align-items:center;display:inline-flex;background:0 0!important;border:none!important;padding:2px 4px!important}.toolbar .toolbar-doc-chip{font-size:var(--fs-row);align-items:center;gap:6px;max-width:320px;font-weight:600;display:inline-flex;background:0 0!important;border-color:#0000!important;padding:5px 12px!important}.toolbar-doc-chip:hover{background:var(--hover)!important;border-color:var(--border)!important}.toolbar-doc-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.toolbar-doc-caret{font-size:var(--fs-badge);color:var(--text-muted)}.zoom-cluster{background:var(--bg-surface);border:1px solid var(--border-strong);z-index:40;border-radius:8px;gap:1px;display:flex;position:absolute;bottom:12px;right:14px;overflow:hidden}.zoom-cluster button{color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;padding:5px 9px}.zoom-cluster button:hover{background:var(--hover-strong);color:var(--text-primary)}.canvas-ctx-scrim{z-index:999;position:fixed;inset:0}.left-panel-add-row{width:100%;height:var(--add-row-height);text-align:left;color:var(--text-muted);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;align-items:center;padding:0 12px;display:flex}.left-panel-add-row:hover{color:var(--text-primary);background:var(--hover)}.left-panel-add-section{border-top:1px solid var(--border)}.display-segmented{border:1px solid var(--border-strong);border-radius:6px;margin:2px 14px 8px;display:inline-flex;overflow:hidden}.display-segmented button{color:var(--text-secondary);font-size:var(--fs-meta);font-weight:600;font-family:var(--font-body);cursor:pointer;background:0 0;border:none;padding:5px 14px}.display-segmented button.on{background:var(--accent-primary);color:var(--on-accent)}.dropdown-menu.vm{border-radius:10px;grid-template-columns:196px 1fr;width:min(780px,100vw - 16px);padding:0;display:grid;overflow:hidden}.dropdown-menu.vm.is-team{grid-template-columns:1fr;width:300px}.vm-eyebrow{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);font-weight:700}.vm-views{background:var(--bg-surface-2);border-right:1px solid var(--border);flex-direction:column;gap:2px;min-width:0;padding:12px 8px 10px;display:flex}[data-theme=light] .vm-views{background:#f3f4f5}.vm-views>.vm-eyebrow{margin:2px 0 6px;padding:0 8px}.vm-view{text-align:left;cursor:pointer;width:100%;font-family:var(--font-body);background:0 0;border:none;border-radius:8px;padding:7px 8px 7px 10px;display:block;position:relative}.vm-view b{font-family:var(--font-display);font-size:var(--fs-row);color:var(--text-primary);align-items:baseline;gap:6px;font-weight:600;display:flex}.vm-view small{font-size:var(--fs-meta);color:var(--text-muted);margin-top:1px;line-height:1.35;display:block}.vm-view:hover{background:var(--hover)}.vm-view.is-on{background:var(--bg-surface);box-shadow:0 1px 2px #0000000f, 0 0 0 1px var(--border)}.vm-view.is-on b{color:var(--accent-secondary)}.vm-view.is-on:before{content:"";background:var(--accent-secondary);border-radius:2px;width:3px;position:absolute;top:9px;bottom:9px;left:0}.vm-edited{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--warning-text);font-weight:700}.vm-divider{background:var(--border);height:1px;margin:8px 6px}.vm-saved{position:relative}.vm-saved .vm-view{padding-right:26px}.vm-forget{width:20px;height:20px;color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;font-size:14px;line-height:1;position:absolute;top:6px;right:4px}.vm-saved:hover .vm-forget,.vm-forget:focus-visible{opacity:1}.vm-forget:hover{color:var(--error-bright);background:var(--hover)}.vm-save{text-align:left;border:1px dashed var(--border-strong);font-family:var(--font-body);font-size:var(--fs-meta);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;margin-top:4px;padding:6px 10px}.vm-save:hover{color:var(--text-primary);border-color:var(--accent-secondary)}.vm-name{gap:4px;margin-top:4px;display:flex}.vm-name input{border:1px solid var(--accent-secondary);background:var(--bg-surface);min-width:0;color:var(--text-primary);font-family:var(--font-body);font-size:var(--fs-meta);border-radius:6px;outline:none;flex:1;padding:5px 8px}.vm-name button{background:var(--accent-secondary);color:var(--on-secondary);font-family:var(--font-display);font-size:var(--fs-meta);cursor:pointer;border:none;border-radius:6px;padding:0 10px;font-weight:600}.vm-name button:disabled{opacity:.4;cursor:default}.vm-layers{flex-direction:column;min-width:0;padding:12px 16px 0;display:flex}.vm-layers-head{align-items:baseline;gap:6px;min-height:16px;margin:2px 0 10px;display:flex}.vm-state{font-size:var(--fs-meta);color:var(--text-muted)}.vm-head-actions{gap:10px;margin-left:auto;display:flex}.vm-head-actions button{font-family:var(--font-body);font-size:var(--fs-meta);color:var(--accent-secondary);cursor:pointer;background:0 0;border:none;padding:0}.vm-head-actions button:hover{text-decoration:underline}.vm-cols{grid-template-columns:200px 1fr;gap:0 24px;display:grid}.vm-group{margin-bottom:12px}.vm-group h4{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);margin:0 0 4px;font-weight:700}.vm-tick{font-size:var(--fs-body);color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:3px 0;display:flex}.vm-tick input{cursor:pointer;accent-color:var(--accent-secondary);margin:0}.vm-tick:has(input:not(:checked)){color:var(--text-secondary)}.vm-swatch{border-radius:2px;flex:none;width:14px;height:9px;margin-left:auto}.vm-field{margin:6px 0 2px}.vm-field>span{font-size:var(--fs-meta);color:var(--text-secondary);margin-bottom:3px;display:block}.vm-seg{background:var(--hover);border-radius:8px;gap:1px;padding:2px;display:inline-flex}.vm-seg button{font-family:var(--font-display);font-size:var(--fs-meta);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:3px 9px;font-weight:600}.vm-seg button:hover{color:var(--text-primary)}.vm-seg button.is-on{background:var(--bg-surface);color:var(--accent-secondary);box-shadow:0 1px 2px #00000014}.vm-foot{border-top:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-muted);align-items:flex-start;gap:6px;margin:4px -16px 0;padding:9px 16px 10px;line-height:1.4;display:flex}.vm-foot svg{flex:none;margin-top:1px}.toolbar .toolbar-view-chip{align-items:center;gap:6px;display:inline-flex}.toolbar-view-chip svg{flex:none}.toolbar-view-edited{opacity:.75;font-weight:400}.toolbar-view-caret{font-size:.8em}.account-chip.is-anon .account-chip-avatar{border:1px solid var(--border-strong);color:var(--text-secondary);background:0 0}.account-menu-label{font-size:var(--fs-meta);color:var(--text-muted);padding:6px 10px 2px}.account-menu-row{font-size:var(--fs-body);color:var(--text-primary);justify-content:space-between;align-items:center;gap:12px;padding:6px 10px;display:flex}.modal.plan-settings{grid-template-columns:200px minmax(0,1fr);width:min(1000px,100vw - 32px);max-width:none;height:min(760px,100vh - 32px);padding:0;display:grid;overflow:hidden}.ps-nav{background:var(--bg-surface-2);border-right:1px solid var(--border);flex-direction:column;gap:2px;min-height:0;padding:20px 12px 16px;display:flex;overflow:auto}.ps-nav h2{margin:0 8px 4px}.ps-nav .plan-settings-lede{margin:0 8px 14px}.ps-nav-item{text-align:left;width:100%;color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-body);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:7px 10px;display:block}.ps-nav-item:hover{background:var(--hover);color:var(--text-primary)}.ps-nav-item.is-on{background:var(--bg-surface);color:var(--accent-secondary);box-shadow:inset 2px 0 0 var(--accent-secondary);font-weight:600}.ps-nav-foot{font-size:var(--fs-meta);color:var(--text-muted);margin:auto 8px 0;padding-top:14px;line-height:1.5}.ps-main{flex-direction:column;min-width:0;min-height:0;display:flex}.ps-head{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:20px 24px 12px;display:flex}.ps-head h2{margin:0}.ps-head span{font-size:var(--fs-meta);color:var(--text-muted)}.ps-content{flex:1;min-height:0;padding:16px 24px 20px;overflow:auto}.ps-actions{border-top:1px solid var(--border);margin:0;padding:12px 24px}.ps-section-body{flex-direction:column;gap:12px;display:flex}.ps-section-body.plan-settings-grid{display:grid}.ps-lede{font-size:var(--fs-meta);color:var(--text-secondary);margin:0;line-height:1.55}.ps-section-body .phase-types-list{max-height:none;margin:0;overflow:visible}.ps-section-body .phase-types-footer{margin-top:0}.wl-section h3.ps-subhead{margin-top:10px}.plan-settings-lede{font-size:var(--fs-meta);color:var(--text-muted);margin:0 0 16px;line-height:1.5}.plan-settings-grid{grid-template-columns:110px 1fr;align-items:baseline;gap:14px 12px;display:grid}.plan-settings-key{font-size:var(--fs-meta);color:var(--text-secondary)}.plan-settings-range{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.plan-settings-to{font-size:var(--fs-meta);color:var(--text-muted)}.plan-settings-step{align-items:center;gap:4px;display:inline-flex}.plan-settings-step b{text-align:center;min-width:64px;font-family:var(--font-display);font-size:var(--fs-body);color:var(--text-primary);font-weight:600}.plan-settings-step button{border:1px solid var(--border);width:22px;height:22px;color:var(--text-secondary);font-size:var(--fs-body);cursor:pointer;background:0 0;border-radius:6px;padding:0;line-height:1}.plan-settings-step button:hover:not(:disabled){color:var(--text-primary);background:var(--hover)}.plan-settings-step button:disabled{opacity:.35;cursor:default}.plan-settings-types{min-width:0;font-size:var(--fs-body);color:var(--text-primary);align-items:baseline;gap:8px;display:flex}.plan-settings-types>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.plan-settings-link{font-family:var(--font-body);font-size:var(--fs-body);color:var(--accent-secondary);cursor:pointer;background:0 0;border:none;flex:none;padding:0}.plan-settings-link:hover{text-decoration:underline}.modal .plan-settings-select{width:auto;min-width:160px;margin-bottom:4px}.plan-settings-note{font-size:var(--fs-meta);color:var(--text-muted);margin:0;line-height:1.5}.timeline-end-handle{border:1px dashed var(--border-strong);background:var(--bg-header);height:18px;color:var(--text-muted);font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);white-space:nowrap;cursor:pointer;opacity:.7;z-index:2;border-radius:999px;padding:0 7px;font-weight:700;position:absolute;top:26px}.timeline-end-handle.is-end{transform:translate(-100%)}.timeline-end-handle:hover{opacity:1;color:var(--accent-secondary);border-color:var(--accent-secondary);border-style:solid}.toolbar button{border:1px solid var(--border);background:var(--hover);color:var(--text-header);font-size:var(--fs-meta);font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap;border-radius:999px;padding:5px 13px;transition:background .12s,border-color .12s}.toolbar button:hover{background:var(--hover-strong);border-color:var(--border-strong)}.toolbar button:disabled{opacity:.4;cursor:default}.toolbar-spacer{flex:1}.toolbar-divider{background:var(--border);flex-shrink:0;width:1px;height:20px}.gantt-container{flex:1;display:flex;position:relative;overflow:hidden}.timeline-center{overflow:hidden}.gantt-container.is-comparing,.gantt-container.is-people-tall{--row-height:68px}.toolbar-workspace-switch{flex-shrink:0;gap:2px;margin-left:8px;display:inline-flex}.toolbar-workspace-switch button{color:var(--text-secondary);font-family:var(--font-display);font-size:var(--fs-body);background:0 0;border:none;border-radius:999px;padding:5px 14px;font-weight:600}.toolbar-workspace-switch button:hover{background:var(--hover);color:var(--text-primary)}.toolbar-workspace-switch button.is-on{background:var(--accent-secondary);color:var(--on-secondary)}[data-theme=dark] .toolbar-workspace-switch button.is-on{color:#06282c}.workspace-col{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}.workspace-col>.gantt-container{flex:1;min-height:0}.team-pane{background:var(--bg-app);flex-direction:column;flex:1;min-height:0;display:flex}.team-pane>*{flex:1;min-height:0}.team-pane>.alloc-matrix.is-inline{height:auto}.team-strip{background:var(--bg-surface);border-bottom:1px solid var(--border);flex:none}.team-strip .facet-bar{border-bottom:1px solid var(--border)}.team-tabs{background:var(--bg-header);align-items:center;gap:4px;padding:6px 12px;display:flex}.team-tab{color:var(--text-secondary);font-family:var(--font-display);font-size:var(--fs-row);background:0 0;border:none;border-radius:8px;padding:5px 12px;font-weight:600}.team-tab:hover{background:var(--hover);color:var(--text-primary)}.team-tab.is-active{color:var(--accent-secondary);background:var(--hover)}.team-summary{font-size:var(--fs-meta);color:var(--text-secondary);white-space:nowrap;gap:14px;margin-left:auto;margin-right:10px;display:flex}.team-summary .is-warn{color:var(--warning-text)}.team-summary .is-bad{color:var(--error-bright)}.team-summary-link{font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.team-summary-link:hover{text-decoration:underline}.team-notice{font-size:var(--fs-meta);color:var(--warning-text);background:var(--bg-header);border-top:1px solid var(--border);padding:5px 14px}.team-notice .team-summary-link{color:inherit;text-decoration:underline}.import-sheet-modal{width:min(640px,100vw - 32px);max-width:640px;max-height:calc(100vh - 48px);overflow:auto}.import-drop{border:1px dashed var(--border-strong);color:var(--text-secondary);font-size:var(--fs-meta);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.import-drop.is-over{border-color:var(--accent-secondary);background:var(--hover)}.import-drop.is-done{border-style:solid}.import-drop b{color:var(--text-primary)}.import-hint{color:var(--text-muted);font-size:var(--fs-meta);margin:10px 0 0;line-height:1.5}.import-hint b{color:var(--text-secondary);font-weight:600}.import-error{background:var(--error-bg,#e5484d1f);color:var(--error-bright);font-size:var(--fs-meta);border-radius:6px;margin-top:10px;padding:8px 12px}.import-warn{color:var(--warning-text);font-size:var(--fs-meta);background:#cb66001f;border-radius:6px;padding:8px 12px}.import-warn ul{margin:4px 0 0;padding-left:16px}.import-warn select{font:inherit}.import-plan{font-size:var(--fs-meta);flex-direction:column;gap:10px;margin-top:14px;display:flex}.import-plan section{border-top:1px solid var(--border);padding-top:8px}.import-plan h3{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-muted);margin:0 0 4px;font-weight:700}.import-plan h3 .import-muted{text-transform:none;letter-spacing:0;font-family:var(--font-body);font-weight:400}.import-plan p{margin:0}.import-muted{color:var(--text-muted)}.import-toggle{color:var(--accent-secondary);cursor:pointer;font:inherit;background:0 0;border:none;padding:0}.import-toggle:hover{text-decoration:underline}.import-toggle:disabled{color:var(--text-muted);cursor:default;text-decoration:none}.import-list{max-height:160px;margin:6px 0 0;padding-left:16px;overflow:auto}.import-list li{padding:1px 0}.import-links{max-height:220px;margin:0;padding:0;list-style:none;overflow:hidden auto}.import-links li{padding:2px 0}.import-links li.is-already{opacity:.6}.import-links label{cursor:pointer;flex-wrap:wrap;align-items:center;gap:6px;display:flex}.import-links input{margin:0 2px 0 0}.import-arrow{color:var(--text-muted)}.import-sheet-modal label{text-transform:none;letter-spacing:0;font-size:var(--fs-meta);color:var(--text-primary);margin:0;font-weight:400;display:flex}.import-sheet-modal input[type=checkbox]{flex-shrink:0;width:auto;margin:0 2px 0 0;padding:0}.import-links label{align-items:baseline}.import-links label input[type=checkbox]{position:relative;top:1px}.import-roles{border-collapse:collapse;width:100%;margin-top:6px}.import-roles th{text-align:left;color:var(--text-muted);padding:2px 10px 2px 0;font-weight:600}.import-roles td{vertical-align:top;padding:3px 10px 3px 0}.import-roles th:nth-child(2),.import-roles td:nth-child(2){text-align:right}.import-sheet-modal .import-roles select{width:auto;max-width:100%;font-size:var(--fs-meta);margin:0;padding:1px 4px}.import-roles tr.is-missing select{border-color:var(--warning)}.import-roles .import-add-role{align-items:center;gap:8px;margin-top:4px;display:flex}.import-sheet-modal .import-roles .import-add-role input{width:16em;font-size:var(--fs-meta);margin:0;padding:1px 6px}.import-roles-names{color:var(--text-muted);padding-bottom:6px}.import-blocked{font-size:var(--fs-meta);align-self:center;margin-right:auto}.import-check{cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.import-check input{margin:0}.import-plan code,.import-links code{font-family:ui-monospace,Consolas,Cascadia Mono,monospace;font-weight:700}.people-view-row{height:var(--row-height);cursor:pointer;align-items:center;display:flex}.people-view-row:hover{background:var(--hover)!important}.people-view-row.is-unavailable{opacity:.55}.people-view-handle{flex:none;width:20px}.people-view-who{flex:1;align-items:center;gap:8px;min-width:0;padding-right:8px;display:flex}.people-view-names{min-width:0}.people-view-name{font-size:var(--fs-row);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.people-view-row.is-oversight .people-view-name{color:var(--text-secondary)}.people-view-role{font-size:var(--fs-meta);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.people-view-status{flex:1;justify-content:flex-end;align-items:center;gap:8px;min-width:0;padding-right:10px;display:flex}.people-view-chip,.people-view-runway{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;max-width:calc(100% - 76px);font-weight:700;line-height:15px;overflow:hidden}.people-view-chip{border:1px solid var(--border-strong);color:var(--text-secondary);border-radius:999px;padding:0 6px}.people-view-chip.is-leaves{color:var(--error-bright);border-color:var(--error-bright)}.people-view-chip.is-running{color:var(--warning-text);border-color:var(--warning-text)}.people-view-chip.is-idle{background:var(--bg-surface-2)}.people-view-chip.is-shared{color:var(--accent-secondary);border-color:var(--accent-secondary)}.people-view-chip.is-oversight{color:var(--text-muted);border-style:dashed}.people-view-chip.is-hire{color:var(--accent-secondary);border-style:dashed}.people-view-chip.is-external{color:var(--text-muted)}.people-view-runway{font-family:var(--font-body);font-weight:400;font-size:var(--fs-meta);color:var(--text-secondary);letter-spacing:0}.people-view-runway.is-warn{color:var(--warning-text)}.people-view-runway.is-bad{color:var(--error-bright)}.people-band-header .section-header-label{flex:none}.people-band-counts{font-family:var(--font-body);font-weight:400;font-size:var(--fs-meta);letter-spacing:0;text-transform:none;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-left:10px;overflow:hidden}.people-view-legend{color:var(--text-muted)}.people-load-header{border-top:1px solid var(--border);background:var(--bg-surface);align-items:center;gap:8px;height:30px;padding:0 10px 0 22px;display:flex}.people-load-header .section-header-label{font-size:var(--fs-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-secondary)}.people-load-row{border-bottom:1px solid var(--border);height:32px;font-size:var(--fs-meta);align-items:center;gap:8px;padding:0 10px 0 22px;display:flex}.people-load-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.people-load-now{color:var(--text-secondary);white-space:nowrap}.left-panel{border-right:2px solid var(--border);background:var(--bg-row-even);scrollbar-width:none;flex-shrink:0;overflow:hidden auto}.left-panel::-webkit-scrollbar{display:none}.left-panel-header{height:var(--header-height);background:var(--bg-header);z-index:10;display:flex;position:sticky;top:0}.left-panel-header-cell{min-width:0;color:var(--text-muted);font-size:var(--fs-meta);letter-spacing:var(--tracking-badge);white-space:nowrap;text-overflow:ellipsis;justify-content:flex-start;align-items:flex-end;padding:0 8px 6px;display:flex;overflow:hidden}.left-panel-week-row{height:var(--week-label-height);background:var(--bg-header);top:var(--header-height);z-index:10;align-items:center;gap:8px;padding:0 10px 0 26px;display:flex;position:sticky}.left-panel-week-row.is-filtered{background:color-mix(in srgb, var(--accent-secondary) 12%, var(--bg-header))}.left-panel-filter-status,.left-panel-filter-clear{font-size:var(--fs-meta);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;line-height:1}.left-panel-filter-status{color:var(--text-primary);text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.left-panel-filter-clear{color:var(--text-secondary);flex-shrink:0;margin-left:auto}.left-panel-filter-status:hover,.left-panel-filter-clear:hover{color:var(--text-primary);text-decoration:underline}.left-panel-change-legend{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-meta);color:var(--text-secondary);line-height:16px;display:none;overflow:hidden}.gantt-container.is-comparing .left-panel-week-row>.left-panel-change-legend{visibility:visible;display:block}.swimlane-row{height:var(--row-height);border-bottom:1px solid var(--grid-weekly);display:flex}.swimlane-row:nth-child(odd){background:var(--bg-row-even)}.swimlane-row:nth-child(2n){background:var(--bg-row-odd)}.swimlane-row:hover{box-shadow:inset 0 0 0 999px var(--hover)}.swimlane-project{width:var(--project-col);font-size:var(--fs-label);border-right:1px solid var(--border);cursor:text;align-items:stretch;padding:4px 8px;font-weight:700;display:flex;position:relative;overflow:hidden}.swimlane-project textarea{width:100%;height:100%;font-size:var(--fs-label);font-weight:700;font-family:var(--font-body);color:var(--text-primary);resize:none;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;scrollbar-width:none;background:0 0;border:none;outline:none;line-height:1.3;overflow-y:auto}.swimlane-features{width:var(--features-col);font-size:var(--fs-badge);color:var(--text-primary);border-right:1px solid var(--border);cursor:pointer;flex-direction:column;align-items:stretch;padding:2px 6px;transition:background .12s;display:flex;position:relative;overflow:hidden}.swimlane-features:hover,.swimlane-features:focus-visible{background:var(--hover)}.swimlane-features:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:-2px}.swimlane-features-count{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;flex-shrink:0;margin-bottom:1px;font-weight:700;line-height:13px;overflow:hidden}.swimlane-features-count .swimlane-features-sep{color:var(--text-muted)}.swimlane-features-list{pointer-events:none;flex:1;min-height:0;margin:0;padding:0 0 0 10px;list-style:none;overflow:hidden}.swimlane-features-list li{white-space:nowrap;text-overflow:ellipsis;padding-left:10px;line-height:14px;position:relative;overflow:hidden}.swimlane-features-list li:before{content:"";background:var(--accent-secondary);border-radius:50%;width:4px;height:4px;position:absolute;top:5px;left:0}.swimlane-features-list li.is-hidden{visibility:hidden}.swimlane-features-list.has-more{padding-right:26px}.swimlane-features-note{min-height:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;flex:1;font-style:italic;line-height:14px;overflow:hidden}.swimlane-features-more{color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border);pointer-events:none;z-index:1;border-radius:8px;padding:0 5px;line-height:13px;position:absolute;bottom:3px;right:5px}.swimlane-features textarea{width:100%;height:100%;font-size:var(--fs-badge);font-family:var(--font-body);color:var(--text-primary);resize:none;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;scrollbar-width:none;background:0 0;border:none;outline:none;line-height:1.3;overflow-y:auto}.timeline-wrapper{flex:1;position:relative;overflow:auto}.timeline-wrapper,.rail-panel-body,.notes-panel-list,.people-roster,.people-detail,.env-panel-body,.phase-types-list,.project-filter-list,.link-picker-list,.changes-panel,.changes-list{scrollbar-width:thin;scrollbar-color:var(--grid-monthly) transparent}.timeline-wrapper::-webkit-scrollbar{width:8px;height:8px}.rail-panel-body::-webkit-scrollbar{width:8px;height:8px}.notes-panel-list::-webkit-scrollbar{width:8px;height:8px}.people-roster::-webkit-scrollbar{width:8px;height:8px}.people-detail::-webkit-scrollbar{width:8px;height:8px}.env-panel-body::-webkit-scrollbar{width:8px;height:8px}.phase-types-list::-webkit-scrollbar{width:8px;height:8px}.project-filter-list::-webkit-scrollbar{width:8px;height:8px}.link-picker-list::-webkit-scrollbar{width:8px;height:8px}.changes-panel::-webkit-scrollbar{width:8px;height:8px}.changes-list::-webkit-scrollbar{width:8px;height:8px}.timeline-wrapper::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.rail-panel-body::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.notes-panel-list::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.people-roster::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.people-detail::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.env-panel-body::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.phase-types-list::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.project-filter-list::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.link-picker-list::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.changes-panel::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.changes-list::-webkit-scrollbar-thumb{background:var(--grid-monthly);border-radius:4px}.section-header{height:var(--section-header-height);background:var(--bg-app);border-bottom:2px solid color-mix(in srgb, var(--section-accent,var(--border-strong)) 55%, transparent);color:var(--text-primary);cursor:default;-webkit-user-select:none;user-select:none;box-sizing:border-box;align-items:center;min-width:0;padding:0 10px 0 6px;display:flex}.section-header:hover,.section-header.is-hovered{background:linear-gradient(var(--hover), var(--hover)), var(--bg-app)}.section-header.chapter{flex-direction:column;justify-content:center;align-items:stretch;gap:1px}.left-panel .section-header.chapter:not(.is-folded),.left-panel .people-band-header:not(.is-folded){top:calc(var(--header-height) + var(--week-label-height) + var(--periods-row-height));z-index:6;position:sticky}.chapter-top{align-items:center;min-width:0;display:flex}.chapter-dot{background:var(--section-accent,var(--text-muted));border-radius:3px;flex:none;width:10px;height:10px;margin-right:8px}.section-fold{color:var(--text-secondary);cursor:pointer;font-size:var(--fs-label);background:0 0;border:none;border-radius:4px;flex-shrink:0;width:18px;height:20px;margin:0 4px 0 0;padding:0;line-height:1}.section-fold:hover,.section-fold:focus-visible{color:var(--text-primary);background:var(--hover)}.section-header-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-display);font-size:var(--fs-title);letter-spacing:0;text-transform:none;color:var(--text-primary);flex:0 auto;font-weight:700;overflow:hidden}.section-header-count{text-overflow:ellipsis;min-width:0;font-family:var(--font-body);font-size:var(--fs-body);color:var(--text-muted);white-space:nowrap;flex:0 100 auto;margin-left:8px;font-weight:400;overflow:hidden}.chapter-rename{border:1px solid var(--accent-secondary);background:var(--bg-surface);min-width:0;color:var(--text-primary);font-family:var(--font-display);font-size:var(--fs-title);border-radius:4px;outline:none;flex:0 220px;padding:1px 6px;font-weight:700}.chapter-facts{min-height:15px;font-family:var(--font-body);font-size:var(--fs-meta);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;opacity:0;padding-left:40px;transition:opacity .15s;overflow:hidden}.section-header.is-folded .chapter-facts,.section-header.is-hovered .chapter-facts,.section-header:hover .chapter-facts,.section-header:focus-within .chapter-facts{opacity:1}.chapter-facts b{color:var(--text-primary);font-weight:600}.chapter-facts .is-later,.chapter-facts .is-later b{color:var(--error-bright)}.chapter-facts .is-conflict,.chapter-facts .is-conflict b{color:var(--contention)}.chapter-pin{z-index:6;pointer-events:auto;position:absolute;left:0}.section-header-meta{min-width:0;font-family:var(--font-body);font-size:var(--fs-meta);letter-spacing:normal;text-transform:none;color:var(--text-muted);white-space:nowrap;flex:0 100 auto;align-items:center;gap:6px;margin-left:10px;font-weight:400;display:inline-flex;overflow:hidden}.section-rollup-chip{background:var(--hover);color:var(--text-secondary);font-family:var(--font-display);font-size:var(--fs-badge);border-radius:999px;align-items:center;gap:4px;padding:1px 7px 1px 6px;font-weight:700;display:inline-flex}.section-rollup-chip:before{content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px}.section-rollup-chip.is-conflict:before{background:var(--contention)}.section-rollup-chip.is-later:before{background:var(--warning)}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);min-width:360px;max-width:480px;padding:24px}.modal h2{font-size:var(--fs-detail);color:var(--text-primary);margin-bottom:16px;font-weight:600}.modal label{color:var(--text-secondary);margin-bottom:4px;display:block}.modal input,.modal select,.modal textarea{border:1px solid var(--border);width:100%;font-size:var(--fs-body);font-family:var(--font-body);background:var(--bg-surface);color:var(--text-primary);border-radius:4px;margin-bottom:12px;padding:6px 8px}.modal textarea{resize:vertical;height:60px}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--accent-secondary);outline:none}.modal-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.modal-cancel-link{color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;padding:4px 6px}.modal-cancel-link:hover{color:var(--text-primary);text-decoration:underline}.context-menu{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);z-index:2000;border-radius:8px;min-width:160px;max-height:calc(100vh - 8px);padding:4px 0;position:fixed;overflow-y:auto}.context-menu-item{font-size:var(--fs-meta);cursor:pointer;align-items:center;gap:8px;padding:6px 12px;display:flex}.context-menu-item:hover{background:var(--hover)}.context-menu-divider{background:var(--border);height:1px;margin:4px 0}.context-menu-label{padding:6px 12px 2px}.swimlane-color-swatches{flex-wrap:wrap;gap:6px;max-width:180px;padding:4px 12px 6px;display:flex}.swimlane-color-swatch{border:1px solid var(--border);cursor:pointer;border-radius:50%;width:18px;height:18px;padding:0;transition:transform 80ms}.swimlane-color-swatch:hover{transform:scale(1.15)}.swimlane-color-swatch.is-active{outline:2px solid var(--text-primary);outline-offset:1px}.swimlane-color-clear{background:linear-gradient(to top left, transparent calc(50% - 1px), var(--error-bright,#e0556b) calc(50% - 1px), var(--error-bright,#e0556b) calc(50% + 1px), transparent calc(50% + 1px)), var(--bg-surface)}.dropdown-menu{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);z-index:2000;min-width:200px;font-family:var(--font-body);border-radius:8px;padding:6px 0;position:fixed}.menu-item-action{font-size:var(--fs-body);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-primary);align-items:center;gap:8px;padding:6px 12px;display:flex}.menu-item-action:hover{background:var(--hover)}.menu-item-action[aria-disabled=true]{opacity:.4;cursor:default}.menu-item-shortcut{font-size:var(--fs-meta);color:var(--text-muted);margin-left:auto;font-family:ui-monospace,Cascadia Mono,Consolas,Menlo,monospace}.view-menu-group-label{color:var(--text-muted);padding:4px 12px 2px}.view-menu-item{font-size:var(--fs-body);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-primary);align-items:center;gap:8px;padding:6px 12px;display:flex}.view-menu-item:hover{background:var(--hover)}.view-menu-item input[type=checkbox],.view-menu-item input[type=radio]{cursor:pointer;accent-color:var(--accent-primary);margin:0}.view-menu-divider{background:var(--border);height:1px;margin:6px 0}.view-menu-swatch{border:1px solid #0003;border-radius:2px;flex-shrink:0;width:18px;height:12px;display:inline-block}.view-menu-swatch-dash{background-image:repeating-linear-gradient(to bottom, var(--error-bright) 0 3px, transparent 3px 6px);opacity:.6;background-position:50%;background-repeat:no-repeat;background-size:1px 100%;flex-shrink:0;width:18px;height:12px;display:inline-block}.view-menu-swatch-blank{width:34px;font-size:var(--fs-badge);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.color-swatch{border:1px solid #0003;border-radius:3px;width:14px;height:14px;display:inline-block}.row-hover{fill:#0000;pointer-events:all}.row-hover:hover{fill:color-mix(in srgb, var(--accent-secondary) 8%, transparent)}.resize-handle{cursor:col-resize;background:var(--border);z-index:20;flex-shrink:0;width:1px;position:relative}.resize-handle:before{content:"";cursor:col-resize;width:7px;position:absolute;top:0;bottom:0;left:-3px}.resize-handle:hover{background:var(--today-line)}.resize-handle:after{content:"";background:var(--grid-monthly);opacity:.5;pointer-events:none;border-radius:1px;width:2px;height:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.resize-handle:hover:after{background:var(--today-line);opacity:1}.collapse-btn{border:1px solid var(--border);background:var(--bg-row-even);width:14px;height:28px;color:var(--text-secondary);font-size:var(--fs-badge);cursor:pointer;z-index:25;opacity:0;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity .15s,background .15s,box-shadow .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 1px 3px #0000001a}.resize-handle:hover .collapse-btn,.collapse-btn:focus-visible{opacity:1}.collapse-btn:hover{background:var(--bg-row-odd);color:var(--text-primary);box-shadow:0 1px 5px #0000002e}.collapse-btn-left{border-radius:4px 0 0 4px;left:-7px}.swimlane-drag-handle{cursor:grab;width:20px;color:var(--grid-monthly);font-size:var(--fs-label);-webkit-user-select:none;user-select:none;border-right:1px solid var(--border);flex-shrink:0;justify-content:center;align-items:center;display:flex}.swimlane-drag-handle:active{cursor:grabbing;color:var(--text-primary)}.swimlane-row:hover .swimlane-drag-handle{color:var(--text-secondary)}.phase-type-picker{background:var(--bg-surface);border:1px solid var(--border);z-index:2001;border-radius:10px;flex-direction:column;gap:9px;width:max-content;max-width:344px;padding:9px 11px 10px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #0000004d}.phase-type-picker-group{flex-direction:column;gap:6px;display:flex}.phase-type-picker-env-group{border-top:1px solid var(--border);padding-top:9px}.phase-type-picker-title{color:var(--text-muted);line-height:1}.phase-type-picker-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.phase-type-chip{cursor:pointer;white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;height:21px;padding:0 9px;transition:transform .1s,box-shadow .1s;display:inline-flex}.phase-type-chip:hover{transform:translateY(-1px);box-shadow:0 2px 7px #00000052}.phase-type-chip-ghost{border-style:dashed;border-color:var(--border-strong);color:var(--text-secondary);background:0 0}.phase-type-chip-ghost:hover{border-color:var(--text-primary);color:var(--text-primary);background:var(--hover);box-shadow:none}.env-pill-pick{cursor:pointer;white-space:nowrap;border:1px solid #0003;border-radius:999px;justify-content:center;align-items:center;height:21px;padding:0 9px;transition:transform .1s,box-shadow .1s;display:inline-flex}.env-pill-pick:hover{transform:translateY(-1px);box-shadow:0 2px 7px #00000052}.env-pill-pick.active{box-shadow:0 0 0 2px var(--accent-primary);outline:1px solid var(--text-header);outline-offset:-3px}.env-pill-pick-none{background:var(--bg-surface);color:var(--text-secondary);border-color:var(--border-strong)}.env-pill-pick-none.active{background:var(--bg-surface-2)}.bar-env-popover{z-index:2010;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);min-width:180px;font-family:var(--font-body);border-radius:8px;padding:4px;position:fixed}.bar-env-popover-title{color:var(--text-secondary);padding:4px 8px 6px}.bar-env-popover-item{text-align:left;width:100%;font-size:var(--fs-body);color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;padding:6px 8px;display:flex}.bar-env-popover-item:hover{background:var(--hover)}.bar-env-popover-item.active{background:var(--hover);font-weight:700}.bar-env-popover-dot{border-radius:3px;flex-shrink:0;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0000002e}.bar-env-popover-dot-none{border:1px dashed var(--border-strong);box-shadow:none;background:0 0}.bar-env-popover-name{flex:1}.bar-env-popover-check{color:var(--text-primary);font-weight:700}.bar-env-popover-divider{background:var(--border);height:1px;margin:4px 0}.bar-env-popover-link{font-size:var(--fs-meta);color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;width:100%;padding:4px 8px}.bar-env-popover-link:hover{text-decoration:underline}.people-picker-popover{min-width:210px;max-height:60vh;overflow-y:auto}.people-picker-group-label{color:var(--text-muted);padding:6px 8px 2px}.people-picker-meta{font-size:var(--fs-meta);color:var(--text-secondary);font-weight:400}.people-picker-empty{font-size:var(--fs-meta);color:var(--text-secondary);padding:8px}.people-picker-team-dot,.people-panel-team-dot{border-radius:3px!important}.people-panel-person-meta{font-size:var(--fs-meta);align-items:center;gap:8px;padding:0 14px 10px;display:flex}.people-panel-person-meta label{color:var(--text-secondary)}.people-panel-person-meta input,.people-panel-person-meta select{font-size:var(--fs-meta);background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;flex:1;min-width:0;padding:3px 6px}.people-panel-person-meta input:focus,.people-panel-person-meta select:focus{border-color:var(--accent-secondary);outline:none}.people-panel-role em{color:var(--text-muted);font-style:italic}.people-panel-members{flex-wrap:wrap;gap:6px;padding:2px 0;display:flex}.people-panel-member-chip{font-size:var(--fs-meta);color:var(--text-primary);background:var(--hover);border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:center;gap:5px;padding:2px 9px;display:inline-flex}.people-panel-member-chip:hover{border-color:var(--accent-secondary)}.swimlane-owner-dot{border:1px solid #ffffffa6;border-radius:50%;flex-shrink:0;width:8px;height:8px}.swimlane-owner-dot.is-team{border-radius:2px}.swimlane-owner-dot.is-oversight{opacity:.55}.swimlane-who{height:16px;color:var(--text-secondary);font-family:var(--font-display);font-size:var(--fs-badge);cursor:pointer;z-index:2;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding:0 4px;font-weight:700;line-height:16px;display:inline-flex;position:absolute;bottom:2px;right:3px}.swimlane-who:hover,.swimlane-who.is-open{background:var(--hover);color:var(--text-primary)}.swimlane-who.is-inline{vertical-align:middle;margin-left:6px;position:static}.swimlane-who-dot{border-radius:2px;flex-shrink:0;width:9px;height:9px;display:inline-block;box-shadow:inset 0 0 0 1px #0000002e}.swimlane-who.is-none{color:var(--text-muted)}.swimlane-who.is-none .swimlane-who-dot{border:1px dashed var(--border-strong);box-shadow:none;background:0 0}.swimlane-who-shared{color:var(--accent-secondary)}.swimlane-who-flag{background:var(--warning-text);border-radius:50%;width:7px;height:7px;display:inline-block}.swimlane-who-actual{color:var(--text-muted);white-space:nowrap}.swimlane-item-badge,.swimlane-slip-chip{top:3px;bottom:auto}.swimlane-project .swimlane-project-editor{padding-right:26px}.swimlane-project{border-left:3px solid var(--lane-accent,var(--border-strong));align-items:center;padding-left:5px}.swimlane-project-stack{flex-direction:column;flex:1;justify-content:center;gap:1px;min-width:0;padding-right:30px;display:flex}.swimlane-project-name{align-items:center;min-width:0;display:flex}.swimlane-project .swimlane-project-editor{min-width:0;height:auto;font-family:var(--font-display);letter-spacing:-.01em;flex:1;padding-right:0;font-size:12px;font-weight:600;line-height:1.2}.swimlane-project .swimlane-project-editor:not(:focus){-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.swimlane-icon{flex-shrink:0;margin-right:6px;font-size:15px;line-height:1}.swimlane-item-badge,.swimlane-slip-chip{top:50%;bottom:auto;transform:translateY(-50%)}.swimlane-mix{cursor:pointer;text-align:left;max-width:100%;height:14px;font-family:var(--font-body);font-size:var(--fs-badge);color:var(--text-muted);white-space:nowrap;background:0 0;border:none;align-items:center;gap:6px;padding:0;line-height:14px;display:inline-flex;overflow:hidden}.swimlane-mix:hover .swimlane-mix-label,.swimlane-mix.is-open .swimlane-mix-label{color:var(--text-primary);-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.swimlane-mix b{color:var(--text-primary);font-weight:600}.swimlane-mix.is-none{opacity:.7;font-style:italic}.swimlane-row:hover .swimlane-mix.is-none{opacity:1}.swimlane-mix-bar{border-radius:3px;flex-shrink:0;gap:1px;width:56px;height:5px;display:flex;overflow:hidden}.swimlane-mix-bar i{min-width:2px;height:100%;display:block}.swimlane-mix-label{text-overflow:ellipsis;overflow:hidden}.left-panel-features-head{justify-content:space-between;align-items:flex-end;gap:6px;display:flex}.left-panel-features-head .left-panel-fold-features{padding-bottom:0;line-height:14px}.left-panel-fold-features,.left-panel-unfold-features{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 4px;font-size:16px;line-height:1}.left-panel-unfold-features{text-align:center;flex:0 0 22px;width:22px}.left-panel-fold-features:hover,.left-panel-unfold-features:hover{background:var(--hover);color:var(--text-primary)}.icon-picker-grid{grid-template-columns:repeat(8,30px);gap:2px;padding:2px 4px 6px;display:grid}.icon-picker-grid button{cursor:pointer;background:0 0;border:none;border-radius:4px;height:30px;font-size:17px;line-height:1}.icon-picker-grid button:hover{background:var(--hover)}.icon-picker-grid button.is-on{background:var(--hover);box-shadow:inset 0 0 0 1px var(--accent-secondary)}.icon-picker-typed{align-items:center;gap:6px;padding:0 4px 4px;display:flex}.icon-picker-typed input{border:1px solid var(--border);background:var(--bg-app);min-width:0;color:var(--text-primary);font-size:var(--fs-meta);border-radius:6px;flex:1;padding:4px 8px}.icon-picker-typed .bar-env-popover-link{width:auto}.alloc-card{z-index:2010;background:var(--bg-surface);border:1px solid var(--border);width:380px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);box-shadow:var(--card-shadow);font-family:var(--font-body);font-size:var(--fs-meta);color:var(--text-primary);border-radius:10px;padding:10px 14px 12px;position:fixed;overflow:auto}.alloc-card-head{align-items:center;gap:8px;margin-bottom:4px;display:flex}.alloc-card-title{font-weight:700;font-size:var(--fs-label);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.alloc-card-dominant{color:var(--text-muted);white-space:nowrap}.alloc-card-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:16px;line-height:1}.alloc-card-close:hover{background:var(--hover);color:var(--text-primary)}.alloc-card-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;display:flex}.alloc-card-k{color:var(--text-muted);font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;white-space:nowrap;font-weight:700}.alloc-card-v{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.alloc-card-muted{color:var(--text-muted);text-transform:none;letter-spacing:0;font-weight:400}.alloc-card-team{align-items:center;gap:5px;display:inline-flex}.alloc-card-team i,.alloc-card-pill i{border-radius:2px;width:10px;height:10px;display:inline-block;box-shadow:inset 0 0 0 1px #0000002e}.alloc-card-link{color:var(--accent-secondary);cursor:pointer;font-size:var(--fs-meta);white-space:nowrap;background:0 0;border:none;padding:0}.alloc-card-link:hover{text-decoration:underline}.alloc-card-teams{flex-wrap:wrap;gap:6px;padding:0 0 8px;display:flex}.alloc-card-pill{border:1px solid var(--border);color:var(--text-secondary);font-size:var(--fs-meta);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;display:inline-flex}.alloc-card-pill:hover{border-color:var(--accent-secondary);color:var(--text-primary)}.alloc-card-pill.is-on{background:var(--hover);color:var(--text-primary);border-color:var(--border-strong);font-weight:700}.alloc-card-people{margin:0;padding:0;list-style:none}.alloc-card-people li{align-items:center;gap:8px;min-width:0;padding:4px 0;display:flex}.alloc-card-people li.is-oversight{opacity:.65}.alloc-card-people li.is-away{opacity:.6}.alloc-card-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:inset 0 0 0 1px #0000002e}.alloc-card-dot.is-team{border-radius:2px}.alloc-card-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.alloc-card-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;min-width:0;margin-left:auto;overflow:hidden}.alloc-card-prov{color:var(--text-muted)}.alloc-card-shared{color:var(--accent-secondary)}.alloc-card-x{color:var(--text-muted);cursor:pointer;text-align:center;background:0 0;border:none;border-radius:4px;flex-shrink:0;width:20px;padding:0 4px;font-size:14px;line-height:1}.alloc-card-x:hover{color:var(--error-bright);background:var(--hover)}.alloc-card-x.is-blank{cursor:default}.alloc-card-add{margin-top:6px;position:relative}.alloc-card-add input{border:1px dashed var(--border-strong);background:var(--bg-app);width:100%;color:var(--text-primary);font-size:var(--fs-meta);border-radius:6px;padding:5px 9px}.alloc-card-add input:focus{border-style:solid;border-color:var(--accent-secondary);outline:none}.alloc-card-candidates{border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;margin-top:4px;overflow:hidden}.alloc-card-candidate{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;font-size:var(--fs-meta);background:0 0;border:none;align-items:center;gap:8px;padding:5px 9px;display:flex}.alloc-card-candidate:hover,.alloc-card-candidate:first-child{background:var(--hover)}.alloc-card-nomatch{padding:4px 2px}.alloc-card-flags{color:var(--warning-text);padding:6px 0 2px}.alloc-card-code{align-items:baseline;gap:4px;display:inline-flex}.alloc-card-code code{font-family:ui-monospace,Consolas,Cascadia Mono,monospace;font-weight:700}.alloc-card-code.is-closed code{opacity:.7;text-decoration:line-through}.alloc-card-foot{color:var(--text-muted);border-top:1px solid var(--border);flex-direction:column;gap:2px;padding-top:6px;display:flex}.alloc-card-foot .is-warn{color:var(--warning-text)}.plan-feature-title.is-editable{font:inherit;color:inherit;text-align:left;cursor:text;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;flex:1;min-width:0;margin:0;padding:0;overflow:hidden}.plan-feature-title.is-editable:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.plan-feature-input{border:1px solid var(--accent-secondary);background:var(--bg-app);min-width:0;color:var(--text-primary);font:inherit;border-radius:4px;flex:1;padding:2px 6px}.plan-feature-input.is-size{flex:0 0 64px}.backlog-feature-size.is-editable{font:inherit;cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:0}.backlog-feature-size.is-editable:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.backlog-feature-size.is-unsized{color:var(--text-muted);font-style:italic}.plan-feature-x{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:0 4px;font-size:14px;line-height:1}.plan-feature-x:hover{color:var(--error-bright);background:var(--hover)}.plan-feature-x.is-armed{color:var(--error-bright);font-size:var(--fs-meta);font-weight:600}.alloc-card-gl-count{color:var(--accent-secondary);white-space:nowrap;text-decoration:none}.alloc-card-gl-count:hover{text-decoration:underline}.alloc-card-gl{font-size:var(--fs-meta);padding:0 0 6px}.alloc-card-gl-list{margin:0;padding:0;list-style:none}.alloc-card-gl-list li{align-items:center;gap:6px;min-width:0;padding:2px 0;display:flex}.alloc-card-gl-list li.is-quiet{color:var(--text-muted)}.alloc-card-glyph{text-align:center;flex-shrink:0;width:12px}.alloc-card-byname{font-size:var(--fs-badge);color:var(--text-muted)}.alloc-card-byname:hover{color:var(--accent-secondary)}.alloc-card-gl-list.is-missing li{color:var(--warning-text)}.alloc-card-allocate{color:var(--warning-text);cursor:pointer;font-size:var(--fs-meta);text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;padding:0;font-weight:600;overflow:hidden}.alloc-card-allocate:hover{text-decoration:underline}.alloc-card-gl-list.is-unmatched li{color:var(--text-muted)}.alloc-card-whois{color:var(--text-muted);white-space:nowrap;align-items:center;gap:4px;margin-left:auto;display:inline-flex}.alloc-card-whois select{border:1px solid var(--border);background:var(--bg-surface);max-width:120px;color:var(--text-primary);font-size:var(--fs-meta);border-radius:4px;padding:0 2px}.alloc-card-gl-status{color:var(--text-muted);justify-content:space-between;align-items:center;gap:8px;padding-top:4px;display:flex}.alloc-card-gl-status .is-warn{color:var(--warning-text)}.alloc-card-gl-status button:disabled{opacity:.5;cursor:default}.gitlab-link-popover{width:320px}.gitlab-link-list{border-bottom:1px solid var(--border);margin:0 0 6px;padding:0 0 6px;list-style:none}.gitlab-link-list li{min-width:0;font-size:var(--fs-meta);align-items:center;gap:6px;padding:2px 0;display:flex}.gitlab-link-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-family:ui-monospace,Consolas,Cascadia Mono,monospace;overflow:hidden}.gitlab-link-pick{font-size:var(--fs-meta);flex-direction:column;gap:6px;padding:2px 0;display:flex}.gitlab-link-picked{font-family:ui-monospace,Consolas,Cascadia Mono,monospace}.gitlab-link-label{color:var(--text-muted)}.gitlab-link-pick select{border:1px solid var(--border);background:var(--bg-app);color:var(--text-primary);font-size:var(--fs-meta);border-radius:6px;padding:4px 6px}.gitlab-link-actions{justify-content:flex-end;gap:6px;padding-top:4px;display:flex}.people-picker-empty.is-bad{color:var(--error-bright)}.gitlab-settings-modal{width:min(520px,100vw - 32px);max-width:520px}.gitlab-settings-modal .import-hint{margin:0 0 12px}.gitlab-settings-modal label.gitlab-settings-check{color:var(--text-primary);align-items:center;gap:8px;margin:0 0 12px;display:flex}.gitlab-settings-modal .gitlab-settings-check input{width:auto;margin:0}.gitlab-settings-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.gitlab-settings-status{font-size:var(--fs-meta);min-width:0}.gitlab-settings-status .is-ok{color:var(--success-text)}.gitlab-settings-status .is-bad{color:var(--error-bright)}.staffing-bar{align-items:center;gap:4px;display:inline-flex}.staffing-bar svg{display:block}.staffing-flag{background:var(--warning-text);border-radius:50%;width:7px;height:7px;display:inline-block}.timecode-picker-code{font-family:ui-monospace,Consolas,Cascadia Mono,monospace}.timecode-picker-search{border:1px solid var(--border);background:var(--bg-app);width:100%;color:var(--text-primary);font-size:var(--fs-meta);border-radius:6px;margin:2px 0 6px;padding:4px 8px}.timecode-picker-primary,.timecode-picker-make-primary{font-size:var(--fs-badge);color:var(--text-muted);white-space:nowrap;margin-right:6px}.timecode-picker-make-primary{opacity:0}.bar-env-popover-item:hover .timecode-picker-make-primary{opacity:1}.timecode-picker-make-primary:hover{color:var(--accent-secondary)}.bar-env-popover-item.is-closed .timecode-picker-code{opacity:.7;text-decoration:line-through}.facet-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex}.facet-bar-eyebrow{font-family:var(--font-display);font-size:var(--fs-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-secondary);cursor:help;margin-right:4px;font-weight:700}.facet-pill{border:1px solid var(--border);max-width:180px;color:var(--text-secondary);font-size:var(--fs-meta);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:5px;padding:2px 9px;display:inline-flex}.facet-pill:hover,.facet-pill.is-open{background:var(--hover)}.facet-pill.is-set{border-color:var(--accent-secondary);color:var(--text-primary)}.facet-pill-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.facet-pill-caret{opacity:.7;font-size:8px}.facet-clear{color:var(--text-muted);font-size:var(--fs-meta);cursor:pointer;background:0 0;border:none}.facet-clear:hover{color:var(--text-primary)}.facet-bar-count{font-size:var(--fs-meta);color:var(--text-secondary);white-space:nowrap;margin-left:auto}.facet-popover{width:280px}.facet-popover-list{max-height:300px;overflow:auto}.facet-count{font-family:var(--font-display);font-size:var(--fs-badge);color:var(--text-secondary);margin-right:6px;font-weight:700}.bar-env-popover-item.is-empty{opacity:.4}.people-roster-toolbar{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:6px;padding:8px 10px;display:flex}.people-roster-search{min-width:0;font-size:var(--fs-body);background:var(--bg-app);color:var(--text-primary);border:1px solid var(--border);border-radius:999px;flex:1;padding:5px 12px}.people-roster-search:focus{border-color:var(--accent-secondary);outline:none}.people-roster-filter,.people-roster-add{font-size:var(--fs-meta);color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;flex-shrink:0;padding:5px 10px}.people-roster-filter:hover,.people-roster-add:hover{border-color:var(--accent-secondary);color:var(--text-primary)}.people-roster-filter.active{background:var(--contention);border-color:var(--contention);color:#fff}.people-roster{flex:1;min-height:90px;padding:4px 0 8px;overflow-y:auto}.people-roster-no-results{font-size:var(--fs-body);color:var(--text-secondary);text-align:center;padding:18px 14px}.people-roster-group{margin-bottom:2px}.people-roster-team,.people-roster-person{cursor:pointer;font-size:var(--fs-body);color:var(--text-primary);border-left:2px solid #0000;align-items:center;gap:7px;padding:5px 12px;display:flex}.people-roster-team{background:var(--bg-surface);z-index:1;padding-left:6px;font-weight:700;position:sticky;top:0}.people-roster-team.is-label{cursor:default;padding-left:12px}.people-roster-person{padding-left:30px}.people-roster-team:not(.is-label):hover,.people-roster-person:hover{background:var(--hover)}.people-roster-team.selected,.people-roster-person.selected{background:var(--hover);border-left-color:var(--accent-secondary)}.people-roster-chevron{color:var(--text-secondary);cursor:pointer;font-size:var(--fs-label);background:0 0;border:none;flex-shrink:0;width:16px;padding:0}.people-roster-chevron:disabled{opacity:.35;cursor:default}.people-roster-dot{border:1px solid #fff6;border-radius:50%;flex-shrink:0;width:9px;height:9px}.people-roster-dot.is-team{border-radius:2.5px}.people-roster-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.people-roster-unteamed{color:var(--text-muted)}.people-roster-meta{font-size:var(--fs-meta);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;margin-left:auto;font-weight:400;overflow:hidden}.env-panel-tab-badge.is-muted{background:var(--text-muted)}.people-detail{border-top:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;max-height:55%;padding:10px 14px 14px;overflow-y:auto}.people-detail-empty{font-size:var(--fs-body);color:var(--text-secondary);text-align:center;padding:16px 14px}.people-detail-identity{align-items:center;gap:8px;margin-bottom:8px;display:flex}.people-detail-name{font-family:var(--font-display);font-size:var(--fs-detail);color:var(--text-primary);cursor:text;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.people-detail-name:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.people-detail-name-input{font-size:var(--fs-row);background:var(--bg-app);color:var(--text-primary);border:1px solid var(--accent-secondary);border-radius:4px;flex:1;min-width:0;padding:3px 6px;font-weight:600}.people-detail-kind{color:var(--text-muted);border:1px solid var(--border);border-radius:999px;flex-shrink:0;padding:1px 7px}.people-detail-focus{font-size:var(--fs-meta);color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;margin-left:auto;padding:4px 12px}.people-detail-focus:hover{border-color:var(--accent-secondary);color:var(--text-primary)}.people-detail-focus.active{background:var(--accent-secondary);border-color:var(--accent-secondary);color:var(--on-secondary)}.people-detail-section{margin-top:10px}.people-detail-section h4{color:var(--text-secondary);margin:0 0 6px}.people-detail-footer{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.file-update-banner{background:color-mix(in srgb, var(--accent-secondary) 18%, var(--bg-surface));border-bottom:1px solid var(--accent-secondary);font-size:var(--fs-body);color:var(--text-primary);flex-shrink:0;align-items:center;gap:10px;padding:6px 14px;display:flex}.file-update-banner-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.file-update-banner button{font-size:var(--fs-meta);cursor:pointer;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:4px 12px}.file-update-banner-reload{background:var(--accent-secondary);border:1px solid var(--accent-secondary);color:var(--on-secondary)}.file-update-banner-dismiss{border:1px solid var(--border);color:var(--text-secondary);background:0 0}.file-update-banner-dismiss:hover{color:var(--text-primary);border-color:var(--accent-secondary)}.compare-banner{background:var(--bg-app);border-bottom:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-secondary);flex-shrink:0;align-items:center;gap:8px;padding:5px 14px;display:flex}.compare-banner-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.compare-banner-text strong{color:var(--text-primary);font-weight:600}.compare-banner button{font-size:var(--fs-meta);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;flex-shrink:0;padding:3px 10px}.compare-banner button:hover{color:var(--text-primary);border-color:var(--accent-secondary)}.modal-copy{font-size:var(--fs-body);color:var(--text-secondary);margin:0 0 12px;line-height:1.5}.save-conflict-actions{flex-direction:column;gap:6px;display:flex}.save-conflict-actions button{text-align:center;white-space:normal;width:100%}.save-conflict-hint{font-size:var(--fs-meta);opacity:.85;margin-top:2px;font-weight:400;display:block}.save-conflict-see{color:var(--accent-secondary);font-family:var(--font-body);font-size:var(--fs-body);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0 0 10px;text-decoration:underline}.save-conflict-footer{justify-content:space-between}.save-conflict-replace{color:var(--error-bright);font-family:var(--font-body);font-size:var(--fs-meta);cursor:pointer;background:0 0;border:none;padding:4px 0}.save-conflict-replace:hover{text-decoration:underline}.toolbar-file-reconnect{border-color:var(--warning);color:var(--warning-text);white-space:nowrap}.toolbar-saved-by{color:var(--text-muted);font-weight:400;font-size:var(--fs-meta)}.account-signin-btn{white-space:nowrap;margin-left:4px}.account-chip{border:1px solid var(--border);background:var(--hover);max-width:190px;color:var(--text-header);font-size:var(--fs-meta);font-weight:600;font-family:var(--font-body);cursor:pointer;border-radius:999px;align-items:center;gap:7px;margin-left:4px;padding:3px 12px 3px 4px;display:inline-flex}.account-chip:hover{background:var(--hover-strong);border-color:var(--border-strong)}.account-chip-avatar{background:var(--accent-secondary);width:22px;height:22px;color:var(--on-secondary);font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.account-chip-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.account-menu{z-index:2100;background:var(--bg-surface);border:1px solid var(--border);min-width:210px;box-shadow:var(--card-shadow);font-family:var(--font-body);border-radius:8px;padding:4px;position:fixed;transform:translate(-100%)}.account-menu-identity{padding:8px 10px 6px}.account-menu-name{font-size:var(--fs-body);color:var(--text-primary);font-weight:700}.account-menu-email{font-size:var(--fs-meta);color:var(--text-secondary);text-overflow:ellipsis;overflow:hidden}.account-menu-divider{background:var(--border);height:1px;margin:4px 0}.account-menu-item{text-align:left;width:100%;font-size:var(--fs-body);color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:7px 10px;display:block}.account-menu-item:hover{background:var(--hover)}.rich-text-editor{width:100%;height:100%;font-family:var(--font-body);color:var(--text-primary);word-wrap:break-word;overflow-wrap:break-word;scrollbar-width:none;cursor:text;background:0 0;border:none;outline:none;line-height:1.3;overflow-y:auto}.rich-text-editor::-webkit-scrollbar{display:none}.rich-text-editor ul,.rich-text-editor ol{margin:0;padding-left:14px}.rich-text-editor li{margin:0}.swimlane-project-editor{font-size:var(--fs-label);font-weight:700}.swimlane-features-editor{font-size:var(--fs-badge);color:var(--text-primary)}.swimlane-features-editor:empty:before{content:"Right-click to format";color:var(--grid-monthly);pointer-events:none;font-style:italic}.formatting-toolbar{z-index:2000;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);font-family:var(--font-body);border-radius:8px;align-items:center;gap:2px;padding:4px 6px;display:flex;position:fixed}.formatting-toolbar button{cursor:pointer;min-width:24px;height:24px;font-family:var(--font-body);font-size:var(--fs-meta);color:var(--text-primary);background:0 0;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;padding:0 6px;display:flex}.formatting-toolbar button:hover{background:var(--bg-row-odd);border-color:var(--border)}.formatting-toolbar-divider{background:var(--border);width:1px;height:16px;margin:0 2px}.formatting-toolbar--docked{z-index:auto;box-shadow:none;border:none;border-bottom:1px solid var(--border);border-radius:0;flex-wrap:wrap;row-gap:4px;margin-bottom:10px;padding:0 0 8px;position:static}.formatting-size-wrapper{position:relative}.formatting-size-menu{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);z-index:2001;border-radius:8px;flex-direction:column;min-width:88px;margin-top:2px;padding:2px;display:flex;position:absolute;top:100%;left:0}.formatting-size-menu button{justify-content:flex-start;width:100%;padding:4px 8px}.app-main-row{flex:1;min-height:0;display:flex;overflow:hidden}.rail{background:var(--bg-header);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;align-items:center;gap:6px;width:44px;padding-top:10px;display:flex}.rail-tab{width:30px;height:30px;color:var(--text-secondary);font-size:var(--fs-detail);cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;line-height:1;display:flex;position:relative}.rail-tab:hover{background:var(--hover);color:var(--text-primary)}.rail-tab.active{background:var(--accent-secondary);color:var(--on-secondary)}.rail-badge{background:var(--contention);color:#fff;min-width:15px;height:15px;font-size:var(--fs-badge);border-radius:8px;justify-content:center;align-items:center;padding:0 3px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.rail-badge.info{background:var(--accent-secondary)}.rail-badge.slip{background:var(--warning);color:#1a1408}.rail-panel{background:var(--bg-surface);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;min-height:0;display:flex;position:relative}.rail-panel.is-resizing{-webkit-user-select:none;user-select:none}.rail-panel-resize{cursor:col-resize;z-index:2;touch-action:none;width:12px;position:absolute;top:0;bottom:0;left:-6px}.rail-panel-resize:after{content:"";background:0 0;width:2px;transition:background .12s;position:absolute;top:0;bottom:0;left:5px}.rail-panel-resize:hover:after,.rail-panel.is-resizing .rail-panel-resize:after{background:var(--accent-secondary)}.rail-panel-resize:before{content:"";background:var(--border-strong);opacity:.7;border-radius:1px;width:4px;height:40px;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.rail-panel-resize:hover:before,.rail-panel.is-resizing .rail-panel-resize:before{background:var(--accent-secondary);opacity:1}.rail-panel-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:flex-end;padding:12px 14px 10px;display:flex}.rail-panel-header-actions{align-items:center;gap:8px;display:flex}.rail-panel-header-actions button{color:var(--text-secondary);font-size:var(--fs-title);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;line-height:1}.rail-panel-header-actions button:hover{background:var(--hover-strong);color:var(--text-primary)}.rail-panel-body{flex-direction:column;flex:1;min-height:0;display:flex}.notes-panel-add-row{border-bottom:1px solid var(--border);flex-shrink:0;align-items:flex-start;gap:6px;padding:10px 14px;display:flex}.notes-panel-add-glyph{font-size:var(--fs-body);color:var(--text-muted);-webkit-user-select:none;user-select:none;flex-shrink:0;font-weight:600}.notes-panel-add-row input,.notes-panel-add-row textarea{border:1px solid var(--border);min-width:0;font-size:var(--fs-body);background:var(--bg-surface);color:var(--text-primary);border-radius:4px;outline:none;flex:1;padding:6px 8px}.notes-panel-add-row textarea{box-sizing:border-box;font-family:var(--font-body);resize:none;line-height:1.45;display:block;overflow:hidden}.notes-panel-add-row input:focus,.notes-panel-add-row textarea:focus{border-color:var(--accent-secondary)}.notes-panel-add-row select{border:1px solid var(--border);font-size:var(--fs-meta);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;border-radius:4px;max-width:120px;padding:4px 6px}.notes-panel-add-row select:focus{border-color:var(--accent-secondary);outline:none}.notes-panel-list{flex:1;padding:4px 0;overflow-y:auto}.item-row-checkbox,.project-filter-check{appearance:none;font-size:var(--fs-badge);cursor:pointer;border:1px solid var(--border-strong);background:var(--bg-app);border-radius:4px;flex-shrink:0;place-items:center;width:14px;height:14px;margin:1px 0 0;transition:background .12s,border-color .12s;display:grid}.item-row-checkbox:hover,.project-filter-check:hover{border-color:var(--accent-secondary)}.item-row-checkbox:checked,.project-filter-check:checked,.project-filter-check:indeterminate{background:var(--accent-secondary);border-color:var(--accent-secondary)}.item-row-checkbox:checked:after,.project-filter-check:checked:after{content:"";border:solid var(--on-accent);border-width:0 1.5px 1.5px 0;width:3px;height:7px;transform:translateY(-1px)rotate(45deg)}.project-filter-check:indeterminate:after{content:"";background:var(--on-accent);border-radius:1px;width:7px;height:1.5px}.item-row-checkbox:focus-visible,.project-filter-check:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:1px}.notes-panel-divider{border:none;border-top:1px solid var(--border);text-align:left;width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-top:4px;padding:10px 14px 8px;display:flex}.notes-panel-divider:hover{color:var(--text-primary)}.notes-panel-divider-caret{letter-spacing:0}.notes-panel-divider-count{color:var(--text-muted);letter-spacing:0}.notes-panel-footer{border-top:1px solid var(--border);text-align:right;flex-shrink:0;padding:8px 14px}.notes-panel-footer button{font-size:var(--fs-meta);color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;padding:4px 10px}.notes-panel-footer button:hover{background:var(--hover);color:var(--text-primary)}.notes-panel-footer button.confirm{color:var(--error-bright);border-color:var(--error-bright)}.notes-panel-footer button.confirm:hover{background:#b5222214}.swimlane-add-note-btn{opacity:0;z-index:1;background:var(--hover);width:16px;height:16px;color:var(--text-secondary);font-size:var(--fs-body);cursor:pointer;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity .15s;display:flex;position:absolute;bottom:3px;left:3px}.swimlane-row:hover .swimlane-add-note-btn,.swimlane-row:focus-within .swimlane-add-note-btn,.swimlane-add-note-btn:focus-visible{opacity:1}.swimlane-add-note-btn:focus-visible,.floating-note-close-btn:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:1px}.swimlane-add-note-btn:hover{background:var(--hover-strong);color:var(--text-primary)}.swimlane-row.item-drop-target{outline:2px solid var(--today-line);outline-offset:-2px;background:color-mix(in srgb, var(--accent-secondary) 16%, transparent)!important}.swimlane-item-badge{background:var(--today-line);color:#fff;min-width:16px;height:16px;font-size:var(--fs-badge);text-align:center;cursor:pointer;z-index:2;border:none;border-radius:8px;padding:0 4px;font-weight:700;line-height:16px;position:absolute;bottom:3px;right:3px}.swimlane-item-badge:hover{filter:brightness(1.12)}.swimlane-item-badge.blocked{background:var(--warning);color:#1a1408}.swimlane-slip-chip{background:var(--warning);color:#1a1408;height:16px;font-family:var(--font-display);font-size:var(--fs-badge);cursor:pointer;z-index:2;border:none;border-radius:8px;padding:0 6px;font-weight:700;line-height:16px;position:absolute;bottom:3px;right:3px}.swimlane-slip-chip.has-badge{right:24px}.swimlane-slip-chip.major{background:var(--error-solid);color:#fff}.swimlane-slip-chip.early{background:var(--success);color:#0b0c0e}.swimlane-slip-chip:hover{filter:brightness(1.12)}.context-menu-color-dot{vertical-align:middle;border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block;box-shadow:inset 0 0 0 1px #0003}.phase-bar-drag-pill{font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);color:#fff;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-weight:700;font-family:var(--font-body);border-radius:3px;padding:3px 7px;display:inline-block;overflow:hidden;box-shadow:0 1px 3px #00000040}.phase-bar-drag-pill.clear{background:#1f7a44}.phase-bar-drag-pill.conflict{background:var(--contention)}.env-panel-tabs{border-bottom:1px solid var(--border);flex-shrink:0;gap:2px;padding:6px 8px;display:flex;overflow-x:auto}.env-panel-tab{cursor:pointer;font-size:var(--fs-body);color:var(--text-primary);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:3px 3px 0 0;align-items:center;gap:6px;padding:5px 10px;display:inline-flex}.env-panel-tab:hover{background:var(--hover)}.env-panel-tab.active{color:var(--text-primary);font-weight:700}.env-panel-tab.focused{background:var(--hover-strong);box-shadow:inset 0 0 0 1px var(--accent-primary)}.env-panel-tab-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.env-panel-tab-badge{background:var(--contention);color:#fff;min-width:16px;height:16px;font-size:var(--fs-badge);border-radius:8px;justify-content:center;align-items:center;margin-left:2px;padding:0 4px;font-weight:700;display:inline-flex}.env-panel-tab-add{border:1px dashed var(--border-strong);color:var(--text-secondary);cursor:pointer;font-size:var(--fs-body);white-space:nowrap;background:0 0;border-radius:999px;padding:5px 12px}.env-panel-tab-add:hover{background:var(--hover)}.env-panel-body{flex:1;padding:14px 14px 18px;overflow-y:auto}.env-panel-identity{align-items:center;gap:8px;margin-bottom:6px;display:flex}.env-panel-identity label{color:var(--text-secondary)}.env-panel-identity input{font-family:var(--font-display);font-size:var(--fs-detail);border:1px solid var(--border);background:var(--bg-surface);border-radius:3px;outline:none;flex:1;padding:4px 8px;font-weight:600}.env-panel-identity input:focus{border-color:var(--accent-secondary)}.env-panel-name{font-family:var(--font-display);font-size:var(--fs-detail);cursor:text;color:var(--text-primary);flex:1;padding:4px 0;font-weight:600}.env-panel-name:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.env-panel-color-wrap{position:relative}.env-panel-color-btn{cursor:pointer;border:1px solid #0003;border-radius:4px;width:24px;height:24px;padding:0}.env-panel-color-picker{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);z-index:10;border-radius:8px;grid-template-columns:repeat(4,1fr);gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #00000026}.env-panel-color-swatch{cursor:pointer;border:1px solid #00000026;border-radius:3px;width:22px;height:22px;padding:0}.env-panel-color-swatch:hover{outline-offset:1px;outline:2px solid #ffffff73}.env-panel-status{font-size:var(--fs-meta);color:var(--text-secondary);padding:2px 0 16px}.env-panel-status-sep{opacity:.5;padding:0 6px}.env-panel-section{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.env-panel-section-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.env-panel-section-header h4{color:var(--text-secondary);margin:0}.env-panel-section-empty{font-size:var(--fs-meta);color:var(--text-muted);padding:4px 0;font-style:italic}.env-panel-copy-wrap{position:relative}.env-panel-copy-wrap>button{border:1px solid var(--border);font-size:var(--fs-label);cursor:pointer;color:var(--text-primary);background:0 0;border-radius:999px;padding:2px 8px}.env-panel-copy-wrap>button:hover{background:var(--hover)}.env-panel-copy-menu{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);z-index:10;border-radius:8px;flex-direction:column;min-width:160px;padding:4px;display:flex;position:absolute;top:calc(100% + 2px);right:0}.env-panel-copy-menu button{text-align:left;font-size:var(--fs-meta);cursor:pointer;color:var(--text-primary);background:0 0;border:none;border-radius:3px;padding:5px 8px}.env-panel-copy-menu button:hover{background:var(--hover)}.env-panel-assign-from{font-size:var(--fs-badge);color:var(--text-muted);margin-left:4px}.env-panel-rules{flex-direction:column;gap:4px;display:flex}.env-panel-rule-row{align-items:center;gap:8px;padding:4px 0;display:flex}.env-panel-phase-swatch{border:1px solid;border-radius:2px;flex-shrink:0;width:12px;height:12px}.env-panel-rule-label{font-size:var(--fs-body);color:var(--text-primary);flex:1}.env-panel-toggle{border:1px solid var(--border);border-radius:3px;display:inline-flex;overflow:hidden}.env-panel-toggle button{font-size:var(--fs-label);cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:3px 9px}.env-panel-toggle button:hover{background:var(--hover)}.env-panel-toggle button.active{background:var(--accent-secondary);color:var(--on-secondary);font-weight:600}.env-panel-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.env-panel-list li{background:var(--bg-surface-2);font-size:var(--fs-body);color:var(--text-primary);border-radius:3px;justify-content:space-between;align-items:center;padding:5px 8px;display:flex}.env-panel-list button{cursor:pointer;font-size:var(--fs-detail);color:var(--text-muted);background:0 0;border:none;padding:0 4px;line-height:1}.env-panel-list button:hover{color:var(--error-bright)}.env-panel-contention-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.env-panel-contention-list li{font-size:var(--fs-meta);border-left:2px solid var(--contention);color:var(--text-primary);cursor:pointer;background:#7a1f3d0f;border-radius:0 3px 3px 0;padding:5px 8px;line-height:1.4}.env-panel-contention-list li:hover{background:#7a1f3d1f}.env-panel-contention-mid{color:var(--text-secondary);margin:0 2px;font-style:italic}.env-panel-contention-week{color:var(--text-secondary);font-size:var(--fs-meta);margin-left:4px}.env-panel-footer{border-top:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;padding:10px 14px}.env-panel-delete{border:1px solid var(--error-bright);color:var(--error-bright);font-size:var(--fs-meta);cursor:pointer;background:0 0;border-radius:999px;padding:5px 12px}.env-panel-delete:hover{background:#b5222214}.env-panel-delete.confirm{background:var(--error-solid);color:#fff}.env-panel-behaviour{flex-direction:column;gap:8px;display:flex}.env-panel-behaviour-desc{font-size:var(--fs-meta);color:var(--text-secondary);margin:0;line-height:1.5}.phase-types-list{flex-direction:column;gap:4px;max-height:480px;margin:12px 0 8px;display:flex;overflow-y:auto}.phase-types-row{background:var(--bg-surface-2);font-size:var(--fs-body);color:var(--text-primary);border-radius:4px;grid-template-columns:20px 48px minmax(96px,1fr) minmax(80px,1fr) 128px 104px 64px 40px 28px;align-items:center;gap:8px;padding:6px 8px;display:grid}.phase-types-row.dragging{opacity:.4}.phase-types-row-header{color:var(--text-secondary);background:0 0;padding:4px 8px}.phase-types-drag-handle{text-align:center;cursor:grab;width:100%;color:var(--text-muted);-webkit-user-select:none;user-select:none;display:inline-block}.phase-types-drag-handle:active{cursor:grabbing}.phase-types-color{border:1px solid var(--border);cursor:pointer;background:var(--bg-surface);appearance:none;border-radius:4px;width:36px;height:26px;padding:0}.phase-types-color::-webkit-color-swatch-wrapper{padding:2px}.phase-types-color::-webkit-color-swatch{border:none;border-radius:2px}.phase-types-color::-moz-color-swatch{border:none;border-radius:2px}.phase-types-name,.phase-types-label{border:1px solid var(--border);background:var(--bg-surface);width:100%;min-width:0;color:var(--text-primary);box-sizing:border-box;border-radius:3px;padding:5px 8px}.phase-types-name{font-size:var(--fs-body)}.phase-types-name:hover,.phase-types-label:hover{border-color:var(--border-strong)}.phase-types-name:focus,.phase-types-label:focus{border-color:var(--accent-secondary);outline:none}.phase-types-kind,.phase-types-length input{border:1px solid var(--border);background:var(--bg-surface);min-width:0;color:var(--text-primary);font:inherit;font-size:var(--fs-body);border-radius:3px;padding:4px 6px}.phase-types-length{font-size:var(--fs-small,12px);white-space:nowrap;align-items:center;gap:4px;display:flex}.phase-types-length input{width:52px}.phase-types-kind.is-missing{border-color:var(--warning);color:var(--warning-text)}.phase-types-unset{border:1px solid var(--warning);font-size:var(--fs-meta);color:var(--text-secondary);border-radius:6px;margin:0 0 10px;padding:8px 10px;line-height:1.5}.phase-types-unset b{color:var(--warning-text)}.phase-types-unset-list{flex-wrap:wrap;gap:4px 12px;margin-top:4px;display:flex}.phase-types-effort{width:16px;height:16px;accent-color:var(--accent-secondary);cursor:pointer;justify-self:center;margin:0}.phase-types-usage{text-align:right;font-size:var(--fs-meta);color:var(--text-secondary);font-variant-numeric:tabular-nums;font-weight:600}.phase-types-delete{cursor:pointer;width:28px;height:28px;font-size:var(--fs-detail);color:var(--text-secondary);background:0 0;border:1px solid #0000;border-radius:50%;justify-self:center;padding:0;line-height:1}.phase-types-delete:hover:not(:disabled){border-color:var(--error-bright);color:var(--error-bright)}.phase-types-delete.confirm{background:var(--error-solid);border-color:var(--error-solid);color:#fff}.phase-types-delete:disabled{opacity:.3;cursor:not-allowed}.phase-types-footer{border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:12px;padding-top:10px;display:flex}.floating-note{pointer-events:auto;font-family:var(--font-body);color:var(--note-ink);z-index:20;background-image:linear-gradient(#ffffff59 0%,#fff0 30%,#0000000a 100%);border-radius:6px;flex-direction:column;display:flex;position:absolute;overflow:hidden;box-shadow:0 1px 2px #0000000f,0 8px 18px #0000002e}.floating-note:hover{box-shadow:0 1px 2px #0000000f,0 12px 24px #00000038}.floating-note-header{cursor:grab;-webkit-user-select:none;user-select:none;background:#00000012;flex-shrink:0;align-items:center;height:18px;padding:0 6px;display:flex;position:relative}.floating-note-header:active{cursor:grabbing}.floating-note-color-btn{cursor:pointer;border:1px solid #00000040;border-radius:50%;flex-shrink:0;width:12px;height:12px;padding:0;box-shadow:inset 0 1px 1px #fff9}.floating-note-color-btn:hover{outline-offset:1px;outline:1px solid #0006}.floating-note-color-picker{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);z-index:5;border-radius:8px;grid-template-columns:repeat(6,1fr);gap:4px;padding:4px;display:grid;position:absolute;top:22px;left:4px;box-shadow:0 4px 12px #0000002e}.floating-note-color-swatch{cursor:pointer;border:1px solid #0000002e;border-radius:3px;width:18px;height:18px;padding:0}.floating-note-color-swatch:hover{outline-offset:1px;outline:2px solid #ffffff73}.floating-note-handle-grip{text-align:center;font-size:var(--fs-badge);letter-spacing:1px;color:#00000059;pointer-events:none;flex:1}.floating-note-close-btn{color:#00000073;width:14px;height:14px;font-size:var(--fs-detail);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity .15s,color .15s,background .15s;display:flex}.floating-note:hover .floating-note-close-btn,.floating-note:focus-within .floating-note-close-btn,.floating-note-close-btn:focus-visible{opacity:1}.floating-note-close-btn:hover{color:var(--error-bright);background:#b522222e}.floating-note-body{min-height:0;font-size:var(--fs-body);cursor:text;scrollbar-width:thin;flex:1;padding:8px 10px;line-height:1.4;overflow:auto}.floating-note-content{word-wrap:break-word;overflow-wrap:break-word}.floating-note-content ul,.floating-note-content ol{margin:0;padding-left:16px}.floating-note-placeholder{color:#0006;font-style:italic;font-size:var(--fs-meta);-webkit-user-select:none;user-select:none}.floating-note-editor{font-size:var(--fs-body);min-height:100%}.floating-note-resize{cursor:nwse-resize;opacity:.5;background:linear-gradient(135deg,#0000 0% 45%,#00000059 45% 55%,#0000 55% 70%,#00000040 70% 80%,#0000 80%);border-bottom-right-radius:6px;width:14px;height:14px;transition:opacity .15s;position:absolute;bottom:0;right:0}.floating-note:hover .floating-note-resize{opacity:1}.key-features-popover-backdrop{z-index:2100;background:#00000059;animation:.14s ease-out kfp-fade;position:fixed;inset:0}@keyframes kfp-fade{0%{opacity:0}to{opacity:1}}.key-features-popover{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--card-radius);width:360px;max-width:calc(100vw - 24px);max-height:70vh;box-shadow:var(--card-shadow);z-index:2101;font-family:var(--font-body);flex-direction:column;animation:.16s ease-out kfp-pop;display:flex;position:fixed;overflow:hidden}@keyframes kfp-pop{0%{opacity:0;transform:scale(.97)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.key-features-popover-header{background:var(--accent-secondary);color:var(--on-secondary);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:11px 14px;display:flex}.key-features-popover.is-dragging .key-features-popover-header{cursor:grabbing}.key-features-popover.is-dragging{-webkit-user-select:none;user-select:none}.key-features-popover-title{flex-direction:column;gap:1px;min-width:0;display:flex}.key-features-popover-eyebrow{color:inherit;opacity:.8}.key-features-popover-project{font-size:var(--fs-row);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.key-features-popover-close{color:#fff;font-size:var(--fs-detail);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;place-items:center;width:24px;height:24px;line-height:1;transition:background .12s;display:grid}.key-features-popover-close:hover{background:#ffffff2e}.key-features-popover-body{font-size:var(--fs-row);color:var(--text-primary);flex-direction:column;flex:1;min-height:80px;padding:14px 16px;line-height:1.55;display:flex;overflow:hidden}.key-features-popover-body .formatting-toolbar--docked{flex-shrink:0}.key-features-popover-editor{font-size:var(--fs-row);color:var(--text-primary);scrollbar-width:thin;flex:1;min-height:0;line-height:1.55;overflow-y:auto}.key-features-popover-editor ul,.key-features-popover-editor ol{margin:0;padding-left:18px}.key-features-popover-editor li{margin-bottom:4px}.key-features-popover-footer{border-top:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-muted);flex-shrink:0;justify-content:space-between;align-items:center;padding:9px 14px;display:flex}.key-features-popover-resize{cursor:nwse-resize;touch-action:none;z-index:1;width:16px;height:16px;position:absolute;bottom:0;right:0}.key-features-popover-resize:before{content:"";border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);opacity:.7;border-radius:0 0 3px;width:7px;height:7px;position:absolute;bottom:4px;right:4px}.key-features-popover-resize:hover:before{opacity:1}.key-features-popover-footer kbd{background:var(--hover);font-size:var(--fs-meta);color:var(--text-secondary);border:1px solid var(--border);border-radius:4px;padding:1px 6px}.assistant-clear-btn{font-family:var(--font-body);font-size:var(--fs-meta)!important}.assistant-chat-root{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.assistant-chat{flex-direction:column;flex:1;gap:10px;padding:12px 14px;display:flex;overflow-y:auto}.assistant-msg{max-width:94%;font-size:var(--fs-body);color:var(--text-primary);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;padding:8px 11px;line-height:1.5}.assistant-msg.user{background:var(--bg-surface-2);border:1px solid var(--border);align-self:flex-end}.assistant-msg.assistant{border:1px solid var(--border);align-self:flex-start}.assistant-msg.is-error{border-color:var(--error-bright);color:var(--error-bright)}.assistant-msg .chat-text{white-space:normal}.chat-text p{margin:0 0 8px}.chat-text ul,.chat-text ol{margin:0 0 8px;padding-left:18px}.chat-text li{margin:3px 0}.chat-text>:last-child{margin-bottom:0}.chat-text strong{font-weight:600}.chat-text code{background:var(--bg-surface-2);border-radius:3px;padding:0 3px;font-family:ui-monospace,Consolas,monospace;font-size:.92em}.assistant-suggestions{border-top:1px solid var(--border);white-space:normal;margin-top:10px;padding-top:9px}.assistant-suggestions ol{flex-direction:column;gap:7px;margin:7px 0 0;padding:0;list-style:none;display:flex}.assistant-suggestion{grid-template-columns:16px 16px minmax(0,1fr);align-items:baseline;column-gap:6px;display:grid}label.assistant-suggestion{cursor:pointer}.assistant-suggestion input{align-self:center;margin:0}.assistant-suggestion-n{font-family:var(--font-display);font-size:var(--fs-badge);color:var(--text-secondary);text-align:center;font-weight:700}.assistant-suggestion-title{font-weight:600}.assistant-suggestion-request{font-size:var(--fs-meta);color:var(--text-secondary);grid-column:3}.assistant-suggestions-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.assistant-suggestions-hint{font-size:var(--fs-meta);color:var(--text-muted)}.assistant-msg-applied{font-size:var(--fs-badge);color:var(--success);margin-top:6px;font-weight:600}.assistant-msg-dropped{font-size:var(--fs-badge);color:var(--text-muted);margin-top:6px;font-weight:600}.assistant-streaming{flex-direction:column;gap:8px;display:flex}.assistant-thinking{font-size:var(--fs-meta);color:var(--text-secondary);white-space:pre-wrap;overflow-wrap:anywhere;max-height:168px;padding-right:4px;font-style:italic;line-height:1.5;overflow-y:auto}.assistant-reasoning{margin-top:8px}.assistant-reasoning>summary{font-size:var(--fs-badge);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;list-style:none}.assistant-reasoning>summary::-webkit-details-marker{display:none}.assistant-reasoning>summary:before{content:"▸ ";display:inline-block}.assistant-reasoning[open]>summary:before{content:"▾ "}.assistant-reasoning>summary:hover{color:var(--text-primary)}.assistant-reasoning .assistant-thinking{border-left:2px solid var(--border);margin-top:6px;padding-left:8px}.assistant-jump-latest{z-index:2;font-size:var(--fs-badge);color:var(--on-accent);background:var(--accent-primary);cursor:pointer;border:none;border-radius:999px;padding:5px 12px;font-weight:600;position:absolute;bottom:96px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000004d}.assistant-jump-latest:hover{background:var(--accent-primary-hover)}.assistant-stream-row{font-size:var(--fs-meta);color:var(--text-secondary);align-items:center;gap:8px;display:flex}.assistant-stream-pulse{background:var(--accent-secondary);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.2s ease-in-out infinite assistant-pulse}@keyframes assistant-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.assistant-stop-btn{font-size:var(--fs-meta);margin-left:auto;padding:3px 12px}.assistant-stream-note{font-size:var(--fs-meta);color:var(--text-muted);line-height:1.5}.assistant-proposal{border:1px solid var(--border-strong);border-radius:var(--card-radius);background:var(--bg-surface-2);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.assistant-diff-chips{flex-wrap:wrap;gap:6px;display:flex}.assistant-diff-chip{font-size:var(--fs-badge);background:var(--hover);color:var(--text-primary);white-space:nowrap;border-radius:999px;padding:3px 9px;font-weight:600}.assistant-diff-renames{font-size:var(--fs-meta);color:var(--text-secondary)}.assistant-diff-removals{font-size:var(--fs-meta);color:var(--error-bright);line-height:1.5}.assistant-diff-removals ul{max-height:160px;margin:2px 0 0;padding-left:16px;overflow-y:auto}.assistant-warning{font-size:var(--fs-meta);color:var(--warning);line-height:1.5}.assistant-attach-refused{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.assistant-attach-refused-actions{gap:6px;display:inline-flex}.assistant-attach-refused-actions button{font-size:var(--fs-meta);padding:3px 10px}.assistant-backlog-changes{flex-direction:column;gap:4px;display:flex}.assistant-backlog-head{font-size:var(--fs-meta);color:var(--text-primary);font-weight:600}.assistant-backlog-changes ul{max-height:220px;margin:0;padding-left:16px;overflow-y:auto}.assistant-backlog-changes li{font-size:var(--fs-meta);color:var(--text-secondary);line-height:1.5}.assistant-proposal-actions{align-items:center;gap:12px;margin-top:2px;display:flex}.assistant-proposal-actions .btn-quiet{margin-top:0}.assistant-composer{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;padding:10px 14px 12px;display:flex}.assistant-composer.is-drag-over{background:var(--bg-app);outline:2px dashed var(--accent-secondary);outline-offset:-4px}.assistant-attachment{flex-direction:column;gap:6px;display:flex}.assistant-attachment-chip{border:1px solid var(--border-strong);max-width:100%;font-size:var(--fs-meta);color:var(--text-primary);overflow-wrap:anywhere;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:3px 4px 3px 10px;display:inline-flex}.assistant-attachment-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:2px 6px;font-size:14px;line-height:1}.assistant-attachment-remove:hover:not(:disabled){color:var(--text-primary);background:var(--border)}.assistant-msg-attachment{font-size:var(--fs-meta);opacity:.85;margin-bottom:4px}.assistant-attach-btn{white-space:nowrap;align-items:center;gap:4px;margin-top:0;line-height:1;display:inline-flex}.assistant-composer textarea{resize:vertical;background:var(--bg-app);min-height:56px;max-height:180px;color:var(--text-primary);border:1px solid var(--border-strong);font-family:var(--font-body);font-size:var(--fs-body);border-radius:8px;padding:8px 10px;line-height:1.5}.assistant-composer textarea:focus{border-color:var(--accent-secondary);outline:none}.assistant-composer-row{align-items:center;gap:10px;display:flex}.assistant-composer-hint{text-align:right;font-size:var(--fs-meta);color:var(--text-muted);flex:1}.assistant-model-select{max-width:46%;font-size:var(--fs-meta);font-family:var(--font-body);border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:3px 6px}.assistant-model-select:hover{color:var(--text-primary);border-color:var(--border-strong)}.assistant-model-select:focus{border-color:var(--accent-secondary);outline:none}.assistant-effort-select{background:var(--bg-surface-2);color:var(--text-secondary);border:1px solid var(--border);font-size:var(--fs-meta);cursor:pointer;border-radius:6px;flex-shrink:0;padding:3px 6px}.assistant-effort-select:hover{border-color:var(--border-strong)}.assistant-effort-select:focus{border-color:var(--accent-secondary);outline:none}.assistant-providers-link{white-space:nowrap;margin-top:0}.assistant-key-error{color:var(--error-bright)!important}.assistant-json-mode{color:var(--warning);border:1px solid var(--warning);white-space:nowrap;border-radius:999px;padding:1px 7px}.assistant-msg.is-notice{border:1px dashed var(--border-strong);color:var(--text-secondary);font-size:var(--fs-meta);background:0 0}.ai-provider-modal{flex-direction:column;width:480px;max-width:92vw;max-height:min(84vh,640px);padding:0;display:flex;overflow:hidden}.ai-provider-head{flex-shrink:0;padding:20px 24px 12px}.ai-provider-head h2{margin-bottom:4px}.ai-provider-head .modal-copy{margin:0}.ai-provider-body{flex:1;min-height:0;padding:4px 24px 16px;overflow-y:auto}.ai-provider-modal .modal-actions{border-top:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;margin:0;padding:12px 24px}.ai-provider-list{flex-direction:column;gap:4px;margin:4px 0 0;list-style:none;display:flex}.ai-provider-row{border:1px solid var(--border);background:var(--bg-surface-2);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.ai-provider-row.is-active{border-color:var(--accent-secondary)}.ai-provider-row-main{flex:1;min-width:0}.ai-provider-row-name{font-size:var(--fs-row);color:var(--text-primary);align-items:center;gap:6px;font-weight:600;display:flex}.ai-provider-row-meta{font-size:var(--fs-meta);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ai-provider-active-chip{color:var(--accent-secondary);flex-shrink:0}.ai-provider-delete.confirm{color:var(--error-bright)}.ai-provider-add-row{gap:8px;margin-top:12px;display:flex}.ai-provider-field{margin-top:14px}.ai-provider-field:first-child{margin-top:4px}.ai-provider-field input,.ai-provider-field select,.ai-provider-field textarea{background:var(--bg-app);width:100%;color:var(--text-primary);border:1px solid var(--border-strong);font-size:var(--fs-body);border-radius:8px;padding:7px 10px}.ai-provider-field textarea{resize:vertical;line-height:1.5}.ai-provider-field input:focus,.ai-provider-field select:focus,.ai-provider-field textarea:focus{border-color:var(--accent-secondary);outline:none}.ai-provider-field input[aria-invalid=true],.ai-provider-field textarea[aria-invalid=true]{border-color:var(--error-bright)}.ai-provider-required{color:var(--brand-accent);margin-left:1px}.ai-provider-hint,.ai-provider-error,.ai-provider-ok{font-size:var(--fs-meta);margin:5px 0 0;line-height:1.45}.ai-provider-hint{color:var(--text-muted)}.ai-provider-error{color:var(--error-bright)}.ai-provider-ok{color:var(--success)}.ai-provider-models-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ai-provider-models-head .btn-quiet{margin-top:0}.ai-provider-switch{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.ai-provider-switch select{background:var(--bg-app);color:var(--text-primary);border:1px solid var(--border-strong);font-size:var(--fs-body);border-radius:8px;padding:6px 8px}.project-filter-toolbar{border-bottom:1px solid var(--border);flex-shrink:0;padding:8px 10px}.project-filter-search{width:100%;font-size:var(--fs-body);background:var(--bg-app);color:var(--text-primary);border:1px solid var(--border);border-radius:999px;padding:5px 12px}.project-filter-search:focus{border-color:var(--accent-secondary);outline:none}.project-filter-summary{background:var(--bg-app);border-bottom:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-secondary);flex-shrink:0;align-items:center;gap:6px;padding:7px 10px 7px 14px;display:flex}.project-filter-summary-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.project-filter-summary button{font-size:var(--fs-meta);color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;flex-shrink:0;padding:3px 10px}.project-filter-summary button:hover:not(:disabled){border-color:var(--accent-secondary);color:var(--text-primary)}.project-filter-summary button:disabled{opacity:.4;cursor:default}.project-filter-list{flex:1;min-height:0;padding:0 0 8px;overflow-y:auto}.project-filter-no-results{font-size:var(--fs-body);color:var(--text-secondary);text-align:center;padding:18px 14px}.project-filter-row{font-size:var(--fs-body);color:var(--text-primary);align-items:center;gap:8px;padding:0 10px 0 30px;display:flex}.project-filter-row:hover{background:var(--hover)}.project-filter-row.is-section{z-index:1;background:var(--bg-surface-2);border-left:3px solid var(--section-accent,var(--accent-primary));border-top:1px solid var(--border);padding-left:11px;position:sticky;top:0}.project-filter-row.is-section:hover{background:linear-gradient(var(--hover), var(--hover)), var(--bg-surface-2)}.project-filter-row.is-hidden .project-filter-name{color:var(--text-secondary)}.project-filter-label{cursor:pointer;flex:1;align-items:center;gap:8px;min-width:0;padding:6px 0;display:flex}.project-filter-check{margin:0}.project-filter-swatch{border-radius:50%;flex-shrink:0;width:8px;height:8px}.project-filter-name,.project-filter-section-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-filter-section-name{color:var(--text-primary)}.project-filter-count{font-size:var(--fs-meta);color:var(--text-secondary);font-variant-numeric:tabular-nums;flex-shrink:0}.project-filter-only{font-size:var(--fs-meta);color:var(--text-secondary);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;padding:2px 4px}.project-filter-row:hover .project-filter-only,.project-filter-only:focus-visible{opacity:1}.project-filter-only:hover{color:var(--text-primary);text-decoration:underline}.project-filter-note{border-top:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-secondary);flex-shrink:0;margin:0;padding:10px 14px 12px;line-height:1.5}.changes-primary{background:var(--accent-primary);color:var(--on-accent);font-size:var(--fs-body);cursor:pointer;border:none;border-radius:999px;margin-top:14px;padding:6px 18px}.changes-primary:hover{background:var(--accent-primary-hover)}.changes-head{border-bottom:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;padding:10px 14px;display:flex}.changes-head-row{font-size:var(--fs-meta);color:var(--text-secondary);align-items:center;gap:8px;display:flex}.changes-head-row.wrap{flex-wrap:wrap}.changes-select{min-width:0;font-size:var(--fs-body);background:var(--bg-app);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;flex:1;padding:4px 8px}.changes-select:focus{border-color:var(--accent-secondary);outline:none}.changes-head-meta{font-size:var(--fs-meta);color:var(--text-secondary);line-height:1.4}.changes-form{flex-direction:column;gap:6px;display:flex}.changes-form input{width:100%;font-size:var(--fs-body);background:var(--bg-app);color:var(--text-primary);border:1px solid var(--border);border-radius:999px;padding:5px 12px}.changes-form input:focus{border-color:var(--accent-secondary);outline:none}.changes-notice{font-size:var(--fs-meta);color:var(--text-secondary)}.changes-btn{font-size:var(--fs-meta);color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:3px 10px}.changes-btn:hover:not(:disabled){border-color:var(--accent-secondary);color:var(--text-primary)}.changes-btn:disabled{opacity:.4;cursor:default}.changes-btn.primary{background:var(--accent-primary);color:var(--on-accent);border-color:#0000}.changes-btn.primary:hover:not(:disabled){background:var(--accent-primary-hover);color:var(--on-accent)}.changes-btn.confirm{border-color:var(--error-bright);color:var(--error-bright)}.changes-head-note{color:var(--text-secondary);margin-top:3px}.changes-head-note.warn{color:var(--warning-text)}.changes-head-private{font-size:var(--fs-meta);color:var(--text-muted)}.compare-trigger{min-width:0;font-size:var(--fs-body);text-align:left;background:var(--bg-app);color:var(--text-primary);border:1px solid var(--border);cursor:pointer;border-radius:6px;flex:1;justify-content:space-between;align-items:center;gap:6px;padding:4px 8px;display:flex}.compare-trigger:hover,.compare-trigger[aria-expanded=true]{border-color:var(--accent-secondary)}.compare-trigger-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.compare-trigger-caret{color:var(--text-muted);flex-shrink:0;font-size:10px}.compare-menu{background:var(--bg-surface);border:1px solid var(--border);text-align:left;border-radius:8px;flex-direction:column;padding:4px;display:flex}.teach-state .compare-menu{align-self:stretch;margin-top:10px}.teach-state .teach-state-alt{margin-top:10px}.compare-menu-head{font-size:var(--fs-meta);color:var(--text-muted);padding:7px 8px 3px}.compare-menu-item{text-align:left;width:100%;color:var(--text-primary);font-size:var(--fs-body);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:flex-start;gap:6px;padding:5px 8px;display:flex}.compare-menu-item:hover:not(:disabled){background:var(--hover)}.compare-menu-item:disabled{cursor:progress}.compare-menu-item.back{color:var(--text-secondary)}.compare-menu-check{width:12px;color:var(--accent-secondary);flex-shrink:0;line-height:1.35}.compare-menu-text{flex-direction:column;min-width:0;display:flex}.compare-menu-label{text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden}.compare-menu-sub{font-size:var(--fs-meta);color:var(--text-secondary);line-height:1.35}.compare-menu-state{font-size:var(--fs-meta);color:var(--text-secondary);padding:6px 8px 6px 26px;line-height:1.45}.compare-menu-list{max-height:260px;overflow-y:auto}.compare-menu-foot{border-top:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-muted);margin-top:4px;padding:6px 8px 3px;line-height:1.4}.changes-other{border-top:1px solid var(--border);margin-top:6px}.changes-other-head{width:100%;font-size:var(--fs-body);color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:9px 14px 5px;font-weight:600;display:flex}.changes-other-caret{width:10px;color:var(--text-muted);font-size:10px}.changes-other-count{background:var(--hover);font-family:var(--font-display);font-size:var(--fs-badge);color:var(--text-secondary);border-radius:999px;padding:0 7px;font-weight:700}.changes-other-group{padding:2px 0 4px}.changes-other-project{text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-meta);color:var(--text-secondary);padding:5px 14px 1px 30px;font-weight:600;overflow:hidden}.changes-other-row{font-size:var(--fs-meta);color:var(--text-secondary);flex-wrap:wrap;column-gap:6px;padding:3px 14px 3px 30px;line-height:1.45;display:flex}.changes-other-row.is-link{cursor:pointer}.changes-other-row.is-link:hover{background:var(--hover)}.changes-other-subject{color:var(--text-primary)}.changes-other-subject:after{content:":"}.changes-other-hint{font-size:var(--fs-meta);color:var(--text-muted);padding:6px 14px 4px 30px;line-height:1.45}.changes-summary{background:var(--bg-app);border-bottom:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:6px;padding:8px 14px;display:flex}.changes-summary-text{font-size:var(--fs-body);color:var(--text-primary)}.changes-summary-sub{font-size:var(--fs-meta);color:var(--text-secondary);margin-top:2px;display:block}.changes-summary-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.changes-ask{font-size:var(--fs-meta);color:var(--text-secondary)}.assistant-quick{font-size:var(--fs-meta);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px;padding:0 0 6px;display:flex}.changes-tag{background:var(--hover);color:var(--text-primary);font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-weight:700;display:inline-flex}.changes-tag.clash:before{content:"";background:var(--contention);border-radius:50%;width:6px;height:6px}.changes-row-meta .changes-tag{margin-left:6px}button.changes-tag{cursor:pointer;border:none}button.changes-tag:hover{background:var(--hover-strong)}.changes-tag.broke:before{content:"";background:var(--warning);border-radius:50%;width:6px;height:6px}.changes-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;gap:6px;padding:8px 14px;display:flex}.changes-filter{font-size:var(--fs-meta);color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:2px 10px}.changes-filter:hover{color:var(--text-primary)}.changes-filter.on{background:var(--hover);border-color:var(--border);color:var(--text-primary)}.changes-panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.changes-list{flex:1 0 170px;padding:0 0 8px;overflow-y:auto}.changes-empty{font-size:var(--fs-body);color:var(--text-secondary);text-align:center;padding:18px 14px;line-height:1.5}.changes-section{z-index:2;background:var(--bg-surface-2);border-left:3px solid var(--section-accent,var(--accent-primary));border-top:1px solid var(--border);font-family:var(--font-display);font-size:var(--fs-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-secondary);padding:7px 11px;font-weight:700;position:sticky;top:0}.changes-project-head{font-size:var(--fs-body);color:var(--text-primary);align-items:center;gap:8px;padding:9px 14px 3px;font-weight:600;display:flex}.changes-scope{font-size:var(--fs-meta);color:var(--accent-secondary);padding:0 14px 4px 22px}.changes-project-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.changes-hidden{color:var(--text-secondary);font-weight:400}.changes-project-actions{flex-shrink:0;gap:2px;display:flex}.changes-project-actions .changes-action:not(.shown){opacity:0}.changes-project-head:hover .changes-action,.changes-project-head:focus-within .changes-action{opacity:1}.changes-chip,.changes-delta{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:1px 8px;font-weight:700}.changes-chip.late,.changes-delta.late{background:var(--warning);color:#1a1408}.changes-chip.late.major{background:var(--error-solid);color:#fff}.changes-chip.early,.changes-delta.early{background:var(--success);color:#0b0c0e}.changes-chip.neutral,.changes-delta.neutral{background:var(--hover);color:var(--text-primary)}.changes-action{font-size:var(--fs-meta);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:2px 6px}.changes-action:hover{color:var(--text-primary);text-decoration:underline}.changes-action:focus-visible{opacity:1}.changes-log-picker{font-size:var(--fs-meta);color:var(--text-secondary);align-items:center;gap:6px;padding:2px 14px 6px 22px;display:flex}.changes-row{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main actions""meta actions""knock knock";align-items:center;column-gap:8px;padding:4px 14px 4px 22px;display:grid}.changes-row:hover{background:var(--hover)}.changes-row-main{grid-area:main;align-items:center;gap:8px;min-width:0;display:flex}.changes-row-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-body);color:var(--text-primary);overflow:hidden}.changes-row-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-meta);color:var(--text-secondary);grid-area:meta;overflow:hidden}.changes-row-actions{opacity:0;grid-area:actions;gap:2px;display:flex}.changes-row:hover .changes-row-actions,.changes-row:focus-within .changes-row-actions{opacity:1}.changes-row-knock{flex-direction:column;grid-area:knock;align-items:flex-start;gap:1px;min-width:0;padding-top:2px;display:flex}.changes-knock{text-overflow:ellipsis;white-space:nowrap;text-align:left;cursor:pointer;max-width:100%;font-size:var(--fs-meta);color:var(--text-secondary);background:0 0;border:none;padding:0;overflow:hidden}.changes-knock.broken{color:var(--warning)}.changes-knock:hover{text-decoration:underline}.changes-knock.more{font-style:italic}.changes-row.is-removed .changes-row-title{color:var(--text-secondary);text-decoration:line-through}.changes-foot{border-top:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-secondary);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;display:flex}.changes-check{cursor:pointer;align-items:center;gap:6px;display:flex}.schedule-panel{flex-direction:column;flex:1;min-height:0;display:flex}.env-panel-tab-badge.slip{background:var(--warning);color:#1a1408}.links-selected{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.links-selected-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-body);color:var(--text-primary);flex:100%;font-weight:700;overflow:hidden}.links-project{color:var(--text-secondary);font-weight:400}.changes-summary-sub.links-broken{color:var(--warning)}.links-row{padding-left:14px}.links-row.is-broken .changes-row-title{font-weight:700}.changes-foot .changes-select{max-width:220px}.link-picker-popover{flex-direction:column;width:320px;max-height:70vh;display:flex}.link-picker-sub{font-size:var(--fs-meta);color:var(--text-secondary);padding:0 8px 6px;line-height:1.4}.link-picker-search{font-size:var(--fs-body);background:var(--bg-app);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;margin:0 4px 6px;padding:5px 8px}.link-picker-search:focus{border-color:var(--accent-secondary);outline:none}.link-picker-list{flex:1;min-height:60px;overflow-y:auto}.link-picker-item{align-items:center}.link-picker-item:disabled{opacity:.45;cursor:not-allowed}.link-picker-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.link-picker-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.link-picker-dates{font-size:var(--fs-meta);color:var(--text-secondary);font-weight:400}.link-picker-slack{background:var(--hover);color:var(--text-secondary);font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);border-radius:999px;flex-shrink:0;padding:1px 7px;font-weight:700}.link-picker-slack.broken{background:var(--warning);color:#1a1408}.link-picker-notice{background:var(--hover);font-size:var(--fs-meta);color:var(--text-primary);border-radius:4px;margin:4px;padding:5px 8px}.canvas-filter-empty{z-index:30;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--card-radius);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.share-menu-filter-note{border-bottom:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-secondary);white-space:nowrap;margin-bottom:4px;padding:4px 12px 8px}.backlog-band-header{--section-accent:var(--text-muted);border-bottom-style:dashed}.backlog-band-title{cursor:pointer;background:0 0;border:none;padding:0}.backlog-band-title:hover{color:var(--accent-secondary)}.backlog-band-kind{color:var(--text-muted);font-style:italic}.backlog-row{height:var(--backlog-row-height);border-bottom:1px solid var(--grid-weekly);font-size:var(--fs-meta);cursor:pointer;align-items:center;min-width:0;display:flex}.backlog-row.even{background:var(--bg-row-even)}.backlog-row.odd{background:var(--bg-row-odd)}.backlog-row:hover{box-shadow:inset 0 0 0 999px var(--hover)}.backlog-row-rank{text-align:center;width:20px;font-family:var(--font-display);font-size:var(--fs-badge);color:var(--text-muted);flex-shrink:0;font-weight:700}.backlog-row-name{border-right:1px solid var(--border);flex:1;align-items:center;gap:6px;min-width:0;height:100%;padding:0 8px;display:flex}.backlog-row-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;font-size:var(--fs-label);color:var(--text-primary);overflow:hidden}.backlog-row-size{color:var(--text-muted);font-size:var(--fs-badge);flex-shrink:0}.backlog-row-owners{flex-shrink:0;gap:2px;display:inline-flex}.backlog-row-forecast{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-secondary);flex:1;padding:0 8px;overflow:hidden}.backlog-row-forecast.is-late,.backlog-card-forecast.is-late,.backlog-card-needed.is-late,.schedule-backlog-summary .is-late{color:var(--warning-text)}.backlog-row-forecast.is-late.major,.backlog-card-forecast.is-late.major,.backlog-card-needed.is-late.major,.schedule-backlog-summary .is-late.major{color:var(--error-bright)}.context-menu-hint{font-size:var(--fs-badge);color:var(--text-muted);margin-top:1px;display:block}.context-menu-item.disabled{opacity:.45;cursor:default}.backlog-summary{font-size:var(--fs-meta);color:var(--text-secondary);border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:6px 14px;display:flex}.backlog-summary-note{color:var(--text-muted);flex:1}.backlog-list{flex-direction:column;gap:8px;padding:8px 10px 16px;display:flex}.backlog-card{border:1px solid var(--border);background:var(--bg-surface);font-size:var(--fs-meta);color:var(--text-secondary);border-radius:10px;padding:8px 10px 8px 6px}.backlog-card.is-open{border-color:var(--accent-secondary)}.backlog-card.is-dragging{opacity:.4}.backlog-card.drop-above{box-shadow:0 -2px 0 var(--accent-primary)}.backlog-card.drop-below{box-shadow:0 2px 0 var(--accent-primary)}.backlog-band.is-drop-over,.backlog-list.is-drop-over{outline:2px dashed var(--accent-secondary);outline-offset:-2px}.backlog-row.drop-above{box-shadow:inset 0 2px 0 var(--accent-primary)}.backlog-row.drop-below{box-shadow:inset 0 -2px 0 var(--accent-primary)}.backlog-drop-anchor{z-index:6;height:0;position:sticky;bottom:0}.backlog-drop-zone{border:2px dashed var(--accent-secondary);background:var(--bg-surface);color:var(--text-secondary);font-size:var(--fs-meta);border-radius:8px;flex-direction:column;gap:2px;padding:8px 12px;display:flex;position:absolute;bottom:6px;left:6px;right:6px}.backlog-drop-zone b{font-family:var(--font-display);font-size:var(--fs-label);color:var(--text-primary)}.backlog-drop-zone.is-over{background:color-mix(in srgb, var(--accent-secondary) 16%, var(--bg-surface));border-style:solid}.backlog-add-meta{border-bottom:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-secondary);align-items:center;gap:10px;padding:6px 14px;display:flex}.backlog-add-kind{border:1px solid var(--border);border-radius:999px;flex-shrink:0;display:inline-flex;overflow:hidden}.backlog-add-kind button{font-size:var(--fs-meta);font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:2px 10px}.backlog-add-kind button.is-active{background:var(--hover-strong);color:var(--text-primary);font-weight:600}.backlog-add-to{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.backlog-add-to select{border:1px solid var(--border);min-width:0;font-size:var(--fs-meta);font-family:var(--font-body);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;border-radius:4px;flex:1;padding:3px 6px}.backlog-add-to select:focus{border-color:var(--accent-secondary);outline:none}.backlog-group-head{align-items:baseline;gap:8px;padding:6px 4px 0;display:flex}.backlog-group-toggle{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-weight:700}.backlog-group-toggle:hover{color:var(--text-primary)}.backlog-group-meta{min-width:0;font-size:var(--fs-meta);color:var(--text-muted);align-items:center;gap:6px;display:flex}.backlog-card.is-feature-over{outline:2px dashed var(--accent-secondary);outline-offset:-2px}.backlog-chart-head{cursor:default}.backlog-group-live{color:var(--text-muted);flex-shrink:0}.backlog-whatif{color:var(--text-primary);margin:4px 0 0 22px;font-weight:600}.backlog-whatif.is-late,.backlog-feature-note .is-late{color:var(--warning-text)}.backlog-whatif.is-late.major,.backlog-feature-note .is-late.major{color:var(--error-bright)}.backlog-features-block{margin:8px 0 0 22px}.backlog-features-head{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-muted);margin-bottom:2px;font-weight:700}.backlog-chart-group .backlog-feature-list,.backlog-none-group .backlog-feature-list{margin-top:4px}.backlog-feature-list{flex-direction:column;gap:1px;display:flex}.backlog-feature{border-radius:6px;padding:3px 4px 3px 0}.backlog-feature:hover{background:var(--hover)}.backlog-feature.is-dragging{opacity:.4}.backlog-feature.drop-above{box-shadow:0 -2px 0 var(--accent-primary)}.backlog-feature.drop-below{box-shadow:0 2px 0 var(--accent-primary)}.backlog-feature-head{cursor:pointer;align-items:center;gap:6px;min-width:0;display:flex}.backlog-feature-grip{color:var(--text-muted);cursor:grab;-webkit-user-select:none;user-select:none;padding:0 2px}.backlog-feature-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);font-size:var(--fs-body);flex:1;overflow:hidden}.backlog-feature-size{font-family:var(--font-display);font-size:var(--fs-badge);color:var(--text-secondary);background:var(--hover);border-radius:999px;flex-shrink:0;padding:1px 6px;font-weight:700}.backlog-feature-size.is-empty{color:var(--text-muted);background:0 0;font-style:italic;font-weight:400}.backlog-feature-line{align-items:center;gap:8px;min-width:0;margin:1px 0 0 20px;display:flex}.backlog-feature-note{min-width:0;color:var(--text-muted);font-size:var(--fs-meta);flex:1}.backlog-feature .backlog-editor{margin-left:20px}.backlog-feature-add{border:1px dashed var(--border);font-size:var(--fs-meta);font-family:var(--font-body);color:var(--text-primary);background:0 0;border-radius:6px;margin-top:4px;padding:3px 8px}.backlog-feature-add:focus{border-style:solid;border-color:var(--accent-secondary);outline:none}.backlog-size-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.backlog-size-chip{text-align:center;min-width:26px;padding:3px 4px}.backlog-size-chip.is-active{border-color:var(--accent-secondary);background:color-mix(in srgb, var(--accent-secondary) 16%, var(--bg-app))}.backlog-size-row input[type=number]{width:64px}.backlog-plan-toggle{margin-top:6px}.backlog-none-empty{text-align:center;color:var(--text-muted);border-style:dashed;padding:12px}.backlog-feature-line .backlog-link-btn{flex-shrink:0}.backlog-only-bar{border:1px solid var(--accent-secondary);background:var(--bg-surface-2);font-size:var(--fs-body);border-radius:6px;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;margin:8px 14px 6px;padding:6px 10px;display:flex}.backlog-only-bar b{font-weight:700}.backlog-filter{border-bottom:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:6px;padding:8px 14px 6px;display:flex}.backlog-filter-row{align-items:center;gap:8px;min-width:0;display:flex}.backlog-lens{border:1px solid var(--border-strong);border-radius:6px;flex-shrink:0;display:inline-flex;overflow:hidden}.backlog-lens button{color:var(--text-secondary);font-size:var(--fs-meta);font-weight:600;font-family:var(--font-body);cursor:pointer;background:0 0;border:none;padding:3px 10px}.backlog-lens button.on{background:var(--accent-primary);color:var(--on-accent)}.backlog-filter-toggle{border:1px solid var(--border);font-size:var(--fs-meta);font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:2px 10px}.backlog-filter-toggle:hover{color:var(--text-primary)}.backlog-filter-toggle.is-narrowed{border-color:var(--accent-secondary);color:var(--accent-secondary)}.backlog-sort{min-width:0;color:var(--text-muted);font-size:var(--fs-meta);align-items:center;gap:4px;margin-left:auto;display:flex}.backlog-sort select{background:var(--bg-surface);border:1px solid var(--border);min-width:0;color:var(--text-primary);font-size:var(--fs-meta);font-family:var(--font-body);border-radius:4px;padding:1px 4px}.backlog-filter-panel{border:1px solid var(--border);background:var(--bg-surface);font-size:var(--fs-meta);color:var(--text-secondary);border-radius:8px;flex-direction:column;gap:8px;padding:8px 10px;display:flex}.backlog-filter-label{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-muted);margin-bottom:2px;font-weight:700}.backlog-filter-sub{color:var(--text-muted);margin-top:4px;font-style:italic}.backlog-filter-projects{max-height:170px;overflow-y:auto}.backlog-filter-project{align-items:center;gap:8px;padding:1px 0;display:flex}.backlog-filter-project:hover .project-filter-only{opacity:1}.backlog-filter-project label,.backlog-filter-checks label{cursor:pointer;align-items:center;gap:6px;min-width:0;display:flex}.backlog-filter-project label{flex:1}.backlog-filter-project label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.backlog-filter-checks{flex-wrap:wrap;gap:4px 14px;display:flex}.backlog-filter-count{color:var(--text-muted);flex-shrink:0;margin-left:auto;font-style:normal}.backlog-filter-summary{color:var(--text-secondary);font-size:var(--fs-meta);align-items:center;gap:8px;display:flex}.backlog-chip{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;background:var(--hover);max-width:120px;color:var(--text-secondary);font-size:var(--fs-badge);border-radius:999px;margin-right:6px;padding:0 6px;display:inline-block;overflow:hidden}.backlog-flat{padding:4px 6px}.teach-state>.btn-secondary{align-self:flex-start;margin-top:10px}.project-picker{gap:6px}.project-picker .project-filter-search{margin-top:2px}.project-picker-list{flex-direction:column;max-height:260px;display:flex;overflow-y:auto}.project-picker-list>*{flex:none}.project-picker-row{text-align:left;font-size:var(--fs-body);font-family:var(--font-body);color:var(--text-primary);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:4px 8px;overflow:hidden}.project-picker-row:hover{background:var(--hover-strong)}.project-picker-row.is-none{color:var(--text-secondary);font-style:italic}.backlog-row.is-feature-over{outline:2px dashed var(--accent-secondary);outline-offset:-2px}.backlog-row-feature .backlog-row-rank{color:var(--text-muted)}.backlog-row-feature .backlog-row-name{gap:4px;padding-left:8px}.backlog-row-feature .backlog-row-title{min-width:56px;color:var(--text-secondary);flex:1 1 0;font-weight:400}.backlog-row-project{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;max-width:64px;overflow:hidden}.backlog-row-group{cursor:pointer}.backlog-row-group .backlog-row-title{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-secondary);font-weight:700}.backlog-row-group .backlog-row-forecast{color:var(--text-muted);font-style:italic}.backlog-row-toggle{border:1px solid var(--border);font-size:var(--fs-badge);font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;padding:0 6px;line-height:15px}.backlog-row-toggle:hover{color:var(--text-primary);border-color:var(--accent-secondary)}.swimlane-features-waiting{pointer-events:auto;font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--warning-text);cursor:pointer;background:0 0;border:none;padding:0}.swimlane-features-waiting:hover{text-decoration:underline}.plan-popover-backdrop{z-index:2200;position:fixed;inset:0}.plan-popover{z-index:2201;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--card-radius);max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);box-shadow:var(--card-shadow);font-family:var(--font-body);font-size:var(--fs-meta);color:var(--text-secondary);flex-direction:column;gap:8px;padding:12px 14px;animation:.16s ease-out kfp-pop;display:flex;position:fixed;overflow-y:auto}.plan-popover-head{flex-direction:column;gap:1px;display:flex}.plan-popover-eyebrow{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-muted);font-weight:700}.plan-popover-title{font-size:var(--fs-body);color:var(--text-primary);font-weight:600}.plan-popover-project{color:var(--text-muted)}.plan-popover-choice{cursor:pointer;align-items:flex-start;gap:8px;line-height:1.9;display:flex}.plan-popover-choice>input[type=radio]{margin-top:7px}.plan-popover-choice em{color:var(--text-muted);font-style:normal}.plan-popover-days,.plan-popover select{background:var(--bg-app);border:1px solid var(--border);font-size:var(--fs-meta);font-family:var(--font-body);color:var(--text-primary);border-radius:4px;padding:2px 6px}.plan-popover-days{width:60px}.plan-popover select{max-width:100%;margin-top:2px;display:block}.plan-popover-effect{color:var(--text-secondary);margin:-2px 0 0 24px;line-height:1.5}.plan-popover-effect b{color:var(--text-primary)}.plan-popover-effect.is-error{color:var(--error-bright)}.plan-popover-actions{justify-content:flex-end;gap:8px;margin-top:2px;display:flex}.plan-features{border-bottom:1px solid var(--border);font-size:var(--fs-meta);color:var(--text-secondary);padding:8px 14px 10px}.plan-features-head{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.plan-features-head>span:first-child{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-muted);font-weight:700}.plan-features-head .backlog-link-btn{margin-left:auto}.plan-feature{align-items:center;gap:8px;padding:2px 0;display:flex}.plan-feature-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);font-size:var(--fs-body);flex:1;overflow:hidden}.plan-features-add{border:1px dashed var(--border);width:100%;font-size:var(--fs-meta);font-family:var(--font-body);color:var(--text-primary);background:0 0;border-radius:6px;margin-top:4px;padding:3px 8px}.plan-features-add:focus{border-style:solid;border-color:var(--accent-secondary);outline:none}.plan-feature-choices{border:1px solid var(--border);background:var(--bg-surface);scrollbar-width:thin;border-radius:6px;flex-direction:column;max-height:190px;margin-top:4px;padding:3px 0;display:flex;overflow-y:auto}.plan-feature-choices>*{flex:none}.plan-feature-choice{cursor:pointer;align-items:center;gap:8px;padding:3px 8px;display:flex}.plan-feature-choice.is-active{background:var(--hover-strong)}.plan-feature-choice.is-create .plan-feature-title{font-weight:600}.plan-feature-choice-note{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:50%;color:var(--text-muted);font-size:var(--fs-meta);flex-shrink:1;overflow:hidden}.plan-feature-choice-group{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-muted);padding:4px 8px 1px;font-weight:700}.plan-feature-choice-hint{color:var(--text-muted);font-size:var(--fs-meta);padding:3px 8px;font-style:italic}.backlog-assign{font-size:var(--fs-meta);background:var(--bg-app);border:1px solid var(--border);color:var(--text-secondary);border-radius:4px;max-width:120px;padding:1px 4px}.backlog-card-head{cursor:pointer;align-items:center;gap:6px;min-width:0;display:flex}.backlog-card-grip{color:var(--text-muted);cursor:grab;-webkit-user-select:none;user-select:none;padding:0 2px}.backlog-card-rank{font-family:var(--font-display);font-size:var(--fs-badge);color:var(--text-muted);flex-shrink:0;font-weight:700}.backlog-card-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-body);color:var(--text-primary);flex:1;font-weight:600;overflow:hidden}.backlog-card-owners{flex-shrink:0;gap:2px;display:inline-flex}.backlog-card-items{flex-shrink:0;position:static}.backlog-card-caret{color:var(--text-muted);font-size:var(--fs-label);text-align:center;flex-shrink:0;width:12px}.backlog-card-shape-row,.backlog-card-forecast,.backlog-card-reason,.backlog-card-needed,.backlog-card-actions{margin-left:22px}.backlog-card-shape-row{align-items:center;gap:8px;margin-top:6px;display:flex}.backlog-shape{background:var(--hover);border-radius:3px;flex:1;height:6px;position:relative;overflow:hidden}.backlog-shape.is-empty{height:auto;color:var(--text-muted);background:0 0;font-style:italic;overflow:visible}.backlog-shape-seg{opacity:.85;border-radius:3px;position:absolute;top:0;bottom:0}.backlog-card-length{color:var(--text-muted);flex-shrink:0}.backlog-card-length.is-longer{color:var(--warning-text);font-weight:600}.backlog-card-forecast{color:var(--text-primary);margin-top:6px;font-weight:600}.backlog-card-reason{color:var(--text-muted);margin-top:1px}.backlog-card-needed{margin-top:2px}.backlog-card-actions{align-items:center;gap:10px;margin-top:8px;display:flex}.backlog-card-actions-spacer{flex:1}.backlog-schedule-btn{font-size:var(--fs-meta);padding:4px 12px}.backlog-link-btn{color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;padding:0}.backlog-link-btn:hover{color:var(--text-primary);text-decoration:underline}.backlog-link-btn.danger{color:var(--text-muted)}.backlog-link-btn.danger:hover,.backlog-link-btn.danger.confirm{color:var(--error-bright)}.backlog-editor{border-top:1px solid var(--border);cursor:default;flex-direction:column;gap:10px;margin:10px 0 0 22px;padding-top:10px;display:flex}.backlog-field{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.backlog-field>span:first-child{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--text-muted);font-weight:700}.backlog-field-row{gap:10px;display:flex}.backlog-hours-row{flex-wrap:wrap;align-items:flex-end;gap:6px 8px;display:flex}.backlog-hours-cell{flex-direction:column;gap:2px;margin:0;display:flex}.backlog-hours-cell small{font-size:var(--fs-badge);color:var(--text-muted)}.backlog-editor .backlog-hours-cell input{width:72px}.backlog-hours-total{font:600 var(--fs-meta) var(--font-display);color:var(--text-primary);padding-bottom:5px}.backlog-hours-note{font-size:var(--fs-badge);color:var(--text-muted);line-height:1.4}.backlog-hours-note .backlog-link-btn{font-size:inherit;padding:0}.backlog-editor input,.backlog-editor select{background:var(--bg-app);border:1px solid var(--border);font-size:var(--fs-meta);font-family:var(--font-body);color:var(--text-primary);border-radius:4px;min-width:0;padding:4px 6px}.backlog-editor input:focus,.backlog-editor select:focus{border-color:var(--accent-secondary);outline:none}.backlog-notes-editor{background:var(--bg-app);border:1px solid var(--border);min-height:40px;font-size:var(--fs-meta);color:var(--text-primary);border-radius:4px;padding:4px 6px}.backlog-chip-btn{background:var(--bg-app);border:1px solid var(--border);font-size:var(--fs-meta);font-family:var(--font-body);color:var(--text-primary);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:4px;min-width:0;padding:4px 6px;overflow:hidden}.backlog-chip-btn:hover{border-color:var(--border-strong)}.backlog-after{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.backlog-after-chip{background:var(--hover);color:var(--text-primary);border-radius:999px;align-items:center;gap:4px;padding:2px 4px 2px 8px;display:inline-flex}.backlog-after-chip button{color:var(--text-muted);cursor:pointer;font-size:var(--fs-body);background:0 0;border:none;line-height:1}.backlog-phases{flex-direction:column;gap:4px;display:flex}.backlog-phase{grid-template-columns:minmax(0,1fr) 52px 52px 18px;grid-template-areas:"type start weeks remove""needs needs needs.";align-items:center;gap:4px;display:grid}.backlog-phase+.backlog-phase:not(.backlog-phase-head){border-top:1px dashed var(--border);padding-top:4px}.backlog-phase-head{grid-template-areas:"type start weeks remove"}.backlog-phase-start{grid-area:start;display:flex}.backlog-phase-weeks{grid-area:weeks;display:flex}.backlog-phase-start input,.backlog-phase-weeks input{width:100%}.backlog-phase-remove{grid-area:remove}.backlog-phase-head{font-size:var(--fs-badge);color:var(--text-muted)}.backlog-phase-type{grid-area:type;align-items:center;gap:4px;min-width:0;display:flex}.backlog-phase-type select{flex:1}.backlog-phase-swatch{border-radius:2px;flex-shrink:0;align-self:stretch;width:4px}.backlog-phase-needs{grid-area:needs;gap:4px;min-width:0;padding-left:8px;display:flex}.backlog-phase-needs select,.backlog-phase-needs .backlog-chip-btn{flex:1}.backlog-phase-remove{color:var(--text-muted);cursor:pointer;font-size:var(--fs-body);background:0 0;border:none;padding:0}.backlog-phase-remove:hover{color:var(--error-bright)}.backlog-plan-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.backlog-golive{color:var(--text-secondary);align-items:center;gap:4px;display:inline-flex}.schedule-backlog-start{align-items:center;gap:6px;margin-bottom:12px;display:flex}.modal .schedule-backlog-start input{flex:1;width:auto;margin-bottom:0}.schedule-backlog-chip{border:1px solid var(--border);font-size:var(--fs-meta);font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:4px 10px}.schedule-backlog-chip:hover{color:var(--text-primary)}.schedule-backlog-chip.on{border-color:var(--accent-secondary);color:var(--text-primary)}.schedule-backlog-summary{background:var(--bg-app);font-size:var(--fs-meta);color:var(--text-primary);border-radius:8px;flex-direction:column;gap:4px;margin-bottom:8px;padding:10px 12px;display:flex}.schedule-backlog-summary .is-ok{color:var(--success-text)}.schedule-backlog-summary .is-note{color:var(--text-secondary)}.schedule-backlog-clashes{color:var(--contention)}.schedule-backlog-clashes ul{color:var(--text-secondary);margin:4px 0 0 16px}.export-dialog{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--card-radius);width:min(1180px,94vw);height:min(760px,92vh);box-shadow:var(--card-shadow);color:var(--text-primary);grid-template-columns:300px minmax(0,1fr);display:grid;overflow:hidden}.export-options{border-right:1px solid var(--border);font-size:var(--fs-body);padding:18px 18px 28px;overflow-y:auto}.export-options h2{font-size:var(--fs-detail);margin:0 0 14px;font-weight:600}.export-group{margin-top:18px}.export-group-title{margin-bottom:6px}.export-field{flex-direction:column;gap:6px;display:flex}.export-input{border:1px solid var(--border);background:var(--bg-surface);width:100%;color:var(--text-primary);font-size:var(--fs-body);font-family:var(--font-body);border-radius:4px;padding:6px 8px}.export-input:focus{border-color:var(--accent-secondary);outline:none}.export-segmented{margin:2px 0 6px}.export-segmented button:disabled{cursor:default;opacity:.5}.export-check{cursor:pointer;align-items:center;gap:8px;min-width:0;padding:3px 0;display:flex}.export-check input{accent-color:var(--accent-primary);flex:none;margin:0}.export-check-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.export-check-meta{font-size:var(--fs-meta);color:var(--text-muted);flex:none;margin-left:auto}.export-check.is-disabled,.export-row-label.is-disabled{color:var(--text-muted);cursor:default}.export-hint{font-size:var(--fs-meta);color:var(--text-muted);margin:-1px 0 4px 24px}.export-hint-warn{color:var(--warning-text)}.export-sub{margin:2px 0 4px 24px}.export-months{font-size:var(--fs-meta);color:var(--text-secondary);align-items:center;gap:6px;display:flex}.export-months .export-input{flex:1;width:auto;min-width:0}.export-row{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.export-row .export-segmented{margin:0}.export-sub .export-row-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-meta);color:var(--text-secondary);overflow:hidden}.export-sub .export-hint-flush{margin-top:4px;margin-left:0}.export-chips{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.export-chip{border:1px solid var(--border-strong);color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:999px;padding:3px 10px;font-weight:600}.export-chip.on{background:var(--accent-primary);color:var(--on-accent);border-color:#0000}.export-projects-head{font-size:var(--fs-meta);color:var(--text-secondary);justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.export-reset{margin-top:0}.export-project-section+.export-project-section{margin-top:6px}.export-check-section .export-check-label{font-weight:600}.export-check-project{padding-left:20px}.export-main{flex-direction:column;min-width:0;min-height:0;display:flex}.export-stage{background:var(--bg-app);outline:none;flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.export-stage canvas{background:#fff;display:block;box-shadow:0 1px 2px #0000001f,0 6px 18px #00000024}.export-stage-message{font-size:var(--fs-body);color:var(--text-secondary);text-align:center;max-width:420px}.export-pager{font-size:var(--fs-meta);color:var(--text-secondary);border-top:1px solid var(--border);justify-content:center;align-items:center;gap:12px;padding:6px 12px;display:flex}.export-pager b{color:var(--text-primary);font-weight:600}.export-pager-btn{border:1px solid var(--border);width:26px;height:22px;color:var(--text-primary);cursor:pointer;background:0 0;border-radius:6px;font-size:15px;line-height:1}.export-pager-btn:hover:not(:disabled){background:var(--hover)}.export-pager-btn:disabled{opacity:.35;cursor:default}.export-footer{border-top:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;display:flex}.export-status{min-width:0;font-size:var(--fs-meta);color:var(--text-secondary);flex:1}.export-error{color:var(--error-bright)}.export-logos{border-radius:8px;transition:background .12s}.export-logos.is-drop{background:var(--hover);outline:1px dashed var(--accent-secondary);outline-offset:4px}.export-logo-row{border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;align-items:center;gap:8px;margin-bottom:4px;padding:4px 6px;display:flex}.export-logo-row.is-dragging{opacity:.45}.export-logo-grip{color:var(--text-muted);letter-spacing:-2px;cursor:grab;background:0 0;border:none;padding:0 2px;font-size:12px}.export-logo-grip:focus-visible{outline:2px solid var(--accent-secondary);border-radius:3px}.export-logo-thumb{border:1px solid var(--border);background:#fff;border-radius:3px;flex:none;justify-content:center;align-items:center;width:56px;height:24px;padding:2px 4px;display:flex}.export-logo-thumb img{object-fit:contain;max-width:100%;max-height:100%}.export-logo-on{accent-color:var(--accent-primary);margin:0 0 0 auto}.export-logo-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:15px;line-height:1}.export-logo-remove:hover{color:var(--error-bright)}.export-logo-add{border:1px dashed var(--border-strong);width:100%;color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:6px;padding:6px;font-weight:600}.export-logo-add:hover:not(:disabled){background:var(--hover);color:var(--text-primary)}.export-logo-add:disabled{cursor:default;opacity:.6}.export-logo-hint{margin:4px 0 0}.people-sort-cell{justify-content:flex-end;display:flex}.people-sort{border:1px solid var(--border);text-transform:none;letter-spacing:0;border-radius:6px;display:inline-flex;overflow:hidden}.people-sort button{font:600 var(--fs-badge) var(--font-body);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:1px 8px}.people-sort button+button{border-left:1px solid var(--border)}.people-sort button:hover:not(.is-on){background:var(--hover);color:var(--text-primary)}.people-sort button.is-on{background:var(--accent-secondary);color:var(--on-secondary)}:is(.modal,.export-dialog,.bar-env-popover,.phase-type-picker,.alloc-card,.plan-popover,.period-pop,.leave-box,.cap-pop,.av-loads-pop) :is(h1,h2,header,.bar-env-popover-title,.plan-popover-head,.alloc-card-head,.phase-type-picker-title,[data-drag-handle]),:is(.leave-box,.cap-pop,.period-editor)>h3:first-of-type{cursor:move;-webkit-user-select:none;user-select:none}body.is-moving-popup,body.is-moving-popup *{cursor:move!important;-webkit-user-select:none!important;user-select:none!important}body.is-moving-popup[data-popup-cursor=nwse-resize],body.is-moving-popup[data-popup-cursor=nwse-resize] *{cursor:nwse-resize!important}:is(.modal,.export-dialog,.bar-env-popover,.phase-type-picker,.alloc-card,.plan-popover,.period-pop,.leave-box,.cap-pop,.av-loads-pop,.key-features-popover){background-image:linear-gradient(135deg, transparent 0 52%, color-mix(in srgb, var(--text-muted) 75%, transparent) 52% 60%, transparent 60% 72%, color-mix(in srgb, var(--text-muted) 75%, transparent) 72% 80%, transparent 80%);background-position:right 3px bottom 3px;background-repeat:no-repeat;background-size:11px 11px}.people-roster-person.is-drop-before{box-shadow:inset 0 2px 0 var(--accent-secondary)}.people-roster-person.is-drop-after{box-shadow:inset 0 -2px 0 var(--accent-secondary)}.vm-name input:focus-visible,.swimlane-project textarea:focus-visible,.swimlane-features textarea:focus-visible,.chapter-rename:focus-visible,.rich-text-editor:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:-2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.menu-item-action:focus-visible{background:var(--hover);outline:2px solid var(--accent-secondary);outline-offset:-2px}.modal:focus,.export-dialog:focus{outline:none}.swimlane-project.has-slip .swimlane-project-stack{padding-right:52px}.swimlane-project.has-slip:has(.swimlane-item-badge) .swimlane-project-stack{padding-right:76px}.save-conflict-not-kept{border-left:3px solid var(--accent-secondary);background:color-mix(in srgb, var(--accent-secondary) 10%, var(--bg-surface));font-size:var(--fs-meta);color:var(--text-primary);margin:0;padding:6px 10px;line-height:1.45}.keep-both-review{max-width:560px}.keep-both-list{max-height:40vh;font-size:var(--fs-body);color:var(--text-primary);margin:0 0 12px;padding-left:18px;line-height:1.45;overflow-y:auto}.keep-both-list li+li{margin-top:4px}.keep-both-also{margin-bottom:4px}.keep-both-note{font-size:var(--fs-meta)}.merge-result-card{z-index:2000;background:var(--bg-surface);border:1px solid var(--border);border-left:3px solid var(--accent-secondary);width:400px;max-width:calc(100vw - 32px);max-height:60vh;box-shadow:var(--card-shadow);font-family:var(--font-body);color:var(--text-primary);border-radius:8px;padding:12px 14px;position:absolute;bottom:52px;right:16px;overflow-y:auto}.merge-result-head{font-size:var(--fs-body);align-items:flex-start;gap:8px;margin-bottom:8px;line-height:1.4;display:flex}.merge-result-head strong{flex:1;font-weight:600}.merge-result-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:18px;line-height:1}.merge-result-close:hover{color:var(--text-primary)}.merge-result-copy{font-size:var(--fs-meta);color:var(--text-secondary);margin:0 0 6px;line-height:1.45}.merge-result-card .keep-both-list{font-size:var(--fs-meta);max-height:none;margin-bottom:8px}.merge-result-actions{gap:8px;margin-top:8px;display:flex}.modal.team-plans,.modal.team-share{width:560px;max-width:calc(100vw - 32px);max-height:86vh;overflow-y:auto}.team-plans-list,.team-share-list{border:1px solid var(--border);border-radius:6px;max-height:320px;margin:0 0 16px;padding:0;list-style:none;overflow-y:auto}.team-plans-list li,.team-share-list li{align-items:center;gap:8px;padding:0 8px 0 0;display:flex}.team-plans-list li+li,.team-share-list li+li{border-top:1px solid var(--border)}.team-plans-list li.is-open{background:var(--hover)}.team-plans-open{text-align:left;min-width:0;font-family:var(--font-body);color:var(--text-primary);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.team-plans-open:hover{background:var(--hover)}.team-plans-open:disabled{cursor:progress}.team-plans-name{font-weight:600;font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.team-plans-meta,.team-share-email{font-size:var(--fs-meta);color:var(--text-secondary)}.team-plans-flag{font-size:var(--fs-badge);color:var(--accent-secondary);font-weight:600}.team-plans-row-actions{flex-shrink:0;gap:2px;display:flex}.team-plans-rename{flex:1;align-items:center;gap:6px;padding:8px 12px;display:flex}.modal .team-plans-rename input{flex:1;margin:0}.team-plans-new{border-top:1px solid var(--border);padding-top:14px}.team-plans-new label{color:var(--text-primary);font-weight:600}.team-plans-new-actions,.team-plans-signin{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.team-plans-problem{color:var(--error-bright);font-size:var(--fs-meta);margin:0 0 12px}.team-plans-empty{color:var(--text-secondary)}.team-share-add{align-items:flex-start;gap:8px;display:flex}.modal .team-share-add input{flex:1;margin-bottom:8px}.modal .team-share-add select{width:auto;margin-bottom:8px}.team-share-add button{flex-shrink:0}.team-share-said{font-size:var(--fs-meta);color:var(--text-secondary);margin:0 0 12px}.team-share-heading{font-size:var(--fs-meta);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:8px 0 6px;font-weight:600}.team-share-who{flex-direction:column;flex:1;min-width:0;padding:8px 12px;display:flex}.team-share-name{font-size:var(--fs-body);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-share-role{font-size:var(--fs-meta);color:var(--text-secondary);flex-shrink:0;align-items:center;gap:4px;display:flex}.modal .team-share-role select{width:auto;margin:0;padding:3px 6px}.modal select.team-share-access{width:auto}.toolbar-doc-team{font-size:var(--fs-badge);border:1px solid var(--border-strong);color:var(--text-secondary);white-space:nowrap;border-radius:999px;padding:1px 6px;font-weight:600}.toolbar-doc-team.is-view-only{border-color:var(--accent-secondary);color:var(--accent-secondary)}.toolbar .toolbar-publish{color:var(--accent-secondary);font-weight:600;border-color:var(--accent-secondary)!important}.view-only-note{z-index:2000;background:var(--bg-surface);border:1px solid var(--accent-secondary);max-width:calc(100vw - 32px);box-shadow:var(--card-shadow);font-family:var(--font-body);font-size:var(--fs-meta);color:var(--text-primary);pointer-events:none;border-radius:8px;padding:8px 14px;animation:4s forwards view-only-note;position:absolute;bottom:56px;left:50%;transform:translate(-50%)}@keyframes view-only-note{0%,85%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}.modal.keep-both-review{width:600px;max-width:calc(100vw - 32px);max-height:86vh;overflow-y:auto}.keep-both-choices{border:1px solid var(--border);border-radius:6px;max-height:44vh;margin:0 0 12px;padding:0;list-style:none;overflow-y:auto}.keep-both-choices li{padding:10px 12px}.keep-both-choices li+li{border-top:1px solid var(--border)}.keep-both-what{font-weight:600;font-size:var(--fs-body);color:var(--text-primary);margin-bottom:6px}.keep-both-was{color:var(--text-secondary);font-weight:400}.keep-both-ways{flex-direction:column;gap:4px;display:flex}.modal .keep-both-ways label{font-size:var(--fs-meta);text-transform:none;letter-spacing:normal;color:var(--text-secondary);cursor:pointer;border-radius:4px;align-items:flex-start;gap:8px;margin:0;padding:4px 8px;font-weight:400;display:flex}.modal .keep-both-ways label.is-chosen{background:color-mix(in srgb, var(--accent-secondary) 10%, var(--bg-surface));color:var(--text-primary)}.modal .keep-both-ways input{flex-shrink:0;width:auto;margin:2px 0 0}.keep-both-fixed{font-size:var(--fs-meta);color:var(--text-secondary);margin:0}.keep-both-all{gap:8px;margin-bottom:12px;display:flex}.swimlane-who-line{align-items:center;gap:6px;min-width:0;height:14px;display:flex}.swimlane-who-line .swimlane-mix{flex:0 auto;min-width:0}.cap-chips{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.cap-chip{border:1px solid var(--border);height:14px;color:var(--text-secondary);font:600 var(--fs-badge) / 12px var(--font-display);white-space:nowrap;cursor:default;background:0 0;border-radius:999px;align-items:center;padding:0 6px;display:inline-flex}.cap-chip.is-over{border-color:var(--error-bright);color:var(--error-bright);cursor:pointer}.cap-chip.is-over[aria-expanded=true]{background:color-mix(in srgb, var(--error-bright) 10%, transparent)}.cap-chip.is-over:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:1px}.cap-pop.cap-over{width:340px}.cap-over-person{border-top:1px solid var(--border);padding:10px 0 8px}.cap-over-top{align-items:baseline;gap:6px;min-width:0;display:flex}.cap-over-name{font:700 var(--fs-body) var(--font-display);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cap-over-role{font-size:var(--fs-meta);color:var(--text-muted);white-space:nowrap}.cap-over-pct{font:700 var(--fs-detail) var(--font-display);color:var(--error-bright);margin-left:auto}.cap-over-week{font-size:var(--fs-meta);color:var(--text-secondary);margin:1px 0 7px}.cap-over-track{background:var(--bg-app);border-radius:4px;height:14px;position:relative;overflow:hidden}.cap-over-seg{box-shadow:inset -1px 0 0 var(--bg-surface);position:absolute;top:0;bottom:0}.cap-over-lead{background:repeating-linear-gradient(135deg,#ffffff8c 0 2px,#0000 2px 5px);position:absolute;top:0;bottom:0;right:0}.cap-over-excess{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--error-bright) 75%, transparent) 0 3px, color-mix(in srgb, var(--error-bright) 30%, transparent) 3px 6px);position:absolute;top:0;bottom:0}.cap-over-time{background:var(--text-primary);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.cap-over-scale{height:12px;font-size:var(--fs-badge);color:var(--text-muted);margin-top:2px;position:relative}.cap-over-scale span{white-space:nowrap;position:absolute;top:0;transform:translate(-50%)}.cap-over-parts{font-size:var(--fs-meta);flex-direction:column;gap:3px;margin:6px 0 0;padding:0;list-style:none;display:flex}.cap-over-parts li{align-items:center;gap:6px;min-width:0;display:flex}.cap-over-parts i{border-radius:2px;flex:none;width:9px;height:9px}.cap-over-parts span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-secondary);flex:1;overflow:hidden}.cap-over-parts span.is-this{color:var(--text-primary);font-weight:600}.cap-over-parts em{color:var(--text-muted);white-space:nowrap;font-style:normal}.cap-over-parts b{font:700 var(--fs-meta) var(--font-display);text-align:right;min-width:34px}.cap-over-run{font-size:var(--fs-meta);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.cap-over-strip{flex:none;gap:2px;display:inline-flex}.cap-over-strip i{background:var(--border);border-radius:1px;width:5px;height:10px}.cap-over-strip i.is-over{background:var(--error-bright)}.cap-chip.is-gap{border-color:var(--error-bright);color:var(--error-bright);cursor:pointer}.cap-chip.is-gap:hover{background:color-mix(in srgb, var(--error-bright) 10%, transparent)}.cap-panel{min-height:0;font-size:var(--fs-body);flex-direction:column;flex:1;gap:12px;padding:12px 14px 24px;display:flex;overflow-y:auto}.cap-panel>*{flex-shrink:0}.cap-total{font-size:var(--fs-meta);color:var(--text-secondary);flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.cap-total b{font:700 16px var(--font-display);color:var(--text-primary);margin-right:3px}.cap-total b.is-bad{color:var(--error-bright)}.cap-link{color:var(--accent-secondary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.cap-link:hover{text-decoration:underline}.cap-section{flex-direction:column;gap:8px;display:flex}.cap-section h3{font:700 var(--fs-detail) var(--font-display);color:var(--text-primary);align-items:baseline;gap:8px;margin:0;display:flex}.cap-count{font:600 var(--fs-badge) var(--font-display);color:var(--warning-text)}.cap-muted{color:var(--text-muted)}.cap-off{text-align:left;align-items:flex-start}.cap-ticks{font-size:var(--fs-meta);color:var(--text-primary);flex-direction:column;gap:4px;display:flex}.cap-ticks label{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.cap-ticks input{margin:0}.cap-swatch{border-radius:2px;width:10px;height:4px;display:inline-block}.cap-checks{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.cap-check-head{font-size:var(--fs-meta);color:var(--text-secondary);line-height:1.45}.cap-check{min-width:0;font-size:var(--fs-meta);color:var(--text-primary);align-items:center;gap:6px;display:flex}.cap-check>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cap-check select{font:inherit;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:1px 4px}.cap-lede{font-size:var(--fs-meta);color:var(--text-secondary);margin:0;line-height:1.5}.cap-controls{font-size:var(--fs-meta);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.cap-controls select{font:inherit;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:2px 6px}.cap-controls label{cursor:pointer;align-items:center;gap:5px;display:inline-flex}.cap-box{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:5px;padding:8px 10px;display:flex}.cap-box.is-hot{border-color:var(--accent-secondary);box-shadow:0 0 0 1px var(--accent-secondary) inset}.cap-unit-top{align-items:baseline;gap:8px;display:flex}.cap-unit-name{font:600 var(--fs-body) var(--font-display);color:var(--text-primary);flex:1;min-width:0}.cap-unit-dates{font:600 var(--fs-meta) var(--font-display);color:var(--text-primary);white-space:nowrap}.cap-why{font-size:var(--fs-meta);color:var(--text-secondary);line-height:1.45}.cap-acts{flex-wrap:wrap;gap:6px;display:flex}.cap-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);font:600 var(--fs-meta) var(--font-display);cursor:pointer;border-radius:6px;padding:2px 9px}.cap-btn:hover{background:var(--hover)}.cap-btn.is-primary{background:var(--accent-secondary);border-color:var(--accent-secondary);color:var(--on-secondary)}.cap-btn:disabled{opacity:.5;cursor:default}.cap-delta{font:700 var(--fs-badge) var(--font-display);white-space:nowrap;border-radius:999px;padding:0 6px;line-height:16px}.cap-delta.is-later{background:color-mix(in srgb, var(--warning) 22%, transparent);color:var(--warning-text)}.cap-delta.is-earlier{background:color-mix(in srgb, var(--success) 22%, transparent);color:var(--success-text)}.cap-delta.is-same{background:var(--hover);color:var(--text-secondary)}.cap-needs{font-size:var(--fs-meta);color:var(--text-secondary);border-top:1px dashed var(--border);padding-top:4px;line-height:1.5}.cap-needs b{color:var(--text-primary)}.cap-moves label{font-size:var(--fs-meta);color:var(--text-primary);cursor:pointer;align-items:flex-start;gap:6px;line-height:1.45;display:flex}.cap-moves .cap-gain{color:var(--success-text);font-weight:600}.cap-note{font-size:var(--fs-badge);color:var(--text-muted);line-height:1.45}.cap-busy{opacity:.55;pointer-events:none}.cap-card:focus{outline:none}.cap-card.is-pinned h3{padding-right:22px}.cap-card-close{width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:0;font-size:16px;line-height:22px;position:absolute;top:6px;right:6px}.cap-card-close:hover{background:var(--hover);color:var(--text-primary)}.cap-card-hint{font-size:var(--fs-badge);color:var(--text-muted);margin-top:8px}.cap-need-badge:focus{outline:none}.cap-need-badge:focus-visible rect{stroke:var(--accent-secondary);stroke-width:2px}.cap-pop.cap-needs-card{width:360px}.cap-need-chart{flex-direction:column;gap:5px;margin:2px 0 6px;display:flex}.cap-need-row{grid-template-columns:40px minmax(0,1fr) 44px;align-items:center;gap:6px;display:grid}.cap-need-label{font-size:var(--fs-meta);color:var(--text-muted)}.cap-need-end{font:600 var(--fs-badge) var(--font-display);color:var(--text-secondary);white-space:nowrap;text-align:right}.cap-need-track{background:var(--bg-app);border-radius:4px;height:14px;position:relative;overflow:hidden}.cap-need-track.is-thin{height:10px}.cap-need-bar{background:var(--accent-secondary);position:absolute;top:0;bottom:0}.cap-need-bar.is-drawn{background:color-mix(in srgb, var(--text-secondary) 45%, transparent)}.cap-need-bar.is-base{background:color-mix(in srgb, var(--accent-secondary) 45%, transparent)}.cap-need-excess{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--error-bright) 75%, transparent) 0 3px, color-mix(in srgb, var(--error-bright) 30%, transparent) 3px 6px);position:absolute;top:0;bottom:0}.cap-need-spare{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--success) 70%, transparent) 0 3px, color-mix(in srgb, var(--success) 20%, transparent) 3px 6px);position:absolute;top:0;bottom:0}.cap-need-capped{background:color-mix(in srgb, var(--text-muted) 35%, transparent);position:absolute;top:0;bottom:0}.cap-need-freeze{z-index:1;background:repeating-linear-gradient(45deg, var(--bg-surface) 0 2px, transparent 2px 5px);box-shadow:inset 1px 0 0 var(--bg-surface), inset -1px 0 0 var(--bg-surface);position:absolute;top:0;bottom:0}.cap-need-time{z-index:2;background:var(--text-primary);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.cap-need-legend{font-size:var(--fs-badge);color:var(--text-muted);flex-wrap:wrap;gap:3px 12px;margin-bottom:2px;display:flex}.cap-need-legend span{align-items:center;gap:4px;display:inline-flex}.cap-need-legend i{border-radius:2px;flex:none;width:14px;height:8px}.cap-need-legend i.is-excess{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--error-bright) 75%, transparent) 0 3px, color-mix(in srgb, var(--error-bright) 30%, transparent) 3px 6px)}.cap-need-legend i.is-spare{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--success) 70%, transparent) 0 3px, color-mix(in srgb, var(--success) 20%, transparent) 3px 6px)}.cap-need-legend i.is-freeze{background:repeating-linear-gradient(45deg, var(--bg-surface) 0 2px, transparent 2px 5px), var(--accent-secondary)}.cap-need-from{border-top:1px solid var(--border);flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;display:flex}.cap-need-from-title{font:700 var(--fs-meta) var(--font-display);color:var(--text-secondary)}.cap-need-note{font-size:var(--fs-meta);color:var(--text-secondary);line-height:1.45}.cap-need-note b{color:var(--text-primary)}.cap-need-role{flex-direction:column;gap:3px;padding:2px 0 4px;display:flex}.cap-need-role-top{min-width:0;font-size:var(--fs-meta);align-items:baseline;gap:6px;display:flex}.cap-need-role-top b{font:700 var(--fs-meta) var(--font-display);white-space:nowrap}.cap-need-role-top span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-muted);flex:1;overflow:hidden}.cap-need-role-top em{white-space:nowrap;font-style:normal;font-weight:600}.cap-need-after{font-size:var(--fs-meta);color:var(--text-secondary);margin-top:8px;line-height:1.45}.cap-needs-card .cap-acts{margin-top:8px}.cap-pop{z-index:1101;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--card-radius);width:360px;max-height:min(520px,100vh - 24px);box-shadow:var(--card-shadow);font-size:var(--fs-body);color:var(--text-primary);padding:12px 14px;position:fixed;overflow:auto}.cap-pop h3{font:700 var(--fs-detail) var(--font-display);margin:0 0 2px}.cap-pop-sub{font-size:var(--fs-meta);color:var(--text-muted);margin-bottom:8px}.cap-cand{border-top:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;gap:1px 8px;padding:6px 0;display:grid}.cap-cand-name{font:600 var(--fs-body) var(--font-display)}.cap-cand-why{font-size:var(--fs-meta);color:var(--text-secondary);grid-column:1}.cap-cand .cap-acts{grid-area:1/2/span 2}.cap-pop.is-who{flex-direction:column;width:380px;display:flex;overflow:hidden}.cap-pop-search{box-sizing:border-box;border:1px solid var(--border);background:var(--bg-app);width:100%;color:var(--text-primary);font:inherit;font-size:var(--fs-meta);border-radius:6px;margin:2px 0 6px;padding:5px 8px}.cap-pop-search:focus{border-color:var(--accent-secondary);outline:none}.cap-pop-list{flex:auto;min-height:0;margin:0 -14px;padding:0 14px;overflow-y:auto}.cap-pop-group{z-index:1;background:var(--bg-surface);font:700 var(--fs-badge) var(--font-display);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:6px 0 4px;position:sticky;top:0}.cap-cand-role{color:var(--text-muted);font-weight:400}.cap-cand-why.is-over{color:var(--error-bright)}.wl-body{flex-direction:column;gap:18px;display:flex}.wl-section{flex-direction:column;gap:6px;display:flex}.wl-lede{font-size:var(--fs-meta);color:var(--text-secondary);margin:0;line-height:1.55}.wl-section h3{font:700 var(--fs-detail) var(--font-display);color:var(--text-primary);align-items:baseline;gap:8px;margin:0 0 4px;display:flex}.wl-section h3 .wl-count{font:600 var(--fs-badge) var(--font-display);color:var(--text-muted)}.wl-table{border-collapse:collapse;font-size:var(--fs-meta)}.wl-table th,.wl-table td{border:1px solid var(--border);text-align:center;padding:3px 8px}.wl-table th{font:700 var(--fs-badge) var(--font-display);background:var(--bg-surface-2);color:var(--text-secondary)}.wl-table td:first-child,.wl-table th:first-child{text-align:left;white-space:nowrap}.modal .wl-table input{text-align:right;background:0 0;border-color:#0000;width:46px;margin:0;padding:1px 3px}.modal .wl-table input:hover,.modal .wl-table input:focus{border-color:var(--border);background:var(--bg-surface)}.wl-table td.is-changed input{color:var(--accent-secondary);font-weight:700}.wl-swatch{vertical-align:-1px;border:1px solid;border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.wl-items{font-size:var(--fs-meta);flex-direction:column;gap:4px;display:flex}.wl-items.is-cols{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:4px 14px;display:grid}.wl-item{align-items:center;gap:6px;min-width:0;display:flex}.wl-item>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.wl-item .wl-muted{color:var(--text-muted)}.wl-row{font-size:var(--fs-meta);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.modal .wl-row input[type=number]{width:60px;margin:0;padding:2px 4px}.modal .wl-row input[type=checkbox],.modal .wl-item input[type=checkbox]{width:auto;margin:0}.modal .wl-row select,.modal .wl-item select{width:auto;font-size:var(--fs-meta);margin:0;padding:1px 4px}.wl-row label,.wl-item label{color:var(--text-secondary);cursor:pointer;align-items:center;gap:5px;margin:0;display:inline-flex}.wl-chip{border:1px solid var(--border);font-size:var(--fs-meta);border-radius:999px;align-items:center;gap:4px;padding:0 4px 0 8px;display:inline-flex}.wl-chip button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 3px;font-size:13px;line-height:1}.wl-chip button:hover{color:var(--text-primary)}.wl-empty{font-size:var(--fs-meta);color:var(--text-muted)}button.people-load-row.cap-load-team{box-sizing:border-box;border:none;border-bottom:1px solid var(--border);width:100%;font:inherit;font-size:var(--fs-meta);color:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:0;padding-left:8px}button.people-load-row.cap-load-team:hover .people-load-name{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.cap-load-caret{width:10px;color:var(--text-muted);flex-shrink:0;font-size:9px}.people-load-row.cap-load-person{padding-left:30px}.people-load-row.cap-load-person .people-load-name{font-weight:500}.wl-section .wl-item,.wl-section .wl-row{font-size:var(--fs-meta)}.modal .wl-section label{text-transform:none;letter-spacing:normal;font-size:var(--fs-meta);color:var(--text-secondary);margin:0;font-weight:400;display:inline-flex}.cap-btn{white-space:nowrap}.toolbar .toolbar-capacity-btn{align-items:center;gap:6px;display:inline-flex}.toolbar-capacity-btn svg{flex:none}.toolbar .toolbar-capacity-btn.is-on{background:var(--accent-secondary);border-color:var(--accent-secondary);color:var(--on-secondary)}.wl-table tr.is-marker td:nth-child(n+2){opacity:.4}.modal .wl-titles select{width:auto;font-size:var(--fs-meta);margin:0;padding:1px 4px}.wl-titles td:nth-child(2){text-align:right}.wl-titles td:nth-child(3),.wl-titles th:nth-child(3){text-align:left}.wl-table tr.is-changed select{color:var(--accent-secondary);font-weight:700}.modal.work-modal{flex-direction:column;gap:12px;width:min(1120px,100vw - 32px);max-width:none;max-height:calc(100vh - 48px);display:flex}.work-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;display:flex}.work-title{min-width:0}.work-title .kicker{color:var(--text-muted)}.modal.work-modal h2{margin:2px 0 0}.work-stats{border:1px solid var(--border);border-radius:8px;margin:0;display:flex;overflow:hidden}.work-stats>div{border-left:1px solid var(--border);cursor:default;padding:5px 14px}.work-stats>div:first-child{border-left:none}.work-stats dt{font-size:var(--fs-badge);color:var(--text-muted);white-space:nowrap}.work-stats dd{font:700 var(--fs-meta) var(--font-display);color:var(--text-primary);white-space:nowrap;margin:0}.work-stats .is-short dd{color:var(--warning-text)}.work-stats .is-ok dd{color:var(--success-text)}.work-bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.work-bar-end{align-items:center;gap:14px;margin-left:auto;display:flex}.work-own-dot{background:var(--accent-secondary);vertical-align:2px;border-radius:50%;width:6px;height:6px;margin-left:6px;display:inline-block}.modal .work-add-role{width:auto;font-size:var(--fs-meta);margin:0;padding:2px 8px}.work-how{background:var(--bg-surface-2);font-size:var(--fs-meta);color:var(--text-secondary);border-radius:8px;padding:10px 14px;line-height:1.55}.work-how p{margin:0}.work-how p+p{margin-top:6px}.work-how b{color:var(--text-primary)}.work-scroll{border:1px solid var(--border);border-radius:8px;flex:0 auto;min-height:0;overflow:auto}.work-grid{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-meta)}.work-grid th,.work-grid td{border-bottom:1px solid var(--border);text-align:right;white-space:nowrap;vertical-align:middle;height:38px;padding:0 10px}.work-grid thead th{z-index:1;background:var(--bg-surface-2);height:30px;font:700 var(--fs-badge) var(--font-display);color:var(--text-secondary);position:sticky;top:0}.work-grid th:first-child,.work-grid td:first-child,.work-grid th.work-check-head{text-align:left}.work-grid td.work-name{white-space:normal;width:1%;min-width:220px;max-width:320px}.work-name-main{font:600 var(--fs-meta) var(--font-display);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;align-items:center;display:flex;overflow:hidden}.work-name-sub{font-size:var(--fs-badge);color:var(--text-muted);white-space:nowrap;padding-left:16px;line-height:1.3;display:block}.work-grid tr.work-group th{text-align:left;background:var(--bg-surface);height:28px;font:700 var(--fs-badge) var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.work-group-note{font:400 var(--fs-badge) var(--font-body);letter-spacing:0;text-transform:none;color:var(--text-secondary);margin-left:12px}.work-group-note.is-ok{color:var(--success-text)}.work-group-note .cap-link{font-size:var(--fs-badge);text-transform:none;letter-spacing:0}.modal .work-grid input{text-align:right;width:64px;font:400 var(--fs-meta) var(--font-body);background:0 0;border:1px solid #0000;border-radius:4px;margin:0;padding:3px 6px}.modal .work-grid input:hover{border-color:var(--border)}.modal .work-grid input:focus{border-color:var(--accent-secondary);background:var(--bg-surface)}.modal .work-grid input:disabled{opacity:.5}.modal .work-grid input::placeholder{color:var(--text-muted);opacity:.75}.work-grid td.is-hours input{color:var(--text-primary);font-weight:700}.work-grid td.is-override input{color:var(--warning-text)}.work-grid td.is-client{background:repeating-linear-gradient(45deg, transparent 0 4px, var(--hover) 4px 8px)}.work-grid td.work-total{color:var(--text-primary);font-weight:700}.work-grid td.work-check{text-align:left;white-space:normal;width:1%;min-width:220px;line-height:1.3}.work-tag{cursor:default;font-weight:700}.work-tag.is-ok{color:var(--success-text)}.work-tag.is-short{color:var(--warning-text)}.work-tag.is-muted{color:var(--text-muted);font-weight:400}.work-why{font-size:var(--fs-badge);color:var(--text-muted);cursor:default;display:block}.work-grid tr.is-marker .work-name-main{color:var(--text-muted)}.work-grid tr.is-aside td{opacity:.55}.work-grid tr.is-focus td{background:color-mix(in srgb, var(--accent-secondary) 10%, transparent)}.work-grid tbody tr:not(.work-group):hover td:not(.is-client){background:color-mix(in srgb, var(--hover) 60%, transparent)}.work-grid tfoot td{border-bottom:none;border-top:1px solid var(--border);color:var(--text-primary);font-weight:700}.work-grid.is-off tbody{opacity:.6}.work-unit{font-size:var(--fs-badge);color:var(--text-muted);margin-left:2px}.work-length{font-size:var(--fs-badge);color:var(--text-secondary);cursor:default}.work-pane-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 12px;display:flex}.modal label.work-toggle{font:600 var(--fs-meta) var(--font-display);letter-spacing:0;text-transform:none;color:var(--text-primary);cursor:pointer;align-items:center;gap:6px;margin:0;display:inline-flex}.modal .work-toggle input{width:auto;margin:0}.work-pane-note{font-size:var(--fs-badge);color:var(--text-secondary);flex:320px;line-height:1.45}.work-legend{font-size:var(--fs-badge);color:var(--text-muted);flex-wrap:wrap;gap:4px 16px;display:flex}.work-legend b{color:var(--text-primary)}.work-faint{color:var(--text-muted);opacity:.75}.work-hatch{vertical-align:-1px;border:1px solid var(--border);background:repeating-linear-gradient(45deg, transparent 0 3px, var(--hover) 3px 6px);width:14px;height:10px;margin-right:5px;display:inline-block}.work-foot{align-items:center;gap:24px;display:flex}.work-foot-note{font-size:var(--fs-badge);color:var(--text-muted);flex:1}.work-foot .btn-primary{flex:none}.alloc-card-people li:not(.alloc-card-muted){grid-template-columns:10px fit-content(55%) minmax(0,1fr) 20px;gap:2px 8px;display:grid}.alloc-card-people li .alloc-card-meta{text-align:right;white-space:normal;margin-left:0;overflow:visible}.alloc-card-people li .alloc-card-x{grid-area:1/4}.alloc-card-work{flex-wrap:wrap;grid-area:2/2/auto/4;gap:6px;display:flex}.alloc-card-work select{font-size:var(--fs-badge);color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:0 2px}.alloc-card-work select:hover,.alloc-card-work select:focus{border-color:var(--border);color:var(--text-primary)}.alloc-card-work select.alloc-card-role{color:var(--text-primary);font-weight:600}.alloc-card-work select.alloc-card-role.is-own{color:var(--accent-secondary)}.alloc-card-work select.alloc-card-role.is-missing{color:var(--warning-text);border-color:var(--warning)}.alloc-card-role-text{font-size:var(--fs-badge);color:var(--text-primary);padding:0 2px;font-weight:600}.wl-body>.wl-section+.wl-section{border-top:1px solid var(--border);padding-top:16px}.wl-section h3 .wl-count{border:1px solid var(--border);line-height:16px;font:600 var(--fs-badge) var(--font-display);color:var(--text-secondary);border-radius:999px;padding:0 7px}.wl-groups{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:12px;max-width:1120px;margin-top:4px;display:grid}.wl-groups-col{flex-direction:column;gap:12px;min-width:0;display:flex}.wl-group{border:1px solid var(--border);border-radius:8px;flex-direction:column;min-width:0;padding:10px 12px 8px;display:flex}.wl-group h4{font:700 var(--fs-badge) var(--font-display);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 2px}.wl-setting{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:7px 0;display:grid}.wl-group h4+.wl-setting{border-top:none}.wl-setting.is-stacked{grid-template-columns:minmax(0,1fr);gap:6px}.wl-setting.is-stacked .wl-setting-control{justify-self:start}.wl-setting-text{flex-direction:column;gap:1px;min-width:0;display:flex}.wl-setting-label{font:600 var(--fs-meta) var(--font-display);color:var(--text-primary)}.wl-setting-note{font-size:var(--fs-badge);color:var(--text-muted);line-height:1.4}.wl-setting-control{white-space:nowrap;font-size:var(--fs-meta);color:var(--text-secondary);align-items:center;gap:4px;display:inline-flex}.wl-figure{align-items:center;gap:3px;display:inline-flex}.modal .wl-figure input{text-align:right;width:50px;font:400 var(--fs-meta) var(--font-body);margin:0;padding:3px 6px}.wl-figure-unit{min-width:14px;color:var(--text-muted)}.wl-figure.is-changed input{color:var(--accent-secondary);border-color:color-mix(in srgb, var(--accent-secondary) 55%, var(--border));font-weight:700}.wl-reset{width:16px;color:var(--text-muted);cursor:pointer;visibility:hidden;background:0 0;border:none;padding:0;font-size:13px;line-height:1}.wl-reset:hover{color:var(--accent-secondary)}.wl-figure.is-changed .wl-reset{visibility:visible}.wl-for{color:var(--text-muted);padding:0 2px}.wl-lost{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 12px;margin-top:6px;display:grid}.wl-lost-at{white-space:nowrap;justify-content:space-between;align-items:center;gap:4px;display:flex}.modal .wl-section label.wl-switch{color:var(--text-primary);cursor:pointer;gap:6px;padding-right:20px}.modal .wl-switch input{width:auto;margin:0}.wl-group-foot{border-top:1px dashed var(--border);font-size:var(--fs-badge);color:var(--text-secondary);margin-top:4px;padding-top:8px;line-height:1.45}.wl-group-foot b{color:var(--text-primary)}.wl-table.wl-roles{align-self:flex-start;width:auto;min-width:440px}.wl-roles td{vertical-align:middle;white-space:nowrap;height:34px}.wl-roles td:nth-child(2){text-align:right;cursor:default;width:1%}.wl-roles .wl-oversight{border:1px solid var(--border);font-size:var(--fs-badge);color:var(--text-muted);cursor:help;border-radius:999px;margin-left:6px;padding:0 6px;line-height:16px;display:inline-block}.wl-roles td:last-child{width:auto}.modal .wl-roles select{width:100%;min-width:130px;font-size:var(--fs-meta);margin:0;padding:1px 4px}.wl-roles th{white-space:normal;vertical-align:bottom}.wl-explain{font-size:var(--fs-meta);color:var(--text-secondary);flex-direction:column;gap:3px;margin:0;padding-left:18px;line-height:1.55;display:flex}.wl-explain b{color:var(--text-primary)}.wl-warn-lede{color:var(--warning-text)}.modal .wl-table input[type=checkbox]{width:auto}.modal .wl-roles td:first-child input{text-align:left;background:0 0;border-color:#0000;width:150px}.modal .wl-roles td:first-child input:hover,.modal .wl-roles td:first-child input:focus{border-color:var(--border);background:var(--bg-surface)}.wl-add{align-items:center;gap:8px;display:flex}.modal .wl-add input{width:220px;font-size:var(--fs-meta);margin:0;padding:3px 8px}.wl-lede b{color:var(--text-primary)}.wl-muted{color:var(--text-muted);font-weight:400}.wl-off{color:var(--warning-text);font-weight:600}.wl-table-scroll{overflow-x:auto}.wl-tests td:first-child{min-width:140px}.wl-shares td{white-space:nowrap}.wl-split{width:100%}.modal .wl-split input{width:40px}.wl-split th:last-child{white-space:normal;min-width:90px}.wl-note{font-size:var(--fs-badge);color:var(--text-muted);text-align:left;margin-top:2px;display:block}.cap-total b.is-warn{color:var(--warning-text)}.periods-row{border-top:1px dashed var(--border);background:var(--bg-header);cursor:crosshair;box-sizing:border-box;position:absolute;left:0}.period-pill{box-sizing:border-box;height:17px;font-family:var(--font-display);white-space:nowrap;cursor:pointer;border:none;border-radius:4px;align-items:center;gap:6px;padding:0 6px;font-size:10px;font-weight:700;line-height:17px;display:flex;position:absolute;overflow:hidden}.period-pill.is-freeze{background:var(--freeze-pill);color:var(--freeze-ink);box-shadow:inset 0 0 0 1px var(--freeze-edge)}.period-pill.is-closure{background-color:var(--closure-pill);background-image:repeating-linear-gradient(135deg, var(--closure-hatch) 0 4px, transparent 4px 8px);color:var(--closure-ink);box-shadow:inset 0 0 0 1px var(--border-strong)}.period-pill:hover,.period-pill.is-hot{box-shadow:inset 0 0 0 1.5px var(--freeze-ink)}.period-pill-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.period-pill-dates{opacity:.75;flex:none;font-weight:600}.period-pill-count{background:var(--warning);color:#1a1408;border-radius:7px;flex:none;padding:0 5px;font-size:9px;line-height:13px}.periods-row-sel{border:1px dashed var(--freeze-ink);background:var(--freeze-band);pointer-events:none;box-sizing:border-box;border-radius:4px;height:17px;position:absolute;top:2px}.left-panel-periods-row{height:var(--periods-row-height);top:calc(var(--header-height) + var(--week-label-height));z-index:10;box-sizing:border-box;background:var(--bg-header);border-top:1px dashed var(--border);font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);align-items:flex-start;padding:3px 10px 0 26px;font-weight:700;display:flex;position:sticky}.left-panel-periods-row span{white-space:nowrap;text-overflow:ellipsis;flex:1;line-height:16px;overflow:hidden}.left-panel-periods-row button{color:var(--accent-secondary);font-family:var(--font-body);font-size:var(--fs-badge);letter-spacing:0;text-transform:none;cursor:pointer;background:0 0;border:none;border-radius:5px;flex:none;padding:0 4px;font-weight:600;line-height:16px}.left-panel-periods-row button:hover{background:color-mix(in srgb, var(--accent-secondary) 12%, transparent)}.swimlane-freeze-chip{background:var(--warning);color:#1a1408;height:16px;font-family:var(--font-display);font-size:var(--fs-badge);cursor:pointer;z-index:2;white-space:nowrap;border:none;border-radius:8px;padding:0 6px;font-weight:700;line-height:16px;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.swimlane-freeze-chip.has-badge{right:24px}.swimlane-freeze-chip.with-slip{top:4px;transform:none}.swimlane-slip-chip.with-freeze{top:auto;bottom:4px;transform:none}.swimlane-freeze-chip.is-quiet{color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border-strong);background:0 0}.period-scrim{z-index:1100;position:fixed;inset:0}.period-pop{z-index:1101;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--card-shadow);color:var(--text-primary);font-family:var(--font-body);border-radius:12px;position:fixed}.period-pop-x{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;font-size:17px;line-height:1;position:absolute;top:7px;right:8px}.period-pop-x:hover{background:var(--hover);color:var(--text-primary)}.period-list{width:470px;max-width:calc(100vw - 24px)}.period-list header{border-bottom:1px solid var(--border);padding:11px 38px 9px 14px}.period-list header b{font-family:var(--font-display);font-size:var(--fs-row);font-weight:700}.period-kind-tag{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;vertical-align:2px;border-radius:99px;margin-left:8px;padding:2px 6px;font-size:8.5px;font-weight:700}.period-kind-tag.is-freeze{background:var(--freeze-pill);color:var(--freeze-ink)}.period-kind-tag.is-closure{background:var(--closure-pill);color:var(--closure-ink);box-shadow:inset 0 0 0 1px var(--border-strong)}.period-list header p{font-size:var(--fs-meta);color:var(--text-secondary);margin:4px 0 0;line-height:1.45}.period-list-sub{font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);padding:8px 14px 4px;font-weight:700}.period-list-none{font-size:var(--fs-meta);color:var(--text-secondary);padding:4px 14px 12px}.period-list-items{max-height:320px;overflow:auto}.period-release{border-top:1px solid var(--grid-weekly);grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:1px 10px;padding:7px 14px;display:grid}.period-release-dot{background:var(--warning);border-radius:50%;width:8px;height:8px}.period-release.is-approved .period-release-dot{background:var(--text-muted)}.period-release-name{font-size:var(--fs-body);font-weight:600;line-height:1.35}.period-release-what{font-size:var(--fs-meta);color:var(--text-secondary);grid-column:2}.period-release-acts{grid-area:1/3/span 2;align-items:center;gap:8px;display:flex}.period-release-acts label{font-size:var(--fs-meta);color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.period-list footer{border-top:1px solid var(--border);gap:6px;padding:9px 14px 11px;display:flex}.period-list footer .grow{flex:1}.period-btn{border:1px solid var(--border);background:var(--bg-surface);font-family:var(--font-body);font-size:var(--fs-meta);color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:8px;padding:4px 11px;font-weight:600}.period-btn:hover{border-color:var(--accent-secondary)}.period-btn.is-primary{background:var(--accent-secondary);border-color:var(--accent-secondary);color:var(--on-secondary)}.period-btn.is-danger{color:var(--error-bright);background:0 0;border-color:#0000}.period-btn.is-quiet{color:var(--text-secondary);background:0 0;border-color:#0000}.period-editor{box-sizing:border-box;flex-direction:column;gap:9px;width:350px;padding:12px 14px;display:flex}.period-editor h3{font-family:var(--font-display);font-size:var(--fs-row);margin:0;padding-right:24px;font-weight:700}.period-editor-fields{font-size:var(--fs-meta);color:var(--text-secondary);grid-template-columns:52px minmax(0,1fr);align-items:center;gap:7px 8px;display:grid}.period-editor-fields input{font-family:var(--font-body);font-size:var(--fs-body);border:1px solid var(--border);background:var(--bg-app);color:var(--text-primary);box-sizing:border-box;border-radius:7px;width:100%;min-width:0;padding:4px 7px}.period-editor-dates{align-items:center;gap:6px;display:flex}.period-seg{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.period-seg button{font-family:var(--font-body);font-size:var(--fs-meta);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px 10px;font-weight:600}.period-seg button+button{border-left:1px solid var(--border)}.period-seg button.is-on{background:var(--accent-secondary);color:var(--on-secondary)}.period-editor-meaning{font-size:var(--fs-meta);color:var(--text-secondary);line-height:1.45}.period-editor-hit{font-size:var(--fs-meta);background:var(--bg-surface-2);color:var(--text-secondary);border-radius:8px;padding:7px 9px;line-height:1.45}.period-editor-hit.is-warn{background:color-mix(in srgb, var(--warning) 14%, transparent);color:var(--text-primary)}.period-editor-acts{justify-content:flex-end;gap:6px;display:flex}.period-editor-acts .is-danger{margin-right:auto}.freeze-offer{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--freeze-pill) 65%, var(--bg-surface));font-size:var(--fs-body);color:var(--text-primary);align-items:center;gap:12px;padding:8px 14px;display:flex}.freeze-offer svg{width:18px;height:18px;color:var(--freeze-ink);flex:none}.freeze-offer>span{flex:1;line-height:1.4}.ps-periods{flex-direction:column;gap:8px;display:flex}.ps-periods-list{border:1px solid var(--border);border-radius:9px;flex-direction:column;display:flex;overflow:hidden}.ps-period{border-top:1px solid var(--grid-weekly);grid-template-columns:16px minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:7px 10px;display:grid}.ps-period-atwork{font-size:var(--fs-meta);color:var(--text-secondary);align-items:center;gap:5px;display:inline-flex}.modal .ps-period-atwork input{width:56px;margin:0;padding:2px 4px}.ps-period:first-child{border-top:none}.ps-period i{border-radius:2px;width:16px;height:9px}.ps-period i.is-freeze{background:var(--freeze-pill);box-shadow:inset 0 0 0 1px var(--freeze-edge)}.ps-period i.is-closure{background-color:var(--closure-pill);background-image:repeating-linear-gradient(135deg, var(--closure-hatch) 0 3px, transparent 3px 6px);box-shadow:inset 0 0 0 1px var(--border-strong)}.ps-period b{font-weight:600}.ps-period small{color:var(--text-muted);font-size:var(--fs-meta);display:block}.ps-periods-empty{color:var(--text-muted);font-size:var(--fs-meta);padding:10px}.ps-periods-adds{gap:6px;display:flex}.ps-periods-note{font-size:var(--fs-meta);color:var(--text-muted);line-height:1.45}.rag-on{--rag:var(--rag-on);--rag-soft:var(--rag-on-soft);--rag-ink:var(--rag-on-ink)}.rag-at{--rag:var(--rag-at);--rag-soft:var(--rag-at-soft);--rag-ink:var(--rag-at-ink)}.rag-off{--rag:var(--rag-off);--rag-soft:var(--rag-off-soft);--rag-ink:var(--rag-off-ink)}.rag-none{--rag:var(--border-strong);--rag-soft:var(--hover);--rag-ink:var(--text-secondary)}.raid-tools{flex-shrink:0;gap:6px;padding:8px 14px 6px;display:flex}.raid-search,.raid-project-filter{border:1px solid var(--border);background:var(--bg-surface);min-width:0;color:var(--text-primary);font-family:var(--font-body);border-radius:6px;outline:none}.raid-search{font-size:var(--fs-body);flex:1;padding:5px 9px}.raid-project-filter{max-width:45%;font-size:var(--fs-meta);cursor:pointer;padding:4px 6px}.raid-search:focus,.raid-project-filter:focus{border-color:var(--accent-secondary)}.raid-chips{border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;gap:5px;padding:2px 14px 10px;display:flex}.raid-chip{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:2px 9px;display:inline-flex}.raid-chip i{background:var(--kind-color);border-radius:50%;width:7px;height:7px}.raid-chip b{color:var(--text-secondary);font-weight:600}.raid-chip:hover{border-color:var(--border-strong)}.raid-chip.is-on{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-surface)}.raid-chip.is-on b{color:inherit;opacity:.75}.raid-list{padding:6px 0 4px}.raid-adrift{font-size:var(--fs-meta);color:var(--warning-text);margin:0 0 6px}.raid-add{border:1px dashed var(--border-strong);width:calc(100% - 24px);color:var(--text-secondary);font-size:var(--fs-body);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;margin:4px 12px 8px;padding:7px 10px;display:flex}.raid-add:hover{color:var(--text-primary);border-color:var(--accent-secondary);background:var(--hover)}.raid-add span{font-weight:700}.raid-form-wrap{padding:4px 10px 8px}.raid-form{border:1.5px solid var(--accent-secondary);background:var(--bg-surface);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-secondary) 18%, transparent);border-radius:10px;padding:10px}.raid-types{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.raid-type{border:1px solid var(--border);color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:5px;padding:2px 7px;display:inline-flex}.raid-type i{background:var(--kind-color);border-radius:50%;width:7px;height:7px}.raid-type:hover{color:var(--text-primary)}.raid-type.is-on{color:var(--text-primary);border-color:var(--kind-color);background:color-mix(in srgb, var(--kind-color) 12%, transparent);font-weight:600}.raid-form-headline,.raid-form-detail{box-sizing:border-box;width:100%;color:var(--text-primary);font-family:var(--font-body);resize:none;background:0 0;border:none;outline:none;display:block;overflow:hidden}.raid-form-headline{font-size:var(--fs-row);padding:2px 0 5px;font-weight:600;line-height:1.4}.raid-form-headline.is-status{font-size:var(--fs-body);font-weight:400;line-height:1.5}.raid-form-detail{border-top:1px dashed var(--border);font-size:var(--fs-body);padding:6px 0 2px;line-height:1.5}.raid-form-headline::placeholder,.raid-form-detail::placeholder{color:var(--text-muted);font-weight:400}.raid-form-fields{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.raid-field{border:1px solid var(--border-strong);max-width:100%;font-size:var(--fs-meta);color:var(--text-secondary);border-radius:7px;align-items:center;gap:5px;padding:2px 4px 2px 8px;display:inline-flex}.raid-field>span{flex-shrink:0}.raid-field select,.raid-field input{min-width:0;max-width:170px;color:var(--text-primary);font-size:var(--fs-meta);font-family:var(--font-body);background:0 0;border:none;outline:none;padding:2px 0}.raid-field input[list]{width:120px}.raid-field input[type=date]{width:112px}.raid-field:focus-within{border-color:var(--accent-secondary)}.raid-field-clear{color:var(--text-secondary);font-size:var(--fs-body);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 4px;line-height:1}.raid-field-clear:hover{background:var(--hover-strong);color:var(--text-primary)}.raid-rag{border:1px solid var(--border-strong);border-radius:7px;display:inline-flex;overflow:hidden}.raid-rag-opt{color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.raid-rag-opt+.raid-rag-opt{border-left:1px solid var(--border-strong)}.raid-rag-opt i{background:var(--rag);border-radius:50%;width:8px;height:8px}.raid-rag-opt:hover{color:var(--text-primary)}.raid-rag-opt.is-on{color:var(--rag-ink);background:var(--rag-soft);font-weight:700}.raid-form-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.raid-form-hint,.raid-form-raised,.raid-form-note{color:var(--text-muted);font-size:var(--fs-meta);margin-right:auto}.raid-form-note{font-weight:600}.raid-form-note.is-ok{color:var(--rag-on-ink)}.raid-form-note.is-warn{color:var(--rag-at-ink)}.raid-form.is-nudged{animation:.7s ease-out raid-nudge}@keyframes raid-nudge{0%,to{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-secondary) 18%, transparent)}35%{box-shadow:0 0 0 6px color-mix(in srgb, var(--rag-at) 45%, transparent)}}.raid-form-actions .btn-primary,.raid-form-actions .btn-secondary,.raid-form-actions .btn-danger{font-size:var(--fs-meta);padding:5px 13px}.raid-group{border-top:1px solid var(--border)}.raid-group-head{align-items:center;padding-right:8px;display:flex}.raid-group-toggle{min-width:0;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:7px;padding:9px 6px 6px 14px;display:flex}.raid-caret{width:10px;color:var(--text-muted);font-size:var(--fs-meta);flex-shrink:0}.raid-group-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-display);font-size:var(--fs-row);font-weight:700;overflow:hidden}.raid-group-count{color:var(--text-secondary);font-size:var(--fs-meta);flex-shrink:0}.raid-group-add{width:22px;height:22px;color:var(--text-secondary);font-size:var(--fs-detail);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:6px;flex-shrink:0;line-height:1}.raid-group-head:hover .raid-group-add,.raid-group-add:focus-visible{opacity:1}.raid-group-add:hover{background:var(--hover-strong);color:var(--text-primary)}.raid-dot{background:var(--rag);border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.raid-status{border-left:4px solid var(--rag);background:var(--rag-soft);border-radius:8px;margin:0 12px 6px 30px;padding:7px 9px}.raid-status-main{cursor:pointer;overflow-wrap:anywhere;outline:none}.raid-status-main:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px;border-radius:4px}.raid-status-rag{color:var(--rag-ink);font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:6px;font-weight:800}.raid-status-text{color:var(--text-primary);font-size:var(--fs-body);white-space:pre-wrap;font-weight:600;line-height:1.45}.raid-status-meta{color:var(--text-secondary);font-size:var(--fs-meta);flex-wrap:wrap;gap:4px 8px;margin-top:4px;display:flex}.raid-link,.raid-more{color:var(--accent-secondary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.raid-link:hover,.raid-more:hover{text-decoration:underline}.raid-status-history{border-top:1px dashed var(--border-strong);margin:6px 0 0;padding:6px 0 0;list-style:none}.raid-status-history li>button{width:100%;color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:6px;padding:3px 0;display:flex}.raid-status-history li>button:hover{color:var(--text-primary)}.raid-status-history-text{overflow-wrap:anywhere;flex:1;min-width:0}.raid-status-history-text b{color:var(--text-primary);font-weight:600}.raid-status-history-when{color:var(--text-secondary);white-space:nowrap}.raid-status-head{margin:0 0 3px}.raid-status-earlier{border-top:1px dashed var(--border-strong);margin-top:6px;padding-top:6px}.raid-status-earlier .raid-status-history{border-top:none;margin:2px 0;padding:0}.raid-status-earlier-title{color:var(--text-secondary);font-size:var(--fs-meta);font-weight:600}.raid-status-earlier .raid-link{font-size:var(--fs-meta)}.raid-items-label{color:var(--text-secondary);font-size:var(--fs-meta);margin:10px 12px 2px 30px;font-weight:600}.raid-status-actions{margin-top:8px}.raid-status-new{font-size:var(--fs-meta);padding:3px 12px}.raid-status-form-head{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.raid-status-form-head strong{color:var(--text-primary);font-size:var(--fs-body);font-weight:600}.raid-status-form-head span,.raid-form-explain{color:var(--text-secondary);font-size:var(--fs-meta);line-height:1.45}.raid-form-explain{margin:-2px 0 8px}.raid-own-words{font-size:var(--fs-meta)}.status-types-table{border-collapse:collapse;width:100%;font-size:var(--fs-meta);color:var(--text-primary)}.status-types-table th{border-bottom:1px solid var(--border-strong);color:var(--text-secondary);text-align:left;white-space:nowrap;padding:4px 6px;font-weight:600}.status-types-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:4px 6px}.status-types-table tr.is-built-in td{color:var(--text-secondary)}.status-types-table td:last-child{white-space:nowrap;text-align:right;width:1%}.modal .status-types-table input{border:1px solid var(--border-strong);background:var(--bg-surface);width:100%;min-width:90px;color:var(--text-primary);font:inherit;border-radius:6px;margin:0;padding:3px 6px}.modal .status-types-table input:focus{border-color:var(--accent-secondary);outline:none}.status-types-table input::placeholder{color:var(--text-muted)}.status-types-new td{border-bottom:none;padding-top:8px}.status-types-tag{background:var(--hover);color:var(--text-muted);font-size:var(--fs-badge);white-space:nowrap;border-radius:8px;margin-left:4px;padding:0 6px}.raid-entry{align-items:flex-start;gap:8px;padding:6px 12px 7px 14px;display:flex}.raid-entry:hover{background:var(--hover)}.raid-entry.is-done{opacity:.6}.raid-entry.is-done .raid-entry-headline{text-decoration:line-through}.raid-entry .item-row-checkbox{margin-top:2px}.raid-entry-body{cursor:pointer;outline:none;flex:1;min-width:0}.raid-entry-body:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px;border-radius:4px}.raid-entry-headline,.raid-entry-detail{-webkit-user-select:text;user-select:text}.raid-entry-meta[draggable=true]{cursor:grab}.raid-entry-meta[draggable=true]:active{cursor:grabbing}.raid-entry-headline{color:var(--text-primary);font-size:var(--fs-body);overflow-wrap:anywhere;font-weight:600;line-height:1.45}.raid-entry-detail{color:var(--text-secondary);font-size:var(--fs-meta);overflow-wrap:anywhere;margin-top:2px;line-height:1.5}.raid-entry-detail .is-bullet{padding-left:12px;position:relative}.raid-entry-detail .is-bullet:before{content:"•";position:absolute;left:2px}.raid-entry-meta{color:var(--text-secondary);font-size:var(--fs-meta);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:3px;display:flex}.raid-kind{color:var(--text-secondary);font-family:var(--font-display);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);text-transform:uppercase;align-items:center;gap:4px;font-weight:700;display:inline-flex}.raid-kind i{background:var(--kind-color);border-radius:50%;width:6px;height:6px}.raid-owner{border:1px solid var(--border);color:var(--text-primary);border-radius:999px;padding:0 7px}.raid-due{color:var(--text-primary);font-weight:600}.raid-due.is-late{color:var(--error-bright)}.raid-entry-age{color:var(--text-secondary);font-size:var(--fs-badge);letter-spacing:var(--tracking-badge);white-space:nowrap;flex-shrink:0;margin-top:3px;font-weight:700}.raid-restore{border:1px solid var(--border-strong);color:var(--text-secondary);font-size:var(--fs-meta);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;padding:1px 8px}.raid-restore:hover{background:var(--hover);color:var(--text-primary)}.raid-form-headline:focus-visible,.raid-form-detail:focus-visible,.raid-field select:focus-visible,.raid-field input:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:-2px}
