/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[2].use[1]!./node_modules/next/dist/build/webpack/loaders/next-font-loader/index.js??ruleSet[1].rules[14].oneOf[2].use[2]!./node_modules/next/font/google/target.css?{"path":"src/app/layout.js","import":"JetBrains_Mono","arguments":[{"subsets":["latin"],"weight":["400","500","700"],"variable":"--mono"}],"variableName":"jetbrains"} ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* cyrillic-ext */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/edc640959b0c7826-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/64d784ea54a4acde-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/ff71da380fbe67dd-s.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;
}
/* latin-ext */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/6d831b18ae5b01dc-s.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;
}
/* latin */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/558ca1a6aa3cb55e-s.p.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;
}
/* cyrillic-ext */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/edc640959b0c7826-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/64d784ea54a4acde-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/ff71da380fbe67dd-s.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;
}
/* latin-ext */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/6d831b18ae5b01dc-s.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;
}
/* latin */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/558ca1a6aa3cb55e-s.p.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;
}
/* cyrillic-ext */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/edc640959b0c7826-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/64d784ea54a4acde-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/ff71da380fbe67dd-s.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;
}
/* latin-ext */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/6d831b18ae5b01dc-s.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;
}
/* latin */
@font-face {
  font-family: '__JetBrains_Mono_898c26';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/_next/static/media/558ca1a6aa3cb55e-s.p.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_Fallback_898c26';src: local("Arial");ascent-override: 75.79%;descent-override: 22.29%;line-gap-override: 0.00%;size-adjust: 134.59%
}.__className_898c26 {font-family: '__JetBrains_Mono_898c26', '__JetBrains_Mono_Fallback_898c26';font-style: normal
}.__variable_898c26 {--mono: '__JetBrains_Mono_898c26', '__JetBrains_Mono_Fallback_898c26'
}

/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[2].use[1]!./node_modules/next/dist/build/webpack/loaders/next-font-loader/index.js??ruleSet[1].rules[14].oneOf[2].use[2]!./node_modules/next/font/google/target.css?{"path":"src/app/layout.js","import":"IBM_Plex_Sans","arguments":[{"subsets":["latin"],"weight":["400","500","600","700"],"variable":"--sans"}],"variableName":"ibmPlex"} ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* cyrillic-ext */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/7b19b489dc6743ba-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/28793f5c5e3d822d-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/c9c3823090ec8b55-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b3bf17a9041d9433-s.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;
}
/* latin-ext */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/2801417b65625cf5-s.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;
}
/* latin */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/26d4368bf94c0ec4-s.p.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;
}
/* cyrillic-ext */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/7b19b489dc6743ba-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/28793f5c5e3d822d-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/c9c3823090ec8b55-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b3bf17a9041d9433-s.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;
}
/* latin-ext */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/2801417b65625cf5-s.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;
}
/* latin */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/26d4368bf94c0ec4-s.p.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;
}
/* cyrillic-ext */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/7b19b489dc6743ba-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/28793f5c5e3d822d-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/c9c3823090ec8b55-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b3bf17a9041d9433-s.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;
}
/* latin-ext */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/2801417b65625cf5-s.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;
}
/* latin */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/26d4368bf94c0ec4-s.p.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;
}
/* cyrillic-ext */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/7b19b489dc6743ba-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/28793f5c5e3d822d-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/c9c3823090ec8b55-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/b3bf17a9041d9433-s.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;
}
/* latin-ext */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/2801417b65625cf5-s.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;
}
/* latin */
@font-face {
  font-family: '__IBM_Plex_Sans_c8daab';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/_next/static/media/26d4368bf94c0ec4-s.p.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: '__IBM_Plex_Sans_Fallback_c8daab';src: local("Arial");ascent-override: 101.32%;descent-override: 27.18%;line-gap-override: 0.00%;size-adjust: 101.17%
}.__className_c8daab {font-family: '__IBM_Plex_Sans_c8daab', '__IBM_Plex_Sans_Fallback_c8daab';font-style: normal
}.__variable_c8daab {--sans: '__IBM_Plex_Sans_c8daab', '__IBM_Plex_Sans_Fallback_c8daab'
}

/*!********************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[12].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[12].use[3]!./src/styles/globals.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************/

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
  --crust:#11111b;--mantle:#181825;--base:#1e1e2e;
  --surface0:#313244;--surface1:#45475a;--surface2:#585b70;
  --overlay0:#6c7086;--overlay1:#7f849c;
  --subtext0:#a6adc8;--subtext1:#bac2de;--text:#cdd6f4;
  --lavender:#b4befe;--blue:#89b4fa;--sapphire:#74c7ec;
  --sky:#89dceb;--teal:#94e2d5;--green:#a6e3a1;
  --yellow:#f9e2af;--peach:#fab387;--red:#f38ba8;--mauve:#cba6f7;
  --mono:'JetBrains Mono','Cascadia Code','Consolas',monospace;
  --sans:'IBM Plex Sans',system-ui,sans-serif;
}

