.maiws{max-width:820px;margin:20px auto;padding:20px;border:1px solid #e4e4e4;border-radius:14px;background:#fff;box-sizing:border-box;font-family:inherit}
.maiws *{box-sizing:border-box}.maiws__header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid #eee}.maiws__header h2{margin:0 0 4px;font-size:28px}.maiws__header p{margin:0;color:#666}.maiws__timer{padding:8px 12px;border-radius:20px;background:#f5f5f5;font-weight:700;white-space:nowrap}
.maiws__guide{margin:12px 0;padding:10px 12px;border-radius:8px;background:#f7f8f6;font-size:14px}.maiws__status{display:flex;justify-content:space-between;gap:12px;margin:14px 0 6px}.maiws__progress{font-weight:700;color:#6b8e23}.maiws__words{font-size:13px;line-height:2;margin-bottom:14px}.maiws__words span{display:inline;padding:3px 5px;border-radius:6px;font-weight:700}.maiws__words i{display:inline;margin:0 2px;color:#aaa;font-style:normal}.maiws__words span.is-found{background:var(--found);text-decoration:line-through;text-decoration-thickness:2px}
.maiws__board-wrap{width:100%;max-width:560px;margin:0 auto}.maiws__board{position:relative;display:grid;width:100%;aspect-ratio:1 / 1;border:1px solid #d9d9d9;border-radius:10px;overflow:hidden;touch-action:none;background:#fff}
.maiws__cell{position:relative;z-index:3;width:100%;height:100%;min-width:0;min-height:0;margin:0!important;padding:0!important;border:0!important;border-right:1px solid #eee!important;border-bottom:1px solid #eee!important;border-radius:0!important;background:transparent!important;color:#222!important;font:700 clamp(12px,2.6vw,19px)/1 sans-serif!important;box-shadow:none!important}.maiws__cell.is-selecting{background:rgba(120,120,120,.12)!important}
.maiws__marks{position:absolute;z-index:2;inset:0;pointer-events:none}.maiws__mark{position:absolute;border-radius:999px;transform-origin:0 50%;opacity:.72}
.maiws__footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid #eee;font-size:13px;color:#666}.maiws__restart{border:0;border-radius:18px;background:#6b8e23;color:#fff;padding:8px 14px;font-weight:700;cursor:pointer}.maiws__message{margin-top:12px;padding:12px;border-radius:8px;background:#f1f7e8;font-weight:700}
@media(max-width:600px){.maiws{padding:12px;margin:10px auto}.maiws__header h2{font-size:22px}.maiws__guide,.maiws__status,.maiws__words{font-size:12px}.maiws__board-wrap{max-width:100%}.maiws__cell{font-size:clamp(11px,4vw,17px)!important}.maiws__footer{align-items:flex-start}.maiws__footer span{max-width:68%}}

.maiws[data-size="12"] .maiws__cell{font-size:clamp(10px,2.15vw,17px)!important}.maiws[data-size="14"] .maiws__cell{font-size:clamp(9px,1.9vw,15px)!important}
@media(max-width:600px){.maiws[data-size="12"] .maiws__cell{font-size:clamp(9px,3.1vw,14px)!important}.maiws[data-size="14"] .maiws__cell{font-size:clamp(8px,2.7vw,12px)!important}}

/* 2.1.1: feste, quadratische Raster – keine CSS-Variable mehr */
.maiws[data-size="10"] .maiws__board{
  grid-template-columns:repeat(10,minmax(0,1fr))!important;
  grid-template-rows:repeat(10,minmax(0,1fr))!important;
}
.maiws[data-size="12"] .maiws__board{
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  grid-template-rows:repeat(12,minmax(0,1fr))!important;
}
.maiws[data-size="14"] .maiws__board{
  grid-template-columns:repeat(14,minmax(0,1fr))!important;
  grid-template-rows:repeat(14,minmax(0,1fr))!important;
}
.maiws__board{grid-auto-flow:row!important;grid-auto-rows:minmax(0,1fr)!important}
.maiws__cell{aspect-ratio:1 / 1!important;overflow:hidden!important}
.maiws__words span,.maiws__words i{white-space:nowrap}
