/* src/fonts.css */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2") format("woff2");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2") format("woff2");
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2") format("woff2");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2") format("woff2");
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2") format("woff2");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2") format("woff2");
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2") format("woff2");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2") format("woff2");
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2") format("woff2");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2") format("woff2");
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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: 400;
  font-display: swap;
  src: url("./fonts/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("./fonts/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("./fonts/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("./fonts/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("./fonts/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-20C0,
    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("./fonts/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("./fonts/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("./fonts/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("./fonts/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("./fonts/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("./fonts/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-20C0,
    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("./fonts/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;
}

/* src/tokens.css */
:root {
  --brain-bg: #0a0a0f;
  --brain-surface: #111118;
  --brain-surface-2: #1a1a24;
  --brain-border: #ffffff10;
  --brain-border-strong: #ffffff1a;
  --brain-text: #e8e8f0;
  --brain-text-muted: #6b6b80;
  --brain-danger: #ef4444;
  --brain-success: #22c55e;
  --brain-warning: #eab308;
  --brain-aurora-1: #3b82f6;
  --brain-aurora-2: #8b5cf6;
  --brain-aurora-3: #ec4899;
  --brain-aurora-4: #22d3ee;
  --brain-cat-1: #3987e5;
  --brain-cat-2: #008300;
  --brain-cat-3: #d55181;
  --brain-cat-4: #c98500;
  --brain-cat-5: #199e70;
  --brain-cat-6: #d95926;
  --brain-cat-7: #9085e9;
  --brain-cat-8: #e66767;
  --brain-syntax-key: #8aa6d6;
  --brain-syntax-str: #8fbf9f;
  --brain-syntax-num: #d0b085;
  --brain-syntax-fn: #9fc7d4;
  --brain-syntax-com: #61617a;
  --brain-syntax-punc: #9a9ab0;
  --brain-radius-sm: 6px;
  --brain-radius: 10px;
  --brain-radius-lg: 16px;
  --brain-font:
    "Inter",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  --brain-font-mono:
    "JetBrains Mono",
    ui-monospace,
    SFMono-Regular,
    Menlo,
    monospace;
  --brain-transition: .15s ease;
}
[data-theme=light] {
  --brain-bg: #ffffff;
  --brain-surface: #ffffff;
  --brain-surface-2: #f4f4f5;
  --brain-border: #0000000d;
  --brain-border-strong: #00000018;
  --brain-text: #18181b;
  --brain-text-muted: #71717a;
  --brain-danger: #dc2626;
  --brain-success: #16a34a;
  --brain-warning: #ca8a04;
  --brain-syntax-key: #3b5ba5;
  --brain-syntax-str: #3f7a52;
  --brain-syntax-num: #9a6b1e;
  --brain-syntax-fn: #2f6f80;
  --brain-syntax-com: #8a8a99;
  --brain-syntax-punc: #6b6b80;
  --brain-cat-1: #2a78d6;
  --brain-cat-2: #008300;
  --brain-cat-3: #e87ba4;
  --brain-cat-4: #eda100;
  --brain-cat-5: #1baf7a;
  --brain-cat-6: #eb6834;
  --brain-cat-7: #4a3aa7;
  --brain-cat-8: #e34948;
}

/* src/base.css */
.brain,
.brain * {
  box-sizing: border-box;
}
.brain {
  font-family: var(--brain-font);
  color: var(--brain-text);
}
.brain-flag {
  display: inline-block;
  border-radius: 3px;
  overflow: hidden;
  flex-shrink: 0;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .08);
  vertical-align: middle;
}

/* src/components/scroll.css */
.brain-scroll,
.brain-sidebar-nav,
.brain-chat-list {
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, var(--brain-text) 20%, transparent) transparent;
}
.brain-scroll::-webkit-scrollbar,
.brain-sidebar-nav::-webkit-scrollbar,
.brain-chat-list::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.brain-scroll::-webkit-scrollbar-track,
.brain-sidebar-nav::-webkit-scrollbar-track,
.brain-chat-list::-webkit-scrollbar-track {
  background: transparent;
}
.brain-scroll::-webkit-scrollbar-thumb,
.brain-sidebar-nav::-webkit-scrollbar-thumb,
.brain-chat-list::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, var(--brain-text) 20%, transparent);
  border-radius: 999px;
  border: 3px solid transparent;
  background-clip: padding-box;
  transition: background .15s ease;
}
.brain-scroll::-webkit-scrollbar-thumb:hover,
.brain-sidebar-nav::-webkit-scrollbar-thumb:hover,
.brain-chat-list::-webkit-scrollbar-thumb:hover {
  background: color-mix(in srgb, var(--brain-text) 38%, transparent);
  background-clip: padding-box;
}
.brain-scroll::-webkit-scrollbar-corner {
  background: transparent;
}
.brain-sidebar-nav::-webkit-scrollbar {
  width: 6px;
}
.brain-sidebar-nav::-webkit-scrollbar-thumb {
  border-width: 1px;
}
.brain-scroll--thin::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.brain-scroll--thin::-webkit-scrollbar-thumb {
  border-width: 1px;
}
.brain-scroll--hover {
  scrollbar-color: transparent transparent;
}
.brain-scroll--hover::-webkit-scrollbar-thumb {
  background: transparent;
}
.brain-scroll--hover:hover {
  scrollbar-color: color-mix(in srgb, var(--brain-text) 20%, transparent) transparent;
}
.brain-scroll--hover:hover::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, var(--brain-text) 20%, transparent);
  background-clip: padding-box;
}

/* src/components/button.css */
.brain-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 14px;
  font-family: var(--brain-font);
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  border-radius: var(--brain-radius);
  border: 1px solid var(--brain-border-strong);
  background: transparent;
  color: var(--brain-text);
  transition:
    border-color var(--brain-transition),
    background var(--brain-transition),
    color var(--brain-transition),
    opacity var(--brain-transition);
}
.brain-btn svg {
  width: 14px;
  height: 14px;
  color: var(--brain-text-muted);
  transition: color var(--brain-transition);
}
.brain-btn:hover {
  border-color: var(--brain-text);
}
.brain-btn:hover svg {
  color: var(--brain-text);
}
.brain-btn:disabled,
.brain-btn[disabled] {
  opacity: .4;
  cursor: default;
  pointer-events: none;
}
.brain-btn:focus-visible {
  outline: 2px solid var(--brain-text);
  outline-offset: 2px;
}
.brain-btn--primary {
  background: var(--brain-text);
  border-color: var(--brain-text);
  color: var(--brain-bg);
}
.brain-btn--primary svg {
  color: var(--brain-bg);
}
.brain-btn--primary:hover {
  opacity: .9;
  border-color: var(--brain-text);
}
.brain-btn--primary:hover svg {
  color: var(--brain-bg);
}
.brain-btn--ghost {
  border-color: transparent;
  color: var(--brain-text-muted);
}
.brain-btn--ghost:hover {
  border-color: transparent;
  background: var(--brain-surface-2);
  color: var(--brain-text);
}
.brain-btn--danger {
  border-color: color-mix(in srgb, var(--brain-danger) 30%, transparent);
  color: var(--brain-danger);
}
.brain-btn--danger svg {
  color: var(--brain-danger);
}
.brain-btn--danger:hover {
  border-color: var(--brain-danger);
  background: color-mix(in srgb, var(--brain-danger) 12%, transparent);
}
.brain-btn--danger:hover svg {
  color: var(--brain-danger);
}
.brain-btn--loading {
  pointer-events: none;
  opacity: .85;
}
.brain-btn--loading svg {
  display: none;
}
.brain-btn--loading::before {
  content: "";
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  border-radius: 50%;
  border: 2px solid color-mix(in srgb, currentColor 30%, transparent);
  border-top-color: currentColor;
  animation: brain-btn-spin .6s linear infinite;
}
@keyframes brain-btn-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .brain-btn--loading::before {
    animation-duration: 1.4s;
  }
}
.brain-btn--sm {
  padding: 6px 10px;
  font-size: 12px;
}
.brain-btn--icon {
  padding: 0;
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}
.brain-btn--icon.brain-btn--sm {
  width: 30px;
  height: 30px;
}

/* src/components/input.css */
.brain-input {
  width: 100%;
  padding: 10px 12px;
  font-family: var(--brain-font);
  font-size: 14px;
  line-height: 1.4;
  color: var(--brain-text);
  background: transparent;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  outline: none;
  transition: border-color var(--brain-transition);
}
.brain-input::placeholder {
  color: var(--brain-text-muted);
}
.brain-input:focus {
  border-color: var(--brain-text);
}
.brain-input:disabled {
  opacity: .5;
  cursor: not-allowed;
  background: var(--brain-surface-2);
}
textarea.brain-input {
  resize: vertical;
  min-height: 88px;
}
.brain-input--error {
  border-color: var(--brain-danger);
}
.brain-input--error:focus {
  border-color: var(--brain-danger);
}
.brain-input--sm {
  padding: 8px 10px;
  font-size: 13px;
}
.brain-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.brain-field-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--brain-text-muted);
}
.brain-field-hint {
  font-size: 12px;
  color: var(--brain-text-muted);
}
.brain-field-error {
  font-size: 12px;
  color: var(--brain-danger);
}
.brain-search {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 0 12px;
  height: 38px;
  background: transparent;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  transition: border-color var(--brain-transition);
}
.brain-search:focus-within {
  border-color: var(--brain-text);
}
.brain-search svg {
  width: 15px;
  height: 15px;
  color: var(--brain-text-muted);
  flex-shrink: 0;
}
.brain-search input {
  flex: 1;
  min-width: 0;
  border: none;
  background: transparent;
  outline: none;
  color: var(--brain-text);
  font-family: var(--brain-font);
  font-size: 14px;
}
.brain-search input::placeholder {
  color: var(--brain-text-muted);
}

/* src/components/otp.css */
.brain-otp {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.brain-otp-input {
  width: 48px;
  height: 56px;
  padding: 0;
  text-align: center;
  font-family: var(--brain-font);
  font-size: 22px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--brain-text);
  background: transparent;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  outline: none;
  caret-color: var(--brain-text);
  transition: border-color var(--brain-transition), background var(--brain-transition);
}
.brain-otp-input::placeholder {
  color: var(--brain-text-muted);
}
.brain-otp-input:hover {
  border-color: var(--brain-text-muted);
}
.brain-otp-input:focus {
  border-color: var(--brain-text);
}
.brain-otp-input.is-filled {
  border-color: var(--brain-text);
  background: var(--brain-surface);
}
.brain-otp-input:disabled {
  opacity: .5;
  cursor: not-allowed;
  background: var(--brain-surface-2);
}
.brain-otp-sep {
  width: 12px;
  flex-shrink: 0;
}
.brain-otp.is-error .brain-otp-input,
.brain-otp.is-error .brain-otp-input:focus {
  border-color: var(--brain-danger);
}
.brain-otp.is-success .brain-otp-input {
  border-color: var(--brain-success);
}
.brain-otp--sm .brain-otp-input {
  width: 40px;
  height: 48px;
  font-size: 18px;
}
.brain-otp--sm {
  gap: 8px;
}
@media (prefers-reduced-motion: no-preference) {
  .brain-otp.is-error {
    animation: brain-otp-shake .32s ease;
  }
}
@keyframes brain-otp-shake {
  0%, 100% {
    transform: translateX(0);
  }
  20%, 60% {
    transform: translateX(-5px);
  }
  40%, 80% {
    transform: translateX(5px);
  }
}

/* src/components/pay.css */
.brain-cardfield {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.brain-cardfield-num {
  position: relative;
}
.brain-cardfield-num .brain-input {
  padding-right: 54px;
}
.brain-cardfield-brand {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  height: 22px;
  pointer-events: none;
}
.brain-cardfield-brand svg {
  height: 22px;
  width: auto;
  display: block;
}
.brain-cardfield-row {
  display: flex;
  gap: 14px;
}
.brain-cardfield-row .brain-field {
  flex: 1;
  min-width: 0;
}
.brain-savedcard {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 13px 16px;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  cursor: pointer;
  transition: border-color var(--brain-transition), background var(--brain-transition);
}
.brain-savedcard input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.brain-savedcard:hover {
  border-color: var(--brain-text);
}
.brain-savedcard:has(input:checked) {
  border-color: var(--brain-text);
  background: var(--brain-surface-2);
}
.brain-savedcard-brand {
  display: inline-flex;
  align-items: center;
  height: 26px;
  flex-shrink: 0;
}
.brain-savedcard-brand svg {
  height: 26px;
  width: auto;
  display: block;
}
.brain-savedcard-main {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}
.brain-savedcard-num {
  font-size: 14px;
  font-weight: 600;
  color: var(--brain-text);
  font-variant-numeric: tabular-nums;
  letter-spacing: .04em;
}
.brain-savedcard-exp {
  font-size: 12px;
  color: var(--brain-text-muted);
}
.brain-savedcard-check {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--brain-text);
  opacity: 0;
  transition: opacity var(--brain-transition);
}
.brain-savedcard-check svg {
  width: 20px;
  height: 20px;
}
.brain-savedcard:has(input:checked) .brain-savedcard-check {
  opacity: 1;
}
.brain-paymethods {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.brain-paymethod {
  position: relative;
  flex: 1;
  min-width: 96px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px 12px;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  cursor: pointer;
  text-align: center;
  transition: border-color var(--brain-transition), background var(--brain-transition);
}
.brain-paymethod input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.brain-paymethod:hover {
  border-color: var(--brain-text);
}
.brain-paymethod:has(input:checked) {
  border-color: var(--brain-text);
  background: var(--brain-surface-2);
}
.brain-paymethod-icon {
  color: var(--brain-text);
  display: inline-flex;
}
.brain-paymethod-icon svg {
  width: 24px;
  height: 24px;
}
.brain-paymethod-label {
  font-size: 13px;
  font-weight: 500;
  color: var(--brain-text);
}
.brain-pix {
  display: flex;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
}
.brain-pix-qr {
  width: 148px;
  height: 148px;
  flex-shrink: 0;
  padding: 10px;
  background: #fff;
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius);
}
.brain-pix-qr svg {
  display: block;
  width: 100%;
  height: 100%;
}
.brain-pix-body {
  flex: 1;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.brain-pix-code {
  font-family: var(--brain-font-mono);
  font-size: 12px;
  line-height: 1.5;
  color: var(--brain-text);
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border);
  border-radius: 8px;
  padding: 10px 12px;
  word-break: break-all;
  max-height: 66px;
  overflow: auto;
}
.brain-copybtn .cp-done {
  display: none;
}
.brain-copybtn.is-copied .cp-on {
  display: none;
}
.brain-copybtn.is-copied .cp-done {
  display: inline;
}
.brain-summary {
  display: flex;
  flex-direction: column;
}
.brain-summary-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 0;
  font-size: 14px;
  color: var(--brain-text-muted);
}
.brain-summary-row > span:last-child {
  color: var(--brain-text);
  font-variant-numeric: tabular-nums;
}
.brain-summary-row--discount > span:last-child {
  color: var(--brain-success);
}
.brain-summary-row--total {
  border-top: 1px solid var(--brain-border);
  margin-top: 6px;
  padding-top: 12px;
  font-size: 16px;
  font-weight: 700;
  color: var(--brain-text);
}
.brain-summary-row--total > span:last-child {
  font-size: 18px;
}
.brain-installments {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.brain-installment {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  cursor: pointer;
  transition: border-color var(--brain-transition), background var(--brain-transition);
}
.brain-installment input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.brain-installment:hover {
  border-color: var(--brain-text);
}
.brain-installment:has(input:checked) {
  border-color: var(--brain-text);
  background: var(--brain-surface-2);
}
.brain-installment-n {
  font-size: 14px;
  font-weight: 600;
  color: var(--brain-text);
  font-variant-numeric: tabular-nums;
}
.brain-installment-v {
  font-size: 13px;
  color: var(--brain-text-muted);
  font-variant-numeric: tabular-nums;
}
.brain-installment-tag {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--brain-success);
}
.brain-paystatus {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
  color: var(--brain-text-muted);
  background: var(--brain-surface-2);
}
.brain-paystatus svg {
  width: 14px;
  height: 14px;
}
.brain-paystatus--paid {
  color: var(--brain-success);
  background: color-mix(in srgb, var(--brain-success) 14%, transparent);
}
.brain-paystatus--pending {
  color: var(--brain-warning);
  background: color-mix(in srgb, var(--brain-warning) 16%, transparent);
}
.brain-paystatus--failed {
  color: var(--brain-danger);
  background: color-mix(in srgb, var(--brain-danger) 14%, transparent);
}
.brain-paystatus--refunded {
  color: var(--brain-text-muted);
  background: var(--brain-surface-2);
}

