@charset "UTF-8";


html.zg    {
    min-width: 100%;
    margin: 0;
    padding: 0;
    height: 100%;
}
.zg body    {
    position: relative;
    min-width: 100%;
    margin: 0;
    padding: 0;
    min-height:100%;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.zg body, .zg input, .zg table    {
    font-family: zimi, zimiicons, sans-serif;
    font-size: 14px;
    line-height: 1.4;
}
.zg figcaption    {
    font-size: 12px;
}


/* override template --- */
.template A, .template article a, #loginbox A {
    text-decoration: none;
    color: #3088E0;
}
/* override template --- */
.template A:hover, .template article a:hover, #loginbox A:hover {
    text-decoration: none;
    color: #40D0FF;
}

.zg .program_full   {
    color: #000;
}
.zg .light .program_full   {
    color: #FFF;
}

/* light mode */
.zg body, .zg .t5DialogMediaBox, .zg .consent .header, .zg .consent .buttonbar, .zg .page_users #groups, .zg .page_users #users, .zg .lvl table {
    background-color: #F8F8F8;
    color: #000;
}
.zg .cntUE, .zg .options {
    background: #EFEFEF;
    color: #000;
}

.zg #consenttext {
    background-color: rgb(240,240,240);
}
.zg .consent .header, .zg .consent .buttonbar    {
    box-shadow: none;
}

.zg #plc_container div#plc_header   {
    color: rgba(0,0,0,0.33);
}

.zg #lang, .zg .ccCtry, .zg .ccLang {
    color: #000;
}

.zg table.reg1, .zg .reg1 th, .zg .reg1 td, .zg table.toc, .zg .toc th, .zg .toc td  {
    border: 1px solid rgba(0,0,0,0.5) !important;
}
.zg .page_signup.z1 #ttttt .z1,
.zg .page_signup.z2 #ttttt .z2,
.zg .page_signup.z3 #ttttt .z3 {
    background-color: rgba(0,0,0,0.05);
}

.zg .boBtm  {
    border-bottom: 2px solid rgba(0,0,0,0.1);
}
.zg .rowBB1, .zg .tblGrey  {
    background-color: rgb(248,248,248);
    border-bottom: 2px solid rgb(248,248,248);
}
.zg .rowBB2  {
    background-color: rgb(224,224,224);
    border-bottom: 2px solid rgb(224,224,224);
}
.zg .colCat1  {
    border-left: 1px solid rgb(227,0,10);
    border-right: 1px solid rgb(227,0,10);
}
.zg .colCat2  {
    border-left: 1px solid rgb(255,237,0);
    border-right: 1px solid rgb(255,237,0);
}
.zg .colCat3  {
    border-left: 1px solid rgb(0,150,62);
    border-right: 1px solid rgb(0,150,62);
}
.zg .colCat4  {
    border-left: 1px solid rgb(0,158,227);
    border-right: 1px solid rgb(0,158,227);
}
.zg .colCat5  {
    border-left: 1px solid rgb(229,0,125);
    border-right: 1px solid rgb(229,0,125);
}
.zg .colCatR1  {
    border-right: 1px solid rgb(227,0,10);
}
.zg .colCatR2  {
    border-right: 1px solid rgb(255,237,0);
}
.zg .colCatR3  {
    border-right: 1px solid rgb(0,150,62);
}
.zg .colCatR4  {
    border-right: 1px solid rgb(0,158,227);
}
.zg .colCatR5  {
    border-right: 1px solid rgb(229,0,125);
}
.zg .cCat1  {
    color: rgb(227,0,10);
}
.zg .cCat2  {
    color: rgb(255,237,0);
}
.zg .cCat3  {
    color: rgb(0,150,62);
}
.zg .cCat4  {
    color: rgb(0,158,227);
}
.zg .cCat5  {
    color: rgb(229,0,125);
}

.zg .iconS  {
    font-size: 24px;
    line-height: 100%;
    color: #000;
    padding-left: 6px;
    padding-right: 6px;
}
.zg .iconM  {
    font-size: 48px;
    line-height: 100%;
    color: #000;
    padding-right: 16px;
}
.zg .iconImgM  {
    width: 128px;
    padding: 0 12px 16px 0;
}
.zg .hl {
    color: rgba(96,96,96,1);
}
.zg .hlb {
    color: rgba(64,96,128,0.85);
}
.zg hr.hrS    {
    border: 0.5px solid rgba(0,0,0,0.15);
}
.zg hr.pageBreak  {
    border: transparent;
}
.zg .newsitem > h1    {
    border-top: 0.5px solid rgba(80,168,255,0.5);
}
.zg .t5DialogTitle {
    background: rgba(0,0,0,0.1);
}

.zg .zgSC   {
    background-color: rgba(80,168,255,0.75);
}

/* links -------------------------------- */
.zg a  {
    text-decoration: none;
}
.zg a:link, .zg .addMat, .zg .blue2  {
    color: #3088E0 !important;
}
.zg a:visited   {
    color: #3088E0 !important;
}
.zg a:focus   {
    color: #3088E0 !important;
}
.zg a:hover {
    color: #40D0FF !important;
}
.zg a:active    {
    color: #3088E0 !important;
}
.zg a:link.newsitem {
    color: #000 !important;
}

.zg .hLink h2 a:link, .zg .toc a:link, .zg .program_full a:link, .zg .gridK a:link, .zg #zgShortcuts a:link  {
    color: #000000 !important;
}
.zg .hLink h2 a:visited, .zg .toc a:visited, .zg .program_full a:visited, .zg .gridK a:visited, .zg #zgShortcuts a:visited   {
    color: #000000 !important;
}
.zg .hLink h2 a:focus, .zg .toc a:focus, .zg .program_full a:focus, .zg .gridK a:focus, .zg #zgShortcuts a:focus   {
    color: #000000 !important;
}
.zg .hLink h2 a:hover, .zg .toc a:hover, .zg .program_full a:hover {
    color: #40D0FF !important;
}
.zg .hLink h2 a:active, .zg .toc a:active, .zg .program_full a:active, .zg .gridK a:active, .zg #zgShortcuts a:active    {
    color: #000000 !important;
}

.zg .gridK a:hover {
    color: #70C8FF !important;
}
.zg .light .gridK a:link, .zg .light .program_full a:link {
    color: #FFFFFF !important;
}
.zg .light .gridK a:visited, .zg .light .program_full a:visited {
    color: #FFFFFF !important;
}
.zg .light .gridK a:focus, .zg .light .program_full a:focus {
    color: #FFFFFF !important;
}
.zg .light .gridK a:hover, .zg .light .program_full a:hover {
    color: #70C8FF !important;
}
.zg .light .gridK a:active, .zg .light .program_full a:active {
    color: #FFFFFF !important;
}

.zg #cookieconsent a:link  {
    color: #70C8FF !important;
}
.zg #cookieconsent a:visited   {
    color: #70C8FF !important;
}
.zg #cookieconsent a:focus   {
    color: #70C8FF !important;
}
.zg #cookieconsent a:hover {
    color: #40D0FF !important;
}
.zg #cookieconsent a:active    {
    color: #70C8FF !important;
}

.zg #menu1 a.hlRed:link  {
    color: #E00000 !important;
}
.zg #menu1 a.hlRed:visited   {
    color: #E00000 !important;
}
.zg #menu1 a.hlRed:focus   {
    color: #E00000 !important;
}
.zg #menu1 a.hlRed:hover {
    color: #000000 !important;
}
.zg #menu1 a.hlRed:active    {
    color: #E00000 !important;
}

.zg #menu1 a:link, .zg #menu2 a:link, .zg footer a:link, .zg .light a:link, .zg #menu1 .subLog a.light:link  {
    color: #FFFFFF !important;
}
.zg #menu1 a:visited, .zg #menu2 a:visited, .zg footer a:visited, .zg .light a:visited, .zg #menu1 .subLog a.light:visited   {
    color: #FFFFFF !important;
}
.zg #menu1 a:focus, .zg #menu2 a:focus, .zg footer a:focus, .zg .light a:focus, .zg #menu1 .subLog a.light:focus   {
    color: #FFFFFF !important;
}
.zg #menu1 a:hover, .zg #menu2 a:hover, .zg footer a:hover, .zg .light a:hover, .zg #menu1 .subLog a.light:hover {
    color: #000000 !important;
}
.zg #menu1 a:active, .zg #menu2 a:active, .zg footer a:active, .zg .light a:active, .zg #menu1 .subLog a.light:active    {
    color: #FFFFFF !important;
}

.zg #menu1 a.icon:link, .zg #menu2 a.icon:link, .zg .tray .light a:link, .zg .tray a.light:link  {
    color: #FFFFFF !important;
}
.zg #menu1 a.icon:visited, .zg #menu2 a.icon:visited, .zg .tray .light a:visited, .zg .tray a.light:visited   {
    color: #FFFFFF !important;
}
.zg #menu1 a.icon:focus, .zg #menu2 a.icon:focus, .zg .tray .light a:focus, .zg .tray a.light:focus   {
    color: #FFFFFF !important;
}
.zg #menu1 a.icon:hover, .zg #menu2 a.icon:hover, .zg .tray .light a:hover, .zg .tray a.light:hover {
    color: #FFFFFF !important;
}
.zg #menu1 a.icon:active, .zg #menu2 a.icon:active, .zg .tray .light a:active, .zg .tray a.light:active    {
    color: #FFFFFF !important;
}

.zg #menu1 .subLog a, .zg #menu2 .subLog a  {
    color: #404040 !important;
}
.zg #menu1 .subLog a:link, .zg #menu2 .subLog a:link  {
    color: #404040 !important;
}
.zg #menu1 .subLog a:visited, .zg #menu2 .subLog a:visited   {
    color: #404040 !important;
}
.zg #menu1 .subLog a:focus, .zg #menu2 .subLog a:focus   {
    color: #404040 !important;
}
.zg #menu1 .subLog a:hover, .zg #menu2 .subLog a:hover {
    color: #FFFFFF !important;
}
.zg #menu1 .subLog a:active, .zg #menu2 .subLog a:active    {
    color: #404040 !important;
}

.zg .dark a:link, .zg .tray a:link  {
    color: #000000 !important;
}
.zg .dark a:visited, .zg .tray a:visited   {
    color: #000000 !important;
}
.zg .dark a:focus, .zg .tray a:focus   {
    color: #000000 !important;
}
.zg .dark a:hover, .zg .tray a:hover {
    color: #3088E0 !important;
}
.zg .dark a:active, .zg .tray a:active    {
    color: #000000 !important;
}

.zg .light .tilePrice1 a:link, .zg .dark .tilePrice1 a:link, .zg .light .tilePrice2 a:link, .zg .dark .tilePrice2 a:link  {
    color: #3088E0 !important;
}
.zg .light .tilePrice1 a:visited, .zg .dark .tilePrice1 a:visited, .zg .light .tilePrice2 a:visited, .zg .dark .tilePrice2 a:visited   {
    color: #3088E0 !important;
}
.zg .light .tilePrice1 a:focus, .zg .dark .tilePrice1 a:focus, .zg .light .tilePrice2 a:focus, .zg .dark .tilePrice2 a:focus   {
    color: #3088E0 !important;
}
.zg .light .tilePrice1 a:hover, .zg .dark .tilePrice1 a:hover, .zg .light .tilePrice2 a:hover, .zg .dark .tilePrice2 a:hover {
    color: #40D0FF !important;
}
.zg .light .tilePrice1 a:active, .zg .dark .tilePrice1 a:active, .zg .light .tilePrice2 a:active, .zg .dark .tilePrice2 a:active    {
    color: #3088E0 !important;
}

.zg.products a#nProducts, .zg.flatrate a#nPrices, .zg .program_full a#nProducts, .zg.prices a#nPrices, .zg.documentation a#nDocumentation, .zg.faq a#nDocumentation, .zg[class*="howto"] a#nDocumentation, .zg[class*="manual"] a#nDocumentation, .zg [class*="signup"] a#nStartNow, .zg .page_start a#nHome, .zg .page_users a#nUsers, .zg .page_module a#nModules, .zg .page_results a#nProgress    {
    font-weight: bold;
}
.zg.products a#nProducts:link, .zg.flatrate a#nPrices:link, .zg .program_full a#nProducts:link, .zg.prices a#nPrices:link, .zg.documentation a#nDocumentation:link, .zg.faq a#nDocumentation:link, .zg[class*="howto"] a#nDocumentation:link, .zg[class*="manual"] a#nDocumentation:link, .zg [class*="signup"] a#nStartNow:link, .zg .page_start a#nHome:link, .zg .page_users a#nUsers:link, .zg .page_module a#nModules:link, .zg .page_results a#nProgress:link  {
    color: #002080 !important;
}
.zg.products a#nProducts:visited, .zg.flatrate a#nPrices:visited, .zg .program_full a#nProducts:visited, .zg.prices a#nPrices:visited, .zg.documentation a#nDocumentation:visited, .zg.faq a#nDocumentation:visited, .zg[class*="howto"] a#nDocumentation:visited, .zg[class*="manual"] a#nDocumentation:visited, .zg [class*="signup"] a#nStartNow:visited, .zg .page_start a#nHome:visited, .zg .page_users a#nUsers:visited, .zg .page_module a#nModules:visited, .zg .page_results a#nProgress:visited   {
    color: #002080 !important;
}
.zg.products a#nProducts:hover, .zg.flatrate a#nPrices:hover, .zg .program_full a#nProducts:hover, .zg.prices a#nPrices:hover, .zg.documentation a#nDocumentation:hover, .zg.faq a#nDocumentation:hover, .zg[class*="howto"] a#nDocumentation:hover, .zg[class*="manual"] a#nDocumentation:hover, .zg [class*="signup"] a#nStartNow:hover, .zg .page_start a#nHome:hover, .zg .page_users a#nUsers:hover, .zg .page_module a#nModules:hover, .zg .page_results a#nProgress:hover {
    color: #000 !important;
}
.zg.products a#nProducts:active, .zg.flatrate a#nPrices:active, .zg .program_full a#nProducts:active, .zg.prices a#nPrices:active, .zg.documentation a#nDocumentation:active, .zg.faq a#nDocumentation:active, .zg[class*="howto"] a#nDocumentation:active, .zg[class*="manual"] a#nDocumentation:active, .zg [class*="signup"] a#nStartNow:active, .zg .page_start a#nHome:active, .zg .page_users a#nUsers:active, .zg .page_module a#nModules:active, .zg .page_results a#nProgress:active    {
    color: #002080 !important;
}

