.pk35-crossword, .pk35-crossword * { box-sizing: border-box; }
.pk35-crossword {
  --pcw-ink:#17202a; --pcw-orange:#ef8b22; --pcw-soft:#fff1dc;
  width:100%; max-width:720px; margin:1.5rem auto; color:var(--pcw-ink);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.pk35-crossword__top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.pk35-crossword__top strong { font-size:21px; }
.pk35-crossword__top small { display:block; margin-top:2px; color:#59636e; font-size:12px; }
.pk35-crossword button { appearance:none!important; opacity:1!important; visibility:visible!important; box-shadow:none!important; text-shadow:none!important; cursor:pointer; }
.pk35-crossword__top button, .pk35-crossword__actions button {
  min-height:42px; padding:9px 15px!important; margin:0!important; border:2px solid var(--pcw-orange)!important;
  border-radius:7px!important; background:#fff!important; color:var(--pcw-ink)!important;
  -webkit-text-fill-color:var(--pcw-ink)!important; font:700 15px/1 system-ui,sans-serif!important;
}
.pk35-crossword__actions button:first-child { background:var(--pcw-orange)!important; color:#fff!important; -webkit-text-fill-color:#fff!important; }
.pk35-crossword__board {
  display:grid!important; gap:2px!important;
  width:100%; padding:3px!important; margin:0!important;
  border:2px solid var(--pcw-ink); border-radius:7px; overflow:hidden; background:var(--pcw-ink)!important;
}
.pk35-crossword__block { min-width:0; min-height:0; background:var(--pcw-ink); }
.pk35-crossword__cell { position:relative; min-width:0; min-height:0; background:#fff; }
.pk35-crossword__cell.is-active { background:var(--pcw-soft); }
.pk35-crossword__cell.is-wrong { background:#fee4e2; }
.pk35-crossword__cell.is-correct { background:#e4f4e8; }
.pk35-crossword__number { position:absolute; z-index:2; top:2px; left:3px; font-size:10px; font-weight:700; line-height:1; pointer-events:none; }
.pk35-crossword__cell input {
  appearance:none!important; display:block!important; width:100%!important; height:100%!important;
  min-width:0!important; min-height:0!important; padding:8px 1px 1px!important; margin:0!important;
  border:0!important; border-radius:0!important; outline:0!important; box-shadow:none!important;
  background:transparent!important; color:var(--pcw-ink)!important; -webkit-text-fill-color:var(--pcw-ink)!important;
  text-align:center!important; text-transform:uppercase; font:700 clamp(16px,4.7vw,29px)/1 system-ui,sans-serif!important;
}
.pk35-crossword__cell input:focus { outline:3px solid var(--pcw-orange)!important; outline-offset:-3px!important; }
.pk35-crossword__actions { display:flex; gap:9px; margin-top:12px; }
.pk35-crossword__message { min-height:1.5em; margin:10px 0; font-weight:700; }
.pk35-crossword__clues { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:14px; }
.pk35-crossword__clues h3 { margin:0 0 8px; font-size:19px; }
.pk35-crossword__clues ol { margin:0; padding-left:27px; }
.pk35-crossword__clues li { margin:0 0 8px; padding-left:3px; line-height:1.35; cursor:pointer; }
.pk35-crossword__clues li:hover { color:var(--pcw-orange); }
@media(max-width:620px){
  .pk35-crossword__board { gap:1px!important; padding:2px!important; border-radius:5px; }
  .pk35-crossword__number { top:1px; left:2px; font-size:8px; }
  .pk35-crossword__cell input { padding-top:6px!important; font-size:clamp(14px,5.7vw,23px)!important; }
  .pk35-crossword__clues { grid-template-columns:1fr; gap:12px; }
}
