.training-app-body{background:#f4f3ee;color:#262721}
.training-app-main{min-height:calc(100vh - 300px);padding:54px 24px 76px}
.training-app-shell{width:min(1120px,100%);margin:0 auto}
.training-app-breadcrumb,.training-app-eyebrow{color:#797765;font-size:11px;font-weight:750;letter-spacing:.15em;text-transform:uppercase}
.training-app-breadcrumb{display:flex;gap:8px;margin:0 0 20px}
.training-app-welcome{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center;padding:48px;border:1px solid #dedbd0;border-radius:16px;background:#fff;box-shadow:0 10px 34px #29281f0c}
.training-app-welcome-copy h1,.training-app-result-hero h1{margin:10px 0 16px;font-family:"Roboto Condensed",system-ui,sans-serif;font-size:clamp(36px,5vw,58px);line-height:1.02;letter-spacing:-.025em}
.training-app-welcome-copy>p:last-child,.training-app-exam-intro>p:last-child{max-width:560px;color:#64645d;font-size:17px;line-height:1.65}
.training-app-course-card{padding:28px;border:1px solid #d7d3c5;border-top:4px solid #96927d;border-radius:13px;background:#f1f0eb}
.training-app-course-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:22px;border-radius:50%;background:#e2e0d6;color:#77735f}
.training-app-course-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.training-app-course-card h2{margin:7px 0;font-family:"Roboto Condensed",system-ui,sans-serif;font-size:27px}
.training-app-course-card>span{color:#6b695d}
.training-app-course-metrics,.training-app-exam-stats{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.training-app-course-metrics span,.training-app-exam-stats span{display:flex;align-items:baseline;gap:7px;padding:9px 12px;border:1px solid #dedbd0;border-radius:8px;background:#fff;color:#68665c;font-size:13px}
.training-app-course-metrics strong,.training-app-exam-stats strong{color:#34342d;font-size:18px}
.training-app-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 18px;border:1px solid #807d69;border-radius:5px;background:#898571;color:white;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;transition:background .16s ease,transform .16s ease}
.training-app-button:hover{background:#716e5c;transform:translateY(-1px)}
.training-app-button.secondary{background:#fff;color:#454438}
.training-app-course-card form{margin:0}
.training-app-history{margin:26px 0 0;padding:26px 30px;border:1px solid #dedbd0;border-radius:12px;background:#fff}
.training-app-history h2,.training-app-result-heading h2{margin:0 0 16px;font-family:"Roboto Condensed",system-ui,sans-serif;font-size:28px}
.training-app-history ul{list-style:none;margin:0;padding:0}
.training-app-history li{display:grid;grid-template-columns:1fr auto auto;gap:18px;padding:13px 0;border-top:1px solid #eeece5;font-size:14px}
.training-app-history li span{color:#737166}.training-app-history li b{min-width:120px;text-align:right;color:#696652}
.training-app-disclaimer{margin:20px 0;color:#77766e;font-size:13px}
.training-app-exam-intro{margin:0 0 24px;padding:34px 38px;border:1px solid #dedbd0;border-radius:14px;background:#fff}
.training-app-exam-intro h1{margin:7px 0;font-family:"Roboto Condensed",system-ui,sans-serif;font-size:clamp(30px,4vw,44px)}
.training-app-exam-intro>p:last-child{margin-bottom:0}
.training-app-questions{display:grid;gap:14px}
.training-app-question{overflow:hidden;border:1px solid #dedbd0;border-radius:12px;background:#fff;box-shadow:0 3px 10px #29281f08}
.training-app-question-head{display:flex;align-items:center;gap:12px;min-height:54px;padding:10px 17px;background:#eeede7;color:#5f5d50}
.training-app-question-head>span{display:grid;place-items:center;width:33px;height:33px;border:1px solid #d5d2c6;border-radius:8px;background:#fff;color:#403f36;font-weight:750}
.training-app-question>p{margin:0;padding:19px 20px 12px;font-size:17px;font-weight:650;line-height:1.55;white-space:pre-line}
.training-app-options,.training-app-question>ul{display:grid;gap:0;margin:0;padding:0 20px 14px;list-style:none}
.training-app-option{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:12px;padding:14px 12px;border-top:1px solid #efeee9;color:#393a34;line-height:1.55;cursor:pointer}
.training-app-option:hover{background:#f8f7f3}
.training-app-option input{position:absolute;width:1px;height:1px;opacity:0}
.training-app-check{display:grid;place-items:center;width:21px;height:21px;margin-top:1px;border:1.5px solid #a8a593;border-radius:5px;background:#fff}
.training-app-option input:checked+.training-app-check{border-color:#77735d;background:#898571}
.training-app-option input:checked+.training-app-check:after{content:"✓";color:white;font-size:14px;font-weight:800}
.training-app-option input:focus-visible+.training-app-check{outline:3px solid #a9c5c0;outline-offset:2px}
.training-app-submit{position:sticky;bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:22px 0;padding:17px 20px;border:1px solid #d7d3c5;border-radius:12px;background:#f1f0eb;box-shadow:0 8px 26px #29281f20}
.training-app-submit span{color:#65645b;font-size:14px}
.training-app-inline-error{padding:14px 16px;border:1px solid #e8c7c3;border-radius:8px;background:#fff3f1;color:#8e352f}
.training-app-result-hero{display:flex;flex-direction:column;align-items:center;padding:44px 24px;border:1px solid #d7d3c5;border-radius:15px;background:#f0efe9;text-align:center}
.training-app-result-hero:before{display:grid;place-items:center;width:58px;height:58px;border:1px solid #c9c6b8;border-radius:50%;background:white;color:#77735d;font-size:29px;font-weight:800;content:attr(data-mark)}
.training-app-result-hero.passed{background:#e9f2eb;border-color:#c8ddce}.training-app-result-hero.not-passed{background:#f3efea}
.training-app-result-hero>p:not(.training-app-eyebrow){max-width:620px;color:#5f6059;font-size:17px;line-height:1.55}
.training-app-result-badge{display:inline-flex;margin:4px 0 15px;padding:8px 14px;border:1px solid #bbd4c4;border-radius:999px;background:#fff;color:#286044;font-weight:750}
.training-app-result-hero small{color:#74736b}
.training-app-result-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:34px 0 16px}
.training-app-answer{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px 10px;border-top:1px solid #efeee9;line-height:1.5}
.training-app-answer-mark{font-weight:800}.training-app-answer.is-correct{background:#f1f7f2;color:#285c40}.training-app-answer.is-wrong{background:#fff3f1;color:#8c3832}.training-app-answer b{font-size:12px;white-space:nowrap}
.training-app-message{max-width:680px;margin:60px auto;padding:44px;border:1px solid #dedbd0;border-radius:14px;background:#fff;text-align:center}
.training-app-mark{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 18px;border:1px solid #dedbd0;border-radius:50%;background:#f1f0eb;color:#77735d;font-size:24px;font-weight:750}
.training-app-message h1{font-family:"Roboto Condensed",system-ui,sans-serif;font-size:36px}
.training-app-message>p:not(.training-app-eyebrow){color:#65645b;line-height:1.6}
@media(max-width:760px){.training-app-main{padding:28px 16px 46px}.training-app-welcome{grid-template-columns:1fr;gap:27px;padding:24px 19px}.training-app-course-card{padding:21px}.training-app-exam-intro{padding:24px 20px}.training-app-question>p{padding:16px 15px 10px;font-size:16px}.training-app-options,.training-app-question>ul{padding:0 12px 11px}.training-app-option{gap:9px;padding:12px 7px}.training-app-submit{bottom:8px;align-items:flex-start;flex-direction:column;padding:14px}.training-app-submit button{width:100%}.training-app-result-heading{align-items:flex-start;flex-direction:column}.training-app-result-heading .training-app-button{width:100%}.training-app-history{padding:22px 18px}.training-app-history li{grid-template-columns:1fr auto;gap:7px 12px}.training-app-history li b{grid-column:2;grid-row:2;text-align:right}.training-app-answer{grid-template-columns:22px minmax(0,1fr)}.training-app-answer b{grid-column:2}}
.training-app-result-symbol{display:grid;place-items:center;width:58px;height:58px;margin-bottom:15px;border:1px solid #c9c6b8;border-radius:50%;background:#fff;color:#77735d;font-size:29px;font-weight:800}.training-app-result-hero:before{content:none}

.training-app-login{max-width:560px;text-align:left}
.training-app-login .training-app-mark{margin-left:0}
.training-app-auth-form{display:grid;gap:16px;margin:24px 0}
.training-app-auth-form label{display:grid;gap:7px;color:#565448;font-size:14px;font-weight:700}
.training-app-auth-form input{width:100%;min-height:48px;padding:11px 13px;border:1px solid #d7d3c5;border-radius:6px;background:#fff;color:#292a25;font:inherit}
.training-app-auth-form input:focus{outline:3px solid #d9e4de;border-color:#898571}
.training-app-auth-form button{justify-self:start}
.training-app-login>.training-app-button.secondary{margin-top:6px}
.training-app-logout{margin:12px 0}
.training-app-inline-error{margin:15px 0}
@media(max-width:600px){.training-app-login{margin:28px auto;padding:28px 20px}.training-app-auth-form button{width:100%}}

/* Kompakter Login: Kopf- und Fußbereich bleiben auch auf kurzen Displays sichtbar. */
.training-app-main:has(.training-app-login){display:flex;align-items:center;min-height:calc(100svh - 300px);padding:16px 20px 20px}
.training-app-main:has(.training-app-login) .training-app-shell{width:min(660px,100%)}
.training-app-main:has(.training-app-login) .training-app-breadcrumb{display:none}
.training-app-login{max-width:none;margin:0 auto;padding:22px 26px;border-radius:12px}
.training-app-login .training-app-mark{width:40px;height:40px;margin-bottom:10px;font-size:20px}
.training-app-login .training-app-mark svg{width:21px;height:21px}
.training-app-login h1{margin:5px 0 8px;font-size:clamp(25px,3vw,32px)}
.training-app-login>p:not(.training-app-eyebrow):not(.training-app-inline-error){margin:0;color:#65645b;line-height:1.45}
.training-app-auth-form{gap:11px;margin:15px 0 12px}
.training-app-auth-form input{min-height:42px;padding:9px 12px}
.training-app-auth-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:2px}
.training-app-auth-actions .training-app-button{min-height:42px;padding:9px 14px;gap:8px}
.training-app-auth-actions svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.training-app-admin-link{display:block;margin-top:13px;color:#77735f;font-size:12px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.training-app-main:has(.training-app-login){min-height:calc(100svh - 330px);padding:14px 14px 18px}.training-app-login{margin:0 auto;padding:20px 18px}.training-app-auth-actions{display:grid;grid-template-columns:1fr 1fr}.training-app-auth-actions .training-app-button{width:100%;font-size:13px}}
.training-admin-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px;padding:20px 24px;border:1px solid #dedbd0;border-radius:12px;background:#fff}
.training-admin-heading h1{margin:4px 0 6px;font-family:"Roboto Condensed",system-ui,sans-serif;font-size:clamp(26px,3vw,34px)}
.training-admin-heading p:last-child{margin:0;color:#65645b}
.training-admin-logout{flex:0 0 auto;margin:0}
.training-admin-course-list{display:grid;gap:12px}
.training-admin-exam{display:block;width:100%;padding:20px;border:1px solid #dedbd0;border-radius:11px;background:#fff}
.training-admin-exam>h2{margin:0 0 4px;font-family:"Roboto Condensed",system-ui,sans-serif;font-size:24px}
.training-admin-exam>p{margin:0 0 16px;color:#69685e}
.training-admin-exam>form,.training-admin-exam .training-app-questions{width:100%;min-width:0}
.training-admin-course{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 22px;border:1px solid #dedbd0;border-radius:11px;background:#fff}
.training-admin-course h2{margin:3px 0;font-family:"Roboto Condensed",system-ui,sans-serif;font-size:22px}
.training-admin-course p{margin:0;color:#69685e}
.training-admin-course form{flex:0 0 auto;margin:0}
.training-admin-course .training-app-button{min-height:42px;gap:8px}
.training-admin-course svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.training-admin-course-list>.training-app-eyebrow{margin:0 0 3px}
@media(max-width:600px){.training-admin-heading{align-items:flex-start;flex-direction:column;padding:17px}.training-admin-course{align-items:flex-start;flex-direction:column;padding:17px}.training-admin-course form,.training-admin-course .training-app-button{width:100%}.training-admin-logout,.training-admin-logout button{width:100%}}

.training-admin-heading .training-app-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Auf kurzen Trainingsseiten bleibt der Footer am unteren Bildschirmrand. */
.training-app-body{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}
.training-app-body>.site-header,.training-app-body>.site-footer{flex:0 0 auto}
.training-app-body>.training-app-main{flex:1 0 auto}