.zg #lang, .zg .ccCtry, .zg .ccLang {
    font-size: 12px !important;
}
.zg #lang a:link  {
    color: #888888 !important;
}
.zg #lang a:visited   {
    color: #888888 !important;
}
.zg #lang a:focus   {
    color: #888888 !important;
}
.zg #lang a:hover {
    color: #40D0FF !important;
}
.zg #lang a:active    {
    color: #000000 !important;
}
.zg .pr16   {
    padding-right: 16px;
}
.zg .flag1, .zg .flag2   {
    position: relative;
    display: inline-block;
    width: 1.6em;
    height: 1.2em;
    margin-bottom: -0.1em;
    background-size: contain;
    background-position: 50%;
    background-repeat: no-repeat;
}
.zg .flag1   {
    margin-left: 1.5em;
}
.zg .flag2   {
    margin-right: 1em;
}
.flag_AT, .flag_de-AT {
    background-image: url(images/flags/de-AT.svg);
}
.flag_BE, .flag_de-BE, .flag_fr-BE {
    background-image: url(images/flags/de-BE.svg);
}
.flag_CH, .flag_de-CH, .flag_fr-CH, .flag_it-CH, .flag_rm-CH {
    background-image: url(images/flags/de-CH.svg);
}
.flag_DE, .flag_de-DE {
    background-image: url(images/flags/de-DE.svg);
}
.flag_LI, .flag_de-LI {
    background-image: url(images/flags/de-LI.svg);
}
.flag_CA, .flag_en-CA, .flag_fr-CA {
    background-image: url(images/flags/en-CA.svg);
}
.flag_GB, .flag_en-GB, .flag_en-UK {
    background-image: url(images/flags/en-GB.svg);
}
.flag_US, .flag_en-US {
    background-image: url(images/flags/en-US.svg);
}
.flag_ES, .flag_es-ES {
    background-image: url(images/flags/es-ES.svg);
}
.flag_MX, .flag_es-MX {
    background-image: url(images/flags/es-MX.svg);
}
.flag_CL, .flag_es-CL {
    background-image: url(images/flags/es-CL.svg);
}
.flag_FR, .flag_fr-FR {
    background-image: url(images/flags/fr-FR.svg);
}
.flag_LU, .flag_lb-LU, .flag_de-LU, .flag_fr-LU {
    background-image: url(images/flags/fr-LU.svg);
}
.flag_IT, .flag_it-IT {
    background-image: url(images/flags/it-IT.svg);
}
.flag_NL, .flag_nl-NL {
    background-image: url(images/flags/nl-NL.svg);
}
.flag_BE, .flag_nl-BE, .flag_nl-NL {
    background-image: url(images/flags/nl-NL.svg);
}
.flag_PL, .flag_pl-PL {
    background-image: url(images/flags/pl-PL.svg);
}
.flag_BR, .flag_pt-BR {
    background-image: url(images/flags/pt-BR.svg);
}
.flag_PT, .flag_pt-PT {
    background-image: url(images/flags/pt-PT.svg);
}
.flag_RU, .flag_ru-RU {
    background-image: url(images/flags/ru-RU.svg);
}
.flag_SE, .flag_se-SE {
    background-image: url(images/flags/se-SE.svg);
}


.zg .lvl td, .zg .tblLvl td  {
    border: 1px solid rgba(0,0,0,0.5);
}
.zg .lvl td:nth-child(3), .zg .lvl td:nth-child(7), .zg .tblLvl td:nth-child(3), .zg .tblLvl td:nth-child(7)   {
    border-right: 3px solid rgba(0,0,0,1);
}
.zg .lvl td.light, .zg .tblLvl td.light  {
    border: 1px solid rgba(255,255,255,0.5);
}
.zg .lvl td.light:nth-child(3), .zg .lvl td.light:nth-child(7), .zg .tblLvl td.light:nth-child(3), .zg .tblLvl td.light:nth-child(7)   {
    border-right: 3px solid rgba(255,255,255,1);
}
.zg .lvl td:not([class]), .zg .tblLvl td:not([class])  {
    color: rgba(0,0,0,0.35);
}
.zg .lvl td.dark, .zg .tblLvl td.dark  {
    color: rgba(0,0,0,1);
    font-weight: bold;
}
.zg .lvl td.light, .zg .tblLvl td.light  {
    color: rgba(255,255,255,1);
    font-weight: bold;
}

.zg .program {
    box-shadow: 0 1em 1em -1em rgba(0,0,0,0.75) , 0em 0em 3em 0em rgba(0,0,0,0.2);
    border: solid rgba(255,255,255,0.75);
    border-width: 1px 0 0 0;
}
.zg .options {
    border: solid rgba(0,0,0,0.2);
    border-width: 1px 0 0 0;
}


/* dark mode */
@media (prefers-color-scheme: dark) {
    .zg body, .zg .t5DialogMediaBox, .zg #consenttext, .zg .page_users #groups, .zg .page_users #users, .zg .lvl table {
        background-color: rgb(48,48,48);
        color: #FFFFFF;
    }
    .zg .consent .header, .zg .consent .buttonbar, .zg .cntUE, .zg .options {
        background-color: rgb(32,32,32);
        color: #FFFFFF;
    }

    .zg #plc_container div#plc_header   {
        color: rgba(255,255,255,0.33);
    }

    .zg #lang, .zg .ccCtry, .zg .ccLang {
        color: #FFFFFF;
    }

    .zg table.reg1, .zg .reg1 th, .zg .reg1 td, .zg table.toc, .zg .toc th, .zg .toc td  {
        border: 1px solid rgba(255,255,255,0.35) !important;
    }
    .zg .page_signup.z1 #ttttt .z1,
    .zg .page_signup.z2 #ttttt .z2,
    .zg .page_signup.z3 #ttttt .z3 {
        background-color: rgba(255,255,255,0.1);
    }

    .zg .boBtm  {
        border-bottom: 2px solid rgba(255,255,255,0.1);
    }
    .zg .rowBB1, .zg .tblGrey  {
        background-color: rgb(56,56,56);
        border-bottom: 2px solid rgb(56,56,56);
    }
    .zg .rowBB2  {
        background-color: rgb(48,48,48);
        border-bottom: 2px solid rgb(48,48,48);
    }

    .zg .iconS, .zg .iconM  {
        color: #FFFFFF;
    }
    .zg .hl {
        color: rgba(160,160,160,1);
    }
    .zg .hlb {
        color: rgba(176,216,240,0.85);
    }
    .zg hr.hrS    {
        border: 0.5px solid rgba(0,0,0,0.75);
    }
    .zg .t5DialogTitle {
        background: rgba(255,255,255,0.1);
    }
    .template INPUT[required] {
        background-color: rgba(255,224,128,1);
    }

    .zg .zgSC   {
        background-color: rgba(80,168,255,0.25);
    }

/* links -------------------------------- */
    .zg a:link, .zg .addMat, .zg .blue2  {
        color: #40D0FF !important;
    }
    .zg #plc_notebox_transactions a:link  {
        color: #3088E0 !important;
    }
    
    .zg a:visited   {
        color: #40D0FF !important;
    }
    .zg a:focus   {
        color: #40D0FF !important;
    }
    .zg a:hover {
        color: #40F8FF !important;
    }
    .zg a:active    {
        color: #40D0FF !important;
    }
    .zg a:link.newsitem {
        color: #FFF !important;
    }

    .zg .hLink h2 a:link, .zg .toc a:link, .zg #zgShortcuts a:link  {
        color: #FFFFFF !important;
    }
    .zg .hLink h2 a:visited, .zg .toc a:visited, .zg #zgShortcuts a:visited   {
        color: #FFFFFF !important;
    }
    .zg .hLink h2 a:focus, .zg .toc a:focus, .zg #zgShortcuts a:focus   {
        color: #FFFFFF !important;
    }
    .zg .hLink h2 a:hover, .zg .toc a:hover {
        color: #40D0FF !important;
    }
    .zg .hLink h2 a:active, .zg .toc a:active, .zg #zgShortcuts a:active    {
        color: #FFFFFF !important;
    }

    .zg .light .tilePrice1 a:link, .zg .dark .tilePrice1 a:link, .zg .light .tilePrice2 a:link, .zg .dark .tilePrice2 a:link  {
        color: #40D0FF !important;
    }
    .zg .light .tilePrice1 a:visited, .zg .dark .tilePrice1 a:visited, .zg .light .tilePrice2 a:visited, .zg .dark .tilePrice2 a:visited   {
        color: #40D0FF !important;
    }
    .zg .light .tilePrice1 a:focus, .zg .dark .tilePrice1 a:focus, .zg .light .tilePrice2 a:focus, .zg .dark .tilePrice2 a:focus   {
        color: #40D0FF !important;
    }
    .zg .light .tilePrice1 a:hover, .zg .dark .tilePrice1 a:hover, .zg .light .tilePrice2 a:hover, .zg .dark .tilePrice2 a:hover {
        color: #40F8FF !important;
    }
    .zg .light .tilePrice1 a:active, .zg .dark .tilePrice1 a:active, .zg .light .tilePrice2 a:active, .zg .dark .tilePrice2 a:active    {
        color: #40D0FF !important;
    }

    .zg .lvl td, .zg .tblLvl td  {
        border: 1px solid rgba(255,255,255,0.5);
    }
    .zg .lvl td:nth-child(3), .zg .lvl td:nth-child(7), .zg .tblLvl td:nth-child(3), .zg .tblLvl td:nth-child(7)   {
        border-right: 3px solid rgba(255,255,255,1);
    }
    .zg .lvl td.dark, .zg .tblLvl td.dark  {
        border: 1px solid rgba(0,0,0,0.5);
    }
    .zg .lvl td.dark:nth-child(3), .zg .lvl td.dark:nth-child(7), .zg .tblLvl td.dark:nth-child(3), .zg .tblLvl td.dark:nth-child(7)   {
        border-right: 3px solid rgba(0,0,0,1);
    }
    .zg .lvl td:not([class]), .zg .tblLvl td:not([class])  {
        color: rgba(255,255,255,0.35);
    }
    .zg .lvl td.dark, .zg .tblLvl td.dark  {
        color: rgba(0,0,0,1);
        font-weight: bold;
    }
    .zg .lvl td.light, .zg .tblLvl td.light  {
        color: rgba(255,255,255,1);
        font-weight: bold;
    }

    .zg .program {
        box-shadow: 0 1em 1em -1em rgba(0,0,0,1) , 0em 0em 3em 0em rgba(0,0,0,0.75);
        border: solid rgba(255,255,255,0.35);
        border-width: 1px 0 0 0;
    }
    .zg .options {
        border: solid rgba(255,255,255,0.2);
        border-width: 1px 0 0 0;
    }
}


/* test --> -------------------------------- */
/* TEST LIGHT -------------------------------- */
.zg body.testLight, .zg .testLight .t5DialogMediaBox, .zg .testLight .consent .header, .zg .testLight .consent .buttonbar, .zg .testLight .lvl table {
    background-color: #F8F8F8;
    color: #000000;
}
.zg .testLight #consenttext {
    background-color: rgb(240,240,240);
}

.zg .testLight #lang, .zg .testLight .ccCtry , .zg .testLight .ccLang {
    color: #000000;
}

.zg .testLight table.reg1, .zg .testLight .reg1 th, .zg .testLight .reg1 td, .zg .testLight table.toc, .zg .testLight .toc th, .zg .testLight .toc td  {
    border: 1px solid rgba(0,0,0,0.5) !important;
}
.zg .testLight .page_signup.z1 #ttttt .z1,
.zg .testLight .page_signup.z2 #ttttt .z2,
.zg .testLight .page_signup.z3 #ttttt .z3 {
    background-color: rgba(0,0,0,0.05);
}

.zg .testLight .boBtm  {
    border-bottom: 2px solid rgba(0,0,0,0.1);
}
.zg .testLight .rowBB1, .zg .testLight .tblGrey  {
    background-color: rgb(248,248,248);
    border-bottom: 2px solid rgb(248,248,248);
}
.zg .testLight .rowBB2  {
    background-color: rgb(224,224,224);
    border-bottom: 2px solid rgb(224,224,224);
}

.zg .testLight .iconS, .zg .testLight .iconM  {
    color: #000000;
}

.zg .testLight a:link, .zg .testLight .addMat, .zg .testLight .blue2  {
    color: #3088E0 !important;
}
..zg .testLight a:visited   {
    color: #3088E0 !important;
}
.zg .testLight a:focus   {
    color: #3088E0 !important;
}
.zg .testLight a:hover {
    color: #40D0FF !important;
}
.zg .testLight a:active    {
    color: #3088E0 !important;
}
.zg .testLight a:link.newsitem {
    color: #000 !important;
}

.zg .testLight .hLink h2 a:link, .zg .testLight .toc a:link  {
    color: #000000 !important;
}
.zg .testLight .hLink h2 a:visited, .zg .testLight .toc a:visited   {
    color: #000000 !important;
}
.zg .testLight .hLink h2 a:focus, .zg .testLight .toc a:focus   {
    color: #000000 !important;
}
.zg .testLight .hLink h2 a:hover, .zg .testLight .toc a:hover {
    color: #40D0FF !important;
}
.zg .testLight .hLink h2 a:active, .zg .testLight .toc a:active    {
    color: #000000 !important;
}

.zg .testLight #menu1 a:link, .zg .testLight #menu2 a:link, .zg .testLight footer a:link, .zg .testLight .light a:link  {
    color: #FFFFFF !important;
}
.zg .testLight #menu1 a:visited, .zg .testLight #menu2 a:visited, .zg .testLight footer a:visited, .zg .testLight .light a:visited   {
    color: #FFFFFF !important;
}
.zg .testLight #menu1 a:focus, .zg .testLight #menu2 a:focus, .zg .testLight footer a:focus, .zg .testLight .light a:focus   {
    color: #FFFFFF !important;
}
.zg .testLight #menu1 a:hover, .zg .testLight #menu2 a:hover, .zg .testLight footer a:hover, .zg .testLight .light a:hover {
    color: #000000 !important;
}
.zg .testLight #menu1 a:active, .zg .testLight #menu2 a:active, .zg .testLight footer a:active, .zg .testLight .light a:active    {
    color: #FFFFFF !important;
}