/* src/components/checkbox.css */
.brain-check {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
  font-family: var(--brain-font);
  font-size: 14px;
  color: var(--brain-text);
}
.brain-check input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.brain-check-box {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--brain-border-strong);
  border-radius: 5px;
  transition: background var(--brain-transition), border-color var(--brain-transition);
}
.brain-check-box svg {
  width: 12px;
  height: 12px;
  color: var(--brain-bg);
  opacity: 0;
  transition: opacity var(--brain-transition);
}
.brain-check:hover .brain-check-box {
  border-color: var(--brain-text);
}
.brain-check input:checked ~ .brain-check-box {
  background: var(--brain-text);
  border-color: var(--brain-text);
}
.brain-check input:checked ~ .brain-check-box svg {
  opacity: 1;
}
.brain-check input:focus-visible ~ .brain-check-box {
  outline: 2px solid var(--brain-text);
  outline-offset: 2px;
}
.brain-check input:disabled ~ .brain-check-box,
.brain-check input:disabled ~ .brain-check-label {
  opacity: .5;
}
.brain-check input:disabled {
  cursor: default;
}
.brain-check:has(input:disabled) {
  cursor: default;
}
.brain-check-label {
  line-height: 1.4;
}
.brain-check--card {
  align-items: flex-start;
  gap: 11px;
  width: 100%;
  padding: 13px 15px;
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius);
  background: var(--brain-surface);
  transition:
    border-color var(--brain-transition),
    background var(--brain-transition),
    box-shadow var(--brain-transition);
}
.brain-check--card .brain-check-box {
  margin-top: 1px;
}
.brain-check--card:hover {
  border-color: var(--brain-border-strong);
}
.brain-check--card:has(input:checked) {
  border-color: var(--brain-text);
  box-shadow: inset 0 0 0 1px var(--brain-text);
  background: color-mix(in srgb, var(--brain-text) 5%, var(--brain-surface));
}
.brain-check--card:has(input:disabled) {
  opacity: .55;
  cursor: default;
}
.brain-check-content {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.brain-check-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--brain-text);
  line-height: 1.3;
}
.brain-check-desc {
  font-size: 12.5px;
  color: var(--brain-text-muted);
  line-height: 1.45;
}

/* src/components/radio.css */
.brain-radio {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
  font-family: var(--brain-font);
  font-size: 14px;
  color: var(--brain-text);
}
.brain-radio input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.brain-radio-box {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--brain-border-strong);
  border-radius: 50%;
  transition: border-color var(--brain-transition);
}
.brain-radio-box::after {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--brain-text);
  transform: scale(0);
  transition: transform var(--brain-transition);
}
.brain-radio:hover .brain-radio-box {
  border-color: var(--brain-text);
}
.brain-radio input:checked ~ .brain-radio-box {
  border-color: var(--brain-text);
}
.brain-radio input:checked ~ .brain-radio-box::after {
  transform: scale(1);
}
.brain-radio input:focus-visible ~ .brain-radio-box {
  outline: 2px solid var(--brain-text);
  outline-offset: 2px;
}
.brain-radio input:disabled ~ .brain-radio-box,
.brain-radio input:disabled ~ .brain-radio-label {
  opacity: .5;
}
.brain-radio:has(input:disabled) {
  cursor: default;
}
.brain-radio-label {
  line-height: 1.4;
}
.brain-radio--card {
  align-items: flex-start;
  gap: 11px;
  width: 100%;
  padding: 13px 15px;
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius);
  background: var(--brain-surface);
  transition:
    border-color var(--brain-transition),
    background var(--brain-transition),
    box-shadow var(--brain-transition);
}
.brain-radio--card .brain-radio-box {
  margin-top: 1px;
}
.brain-radio--card:hover {
  border-color: var(--brain-border-strong);
}
.brain-radio--card:has(input:checked) {
  border-color: var(--brain-text);
  box-shadow: inset 0 0 0 1px var(--brain-text);
  background: color-mix(in srgb, var(--brain-text) 5%, var(--brain-surface));
}
.brain-radio--card:has(input:disabled) {
  opacity: .55;
  cursor: default;
}
.brain-radio-content {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.brain-radio-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--brain-text);
  line-height: 1.3;
}
.brain-radio-desc {
  font-size: 12.5px;
  color: var(--brain-text-muted);
  line-height: 1.45;
}

/* src/components/switch.css */
.brain-switch {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  font-family: var(--brain-font);
  font-size: 14px;
  color: var(--brain-text);
}
.brain-switch input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.brain-switch-track {
  position: relative;
  width: 38px;
  height: 22px;
  flex-shrink: 0;
  border-radius: 999px;
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border-strong);
  transition: background var(--brain-transition), border-color var(--brain-transition);
}
.brain-switch-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--brain-text-muted);
  transition: transform var(--brain-transition), background var(--brain-transition);
}
.brain-switch:hover .brain-switch-track {
  border-color: var(--brain-text);
}
.brain-switch input:checked ~ .brain-switch-track {
  background: var(--brain-text);
  border-color: var(--brain-text);
}
.brain-switch input:checked ~ .brain-switch-track .brain-switch-thumb {
  transform: translateX(16px);
  background: var(--brain-bg);
}
.brain-switch input:focus-visible ~ .brain-switch-track {
  outline: 2px solid var(--brain-text);
  outline-offset: 2px;
}
.brain-switch input:disabled ~ .brain-switch-track,
.brain-switch input:disabled ~ .brain-switch-label {
  opacity: .5;
}
.brain-switch:has(input:disabled) {
  cursor: default;
}
.brain-switch-label {
  line-height: 1.4;
}

/* src/components/segment.css */
.brain-segment-tabs {
  display: inline-flex;
  gap: 4px;
  padding: 3px;
  background: var(--brain-surface-2);
  border-radius: var(--brain-radius);
}
.brain-segment-tabs button {
  padding: 6px 14px;
  border: none;
  border-radius: 7px;
  background: transparent;
  color: var(--brain-text-muted);
  font-family: var(--brain-font);
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  cursor: pointer;
  transition: background var(--brain-transition), color var(--brain-transition);
}
.brain-segment-tabs button:hover:not(.is-active) {
  color: var(--brain-text);
}
.brain-segment-tabs button.is-active {
  background: var(--brain-surface);
  color: var(--brain-text);
  font-weight: 600;
  box-shadow: 0 1px 3px color-mix(in srgb, #000 15%, transparent);
  cursor: default;
}
.brain-segment-tabs button:focus-visible {
  outline: 2px solid var(--brain-text);
  outline-offset: 2px;
}
.brain-segment-tabs--fill {
  display: flex;
}
.brain-segment-tabs--fill button {
  flex: 1;
  text-align: center;
}

/* src/components/tabs.css */
.brain-tabs-list {
  display: flex;
  gap: 2px;
  border-bottom: 1px solid var(--brain-border);
  overflow-x: auto;
  scrollbar-width: none;
}
.brain-tabs-list::-webkit-scrollbar {
  display: none;
}
.brain-tab {
  appearance: none;
  border: none;
  background: transparent;
  cursor: pointer;
  font-family: var(--brain-font);
  font-size: 14px;
  color: var(--brain-text-muted);
  padding: 10px 14px;
  margin-bottom: -1px;
  white-space: nowrap;
  border-bottom: 2px solid transparent;
  transition:
    color var(--brain-transition),
    border-color var(--brain-transition),
    background var(--brain-transition);
}
.brain-tab:hover {
  color: var(--brain-text);
}
.brain-tab.is-active {
  color: var(--brain-text);
  border-bottom-color: var(--brain-text);
  font-weight: 500;
}
.brain-tab:focus-visible {
  outline: 2px solid var(--brain-border-strong);
  outline-offset: 2px;
  border-radius: 6px;
}
.brain-tab-panel {
  display: none;
  padding-top: 16px;
}
.brain-tab-panel.is-active {
  display: block;
}
.brain-tabs--pill .brain-tabs-list {
  border-bottom: none;
  gap: 4px;
}
.brain-tabs--pill .brain-tab {
  border-bottom: none;
  border-radius: 8px;
  margin-bottom: 0;
}
.brain-tabs--pill .brain-tab.is-active {
  background: var(--brain-surface-2);
}

/* src/components/breadcrumb.css */
.brain-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1px;
  font-family: var(--brain-font);
  font-size: 13.5px;
  min-width: 0;
}
.brain-breadcrumb-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--brain-text-muted);
  text-decoration: none;
  padding: 3px 7px;
  border-radius: 7px;
  white-space: nowrap;
  cursor: pointer;
  transition: color var(--brain-transition), background var(--brain-transition);
}
a.brain-breadcrumb-item:hover,
button.brain-breadcrumb-item:hover {
  color: var(--brain-text);
  background: var(--brain-surface-2);
}
.brain-breadcrumb-item.is-current {
  color: var(--brain-text);
  font-weight: 500;
  cursor: default;
}
.brain-breadcrumb-item svg {
  width: 15px;
  height: 15px;
}
button.brain-breadcrumb-more {
  border: none;
  background: transparent;
  font-family: var(--brain-font);
  font-size: 13.5px;
  line-height: 1;
}
.brain-breadcrumb-item + .brain-breadcrumb-item::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 5px;
  flex-shrink: 0;
  background: var(--brain-text-muted);
  opacity: .7;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* src/components/accordion.css */
.brain-accordion {
  background: var(--brain-surface);
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius-lg);
  overflow: hidden;
}
.brain-accordion-item + .brain-accordion-item {
  border-top: 1px solid var(--brain-border);
}
.brain-accordion-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  padding: 15px 16px;
  background: transparent;
  border: none;
  cursor: pointer;
  font-family: var(--brain-font);
  font-size: 14px;
  font-weight: 500;
  color: var(--brain-text);
  text-align: left;
  transition: background var(--brain-transition);
}
.brain-accordion-trigger:hover {
  background: var(--brain-surface-2);
}
.brain-accordion-trigger:focus-visible {
  outline: 2px solid var(--brain-text);
  outline-offset: -2px;
}
.brain-accordion-lead {
  display: inline-flex;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: var(--brain-text-muted);
}
.brain-accordion-lead svg {
  width: 18px;
  height: 18px;
}
.brain-accordion-item.is-open .brain-accordion-lead {
  color: var(--brain-text);
}
.brain-accordion-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  margin-left: auto;
  color: var(--brain-text-muted);
  transition: transform var(--brain-transition);
}
.brain-accordion-item.is-open .brain-accordion-icon {
  transform: rotate(180deg);
}
.brain-accordion-panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .28s cubic-bezier(.4, 0, .2, 1);
}
.brain-accordion-item.is-open .brain-accordion-panel {
  grid-template-rows: 1fr;
}
.brain-accordion-body {
  overflow: hidden;
  min-height: 0;
}
.brain-accordion-text {
  padding: 2px 16px 16px;
  color: var(--brain-text-muted);
  font-size: 14px;
  line-height: 1.6;
}
.brain-accordion-text p {
  margin: 0 0 10px;
}
.brain-accordion-text p:last-child {
  margin-bottom: 0;
}
.brain-accordion--flush {
  background: transparent;
  border: none;
  border-radius: 0;
  overflow: visible;
}
.brain-accordion--flush .brain-accordion-item {
  border-top: 1px solid var(--brain-border);
}
.brain-accordion--flush .brain-accordion-item:last-child {
  border-bottom: 1px solid var(--brain-border);
}
.brain-accordion--flush .brain-accordion-trigger {
  padding: 18px 4px;
  font-size: 15px;
}
.brain-accordion--flush .brain-accordion-trigger:hover {
  background: transparent;
  color: var(--brain-text);
}
.brain-accordion--flush .brain-accordion-text {
  padding: 0 4px 18px;
  font-size: 14.5px;
}
@media (prefers-reduced-motion: reduce) {
  .brain-accordion-panel {
    transition: none;
  }
  .brain-accordion-icon {
    transition: none;
  }
}

/* src/components/menu.css */
.brain-menu {
  position: relative;
  display: inline-block;
}
.brain-menu-panel {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 50;
  min-width: 190px;
  padding: 4px;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  box-shadow: 0 12px 32px color-mix(in srgb, #000 30%, transparent);
  display: none;
}
.brain-menu-panel--right {
  left: auto;
  right: 0;
}
.brain-menu.is-open .brain-menu-panel {
  display: block;
  animation: brain-menu-in .14s ease;
}
@keyframes brain-menu-in {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.brain-menu-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 10px;
  border: none;
  border-radius: 7px;
  background: transparent;
  color: var(--brain-text);
  font-family: var(--brain-font);
  font-size: 13px;
  text-align: left;
  cursor: pointer;
  transition: background var(--brain-transition), color var(--brain-transition);
}
.brain-menu-item svg {
  width: 15px;
  height: 15px;
  color: var(--brain-text-muted);
  flex-shrink: 0;
}
.brain-menu-item:hover,
.brain-menu-item.is-active {
  background: var(--brain-surface-2);
}
.brain-menu-item:disabled {
  opacity: .5;
  cursor: default;
  pointer-events: none;
}
.brain-menu-item--danger {
  color: var(--brain-danger);
}
.brain-menu-item--danger svg {
  color: var(--brain-danger);
}
.brain-menu-item--danger:hover {
  background: color-mix(in srgb, var(--brain-danger) 12%, transparent);
}
.brain-menu-sep {
  height: 1px;
  background: var(--brain-border);
  margin: 4px 0;
}
.brain-menu-label {
  padding: 6px 10px 4px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--brain-text-muted);
}
@media (prefers-reduced-motion: reduce) {
  .brain-menu.is-open .brain-menu-panel {
    animation: none;
  }
}

/* src/components/tooltip.css */
.brain-tooltip {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1300;
  padding: 5px 9px;
  font-family: var(--brain-font);
  font-size: 11.5px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--brain-bg);
  background: var(--brain-text);
  border-radius: 6px;
  box-shadow: 0 4px 14px color-mix(in srgb, #000 30%, transparent);
  white-space: nowrap;
  max-width: 240px;
  pointer-events: none;
  opacity: 0;
  transform: translateY(2px);
  transition: opacity .12s ease, transform .12s ease;
}
.brain-tooltip.is-visible {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .brain-tooltip {
    transition: opacity .12s ease;
    transform: none;
  }
}
.brain-popover {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1300;
  min-width: 230px;
  max-width: 320px;
  padding: 16px 18px;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius-lg);
  box-shadow: 0 12px 40px color-mix(in srgb, #000 35%, transparent);
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .14s ease, transform .14s ease;
  pointer-events: none;
}
.brain-popover.is-visible {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}
.brain-popover-title {
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--brain-text-muted);
  margin-bottom: 12px;
}
.brain-popover-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 9px;
  font-size: 12.5px;
  line-height: 1.4;
}
.brain-popover-row:last-child {
  margin-bottom: 0;
}
.brain-popover-key {
  color: var(--brain-text-muted);
}
.brain-popover-val {
  color: var(--brain-text);
  font-weight: 500;
  text-align: right;
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.brain-popover-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--brain-border);
  font-size: 12px;
  font-weight: 600;
  color: var(--brain-text);
  cursor: pointer;
  text-decoration: none;
  transition: opacity var(--brain-transition);
}
.brain-popover-link:hover {
  opacity: .7;
}
.brain-popover-link svg {
  width: 13px;
  height: 13px;
  transition: transform var(--brain-transition);
}
.brain-popover-link:hover svg {
  transform: translateX(2px);
}
@media (prefers-reduced-motion: reduce) {
  .brain-popover {
    transition: opacity .14s ease;
    transform: none;
  }
}

