#prsudoku-app{max-width:560px;margin:18px auto;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#0f172a}
.prs-title{text-align:center;margin:0 0 6px}
.prs-sub{text-align:center;margin:0 0 16px;color:#5b6a7a}
.prs-toolbar{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:10px}
.prs-btn.gg{padding:10px 14px;border:0;border-radius:10px;color:#fff;font-weight:700;cursor:pointer;
  background-image:linear-gradient(135deg,#167ee6,#09b36b);box-shadow:0 8px 22px rgba(22,126,230,.25);transition:transform .08s ease,filter .12s ease}
.prs-btn.gg:hover{transform:translateY(-1px);filter:brightness(1.05)}
.prs-btn.ghost{padding:10px 14px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155;font-weight:600;cursor:pointer}
/* Board */
.prs-board{display:grid;grid-template-columns:repeat(9,1fr);border:2px solid #1e293b;border-radius:12px;overflow:hidden}
.prs-cell{width:calc(560px/9);max-width:62px;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;border:1px solid #dbe2ea;background:#fff;position:relative}
.prs-cell.br{border-right:2px solid #1e293b}
.prs-cell.bb{border-bottom:2px solid #1e293b}
.prs-cell input{width:100%;height:100%;border:0;outline:0;text-align:center;font:600 20px/1.2 system-ui,-apple-system,Segoe UI,Roboto,Arial;background:transparent}
.given{color:#2060ff;font-weight:700}
.bad{background:#ffe6e6 !important}
.good{background:#e9fce9 !important}
.prs-meta{margin-top:8px;text-align:center;color:#475569;font-size:14px}
.prs-foot{text-align:center;margin-top:10px;color:#64748b;font-size:12px}
@media (max-width:600px){
  #prsudoku-app{padding:0 10px}
  .prs-cell{width:calc(100vw/9 - 8px)}
}
