/* Fieldline v6 design "C · Field-friendly bold". Loaded last. Visual only.
   Tokens + shared components. Customer documents (.letter/.paper, /sign) are excluded. */
:root{--bg:#f2f2ee;--sf:#fff;--t:#111;--t2:#2b2b2b;--m:#545454;--l:#d4d4cc;--l2:#ebebe5;--acc:#1d4ed8;--accs:#e0e9ff;
 --red:#c81e16;--flg:#c81e16;--flgs:#ffe3e0;--flgd:#9b1610;--grn:#0a7d3e;--grns:#dcf7e7;--amb:#b45300;--org:#c25700;--orgs:#ffead4;--orgd:#8a3d00;
 --est:#1d4ed8;--ests:#e0e9ff;--estd:#173ea8;--inv:#6d28d9;--invs:#efe7ff;--invd:#4c1d95;
 --r1:10px;--r2:14px;--r3:18px;--tap:44px;--sh:0 2px 8px rgba(0,0,0,.06);--side:#fff;--fb:#111}
body{font-size:15px;background:var(--bg);color:var(--t)}
/* nav */
.side{background:var(--side);border-right:2px solid var(--l)}
.nv{min-height:42px;padding:9px 12px;border-radius:12px;font-weight:600;font-size:14.5px;color:var(--t2)}
.nv:hover{background:var(--l2)}
.nv.on{background:var(--fb);color:#fff}.nv.on .i{stroke:#fff}
.top{background:var(--sf);border-bottom:2px solid var(--l)}
/* phone bottom tab bar */
.tabs{background:#fff;border-top:2px solid var(--l);padding:8px 4px calc(12px + env(safe-area-inset-bottom))}
.tabs a{font-size:11.5px;font-weight:650;color:var(--m);min-height:50px;justify-content:center}
.tabs a .i{width:22px;height:22px;stroke-width:2}
.tabs a.on{color:var(--fb)}.tabs a.on::before{content:"";position:absolute;top:-8px;left:22%;right:22%;height:3px;border-radius:3px;background:var(--fb)}
/* sub tabs -> pills */
.nvs,.stabs,.doctabs,.ttabs{gap:8px!important;border:0!important;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.nvs a,.stabs button,.stabs a,.doctabs button,.ttabs button{background:#fff!important;border:2px solid var(--l)!important;border-radius:999px!important;padding:0 16px!important;min-height:40px;display:inline-flex;align-items:center;gap:6px;font-weight:650!important;font-size:14px!important;color:var(--t2)!important;white-space:nowrap;flex:0 0 auto!important;margin:0!important}
.nvs a.on,.stabs .on,.doctabs button.on,.ttabs button.on{background:var(--fb)!important;border-color:var(--fb)!important;color:#fff!important}
.nvs a.on *{color:#fff!important}
/* buttons */
.btn{min-height:40px;height:auto!important;padding:8px 16px;border-radius:12px;border:2px solid var(--l);font-weight:650;font-size:14px!important;background:#fff;color:var(--t)}
.btn:hover{border-color:#999}
.btn.pr,.gbtn{background:var(--acc);border-color:var(--acc);color:#fff}
.btn.pr .i{stroke:#fff}
.btn.dg{color:var(--flg);border-color:#f0b4b0}
.btn.gh{border-color:transparent}
.btn:focus-visible,.in:focus,.nv:focus-visible,a:focus-visible{outline:3px solid #93b4ff;outline-offset:2px}
/* cards, tiles */
.card{border:0;border-radius:var(--r3);box-shadow:var(--sh)}
.card.pad{padding:18px}
.tile{border:0;border-radius:var(--r3);box-shadow:var(--sh);border-left:6px solid var(--c,var(--acc));padding:18px}
.tile b,.tile .n,.tile strong{letter-spacing:-.5px}
.dtc,.nvk{border-radius:var(--r3)!important;border:0!important;box-shadow:var(--sh)}
/* page headers */
.ph h1,.scr h1{font-size:26px;font-weight:800;letter-spacing:-.6px}
/* badges */
.pill,.tag{height:24px;padding:0 10px;font-size:12.5px;font-weight:700;border-radius:999px}
/* forms */
.in,input.in,select.in,textarea.in,.search{min-height:44px;border:2px solid var(--l);border-radius:12px;font-size:15px;background:#fff}
.in:focus{border-color:var(--acc)}
.search{height:46px}
input[type=checkbox],input[type=radio]{width:20px;height:20px;accent-color:var(--acc)}
/* modals, sheets */
.sheet{border-radius:22px 22px 0 0}
.panel{border:0}
@media(min-width:900px){.sheet,.panel{border-radius:22px}}
/* tables: tidy on desktop, cards on phone */
.scr table:not(.lt){border-collapse:separate;border-spacing:0}
.scr table:not(.lt) th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--m);background:transparent}
@media(max-width:640px){
 .scr table:not(.lt):not(.keep),.scr table:not(.lt):not(.keep) tbody{display:block;width:100%}
 .scr table:not(.lt):not(.keep) thead{display:none}
 .scr table:not(.lt):not(.keep) tr{display:flex;flex-wrap:wrap;gap:4px 12px;background:#fff;border-radius:16px;box-shadow:var(--sh);padding:12px 14px;margin-bottom:10px}
 .scr table:not(.lt):not(.keep) td{border:0!important;padding:2px 0!important;text-align:left!important}
 .scr table:not(.lt):not(.keep) td:first-child{flex-basis:100%;font-weight:700}
 .btn{min-height:46px}
 .ph h1,.scr h1{font-size:24px}
}
/* toast */
.toast{border-radius:14px;font-weight:600}
/* customer documents: never themed */
.letter,.paper{color-scheme:light;--t:#111;--t2:#333;--m:#555;--l:#888;--red:#b21a2e;--bg:#fff;--sf:#fff}
.letter .lt th{background:#ebebeb!important;color:#111!important}
/* dashboard tracker */
.side{min-height:100vh;height:auto;align-self:stretch}
.dth h2{font-size:20px;font-weight:800}
.dtg{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important;gap:12px!important}
.dtc{background:#fff!important;border-left:6px solid #8a8a80!important}
.dtc.dturg{border-left-color:var(--red)!important}
.dtc.zero{opacity:1;border-left-color:var(--l)!important}.dtc.zero summary b{color:var(--m)}
.dtc summary{flex-direction:column;align-items:flex-start!important;gap:6px!important;padding:16px 18px!important;min-height:120px}
.dtc summary>div:first-child{flex-direction:row!important;align-items:baseline;gap:8px;flex-wrap:wrap}
.dtc summary b{font-size:30px!important;font-weight:800;letter-spacing:-.8px}
.dtc.dturg summary b{color:var(--red)!important}
.dtc summary span{font-size:14px!important;font-weight:700;color:var(--t2)!important}
.dtl{font-size:15.5px!important;font-weight:750!important}.dtl small{font-size:13px!important;color:var(--m)!important;margin-top:2px}
.dti{font-size:14.5px;min-height:44px;align-items:center;border-top:1px solid var(--l)!important}
.dti em.od{color:var(--red)}.dti em.td{color:var(--amb)}
.nvtot{gap:12px!important}.nvk{background:#fff!important;padding:16px 18px!important}.nvk b{font-size:28px!important;font-weight:800;color:var(--grn)}
@media(max-width:640px){.dtg{grid-template-columns:1fr 1fr!important;gap:10px!important}.dtc summary{padding:13px!important;min-height:110px}.dtc summary b{font-size:24px!important}.dtl{font-size:14px!important}}
#side .nv.on,#side a.nv.on{background:var(--fb)!important;color:#fff!important}#side .nv.on .i{stroke:#fff!important}
@media(max-width:640px){.nvk b{font-size:clamp(17px,5.4vw,24px)!important;overflow-wrap:anywhere}.nvk{padding:13px!important;min-width:0}}
@media(max-width:480px){#dx .dxh{gap:4px;padding-left:4px;padding-right:4px}#dx .dxh>b{display:none}#dx .dxa .btn,#dx .dxv .btn{padding:0 9px!important;font-size:13px;min-width:0}#dx .dxa{gap:4px;margin-left:auto}}