html{font-size:15px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{background:var(--crust);color:var(--text);font-family:var(--sans);line-height:1.6}
a{color:var(--blue);text-decoration:none;transition:color .2s}
a:hover{color:var(--lavender)}

/* ─── Fade In ─── */
.fade-in{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.fade-in.visible{opacity:1;transform:translateY(0)}

/* ─── Layout ─── */
.site{max-width:920px;margin:0 auto;min-height:100vh}
.main{padding:0 1.5rem 4rem}

/* ─── Header ─── */
.header{
  position:sticky;top:0;z-index:100;
  background:rgba(17,17,27,.88);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--surface0);padding:0 1.5rem;
}
.header-inner{display:flex;align-items:center;gap:16px;height:52px}
.header-prompt{display:flex;align-items:center;gap:6px;flex-shrink:0;text-decoration:none}
.header-led{
  width:8px;height:8px;border-radius:50%;background:var(--green);
  box-shadow:0 0 8px rgba(166,227,161,.5);animation:pulse 3s ease-in-out infinite;
}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.header-host{font-family:var(--mono);font-weight:700;font-size:.82rem;color:var(--mauve)}
.header-hash{color:var(--overlay0)}
.header-nav{display:flex;gap:3px;flex:1;flex-wrap:wrap}
.header-nav a{
  font-family:var(--mono);font-size:.7rem;padding:4px 12px;border-radius:6px;
  border:1px solid var(--surface0);color:var(--overlay1);transition:all .2s;
}
.header-nav a:hover{color:var(--lavender);border-color:rgba(180,190,254,.3);background:rgba(180,190,254,.05)}

/* ═══ HERO ═══ */
.hero{padding:3.5rem 0 3rem;border-bottom:1px solid var(--surface0);margin-bottom:3rem;position:relative;overflow:hidden}
.hero-content{display:flex;align-items:center;gap:2rem;position:relative;z-index:1}
.hero-text{flex:1;min-width:0}
.hero-glow{
  position:absolute;top:-60px;right:-80px;width:400px;height:400px;
  background:radial-gradient(circle,rgba(203,166,247,.06) 0%,rgba(137,180,250,.03) 40%,transparent 70%);
  pointer-events:none;z-index:0;
}
.hero-prompt{font-family:var(--mono);font-size:.82rem;margin-bottom:1rem}
.prompt-host{color:var(--mauve);font-weight:700}
.prompt-cmd{color:var(--text)}
.hero-name{
  font-size:2.6rem;font-weight:700;line-height:1.1;margin-bottom:.4rem;
  background:linear-gradient(135deg,var(--text),var(--subtext1));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-role{font-size:1.05rem;color:var(--mauve);font-weight:600;margin-bottom:1.25rem;letter-spacing:.02em}
.hero-desc{font-size:.95rem;color:var(--subtext0);line-height:1.75;max-width:560px;margin-bottom:1.5rem}
.hero-stats{display:flex;gap:1.25rem;flex-wrap:wrap;font-family:var(--mono);font-size:.78rem}
.hero-stat{display:flex;align-items:center;gap:6px}
.stat-dot{width:7px;height:7px;border-radius:50%}
.stat-dot.green{background:var(--green);box-shadow:0 0 6px rgba(166,227,161,.4);color:var(--green)}
.stat-dot.blue{background:var(--blue);color:var(--blue)}
.stat-dot.peach{background:var(--peach);color:var(--peach)}
.hero-stat:nth-child(1){color:var(--green)}
.hero-stat:nth-child(2){color:var(--blue)}
.hero-stat:nth-child(3){color:var(--peach)}

/* ═══ TOPOLOGY ═══ */
.topo-wrap{width:280px;flex-shrink:0;opacity:.7;transition:opacity .3s}
.topo-wrap:hover{opacity:1}
.topo-svg{width:100%;height:auto}
.topo-line{stroke:var(--surface1);stroke-width:1.5}
.topo-line.dashed{stroke-dasharray:4 3;stroke:var(--surface0)}
.topo-node.core{fill:rgba(203,166,247,.1);stroke:var(--mauve);stroke-width:1.5}
.topo-node.dist{fill:rgba(137,180,250,.08);stroke:var(--blue);stroke-width:1.2}
.topo-node.acc{fill:rgba(166,227,161,.06);stroke:var(--green);stroke-width:1}
.topo-txt{fill:var(--subtext0);font-family:var(--mono);font-size:8px;text-anchor:middle;font-weight:500}
.topo-txt.sm{font-size:7px}
.topo-up{fill:var(--green);filter:drop-shadow(0 0 3px rgba(166,227,161,.6))}
.topo-pkt.p1{fill:var(--mauve);filter:drop-shadow(0 0 4px rgba(203,166,247,.6))}
.topo-pkt.p2{fill:var(--blue);filter:drop-shadow(0 0 4px rgba(137,180,250,.6))}
.topo-pkt.p3{fill:var(--green);filter:drop-shadow(0 0 4px rgba(166,227,161,.6))}

/* ═══ SECTIONS ═══ */
.section{margin-bottom:3rem;scroll-margin-top:64px}
.section-header{
  font-family:var(--mono);font-size:.82rem;color:var(--overlay0);
  margin-bottom:1.25rem;padding-bottom:.5rem;border-bottom:1px solid var(--surface0);
}

/* ─── Tags ─── */
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{
  font-family:var(--mono);font-size:.65rem;padding:4px 12px;
  background:rgba(137,180,250,.06);border:1px solid rgba(137,180,250,.1);
  color:var(--blue);border-radius:6px;transition:all .2s;
}
.tag:hover{background:rgba(137,180,250,.1);border-color:rgba(137,180,250,.2);transform:translateY(-1px)}

/* ═══ CARD (shared) ═══ */
.card{
  background:var(--mantle);border:1px solid var(--surface0);border-radius:12px;
  padding:1.25rem 1.5rem;margin-bottom:.85rem;transition:all .25s;position:relative;overflow:hidden;
}
.card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--surface1),transparent);
  opacity:0;transition:opacity .25s;
}
.card:hover{
  border-color:var(--surface1);transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(0,0,0,.2),0 0 0 1px rgba(69,71,90,.15);
}
.card:hover::before{opacity:1}

