.vo-fab-unused{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:58px;height:58px;border-radius:50%;border:0;font-size:1.6rem;line-height:1;background:var(--accent,#0b7a75);color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.3);z-index:900;cursor:pointer;padding:0}
.vo-dlg{max-width:520px;width:calc(100% - 24px);max-height:88vh;overflow:auto}
.vo-hint{color:var(--muted,#666);font-size:.85rem;margin:6px 0}
.vo-heard{font-size:.9rem;margin:4px 0 8px}
.vo-bigrow{display:flex;justify-content:center;margin:14px 0}
.vo-rec{font-size:1.1rem;padding:14px 34px;border-radius:30px;background:#c62828;color:#fff;border:0}
.vo-pulse{width:64px;height:64px;border-radius:50%;background:#c62828;animation:vop 1s ease-in-out infinite}
@keyframes vop{0%,100%{transform:scale(.8);opacity:.7}50%{transform:scale(1.1);opacity:1}}
.vo-spin{width:38px;height:38px;border-radius:50%;border:4px solid #ccc;border-top-color:var(--accent,#0b7a75);animation:vos .8s linear infinite}
@keyframes vos{to{transform:rotate(360deg)}}
.vo-time{text-align:center;font-size:1.3rem;margin:0}
.vo-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:center;padding:8px;margin:6px 0;border:1px solid var(--line,#ddd);border-radius:8px;position:relative}
.vo-row .vo-item{grid-column:1 / -1}
.vo-row .vo-q{width:100%;min-width:0}
.vo-row .vo-u,.vo-row .vo-have{font-size:.8rem;color:var(--muted,#666)}
.vo-row .vo-del{position:absolute;top:4px;right:4px;border:0;background:transparent;font-size:1rem;width:auto;padding:4px 8px}
.vo-row .vo-act{margin-right:28px}
.vo-bad{border-color:#e0a000;background:rgba(224,160,0,.12)}
.vo-fail{padding-left:18px;font-size:.85rem}
.vo-lbl{display:block;font-size:.85rem;margin-top:8px}

.vo-pick{display:block;width:100%;text-align:left;margin:6px 0;padding:10px 12px;border:1px solid var(--line,#ddd);border-radius:10px;background:transparent;color:inherit;font-size:.95rem;position:relative}
.vo-pick .vo-due{position:absolute;right:12px;top:10px;font-size:.82rem;font-weight:700;color:#b3261e}
.vo-id{font-size:.75rem;color:var(--muted,#666);border:1px solid var(--line,#ddd);border-radius:999px;padding:0 7px;font-weight:400}
.vo-sub{font-size:.85rem;color:var(--muted,#666)}
.vo-big{font-size:1.5rem;font-weight:700;margin:8px 0;color:#b3261e}
.vo-big.vo-ok{color:#1b7f3b}
.vo-dv{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--line,#ddd);font-size:.92rem}
.vo-who{margin:4px 0 8px}
.vo-words{margin:2px 0 8px;font-size:.9rem;color:var(--muted,#666);min-height:1.2em}
#vo-amt{font-size:1.4rem;font-weight:700}
