/* Lern-App · Aussehen. Grundlage: Entwurf V3, fuer PC und Handy erweitert. */
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Segoe UI",Arial,sans-serif;background:#eef1f5;color:#1d2733;min-height:100vh}
[hidden]{display:none!important}
.kopf{background:#0b5fa5;color:#fff;padding:10px 16px;display:flex;flex-wrap:wrap;gap:10px 18px;align-items:flex-end;position:sticky;top:0;z-index:5}
.marke{font-size:18px;font-weight:700;min-width:150px}
.marke small{display:block;font-size:11px;font-weight:400;color:#cfe3f7}
.auswahl{display:flex;flex-wrap:wrap;gap:8px 14px;flex:1}
.grp{display:flex;flex-direction:column;min-width:150px}
.lbl{font-size:10px;color:#cfe3f7;text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}
.seg{display:flex;background:#ffffff22;border-radius:9px;padding:3px}
.seg button{flex:1;border:0;background:none;color:#fff;font-size:12px;padding:6px 8px;border-radius:7px;cursor:pointer;white-space:nowrap}
.seg button.on{background:#fff;color:#0b5fa5;font-weight:600}
.lj{display:flex;gap:5px}
.lj button{flex:1;border:1px solid #ffffff66;background:none;color:#fff;font-size:12px;padding:5px 8px;border-radius:14px;cursor:pointer;white-space:nowrap}
.lj button.on{background:#ffd75e;color:#1d2733;border-color:#ffd75e;font-weight:600}
.wer{font-size:12px;color:#e6f0fa;text-align:right}
.rumpf{display:flex;max-width:1180px;margin:0 auto;gap:18px;padding:16px}
#tabs{width:180px;flex:none;display:flex;flex-direction:column;gap:4px;position:sticky;top:110px;align-self:flex-start}
#tabs button{border:0;background:#fff;border-radius:10px;padding:10px 12px;text-align:left;font-size:14px;color:#1d2733;cursor:pointer;display:flex;gap:10px;align-items:center}
#tabs button b{font-weight:400;width:20px;text-align:center}
#tabs button.on{background:#0b5fa5;color:#fff;font-weight:600}
main#screen{flex:1;background:#fff;border-radius:14px;padding:18px 20px;min-height:70vh;box-shadow:0 2px 10px #0000000d;min-width:0}
#title{display:none}
.zwang #tabs button:not(:last-child){opacity:.35}
@media (max-width:760px){
  .kopf{padding:8px 10px;gap:6px}
  .grp{min-width:100%}
  .rumpf{padding:8px 8px 76px;gap:0}
  #tabs{position:fixed;bottom:0;left:0;right:0;top:auto;width:auto;flex-direction:row;background:#f7f9fb;border-top:1px solid #dde3ea;padding:4px;z-index:6;overflow-x:auto}
  #tabs button{flex:1;flex-direction:column;gap:0;font-size:10px;padding:6px 2px;background:none;min-width:58px;text-align:center}
  #tabs button b{font-size:17px}
  main#screen{padding:12px;border-radius:10px}
}
/* Anmeldung */
.anm{max-width:380px;margin:9vh auto;background:#fff;border-radius:16px;padding:26px 24px;box-shadow:0 8px 30px #0002}
.anm h1{font-size:22px;color:#0b5fa5}
.formular{display:flex;flex-direction:column;gap:10px;margin:10px 0 14px;max-width:520px}
.formular label{display:flex;flex-direction:column;font-size:13px;color:#5b6775;gap:4px;flex:1}
.formular input,.formular select{font-size:15px;padding:9px 10px;border:1px solid #c5ced8;border-radius:9px;color:#1d2733;background:#fff}
.formular .zeile{display:flex;gap:8px;flex-wrap:wrap}
.fehler{color:#d13b3b;font-size:13px;min-height:18px}
.pwbox{font-family:Consolas,monospace;font-size:18px;background:#fff;padding:2px 8px;border-radius:6px;letter-spacing:1px}
.tabelle{overflow-x:auto}
.tabelle table{border-collapse:collapse;width:100%;font-size:13px}
.tabelle th{text-align:left;font-size:12px;color:#5b6775;border-bottom:2px solid #dde3ea;padding:6px}
.tabelle td{border-bottom:1px solid #eef0f4;padding:6px;vertical-align:top}
.tabelle select{font-size:12px;padding:3px;border-radius:6px;border:1px solid #c5ced8;margin:1px 0}
.tabelle tr.gesperrt td{opacity:.55}
.btn.klein{padding:5px 8px;font-size:12px}
#meldung{position:fixed;left:50%;transform:translateX(-50%);bottom:90px;background:#1d2733;color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;z-index:20;box-shadow:0 6px 20px #0004}
.svgbox{max-width:460px}
.symgrid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))!important}
.grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important}

/* --- aus Entwurf V3 --- */
*{box-sizing:border-box;margin:0;padding:0}
h2{font-size:17px;margin:14px 0 8px}
h3{font-size:14px;margin:12px 0 6px}
p{margin:4px 0}
.pr{background:#f4f6f9;border-radius:10px;padding:8px 10px;font-size:12px;margin-bottom:8px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tile{border:1px solid #dde3ea;border-radius:12px;padding:10px;cursor:pointer;background:#fff;min-height:74px}
.tile:hover,.card:hover{border-color:#0b5fa5}
.tile b{font-size:13px;display:block}
.tile .ic{font-size:20px}
.tile.el{background:#fff8e6;border-color:#f0d58a}
.card{border:1px solid #dde3ea;border-radius:12px;padding:10px;margin-bottom:8px;background:#fff;cursor:pointer;font-size:14px}
.small{font-size:12px;color:#5b6775}
.badge{display:inline-block;font-size:10px;border-radius:8px;padding:1px 6px;margin-left:4px;vertical-align:middle}
.b-ok{background:#e3f5e6;color:#1f7a37}.b-v{background:#eef0f4;color:#5b6775}.b-st{background:#fff0c2;color:#7a5a00}
.btn{display:inline-block;border:0;border-radius:9px;padding:9px 12px;background:#0b5fa5;color:#fff;font-size:13px;cursor:pointer;margin:4px 4px 0 0}
.btn.grey{background:#e4e9ef;color:#1d2733}.btn.red{background:#d13b3b}.btn.green{background:#2e9d4a}
.btn.wide{display:block;width:100%}
.opt{border:1px solid #c5ced8;border-radius:10px;padding:9px;margin:6px 0;cursor:pointer;font-size:14px}
.opt.ok{background:#e3f5e6;border-color:#2e9d4a}.opt.no{background:#fde8e8;border-color:#d13b3b}
.bar{height:8px;background:#e4e9ef;border-radius:5px;overflow:hidden;margin:3px 0 9px}
.bar i{display:block;height:100%;background:#2e9d4a}
.merk{background:#fff7dd;border-left:4px solid #e0a800;padding:7px 9px;font-size:13px;margin:8px 0;border-radius:4px}
.info{background:#eef5fc;border-left:4px solid #0b5fa5;padding:7px 9px;font-size:12px;margin:8px 0;border-radius:4px}
.src{font-size:10px;color:#8a95a3;margin-top:12px;border-top:1px dashed #dde3ea;padding-top:6px}
.back{font-size:13px;color:#0b5fa5;cursor:pointer;margin-bottom:6px;display:inline-block}
.svgbox{border:1px solid #dde3ea;border-radius:10px;background:#fcfdfe;margin:6px 0}
.svgbox svg{display:block;width:100%}
.slot{cursor:pointer}
.slot:hover rect.hit{fill:#0b5fa522}
.pal{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0}
.pal span{border:1px solid #c5ced8;border-radius:8px;padding:5px 8px;font-size:12px;cursor:pointer;background:#fff}
.pal span:hover{border-color:#0b5fa5}
.status{font-size:13px;padding:7px 9px;border-radius:8px;margin:6px 0;background:#f2f4f7}
.status.run{background:#e3f5e6}.status.err{background:#fde8e8}
.chk div{font-size:13px;margin:2px 0}
.symgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sym{border:1px solid #dde3ea;border-radius:10px;padding:6px;text-align:center;font-size:12px}
.sym svg{width:70px;height:70px;display:block;margin:0 auto}
