/* Fieldline theme "B · Calm dark" (v4.7 preview). Loaded after fieldline.css; active when <html class="dk">.
   Deep navy surfaces, soft teal accent, larger tap targets, plain labels. Remove class="dk" to get the old light look back. */
html.dk{color-scheme:dark;
 --bg:#0f1420;--sf:#171f2f;--t:#e9edf5;--t2:#c3cad8;--m:#98a2b6;--l:#273147;--l2:#1d2638;--acc:#5ec4b2;--accs:#173033;--amb:#e8b064;--red:#f08a8a;
 --est:#7fa9f0;--ests:#1a2540;--estd:#b3cbf6;--inv:#ab91f0;--invs:#241d3a;--invd:#cfbff8;--pro:#e8b064;--pros:#2a2219;--prod:#f0c98e;--flg:#f08a8a;--flgs:#2e1c1f;--flgd:#f5b4b4;
 --asm:#5ec4b2;--asms:#16302d;--asmd:#a3e2d6;--org:#f0a868;--orgs:#2d2016;--orgd:#f5c79f;--grn:#7fd1a0;--grns:#18291f;--sch:#93b3d6;--schs:#1a2433;--schd:#c0d3e8;--sh:none;
 --side:#131a28}
/* ---- generated: hardcoded light colors in fieldline.css mapped to the dark palette ---- */
html.dk .ch{background:#1a2b3d}
html.dk a.row:hover{background:#212b36}
html.dk .av.c0{background:#18263f;color:#abbfe2;border-color:#2b3b5a}
html.dk .av.c1{background:#1d3a35;color:#b2dcd7;border-color:#2f564f}
html.dk .av.c2{background:#25193e;color:#beb3db;border-color:#3a2b5a}
html.dk .av.c3{background:#3f2e18;color:#e9cda5;border-color:#5a482b}
html.dk .av.c4{background:#3f1818;color:#e8a6a6;border-color:#5a2b2b}
html.dk .av.c5{background:#203725;color:#ace2c0;border-color:#2b5a3a}
html.dk .pill.ac{border-color:#2b3c5a}
html.dk .btn.pr:hover{background:#7f96be}
html.dk .tile{background:#171f2f;border-top:3px solid color-mix(in srgb,var(--c) 70%,#2a3550)}
html.dk .na{background:#171f2f}
html.dk .nr .bar{background:color-mix(in srgb,var(--c) 65%,#171f2f)}
html.dk .tag{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c) 18%,#2a3550)}
html.dk .urg.od{background:#3f1818;color:#e8a6a6;box-shadow:inset 0 0 0 1px #5a2b2b}
html.dk .urg.td{color:#e9cda5}
html.dk .urg.dn{color:#ace2c0}
html.dk details.col{background:#171f2f}
html.dk details.col summary{background:color-mix(in srgb,var(--cs) 55%,#171f2f);border-left:3px solid color-mix(in srgb,var(--c) 65%,#2a3550)}
html.dk details.col summary .badge{background:color-mix(in srgb,var(--c) 14%,#171f2f);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c) 25%,#2a3550)}
html.dk .kh{background:color-mix(in srgb,var(--c) 10%,#171f2f);color:color-mix(in srgb,var(--c) 75%,#c3cad8);border-bottom:1px solid color-mix(in srgb,var(--c) 20%,#2a3550);border-top:3px solid color-mix(in srgb,var(--c) 65%,#2a3550)}
html.dk .kh .n{background:color-mix(in srgb,var(--c) 16%,#171f2f)}
html.dk .vb.op{color:#ace2c0;border:1px solid #2b5a3a}
html.dk .vb.no{background:#1a2b3d;color:#bcc5d2}
html.dk .vb.rc{background:#1b3b26;color:#ace2c0;border:1px solid #2b593a}
html.dk .vb.nd{background:#171f2f}
html.dk .er .bar{background:color-mix(in srgb,var(--est) 65%,#171f2f)}
html.dk .tog{background:#202a37}
html.dk .tog:after{background:#171f2f}
html.dk .tabs{background:rgba(19,26,40,.94)}
html.dk .skel{background:linear-gradient(90deg,#212a36,#202937,#212a36)}
html.dk .tk:hover{background:#212b36}
html.dk .chk{border:1.5px solid #35414f;background:#171f2f}
html.dk .grp{background:#1a2b3d}
html.dk .s0{background:#202a37;color:#bcc5d2}
html.dk .s3{color:#ace2c0}
html.dk .inp{background:#1a2b3d}
html.dk .qt{background:#1a2b3d}
html.dk .linkbox{background:#1a2b3d}
html.dk .tc-due .late{color:#e9aaa5}
html.dk .tc-note{background:#1a2b3d}
html.dk .ag-amber{background:#3f3118;color:#e9cda5;box-shadow:inset 0 0 0 1px #5a492b}
html.dk .ag-orange{background:#3f2818;color:#e9bea5;box-shadow:inset 0 0 0 1px #5a3e2b}
html.dk .ag-red{background:#3f1818;color:#e8a6a6;box-shadow:inset 0 0 0 1px #5a2b2b}
html.dk .og{border-left:3px solid var(--agc,#5a492b)}
html.dk .vb.ns{background:#3f1818;color:#e8a6a6;border:1px solid #5a2b2b}
html.dk .nsb{background:#3f1818;color:#e8a6a6}
html.dk .nsbar{background:#3f1818;border:1px solid #5a2b2b;color:#e7a7a7}
html.dk .er.uns{background:#3f1818}
html.dk .warnb{border:1px solid #5a492b;color:#e9cca5}
html.dk .paper{background:#171f2f}
html.dk .letter{color:#c3cad8}
html.dk .letter .lh{border-bottom:1px solid #2a3550}
html.dk .letter .nologo{border:1px dashed #2a3550}
html.dk .letter h1{color:#e9a5ae}
html.dk .letter .lt th{background:#1b2333}
html.dk .letter .c-days{color:#e9a5ae}
html.dk .letter .tot td{background:#1b2333}
html.dk .logo-slot{background:#171f2f}
html.dk .ttabs button span{background:#202a37}
html.dk .age{background:#222935}
html.dk .age.a1{color:#e9cda5}
html.dk .age.a2{background:#3f1818;color:#e8a6a6}
html.dk .rvb{border:1px solid color-mix(in srgb,var(--estd) 20%,#2a3550)}
html.dk .bellb .bn{background:#d38869}
html.dk .npi:hover{background:#212b36}
html.dk .npi .ic{background:#222935}
html.dk .npi .ud{background:#698ad3}
html.dk .ob{background:#1a2b3d;color:#bcc5d2;border:1px solid #2d3f57}
html.dk .ob.th{background:#3f3118;color:#e9cfa5;border-color:#5a4a2b}
html.dk .ob.la{background:#18283f;color:#a9c2e5;border-color:#2b3f5a}
html.dk .ob.lo{background:#3a1d1d;color:#ddb0b0;border-color:#5a2b2b}
html.dk .oc.on .ck:after{border:solid #2a3550}
html.dk .ti.c:before{border-color:#2b3d5a}
html.dk .tcards .tile.on{box-shadow:0 0 0 2px color-mix(in srgb,var(--c) 55%,#2a3550),var(--sh)}
html.dk .fbar{background:#171f2f}
html.dk .callb{color:#ace2c0;border:1px solid #2b5a3a}
html.dk .callb:hover{background:#1a3c26}
html.dk .tc-call{border:1px solid #2b5a3a;color:#abe3c1}
html.dk .tc-call .i{background:#171f2f;border:1px solid #2b5a3a}
html.dk .tc-call b{color:#a8e5c2}
html.dk .tc-call small{color:#b4dac1}
html.dk .tc-call:hover{background:#1a3c26}
html.dk .cbt .sw{background:#232a34}
html.dk .cbt .sw:after{background:#171f2f}
html.dk .cbs{background:#171f2f}
html.dk .cbo{background:#171f2f}
html.dk .cbm{color:#ace2c0}
html.dk .plist .proj.needs{border-left-color:color-mix(in srgb,var(--flg) 75%,#2a3550)}
html.dk .stg{border-top:3px solid #35404f;background:#171f2f}
html.dk .stg.s-dn{border-top-color:color-mix(in srgb,var(--grn) 75%,#2a3550)}
html.dk .stg.s-sc{border-top-color:color-mix(in srgb,var(--acc) 70%,#2a3550)}
html.dk .stg.s-pd{border-top-color:color-mix(in srgb,var(--pro) 75%,#2a3550)}
html.dk .stg.bad{border-color:#5a2b2b;border-top-color:color-mix(in srgb,var(--flg) 80%,#2a3550)}
html.dk .stg .bl.y{color:#ace2c0}
html.dk .pbar2{background:#3f1818}
html.dk .pbar2 i{background:color-mix(in srgb,var(--grn) 80%,#171f2f)}
html.dk .palert,html.dk .pban{border:1px solid #5a2b2b}
html.dk .palert span,html.dk .pban span{color:#e2acac}
html.dk #proj .tl .ti.x:before{border-color:#35404f}
html.dk .stg.s-dn .ss{color:#ace2c0}
html.dk .pbl.y{color:#ace2c0}
html.dk .wc-ok{color:#ace2bf}
html.dk .wc-slot{background:#1d2b3a}
html.dk .wc-cc{background:#6993d3}
html.dk .stabs a.u small{background:#3f1818;color:#e8a6a6}
html.dk .uc{background:#171f2f}
html.dk .uc .ic{background:#3f1818;color:#e8a6a6}
html.dk .uc .nt{background:#1a2b3d}
html.dk .sc.none{background:#171f2f;border:1px dashed #37404e}
html.dk .sc.info{background:#3f3118;color:#e9cda5;border-color:#5a482b}
html.dk .sc.price{background:#3f2e18;color:#e9cda5;border-color:#5a472b}
html.dk .sc.rev{background:#18263f;color:#a5bde9;border-color:#2b3c5a}
html.dk .sc.hold{background:#202a37;color:#b9c4d5;border-color:#353f50}
html.dk .sc.wait{background:#25183f;color:#bcade1;border-color:#3a2b5a}
html.dk .sc.ready{background:#183f24;color:#ace2c0;border-color:#2b5a3a}
html.dk .sc.wont{background:#3f1818;color:#e5a9a9;border-color:#5a2b2b}
html.dk .oc.nsp.on{background:#1a2b3d}
html.dk .nsprev{background:#1a2b3d}
html.dk .nsw{background:#3f3118;border:1px solid #5a482b;color:#e9cda5}
html.dk .nsh .h1:before{background:#171f2f}
html.dk .nsh .ok{color:#ace2c0}
html.dk .gbtn{border:1px solid #2a3550;background:#171f2f;color:#c3cad8}
html.dk .gbtn:hover{background:#18273f}
html.dk .errb{background:#3f1818;border:1px solid #5a2b2b;color:#e9a5a5}
html.dk .okb{background:#1c3b2a;border:1px solid #2c5840;color:#a5e9c0}
html.dk .gav{background:#171f2f!important}
html.dk .tchip.g{background:#1c3b2a;color:#a5e9bf}
html.dk .tchip.a{background:#3f3118;color:#e9cea5}
html.dk .tchip.r{background:#3f1818;color:#e8a6a6}
html.dk .tmx .yes{color:#a5e9be}
html.dk .warnc{background:#3f3118;border:1px solid #5a482b;color:#e9d0a5}
/* ---- hand-tuned components (win over the generated block) ---- */
html.dk body{background:var(--bg);color:var(--t);font-size:15px}
/* shell */
html.dk .side{background:var(--side);border-right-color:var(--l)}
html.dk .side a.nv{font-size:15px;padding:11px 12px;border-radius:12px;color:var(--t2);margin-bottom:2px}
html.dk .side a.nv .i{width:19px;height:19px}
html.dk .side a.nv:hover{background:var(--l2)}
html.dk .side a.nv.on{background:var(--l2);color:var(--acc);font-weight:600}
html.dk .side a.nv.on .i{color:var(--acc)}
html.dk .side .lbl{display:none}
html.dk .side .ws{border-color:var(--l)}
html.dk .side .newb{height:44px;border-radius:12px;font-size:15px}
html.dk .side .me{border-top-color:var(--l)}
html.dk .side .sp2{flex:1}
html.dk .top{background:var(--side);border-bottom-color:var(--l)}
html.dk .tabs{background:rgba(19,26,40,.97);border-top-color:var(--l);padding-top:8px}
html.dk .tabs a{font-size:12px;gap:4px;min-height:48px;justify-content:center;color:var(--m)}
html.dk .tabs a .i{width:23px;height:23px}
html.dk .tabs a.on{color:var(--acc);font-weight:650}
/* buttons + inputs: bigger, calmer */
html.dk .btn{height:38px;padding:0 15px;font-size:14px;border-radius:11px;background:var(--sf);border-color:var(--l);color:var(--t);box-shadow:none}
html.dk .btn:hover{background:var(--l2)}
html.dk .btn.pr{background:var(--acc);border-color:var(--acc);color:#0b1a17}
html.dk .btn.pr:hover{background:#74d0c0}
html.dk .btn.gh{background:none;border-color:transparent;color:var(--m)}
html.dk .btn.dg{color:var(--flgd)}
html.dk .ib{color:var(--t2)}
html.dk .in,html.dk input[type=date],html.dk input[type=time],html.dk select{background:#111827;color:var(--t);border-color:var(--l)}
html.dk .in{min-height:44px;border-radius:11px;font-size:15px}
html.dk .in::placeholder,html.dk input::placeholder,html.dk textarea::placeholder{color:#7d879b}
html.dk .in:focus,html.dk input:focus,html.dk textarea:focus,html.dk select:focus{outline:2px solid color-mix(in srgb,var(--acc) 55%,transparent);outline-offset:0;border-color:var(--acc)}
/* cards, rows, tiles */
html.dk .card{background:var(--sf);border-color:var(--l);border-radius:16px}
html.dk .row,html.dk .tk{border-top-color:var(--l)}
html.dk .tk{background:var(--sf);min-height:60px;padding:13px 18px}
html.dk .row{padding:14px 18px}
html.dk .tile{background:var(--sf);border:1px solid var(--l);border-radius:16px;border-top:1px solid var(--l)}
html.dk .tile .h{color:var(--t2)}
html.dk .tile .h .ic{background:color-mix(in srgb,var(--c) 18%,var(--sf));color:color-mix(in srgb,var(--c) 70%,#fff)}
html.dk .tile .n{color:var(--t)}
html.dk .tile small{color:var(--m)}
html.dk #home .tiles .tile:first-child{background:var(--acc);border-color:var(--acc)}
html.dk #home .tiles .tile:first-child .h,html.dk #home .tiles .tile:first-child .n,html.dk #home .tiles .tile:first-child small{color:#0b1a17}
html.dk #home .tiles .tile:first-child .h .ic{background:rgba(11,26,23,.12);color:#0b1a17}
html.dk .tcards .tile.on{box-shadow:0 0 0 2px var(--acc)}
html.dk .ttabs button.on,html.dk .stabs a.on{color:var(--acc);border-color:var(--acc)}
html.dk .stabs a,html.dk .ttabs button{color:var(--m)}
html.dk .seg span.on,html.dk .chip.on{background:var(--accs);color:var(--acc);border-color:color-mix(in srgb,var(--acc) 45%,transparent)}
html.dk .seg,html.dk .seg span,html.dk .chip{border-color:var(--l)}
html.dk .pill{background:var(--l2);border-color:var(--l);color:var(--t2)}
html.dk .tag{background:var(--l2);color:var(--t2)}
html.dk .empty{color:var(--m)}html.dk .empty b{color:var(--t)}
html.dk .meta,html.dk .small,html.dk .sub,html.dk .note{color:var(--m)}
html.dk .note{border-color:var(--l)}
html.dk .fbar{background:var(--sf);border-color:var(--l)}
html.dk .warnc{background:var(--pros);border-color:#4a3a22;color:var(--prod)}
html.dk .rvb{background:var(--accs);border-color:#24484a;color:var(--t)}
html.dk .rvb b{color:var(--acc)}
html.dk .okb{background:var(--grns);border-color:#2b4a36;color:var(--grn)}
html.dk .errb,html.dk .errm{color:var(--flgd)}html.dk .errb{background:var(--flgs);border-color:#4a2a2e}
html.dk .warnb{background:var(--pros);border-color:#4a3a22;color:var(--prod)}
/* panels, sheets, bell */
html.dk .panel,html.dk .sheet,html.dk .npop{background:var(--sf);color:var(--t);border-color:var(--l)}
html.dk .pbk,html.dk .npbk,html.dk .ov{background:rgba(3,6,12,.6)}
html.dk .toast{background:#e9edf5;color:#0f1420}
html.dk .tog{background:#2a3550}html.dk .tog.on{background:var(--acc)}
html.dk .chk.on{background:var(--acc);border-color:var(--acc);color:#0b1a17}
html.dk a{color:inherit}
html.dk .lk2,html.dk .sec-h a{color:var(--acc)}
html.dk .letter,html.dk .paper{color:#111;background:#fff}  /* final notice preview stays paper-white */
/* estimate follow-ups: open/view line always visible, phones included */
html.dk .vline{display:block}
.vline{display:block;margin-top:3px;font-size:13px;color:var(--m)}
.vline b{color:var(--grn);font-weight:600}
/* sign-in + invite */
html.dk .login{background:radial-gradient(1200px 600px at 50% -10%,#16263a 0%,var(--bg) 60%)}
html.dk .lbox{background:var(--sf);border:1px solid var(--l);border-radius:20px;padding:28px 24px}
html.dk .gbtn{background:#fff;color:#1f2937;border-color:#fff;min-height:46px;border-radius:12px}
html.dk .lbox .btn.pr{height:46px}
html.dk .or{color:var(--m)}html.dk .or:before,html.dk .or:after{background:var(--l)}
html.dk .lb{color:var(--t2)}
@media(max-width:899px){html.dk .btn{height:42px}html.dk .wrap{padding-bottom:120px}html.dk .tk{min-height:64px}}
html.dk .tabs:empty{display:none}
