/* Minimal, freundliche Gestaltung */
:root{
  --bg: #f8fafc;
  --card: #ffffff;
  --text: #0f172a;
  --muted: #475569;
  --primary: #2563eb;
  --primary-contrast: #ffffff;
  --accent: #10b981;
  --warn: #ef4444;
  --shadow: 0 10px 25px rgba(15,23,42,.06);
  --radius: 16px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji"}

.site-header{
  position:sticky; top:0; z-index:5;
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 20px; background:var(--card); box-shadow:var(--shadow);
}
.brand{display:flex; gap:12px; align-items:center}
.logo{font-size:28px}
.titles h1{margin:0; font-size:22px}
.subtitle{margin:2px 0 0; color:var(--muted); font-size:14px}
.meta{display:flex; gap:12px; align-items:center}
.stars{padding:6px 10px; border-radius:999px; background:#fff7ed; border:1px dashed #fdba74}

.layout{display:grid; grid-template-columns: 260px 1fr; gap:20px; padding:20px; max-width:1200px; margin:0 auto}
.sidebar{position:sticky; top:78px; align-self:start}
.sidebar ul{list-style:none; margin:0; padding:0}
.sidebar a{display:block; padding:10px 12px; margin:6px 0; border-radius:10px; color:var(--text); text-decoration:none; background:transparent; border:1px solid transparent}
.sidebar a:hover{background:#eef2ff; border-color:#c7d2fe}

.content{display:flex; flex-direction:column; gap:20px}
.card{background:var(--card); border-radius:var(--radius); box-shadow:var(--shadow); padding:18px}

.info-grid{display:grid; grid-template-columns: repeat(3,1fr); gap:14px}
.info-item{background:#f1f5f9; border-radius:12px; padding:12px}
.info-item span{font-size:20px; display:inline-block; margin-bottom:6px}

.exercise{margin-top:14px; border-top:1px solid #e2e8f0; padding-top:14px}
.exercise h3{margin-top:0}
.actions{display:flex; gap:10px; align-items:center; margin-top:10px; flex-wrap:wrap}
.result{min-height:1.2em; color:var(--muted)}

.btn{appearance:none; border:0; background:var(--primary); color:var(--primary-contrast); padding:10px 14px; border-radius:12px; cursor:pointer; box-shadow:var(--shadow); font-weight:600}
.btn:hover{filter:brightness(.96)}
.btn.secondary{background:#e2e8f0; color:#111827}

.mcq-item{display:grid; grid-template-columns: 180px 1fr 1fr 1fr; gap:10px; align-items:center; margin:8px 0}
.mcq-item .q{font-weight:600}

.dragdrop{display:grid; grid-template-columns: 1fr 1fr; gap:14px}
.wordbank{display:flex; flex-wrap:wrap; gap:8px; background:#f8fafc; padding:10px; border-radius:12px; border:1px dashed #cbd5e1}
.draggable{display:inline-block; padding:8px 10px; background:#eef2ff; border:1px solid #c7d2fe; border-radius:999px; cursor:grab}
.buckets{display:grid; grid-template-columns: repeat(3,1fr); gap:10px}
.bucket{padding:10px; background:#f8fafc; border-radius:12px; border:1px solid #e2e8f0}
.bucket h4{margin:0 0 8px 0}
.dropzone{min-height:60px; background:#ffffff; border:1px dashed #cbd5e1; border-radius:8px; padding:8px; display:flex; flex-wrap:wrap; gap:6px}

.clicklist{display:flex; flex-wrap:wrap; gap:10px}
.clicklist.small .clickable{padding:6px 10px}
.clickable{padding:8px 12px; border-radius:999px; border:1px solid #e5e7eb; background:#fff; cursor:pointer}
.clickable.selected{background:#dcfce7; border-color:#86efac}

.selector-grid{display:grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap:10px; align-items:center}
.chip{display:inline-block; background:#f1f5f9; border:1px solid #e2e8f0; padding:6px 10px; border-radius:999px; margin-right:8px}

.gaplist{display:grid; grid-template-columns: 1fr; gap:8px}
.gaplist input{width:140px; padding:8px 10px; border-radius:8px; border:1px solid #cbd5e1}
input.wide{width:100%}

.quote{background:#fef9c3; padding:2px 6px; border-radius:6px}

.site-footer{color:#64748b; font-size:13px; text-align:center; margin-top:10px}

@media (max-width: 900px){
  .layout{grid-template-columns: 1fr}
  .mcq-item{grid-template-columns: 1fr}
  .dragdrop{grid-template-columns: 1fr}
  .buckets{grid-template-columns: 1fr}
  .selector-grid{grid-template-columns: 1fr}
}
