/* ortho chart (ortho.js): the case, one quick row per visit, the timeline, the front desk's list */
.oc-wrap{display:grid;gap:12px}
.oc-none,.oc-start{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}
.oc-case{padding:14px 16px;display:grid;gap:10px}
.oc-past{background:#fafafb}
.oc-chead{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.oc-chead .acts3{flex-wrap:wrap;justify-content:flex-end}
.oc-time,.oc-almeter{display:grid;gap:5px;font-size:var(--fs-12_5);color:var(--ink2)}
.oc-bar{display:block;height:6px;border-radius:3px;background:#eeeef0;overflow:hidden}
.oc-bar > i{display:block;height:100%;background:var(--c1);border-radius:3px}
.oc-barover > i{background:#c4170c}
.oc-over{color:#c4170c;font-weight:600}
.oc-now{font-size:var(--fs-12_5);color:var(--ink2)}
.oc-loose{color:#c4170c;font-weight:600}
.oc-money{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:var(--fs-12_5);color:var(--ink2);border-top:1px solid var(--sep2);padding-top:10px}
.oc-money .acts3{flex-wrap:wrap}
.oc-form{padding:14px 16px;display:grid;gap:12px}
.oc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.oc-grid select{height:42px;border:1px solid var(--sep);border-radius:10px;padding:0 10px;font:inherit;font-size:var(--fs-15);background:#fff}
.oc-seg button{padding:9px 4px;font-size:var(--fs-13)}
.oc-chk{display:flex;gap:8px;align-items:center;font-size:var(--fs-13)}
.oc-chk input{width:18px;height:18px}
.oc-fbar{display:flex;gap:10px;justify-content:flex-end}
.oc-fbar .go2,.oc-fbar .sec2{width:auto;padding:0 20px;height:42px}
.oc-vcard{padding:12px 16px}
.oc-vhead{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:6px}
.oc-vhead input{height:34px;border:1px solid var(--sep);border-radius:8px;padding:0 8px;font:inherit}
.oc-done{background:#f5fbf6}
.oc-row{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:start;padding:9px 0;border-top:1px solid var(--sep2)}
.oc-lbl{font-size:var(--fs-13);font-weight:600;padding-top:8px}
.oc-chg{display:inline-block;font-size:var(--fs-10_5);font-weight:600;padding:1px 6px;border-radius:99px;background:#e8f1ff;color:var(--c1t)}
.oc-ctl{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-width:0}
.oc-ctl textarea{width:100%;border:1px solid var(--sep);border-radius:10px;padding:8px 10px;font:inherit;font-size:var(--fs-14);resize:vertical}
.oc-wire select{height:40px;border:1px solid var(--sep);border-radius:9px;padding:0 8px;font:inherit;font-size:var(--fs-14);background:#fff;direction:ltr}
.oc-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.oc-chips input,.oc-chips select{height:38px;border:1px solid var(--sep);border-radius:9px;padding:0 10px;font:inherit;font-size:var(--fs-14);background:#fff;min-width:0}
.oc-chips input:not(.oc-num){flex:1 1 220px}
.oc-num{width:84px}
.oc-chip{min-height:38px;padding:0 12px;border-radius:19px;background:#f2f2f4;font-size:var(--fs-13);font-weight:500}
.oc-chip[aria-pressed=true]{background:var(--c1);color:#fff}
.oc-step{display:inline-flex;align-items:center;border:1px solid var(--sep);border-radius:10px;overflow:hidden}
.oc-step button{width:40px;height:40px;font-size:var(--fs-18);background:#f6f6f7}
.oc-step input{width:56px;height:40px;border:0;text-align:center;font:inherit;font-size:var(--fs-16);font-weight:600}
.oc-brrow .oc-ctl{display:grid;gap:8px}
.oc-brmode{max-width:420px}
.oc-teeth{display:grid;gap:6px}
.oc-arch{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:3px}
.oc-arch > :nth-child(8){margin-right:6px}
.oc-t{position:relative;height:40px;border-radius:7px;background:#f6f6f7;border:1px solid var(--sep);font-size:var(--fs-12);font-variant-numeric:tabular-nums;color:var(--ink2);display:flex;align-items:center;justify-content:center}
.oc-t i{position:absolute;top:1px;right:3px;font-style:normal;font-size:var(--fs-9_5);font-weight:700}
.oc-t-on{background:#e8f1ff;border-color:#9cc2ff;color:var(--c1t);font-weight:600}
.oc-t-loose{background:#fff1ef;border-color:#f3a59d;color:#c4170c;font-weight:600}
.oc-t-placed{background:var(--c1);border-color:var(--c1);color:#fff}
.oc-t-rebonded{background:#1f8a4c;border-color:#1f8a4c;color:#fff}
.oc-t-broken{background:#c4170c;border-color:#c4170c;color:#fff}
.oc-t-removed{background:#6e6e73;border-color:#6e6e73;color:#fff;text-decoration:line-through}
.oc-toff{opacity:.35;border-style:dashed}
.oc-key{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.oc-k{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid}
.oc-k-on{background:#e8f1ff;border-color:#9cc2ff}.oc-k-loose{background:#fff1ef;border-color:#f3a59d}
.oc-lines{font-size:var(--fs-13);line-height:1.55}
.oc-book{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;font-size:var(--fs-12_5);color:var(--ink2)}
.oc-tlh{margin-top:4px}
.oc-tl{padding:4px 16px}
.oc-ti{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--sep2)}
.oc-ti:last-child{border-bottom:0}
.oc-td{font-size:var(--fs-12_5);font-weight:600;display:flex;flex-direction:column}
.oc-td small{font-weight:400;color:var(--ink3)}
.oc-tb{display:grid;gap:4px}
.oc-tb .acts3{justify-content:flex-start}
.oc-tmile b{font-size:var(--fs-13);color:var(--c1t)}
.oc-tpics{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.oc-tpic{width:72px;height:54px;border-radius:7px;overflow:hidden;background:#111;display:flex;align-items:center;justify-content:center}
.oc-tpic img{max-width:100%;max-height:100%;object-fit:contain}
.oc-tmount{display:flex;gap:10px;align-items:center;text-align:start}
.oc-tmount .xv-board{width:120px}
.oc-endh{margin-top:8px}
.oc-fhint{margin:10px 0 6px}
.oc-ffilt{margin:8px 0 10px;max-width:520px}
.oc-ffilt button{flex:1;padding:6px 8px;border-radius:6px;font-size:var(--fs-12_5);font-weight:500;color:var(--ink2)}
.oc-ffilt button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.oc-frow .acts3{flex-wrap:wrap;justify-content:flex-end}
.oc-st-booked,.oc-st-today{background:#eef6ee;color:#2e6b34}
.oc-st-overdue{background:#ffe9e7;color:#c4170c}
@media (max-width:700px){
  .oc-row{grid-template-columns:1fr;gap:6px}.oc-lbl{padding-top:0}
  .oc-arch{grid-template-columns:repeat(8,minmax(0,1fr))}.oc-arch > :nth-child(8){margin-right:0}
  .oc-ti{grid-template-columns:78px 1fr}
  .oc-chead{flex-direction:column}.oc-chead .acts3{justify-content:flex-start}
  .oc-none,.oc-start{flex-direction:column;align-items:flex-start}
  .oc-frow{grid-template-columns:1fr auto}.oc-frow .acts3{grid-column:1/-1;justify-content:flex-start}
}
