body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
main{max-width:760px}
.kind{display:flex;gap:8px;margin:6px 0 18px}
.kind button,.seg button{font:inherit;color:#dceee8;background:#152427;border:1px solid #36534f;border-radius:10px;padding:10px 12px;cursor:pointer;text-align:left}
.kind button{flex:1;font-size:1rem}.kind small,.seg small{display:block;font-size:.72rem;color:#9fb6b3;margin-top:2px}
.kind button[aria-selected=true],.seg button[aria-pressed=true]{background:#224c42;border-color:#88e1c9;color:#fff}
fieldset{border:0;padding:0;margin:0 0 14px}legend{font-size:.82rem;color:#9fb6b3;margin-bottom:6px}
.seg{display:flex;gap:6px;flex-wrap:wrap}.seg button{flex:1 1 auto;min-width:72px}
.primary{font:inherit;font-weight:600;background:#88dac4;color:#15332c;border:0;border-radius:10px;padding:12px 18px;cursor:pointer}
button:disabled{opacity:.45;cursor:default}
.note{font-size:.78rem;color:#9fb6b3;line-height:1.6}
.progress{display:flex;justify-content:space-between;font-size:.82rem;color:#9fb6b3}
.qtype{font-size:.75rem;color:#88e1c9;margin:14px 0 4px}
#prompt{font-size:1.15rem;line-height:1.6;margin:0 0 6px}
.options{display:grid;gap:8px;margin:12px 0}
.options button{font:inherit;text-align:left;color:#e3f3ee;background:#132326;border:1px solid #36534f;border-radius:10px;padding:12px 14px;cursor:pointer}
.options button[aria-pressed=true]{background:#24443d;border-color:#88e1c9}
.options button.right{border-color:#5fd08e;background:#173a28}.options button.wrong{border-color:#e07a6a;background:#3a1d1a}.options button.missed{border-color:#5fd08e;border-style:dashed}
.options button::before{content:'□ ';color:#9fb6b3}.options button[aria-pressed=true]::before{content:'■ ';color:#88e1c9}
#verdict{font-weight:700;font-size:1.05rem;margin:8px 0 4px}#verdict.ok{color:#7ee2a6}#verdict.ng{color:#f0a090}
.explain{font-size:.88rem;line-height:1.7;color:#c6dcd8;background:#132326;border-radius:8px;padding:10px 12px}
#open3d{display:inline-block;margin:8px 0;color:#88e1c9}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.actions button:not(.primary){font:inherit;color:#dceee8;background:transparent;border:1px solid #36534f;border-radius:10px;padding:12px 16px;cursor:pointer}
#review .item{border-top:1px solid #29383c;padding:10px 0;font-size:.86rem;line-height:1.6}#review .item b{display:block}
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;height:60px;padding-bottom:env(safe-area-inset-bottom);background:#10191c;border-top:1px solid #29383c}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:12px;color:#9fb6b3;text-decoration:none}
.tabbar .tab-ico{font-size:17px;line-height:1}.tabbar a[aria-current=page]{color:#88e1c9;background:#162a2c;box-shadow:inset 0 2px 0 #88e1c9}