/* ─── Experience ─── */
.exp-top{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
.exp-role{font-size:1.05rem;font-weight:600;color:var(--text)}
.exp-period{font-family:var(--mono);font-size:.72rem;color:var(--overlay1)}
.exp-co{color:var(--sapphire);font-size:.82rem;margin:3px 0 10px}
.exp-bullets{display:flex;flex-direction:column;gap:5px}
.exp-bullet{font-size:.88rem;color:var(--subtext0);line-height:1.55}
.mark{font-family:var(--mono);color:var(--surface2);margin-right:8px}

/* ─── Certs ─── */
.certs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.85rem}
.cert-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.cert-name{font-size:1.15rem;font-weight:700;color:var(--text)}
.cert-badge{
  font-family:var(--mono);font-size:.6rem;font-weight:600;padding:3px 10px;border-radius:20px;
  background:rgba(166,227,161,.1);color:var(--green);text-transform:uppercase;
  border:1px solid rgba(166,227,161,.15);
}
.cert-wip{background:rgba(249,226,175,.15);color:var(--yellow);border:1px solid rgba(249,226,175,.3)}
.cert-vendor{color:var(--overlay1);font-size:.82rem}
.cert-meta{font-family:var(--mono);color:var(--peach);font-size:.72rem;margin-top:8px}

/* ─── Homelab ─── */
.lab-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:6px}
.lab-name{font-size:1rem;font-weight:600;color:var(--text)}
.lab-status{font-family:var(--mono);font-size:.68rem;font-weight:500;color:var(--green);display:flex;align-items:center;gap:5px}
.lab-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 6px rgba(166,227,161,.5)}
.lab-desc{color:var(--overlay1);font-size:.88rem;margin-bottom:10px;line-height:1.5}

/* ─── Contact ─── */
.contact-list{display:flex;flex-direction:column;gap:8px}
.contact-row{
  display:flex;align-items:center;gap:14px;padding:14px 18px;
  background:var(--mantle);border:1px solid var(--surface0);border-radius:12px;
  transition:all .25s;color:var(--text);position:relative;overflow:hidden;
}
.contact-row::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--green);opacity:0;transition:opacity .25s;border-radius:0 2px 2px 0;
}
.contact-row:hover{
  border-color:var(--surface1);background:var(--base);color:var(--text);
  transform:translateX(4px);box-shadow:0 4px 16px rgba(0,0,0,.15);
}
.contact-row:hover::before{opacity:1}
.contact-lbl{font-family:var(--mono);color:var(--overlay1);font-size:.72rem;min-width:70px}
.contact-val{flex:1;color:var(--blue);font-size:.9rem}
.contact-status{font-family:var(--mono);font-size:.62rem;color:var(--green);font-weight:500;text-transform:uppercase}

