
:root{--bg:#f3efe6;--card:#fffaf1;--ink:#16213a;--muted:#6d7280;--line:#d8cdb8;--accent:#1c2a4a;--gold:#b68a3a;--easy:#119866;--iffy:#d99a00;--wrong:#cf1f3a;}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",sans-serif;padding-bottom:150px} button,textarea,input{font:inherit} button{border:0;cursor:pointer;color:inherit}
.header{position:sticky;top:0;z-index:10;background:rgba(255,250,241,.96);border-bottom:1px solid var(--line);padding:12px 14px;display:flex;justify-content:space-between;gap:10px;align-items:center}.kicker{font-size:10px;letter-spacing:.14em;color:var(--gold);font-weight:900}.title{font-size:20px;font-weight:1000}.ghost{border:1px solid var(--line);background:rgba(255,255,255,.65);border-radius:14px;padding:9px 12px;font-weight:900}.primary{background:var(--accent);color:#fff;border-radius:14px;padding:11px 14px;font-weight:1000}.home{padding:14px}.hero{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:18px;margin-bottom:12px}.hero h1{margin:2px 0 4px;font-size:26px}.hero p{margin:0;color:var(--muted);line-height:1.6}.grid{display:grid;gap:10px}.tile{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;text-align:left}.tile strong{display:block;font-size:18px}.tile span{display:block;color:var(--muted);margin-top:5px}.card{margin:14px;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:18px;line-height:1.85}.meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.pill{border:1px solid var(--line);background:rgba(255,255,255,.65);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.qno{font-size:22px;font-weight:1000}.question{font-size:18px;white-space:pre-wrap}.result{margin:12px 14px;background:#fff;border:1px dashed var(--line);border-radius:18px;padding:14px;line-height:1.7;color:var(--muted)}.explain{margin:12px 14px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;line-height:1.75;white-space:pre-wrap}.bottom{position:fixed;left:0;right:0;bottom:0;z-index:20;background:rgba(255,250,241,.98);border-top:1px solid var(--line);padding:10px 10px calc(10px + env(safe-area-inset-bottom));display:grid;gap:8px}.row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.answer{color:#fff;border-radius:16px;padding:14px 8px;font-size:20px;font-weight:1000}.o{background:#147a5a}.x{background:#a72136}.rank{color:#fff;border-radius:14px;padding:12px 6px;font-weight:1000}.easy{background:var(--easy)}.iffy{background:var(--iffy)}.wrong{background:var(--wrong)}.memo{padding:14px}.memo textarea{width:100%;height:120px;border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px;line-height:1.5}.tabs{display:flex;gap:8px;margin-bottom:8px}.tabs button{border:1px solid var(--line);border-radius:12px;background:#fff;padding:8px 10px;font-weight:900}.hidden{display:none}.syncBox{padding:14px;display:grid;gap:12px}.syncBox input{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff}.syncActions{display:flex;gap:8px;flex-wrap:wrap}.status{font-size:13px;color:var(--muted);font-weight:900}.list{padding:14px;display:grid;gap:8px}.section{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px;text-align:left}.copyline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.small{font-size:13px;padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:#fff;font-weight:900}.navrow{display:flex;gap:8px;justify-content:space-between;margin:8px 14px}.navrow button{flex:1}