/* src/components/navbar.css */
.brain-navbar {
  display: flex;
  align-items: center;
  gap: 20px;
  height: 56px;
  padding: 0 20px;
  background: var(--brain-surface);
  border-bottom: 1px solid var(--brain-border);
}
.brain-navbar-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--brain-font);
  font-weight: 700;
  font-size: 15px;
  color: var(--brain-text);
  flex-shrink: 0;
}
.brain-navbar-logo {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: var(--brain-text);
  color: var(--brain-bg);
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 15px;
  flex-shrink: 0;
}
.brain-navbar-links {
  display: flex;
  align-items: center;
  gap: 2px;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.brain-navbar-links::-webkit-scrollbar {
  display: none;
}
.brain-navbar-link {
  padding: 8px 12px;
  border-radius: 8px;
  font-family: var(--brain-font);
  font-size: 13.5px;
  color: var(--brain-text-muted);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: color var(--brain-transition), background var(--brain-transition);
}
.brain-navbar-link:hover {
  color: var(--brain-text);
  background: var(--brain-surface-2);
}
.brain-navbar-link.is-active {
  color: var(--brain-text);
  background: var(--brain-surface-2);
  font-weight: 500;
}
.brain-navbar-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.brain-navbar-brand + .brain-navbar-links {
  margin-left: 8px;
}
@media (max-width: 720px) {
  .brain-navbar {
    gap: 12px;
    padding: 0 14px;
  }
  .brain-navbar-links {
    display: none;
  }
}

/* src/components/sidebar.css */
.brain-sidebar {
  width: 56px;
  height: 100%;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  background: var(--brain-surface);
  border-right: 1px solid var(--brain-border);
  overflow: hidden;
  transition: width .2s ease;
}
.brain-sidebar.is-expanded {
  width: 220px;
}
.brain-sidebar-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 10px;
  flex-shrink: 0;
}
.brain-sidebar:not(.is-expanded) .brain-sidebar-header {
  justify-content: center;
}
.brain-sidebar-toggle {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  order: 2;
  border: none;
  border-radius: 9px;
  background: transparent;
  color: var(--brain-text-muted);
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: background var(--brain-transition), color var(--brain-transition);
}
.brain-sidebar-toggle:hover {
  background: var(--brain-surface-2);
  color: var(--brain-text);
}
.brain-sidebar-toggle svg {
  width: 18px;
  height: 18px;
}
.brain-sidebar-brand {
  order: 1;
  flex: 1;
  display: none;
  align-items: center;
  gap: 9px;
  font-family: var(--brain-font);
  font-weight: 700;
  font-size: 14px;
  color: var(--brain-text);
  white-space: nowrap;
  min-width: 0;
}
.brain-sidebar.is-expanded .brain-sidebar-brand {
  display: flex;
}
.brain-sidebar-logo {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  border-radius: 8px;
  background: var(--brain-text);
  color: var(--brain-bg);
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 14px;
}
.brain-sidebar-nav {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 6px 10px;
  overflow-y: auto;
  overflow-x: hidden;
}
.brain-sidebar-item {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 9px;
  border: none;
  border-radius: 9px;
  background: transparent;
  color: var(--brain-text-muted);
  font-family: var(--brain-font);
  font-size: 13.5px;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  width: 100%;
  transition: background var(--brain-transition), color var(--brain-transition);
}
.brain-sidebar-item svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}
.brain-sidebar-item:hover {
  background: var(--brain-surface-2);
  color: var(--brain-text);
}
.brain-sidebar-item.is-active {
  background: var(--brain-surface-2);
  color: var(--brain-text);
  font-weight: 600;
}
.brain-sidebar-label {
  opacity: 0;
  overflow: hidden;
  transition: opacity .15s;
}
.brain-sidebar.is-expanded .brain-sidebar-label {
  opacity: 1;
}
.brain-sidebar-group {
  display: flex;
  flex-direction: column;
}
.brain-sidebar-caret {
  width: 14px !important;
  height: 14px !important;
  margin-left: auto;
  flex-shrink: 0;
  color: var(--brain-text-muted);
  opacity: 0;
  transition: transform var(--brain-transition), opacity .15s;
}
.brain-sidebar.is-expanded .brain-sidebar-caret {
  opacity: 1;
}
.brain-sidebar-group.is-open .brain-sidebar-caret {
  transform: rotate(90deg);
}
.brain-sidebar-children {
  display: none;
  flex-direction: column;
  gap: 3px;
  margin-top: 3px;
}
.brain-sidebar.is-expanded .brain-sidebar-group.is-open .brain-sidebar-children {
  display: flex;
}
.brain-sidebar-subitem {
  padding-left: 38px;
}
.brain-sidebar:not(.is-expanded) .brain-sidebar-group-trigger.has-active {
  background: var(--brain-surface-2);
  color: var(--brain-text);
}
.brain-sidebar-footer {
  padding: 10px;
  flex-shrink: 0;
  border-top: 1px solid var(--brain-border);
}

/* src/components/footer.css */
.brain-footer {
  display: flex;
  align-items: center;
  gap: 20px;
  min-height: 52px;
  padding: 12px 20px;
  background: var(--brain-surface);
  border-top: 1px solid var(--brain-border);
  font-family: var(--brain-font);
  font-size: 13px;
  color: var(--brain-text-muted);
}
.brain-footer-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--brain-text);
  font-weight: 600;
  flex-shrink: 0;
}
.brain-footer-logo {
  width: 24px;
  height: 24px;
  border-radius: 7px;
  background: var(--brain-text);
  color: var(--brain-bg);
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 13px;
  flex-shrink: 0;
}
.brain-footer-copy {
  color: var(--brain-text-muted);
  font-weight: 400;
}
.brain-footer-links {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
  min-width: 0;
}
.brain-footer-link {
  padding: 5px 9px;
  border-radius: 7px;
  color: var(--brain-text-muted);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: color var(--brain-transition), background var(--brain-transition);
}
.brain-footer-link:hover {
  color: var(--brain-text);
  background: var(--brain-surface-2);
}
.brain-footer-meta {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
}
.brain-footer-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.brain-footer-status::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--brain-success);
  flex-shrink: 0;
}
.brain-footer-status--down::before {
  background: var(--brain-danger);
}
.brain-footer-status--warn::before {
  background: var(--brain-warning);
}
.brain-footer--stack {
  flex-direction: column;
  gap: 12px;
  text-align: center;
}
.brain-footer--stack .brain-footer-meta {
  margin-left: 0;
}
.brain-footer--stack .brain-footer-links {
  justify-content: center;
}
@media (max-width: 720px) {
  .brain-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .brain-footer-meta {
    margin-left: 0;
  }
}

/* src/components/hero.css */
.brain-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(72px, 12vw, 150px) 24px clamp(56px, 9vw, 110px);
  text-align: center;
  background: var(--brain-bg);
  isolation: isolate;
}
.brain-hero-grid {
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image:
    linear-gradient(
      to right,
      var(--brain-border) 1px,
      transparent 1px),
    linear-gradient(
      to bottom,
      var(--brain-border) 1px,
      transparent 1px);
  background-size: 46px 46px;
  -webkit-mask-image:
    radial-gradient(
      ellipse 80% 60% at 50% 0%,
      #000 40%,
      transparent 78%);
  mask-image:
    radial-gradient(
      ellipse 80% 60% at 50% 0%,
      #000 40%,
      transparent 78%);
  opacity: .7;
}
.brain-hero-glow {
  position: absolute;
  z-index: -1;
  top: -10%;
  left: 50%;
  width: min(760px, 90%);
  height: 520px;
  transform: translateX(-50%);
  background:
    radial-gradient(
      ellipse at center,
      color-mix(in srgb, var(--brain-text) 10%, transparent),
      transparent 68%);
  pointer-events: none;
}
.brain-hero-inner {
  position: relative;
  max-width: 840px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 22px;
}
.brain-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  font-family: var(--brain-font);
  font-size: 12.5px;
  font-weight: 500;
  color: var(--brain-text-muted);
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: 999px;
}
.brain-hero-eyebrow b {
  color: var(--brain-text);
  font-weight: 600;
}
.brain-hero-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--brain-text);
  flex-shrink: 0;
}
.brain-hero-title {
  margin: 0;
  font-family: var(--brain-font);
  font-size: clamp(40px, 7vw, 76px);
  font-weight: 800;
  line-height: 1.03;
  letter-spacing: -.035em;
  text-wrap: balance;
  background:
    linear-gradient(
      180deg,
      var(--brain-text) 30%,
      color-mix(in srgb, var(--brain-text) 52%, transparent));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.brain-hero-sub {
  margin: 0;
  font-family: var(--brain-font);
  font-size: clamp(16px, 2.1vw, 20px);
  line-height: 1.55;
  color: var(--brain-text-muted);
  max-width: 60ch;
}
.brain-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  margin-top: 6px;
}
.brain-hero-actions .brain-btn {
  padding: 11px 20px;
  font-size: 14px;
}
.brain-hero-note {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--brain-font);
  font-size: 13px;
  color: var(--brain-text-muted);
}
.brain-hero-frame {
  position: relative;
  max-width: 940px;
  margin: clamp(40px, 6vw, 72px) auto 0;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius-lg);
  background: var(--brain-surface);
  box-shadow: 0 40px 120px color-mix(in srgb, #000 45%, transparent);
  overflow: hidden;
}
.brain-hero-frame-bar {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--brain-border);
  background: var(--brain-surface-2);
}
.brain-hero-frame-dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--brain-border-strong);
}

/* src/components/faq.css */
.brain-faq {
  padding: clamp(56px, 9vw, 110px) 24px;
  background: var(--brain-bg);
}
.brain-faq-head {
  max-width: 640px;
  margin: 0 auto clamp(28px, 5vw, 48px);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.brain-faq-eyebrow {
  font-family: var(--brain-font);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--brain-text-muted);
}
.brain-faq-title {
  margin: 0;
  font-family: var(--brain-font);
  font-size: clamp(28px, 4.5vw, 44px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -.03em;
  color: var(--brain-text);
  text-wrap: balance;
}
.brain-faq-sub {
  margin: 0;
  font-family: var(--brain-font);
  font-size: 16px;
  line-height: 1.55;
  color: var(--brain-text-muted);
  max-width: 52ch;
}
.brain-faq-inner {
  max-width: 720px;
  margin: 0 auto;
}

/* src/components/carousel.css */
.brain-carousel {
  position: relative;
}
.brain-carousel-track {
  display: grid;
}
.brain-carousel-slide {
  grid-area: 1 / 1;
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity .5s ease, transform .5s ease;
  pointer-events: none;
}
.brain-carousel-slide.is-active {
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}
.brain-carousel-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 20px;
}
.brain-carousel-dots {
  display: flex;
  align-items: center;
  gap: 7px;
}
.brain-carousel-dot {
  width: 7px;
  height: 7px;
  padding: 0;
  border: none;
  border-radius: 999px;
  background: var(--brain-border-strong);
  cursor: pointer;
  transition: width var(--brain-transition), background var(--brain-transition);
}
.brain-carousel-dot:hover {
  background: var(--brain-text-muted);
}
.brain-carousel-dot.is-active {
  width: 20px;
  background: var(--brain-text);
}
.brain-carousel-arrow {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--brain-border-strong);
  background: transparent;
  color: var(--brain-text-muted);
  border-radius: 8px;
  cursor: pointer;
  transition: color var(--brain-transition), border-color var(--brain-transition);
}
.brain-carousel-arrow:hover {
  color: var(--brain-text);
  border-color: var(--brain-text);
}
.brain-carousel-arrow svg {
  width: 16px;
  height: 16px;
}
.brain-carousel--sides {
  position: relative;
}
.brain-carousel--sides .brain-carousel-arrow {
  position: absolute;
  top: 0;
  bottom: 40px;
  margin: auto 0;
  z-index: 2;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--brain-surface) 82%, transparent);
  backdrop-filter: blur(6px);
  box-shadow: 0 4px 16px color-mix(in srgb, #000 25%, transparent);
}
.brain-carousel--sides .brain-carousel-arrow:hover {
  background: var(--brain-surface);
  color: var(--brain-text);
  border-color: var(--brain-text);
}
.brain-carousel--sides .brain-carousel-arrow--prev {
  left: 0;
}
.brain-carousel--sides .brain-carousel-arrow--next {
  right: 0;
}
.brain-carousel--sides .brain-carousel-dots {
  display: flex;
  justify-content: center;
  margin-top: 22px;
}
.brain-carousel--sides .brain-carousel-slide {
  padding: 0 52px;
}
@media (max-width: 520px) {
  .brain-carousel--sides .brain-carousel-slide {
    padding: 0 44px;
  }
}
.brain-carousel--slide {
  overflow: hidden;
}
.brain-carousel--slide .brain-carousel-track {
  display: flex;
  transition: transform .5s cubic-bezier(.4, 0, .2, 1);
  will-change: transform;
}
.brain-carousel--slide .brain-carousel-slide {
  grid-area: auto;
  flex: 0 0 100%;
  width: 100%;
  min-width: 100%;
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}
@media (prefers-reduced-motion: reduce) {
  .brain-carousel--slide .brain-carousel-track {
    transition: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .brain-carousel-slide {
    transition: none;
    transform: none;
  }
}
.brain-testimonial-stars {
  display: inline-flex;
  gap: 1px;
  color: var(--brain-warning);
  margin-bottom: 13px;
}
.brain-testimonial-stars svg {
  width: 15px;
  height: 15px;
}
.brain-testimonial-quote {
  margin: 0;
  font-size: 17px;
  line-height: 1.6;
  letter-spacing: -.01em;
  color: var(--brain-text);
}
.brain-testimonial-author {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: 18px;
}
.brain-testimonial-name {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--brain-text);
}
.brain-testimonial-role {
  font-size: 12.5px;
  color: var(--brain-text-muted);
}