/* ═══ BLOG ═══ */
.posts-list{display:flex;flex-direction:column;gap:1rem}
.post-card{padding:1.25rem 1.5rem}
.post-title{font-size:1.1rem;font-weight:600;color:var(--text);margin-bottom:4px}
.post-title a{color:var(--text)}
.post-title a:hover{color:var(--lavender)}
.post-meta{font-family:var(--mono);font-size:.7rem;color:var(--overlay0);margin-bottom:8px;display:flex;gap:12px}
.post-excerpt{font-size:.88rem;color:var(--subtext0);line-height:1.6}
.post-excerpt p{margin:0}

/* Single post */
.post-header{margin-bottom:2rem}
.post-page-title{font-size:2rem;font-weight:700;color:var(--text);line-height:1.2;margin-bottom:.5rem}
.post-content{font-size:1rem;line-height:1.8;color:var(--subtext1)}
.post-content h2{font-size:1.4rem;color:var(--text);margin:2rem 0 .75rem}
.post-content h3{font-size:1.15rem;color:var(--text);margin:1.5rem 0 .5rem}
.post-content p{margin-bottom:1rem}
.post-content a{color:var(--blue)}
.post-content a:hover{color:var(--lavender);text-decoration:underline}
.post-content code{font-family:var(--mono);font-size:.88em;background:var(--mantle);padding:2px 6px;border-radius:4px;color:var(--peach)}
.post-content pre{
  background:var(--mantle);border:1px solid var(--surface0);border-radius:10px;
  padding:1.25rem;margin:1.25rem 0;overflow-x:auto;font-family:var(--mono);
  font-size:.85rem;color:var(--text);line-height:1.5;
}
.post-content pre code{background:none;padding:0}
.post-content ul,.post-content ol{margin:.5rem 0 1rem 1.5rem}
.post-content li{margin-bottom:.3rem}
.post-content img{max-width:100%;border-radius:10px;margin:1rem 0}
.post-content blockquote{
  border-left:3px solid var(--mauve);padding:.75rem 1.25rem;margin:1.25rem 0;
  color:var(--subtext0);background:rgba(203,166,247,.03);border-radius:0 8px 8px 0;
}
.back-link{font-family:var(--mono);font-size:.78rem;color:var(--overlay1);margin-bottom:1.5rem;display:inline-block}
.back-link:hover{color:var(--lavender)}

/* ─── Footer ─── */
.footer{text-align:center;padding:2rem 1.5rem;font-family:var(--mono);font-size:.72rem;color:var(--overlay0);border-top:1px solid var(--surface0)}

/* ═══ RESPONSIVE ═══ */
@media(max-width:720px){
  .hero-content{flex-direction:column}
  .topo-wrap{width:100%;max-width:320px;margin:0 auto}
  .hero-name{font-size:1.8rem}
  .main{padding:0 1rem 3rem}
}
@media(max-width:480px){
  .header-inner{gap:10px}
  .header-host{display:none}
  .header-nav a{padding:3px 8px;font-size:.62rem}
  .certs-grid{grid-template-columns:1fr}
  .exp-top{flex-direction:column;gap:2px}
  .card{padding:1rem}
  .topo-wrap{display:none}
}

/* ─── Collapsible Card ─── */
.collapsible-card { transition: border-color 0.2s ease; }
.collapsible-card:hover { border-color: var(--surface1); }
.collapsible-card-open { border-color: var(--surface1); }
.collapsible-header { display: flex; gap: 10px; align-items: flex-start; }
.collapsible-header-content { flex: 1; min-width: 0; }
.collapsible-chevron { font-size: 10px; color: var(--surface2); transition: transform 0.2s ease; display: inline-block; flex-shrink: 0; margin-top: 5px; }
.collapsible-chevron-open { transform: rotate(90deg); }
.collapsible-body { padding-top: 14px; margin-top: 14px; border-top: 1px solid var(--surface0); }

/* ─── Homelab Details ─── */
.lab-detail-group { display: flex; flex-direction: column; gap: 5px; margin-bottom: 14px; }
.lab-detail-group:last-child { margin-bottom: 0; }
.lab-detail-category { font-size: 11px; color: var(--sapphire); letter-spacing: 0.8px; text-transform: uppercase; font-weight: 500; margin-bottom: 2px; font-family: var(--mono); }
.lab-detail-item { display: flex; gap: 8px; font-size: 0.82rem; line-height: 1.6; color: var(--subtext0); }
.lab-detail-marker { color: var(--surface2); flex-shrink: 0; margin-top: 1px; }
