/* round 7 module (fai), built by B13: existing variables only (var(--ink) … var(--on-accent,#fff)), no hex colours. */
.fai .grow{flex:1}
.fai-listhead .seg button .fai-n{font-weight:700;color:var(--ink3);margin-left:3px}
.fai-listhead .seg button.on .fai-n{color:var(--indigo)}
.fai-q{min-width:240px;padding:6px 10px;border:1px solid var(--rule);border-radius:7px;background:var(--field,var(--paper));color:var(--ink);font:inherit;font-size:13px}
.fai-err{color:var(--red-t,var(--red))}
.fai-tbl{width:100%;border-collapse:collapse}
.fai-tbl th{font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink2);text-align:left;padding:8px 8px;border-bottom:1px solid var(--rule);background:var(--paper2,var(--paper));white-space:nowrap}
.fai-tbl td{padding:6px 8px;border-bottom:1px solid var(--rule2,var(--rule));vertical-align:middle;font-size:13px}
.fai-tbl tr:last-child td{border-bottom:0}
.fai-others{display:flex;flex-wrap:wrap;gap:6px}

/* report header */
.fai-head{padding:12px 16px}
.fai-h1{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fai-h1>b{font-size:20px;font-weight:800;letter-spacing:-.01em;color:var(--ink)}
.fai-sub{margin-top:6px;color:var(--ink2)}
.fai-mono{font-family:var(--mono);font-size:11.5px}

/* two columns: forms + rail */
.fai-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}
@media (max-width:1100px){.fai-grid{grid-template-columns:minmax(0,1fr)}}
.fai-main{padding:8px 12px 12px;min-width:0}
.fai-tabs button{display:inline-flex;align-items:center;gap:6px}
.fai-cnt{font-size:11px;font-weight:700;padding:1px 7px;border-radius:5px;background:var(--amber-l);color:var(--amber-t,var(--ink))}
.fai-cnt.ok{background:var(--green-l);color:var(--green-t,var(--ink))}
.fai-tw{box-shadow:none}
.fai-in{width:100%;min-width:60px;padding:5px 7px;border:1px solid var(--rule);border-radius:6px;background:var(--field,var(--paper));color:var(--ink);font:inherit;font-size:12.5px}
.fai-in:focus{outline:2px solid var(--indigo-l);border-color:var(--indigo)}
.fai-in:disabled{background:transparent;border-color:transparent;color:var(--ink)}
select.fai-in{min-width:96px}
.fai-ball{width:46px;min-width:46px;text-align:center;font-weight:800;border-radius:50%;border:2px solid var(--red);color:var(--red-t,var(--red))}
.fai-from{max-width:170px;font-family:var(--mono);font-size:11px}
.fai-t3 tr.fai-open td{background:var(--paper2,var(--paper))}
.fai-t3 tr.fai-open .fai-in{color:var(--ink2)}
.fai-t3 tr.fai-fail td{background:var(--red-l)}
.fai-foot{margin-top:8px}
.fai-from2{font-family:var(--mono);font-size:11px;margin-top:2px}
.fai-tbl td:first-child select.fai-in{min-width:118px}

/* form 1 boxes (AS9102 numbering) */
.fai-f1{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px 12px;padding:6px 2px}
.fai-box{display:flex;flex-direction:column;gap:4px}
.fai-box>span{font-size:11.5px;font-weight:700;color:var(--ink2)}
.fai-box>span i{font-style:normal;display:inline-block;min-width:18px;margin-right:4px;padding:0 4px;border-radius:4px;background:var(--grey-l);color:var(--ink2);text-align:center;font-size:11px}
.fai-req{color:var(--red-t,var(--red))}
.fai-reason{grid-column:1/-1;gap:6px}
.fai-reason .seg{align-self:flex-start}
.fai-note{grid-column:1/-1;margin:0}