.zg .testLight #menu1 a.hlRed:link  {
    color: #E00000 !important;
}
.zg .testLight #menu1 a.hlRed:visited   {
    color: #E00000 !important;
}
.zg .testLight #menu1 a.hlRed:focus   {
    color: #E00000 !important;
}
.zg .testLight #menu1 a.hlRed:hover {
    color: #000000 !important;
}
.zg .testLight #menu1 a.hlRed:active    {
    color: #E00000 !important;
}

.zg .testLight #plc_container div#plc_header   {
    color: rgba(0,0,0,0.33);
}

.zg .testLight .lvl td  {
    border: 1px solid rgba(0,0,0,0.5);
}
.zg .testLight .lvl td:nth-child(3), .zg .testLight .lvl td:nth-child(7)   {
    border-right: 3px solid rgba(0,0,0,1);
}
.zg .testLight .lvl td:not([class])  {
    color: rgba(0,0,0,0.35);
}
.zg .testLight .lvl td.dark  {
    color: rgba(0,0,0,1);
    font-weight: bold;
}
.zg .testLight .lvl td.light  {
    color: rgba(255,255,255,1);
    font-weight: bold;
}
.zg .testLight .hl {
    color: rgba(96,96,96,1);
}
.zg .testLight .hlb {
    color: rgba(64,96,128,0.85);
}
.zg .testLight hr.hrS    {
    border: 0.5px solid rgba(0,0,0,0.15);
}
.zg .testLight .t5DialogTitle {
    background: rgba(0,0,0,0.1);
}

.zg .testLight .zgSC   {
    background-color: rgba(80,168,255,0.75);
}


/* TEST DARK -------------------------------- */
    .zg body.testDark, .zg .testDark .t5DialogMediaBox, .zg .testDark #consenttext, .zg .testDark .lvl table {
        background-color: rgb(48,48,48);
        color: #FFFFFF;
    }
    .zg .testDark .consent .header, .zg .testDark .consent .buttonbar {
        background-color: rgb(32,32,32);
        color: #FFFFFF;
    }

    .zg .testDark #lang, .zg .testDark .ccCtry, .zg .testDark .ccLang {
        color: #FFFFFF;
    }

    .zg .testDark table.reg1, .zg .testDark .reg1 th, .zg .testDark .reg1 td, .zg .testDark table.toc, .zg .testDark .toc th, .zg .testDark .toc td  {
        border: 1px solid rgba(255,255,255,0.35) !important;
    }
    .zg .testDark .page_signup.z1 #ttttt .z1,
    .zg .testDark .page_signup.z2 #ttttt .z2,
    .zg .testDark .page_signup.z3 #ttttt .z3 {
        background-color: rgba(255,255,255,0.1);
    }

    .zg .testDark .boBtm  {
        border-bottom: 2px solid rgba(255,255,255,0.1);
    }
    .zg .testDark .rowBB1, .zg .testDark .tblGrey  {
        background-color: rgb(56,56,56);
        border-bottom: 2px solid rgb(56,56,56);
    }
    .zg .testDark .rowBB2  {
        background-color: rgb(48,48,48);
        border-bottom: 2px solid rgb(48,48,48);
    }

    .zg .testDark .iconS, .zg .testDark .iconM  {
        color: #FFFFFF;
    }

    .zg .testDark a:link, .zg .testDark .addMat  {
        color: #40D0FF !important;
    }
    .zg .testDark a:visited   {
        color: #40D0FF !important;
    }
    .zg .testDark a:focus   {
        color: #40D0FF !important;
    }
    .zg .testDark a:hover {
        color: #40F8FF !important;
    }
    .zg .testDark a:active    {
        color: #40D0FF !important;
    }
    .zg .testDark a:link.newsitem {
        color: #FFF !important;
    }

    .zg .testDark .hLink h2 a:link, .zg .testDark .toc a:link  {
        color: #FFFFFF !important;
    }
    .zg .testDark .hLink h2 a:visited, .zg .testDark .toc a:visited   {
        color: #FFFFFF !important;
    }
    .zg .testDark .hLink h2 a:focus, .zg .testDark .toc a:focus   {
        color: #FFFFFF !important;
    }
    .zg .testDark .hLink h2 a:hover, .zg .testDark .toc a:hover {
        color: #40D0FF !important;
    }
    .zg .testDark .hLink h2 a:active, .zg .testDark .toc a:active    {
        color: #FFFFFF !important;
    }

    .zg .testDark #menu1 a:link, .zg .testDark #menu2 a:link, .zg .testDark footer a:link, .zg .testDark .light a:link  {
        color: #FFFFFF !important;
    }
    .zg .testDark #menu1 a:visited, .zg .testDark #menu2 a:visited, .zg .testDark footer a:visited, .zg .testDark .light a:visited   {
        color: #FFFFFF !important;
    }
    .zg .testDark #menu1 a:focus, .zg .testDark #menu2 a:focus, .zg .testDark footer a:focus, .zg .testDark .light a:focus   {
        color: #FFFFFF !important;
    }
    .zg .testDark #menu1 a:hover, .zg .testDark #menu2 a:hover, .zg .testDark footer a:hover, .zg .testDark .light a:hover {
        color: #000000 !important;
    }
    .zg .testDark #menu1 a:active, .zg .testDark #menu2 a:active, .zg .testDark footer a:active, .zg .testDark .light a:active    {
        color: #FFFFFF !important;
    }

    .zg .testDark #menu1 a.hlRed:link  {
        color: #E00000 !important;
    }
    .zg .testDark #menu1 a.hlRed:visited   {
        color: #E00000 !important;
    }
    .zg .testDark #menu1 a.hlRed:focus   {
        color: #E00000 !important;
    }
    .zg .testDark #menu1 a.hlRed:hover {
        color: #000000 !important;
    }
    .zg .testDark #menu1 a.hlRed:active    {
        color: #E00000 !important;
    }

    .zg .testDark #plc_container div#plc_header   {
        color: rgba(255,255,255,0.33);
    }

    .zg .testDark .lvl td  {
        border: 1px solid rgba(255,255,255,0.5);
    }
    .zg .testDark .lvl td:nth-child(3), .zg .testDark .lvl td:nth-child(7)   {
        border-right: 3px solid rgba(255,255,255,1);
    }
    .zg .testDark .lvl td:not([class])  {
        color: rgba(255,255,255,0.35);
    }
    .zg .testDark .lvl td.dark  {
        color: rgba(0,0,0,1);
        font-weight: bold;
    }
    .zg .testDark .lvl td.light  {
        color: rgba(255,255,255,1);
        font-weight: bold;
    }
    .zg .testDark .hl {
        color: rgba(160,160,160,1);
    }
    .zg .testDark .hlb {
        color: rgba(176,216,240,0.85);
    }
    .zg .testDark hr.hrS    {
        border: 0.5px solid rgba(0,0,0,0.75);
    }
    .zg .testDark .t5DialogTitle {
        background: rgba(255,255,255,0.1);
    }

    .zg .testDark .zgSC   {
        background-color: rgba(80,168,255,0.25);
    }
/* <-- test -------------------------------- */


.zg .ccCtry,
.zg .ccLang  {
    margin: 0;
    border: none;
}
.zg select.ccCtry,
.zg pf-select,
.zg select.ccLang {
    width: 192px;
    text-align: right;
    padding-right: 32px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='%23888888'><polygon points='0,0 100,0 50,50'/></svg>") no-repeat;
    background-size: 8px;
    background-position: calc(100% - 12px) center;
    background-repeat: no-repeat;
}
.zg select.ccLang {
    width: 112px;
}
.zg select:focus    {
    outline: none;
}
.zg select[disabled] {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 0.01px;
    padding-left: 4px;
    color: rgba(0,0,0,1);
}

.zg .template INPUT[disabled] {
    background-color: #AAA;
    color: rgba(0,0,0,1);
}

.zg .options a:hover {
    color: #3088E0 !important;
}
.zg .options A:hover, .template .options DIV:hover    {
    background: none;
}

/* //-
:not(.selected) > .options > A.needsSelection {
    background-color: rgb(32,32,32);
    color: #CCC;
    pointer-events: none;
}
:not(.selected) > .addRemove > A.needsSelection {
    opacity: 0.35;
    pointer-events: none;
}
*/

/* cookie consent -------------------------------- */
.zg #cookieconsent {
    padding: 0;
}
.zg .cookiecCnt {
    padding: 0.75em 1em 1em 1em;
    margin: 0 auto;
}
.zg .cookiecClose   {
    float: right;
    width: 4em;
    text-align: right;
    line-height: 20px;
}

.zg #cookieconsent span::after {
    font-size: 20px;
    text-align: right;
    position: relative;
    right: 0;
    top: 0;
}


/* text -------------------------------- */
.zg h1, .zg h2, .zg h3, .zg .t5DialogMediaBox h1, .zg .t5DialogMediaBox h2, .zg .t5DialogMediaBox h3  {
    font-weight: normal !important;
    text-align: left;
    padding: 32px 12px 16px 12px;
}
.zg .cntMD h1, .zg .cntMD h2, .zg .cntMD h3  {
    padding: 32px 12px 16px 0;
    margin: 0;
}
.zg .page_start h1, .zg .page_start h2  {
    text-align: center;
}

/* //-
.zg .shoe::first-letter {
    font-size: 3.5rem;
    line-height: 1.1em;
    font-weight: normal !important;
    color: #3088E0;
}
*/
.zg .shoe::before {
    content: '\f54b';
    font-size: 3.5rem;
    line-height: 1.1em;
    font-weight: normal !important;
    color: #3088E0;
    padding-right: 0.125em;
}
.zg .shoe2 {
    display: block;
    padding: 0 12px 8px 34px;
}

.zg .hasLobby h1  {
    margin-left: -128px;
}
.zg .hasLobby a h1  {
    margin-left: 0;
}
.zg .page_profile .hasLobby h1  {
    padding-left: 128px;
}
.zg .hasLobby .tray h1  {
    margin-left: 0;
}

.zg .h1M   {
    font-size: 24px;
}

.zg .txtL h2, .zg .txtL h3  {
    text-align: left;
    padding: 12px 16px 12px 0;
}
.zg .txtL h3  {
    padding: 0 16px 12px 0;
}
.zg .boBtm .f2:last-child p:first-child {
    padding-top: 12px;
}
.zg .boBtm .f2:last-child ol {
    padding-bottom: 16px;
}
/* override template --- */
    .template article h1 {
        font-size: 36px !important;
    }

    .template article :not(.program) > h2 {
        font-size: 26px !important;
        display: block;
    }
    .template article :not(.program) > h2.sizeH1 {
        font-size: 36px !important;
        margin-top: 0px;
    }
.zg h1  {
    font-size: 36px !important;
}
.zg h2  {
    font-size: 26px !important;
}

.zg h3  {
    font-size: 26px;
}
.zg h4  {
    margin: 0;
    font-style: normal;
    padding: 8px 0;
}
.zg .page_login .f2 h4  {
    padding: 0;
    margin-top: 0;
}
.zg .page_login .f2 p  {
    margin-bottom: 1.5em;
}
.zg h4.tileTtl, .zg .toc h4 {
    font-size: 24px;
    padding: 0 0 4px 0;
}
.zg h5  {
    font-size: 1em;
    margin: 0;
    padding: 6px 0;
    font-style: italic;
    font-weight: normal;
}
.zg h5.tileTtl, .zg .toc h5 {
    font-size: 24px;
}
.zg h5.subCat {
    font-style: normal;
    padding-left: 1em;
}
.zg .subCatInline {
    font-style: normal;
    font-weight: normal;
}
.zg footer h4   {
    font-size: 24px;
    font-weight: normal;
    font-style: normal;
    margin-top: 0 !important;
}
.zg footer h3   {
    padding-top: 32px;
    text-align: center !important;
    margin-top: 0.5em !important;
}
.zg .txtSzM {
    font-size: 12px;
}

.zg p   {
    margin-top: 0.125em;
}
.zg p img, .zg p .imgS img  {
    padding-top: 0.75em;
    margin-bottom: -0.5em;
}
.zg .gmItm_1 p img, .zg .gmItm_1 p .imgS img, .zg .imgInline img, .zg .imgInlineL img, .zg .imgInline .imgS img, .zg .f2 p img  {
    padding-top: 0;
    margin-bottom: 0;
}
.zg .imgInlineL img  {
    margin-bottom: -6px;
}

.zg .f3_1 p    {
    padding-left: 16px;
    margin: 0
}

.zg .tile h4  {
    font-size: 22px;
}
.zg .tileAuthor   {
    font-size: 14px;
}
.zg .tileTxt h7, .zg .gridProlog h7  {
    display: block;
    font-weight: bold;
    padding: 12px 0;
}
.zg .tileTxt p  {
    margin: 0;
    padding: 8px 0 0 0;
}
.zg .tileTxt p:last-child  {
    padding: 8px 0 24px 0;
    opacity: 0.75;
}

.zg .maBtmNo p   {
    margin-bottom: 0.125em;
}

.zg .hl1, .zg .hlb     {
    font-weight: bold;
}


.zg .po, po {
    font-weight: bold;
    color: #3088E0;
}
.zg .kr, kr {
    font-weight: bold;
    color: rgb(224, 64, 48);
}
.zg .dp, dp {
    font-weight: bold;
    color: rgb(240, 144, 0);
}

.zg .cln1 ol p {
    margin: 0;
    padding: 0;
}
.zg .cln1 ol {
    list-style-type: none;
    counter-reset: item;
    margin: 0 0 0 2em;
    padding: 0;
}
.zg .cln1 ol ol {
    margin: 0 0 0 2.5em;
}
.zg .cln1 ol ol ol {
    margin: 0 0 0 3.25em;
}

.zg .cln1 ol > li {
    display: block;
    counter-increment: item;
    margin-bottom: 0.25em !important;
    position: relative;
}

.zg .cln1 ol > li:first-child {
    counter-increment: item;
    margin-top: 0.25em !important;
}