/* src/components/livechat.css */
.brain-lc {
  font-family: var(--brain-font);
  --lc-out: #005c4b;
  --lc-head: #1f2c34;
}
.brain-lc--phone {
  display: inline-block;
}
.brain-lc-device {
  position: relative;
  width: 340px;
  padding: 13px;
  background:
    linear-gradient(
      155deg,
      #2a2e35 0%,
      #101216 55%,
      #05060a 100%);
  border-radius: 56px;
  box-shadow:
    0 50px 120px color-mix(in srgb, #000 72%, transparent),
    0 6px 20px color-mix(in srgb, #000 50%, transparent),
    inset 0 0 0 1.5px #3a3f47,
    inset 0 2px 2px #ffffff1c,
    inset 0 -3px 6px #00000060;
}
.brain-lc-device::before,
.brain-lc-device::after {
  content: "";
  position: absolute;
  width: 3px;
  border-radius: 3px;
  background: #23262c;
}
.brain-lc-device::before {
  left: -3px;
  top: 118px;
  height: 34px;
  box-shadow: 0 46px 0 #23262c;
}
.brain-lc-device::after {
  right: -3px;
  top: 150px;
  height: 62px;
}
.brain-lc-screen {
  position: relative;
  border-radius: 44px;
  overflow: hidden;
  background: #0b141a;
  box-shadow: inset 0 0 0 2px #000;
}
.brain-lc-island {
  position: absolute;
  top: 13px;
  left: 50%;
  transform: translateX(-50%);
  width: 106px;
  height: 30px;
  border-radius: 999px;
  background: #000;
  z-index: 6;
}
.brain-lc-statusbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 48px;
  padding: 0 26px 0 30px;
  background: var(--lc-head);
  color: #fff;
  transition: background .45s ease;
}
.brain-lc-statusbar .t {
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: .2px;
}
.brain-lc-statusbar .ic {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.brain-lc-statusbar .ic svg {
  display: block;
  height: 12px;
  width: auto;
  fill: #fff;
}
.brain-lc-homebar {
  position: absolute;
  left: 50%;
  bottom: 8px;
  transform: translateX(-50%);
  width: 130px;
  height: 5px;
  border-radius: 999px;
  background: #ffffffcc;
  z-index: 6;
}
.brain-lc-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 14px 12px;
  background: var(--lc-head);
  transition: background .45s ease;
  box-shadow: 0 1px 0 #00000030;
}
.brain-lc-back {
  color: #d7dde1;
  display: inline-flex;
}
.brain-lc-back svg {
  width: 22px;
  height: 22px;
}
.brain-lc-avwrap {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
}
.brain-lc-av {
  width: 39px;
  height: 39px;
  border-radius: 999px;
  object-fit: cover;
}
.brain-lc-chanbadge {
  position: absolute;
  right: -3px;
  bottom: -3px;
  width: 19px;
  height: 19px;
  border-radius: 999px;
  border: 2px solid var(--lc-head);
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: border-color .45s ease;
}
.brain-lc-chanbadge svg,
.brain-lc-chanbadge img {
  width: 13px;
  height: 13px;
  display: block;
}
.brain-lc-name {
  font-size: 15px;
  font-weight: 600;
  color: #e9edef;
  line-height: 1.2;
}
.brain-lc-status {
  font-size: 11.5px;
  color: #8696a0;
  min-height: 15px;
}
.brain-lc-status.live {
  color: #25d366;
}
.brain-lc-ico {
  margin-left: auto;
  display: flex;
  gap: 20px;
  color: #d7dde1;
}
.brain-lc-ico svg {
  width: 20px;
  height: 20px;
}
.brain-lc-body {
  height: 600px;
  padding: 16px 12px 30px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 7px;
  justify-content: flex-end;
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--lc-head) 30%, #0b141a),
      #0b141a 22%),
    radial-gradient(color-mix(in srgb, #fff 3%, transparent) 1px, transparent 0);
  background-size: auto, 22px 22px;
}
.brain-lc--stream {
  display: inline-block;
}
.brain-lc-stage {
  position: relative;
}
.brain-lc-glow {
  position: absolute;
  inset: -8% -18%;
  pointer-events: none;
  filter: blur(34px);
  background:
    radial-gradient(
      50% 46% at 50% 55%,
      color-mix(in srgb, var(--lc-out) 32%, transparent),
      transparent 70%);
  transition: background .5s ease;
}
.brain-lc-stream {
  position: relative;
  width: 380px;
  height: 480px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 9px;
  overflow: hidden;
  padding: 8px 6px;
  -webkit-mask-image:
    linear-gradient(
      to bottom,
      transparent 0,
      #000 20%,
      #000 90%,
      transparent 100%);
  mask-image:
    linear-gradient(
      to bottom,
      transparent 0,
      #000 20%,
      #000 90%,
      transparent 100%);
}
.brain-lc-msg {
  max-width: 80%;
  padding: 6px 9px;
  border-radius: 10px;
  font-size: 13px;
  line-height: 1.42;
  color: #e9edef;
  box-shadow: 0 1px 2px #00000035;
  animation: brain-lc-pop .3s cubic-bezier(.2, .7, .3, 1);
}
.brain-lc-in {
  align-self: flex-start;
  background: #202c33;
  border-top-left-radius: 3px;
}
.brain-lc-out {
  align-self: flex-end;
  background: var(--lc-out);
  border-top-right-radius: 3px;
  transition: background .45s ease;
}
.brain-lc-time {
  font-size: 10px;
  color: #ffffff66;
  float: right;
  margin: 5px 0 -2px 10px;
}
.brain-lc-out .brain-lc-time {
  color: #ffffff8a;
}
.brain-lc-tick {
  color: #53bdeb;
  letter-spacing: -2px;
  margin-left: 3px;
}
.brain-lc-typing {
  align-self: flex-start;
  background: #202c33;
  padding: 11px 13px;
  border-radius: 10px;
  border-top-left-radius: 3px;
  display: inline-flex;
  gap: 4px;
  width: fit-content;
  animation: brain-lc-pop .25s ease;
}
.brain-lc-typing i {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #8696a0;
  display: block;
  animation: brain-lc-dot 1.3s infinite;
}
.brain-lc-typing i:nth-child(2) {
  animation-delay: .18s;
}
.brain-lc-typing i:nth-child(3) {
  animation-delay: .36s;
}
.brain-lc-rec {
  align-self: flex-start;
  background: #202c33;
  padding: 9px 13px;
  border-radius: 10px;
  border-top-left-radius: 3px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11.5px;
  color: #cfd8dd;
  animation: brain-lc-pop .25s ease;
}
.brain-lc-rec .rdot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #ef4444;
  animation: brain-lc-blink 1s infinite;
}
.brain-lc-audio {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 200px;
  padding: 2px 0;
}
.brain-lc-play {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: #e9edef;
  color: #054d3f;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.brain-lc-play svg {
  width: 15px;
  height: 15px;
}
.brain-lc-wave {
  display: flex;
  align-items: center;
  gap: 2px;
  flex: 1;
  height: 24px;
}
.brain-lc-wave i {
  width: 2.5px;
  border-radius: 2px;
  background: #ffffff55;
  display: block;
}
.brain-lc-wave i.on {
  background: #8fd3c4;
}
.brain-lc-dur {
  font-size: 10px;
  color: #ffffff99;
  align-self: flex-end;
}
.brain-lc-sys {
  align-self: center;
  font-size: 10.5px;
  color: #cfd8dd;
  background: #182229;
  padding: 4px 11px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 4px 0;
  border: 1px solid #ffffff12;
}
.brain-lc-sys svg,
.brain-lc-sys img {
  width: 14px;
  height: 14px;
  display: block;
}
@keyframes brain-lc-pop {
  from {
    opacity: 0;
    transform: translateY(9px) scale(.97);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes brain-lc-dot {
  0%, 60%, 100% {
    opacity: .35;
    transform: translateY(0);
  }
  30% {
    opacity: 1;
    transform: translateY(-3px);
  }
}
@keyframes brain-lc-blink {
  50% {
    opacity: .3;
  }
}
@media (prefers-reduced-motion: reduce) {
  .brain-lc-msg,
  .brain-lc-typing,
  .brain-lc-rec {
    animation: none;
  }
}

/* src/components/pricing.css */
.brain-pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  align-items: stretch;
}
.brain-plan {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 26px 22px;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius-lg);
}
.brain-plan--featured {
  border-color: var(--brain-text);
  box-shadow: 0 14px 44px color-mix(in srgb, #000 22%, transparent);
}
.brain-plan-badge {
  position: absolute;
  top: -11px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--brain-bg);
  background: var(--brain-text);
  padding: 4px 12px;
  border-radius: 999px;
  white-space: nowrap;
}
.brain-plan-name {
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -.01em;
}
.brain-plan-desc {
  font-size: 13px;
  color: var(--brain-text-muted);
  margin-top: 3px;
  min-height: 34px;
}
.brain-plan-price {
  display: flex;
  align-items: baseline;
  gap: 5px;
  margin: 18px 0 3px;
}
.brain-plan-price b {
  font-size: 32px;
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1;
}
.brain-plan-price span {
  font-size: 14px;
  color: var(--brain-text-muted);
}
.brain-plan-note {
  font-size: 12px;
  color: var(--brain-text-muted);
  min-height: 18px;
}
.brain-plan-cta {
  width: 100%;
  margin: 18px 0 0;
  justify-content: center;
}
.brain-plan-feat {
  list-style: none;
  margin: 22px 0 0;
  padding: 20px 0 0;
  border-top: 1px solid var(--brain-border);
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.brain-plan-feat li {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 13.5px;
  color: var(--brain-text);
}
.brain-plan-feat svg {
  width: 16px;
  height: 16px;
  color: var(--brain-success);
  flex-shrink: 0;
}
.brain-plan-feat li.is-off {
  color: var(--brain-text-muted);
}
.brain-plan-feat li.is-off svg {
  color: var(--brain-text-muted);
}
.brain-plan--invert {
  background: var(--brain-text);
  border-color: var(--brain-text);
}
.brain-plan--invert .brain-plan-name,
.brain-plan--invert .brain-plan-price b {
  color: var(--brain-bg);
}
.brain-plan--invert .brain-plan-desc,
.brain-plan--invert .brain-plan-price span,
.brain-plan--invert .brain-plan-note {
  color: color-mix(in srgb, var(--brain-bg) 62%, var(--brain-text));
}
.brain-plan--invert .brain-plan-badge {
  background: var(--brain-bg);
  color: var(--brain-text);
}
.brain-plan--invert .brain-plan-feat {
  border-top-color: color-mix(in srgb, var(--brain-bg) 18%, transparent);
}
.brain-plan--invert .brain-plan-feat li {
  color: var(--brain-bg);
}
.brain-plan--invert .brain-plan-feat svg {
  color: var(--brain-bg);
}
.brain-plan--invert .brain-plan-cta {
  background: var(--brain-bg);
  color: var(--brain-text);
  border-color: var(--brain-bg);
}
.brain-plan--invert .brain-plan-cta:hover {
  background: color-mix(in srgb, var(--brain-bg) 88%, var(--brain-text));
  border-color: color-mix(in srgb, var(--brain-bg) 88%, var(--brain-text));
}
.brain-pricing--premium .brain-plan {
  padding: 30px 26px;
}
@media (min-width: 821px) {
  .brain-pricing--premium .brain-plan--invert {
    transform: scale(1.045);
    z-index: 1;
  }
}

/* src/components/chat-bubble.css */
.brain-chat-row {
  display: flex;
  margin-bottom: 6px;
}
.brain-chat-row--sent {
  justify-content: flex-end;
}
.brain-chat-bubble {
  max-width: min(78%, 460px);
  padding: 8px 12px;
  border-radius: 14px;
  border-bottom-left-radius: 4px;
  font-family: var(--brain-font);
  font-size: 14px;
  line-height: 1.45;
  color: var(--brain-text);
  background: var(--brain-surface-2);
  word-wrap: break-word;
  overflow-wrap: anywhere;
}
.brain-chat-row--sent .brain-chat-bubble {
  color: var(--brain-bg);
  background: var(--brain-text);
  border-bottom-left-radius: 14px;
  border-bottom-right-radius: 4px;
}
.brain-chat-name {
  font-size: 11px;
  font-weight: 600;
  color: var(--brain-text-muted);
  margin-bottom: 2px;
}
.brain-chat-meta {
  display: flex;
  align-items: center;
  gap: 4px;
  justify-content: flex-end;
  margin-top: 3px;
  font-size: 10.5px;
  opacity: .65;
}
.brain-chat-meta svg {
  width: 14px;
  height: 14px;
}
.brain-chat-divider {
  display: flex;
  justify-content: center;
  margin: 14px 0;
}
.brain-chat-divider span {
  font-size: 11px;
  color: var(--brain-text-muted);
  background: var(--brain-surface-2);
  padding: 3px 10px;
  border-radius: 20px;
}

/* src/components/chat-list.css */
.brain-chat-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.brain-chat-list-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  cursor: pointer;
  transition: background var(--brain-transition);
}
.brain-chat-list-item:hover {
  background: var(--brain-surface-2);
}
.brain-chat-list-item.is-active {
  background: var(--brain-surface-2);
}
.brain-chat-avatar {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  color: var(--brain-text);
  display: grid;
  place-items: center;
  font-family: var(--brain-font);
  font-size: 15px;
  font-weight: 600;
  overflow: hidden;
}
.brain-chat-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.brain-chat-item-main {
  flex: 1;
  min-width: 0;
}
.brain-chat-item-top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}
.brain-chat-item-name {
  font-family: var(--brain-font);
  font-size: 14px;
  font-weight: 600;
  color: var(--brain-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.brain-chat-item-time {
  font-size: 11px;
  color: var(--brain-text-muted);
  flex-shrink: 0;
}
.brain-chat-item-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 2px;
}
.brain-chat-item-preview {
  font-family: var(--brain-font);
  font-size: 13px;
  color: var(--brain-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
.brain-chat-unread {
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  flex-shrink: 0;
  border-radius: 9px;
  background: var(--brain-text);
  color: var(--brain-bg);
  font-family: var(--brain-font);
  font-size: 10.5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.brain-chat-list-item.is-unread .brain-chat-item-name {
  font-weight: 700;
}
.brain-chat-list-item.is-unread .brain-chat-item-preview {
  color: var(--brain-text);
  font-weight: 500;
}

/* src/components/chat-composer.css */
.brain-chat-composer {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  padding: 10px 12px;
  background: var(--brain-surface);
  border-top: 1px solid var(--brain-border);
}
.brain-chat-composer-btn {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: var(--brain-text-muted);
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: background var(--brain-transition), color var(--brain-transition);
}
.brain-chat-composer-btn:hover {
  background: var(--brain-surface-2);
  color: var(--brain-text);
}
.brain-chat-composer-btn svg {
  width: 20px;
  height: 20px;
}
.brain-chat-composer-field {
  flex: 1;
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 6px 14px;
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border-strong);
  border-radius: 22px;
  transition: border-color var(--brain-transition);
}
.brain-chat-composer-field:focus-within {
  border-color: var(--brain-text);
}
.brain-chat-composer-field textarea,
.brain-chat-composer-field input {
  flex: 1;
  min-width: 0;
  border: none;
  background: transparent;
  outline: none;
  resize: none;
  color: var(--brain-text);
  font-family: var(--brain-font);
  font-size: 14px;
  line-height: 1.4;
  max-height: 120px;
  padding: 4px 0;
}
.brain-chat-composer-field textarea::placeholder,
.brain-chat-composer-field input::placeholder {
  color: var(--brain-text-muted);
}
.brain-chat-composer-send {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: none;
  border-radius: 50%;
  background: var(--brain-text);
  color: var(--brain-bg);
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: opacity var(--brain-transition);
}
.brain-chat-composer-send:hover {
  opacity: .9;
}
.brain-chat-composer-send:disabled {
  opacity: .4;
  cursor: default;
}
.brain-chat-composer-send svg {
  width: 19px;
  height: 19px;
}

/* src/components/chat-header.css */
.brain-chat-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 9px 14px;
  background: var(--brain-surface);
  border-bottom: 1px solid var(--brain-border);
}
.brain-chat-header .brain-chat-avatar {
  width: 40px;
  height: 40px;
  font-size: 14px;
}
.brain-chat-header-main {
  flex: 1;
  min-width: 0;
  line-height: 1.3;
}
.brain-chat-header-name {
  font-family: var(--brain-font);
  font-size: 14.5px;
  font-weight: 600;
  color: var(--brain-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.brain-chat-header-status {
  display: flex;
  align-items: center;
  gap: 5px;
  font-family: var(--brain-font);
  font-size: 12px;
  color: var(--brain-text-muted);
}
.brain-chat-header-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--brain-success);
  flex-shrink: 0;
}
.brain-chat-header-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
}
.brain-chat-header-back {
  display: none;
}
@media (max-width: 768px) {
  .brain-chat-header-back {
    display: inline-flex;
  }
}

/* src/components/badge.css */
.brain-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 9px;
  font-family: var(--brain-font);
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  color: var(--brain-text-muted);
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border-strong);
  border-radius: 20px;
}
.brain-badge-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
.brain-badge--success {
  color: var(--brain-success);
  background: color-mix(in srgb, var(--brain-success) 12%, transparent);
  border-color: color-mix(in srgb, var(--brain-success) 30%, transparent);
}
.brain-badge--danger {
  color: var(--brain-danger);
  background: color-mix(in srgb, var(--brain-danger) 12%, transparent);
  border-color: color-mix(in srgb, var(--brain-danger) 30%, transparent);
}
.brain-badge--warning {
  color: var(--brain-warning);
  background: color-mix(in srgb, var(--brain-warning) 12%, transparent);
  border-color: color-mix(in srgb, var(--brain-warning) 30%, transparent);
}
.brain-badge--square {
  border-radius: var(--brain-radius-sm);
}
.brain-badge--solid {
  color: var(--brain-bg);
  background: var(--brain-text);
  border-color: var(--brain-text);
}

/* src/components/avatar.css */
.brain-avatar {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border-strong);
  color: var(--brain-text);
  font-family: var(--brain-font);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  user-select: none;
}
.brain-avatar img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
.brain-avatar--sm {
  width: 30px;
  height: 30px;
  font-size: 12px;
}
.brain-avatar--lg {
  width: 52px;
  height: 52px;
  font-size: 18px;
}
.brain-avatar--xl {
  width: 72px;
  height: 72px;
  font-size: 24px;
}
.brain-avatar-status {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--brain-text-muted);
  border: 2px solid var(--brain-bg);
}
.brain-avatar-status--online {
  background: var(--brain-success);
}
.brain-avatar-status--busy {
  background: var(--brain-danger);
}
.brain-avatar-status--away {
  background: var(--brain-warning);
}
.brain-avatar--lg .brain-avatar-status,
.brain-avatar--xl .brain-avatar-status {
  width: 14px;
  height: 14px;
}
.brain-avatar-badge {
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--brain-surface);
  border: 2px solid var(--brain-bg);
  display: grid;
  place-items: center;
  overflow: hidden;
}
.brain-avatar-badge svg {
  width: 12px;
  height: 12px;
}
.brain-avatar--lg .brain-avatar-badge,
.brain-avatar--xl .brain-avatar-badge {
  width: 22px;
  height: 22px;
}
.brain-avatar--lg .brain-avatar-badge svg,
.brain-avatar--xl .brain-avatar-badge svg {
  width: 15px;
  height: 15px;
}

