
:root { --bg:#f7f9ff; --card:#ffffff; --text:#333; --pri:#6c8cff; --ok:#2ecc71; --no:#ff6b6b; }
*{box-sizing:border-box}
body{font-family:'Itim',system-ui,sans-serif;background:var(--bg);color:var(--text);margin:0}
.header{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.iconbtn{border:1px solid #eee;background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;min-height:56px}
.container{max-width:960px;margin:20px auto;padding:0 12px}
.hud{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.pill{background:#fff;border:1px solid #eee;border-radius:999px;padding:8px 14px;min-height:40px;display:flex;align-items:center}
.card{background:var(--card);border-radius:24px;padding:20px;border:1px solid #eee;box-shadow:0 4px 14px rgba(0,0,0,.05)}
.question{font-size:28px;margin:10px 0 16px}
.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:10px}
.choice{padding:16px 18px;border-radius:14px;border:2px solid transparent;background:#f1f5ff;cursor:pointer;font-size:20px;min-height:56px}
.choice:hover{border-color:var(--pri)}
.dock{display:flex;justify-content:space-between;align-items:center;margin-top:10px}
.btn{background:var(--pri);color:#fff;border:none;border-radius:12px;padding:12px 16px;cursor:pointer;min-height:56px}
.btn.secondary{background:#eaeefc;color:#333}
.feedback{min-height:28px;margin:6px 0}
.feedback.ok{color:var(--ok)} .feedback.no{color:var(--no)}
.progressbar{height:10px;background:#eee;border-radius:999px;overflow:hidden;margin:10px 0}
.progressbar>span{display:block;height:100%;width:0;background:var(--ok)}
.summary{text-align:center}
.help-panel{display:none;position:fixed;right:12px;top:64px;background:#fff;border:1px solid #eee;border-radius:16px;padding:14px;box-shadow:0 10px 24px rgba(0,0,0,.1);width:320px}
.hint{margin-top:8px;color:#555}
.missed-list{margin:10px auto; text-align:left; max-width:720px}
.badge{display:inline-block;background:#fff;border:1px solid #ddd;border-radius:10px;padding:4px 8px;font-size:12px}
/* Contrast mode */
body[data-contrast]{filter:contrast(1.2) saturate(1.15)}
/* Game-list helpers */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.card.game{cursor:pointer;display:flex;flex-direction:column}
.thumb{aspect-ratio:4/3;background:#f3f6ff;border-radius:16px;margin-bottom:10px;display:flex;align-items:center;justify-content:center;color:#99a;overflow:hidden}
.meta{font-size:14px;color:#666;margin:6px 0 10px}
.stars{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.starbtn{background:#eaeefc;border:none;border-radius:10px;padding:8px 10px;cursor:pointer;min-height:40px}
.searchbar{display:flex;gap:8px;margin:12px 0}
.searchbar input{flex:1;padding:10px;border-radius:10px;border:1px solid #ddd}
.loadmore{display:block;margin:18px auto 0}
.progress-mark{position:absolute;right:10px;top:10px}