.zg .cln1 ol li:before {
    content: counters(item, ".") ". ";
    display: block;
    width: 2em;
    position: absolute;
    left: -2em;
}
.zg .cln1 ol ol li:before {
    content: counters(item, ".") ". ";
    display: block;
    width: 2.5em;
    position: absolute;
    left: -2.5em;
}
.zg .cln1 ol ul li:before {
    content: "";
}
.zg .cln1 ol ol ol li:before {
    content: counters(item, ".") ". ";
    display: block;
    width: 3.25em;
    position: absolute;
    left: -3.25em;
}

.zg .cln1 li ol > li {
    margin: 0;
}

.zg .cln0 ul, .zg .cln1 ul, .zg .cln2 ul, .zg .fbox ul {
    padding-inline-start: 1.5em;
    margin-block-start: 0.25em;
    list-style-type: disc !important;
}
.zg .cln1 ol li {
    padding-bottom: 8px;
}
.zg .cln1 ol ul li {
    padding-bottom: 8px;
}
.zg .cln1 ol ol li {
    padding-bottom: 4px;
}
.zg .cln1 ol ol {
    padding-top: 8px;
}
.zg .toc ol li   {
    font-weight: bold;
}
.zg .toc ol ol li   {
    font-weight: normal;
}

.zg .noDot li {
  list-style-type: none;
}

/* t5dialog-mediabox closer */
.zg .t5DialogMediaBoxClose {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 28px;
    height: 28px;
    background-color: rgba(255,255,255,1);
    color: rgba(0,0,0,0.8);
    background-image: none;
    border-radius: 50%;
    transform: none;
    z-index: auto;
}
.zg .t5DialogMediaBoxClose::before {
    content: '\f057';
    font-size: 36px;
    line-height: 38px;
    padding-left: 0;
}
.zg .t5DialogMediaBoxClose:hover {
    cursor: pointer;
    background-color: rgba(255,255,255,1);
    color: rgba(255,0,0,1);
}

.zg .subTtl  {
    margin: 0 auto;
    text-align: center;
}
.zg .linkC  {
    display: block;
    padding-right: 0;
}
.zg .linkC:last-child {
    padding-right: 0;
}


/* navigation: header / footer -------------------------------- */
.zg #header, .zg footer {
    position: relative;
    width: 100%;
    height: auto;
    background-color: #50A8FF;
    color: #FFF;
}
.zg .page_start footer h3, .zg .page_profile footer h3, .zg .page_users footer h3, .zg .page_module footer h3, .zg .page_results footer h3, .zg .page_saldo footer h3, .zg .page_private footer h3 {
    padding-left: 64px;
}
.zg .page_start footer .fboxS, .zg .page_profile footer .fboxS, .zg .page_users footer .fboxS, .zg .page_module footer .fboxS, .zg .page_results footer .fboxS, .zg .page_saldo footer .fboxS, .zg .page_private footer .fboxS {
    padding-left: 176px;
}
.zg .page_profile #usereditor, .zg .page_module #programs, .zg #teacher_ex, .zg .page_saldo #saldo_options   {
    position: relative;
}
.zg #header nav {
    padding: 4px 0;
}
.zg footer {
    flex-shrink: 0;
}

.zg nav#lang {
    text-align: right;
    height: 32px;
    padding: 8px 4px 0 0 !important;
}

.zg footer ul {
    list-style-type: none;
    margin: 0;
}
.zg footer ul {
    padding: 0;
}

/* override template --- */
.template nav#lang li:not(:nth-child(1)) {
    border: none;
}

.zg footer li:last-child  {
    padding-bottom: 48px;
}


.zg .topnav {
    overflow: hidden;
}
.zg .topnav a {
    float: left;
    display: block;
    padding: 8px 16px 12px 16px;
    text-decoration: none;
    text-align: left;
}
.zg .page_start #menu2, .zg .page_users #menu2, .zg .page_module #menu2, .zg .page_results #menu2, .zg .page_saldo #menu2  {
    padding-left: 128px;
}
.zg .page_profile #menu2  {
    padding-left: 68px;
}
.zg #menu2 {
    min-height: 120px;
}
.zg .topnav .icon {
    display: none;
}
.zg .topnav .subLog, .zg .topnav .subNav {
    float: right;
}
.zg .topnav .subNav {
    clear: both;
}
.zg .page_login .topnav .login {
    display: none;
}
.zg .page_login .subLog  {
    height: 30px;
}
.zg .topnav .subLog a {
    padding: 4px 16px 0 16px !important;
}
.zg .home {
    margin-top: -10px;
}
.zg a.home  {
    padding: 0 14px !important;
}
.zg #menu2 .home {
    margin-top: -2px;
}
.zg .r254 #menu2 .home {
    padding-left: 156px !important;
}
.zg #menu2 .subNav {
    padding-top: 24px;
}

.zg .topnav .nNav {
    padding-top: 0;
    font-size: 12px;
}

.zg .topnav.responsive a {
    float: left;
}
.zg .r254 .programs_cats {
    padding: 24px 12px 0 32px;
}
.zg .r254 .teacher_filter {
    padding: 0 32px 0 8px;
}

@media screen and (max-width: 49rem) {
    .zg .topnav .subNav {
        float: left;
        padding-top: 0;
    }
    .zg .topnav a {
        padding: 6px 0 6px 32px;
    }
    .zg .subNav a, .zg #nSaldo {
        display: none;
    }
    .zg .topnav .nNav a {
        display: block;
    }
    .zg .topnav a.icon {
        display: block;
        float: right;
        padding: 8px 16px 0 16px;
    }
    .zg .topnav .home {
        margin-top: 8px;
    }
    .zg .topnav.responsive {
        position: relative;
    }
    .zg .topnav.responsive .icon {
        float: right;
    }
    .zg .topnav.responsive a {
        float: none;
        display: block;
    }
    .zg .topnav.responsive .subLog  {
        margin-top: -4px;
    }
    .zg .topnav.responsive .home  {
        position: absolute;
    }
    .zg .topnav.responsive .subNav  {
        padding-top: 32px;
    }
}

/* override template --- */
.zg header ul, .zg footer > nav > ul    {
    max-width: none;
    text-align: left;
}
.zg header li, .zg footer nav > ul > li {
    font-size:  16px;
    margin-left: 0;
    padding-top: 4px;
}
.zg .subNav, .zg .f3_1 h4, .zg .f3_1 p  {
    font-size: 18px;
}
.zg .f3_1 h4  {
    padding: 8px 0 0 0;
}

.zg h4.top0  {
    margin-top: 0;
    padding-top: 0;
}
.zg h4.dimCat, .zg h5.dimCat  {
    opacity: 0.33;
}

@media screen and (max-width: 700px) {
    .zg header    {
        overflow: visible;
    }
}

.zg a.home, .zg .topnav a.icon  {
    font-size: 15px;
}

.zg .hintSize   {
    display: block;
    font-size: 18px;
    padding: 16px;
    background-color: #FF0040;
    color: #FFF;
    z-index: 999;
}
.zg .hintSize.hasLobby   {
    padding-left: 144px;
}
.zg .hintSize p   {
    margin: 4px 0 8px 0;
}

.zg footer a.home {
    display: block;
    padding: 0 0 12px 0;
}

.zg .tblS   {
    font-weight: bold;
    line-height: 1.5;
    width: 8%;
    text-align: right;
    padding-right: 16px;
}
.zg .tblS.tblGrey   {
    font-weight: normal;
}
.zg .tblM   {
    line-height: 1.5;
    width: 50%;
}
.zg .tblL1, .zg .tblL2   {
    width: 60%;
}
.zg .tblL2   {
    padding-bottom: 16px;
}
.zg .itmIco   {
    display: inline-block;
}
.zg .itmIco img   {
    width: 80px;
    height: 80px;
    padding: 18px 16px 0 0;
}
.zg .itmTxt   {
    display: inline-block;
}
.zg .tblGrey   {
    border-bottom: transparent solid 16px
}
.zg .tblS.tblGrey   {
    padding-top: 12px;
}
.zg .tblL2.tblGrey   {
    padding-top: 13px;
}
.zg .tbl50   {
    width: 50%;
}
.zg .tbl50:first-child   {
    padding-right: 8px;
}
.zg .tbl50:last-child   {
    padding-left: 8px;
}
.zg .it   {
    font-style: italic;
}

/* keep aspect-ratio on tile and video -------------------------------- */
.zg .tile::before {
    content: "";
    float: left;
    padding-bottom: 100%;
}
.zg .tile::after {
    clear: left;
    content: " ";
    display: table;
}

.zg .video {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    margin-bottom: 64px;
    pointer-events: all;
}
.zg .video img {
    pointer-events: none;
}
.zg .videoPlayLight, .zg .videoPlayDark {
    pointer-events: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 48px;
    text-align: center;
}
.zg .videoPlayLight {
    color: rgba(255,255,255,0.75)
}
.zg .videoPlayDark {
    color: rgba(0,0,0,0.75)
}
.zg .video:hover {
    cursor: pointer;
}
.zg .video:hover .videoPlayDark, .zg .video:hover .videoPlayLight {
    color: rgba(255,0,0,0.9)
}
.zg .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.zg .t5DialogMediaBox iframe    {
    border: none;
}
.zg .t5DialogMediaBox iframe.sizeM    {
    width: 480px;
    height: 480px;
}

.zg .t5DialogMediaBox img    {
    width: calc(100vw - 2rem);
    height: auto;
}


/* content (columns) -------------------------------- */

.zg .mddownloadpdflink   {
    float: right;
}
.zg .loadPdf   {
    width: 100%;
}
.zg .loadPdf a, .zg .loadPdf a:link {
    color: #3088E0 !important;
}
.zg .loadPdf a:hover {
    color: #40D0FF  !important;
}

.zg article {
    flex: 1 0 auto;
    max-width: none;
    margin: 0;
    padding: 0;
    text-align: left;
}
.zg article hr    {
    display: block;
}

.zg article.hasLobby   {
    left: auto;
    padding: 0;
    max-width: none;
    border-left: solid 128px rgb(96,96,96);
}

.zg .row1, .zg .row2 {
    padding-bottom: 16px;
}
.zg .row2 {
    background: rgba(80,168,255,0.05);
}

.zg #menu1, .zg #menu2, .zg .cnt, .zg .cln0, .zg .cln1, .zg .cln2, .zg .cln2S, .zg .fbox, .zg .fboxGap, .zg .fboxS, .zg .gridK, .zg .clnLeft, .zg nav#lang, .zg .loadPdf {
    clear: both;
    margin: 0 auto;
    padding-top: 24px;
}

.zg h1, .zg h2, .zg h3 {
    clear: both;
    margin: 0 auto;
}
.zg .r254 h1, .zg .r254 h2, .zg .r254 h3 {
    margin: 0;
}
.zg .licenses_update h3 {
    padding-top: 0;
}
.zg .biNo   {
    break-inside: avoid;
    break-inside: avoid-column;
    page-break-inside: avoid;
}
.zg .csNo   {
    column-span: none;
}

.zg .clnLeft p {
    padding: 0;
    margin-bottom: -18px;
}
.zg .cnt, .zg .cln2, .zg .fbox, .zg .fboxGap, .zg .fboxS, .zg .gridK, .zg h1, .zg h2, .zg h3, .zg .cookiecCnt, .zg .clnLeft, .zg .loadPdf, .zg .t5DialogMediaBox .header p {
    max-width: 93%;
}
.zg .page_start .fboxS, .zg .page_profile .fboxS, .zg .page_users .fboxS, .zg .page_module .fboxS, .zg .page_results .fboxS, .zg .page_saldo .fboxS, .zg .page_private .fboxS    {
    max-width: 60%;
}
.zg #menu1, .zg #menu2, .zg nav#lang {
    max-width: 100%;
}

.zg figure, .zg img  {
    width: 100%;
    margin: 0;
}
.zg figure img  {
    width: 100%;
    height: auto;
    height: fit-content;
}
.zg .screens figure{
    pointer-events: all;
}
.zg .imgInline img  {
    width: auto;
    height: 16px;
}
.zg .imgInlineL img  {
    width: auto;
    height: 32px;
    padding-top: 0px;
    margin-bottom: -8px;
}
.zg .imgXS img  {
    width: 25%;
    height: auto;
}
.zg .imgS img  {
    width: 50%;
    height: auto;
}
.zg .imgM img  {
    width: 75%;
    height: auto;
    padding-top: 1em;
    margin-bottom: -0.75em;
}
.zg .imgFS img, .zg .imgFS2 img  {
    float: left;
    height: auto;
}

.zg .team td:first-child {
    width: 10em;
    vertical-align: top;
}

.zg lp21h1  {
    font-size: 24px;
    font-weight: bold;
}
.zg lp21h2  {
    display: block;
    font-weight: bold;
    padding-left: 1em;
    padding-bottom: 0.25em;
}
.zg lp21h3  {
    display: block;
    padding-left: 2em;
    padding-bottom: 0.25em;
}
.zg lp21z1, .zg lp21z2, .zg lp21z3  {
    display: inline-block;
    width: 4em;
    padding: 0.5em;
    margin: 0.5em 0.5em 0.5em 0;
    text-align: center;
}
.zg lp21z1  {
    background-color: rgba(238,163,32,0.75);
}
.zg lp21z2  {
    background-color: rgba(44,143,205,0.75);
}
.zg lp21z3  {
    background-color: rgba(151,201,66,0.75);
}
.zg lp21k   {
    display: inline-block;
    padding-bottom: 1em;
}
.zg lp21p   {
    display: inline-block;
}
.zg lp21p img   {
    display: block;
    float: left;
    width: 25%;
    height: auto;
    padding-right: 1em;
    margin-bottom: 0.5em;
}

.zg .tblLvl {
    left: 0 !important;
    top: 0 !important;
    max-width: 400px;
    margin: 8px 0 16px 0    !important;
}

.zg .lvl table, .zg .price table  {
    width: 100%;
    padding: 12px 0 18px 0;
    border-collapse: collapse;
    margin-top: 12px;
}
.zg .price td  {
    width: 33%;
}
.zg .lvl td  {
    width: 9%;
    height: 2.5em;
    text-align: center;
    vertical-align: middle;
}

.zg .price table td:nth-child(2)  {
    font-weight: bold;
}
.zg .price table td:last-child  {
    text-align: right;
}



