/* SLH2 R5: assessment polish (live 20261105h) */
.txsave{font-size:.78rem;font-weight:600;opacity:.92;white-space:nowrap;margin-left:auto}
.txsave.ing{opacity:.7}.txsave.bad{color:#ffb4a8}
.txbar .txsave+.txclock{margin-left:0}
@media(max-width:420px){.txbar{flex-wrap:wrap;row-gap:4px}.txbar .txtitle{flex:1 1 100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
/* palette: 5 states, distinct by colour + shape + symbol, both themes */
.pb{color:#1b2733;background:#fff;border:2px solid #7d8a97}
.pb.nv{background:#fff;border:2px dashed #7d8a97;color:#1b2733;border-radius:6px}
.pb.na{background:#d32f2f;border:2px solid #9e1f1f;color:#fff;border-radius:6px 6px 16px 16px}
.pb.an{background:#2e7d32;border:2px solid #1b5e20;color:#fff;border-radius:16px 16px 6px 6px}
.pb.mr{background:#6a3fb5;border:2px solid #4a2a85;color:#fff;border-radius:50%}
.pb.am{background:#6a3fb5;border:2px solid #4a2a85;color:#fff;border-radius:50%}
.pb.an::after,.pb.mr::after,.pb.am::after,.pb.na::after{position:absolute;right:-6px;top:-6px;width:15px;height:15px;border-radius:50%;font-size:10px;line-height:13px;text-align:center;font-weight:800;border:1px solid #fff;bottom:auto}
.pb.an::after{content:"✓";background:#fff;color:#1b5e20;border-color:#1b5e20}
.pb.na::after{content:"✕";background:#fff;color:#9e1f1f;border-color:#9e1f1f}
.pb.mr::after{content:"?";background:#ffd54f;color:#3b2a00;border-color:#3b2a00}
.pb.am::after{content:"✓";background:#43a047;color:#fff;border-color:#fff;width:15px;height:15px}
.pb.cur{outline:3px solid #f2b705;outline-offset:2px;box-shadow:0 0 0 6px rgba(242,183,5,.25);text-decoration:underline;text-underline-offset:2px}
.txgridp .pb{margin:3px}
html:not([data-theme=light]) .pb.nv{background:#1c2733;color:#e6edf3;border-color:#8b98a5}
html:not([data-theme=light]) .pb.na{background:#e5534b;border-color:#ff8a80}
html:not([data-theme=light]) .pb.an{background:#2ea043;border-color:#7ee2a8}
html:not([data-theme=light]) .pb.mr,html:not([data-theme=light]) .pb.am{background:#8957e5;border-color:#c9a9ff}
html:not([data-theme=light]) .pb.cur{outline-color:#ffd54f}
/* inline submit confirm (in the page flow, no overlay) */
.txleft.txcfon>.txq,.txleft.txcfon>.txact{display:none}
.txconfirm{margin:12px;overflow:auto;border:2px solid var(--y,#f2b705)}
.txconfirm:focus{outline:3px solid var(--y,#f2b705);outline-offset:2px}
.txconfirm h3{margin-top:0}
.txconfirm .txcfb .btn{margin:4px 6px 4px 0}
.txtw{overflow-x:auto;max-width:100%}
/* review + retry */
.txretry{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.txretry .btn{margin:0}
.txmkd{font-size:.75rem;padding:1px 8px}
.txmkb[aria-pressed=true]{border-color:#8957e5;color:inherit}
.txresume{border-left:5px solid var(--y,#f2b705);margin:10px 0}
.txfilt .chip.on,.r5filt .chip.on{background:var(--navy,#0b2a44);color:#fff}
/* chapter practice review (practice.js) */
.r5rev{margin-top:18px}
.r5filt{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.r5filt .chip{cursor:pointer;border:1px solid var(--line);font-size:.85rem;padding:6px 12px;background:transparent;color:inherit;border-radius:999px}
.r5item{border:1px solid var(--line);border-left:5px solid #8b98a5;border-radius:10px;padding:10px 12px;margin:10px 0;overflow-wrap:anywhere}
.r5item.c{border-left-color:#2e9e4f}.r5item.w{border-left-color:#e53935}
.r5rev:focus{outline:none}
.txconfirm .txtbl th,.txconfirm .txtbl td{padding:5px 6px;font-size:.8rem;white-space:normal;vertical-align:top}
.txconfirm .txtbl th{line-height:1.2}
@media(max-width:480px){.txconfirm{margin:8px}.txconfirm .txtbl th,.txconfirm .txtbl td{padding:4px;font-size:.74rem}}