/* src/components/rating.css */
.brain-rating {
  position: relative;
  display: inline-flex;
  line-height: 0;
  vertical-align: middle;
}
.brain-rating-base {
  display: inline-flex;
  color: color-mix(in srgb, var(--brain-text) 16%, transparent);
}
.brain-rating-fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  display: inline-flex;
  overflow: hidden;
  white-space: nowrap;
  color: var(--brain-warning);
}
.brain-rating svg {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  display: block;
}

/* src/components/compare.css */
.brain-compare-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius-lg);
  background: var(--brain-surface);
}
.brain-compare {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  font-family: var(--brain-font);
  font-size: 14px;
  color: var(--brain-text);
}
.brain-compare th,
.brain-compare td {
  padding: 13px 18px;
  text-align: center;
  border-bottom: 1px solid var(--brain-border);
}
.brain-compare tbody tr:last-child td,
.brain-compare tbody tr:last-child th {
  border-bottom: none;
}
.brain-compare thead th {
  padding: 16px 18px;
  font-size: 15px;
  font-weight: 700;
  color: var(--brain-text);
  border-bottom: 1px solid var(--brain-border-strong);
  vertical-align: bottom;
}
.brain-compare thead th span {
  display: block;
  margin-top: 2px;
  font-size: 12.5px;
  font-weight: 500;
  color: var(--brain-text-muted);
}
.brain-compare thead th small {
  display: inline-block;
  margin-bottom: 6px;
  font-size: 9.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--brain-text-muted);
  border: 1px solid var(--brain-border-strong);
  border-radius: 999px;
  padding: 2px 8px;
}
.brain-compare tbody th,
.brain-compare thead th:first-child {
  text-align: left;
  font-weight: 500;
}
.brain-compare tbody th {
  color: var(--brain-text);
  font-weight: 500;
}
.brain-compare-group td {
  text-align: left;
  padding: 15px 18px 7px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--brain-text-muted);
  background: var(--brain-surface-2);
  border-bottom: 1px solid var(--brain-border);
}
.brain-compare-yes svg {
  width: 17px;
  height: 17px;
  color: var(--brain-text);
  vertical-align: middle;
}
.brain-compare-no {
  color: var(--brain-text-muted);
}
.brain-compare--rec-2 :is(thead th, tbody td):nth-child(3),
.brain-compare--rec-3 :is(thead th, tbody td):nth-child(4),
.brain-compare--rec-4 :is(thead th, tbody td):nth-child(5) {
  background: color-mix(in srgb, var(--brain-text) 5%, var(--brain-surface));
}
.brain-compare--rec-2 thead th:nth-child(3),
.brain-compare--rec-3 thead th:nth-child(4),
.brain-compare--rec-4 thead th:nth-child(5) {
  background: color-mix(in srgb, var(--brain-text) 8%, var(--brain-surface));
}

/* src/components/stat.css */
.brain-stat {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 16px 18px;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius-lg);
}
.brain-stat-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.brain-stat-head--lead {
  justify-content: flex-start;
  gap: 7px;
}
.brain-stat-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--brain-text-muted);
  flex-shrink: 0;
}
.brain-stat-icon svg {
  width: 16px;
  height: 16px;
  stroke-width: 1.6;
}
.brain-stat-icon--box {
  width: 32px;
  height: 32px;
  border-radius: var(--brain-radius-sm);
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border);
}
.brain-stat-icon--box svg {
  width: 16px;
  height: 16px;
}
.brain-stat-label {
  font-size: 12.5px;
  font-weight: 500;
  color: var(--brain-text-muted);
}
.brain-stat-value {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.1;
  color: var(--brain-text);
  font-variant-numeric: tabular-nums;
}
.brain-stat-value--sm {
  font-size: 22px;
}
.brain-stat-value--lg {
  font-size: 34px;
}
.brain-stat-foot {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
}
.brain-stat-sub {
  font-size: 12px;
  color: var(--brain-text-muted);
}
.brain-stat-spark {
  margin-top: 10px;
}

/* src/components/delta.css */
.brain-delta {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 12.5px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  color: var(--brain-text-muted);
  white-space: nowrap;
}
.brain-delta svg {
  width: 13px;
  height: 13px;
  flex-shrink: 0;
}
.brain-delta--up {
  color: var(--brain-success);
}
.brain-delta--down {
  color: var(--brain-danger);
}
.brain-delta--flat {
  color: var(--brain-text-muted);
}
.brain-delta--pill {
  padding: 3px 8px;
  border-radius: 999px;
}
.brain-delta--pill.brain-delta--up {
  background: color-mix(in srgb, var(--brain-success) 14%, transparent);
}
.brain-delta--pill.brain-delta--down {
  background: color-mix(in srgb, var(--brain-danger) 14%, transparent);
}
.brain-delta--pill.brain-delta--flat {
  background: var(--brain-surface-2);
}

/* src/components/spark.css */
.brain-spark {
  display: inline-block;
  line-height: 0;
  color: var(--brain-text);
}
.brain-spark svg {
  display: block;
  overflow: visible;
}
.brain-spark--up {
  color: var(--brain-success);
}
.brain-spark--down {
  color: var(--brain-danger);
}
.brain-spark--muted {
  color: var(--brain-text-muted);
}
.brain-sparkbars {
  display: inline-block;
  line-height: 0;
  color: var(--brain-text);
}
.brain-sparkbars svg {
  display: block;
}
.brain-sparkbars--up {
  color: var(--brain-success);
}
.brain-sparkbars--down {
  color: var(--brain-danger);
}
.brain-sparkbars--muted {
  color: var(--brain-text-muted);
}
@media (prefers-reduced-motion: no-preference) {
  .brain-spark.is-animate .brain-spark-line {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
    animation: brain-chart-draw .9s ease forwards;
  }
  .brain-sparkbars.is-animate .brain-sparkbars-bar {
    transform-box: fill-box;
    transform-origin: bottom;
    transform: scaleY(0);
    animation: brain-chart-grow-y .6s cubic-bezier(.4, 0, .2, 1) forwards;
  }
}

/* src/components/progress.css */
.brain-ring,
.brain-gauge {
  position: relative;
  display: inline-flex;
  color: var(--brain-text);
}
.brain-ring svg,
.brain-gauge svg {
  display: block;
}
.brain-ring--success,
.brain-gauge--success {
  color: var(--brain-success);
}
.brain-ring--warn,
.brain-gauge--warn {
  color: var(--brain-warning);
}
.brain-ring--danger,
.brain-gauge--danger {
  color: var(--brain-danger);
}
.brain-meter {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 180px;
}
.brain-meter-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}
.brain-meter-label {
  font-size: 12.5px;
  font-weight: 500;
  color: var(--brain-text-muted);
}
.brain-meter-val {
  font-size: 13px;
  font-weight: 600;
  color: var(--brain-text);
  font-variant-numeric: tabular-nums;
}
.brain-meter-track {
  position: relative;
  height: 8px;
  border-radius: 999px;
  background: var(--brain-surface-2);
}
.brain-meter-fill {
  height: 100%;
  border-radius: 999px;
  background: var(--brain-text);
  transition: width .5s cubic-bezier(.4, 0, .2, 1);
}
.brain-meter--success .brain-meter-fill {
  background: var(--brain-success);
}
.brain-meter--warn .brain-meter-fill {
  background: var(--brain-warning);
}
.brain-meter--danger .brain-meter-fill {
  background: var(--brain-danger);
}
.brain-meter-target {
  position: absolute;
  top: -3px;
  bottom: -3px;
  width: 2px;
  border-radius: 2px;
  background: var(--brain-text);
  opacity: .55;
}
@media (prefers-reduced-motion: reduce) {
  .brain-meter-fill {
    transition: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .brain-ring.is-animate .brain-ring-arc,
  .brain-gauge.is-animate .brain-gauge-arc {
    animation: brain-arc-fill 1s ease forwards;
  }
}
@keyframes brain-arc-fill {
  from {
    stroke-dashoffset: var(--dc);
  }
  to {
    stroke-dashoffset: var(--dt);
  }
}

/* src/components/chart.css */
.brain-chart {
  position: relative;
  font-family: var(--brain-font);
}
.brain-chart-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 12px;
}
.brain-chart-leg {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  color: var(--brain-text-muted);
}
.brain-chart-leg-sw {
  width: 10px;
  height: 10px;
  border-radius: 3px;
  flex-shrink: 0;
}
.brain-chart svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}
.brain-chart-grid line {
  stroke: var(--brain-border);
}
.brain-chart-grid text,
.brain-chart-axis text {
  fill: var(--brain-text-muted);
  font-size: 10.5px;
  font-family: var(--brain-font);
}
.brain-chart-crosshair {
  stroke: var(--brain-border-strong);
  stroke-width: 1;
  opacity: 0;
  pointer-events: none;
}
.brain-chart-tip {
  position: absolute;
  pointer-events: none;
  opacity: 0;
  transform: translate(-50%, calc(-100% - 10px));
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: 9px;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1.5;
  color: var(--brain-text);
  box-shadow: 0 8px 24px color-mix(in srgb, #000 40%, transparent);
  white-space: nowrap;
  z-index: 3;
  transition: opacity .1s ease;
}
.brain-chart-tip-x {
  color: var(--brain-text-muted);
  font-size: 11px;
  margin-bottom: 4px;
}
.brain-chart-tip-sep {
  height: 1px;
  background: var(--brain-border-strong);
  margin: 7px -10px;
}
.brain-chart-tip-row {
  display: flex;
  align-items: center;
  gap: 6px;
}
.brain-chart-tip-sw {
  width: 8px;
  height: 8px;
  border-radius: 2px;
  flex-shrink: 0;
}
.brain-chart-tip-row b {
  font-variant-numeric: tabular-nums;
}
.brain-chart-donut-wrap {
  display: flex;
  align-items: center;
  gap: 26px;
  flex-wrap: wrap;
}
.brain-chart--donut svg {
  width: auto;
  height: auto;
  max-width: 100%;
  overflow: visible;
}
.brain-chart--donut path {
  transition: opacity .12s ease;
  cursor: default;
}
.brain-chart-legend--col {
  flex-direction: column;
  gap: 9px;
  margin-bottom: 0;
}
.brain-chart-legend--col .brain-chart-leg b {
  color: var(--brain-text);
  font-variant-numeric: tabular-nums;
}
.brain-funnel {
  display: flex;
  flex-direction: column;
  gap: 14px;
  font-family: var(--brain-font);
}
.brain-funnel-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 5px;
}
.brain-funnel-name {
  font-size: 13px;
  font-weight: 500;
  color: var(--brain-text);
}
.brain-funnel-num {
  font-size: 12.5px;
  color: var(--brain-text-muted);
  font-variant-numeric: tabular-nums;
}
.brain-funnel-num b {
  color: var(--brain-text);
}
.brain-funnel-conv {
  color: var(--brain-text-muted);
}
.brain-funnel-track {
  display: flex;
  justify-content: center;
}
.brain-funnel-bar {
  height: 34px;
  border-radius: 8px;
  background: var(--brain-text);
}
.brain-heatmap-wrap {
  position: relative;
  font-family: var(--brain-font);
}
.brain-heatmap {
  display: grid;
  gap: 3px;
  align-items: stretch;
}
.brain-heatmap-colh,
.brain-heatmap-rowh {
  font-size: 11px;
  color: var(--brain-text-muted);
  display: flex;
  align-items: center;
}
.brain-heatmap-colh {
  justify-content: center;
  padding-bottom: 3px;
}
.brain-heatmap-rowh {
  justify-content: flex-end;
  padding-right: 9px;
  white-space: nowrap;
}
.brain-heatmap-cell {
  aspect-ratio: 1;
  min-height: 22px;
  border-radius: 4px;
  background: var(--brain-surface-2);
  transition: outline .1s ease;
}
.brain-heatmap-cell:hover {
  outline: 2px solid var(--brain-border-strong);
  outline-offset: -1px;
  cursor: default;
}
.brain-heatmap-legend {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-size: 11px;
  color: var(--brain-text-muted);
  font-variant-numeric: tabular-nums;
}
.brain-heatmap-ramp {
  display: inline-block;
  width: 120px;
  height: 8px;
  border-radius: 999px;
  border: 1px solid var(--brain-border);
}
.brain-journey {
  position: relative;
  font-family: var(--brain-font);
}
.brain-journey-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 18px;
  margin-bottom: 20px;
}
.brain-journey-leg {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  color: var(--brain-text-muted);
}
.brain-journey-dot {
  width: 10px;
  height: 10px;
  border-radius: 3px;
  flex-shrink: 0;
}
.brain-journey-bar {
  display: flex;
  height: 92px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--brain-surface-2);
}
.brain-journey-seg {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--brain-text);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  transition: filter .12s ease;
}
.brain-journey-seg--div {
  border-left: 1px dashed var(--brain-border-strong);
}
.brain-journey-seg:hover {
  filter: brightness(1.06);
  cursor: default;
}
.brain-journey-val {
  padding: 0 6px;
}
.brain-journey--steps .brain-journey-scroll {
  overflow-x: auto;
  overflow-y: hidden;
}
.brain-journey--steps .brain-journey-node {
  cursor: default;
}
.brain-journey--steps .brain-journey-node:hover circle {
  filter: brightness(1.08);
}
.brain-map {
  position: relative;
  font-family: var(--brain-font);
}
.brain-map svg {
  display: block;
  width: 100%;
  height: auto;
  max-width: 440px;
  margin: 0 auto;
  overflow: visible;
}
.brain-map--wide svg {
  max-width: 680px;
}
.brain-map-state {
  stroke: var(--brain-bg);
  stroke-width: 0.8;
  transition: filter .12s ease;
  cursor: default;
}
.brain-map-state:hover {
  filter: brightness(1.15);
  stroke: var(--brain-text);
  stroke-width: 1.1;
}
.brain-map-label {
  fill: var(--brain-text);
  font-family: var(--brain-font);
  font-size: 13px;
  font-weight: 600;
  pointer-events: none;
  paint-order: stroke;
  stroke: var(--brain-bg);
  stroke-width: 2.4px;
  stroke-linejoin: round;
}
.brain-map-legend {
  justify-content: center;
}
.brain-retention .brain-retention-grid line {
  stroke: color-mix(in srgb, #fff 14%, transparent);
}
.brain-retention .brain-retention-grid text {
  fill: var(--brain-text-muted);
  font-size: 10.5px;
  font-family: var(--brain-font);
}
.brain-retention-area {
  fill: var(--brain-success);
  fill-opacity: .40;
}
.brain-retention-line {
  fill: none;
  stroke: var(--brain-success);
  stroke-width: 2;
  stroke-linejoin: round;
  stroke-linecap: round;
}
.brain-retention-cursor {
  stroke: #fff;
  stroke-width: 1;
  stroke-dasharray: 4 4;
  opacity: 0;
  pointer-events: none;
}
.brain-retention-pt {
  fill: #fff;
  stroke: var(--brain-success);
  stroke-width: 2;
  opacity: 0;
  pointer-events: none;
}
@media (prefers-reduced-motion: no-preference) {
  .brain-chart.is-animate .brain-chart-line {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
    animation: brain-chart-draw 1.1s ease forwards;
  }
  .brain-chart.is-animate .brain-chart-area {
    opacity: 0;
    animation: brain-chart-fade .8s ease .15s forwards;
  }
  .brain-chart.is-animate .brain-chart-dot {
    opacity: 0;
    animation: brain-chart-fade .4s ease .85s forwards;
  }
  .brain-chart.is-animate .brain-chart-bar {
    transform-box: fill-box;
    transform-origin: bottom;
    transform: scaleY(0);
    animation: brain-chart-grow-y .7s cubic-bezier(.4, 0, .2, 1) forwards;
  }
  .brain-chart.is-animate .brain-chart-bar--h {
    transform-origin: left;
    transform: scaleX(0);
    animation-name: brain-chart-grow-x;
  }
  .brain-journey.is-animate .brain-journey-bar {
    transform-origin: left;
    transform: scaleX(0);
    animation: brain-chart-grow-x .7s cubic-bezier(.4, 0, .2, 1) forwards;
  }
  .brain-chart--donut.is-animate .brain-chart-slice {
    opacity: 0;
    animation: brain-chart-fade .5s ease forwards;
  }
  .brain-funnel.is-animate .brain-funnel-bar {
    transform-origin: center;
    transform: scaleX(0);
    animation: brain-chart-grow-x .6s cubic-bezier(.4, 0, .2, 1) forwards;
  }
  .brain-heatmap-wrap.is-animate .brain-heatmap-cell {
    opacity: 0;
    animation: brain-chart-fade .4s ease forwards;
  }
  .brain-journey--steps.is-animate .brain-journey-node {
    opacity: 0;
    animation: brain-chart-fade .5s ease forwards;
  }
  .brain-map.is-animate .brain-map-state {
    opacity: 0;
    animation: brain-chart-fade .4s ease forwards;
  }
  .brain-retention.is-animate .brain-retention-line {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
    animation: brain-chart-draw 1.1s ease forwards;
  }
  .brain-retention.is-animate .brain-retention-area {
    opacity: 0;
    animation: brain-chart-fade .8s ease .15s forwards;
  }
}
@keyframes brain-chart-draw {
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes brain-chart-fade {
  to {
    opacity: 1;
  }
}
@keyframes brain-chart-grow-y {
  to {
    transform: scaleY(1);
  }
}
@keyframes brain-chart-grow-x {
  to {
    transform: scaleX(1);
  }
}

/* src/components/ranking.css */
.brain-ranking {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 11px;
  font-family: var(--brain-font);
}
.brain-ranking-row {
  display: grid;
  grid-template-columns: 20px minmax(110px, 190px) 1fr auto;
  align-items: center;
  gap: 12px;
  cursor: default;
  transition: opacity .12s ease;
}
.brain-ranking:hover .brain-ranking-row {
  opacity: .5;
}
.brain-ranking:hover .brain-ranking-row:hover {
  opacity: 1;
}
.brain-ranking-pos {
  font-size: 13px;
  font-weight: 700;
  color: var(--brain-text-muted);
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.brain-ranking-row:nth-child(-n+3) .brain-ranking-pos {
  color: var(--brain-text);
}
.brain-ranking-name {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 13.5px;
  color: var(--brain-text);
}
.brain-ranking-name > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.brain-ranking-flag {
  display: inline-flex;
  flex-shrink: 0;
}
.brain-ranking-flag svg {
  display: block;
  width: 20px;
  height: 15px;
  border-radius: 3px;
}
.brain-ranking-track {
  height: 10px;
  background: var(--brain-surface-2);
  border-radius: 999px;
  overflow: hidden;
}
.brain-ranking-bar {
  display: block;
  height: 100%;
  background: var(--brain-text);
  border-radius: 999px;
}
.brain-ranking-val {
  font-size: 13px;
  font-weight: 600;
  color: var(--brain-text);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  text-align: right;
}
@media (prefers-reduced-motion: no-preference) {
  .brain-ranking.is-animate .brain-ranking-bar {
    transform-origin: left;
    transform: scaleX(0);
    animation: brain-chart-grow-x .6s cubic-bezier(.4, 0, .2, 1) forwards;
  }
}

/* src/components/empty.css */
.brain-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 10px;
  padding: 48px 24px;
}
.brain-empty-icon {
  display: inline-flex;
  color: var(--brain-text);
  opacity: .35;
  margin-bottom: 2px;
}
.brain-empty-icon svg {
  width: 52px;
  height: 52px;
}
.brain-empty-title {
  font-family: var(--brain-font);
  font-size: 15px;
  font-weight: 600;
  color: var(--brain-text);
}
.brain-empty-text {
  font-family: var(--brain-font);
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--brain-text-muted);
  max-width: 40ch;
}
.brain-empty-action {
  margin-top: 8px;
}
.brain-empty--sm {
  padding: 28px 16px;
  gap: 8px;
}
.brain-empty--sm .brain-empty-icon svg {
  width: 38px;
  height: 38px;
}
.brain-empty--sm .brain-empty-title {
  font-size: 14px;
}

/* src/components/table.css */
.brain-table-wrap {
  background: var(--brain-surface);
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius-lg);
  overflow: hidden;
}
.brain-table-scroll {
  overflow-x: auto;
}
.brain-table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--brain-font);
}
.brain-table thead th {
  text-align: left;
  padding: 12px 16px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--brain-text-muted);
  background: var(--brain-surface-2);
  border-bottom: 1px solid var(--brain-border);
  white-space: nowrap;
}
.brain-th--sort {
  cursor: pointer;
  user-select: none;
  transition: color var(--brain-transition);
}
.brain-th--sort:hover {
  color: var(--brain-text);
}
.brain-table tbody td {
  padding: 12px 16px;
  font-size: 14px;
  color: var(--brain-text);
  border-bottom: 1px solid var(--brain-border);
  vertical-align: middle;
}
.brain-table tbody tr {
  transition: background var(--brain-transition);
}
.brain-table tbody tr:last-child td {
  border-bottom: 0;
}
.brain-table tbody tr:hover {
  background: var(--brain-surface-2);
}
.brain-table--clickable tbody tr {
  cursor: pointer;
}
.brain-td--strong {
  font-weight: 600;
}
.brain-td--muted {
  color: var(--brain-text-muted);
  font-size: 13px;
}
.brain-td--num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.brain-td--tight {
  width: 1%;
  white-space: nowrap;
}
.brain-table-foot {
  padding: 10px 16px;
  background: var(--brain-surface-2);
  border-top: 1px solid var(--brain-border);
  font-size: 12px;
  font-weight: 600;
  color: var(--brain-text-muted);
}
.brain-table-empty {
  padding: 56px 20px;
  text-align: center;
  color: var(--brain-text-muted);
  font-size: 13px;
}