/* flexbox -------------------------------- */
.zg .fbox, .zg .fboxS, .zg .fboxGap, .zg .fboxUser, .zg .fboxUE    {
    display: flex;
    flex-flow: row wrap;
}
.zg .fboxGap    {
    row-gap: 10px;
    column-gap: 10px;
}
.zg .f2, .zg .f3_1, .zg .f3_2, .zg .f3_3, .zg .f2User_1, .zg .f2User_2, .zg .f2UE {
    flex: 0 0 100%;
    max-width: 100%;
}
.zg .f2User_2 {
    max-width: 50%;
    padding-right: 12px;
}
.zg .f4 {
    flex: 1 1 24%;
    max-width: 100%;
}

.zg .f3_1 {
    padding: 16px 0 32px 0;
}
.zg .f3_2, .zg .f3_3 {
    padding: 0 0 8px 0;
}

.zg .tile figure  {
    width: 35%;
    margin: 0 8px 0 0;
}
.zg .tileImg   {
    display: inline-block;
    vertical-align: top;
}
.zg .tileTtl   {
    max-width: 60%;
    display: inline-block;
}

.zg .tileAuthor   {
    font-style: italic;
    opacity: 0.75;
}
.zg .tileTxt   {
    max-width: 32rem;
    padding: 24px 4px 0 12px;
}
.zg .tilePrice1, .zg .tilePrice2  {
    text-align: right;
    line-height: 1.6;
}
.zg .tilePrice1  {
    padding-top: 24px;
}
.zg .tilePrice2  {
    padding-top: 12px;
}



/* grid -------------------------------- */
.zg .gridK  {
    display: grid;
    grid-template-columns: 35% 65%;
    grid-template-rows: auto auto auto auto auto;
}

.zg .gridIcon  {
    grid-column: 1;
    grid-row: 1 / 3;
}
.zg .gridAuthor  {
    grid-column: 2;
    grid-row: 1;
    text-align: right;
    font-style: italic;
    padding: 0.5em 1em 0 0.25em;
}
.zg .gridK a  {
    font-weight: normal;
}
.zg .gridName  {
    grid-column: 2;
    grid-row: 2;
    align-self: end;
    padding-bottom: 6px;
    margin-bottom: 0;
}
.zg .gridName h1  {
    text-align: left;
    padding: 0 0 0 16px;
}
.zg .gridName H1:first-child  {
    margin-top: 0;
}
.zg .gridPrice  {
    grid-column: 1 / 3;
    grid-row: 3;
    padding: 1em 0 0 0;
    text-align: right;
}
.zg .gridPrice p  {
    margin: 0;
    padding: 0;
}
.zg .gridPrice p pf-lastline  {
    font-size: 14px;
}
.zg .gridPrice p pf-lastline  {
    color: rgba(0,0,0,0.5);
}
.zg .light .gridPrice p::first-line  {
    color: rgba(255,255,255,0.5);
}

.zg .screens figure:not(:first-child)  {
    padding: 1.5em 0;
}
.zg .screens figcaption  {
    font-size: 14px;
    padding: 1em 0 0 0;
}
.zg .program_full article   {
    box-shadow: none;
}
.zg .program_full article h1    {
    font-size: 24px !important;
    line-height: 120%;
}

.zg hr.mod  {
    display: block;
    margin: 3em 0 1.5em 0;
}
.zg hr.mod  {
    border: 1px solid rgba(0,0,0,0.05);
}
.zg .light hr.mod  {
    border: 1px solid rgba(255,255,255,0.25);
}

.zg .modStart  {
    padding: 1em;
    text-align: center;
    margin: 0 auto;
}
.zg .modStart span  {
    font-size: 28px;
}
.zg .modStart div:last-child  {
    display: block;
    padding: 16px 0 48px 0;
}

.zg .o50    {
    opacity: 0.5;
}
.zg .o50S    {
    font-size: 14px;
    opacity: 0.5;
}
.zg .gridLink  {
    grid-column: 1 / 3;
    grid-row: 4;
    padding: 1em 0 0 0;
    text-align: right;
}
.zg .gridProlog  {
    grid-column: 1 / 3;
    grid-row: 5;
    padding: 1em 0 0 0;
}
.zg .gridProlog p  {
    margin: 0;
    padding: 0;
}
.zg .gridProlog p:nth-of-type(2)  {
    font-weight: bold;
    margin: 0.5em 0;
}

.zg .gridM  {
    display: grid;
    grid-template-columns: 35% 35% auto;
    grid-template-rows: auto auto;
    margin-bottom: 2em;
    padding-bottom: 4em;
}

.zg .gmItm_1 {
    grid-row: 1 / span 2;
}
.zg .gmItm_4 {
    grid-column: 2 / span 2;
    align-self: end;
}
.zg .gmItm_1 p {
    margin: 0;
    padding: 0;
}
.zg .gmItm_2, .zg .gmItm_4 {
    margin: 0;
    padding-left: 32px;
}
.zg .gmItm_2 h3, .zg .gmItm_4 h4 {
    margin: 0;
    padding: 0;
    font-size: 20px;
    font-style: normal;
    text-align: left;
}
.zg .gmItm_2 {
    padding-top: 10px;
}
.zg .gmItm_3 p {
    margin: 0;
    padding: 14px 12px 0 0;
    text-align: right;
}
.zg .gmItm_4 h1, .zg .gmItm_3 {
    margin: 0;
    padding: 0;
    font-style: normal;
    text-align: left;
}
.zg .gmItm_4 {
    margin-bottom: -1px;
}
.zg .gmItm_4.pt64 {
    padding-top: 64px;
    padding-right: 10px;
}

.kHell .gmItm_2, .kHell .gmItm_3, .kHell .gmItm_4   {
    color: rgba(255,255,255,1);
}
.kDkl .gmItm_2, .kDkl .gmItm_3, .kDkl .gmItm_4   {
    color: rgba(0,0,0,1);
}

.zg .gridLogoA  {
    display: grid;
    grid-template-columns: 15% auto;
    grid-template-rows: 17% 20% auto 20%;
    margin-bottom: 2em;
}
.zg .glogoA_Itm_1 {
    grid-row: 1 / span 4;
}

.zg .gridLogoB  {
    display: grid;
    grid-template-columns: 6% 28% auto;
    grid-template-rows: auto auto;
    margin-bottom: 2em;
}
.zg .glogoB_Itm_1 {
    grid-column: 2;
    text-align: center;
    background-color: rgba(255,128,0,0.5);
    padding-top: 8px;
}
.zg .glogoB_Itm_2 {
    grid-column: 3;
    text-align: center;
    background-color: rgba(64,128,255,0.5);
    padding-top: 8px;
}
.zg .glogoB_Itm_3 {
    grid-column: 1 / span 3;
    grid-row: 2;
}

.zg .gridLogoAll    {
    display: grid;
    grid-template-columns: auto auto auto;
    text-align: center;
    column-gap: 2em;
    margin-bottom: 2em;
}


.zg .katzemtzT1   {
    border-spacing: 0;
    border-collapse: collapse;
    padding: 0;
    margin-bottom: 1.5em;
}
.zg .katzemtzT1 th {
    background-color: rgba(128,128,128,0.5);
    padding: 8px;
}
.zg .katzemtzT1 th:first-child, .zg .katzemtzT1 tr td:nth-child(2) {
    border-right: 1px solid rgba(0,0,0,0.25);
}
.zg .katzemtzT1 tr {
    border-bottom: 1px solid rgba(0,0,0,0.25);
}
.zg .katzemtzT1 td   {
    vertical-align: top;
    padding: 8px 0 0 0;
}
.zg .katzemtzT1 tr td:first-child   {
    width: 4em;
}
.zg .katzemtzT1 tr td:not(:first-child)   {
    padding-left: 8px;
}
.zg .katzemtzT1 tr td:nth-child(2)   {
    width: 6em;
}
.zg .katzemtzT1 tr td:nth-child(3)   {
    width: 6em;
    font-weight: bold;
}

.zg .td_6 td, .zg .td_b6 td   {
    padding: 6px;
}
.zg .td_b6 td   {
    vertical-align: bottom;
}
.zg .td25 td   {
    width: 25%;
    padding: 6px;
    border: 1px solid rgba(0,0,0,0.33);
}
.zg .td25_fig td   {
    width: 25%;
    padding: 6px;
    background-color: rgba(128,128,128,1)
    border: 1px solid rgba(0,0,0,0.33);
}
.zg .td25_fig img   {
    max-width: 128px;
    max-height: 128px;
}
.zg .td25_t1 td   {
    background-color: rgba(64,64,64,1);
    color: #FFF;
}
.zg .td25_t2 td   {
    background-color: rgba(128,128,128,0.5);
}
.zg .td_c td   {
    width: 18%;
    padding: 6px;
    border: 1px solid rgba(0,0,0,0.33);
    text-align: center;
}
.zg .td_c td:first-child   {
    width: 10%;
    background-color: rgba(128,128,128,0.5);
}
.zg .td_lt, .zg .td_lm   {
    width: 100%;
    border: 1px solid rgba(0,0,0,0.33);
}
.zg .td_lt td   {
    padding: 10px 6px;
    text-align: left;
    vertical-align: top;
}
.zg .td_lm td   {
    padding: 10px 6px;
    text-align: left;
    vertical-align: middle;
}
.zg .td_ti1   {
    background-color: rgba(128,128,128,0.5);
    padding: 8px 6px 12px 6px   !important;
}
.zg .td_ti2   {
    background-color: rgba(64,64,64,1);
    padding: 6px 6px 10px 6px   !important;
}

.zg .keyInline *  {
    display: inline;
}
.zg .keyInline img  {
    height: 64px;
}
.zg td.keyInline  {
    width: 64px;
}

/* page_private -------------------------------- */
.zg .r254 #saldo, .zg .r254 #nSaldo, .r254 #groups, .r254 #users, .homeworkDescriptionPrivate, .r254 .homeworkDescription, .r254 .videopreview, .r254 .teacher_homework_group, .r254 #saldo   {
    display: none;
}

.template .r254 #programs   {
    position: relative;
    padding: 0 !important;
}
.template article .tray ul  {
    padding: 0 0 0 1em;
}

.template .r254 #teacher_ex    {
    padding: 0 192px 0 152px;
}
.r254 .homeworkDescriptionPrivate {
    display: block;
}

/* page_login -------------------------------- */
/* override template --- */
.template .page_login article {
    max-width: 100%;
    padding: 0;
    height: auto;
    min-height: initial;
}

.zg TEXTAREA:focus,
.zg input[type=text]:focus,
.zg input[type="password"]:focus,
.zg input[type="number"]:focus,
.zg input[type=email]:focus,
.zg input[type=date]:focus {
    background-color: rgb(240, 240, 240 ) !important;
}
.zg TEXTAREA:valid,
.zg input[type=text]:valid,
.zg input[type="password"]:valid,
.zg input[type="number"]:valid,
.zg input[type=email]:valid,
.zg input[type=date]:valid   {
    background-color: rgb(232, 255, 232) !important;
}

.zg .reg2 TEXTAREA,
.zg .reg2 input[type=text],
.zg .reg2 input[type="password"],
.zg .reg2 input[type="number"],
.zg .reg2 input[type=email],
.zg .reg2 input[type=date] {
    border: none !important;
}

.zg SELECT  {
    padding: 0;
}

.zg .plcButton, .zg BUTTON, .zg input, .zg table, .zg SELECT, .zg TEXTAREA, .zg LABEL {
    font-size: 16px;
    margin: 0 0 6px 0;
}

.zg #userdetails TD.passwordchecked::after {
    display: inline-block;
    padding: 5px 2px 0 2px;
    margin-top: -1px;
    line-height: 22px;
}

/* override template --- */
.zg INPUT + INPUT {
    margin-left: 0 !important;
}
.zg .t5DialogButtons INPUT {
    margin: 0.25em 0 0 0.25em !important;
    border: none;
    padding: 4px !important;
}

.zg .lIn  {
    font-size: 16px;
}
.zg #loginform {
    width: 232px;
    padding: 0 0 24px 0;
}
.zg .passwordreset {
    padding: 24px 0;
}

.zg .page_login input[type=text], .zg .page_login input[type="email"], .zg .page_login input[type="password"] {
    width: 232px !important;
    height: 28px;
    margin-bottom: 6px;
}

.zg #QRScanButton, .zg #CodeScanButton, .pt24 input  {
    width: 304px !important;
    font-size: 18px;
    padding-top: 2px;
}
.zg .reg2 input[type=text], .zg .reg2 input[type="email"], .zg .reg2 input[type="password"], .zg .reg2 select {
    margin: 0 0 6px 6px;
}
.zg input[type="submit"], .zg #loginform input[type="submit"] {
    padding-right: 8px;
    border: none;
    border-radius: 4px;
    font-size: 18px;
    font-weight: bold;
    color: #FFF !important;
    text-align: center;
    cursor: pointer;
    text-shadow: 1px 1px 1px rgba(0,0,0,.25);
    background-color: rgba(0,128,255,0.8);
    box-shadow: 0px 4px 4px -4px rgba(0,0,0,0.75);
}
.zg input[type="submit"]:hover, .zg #loginform input[type="submit"]:hover {
    background-color: rgba(0,128,255,1);
}

.zg #loginform input[type=text], .zg #loginform input[type="password"] {
    border: none;
    border-bottom: solid 1px #000;
    padding: 2px 0 0 8px;
    outline: none;
}
.zg #loginform input[type="submit"] {
    width: 100%;
    height: 36px;
    margin-top: 24px;
}

.zg .page_profile #userdetails {
    width: 432px;
}
.zg .page_profile #userdetails > TABLE > TBODY > TR > TD:nth-child(1) {
    width: 180px;
    padding: 2px 12px 0 0;
    text-align: right;
}

.template .page_profile #userdetails TD:nth-child(2) > *:not([type=checkbox]):not([type=button]), .template .page_profile #userdetails TD [name=vcard_adr_code], .template .page_profile #userdetails TD [name=vcard_adr_locality] {
    width: 240px !important;
}

.zg .page_profile #userdetails > SPAN {
    padding: 0 8px 0 0;
}
.zg .page_profile #plc_notebox {
    max-width: 360px;
}
.zg .page_profile #plc_notebox_stats  {
    margin-bottom: 16px;
}
.zg #plc_notebox_stats [id^=u_]  {
    word-break: unset;
    hyphens: auto;
}
.zg .page_profile #plc_notebox pf-item {
    padding: 2px 8px 2px;
}
.zg .page_profile #plc_notebox pf-itemexpiration {
    right: 3px;
    top: 3px;
    padding: 6px 8px 4px;
}
.zg .page_profile #plc_notebox pf-item img {
    width: 34px;
    height: 34px;
}
.zg .page_profile #plc_notebox #plc_notebox_programs pf-item  {
    padding: 4px 144px 4px 38px;
}
.zg .page_saldo input[type=checkbox]  {
    font-size: 1.25em;
    margin: 0 8px 0 14em;
}


