@font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: normal;
        font-display: swap;
        src: url(https://fonts.gstatic.com/l/font?kit=KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuaabVmUiAw&skey=a0a0114a1dcab3ac&v=v51) format('woff');
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: normal;
        font-display: swap;
        src: url(https://fonts.gstatic.com/l/font?kit=KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmUiAw&skey=a0a0114a1dcab3ac&v=v51) format('woff');
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: normal;
        font-display: swap;
        src: url(https://fonts.gstatic.com/l/font?kit=KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWub2bVmUiAw&skey=a0a0114a1dcab3ac&v=v51) format('woff');
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+1F00-1FFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 300;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBHMdazQ.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: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+1F00-1FFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBHMdazQ.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: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+1F00-1FFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBHMdazTgWw.woff2) format('woff2');
        unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
    }

    @font-face {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBHMdazTgWw.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: 'Roboto';
        font-style: normal;
        font-weight: 500;
        font-stretch: 100%;
        font-display: swap;
        src: url(https://fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBHMdazQ.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: 'Material Icons';
        font-style: normal;
        font-weight: 400;
        src: url(https://fonts.gstatic.com/l/font?kit=flUhRq6tzZclQEJ-Vdg-IuiaDsNa&skey=4fbfe4498ec2960a&v=v145) format('woff');
    }

    .material-icons {
        font-family: 'Material Icons';
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 1;
        letter-spacing: normal;
        text-transform: none;
        display: inline-block;
        white-space: nowrap;
        word-wrap: normal;
        direction: ltr;
        font-feature-settings: 'liga';
    }

    @font-face {
        font-family: 'Material Icons';
        font-style: normal;
        font-weight: 400;
        src: url(https://fonts.gstatic.com/s/materialicons/v145/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2) format('woff2');
    }

    .material-icons {
        font-family: 'Material Icons';
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 1;
        letter-spacing: normal;
        text-transform: none;
        display: inline-block;
        white-space: nowrap;
        word-wrap: normal;
        direction: ltr;
        -webkit-font-feature-settings: 'liga';
        -webkit-font-smoothing: antialiased;
    }


    @font-face {
        font-family: Heebo, sans-serif;
        font-style: normal;
        font-weight: 300;
        font-display: swap;
        src: local(Heebo-Light), url(Heebo-Light.da5fe603e5d0bcd2e266.woff2) format("woff2"), url(Heebo-Light.3acdbdfbb7289e34c383.woff) format("woff"), url(Heebo-Light.bc3de35e8a1cbdfc2adf.ttf) format("truetype");
        unicode-range: u+00??, u+0131, u+0152-0153, u+02bb-02bc, u+02c6, u+02da, u+02dc, u+2000-206f, u+2074, u+20ac, u+2122, u+2191, u+2193, u+2212, u+2215, u+feff, u+fffd
    }

    @font-face {
        font-family: Heebo, sans-serif;
        font-style: normal;
        font-weight: 400;
        font-display: swap;
        src: local(Heebo-Regular), url(Heebo-Regular.a7a0741baab432f959f6.woff2) format("woff2"), url(Heebo-Regular.0ebc7fbf4bf56e9d8c4d.woff) format("woff"), url(Heebo-Regular.7ac7b0d26b0f96a894bf.ttf) format("truetype");
        unicode-range: u+00??, u+0131, u+0152-0153, u+02bb-02bc, u+02c6, u+02da, u+02dc, u+2000-206f, u+2074, u+20ac, u+2122, u+2191, u+2193, u+2212, u+2215, u+feff, u+fffd
    }

    @font-face {
        font-family: Heebo, sans-serif;
        font-style: normal;
        font-weight: 500;
        font-display: swap;
        src: local(Heebo-Medium), url(Heebo-Medium.105bb4dc64e616dd2230.woff2) format("woff2"), url(Heebo-Medium.04a25ff8601f68731db9.woff) format("woff"), url(Heebo-Medium.5e8fe25167f6990e102d.ttf) format("truetype");
        unicode-range: u+00??, u+0131, u+0152-0153, u+02bb-02bc, u+02c6, u+02da, u+02dc, u+2000-206f, u+2074, u+20ac, u+2122, u+2191, u+2193, u+2212, u+2215, u+feff, u+fffd
    }

    @font-face {
        font-family: Heebo, sans-serif;
        font-style: normal;
        font-weight: 700;
        font-display: swap;
        src: local(Heebo-Bold), url(Heebo-Bold.ed3d52423de75c2e18f5.woff2) format("woff2"), url(Heebo-Bold.6d19d459acc2dfe2448f.woff) format("woff"), url(Heebo-Bold.6ab9bb0d85bf1603d97f.ttf) format("truetype");
        unicode-range: u+00??, u+0131, u+0152-0153, u+02bb-02bc, u+02c6, u+02da, u+02dc, u+2000-206f, u+2074, u+20ac, u+2122, u+2191, u+2193, u+2212, u+2215, u+feff, u+fffd
    }

    body,
    html {
        height: 100%
    }

    body {
        background-color: #f9f8ff !important
    }

    *,
    :after,
    :before {
        box-sizing: border-box
    }

    html {
        font-family: sans-serif;
        line-height: 1.15;
        -webkit-text-size-adjust: 100%;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
    }

    body {
        margin: 0;
        font-family: Heebo, sans-serif;
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.5;
        color: #212529;
        text-align: left;
        background-color: #fff
    }

    html,
    body {
        max-width: 100%;
        overflow-x: hidden
    }

    @media (max-width: 750px) {

        html,
        body {
            overflow-x: auto
        }
    }


    @font-face {
        font-family: "whitney";
        src: url(/obi/usuarios/whitney-medium-webfont.1b59ab5013fda647722b.woff) format("woff");
        font-weight: 300
    }

    .cloak[_ngcontent-nmg-c148] {
        border: 0;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px
    }

    *[_ngcontent-nmg-c148] {
        margin: 0;
        padding: 0;
        box-sizing: border-box
    }

    body[_ngcontent-nmg-c148] {
        color: #424242;
        font-family: "Heebo", sans-serif;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased
    }

    .link[_ngcontent-nmg-c148] {
        color: #d52b1e;
        font-size: 14px;
        letter-spacing: .3px;
        margin-top: 20px;
        cursor: pointer
    }

    .link-new[_ngcontent-nmg-c148] {
        background-repeat: no-repeat;
        background-position: right 12px center;
        width: 300px
    }

    .link[_ngcontent-nmg-c148]:focus {
        outline: thin auto #000000
    }

    .wrapper[_ngcontent-nmg-c148] {
        height: 100vh;
        overflow: hidden;
        display: flex;
        align-items: flex-end;
        justify-content: space-between
    }

    .wrapper-left[_ngcontent-nmg-c148] {
        height: 100vh
    }

    .wrapper-left_img[_ngcontent-nmg-c148] {
        height: 100vh;
        width: auto;
        position: fixed
    }

    .wrapper-left_img[_ngcontent-nmg-c148]:not(:first-child) {
        display: none;
        opacity: 0
    }

    .wrapper-right[_ngcontent-nmg-c148] {
        background-color: #fff;
        display: flex;
        flex-direction: column;
        justify-content: space-between
    }

    .container-login[_ngcontent-nmg-c148] {
        background-color: #fff;
        height: 100vh;
        position: relative;
        display: flex;
        flex-direction: column;
        padding-left: 0;
        padding-right: 0
    }

    .header-login[_ngcontent-nmg-c148],
    .main[_ngcontent-nmg-c148],
    .footer-login[_ngcontent-nmg-c148] {
        -ms-grid-column: 2;
        -ms-grid-row: 2;
        grid-column: 2/2
    }

    .header-login[_ngcontent-nmg-c148] {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        padding-bottom: 24px;
        padding-top: 24px
    }

    .header-logo_img[_ngcontent-nmg-c148] {
        max-width: 100%;
        margin: 20px 2px 11px
    }

    .header-links_list[_ngcontent-nmg-c148] {
        list-style-type: none;
        display: flex
    }

    .header-links_item[_ngcontent-nmg-c148] {
        flex-grow: 1;
        margin: 0 9px
    }

    .header-links_item[_ngcontent-nmg-c148]:nth-child(1) {
        margin-left: 0
    }

    .header-item_link[_ngcontent-nmg-c148] {
        background-image: url(images/icons.svg);
        background-size: 420px 100px;
        background-position-y: -55px;
        width: 39px;
        height: 39px;
        display: inline-block;
        cursor: pointer
    }

    .important-item[_ngcontent-nmg-c148] {
        background-image: url(images/icon-important.svg);
        width: 150px;
        height: 150px;
        margin-left: auto !important;
        margin-right: auto;
        display: block;
        cursor: pointer
    }

    .login-deshabilitado-item[_ngcontent-nmg-c148] {
        width: 150px;
        height: 150px;
        margin-left: auto !important;
        margin-right: auto;
        display: block;
        padding-bottom: 10rem;
        cursor: pointer
    }

    .header-item_link-negocios[_ngcontent-nmg-c148] {
        background-position-y: -5px
    }

    .header-item_link-mensaje[_ngcontent-nmg-c148] {
        background-position-x: -216px
    }

    .header-item_link-mensaje[_ngcontent-nmg-c148]:hover {
        background-position-x: -6px
    }

    .header-item_link-ayuda[_ngcontent-nmg-c148] {
        background-position-x: -266px
    }

    .header-item_link-ayuda[_ngcontent-nmg-c148]:hover {
        background-position-x: -56px
    }

    .header-item_link-seguridad[_ngcontent-nmg-c148] {
        background-position-x: -315px
    }

    .header-item_link-seguridad[_ngcontent-nmg-c148]:hover {
        background-position-x: -105px
    }

    .header-item_link-form[_ngcontent-nmg-c148] {
        background-position-x: -364px
    }

    .header-item_link-form[_ngcontent-nmg-c148]:hover {
        background-position-x: -154px
    }

    .main[_ngcontent-nmg-c148] {
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
        margin-left: 0;
        margin-bottom: 2vh;
        padding-right: 24px;
        width: -moz-fit-content;
        width: fit-content
    }

    .main-title[_ngcontent-nmg-c148] {
        font-weight: 300;
        color: #424242;
        margin-left: 0;
        margin-bottom: 40px;
        margin-top: 30px;
        font-size: 26px;
        line-height: 1.1
    }

    .main-form[_ngcontent-nmg-c148] {
        max-width: 414px
    }

    .main-form_input[_ngcontent-nmg-c148] {
        display: block;
        width: 100%;
        border: none;
        border-bottom: 1px solid rgba(26, 38, 51, .1);
        margin-bottom: 28px;
        height: 50px;
        font-size: 20px;
        font-family: "Heebo", sans-serif;
        transition: border-bottom-color .4s
    }

    .main-form_input[_ngcontent-nmg-c148]::-moz-placeholder {
        color: #1a263366;
        font-family: "Heebo", sans-serif
    }

    .main-form_input[_ngcontent-nmg-c148]::placeholder {
        color: #1a263366;
        font-family: "Heebo", sans-serif
    }

    .main-form_input[_ngcontent-nmg-c148]::-moz-placeholder {
        color: #1a2633bf;
        font-family: "Heebo", sans-serif
    }

    .main-form_input[_ngcontent-nmg-c148]:focus {
        border-bottom-color: #1a263380;
        outline: none
    }

    .main-form_input-password[_ngcontent-nmg-c148] {
        margin-bottom: 42px
    }

    .main-form_input-error[_ngcontent-nmg-c148] {
        border-bottom-color: #d52b1e;
        color: red
    }

    .main-form_submit[_ngcontent-nmg-c148] {
        border: none;
        background: none;
        -webkit-appearance: none;
        border-radius: 6px;
        box-shadow: 0 1px 1px #1a26331a;
        max-width: 115px;
        width: 100%;
        height: 56px;
        margin-bottom: 30px;
        font-family: "Heebo", sans-serif;
        color: #fff;
        font-size: 18px;
        font-weight: 500;
        transition: background-color .2s
    }

    div#boton[_ngcontent-nmg-c148] {
        float: left;
        max-width: 115px;
        width: 100%
    }

    .footer-login[_ngcontent-nmg-c148] {
        display: flex;
        grid-template-columns: 80px 1fr;
        grid-column-gap: 12px;
        -ms-flex-align: center
    }

    .footer-link[_ngcontent-nmg-c148] {
        font-size: 13px;
        margin-top: 18px;
        color: #1a263380;
        display: inline-block
    }

    .footer-link_inline[_ngcontent-nmg-c148] {
        color: #1a263380;
        display: inline-block
    }

    .footer-img[_ngcontent-nmg-c148] {
        max-width: 65px
    }

    .footer-text[_ngcontent-nmg-c148] {
        font-size: 12px;
        line-height: 1.38;
        color: #1a263380;
        margin-top: 15px
    }

    .footer-text-account-free[_ngcontent-nmg-c148] {
        font-size: 12px;
        line-height: 1.38;
        margin-top: 100px;
        margin-bottom: 10px
    }

    .linkFreeAccount[_ngcontent-nmg-c148] {
        text-decoration: none;
        color: #ee2527
    }

    @supports (display: grid) {
        .link-new[_ngcontent-nmg-c148] {
            bottom: 0
        }

        .link-negocios[_ngcontent-nmg-c148] {
            bottom: 0
        }

        .link-negocios_new[_ngcontent-nmg-c148] {
            margin-top: auto
        }

        .wrapper[_ngcontent-nmg-c148] {
            display: grid;
            grid-template-columns: 45vw 55vw;
            align-items: unset;
            justify-content: unset
        }

        .header-login[_ngcontent-nmg-c148] {
            padding-bottom: 0;
            padding-top: 0
        }

        .footer-login[_ngcontent-nmg-c148] {
            max-width: none;
            grid-template-columns: 80px 1fr
        }

        .footer-negocios[_ngcontent-nmg-c148] {
            align-items: flex-start
        }

        .footer-negocios[_ngcontent-nmg-c148] img[_ngcontent-nmg-c148] {
            margin-top: 8px
        }
    }

    @supports ((-o-object-fit: cover) or (object-fit: cover)) {
        .wrapper-left_img[_ngcontent-nmg-c148] {
            -o-object-fit: cover;
            object-fit: cover;
            width: 100%;
            max-width: 1000px;
            opacity: 1
        }

        .wrapper-left_img.spv-transition[_ngcontent-nmg-c148] {
            transition: opacity .7s ease-in-out
        }

        .wrapper-left_img.spv-hidden[_ngcontent-nmg-c148] {
            opacity: 0;
            pointer-events: none
        }

        .wrapper-left[_ngcontent-nmg-c148] {
            height: unset
        }

        .wrapper-left_img[_ngcontent-nmg-c148]:not(:first-child) {
            display: inline-block
        }
    }

    .footer-container[_ngcontent-nmg-c148] {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start
    }

    @media (max-height: 880px) and (min-width: 768px) {
        .main[_ngcontent-nmg-c148] {
            margin-bottom: 16px;
            margin-top: 40px;
            justify-content: flex-start
        }

        .footer-text[_ngcontent-nmg-c148] {
            margin-top: 0
        }

        .main-title[_ngcontent-nmg-c148] {
            margin-top: 0;
            margin-bottom: 0
        }

        .main-form_input[_ngcontent-nmg-c148] {
            margin-bottom: 16px;
            height: 44px
        }

        .main-form_input-password[_ngcontent-nmg-c148] {
            margin-bottom: 24px
        }

        .main-form_submit[_ngcontent-nmg-c148] {
            margin-bottom: 10px
        }

        .container-login[_ngcontent-nmg-c148] {
            padding-left: 72px;
            padding-right: 72px
        }

        .footer-text-account-free[_ngcontent-nmg-c148] {
            margin-top: 20px;
            margin-bottom: 20px
        }

        @supports (display: grid) {
            .container-login[_ngcontent-nmg-c148] {
                grid-template-rows: 96px 1fr 96px
            }

            .link[_ngcontent-nmg-c148] {
                margin-top: 10px
            }

            .link-new[_ngcontent-nmg-c148] {
                position: relative;
                max-width: 310px;
                margin-bottom: 15px
            }

            .link-negocios_new[_ngcontent-nmg-c148] {
                position: relative;
                max-width: 220px
            }
        }
    }

    @media (max-height: 690px) and (min-width: 768px) {
        .main-form_keyboard[_ngcontent-nmg-c148] {
            float: right;
            margin-top: 12px
        }
    }

    @media (min-width: 1600px) {
        @supports (display: grid) {
            .container-login[_ngcontent-nmg-c148] {
                grid-column-gap: 24px
            }

            .footer-login[_ngcontent-nmg-c148] {
                grid-column-gap: 24px
            }
        }
    }

    @media (max-width: 1440px) {
        .container-login[_ngcontent-nmg-c148] {
            grid-template-columns: 72px 1fr 72px
        }
    }

    @media (max-width: 1440px) and (min-height: 881px) {
        .keyboard[_ngcontent-nmg-c148] {
            left: -120px
        }
    }

    @media (max-width: 1140px) {
        .keyboard[_ngcontent-nmg-c148] {
            left: -130px
        }
    }

    @media (max-width: 1100px) {
        .wrapper[_ngcontent-nmg-c148] {
            grid-template-columns: 38vw 62vw
        }

        .container-login[_ngcontent-nmg-c148] {
            grid-template-columns: 40px 1fr 40px
        }

        .header-logo[_ngcontent-nmg-c148] {
            max-width: 155px
        }
    }

    @media (max-width: 1024px) {
        .link-negocios_new[_ngcontent-nmg-c148] {
            margin-right: 22px
        }
    }

    @media (max-width: 840px) {
        .wrapper[_ngcontent-nmg-c148] {
            grid-template-columns: 1fr
        }

        .wrapper-left[_ngcontent-nmg-c148] {
            display: none
        }

        .container-login[_ngcontent-nmg-c148] {
            padding-left: 32px;
            padding-right: 32px
        }

        .saludo-wrapper[_ngcontent-nmg-c148] {
            max-width: 94vw
        }
    }

    @media (max-width: 767px) {
        .container-login[_ngcontent-nmg-c148] {
            grid-column-gap: 18px;
            grid-template-rows: 96px .95fr 120px;
            grid-template-columns: 12px 1fr 12px;
            padding-left: 32px;
            padding-right: 32px
        }

        .header-logo[_ngcontent-nmg-c148] {
            max-width: 130px
        }

        .header-links_item[_ngcontent-nmg-c148] {
            margin: 0 7px
        }

        .link-negocios[_ngcontent-nmg-c148] {
            flex-direction: column;
            align-items: flex-start;
            position: relative
        }

        .link-negocios_text[_ngcontent-nmg-c148] {
            margin-top: 22px
        }

        .main-title[_ngcontent-nmg-c148] {
            font-size: 24px;
            margin-bottom: 26px
        }

        .main-form_input[_ngcontent-nmg-c148] {
            height: 44px
        }

        .main-form_input-username[_ngcontent-nmg-c148] {
            margin-bottom: 24px
        }

        .main-form_input[_ngcontent-nmg-c148],
        .main-form_submit[_ngcontent-nmg-c148] {
            font-size: 18px
        }

        .link-new[_ngcontent-nmg-c148] {
            margin-top: 24px;
            position: relative;
            bottom: unset;
            cursor: pointer
        }

        .footer-login[_ngcontent-nmg-c148] {
            grid-column-gap: 18px
        }

        .footer-text-account-free[_ngcontent-nmg-c148] {
            margin-top: 20px;
            margin-bottom: 20px
        }
    }

    @media (max-width: 405px) {

        .container-login[_ngcontent-nmg-c148],
        .wrapper[_ngcontent-nmg-c148] {
            height: auto
        }

        .container-login[_ngcontent-nmg-c148] {
            grid-template-rows: 180px .95fr
        }

        .header-login[_ngcontent-nmg-c148] {
            flex-wrap: wrap;
            margin-bottom: 40px
        }

        .main[_ngcontent-nmg-c148] {
            justify-content: flex-start;
            padding-left: 0;
            padding-right: 0;
            margin-bottom: 44px
        }

        .main-title[_ngcontent-nmg-c148] {
            font-size: 22px;
            margin-bottom: 20px
        }

        .main-form_input[_ngcontent-nmg-c148] {
            margin-bottom: 24px
        }

        .main-form_submit[_ngcontent-nmg-c148] {
            height: 46px;
            max-width: 96px
        }

        .footer-login[_ngcontent-nmg-c148] {
            padding-bottom: 30px
        }
    }

    @media (min-width: 690px) {
        .container-login[_ngcontent-nmg-c148] {
            padding-left: 72px;
            padding-right: 72px
        }
    }

    .terminos_label[_ngcontent-nmg-c148] {
        margin-bottom: 15px;
        margin-top: 15px
    }

    .ingresar[_ngcontent-nmg-c148] {
        font-weight: bold;
        font-size: 14px;
        letter-spacing: .3px
    }

    .aceptar[_ngcontent-nmg-c148] {
        font-weight: bold;
        text-decoration: underline
    }

    .checkbox-container[_ngcontent-nmg-c148] {
        display: flex;
        justify-content: start;
        align-items: center
    }

    .checkbox-container[_ngcontent-nmg-c148] span[_ngcontent-nmg-c148] {
        font-size: .8rem
    }

    [_nghost-nmg-c148] .mat-checkbox {
        height: 1.25rem;
        width: 1.25rem;
        margin-right: 10px
    }

    [_nghost-nmg-c148] .mat-checkbox-inner-container-no-side-margin {
        height: 1.25rem;
        width: 1.25rem
    }

    [_nghost-nmg-c148] .mat-checkbox-frame {
        border: 1px solid #707070;
        border-radius: .2rem
    }

    [_nghost-nmg-c148] .mat-checkbox-checked.mat-accent .mat-checkbox-background {
        background-color: #d52b1e
    }

    [_nghost-nmg-c148] .mat-checkbox-checkmark-path {
        stroke: #fff !important
    }

    [_nghost-nmg-c148] .mat-ripple-element {
        background-color: #d52b1e !important
    }

    main[_ngcontent-nmg-c148] {
        overflow: scroll
    }

    .link-button[_ngcontent-nmg-c148] {
        border: solid 1px #d52b1e;
        border-radius: 9px;
        width: 310px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 11px 10px 12px 16px
    }

    .saludo-wrapper[_ngcontent-nmg-c148] {
        max-width: 520px
    }

    @media (max-width: 840px) {
        .saludo-wrapper[_ngcontent-nmg-c148] {
            max-width: 94vw
        }
    }

    [_nghost-nmg-c148] .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix input {
        font-size: 18px
    }

    [_nghost-nmg-c148] .mat-form-field-label>span {
        font-size: 18px !important
    }

    .main-mensaje[_ngcontent-nmg-c148] {
        display: flex;
        justify-content: center;
        align-items: center;
        max-width: 520px;
        margin-bottom: 20px
    }

    .titulo-items[_ngcontent-nmg-c148] {
        text-align: center;
        margin-bottom: 20px
    }

    .mensaje-interno[_ngcontent-nmg-c148] {
        height: -moz-fit-content;
        height: fit-content
    }


    *[_ngcontent-nmg-c142] {
        margin: 0;
        padding: 0
    }

    [_nghost-nmg-c142] {
        max-width: 520px;
        height: 100px;
        display: flex;
        margin-top: 10px
    }

    .header-login[_ngcontent-nmg-c142] {
        width: 100%;
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        padding: 24px 0
    }

    .header-logo_img[_ngcontent-nmg-c142] {
        width: 180px
    }

    .header-links_list[_ngcontent-nmg-c142] {
        list-style-type: none;
        display: flex;
        width: 160px;
        justify-content: space-between
    }

    .header-item_link[_ngcontent-nmg-c142] {
        background-image: url(images/icons.svg);
        background-size: 420px 100px;
        background-position-y: -55px;
        width: 39px;
        height: 39px;
        display: inline-block;
        cursor: pointer
    }

    .header-item_link-ayuda[_ngcontent-nmg-c142] {
        background-position-x: -266px
    }

    .header-item_link-ayuda[_ngcontent-nmg-c142]:hover {
        background-position-x: -56px
    }

    .header-item_link-seguridad[_ngcontent-nmg-c142] {
        background-position-x: -315px
    }

    .header-item_link-seguridad[_ngcontent-nmg-c142]:hover {
        background-position-x: -105px
    }

    .header-item_link-form[_ngcontent-nmg-c142] {
        background-position-x: -364px
    }

    .header-item_link-form[_ngcontent-nmg-c142]:hover {
        background-position-x: -154px
    }

    .cloak[_ngcontent-nmg-c142] {
        border: 0;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px
    }

    .header-links[_ngcontent-nmg-c142] {
        margin-bottom: -15px
    }

    @media (max-width: 840px) {
        .header-logo_img[_ngcontent-nmg-c142] {
            width: 150px
        }

        [_nghost-nmg-c142] {
            max-width: 94vw
        }
    }


    @font-face {
        font-family: text-security-disc, sans-serif;
        src: url(https://raw.githubusercontent.com/noppa/text-security/master/dist/text-security-disc.woff)
    }

    .input-container {
        position: relative;
        margin: 10px 0
    }

    .input-container .mat-form-field {
        width: 100%;
        line-height: 40px
    }

    .input-container .mat-form-field .mat-form-field-wrapper {
        padding: 0
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix {
        position: relative;
        border: none
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix input {
        width: 90%;
        height: 40px;
        padding: 10px 16px;
        border-radius: 6px;
        border-bottom: 1px solid #c7c7c7;
        color: #333;
        font-size: 16px;
        font-weight: 500;
        caret-color: #c7c7c7
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix input.disabled {
        color: #c7c7c7;
        border: 1px solid #ededed
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix input::-moz-placeholder {
        font-family: "Heebo", sans-serif;
        font-size: 16px;
        color: #707070;
        text-transform: none
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix input::placeholder {
        font-family: "Heebo", sans-serif;
        font-size: 16px;
        color: #707070;
        text-transform: none
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix input:focus {
        outline: none !important
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix .icon {
        position: absolute;
        top: 0;
        right: 17px;
        bottom: 0;
        width: 16px;
        margin: auto;
        height: auto;
        background-size: auto
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix .icon.disabled {
        filter: invert(50%) saturate(0%) brightness(150%) contrast(100%)
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix .icon.eye-showed {
        margin-right: 1.2rem !important
    }

    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix .mensaje-error {
        position: absolute;
        right: 0;
        bottom: -10px;
        font-size: 10px;
        font-family: "Heebo", sans-serif;
        line-height: 18px;
        color: #ee2527
    }

    .input-container .mat-form-field .mat-form-field-infix {
        padding-top: 20px;
    }

    .input-container .mat-form-field .mat-form-field-label {
        padding: 0 16px;
        top: 20px;
        transition: transform 0.2s ease, color 0.2s ease;
        transform-origin: left top;
        pointer-events: none;
        line-height: 1.5
    }

    .input-container .mat-form-field .mat-form-field-label span {
        font-family: "Heebo", sans-serif;
        font-size: 16px;
        color: #707070;
        text-transform: none
    }

    /* Angular Material usa la clase mat-form-field-should-float cuando hay valor o foco */
    .input-container .mat-form-field.has-value .mat-form-field-label,
    .input-container .mat-form-field.mat-focused .mat-form-field-label,
    .input-container .mat-form-field.mat-form-field-should-float .mat-form-field-label {
        transform: translateY(-28px) scale(0.75);
        padding: 0 4px;
        top: 20px
    }

    .input-container .mat-form-field.has-value .mat-form-field-label span,
    .input-container .mat-form-field.mat-focused .mat-form-field-label span,
    .input-container .mat-form-field.mat-form-field-should-float .mat-form-field-label span {
        padding: 0 4px;
        font-size: 16px;
        font-weight: 500;
        color: #707070;
        background: #ffffff;
        border-radius: 2px
    }

    .input-container .mat-form-field.has-error .mat-form-field-wrapper .mat-form-field-infix input {
        border: 1px solid #d52b1e;
        color: #d52b1e;
        caret-color: #d52b1e
    }

    .input-container .mat-form-field.has-error .mat-form-field-label span {
        color: #d52b1e
    }

    .input-container .mat-form-field .mat-form-field-underline {
        display: none
    }

    .input-container .mat-list {
        width: 100%;
        padding-top: 0
    }

    .input-container .mat-list .mat-list-item {
        font-size: 12px;
        height: 24px
    }

    .input-container .mat-list .mat-list-item .mat-list-item-content {
        padding: 0 8px
    }

    .input-container .mat-list .mat-list-item .mat-list-item-content .icon {
        padding: 0 12px;
        width: 14px;
        height: 14px
    }

    .mensaje-informativo {
        font-family: Heebo, sans-serif;
        font-size: 14px;
        color: #707070;
        text-align: left !important
    }

    .icon-eye,
    .icon-eye-off {
        cursor: pointer
    }

    @media (max-width: 768px) {
        .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix .mensaje-error {
            font-size: 9px
        }
    }

    .hide-text {
        font-family: text-security-disc, sans-serif;
        -webkit-text-security: disc
    }

    /* Botón ojo para mostrar/ocultar contraseña */
    .eye-toggle-btn {
        position: absolute;
        right: 12px;
        top: 50%;
        transform: translateY(-50%);
        background: none;
        border: none;
        cursor: pointer;
        padding: 4px;
        color: #707070;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 10;
        transition: color 0.2s ease;
        outline: none
    }

    .eye-toggle-btn:hover {
        color: #d52b1e
    }

    .eye-toggle-btn svg {
        width: 20px;
        height: 20px;
        pointer-events: none
    }

    /* Asegurar que el infix tenga position relative para el botón ojo */
    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix {
        position: relative
    }

    /* Dar espacio al input cuando hay botón ojo */
    .input-container .mat-form-field .mat-form-field-wrapper .mat-form-field-infix input.with-eye {
        padding-right: 44px
    }


    .main-form_keyboard[_ngcontent-nmg-c145] {
        background: none;
        border: none;
        cursor: pointer;
        background-image: url(images/keyboard.svg);
        background-repeat: no-repeat;
        background-position-y: center;
        display: block;
        height: 30px;
        margin-bottom: 50px;
        font-family: "Heebo", sans-serif;
        font-size: 20px;
        color: #424242;
        width: 50%
    }

    .keyboard[_ngcontent-nmg-c145] {
        position: absolute;
        z-index: 1;
        background-color: #f9f9f9;
        max-width: 600px;
        display: none;
        left: -65px;
        padding: 48px 30px;
        border-radius: 20px
    }

    .keyboard-show[_ngcontent-nmg-c145] {
        display: inline-block
    }

    .keyboard-key_row[_ngcontent-nmg-c145] {
        display: inline
    }

    .keyboard-key[_ngcontent-nmg-c145],
    .keyboard-key_may[_ngcontent-nmg-c145],
    .keyboard-key_del[_ngcontent-nmg-c145] {
        min-width: 43px;
        margin-bottom: 7px
    }

    .keyboard-key_may[_ngcontent-nmg-c145],
    .keyboard-key_del[_ngcontent-nmg-c145] {
        min-width: 56px
    }

    .keyboard-key[_ngcontent-nmg-c145]:focus {
        border: 1px solid #a7a7a7
    }

    .keyboard-close[_ngcontent-nmg-c145] {
        position: absolute;
        top: 20px;
        right: 20px;
        width: 15px;
        height: 15px;
        background: none;
        border: none;
        cursor: pointer;
        background-image: url(/obi/usuarios/close.03c590ebaee988239429.svg);
        background-repeat: no-repeat
    }

    .keyboard-capitalize[_ngcontent-nmg-c145] {
        text-transform: uppercase
    }

    .keyboard-key[_ngcontent-nmg-c145] {
        background: none;
        border: none;
        cursor: pointer;
        font-family: "Heebo", sans-serif;
        font-size: 24px;
        font-weight: 500;
        color: #424242;
        text-transform: inherit;
        border-radius: 11px;
        background-color: #d8d8d8
    }

    .keyboard-key[_ngcontent-nmg-c145]:hover {
        background-color: #a7a7a7
    }

    .keyboard-key_may[_ngcontent-nmg-c145] {
        background-image: url(/obi/usuarios/capitalize.7e832a9ae7b2ad654870.svg);
        background-repeat: no-repeat;
        background-position: center center
    }

    .keyboard-key_del[_ngcontent-nmg-c145] {
        background-position-y: -6px;
        background-image: url(/obi/usuarios/delete.d7d1ea371e9a7944a03e.svg);
        background-repeat: no-repeat
    }

    .keyboard-key_simple[_ngcontent-nmg-c145] {
        min-width: 43px
    }

    .keyboard-key_large[_ngcontent-nmg-c145] {
        min-width: 150px
    }

    @supports (display: grid) {
        .keyboard[_ngcontent-nmg-c145] {
            grid-template-columns: repeat(10, 43px);
            grid-template-rows: repeat(4, 47px);
            grid-column-gap: 7px;
            grid-row-gap: 12px;
            max-width: none
        }

        .keyboard-show[_ngcontent-nmg-c145] {
            display: grid
        }

        .keyboard-key[_ngcontent-nmg-c145],
        .keyboard-key_may[_ngcontent-nmg-c145],
        .keyboard-key_large[_ngcontent-nmg-c145] {
            margin-bottom: 0;
            min-width: auto
        }

        .keyboard-key_del[_ngcontent-nmg-c145] {
            background-position-y: center
        }

        .keyboard-key_row[_ngcontent-nmg-c145] {
            grid-column: 1/-1;
            display: grid;
            grid-template-columns: 69px repeat(7, 43px) 69px;
            grid-template-rows: 47px;
            grid-column-gap: 7px
        }

        .keyboard-key_row-special[_ngcontent-nmg-c145] {
            grid-column: 1/-1;
            display: grid;
            grid-template-columns: 43px repeat(8, 43px) 43px;
            grid-template-rows: 47px;
            grid-column-gap: 7px;
            justify-content: center
        }

        .keyboard-key_row-special[_ngcontent-nmg-c145] .keyboard-key_large[_ngcontent-nmg-c145] {
            grid-column: span 4
        }

        .keyboard-key[_ngcontent-nmg-c145]:focus {
            outline: none;
            border: none;
            box-shadow: inset 0 0 0 2px #a7a7a7
        }
    }

    @media (max-height: 880px) and (min-width: 768px) {
        .main-form_keyboard[_ngcontent-nmg-c145] {
            margin-bottom: 24px;
            font-size: 18px
        }

        .container-login[_ngcontent-nmg-c145] {
            display: block
        }

        .keyboard[_ngcontent-nmg-c145] {
            left: -12px
        }

        .keyboard-key[_ngcontent-nmg-c145] {
            font-size: 22px
        }

        .keyboard-close[_ngcontent-nmg-c145] {
            top: 12px;
            right: 12px;
            width: 12px;
            height: 12px;
            background-size: cover
        }

        @supports (display: grid) {
            .keyboard[_ngcontent-nmg-c145] {
                grid-template-columns: repeat(10, 36px);
                grid-template-rows: repeat(4, 36px);
                grid-column-gap: 6px;
                grid-row-gap: 6px;
                padding: 33px 20px;
                margin-bottom: 5px
            }

            .keyboard-key_row[_ngcontent-nmg-c145] {
                grid-template-columns: 63px repeat(7, 36px) 56px;
                grid-template-rows: 36px;
                grid-column-gap: 6px
            }

            .keyboard-key_row-special[_ngcontent-nmg-c145] {
                grid-template-columns: repeat(7, 36px);
                grid-template-rows: 36px;
                grid-column-gap: 6px;
                justify-content: center
            }

            .keyboard-key_row-special[_ngcontent-nmg-c145] .keyboard-key_large[_ngcontent-nmg-c145] {
                grid-column: span 3
            }

            .keyboard-key[_ngcontent-nmg-c145],
            .keyboard-key_may[_ngcontent-nmg-c145],
            .keyboard-key_del[_ngcontent-nmg-c145] {
                min-width: 36px
            }

            .keyboard-key_may[_ngcontent-nmg-c145],
            .keyboard-key_del[_ngcontent-nmg-c145] {
                min-width: 48px;
                background-position-x: center
            }
        }
    }

    @media (max-height: 690px) and (min-width: 768px) {
        .main-form_keyboard[_ngcontent-nmg-c145] {
            float: right;
            margin-top: 12px
        }
    }

    @media (max-width: 1440px) and (min-height: 881px) {
        .keyboard[_ngcontent-nmg-c145] {
            left: -120px
        }
    }

    @media (max-width: 1140px) {
        .keyboard[_ngcontent-nmg-c145] {
            left: -130px
        }
    }

    @media (max-width: 1024px) {

        .main-form_keyboard[_ngcontent-nmg-c145],
        .keyboard[_ngcontent-nmg-c145] {
            display: none
        }
    }


    [_nghost-nmg-c146] .boton[_ngcontent-nmg-c146] {
        height: 50px;
        padding: 0 26px;
        background: #d52b1e;
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 500;
        letter-spacing: .1px;
        line-height: 18px;
        min-width: 120px
    }

    [_nghost-nmg-c146] .boton.secundario[_ngcontent-nmg-c146] {
        color: #d52b1e;
        background: transparent
    }

    [_nghost-nmg-c146] .boton.secundario[_ngcontent-nmg-c146]:focus {
        background: transparent
    }

    [_nghost-nmg-c146] .boton[_ngcontent-nmg-c146]:disabled {
        color: #c7c7c7;
        background: #ededed;
        box-shadow: none
    }

    [_nghost-nmg-c146] .boton[_ngcontent-nmg-c146]:focus {
        background: #bc261a
    }

    [_nghost-nmg-c146] .boton[_ngcontent-nmg-c146] .icon.icon-spinner[_ngcontent-nmg-c146] {
        filter: brightness(150%) contrast(100%)
    }

    [_nghost-nmg-c146] .boton[_ngcontent-nmg-c146] .icon.spin[_ngcontent-nmg-c146] {
        animation-name: spin;
        animation-duration: 1.5s;
        animation-iteration-count: infinite;
        animation-timing-function: linear
    }

    [_nghost-nmg-c146] .boton.cargando[_ngcontent-nmg-c146] {
        pointer-events: none
    }

    @keyframes spin {
        0% {
            transform: rotate(0)
        }

        to {
            transform: rotate(360deg)
        }
    }

    @media (max-width: 768px) {
        [_nghost-nmg-c146] .boton[_ngcontent-nmg-c146] {
            width: 100%
        }
    }


    .mat-subheader {
        display: flex;
        box-sizing: border-box;
        padding: 16px;
        align-items: center
    }

    .mat-list-base .mat-subheader {
        margin: 0
    }

    .mat-list-base {
        padding-top: 8px;
        display: block;
        -webkit-tap-highlight-color: transparent
    }

    .mat-list-base .mat-subheader {
        height: 48px;
        line-height: 16px
    }

    .mat-list-base .mat-subheader:first-child {
        margin-top: -8px
    }

    .mat-list-base .mat-list-item,
    .mat-list-base .mat-list-option {
        display: block;
        height: 48px;
        -webkit-tap-highlight-color: transparent;
        width: 100%;
        padding: 0
    }

    .mat-list-base .mat-list-item .mat-list-item-content,
    .mat-list-base .mat-list-option .mat-list-item-content {
        display: flex;
        flex-direction: row;
        align-items: center;
        box-sizing: border-box;
        padding: 0 16px;
        position: relative;
        height: inherit
    }

    .mat-list-base .mat-list-item .mat-list-item-content-reverse,
    .mat-list-base .mat-list-option .mat-list-item-content-reverse {
        display: flex;
        align-items: center;
        padding: 0 16px;
        flex-direction: row-reverse;
        justify-content: space-around
    }

    .mat-list-base .mat-list-item .mat-list-item-ripple,
    .mat-list-base .mat-list-option .mat-list-item-ripple {
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        position: absolute;
        pointer-events: none
    }

    .mat-list-base .mat-list-item.mat-list-item-with-avatar,
    .mat-list-base .mat-list-option.mat-list-item-with-avatar {
        height: 56px
    }

    .mat-list-base .mat-list-item.mat-2-line,
    .mat-list-base .mat-list-option.mat-2-line {
        height: 72px
    }

    .mat-list-base .mat-list-item.mat-3-line,
    .mat-list-base .mat-list-option.mat-3-line {
        height: 88px
    }

    .mat-list-base .mat-list-item.mat-multi-line,
    .mat-list-base .mat-list-option.mat-multi-line {
        height: auto
    }

    .mat-list-base .mat-list-item.mat-multi-line .mat-list-item-content,
    .mat-list-base .mat-list-option.mat-multi-line .mat-list-item-content {
        padding-top: 16px;
        padding-bottom: 16px
    }

    .mat-list-base .mat-list-item .mat-list-text,
    .mat-list-base .mat-list-option .mat-list-text {
        display: flex;
        flex-direction: column;
        flex: auto;
        box-sizing: border-box;
        overflow: hidden;
        padding: 0
    }

    .mat-list-base .mat-list-item .mat-list-text>*,
    .mat-list-base .mat-list-option .mat-list-text>* {
        margin: 0;
        padding: 0;
        font-weight: normal;
        font-size: inherit
    }

    .mat-list-base .mat-list-item .mat-list-text:empty,
    .mat-list-base .mat-list-option .mat-list-text:empty {
        display: none
    }

    .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,
    .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,
    .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,
    .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text {
        padding-right: 0;
        padding-left: 16px
    }

    [dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,
    [dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,
    [dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,
    [dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text {
        padding-right: 16px;
        padding-left: 0
    }

    .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text {
        padding-left: 0;
        padding-right: 16px
    }

    [dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,
    [dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,
    [dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,
    [dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text {
        padding-right: 0;
        padding-left: 16px
    }

    .mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,
    .mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text {
        padding-right: 16px;
        padding-left: 16px
    }

    .mat-list-base .mat-list-item .mat-list-avatar,
    .mat-list-base .mat-list-option .mat-list-avatar {
        flex-shrink: 0;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        object-fit: cover
    }

    .mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,
    .mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset {
        margin-left: 72px;
        width: calc(100% - 72px)
    }

    [dir=rtl] .mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,
    [dir=rtl] .mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset {
        margin-left: auto;
        margin-right: 72px
    }

    .mat-list-base .mat-list-item .mat-list-icon,
    .mat-list-base .mat-list-option .mat-list-icon {
        flex-shrink: 0;
        width: 24px;
        height: 24px;
        font-size: 24px;
        box-sizing: content-box;
        border-radius: 50%;
        padding: 4px
    }

    .mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,
    .mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset {
        margin-left: 64px;
        width: calc(100% - 64px)
    }

    [dir=rtl] .mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,
    [dir=rtl] .mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset {
        margin-left: auto;
        margin-right: 64px
    }

    .mat-list-base .mat-list-item .mat-divider,
    .mat-list-base .mat-list-option .mat-divider {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        margin: 0
    }

    [dir=rtl] .mat-list-base .mat-list-item .mat-divider,
    [dir=rtl] .mat-list-base .mat-list-option .mat-divider {
        margin-left: auto;
        margin-right: 0
    }

    .mat-list-base .mat-list-item .mat-divider.mat-divider-inset,
    .mat-list-base .mat-list-option .mat-divider.mat-divider-inset {
        position: absolute
    }

    .mat-list-base[dense] {
        padding-top: 4px;
        display: block
    }

    .mat-list-base[dense] .mat-subheader {
        height: 40px;
        line-height: 8px
    }

    .mat-list-base[dense] .mat-subheader:first-child {
        margin-top: -4px
    }

    .mat-list-base[dense] .mat-list-item,
    .mat-list-base[dense] .mat-list-option {
        display: block;
        height: 40px;
        -webkit-tap-highlight-color: transparent;
        width: 100%;
        padding: 0
    }

    .mat-list-base[dense] .mat-list-item .mat-list-item-content,
    .mat-list-base[dense] .mat-list-option .mat-list-item-content {
        display: flex;
        flex-direction: row;
        align-items: center;
        box-sizing: border-box;
        padding: 0 16px;
        position: relative;
        height: inherit
    }

    .mat-list-base[dense] .mat-list-item .mat-list-item-content-reverse,
    .mat-list-base[dense] .mat-list-option .mat-list-item-content-reverse {
        display: flex;
        align-items: center;
        padding: 0 16px;
        flex-direction: row-reverse;
        justify-content: space-around
    }

    .mat-list-base[dense] .mat-list-item .mat-list-item-ripple,
    .mat-list-base[dense] .mat-list-option .mat-list-item-ripple {
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        position: absolute;
        pointer-events: none
    }

    .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar,
    .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar {
        height: 48px
    }

    .mat-list-base[dense] .mat-list-item.mat-2-line,
    .mat-list-base[dense] .mat-list-option.mat-2-line {
        height: 60px
    }

    .mat-list-base[dense] .mat-list-item.mat-3-line,
    .mat-list-base[dense] .mat-list-option.mat-3-line {
        height: 76px
    }

    .mat-list-base[dense] .mat-list-item.mat-multi-line,
    .mat-list-base[dense] .mat-list-option.mat-multi-line {
        height: auto
    }

    .mat-list-base[dense] .mat-list-item.mat-multi-line .mat-list-item-content,
    .mat-list-base[dense] .mat-list-option.mat-multi-line .mat-list-item-content {
        padding-top: 16px;
        padding-bottom: 16px
    }

    .mat-list-base[dense] .mat-list-item .mat-list-text,
    .mat-list-base[dense] .mat-list-option .mat-list-text {
        display: flex;
        flex-direction: column;
        flex: auto;
        box-sizing: border-box;
        overflow: hidden;
        padding: 0
    }

    .mat-list-base[dense] .mat-list-item .mat-list-text>*,
    .mat-list-base[dense] .mat-list-option .mat-list-text>* {
        margin: 0;
        padding: 0;
        font-weight: normal;
        font-size: inherit
    }

    .mat-list-base[dense] .mat-list-item .mat-list-text:empty,
    .mat-list-base[dense] .mat-list-option .mat-list-text:empty {
        display: none
    }

    .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,
    .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,
    .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,
    .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text {
        padding-right: 0;
        padding-left: 16px
    }

    [dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,
    [dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,
    [dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,
    [dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text {
        padding-right: 16px;
        padding-left: 0
    }

    .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text {
        padding-left: 0;
        padding-right: 16px
    }

    [dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,
    [dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,
    [dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,
    [dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text {
        padding-right: 0;
        padding-left: 16px
    }

    .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,
    .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,
    .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text {
        padding-right: 16px;
        padding-left: 16px
    }

    .mat-list-base[dense] .mat-list-item .mat-list-avatar,
    .mat-list-base[dense] .mat-list-option .mat-list-avatar {
        flex-shrink: 0;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        object-fit: cover
    }

    .mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,
    .mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset {
        margin-left: 68px;
        width: calc(100% - 68px)
    }

    [dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,
    [dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset {
        margin-left: auto;
        margin-right: 68px
    }

    .mat-list-base[dense] .mat-list-item .mat-list-icon,
    .mat-list-base[dense] .mat-list-option .mat-list-icon {
        flex-shrink: 0;
        width: 20px;
        height: 20px;
        font-size: 20px;
        box-sizing: content-box;
        border-radius: 50%;
        padding: 4px
    }

    .mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,
    .mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset {
        margin-left: 60px;
        width: calc(100% - 60px)
    }

    [dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,
    [dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset {
        margin-left: auto;
        margin-right: 60px
    }

    .mat-list-base[dense] .mat-list-item .mat-divider,
    .mat-list-base[dense] .mat-list-option .mat-divider {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        margin: 0
    }

    [dir=rtl] .mat-list-base[dense] .mat-list-item .mat-divider,
    [dir=rtl] .mat-list-base[dense] .mat-list-option .mat-divider {
        margin-left: auto;
        margin-right: 0
    }

    .mat-list-base[dense] .mat-list-item .mat-divider.mat-divider-inset,
    .mat-list-base[dense] .mat-list-option .mat-divider.mat-divider-inset {
        position: absolute
    }

    .mat-nav-list a {
        text-decoration: none;
        color: inherit
    }

    .mat-nav-list .mat-list-item {
        cursor: pointer;
        outline: none
    }

    mat-action-list button {
        background: none;
        color: inherit;
        border: none;
        font: inherit;
        outline: inherit;
        -webkit-tap-highlight-color: transparent;
        text-align: left
    }

    [dir=rtl] mat-action-list button {
        text-align: right
    }

    mat-action-list button::-moz-focus-inner {
        border: 0
    }

    mat-action-list .mat-list-item {
        cursor: pointer;
        outline: inherit
    }

    .mat-list-option:not(.mat-list-item-disabled) {
        cursor: pointer;
        outline: none
    }

    .mat-list-item-disabled {
        pointer-events: none
    }

    .cdk-high-contrast-active .mat-list-item-disabled {
        opacity: .5
    }

    .cdk-high-contrast-active :host .mat-list-item-disabled {
        opacity: .5
    }

    .cdk-high-contrast-active .mat-selection-list:focus {
        outline-style: dotted
    }

    .cdk-high-contrast-active .mat-list-option:hover,
    .cdk-high-contrast-active .mat-list-option:focus,
    .cdk-high-contrast-active .mat-nav-list .mat-list-item:hover,
    .cdk-high-contrast-active .mat-nav-list .mat-list-item:focus,
    .cdk-high-contrast-active mat-action-list .mat-list-item:hover,
    .cdk-high-contrast-active mat-action-list .mat-list-item:focus {
        outline: dotted 1px;
        z-index: 1
    }

    .cdk-high-contrast-active .mat-list-single-selected-option::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 16px;
        transform: translateY(-50%);
        width: 10px;
        height: 0;
        border-bottom: solid 10px;
        border-radius: 10px
    }

    .cdk-high-contrast-active [dir=rtl] .mat-list-single-selected-option::after {
        right: auto;
        left: 16px
    }

    @media(hover: none) {

        .mat-list-option:not(.mat-list-single-selected-option):not(.mat-list-item-disabled):hover,
        .mat-nav-list .mat-list-item:not(.mat-list-item-disabled):hover,
        .mat-action-list .mat-list-item:not(.mat-list-item-disabled):hover {
            background: none
        }
    }


    @keyframes mat-checkbox-fade-in-background {
        0% {
            opacity: 0
        }

        50% {
            opacity: 1
        }
    }

    @keyframes mat-checkbox-fade-out-background {

        0%,
        50% {
            opacity: 1
        }

        100% {
            opacity: 0
        }
    }

    @keyframes mat-checkbox-unchecked-checked-checkmark-path {

        0%,
        50% {
            stroke-dashoffset: 22.910259
        }

        50% {
            animation-timing-function: cubic-bezier(0, 0, 0.2, 0.1)
        }

        100% {
            stroke-dashoffset: 0
        }
    }

    @keyframes mat-checkbox-unchecked-indeterminate-mixedmark {

        0%,
        68.2% {
            transform: scaleX(0)
        }

        68.2% {
            animation-timing-function: cubic-bezier(0, 0, 0, 1)
        }

        100% {
            transform: scaleX(1)
        }
    }

    @keyframes mat-checkbox-checked-unchecked-checkmark-path {
        from {
            animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
            stroke-dashoffset: 0
        }

        to {
            stroke-dashoffset: -22.910259
        }
    }

    @keyframes mat-checkbox-checked-indeterminate-checkmark {
        from {
            animation-timing-function: cubic-bezier(0, 0, 0.2, 0.1);
            opacity: 1;
            transform: rotate(0deg)
        }

        to {
            opacity: 0;
            transform: rotate(45deg)
        }
    }

    @keyframes mat-checkbox-indeterminate-checked-checkmark {
        from {
            animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
            opacity: 0;
            transform: rotate(45deg)
        }

        to {
            opacity: 1;
            transform: rotate(360deg)
        }
    }

    @keyframes mat-checkbox-checked-indeterminate-mixedmark {
        from {
            animation-timing-function: cubic-bezier(0, 0, 0.2, 0.1);
            opacity: 0;
            transform: rotate(-45deg)
        }

        to {
            opacity: 1;
            transform: rotate(0deg)
        }
    }

    @keyframes mat-checkbox-indeterminate-checked-mixedmark {
        from {
            animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
            opacity: 1;
            transform: rotate(0deg)
        }

        to {
            opacity: 0;
            transform: rotate(315deg)
        }
    }

    @keyframes mat-checkbox-indeterminate-unchecked-mixedmark {
        0% {
            animation-timing-function: linear;
            opacity: 1;
            transform: scaleX(1)
        }

        32.8%,
        100% {
            opacity: 0;
            transform: scaleX(0)
        }
    }

    .mat-checkbox-background,
    .mat-checkbox-frame {
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        position: absolute;
        border-radius: 2px;
        box-sizing: border-box;
        pointer-events: none
    }

    .mat-checkbox {
        display: inline-block;
        transition: background 400ms cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
        cursor: pointer;
        -webkit-tap-highlight-color: transparent
    }

    ._mat-animation-noopable.mat-checkbox {
        transition: none;
        animation: none
    }

    .mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple) {
        opacity: .16
    }

    .mat-checkbox .mat-checkbox-ripple {
        position: absolute;
        left: calc(50% - 20px);
        top: calc(50% - 20px);
        height: 40px;
        width: 40px;
        z-index: 1;
        pointer-events: none
    }

    .cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple {
        outline: solid 3px
    }

    .mat-checkbox-layout {
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        cursor: inherit;
        align-items: baseline;
        vertical-align: middle;
        display: inline-flex;
        white-space: nowrap
    }

    .mat-checkbox-label {
        -webkit-user-select: auto;
        -moz-user-select: auto;
        -ms-user-select: auto;
        user-select: auto
    }

    .mat-checkbox-inner-container {
        display: inline-block;
        height: 16px;
        line-height: 0;
        margin: auto;
        margin-right: 8px;
        order: 0;
        position: relative;
        vertical-align: middle;
        white-space: nowrap;
        width: 16px;
        flex-shrink: 0
    }

    [dir=rtl] .mat-checkbox-inner-container {
        margin-left: 8px;
        margin-right: auto
    }

    .mat-checkbox-inner-container-no-side-margin {
        margin-left: 0;
        margin-right: 0
    }

    .mat-checkbox-frame {
        background-color: transparent;
        transition: border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);
        border-width: 2px;
        border-style: solid
    }

    ._mat-animation-noopable .mat-checkbox-frame {
        transition: none
    }

    .mat-checkbox-background {
        align-items: center;
        display: inline-flex;
        justify-content: center;
        transition: background-color 90ms cubic-bezier(0, 0, 0.2, 0.1), opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);
        -webkit-print-color-adjust: exact;
        color-adjust: exact
    }

    ._mat-animation-noopable .mat-checkbox-background {
        transition: none
    }

    .cdk-high-contrast-active .mat-checkbox .mat-checkbox-background {
        background: none
    }

    .mat-checkbox-persistent-ripple {
        display: block;
        width: 100%;
        height: 100%;
        transform: none
    }

    .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple {
        opacity: .04
    }

    .mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple {
        opacity: .12
    }

    .mat-checkbox-persistent-ripple,
    .mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple {
        opacity: 0
    }

    @media(hover: none) {
        .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple {
            display: none
        }
    }

    .mat-checkbox-checkmark {
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        position: absolute;
        width: 100%
    }

    .mat-checkbox-checkmark-path {
        stroke-dashoffset: 22.910259;
        stroke-dasharray: 22.910259;
        stroke-width: 2.1333333333px
    }

    .cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path {
        stroke: #000 !important
    }

    .mat-checkbox-mixedmark {
        width: calc(100% - 6px);
        height: 2px;
        opacity: 0;
        transform: scaleX(0) rotate(0deg);
        border-radius: 2px
    }

    .cdk-high-contrast-active .mat-checkbox-mixedmark {
        height: 0;
        border-top: solid 2px;
        margin-top: 2px
    }

    .mat-checkbox-label-before .mat-checkbox-inner-container {
        order: 1;
        margin-left: 8px;
        margin-right: auto
    }

    [dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container {
        margin-left: auto;
        margin-right: 8px
    }

    .mat-checkbox-checked .mat-checkbox-checkmark {
        opacity: 1
    }

    .mat-checkbox-checked .mat-checkbox-checkmark-path {
        stroke-dashoffset: 0
    }

    .mat-checkbox-checked .mat-checkbox-mixedmark {
        transform: scaleX(1) rotate(-45deg)
    }

    .mat-checkbox-indeterminate .mat-checkbox-checkmark {
        opacity: 0;
        transform: rotate(45deg)
    }

    .mat-checkbox-indeterminate .mat-checkbox-checkmark-path {
        stroke-dashoffset: 0
    }

    .mat-checkbox-indeterminate .mat-checkbox-mixedmark {
        opacity: 1;
        transform: scaleX(1) rotate(0deg)
    }

    .mat-checkbox-unchecked .mat-checkbox-background {
        background-color: transparent
    }

    .mat-checkbox-disabled {
        cursor: default
    }

    .cdk-high-contrast-active .mat-checkbox-disabled {
        opacity: .5
    }

    .mat-checkbox-anim-unchecked-checked .mat-checkbox-background {
        animation: 180ms linear 0ms mat-checkbox-fade-in-background
    }

    .mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path {
        animation: 180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path
    }

    .mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background {
        animation: 180ms linear 0ms mat-checkbox-fade-in-background
    }

    .mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark {
        animation: 90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark
    }

    .mat-checkbox-anim-checked-unchecked .mat-checkbox-background {
        animation: 180ms linear 0ms mat-checkbox-fade-out-background
    }

    .mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path {
        animation: 90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path
    }

    .mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark {
        animation: 90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark
    }

    .mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark {
        animation: 90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark
    }

    .mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark {
        animation: 500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark
    }

    .mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark {
        animation: 500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark
    }

    .mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background {
        animation: 180ms linear 0ms mat-checkbox-fade-out-background
    }

    .mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark {
        animation: 300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark
    }

    .mat-checkbox-input {
        bottom: 0;
        left: 50%
    }


    .mat-form-field {
        display: inline-block;
        position: relative;
        text-align: left
    }

    [dir=rtl] .mat-form-field {
        text-align: right
    }

    .mat-form-field-wrapper {
        position: relative
    }

    .mat-form-field-flex {
        display: inline-flex;
        align-items: baseline;
        box-sizing: border-box;
        width: 100%
    }

    .mat-form-field-prefix,
    .mat-form-field-suffix {
        white-space: nowrap;
        flex: none;
        position: relative
    }

    .mat-form-field-infix {
        display: block;
        position: relative;
        flex: auto;
        min-width: 0;
        width: 180px
    }

    .cdk-high-contrast-active .mat-form-field-infix {
        border-image: linear-gradient(transparent, transparent)
    }

    .mat-form-field-label-wrapper {
        position: absolute;
        left: 0;
        box-sizing: content-box;
        width: 100%;
        height: 100%;
        overflow: hidden;
        pointer-events: none
    }

    [dir=rtl] .mat-form-field-label-wrapper {
        left: auto;
        right: 0
    }

    .mat-form-field-label {
        position: absolute;
        left: 0;
        font: inherit;
        pointer-events: none;
        width: 100%;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        transform-origin: 0 0;
        transition: transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1), color 400ms cubic-bezier(0.25, 0.8, 0.25, 1), width 400ms cubic-bezier(0.25, 0.8, 0.25, 1);
        display: none
    }

    [dir=rtl] .mat-form-field-label {
        transform-origin: 100% 0;
        left: auto;
        right: 0
    }

    .mat-form-field-empty.mat-form-field-label,
    .mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label {
        display: block
    }

    .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label {
        display: none
    }

    .mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label {
        display: block;
        transition: none
    }

    .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label,
    .mat-input-server[placeholder]:not(:placeholder-shown)+.mat-form-field-label-wrapper .mat-form-field-label {
        display: none
    }

    .mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label,
    .mat-form-field-can-float .mat-input-server[placeholder]:not(:placeholder-shown)+.mat-form-field-label-wrapper .mat-form-field-label {
        display: block
    }

    .mat-form-field-label:not(.mat-form-field-empty) {
        transition: none
    }

    .mat-form-field-underline {
        position: absolute;
        width: 100%;
        pointer-events: none;
        transform: scale3d(1, 1.0001, 1)
    }

    .mat-form-field-ripple {
        position: absolute;
        left: 0;
        width: 100%;
        transform-origin: 50%;
        transform: scaleX(0.5);
        opacity: 0;
        transition: background-color 300ms cubic-bezier(0.55, 0, 0.55, 0.2)
    }

    .mat-form-field.mat-focused .mat-form-field-ripple,
    .mat-form-field.mat-form-field-invalid .mat-form-field-ripple {
        opacity: 1;
        transform: none;
        transition: transform 300ms cubic-bezier(0.25, 0.8, 0.25, 1), opacity 100ms cubic-bezier(0.25, 0.8, 0.25, 1), background-color 300ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-form-field-subscript-wrapper {
        position: absolute;
        box-sizing: border-box;
        width: 100%;
        overflow: hidden
    }

    .mat-form-field-subscript-wrapper .mat-icon,
    .mat-form-field-label-wrapper .mat-icon {
        width: 1em;
        height: 1em;
        font-size: inherit;
        vertical-align: baseline
    }

    .mat-form-field-hint-wrapper {
        display: flex
    }

    .mat-form-field-hint-spacer {
        flex: 1 0 1em
    }

    .mat-error {
        display: block
    }

    .mat-form-field-control-wrapper {
        position: relative
    }

    .mat-form-field-hint-end {
        order: 1
    }

    .mat-form-field._mat-animation-noopable .mat-form-field-label,
    .mat-form-field._mat-animation-noopable .mat-form-field-ripple {
        transition: none
    }


    .mat-form-field-appearance-fill .mat-form-field-flex {
        border-radius: 4px 4px 0 0;
        padding: .75em .75em 0 .75em
    }

    .cdk-high-contrast-active .mat-form-field-appearance-fill .mat-form-field-flex {
        outline: solid 1px
    }

    .cdk-high-contrast-active .mat-form-field-appearance-fill.mat-focused .mat-form-field-flex {
        outline: dashed 3px
    }

    .mat-form-field-appearance-fill .mat-form-field-underline::before {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        height: 1px;
        width: 100%
    }

    .mat-form-field-appearance-fill .mat-form-field-ripple {
        bottom: 0;
        height: 2px
    }

    .cdk-high-contrast-active .mat-form-field-appearance-fill .mat-form-field-ripple {
        height: 0
    }

    .mat-form-field-appearance-fill:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple {
        opacity: 1;
        transform: none;
        transition: opacity 600ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-form-field-appearance-fill._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple {
        transition: none
    }

    .mat-form-field-appearance-fill .mat-form-field-subscript-wrapper {
        padding: 0 1em
    }


    .mat-input-element {
        font: inherit;
        background: transparent;
        color: currentColor;
        border: none;
        outline: none;
        padding: 0;
        margin: 0;
        width: 100%;
        max-width: 100%;
        vertical-align: bottom;
        text-align: inherit;
        box-sizing: content-box
    }

    .mat-input-element:-moz-ui-invalid {
        box-shadow: none
    }

    .mat-input-element::-ms-clear,
    .mat-input-element::-ms-reveal {
        display: none
    }

    .mat-input-element,
    .mat-input-element::-webkit-search-cancel-button,
    .mat-input-element::-webkit-search-decoration,
    .mat-input-element::-webkit-search-results-button,
    .mat-input-element::-webkit-search-results-decoration {
        -webkit-appearance: none
    }

    .mat-input-element::-webkit-contacts-auto-fill-button,
    .mat-input-element::-webkit-caps-lock-indicator,
    .mat-input-element:not([type=password])::-webkit-credentials-auto-fill-button {
        visibility: hidden
    }

    .mat-input-element[type=date],
    .mat-input-element[type=datetime],
    .mat-input-element[type=datetime-local],
    .mat-input-element[type=month],
    .mat-input-element[type=week],
    .mat-input-element[type=time] {
        line-height: 1
    }

    .mat-input-element[type=date]::after,
    .mat-input-element[type=datetime]::after,
    .mat-input-element[type=datetime-local]::after,
    .mat-input-element[type=month]::after,
    .mat-input-element[type=week]::after,
    .mat-input-element[type=time]::after {
        content: " ";
        white-space: pre;
        width: 1px
    }

    .mat-input-element::-webkit-inner-spin-button,
    .mat-input-element::-webkit-calendar-picker-indicator,
    .mat-input-element::-webkit-clear-button {
        font-size: .75em
    }

    .mat-input-element::placeholder {
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        transition: color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-input-element::placeholder:-ms-input-placeholder {
        -ms-user-select: text
    }

    .mat-input-element::-moz-placeholder {
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        transition: color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-input-element::-moz-placeholder:-ms-input-placeholder {
        -ms-user-select: text
    }

    .mat-input-element::-webkit-input-placeholder {
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        transition: color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-input-element::-webkit-input-placeholder:-ms-input-placeholder {
        -ms-user-select: text
    }

    .mat-input-element:-ms-input-placeholder {
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        transition: color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-input-element:-ms-input-placeholder:-ms-input-placeholder {
        -ms-user-select: text
    }

    .mat-form-field-hide-placeholder .mat-input-element::placeholder {
        color: transparent !important;
        -webkit-text-fill-color: transparent;
        transition: none
    }

    .cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-input-element::placeholder {
        opacity: 0
    }

    .mat-form-field-hide-placeholder .mat-input-element::-moz-placeholder {
        color: transparent !important;
        -webkit-text-fill-color: transparent;
        transition: none
    }

    .cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-input-element::-moz-placeholder {
        opacity: 0
    }

    .mat-form-field-hide-placeholder .mat-input-element::-webkit-input-placeholder {
        color: transparent !important;
        -webkit-text-fill-color: transparent;
        transition: none
    }

    .cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-input-element::-webkit-input-placeholder {
        opacity: 0
    }

    .mat-form-field-hide-placeholder .mat-input-element:-ms-input-placeholder {
        color: transparent !important;
        -webkit-text-fill-color: transparent;
        transition: none
    }

    .cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-input-element:-ms-input-placeholder {
        opacity: 0
    }

    textarea.mat-input-element {
        resize: vertical;
        overflow: auto
    }

    textarea.mat-input-element.cdk-textarea-autosize {
        resize: none
    }

    textarea.mat-input-element {
        padding: 2px 0;
        margin: -2px 0
    }

    select.mat-input-element {
        -moz-appearance: none;
        -webkit-appearance: none;
        position: relative;
        background-color: transparent;
        display: inline-flex;
        box-sizing: border-box;
        padding-top: 1em;
        top: -1em;
        margin-bottom: -1em
    }

    select.mat-input-element::-ms-expand {
        display: none
    }

    select.mat-input-element::-moz-focus-inner {
        border: 0
    }

    select.mat-input-element:not(:disabled) {
        cursor: pointer
    }

    select.mat-input-element::-ms-value {
        color: inherit;
        background: none
    }

    .mat-focused .cdk-high-contrast-active select.mat-input-element::-ms-value {
        color: inherit
    }

    .mat-form-field-type-mat-native-select .mat-form-field-infix::after {
        content: "";
        width: 0;
        height: 0;
        border-left: 5px solid transparent;
        border-right: 5px solid transparent;
        border-top: 5px solid;
        position: absolute;
        top: 50%;
        right: 0;
        margin-top: -2.5px;
        pointer-events: none
    }

    [dir=rtl] .mat-form-field-type-mat-native-select .mat-form-field-infix::after {
        right: auto;
        left: 0
    }

    .mat-form-field-type-mat-native-select .mat-input-element {
        padding-right: 15px
    }

    [dir=rtl] .mat-form-field-type-mat-native-select .mat-input-element {
        padding-right: 0;
        padding-left: 15px
    }

    .mat-form-field-type-mat-native-select .mat-form-field-label-wrapper {
        max-width: calc(100% - 10px)
    }

    .mat-form-field-type-mat-native-select.mat-form-field-appearance-outline .mat-form-field-infix::after {
        margin-top: -5px
    }

    .mat-form-field-type-mat-native-select.mat-form-field-appearance-fill .mat-form-field-infix::after {
        margin-top: -10px
    }


    .mat-form-field-appearance-legacy .mat-form-field-label {
        transform: perspective(100px);
        -ms-transform: none
    }

    .mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon,
    .mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon {
        width: 1em
    }

    .mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon-button,
    .mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon-button {
        font: inherit;
        vertical-align: baseline
    }

    .mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon-button .mat-icon,
    .mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon-button .mat-icon {
        font-size: inherit
    }

    .mat-form-field-appearance-legacy .mat-form-field-underline {
        height: 1px
    }

    .cdk-high-contrast-active .mat-form-field-appearance-legacy .mat-form-field-underline {
        height: 0;
        border-top: solid 1px
    }

    .mat-form-field-appearance-legacy .mat-form-field-ripple {
        top: 0;
        height: 2px;
        overflow: hidden
    }

    .cdk-high-contrast-active .mat-form-field-appearance-legacy .mat-form-field-ripple {
        height: 0;
        border-top: solid 2px
    }

    .mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline {
        background-position: 0;
        background-color: transparent
    }

    .cdk-high-contrast-active .mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline {
        border-top-style: dotted;
        border-top-width: 2px
    }

    .mat-form-field-appearance-legacy.mat-form-field-invalid:not(.mat-focused) .mat-form-field-ripple {
        height: 1px
    }


    .mat-form-field-appearance-outline .mat-form-field-wrapper {
        margin: .25em 0
    }

    .mat-form-field-appearance-outline .mat-form-field-flex {
        padding: 0 .75em 0 .75em;
        margin-top: -0.25em;
        position: relative
    }

    .mat-form-field-appearance-outline .mat-form-field-prefix,
    .mat-form-field-appearance-outline .mat-form-field-suffix {
        top: .25em
    }

    .mat-form-field-appearance-outline .mat-form-field-outline {
        display: flex;
        position: absolute;
        top: .25em;
        left: 0;
        right: 0;
        bottom: 0;
        pointer-events: none
    }

    .mat-form-field-appearance-outline .mat-form-field-outline-start,
    .mat-form-field-appearance-outline .mat-form-field-outline-end {
        border: 1px solid currentColor;
        min-width: 5px
    }

    .mat-form-field-appearance-outline .mat-form-field-outline-start {
        border-radius: 5px 0 0 5px;
        border-right-style: none
    }

    [dir=rtl] .mat-form-field-appearance-outline .mat-form-field-outline-start {
        border-right-style: solid;
        border-left-style: none;
        border-radius: 0 5px 5px 0
    }

    .mat-form-field-appearance-outline .mat-form-field-outline-end {
        border-radius: 0 5px 5px 0;
        border-left-style: none;
        flex-grow: 1
    }

    [dir=rtl] .mat-form-field-appearance-outline .mat-form-field-outline-end {
        border-left-style: solid;
        border-right-style: none;
        border-radius: 5px 0 0 5px
    }

    .mat-form-field-appearance-outline .mat-form-field-outline-gap {
        border-radius: .000001px;
        border: 1px solid currentColor;
        border-left-style: none;
        border-right-style: none
    }

    .mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-outline-gap {
        border-top-color: transparent
    }

    .mat-form-field-appearance-outline .mat-form-field-outline-thick {
        opacity: 0
    }

    .mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-start,
    .mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-end,
    .mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-gap {
        border-width: 2px
    }

    .mat-form-field-appearance-outline.mat-focused .mat-form-field-outline,
    .mat-form-field-appearance-outline.mat-form-field-invalid .mat-form-field-outline {
        opacity: 0;
        transition: opacity 100ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick,
    .mat-form-field-appearance-outline.mat-form-field-invalid .mat-form-field-outline-thick {
        opacity: 1
    }

    .cdk-high-contrast-active .mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick {
        border: 3px dashed
    }

    .mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline {
        opacity: 0;
        transition: opacity 600ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline-thick {
        opacity: 1
    }

    .mat-form-field-appearance-outline .mat-form-field-subscript-wrapper {
        padding: 0 1em
    }

    .mat-form-field-appearance-outline._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-outline,
    .mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline,
    .mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-start,
    .mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-end,
    .mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-gap {
        transition: none
    }


    .mat-form-field-appearance-standard .mat-form-field-flex {
        padding-top: .75em
    }

    .mat-form-field-appearance-standard .mat-form-field-underline {
        height: 1px
    }

    .cdk-high-contrast-active .mat-form-field-appearance-standard .mat-form-field-underline {
        height: 0;
        border-top: solid 1px
    }

    .mat-form-field-appearance-standard .mat-form-field-ripple {
        bottom: 0;
        height: 2px
    }

    .cdk-high-contrast-active .mat-form-field-appearance-standard .mat-form-field-ripple {
        height: 0;
        border-top: solid 2px
    }

    .mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline {
        background-position: 0;
        background-color: transparent
    }

    .cdk-high-contrast-active .mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline {
        border-top-style: dotted;
        border-top-width: 2px
    }

    .mat-form-field-appearance-standard:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple {
        opacity: 1;
        transform: none;
        transition: opacity 600ms cubic-bezier(0.25, 0.8, 0.25, 1)
    }

    .mat-form-field-appearance-standard._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple {
        transition: none
    }

/* ========================================
   OVERRIDE PREMIUM - LOGIN FORM FIXES
   ======================================== */

/* --- Formulario principal --- */
.datos-personales-form {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
    max-width: 380px;
}

/* --- Mat-form-field mejorado --- */
.mat-form-field {
    width: 100% !important;
    display: block !important;
}

.mat-form-field-wrapper {
    padding-bottom: 0 !important;
    margin-bottom: 18px !important;
}

/* --- Input container mejorado --- */
.input-container {
    position: relative;
    width: 100%;
    margin-bottom: 8px;
}

/* --- Inputs con estilo premium --- */
.mat-input-element,
.mat-input-element.input {
    width: 100% !important;
    height: 52px !important;
    padding: 16px 44px 4px 0 !important;
    font-size: 16px !important;
    font-family: "Heebo", sans-serif !important;
    color: #1a2633 !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    box-sizing: border-box !important;
    caret-color: #d52b1e !important;
}

/* --- Labels flotantes --- */
.mat-form-field-label-wrapper {
    top: 0 !important;
    padding-top: 0 !important;
    overflow: visible !important;
}

.mat-form-field-label {
    top: 1.4em !important;
    font-size: 16px !important;
    color: rgba(26, 38, 51, 0.6) !important;
    font-family: "Heebo", sans-serif !important;
    font-weight: 400 !important;
    transform: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    will-change: transform, font-size !important;
}

/* Label flotando cuando hay contenido o foco */
.mat-form-field:not(.mat-form-field-empty) .mat-form-field-label,
.mat-focused .mat-form-field-label,
.mat-form-field-should-float .mat-form-field-label {
    font-size: 11px !important;
    top: 0.2em !important;
    color: #d52b1e !important;
    transform: none !important;
}

/* --- Línea inferior mejorada --- */
.mat-form-field-underline {
    background-color: rgba(26, 38, 51, 0.15) !important;
    height: 1.5px !important;
    bottom: 0 !important;
    position: relative !important;
}

.mat-form-field-ripple {
    background-color: #d52b1e !important;
    height: 2px !important;
}

.mat-focused .mat-form-field-ripple {
    transform: scaleX(1) !important;
}

.mat-form-field-infix {
    padding: 0 !important;
    border-top: 0.84375em solid transparent !important;
    position: relative !important;
}

/* --- Ícono de ojo (show/hide password) --- */
.icon-eye {
    position: absolute !important;
    right: 4px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    cursor: pointer !important;
    width: 22px !important;
    height: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0.5 !important;
    transition: opacity 0.2s ease !important;
    z-index: 1 !important;
    font-style: normal !important;
}

.icon-eye:hover {
    opacity: 0.8 !important;
}

/* Icono de ojo usando SVG embebido */
.icon-eye::after {
    content: '' !important;
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a2633' stroke-width='2'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='1' y1='1' x2='23' y2='23'/%3E%3C/svg%3E") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
}

/* --- "Teclado virtual" - ARREGLAR SOLAPAMIENTO CRÍTICO --- */
app-virtual-keyboard {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    margin-top: 4px !important;
    margin-bottom: 20px !important;
    position: relative !important;
    z-index: 1 !important;
}

.main-form_keyboard {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: none !important;
    border: none !important;
    color: #424242 !important;
    font-family: "Heebo", sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    cursor: pointer !important;
    padding: 6px 0 6px 30px !important;
    text-align: left !important;
    letter-spacing: 0.2px !important;
    transition: color 0.2s ease !important;
    float: none !important;
    margin-top: 0 !important;
    position: relative !important;
    background-image: url(images/keyboard.svg) !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
    background-size: 22px 22px !important;
}

.main-form_keyboard:hover {
    color: rgba(26, 38, 51, 0.8) !important;
}

/* Override de la query de media que pone float:right al teclado */
@media (max-height: 690px) and (min-width: 768px) {
    .main-form_keyboard {
        float: none !important;
        margin-top: 0 !important;
    }
}

/* --- Checkbox container mejorado --- */
.checkbox-container {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 20px !important;
    margin-top: -4px !important;
}

.checkbox-container span {
    font-size: 13px !important;
    color: rgba(26, 38, 51, 0.7) !important;
    font-family: "Heebo", sans-serif !important;
    cursor: pointer !important;
    line-height: 1.4 !important;
}

/* Checkbox mejorado */
.mat-checkbox .mat-checkbox-frame {
    border-color: rgba(26, 38, 51, 0.35) !important;
    border-width: 1.5px !important;
    border-radius: 3px !important;
}

.mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background {
    background-color: #d52b1e !important;
}

/* --- Botón Ingresar premium --- */
.boton-ingresar-container {
    margin-top: 8px !important;
    margin-bottom: 4px !important;
}

.boton {
    min-width: 130px !important;
    height: 50px !important;
    border-radius: 8px !important;
    font-family: "Heebo", sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0.3px !important;
    cursor: pointer !important;
    border: none !important;
    transition: all 0.25s ease !important;
    padding: 0 28px !important;
}

.boton:not([disabled]) {
    background-color: #d52b1e !important;
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(213, 43, 30, 0.3) !important;
}

.boton:not([disabled]):hover {
    background-color: #b82217 !important;
    box-shadow: 0 6px 18px rgba(213, 43, 30, 0.4) !important;
    transform: translateY(-1px) !important;
}

.boton[disabled] {
    background-color: rgba(26, 38, 51, 0.1) !important;
    color: rgba(26, 38, 51, 0.35) !important;
    cursor: not-allowed !important;
    box-shadow: none !important;
}

/* --- Título mejorado --- */
.main-title {
    font-size: 24px !important;
    font-weight: 300 !important;
    color: #1a2633 !important;
    margin-bottom: 32px !important;
    margin-top: 24px !important;
    line-height: 1.3 !important;
    letter-spacing: -0.3px !important;
}

/* --- Link "Cambiar usuario y/o clave" --- */
.link.link-new {
    display: inline-block !important;
    margin-top: 0 !important;
    font-size: 14px !important;
    color: #d52b1e !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    letter-spacing: 0.2px !important;
    transition: opacity 0.2s ease !important;
}

.link.link-new:hover {
    opacity: 0.75 !important;
    text-decoration: underline !important;
}

/* --- Botón "No tenés usuario? Registrate" con borde --- */
.link.link-new.link-button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    border: 1.5px solid #d52b1e !important;
    border-radius: 8px !important;
    padding: 10px 16px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    margin-top: 0 !important;
    transition: background-color 0.2s ease !important;
}

.link.link-new.link-button:hover {
    background-color: rgba(213, 43, 30, 0.05) !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

/* --- Subscript wrapper (espacio inferior) --- */
.mat-form-field-subscript-wrapper {
    margin-top: 2px !important;
    min-height: 16px !important;
}

/* Ocultar el espaciador de hints innecesario */
.mat-form-field-hint-spacer {
    display: none !important;
}

/* --- Focus visual en el input --- */
.mat-form-field-flex:focus-within .mat-form-field-underline .mat-form-field-ripple {
    transform: scaleX(1) !important;
    background-color: #d52b1e !important;
}

/* Texto del input visible */
.mat-input-element {
    -webkit-text-fill-color: #1a2633 !important;
}

/* Fix para el caret del input */
.mat-input-element:focus {
    caret-color: #d52b1e !important;
}

/* --- Animación suave scroll form --- */
.mat-form-field-flex {
    transition: border-color 0.2s ease !important;
}

/* --- Footer container --- */
.footer-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin-top: 8px !important;
    padding-bottom: 8px !important;
}

/* Forzar columna en los hijos del footer-container */
.footer-container > div {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

/* --- Botón "Registrate" --- */
a[class*="link-negocios_new"],
.link-negocios_new {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border: 1.5px solid #d52b1e !important;
    border-radius: 8px !important;
    padding: 12px 18px !important;
    color: #d52b1e !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    font-family: "Heebo", sans-serif !important;
    text-decoration: none !important;
    max-width: 320px !important;
    transition: all 0.2s ease !important;
    background: transparent !important;
    cursor: pointer !important;
}

.link-negocios_new:hover {
    background-color: rgba(213, 43, 30, 0.06) !important;
}

/* === FIN OVERRIDE PREMIUM === */