/* src/components/tree.css */
.brain-tree-cell {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.brain-tree-caret {
  width: 16px;
  height: 16px;
  flex: none;
  display: grid;
  place-items: center;
  color: var(--brain-text-muted);
  transition: transform .15s ease;
}
.brain-tree-caret svg {
  width: 14px;
  height: 14px;
}
.brain-tree-row.is-open > td .brain-tree-caret:not(.is-loading) {
  transform: rotate(90deg);
}
.brain-tree-caret.is-loading {
  animation: brain-tree-spin .7s linear infinite;
}
@keyframes brain-tree-spin {
  to {
    transform: rotate(360deg);
  }
}
.brain-tree-name {
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.brain-tree-row[data-has="1"] {
  cursor: pointer;
}
.brain-tree-row:not([data-has="1"]) .brain-tree-caret {
  visibility: hidden;
}
.brain-tree-tag {
  flex: none;
  font-family: var(--brain-mono);
  font-size: 9.5px;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--brain-text-muted);
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border);
  padding: 1px 6px;
  border-radius: 999px;
}
@media (prefers-reduced-motion: reduce) {
  .brain-tree-caret.is-loading {
    animation: none;
  }
}

/* src/components/loadmore.css */
.brain-loadmore {
  display: flex;
  justify-content: center;
  padding: 14px 0 6px;
}
.brain-loadmore[hidden] {
  display: none;
}