/* Change the background of inputfield (chrome) */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active
{
    -webkit-box-shadow: 0 0 0 30px rgba(0,128,255,0.05) inset !important;
}

.zg #altLogin {
    display: inline-block;
    width: 232px;
    padding: 12px 0 0 0;
}

.zg #altLogin > a   {
    width: 56px;
    height: 56px;
    margin: 4px 12px 0 0;
}

.zg #qrlogin {
    background: url(images/profaxonlineqr.svg) center / 48px no-repeat;
}

.zg #mslogin {
    background: url(images/logo_ms.svg) center / 48px no-repeat;
}

.zg #glogin {
    background: url(images/logo_g.svg) center / 48px no-repeat;
}
.zg .scanBtn div    {
    display: inline-block;
    margin-top: 8px;
}
.zg .scanBtn .iconI, .zg a.iconI    {
    font-size: 24px;
    width: 32px;
    vertical-align: bottom;
}
.zg a.iconI    {
    padding-left: 16px;
    font-size: 22px;
}
.zg .saldo input[type="submit"] {
    margin-top: 8px;
}


/* page_signup -------------------------------- */
.zg table.reg1, .zg table.reg2, .zg table.toc  {
    width: 100%;
    margin: 0;
    padding: 0;
    border-collapse: collapse;
}
.zg .page_signup table.reg1  {
    margin-bottom: 32px;
}
.zg .page_signup #userdetails > TABLE {
    display: table;
    float: right;
}
.zg .page_signup #userdetails > TABLE td:first-child {
    width: 160px;
    padding-right: 12px;
    text-align: right;
}
.zg .page_signup #userdetails > TABLE td:first-child {
    width: 280px;
}
.zg .reg1 th, .zg .reg1 td {
    text-align: center;
}
.zg .reg1 th:last-child, .zg .reg1 th:nth-child(2), .zg .reg1 td:last-child, .zg .reg1 td:nth-child(2) {
    width: 128px;
}
.zg .reg1 th:first-child, .zg .reg1 td:first-child {
    text-align: left;
    vertical-align: top;
}
.zg .reg1 th, .zg .reg1 td {
    padding: 6px 4px 6px 8px !important;
}
.zg .reg1 input {
    min-width: 64px;
    width: 64px;
    height: 32px;
    margin: 8px 0;
    color: rgba(128,128,128);
}
.zg .page_signup.z1 .z1 input,
.zg .page_signup.z2 .z2 input,
.zg .page_signup.z3 .z3 input {
    color: rgba(0,0,0);
}
.zg .page_signup #ttttt TD, .zg .page_signup #ttttt TH  {
    font-size: 12px;
    vertical-align: middle;
}

.zg table.reg2 {
    margin-top: 32px;
}
.zg  table#tableUserBtn    {
    margin-top: 8px;
}
.zg #tableUserBtn input {
    margin: 0 4px 8px 6px;
}

.zg #usereditor table.reg2 {
    margin: 8px 0 8px 8px;
}
.zg #usereditor table.reg2, .zg .plcButton, .zg #usereditor BUTTON, .zg #usereditor INPUT, .zg #usereditor SELECT, .zg #usereditor TEXTAREA, .zg #usereditor LABEL  {
    font-size: 14px;
}

.zg .reg2 th:first-child, .zg .reg2 td:first-child {
    width: 25%;
    text-align: right;
    vertical-align: middle;
    padding: 0 6px 2px 0;
    opacity: 0.5;
    font-size: 12px;
}
.zg .hasLobby .reg2 th:first-child, .zg .hasLobby .reg2 td:first-child {
    font-size: 10px;
}
.zg .page_profile .hasLobby .reg2 th:first-child, .zg .page_profile .hasLobby .reg2 td:first-child {
    font-size: 10px;
}

.zg .reg2 th, .zg .reg2 td {
    vertical-align: top;
}

.zg .reg2 input[type=text], .zg .reg2 input[type="password"], .zg .reg2 input[type="email"], .zg .reg2 select {
    width: 87% !important;
}
.zg #userdetails_abort, .zg #userdetails_submit    {
    width: 87%;
}
.zg .hasLobby .reg2 input[type=text], .zg .hasLobby .reg2 input[type="password"], .zg .hasLobby .reg2 input[type="email"], .zg .hasLobby .reg2 select   {
    width: 87%    !important;
}
.zg .hasLobby #userdetails_abort, .zg .hasLobby #userdetails_submit    {
    width: 87%;
}

.zg .hasLobby .reg2 input[type="checkbox"]    {
    margin-left: 6px;
}

.zg .reg2 select {
    height: 32px;
}
.zg .reg2 input[type="checkbox"] {
    width: 24px;
    height: 24px;
    margin: 0;
}

.zg .page_signup #userdetails input[type=text], .zg .page_signup #userdetails input[type=number], .zg .page_signup #userdetails input[type=email], .zg .page_signup #userdetails input[type=password], .zg .page_signup #userdetails select {
    width: 248px;
}

.zg #consentbox th:first-child, .zg #consentbox td:first-child  {
    opacity: 1;
}
.zg .page_signup #consentbox{
    float: right;
    width: 332px;
    margin-bottom: 16px;
}

.zg #consentbox input[type=checkbox]    {
    margin-right: 8px;
}
.zg #consentbox td    {
    padding: 0 0 12px 0;
    vertical-align: top;
}
.zg #consentbox td:last-child    {
    padding: 0 0 12px 6px;
}
.zg .page_signup #tableUserBtn{
    text-align: right;
}
.zg #userdetails_abort, .zg #userdetails_submit    {
    width: 240px;
}

/* lobby OVERWRITE Template -------------------------------- */
#lobby .logout, #lobby.zgLobby .logout {
    text-align: left;
    padding: 12px 8px 4px 10px  !important;
    height: auto;
}
#lobby #lobbyname, #lobby A, #lobby.zgLobby #lobbyname, #lobby.zgLobby A    {
    padding: 8px 4px 8px 10px;
    word-break: unset;
    hyphens: auto;
}
#lobby A#saldo, #lobby.zgLobby A#saldo    {
    padding-left: 10px !important;
}


/* page_start -------------------------------- */
.zg #zgShortcuts    {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: 1fr;
    grid-column-gap: 2px;
    grid-row-gap: 0px;
}

.zg .zgSC   {
    text-align: center;
}
.zg .zgSC:hover   {
    cursor: pointer;
}
.zg .page_start #zgShortcuts h2   {
    font-size: 26px !important;
    text-align: center;
    padding: 16px 0 0 0;
    margin: 0;
}
.zg .page_start #zgShortcuts p   {
    font-size: 15px !important;
    padding: 4px 2px 8px 2px;
    margin: 0;
}


/* page_saldo -------------------------------- */
.zg .txtC   {
    display: block;
    text-align: left;
}
.zg .saldoR1 {
    font-size: 18px;
    width: 304px;
    margin-left: 0.75em;
}
.zg .page_saldo h3 {
    padding-top: 64px !important;
}
.zg .page_saldo h3.first {
    padding-top: 16px !important;
}
.zg .page_saldo .saldo input {
    min-width: 304px;
}
.zg .page_saldo .plcfaktura input {
    min-width: 10px;
}
/* //- override template */
.template .page_start article, .template .page_saldo article { /* general */
    left: 0;
    padding: 24px 8px 24px 16px;
    max-width: 936px;
}
.zg .page_profile #usereditor {
    padding: 0px 0px 24px 32px;
}
.zg .visNone   {
    visibility: hidden;
    margin: 0;
    padding: 0;
}
/* //-
.zg .saldoBetrag    {
    padding-left: 1em;
    line-height: 2;
}
.zg #lobby #credit  {
    line-height: 1;
}
.zg #lobby #credit pf-openfaktura   {
    line-height: 1.4;
}
*/

/* page_saldo / transactions -------------------------------- */
#plc_notebox_transactions {
    border-collapse: collapse;
    background: #DDD;
}
#plc_notebox_transactions, #plc_notebox_transactions .diff {
    font-size: 11px;
}
#plc_notebox_transactions > TR > TD:not(:last-child) {
    border-right: solid 1px #bbb;
}
#plc_notebox_transactions > TR > TD:last-child, #plc_notebox_transactions > TR > TD:nth-child(4) {
    text-align: right;
}
#plc_notebox_transactions table.diff td {
    background: yellow;
    padding: 2px 8px 0px;
    border: solid 1px red;
    text-align: left;
}
#plc_notebox_transactions > tr:nth-child(2n + 1) {
    background-color: rgb(244,244,244);
}
#plc_notebox_transactions > tr > td {
    padding: 6px 8px 4px 8px;
    color: #888;
    overflow: hidden;
	text-overflow: ellipsis;
}
#plc_notebox_transactions > tr > td:nth-child(1) {
    white-space: nowrap;
}
#plc_notebox_transactions > tr > td::first-line {
    font-size: 13px;
    color: #000;
}
#plc_notebox_transactions > tr > td:nth-child(1) > DIV {
    user-select: all;
}
#plc_notebox_transactions > tr > td:nth-child(3) > DIV > DIV {
    display: inline-block;
    text-align: right;
    width: 32px;
}
#plc_notebox_transactions .diff {
    display: block;
    margin-left: 24px;
}
#plc_notebox_transactions .diff TD {
    padding-right: 8px;
}


/* page_user, page_module, page_results -------------------------------- */
.zg .fboxUser   {
    margin-bottom: 12px;
    border-bottom: solid 1px #606060;
}
.zg .page_users .t5DialogCenterBox    {
    padding: 0 6px;
}
.zg .t5DialogCenterBox    {
    width: calc(100vw - 2rem);
    height: calc(100vh - 0.5rem);
    overflow: auto;
}

.zg #users, .zg #groups  {
    font-size: 16px;
    padding: 0 0 0 12px;
}
.zg .page_module #credits_select_all    {
    margin-left: 4px;
    width: 97%;
}
.zg .page_users .addRemove   {
    height: 36px;
}
.zg .page_users .addRemove > a, .zg .page_users .addRemove > p   {
    display: inline-block;
    font-size: 20px;
    width: 32px;
    height: 36px;
    text-align: left;
}
.zg .page_users .addRemove > a:first-child   {
    padding-left: 6px;
}
.zg .page_users .addRemove > p:last-child   {
    float: right;
    text-align: right;
    padding: 0 12px 0 0;
    margin: 0;
    color: #3088E0;
}

.zg .page_users h2, .zg .page_module h2, .zg .page_results h2 {
    font-size: 24px    !important;
    font-weight: bold    !important;
    text-align: left;
    margin: 12px 0 6px 0;
    padding: 0    !important;
}
.zg .rows > DIV {
    border-width: 0 0 1px 0;
    border-color: #50A8FF;
    padding: 6px 0 0 4px;
}
.zg #users_rows.rows > DIV    {
    word-break: unset;
    hyphens: auto;
    height: auto;
    min-height: 28px;
    white-space: normal;
}

.zg .page_users h3, .zg .page_users h4, .zg .page_module h3, .zg .page_module h4 {
    font-weight: bold    !important;
    font-size: 18px;
    padding: 0;
    text-align: left;
}
.zg .page_users h3, .zg .page_users h4, .zg .page_module h4 {
    margin: 0.5em 0 0.25em 0;
}
.zg .page_users #plc_notebox h3 {
    margin: 1.5em 0 0.25em 0;
}
.zg .filter input {
    font-size: 1em    !important;
}
.zg .options > A, .zg .options DIV  {
    color: rgba(128,128,128,1)
}
.zg .page_users #user_add, .zg .page_users #group_add   {
    color: #FFF !important;
    background-color: rgba(0,128,255,0.8);
}
.zg .page_users #user_add:hover, .zg .page_users #group_add:hover   {
    background-color: rgba(0,128,255,1);
}
.zg .page_users .selected #user_remove, .zg .page_users .selected #group_remove   {
    color: #FFF !important;
    background-color: rgba(0,128,255,0.8);
    opacity: 1;
    border-left: 1px solid rgb(255,255,255);
}
.zg .page_users .selected #user_remove:hover, .zg .page_users .selected #group_remove:hover   {
    background-color: rgba(0,128,255,1);
}
.zg .page_users :not(.selected) .needsSelection #user_remove, .zg .page_users :not(.selected) .needsSelection #group_remove   {
    color: #CCC !important;
    background-color: rgba(32,32,32,0.5);
    border-left: 1px solid rgba(255,255,255,0);
    opacity: 0.35;
    pointer-events: none;
}
/* //-
.zg .page_users .selected .needsSelection #user_remove, .zg .page_users .selected .needsSelection #group_remove   {
    color: #CCC !important;
    background-color: rgba(32,32,32,0.5);
    border-left: 1px solid rgba(255,255,255,0);
    opacity: 0.35;
    pointer-events: none;
}
*/

.zg .cntUE, .zg .page_users #users, .zg .page_users #groups, .zg .page_module #programs, .zg .page_module #users, .zg .page_module #groups, .zg .lizenzen, .zg .page_results #users, .zg .page_results #groups, .zg .page_results #teacher_ex {
    display: none;
}
.zg .r254 #users, .zg .r254 #groups {
    display: none   !important;
}
.zg .r254 .lizenzen {
    display: block   !important;
}
/* size_ml */
@media (min-width: 57rem) {
    .zg .cntUE, .zg .page_users #users, .zg .page_users #groups, .zg .page_module #programs, .zg .page_module #users, .zg .page_module #groups, .zg .lizenzen, .zg .page_results #users, .zg .page_results #groups, .zg .page_results #teacher_ex {
        display: block;
    }
}

.zg .cntUE  {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
    padding: 0px 0px 0 544px;

}

.zg .page_users TEXTAREA:valid {
    background-color: #FF8 !important;
}
.zg .page_users input[type=text]:valid, .zg .page_users input[type="password"]:valid, .zg .page_users input[type="number"]:valid, .zg .page_users input[type=email]:valid, .zg .page_users input[type=date]:valid {
    background-color: rgba(255, 255, 255, 1) !important;
}