/* rail */
.fai-rail{display:flex;flex-direction:column;gap:0}
.fai-rail .card{margin:0 0 12px}
.fai-rblk h4{margin:0 0 8px;font-size:14px;display:flex;align-items:center;gap:8px}
.fai-pct{margin-left:auto;font-size:13px;color:var(--ink2)}
.fai-bar{height:6px;border-radius:4px;background:var(--grey-l);overflow:hidden}
.fai-bar i{display:block;height:100%;background:var(--green)}
.fai-miss{margin:8px 0 0;padding-left:18px;font-size:12px;color:var(--ink2)}
.fai-miss li{margin:2px 0}
.fai-okline{color:var(--green-t,var(--green));margin:8px 0 0}
.fai-src{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px solid var(--rule2,var(--rule))}
.fai-src:last-child{border-bottom:0}
.fai-sign{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--rule2,var(--rule))}
.fai-ok{color:var(--green-t,var(--green));font-weight:700;font-size:12.5px;white-space:nowrap}
.fai-warn{color:var(--amber-t,var(--ink));margin:6px 0 0}
.fai-done{width:100%;margin-top:10px;padding:10px;font-size:14px}
.fai-mon{border:1.5px dashed var(--amber);background:var(--amber-l)}
.fai-mon p{margin:0 0 8px}
.fai-pre{white-space:pre-wrap;word-break:break-all;font-family:var(--mono);font-size:11px;background:var(--paper);border:1px solid var(--rule);border-radius:6px;padding:6px 8px;margin:0 0 6px;color:var(--ink)}

.fai-t3 td:nth-child(2) .fai-in{min-width:180px}
.fai-t3 td:nth-child(4) .fai-in{min-width:110px}
.fai-t3 .fai-from{max-width:125px;font-size:11px}
.fai-t3 td:nth-child(3) .fai-in{min-width:150px}
.fai-tbl td:nth-child(2) .fai-in,.fai-tbl td:nth-child(3) .fai-in{min-width:150px}

/* Eng # drawer section (faiEngHtml) */
.fai-eng{display:flex;flex-direction:column;gap:4px;margin:0 0 8px}
.fai-engrow{display:flex;align-items:center;gap:8px;font-size:12.5px}
.fai-engrow>span:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* print: the three forms only, black on white */
.fai-print{display:none}
@media print{
  .fai-screen{display:none!important}
  .fai-print{display:block;color:black;background:white;font-size:10.5px}
  .fai-print h3{font-size:12px;margin:10px 0 4px;color:black}
  .fp-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid black;padding-bottom:4px;margin-bottom:6px;color:black}
  .fp-head b{font-size:14px}
  .fp-t{width:100%;border-collapse:collapse;margin-bottom:6px}
  .fp-t td,.fp-t th{border:1px solid black;padding:3px 5px;vertical-align:top;color:black;background:white;text-align:left}
  .fp-t th{font-size:9.5px;text-transform:uppercase}
  .fp-l{font-size:8.5px;text-transform:uppercase}
  .fp-v{font-size:11px;font-weight:600;min-height:14px}
  .fp-foot{font-size:9px;margin-top:8px;color:black}
}
/* v1 polish (V1-H): the Form 3 "From" note wrapped one word per line and was clipped */
.fai-t3 .fai-from{min-width:120px;max-width:160px;white-space:normal;word-break:normal;line-height:1.25}
.fai-nw{white-space:nowrap}

/* R10 (G10): 7-column list — account under the WO, short due date (overdue red), row buttons secondary */
.fai-tbl td.fai-wo{white-space:nowrap} .fai-tbl .fai-acct{display:block;font-size:12px;color:var(--ink2);max-width:220px;overflow:hidden;text-overflow:ellipsis}
.fai-tbl td.fai-pn{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fai-tbl td.fai-due{font-variant-numeric:tabular-nums} .fai-late{color:var(--red-t,var(--red));font-weight:600}
.fai-tbl td.fai-act{text-align:right;white-space:nowrap}
.fai-mon .howto pre{max-height:220px;overflow:auto}
.fai-tbl td.fai-nw:nth-child(2){max-width:140px;overflow:hidden;text-overflow:ellipsis}
.fai-tbl td.fai-pn{max-width:140px} .fai-tbl .fai-acct{max-width:170px}
@media (max-width:1250px){.fai-tbl td,.fai-tbl th{padding-left:6px;padding-right:6px} .fai-tbl td.fai-pn{max-width:110px}}
