@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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}:root{--teal-50: #e6f6f1;--teal-100: #c3ebe0;--teal-200: #8fd9c6;--teal-300: #54c2a8;--teal-400: #25a98a;--teal-500: #109677;--teal-600: #0c8567;--teal-700: #0a6e56;--teal-800: #0a5946;--teal-900: #093f33;--neutral-0: #ffffff;--neutral-50: #fafbfc;--neutral-100: #f3f5f7;--neutral-200: #e8ecf0;--neutral-300: #d4dbe2;--neutral-400: #b3bdc6;--neutral-500: #8a96a0;--neutral-600: #687683;--neutral-700: #4a5862;--neutral-800: #2e3d47;--neutral-900: #21333b;--blue-100: #d4eefb;--blue-500: #0079b8;--blue-700: #00567a;--green-100: #dff0d0;--green-500: #2f8400;--green-700: #1d5100;--amber-100: #fef3d3;--amber-500: #ffb92e;--amber-600: #f0ad20;--amber-700: #aa6c00;--red-100: #f8dcd2;--red-500: #c92100;--red-700: #a32100;--purple-100: #e6e1f4;--purple-500: #781da0;--brand: var(--teal-600);--brand-hover: var(--teal-700);--brand-active: var(--teal-800);--brand-subtle: var(--teal-50);--brand-subtle-border: var(--teal-200);--brand-on: var(--white);--white: #ffffff;--text-on-color: var(--white);--text-on-warning: var(--neutral-900);--text-strong: var(--neutral-900);--text-body: var(--neutral-800);--text-secondary: var(--neutral-600);--text-muted: var(--neutral-500);--text-disabled: var(--neutral-400);--text-on-dark: var(--white);--text-link: var(--teal-700);--on-dark-1: rgba(255, 255, 255, .92);--on-dark-2: rgba(255, 255, 255, .72);--on-dark-3: rgba(255, 255, 255, .6);--on-dark-4: rgba(255, 255, 255, .5);--on-dark-fill: rgba(255, 255, 255, .1);--on-dark-fill-hover: rgba(255, 255, 255, .16);--on-dark-border: rgba(255, 255, 255, .16);--on-dark-divider: rgba(255, 255, 255, .08);--surface-page: var(--neutral-100);--surface-card: var(--neutral-0);--surface-sunken: var(--neutral-50);--surface-hover: var(--neutral-100);--surface-active: var(--neutral-200);--surface-header: var(--neutral-900);--surface-overlay: var(--scrim-modal);--border-subtle: var(--neutral-200);--border-default: var(--neutral-300);--border-strong: var(--neutral-400);--border-focus: var(--teal-500);--info: var(--blue-500);--info-text: var(--blue-700);--info-subtle: var(--blue-100);--success: var(--green-500);--success-text: var(--green-700);--success-subtle: var(--green-100);--warning: var(--amber-500);--warning-hover: var(--amber-600);--warning-text: var(--amber-700);--warning-subtle: var(--amber-100);--danger: var(--red-500);--danger-text: var(--red-700);--danger-subtle: var(--red-100);--brand-tonal: var(--teal-50);--brand-tonal-text: var(--teal-800);--scrim: rgba(0, 0, 0, .4);--scrim-modal: rgba(33, 51, 59, .55);color-scheme:light;--focus-ring: 0 0 0 3px rgba(16, 150, 119, .32)}[data-theme=dark]{color-scheme:dark;--brand: #3fbf9f;--brand-hover: #5acdb0;--brand-active: #7bdcc3;--brand-on: #06201a;--brand-subtle: rgba(63, 191, 159, .16);--brand-subtle-border: rgba(63, 191, 159, .38);--brand-tonal: #1d3b33;--brand-tonal-text: #a6e3d1;--text-strong: rgba(255, 255, 255, .95);--text-body: rgba(255, 255, 255, .84);--text-secondary: rgba(255, 255, 255, .66);--text-muted: rgba(255, 255, 255, .5);--text-disabled: rgba(255, 255, 255, .34);--text-link: #7bdcc3;--surface-page: #0e1412;--surface-card: #17201d;--surface-sunken: #121a17;--surface-hover: rgba(255, 255, 255, .06);--surface-active: rgba(255, 255, 255, .11);--surface-header: #0a100e;--scrim-modal: rgba(0, 0, 0, .62);--border-subtle: rgba(255, 255, 255, .08);--border-default: rgba(255, 255, 255, .16);--border-strong: rgba(255, 255, 255, .28);--border-focus: #3fbf9f;--info-text: #7cc6ec;--success-text: #88c46a;--warning-text: #f0c360;--danger-text: #f0937e;--info-subtle: rgba(0, 121, 184, .2);--success-subtle: rgba(47, 132, 0, .22);--warning-subtle: rgba(255, 185, 46, .18);--danger-subtle: rgba(201, 33, 0, .22);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 16px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .55), 0 2px 8px rgba(0, 0, 0, .35);--focus-ring: 0 0 0 3px rgba(63, 191, 159, .42)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--brand: #3fbf9f;--brand-hover: #5acdb0;--brand-active: #7bdcc3;--brand-on: #06201a;--brand-subtle: rgba(63, 191, 159, .16);--brand-subtle-border: rgba(63, 191, 159, .38);--brand-tonal: #1d3b33;--brand-tonal-text: #a6e3d1;--text-strong: rgba(255, 255, 255, .95);--text-body: rgba(255, 255, 255, .84);--text-secondary: rgba(255, 255, 255, .66);--text-muted: rgba(255, 255, 255, .5);--text-disabled: rgba(255, 255, 255, .34);--text-link: #7bdcc3;--surface-page: #0e1412;--surface-card: #17201d;--surface-sunken: #121a17;--surface-hover: rgba(255, 255, 255, .06);--surface-active: rgba(255, 255, 255, .11);--surface-header: #0a100e;--scrim-modal: rgba(0, 0, 0, .62);--border-subtle: rgba(255, 255, 255, .08);--border-default: rgba(255, 255, 255, .16);--border-strong: rgba(255, 255, 255, .28);--border-focus: #3fbf9f;--info-text: #7cc6ec;--success-text: #88c46a;--warning-text: #f0c360;--danger-text: #f0937e;--info-subtle: rgba(0, 121, 184, .2);--success-subtle: rgba(47, 132, 0, .22);--warning-subtle: rgba(255, 185, 46, .18);--danger-subtle: rgba(201, 33, 0, .22);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 16px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .55), 0 2px 8px rgba(0, 0, 0, .35);--focus-ring: 0 0 0 3px rgba(63, 191, 159, .42)}}:root{--font-sans: "Manrope", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-heavy: 800;--text-display: 32px;--text-h1: 32px;--text-h2: 24px;--text-h3: 20px;--text-h4: 16px;--text-h5: 14px;--text-h6: 13px;--text-body: 14px;--text-body-sm: 13px;--text-caption: 12px;--text-micro: 11px;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.5;--leading-relaxed: 1.65;--tracking-tight: -.01em;--tracking-normal: 0;--tracking-wide: .01em;--tracking-overline: .08em;--font-display: var(--weight-bold) var(--text-display)/var(--leading-tight) var(--font-sans);--font-heading: var(--weight-semibold) var(--text-h2)/var(--leading-snug) var(--font-sans);--font-body-text: var(--weight-regular) var(--text-body)/var(--leading-normal) var(--font-sans)}:root{--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--radius-full: 50%;--f-control-h: 40px;--f-control-h-sm: 32px;--f-control-h-lg: 48px;--f-control-pad: 14px;--f-gap: 12px;--f-row-h: 48px;--control-h-sm: var(--f-control-h-sm);--control-h-md: var(--f-control-h);--control-h-lg: var(--f-control-h-lg);--header-h: 60px;--sidenav-w: 232px;--content-max: 1320px;--border-w: 1px;--touch-min: 44px}[data-density=compact]{--f-control-h: 32px;--f-control-h-sm: 26px;--f-control-h-lg: 40px;--f-control-pad: 10px;--f-gap: 8px;--f-row-h: 36px}@media(pointer:coarse){:root,[data-density=compact]{--f-control-h: var(--touch-min);--f-control-h-sm: 36px;--f-control-h-lg: 52px;--f-row-h: 52px}}:root{--shadow-none: none;--shadow-sm: 0 1px 2px rgba(20, 32, 28, .06), 0 1px 1px rgba(20, 32, 28, .04);--shadow-md: 0 1px 2px rgba(20, 32, 28, .06), 0 4px 16px rgba(20, 32, 28, .06);--shadow-lg: 0 8px 32px rgba(20, 32, 28, .14), 0 2px 8px rgba(20, 32, 28, .08);--shadow-xl: 0 20px 48px rgba(20, 32, 28, .22);--shadow-inset: inset 0 1px 2px rgba(20, 32, 28, .08);--elevation-dropshadow-floating: var(--shadow-lg);--duration-fastest: .1s;--duration-fast: .15s;--duration-base: .22s;--duration-slow: .32s;--duration-slower: .42s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1)}@media(prefers-reduced-motion:reduce){:root{--duration-fastest: 0ms;--duration-fast: 0ms;--duration-base: 0ms;--duration-slow: 0ms;--duration-slower: 0ms}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-normal);font-weight:var(--weight-regular);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{margin:0;color:var(--text-strong);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-h4)}p{margin:0}a{color:var(--text-link);text-decoration:none}a:hover{text-decoration:underline}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.92em}.t-overline{font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--text-muted)}.t-stack{display:flex;flex-direction:column}.t-row{display:flex;align-items:center}.t-row-top{display:flex;align-items:flex-start}.t-wrap{flex-wrap:wrap}.t-grow{flex:1}.t-center{display:flex;align-items:center;justify-content:center}.t-between{display:flex;align-items:center;justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-7{gap:var(--space-7)}.grid{display:grid;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.t-secondary{color:var(--text-secondary)}.t-muted{color:var(--text-muted)}.t-strong{color:var(--text-strong);font-weight:var(--weight-semibold)}.t-mono{font-family:var(--font-mono);font-feature-settings:"tnum"}.t-caption{font-size:var(--text-caption)}.t-sm{font-size:var(--text-body-sm)}.ti{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px}.ti>svg{width:100%;height:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--f-control-h);min-width:64px;padding:0 var(--f-control-pad);margin:0;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);line-height:1;white-space:nowrap;color:var(--brand);background:transparent;border:1px solid var(--brand);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.btn:active:not(:disabled){transform:scale(.98)}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn .ti{width:15px;height:15px}.btn .material-icons{font-size:16px;width:16px;height:16px;line-height:1}.btn-primary{color:var(--brand-on);background:var(--brand);border-color:var(--brand)}.btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.btn-success{color:var(--text-on-color);background:var(--success);border-color:var(--success)}.btn-success:hover{background:var(--success-text);border-color:var(--success-text)}.btn-danger{color:var(--text-on-color);background:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:var(--danger-text);border-color:var(--danger-text)}.btn-warning{color:var(--text-on-warning);background:var(--warning);border-color:var(--warning)}.btn-warning:hover{background:var(--warning-hover);border-color:var(--warning-hover)}.btn-info{color:var(--text-on-color);background:var(--info);border-color:var(--info)}.btn-info:hover{background:var(--info-text);border-color:var(--info-text)}.btn-tonal{color:var(--brand-tonal-text);background:var(--brand-tonal);border-color:transparent}.btn-tonal:hover{filter:brightness(.96)}.btn-outline-success{color:var(--success);border-color:var(--success);background:transparent}.btn-outline-danger{color:var(--danger);border-color:var(--danger);background:transparent}.btn-outline-success:hover,.btn-outline-danger:hover,.btn:not(.btn-primary):not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-info):not(.btn-link):hover{background:var(--surface-hover)}.btn-link{color:var(--brand);background:transparent;border-color:transparent;min-width:0;padding:0 10px}.btn-link:hover{background:var(--surface-hover)}.btn-link.btn-neutral{color:var(--text-secondary)}.btn-sm{height:var(--f-control-h-sm);padding:0 calc(var(--f-control-pad) - 2px);font-size:var(--text-caption)}.btn-sm .ti{width:13px;height:13px}.btn-sm .material-icons{font-size:14px;width:14px;height:14px}.btn-lg{height:var(--f-control-h-lg);padding:0 22px;font-size:var(--text-body)}.btn-lg .ti{width:17px;height:17px}.btn-lg .material-icons{font-size:18px;width:18px;height:18px}.btn-block{display:flex;width:100%}.btn:disabled,.btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-icon{width:var(--f-control-h);height:var(--f-control-h);min-width:0;padding:0;color:var(--text-secondary);background:transparent;border-color:transparent}.btn-icon:hover{background:var(--surface-hover)}.btn-icon.btn-sm{width:var(--f-control-h-sm);height:var(--f-control-h-sm)}.btn-icon .ti{width:18px;height:18px}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0;margin-left:-1px}.btn-group .btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md);margin-left:0}.btn-group .btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.label{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 9px;font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:.02em;text-transform:uppercase;color:var(--text-secondary);background:var(--neutral-100);border:1px solid var(--border-default);border-radius:var(--radius-pill);white-space:nowrap;line-height:1}.label .ti{width:12px;height:12px}.label-info{color:var(--info-text);background:var(--info-subtle);border-color:transparent}.label-success{color:var(--success-text);background:var(--success-subtle);border-color:transparent}.label-warning{color:var(--warning-text);background:var(--warning-subtle);border-color:transparent}.label-danger{color:var(--danger-text);background:var(--danger-subtle);border-color:transparent}.label-brand{color:var(--brand-active);background:var(--brand-subtle);border-color:transparent}.label-purple{color:var(--purple-500);background:var(--purple-100);border-color:transparent}.label-status{background:var(--surface-card);border-color:var(--border-default);color:var(--text-body);text-transform:none;letter-spacing:0;font-weight:var(--weight-semibold)}.label-status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--text-muted);flex:none}.label-status.is-active:before{background:var(--success)}.label-status.is-pending:before{background:var(--warning)}.label-status.is-inactive:before{background:var(--neutral-400)}.label-status.is-alert:before{background:var(--danger)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:var(--text-micro);font-weight:var(--weight-bold);color:var(--text-on-color);background:var(--neutral-500);border-radius:var(--radius-pill);line-height:1}.badge-info{background:var(--info)}.badge-success{background:var(--success)}.badge-danger{background:var(--danger)}.badge-brand{background:var(--brand)}.f-count{display:inline-flex;align-items:center;justify-content:center;flex:none;box-sizing:border-box;min-width:20px;height:20px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--surface-active);color:var(--text-secondary);font-size:var(--text-caption);font-weight:var(--weight-medium);line-height:1;font-variant-numeric:tabular-nums}.f-count.is-brand{background:var(--brand-tonal);color:var(--brand-tonal-text)}.f-count.is-danger{background:var(--danger-subtle);color:var(--danger-text)}.f-count.is-warning{background:var(--warning-subtle);color:var(--warning-text)}.f-field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-6)}.f-field.is-inline{flex-direction:row;align-items:center;gap:var(--space-5)}.f-label{font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-body)}.f-label .req{color:var(--danger);margin-left:2px}.f-help{font-size:var(--text-caption);color:var(--text-muted)}.f-error{font-size:var(--text-caption);color:var(--danger-text);display:none}.f-input,.f-textarea,.f-select{width:100%;height:var(--f-control-h);padding:0 12px;font-family:var(--font-sans);font-size:var(--text-body-sm);color:var(--text-strong);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.f-textarea{height:auto;min-height:80px;padding:8px 10px;line-height:var(--leading-normal);resize:vertical}.f-input::placeholder,.f-textarea::placeholder{color:var(--text-disabled)}.f-input:hover,.f-textarea:hover,.f-select:hover{border-color:var(--border-strong)}.f-input:focus,.f-textarea:focus,.f-select:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--focus-ring)}.f-input:disabled,.f-textarea:disabled,.f-select:disabled{background:var(--surface-sunken);color:var(--text-disabled);cursor:not-allowed}.f-field.is-error .f-input,.f-field.is-error .f-select,.f-field.is-error .f-textarea{border-color:var(--danger)}.f-field.is-error .f-error{display:block}.f-select{appearance:none;-webkit-appearance:none;padding-right:28px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23687683' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.f-input-group{position:relative;display:flex;align-items:center}.f-input-group .ti{position:absolute;left:10px;width:16px;height:16px;color:var(--text-muted);pointer-events:none}.f-input-group .f-input{padding-left:32px}.f-checkbox,.f-radio{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--text-body-sm);color:var(--text-body)}.f-checkbox input,.f-radio input{position:absolute;opacity:0;width:0;height:0}.f-checkbox .box,.f-radio .box{width:16px;height:16px;flex:none;border:1px solid var(--border-strong);background:var(--surface-card);display:inline-flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-standard)}.f-checkbox .box{border-radius:var(--radius-xs)}.f-radio .box{border-radius:50%}.f-checkbox input:checked+.box,.f-radio input:checked+.box{background:var(--brand);border-color:var(--brand)}.f-checkbox input:checked+.box:after{content:"";width:9px;height:5px;border-left:2px solid var(--white);border-bottom:2px solid var(--white);transform:rotate(-45deg) translate(.5px,-1px)}.f-radio input:checked+.box:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--white)}.f-checkbox input:focus-visible+.box,.f-radio input:focus-visible+.box{box-shadow:var(--focus-ring)}.f-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--text-body-sm)}.f-toggle input{position:absolute;opacity:0}.f-toggle .track{width:34px;height:18px;border-radius:var(--radius-pill);background:var(--neutral-400);position:relative;transition:background var(--duration-fast) var(--ease-standard)}.f-toggle .track:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--white);transition:transform var(--duration-fast) var(--ease-standard);box-shadow:var(--shadow-sm)}.f-toggle input:checked+.track{background:var(--brand)}.f-toggle input:checked+.track:after{transform:translate(16px)}.f-toggle input:focus-visible+.track{box-shadow:var(--focus-ring)}.password-input-group{position:relative;display:flex;align-items:center}.password-input-group input{flex:1;padding-right:var(--space-8)}.password-input-group .toggle-password{position:absolute;right:var(--space-2);background:transparent;border:none;cursor:pointer;padding:var(--space-1);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;transition:color var(--duration-fast) var(--ease-standard)}.password-input-group .toggle-password:hover{color:var(--text-strong)}.password-input-group .toggle-password:disabled{cursor:not-allowed;opacity:.5}.password-input-group .ti{width:18px;height:18px}.input-group{position:relative;display:flex;align-items:center}.input-group .input-icon{position:absolute;left:var(--space-3);color:var(--text-muted);pointer-events:none;z-index:1;width:16px;height:16px}.input-group .f-input,.input-group input{padding-left:var(--space-8)}.input-group.has-error .f-input,.input-group.has-error input{border-color:var(--danger)}.input-group.is-loading .f-input,.input-group.is-loading input{opacity:.6}.loading-spinner{display:flex;align-items:center;justify-content:center;gap:var(--space-3);color:var(--text-muted)}.loading-spinner .ti{animation:spin var(--duration-base) linear infinite;width:20px;height:20px}.form-field-label{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-semibold);color:var(--text-body)}.form-field-label .required-indicator{color:var(--danger);font-weight:var(--weight-bold)}.form-field-label .optional-indicator{color:var(--text-muted);font-size:var(--text-caption);font-style:italic}input.f-checkbox,input.f-radio{display:inline-block;width:18px;height:18px;margin:0;accent-color:var(--brand);cursor:pointer}.f-check-row{display:flex;align-items:center;gap:var(--space-2)}.f-hint{font-size:var(--text-caption);color:var(--text-muted)}.card{display:flex;flex-direction:column;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle)}.card-title{font-size:var(--text-h3);font-weight:var(--weight-semibold);color:var(--text-strong)}.card-subtitle{font-size:var(--text-caption);color:var(--text-muted);margin-top:2px}.card-block{padding:var(--space-6)}.card-block+.card-block{border-top:1px solid var(--border-subtle)}.card-block.is-tight{padding:0}.card-footer{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-subtle);background:var(--surface-sunken)}.card-footer.is-end{justify-content:flex-end}.card.is-clickable{cursor:pointer;transition:box-shadow var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard)}.card.is-clickable:hover{box-shadow:var(--shadow-sm);border-color:var(--border-default)}.card.is-accent{border-top:3px solid var(--brand)}.metric-card{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.metric-card .metric-label{font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--text-muted);display:flex;align-items:center;gap:6px}.metric-card .metric-value{font-size:30px;font-weight:var(--weight-bold);color:var(--text-strong);line-height:1;font-feature-settings:"tnum"}.metric-card .metric-delta{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-caption);font-weight:var(--weight-semibold)}.metric-card .metric-delta.is-up{color:var(--success-text)}.metric-card .metric-delta.is-down{color:var(--danger-text)}.metric-card .metric-delta .ti{width:14px;height:14px}.alert{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid transparent;border-radius:var(--radius-sm);font-size:var(--text-body-sm);color:var(--text-body)}.alert .ti{width:16px;height:16px;flex:none;margin-top:1px}.alert .alert-text{flex:1}.alert .alert-text strong{font-weight:var(--weight-bold)}.alert .alert-actions{display:flex;gap:var(--space-2);margin-left:auto}.alert .alert-close{margin-left:var(--space-3);color:inherit;opacity:.6;cursor:pointer;background:none;border:none;padding:0}.alert .alert-close:hover{opacity:1}.alert-info{background:var(--info-subtle);border-color:color-mix(in srgb,var(--info) 28%,transparent);color:var(--info-text)}.alert-success{background:var(--success-subtle);border-color:color-mix(in srgb,var(--success) 28%,transparent);color:var(--success-text)}.alert-warning{background:var(--warning-subtle);border-color:color-mix(in srgb,var(--warning) 45%,transparent);color:var(--warning-text)}.alert-danger{background:var(--danger-subtle);border-color:color-mix(in srgb,var(--danger) 28%,transparent);color:var(--danger-text)}.alert-banner{border-radius:0;border-left:none;border-right:none;border-top:none}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4);padding:var(--space-12) var(--space-6)}.empty-state .empty-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-active);color:var(--text-muted)}.empty-state .empty-icon .ti{width:24px;height:24px}.empty-state .empty-title{font-size:var(--text-h3);font-weight:var(--weight-semibold);color:var(--text-strong)}.empty-state .empty-desc{font-size:var(--text-body-sm);color:var(--text-muted);max-width:320px}.error-alert{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--danger-subtle);border:1px solid var(--danger);border-radius:var(--radius-sm);color:var(--danger-text);margin-bottom:var(--space-4)}.error-alert .ti{width:20px;height:20px;flex:none}.info-box{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--info-subtle);border:1px solid var(--info);border-radius:var(--radius-sm);color:var(--info-text);border-left:3px solid var(--info)}.info-box .ti{width:20px;height:20px;flex:none}.message{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--message-bg, var(--surface-card));border:1px solid var(--message-border, var(--border-subtle));border-radius:var(--radius-sm);color:var(--message-text, var(--text-body));border-left:3px solid var(--message-color, var(--border-subtle))}.message .ti{width:20px;height:20px;flex:none}.message-success{--message-color: var(--success);--message-bg: var(--success-subtle);--message-text: var(--success-text)}.message-warning{--message-color: var(--warning);--message-bg: var(--warning-subtle);--message-text: var(--warning-text)}.message-info{--message-color: var(--info);--message-bg: var(--info-subtle);--message-text: var(--info-text)}.message-danger{--message-color: var(--danger);--message-bg: var(--danger-subtle);--message-text: var(--danger-text)}.datagrid-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-card);overflow:hidden}.datagrid{width:100%;border-collapse:collapse;font-size:var(--text-body-sm)}.datagrid thead th{position:sticky;top:0;z-index:1;text-align:left;padding:var(--space-3) var(--space-5);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--text-secondary);background:var(--surface-sunken);border-bottom:1px solid var(--border-default);white-space:nowrap;-webkit-user-select:none;user-select:none}.datagrid thead th.is-sortable{cursor:pointer}.datagrid thead th.is-sortable:hover{color:var(--text-strong)}.datagrid thead th .sort-ind{display:inline-flex;vertical-align:middle;margin-left:4px;color:var(--brand)}.datagrid thead th .ti{width:13px;height:13px}.datagrid tbody td{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);color:var(--text-body);vertical-align:middle}.datagrid tbody tr:last-child td{border-bottom:none}.datagrid tbody tr{transition:background var(--duration-fast) var(--ease-standard)}.datagrid tbody tr:hover{background:var(--surface-hover)}.datagrid tbody tr.is-selected{background:var(--brand-subtle)}.datagrid .num{font-family:var(--font-mono);font-size:var(--text-caption);text-align:right;font-feature-settings:"tnum";color:var(--text-strong)}.datagrid .col-actions{text-align:right;white-space:nowrap;width:1%}.cell-user{display:flex;align-items:center;gap:var(--space-4)}.cell-user .cell-name{font-weight:var(--weight-semibold);color:var(--text-strong);white-space:nowrap;line-height:1.3}.cell-user .cell-sub{font-size:var(--text-caption);color:var(--text-muted);white-space:nowrap;line-height:1.3}.datagrid-toolbar{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--surface-card)}.datagrid-toolbar .spacer{flex:1}.datagrid-toolbar .result-count{font-size:var(--text-caption);color:var(--text-muted)}.datagrid-footer{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-subtle);background:var(--surface-sunken);font-size:var(--text-caption);color:var(--text-secondary)}.datagrid-footer .spacer{flex:1}.pager{display:inline-flex;align-items:center;gap:var(--space-2)}.pager button{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-default);background:var(--surface-card);border-radius:var(--radius-xs);cursor:pointer;color:var(--text-secondary)}.pager button:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}.pager button:disabled{opacity:.4;cursor:not-allowed}.pager .page-cur{font-weight:var(--weight-semibold);color:var(--text-strong)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:none;border-radius:50%;background:var(--brand-subtle);color:var(--brand-active);font-size:var(--text-caption);font-weight:var(--weight-bold);text-transform:uppercase;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-sm{width:24px;height:24px;font-size:var(--text-micro)}.avatar-lg{width:40px;height:40px;font-size:var(--text-body-sm)}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:var(--space-5);align-items:start;overflow-x:auto;padding-bottom:var(--space-3)}.board-col{display:flex;flex-direction:column;min-height:120px;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.board-col-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4);border-bottom:1px solid var(--border-subtle)}.board-col-head .col-dot{width:8px;height:8px;border-radius:50%;background:var(--neutral-400);flex:none}.board-col-head .col-name{font-size:var(--text-body-sm);font-weight:var(--weight-bold);color:var(--text-strong)}.board-col-head .col-count{margin-left:auto;min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-micro);font-weight:var(--weight-bold);color:var(--text-secondary);background:var(--surface-active);border-radius:var(--radius-pill)}.board-col[data-stage=sourced] .col-dot{background:var(--neutral-500)}.board-col[data-stage=screening] .col-dot{background:var(--info)}.board-col[data-stage=submitted] .col-dot{background:var(--brand)}.board-col[data-stage=interview] .col-dot{background:var(--warning)}.board-col[data-stage=offer] .col-dot{background:var(--success)}.board-list{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);flex:1;min-height:60px;transition:background var(--duration-fast) var(--ease-standard)}.board-col.is-drop-target .board-list{background:var(--brand-subtle)}.board-col.is-drop-target{border-color:var(--brand-subtle-border)}.board-list:empty:after{content:"Drop candidate here";display:flex;align-items:center;justify-content:center;min-height:56px;font-size:var(--text-caption);color:var(--text-disabled);border:1px dashed var(--border-default);border-radius:var(--radius-sm)}.cand-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-left:3px solid var(--border-default);border-radius:var(--radius-sm);padding:var(--space-4);cursor:grab;-webkit-user-select:none;user-select:none;transition:box-shadow var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.cand-card:hover{box-shadow:var(--shadow-sm);border-left-color:var(--brand)}.cand-card:active{cursor:grabbing}.cand-card:focus-visible{outline:none;box-shadow:var(--focus-ring);border-left-color:var(--brand)}.cand-card.is-dragging{opacity:.5;box-shadow:var(--shadow-lg);cursor:grabbing}.cand-card.is-dragging *{pointer-events:none}.cand-card .cand-top{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.cand-card .cand-name{font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-strong);line-height:1.25}.cand-card .cand-role{font-size:var(--text-caption);color:var(--text-muted);line-height:1.25}.cand-card .cand-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.cand-card .cand-rate{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--text-strong)}.cand-card .cand-grip{margin-left:auto;color:var(--text-disabled);display:inline-flex}.cand-card .cand-grip .ti{width:15px;height:15px}.board-placeholder{height:2px;background:var(--brand);border-radius:2px;margin:2px 0;box-shadow:0 0 0 3px var(--brand-subtle)}.skill-chip{display:inline-flex;align-items:center;gap:var(--space-3);height:28px;padding:0 10px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-pill);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-body);white-space:nowrap}.skill-chip .verified{display:inline-flex;color:var(--success)}.skill-chip .verified .ti{width:13px;height:13px}.skill-chip.is-core{border-color:var(--brand-subtle-border);background:var(--brand-subtle);color:var(--brand-active)}.skill-chip.is-gap{border-style:dashed;color:var(--text-muted);background:var(--surface-sunken)}.skill-chip .x{display:inline-flex;color:var(--text-disabled);cursor:pointer}.skill-chip .x:hover{color:var(--danger)}.skill-chip .x .ti{width:13px;height:13px}.skill-add{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 12px;border:1px dashed var(--border-strong);border-radius:var(--radius-pill);background:transparent;color:var(--text-secondary);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);cursor:pointer}.skill-add:hover{border-color:var(--brand);color:var(--brand)}.skill-add .ti{width:14px;height:14px}.skill-meter{display:inline-flex;align-items:center;gap:3px}.skill-meter i{width:7px;height:7px;border-radius:50%;background:var(--neutral-300)}.skill-meter i.is-on{background:var(--brand)}.skill-meter.is-self i.is-on{background:var(--neutral-500)}.skill-meter-label{font-size:var(--text-caption);color:var(--text-muted);margin-left:6px}.skill-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--space-5);padding:var(--space-4) 0;border-bottom:1px solid var(--border-subtle)}.skill-row:last-child{border-bottom:none}.skill-row .skill-name{display:flex;align-items:center;gap:var(--space-3)}.skill-row .skill-name .nm{font-weight:var(--weight-semibold);color:var(--text-strong)}.skill-row .skill-name .cat{font-size:var(--text-caption);color:var(--text-muted)}.skill-row .skill-info{display:flex;align-items:center;gap:var(--space-5)}.endorse{display:inline-flex;align-items:center}.endorse .avatar{width:22px;height:22px;font-size:9px;border:2px solid var(--surface-card);margin-left:-7px}.endorse .avatar:first-child{margin-left:0}.endorse .more{font-size:var(--text-caption);color:var(--text-muted);margin-left:6px}.coverage{display:flex;flex-direction:column;gap:6px}.coverage-track{height:8px;border-radius:var(--radius-pill);background:var(--surface-active);overflow:hidden}.coverage-fill{height:100%;border-radius:var(--radius-pill);background:var(--brand)}.coverage-fill.is-low{background:var(--danger)}.coverage-fill.is-mid{background:var(--warning)}.coverage-fill.is-high{background:var(--success)}.coverage-meta{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-caption);color:var(--text-secondary)}.coverage-meta b{color:var(--text-strong);font-weight:var(--weight-bold)}.skill-cat-head{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-6) 0 var(--space-3)}.skill-cat-head .ti{width:15px;height:15px;color:var(--text-muted)}.skill-cat-head .lbl{font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--text-muted)}.skill-cat-head .ln{flex:1;height:1px;background:var(--border-subtle)}.role-rail{display:flex;flex-direction:column;gap:var(--space-2)}.role-rail .rail-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.role-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);cursor:pointer;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;width:100%;text-align:left;transition:background var(--duration-fast) var(--ease-standard)}.role-item:hover{background:var(--surface-hover)}.role-item.is-active{background:var(--brand-subtle);border-color:var(--brand-subtle-border)}.role-item .role-ico{width:32px;height:32px;flex:none;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:var(--surface-active);color:var(--text-secondary)}.role-item.is-active .role-ico{background:var(--brand);color:var(--text-on-color)}.role-item .role-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.role-item .role-name{font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-strong);display:flex;align-items:center}.role-item .role-sub{font-size:var(--text-caption);color:var(--text-muted)}.role-item .role-count{font-size:var(--text-caption);color:var(--text-muted);font-family:var(--font-mono)}.role-item.is-system .role-name:after{content:"system";margin-left:8px;font:var(--weight-bold) var(--text-micro)/1 var(--font-sans);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);background:var(--surface-active);padding:2px 5px;border-radius:var(--radius-xs);vertical-align:middle}.perm-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-card);overflow:hidden}.perm-matrix{width:100%;border-collapse:collapse}.perm-scroll{max-height:calc(100vh - 340px);overflow:auto}.perm-matrix thead th{position:sticky;z-index:3}.perm-matrix thead .grp-row th{top:0}.perm-matrix thead .rights-row th{top:28px}.perm-matrix thead th.col-res{left:0;z-index:5}.perm-matrix td.col-res{position:sticky;left:0;z-index:1;background:var(--surface-card)}.perm-matrix tbody tr:hover td.col-res{background:var(--surface-hover)}.perm-mod-row td{background:var(--surface-sunken);border-bottom:1px solid var(--border-default);padding:0}.perm-mod{position:sticky;left:0;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);width:max-content;min-width:520px}.perm-mod .mod-toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-xs);color:var(--text-secondary);cursor:pointer;background:none;border:none}.perm-mod .mod-toggle:hover{background:var(--surface-active)}.perm-mod .mod-toggle .ti{width:15px;height:15px;transition:transform var(--duration-fast) var(--ease-standard)}.perm-mod.is-collapsed .mod-toggle .ti{transform:rotate(-90deg)}.perm-mod .mod-ico{color:var(--text-muted);display:inline-flex}.perm-mod .mod-ico .ti{width:15px;height:15px}.perm-mod .mod-name{font-size:var(--text-body-sm);font-weight:var(--weight-bold);color:var(--text-strong)}.perm-mod .mod-sum{font-size:var(--text-caption);color:var(--text-muted);font-family:var(--font-mono)}.perm-mod .spacer{flex:1;min-width:var(--space-6)}.perm-mod .mod-bulk{display:inline-flex;align-items:center;gap:5px}.perm-mod .mod-bulk .bulk-lbl{font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-disabled);margin-right:2px}.perm-matrix thead th{padding:var(--space-3) var(--space-3);background:var(--surface-sunken);border-bottom:1px solid var(--border-default);vertical-align:bottom}.perm-matrix thead .grp-row th{padding-top:var(--space-3);padding-bottom:2px;font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--text-muted);text-align:center;background:var(--surface-sunken);border-bottom:none}.perm-matrix thead .grp-row .grp-view{color:var(--info-text)}.perm-matrix thead .grp-row .grp-manage{color:var(--brand-active)}.perm-matrix thead .grp-row .grp-move{color:var(--warning-text)}.perm-matrix thead .grp-row .grp-admin{color:var(--danger-text)}.perm-matrix thead .rights-row th{font-size:var(--text-micro);font-weight:var(--weight-bold);color:var(--text-secondary);text-align:center;width:64px}.perm-matrix thead th.col-res{text-align:left;width:auto}.perm-matrix thead th.col-res .res-h{font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--text-secondary)}.perm-matrix thead th.col-end{width:1%}.perm-matrix .sep-l{border-left:1px solid var(--border-subtle)}.perm-matrix tbody td{padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--border-subtle);text-align:center}.perm-matrix tbody tr:last-child td{border-bottom:none}.perm-matrix tbody tr:hover{background:var(--surface-hover)}.perm-matrix td.col-res{text-align:left}.perm-res{display:flex;align-items:center;gap:var(--space-3)}.perm-res .res-ico{width:28px;height:28px;flex:none;border-radius:var(--radius-xs);background:var(--surface-active);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.perm-res .res-name{font-weight:var(--weight-semibold);color:var(--text-strong)}.perm-res .res-sub{font-size:var(--text-caption);color:var(--text-muted);font-family:var(--font-mono)}.perm-check{width:20px;height:20px;margin:0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface-card);cursor:pointer;color:var(--text-on-color);transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.perm-check .ti{width:13px;height:13px;opacity:0;transition:opacity var(--duration-fast)}.perm-check:hover{border-color:var(--brand)}.perm-check.is-on{background:var(--brand);border-color:var(--brand)}.perm-check.is-on .ti{opacity:1}.perm-check:focus-visible{outline:none;box-shadow:var(--focus-ring)}.perm-check.is-admin.is-on{background:var(--danger);border-color:var(--danger)}.perm-check.is-on.is-implied{background:var(--teal-200);border-color:var(--teal-200)}.perm-presets{display:inline-flex;gap:4px}.preset-chip{height:24px;padding:0 9px;border-radius:var(--radius-pill);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:.02em;text-transform:uppercase;border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.preset-chip:hover{border-color:var(--brand);color:var(--brand-active);background:var(--brand-subtle)}.preset-chip.is-active{background:var(--brand);border-color:var(--brand);color:var(--text-on-color)}.perm-summary{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-subtle);background:var(--surface-sunken)}.perm-summary .ps-item{display:flex;align-items:center;gap:7px;font-size:var(--text-caption);color:var(--text-secondary)}.perm-summary .ps-item b{color:var(--text-strong);font-family:var(--font-mono)}.perm-summary .spacer{flex:1}.right-chips{display:inline-flex;flex-wrap:wrap;gap:5px}.right-chip{height:22px;padding:0 8px;display:inline-flex;align-items:center;gap:4px;border-radius:var(--radius-pill);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:.02em;cursor:pointer;border:1px solid transparent}.right-chip.is-off{background:var(--surface-sunken);border-style:dashed;border-color:var(--border-default);color:var(--text-disabled)}.right-chip.is-on{background:var(--brand-subtle);color:var(--brand-active)}.right-chip.is-on.is-admin{background:var(--danger-subtle);color:var(--danger-text)}.right-chip .ti{width:11px;height:11px}.dialog-overlay{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;padding:24px;background:var(--surface-overlay)}.dialog-overlay.is-open{display:flex}.dialog{width:100%;max-width:480px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);overflow:hidden;animation:dialog-in .16s var(--ease-standard)}.dialog.is-lg{max-width:600px}@keyframes dialog-in{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-6) var(--space-6) var(--space-4);flex:none}.dialog-head .dh-icon{width:36px;height:36px;flex:none;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:var(--brand-subtle);color:var(--brand)}.dialog-head .dh-icon .ti{width:19px;height:19px}.dialog-head .dh-text{flex:1}.dialog-head h3{font-size:var(--text-h2);font-weight:var(--weight-bold);color:var(--text-strong);letter-spacing:var(--tracking-tight)}.dialog-head .sub{font-size:var(--text-body-sm);color:var(--text-muted);margin-top:3px}.dialog-x{display:inline-flex;padding:6px;flex:none;color:var(--text-muted);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm)}.dialog-x:hover{background:var(--surface-hover);color:var(--text-strong)}.dialog-x .ti{width:16px;height:16px}.dialog-body{padding:var(--space-3) var(--space-6) var(--space-5);overflow-y:auto}.dialog-foot{display:flex;align-items:center;gap:var(--space-3);justify-content:flex-end;padding:var(--space-5) var(--space-6);border-top:1px solid var(--border-subtle);background:var(--surface-sunken);flex:none}.dialog-foot .foot-note{margin-right:auto;font-size:var(--text-caption);color:var(--text-muted);display:inline-flex;align-items:center;gap:6px}.dialog-foot .foot-note .ti{width:13px;height:13px}.icon-picker{display:flex;flex-wrap:wrap;gap:var(--space-2)}.icon-opt{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);color:var(--text-secondary);cursor:pointer}.icon-opt .ti{width:18px;height:18px}.icon-opt:hover{border-color:var(--border-strong);background:var(--surface-hover)}.icon-opt.is-sel{border-color:var(--brand);background:var(--brand-subtle);color:var(--brand-active);box-shadow:inset 0 0 0 1px var(--brand)}.choice-list{display:flex;flex-direction:column;gap:var(--space-3)}.choice{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard)}.choice:hover{border-color:var(--border-strong);background:var(--surface-hover)}.choice.is-sel{border-color:var(--brand);background:var(--brand-subtle)}.choice .ch-radio{width:16px;height:16px;flex:none;margin-top:1px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface-card);display:inline-flex;align-items:center;justify-content:center}.choice.is-sel .ch-radio{border-color:var(--brand);background:var(--brand)}.choice.is-sel .ch-radio:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--white)}.choice .ch-body{flex:1}.choice .ch-title{font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-strong)}.choice .ch-desc{font-size:var(--text-caption);color:var(--text-muted);margin-top:2px}@media(max-width:640px){.dialog-overlay{padding:0;align-items:flex-end}.dialog,.dialog.is-lg{max-width:none;width:100%;max-height:calc(100dvh - 24px);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding-bottom:env(safe-area-inset-bottom);animation:dialog-sheet-in var(--duration-base) var(--ease-standard)}.dialog-foot{flex-wrap:wrap}.dialog-foot .btn{flex:1 1 auto}}@keyframes dialog-sheet-in{0%{transform:translateY(100%)}to{transform:none}}.header{display:flex;align-items:center;gap:var(--space-5);height:var(--header-h);padding:0 var(--space-6);background:var(--surface-header);color:var(--text-on-dark)}.header .branding{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-h3);font-weight:var(--weight-bold);color:var(--on-dark-1);letter-spacing:-.01em}.header .branding img{width:28px;height:28px}.header .branding .brand-mark{width:28px;height:28px;border-radius:var(--radius-md)}.header-nav{display:flex;align-items:center;gap:2px;height:100%;margin-left:var(--space-5)}.header-nav a{display:inline-flex;align-items:center;height:100%;padding:0 var(--space-5);color:var(--on-dark-2);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);text-decoration:none;border-bottom:2px solid transparent;transition:color var(--duration-fast) var(--ease-standard)}.header-nav a:hover{color:var(--on-dark-1);text-decoration:none}.header-nav a.is-active{color:var(--on-dark-1);border-bottom-color:var(--teal-300)}.header .spacer{flex:1}.header-actions{display:flex;align-items:center;gap:var(--space-2)}.header-actions .btn-icon{color:var(--on-dark-2)}.header-actions .btn-icon:hover{background:var(--on-dark-fill);color:var(--on-dark-1)}.header .header-search{position:relative;width:260px}.header .header-search .ti{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--on-dark-3)}.header .header-search input{width:100%;height:34px;padding:0 10px 0 32px;background:var(--on-dark-fill);border:1px solid var(--on-dark-border);border-radius:var(--radius-sm);color:var(--on-dark-1);font-size:var(--text-body-sm);font-family:var(--font-sans)}.header .header-search input::placeholder{color:var(--on-dark-3)}.header .header-search input:focus{outline:none;background:var(--on-dark-fill-hover);border-color:var(--teal-300)}.app-body{display:flex;min-height:calc(100vh - var(--header-h))}.sidenav{width:var(--sidenav-w);flex:none;background:var(--surface-card);border-right:1px solid var(--border-subtle);padding:var(--space-5) var(--space-4);overflow-y:auto}.sidenav-group+.sidenav-group{margin-top:var(--space-6)}.sidenav-group .group-label{padding:0 var(--space-4) var(--space-3);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--text-muted)}.sidenav-link{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);color:var(--text-body);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);text-decoration:none;cursor:pointer;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.sidenav-link .ti{width:17px;height:17px;color:var(--text-muted);flex:none}.sidenav-link .count{margin-left:auto}.sidenav-link:hover{background:var(--surface-hover);text-decoration:none}.sidenav-link.is-active{background:var(--brand-subtle);color:var(--brand-active)}.sidenav-link.is-active .ti{color:var(--brand)}.content{flex:1;padding:var(--space-7) var(--space-8);overflow-y:auto}.content-narrow{max-width:var(--content-max);margin:0 auto}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-7)}.page-header .page-title{font-size:var(--text-h1);font-weight:var(--weight-bold);color:var(--text-strong);letter-spacing:var(--tracking-tight)}.page-header .page-sub{font-size:var(--text-body-sm);color:var(--text-muted);margin-top:4px}.page-actions{display:flex;align-items:center;gap:var(--space-3)}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-caption);color:var(--text-muted);margin-bottom:var(--space-3)}.breadcrumb a{color:var(--text-muted)}.breadcrumb .ti{width:13px;height:13px}.tabs{display:flex;gap:0;border-bottom:1px solid var(--border-default)}.tab{padding:var(--space-4) var(--space-5);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;background:none;border-top:none;border-left:none;border-right:none;transition:color var(--duration-fast) var(--ease-standard)}.tab:hover{color:var(--text-strong)}.tab.is-active{color:var(--brand-active);border-bottom-color:var(--brand)}.app-footer{flex:none;display:flex;align-items:center;gap:var(--space-5);height:40px;padding:0 var(--space-7);background:var(--surface-header);border-top:1px solid var(--on-dark-divider);font-size:var(--text-caption);color:var(--on-dark-3)}.app-footer .af-brand{display:inline-flex;align-items:center;gap:7px;color:var(--on-dark-1);font-weight:var(--weight-bold);font-size:var(--text-body-sm)}.app-footer .af-brand img{width:18px;height:18px}.app-footer .copy{color:var(--on-dark-4)}.app-footer .spacer{flex:1}.app-footer a{color:var(--on-dark-2);font-weight:var(--weight-semibold);text-decoration:none}.app-footer a:hover{color:var(--on-dark-1);text-decoration:none}.app-footer .af-status{display:inline-flex;align-items:center;gap:6px}.app-footer .af-status .dot{width:7px;height:7px;border-radius:50%;background:var(--teal-300);flex:none}.dropdown-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard);border:none;background:transparent;width:100%;text-align:left;font-size:var(--text-body-sm);color:var(--text-body);font-family:inherit}.dropdown-item:hover{background:var(--surface-hover);color:var(--text-strong)}.dropdown-item .item-icon{width:18px;height:18px;color:var(--text-secondary);flex-shrink:0}.dropdown-item:hover .item-icon{color:var(--text-strong)}.dropdown-item.is-danger{color:var(--danger-text)}.dropdown-item.is-danger .item-icon{color:var(--danger)}.dropdown-item.is-danger:hover{background:var(--danger-subtle)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:14px;line-height:1.5}app-root{display:flex;flex-direction:column;height:100%;width:100%}@keyframes spin-around{to{transform:rotate(360deg)}}.is-spinning{animation:spin-around 1s linear infinite}.text-right{text-align:right}.empty-cell{text-align:center;padding:var(--space-6)}.alert-inset{margin:var(--space-4)}.no-indent{padding-left:0}.card-title-sm{font-size:var(--text-body-sm)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.hint-block{display:block;margin-bottom:var(--space-2)}.field-row{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.field-row>label{flex:1}.label-optional{font-weight:var(--weight-regular);color:var(--text-muted);font-size:var(--text-caption)}.metric-unit{font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-muted)}.search-sm{width:calc(var(--space-12) * 4)}.grow{flex:1}