.zg .page_users #usereditor table.reg2 {
    margin: 8px 0 8px 0;
}
.zg .page_users .reg2 {
    margin: 0;
}
.zg .page_users .d100 {
    display: none;
}
.zg .page_users .reg2 th:first-child, .zg .page_users .reg2 td:first-child {
    display: none;
}

.zg .page_users #usereditor table.reg2, .zg .page_users #usereditor BUTTON, .zg .page_users #usereditor INPUT, .zg .page_users #usereditor SELECT, .zg .page_users #usereditor TEXTAREA, .page_users .zg #usereditor LABEL, .zg .page_profile #usereditor table.reg2, .zg .page_profile #usereditor BUTTON, .zg .page_profile #usereditor INPUT, .zg .page_profile #usereditor SELECT, .zg .page_profile #usereditor TEXTAREA, .page_profile .zg #usereditor LABEL  {
    font-size: 16px;
}
.zg .page_users #usereditor INPUT   {
}
.zg .page_users #userdetails TD:nth-child(2) > *:not([type=checkbox]):not([type=button]) {
    width: 220px    !important;
}
.zg .page_users #userdetails .reg2 TD:nth-child(2) > *:not([type=checkbox]):not([type=button]) {
    width: auto    !important;
}
.zg .page_users #userdetails_abort, .zg .page_users #userdetails_submit   {
    width: 128px    !important;
}

.zg .page_users #userdetails_sitting {
    height: 32px;
    margin: 0 8px 8px 0;
    font-size: 18px  !important;
}
.zg .page_users #userdetails_abort {
    margin: 0 8px 8px 8px;
}
.zg .page_users #userdetails_submit {
    margin: 0 0 8px 0;
}
.zg .cntHowTo  {
    padding: 0 0 0 0;
}
.zg .cntHowTo h2  {
    margin: 12px 0;
    padding: 0;
}

.zg .howto {
    max-width: 480px;
}


/* page_module -------------------------------- */
.zg .page_module #programs  {
    padding: 0px 0px 24px 512px;
}
.zg .tray {
    width: 288px;
    height: 288px;
}
.zg .program {
    width: 272px;
    height: 272px;
    font-size: 15px;
}
.zg .program IMG {
    width: 82px;
    height: 82px;
}
.zg .tray .zgAuthor, .zg .program .author {
    height: 62px;
    text-align: right;
    font-style: italic;
    padding-left: 76px;
}
.zg .tray .maximized .zgAuthor {
    height: 35px;
    padding-top: 16px;
}
.zg .tray .maximized .zgAuthor, .zg .tray .maximized .price, .zg .program pf-manual {
    width: 46%;
}
.zg .tray .maximized .price, .zg .program pf-manual {
    margin-left: 76px;
}
.zg .tray h1 {
    text-align: left;
    font-size: 26px  !important;
    line-height: 1.25;
    margin: 6px 0;
    padding: 0;
}
.zg .program .cretitcount {
    width: 272px;
    padding: 4px 8px 2px 8px;
}
.zg .tray ul {
    padding-left: 18px;
    margin: 0 0 6px 0;
}
.zg .tray .prolog {
    line-height: 1.25  !important;
}
.zg .tray .prolog b {
    display: inline-block;
    margin: 6px 0;
}
.zg .tray .tileTtl {
    font-weight: bold;
    margin: 10px 0 6px 0;
    line-height: 1.25  !important;
    max-width: 100%
}
.zg .tray .tileTxt {
    padding: 0;
    line-height: 1.25  !important;
}
.zg .tray .tileTxt + .tileTxt {
    padding-top: 8px;
}
.zg .tray .zg_flat {
    display: block;
    font-weight: normal;
    margin-top: -12px;
}
.zg .tray .maximized .tileTxt {
    font-size: 16px;
    padding: 0 0 16px 0;
}
.zg .tray .tileTtl ul {
    padding: 0 0 0 1.5em;
    margin: 0;
}
.zg .tray .zg_suits, .zg .tray .zg_description, .zg .tray .zg_video, .zg .tray .zg_screens {
    display: none;
}
.zg .tray .maximized .zg_suits, .zg .tray .maximized .zg_description, .zg .tray .maximized .zg_video, .zg .tray .maximized .zg_screens {
    display: block;
}
.zg .tray .maximized .zg_screens   {
    margin-bottom: 352px  !important;
}
.zg .tray .maximized .zg_description, .zg .tray .maximized .zg_screens {
    max-width: 880px;
    margin-bottom: 48px;
}
.zg .tray .maximized .zg_video {
    margin: 16px 0 16px 0;
}
.zg .tray .maximized .zg_video {
    margin: 16px 0 16px 0;
}
.zg .tray .maximized .zg_video img {
    width: auto;
    height: auto;
    padding: 0;
}
.zg .tray .maximized .zg_screens figure {
    display: inline-grid;
    width: 240px;
    margin: 0 12px 32px 0;
}
.zg .tray .maximized .zg_screens figure:last-child {
    margin: 0 0 32px 0;
}
.zg .program .zg_screens img  {
    position: relative;
    pointer-events: all;
    cursor: pointer;
}
.zg .program .zg_screens figcaption  {
    font-size: 14px;
    margin-top: 8px;
}

.zg .program.maximized {
    width: calc(100% - 160px)   !important;
}
.zg div.program.maximized img   {
    width: 72px;
    height: 72px;
    padding: 18px;
}
.zg div.program.maximized .zg_screens img   {
    width: 240px;
    height: auto;
    padding: 0;
}
.zg div.program.maximized h1   {
    font-size: 30px  !important;
    text-align: left;
    padding: 0;
    margin: 16px 0 40px 0;
}
.zg .tray .maximized .author, .zg .tray .maximized .price, .zg .tray .maximized .prolog, .zg .tray .maximized .description, .zg .tray .maximized .zgAge, .zg .tray .maximized .tileTtl, .zg .tray .maximized .tileTxt, .zg .tray .maximized .zg_video, .zg .tray .maximized .zg_description, .zg .tray .maximized .zg_screens    {
    font-size: 18px;
    line-height: 1.4;
}
.zg .tray .maximized .author, .zg .tray .maximized .description    {
    padding: 16px 0 0 0;
}
.zg .tray .maximized .description b    {
    display: inline-block;
    padding: 16px 0 6px 0;
}

.zg .page_module .lizenzen  {
    left: auto  !important;
    right: 0;
    width: 432px  !important;
    padding: 32px 40px 48px 40px  !important;
}
.zg .lizenzen input + input {
    margin-left: 12px;
}
.zg .rows > DIV, .zg .lizenzen, .zg .lizenzen input {
    font-size: 18px  !important;
}
.zg .lizenzen input[type="button"]  {
    margin-top: 16px;
}
.zg .usrSel, .zg .usrDes {
    display: inline-block;
}
.zg .cretitcountLicense, .zg .usrSel, .zg .usrDes {
    font-size: 14px  !important;
}
.zg .usrSel {
    padding-top: 16px;
}
.zg .usrDes {
    padding-bottom: 16px;
}
.zg .cretitcountLicense {
    padding-top: 32px;
}
.zg .txtSzL {
    font-size: 20px  !important;
    vertical-align: middle;
}

.zg .lizenzen .inner {
    max-width: 640px;
}

/* size_ml */
@media (min-width: 57rem) {
    .zg .howto {
        max-width: 640px;
    }
}
/* size_xl */
@media (min-width: 100rem) {
    .zg .howto {
        max-width: 800px;
    }
}

.zg .howto img {
    width: 228px;
    height: 128px;
    cursor: pointer;
}
.zg .howto input {
    margin: 12px 0;
    padding: 2px 8px 0;
}

.zg .howto TD.videopreview::after {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    background-color: rgba(0,0,0,0.15);
    pointer-events: none;
    font-size: 56px;
    color: rgba(255,0,0,0.85);
    text-align: center;
    padding-top: 32px;
}


.zg .howto tr {
    background: #64A8F8;
    color: #FFF;
}
.zg .howto tr:last-child {
    background: #F00;
}
.zg .howto tr:first-child > td:first-child {
    border-bottom: none;
}
.zg .howto td:last-child {
    padding: 0;
    width: 34%;
    border-left: solid 4px #EFEFEF;
}
.zg .howto td, .zg .howto td.tdLast {
    box-sizing: border-box;
    vertical-align: top;
    color: #FFF;
    height: 146px;
    padding: 8px 8px 8px 16px;
    border-bottom: solid 4px #EFEFEF;
    background-size: cover !important;
}
.zg input.tWrap {
    text-wrap: wrap;
    height: auto;
}

.zg .howto tr:last-child > td:last-child {
    border-left: none;
}
.zg .howto td.videopreview {
    cursor: pointer;
}


.zg .cnt {
    padding-bottom: 32px;
}

.zg .cln1 {
    padding-bottom: 64px;
}
.zg .cln0, .zg .cln1, .zg footer .cln2S, .zg footer .fboxS   {
    padding-left: 1em;
    padding-right: 0.5em;
}

/* page_module -------------------------------- */


[lang^=ar].template .rows .group,
[lang^=ar].template .rows .name {
    padding: 0 8px 0 0;
}


/* responsive -------------------------------- */
/* size_xs */
@media (min-width: 35rem) {
    .zg #menu1, .zg #menu2, .zg nav#lang {
        max-width: 97%;
    }

    .zg .cln2S, .zg .fboxS   {
        max-width: 40%;
    }

    .zg a.home, .zg .topnav a.icon  {
        font-size: 20px;
    }

    .zg .page_signup #ttttt TD, .zg .page_signup #ttttt TH  {
        font-size: 14px;
    }
    .zg .reg1 input {
        min-width: 96px;
        width: 108px;
    }
    .zg .page_signup #userdetails input[type=text], .zg .page_signup #userdetails input[type=number], .zg .page_signup #userdetails input[type=email], .zg .page_signup #userdetails input[type=password], .zg .page_signup #userdetails select {
        width: 284px;
    }
    .zg .page_signup #consentbox{
        width: 380px;
    }

    .zg .reg2 input[type=text], .zg .reg2 input[type="password"], .zg .reg2 input[type="email"], .zg .reg2 select {
        width: 85% !important;
    }
    .zg #userdetails_abort, .zg #userdetails_submit    {
        width: 280px;
        height: 2em;
    }
    .zg .hasLobby .reg2 input[type=text], .zg .hasLobby .reg2 input[type="password"], .zg .hasLobby .reg2 input[type="email"], .zg .hasLobby .reg2 select   {
        width: 67%    !important;
    }
    .zg .hasLobby #userdetails_abort, .zg .hasLobby #userdetails_submit    {
        width: 67%;
    }
    .zg .hasLobby #userdetails_sitting    {
        width: 29%;
    }

    .zg .imgFS img, .zg .imgFS2 img  {
        width: 100%;
        padding: 0 0 1.5em 0;
    }

    .zg .linkC  {
        display: inline-block;
        padding-right: 32px;
    }

    .zg .colCat1, .zg .colCat2, .zg .colCat3, .zg .colCat4, .zg .colCat5  {
        border-width: 0 2px 0 2px;
    }
    .zg .colCatR1, .zg .colCatR2, .zg .colCatR3, .zg .colCatR4, .zg .colCatR5  {
        border-width: 0 2px 0 0;
    }
}

/* size_s */
@media (min-width: 42rem) {
    .zg body, .zg input, .zg table    {
        font-size: 16px;
    }
    .zg figcaption    {
        font-size: 14px;
    }
    .zg h2 {
        font-size: 30px;
    }
    .zg .txtSzM {
        font-size: 13px;
    }
    .zg #menu1, .zg #menu2, .zg nav#lang {
        max-width: 98%;
    }
    .zg #menu2 .home {
        margin-top: 8px;
    }
    .zg .cnt, .zg .cln0, .zg .cln1, .zg .cln2, .zg .fbox, .zg .fboxGap, .zg .gridK, .zg h1, .zg h2, .zg h3, .zg footer h4, .zg .cookiecCnt, .zg .clnLeft, .zg .loadPdf, .zg .t5DialogMediaBox .header p {
        max-width: 93%;
    }

    .zg a.home, .zg .topnav a.icon  {
        font-size: 24px;
    }

    .zg .topnav .nNav {
        font-size: 16px;
    }

    .zg .page_signup #ttttt TD, .zg .page_signup #ttttt TH  {
        font-size: 16px;
    }
    .zg .reg1 input {
        min-width: 128px;
        width: 128px;
    }

    .zg .program_full article h1    {
        font-size: 32px !important;
    }

    .zg .videoPlayLight, .zg .videoPlayDark {
        font-size: 48px;
    }

    .zg .t5DialogMediaBox .header p {
        max-width: 93%;
        margin: 0 auto;
    }

    .zg .colCat1, .zg .colCat2, .zg .colCat3, .zg .colCat4, .zg .colCat5  {
        border-width: 0 4px 0 4px;
    }
    .zg .colCatR1, .zg .colCatR2, .zg .colCatR3, .zg .colCatR4, .zg .colCatR5  {
        border-width: 0 4px 0 0;
    }
}

