
:root{
 --green:#4f8a5b;--green2:#6fa57b;--soft:#eef7ef;--light:#f8fcf9;--text:#27372c;--gold:#d7a84f;--white:#fff;
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--light);color:var(--text);line-height:1.65}
a{color:var(--green);font-weight:700;text-decoration:none}
.header{background:#fff;padding:18px 28px;display:flex;gap:20px;align-items:center;box-shadow:0 2px 14px #0001;position:sticky;top:0;z-index:2}
.logo{width:260px;max-width:40vw;height:auto}
.header h1{margin:0;color:var(--green);font-size:28px}.header p{margin:4px 0 0}
.nav{background:var(--green);padding:12px;text-align:center}.nav a{color:white;margin:0 10px;display:inline-block}
.hero{padding:50px 25px;background:linear-gradient(135deg,#e8f5e9,#fff8e6);text-align:center}
.hero h2{font-size:34px;color:var(--green);margin:0 0 10px}
.container{width:min(1200px,94%);margin:24px auto}
.card{background:white;border-radius:18px;padding:26px;margin:20px 0;box-shadow:0 3px 18px #00000012;border:1px solid #e5efe6}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}
.box{background:var(--soft);border-left:7px solid var(--green2);border-radius:14px;padding:18px}
.badge{display:inline-block;background:#fff7df;color:#75540c;border-radius:999px;padding:5px 12px;font-size:13px;margin:4px}
.checklist label{display:block;background:#f7fbf8;margin:8px 0;padding:10px;border-radius:10px;border:1px solid #dcebdc}
textarea,input,select{width:100%;padding:12px;border:1px solid #cfe1d1;border-radius:10px;font-size:16px}
button,.btn{background:var(--green);color:white;border:0;border-radius:999px;padding:10px 16px;cursor:pointer;font-weight:700;display:inline-block}
button:hover,.btn:hover{background:#3f7049}
.progress{height:18px;background:#e4eee5;border-radius:999px;overflow:hidden}.bar{height:100%;background:var(--green2);width:0%}
.qa{border-bottom:1px solid #e6eee7;padding:12px 0}.answer{display:none;background:#f2f8f3;padding:12px;border-radius:10px;margin-top:8px}
footer{text-align:center;background:var(--green);color:white;padding:22px;margin-top:35px}
.print-only{display:none}
@media print{.nav,button,.btn,.no-print{display:none!important}.card{box-shadow:none;border:1px solid #ccc}.header{position:static}.print-only{display:block}}
@media(max-width:700px){.header{display:block;text-align:center}.logo{max-width:90vw}.header h1{font-size:22px}.hero h2{font-size:26px}}

.module-meta{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.term{background:#eef7ef;border:1px solid #cfe1d1;border-radius:999px;padding:6px 10px;display:inline-block;margin:3px}
.studybox{background:#fffdf5;border-left:7px solid var(--gold);padding:16px;border-radius:12px;margin:14px 0}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:800px){.two-col{grid-template-columns:1fr}}

.exam-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.exam-card{background:#fff;border:1px solid #dcebdc;border-radius:16px;padding:16px;box-shadow:0 2px 10px #0000000d}
.level{font-size:13px;background:#fff7df;color:#775a16;border-radius:999px;padding:4px 10px;display:inline-block;margin-bottom:8px}
.deepbox{background:#f7fbf8;border-left:7px solid var(--green2);padding:16px;border-radius:14px;margin:14px 0}
.note1{background:#fffdf3;border-left:7px solid #d7a84f;padding:16px;border-radius:14px;margin:14px 0}
.calendar-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:900px){.calendar-layout{grid-template-columns:1fr}}


/* Sicherheitscenter */
.securitybar{position:sticky;top:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;background:#1f3d2f;color:#fff;box-shadow:0 2px 12px rgba(0,0,0,.18);font-size:14px}
.securitybar-sub{display:block;font-size:12px;opacity:.82;font-weight:400}.securitybar-actions{display:flex;gap:8px;flex-wrap:wrap}.securitybar a{color:#fff;text-decoration:none;background:rgba(255,255,255,.12);padding:8px 10px;border-radius:10px;font-weight:700}.securitybar a.logout{background:#8a2d2d}@media(max-width:720px){.securitybar{align-items:flex-start;flex-direction:column}.securitybar-actions{width:100%}.securitybar a{flex:1;text-align:center}}
@media print{.securitybar{display:none!important}}
