/* 2.4.9: tables of fixed answers, filled by clicking (assets/fill-table.js) */
.mlft{margin:16px 0;padding:16px;border:1px solid var(--ml-line);border-radius:var(--ml-r-lg);background:var(--ml-surface);box-sizing:border-box}
.mlft-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.mlft-ico{flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ml-r-md);background:var(--ml-accent-soft);color:var(--ml-accent-text)}
.mlft-headtext{display:flex;flex-direction:column;gap:2px;min-width:0}
.mlft-headtext b{font-size:var(--ml-fs-3);line-height:1.4;color:var(--ml-ink)}
.mlft-headtext span{font-size:var(--ml-fs-1);line-height:1.5;color:var(--ml-muted)}
.mlft-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.mlft-t{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--ml-fs-2);line-height:1.5}
table.mlft-t th,table.mlft-t td{padding:10px 12px;border-bottom:1px solid var(--ml-line);text-align:start;vertical-align:middle}
table.mlft-t thead th{background:var(--ml-accent-soft);color:var(--ml-accent-text);font-weight:700}
table.mlft-t thead th:first-child{border-start-start-radius:var(--ml-r-sm)}
table.mlft-t thead th:last-child{border-start-end-radius:var(--ml-r-sm)}
table.mlft-t tbody th{font-weight:700;color:var(--ml-ink);background:var(--ml-bg)}
table.mlft-t thead th.mlft-top{text-align:center;border-bottom:1px solid var(--ml-accent-line)}
table.mlft-t td.mlft-given{color:var(--ml-muted);font-weight:700}
table.mlft-t tbody tr:last-child>*{border-bottom:0}
.mlft-seg{display:inline-flex;flex-wrap:wrap;gap:6px;vertical-align:middle}
.mlft-opt{min-height:40px;min-width:48px;padding:0 14px;border:1.5px solid var(--ml-line-strong);border-radius:var(--ml-r-full);background:var(--ml-surface);color:var(--ml-ink);font-family:inherit;font-size:var(--ml-fs-2);font-weight:700;line-height:1;cursor:pointer;transition:background 140ms ease,border-color 140ms ease,color 140ms ease;box-sizing:border-box}
.mlft-opt:hover{border-color:var(--ml-accent);color:var(--ml-accent-text)}
.mlft-opt:focus-visible{outline:2px solid var(--ml-accent);outline-offset:2px}
.mlft-opt[aria-pressed=true]{background:var(--ml-accent);border-color:var(--ml-accent);color:var(--ml-on-accent)}
.mlft-ok .mlft-opt[aria-pressed=true]{background:var(--ml-success);border-color:var(--ml-success);color:#fff}
.mlft-bad .mlft-opt[aria-pressed=true]{background:var(--ml-danger);border-color:var(--ml-danger);color:#fff}
.mlft-miss{background:var(--ml-warning-soft)!important}
.mlft-opt.is-key{box-shadow:0 0 0 2px var(--ml-surface),0 0 0 4px var(--ml-success)}
.mlft-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-inline-start:8px;border-radius:var(--ml-r-full);vertical-align:middle}
.mlft-mark.is-ok{background:var(--ml-success-soft);color:var(--ml-success)}
.mlft-mark.is-bad{background:var(--ml-danger-soft);color:var(--ml-danger)}
.mlft-mark.is-miss{background:var(--ml-surface);color:var(--ml-warning-text)}
.mlft-note{display:block;margin-top:6px;font-size:var(--ml-fs-1);line-height:1.5;color:var(--ml-muted)}
.mlft-free{min-height:36px;padding:0 12px;border:1px dashed var(--ml-line-strong);border-radius:var(--ml-r-sm);background:transparent;color:var(--ml-accent-text);font-family:inherit;font-size:var(--ml-fs-1);font-weight:700;cursor:pointer}
.mlft-freetext{color:var(--ml-text)}
.mlft-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}
.mlft-actions .ml-btn-primary,.mlft-actions .ml-btn-secondary,.mlft-actions .ml-btn-quiet{margin:0!important;min-height:44px}
.mlft-score{flex:1 1 220px;margin:0;font-size:var(--ml-fs-2);font-weight:700;line-height:1.5;color:var(--ml-text)}
.mlft-score:empty{display:none}
.mlft-score.is-ok{color:var(--ml-success)}
.mlft-score.is-bad{color:var(--ml-danger)}
.mlft-score.is-warn{color:var(--ml-warning-text)}
.mlft-after{margin-top:12px;padding:12px 14px;border-radius:var(--ml-r-md);background:var(--ml-sunken);border-inline-start:3px solid var(--ml-accent);font-size:var(--ml-fs-2);line-height:var(--ml-lh-body)}
.mlft-after-h{margin:0 0 4px;font-weight:700;color:var(--ml-accent-text)}
.mlft-after-p p{margin:4px 0 0}
/* a unit question's own table, turned in place */
.mlft-stem .tbl{margin:0}
table.mlft-on td{vertical-align:middle}
html[data-ml-theme=dark] .mlft{background:var(--ml-surface-2);border-color:var(--ml-line-strong)}
html[data-ml-theme=dark] .mlft-opt{background:var(--ml-surface);color:var(--ml-ink)}
html[data-ml-theme=dark] .mlft-opt[aria-pressed=true]{background:var(--ml-accent);color:#fff}
.mlft-actions [hidden]{display:none!important}
/* a phone: every row is a card, every cell a line with its column's name */
@media (max-width:620px){
  .mlft{padding:12px}
  .mlft-scroll{overflow:visible}
  :is(table.mlft-t,table.mlft-on),:is(table.mlft-t,table.mlft-on) tbody{display:block;width:100%}
  :is(table.mlft-t,table.mlft-on) thead{display:none}
  :is(table.mlft-t,table.mlft-on) tbody{display:flex!important;flex-direction:column;gap:10px}
  :is(table.mlft-t,table.mlft-on) tr{display:block!important;border:1px solid var(--ml-line);border-radius:var(--ml-r-md);overflow:hidden;background:var(--ml-surface)}
  :is(table.mlft-t,table.mlft-on) tbody tr>:first-child{display:block!important;width:auto!important;padding:8px 12px!important;border:0!important;background:var(--ml-accent-soft)!important;color:var(--ml-accent-text)!important;font-weight:700;text-align:start}
  :is(table.mlft-t,table.mlft-on) tbody td[data-mlft-label]{display:flex!important;align-items:center;flex-wrap:wrap;gap:6px 8px;width:auto!important;padding:8px 12px!important;border:0!important;border-top:1px solid var(--ml-line)!important;text-align:start}
  table.mlft-t tbody th[data-mlft-row]::before{content:attr(data-mlft-row) " "}
  :is(table.mlft-t,table.mlft-on) tbody td[data-mlft-label]::before{content:attr(data-mlft-label)!important;flex:1 1 100%;font-size:var(--ml-fs-1);font-weight:700;line-height:1.4;color:var(--ml-muted)}
  .mlft-opt{min-height:44px;min-width:56px;padding:0 14px}
  .mlft-actions .ml-btn-primary{flex:1 1 100%}
}
