@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/fira-sans-cyrillic-ext-300-normal-BRn8Tsce.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-ext-300-normal-DOtRq9zH.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/fira-sans-cyrillic-300-normal-BO7tmGom.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-300-normal-BtNmWoqn.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/fira-sans-greek-ext-300-normal-DVDwbKuK.woff2) format("woff2"),url(/assets/fira-sans-greek-ext-300-normal-CodlqOxk.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/fira-sans-greek-300-normal-D3JfF3y9.woff2) format("woff2"),url(/assets/fira-sans-greek-300-normal-DSgcXl_1.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/fira-sans-vietnamese-300-normal-BO7He0nF.woff2) format("woff2"),url(/assets/fira-sans-vietnamese-300-normal-CeyOCBN-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/fira-sans-latin-ext-300-normal-GNF4Ac3G.woff2) format("woff2"),url(/assets/fira-sans-latin-ext-300-normal-CAROBYR0.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/fira-sans-latin-300-normal-B2LrTgQS.woff2) format("woff2"),url(/assets/fira-sans-latin-300-normal-Dwkm-oZ7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-cyrillic-ext-400-normal-Cycyekte.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-ext-400-normal-Dd5dApAy.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-cyrillic-400-normal-CKu2TFQr.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-400-normal-D9eUeF-O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-greek-ext-400-normal-ByG7UNQ2.woff2) format("woff2"),url(/assets/fira-sans-greek-ext-400-normal-ClCfNE6D.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-greek-400-normal-BFCFncbp.woff2) format("woff2"),url(/assets/fira-sans-greek-400-normal-DQ8sF22y.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-vietnamese-400-normal-ljDTQFsx.woff2) format("woff2"),url(/assets/fira-sans-vietnamese-400-normal-DUVG35gE.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-latin-ext-400-normal-BLG_mAEf.woff2) format("woff2"),url(/assets/fira-sans-latin-ext-400-normal-BCUwhuGB.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-latin-400-normal-a0AnQzuD.woff2) format("woff2"),url(/assets/fira-sans-latin-400-normal-66xCkunx.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-cyrillic-ext-500-normal-Dkk5LlrU.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-ext-500-normal-Cixivk4R.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-cyrillic-500-normal-CXfldnQ8.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-500-normal-Daski1k2.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-greek-ext-500-normal-nq-cjB3m.woff2) format("woff2"),url(/assets/fira-sans-greek-ext-500-normal-Bem4H9fH.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-greek-500-normal-Cy-TUuxE.woff2) format("woff2"),url(/assets/fira-sans-greek-500-normal-C9KT8sAy.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-vietnamese-500-normal-ChEXCnJy.woff2) format("woff2"),url(/assets/fira-sans-vietnamese-500-normal-UV7M6ot_.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-latin-ext-500-normal-OO1QnNpY.woff2) format("woff2"),url(/assets/fira-sans-latin-ext-500-normal-CFRf4jcC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-latin-500-normal-Bvbxc8ch.woff2) format("woff2"),url(/assets/fira-sans-latin-500-normal-Bkfzcwmr.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-cyrillic-ext-600-normal-CE6oUZE1.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-ext-600-normal-BKgjRriM.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-cyrillic-600-normal-JSBvCpTs.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-600-normal-CJ5P9t7t.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-greek-ext-600-normal-fS0evUH3.woff2) format("woff2"),url(/assets/fira-sans-greek-ext-600-normal-DPxZoeHL.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-greek-600-normal-BlqpLOpF.woff2) format("woff2"),url(/assets/fira-sans-greek-600-normal-DfHu91YF.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-vietnamese-600-normal-Dh2KAvU8.woff2) format("woff2"),url(/assets/fira-sans-vietnamese-600-normal-Bxjaclsw.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-latin-ext-600-normal-DTQBTt1m.woff2) format("woff2"),url(/assets/fira-sans-latin-ext-600-normal-DLMQsaV4.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-latin-600-normal-CXKlxLG9.woff2) format("woff2"),url(/assets/fira-sans-latin-600-normal-DtSgd811.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-cyrillic-ext-700-normal-BfO9TR-w.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-ext-700-normal-Gcpdxicj.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-cyrillic-700-normal-Bl-HczEO.woff2) format("woff2"),url(/assets/fira-sans-cyrillic-700-normal-KyW5QH4H.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-greek-ext-700-normal-C1m6bE4Q.woff2) format("woff2"),url(/assets/fira-sans-greek-ext-700-normal-C8J5qYMq.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-greek-700-normal-BVfcrbV7.woff2) format("woff2"),url(/assets/fira-sans-greek-700-normal-CJu31rC4.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-vietnamese-700-normal-j5oLGLJY.woff2) format("woff2"),url(/assets/fira-sans-vietnamese-700-normal-DFi88MGY.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-latin-ext-700-normal-g2Yrd4J5.woff2) format("woff2"),url(/assets/fira-sans-latin-ext-700-normal-cfTxGFzJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-latin-700-normal-CRhwpWTq.woff2) format("woff2"),url(/assets/fira-sans-latin-700-normal-DgqLm3Fi.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-cyrillic-ext-400-normal-txZ9Fk_1.woff2) format("woff2"),url(/assets/fira-code-cyrillic-ext-400-normal-Buh61xzB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-cyrillic-400-normal-UC0NFL4U.woff2) format("woff2"),url(/assets/fira-code-cyrillic-400-normal-dc1q3VD7.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-greek-ext-400-normal-DR7mBgIM.woff2) format("woff2"),url(/assets/fira-code-greek-ext-400-normal-DSPUheWg.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-greek-400-normal-B2Gh_Y8s.woff2) format("woff2"),url(/assets/fira-code-greek-400-normal-DobhaxvF.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/fira-code-symbols2-400-normal-_QEZCEwe.woff) format("woff");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-latin-ext-400-normal-KSMg0QLl.woff2) format("woff2"),url(/assets/fira-code-latin-ext-400-normal-DG73JjOf.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-latin-400-normal-DGosTW8U.woff2) format("woff2"),url(/assets/fira-code-latin-400-normal-C-QZfXAs.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-cyrillic-ext-600-normal-B9wE0zmr.woff2) format("woff2"),url(/assets/fira-code-cyrillic-ext-600-normal-DldcyWhZ.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-cyrillic-600-normal-CPRdbepc.woff2) format("woff2"),url(/assets/fira-code-cyrillic-600-normal-BD56RyRT.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-greek-ext-600-normal-DtBpFRLc.woff2) format("woff2"),url(/assets/fira-code-greek-ext-600-normal-C-cQDoOk.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-greek-600-normal-Dxp52_By.woff2) format("woff2"),url(/assets/fira-code-greek-600-normal-D_h3X2X5.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAA3UABAAAAAANegAAA12AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbHhxiBmA/U1RBVCoAgx4RCArJNLMkC4JaAAE2AiQDgloEIAWEdgePIQwHG1soM5JTUqwRFZyHZf/H48YQwQ3Qqv0ksiXFrRGGzMYKjC2IRC0aIdi0gvDSPo1FS49PITYddiHWKz24uobR6m44ETRIeMjmGJGDDjcUaPt7+ptzV9H/Ul2KhvYbU8bD/++Pb59774c8qGJyBaPYoATXCcUKadoPfRhnVheeD+wv38chTk6UDtQgHtwW4m0prc43l5/S2t9fluQyvhteEoCDQljp3fdS6S4hASgTxtIlZ3vApm6mpYs2B5IFOiZCgFFAXdiFY/rvCvfguY1xjFmPKBD6wHZ7RyL/Sw7s+bqyRljYs1mjF0DECegO9G6BOvQPT9QPoNMe6FnBsamAh7RGF2PdX1Wri7A5VgwhGKKCRTgP+uq+KUL4DmXI63HJbuuk4mrt3+ybDaFkUDGSZISJjAKenu6Zzryt2UefNoDgpoMbBCPiWCK7n7joCH3kztiTZxypiz13Wpz9t3T68mZO8enCtPUIyUNKVMKy/9KG0oos7hStCtlktEN5hPfs+9P3K7nHdHGXS8gCXyErwiWGOITS8Tnme99coBmQhJCFQKNheYjVaycXwVagghBotMI4JrOpePehU5T99o9Ceb8jgUHV/0yhkvQ9rFbWJaxxH6MSbBrNSq3q01ow/ttL+ZcyDMrXmIPrOF56oj71Q22SvCNJOQt19ANg1ebBfiRAmemt+3dD/bH8ZQfc+HSgMsUQjGMIoV6gG4Fh5Mn9EgMBSUDULFcBCRndKPFvlY4V9EtCqddiXB+fH5iO2HhWly8gcmIWKDq3vvqE6q83pj7Ep3+81W7GEgH/RzQS9QTzCTTSOiFzSu6Q2BGJchuW8FVas4CngtcrjSqfnqnUCXuxLGDTF4N6IU8W+a37oFfD5NKqeTesuGqZXXn36JaNUjWLa0EPVvg43DO6sOXNHTsdj227dgxrN21Gv1YtOkyZ1Kdbl049eg1p0qzNuAmDRo0ZMGfWiIiomDg3F6d9Z47tEVKQ4jhwTkQtRY5sWTJlSJcmV4lSZVIRoqKBp0Bsh7gE9a+h5RqYA5YAivQFrpPrL6xPcOtzcBSyech1SIdOsTTLVFKujzSYFNH6wOjnWCAoccJCL3Qn93EeYzx2CTGuSZLS5nsSH871nPEJurlo2MUlqiaPXut9w8WCAcdUN4k114fdDg8laQrBCiPhRSjKS0voAhRdpcLrZq94ZAl3HuCiSVPl5ZVv9otix8EcQJ8vflW61sz/D/69C2t7tjz+nfwGh22M0S8a6b9H23r6O10H+FVHmf683J7LCAdx7JDGHjIy5oBDH3gNSoObTjXtSIdNii9SZWzqTZS+GfTKwlvMskibviO31aT81amirhcf1cXnzfAJyCf8Z5xScniZ4l966t/zKy9KuFoyNzXl8TCV7Iq6XrxXFz83wzv4I/lyOHVlCaiurWXSaBXVKsNSbtkDiwdrjV8cdAWcHwpupuwDbHcuuVCpQsRWvkCuUiWOJxPeMSs7t8L3KjexHapdCs3Ukl9ZyPXazzuKDTXtdNIpsDwTpXhI2KQAqKlOna4xWCgkqCLO5QJ58MJIjnN1BB3y9Q7LSWsbJc+Wp2HzJ8UivwBlj0mVBiwdBWJE0mVOp4u6JaDCIi0UDopoC6ZzD+oGIvneRC4vFnysqIGfqbVCo0nRU73aFn3i1HuF6R+U6Bll6xcNDUY/KckBMXH4xgjzjlVFk2ru4CgBfEe18/eBGBXCUnNZWxYgaUULGA8UYykXjnwTO5fWrCSnPG269PUyiFqq5Es4gxtGlbGYudkMI30A6rXC9G8sakZZldRaHPPBkgJnIbN547SClRgbKBwEWV6lPF1KFnMGO5chnls3OZq8hZbBGebVxjzmXJFLhbLXWEadmdc8K1XxxNOq4iza2vmcuAoWHT4UpCulJJp/Hw/9DBvDxqH7rsq32TZiF84mvyj2U6w7og7Y04ywqS0dde3Vy1f23ZHU4pb4VzEYl9qhjrRu7+2PYFsv97W3Knr/D/FfiQ1SFeWWp0ROC14fyt+Qsd7O7TduQXUdmYH9Uwc0jOxtOVbnOdbzZdXLVrXbhvm5tMvxebfcdHGFm+qJ30eeLy2FEOHh3+GQtj+awy6zpFkQ0pF+OAxCngXV45duQhNFgkZbg3DclW3qrzVByHUdEpg9hJuN6amu6/dsItaR6X0S3r0wOznfvXklaeg++px86b5Zl8zqfvJAudoBOjW4mFu/tkkNUpK6MH1FmyD1vvR5w/6O7kJdrI0J6qNNUEqBYQ/TQTqs1iz2FhMLTZUPt7XusPfqp90hnLrNb5yoR36W8b8h7ELeJZM88pj+jo3539bl1dYsdMAT+7gboh3GuZu39cur79W50yzdXVr/2ff1SPhHf1aejTvDz8LdHeNNW6hrCOpfeleusxTffqh6o3fB6PmbZN2WLPjr95Mt60Yx0tDG0/mdLU/LAuuGoyVshAZCHCE6u6oO4uNKf3jLd5jJzLioYjo35x5kJoRe2AXNqlOXQjOoo6vq4PL4AIGuSoxcb/aHqdfINcOk1bjx9U2bjNMwbClTWXVRIiUc6XZuZvTYQDkb9p+xOQ7+yS+F6mBcCPYM7WVwrhneWfVVpy7jM3SXZOku2j+yTZpV8T69cjy9u7oG2d2sIgExqug8Vgq3B/MVOuO8JCvzrexo0avGHw+SMdHR++ABSGxHVWIN/4ozsO8CywH2oGwx/xy1ccc4ajlT9jTARrA3cL7MyFNlWu7imSwcNUL4ZY/cM18TOQdiSXFfKS/tUsIjWrwVX3mJLQt0HyEOaQAuObh1F/9wp/CbMvCFVCEGgENBQNeYlZ5kou3Cu+bn/OhF7hFoPN9wlicKGH8KNwpAjKjMnoNW2oVtj5iGNmLKEmzw/Ru6Bo/gyDy6S+Si/exdkladLDf7S+T6dXH170Q1SKtpGZZ/42fNJuI+bhZ9mNx+zHiOdjqeTcOtLdxjZ7z8XJCvYu16VZyIeGy8mvk4YjFYhTb56EahsmRrpwltuqg4jzhyZOiIAdqcM7rFMkrM9BrYUcxlbHFeSnTlXr0/Ymm+oOtcVoDLbKSjRG58bP0hCFquV9HOfQoGNPtlN/fTZcarA7avUSS/5X1SX03MdLMnERo7cqf7gOY0gO1O326eNbvROJE3QVSmoaBILP/s1yqSky7SLUufzQMJMDEbLrgyu/1k9jkzbt6LjKG2XAdFupz81SYyge0xfcewKVbp5NLiz0Figrw4sJ1te7M6mbaf8TmEV1NGLd9wYkq8IOg25WNmCTlrvOT4qyIfMwvBZm4/Vuy/q2/fXf3v0zn8wvlVxfnqt4hcaNbU+qCbfvhzi/szmr3N/iJBNyhwmqcrB7czatp7fO1q0J2LgOMvu7bi8mna9evc0xbS8/Jr09N2uvGrKqYtKoYvEDJALXb8sd13Vh2m+KlVad0vLBLwhnpNPExai/Vln2Z9+bSRHv8ulT91w541Rm1vDWYeeTrppN0q9bf4NdeBd7lqLDx8uPT3tLzr3/5GA/qug7wU9E28apEYXWgwnnyYqUMpocKa1KB0rRzyocOexdrH3j1/CIS5KBi6LutvHCF4bUwhvKhB5GU96+ruNIIS7JEe21SLFhWJ1t3tqHlkoUxApBfFdTFAifi7Rpk1ZICncRYd8hRZLyfIAc0QyUWlTqQFhyBDdMQghyX+BAWyfT9X8kEFV+uDGuGGBkuYJAdrntxHbVgzzsvwTsCWivr9eoBFYxjeABHrlExAusTSYCpyyEigokRYczU7pNiJOh+JoNENxa7rRmadJdSNYUSD5tbLXepStMJes68PB+79BDHGRZmkIh47o0WL3Y1NkePdudPHi5u9rtPM8jMYbYqvVpRR0KlwabYcK1oMk4hddOveaugM7oy9XkE7ZFyL0G5mMfPZkqe7WxGcW+nFZj8su27CsdEtaohEa1Rmqnwvz719+oddcjxMthrFgsC/yVMww1UmZQqZEgo6dpx4z8KZlY2dC1du3MUg4hKSUtIysnLyCopKyiqqauoamlraOrp6+gaGRsYmpmbmFpZW1ja2dvbsO3DoyDEACAJDoDA4AolCY7A4PIFIIlOoNDqDyWJzuDy+QCgSS6QyuUKpUmu0Or3BaDJbrDa7w+lye7w+P4ygGE6QFM2wHC+IkkyuUKrUGq1ObzCazBarze5wutwery9QaWBBeHnsDIi6ktXNdk8e6srvT/mgZLYtyZAX5PMDJ/EHj5InA/pWvHDz/AuslFeDnSdcDx6Ji/2z3tpxG2Xf74U61DDJ+BM8U78B5yXixR8OKgIGPxTl9R5snkhksB+KEycu3ey6O0o0EW/0+cF+WAHjkVvP4sGRb++6CWfh+nSmWIRgtRmOt5jO5xI2GCmBlHBimBGJU9BlAMHmBDZzGVBICuDh5uLwsqHmRRc4gpuhBCrMrJhkiPlS54IgMzQUrhTEzZxQhpOASpVqlmMNSUm14YIsUkOhDItNY6hic7nUU/apQZZ1gddO0XAkzVzI6BlFSB5kzwk3xiKkkLgupKHhBpVTMvAcy1Pm0L1JUoHXVIFDirXL1MiRg68xhktUSIYtK4PH9qF4aTgzXnOSKQcerE0DRv/vgPhlIe4v//u5FD0A) format("woff2"),url(/assets/fira-code-symbols2-600-normal-Dvq6IQE5.woff) format("woff");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-latin-ext-600-normal-Cb7jxoAi.woff2) format("woff2"),url(/assets/fira-code-latin-ext-600-normal-0PFQL1eg.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-latin-600-normal-CvYZpPHg.woff2) format("woff2"),url(/assets/fira-code-latin-600-normal-BmSSHshu.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{color-scheme:light;--paper: #f2f5f7;--surface: #ffffff;--surface-2: #f7f9fb;--ink: #161d25;--ink-2: #3a4652;--muted: #64717e;--line: #d8dee4;--line-strong: #c1cad2;--accent: #17606e;--accent-2: #0e4a56;--accent-soft: #e2edef;--good: #2c7f5c;--good-soft: #e1f0e8;--warn: #a9761a;--warn-soft: #f3ecd7;--crit: #b94334;--crit-soft: #f6e2de;--on-color: #ffffff;--marker-milestone: #6b4fa0;--marker-certification: #a9761a;--marker-delivery: #2f6ba8;--code-labor: #4f6fb2;--code-material: #c08a2e;--code-subcontract: #7e5aa6;--code-equipment: #3f8f86;--code-extra: #a85b7a;--layer-budgeted: var(--muted);--layer-committed: var(--warn);--layer-actual: var(--good);--layer-overrun: var(--crit);--r-sm: 6px;--r: 10px;--r-lg: 14px;--r-pill: 999px;--e1: 0 1px 2px rgba(20, 30, 40, .04), 0 4px 16px rgba(20, 30, 40, .05);--e2: 0 2px 6px rgba(20, 30, 40, .08), 0 10px 28px rgba(20, 30, 40, .1);--e3: 0 8px 40px rgba(20, 30, 40, .18);--font-sans: "Fira Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "Fira Code", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sidebar-w: 244px;--topbar-h: 76px;--z-sticky: 20;--z-header: 30;--collapse-ms: .2s}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--paper: #0f141a;--surface: #161d24;--surface-2: #1c242c;--ink: #e7ecf1;--ink-2: #b7c1cb;--muted: #8695a1;--line: #28323b;--line-strong: #3a4650;--accent: #48a7b7;--accent-2: #6fc0cd;--accent-soft: #123035;--good: #4fb483;--good-soft: #12302a;--warn: #d2a24a;--warn-soft: #312712;--crit: #da6355;--crit-soft: #341f1d;--marker-milestone: #a98cdc;--marker-certification: #d2a24a;--marker-delivery: #6ba3dc;--code-labor: #7d9bd8;--code-material: #dfb25c;--code-subcontract: #ab8ad1;--code-equipment: #6dbdb2;--code-extra: #d18da6;--e1: 0 1px 2px rgba(0, 0, 0, .3), 0 6px 20px rgba(0, 0, 0, .28);--e2: 0 2px 8px rgba(0, 0, 0, .4), 0 12px 32px rgba(0, 0, 0, .36);--e3: 0 10px 44px rgba(0, 0, 0, .55)}}:root[data-theme=light]{color-scheme:light;--paper: #f2f5f7;--surface: #ffffff;--surface-2: #f7f9fb;--ink: #161d25;--ink-2: #3a4652;--muted: #64717e;--line: #d8dee4;--line-strong: #c1cad2;--accent: #17606e;--accent-2: #0e4a56;--accent-soft: #e2edef;--good: #2c7f5c;--good-soft: #e1f0e8;--warn: #a9761a;--warn-soft: #f3ecd7;--crit: #b94334;--crit-soft: #f6e2de;--code-labor: #4f6fb2;--code-material: #c08a2e;--code-subcontract: #7e5aa6;--code-equipment: #3f8f86;--code-extra: #a85b7a;--e1: 0 1px 2px rgba(20, 30, 40, .04), 0 4px 16px rgba(20, 30, 40, .05);--e2: 0 2px 6px rgba(20, 30, 40, .08), 0 10px 28px rgba(20, 30, 40, .1);--e3: 0 8px 40px rgba(20, 30, 40, .18)}:root[data-theme=dark]{color-scheme:dark;--paper: #0f141a;--surface: #161d24;--surface-2: #1c242c;--ink: #e7ecf1;--ink-2: #b7c1cb;--muted: #8695a1;--line: #28323b;--line-strong: #3a4650;--accent: #48a7b7;--accent-2: #6fc0cd;--accent-soft: #123035;--good: #4fb483;--good-soft: #12302a;--warn: #d2a24a;--warn-soft: #312712;--crit: #da6355;--crit-soft: #341f1d;--code-labor: #7d9bd8;--code-material: #dfb25c;--code-subcontract: #ab8ad1;--code-equipment: #6dbdb2;--code-extra: #d18da6;--e1: 0 1px 2px rgba(0, 0, 0, .3), 0 6px 20px rgba(0, 0, 0, .28);--e2: 0 2px 8px rgba(0, 0, 0, .4), 0 12px 32px rgba(0, 0, 0, .36);--e3: 0 10px 44px rgba(0, 0, 0, .55)}:root{--accent-solid: #17606e;--accent-solid-2: #0e4a56}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.mono{font-family:var(--font-mono)}.tnum{font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.crumbs{font-size:14px;color:var(--muted)}.crumbs b{color:var(--ink);font-weight:600}.grow{flex:1 1 auto}.content{padding:clamp(18px,3vw,32px);display:flex;flex-direction:column;gap:24px;width:100%}.page-column{width:min(100%,62rem);margin-inline:auto}.page-head h1{font-size:clamp(22px,3vw,30px);letter-spacing:-.02em;margin:4px 0 0;font-weight:650}.page-head p{color:var(--ink-2);margin:6px 0 0;font-size:14.5px;max-width:66ch}.grid{display:grid;gap:16px}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 1080px){.cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 720px){.cols-4,.cols-3,.cols-2{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e1);padding:18px}.card-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:14px}.card-title h3{font-size:15px;font-weight:620;margin:0;letter-spacing:-.01em}.kpi .kpi-label{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.kpi .kpi-value{font-size:27px;font-weight:640;letter-spacing:-.02em;margin-top:8px}.kpi .kpi-foot{display:flex;align-items:center;gap:7px;margin-top:10px;font-size:12.5px;color:var(--ink-2)}.kpi .accent-rail{height:3px;border-radius:3px;margin-bottom:14px;width:34px}.pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;padding:3px 9px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);white-space:nowrap}.pill .pdot{width:6px;height:6px;border-radius:50%;background:currentColor}.pill.good{color:var(--good);background:var(--good-soft);border-color:color-mix(in srgb,var(--good) 30%,transparent)}.pill.warn{color:var(--warn);background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 30%,transparent)}.pill.crit{color:var(--crit);background:var(--crit-soft);border-color:color-mix(in srgb,var(--crit) 30%,transparent)}.pill.acc{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.costbar{position:relative;height:8px;border-radius:var(--r-pill);background:var(--surface-2);overflow:hidden;border:1px solid var(--line)}.costbar .seg{position:absolute;top:0;bottom:0;left:0;border-radius:var(--r-pill)}.costbar .seg-committed{background:var(--layer-committed);opacity:.45}.costbar .seg-actual{background:var(--layer-actual)}.costbar .seg-actual.is-over{background:var(--layer-overrun)}.costbar--headline{height:14px}.costbar--headline .seg-committed{opacity:1;min-width:3px}.costbar--headline .seg-actual.is-joined-right{border-radius:var(--r-pill) 0 0 var(--r-pill)}.costbar--headline .seg-committed.is-joined-left{border-radius:0 var(--r-pill) var(--r-pill) 0}.progressbar{position:relative;height:6px;border-radius:var(--r-pill);background:var(--surface-2);overflow:hidden;border:1px solid var(--line);flex:0 0 auto}.progressbar-fill{position:absolute;top:0;bottom:0;left:0;border-radius:var(--r-pill);background:var(--accent)}.code-cell{font-family:var(--font-mono);font-size:12px;color:var(--ink-2)}.state{display:flex;align-items:center;gap:10px;padding:40px;justify-content:center;color:var(--muted);font-size:14px}.loader{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}.loader--block{flex-direction:column;gap:12px}.ant-spin .loader.ant-spin-dot{display:inline-flex;justify-content:center}.legend{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--ink-2)}.legend span{display:inline-flex;align-items:center;gap:7px}.legend .sw{width:11px;height:11px;border-radius:3px}td.awarded{position:relative}td.awarded:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1px solid color-mix(in srgb,var(--good) 45%,transparent);background:var(--good-soft);border-radius:var(--r-sm);z-index:0}td.awarded>*{position:relative;z-index:1}.best{color:var(--good);font-weight:600}.excluded{color:var(--muted);font-style:italic}.daily-log-section{margin-top:20px}.daily-log-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.daily-log-section-head h4{margin:0;font-size:13px;font-weight:620;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-2)}.daily-log-rows{display:flex;flex-direction:column;gap:6px}.daily-log-row{display:grid;gap:6px;align-items:center;padding:6px 8px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}.daily-log-row--labor{grid-template-columns:96px minmax(140px,1.4fr) 64px 72px 72px minmax(120px,1fr) 28px}.daily-log-row--equipment{grid-template-columns:minmax(140px,1.4fr) 72px 128px minmax(120px,1fr) 28px}.daily-log-row--material{grid-template-columns:minmax(140px,1.4fr) 96px 48px minmax(120px,1fr) 28px}.daily-log-row--event{grid-template-columns:120px minmax(160px,2fr) 120px minmax(120px,1fr) 28px}.daily-log-row--warn{border-color:var(--warn)}.daily-log-row .ant-select,.daily-log-row .ant-input-number,.daily-log-row .ant-input{width:100%}.daily-log-row-unit{font-size:12px;color:var(--ink-2);white-space:nowrap}.daily-log-row-warning{grid-column:1 / -1;font-size:12px;color:var(--warn)}.daily-log-empty{font-size:13px;color:var(--ink-2);padding:8px 0}.daily-log-field-label{display:block;margin-bottom:4px;font-size:12px;font-weight:560;color:var(--ink-2)}.daily-log-header{display:grid;grid-template-columns:160px 1fr 110px;gap:12px}.daily-log-prefill{display:flex;align-items:center;gap:8px;margin:8px 0 4px;font-size:13px;color:var(--ink-2)}.daily-log-hint{margin:0 0 10px;font-size:12.5px;color:var(--ink-2)}.daily-log-problems{margin:12px 0 0;padding-left:18px;font-size:13px;color:var(--crit)}.daily-log-corrections{margin-top:20px;padding:10px 12px;border:1px dashed var(--line);border-radius:var(--r);font-size:13px}.daily-log-corrections h4{margin:0 0 6px;font-size:13px;font-weight:620}.daily-log-corrections p{margin:0 0 4px;color:var(--ink-2)}.goods-receipt-header{display:grid;grid-template-columns:minmax(240px,2fr) 150px minmax(140px,1fr);gap:12px}.goods-receipt-lines{display:flex;flex-direction:column;gap:6px}.goods-receipt-row{display:grid;grid-template-columns:minmax(160px,2fr) 64px 72px 72px 92px 92px minmax(100px,1fr) 96px;gap:8px;align-items:center;padding:6px 8px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);font-size:13px}.goods-receipt-row .tnum{text-align:right}.goods-receipt-row--head{border:0;background:transparent;padding-top:0;padding-bottom:0;font-size:11.5px;font-weight:620;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.goods-receipt-row--warn{border-color:var(--warn)}.goods-receipt-row .ant-input-number,.goods-receipt-row .ant-input{width:100%}.goods-receipt-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goods-receipt-total{display:flex;justify-content:space-between;padding:8px 8px 0;font-size:13px;font-weight:620}.plan-vs-actual-codes{display:flex;flex-direction:column;gap:4px}.plan-vs-actual-code{display:grid;grid-template-columns:minmax(120px,1fr) 140px 140px 140px 100px;gap:12px;align-items:center;padding:4px 8px;font-size:13px}.plan-vs-actual-code .tnum{text-align:right}.plan-vs-actual-code--head{font-size:11.5px;font-weight:620;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.plan-vs-actual-unattributed{margin:8px 8px 0;font-size:12.5px;color:var(--muted)}.daily-log-read{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 16px;font-size:13px}.daily-log-read dt{color:var(--ink-2);font-size:12px}.daily-log-read dd{margin:0}.role-editor{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e1);padding:18px}.perm-matrix{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.perm-module{border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 12px 12px;margin:0}.perm-module legend{font-size:12px;font-weight:620;padding:0 6px;color:var(--ink)}.perm-options{display:flex;flex-direction:column;gap:6px}.perm-option{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-2);cursor:pointer}.perm-option input{accent-color:var(--accent)}.workspace{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:8px;border-radius:var(--r-sm);border:1px solid transparent;position:relative;transition:gap var(--collapse-ms) ease}.workspace--switch{cursor:pointer;border-color:var(--line);background:var(--surface)}.workspace--switch:hover{background:var(--surface-2)}.workspace--collapsed{gap:0}.workspace--collapsed .ws-name,.workspace--collapsed .ws-caret{flex:0 0 0;width:0;opacity:0;overflow:hidden}.ws-mark{width:30px;height:30px;border-radius:7px;flex:0 0 auto;background:linear-gradient(150deg,var(--accent-solid),var(--accent-solid-2));color:#fff;display:grid;place-items:center;font-family:var(--font-mono);font-weight:700;font-size:13px;box-shadow:var(--e1)}.ws-logo-img{width:30px;height:30px;border-radius:7px;flex:0 0 auto;object-fit:cover;background:var(--surface-2);border:1px solid var(--line)}.ws-name{font-weight:650;letter-spacing:-.01em;font-size:14.5px;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:1;transition:opacity var(--collapse-ms) ease}.ws-caret{color:var(--muted);flex:0 0 auto;opacity:1;transition:opacity var(--collapse-ms) ease}.ws-menu--collapsed{padding-inline-start:16px}.ws-menu--collapsed .ant-dropdown-menu{min-width:200px}.sidebar{display:flex;flex-direction:column;min-height:100%;--nav-indent: 14px}.sidebar-body{flex:1 0 auto;display:flex;flex-direction:column;padding:16px 12px}.sidebar .ant-menu-item{height:34px;line-height:34px;margin-block:2px}.sidebar .ant-menu-item{position:relative}.sidebar .ant-menu-item a{color:inherit}.sidebar .ant-menu-item a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.sidebar-nav{animation:sidebar-nav-in .18s cubic-bezier(.23,1,.32,1) both}@keyframes sidebar-nav-in{0%{opacity:0;transform:translate(-6px)}}@media (prefers-reduced-motion: reduce){.sidebar-nav{animation-name:sidebar-nav-fade}}@keyframes sidebar-nav-fade{0%{opacity:0}}.sidebar-back{display:flex;align-items:center;gap:8px;width:100%;padding:6px var(--nav-indent);margin-bottom:8px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:500;text-align:start;white-space:nowrap;overflow:hidden;cursor:pointer;transition:color .15s ease-out,background .15s ease-out,transform .15s cubic-bezier(.23,1,.32,1)}.sidebar-back:hover{color:var(--ink);background:var(--surface-2)}.sidebar-back:active{transform:scale(.98)}.sidebar-back:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sidebar-back>svg{flex:0 0 auto}@media (hover: hover) and (pointer: fine){.sidebar-back>svg{transition:transform .15s cubic-bezier(.23,1,.32,1)}.sidebar-back:hover>svg{transform:translate(-2px)}}.sidebar--collapsed .sidebar-back{justify-content:center;gap:0;padding-inline:0}.sidebar--collapsed .sidebar-back-label{flex:0 0 0;width:0;opacity:0;overflow:hidden}.sidebar-back-label{overflow:hidden;text-overflow:ellipsis;transition:opacity var(--collapse-ms) ease}.sidebar .ant-menu-inline-collapsed>.ant-menu-item,.sidebar .ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item{padding-inline:var(--nav-indent)}.sidebar .ant-menu-inline-collapsed{width:100%}.sidebar .ant-menu-item-group-title{line-height:20px;padding-block:10px 2px;padding-inline-start:18px;white-space:nowrap;overflow:hidden}.sidebar--collapsed .ant-menu-item-group-title{text-align:center;padding-inline:0;color:var(--muted)}.sidebar-feedback{display:flex;align-items:center;gap:8px;width:auto;margin-top:auto;margin-inline:4px;padding:6px var(--nav-indent);border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:500;text-align:start;white-space:nowrap;overflow:hidden;cursor:pointer;transition:color .15s ease-out,background .15s ease-out,transform .15s cubic-bezier(.23,1,.32,1)}.sidebar-feedback:hover{color:var(--ink);background:var(--surface-2)}.sidebar-feedback:active{transform:scale(.98)}.sidebar-feedback:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sidebar-feedback>svg{flex:0 0 auto}.sidebar--collapsed .sidebar-feedback-label{flex:0 0 0;width:0;opacity:0;overflow:hidden}.sidebar-feedback-label{overflow:hidden;text-overflow:ellipsis;transition:opacity var(--collapse-ms) ease}.sidebar-foot{position:sticky;bottom:0;padding:8px 12px;background:var(--surface);border-top:1px solid var(--line)}.sidebar-toggle{width:100%;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);cursor:pointer;transition:color .15s ease-out,border-color .15s ease-out,background .15s ease-out}.sidebar-toggle:hover{color:var(--ink);border-color:var(--line-strong);background:var(--surface-2)}.sidebar-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page-head--with-action{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.drawer-section{margin-top:8px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.drawer-section h4{margin:0;font-size:14px;font-weight:650}.cred-row{display:flex;align-items:center;gap:10px;font-size:13px}.cred-row>span:first-child{flex:1 1 auto}.cred-expiry{color:var(--muted);font-size:12.5px}.topbar-project{display:flex;align-items:center;gap:12px;min-width:0}.project-back{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink-2);background:var(--surface);transition:color .15s,border-color .15s,background .15s}.project-back:hover{color:var(--ink);border-color:var(--line-strong);background:var(--surface-2)}.topbar-project-title{display:flex;flex-direction:column;min-width:0}.topbar-project-title h1{font-size:17px;font-weight:700;margin:0;color:var(--ink);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-project-meta{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab-row{display:flex;gap:4px;flex-wrap:nowrap;border-bottom:1px solid var(--line);margin-bottom:22px;overflow:hidden}.tab-row-link{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;font-size:13.5px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s;flex:0 1 auto;min-width:3rem}.tab-row-link>svg{flex:0 0 auto}@media (max-width: 900px){.tab-row{gap:2px}.tab-row-link{padding:9px 7px;min-width:2.4rem}}.tab-row-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-row-link:hover{color:var(--ink)}.tab-row-link.is-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.project-workspace-body{display:flex;flex-direction:column;gap:24px}.drawer-footnote{margin:4px 0 0;font-size:12.5px;color:var(--muted);padding-top:12px;border-top:1px dashed var(--line)}.task-resources{display:flex;flex-direction:column;gap:10px}.task-resources-list{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 10px}.task-resources-row{display:flex;align-items:center;gap:8px}.task-resources-kind{flex:0 0 auto;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--line);border-radius:var(--r-pill);padding:1px 7px}.task-resources-name{flex:1 1 auto;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-resources-cost{flex:0 0 auto;font-size:12px;color:var(--ink-2)}.task-resources-subtotal{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed var(--line);margin-bottom:2px;padding-bottom:6px;font-size:12.5px;font-weight:600}.task-resources-plain .task-resources-list{border:none;border-radius:0;padding:0;gap:0}.task-resources-plain .task-resources-row{min-height:46px;padding:6px 2px;gap:16px;border-bottom:1px solid var(--line)}.task-resources-plain .task-resources-subtotal{padding:12px 2px}.task-resources-zone{margin-left:6px;font-size:10.5px;letter-spacing:.04em;color:var(--muted);border:1px solid var(--line);border-radius:var(--r-pill);padding:1px 6px}.task-resources-edit{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px}.task-resources-edit .tr-field>label{font-size:10.5px}.task-resources-hint{margin:0;font-size:11.5px;color:var(--muted)}.task-resources-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.tr-field{display:flex;flex-direction:column;gap:4px;min-width:0}.tr-field>label{font-size:11px;color:var(--muted)}.tr-field .ant-select,.tr-field .ant-input-number{width:100%}.task-detail-head{display:flex;align-items:center;gap:12px}.task-detail-meta{display:flex;flex-wrap:wrap;gap:20px 32px;border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 16px}.task-detail-meta-item{display:flex;flex-direction:column;gap:3px}.task-detail-meta-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.task-detail-meta-value{font-size:13.5px;color:var(--ink)}.task-detail-desc{color:var(--ink-2);font-size:14px;margin:0;white-space:pre-wrap}.task-detail-deps{margin:0;padding-left:18px;font-size:13.5px;color:var(--ink-2);display:flex;flex-direction:column;gap:3px}.task-comments,.task-comments-list{display:flex;flex-direction:column;gap:12px}.task-comments-empty{color:var(--muted);font-size:13px;margin:0}.task-comment{display:flex;flex-direction:column;gap:2px}.task-comment-head{display:flex;align-items:center;gap:8px}.task-comment-author{font-size:13px;font-weight:600;color:var(--ink)}.task-comment-date{font-size:11.5px;color:var(--muted);flex:1 1 auto}.task-comment-body{margin:0;font-size:13.5px;color:var(--ink-2);white-space:pre-wrap}.task-comment-mention{color:var(--accent);font-weight:600}.mention-option{display:flex;flex-direction:column;line-height:1.25}.mention-option small{color:var(--muted);font-size:11.5px}.task-watch{display:flex;align-items:center;gap:10px}.task-watch-hint{font-size:12.5px;color:var(--muted)}.task-comment-edited{color:var(--muted);font-style:italic}.task-comment-edit{display:flex;flex-direction:column;gap:6px}.task-comment-edit .ant-input{width:100%}.task-comment-edit-actions{display:flex;justify-content:flex-end;gap:6px}.task-comments-composer{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.task-comments-composer .ant-input{width:100%}.attachments-panel{display:flex;flex-direction:column;gap:12px}.attachments-toolbar{display:flex;justify-content:flex-start}.attachments-loading{display:flex;justify-content:center;padding:16px 0}.attachments-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.attachment-row{display:flex;align-items:center;gap:10px;min-height:44px;border-top:1px solid var(--line)}.attachment-row:last-child{border-bottom:1px solid var(--line)}.attachment-icon{color:var(--muted);flex:0 0 auto}.attachment-meta{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.attachment-name{background:none;border:none;padding:0;text-align:left;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--brand, #2563eb);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-name:hover{text-decoration:underline}.attachment-sub{font-size:11.5px;color:var(--muted)}.attachment-actions{display:flex;align-items:center;gap:2px;flex:0 0 auto}.attachments-page-title{font-size:16px;font-weight:700;color:var(--ink);margin:0 0 14px}.po-attachments{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.attachments-toolbar{display:flex;align-items:center;gap:10px}.attachments-hint{font-size:12px;color:var(--muted)}.attachments-empty-hint{font-size:12.5px;color:var(--muted);margin:10px 0 0}.attachments-panel.is-dragover{outline:2px dashed var(--brand, #2563eb);outline-offset:4px;border-radius:8px}.attachment-thumb{width:34px;height:34px;object-fit:cover;border-radius:4px;flex:0 0 auto}.attachment-badge{margin-left:6px;font-size:10.5px;font-weight:700;color:var(--muted);background:var(--line);border-radius:4px;padding:0 5px}.attachment-tag{font-size:11.5px;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:1px 6px;flex:0 0 auto}.attachment-category{min-width:118px;flex:0 0 auto}.attachment-upload{display:flex;align-items:center;gap:10px;padding:6px 0}.attachment-upload-name{font-size:12.5px;color:var(--ink-2);flex:0 0 180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-progress{flex:1 1 auto;height:6px;background:var(--line);border-radius:3px;overflow:hidden}.attachment-progress-bar{height:100%;background:var(--brand, #2563eb);transition:width .15s ease}.documents-group{margin-bottom:22px}.documents-group-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px}.documents-children{margin-top:26px;border-top:1px solid var(--line);padding-top:18px}.documents-children-title{font-size:13px;font-weight:700;color:var(--ink);margin:0 0 14px}.doc-source{font-size:10.5px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;border-radius:4px;padding:1px 7px;flex:0 0 auto;white-space:nowrap}.doc-source--project{background:#eef2ff;color:#4338ca}.doc-source--task{background:#ecfeff;color:#0e7490}.doc-source--purchase_order{background:#fef3c7;color:#92400e}.doc-source--payment{background:#dcfce7;color:#166534}.doc-source--daily_log{background:#fae8ff;color:#86198f}.doc-source--client{background:#f1f5f9;color:#334155}.documents-toolbar{display:flex;align-items:center;gap:10px;margin:20px 0 16px;flex-wrap:wrap}.document-facts{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0 0 20px}.document-fact{display:contents}.document-fact dt{font-size:12px;color:var(--muted)}.document-fact dd{font-size:12.5px;color:var(--ink);margin:0}.document-field{display:block;margin-bottom:18px}.document-field>span{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:6px}.file-dropzone{border:2px dashed var(--line-strong);background:var(--surface-2);border-radius:var(--r-lg);padding:32px 24px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;outline:none;margin-bottom:16px}.file-dropzone:focus-visible{border-color:var(--accent)}.file-dropzone.is-dragover{border-color:var(--accent);background:var(--accent-soft)}.file-dropzone.is-disabled{opacity:.6;cursor:default}.file-dropzone-icon{display:inline-flex;color:var(--muted);margin-bottom:8px}.file-dropzone.is-dragover .file-dropzone-icon{color:var(--accent)}.file-dropzone-title{font-weight:600}.file-dropzone-hint{color:var(--muted);font-size:13px;margin-top:2px}.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e1);overflow:hidden;margin-top:20px}.settings-card-body{padding:20px 24px;display:flex;flex-direction:column;gap:18px}.settings-card-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;border-top:1px solid var(--line);background:var(--surface-2)}.org-identity{display:flex;align-items:flex-end;gap:16px}.org-identity-field{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:4px}.org-identity-field>label{font-size:11px;color:var(--muted)}.org-logo-preview{width:56px;height:56px;flex:0 0 auto;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);display:flex;align-items:center;justify-content:center;color:var(--muted);overflow:hidden}.org-logo-preview img{width:100%;height:100%;object-fit:cover}.billing-head{display:flex;align-items:flex-start;gap:12px}.billing-head-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2);flex:0 0 auto}.billing-title{font-size:15px;font-weight:700;margin:0;color:var(--ink)}.billing-subtitle{font-size:12.5px;color:var(--muted);margin:2px 0 0}.billing-rows{display:flex;flex-direction:column;gap:12px}.billing-row{display:flex;align-items:center;gap:14px}.billing-label{flex:0 0 120px;color:var(--muted);font-size:13px}.plan-badge{font-size:12px;font-weight:700;letter-spacing:.02em;padding:2px 10px;border-radius:6px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink)}.plan-badge--pro{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}.plan-badge--enterprise{background:#ede9fe;color:#6d28d9;border-color:#ddd6fe}@media (prefers-color-scheme: dark){.plan-badge--pro{background:#312e81;color:#c7d2fe;border-color:#4338ca}.plan-badge--enterprise{background:#4c1d95;color:#ddd6fe;border-color:#6d28d9}.doc-source--project{background:#312e81;color:#c7d2fe}.doc-source--task{background:#164e63;color:#a5f3fc}.doc-source--purchase_order{background:#78350f;color:#fde68a}.doc-source--payment{background:#14532d;color:#bbf7d0}.doc-source--daily_log{background:#701a75;color:#f5d0fe}.doc-source--client{background:#334155;color:#e2e8f0}}:root[data-theme=light] .plan-badge--pro{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}:root[data-theme=light] .plan-badge--enterprise{background:#ede9fe;color:#6d28d9;border-color:#ddd6fe}:root[data-theme=light] .doc-source--project{background:#eef2ff;color:#4338ca}:root[data-theme=light] .doc-source--task{background:#ecfeff;color:#0e7490}:root[data-theme=light] .doc-source--purchase_order{background:#fef3c7;color:#92400e}:root[data-theme=light] .doc-source--payment{background:#dcfce7;color:#166534}:root[data-theme=light] .doc-source--daily_log{background:#fae8ff;color:#86198f}:root[data-theme=light] .doc-source--client{background:#f1f5f9;color:#334155}:root[data-theme=dark] .plan-badge--pro{background:#312e81;color:#c7d2fe;border-color:#4338ca}:root[data-theme=dark] .plan-badge--enterprise{background:#4c1d95;color:#ddd6fe;border-color:#6d28d9}:root[data-theme=dark] .doc-source--project{background:#312e81;color:#c7d2fe}:root[data-theme=dark] .doc-source--task{background:#164e63;color:#a5f3fc}:root[data-theme=dark] .doc-source--purchase_order{background:#78350f;color:#fde68a}:root[data-theme=dark] .doc-source--payment{background:#14532d;color:#bbf7d0}:root[data-theme=dark] .doc-source--daily_log{background:#701a75;color:#f5d0fe}:root[data-theme=dark] .doc-source--client{background:#334155;color:#e2e8f0}.audit-page{max-width:980px}.audit-changes{font-family:var(--mono, monospace);font-size:11.5px;color:var(--ink-2);white-space:pre-wrap;word-break:break-word;max-width:360px}.task-form{display:flex;flex-direction:column}.task-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:6px}.task-title-item{flex:1 1 auto;margin-bottom:0}.task-title-input.ant-input{font-size:22px;font-weight:700;padding-left:6px;color:var(--ink)}.task-title-input.ant-input::placeholder{color:var(--muted);font-weight:600}.task-status-select{flex:0 0 auto}.task-status-select .ant-select-selector{padding-inline:0!important}.task-rows{display:flex;flex-direction:column;margin:6px 0 4px}.task-row{display:flex;align-items:center;gap:12px;min-height:46px;border-top:1px solid var(--line)}.task-row:last-child{border-bottom:1px solid var(--line)}.task-row-label{display:flex;align-items:center;gap:8px;flex:0 0 150px;color:var(--muted);font-size:13px}.task-row-label svg{color:var(--muted);flex:0 0 auto}.task-row-control{flex:1 1 auto;min-width:0}.task-row-control .ant-select{width:100%}.task-row-control .ant-select .ant-select-selector,.task-row-control .ant-input,.task-row-control .ant-input-number .ant-input-number-input{padding-inline:0}.task-row-control .ant-input-number{width:100%}.task-row-control .ant-input-number,.task-row-control .ant-input[type=date]{padding-left:0}.task-section{margin-top:22px}.task-section-title{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:10px}.task-section--divider,.task-comments-section{border-top:1px solid var(--line);padding-top:18px;margin-top:26px}.task-confirm-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;width:100%;margin-top:4px}.task-subtasks{display:flex;flex-direction:column;gap:2px}.task-subtask-row{display:flex;align-items:center;gap:10px;min-height:40px;border-bottom:1px solid var(--line)}.task-subtask-dot{flex:0 0 auto;width:14px;height:14px;border-radius:999px;border:1.5px solid var(--line-strong)}.task-subtask-title{flex:1 1 auto;min-width:0;font-size:13.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-subtask-add{display:flex;align-items:center;gap:8px;margin-top:8px}.task-subtask-add .ant-input{flex:1 1 auto}.task-comment-badge{display:inline-flex;align-items:center;gap:4px}.task-comment-count{font-size:11px;font-weight:600;line-height:1;color:var(--muted)}.project-status-trigger{display:inline-flex;align-items:center;gap:4px;background:none;border:none;border-radius:var(--r-sm);padding:4px 6px;cursor:pointer;color:var(--muted)}.project-status-trigger:hover{background:var(--surface-2)}.overview-field{display:flex;align-items:center;gap:12px;max-width:420px;padding:10px 0;border-bottom:1px solid var(--line)}.overview-field-label{flex:0 0 120px;font-size:13px;color:var(--muted)}.project-cell-empty{color:var(--muted);font-size:12.5px}.project-consumption{display:flex;flex-direction:column;gap:3px;min-width:110px}.project-consumption-tip,.project-consumption-tip .ant-tooltip-container{max-width:none}.project-consumption-pop{list-style:none;margin:0;padding:0;font-size:12px;display:flex;flex-direction:column;gap:4px;min-width:270px}.project-consumption-pop li{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.project-consumption-pop span{display:flex;flex-direction:column}.project-consumption-pop small{opacity:.7;font-size:10.5px}.project-consumption-pop b{font-weight:600;white-space:nowrap}.overview-state{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.budget-frozen-banner{margin-bottom:14px}.budget-frozen-banner-toggle.ant-btn{height:auto;padding:0;font-size:inherit;line-height:inherit;vertical-align:baseline}.budget-frozen-banner-sep{margin:0 8px;color:var(--muted)}.budget-frozen-banner-detail{display:block;margin-top:6px;color:var(--ink-2)}.budget-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:start;margin-bottom:18px}.budget-summary-cur{display:flex;flex-direction:column;gap:4px}.budget-summary-cur+.budget-summary-cur{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}.budget-summary-empty{color:var(--muted)}.fx-base-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 18px;margin:16px 0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.fx-base-text{display:flex;flex-direction:column;gap:2px}.fx-base-label{font-weight:600;color:var(--ink)}.fx-base-hint{font-size:12.5px;color:var(--muted)}.fx-market-cell{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.fx-market-value{color:var(--muted)}.fx-market-insync{display:inline-flex;align-items:center;color:var(--muted);opacity:.75}.fx-market-empty{color:var(--muted);opacity:.6}.fx-ref-hint{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;padding:8px 10px;border:1px dashed var(--line);border-radius:var(--r-sm);background:var(--surface);font-size:12.5px;color:var(--muted)}.fx-ref-hint-value{color:var(--ink)}.budget-approx{color:var(--muted)}.budget-currency-toggle{display:inline-flex;align-items:center;gap:4px;margin-top:6px;padding:0;border:0;background:none;cursor:pointer;font-size:11.5px;font-weight:600;color:var(--accent)}.budget-currency-toggle:hover{text-decoration:underline}.budget-fx-pop{min-width:200px;display:flex;flex-direction:column;gap:12px}.budget-fx-pop-group{display:flex;flex-direction:column;gap:3px}.budget-fx-pop-group+.budget-fx-pop-group{border-top:1px dashed var(--line);padding-top:12px}.budget-fx-pop-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.budget-fx-pop-code{font-weight:700;letter-spacing:.04em}.budget-fx-pop-total{font-weight:650;color:var(--ink)}.budget-fx-pop-line{display:flex;align-items:baseline;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.budget-summary-tile{position:relative;display:flex;flex-direction:column;gap:4px;min-width:170px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.budget-summary-tile.is-total{border-color:var(--accent);background:var(--accent-soft);grid-column:span 2}.budget-summary-tile--interactive{cursor:pointer;transition:border-color .12s ease}.budget-summary-tile--interactive:hover{border-color:var(--accent)}.budget-tile-fx{position:absolute;top:11px;right:12px;color:var(--muted)}.budget-summary-tile--interactive:hover .budget-tile-fx{color:var(--accent)}.budget-summary-label{display:flex;align-items:center;gap:8px;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.budget-summary-value{font-size:18px;font-weight:650;color:var(--ink)}.budget-extra-total{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:0 0 20px;padding:10px 12px;border:1px dashed var(--line);border-radius:var(--r-sm);background:var(--surface);font-size:12.5px;color:var(--muted)}.budget-extra-total .mono{font-size:15px;font-weight:650;color:var(--ink)}.budget-views{display:flex;align-items:center;gap:14px;margin:0 0 16px;flex-wrap:wrap}.budget-views-hint{font-size:12.5px;color:var(--muted)}.budget-margin-cell{display:inline-flex;align-items:center;gap:2px;justify-content:flex-end}.budget-margin-editor{display:inline-flex;align-items:center;gap:2px}.budget-margin-unit{font-size:11.5px;color:var(--muted)}.budget-margin-own .ant-input-number-input,span.budget-margin-own{color:var(--accent);font-weight:600}.budget-price-cell{display:inline-flex;align-items:center;gap:2px;justify-content:flex-end}.budget-price-cell .budget-price-custom .ant-input-number-input{color:var(--accent);font-weight:600}.budget-price-editor{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.budget-price-date{width:118px;padding:0 2px;font-size:11px;color:var(--muted);text-align:right}.budget-price-date:hover,.budget-price-date:focus-within{color:var(--ink)}.budget-price-undated{color:var(--warn)}.budget-supplier-implied .ant-select-selection-item{color:var(--muted);font-style:italic}.budget-summary-sub{font-size:11px;color:var(--muted)}.budget-summary-tile .costbar{margin:2px 0}.budget-row-unpriced>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 92%,var(--crit))!important}.budget-row-unpriced:hover>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 86%,var(--crit))!important}.budget-unpriced-amount{color:var(--crit);font-weight:600}.budget-drift{margin:0 0 18px;padding:12px 16px 14px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--r-sm);background:var(--surface)}.budget-drift-head{display:flex;align-items:center;gap:8px}.budget-drift-head svg{flex:0 0 auto;color:var(--accent)}.budget-drift-title{font-size:13.5px;font-weight:600;color:var(--ink)}.budget-drift-version{font-family:var(--font-mono);font-size:11px;color:var(--muted)}.budget-drift-lines{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--ink-2)}.budget-drift-link{background:none;border:0;padding:0;font:inherit;color:var(--accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer;text-align:left}.budget-drift-link[aria-pressed=true]{font-weight:600}.budget-drift-note{margin:8px 0 0;font-size:11.5px;line-height:1.45;color:var(--muted)}.budget-drift-actions{display:flex;align-items:center;gap:8px;margin-top:10px}.budget-drift-amount{color:var(--muted)}.budget-plan-pair{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.budget-plan-note{font-size:11px;line-height:1.3;color:var(--muted);cursor:help;white-space:nowrap}.budget-plan-removed{font-size:11px;line-height:1.3;font-style:italic;color:var(--muted);cursor:help;white-space:nowrap}.budget-row-drift>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 94%,var(--accent))!important}.budget-row-drift:hover>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 88%,var(--accent))!important}.baseline-logbook{margin-top:28px}.baseline-logbook-head h2{margin:2px 0 0;font-size:15px;font-weight:600;color:var(--ink)}.baseline-logbook-head p{margin:4px 0 12px;max-width:68ch;font-size:12.5px;line-height:1.5;color:var(--muted)}.baseline-version{display:inline-flex;align-items:center;gap:8px}.baseline-version-name{font-weight:500}.baseline-version.is-bid .baseline-version-name{font-weight:700;color:var(--accent)}.baseline-row-bid>td.ant-table-cell{background:var(--surface-2)}.baseline-amounts{display:inline-flex;align-items:baseline;gap:6px}.baseline-amount-before{color:var(--muted)}.baseline-delta{color:var(--ink);font-weight:600}.baseline-reason-bid{color:var(--muted);font-style:italic}.budget-restate-lead{margin:0 0 12px;font-size:13px;line-height:1.5;color:var(--ink-2)}.budget-restate-diff{margin:0 0 14px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2)}.budget-restate-diff ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--ink)}.budget-restate-empty{margin:6px 0 0;font-size:12.5px;line-height:1.45;color:var(--muted)}.budget-restate-label{display:block;margin-bottom:5px;font-size:12.5px;font-weight:600;color:var(--ink)}.budget-restate-error{display:block;margin-top:5px;font-size:11.5px;color:var(--crit)}.budget-restate-hint{margin:8px 0 0;font-size:11.5px;line-height:1.45;color:var(--muted)}.budget-row-supplier-issue>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 86%,var(--crit))!important}.budget-row-supplier-issue:hover>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 78%,var(--crit))!important}.budget-supplier-cell{display:flex;flex-direction:column;gap:3px}.budget-supplier-issue{display:inline-flex;align-items:flex-start;gap:4px;max-width:240px;font-size:11px;line-height:1.35;color:var(--crit);cursor:help}.budget-supplier-issue svg{flex:0 0 auto;margin-top:2px}.budget-blocked p{margin:0 0 10px}.budget-blocked-list{list-style:none;margin:0 0 10px;padding:8px 10px;max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.budget-blocked-list li{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:3px 0;font-size:12.5px}.budget-blocked-task{color:var(--muted);font-size:11.5px;text-align:right}.budget-blocked-more{color:var(--muted);font-size:11.5px}.overview{display:flex;flex-direction:column;gap:20px}.collapsible__heading{margin:0}.collapsible__head{display:flex;align-items:center;gap:10px;width:100%;padding:0;border:0;background:transparent;cursor:pointer;font:inherit;color:inherit;text-align:left}.collapsible__title{font-size:15px;font-weight:620;letter-spacing:-.01em}.collapsible__summary{margin-left:auto;font-size:12.5px;font-weight:400;color:var(--muted);text-align:right}.collapsible__summary.is-crit{color:var(--crit);font-weight:600}.collapsible__chevron{flex:none;color:var(--muted);transition:transform var(--collapse-ms) ease}.collapsible.is-open .collapsible__chevron{transform:rotate(90deg)}.collapsible__body{margin-top:0}.collapsible__fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--collapse-ms) ease}.collapsible.is-open .collapsible__fold{grid-template-rows:1fr}.collapsible__fold-inner{overflow:hidden;min-height:0}.collapsible__preview{margin-top:14px}.collapsible__fold-inner>*:first-child{margin-top:14px}.setup-wizard{border-color:var(--accent)}.setup-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.setup-steps li{display:flex;align-items:center;gap:12px}.setup-check{flex:none;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent)}.setup-steps li.is-done .setup-check{background:var(--good-soft);color:var(--good)}.setup-desc{flex:1;font-size:13.5px;color:var(--ink)}.setup-steps li.is-done .setup-desc{color:var(--muted)}.card-sub{color:var(--ink-2);font-size:13px;margin:-4px 0 16px;max-width:72ch}.weather-section-title{font-size:15px;font-weight:620;letter-spacing:-.01em;color:var(--ink);margin:0 0 14px}.weather-week{min-width:0}.weather-days{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}@media (max-width: 1200px){.weather-days{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 760px){.weather-days{grid-template-columns:repeat(3,minmax(0,1fr))}}.weather-day{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px 12px;border-radius:var(--r-sm);text-align:center;background:var(--surface-2);border:1px solid transparent}.weather-day.is-today{background:var(--surface);border-color:var(--accent)}.weather-day-name{font-size:12.5px;color:var(--muted);text-transform:capitalize;letter-spacing:.01em}.weather-day.is-today .weather-day-name{color:var(--ink);font-weight:600}.weather-day-icon{color:var(--accent);line-height:0;margin:2px 0}.weather-day-temps,.weather-day-pair{display:flex;align-items:baseline;gap:8px}.weather-day-high{font-size:19px;font-weight:650;color:var(--ink);letter-spacing:-.01em}.weather-day-unit{font-size:12px;font-weight:500;color:var(--muted)}.weather-day-low{font-size:13.5px;color:var(--muted)}.weather-day-measures{display:flex;flex-direction:column;align-items:center;gap:3px;margin-top:6px;padding-top:8px;width:100%;border-top:1px solid var(--line)}.weather-day-rain,.weather-day-wind{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--muted);white-space:nowrap}.weather-day-rain svg,.weather-day-wind svg{color:var(--line-strong);flex:none}.weather-day-rain.is-wet{color:var(--accent);font-weight:600}.weather-day-rain.is-wet svg{color:var(--accent)}.weather-empty .card-sub{margin-bottom:12px}.burnup-wrap{width:100%;position:relative}.burnup{display:block;max-width:100%;overflow:visible;pointer-events:none}.burnup .burnup-line-hit{pointer-events:stroke}.burnup-tick{fill:var(--muted);font-size:10px;font-family:var(--font-mono)}.burnup-today-label{fill:var(--ink-2);font-weight:620}.burnup-empty{color:var(--muted);text-align:center;padding:48px 0;font-size:13.5px}.burnup-controls{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.burnup-title{align-items:center}.burnup-foot{margin-top:12px;font-size:12.5px;color:var(--muted)}.burnup-forecast-label{position:absolute;transform:translate(-100%,-100%);cursor:help;white-space:nowrap;font-size:12.5px;font-weight:640;font-family:var(--font-mono);letter-spacing:-.01em;color:var(--good);background:var(--surface);border:1px solid var(--good-soft);border-radius:6px;padding:3px 7px}.burnup-forecast-label.is-late{color:var(--crit);border-color:var(--crit-soft)}.burnup-forecast-label:hover{border-color:currentColor}.burnup-filter{display:inline-flex;color:var(--muted);cursor:pointer}.burnup-filter:hover{color:var(--ink-2)}.burnup-filter.is-filtered{color:var(--accent)}.burnup-filter-panel{min-width:180px}.burnup-filter-panel .ant-checkbox-group{display:flex;flex-direction:column;gap:9px;padding:2px 2px 12px}.burnup-filter-group{margin:0 0 6px;font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.burnup-filter-option{display:inline-flex;align-items:center;gap:9px}.burnup-filter-option .sample{flex:none}.burnup-filter-option .sample-line{width:16px;height:0;border-top-width:2px}.burnup-filter-option .sample-rule{width:2.5px;height:13px;border-radius:1px}.burnup-filter-actions{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:8px}.burnup-line-anchor{position:absolute;width:1px;height:1px;pointer-events:none}.burnup-marker-hit{position:absolute;width:11px;transform:translate(-50%);cursor:help}.burnup-tip-title{font-weight:620}.burnup-tip-date{font-family:var(--font-mono)}.burnup-tip-note{opacity:.75}.burnup-velocity{display:inline-flex;align-items:baseline;gap:5px;cursor:help;padding-right:16px;border-right:1px solid var(--line)}.burnup-velocity .rate{font-size:17px;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1}.burnup-velocity .unit{font-size:11px;color:var(--muted)}.card-title-head{display:flex;align-items:center;gap:7px}.card-title-head .hint{display:inline-flex;color:var(--muted);cursor:help}.card-title-head .hint:hover{color:var(--ink-2)}.overview-donut-card{display:flex;flex-direction:column}.donut-block{display:flex;align-items:center;gap:28px;padding:6px 8px;flex:1;min-height:0}.donut{flex:none}.donut-block .donut{flex:1 1 auto;min-width:0;width:100%;height:auto;aspect-ratio:1;max-width:300px;max-height:100%}.donut-value{fill:var(--ink);font-size:40px;font-weight:650;letter-spacing:-.02em}.donut-label{fill:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.donut-legend{list-style:none;margin:0;padding:0;flex:1 1 auto;display:flex;flex-direction:column;gap:12px}.donut-legend li{display:flex;align-items:center;gap:12px;font-size:13px}.donut-legend .dot{width:9px;height:9px;border-radius:50%;flex:none}.donut-legend-value{margin-left:auto;font-weight:650;color:var(--ink)}.donut-legend-pct{width:42px;margin-left:8px;text-align:right;color:var(--muted);font-size:12.5px}.budget-consumed{margin-bottom:14px}.budget-consumed-figure{display:flex;align-items:baseline;justify-content:space-between;gap:8px 16px;flex-wrap:wrap}.budget-consumed-amount{font-size:26px;font-weight:640;letter-spacing:-.02em;color:var(--ink);line-height:1.1}.budget-consumed-total{font-size:20px;font-weight:400;color:var(--muted)}.budget-consumed-share{font-size:17px;font-weight:620;color:var(--muted)}.budget-consumed-share.is-explained{cursor:help}.budget-share-split{display:flex;flex-direction:column;gap:3px;margin-top:8px}.budget-share-split>span{display:flex;align-items:center;gap:7px}.budget-share-split>span>.tnum{margin-left:auto;font-weight:620}.budget-share-dot{width:9px;height:9px;border-radius:50%;flex:none}.budget-share-dot.is-actual{background:var(--layer-actual)}.budget-share-dot.is-committed{background:var(--layer-committed)}.budget-committed-legend{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:8px 0 16px;font-size:12.5px;color:var(--muted)}.budget-committed-dot{width:9px;height:9px;border-radius:50%;flex:none;background:var(--layer-committed)}.costcode-caption{margin:0 0 12px;padding-top:16px;border-top:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.costcode-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:15px}.costcode-list li .costbar{margin-top:6px}.costcode-list li.is-over .costcode-head{color:var(--crit)}.costcode-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:var(--ink)}.costcode-name{flex:1 1 auto;min-width:0}.costcode-pct{flex:none;min-width:46px;text-align:right;font-size:12.5px;color:var(--muted)}.costcode-list li.is-over .costcode-pct{color:var(--crit)}.po-form{display:flex;flex-direction:column;gap:16px}.po-field{display:flex;flex-direction:column;gap:6px}.po-field>span{font-size:12.5px;color:var(--muted)}.po-lines{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.po-lines-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.po-lines-head>span:first-child{font-size:13px;font-weight:600}.po-lines-note{font-size:11.5px;color:var(--muted)}.po-lines-empty{font-size:12.5px;color:var(--muted);padding:6px 0}.po-line-row{display:flex;align-items:center;gap:8px}.po-lines-total{display:flex;justify-content:space-between;align-items:center;margin-top:4px;padding-top:10px;border-top:1px solid var(--line);font-size:13px}.po-form-actions{display:flex;justify-content:space-between;gap:10px;margin-top:4px}.po-meta{display:flex;align-items:center;gap:10px}.po-meta-note{font-size:11.5px;color:var(--muted)}.po-source{display:flex;align-items:baseline;gap:8px;font-size:12.5px}.po-source>span:first-child{color:var(--muted)}.po-status-trigger{display:inline-flex;align-items:center;gap:4px;cursor:pointer}.po-warn{color:var(--warn);flex:none}.pmt-order-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.pmt-order-line>.po-lines-note{flex:1;text-align:right}.po-document{font-size:12.5px}.po-document-link{display:inline-flex;align-items:center;gap:6px}.po-document-failed{color:var(--crit)}.po-order{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);overflow:hidden}.po-order-head{display:flex;align-items:center;gap:10px;padding:10px 12px}.po-order-toggle{display:flex;align-items:baseline;gap:8px;flex:1;min-width:0;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.po-order-toggle>svg{align-self:center;flex:none;color:var(--muted)}.po-order-ref{font-size:13px;font-weight:600}.po-order-supplier,.po-order-total{font-size:12.5px;color:var(--muted)}.po-order-total{flex:none}.po-order-body{display:flex;flex-direction:column;gap:14px;padding:14px 12px;border-top:1px solid var(--line)}.po-order-actions{display:flex;justify-content:flex-end;gap:10px}.po-origin{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm)}.po-origin-body{flex-basis:100%;display:flex;flex-direction:column;gap:6px;padding-top:10px;border-top:1px solid var(--line);font-size:12.5px}.po-origin-row{display:flex;gap:10px}.po-origin-row>span:first-child{flex:none;width:130px;color:var(--muted)}.po-better{display:flex;align-items:center;gap:5px;margin-top:2px;font-size:11.5px;color:var(--muted)}.po-move{display:flex;align-items:center;justify-content:flex-end;gap:8px}.po-items-preview{list-style:none;margin:0;padding:4px 0;display:flex;flex-direction:column;gap:6px}.po-items-preview li{display:flex;justify-content:space-between;gap:16px;font-size:13px;max-width:560px}.po-items-preview li>span:first-child{color:var(--ink-2)}.task-row-no-resources>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 92%,var(--crit))!important}.task-row-no-resources:hover>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 86%,var(--crit))!important}.task-row-conflict>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 92%,var(--warn))!important}.task-row-conflict:hover>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 86%,var(--warn))!important}.task-title-cell{display:inline-flex;align-items:center;gap:8px}.task-subtask-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--line);color:var(--muted);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.task-progress{display:inline-flex;align-items:center;gap:6px}.task-progress-value{font-size:12.5px;color:var(--ink-2)}.task-progress-unit{font-size:11.5px;color:var(--muted)}.task-prereq-count{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:18px;height:18px;padding:0 6px;flex:0 0 auto;cursor:help;border-radius:9px;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.task-prereq-count--met{background:var(--good-soft);color:var(--good)}.task-prereq-count--partial{background:var(--warn-soft);color:var(--warn)}.task-prereq-count--unmet{background:var(--crit-soft);color:var(--crit)}.task-prereq-tip{display:grid;gap:4px;font-size:12px}.task-prereq-tip__head{font-weight:600;margin-bottom:2px}.task-prereq-tip__row{display:flex;align-items:center;gap:6px}.task-prereq-tip__state{opacity:.75;margin-left:auto;padding-left:10px}.task-prereq-tip__dot{width:7px;height:7px;border-radius:50%;flex:0 0 auto;background:currentColor}.task-prereq-tip__dot--met{color:var(--good)}.task-prereq-tip__dot--overridden{color:var(--warn)}.task-prereq-tip__dot--unmet{color:var(--crit)}.task-conflict-flag{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 auto;cursor:help;border-radius:9px;color:var(--warn);background:var(--warn-soft)}.task-missing-flag{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 auto;cursor:help;border-radius:9px;color:var(--crit);background:var(--crit-soft)}.cycle-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:13px}.cycle-banner--muted{color:var(--muted);background:transparent;border-style:dashed}.cycle-banner-icon{display:inline-flex;color:var(--muted)}.cycle-banner-hint{color:var(--muted)}.cycle-banner-title{font-weight:600;color:var(--ink)}.cycle-banner-meta{color:var(--muted)}.cycle-banner-dot{color:var(--line-strong)}.cycle-banner-pill{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.cycle-banner-spacer{flex:1 1 auto}.cycle-config{display:flex;flex-direction:column;gap:16px;padding-top:4px}.cycle-config-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.cycle-config-field{display:flex;flex-direction:column;gap:6px}.cycle-config-label{font-weight:600;font-size:13.5px;color:var(--ink)}.cycle-config-hint{color:var(--muted);font-size:12.5px}.cycle-config-caution{display:flex;align-items:flex-start;gap:6px;color:var(--warn);font-size:12.5px}.task-cycle-chips{display:inline-flex;flex-wrap:wrap;gap:4px}.task-cycle-chip{display:inline-flex;align-items:center;padding:0 7px;height:20px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font-size:11.5px;font-weight:600;font-variant-numeric:tabular-nums;cursor:default}.task-cycle-chip.is-current{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.cycle-field{display:flex;flex-direction:column;gap:4px;width:100%}.cycle-suggest{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding-inline-start:11px;font-size:12px}.cycle-suggest-label{color:var(--muted)}.cycle-suggest-chip{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;border:1px dashed var(--accent);background:transparent;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer}.cycle-suggest-chip:hover{background:var(--accent-soft)}.task-conflict-pop{display:flex;flex-direction:column;gap:10px;max-width:340px;font-size:12.5px}.task-conflict-item{display:flex;flex-direction:column;gap:2px;color:var(--ink-2)}.task-conflict-item strong{color:var(--ink);font-size:13px}.task-conflict-note{color:var(--muted);font-size:11.5px;border-top:1px solid var(--line);padding-top:8px}.task-date-warning{display:flex;align-items:center;gap:6px;padding:6px 0 2px;color:var(--warn);font-size:12.5px}.table-plain .ant-table{background:transparent}.table-plain .ant-table-thead>tr>th{background:transparent;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line)}.table-plain .ant-table-thead>tr>th:before{display:none!important}.table-plain .ant-table-tbody>tr>td{border-bottom:1px solid var(--line)}.table-plain .ant-table-cell{background:transparent!important}.copy-wrap{display:inline-flex;align-items:center;gap:6px}.copy-btn{display:inline-flex;align-items:center;justify-content:center;padding:2px;border:none;background:none;color:var(--muted);cursor:pointer;border-radius:4px;opacity:0;transition:opacity .12s,color .12s,background .12s}.copy-wrap:hover .copy-btn{opacity:1}.copy-btn:hover{color:var(--ink);background:var(--surface-2)}.copy-btn:focus-visible{opacity:1;outline:2px solid var(--accent);outline-offset:1px}.avatar{display:inline-grid;place-items:center;border-radius:999px;overflow:hidden;background:var(--accent-soft);color:var(--accent);flex:0 0 auto}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar-fallback{font-weight:650;font-size:13px}.topbar-actions{display:flex;align-items:center;gap:8px}.topbar-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:var(--r-sm);cursor:pointer;transition:color .15s ease-out,border-color .15s ease-out,background .15s ease-out}.topbar-icon-btn:hover{color:var(--ink);border-color:var(--line-strong)}.topbar-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.user-menu-trigger{background:none;border:none;padding:0;cursor:pointer;border-radius:999px;display:grid;place-items:center}.user-menu-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.user-menu-head{padding:8px 10px 10px}.user-menu-name{font-weight:650;font-size:13.5px}.user-menu-email{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.profile-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e1);overflow:hidden}.profile-body{padding:18px 24px 22px;display:flex;flex-direction:column;gap:18px}.profile-drawer-identity{display:flex;align-items:center;gap:14px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.profile-drawer-identity .avatar{flex:none}.profile-drawer-body{display:flex;flex-direction:column;gap:18px}.profile-identity-text{min-width:0}.profile-name{font-size:17px;font-weight:700;margin:0;color:var(--ink);overflow-wrap:anywhere}.profile-email{font-size:13px;color:var(--muted);margin:2px 0 0;overflow-wrap:anywhere}.profile-mismatch{font-size:12.5px;color:var(--crit)}.profile-row{display:flex;flex-direction:column;gap:6px}.profile-row-label{font-size:12.5px;font-weight:600;color:var(--ink-2)}.profile-note{font-size:12.5px;color:var(--muted);max-width:68ch}.settings-section{display:grid;grid-template-columns:minmax(0,17rem) minmax(0,1fr);gap:20px 40px;padding:22px 24px}.settings-section+.settings-section{border-top:1px solid var(--line)}.settings-section-head h2{margin:0;font-size:14px;font-weight:650;color:var(--ink)}.settings-section-head p{margin:5px 0 0;font-size:12.5px;line-height:1.55;color:var(--muted)}.settings-section-fields{display:flex;flex-wrap:wrap;gap:16px 18px;align-content:flex-start}.settings-section-fields>.tr-field{width:10.5rem}.settings-section-fields>.tr-field.is-wide{width:100%;max-width:24rem}.settings-section-fields>.is-own-row{width:100%}.settings-section-fields>.org-identity{width:100%}.settings-section-fields .tr-field>.ant-switch{align-self:flex-start}@media (max-width: 880px){.settings-section{grid-template-columns:minmax(0,1fr);gap:14px}}.project-settings .settings-card-body{padding:0;gap:0}.req-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.req-form{display:flex;flex-direction:column;gap:16px}.req-meta{display:flex;align-items:center;gap:10px}.req-note{font-size:11.5px;color:var(--muted)}.req-review-notes{font-size:12.5px;color:var(--ink-2);padding:10px 12px;border-left:2px solid var(--line);background:var(--surface);border-radius:var(--r-sm)}.req-header-fields{display:flex;gap:16px;flex-wrap:wrap}.req-header-fields>.po-field{flex:1 1 0;min-width:0}.req-header-fields>.po-field .ant-select{width:100%}.req-task-warning{display:flex;align-items:center;gap:6px;padding:6px 0 2px;color:var(--warn);font-size:12.5px}.req-lines{display:flex;flex-direction:column;gap:16px}.req-section{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.req-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.req-section-head>span:first-child{font-size:13px;font-weight:600}.req-empty{font-size:12.5px;color:var(--muted);padding:6px 0}.req-line{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--line)}.req-line:first-of-type{border-top:none}.req-line-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.req-line-name{font-size:13px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.req-line-task{font-size:11.5px;color:var(--muted)}.req-line-scope{min-width:150px}.req-line--over,.req-line--off-plan{background:color-mix(in srgb,var(--surface) 92%,var(--warn))}.req-line--off-plan .req-line-task{color:var(--warn)}.req-warn{color:var(--warn);flex:none}.budget-task-link{background:none;border:0;padding:0;font:inherit;color:var(--acc);cursor:pointer;text-align:left}.budget-task-link:hover{text-decoration:underline}.budget-row-over-requested>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 93%,var(--warn))!important}.budget-row-over-requested:hover>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 87%,var(--warn))!important}.budget-summary-unplanned{font-size:11.5px;color:var(--crit)}.req-pending-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.req-pending-list li{display:flex;justify-content:space-between;gap:12px;font-size:12.5px}.req-line-cat{display:inline-block;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:0 5px;margin-right:8px;vertical-align:middle}.req-unplanned{display:flex;flex-direction:column;gap:8px;padding:10px 0 10px 10px;border-left:2px solid var(--warn);border-top:1px solid var(--line)}.req-unplanned:first-of-type{border-top:none}.req-unplanned-head{display:flex;align-items:center;gap:8px}.req-unplanned-fields{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.req-field{display:flex;flex-direction:column;gap:3px}.req-field>span{font-size:11px;color:var(--muted)}.req-field--grow{flex:1;min-width:180px}.req-unit-label{font-size:12.5px;color:var(--muted);padding-bottom:5px}.req-required{color:var(--crit)}.req-field--grow .ant-select{width:100%}.task-measure{display:flex;align-items:center;gap:4px}.tasks-bulk-margin{display:inline-flex;align-items:center;gap:6px}.cost-composition{margin:0 0 12px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.cost-composition-bar{display:flex;height:10px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface-2)}.cost-composition-segment+.cost-composition-segment{box-shadow:inset 1px 0 0 var(--surface)}.cost-composition-legend{display:flex;flex-wrap:wrap;gap:4px 18px;list-style:none;margin:10px 0 0;padding:0}.cost-composition-legend li{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.cost-composition-swatch{width:9px;height:9px;border-radius:2px;flex:none}.cost-composition-name{color:var(--ink-2)}.cost-composition-share{color:var(--muted)}.buildup{margin:0 0 18px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.buildup-head{padding:14px 16px 0}.buildup-head h2{margin:2px 0 0;font-size:15px;font-weight:600;color:var(--ink)}.buildup-rows{padding:10px 16px 14px}.buildup-row{display:grid;grid-template-columns:1fr auto minmax(140px,auto);align-items:center;gap:12px;padding:7px 0}.buildup--projected .buildup-row{grid-template-columns:1fr auto minmax(150px,auto) minmax(150px,auto);column-gap:28px}.buildup-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.buildup-columns{padding-bottom:2px}.buildup-column-head{justify-self:end;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;font-weight:600;color:var(--muted)}.buildup-column-head.is-escalated,.buildup-amount.is-escalated{color:var(--accent-2)}.buildup-label{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:13.5px;color:var(--muted)}.buildup-note{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);opacity:.8;border-bottom:1px dotted var(--line);cursor:help}.buildup-rate{justify-self:end;font-size:13px;color:var(--muted);min-width:64px;text-align:right}.buildup-rate-input{width:108px}.buildup-amount{justify-self:end;font-size:14px;color:var(--ink)}.buildup-row.is-subtotal{border-top:1px solid var(--line)}.buildup-row.is-subtotal .buildup-label,.buildup-row.is-subtotal .buildup-amount{font-weight:600;color:var(--ink)}.buildup-row.is-offer{border-top:2px solid var(--ink);margin-top:2px;padding-top:12px}.buildup-row.is-offer .buildup-label{font-size:11.5px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--ink)}.buildup-row.is-offer .buildup-amount{font-size:22px;font-weight:700;color:var(--ink)}.buildup-row.is-offer .buildup-amount.is-escalated{color:var(--accent-2)}.buildup-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding:10px 16px;font-size:12px;color:var(--muted)}.buildup-impact{display:flex;align-items:baseline;gap:10px;border-left:2px solid var(--accent-2);padding-left:10px}.buildup-impact-label{font-size:11.5px;color:var(--muted)}.buildup-impact-amount{font-size:16px;font-weight:700;color:var(--accent-2)}.buildup-margin-hold{cursor:help}.buildup-fx-toggle{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:none;cursor:pointer;font:inherit;color:inherit}.buildup-fx-toggle:hover{color:var(--accent)}.buildup-fx-toggle svg{color:var(--muted)}.buildup-fx-toggle:hover svg{color:var(--accent)}.buildup-fx-note{font-size:11.5px;color:var(--muted);border-top:1px dashed var(--line);padding-top:8px}.escalation-provisional{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;font-weight:600;color:var(--warn);background:var(--warn-soft);border-radius:var(--r-xs);padding:2px 6px;cursor:help}.escalation-blocked{color:var(--warn);font-weight:600}.escalation-cell{color:var(--accent-2)}.escalation-cell-provisional{margin-left:4px;font-size:11px;font-weight:700;color:var(--warn)}.escalation-cell-blocked{font-size:11.5px;color:var(--warn);cursor:help;border-bottom:1px dotted var(--line)}.escalation-blocked.is-link{background:none;border:0;padding:0;font:inherit;color:var(--warn);font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.letterhead{--letterhead-accent: var(--accent);display:flex;flex-direction:column;gap:8px;padding:18px 20px;border:1px solid var(--line);border-left:3px solid var(--letterhead-accent);border-radius:var(--r-sm);background:var(--surface)}.letterhead-brand{display:flex;align-items:center;gap:14px}.letterhead-brand img{max-height:44px;max-width:180px;object-fit:contain}.letterhead-logo-empty{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px dashed var(--line);border-radius:var(--r-sm);color:var(--muted)}.letterhead-identity{display:flex;flex-direction:column;gap:2px;min-width:0}.letterhead-name{font-size:16px;font-weight:650;color:var(--ink)}.letterhead-line{font-size:12.5px;color:var(--muted)}.letterhead-contact{display:flex;flex-direction:column;gap:2px}.letterhead-rule{height:2px;background:var(--letterhead-accent);border-radius:1px}.letterhead-footer{font-size:11.5px;color:var(--muted)}.letterhead-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.letterhead-brand-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.letterhead-numbering{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.letterhead-next{margin-top:4px;font-size:11.5px;color:var(--muted)}.settings-card-head{padding:18px 20px 0}.settings-card-head h2{margin:0;font-size:15px;font-weight:600;color:var(--ink)}.settings-card-head p{margin:4px 0 0;font-size:13px;color:var(--muted)}.offer-intro{margin:0 0 14px;font-size:13px;color:var(--muted)}.offer-problems{margin:6px 0 0;padding-left:16px;display:flex;flex-direction:column;gap:3px}.offer-problems li{font-size:12.5px}.offer-problems span{color:var(--muted)}.offer-audience,.offer-options,.offer-history{margin-top:20px}.offer-audience h3,.offer-options h3,.offer-history h3{margin:0 0 10px;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.offer-audience-hint{margin:8px 0 0;font-size:12px;color:var(--muted)}.offer-option{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;cursor:pointer}.offer-option>span{display:flex;flex-direction:column;gap:1px;font-size:13.5px}.offer-option small{color:var(--muted);font-size:12px}.offer-empty{font-size:13px;color:var(--muted)}.offer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.offer-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);color:var(--muted)}.offer-row-main{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.offer-row-head{display:flex;align-items:center;gap:6px}.offer-number{font-weight:650;color:var(--ink);font-size:13px}.offer-config-hint{display:inline-flex;color:var(--muted);opacity:.6;cursor:help}.offer-config-hint:hover{opacity:1}.offer-config{list-style:none;margin:0;padding:0;font-size:12px}.offer-when{font-size:11.5px}.offer-failed{font-size:11.5px;color:var(--crit);display:flex;flex-direction:column;gap:1px}.offer-failed-detail{color:var(--muted);font-size:11px;word-break:break-word}.offer-status{font-size:11.5px}.offer-scenario{margin-bottom:18px}.offer-scenario h3{margin:0 0 2px;font-size:13px;font-weight:600;color:var(--ink)}.offer-scenario-hint{font-size:12px;color:var(--muted);margin:0 0 10px}.scenario-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:6px 10px;margin-bottom:14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--muted)}.scenario-bar--active{border-color:var(--accent-2);background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent-2)}.scenario-mode{font-size:12.5px}.scenario-bar--active .scenario-mode{color:var(--ink);font-weight:600}.scenario-price-date{font-size:12.5px;padding:2px 8px;border:1px dashed var(--accent-2);border-radius:var(--r-xs);background:none;color:var(--ink);cursor:pointer;white-space:nowrap}.scenario-price-date:hover{color:var(--accent);border-color:var(--accent);border-style:solid}.scenario-tabs{display:flex;align-items:stretch;gap:2px;flex-wrap:wrap}.scenario-tab{display:flex;align-items:center;border:1px solid transparent;border-radius:var(--r-xs)}.scenario-tab-label{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:0;background:none;cursor:pointer;font:inherit;font-size:12.5px;color:var(--muted);white-space:nowrap;border-radius:var(--r-xs)}.scenario-tab-label:hover{color:var(--ink)}.scenario-tab.is-active{border-color:var(--line);background:var(--bg)}.scenario-tab.is-active .scenario-tab-label{color:var(--ink);font-weight:650}.scenario-bar--active .scenario-tab.is-active{border-color:var(--accent-2)}.scenario-tab-star{display:inline-flex;color:var(--accent)}.scenario-tab-menu{display:inline-flex;align-items:center;padding:5px 6px 5px 0;border:0;background:none;cursor:pointer;color:var(--muted);border-radius:var(--r-xs)}.scenario-tab-menu:hover{color:var(--ink)}.scenario-tab-add{display:inline-flex;align-items:center;padding:5px 9px;margin-left:2px;cursor:pointer;border:1px dashed var(--line);border-radius:var(--r-xs);background:none;color:var(--muted)}.scenario-tab-add:hover{color:var(--accent);border-color:var(--accent)}.scenario-modal-intro{font-size:12.5px;color:var(--muted);margin:0 0 10px}.scenario-modal-field{display:flex;align-items:center;gap:10px;margin-top:12px}.scenario-modal-field>span{font-size:12.5px;color:var(--muted);white-space:nowrap}.scenario-modal-hint{font-size:12px;color:var(--muted);margin:6px 0 0}.scenario-decisions{list-style:none;margin:0;padding:0}.scenario-decisions li{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.scenario-decisions li:last-child{border-bottom:0}.scenario-decision-label{font-size:13px;color:var(--ink)}.scenario-decision-value{font-size:13px;color:var(--muted)}.buildup-mode{margin-left:auto}.buildup-compare{padding:10px 16px 14px}.scenario-compare{overflow-x:auto}.scenario-compare table{width:100%;border-collapse:collapse}.scenario-compare th,.scenario-compare td{padding:7px 10px;border-bottom:1px solid var(--line);text-align:left}.scenario-compare th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.scenario-compare .num{text-align:right}.scenario-col-submitted{color:var(--accent)}.scenario-col-tag{display:flex;align-items:center;gap:3px;justify-content:flex-end;font-size:9.5px;letter-spacing:.06em;color:var(--accent)}.scenario-compare tr.is-offer td{font-weight:700;color:var(--ink);border-top:2px solid var(--ink)}.scenario-compare tr.is-difference td{font-size:12px;border-bottom:0}.scenario-empty{font-size:13px;color:var(--muted)}.idx-actions{display:inline-flex;gap:2px}.idx-coverage{display:inline-flex;align-items:baseline;gap:8px;font-size:12.5px}.idx-count{color:var(--muted);font-size:11.5px}.idx-nocoverage{color:var(--muted);border-bottom:1px dotted var(--line);cursor:help;font-size:12.5px}.idx-paste{margin-bottom:20px}.idx-paste h3,.idx-series h3{margin:0 0 6px;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.idx-paste-summary{display:flex;align-items:center;gap:12px;margin-top:8px;font-size:12.5px;color:var(--muted)}.idx-rejected{color:var(--warn);border-bottom:1px dotted var(--line);cursor:help}.idx-table{width:100%;border-collapse:collapse}.idx-table th,.idx-table td{padding:5px 8px;border-bottom:1px solid var(--line);text-align:left}.idx-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.idx-table .num{text-align:right}.idx-table tr.idx-gap td{color:var(--muted);font-style:italic}.rd-actions{display:inline-flex;gap:2px}.rd-drawer-actions{display:inline-flex;gap:8px}.rd-terms{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:10px}.rd-term{display:inline-flex;align-items:baseline;gap:5px;font-size:12.5px}.rd-plus{color:var(--muted);margin-right:2px}.rd-term-label{color:var(--ink-2)}.rd-term-index{color:var(--muted);font-size:11.5px}.rd-any-movement{color:var(--muted);font-size:12.5px}.rd-factor{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end}.rd-difference{color:var(--accent)}.rd-scope{font-size:12.5px;color:var(--muted);margin:-4px 0 18px}.rd-section{margin:20px 0 8px;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.rd-clause-head{display:grid;gap:10px 18px;align-items:start;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);margin-bottom:4px}.rd-terms-note{margin:-4px 0 12px;max-width:58ch}.rd-term-row{display:grid;gap:10px;align-items:end;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 92px 32px}.rd-term-row+.rd-term-row{margin-top:10px}@media (max-width: 720px){.rd-clause-head{grid-template-columns:minmax(0,1fr)}.rd-term-row{grid-template-columns:minmax(0,1fr) 92px 32px}.rd-term-row>.tr-field:first-child{grid-column:1 / -1}}.rd-terms-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;flex-wrap:wrap}.rd-sum{display:inline-flex;align-items:baseline;gap:8px;padding:5px 10px;border-radius:var(--r-sm);font-size:12.5px;border:1px solid transparent}.rd-sum-label{text-transform:uppercase;letter-spacing:.04em;font-size:11px}.rd-sum--ok{background:var(--good-soft);border-color:var(--good);color:var(--good)}.rd-sum--bad{background:var(--crit-soft);border-color:var(--crit);color:var(--crit)}.rd-sum--ok strong,.rd-sum--bad strong{font-size:14px}.rd-sum-hint{font-size:11.5px}.rd-detail-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.rd-detail-formula{font-weight:600;color:var(--ink)}.rd-detail-issued{font-size:12.5px;color:var(--muted)}.rd-document{font-size:12.5px;margin-bottom:14px}.rd-document-link{display:inline-flex;align-items:center;gap:6px}.rd-document-note{color:var(--muted)}.rd-document-failed{color:var(--crit)}.rd-figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:16px 0 4px}.rd-figure{border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;background:var(--surface-2)}.rd-figure--accent{border-color:var(--accent);background:var(--accent-soft)}.rd-figure-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:4px}.rd-figure-value{font-size:16px;font-weight:600;color:var(--ink)}.rd-table{width:100%;border-collapse:collapse}.rd-table th,.rd-table td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left}.rd-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.rd-table .num{text-align:right}.rd-table tfoot td{border-bottom:0;border-top:2px solid var(--ink);font-weight:600}.rd-notes{font-size:13px;color:var(--ink-2);white-space:pre-wrap}.rd-period{display:inline-flex;flex-direction:column;gap:1px}.rd-period-formula{font-size:12px;color:var(--muted)}.collection-links{margin-top:24px;padding-top:8px;border-top:1px solid var(--line)}.collection-links__row{display:flex;align-items:center;gap:10px;width:100%;padding:11px 4px;background:none;border:0;cursor:pointer;color:var(--ink);font:inherit;text-align:left;border-bottom:1px solid var(--line)}.collection-links__row:last-child{border-bottom:0}.collection-links__row:hover{color:var(--acc)}.collection-links__row span{flex:1}.collection-links__chevron{color:var(--muted);flex:none}.equipment-rates__history{margin-top:28px}.doc-actions{display:inline-flex;gap:2px}.doctype-create{display:flex;flex-direction:column;gap:8px;padding:0 8px 8px}.doctype-create__row{display:flex;gap:6px}.doctype-create__expires{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);cursor:pointer}.doc-history-row--current>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 90%,var(--acc))!important;font-weight:600}.doc-history-row--current:hover>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 84%,var(--acc))!important}.doc-history-row--current>td.ant-table-cell:first-child{box-shadow:inset 2px 0 0 0 var(--acc)}.doc-days,.doc-version{color:var(--muted);font-size:11.5px;margin-left:6px}.entity-documents{margin-top:24px}.entity-documents__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:12px}.entity-documents__head h3{margin:0;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.entity-documents__hint{margin:0 0 14px;font-size:12.5px;color:var(--muted);line-height:1.5}.entity-documents__files{margin-top:8px;padding-top:18px;border-top:1px solid var(--line)}.entity-documents__files h4{margin:0 0 6px;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.prereq-actions{display:inline-flex;gap:2px}.prereq-sentence{color:var(--muted);font-size:12px;line-height:1.45;margin-top:2px;max-width:38ch}.prereq-preview{border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin:4px 0 20px;background:var(--surface-2)}.prereq-preview p{margin:4px 0 0;font-size:13px;line-height:1.5}.task-blocked-banner{display:flex;align-items:center;gap:8px;margin:10px 0 4px;padding:8px 12px;border:1px solid var(--crit);border-radius:8px;background:color-mix(in srgb,var(--crit) 8%,transparent);color:var(--crit);font-size:12.5px;line-height:1.45}.prereq-panel{margin-top:8px}.prereq-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.prereq-panel__head h3{margin:0;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.prereq-panel__hint{margin:0;font-size:12.5px;color:var(--muted);line-height:1.5}.prereq-list{list-style:none;margin:0;padding:0}.prereq-item{border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin-bottom:8px}.prereq-item__head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.prereq-item__advisory{font-size:11.5px;color:var(--muted)}.prereq-item__reason{margin:6px 0 0;font-size:12.5px;line-height:1.5;color:var(--ink)}.prereq-item__signers,.prereq-item__warning,.prereq-item__cleared,.prereq-item__override{margin:4px 0 0;font-size:12px;line-height:1.45;color:var(--muted)}.prereq-item__warning,.prereq-item__override{color:var(--warn)}.prereq-item__override--stale{color:var(--muted);text-decoration:line-through}.prereq-item__actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap;align-items:center}.prereq-item__form{display:flex;flex-direction:column;gap:8px;margin-top:8px}.prereq-item__form>button{align-self:flex-start}.prereq-item__source{font-size:11.5px;color:var(--muted);cursor:help;margin-left:auto}.prereq-draft-form{border:1px dashed var(--line-strong);border-radius:8px;padding:12px;margin:4px 0 12px;background:var(--surface-2)}.prereq-draft-form .prereq-preview{margin-bottom:12px}.prereq-draft-form__actions{display:flex;gap:8px;justify-content:flex-end}.prereq-drafts__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.prereq-drafts__hint{font-size:12.5px;color:var(--muted);line-height:1.5}.prereq-drafts__list{list-style:none;margin:0 0 8px;padding:0}.prereq-drafts__item{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid var(--line);border-radius:8px;padding:6px 8px 6px 10px;margin-bottom:6px}.prereq-drafts__kind{font-size:11.5px;color:var(--muted);margin-left:auto}.blocked-work__group{margin:12px 0 6px;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.blocked-work__list{list-style:none;margin:0;padding:0}.blocked-work__row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 8px;border:0;border-radius:6px;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit}.blocked-work__row:hover{background:var(--surface-2)}.blocked-work__title{flex:1;font-size:13px}.blocked-work__date{font-size:12px;color:var(--muted)}.project-rate.ant-form-item{margin-bottom:16px}.project-rates>.project-rate.ant-form-item:last-child{margin-bottom:24px}.project-rate.ant-form-item .ant-form-item-row{display:grid;align-items:center;column-gap:12px;grid-template-columns:minmax(0,1fr) 128px}.project-rate.ant-form-item .ant-form-item-row>.ant-form-item-label{padding:0}.project-rate.ant-form-item .ant-form-item-row>.ant-form-item-control{display:contents}.project-rate.ant-form-item .ant-form-item-additional{grid-column:1 / -1}.project-rate.ant-form-item .ant-form-item-extra{font-size:12.5px;line-height:1.45;color:var(--muted);padding-top:4px}@media (max-width: 440px){.project-rate.ant-form-item .ant-form-item-row{grid-template-columns:minmax(0,1fr)}.project-rate.ant-form-item .ant-form-item-row>.ant-form-item-label{padding:0 0 6px}}.shortcuts-intro{color:var(--muted);font-size:13px;margin:0 0 18px}.shortcuts-group+.shortcuts-group{margin-top:20px}.shortcuts-group h3{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}.shortcuts-group dl{margin:0}.shortcuts-row{display:flex;align-items:baseline;gap:14px;padding:7px 0;border-top:1px solid var(--line)}.shortcuts-group dl>.shortcuts-row:first-child{border-top:none}.shortcuts-row dt{flex:none;min-width:96px;display:flex;align-items:center;gap:4px}.shortcuts-row dd{margin:0;font-size:13.5px;color:var(--ink);display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.shortcuts-row kbd{display:inline-block;font-family:var(--font-mono);font-size:11.5px;line-height:1.6;padding:1px 7px;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);white-space:nowrap}.shortcuts-sep{color:var(--muted);font-size:11px;margin:0 4px}.shortcuts-soon.ant-tag{background:var(--surface);color:var(--muted);border-color:var(--line);font-size:10.5px;line-height:1.7;margin:0;padding:0 6px}.data-table-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.data-table-toolbar>:first-child{flex:1 1 auto;min-width:220px}.data-table-body{min-width:0}.data-table-selection-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:40px;padding:6px 12px;border:1px solid var(--accent);border-bottom:none;border-radius:8px 8px 0 0;background:var(--accent-soft);position:sticky;top:var(--topbar-h);z-index:var(--z-sticky)}.data-table-selection-count{color:var(--ink);font-size:13px;font-weight:600;margin-right:4px}.data-table-selection-bar+div .ant-table-container,.data-table-selection-bar+div .ant-table{border-start-start-radius:0;border-start-end-radius:0}.data-table-row-active>td.ant-table-cell{background:color-mix(in srgb,var(--surface) 88%,var(--accent))!important}.data-table-row-active>td.ant-table-cell:first-child{box-shadow:inset 2px 0 0 0 var(--accent)}.tasks-views{display:flex;align-items:center;gap:14px;margin:0 0 16px;flex-wrap:wrap}.tasks-views-hint{font-size:12.5px;color:var(--muted)}.task-timeline{min-width:0}.task-timeline-chart{border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}.task-timeline-unscheduled{margin-bottom:12px}.gantt-headroom{position:sticky;top:var(--topbar-h);z-index:var(--z-sticky);overflow:hidden;background:var(--g-header-background);border-bottom:1px solid var(--line)}.gantt-empty{padding:48px 16px;text-align:center;color:var(--muted);font-size:13px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}.gantt-legend{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--line);font-size:11.5px;color:var(--muted)}.gantt-legend-title{font-weight:600;color:var(--ink-2)}.gantt-legend-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.gantt-legend-bar{width:22px;height:11px;border-radius:3px;background:var(--surface-2);border:1px solid var(--line-strong)}.gantt-legend-bar.bar-in_progress{background:var(--accent-soft);border-color:var(--accent)}.gantt-legend-bar.bar-blocked{background:var(--crit-soft);border-color:var(--crit)}.gantt-legend-bar.bar-done{background:var(--good-soft);border-color:var(--good)}.gantt-legend-bar.is-overdue{background:transparent;border:1.5px dashed var(--crit)}.gantt-legend-actual{width:22px;height:4px;border-radius:2px;background:var(--ink-2);opacity:.45}.gantt-legend-diamond{width:9px;height:9px;transform:rotate(45deg)}.gantt-legend-diamond.is-milestone{background:var(--marker-milestone)}.gantt-legend-diamond.is-certification{background:var(--marker-certification)}.gantt-legend-diamond.is-delivery{background:var(--marker-delivery)}.gantt-legend-arrow{width:22px;height:0;border-top:2px solid var(--crit)}.gantt-legend-flag{width:0;height:0;border-inline:6px solid transparent;border-bottom:11px solid var(--warn)}.gantt-legend-bar.is-overbooked{border:2px solid var(--warn)}.gantt-legend-rule{width:0;height:13px;border-inline-start:2px solid var(--accent)}.gantt-legend-rule.is-window{border-inline-start:1.5px dashed var(--ink-2)}.gantt-legend-band{width:22px;height:13px;border-radius:3px;background:var(--accent-soft)}.gantt-pane,.gantt-headroom{--g-header-background: var(--surface);--g-border-color: var(--line);--g-row-border-color: var(--line);--g-row-color: var(--surface);--g-tick-color: var(--line);--g-tick-color-thick: var(--line-strong);--g-arrow-color: var(--muted);--g-bar-color: var(--surface-2);--g-bar-border: var(--line-strong);--g-progress-color: var(--accent-soft);--g-handle-color: var(--line-strong);--g-text-dark: var(--ink);--g-text-muted: var(--muted);--g-text-light: var(--on-color);--g-today-highlight: var(--accent);--g-weekend-highlight-color: var(--surface-2);--g-weekend-label-color: var(--surface-2);--g-expected-progress: var(--accent-soft);--g-actions-background: var(--surface-2);--g-popup-actions: var(--surface-2)}.gantt-container{position:relative;overflow-x:auto;overflow-y:hidden;width:100%;font-size:12px;line-height:14.5px;isolation:isolate}.gantt-headroom .grid-header,.gantt-container .grid-header{height:calc(var(--gv-lower-header-height) + var(--gv-upper-header-height) + 10px);background-color:var(--g-header-background);position:relative;z-index:1000}.gantt-headroom .upper-header,.gantt-container .upper-header{height:var(--gv-upper-header-height)}.gantt-headroom .lower-header,.gantt-container .lower-header{height:var(--gv-lower-header-height)}.gantt-headroom .lower-text,.gantt-headroom .upper-text,.gantt-container .lower-text,.gantt-container .upper-text{text-anchor:middle}.gantt-headroom .lower-text,.gantt-container .lower-text{position:absolute;width:calc(var(--gv-column-width) * .8);height:calc(var(--gv-lower-header-height) * .8);margin:0 calc(var(--gv-column-width) * .1);align-content:center;text-align:center;font-size:11.5px;color:var(--g-text-muted)}.gantt-headroom .upper-text,.gantt-container .upper-text{position:absolute;width:fit-content;height:calc(var(--gv-lower-header-height) * .66);font-size:12.5px;font-weight:600;color:var(--g-text-dark)}.gantt-headroom .current-upper,.gantt-container .current-upper{position:sticky;left:0!important;padding-left:12px;background:var(--g-header-background)}.gantt-container .current-highlight{position:absolute;width:2px;background:var(--g-today-highlight);z-index:999}.gantt-headroom .current-ball-highlight,.gantt-container .current-ball-highlight{position:absolute;background:var(--g-today-highlight);border-radius:50%;z-index:1001}.gantt-headroom .gantt-today-chip,.gantt-container .gantt-today-chip{position:absolute;bottom:3px;transform:translate(-50%);padding:1px 6px;border-radius:var(--r-pill);background:var(--g-today-highlight);color:var(--on-color);font-size:10.5px;font-weight:600;line-height:15px;white-space:nowrap;pointer-events:none;z-index:1002}.gantt-headroom .current-date-highlight,.gantt-container .current-date-highlight{visibility:hidden}.gantt-headroom .date-range-highlight,.gantt-container .date-range-highlight{position:absolute;background-color:var(--g-progress-color);border-radius:var(--r-pill);height:calc(var(--gv-lower-header-height) - 6px);top:calc(var(--gv-upper-header-height) + 5px)}.gantt-container .holiday-label{position:absolute;top:0;left:0;opacity:0;z-index:1000;background:var(--g-weekend-label-color);border-radius:var(--r-sm);padding:2px 5px}.gantt-container .holiday-label.show{opacity:1}.gantt-container .hide{display:none}.gantt-container .popup-wrapper{position:absolute;top:0;left:0;width:max-content;max-width:280px;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e2);z-index:1000}.gantt-container .popup-wrapper .title{margin-bottom:2px;font-size:13px;font-weight:600;line-height:16px;color:var(--ink)}.gantt-container .popup-wrapper .subtitle{margin-bottom:5px;font-size:12px;color:var(--ink-2)}.gantt-container .popup-wrapper .details{font-size:11.5px;color:var(--muted)}.gantt{position:absolute;user-select:none;-webkit-user-select:none}.gantt .grid-background{fill:none}.gantt .grid-row{fill:var(--g-row-color)}.gantt .row-line{stroke:var(--g-border-color)}.gantt .tick{stroke:var(--g-tick-color);stroke-width:.4}.gantt .tick.thick{stroke:var(--g-tick-color-thick);stroke-width:.7}.gantt .arrow{fill:none;stroke:var(--g-arrow-color);stroke-width:1.5}.gantt .bar-wrapper{cursor:pointer}.gantt .handle{fill:var(--g-handle-color);opacity:0;transition:opacity .3s ease}.gantt .handle.active,.gantt .handle.visible{cursor:ew-resize;opacity:1}.gantt .bar-label{display:none}.gantt-row-label{fill:var(--ink-2);font-size:11.5px;dominant-baseline:central;pointer-events:none}.gantt-row-label.is-parent{fill:var(--ink);font-weight:600}.gantt .bar-wrapper .bar{fill:var(--surface-2);stroke:var(--line-strong);stroke-width:1;rx:4px}.gantt .bar-wrapper.bar-in_progress .bar{fill:var(--accent-soft);stroke:var(--accent)}.gantt .bar-wrapper.bar-blocked .bar{fill:var(--crit-soft);stroke:var(--crit)}.gantt .bar-wrapper.bar-done .bar{fill:var(--good-soft);stroke:var(--good)}.gantt .bar-progress{fill:var(--accent);fill-opacity:.45}.gantt .bar-wrapper.bar-done .bar-progress{fill:var(--good);fill-opacity:.45}.gantt .bar-wrapper.is-overbooked .bar{stroke:var(--warn);stroke-width:2}.gantt .bar-wrapper.is-overdue .bar{stroke:var(--crit);stroke-width:2;stroke-dasharray:4 3}.gantt .bar-wrapper.is-marker .bar,.gantt .bar-wrapper.is-marker .bar-progress{display:none}.gantt .bar-wrapper.is-parent .bar{fill:none;stroke:var(--line-strong);stroke-width:1.5}.gantt .bar-wrapper.is-parent .bar-progress{fill-opacity:.25}.gantt .arrow path.is-conflict{stroke:var(--crit);stroke-width:2.2}.gantt-cycle-band{fill:var(--surface-2);fill-opacity:.5}.gantt-cycle-band.is-current{fill:var(--accent-soft);fill-opacity:.6}.gantt-marker{stroke:var(--surface);stroke-width:1}.gantt-bar-actual{fill:var(--ink-2);fill-opacity:.45}.gantt-conflict-flag{fill:var(--warn);stroke:var(--surface);stroke-width:1}.gantt-rule{stroke:var(--ink-2);stroke-width:1.5;stroke-dasharray:5 4;pointer-events:none}.gantt-rule.is-outside{stroke-dasharray:2 4;opacity:.55}.gantt-rule-label{fill:var(--muted);font-size:10.5px;font-weight:600}.notification-popover .ant-popover-inner{padding:0}.notification-panel{width:min(420px,calc(100vw - 32px));display:flex;flex-direction:column;gap:8px;padding:10px}.notification-panel-body{max-height:380px;overflow-y:auto;overflow-x:hidden}.notification-panel-footer{border-top:1px solid var(--line);padding-top:4px}.notification-list{display:flex;flex-direction:column}.notification-list-page{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);overflow:hidden}.notification-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);width:100%;text-align:left}.notification-row:last-child{border-bottom:none}.notification-row:hover{background:var(--surface-2)}.notification-row-main,.notification-row-plain{background:none;border:none;padding:0;cursor:pointer;color:inherit;font:inherit;flex:1 1 auto;min-width:0;text-align:left}.notification-row-plain{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line)}.notification-row-plain:last-child{border-bottom:none}.notification-row-plain:hover{background:var(--surface-2)}.notification-row-main:focus-visible,.notification-row-plain:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.notification-row-title{color:var(--ink);font-weight:500;line-height:1.4}.notification-row.is-unread{box-shadow:inset 2px 0 0 var(--accent)}.notification-row.is-unread .notification-row-title{font-weight:600}.notification-row-body{color:var(--muted);font-size:13px;line-height:1.4}.notification-row-aside{flex:0 0 auto}.notification-row-age{color:var(--muted);font-size:12px;white-space:nowrap}.notification-empty{padding:24px 12px}.notification-empty .ant-empty-description{color:var(--muted)}.pref-channel-label{color:var(--muted);font-size:12px}.contract-page{display:flex;flex-direction:column;gap:16px}.contract-fields{display:flex;flex-wrap:wrap;gap:10px 32px}.contract-field{min-width:150px}.contract-field span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.contract-field strong{font-size:14px;font-weight:600}.contract-field-strong{font-size:18px}.contract-notes{margin:14px 0 0;color:var(--ink-2);font-size:13px}.contract-empty{max-width:46ch;margin:0 auto}.contract-empty-body{color:var(--muted);font-size:13px;margin-top:6px}.contract-prefill-note{color:var(--muted);font-size:12.5px;margin:0 0 12px}.margin-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.margin-column{display:flex;flex-direction:column;gap:2px}.margin-column-empty{color:var(--muted)}.margin-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);cursor:help}.margin-percent{font-size:30px;font-weight:600;line-height:1.1}.margin-percent.is-negative{color:var(--crit)}.margin-amount{font-size:14px;color:var(--ink-2)}.margin-breakdown{margin:8px 0 0;display:flex;gap:18px}.margin-breakdown div{display:flex;flex-direction:column}.margin-breakdown dt{font-size:11px;color:var(--muted)}.margin-breakdown dd{margin:0;font-size:13px}.margin-none{color:var(--muted);font-size:13px;margin:0;max-width:52ch}.margin-delta{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.margin-delta span{cursor:help}.margin-delta.is-down{color:var(--crit)}.margin-delta.is-up{color:var(--good)}.milestone-tasks,.milestone-untied{font-size:11.5px;color:var(--muted);margin-top:2px}.milestone-untied{font-style:italic}.milestone-cumulative{font-size:11px;color:var(--muted);font-weight:400}.cash-figures{display:flex;flex-wrap:wrap;gap:10px 36px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line)}.cash-figure{display:flex;flex-direction:column}.cash-figure span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);cursor:help}.cash-figure strong{font-size:16px}.cash-figure.is-strong strong{font-size:22px;color:var(--accent)}.cash-ledgers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.cash-ledger-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.cash-ledger-head h3{margin:0;font-size:13px;font-weight:600}.cash-balance{margin:2px 0 0;font-size:12px;color:var(--muted);max-width:44ch}.cash-rows{list-style:none;margin:0;padding:0}.cash-rows li{display:flex;align-items:baseline;gap:10px;padding:5px 0;border-bottom:1px solid var(--line);font-size:13px}.cash-row-date{color:var(--muted);font-size:12px}.cash-row-note{color:var(--muted);font-size:12px;flex:1}.cash-empty{color:var(--muted);font-size:12.5px;margin:0}.certifications-page,.certifications-list{display:flex;flex-direction:column;gap:16px}.cert-period{font-size:12.5px;color:var(--muted)}.cert-notes{margin:0 0 12px;color:var(--ink-2);font-size:13px}.cert-lines{width:100%;border-collapse:collapse}.cert-lines th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--line);padding:5px 8px;font-weight:500}.cert-lines td{padding:6px 8px;border-bottom:1px solid var(--line);font-size:13px}.cert-lines th.num,.cert-lines td.num{text-align:right;white-space:nowrap}.cert-arithmetic{width:100%;border-collapse:collapse;margin-top:4px}.cert-arithmetic th{text-align:left;font-weight:500;font-size:13px;padding:4px 8px}.cert-arithmetic td{padding:4px 8px;text-align:right;font-size:13px;white-space:nowrap}.cert-arithmetic tr.cert-gross th,.cert-arithmetic tr.cert-gross td{border-top:1.5px solid var(--line-strong);padding-top:8px;font-weight:600}.cert-arithmetic tr.cert-deduction th,.cert-arithmetic tr.cert-deduction td{color:var(--ink-2);padding-top:2px;padding-bottom:2px}.cert-arithmetic td.cert-basis{text-align:right;color:var(--muted);font-size:12px}.cert-arithmetic tr.cert-net th,.cert-arithmetic tr.cert-net td{border-top:1.5px solid var(--line-strong);padding-top:8px;font-weight:700;font-size:15px}.cert-actions{display:flex;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.cert-draft-hint{color:var(--muted);font-size:12.5px;margin:0 0 16px}.cert-final{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:13px}.cert-final-hint{margin:4px 0 0 22px;color:var(--muted);font-size:12px}.task-measured{display:inline-flex;align-items:baseline;gap:5px;cursor:help}.task-measured.is-diverged{color:var(--warn)}.task-diverged-mark{font-size:13px;line-height:1}.progress-readings{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:16px}.progress-reading span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.progress-reading strong{display:block;font-size:26px;line-height:1.2}.progress-reading p{margin:2px 0 0;font-size:12px;color:var(--muted)}.progress-form{padding-bottom:8px;margin-bottom:12px;border-bottom:1px solid var(--line)}.progress-entries{list-style:none;margin:12px 0 0;padding:0}.progress-entries li{padding:8px 0;border-bottom:1px solid var(--line)}.progress-entry-head{display:flex;align-items:center;gap:10px;font-size:13px}.progress-entry-date{color:var(--muted);font-size:12px;flex:1}.progress-sealed{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted);cursor:help}.progress-entry-note{margin:4px 0 0;font-size:12px;color:var(--muted)}.progress-empty{color:var(--muted);font-size:12.5px;margin:12px 0 0}.contract-summary .card-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.contract-link{font-size:12.5px;font-weight:400}.contract-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px}.contract-summary-figure{display:flex;flex-direction:column;gap:2px;align-items:flex-start}.contract-summary-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.contract-summary-figure strong{font-size:22px;line-height:1.2}.contract-summary-figure strong.is-negative{color:var(--crit)}.contract-summary-foot{font-size:12px;color:var(--muted)}.report-schedule{display:flex;flex-direction:column;gap:14px;margin-bottom:18px;padding:18px 20px}.report-schedule-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.report-schedule-title{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:620}.report-schedule-next{margin:4px 0 0;font-size:12.5px;color:var(--ink-2)}.report-schedule-active{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:560}.report-schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 16px}.report-schedule-grid--two{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.report-field>label,.report-field-label{display:block;margin-bottom:4px;font-size:12px;font-weight:560;color:var(--ink-2)}.report-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:4px 12px}.report-schedule-actions{display:flex;justify-content:flex-end;gap:8px}.report-modal{display:flex;flex-direction:column;gap:14px}.report-modal-period{margin:0;font-size:13px}.feedback-modal{display:flex;flex-direction:column;gap:12px}.feedback-intro{margin:0;font-size:13px;color:var(--muted)}.penalty-list,.penalty-proposals,.overview-penalties{list-style:none;margin:0;padding:0}.penalty-proposals li,.overview-penalties li{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding:2px 0}.penalty-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.penalty-list li:last-child{border-bottom:none}.penalty-head{display:flex;flex-direction:column;gap:2px}.penalty-meta{display:flex;flex-direction:column;gap:2px;font-size:12.5px;color:var(--muted)}.cert-penalties{margin-top:14px}.cert-penalties header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.cert-penalties h4{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.cert-penalties ul{list-style:none;margin:0;padding:0}.cert-penalties li{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:5px 0;font-size:13px}.cert-penalty-name{font-weight:600}.cert-penalty-reason{color:var(--muted);flex-basis:100%}.cert-penalty-actions{margin-left:auto;display:flex;gap:6px}.change-orders-revenue,.overview-revenue{margin-bottom:14px}.change-orders-revenue .ant-card-body,.overview-revenue-figures{display:flex;flex-wrap:wrap;gap:10px 32px}.change-order-figure,.overview-revenue-figure{display:flex;flex-direction:column;gap:2px;min-width:150px}.change-order-figure span,.overview-revenue-figure span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.change-order-figure strong,.overview-revenue-figure strong{font-size:15px;font-variant-numeric:tabular-nums}.change-order-figure strong.is-strong,.overview-revenue-figure strong.is-strong{color:var(--acc)}.overview-revenue h3{margin:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.change-orders-list{display:flex;flex-direction:column;gap:12px}.change-order-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.change-order-card header h3{margin:2px 0 0;font-size:15px}.change-order-ref{font-family:Fira Code,monospace;font-size:12px;color:var(--muted)}.change-order-origin{margin:0 0 10px;color:var(--muted);font-size:13px}.change-order-figures{display:flex;flex-wrap:wrap;gap:8px 28px;margin-bottom:10px}.change-order-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.change-order-priced{margin-bottom:14px;font-size:13px}.change-order-priced p{margin:0 0 4px}.change-order-tasks{width:100%;border-collapse:collapse;margin-top:6px}.change-order-tasks td{padding:4px 0;border-bottom:1px solid var(--line);font-size:13px}.change-order-tasks td.num{text-align:right;white-space:nowrap}.reject-reason{width:100%;margin-top:8px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:inherit}.api-key-reveal{display:flex;flex-direction:column;gap:14px}.api-key-reveal-warning{display:flex;align-items:flex-start;gap:8px;margin:0;padding:12px 14px;border:1px solid var(--warn);border-radius:var(--r-sm);background:var(--warn-soft);color:var(--warn);font-size:13px;line-height:1.45}.api-key-reveal-secret{display:block;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink);font-size:13px;line-height:1.6;word-break:break-all;-webkit-user-select:all;user-select:all}.api-key-reveal-hint{margin:0;color:var(--muted);font-size:12.5px;line-height:1.5}.consent-panel{display:flex;flex-direction:column;gap:16px}.consent-claim,.consent-authority{display:flex;align-items:flex-start;gap:8px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);font-size:13px;line-height:1.45}.consent-claim{border-color:var(--warn);background:var(--warn-soft);color:var(--warn)}.consent-authority{background:var(--surface-2);color:var(--ink)}.consent-organization{display:flex;flex-direction:column;gap:8px}.consent-label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12.5px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.consent-hint{margin:0;color:var(--muted);font-size:12.5px;line-height:1.5}.auth-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:28px 16px;background:var(--paper);color:var(--ink)}.auth-shell{width:100%;max-width:880px;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--e3);overflow:hidden;animation:auth-shell-in .6s cubic-bezier(.18,.9,.25,1) both}@keyframes auth-shell-in{0%{opacity:0;transform:translateY(20px) scale(.99)}to{opacity:1;transform:none}}@media (max-width: 720px){.auth-shell{grid-template-columns:1fr;max-width:440px}.auth-brand{display:none}}.auth-brand{position:relative;overflow:hidden;isolation:isolate;padding:44px 34px;color:#fff;background:radial-gradient(150% 120% at 50% -10%,#123a4d,#0b2532 55%,#061821);display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-width:0;--px: 0;--py: 0;--mx: 50%;--my: 50%}.auth-brand:before{content:"";position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;z-index:-2;background:radial-gradient(40% 40% at 22% 20%,color-mix(in srgb,var(--accent) 55%,transparent),transparent 72%),radial-gradient(36% 36% at 82% 80%,color-mix(in srgb,var(--accent-2) 45%,transparent),transparent 72%);filter:blur(34px) saturate(120%);opacity:.38;animation:auth-aurora 20s ease-in-out infinite alternate;translate:calc(var(--px) * -18px) calc(var(--py) * -18px);transition:translate .4s ease-out}@keyframes auth-aurora{0%{transform:translate(0) rotate(0) scale(1)}50%{transform:translate(3%,-4%) rotate(5deg) scale(1.06)}to{transform:translate(-3%,4%) rotate(-4deg) scale(1.04)}}.auth-grid{position:absolute;top:-28px;right:-28px;bottom:-28px;left:-28px;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(150,220,235,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(150,220,235,.07) 1px,transparent 1px),linear-gradient(rgba(150,220,235,.17) 1.5px,transparent 1.5px),linear-gradient(90deg,rgba(150,220,235,.17) 1.5px,transparent 1.5px);background-size:26px 26px,26px 26px,130px 130px,130px 130px;background-position:center;-webkit-mask-image:radial-gradient(130% 120% at 58% 22%,#000 42%,transparent 88%);mask-image:radial-gradient(130% 120% at 58% 22%,#000 42%,transparent 88%);translate:calc(var(--px) * 9px) calc(var(--py) * 9px);transition:translate .4s ease-out}.auth-brand:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(120% 100% at 50% -5%,transparent 42%,rgba(0,0,0,.38) 100%)}.auth-glow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(460px circle at var(--mx) var(--my),rgba(160,225,240,.13),transparent 60%);pointer-events:none;opacity:0;transition:opacity .35s ease,background .1s linear}.auth-brand:hover .auth-glow{opacity:1}@media (prefers-reduced-motion: reduce){.auth-brand:before{animation:none}}.auth-badge{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background:linear-gradient(150deg,var(--accent-solid),var(--accent-solid-2));font-family:var(--font-mono);font-weight:700;font-size:18px;color:#fff;box-shadow:0 16px 36px -14px #0009}.auth-brand-content{transform:translate(calc(var(--px) * 6px),calc(var(--py) * 6px));transition:transform .35s ease-out}.auth-brand-content h1{margin:24px 0 12px;font-size:30px;line-height:1.18;font-weight:700;letter-spacing:-.01em}.auth-brand-accent{color:#67c8d6}.auth-brand-content p{max-width:34ch;margin:0;color:#ffffffc2;font-size:14.5px;line-height:1.6}.auth-brand-foot{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#ffffff80}.auth-form-panel{display:flex;align-items:center;justify-content:center;padding:44px 40px}.auth-form-inner{width:100%;max-width:320px}.auth-form-head h2{margin:0 0 6px;font-size:22px;font-weight:650;letter-spacing:-.01em}.auth-form-head p{margin:0 0 20px;color:var(--muted);font-size:13.5px}.auth-field{display:block;margin-bottom:14px}.auth-field>span:first-child{display:block;font-size:12px;font-weight:550;color:var(--ink-2);margin-bottom:6px}.auth-sep{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--muted);font-size:12px}.auth-sep:before,.auth-sep:after{content:"";flex:1;height:1px;background:var(--line)}.auth-muted{color:var(--muted);font-size:14px}.auth-rules{list-style:none;margin:4px 0 16px;padding:0;display:grid;gap:6px}.auth-rules li{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);transition:color .15s ease}.auth-rules li svg{color:var(--muted);flex:none}.auth-rules li.ok{color:var(--good)}.auth-rules li.ok svg{color:var(--good)}.auth-callback{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;max-width:320px}.topbar-user{font-size:12.5px;color:var(--muted);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-logout{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);color:var(--ink-2);cursor:pointer}.topbar-logout:hover{background:var(--surface-2);color:var(--ink)}.team-invite{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:16px}.team-notice{margin-bottom:16px;padding:9px 12px;font-size:13px;color:var(--good);background:var(--good-soft);border:1px solid color-mix(in srgb,var(--good) 30%,transparent);border-radius:var(--r-sm)}.auth-loading{display:flex;align-items:center;justify-content:center;min-height:100dvh;color:var(--muted);font-size:14px}.auth-secondary{margin-top:12px}.auth-lead{margin:0 0 18px;font-size:14px;line-height:1.55;color:var(--ink-2)}.auth-alt{margin:18px 0 0;font-size:13px;text-align:center;color:var(--muted)}.auth-alt a{color:var(--accent);font-weight:500}.onboarding-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}@media (max-width: 560px){.onboarding-cards{grid-template-columns:1fr}}.onboarding-card{display:flex;flex-direction:column;gap:6px;padding:16px;text-align:left;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);color:var(--ink);transition:border-color .15s ease,background .15s ease}.onboarding-card:hover{border-color:var(--accent);background:var(--accent-soft)}.onboarding-card strong{font-size:14px;font-weight:600}.onboarding-card span{font-size:12.5px;line-height:1.45;color:var(--muted)}.onboarding-orgs{margin-bottom:20px}.onboarding-orgs h3{margin:0 0 8px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.onboarding-org{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 14px;margin-bottom:8px;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color .15s ease}.onboarding-org:hover:not(:disabled){border-color:var(--accent)}.onboarding-org:disabled{cursor:default;opacity:.6}.onboarding-org-name{font-size:14px;font-weight:500;color:var(--ink)}.onboarding-org-role{font-size:12px;color:var(--muted)}.onboarding-email{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-bottom:18px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm)}.onboarding-email code{font-family:var(--font-mono);font-size:13px;color:var(--ink);overflow-wrap:anywhere}