/* src/components/list.css */
.brain-list {
  display: flex;
  flex-direction: column;
  font-family: var(--brain-font);
}
.brain-list--card {
  background: var(--brain-surface);
  border: 1px solid var(--brain-border);
  border-radius: var(--brain-radius-lg);
  overflow: hidden;
}
.brain-list-item {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  min-width: 0;
}
.brain-list--divided .brain-list-item + .brain-list-item {
  border-top: 1px solid var(--brain-border);
}
.brain-list-leading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--brain-text-muted);
  flex-shrink: 0;
}
.brain-list-leading svg {
  width: 18px;
  height: 18px;
}
.brain-list-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.brain-list-title {
  font-size: 13.5px;
  font-weight: 500;
  color: var(--brain-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.brain-list-sub {
  font-size: 12px;
  color: var(--brain-text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.brain-list-trailing {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  font-size: 12.5px;
  color: var(--brain-text-muted);
  font-variant-numeric: tabular-nums;
}
.brain-list-item--link {
  cursor: pointer;
  transition: background .12s ease;
}
.brain-list-item--link:hover {
  background: var(--brain-surface-2);
}
.brain-list-chevron {
  display: inline-flex;
  color: var(--brain-text-muted);
}
.brain-list-chevron svg {
  width: 16px;
  height: 16px;
}
.brain-list--compact .brain-list-item {
  padding: 8px 12px;
  gap: 10px;
}

/* src/components/code.css */
.brain-code {
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius-lg);
  overflow: hidden;
  background: var(--brain-surface);
  font-family: var(--brain-font-mono);
}
.brain-code-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px 8px 14px;
  background: var(--brain-surface-2);
  border-bottom: 1px solid var(--brain-border);
}
.brain-code-name {
  font-size: 12.5px;
  color: var(--brain-text);
}
.brain-code-lang {
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--brain-text-muted);
  padding: 2px 7px;
  border: 1px solid var(--brain-border-strong);
  border-radius: 999px;
}
.brain-code-copy {
  margin-left: auto;
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  color: var(--brain-text-muted);
  border-radius: 7px;
  cursor: pointer;
  flex-shrink: 0;
  transition: background var(--brain-transition), color var(--brain-transition);
}
.brain-code-copy:hover {
  background: var(--brain-surface);
  color: var(--brain-text);
}
.brain-code-copy svg {
  width: 16px;
  height: 16px;
}
.brain-code-copy-done {
  display: none;
  color: var(--brain-success);
}
.brain-code-copy.is-copied .brain-code-copy-idle {
  display: none;
}
.brain-code-copy.is-copied .brain-code-copy-done {
  display: inline-flex;
}
.brain-code--bare .brain-code-body {
  border-radius: inherit;
}
.brain-code-body {
  margin: 0;
  padding: 14px 0;
  overflow-x: auto;
  font-family: var(--brain-font-mono);
  font-size: 12.5px;
  line-height: 1.7;
  color: var(--brain-text);
  tab-size: 2;
}
.brain-code-body code {
  display: block;
  min-width: max-content;
}
.brain-code-line {
  display: block;
  padding: 0 16px;
  white-space: pre;
}
.brain-code-line.is-hl {
  background: var(--brain-surface-2);
}
.brain-code--numbered .brain-code-body code {
  counter-reset: brain-ln;
}
.brain-code--numbered .brain-code-line {
  position: relative;
  padding-left: 52px;
}
.brain-code--numbered .brain-code-line::before {
  counter-increment: brain-ln;
  content: counter(brain-ln);
  position: absolute;
  left: 0;
  width: 36px;
  text-align: right;
  color: var(--brain-text-muted);
  opacity: .7;
  user-select: none;
}
.brain-tok-com {
  color: var(--brain-text-muted);
}
.brain-code--color .brain-tok-key {
  color: var(--brain-syntax-key);
}
.brain-code--color .brain-tok-str {
  color: var(--brain-syntax-str);
}
.brain-code--color .brain-tok-num {
  color: var(--brain-syntax-num);
}
.brain-code--color .brain-tok-fn {
  color: var(--brain-syntax-fn);
}
.brain-code--color .brain-tok-com {
  color: var(--brain-syntax-com);
}
.brain-code--color .brain-tok-punc {
  color: var(--brain-syntax-punc);
}
.brain-code-line--add {
  background: color-mix(in srgb, var(--brain-success) 12%, transparent);
  box-shadow: inset 2px 0 0 var(--brain-success);
}
.brain-code-line--del {
  background: color-mix(in srgb, var(--brain-danger) 12%, transparent);
  box-shadow: inset 2px 0 0 var(--brain-danger);
}

/* src/components/orb.css */
.brain-orb {
  --orb-size: 128px;
  --orb-level: 0;
  position: relative;
  width: var(--orb-size);
  height: var(--orb-size);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.brain-orb--sm {
  --orb-size: 84px;
}
.brain-orb--lg {
  --orb-size: 184px;
}
.brain-orb-glow {
  position: absolute;
  inset: -22%;
  border-radius: 50%;
  background:
    radial-gradient(
      circle,
      color-mix(in srgb, var(--brain-text) 30%, transparent) 0%,
      transparent 58%),
    radial-gradient(
      circle,
      color-mix(in srgb, var(--brain-text) 12%, transparent) 0%,
      transparent 76%);
  filter: blur(6px);
  animation: brain-orb-breathe 4.5s ease-in-out infinite;
}
.brain-orb-core {
  position: relative;
  width: 66%;
  height: 66%;
  border-radius: 50%;
  background:
    radial-gradient(
      circle at 33% 26%,
      color-mix(in srgb, var(--brain-text) 70%, #fff 30%) 0%,
      var(--brain-text) 42%,
      color-mix(in srgb, var(--brain-text) 74%, #000 26%) 76%,
      color-mix(in srgb, var(--brain-text) 58%, #000 42%) 100%);
  box-shadow:
    0 12px 38px color-mix(in srgb, var(--brain-text) 24%, transparent),
    inset 0 3px 12px color-mix(in srgb, #fff 22%, transparent),
    inset 0 -10px 22px color-mix(in srgb, #000 28%, transparent),
    inset 0 0 0 1px color-mix(in srgb, #fff 7%, transparent);
  transform: scale(calc(1 + var(--orb-level) * 0.16));
  animation: brain-orb-breathe 4.5s ease-in-out infinite;
  transition: transform .12s ease;
}
.brain-orb-core::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background:
    conic-gradient(
      from 200deg,
      transparent 0deg,
      color-mix(in srgb, #fff 20%, transparent) 42deg,
      transparent 130deg,
      transparent 235deg,
      color-mix(in srgb, #fff 11%, transparent) 300deg,
      transparent 360deg);
  opacity: .75;
  animation: brain-orb-spin 9s linear infinite;
}
.brain-orb-core::after {
  content: "";
  position: absolute;
  top: 11%;
  left: 17%;
  width: 38%;
  height: 28%;
  border-radius: 50%;
  background:
    radial-gradient(
      circle,
      color-mix(in srgb, #fff 62%, transparent) 0%,
      transparent 70%);
  filter: blur(2px);
}
.brain-orb-ring {
  position: absolute;
  inset: 8%;
  border-radius: 50%;
  border: 1.5px solid color-mix(in srgb, var(--brain-text) 40%, transparent);
  opacity: 0;
  pointer-events: none;
}
.brain-orb-ring:nth-of-type(3) {
  animation-delay: .9s;
}
.brain-orb-orbit {
  position: absolute;
  inset: -3%;
  border-radius: 50%;
  opacity: 0;
}
.brain-orb-orbit::before {
  content: "";
  position: absolute;
  top: -3px;
  left: 50%;
  width: 9px;
  height: 9px;
  margin-left: -4.5px;
  border-radius: 50%;
  background: var(--brain-text);
  box-shadow: 0 0 8px color-mix(in srgb, var(--brain-text) 60%, transparent);
}
.brain-orb-wave {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  opacity: 0;
}
.brain-orb-wave i {
  flex: 0 0 auto;
  width: 3px;
  height: 18%;
  border-radius: 999px;
  background: color-mix(in srgb, var(--brain-bg) 80%, transparent);
  opacity: .92;
}
.brain-orb--sm .brain-orb-wave {
  gap: 5px;
}
.brain-orb--lg .brain-orb-wave {
  gap: 8px;
}
.brain-orb--lg .brain-orb-wave i {
  width: 4px;
}
.brain-orb[data-state=listening] .brain-orb-core {
  animation: brain-orb-react 1.4s ease-in-out infinite;
}
.brain-orb[data-state=listening] .brain-orb-ring {
  animation: brain-orb-ripple 1.8s ease-out infinite;
}
.brain-orb--aurora[data-state=listening] .brain-orb-core {
  animation: brain-orb-react 1.4s ease-in-out infinite, brain-orb-blob 5s ease-in-out infinite;
}
.brain-orb[data-state=thinking] .brain-orb-orbit {
  opacity: 1;
  animation: brain-orb-spin 1.5s linear infinite;
}
.brain-orb[data-state=speaking] .brain-orb-wave {
  opacity: 1;
}
.brain-orb[data-state=speaking] .brain-orb-wave i {
  animation: brain-orb-voice 1s ease-in-out infinite;
}
.brain-orb[data-state=speaking] .brain-orb-wave i:nth-child(1) {
  animation-delay: -.90s;
}
.brain-orb[data-state=speaking] .brain-orb-wave i:nth-child(2) {
  animation-delay: -.60s;
}
.brain-orb[data-state=speaking] .brain-orb-wave i:nth-child(3) {
  animation-delay: -.15s;
}
.brain-orb[data-state=speaking] .brain-orb-wave i:nth-child(4) {
  animation-delay: -.75s;
}
.brain-orb[data-state=speaking] .brain-orb-wave i:nth-child(5) {
  animation-delay: -.40s;
}
.brain-orb[data-state=speaking] .brain-orb-glow {
  animation-duration: 1.2s;
}
.brain-orb[data-state=speaking] .brain-orb-core {
  animation: brain-orb-react .95s ease-in-out infinite;
}
.brain-orb--aurora[data-state=speaking] .brain-orb-core {
  animation: brain-orb-react .95s ease-in-out infinite, brain-orb-blob 3.2s ease-in-out infinite;
}
@keyframes brain-orb-breathe {
  0%, 100% {
    transform: scale(calc(1 + var(--orb-level) * 0.16));
    opacity: 1;
  }
  50% {
    transform: scale(calc(1.05 + var(--orb-level) * 0.16));
    opacity: .92;
  }
}
@keyframes brain-orb-ripple {
  0% {
    transform: scale(.7);
    opacity: .55;
  }
  100% {
    transform: scale(1.5);
    opacity: 0;
  }
}
@keyframes brain-orb-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes brain-orb-voice {
  0%, 100% {
    height: 26%;
  }
  50% {
    height: 70%;
  }
}
.brain-orb--aurora .brain-orb-wave,
.brain-orb--aurora .brain-orb-orbit {
  display: none;
}
.brain-orb--aurora .brain-orb-core {
  border-radius: 58% 42% 55% 45% / 52% 48% 52% 48%;
  animation: brain-orb-breathe 4.5s ease-in-out infinite, brain-orb-blob 9s ease-in-out infinite;
}
.brain-orb--aurora.brain-orb--color .brain-orb-core {
  background:
    radial-gradient(
      120% 120% at 26% 20%,
      var(--brain-aurora-4) 0%,
      transparent 52%),
    radial-gradient(
      120% 120% at 74% 28%,
      var(--brain-aurora-3) 0%,
      transparent 55%),
    radial-gradient(
      130% 130% at 62% 82%,
      var(--brain-aurora-2) 0%,
      transparent 58%),
    radial-gradient(
      120% 120% at 28% 76%,
      var(--brain-aurora-1) 0%,
      transparent 58%),
    var(--brain-aurora-2);
  box-shadow:
    0 14px 44px color-mix(in srgb, var(--brain-aurora-2) 40%, transparent),
    inset 0 3px 14px color-mix(in srgb, #fff 30%, transparent),
    inset 0 -12px 26px color-mix(in srgb, #000 26%, transparent);
}
.brain-orb--aurora.brain-orb--color .brain-orb-glow {
  background:
    radial-gradient(
      circle,
      color-mix(in srgb, var(--brain-aurora-2) 42%, transparent) 0%,
      transparent 58%),
    radial-gradient(
      circle,
      color-mix(in srgb, var(--brain-aurora-3) 26%, transparent) 0%,
      transparent 76%);
}
@keyframes brain-orb-react {
  0%, 100% {
    transform: scale(calc(1 + var(--orb-level) * .16));
  }
  25% {
    transform: scale(calc(1.02 + var(--orb-level) * .16)) scaleX(1.05) scaleY(.95);
  }
  50% {
    transform: scale(calc(1.01 + var(--orb-level) * .16)) scaleX(.96) scaleY(1.05);
  }
  75% {
    transform: scale(calc(1.03 + var(--orb-level) * .16)) scaleX(1.04) scaleY(.97);
  }
}
@keyframes brain-orb-blob {
  0%, 100% {
    border-radius: 58% 42% 55% 45% / 52% 48% 52% 48%;
  }
  33% {
    border-radius: 45% 55% 48% 52% / 58% 42% 55% 45%;
  }
  66% {
    border-radius: 52% 48% 42% 58% / 45% 55% 48% 52%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .brain-orb-glow,
  .brain-orb-core,
  .brain-orb-core::before,
  .brain-orb-ring,
  .brain-orb-orbit,
  .brain-orb-wave i {
    animation: none !important;
  }
}

/* src/components/select.css */
.brain-select {
  position: relative;
  display: block;
  width: 100%;
}
.brain-select-btn {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  font-family: var(--brain-font);
  font-size: 14px;
  line-height: 1.4;
  text-align: left;
  color: var(--brain-text);
  background: transparent;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  cursor: pointer;
  outline: none;
  transition: border-color var(--brain-transition);
}
.brain-select-btn:hover {
  border-color: var(--brain-text);
}
.brain-select-btn:focus-visible,
.brain-select.is-open .brain-select-btn {
  border-color: var(--brain-text);
}
.brain-select-value {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.brain-select-value.is-placeholder {
  color: var(--brain-text-muted);
}
.brain-select-opt-main {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.brain-select-caret {
  width: 15px;
  height: 15px;
  color: var(--brain-text-muted);
  flex-shrink: 0;
  transition: transform var(--brain-transition);
}
.brain-select.is-open .brain-select-caret {
  transform: rotate(180deg);
}
.brain-select-menu {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  z-index: 50;
  padding: 4px;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  box-shadow: 0 12px 32px color-mix(in srgb, #000 30%, transparent);
  max-height: 260px;
  overflow-y: auto;
  display: none;
}
.brain-select.is-open .brain-select-menu {
  display: block;
}
.brain-select-search {
  position: sticky;
  top: -4px;
  margin: -4px -4px 4px;
  padding: 8px;
  background: var(--brain-surface);
  border-bottom: 1px solid var(--brain-border);
}
.brain-select-search input {
  width: 100%;
  padding: 8px 10px;
  font-family: var(--brain-font);
  font-size: 13px;
  color: var(--brain-text);
  background: transparent;
  border: 1px solid var(--brain-border-strong);
  border-radius: 7px;
  outline: none;
  transition: border-color var(--brain-transition);
}
.brain-select-search input:focus {
  border-color: var(--brain-text);
}
.brain-select-search input::placeholder {
  color: var(--brain-text-muted);
}
.brain-select-opt[hidden] {
  display: none;
}
.brain-select-empty {
  padding: 14px 10px;
  text-align: center;
  font-size: 13px;
  color: var(--brain-text-muted);
  display: none;
}
.brain-select.is-empty .brain-select-empty {
  display: block;
}
.brain-select-opt {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 10px;
  border-radius: 7px;
  font-size: 14px;
  color: var(--brain-text);
  cursor: pointer;
}
.brain-select-opt:hover,
.brain-select-opt.is-active {
  background: var(--brain-surface-2);
}
.brain-select-opt.is-selected {
  font-weight: 600;
}
.brain-select-check {
  width: 15px;
  height: 15px;
  color: var(--brain-text);
  flex-shrink: 0;
  opacity: 0;
}
.brain-select-opt.is-selected .brain-select-check {
  opacity: 1;
}
.brain-select.is-disabled {
  opacity: .5;
  pointer-events: none;
}

/* src/components/modal.css */
.brain-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  background: rgba(0, 0, 0, 0);
  pointer-events: none;
  transition: background .25s ease;
}
.brain-modal[hidden] {
  display: none;
}
.brain-modal.is-open {
  background: color-mix(in srgb, #000 55%, transparent);
  pointer-events: auto;
}
.brain-modal-card {
  width: 440px;
  max-width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius-lg);
  box-shadow: 0 24px 64px color-mix(in srgb, #000 45%, transparent);
  transform: translateY(16px) scale(.98);
  opacity: 0;
  transition: transform .28s cubic-bezier(.4, 0, .2, 1), opacity .25s ease;
}
.brain-modal.is-open .brain-modal-card {
  transform: none;
  opacity: 1;
}
.brain-modal-card--sm {
  width: 380px;
}
.brain-modal-card--lg {
  width: 640px;
}
.brain-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border-bottom: 1px solid var(--brain-border);
}
.brain-modal-title {
  font-size: 15px;
  font-weight: 600;
  color: var(--brain-text);
}
.brain-modal-close {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  color: var(--brain-text-muted);
  border-radius: 7px;
  cursor: pointer;
  transition: background var(--brain-transition), color var(--brain-transition);
}
.brain-modal-close:hover {
  background: var(--brain-surface-2);
  color: var(--brain-text);
}
.brain-modal-close svg {
  width: 18px;
  height: 18px;
}
.brain-modal-body {
  padding: 18px;
  color: var(--brain-text);
  font-size: 14px;
  line-height: 1.6;
}
.brain-modal-body p {
  margin: 0 0 10px;
}
.brain-modal-body p:last-child {
  margin-bottom: 0;
}
.brain-modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 18px;
  border-top: 1px solid var(--brain-border);
}
@media (prefers-reduced-motion: reduce) {
  .brain-modal,
  .brain-modal-card {
    transition: none;
  }
}

/* src/components/drawer.css */
.brain-drawer {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  background: rgba(0, 0, 0, 0);
  pointer-events: none;
  transition: background .25s ease;
}
.brain-drawer[hidden] {
  display: none;
}
.brain-drawer.is-open {
  background: color-mix(in srgb, #000 55%, transparent);
  pointer-events: auto;
}
.brain-drawer {
  justify-content: flex-end;
  align-items: stretch;
}
.brain-drawer--left {
  justify-content: flex-start;
}
.brain-drawer--top {
  align-items: flex-start;
}
.brain-drawer--bottom {
  align-items: flex-end;
}
.brain-drawer-panel {
  display: flex;
  flex-direction: column;
  width: 360px;
  max-width: 90vw;
  height: 100%;
  background: var(--brain-surface);
  border-left: 1px solid var(--brain-border-strong);
  box-shadow: 0 0 64px color-mix(in srgb, #000 45%, transparent);
  transform: translateX(100%);
  opacity: 1;
  transition: transform .3s cubic-bezier(.4, 0, .2, 1);
}
.brain-drawer.is-open .brain-drawer-panel {
  transform: none;
}
.brain-drawer-panel--sm {
  width: 300px;
}
.brain-drawer-panel--lg {
  width: 480px;
}
.brain-drawer--left .brain-drawer-panel {
  border-left: none;
  border-right: 1px solid var(--brain-border-strong);
  transform: translateX(-100%);
}
.brain-drawer--top .brain-drawer-panel,
.brain-drawer--bottom .brain-drawer-panel {
  width: 100%;
  height: auto;
  max-height: 85vh;
}
.brain-drawer--top .brain-drawer-panel {
  border-left: none;
  border-bottom: 1px solid var(--brain-border-strong);
  transform: translateY(-100%);
}
.brain-drawer--bottom .brain-drawer-panel {
  border-left: none;
  border-top: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius-lg) var(--brain-radius-lg) 0 0;
  transform: translateY(100%);
}
.brain-drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border-bottom: 1px solid var(--brain-border);
  flex-shrink: 0;
}
.brain-drawer-title {
  font-size: 15px;
  font-weight: 600;
  color: var(--brain-text);
}
.brain-drawer-close {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  color: var(--brain-text-muted);
  border-radius: 7px;
  cursor: pointer;
  transition: background var(--brain-transition), color var(--brain-transition);
}
.brain-drawer-close:hover {
  background: var(--brain-surface-2);
  color: var(--brain-text);
}
.brain-drawer-close svg {
  width: 18px;
  height: 18px;
}
.brain-drawer-body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 18px;
  color: var(--brain-text);
  font-size: 14px;
  line-height: 1.6;
}
.brain-drawer-body p {
  margin: 0 0 10px;
}
.brain-drawer-body p:last-child {
  margin-bottom: 0;
}
.brain-drawer-footer {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 18px;
  border-top: 1px solid var(--brain-border);
  flex-shrink: 0;
}
@media (prefers-reduced-motion: reduce) {
  .brain-drawer,
  .brain-drawer-panel {
    transition: none;
  }
}

/* src/components/pagination.css */
.brain-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.brain-pg-btn {
  min-width: 34px;
  height: 34px;
  padding: 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--brain-font);
  font-size: 13px;
  color: var(--brain-text-muted);
  background: transparent;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  cursor: pointer;
  transition: border-color var(--brain-transition), color var(--brain-transition);
}
.brain-pg-btn:hover:not(:disabled):not(.is-active) {
  border-color: var(--brain-text);
  color: var(--brain-text);
}
.brain-pg-btn.is-active {
  background: var(--brain-surface-2);
  border-color: var(--brain-text);
  color: var(--brain-text);
  font-weight: 600;
  cursor: default;
}
.brain-pg-btn:disabled {
  opacity: .4;
  cursor: default;
}
.brain-pg-btn svg {
  width: 16px;
  height: 16px;
}
.brain-pg-ellipsis {
  color: var(--brain-text-muted);
  font-size: 13px;
  padding: 0 2px;
  user-select: none;
}

/* src/components/toast.css */
.brain-toast-host {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1200;
  display: flex;
  flex-direction: column;
  gap: 10px;
  pointer-events: none;
}
.brain-toast {
  pointer-events: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 240px;
  max-width: 360px;
  padding: 12px 14px;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  box-shadow: 0 12px 32px color-mix(in srgb, #000 35%, transparent);
  color: var(--brain-text);
  font-size: 13px;
  line-height: 1.4;
  cursor: pointer;
  transform: translateY(8px);
  opacity: 0;
  transition: transform .22s ease, opacity .22s ease;
}
.brain-toast.is-in {
  transform: none;
  opacity: 1;
}
.brain-toast.is-out {
  opacity: 0;
  transform: translateX(12px);
}
.brain-toast-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: var(--brain-text-muted);
}
.brain-toast-msg {
  flex: 1;
}
.brain-toast--success .brain-toast-icon {
  color: var(--brain-success);
}
.brain-toast--danger .brain-toast-icon {
  color: var(--brain-danger);
}
.brain-toast--warning .brain-toast-icon {
  color: var(--brain-warning);
}
@media (prefers-reduced-motion: reduce) {
  .brain-toast {
    transition: opacity .22s ease;
    transform: none;
  }
  .brain-toast.is-out {
    transform: none;
  }
}

/* src/components/skeleton.css */
.brain-skeleton {
  border-radius: var(--brain-radius-sm);
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb, var(--brain-text) 6%, transparent) 25%,
      color-mix(in srgb, var(--brain-text) 14%, transparent) 50%,
      color-mix(in srgb, var(--brain-text) 6%, transparent) 75%);
  background-size: 200% 100%;
  animation: brain-sk-shimmer 1.4s infinite;
}
@keyframes brain-sk-shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.brain-skeleton--text {
  height: 12px;
}
.brain-skeleton--title {
  height: 18px;
}
.brain-skeleton--circle {
  border-radius: 50%;
}
.brain-skeleton--block {
  height: 100%;
  width: 100%;
}
.brain-skeleton-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
}
.brain-skeleton-row + .brain-skeleton-row {
  border-top: 1px solid var(--brain-border);
}
.brain-skeleton-row__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.brain-skeleton-table {
  display: flex;
  flex-direction: column;
}
.brain-skeleton-trow {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 16px;
  padding: 14px 0;
  border-bottom: 1px solid var(--brain-border);
}
.brain-skeleton-trow:last-child {
  border-bottom: 0;
}
.brain-skeleton-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.brain-skeleton-card + .brain-skeleton-card {
  margin-top: 12px;
}
@media (prefers-reduced-motion: reduce) {
  .brain-skeleton {
    animation: none;
    background: color-mix(in srgb, var(--brain-text) 10%, transparent);
  }
}

/* src/components/loading.css */
@keyframes brain-spinner-rot {
  to {
    transform: rotate(360deg);
  }
}
.brain-spinner {
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid color-mix(in srgb, currentColor 22%, transparent);
  border-top-color: currentColor;
  animation: brain-spinner-rot .6s linear infinite;
  flex-shrink: 0;
}
.brain-spinner--sm {
  width: 14px;
  height: 14px;
  border-width: 2px;
}
.brain-spinner--lg {
  width: 32px;
  height: 32px;
  border-width: 3px;
}
.brain-progress {
  width: 100%;
  height: 8px;
  background: var(--brain-surface-2);
  border-radius: 999px;
  overflow: hidden;
}
.brain-progress--sm {
  height: 5px;
}
.brain-progress-bar {
  height: 100%;
  width: 0;
  background: var(--brain-text);
  border-radius: 999px;
  transition: width .3s ease;
}
@keyframes brain-progress-slide {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(350%);
  }
}
.brain-progress--indeterminate .brain-progress-bar {
  width: 30%;
  transition: none;
  animation: brain-progress-slide 1.2s ease-in-out infinite;
}
.brain-loading {
  position: absolute;
  inset: 0;
  z-index: 20;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: color-mix(in srgb, var(--brain-bg) 60%, transparent);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  border-radius: inherit;
  color: var(--brain-text);
}
.brain-loading--fixed {
  position: fixed;
  z-index: 1000;
}
.brain-loading[hidden] {
  display: none;
}
.brain-loading .brain-spinner {
  color: var(--brain-text);
}
.brain-loading-text {
  font-family: var(--brain-font);
  font-size: 13px;
  color: var(--brain-text-muted);
}
@media (prefers-reduced-motion: reduce) {
  .brain-spinner {
    animation-duration: 1.4s;
  }
  .brain-progress--indeterminate .brain-progress-bar {
    animation-duration: 2.4s;
  }
}

/* src/components/motion.css */
@keyframes brain-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes brain-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: .45;
  }
}
@keyframes brain-ping {
  75%, 100% {
    transform: scale(1.9);
    opacity: 0;
  }
}
@keyframes brain-bounce {
  0%, 100% {
    transform: translateY(-18%);
    animation-timing-function: cubic-bezier(.8, 0, 1, 1);
  }
  50% {
    transform: none;
    animation-timing-function: cubic-bezier(0, 0, .2, 1);
  }
}
@keyframes brain-wiggle {
  0%, 100% {
    transform: rotate(-7deg);
  }
  50% {
    transform: rotate(7deg);
  }
}
@keyframes brain-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes brain-slide-up {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes brain-slide-down {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes brain-zoom-in {
  from {
    opacity: 0;
    transform: scale(.94);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.brain-anim-spin {
  animation: brain-spin 1s linear infinite;
}
.brain-anim-pulse {
  animation: brain-pulse 1.6s ease-in-out infinite;
}
.brain-anim-ping {
  animation: brain-ping 1s cubic-bezier(0, 0, .2, 1) infinite;
}
.brain-anim-bounce {
  animation: brain-bounce 1s infinite;
}
.brain-anim-wiggle {
  animation: brain-wiggle .4s ease-in-out infinite;
  transform-origin: center;
}
.brain-anim-fade-in {
  animation: brain-fade-in .3s ease both;
}
.brain-anim-slide-up {
  animation: brain-slide-up .32s cubic-bezier(.4, 0, .2, 1) both;
}
.brain-anim-slide-down {
  animation: brain-slide-down .32s cubic-bezier(.4, 0, .2, 1) both;
}
.brain-anim-zoom-in {
  animation: brain-zoom-in .28s cubic-bezier(.4, 0, .2, 1) both;
}
.brain-anim-delay-1 {
  animation-delay: .05s;
}
.brain-anim-delay-2 {
  animation-delay: .1s;
}
.brain-anim-delay-3 {
  animation-delay: .15s;
}
.brain-anim-delay-4 {
  animation-delay: .2s;
}
.brain-anim-delay-5 {
  animation-delay: .25s;
}
.brain-anim-hover-spin:hover {
  animation: brain-spin 1s linear infinite;
}
.brain-anim-hover-wiggle:hover {
  animation: brain-wiggle .4s ease-in-out infinite;
  transform-origin: center;
}
.brain-anim-hover-pulse:hover {
  animation: brain-pulse 1.2s ease-in-out infinite;
}
.brain-anim-hover-bounce:hover {
  animation: brain-bounce 1s infinite;
}
@media (prefers-reduced-motion: reduce) {
  [class*=brain-anim-] {
    animation: none !important;
  }
}

/* src/components/canvas.css */
.brain-cv {
  --cv-brand: #1DB954;
  --cv-grid: color-mix(in srgb, var(--brain-text-muted) 22%, transparent);
  position: relative;
  height: 460px;
  min-height: 260px;
  overflow: hidden;
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius-lg);
  background-color: var(--brain-bg);
  background-image: radial-gradient(var(--cv-grid) 1.3px, transparent 1.3px);
  background-size: 26px 26px;
  background-position: 0 0;
  cursor: grab;
  touch-action: none;
  user-select: none;
  font-family: var(--brain-font);
  color: var(--brain-text);
  outline: none;
}
.brain-cv.is-panning {
  cursor: grabbing;
}
.brain-cv.is-connecting {
  cursor: crosshair;
}
.brain-cv:focus-visible {
  box-shadow: inset 0 0 0 1px var(--brain-border-strong);
}
.brain-cv-world {
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: 0 0;
  will-change: transform;
}
.brain-cv-edges {
  position: absolute;
  top: 0;
  left: 0;
  overflow: visible;
  pointer-events: none;
}
.brain-cv-edge-hit {
  fill: none;
  stroke: transparent;
  stroke-width: 22;
  vector-effect: non-scaling-stroke;
  pointer-events: stroke;
  cursor: pointer;
}
.brain-cv-edge-line {
  fill: none;
  stroke: var(--brain-border-strong);
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
  transition: stroke .15s ease;
}
.brain-cv-edge.is-hover .brain-cv-edge-line {
  stroke: var(--brain-text-muted);
}
.brain-cv-edge.is-live .brain-cv-edge-line {
  stroke: var(--cv-brand);
  stroke-dasharray: 6 7;
  animation: brain-cv-dash 22s linear infinite;
}
@keyframes brain-cv-dash {
  to {
    stroke-dashoffset: -400;
  }
}
.brain-cv-edge-dot {
  fill: var(--brain-border-strong);
  transition: fill .15s ease;
}
.brain-cv-edge.is-live .brain-cv-edge-dot {
  fill: var(--cv-brand);
}
.brain-cv-link {
  fill: none;
  stroke: var(--cv-brand);
  stroke-width: 2.5;
  stroke-dasharray: 5 5;
  vector-effect: non-scaling-stroke;
  pointer-events: none;
  opacity: .9;
}
.brain-cv-node {
  position: absolute;
  width: 190px;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: var(--brain-radius);
  box-shadow: 0 1px 2px #0000002e, 0 8px 24px -12px #00000055;
  cursor: grab;
  transition: box-shadow .18s ease, border-color .18s ease;
}
.brain-cv-node:hover {
  border-color: color-mix(in srgb, var(--brain-text) 16%, transparent);
  box-shadow: 0 2px 4px #0000003a, 0 14px 34px -14px #00000070;
}
.brain-cv-node.is-drag {
  cursor: grabbing;
  box-shadow: 0 6px 10px #0000003a, 0 26px 50px -18px #00000088;
}
.brain-cv-node.is-sel {
  border-color: var(--cv-brand);
  box-shadow: 0 14px 34px -14px #00000070;
}
.brain-cv-node-head {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 11px;
  border-bottom: 1px solid var(--brain-border);
}
.brain-cv-node-ic {
  width: 26px;
  height: 26px;
  flex: none;
  display: grid;
  place-items: center;
  border-radius: 7px;
  background: var(--brain-surface-2);
  color: var(--brain-text);
}
.brain-cv-node-ic svg {
  width: 15px;
  height: 15px;
}
.brain-cv-node-tt {
  min-width: 0;
  flex: 1;
}
.brain-cv-node-name {
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: -.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.brain-cv-node-kind {
  font-size: 10px;
  color: var(--brain-text-muted);
  text-transform: uppercase;
  letter-spacing: .07em;
  margin-top: 1px;
}
.brain-cv-node-body {
  padding: 9px 11px 11px;
  font-size: 11.5px;
  color: var(--brain-text-muted);
  line-height: 1.45;
}
.brain-cv-node.brain-cv-group {
  width: 232px;
}
.brain-cv-group.is-drop {
  border-color: var(--cv-brand);
  box-shadow: 0 14px 34px -14px #00000070;
}
.brain-cv-group.is-drop .brain-cv-actions {
  background: color-mix(in srgb, var(--cv-brand) 7%, transparent);
}
.brain-cv-group-head {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 10px;
  border-bottom: 1px solid var(--brain-border);
}
.brain-cv-group-name {
  flex: 1;
  min-width: 0;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: -.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  outline: none;
}
.brain-cv-group-name[contenteditable=true] {
  overflow: visible;
  box-shadow: 0 0 0 1px var(--cv-brand);
  border-radius: 4px;
  padding: 0 4px;
}
.brain-cv-group-count {
  flex: none;
  font-family: var(--brain-mono);
  font-size: 10px;
  color: var(--brain-text-muted);
  background: var(--brain-surface-2);
  padding: 1px 7px;
  border-radius: 999px;
}
.brain-cv-actions {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 6px;
  border-radius: 0 0 var(--brain-radius) var(--brain-radius);
  transition: background .13s ease;
}
.brain-cv-action {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 7px;
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border);
  border-radius: 8px;
  cursor: grab;
  transition: border-color .13s ease, opacity .13s ease;
}
.brain-cv-action:hover {
  border-color: var(--brain-border-strong);
}
.brain-cv-action.is-adrag {
  opacity: .4;
}
.brain-cv-action.is-asel {
  border-color: var(--cv-brand);
}
.brain-cv-action-ic {
  width: 22px;
  height: 22px;
  flex: none;
  display: grid;
  place-items: center;
  border-radius: 6px;
  background: var(--brain-bg);
  color: var(--brain-text);
}
.brain-cv-action-ic svg {
  width: 13px;
  height: 13px;
}
.brain-cv-action-tt {
  flex: 1;
  min-width: 0;
  font-size: 11.5px;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  outline: none;
}
.brain-cv-action-tt.is-wrap {
  white-space: pre-wrap;
  word-break: break-word;
  overflow: visible;
  text-overflow: clip;
  font-weight: 400;
  line-height: 1.4;
}
.brain-cv-action-ph {
  color: var(--brain-text-muted);
  font-weight: 400;
}
.brain-cv-action-edit {
  flex: 1;
  min-width: 0;
  resize: none;
  overflow: hidden;
  border: 0;
  outline: none;
  background: transparent;
  color: var(--brain-text);
  font-family: var(--brain-font);
  font-size: 11.5px;
  line-height: 1.4;
  padding: 0;
  margin: 0;
}
.brain-cv-action-edit::placeholder {
  color: var(--brain-text-muted);
}
.brain-cv-action-del {
  flex: none;
  width: 18px;
  height: 18px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--brain-text-muted);
  border-radius: 5px;
  cursor: pointer;
  opacity: 0;
  transition: opacity .12s ease, background .12s ease;
}
.brain-cv-action:hover .brain-cv-action-del {
  opacity: 1;
}
.brain-cv-action-del:hover {
  background: color-mix(in srgb, var(--brain-danger) 16%, transparent);
  color: var(--brain-danger);
}
.brain-cv-action-del svg {
  width: 12px;
  height: 12px;
}
.brain-cv-actions-empty {
  padding: 13px 8px;
  text-align: center;
  font-size: 10.5px;
  color: var(--brain-text-muted);
  border: 1px dashed var(--brain-border-strong);
  border-radius: 8px;
}
.brain-cv-drop-line {
  height: 2px;
  background: var(--cv-brand);
  border-radius: 2px;
  margin: 1px 2px;
}
.brain-cv-aghost {
  position: fixed;
  z-index: 60;
  pointer-events: none;
  opacity: .92;
  background: var(--brain-surface);
  border: 1px solid var(--brain-border-strong);
  border-radius: 8px;
  box-shadow: 0 14px 34px -12px #000000bb;
  padding: 6px 8px;
}
.brain-cv-port {
  position: absolute;
  width: 13px;
  height: 13px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: var(--brain-surface);
  border: 2px solid var(--brain-text-muted);
  cursor: crosshair;
  transition:
    transform .12s ease,
    border-color .12s ease,
    background .12s ease;
}
.brain-cv-port::before {
  content: "";
  position: absolute;
  inset: -8px;
  border-radius: 50%;
}
.brain-cv-port:hover,
.brain-cv-port.is-target {
  border-color: var(--cv-brand);
  background: var(--cv-brand);
  transform: translate(-50%, -50%) scale(1.35);
}
.brain-cv-port.is-source {
  border-color: var(--cv-brand);
  background: var(--cv-brand);
}
.brain-cv-port-label {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--brain-mono);
  font-size: 9px;
  letter-spacing: .04em;
  color: var(--brain-text-muted);
  text-transform: uppercase;
  white-space: nowrap;
  pointer-events: none;
}
.brain-cv-port.out .brain-cv-port-label {
  left: 16px;
}
.brain-cv-port.in .brain-cv-port-label {
  right: 16px;
}
.brain-cv-guide {
  position: absolute;
  background: var(--cv-brand);
  pointer-events: none;
  opacity: .8;
}
.brain-cv-guide.v {
  width: 1px;
}
.brain-cv-guide.h {
  height: 1px;
}
.brain-cv-marquee {
  position: absolute;
  pointer-events: none;
  border: 1px solid var(--cv-brand);
  background: color-mix(in srgb, var(--cv-brand) 12%, transparent);
  border-radius: 3px;
}
.brain-cv-edgetool {
  position: absolute;
  z-index: 6;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: none;
  place-items: center;
  cursor: pointer;
  padding: 0;
  background: var(--brain-danger);
  color: #fff;
  border: 2px solid var(--brain-bg);
  box-shadow: 0 3px 10px -2px #00000066;
}
.brain-cv-edgetool.show {
  display: grid;
}
.brain-cv-edgetool svg {
  width: 12px;
  height: 12px;
}
.brain-cv-hud {
  position: absolute;
  z-index: 8;
  background: color-mix(in srgb, var(--brain-surface) 82%, transparent);
  backdrop-filter: blur(12px) saturate(1.3);
  -webkit-backdrop-filter: blur(12px) saturate(1.3);
  border: 1px solid var(--brain-border-strong);
  border-radius: 12px;
  box-shadow: 0 10px 30px -14px #00000077;
}
.brain-cv-controls {
  left: 14px;
  bottom: 14px;
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 5px;
}
.brain-cv-ctl {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  cursor: pointer;
  color: var(--brain-text);
  background: transparent;
  border: 0;
  font: inherit;
  transition: background var(--brain-transition);
}
.brain-cv-ctl:hover {
  background: var(--brain-surface-2);
}
.brain-cv-ctl:disabled {
  opacity: .32;
  cursor: default;
}
.brain-cv-ctl.on {
  color: var(--cv-brand);
}
.brain-cv-ctl svg {
  width: 16px;
  height: 16px;
}
.brain-cv-zoom {
  min-width: 50px;
  text-align: center;
  font-family: var(--brain-mono);
  font-size: 12px;
  font-variant-numeric: tabular-nums;
  cursor: pointer;
  padding: 0 4px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  color: var(--brain-text);
  background: transparent;
  border: 0;
}
.brain-cv-zoom:hover {
  background: var(--brain-surface-2);
}
.brain-cv-sep {
  width: 1px;
  height: 20px;
  background: var(--brain-border-strong);
  margin: 0 4px;
}
.brain-cv-mini {
  right: 14px;
  bottom: 14px;
  padding: 7px;
}
.brain-cv-mini-box {
  position: relative;
  width: 188px;
  height: 122px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--brain-surface-2);
  cursor: pointer;
}
.brain-cv-mini-box svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.brain-cv-mini-node {
  fill: var(--brain-text-muted);
}
.brain-cv-mini-node.is-sel {
  fill: var(--cv-brand);
}
.brain-cv-mini-view {
  fill: color-mix(in srgb, var(--cv-brand) 12%, transparent);
  stroke: var(--cv-brand);
  stroke-width: 1.5;
}
.brain-cv-hint {
  position: absolute;
  left: 50%;
  top: 14px;
  transform: translateX(-50%);
  z-index: 8;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 13px;
  font-size: 11.5px;
  color: var(--brain-text-muted);
  transition: opacity .4s ease, transform .4s ease;
}
.brain-cv-hint.gone {
  opacity: 0;
  transform: translateX(-50%) translateY(-6px);
  pointer-events: none;
}
.brain-cv-hint kbd {
  font-family: var(--brain-mono);
  font-size: 10px;
  color: var(--brain-text);
  background: var(--brain-surface-2);
  border: 1px solid var(--brain-border-strong);
  border-bottom-width: 2px;
  border-radius: 5px;
  padding: 1px 5px;
}
@keyframes brain-cv-in {
  from {
    opacity: 0;
    transform: translateY(6px) scale(.97);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.brain-cv-node.enter {
  animation: brain-cv-in .5s cubic-bezier(.16, 1, .3, 1) backwards;
}
@media (prefers-reduced-motion: reduce) {
  .brain-cv-node.enter,
  .brain-cv-edge.is-live .brain-cv-edge-line {
    animation: none;
  }
}

/* src/index.css */