/* size_m */
@media (min-width: 49rem) {
    .template .page_start article { /* general */
        padding: 24px 8px 24px 56px;
        max-width: 984px;
    }
    .zg body, .zg input, .zg table    {
        font-size: 18px;
    }
    .zg figcaption    {
        font-size: 16px;
    }
    .zg .subLog, .zg .subNav    {
        font-size: 16px;
    }
    .zg .txtSzM {
        font-size: 14px;
    }
    .zg .r254 #menu2 .home {
        padding-left: 114px !important;
    }

    .zg #menu1, .zg .cnt, .zg .cln2, .zg .fbox, .zg h1, .zg h2, .zg h3, .zg footer h4, .zg .clnLeft, .zg nav#lang, .zg .loadPdf, .zg .t5DialogMediaBox .header p {
        max-width: 62rem;
    }
    .zg #menu2 {
        max-width: 76%;
        margin: 0 0 0 48px;
    }

    .zg .hasLobby .reg2 input[type=text], .zg .hasLobby .reg2 input[type="password"], .zg .hasLobby .reg2 input[type="email"], .zg .hasLobby .reg2 select   {
        width: 87%    !important;
    }
    .zg .hasLobby #userdetails_abort, .zg .hasLobby #userdetails_submit    {
        width: 87%;
    }
    .zg .cookiecCnt {
        max-width: 60rem;
    }
    .zg .mddownloadpdflink   {
        padding-right: 16px;
    }

    .zg .cln0, .zg .cln1, .zg .cln2S, .zg .fboxS, .zg .gridK {
        max-width: 38rem;
        padding-left: 0;
        padding-right: 0;
    }

    .zg a.home  {
        font-size: 26px;
        padding: 0 16px !important;
    }
    .zg .topnav a.icon  {
        font-size: 30px;
    }
    .zg .topnav .nNav {
        float: right;
        font-size: 18px;
    }

    .lvl table, .price table  {
        padding: 5px 0 0 24px;
    }
    .price table td:last-child  {
        padding-right: 10px;
    }

    .zg .tile figure  {
        margin: 0 8px 0 -16px;
    }
    .zg .lvl table, .zg .price table  {
        margin-top: 0;
    }
    .zg .tileTxt   {
        padding: 12px 0 0 0;
    }

    .zg .gridprolog  {
        max-width: 544px;
    }

    .zg .program_full article h1    {
        font-size: 36px !important;
    }

    .zg .lIn .f2:first-child  {
        padding: 7px 32px 0 0;
    }
    .zg .lIn .f2:last-child h4  {
        font-size: 18px;
    }
    .zg .lIn #loginform, .zg .lIn #altLogin {
        float: right;
    }

    .zg .hintSize   {
        display: none;
    }

    .zg h1, .zg h2, .zg h3  {
        padding: 32px 12px 16px 32px;
    }
    .zg .cln1 h1, .zg .cln1 h2, .zg .cln1 h3, .zg .hasLobby h1, .zg .hasLobby h2, .zg .hasLobby h3  {
        padding: 32px 12px 16px 0;
    }

    .zg .f2, .zg .f3_1, .zg .f3_2, .zg .f3_3, .zg .f2User_1, .zg .f2User_2, .zg .page_profile .f2UE {
        min-width: 1px;
        display: inline-block;
        padding: 0 16px;
    }

    .zg .f2User_1, .zg .f2User_1, .zg .f2UE {
        padding: 0 12px;
    }

    .zg .f2User_1 {
        padding: 0 6px 0 0;
    }
    .zg .f2User_2 {
        padding: 0 12px 0 0;
    }
    .zg .f2, .zg .page_profile .f2UE {
        flex: 1;
    }
    .zg .f3_1 {
        flex: 1;
    }
    .zg .f3_2 {
        flex: 2;
    }
    .zg .f3_3 {
        flex: 3;
    }
    .zg .f2User_1 {
        flex: 2;
    }
    .zg .f2User_2 {
        flex: 1;
    }

    .zg .fboxGap {
        max-width: 54rem;
    }

    .zg .videoPlayLight, .zg .videoPlayDark {
        font-size: 48px;
    }

    .zg .t5DialogMediaBox .header p {
        margin: 0 auto;
    }

    .zg footer a.home {
        padding: 0 0 12px 12px;
    }

    .zg .imgFS img, .zg .imgFS2 img  {
        width: calc(50% - 0.5em);
    }
    .zg .imgFS img   {
        padding: 0 1em 1.5em 0;
    }
    .zg .imgFS2 img {
        padding: 0 0 1.5em 0;
    }

    .zg .t5DialogMediaBox iframe.sizeM    {
        width: 640px;
        height: 480px;
    }

    .zg .colCat1, .zg .colCat2, .zg .colCat3, .zg .colCat4, .zg .colCat5  {
        border-width: 0 4px 0 4px;
    }
    .zg .colCatR1, .zg .colCatR2, .zg .colCatR3, .zg .colCatR4, .zg .colCatR5  {
        border-width: 0 4px 0 0;
    }

    .zg .program.maximized {
        width: calc(100% - 192px)   !important;
    }

    .zg div.program.maximized img   {
        width: 128px;
        height: 128px;
        padding: 24px;
    }
    .zg div.program.maximized h1   {
        font-size: 36px  !important;
        padding: 13px 0 0 148px;
    }
    .zg div.program.maximized .prolog, .zg div.program.maximized .description   {
        max-width: 640px;
    }
    .zg .tray .maximized .zg_screens figure {
        width: 288px;
    }
}

/* size_ml */
@media (min-width: 57rem) {
    .zg #menu2 .home    {
        margin-top: 22px;
    }
    .zg a.home  {
        font-size: 26px;
        padding: 0 18px !important;
    }
    .zg .topnav a.icon  {
        font-size: 36px;
    }
}

/* size_l */
@media (min-width: 65rem) {
    .template .page_start article { /* general */
        padding: 24px 8px 24px 92px;
        max-width: 1012px;
    }
    .zg #menu2 {
        margin: 0 128px 0 92px;
    }
    .zg .r254 #menu2 .home {
        padding-left: 72px !important;
    }
    .zg a.home  {
        font-size: 40px;
        padding: 0 !important;
    }
    .zg #menu2 .home    {
        margin-top: 10px;
    }
    .zg .topnav a:first-child   {
        padding: 8px 16px 14px 0;
    }
    .zg .topnav a:last-child   {
        padding: 8px 0 14px 16px;
    }
    .zg .topnav .subLog a:last-child {
        padding: 4px 0 0 16px !important;
    }
    .zg nav#lang {
        max-width: 64rem;
    }

    .zg .hasLobby .reg2 input[type=text], .zg .hasLobby .reg2 input[type="password"], .zg .hasLobby .reg2 input[type="email"], .zg .hasLobby .reg2 select   {
        width: 67%    !important;
    }
    .zg .hasLobby #userdetails_abort, .zg .hasLobby #userdetails_submit    {
        width: 67%;
    }
    .zg .page_users .hasLobby .reg2 input[type=text], .zg .page_users .hasLobby .reg2 input[type="password"], .zg .page_users .hasLobby .reg2 input[type="email"], .zg .page_users .hasLobby .reg2 select   {
        width: 87%    !important;
    }
    .zg .page_users .hasLobby #userdetails_abort, .zg .page_users .hasLobby #userdetails_submit    {
        width: 87%;
    }

    .zg .cnt, .zg .cln2, .zg .fbox, .zg .fboxGap, .zg h1, .zg h2, .zg h3, .zg footer h4, .zg .clnLeft, .zg .loadPdf, .zg .t5DialogMediaBox .header p {
        max-width: 64rem;
    }
    .zg .cookiecCnt {
        max-width: 60rem;
    }

    .zg .f2User_1, .zg .f2User_1, .zg .f2UE {
        min-width: 1px;
        display: inline-block;
        padding: 0 12px;
    }
    .zg .f2UE {
        flex: 1;
    }
    .zg .f2User_1 {
        flex: 3;
    }
    .zg .f2User_2 {
        max-width: 100%;
        flex: 2;
    }

    .zg h1, .zg h2, .zg h3  {
        padding: 32px 12px 16px 40px;
    }

    .zg .videoPlayLight, .zg .videoPlayDark {
        font-size: 64px;
    }

    .zg .t5DialogMediaBox iframe.sizeM    {
        width: 768px;
        height: 576px;
    }

    .zg .colCat1, .zg .colCat2, .zg .colCat3, .zg .colCat4, .zg .colCat5  {
        border-width: 0 8px 0 8px;
    }
    .zg .colCatR1, .zg .colCatR2, .zg .colCatR3, .zg .colCatR4, .zg .colCatR5  {
        border-width: 0 8px 0 0;
    }
    .zg .page_module .lizenzen  {
        width: 512px  !important;
    }


    .zg div.program.maximized img   {
        width: 160px;
        height: 160px;
    }
    .zg div.program.maximized h1   {
        padding: 45px 0 0 184px;
    }
    .zg .tray .maximized .zgAuthor, .zg .tray .maximized .price, .zg .program pf-manual {
        width: 55%;
    }
}

/* size_xl */
@media (min-width: 100rem) {
    .zg #menu2 {
        margin: 0 320px 0 92px;
    }

    .zg .videoPlayLight, .zg .videoPlayDark {
        font-size: 88px;
    }

    .zg .colCat1, .zg .colCat2, .zg .colCat3, .zg .colCat4, .zg .colCat5  {
        border-width: 0 16px 0 16px;
    }
    .zg .colCatR1, .zg .colCatR2, .zg .colCatR3, .zg .colCatR4, .zg .colCatR5  {
        border-width: 0 16px 0 0;
    }


    .zg .tray .maximized .zg_video, .zg .tray .maximized .zg_video img {
        width: 384px;
    }
    .zg .tray .maximized .zgAuthor, .zg .tray .maximized .price, .zg .program pf-manual {
        width: 60%;
    }

    .zg #groups, .zg #users {
        width: 192px;
        width: 240px;
    }
    .zg .rows_container {
        width: 224px;
    }
    .zg #users {
        left: 364px;
    }
    .zg .page_module #programs {
        padding: 0px 0px 24px 608px;
    }
    .zg div.program.maximized {
        left: 604px !important;    
        width: calc(100% - 668px);
        }
    .zg .cntUE {
        padding: 0px 0px 0 640px;
    }
    .zg #teacher_ex {
        padding: 0 216px 0 620px;
    }
    .template .r254 #teacher_ex    {
        padding: 0 224px 0 152px;
    }
    
    .zg #teacher_tl {
        width: 192px;
    }
    .zg pf-time {
        width: 112px    !important;
    }
}


/* color -------------------------------- */
.zg .regRed {
    font-size: 24px !important;
    color: #FF0000;
}
.zg .regGreen {
    font-size: 30px !important;
    color: #00E000;
}
.zg .red1 {
    color: #FF0000;
}
.zg .green1 {
    color: #00E000;
}
.zg .yellow1 {
    color: #FFE000;
}
.zg .orange1 {
    color: #FF8000;
}
.zg .grey1 {
    color: #A0A0A0;
}
.zg .blue1 {
    color: #2060FF;
}

.zg .page_start .yellow1, .zg .page_start .red1 {
    float: left;
    line-height: 1.5em;
    padding: 0 8px 0 0;
}

.zg .tempo60Txt, .t60unitsTxt  {
    color: rgb(0,192,255);
}
.zg .bgFbRed {
    background-color: #FF4850;
    color: #000000;
    padding: 4px 12px;
}
.zg .bgFbGreen {
    background-color: #48FF50;
    color: #000000;
    padding: 4px 12px;
}
.zg .bgFbBlue {
    background-color: #00E0FF;
    color: #000000;
    padding: 4px 12px;
}
.zg .fbRed {
    color: #FF0000;
    padding: 4px 12px;
}
.zg .fbGreen {
    color: #00E000;
    padding: 4px 12px;
}
.zg .fbBlue {
    color: #0080FF;
    padding: 4px 12px;
}
.zg .sepColumn { 
    border-spacing: 0px 6px;
    border-collapse: separate;
}
.zg .hpaBlue1    {
    color: rgba(73,155,201,1);
    font-weight: bold;
}
.zg .hpaBlueBG    {
    display: block;
    padding-left: 16px;
    border-left: 8px solid rgba(73,155,201,1);
}
.zg .hpaRed1    {
    color: rgba(236,93,87,1);
    font-weight: bold;
}
.zg .hpaRedBG    {
    display: block;
    padding-left: 16px;
    border-left: 8px solid rgba(236,93,87,1);
}
.zg .hpaBlue2BG  {
    padding-top: 16px;
    border-top: 8px solid rgba(142,190,221,1);
    text-align: center;
}
.zg .hpaOrangeBG  {
    padding-top: 16px;
    border-top: 8px solid rgba(240,154,55,1);
    text-align: center;
}
.zg .hpaOrange1    {
    color: rgba(240,154,55,1);
    font-weight: bold;
}
.zg .hpaGreen1    {
    color: rgba(172,187,102,1);
    font-weight: bold;
}
.zg .w100 {
    width: 100%;
}
.zg .w66 {
    width: 66%;
}
.zg .w26 {
    width: 26%;
}
.zg .w15 {
    width: 15%;
}
.zg .w10 {
    width: 10%;
}

.zg .pl40 {
    padding-left: 28px;
}
.zg .pt24 {
    padding-top: 24px;
}
.zg .litA  {
    font-variant: small-caps;
}
.zg .litT  {
    font-weight: bold;
    font-style: italic;
}

.zg .t5DialogMediaBox > *, .zg .t5DialogTitle, .zg h2.t5DialogTitle, .zg .t5DialogMessage, .zg .t5DialogInput, .zg .t5DialogInput input, .zg .t5DialogButton {
    font-size: 22px !important;
    line-height: 1.4 !important;
}
.zg .consent .t5DialogMediaBox > p, .zg .consent .t5DialogMessage, .zg #consenttext p, .zg #consenttext li {
    font-size: 16px !important;
}
.zg h2.t5DialogTitle    {
    max-width: 100% !important;
    padding: 18px 24px !important;
    text-align: left;
}
.zg .tackerRemark   {
    display: block;
    font-size: 13px;
}

/* test size -------------------------------- */
.zg .fussTest {
    text-align: center;
    padding: 0 0 12px 0;
    opacity: 0.25;
    width: 100%;
}
.zg .page_start .fussTest, .zg .page_profile .fussTest, .zg .page_users .fussTest, .zg .page_module .fussTest, .zg .page_results .fussTest, .zg .page_saldo .fussTest, .zg .page_private .fussTest {
    max-width: 40%;
    margin-left: 176px;
}
.zg .size_xs, .zg .size_s, .zg .size_m, .zg .size_l {
    display: none;
}
.zg .size_xs {
    display: inline-block;
}
@media screen and (min-width: 35rem) {
    .zg .size_xs, .zg .size_s, .zg .size_m, .zg .size_l {
        display: none;
    }
    .zg .size_s {
        display: inline-block;
    }
}
@media screen and (min-width: 49rem) {
    .zg .size_xs, .zg .size_s, .zg .size_m, .zg .size_l {
        display: none;
    }
    .zg .size_m {
        display: inline-block;
    }
}
@media screen and (min-width: 65rem) {
    .zg .size_xs, .zg .size_s, .zg .size_m, .zg .size_l {
        display: none;
    }
    .zg .size_l {
        display: inline-block;
    }
}
