/* Everest 360 - light theme.
   Ink on white paper, a quiet grey canvas behind it, and the blue of the company logo only where something is
   active or can be pressed. No gradients, no 3D: numbers and tables carry the page. */
:root{--canvas:#f4f6f9;--paper:#fff;--ink:#1c2533;--mut:#5f6c7f;--line:#dfe4ec;--line2:#cbd3df;--brand:#1d5fbf;--brand-d:#174c9c;--brand-soft:#e9f1fd;
--green:#17794b;--green-soft:#e3f4ea;--red:#b42318;--red-soft:#fde7e4;--amber:#b76e00;--amber-soft:#fdf1d7;--hover:#f1f4f9;--radius:10px;
/* names used by older pages */ --txt:var(--ink);--card:var(--paper);--acc:var(--brand);--blue:var(--brand);--bg1:var(--canvas);--bg2:var(--canvas)}
*{box-sizing:border-box}html,body{margin:0;height:100%}
body{font-family:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,Roboto,"Helvetica Neue",Arial,sans-serif;font-size:14px;line-height:1.45;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased}
a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}
h1,h2,h3,h4{color:var(--ink)}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}

/* ---------------- frame: side menu + page */
.layout{display:flex;min-height:100vh}
.side{width:252px;flex:0 0 252px;padding:16px 12px 18px;background:var(--paper);border-right:1px solid var(--line);position:sticky;top:0;height:100vh;overflow:auto}
.side .logo{padding:4px 8px 14px;margin-bottom:6px;border-bottom:1px solid var(--line)}
.side .logo img{width:100%;max-height:72px;object-fit:contain;object-position:left center;display:block}
.side h6{margin:14px 10px 6px;font-size:12px;font-weight:600;color:var(--mut)}
.side select{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--line2);background:var(--paper);color:var(--ink);font-size:14px}
.nav a{display:flex;align-items:center;gap:8px;padding:7px 10px 7px 13px;margin:1px 0;border-radius:7px;color:var(--ink);font-weight:500;font-size:14px;border-left:3px solid transparent;text-decoration:none}
.nav a:hover{background:var(--hover);text-decoration:none}
.nav a.on{background:var(--brand-soft);color:var(--brand-d);font-weight:650;border-left-color:var(--brand)}
.nav a .badge{margin-left:auto}
.mod{margin-top:6px}.mod>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:8px 10px 5px;font-size:12px;font-weight:700;color:var(--mut);border-radius:7px;user-select:none}
.mod>summary::-webkit-details-marker{display:none}.mod>summary::after{content:"";width:6px;height:6px;border-right:1.5px solid var(--mut);border-bottom:1.5px solid var(--mut);transform:rotate(-135deg);margin-right:4px;transition:transform .12s}
.mod[open]>summary::after{transform:rotate(45deg)}.mod>summary:hover{color:var(--ink)}
.side .user{margin-top:16px;padding:12px 10px 0;border-top:1px solid var(--line);font-size:13px;color:var(--mut)}
.side .user b{color:var(--ink)}
main{flex:1;padding:22px 28px 60px;min-width:0}
.top{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.top h1{margin:0;font-size:22px;font-weight:650;letter-spacing:-.005em}
.top .sub{color:var(--mut);font-size:13px;margin-top:3px}

/* ---------------- buttons */
.btn{display:inline-block;border:1px solid var(--brand);cursor:pointer;color:#fff;font-weight:600;font-size:14px;line-height:1.2;padding:8px 14px;border-radius:8px;background:var(--brand);font-family:inherit;text-decoration:none;transition:background .1s}
.btn:hover{background:var(--brand-d);border-color:var(--brand-d);text-decoration:none}.btn:active{transform:translateY(1px)}
.btn.green{background:var(--green);border-color:var(--green)}.btn.green:hover{background:#12613c;border-color:#12613c}
.btn.red{background:var(--paper);border-color:#e3a39c;color:var(--red)}.btn.red:hover{background:var(--red-soft)}
.btn.grey{background:var(--paper);border-color:var(--line2);color:var(--ink)}.btn.grey:hover{background:var(--hover);border-color:var(--line2)}
.btn.sm{padding:5px 10px;font-size:12.5px;border-radius:7px}
button:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed}

/* ---------------- numbers on top of a page */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(176px,1fr));gap:12px;margin-bottom:18px}
.tile{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--c,var(--brand));border-radius:var(--radius);padding:11px 14px 13px}
.tile .lab{font-size:11.5px;font-weight:600;color:var(--mut);letter-spacing:.02em}
.tile .val{margin-top:5px;font-size:24px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.15}
.tiles a{color:inherit;text-decoration:none}.tiles a:hover .tile{border-color:var(--line2);background:#fbfcfe}

/* ---------------- cards, tables */
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.card.span2{grid-column:span 2}
.card h3{margin:0 0 10px;font-size:14.5px;font-weight:650}
.chart{width:100%;height:420px}.chart.tall{height:520px}
table{border-collapse:collapse;width:100%;font-size:13px}
th{background:#f1f4f9;color:#3a4658;text-align:left;padding:8px 10px;font-size:12px;font-weight:650;border-bottom:1px solid var(--line2);position:sticky;top:0;white-space:nowrap}
td{padding:7px 10px;border-bottom:1px solid var(--line)}td.n,th.n{text-align:right;font-variant-numeric:tabular-nums}
tr:hover td{background:#f8fafc}
.tbl{max-height:420px;overflow:auto;border-radius:8px;border:1px solid var(--line)}.tbl table tr:last-child td{border-bottom:0}
.badge{display:inline-block;padding:2px 9px;border-radius:20px;font-size:12px;font-weight:650}
.b-ok{background:var(--green-soft);color:#0f5c38}.b-warn{background:var(--amber-soft);color:#7a4a00}.b-bad{background:var(--red-soft);color:#8f1c13}.b-grey{background:#e9edf3;color:#3a4558}
.pill{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:650;margin:0 8px 8px 0}
.late{color:var(--red);font-weight:700}

/* ---------------- forms */
label{display:block;font-size:12px;color:var(--mut);margin:12px 0 5px;font-weight:600;letter-spacing:.02em}
input[type=text],input[type=password],input[type=file],input[type=date],input[type=number],input[type=email],input[type=search],select,textarea{width:100%;padding:8px 11px;border-radius:8px;border:1px solid var(--line2);background:var(--paper);color:var(--ink);font-size:14px;font-family:inherit}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(29,95,191,.16)}
input::placeholder,textarea::placeholder{color:#98a2b3}
input[type=file]{padding:12px;border-style:dashed;background:#fafbfd}
.err{background:var(--red-soft);color:#8f1c13;padding:9px 12px;border-radius:8px;margin:10px 0;font-size:13px;font-weight:600;border:1px solid #f4c7c1}
.msg{background:var(--green-soft);color:#0f5c38;padding:10px 14px;border-radius:8px;margin-bottom:16px;font-weight:600;border:1px solid #bfe3cd}
.row{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end}.row>*{flex:1;min-width:180px}
.chk{display:block}.chk label{display:inline-flex;gap:6px;align-items:center;margin:4px 12px 4px 0;color:var(--ink);font-size:13px;letter-spacing:0;font-weight:500}
.chk input{width:auto}
.hint{color:var(--mut);font-size:12.5px;margin-top:6px}
.perm select{width:auto;padding:5px 8px;font-size:12px}
details.card>summary{color:var(--ink)}

/* ---------------- sign-in */
.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--canvas)}
.login .box{width:min(400px,100%);padding:28px 30px 30px;border-radius:14px;background:var(--paper);border:1px solid var(--line);box-shadow:0 10px 30px rgba(16,24,40,.08)}
.login .logo{padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid var(--line)}.login .logo img{max-width:100%;max-height:84px;display:block;margin:0 auto}
.login h2{font-size:20px;font-weight:650}

/* ---------------- tabs, statements on paper */
.tabs{display:flex;gap:4px;margin-bottom:16px;flex-wrap:wrap;border-bottom:1px solid var(--line)}
.tabs a{padding:8px 14px;font-weight:600;font-size:13.5px;color:var(--mut);border-bottom:2px solid transparent;margin-bottom:-1px;text-decoration:none}
.tabs a:hover{color:var(--ink)}.tabs a.on{color:var(--brand-d);border-bottom-color:var(--brand)}
.paper{background:var(--paper);color:#14213d;border:1px solid var(--line);border-radius:var(--radius);padding:26px 30px;box-shadow:0 1px 2px rgba(16,24,40,.04);max-width:980px}
.paper h2{margin:0;font-size:20px;color:#1f3864}.paper .co{font-weight:800;font-size:17px;color:#0b1b3a}.paper .sub{color:#4a5a78;font-size:13px;margin:2px 0 14px}
.paper table{font-size:13.5px}.paper th{background:#1f3864;color:#fff;position:static;border-bottom:0}.paper td{border-bottom:1px solid #e3e9f3;color:#14213d;padding:6px 10px}
.paper tr.st-sec td{font-weight:800;background:#eaf0fb;color:#1f3864}.paper tr.st-tot td{font-weight:800;border-top:1px solid #7a8db3}.paper tr.st-grand td{font-weight:800;background:#dfe8f8;border-top:2px solid #1f3864;border-bottom:3px double #1f3864}
.paper tr.st-chk td{font-style:italic;color:#6b7891}.paper tr:hover td{background:inherit}.paper td.neg{color:#b00020}

/* ---------------- task board */
.board{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:12px;overflow-x:auto;align-items:start}
.col{background:#eef1f6;border:1px solid var(--line);border-radius:var(--radius);padding:10px}.col h4{margin:2px 4px 10px;font-size:12px;font-weight:700;color:var(--mut);display:flex;justify-content:space-between}
.tcard{display:block;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:8px;padding:9px 11px;margin-bottom:8px;color:var(--ink);font-size:13px;text-decoration:none}
.tcard:hover{border-color:var(--line2);box-shadow:0 2px 6px rgba(16,24,40,.08);text-decoration:none}.tcard small{color:var(--mut)}.p-Urgent{border-left-color:#d92d20}.p-High{border-left-color:#e08a00}.p-Normal{border-left-color:var(--brand)}.p-Low{border-left-color:#98a2b3}

/* ---------------- chat */
.chatwrap{display:flex;height:calc(100vh - 60px);min-height:520px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--paper)}
.cside{width:310px;flex:0 0 310px;border-right:1px solid var(--line);display:flex;flex-direction:column;background:var(--paper)}
.chead{display:flex;align-items:center;gap:8px;padding:14px 14px 6px;font-size:16px}.chead .hint{flex:1}
.cside input{margin:6px 12px 8px;width:calc(100% - 24px)}.clist{overflow:auto;flex:1;padding:0 8px 12px}
.csec{font-size:12px;font-weight:700;color:var(--mut);margin:12px 8px 4px}
.citem{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;margin:1px 0}.citem:hover{background:var(--hover)}.citem.on{background:var(--brand-soft)}
.avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;position:relative;flex:0 0 36px}
.dot{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:#98a2b3}.dot.online{background:#22a565}.dot.idle{background:#e5a50a}
.cname{font-weight:650;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cprev{font-size:12px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cmeta{flex:1;min-width:0}.cbadge{background:#d92d20;color:#fff;border-radius:20px;font-size:11px;font-weight:700;padding:2px 8px}
.cmain{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--canvas)}.cempty{margin:auto;text-align:center;max-width:420px;color:var(--mut)}.cempty h2{color:var(--ink)}
.cheadbar{padding:12px 18px;border-bottom:1px solid var(--line);background:var(--paper)}.ctitle{font-size:16px;font-weight:650}
.cthread{flex:1;overflow:auto;padding:14px 18px;display:flex;flex-direction:column}.cthread #cmsgs{margin-top:auto}
.dsep{text-align:center;font-size:11.5px;color:var(--mut);margin:14px 0 8px}.dsep span{background:#e6eaf0;padding:3px 12px;border-radius:20px}
.cmsg{display:flex;margin:3px 0;position:relative}.cmsg.mine{justify-content:flex-end}
.bubble{max-width:68%;padding:8px 12px;border-radius:14px;font-size:14px;line-height:1.45;word-wrap:break-word;overflow-wrap:anywhere;position:relative}
.cmsg .bubble{background:var(--paper);border:1px solid var(--line);border-bottom-left-radius:4px;color:var(--ink)}
.cmsg.mine .bubble{background:var(--brand);border-color:var(--brand);color:#fff;border-bottom-left-radius:14px;border-bottom-right-radius:4px}
.who{font-size:11.5px;font-weight:700;color:var(--brand-d);margin-bottom:2px}.when{font-size:10.5px;opacity:.7;text-align:right;margin-top:3px}
.bubble.gone{font-style:italic;opacity:.7;background:#eef1f6!important;color:var(--mut)!important;border-color:var(--line)!important}
.bubble a{color:inherit;text-decoration:underline}
.mbtn{position:absolute;top:2px;right:6px;display:none;background:rgba(16,24,40,.45);border:0;color:#fff;border-radius:6px;cursor:pointer;font-size:14px;padding:0 6px}.cmsg:hover .mbtn{display:block}
.fcard{display:flex;gap:10px;align-items:center;background:rgba(16,24,40,.06);border-radius:10px;padding:8px 10px;margin:4px 0;min-width:220px}.cmsg.mine .fcard{background:rgba(255,255,255,.16)}.fcard .ic{font-size:26px}.fcard .nm{font-weight:650;font-size:13px;word-break:break-all}.fcard .sz{font-size:11px;opacity:.75}
.fcard a.dl{margin-left:auto;background:var(--green);color:#fff;text-decoration:none;font-weight:700;border-radius:7px;padding:5px 10px;font-size:12px}
.bubble img.pic{max-width:300px;max-height:240px;border-radius:10px;display:block;cursor:zoom-in;margin:4px 0}
.cinput{display:flex;gap:8px;align-items:flex-end;padding:12px 14px;border-top:1px solid var(--line);background:var(--paper)}
.cinput textarea{flex:1;resize:none;max-height:140px;min-height:42px}
.iconbtn{background:var(--paper);border:1px solid var(--line2);border-radius:8px;width:42px;height:42px;font-size:19px;cursor:pointer;color:var(--ink)}.iconbtn:hover{background:var(--hover)}
.chead .iconbtn{width:32px;height:32px;font-size:15px}
.emojiwrap{position:relative}.emojipanel{position:absolute;bottom:50px;left:0;width:320px;max-height:260px;overflow:auto;background:var(--paper);border:1px solid var(--line2);border-radius:12px;padding:8px;box-shadow:0 12px 28px rgba(16,24,40,.16);z-index:20}
.emojipanel h5{margin:6px 4px 2px;font-size:11.5px;font-weight:700;color:var(--mut)}.emojipanel .eg{display:flex;flex-wrap:wrap}.emojipanel button{background:none;border:0;font-size:22px;cursor:pointer;border-radius:8px;width:36px;height:36px}.emojipanel button:hover{background:var(--hover)}
.cpend{margin:0 14px 6px;padding:6px 12px;background:var(--green-soft);border:1px solid #9fd3b6;border-radius:8px;font-size:13px;display:flex;gap:10px;align-items:center}.cpend button{background:none;border:0;color:var(--ink);cursor:pointer;font-size:16px;margin-left:auto}
.ctyping{height:18px;padding:0 20px;font-size:12px;color:var(--mut);font-style:italic}
.cmodal{position:fixed;inset:0;background:rgba(16,24,40,.45);display:flex;align-items:center;justify-content:center;z-index:50}.cmbox{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:20px 24px;width:min(420px,92vw);box-shadow:0 20px 44px rgba(16,24,40,.25)}
.dropping{outline:3px dashed var(--green);outline-offset:-8px}
@media(max-width:900px){.cside{width:100%;flex:none}.chatwrap{flex-direction:column}.bubble{max-width:88%}}
/* ---------------- discussion box on a record */
.dthread{max-height:340px;min-height:70px;overflow:auto;padding:6px 4px;display:flex;flex-direction:column;gap:6px}
.dmsg{display:flex}.dmsg.mine{justify-content:flex-end}
.dbub{max-width:82%;padding:7px 11px;border-radius:12px;font-size:13px;line-height:1.45;background:#f1f4f9;border:1px solid var(--line);position:relative;overflow-wrap:anywhere;color:var(--ink)}
.dmsg.mine .dbub{background:var(--brand);border-color:var(--brand);color:#fff}
.dmsg.bot .dbub{background:var(--amber-soft);border-color:#eccf8f;max-width:100%;font-size:12.5px}
.dwho{font-size:10.5px;opacity:.8;margin-bottom:2px;font-weight:700}
.dbub.gone{font-style:italic;opacity:.6}.dpic{max-width:240px;max-height:180px;border-radius:10px;display:block;margin:4px 0;cursor:zoom-in}
.dfile a{color:inherit;font-weight:700;text-decoration:underline}.dmenu{display:none;font-size:10.5px;margin-top:3px}.dbub:hover .dmenu{display:block}.dmenu a{color:inherit;text-decoration:underline}
.dform{display:flex;gap:8px;align-items:flex-end;margin-top:8px}.dform textarea{flex:1;min-height:40px;resize:vertical}.dform .iconbtn{width:38px;height:38px;font-size:17px}
.dpend{margin-top:6px;padding:5px 10px;border:1px solid #9fd3b6;background:var(--green-soft);border-radius:8px;font-size:12px;gap:8px;align-items:center}.dpend button{background:none;border:0;color:var(--ink);margin-left:auto;cursor:pointer}
.dquick{gap:4px;margin-top:6px;flex-wrap:wrap}.dquick button{font-size:20px;background:var(--paper);border:1px solid var(--line2);border-radius:8px;cursor:pointer;padding:3px 8px}

/* ---------------- phone / small tablet: top bar with a menu button, the side menu slides in */
.mbar,.shade{display:none}
@media(max-width:1000px){.grid{grid-template-columns:minmax(0,1fr)}.card.span2{grid-column:span 1}main{padding:14px 12px 50px}
.layout{display:block}
.mbar{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:40;padding:8px 12px;background:var(--paper);border-bottom:1px solid var(--line)}
.mbar button{border:1px solid var(--line2);background:var(--paper);color:var(--ink);font-size:20px;line-height:1;padding:7px 12px;border-radius:8px;cursor:pointer}
.mbar img{height:32px;max-width:120px;object-fit:contain}
.mbar b{font-size:15px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}
.side{position:fixed;left:0;top:0;bottom:0;z-index:60;width:min(280px,84vw);flex:none;height:100%;transform:translateX(-105%);transition:transform .2s}
body.menu .side{transform:none;box-shadow:0 0 40px rgba(16,24,40,.3)}
body.menu .shade{display:block;position:fixed;inset:0;z-index:50;background:rgba(16,24,40,.4)}
.card{overflow-x:auto}.top h1{font-size:20px}.tile .val{font-size:21px}
.chatwrap{height:auto;min-height:calc(100vh - 90px)}.cside{max-height:38vh}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* ---------------- print */
@media print{.mbar,.shade,.side,.top .btn,.noprint{display:none!important}body{background:#fff;color:#000}main{padding:0}
.card,.tile{box-shadow:none;border:1px solid #bbb}.tile{-webkit-print-color-adjust:exact;print-color-adjust:exact}
th{background:#e9edf3!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}td{border-color:#ccc}.grid{grid-template-columns:1fr 1fr}.chart{height:340px}.tbl{max-height:none;border:0}
.paper{box-shadow:none;border:0;max-width:none;padding:0}.paper *{color:#000!important}.paper th{color:#fff!important;background:#1f3864!important}}

/* ---------------- Daily flash report ----------------
   .ex  = the dashboard (soft raised cards in one tone of slate; Daily / MTD / YTD named on every block)
   .fr  = the report pages after it (plain tables that print exactly as they look) */
.fr{background:#fff;color:#14213d;border:1px solid var(--line);border-radius:16px;padding:22px 26px 18px;max-width:1180px;font-size:13px;line-height:1.3;margin-top:18px}
.fr-band{margin:22px 0 12px;background:#3d4b61;color:#fff;font-weight:700;font-size:16px;padding:9px 14px;border-radius:10px;display:flex;justify-content:space-between;align-items:baseline}.fr-band:first-child{margin-top:0}
.fr-band span{font-weight:400;font-size:11.5px;opacity:.85}
.fr-sec{margin-bottom:16px}.fr-keep{break-inside:avoid}.fr h2{break-after:avoid}.fr-t tr{break-inside:avoid}
.fr h2{margin:0 0 6px;font-size:14.5px;color:#2b3648;display:flex;justify-content:space-between;align-items:baseline;gap:10px}.fr h2 span{font-weight:400;font-size:11.5px;color:#6b7a94}
.fr-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.fr table.fr-t{font-size:12.5px;border-collapse:collapse;width:100%;border:1px solid #b7c3d7}.fr-t thead{display:table-header-group}
.fr-t th{background:#3d4b61;color:#fff;padding:5px 8px;font-size:11.5px;position:static;text-align:left;vertical-align:bottom;white-space:nowrap;border-bottom:0}.fr-t th.n{text-align:right}
.fr-t th small{display:block;font-weight:400;font-size:10px;opacity:.85}
.fr-t th.g{text-align:center;border-left:1px solid #7384a0;border-bottom:1px solid #7384a0;padding-bottom:3px}.fr-t th.g small{display:inline;margin-left:3px}.fr-t tr.h2 th{font-weight:600;font-size:10.5px;padding-top:3px}
.fr-t th.gl{border-left:1px solid #7384a0}.fr-t td.gl{border-left:1px solid #c9d2e3}.fr-t tr.tot td.gl{border-left-color:#9fb0cf}
.fr-t td{padding:4px 8px;border-bottom:1px solid #e3e8f1;color:#14213d;vertical-align:middle;background:#fff}.fr-t td.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.fr-t td.b{font-weight:700}
.fr-t td.c{width:1%;white-space:nowrap;color:#4a5a78}.fr-t td.k{width:1%;white-space:nowrap;color:#6b7a94;text-align:right}
.fr-t tr.oth td{background:#f3f6fb;color:#4a5a78}.fr-t tr.tot td{background:#e1e7f0;font-weight:800;border-top:2px solid #3d4b61;border-bottom:0}
.fr-two .fr-t td:first-child{white-space:nowrap}.fr-two .fr-t th,.fr-two .fr-t td{padding-left:5px;padding-right:5px}
.fr-mut{color:#6b7a94}.fr-err{color:var(--red);font-weight:600}
/* Nepali calendar */
.cal-pre{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.cal-body{display:flex;gap:26px;flex-wrap:wrap;align-items:flex-start}
.cal-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.cal-nav b{font-size:14.5px}
.cal-grid{border-collapse:separate;border-spacing:4px;width:auto}.cal-grid th{background:none;border:0;color:var(--mut);font-size:11px;text-align:center;padding:2px 0;position:static}
.cal-grid td{width:58px;height:46px;text-align:center;border:1px solid rgba(255,255,255,.8);border-radius:10px;cursor:pointer;padding:3px 0;vertical-align:middle;background:var(--paper);box-shadow:var(--up-s)}
.cal-grid td.x{border:0;cursor:default;background:none;box-shadow:none}.cal-grid td b{display:block;font-size:15px;line-height:1.15}.cal-grid td small{display:block;font-size:10px;color:var(--mut)}
.cal-grid td.sat b{color:var(--red)}.cal-grid td.has{box-shadow:var(--up-s),inset 0 -3px 0 var(--green)}.cal-grid tr:hover td{background:var(--paper)}.cal-grid td:hover{background:var(--hover)!important}
.cal-grid td.in,.cal-grid tr:hover td.in{background:var(--brand-soft)}.cal-grid td.end,.cal-grid tr:hover td.end{background:var(--brand)}.cal-grid td.end b,.cal-grid td.end small{color:#fff}.cal-grid td.cur{outline:2px solid var(--amber);outline-offset:1px}
.cal-grid td.x,.cal-grid tr:hover td.x{background:none!important}
.cal-side{min-width:260px;flex:1}.cal-side label{margin-top:0}.cal-val{font-weight:650;font-size:14.5px;margin-bottom:10px}
.cal-dot{display:inline-block;width:14px;height:10px;border:1px solid #9cc9b1;border-radius:3px;box-shadow:inset 0 -3px 0 var(--green);vertical-align:-1px}
/* upload box */
.fr-drop{border:2px dashed var(--line2);border-radius:14px;padding:16px;text-align:center;color:var(--mut);background:#eef1f6;cursor:pointer;transition:background .1s,border-color .1s}
.fr-drop.over{border-color:var(--brand);background:var(--brand-soft);color:var(--ink)}.fr-drop b{color:var(--brand)}
.fr-files{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:6px}
.fr-files li{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:6px 8px 6px 10px;font-size:13px;background:var(--paper)}
.fr-files li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fr-files li small{color:var(--mut);white-space:nowrap}
.fr-files li button{border:0;background:none;color:var(--red);font-size:17px;line-height:1;cursor:pointer;padding:0 4px;box-shadow:none}
.fr-st{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;align-items:center}.fr-st b{font-size:12px;min-width:74px}.fr-st span{font-size:12px;border-radius:14px;padding:3px 10px;border:1px solid var(--line2);color:var(--mut);background:var(--paper)}
.fr-st span.ok{background:var(--green-soft);border-color:#bfe3cd;color:#0f5c38}.fr-st span.no{background:var(--amber-soft);border-color:#eccf8f;color:#7a4a00}

/* ---- the dashboard */
.ex{--s:#55657e;--c:#aab7ca;color:#2b3648;max-width:1180px}
.ex-ic{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:var(--paper);box-shadow:var(--up-s);color:#55657e}.ex-ic svg{width:20px;height:20px}
.ex-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:var(--paper);border:1px solid rgba(255,255,255,.8);border-radius:20px;box-shadow:var(--up);padding:14px 22px;margin-bottom:18px}
.ex-head img{height:46px;max-width:190px;object-fit:contain}.ex-co b{font-size:17px;font-weight:700;color:#2b3648}
.ex-title{border-left:1px solid var(--line2);padding-left:18px;flex:1;min-width:230px}.ex-title>b{display:block;font-size:24px;font-weight:700;line-height:1.15;color:#2b3648}
.ex-title span{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:#55657e;margin-top:3px}.ex-title .ex-ic{width:24px;height:24px;flex-basis:24px;box-shadow:none;background:none}.ex-title .ex-ic svg{width:17px;height:17px}
.ex-fy{text-align:right;border-left:1px solid var(--line2);padding-left:18px}.ex-fy b{display:block;font-size:15px}.ex-fy span{font-size:13px;color:#6e7b8f}
.ex-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:18px}.ex-groups.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-groups.n1{grid-template-columns:minmax(0,1fr)}
.ex-g,.ex-c{background:var(--paper);border:1px solid rgba(255,255,255,.8);border-radius:20px;box-shadow:var(--up);padding:16px 18px 18px;min-width:0}.ex-g{display:flex;flex-direction:column}
.ex-g>header,.ex-c>header{display:flex;align-items:center;gap:12px;margin-bottom:14px}.ex-g>header b{display:block;font-size:22px;font-weight:700;line-height:1.1}.ex-g>header small{font-size:12.5px;color:#6e7b8f}
.ex-c>header b{font-size:16px;font-weight:700;flex:1}.ex-c>header .ex-ic{width:32px;height:32px;flex-basis:32px}.ex-c>header .ex-ic svg{width:17px;height:17px}
.ex-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;flex:1}.ex-groups.n1 .ex-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.ex-k{background:#f7f9fc;border:1px solid rgba(255,255,255,.9);border-radius:16px;box-shadow:var(--up-s);padding:12px 14px 12px;min-width:0}.ex-k .ex-ic{width:34px;height:34px;flex-basis:34px;margin-bottom:8px}.ex-k .ex-ic svg{width:18px;height:18px}
.ex-k label{display:block;margin:0;font-size:13px;font-weight:600;color:#55657e;letter-spacing:0}.ex-v{display:block;font-size:27px;font-weight:700;line-height:1.15;color:#2b3648;font-variant-numeric:tabular-nums;white-space:nowrap}.ex-v.none{color:#aab4c4}
.ex-x{display:block;font-size:11px;color:#8591a4;font-variant-numeric:tabular-nums;margin-bottom:8px}
.ex-cs{display:flex;gap:10px;border-top:1px solid var(--line);padding-top:7px}.ex-cs div{flex:1;min-width:0}.ex-cs span{display:block;font-size:11px;color:#7a8799}.ex-cs b{display:block;font-size:13.5px;font-weight:650;font-variant-numeric:tabular-nums;color:#2b3648;white-space:nowrap}
.ex-delta{font-size:11.5px;font-weight:650;margin-top:6px}.ex-delta.good{color:#1c7a50}.ex-delta.bad{color:#b23b2a}.ex-need{font-size:11.5px;color:#7a8799;margin-top:6px}
.ex-wait{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;min-height:200px;color:#6e7b8f;font-size:13.5px;line-height:1.6;border-radius:16px;box-shadow:var(--in);background:#eef1f6;padding:16px}
.ex-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 4px 16px;font-size:14px;font-weight:600;color:#55657e}
.ex-seg{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:#e6eaf1;box-shadow:var(--in)}
.ex-seg button{border:0;background:none;font:inherit;font-size:13.5px;font-weight:650;color:#6e7b8f;padding:7px 20px;border-radius:999px;cursor:pointer;box-shadow:none;white-space:nowrap}.ex-seg button.on{background:#4a5870;color:#fff;box-shadow:2px 2px 6px rgba(74,88,112,.45)}
.ex-seg button:disabled{opacity:.45;cursor:not-allowed}.ex-seg.sm button{font-size:12px;padding:5px 12px}
.ex-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.ex-two.one{grid-template-columns:minmax(0,1fr)}.ex-two.one .ex-t td:first-child{max-width:420px}
.ex-tag{font-size:12px;font-weight:650;color:#fff;background:#4a5870;border-radius:999px;padding:3px 12px;white-space:nowrap}
.ex-leg{display:flex;justify-content:flex-end;align-items:center;gap:6px;font-size:12px;color:#6e7b8f;margin-bottom:4px}.ex-leg span{margin-right:auto;font-weight:600}.ex-leg i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-left:10px}.ex-leg i.s{background:var(--s)}.ex-leg i.c{background:var(--c)}
.ex-plot{display:flex;gap:8px;height:190px}.ex-axis{display:flex;flex-direction:column;justify-content:space-between;font-size:10.5px;color:#8591a4;text-align:right;padding-bottom:20px;min-width:44px}
.ex-cols{flex:1;display:flex;align-items:stretch;gap:4px;background:linear-gradient(#dfe5ee,#dfe5ee) 0 0/100% 1px no-repeat,linear-gradient(#dfe5ee,#dfe5ee) 0 calc(50% - 10px)/100% 1px no-repeat}.ex-cols.wide{gap:18px;padding:0 10px}
.ex-col{flex:1;display:flex;flex-direction:column;min-width:0}.ex-col>div{flex:1;display:flex;align-items:flex-end;justify-content:center;gap:2px;border-bottom:1px solid #b5c0d0}
.ex-col i{display:block;width:42%;max-width:13px;border-radius:4px 4px 0 0;position:relative}.ex-cols.wide .ex-col i{max-width:34px}.ex-col i.s{background:linear-gradient(90deg,#6b7c96,#4f5f78)}.ex-col i.c{background:linear-gradient(90deg,#c3cddb,#a3b1c5)}
.ex-col i em{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font-style:normal;font-size:10.5px;font-weight:650;color:#2b3648;white-space:nowrap;padding-bottom:2px}
.ex-col small{font-size:10.5px;text-align:center;color:#6e7b8f;line-height:20px;height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ex-col.now small{font-weight:800;color:#2b3648}.ex-col.now>div{background:rgba(74,88,112,.07);border-radius:6px 6px 0 0}
.ex table.ex-t{width:100%;border-collapse:collapse;font-size:13px}.ex-t th{background:none;color:#7a8799;font-weight:600;font-size:11.5px;text-align:left;padding:2px 6px 6px;border-bottom:1px solid var(--line2);position:static;white-space:nowrap}.ex-t th.n{text-align:right}
.ex-t td{padding:6px 6px;border-bottom:1px solid #e3e8ef;white-space:nowrap;background:none}.ex-t tr:last-child td{border-bottom:0}.ex-t tr:hover td{background:none}.ex-t td.n{text-align:right;font-variant-numeric:tabular-nums}.ex-t td.b{font-weight:700}
.ex-t td:first-child{max-width:200px;overflow:hidden;text-overflow:ellipsis;font-weight:600}.ex-t td small{color:#8591a4;font-size:10.5px}.ex-empty{color:#8591a4;text-align:center;padding:18px 0;font-size:13px}
.ex-ins{margin-bottom:18px}.ex-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.ex-facts>div{display:flex;align-items:center;gap:12px;padding:2px 16px;border-left:1px solid var(--line2);min-width:0}.ex-facts>div:first-child{border-left:0;padding-left:2px}
.ex-facts span{display:block;font-size:12px;font-weight:600;color:#6e7b8f}.ex-facts b{display:block;font-size:14px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-facts small{display:block;font-size:12.5px;color:#55657e;font-variant-numeric:tabular-nums}.ex-facts>div>div{min-width:0}
.ex .pp{display:none}.ex[data-period="day"] .pp.p-day,.ex[data-period="mtd"] .pp.p-mtd,.ex[data-period="ytd"] .pp.p-ytd{display:block}.ex[data-period="day"] span.pp.p-day,.ex[data-period="mtd"] span.pp.p-mtd,.ex[data-period="ytd"] span.pp.p-ytd{display:inline-block}
@media(max-width:1250px){.ex-groups,.ex-groups.n2{grid-template-columns:minmax(0,1fr)}.ex-groups .ex-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.ex-wait{min-height:90px}}
@media(max-width:1000px){.fr{padding:14px 12px}.fr-two,.ex-two{grid-template-columns:minmax(0,1fr)}.fr-sec{overflow-x:auto}.ex-groups .ex-kpis,.ex-groups.n1 .ex-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-facts{grid-template-columns:1fr 1fr;row-gap:12px}.ex-facts>div:nth-child(3){border-left:0;padding-left:2px}.ex-c{overflow-x:auto}.ex-fy{border-left:0;padding-left:0;text-align:left}}
@media print{@page{size:A4;margin:10mm 9mm}main{padding:0!important}body{background:#fff!important}
.ex,.fr{max-width:none}.ex *,.fr *{-webkit-print-color-adjust:exact;print-color-adjust:exact;box-shadow:none!important}
.ex-head{border:0;border-bottom:2px solid #3d4b61;border-radius:0;padding:0 0 7px;margin-bottom:9px;gap:12px;flex-wrap:nowrap;background:none}.ex-head img{height:40px}.ex-co b{font-size:13px}.ex-title{padding-left:12px;min-width:0}.ex-title>b{font-size:17px}.ex-title span{font-size:10px}.ex-fy{padding-left:12px}.ex-fy b{font-size:11px}.ex-fy span{font-size:9.5px}
.ex-ic{width:20px;height:20px;flex-basis:20px;background:#eef1f6}.ex-ic svg{width:12px;height:12px}
.ex-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:8px}.ex-groups.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-groups.n1{grid-template-columns:minmax(0,1fr)}.ex-groups .ex-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-groups.n1 .ex-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.ex-g,.ex-c{border:1px solid #c5cedb;border-radius:9px;padding:7px 8px 8px;background:#fff;break-inside:avoid}.ex-g>header,.ex-c>header{gap:6px;margin-bottom:6px}.ex-g>header b{font-size:15px}.ex-g>header small{font-size:8.5px}.ex-c>header b{font-size:11px}.ex-c>header .ex-ic{width:18px;height:18px;flex-basis:18px}.ex-c>header .ex-ic svg{width:11px;height:11px}
.ex-kpis{gap:5px}.ex-k{border:1px solid #d5dce7;border-radius:7px;padding:5px 6px 5px;background:#f7f9fc}.ex-k .ex-ic{width:17px;height:17px;flex-basis:17px;margin-bottom:3px}.ex-k .ex-ic svg{width:10px;height:10px}.ex-k label{font-size:8.5px}.ex-v{font-size:16px}.ex-x{font-size:7.5px;margin-bottom:3px}
.ex-cs{gap:4px;padding-top:3px}.ex-cs span{font-size:7.3px}.ex-cs b{font-size:8.8px}.ex-delta{font-size:7.5px;margin-top:2px}.ex-wait{min-height:40mm;font-size:9.5px;background:#f3f5f9;border:1px dashed #c5cedb}
.ex-bar{display:none}.ex-seg{display:none}.ex-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:8px}.ex-two.one{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-two.one .ex-t td:first-child{max-width:27mm}.ex-tag{font-size:8px;padding:1px 7px;background:#4a5870!important;color:#fff!important}
.ex-leg{font-size:8px;margin-bottom:2px}.ex-leg i{width:7px;height:7px;margin-left:7px}.ex-plot{height:32mm;gap:4px}.ex-axis{font-size:7px;min-width:9mm;padding-bottom:12px}.ex-cols{gap:2px;background:linear-gradient(#dfe5ee,#dfe5ee) 0 0/100% 1px no-repeat,linear-gradient(#dfe5ee,#dfe5ee) 0 calc(50% - 6px)/100% 1px no-repeat}.ex-cols.wide{gap:8px;padding:0 4px}
.ex-col small{font-size:7px;line-height:12px;height:12px}.ex-col i em{font-size:7.5px}.ex table.ex-t{font-size:8.7px}.ex-t th{font-size:7.6px;padding:1px 3px 3px;background:none!important;color:#6e7b8f!important}.ex-t td{padding:2.6px 3px}.ex-t td:first-child{max-width:30mm}.ex-t td small{font-size:7px}
.ex-ins{margin-bottom:0}.ex-facts>div{gap:6px;padding:0 8px}.ex-facts span{font-size:8px}.ex-facts b{font-size:9.5px}.ex-facts small{font-size:8.5px}
.fr{box-shadow:none;border:0;border-radius:0;padding:0;margin:0;font-size:10px;line-height:1.2}.fr-sec{overflow:visible;margin-bottom:10px}.fr h2{font-size:11.5px;margin-bottom:4px;color:#2b3648!important}.fr h2 span{font-size:9px}
.fr table.fr-t{font-size:9px}.fr-t th{font-size:8.5px;padding:3px 4px;background:#3d4b61!important;color:#fff!important}.fr-t tr.h2 th{font-size:8px;padding-top:2px}.fr-t th small{font-size:7.5px}.fr-t td{padding:2.4px 4px;border-color:#ccd4e2}
.fr-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fr-t tr.tot td{background:#e1e7f0!important}.fr-t tr.oth td{background:#f3f6fb!important}
.fr-band{break-before:page;margin:0 0 9px;font-size:12.5px;padding:6px 10px;background:#3d4b61!important;color:#fff!important}
.fr table.fr-x{font-size:8.4px}.fr-x th{padding:3px 3px}.fr-x td{padding:2.4px 3px}}

/* ---------------- theme of the whole program: one soft grey surface, cards and buttons slightly raised from it, slate for what is active.
   (screen only - printing stays plain) */
:root{--canvas:#e9edf3;--paper:#f3f6fa;--ink:#2b3648;--mut:#6e7b8f;--line:#dbe1ea;--line2:#c7cfdb;--brand:#4a5870;--brand-d:#36425a;--brand-soft:#dde3ec;--hover:#e7ebf2;--radius:18px;
--up:7px 7px 16px rgba(163,177,198,.5),-7px -7px 16px rgba(255,255,255,.9);--up-s:3px 3px 8px rgba(163,177,198,.5),-3px -3px 8px rgba(255,255,255,.9);--in:inset 2px 2px 5px rgba(163,177,198,.5),inset -2px -2px 5px rgba(255,255,255,.9)}
@media screen{
body{background:var(--canvas)}a{color:#3f5f94}
.side{background:var(--canvas);border-right:0;box-shadow:6px 0 18px rgba(163,177,198,.28)}.side .logo{border-bottom:0;padding-bottom:8px}.side .user{border-top:0}
.side select,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea{background:#eef1f6;border:1px solid transparent;border-radius:12px;box-shadow:var(--in);color:var(--ink)}
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):focus,select:focus,textarea:focus{outline:none;border-color:transparent;box-shadow:var(--in),0 0 0 3px rgba(74,88,112,.28)}
.nav a{border-left:0;border-radius:14px;padding:9px 12px;margin:3px 0;color:#445166}.nav a:hover{background:var(--hover)}
.nav a::before{content:"";width:18px;height:18px;flex:0 0 18px;background:currentColor;opacity:.8;-webkit-mask:var(--i,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 9a3 3 0 1 0 0 6 3 3 0 0 0 0-6z'/%3E%3C/svg%3E")) center/contain no-repeat;mask:var(--i,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 9a3 3 0 1 0 0 6 3 3 0 0 0 0-6z'/%3E%3C/svg%3E")) center/contain no-repeat}
.nav a[href="/flash"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-8 9 8M5 10v10h14V10M10 20v-6h4v6'/%3E%3C/svg%3E")}.nav a[href="/home"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 18a8 8 0 1 1 16 0M12 18l4-6'/%3E%3C/svg%3E")}.nav a[href="/sales"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 17l6-6 4 4 8-8M15 7h6v6'/%3E%3C/svg%3E")}.nav a[href="/purchase"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l2.5 11h10l2-8H6.5M9 20a1 1 0 1 0 0-.01M17 20a1 1 0 1 0 0-.01'/%3E%3C/svg%3E")}.nav a[href="/cash"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10l9-6 9 6M5 10v8M9.5 10v8M14.5 10v8M19 10v8M3 20h18'/%3E%3C/svg%3E")}.nav a[href="/inventory"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 4 7v10l8 4 8-4V7zM4 7l8 4 8-4M12 11v10'/%3E%3C/svg%3E")}.nav a[href="/daybook"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h12a2 2 0 0 1 2 2v14H7a2 2 0 0 1-2-2zM5 18a2 2 0 0 1 2-2h12'/%3E%3C/svg%3E")}.nav a[href="/findings"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18zM8 12l3 3 5-6'/%3E%3C/svg%3E")}.nav a[href="/nfrs"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h7l5 5v13H7zM14 3v5h5M10 13h6M10 17h6'/%3E%3C/svg%3E")}.nav a[href="/import"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V4M7 9l5-5 5 5M4 20h16'/%3E%3C/svg%3E")}.nav a[href="/procure"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4h6v3H9zM7 5H5v16h14V5h-2M9 12h6M9 16h6'/%3E%3C/svg%3E")}.nav a[href="/tasks"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l1.5 1.5L8 5M4 12l1.5 1.5L8 11M4 18l1.5 1.5L8 17M11 6h9M11 12h9M11 18h9'/%3E%3C/svg%3E")}.nav a[href="/team"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM3 20c.5-3.5 3-5 6-5s5.5 1.5 6 5M16 5a3 3 0 0 1 0 6M18 15c1.8.6 2.7 2.2 3 5'/%3E%3C/svg%3E")}.nav a[href="/chat"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H9l-5 4z'/%3E%3C/svg%3E")}.nav a[href="/company/users"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM3 20c.5-3.5 3-5 6-5s5.5 1.5 6 5M16 5a3 3 0 0 1 0 6M18 15c1.8.6 2.7 2.2 3 5'/%3E%3C/svg%3E")}.nav a[href="/admin/org"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 3h4v4h-4zM12 7v5M6 15v-3h12v3M4 15h4v5H4zM10 15h4v5h-4zM16 15h4v5h-4z'/%3E%3C/svg%3E")}.nav a[href="/admin"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h10M18 7h2M4 17h4M12 17h8M14 5v4M8 15v4'/%3E%3C/svg%3E")}.nav a[href^="/admin/company/"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V5h10v16M14 10h6v11M7 9h4M7 13h4M7 17h4'/%3E%3C/svg%3E")}
.nav a.on{background:var(--paper);box-shadow:var(--up-s);color:var(--ink);font-weight:650}
.card,.tile{background:var(--paper);border:1px solid rgba(255,255,255,.8);border-radius:var(--radius);box-shadow:var(--up)}.tile{border-top:1px solid rgba(255,255,255,.8)}
.btn{border-radius:12px;border-color:transparent;box-shadow:var(--up-s)}.btn:hover{border-color:transparent}.btn.grey{background:var(--paper);border-color:rgba(255,255,255,.8)}.btn.grey:hover{background:var(--hover);border-color:rgba(255,255,255,.8)}
.btn.red{background:var(--paper);border-color:rgba(255,255,255,.8)}.btn.sm{border-radius:10px}.btn.green{background:#2f7d5b;border-color:transparent}.btn.green:hover{background:#25674a}
th{background:#e4e9f0;color:#445166}tr:hover td{background:#edf0f5}.tbl{border-radius:14px;border-color:var(--line)}
.msg{border-radius:14px}.login .box{background:var(--paper);border:1px solid rgba(255,255,255,.8);box-shadow:var(--up);border-radius:22px}
}

/* ---------------- light colours: a soft blue-white surface and four gentle tints that always mean the same thing -
   blue = sales, green = collection, coral = sales return, violet = collection %. Buttons and whatever is active are blue. */
:root{--canvas:#edf2fb;--paper:#f8faff;--ink:#22304a;--mut:#64748b;--line:#dbe4f3;--line2:#c5d2e8;--brand:#3f6fe0;--brand-d:#2f58bd;--brand-soft:#e2ebff;--hover:#e6edfb;
--up:7px 7px 16px rgba(150,170,205,.42),-7px -7px 16px rgba(255,255,255,.95);--up-s:3px 3px 8px rgba(150,170,205,.42),-3px -3px 8px rgba(255,255,255,.95);--in:inset 2px 2px 5px rgba(150,170,205,.42),inset -2px -2px 5px rgba(255,255,255,.95);
--c-sales:#3f7ff0;--t-sales:#e4eeff;--c-coll:#12a678;--t-coll:#dcf6ec;--c-ret:#ef6a5b;--t-ret:#ffe7e3;--c-pct:#8a63e8;--t-pct:#eee8ff;--c-day:#f08c1a;--t-day:#fff0d9;--c-mtd:#0d9ad6;--t-mtd:#def3fd;--c-ytd:#5b62e6;--t-ytd:#e6e8ff}
.ex{--s:var(--c-sales);--c:var(--c-coll);color:var(--ink)}
.ex-k{background:#fff;border-top:3px solid var(--kc,#c5d2e8)}.ex-k .ex-ic{background:var(--kt,#eef2fb);color:var(--kc,#64748b);box-shadow:none}
.ex-k.k-sales{--kc:var(--c-sales);--kt:var(--t-sales)}.ex-k.k-coll{--kc:var(--c-coll);--kt:var(--t-coll)}.ex-k.k-ret{--kc:var(--c-ret);--kt:var(--t-ret)}.ex-k.k-pct{--kc:var(--c-pct);--kt:var(--t-pct)}
.ex-k label{color:var(--kc,#64748b);font-weight:700}.ex-v,.ex-cs b,.ex-g>header b,.ex-c>header b,.ex-title>b,.ex-co b{color:var(--ink)}
.ex-g>header .ex-ic{box-shadow:none;background:var(--gt);color:var(--gc)}.ex-g.g-day{--gc:var(--c-day);--gt:var(--t-day)}.ex-g.g-mtd{--gc:var(--c-mtd);--gt:var(--t-mtd)}.ex-g.g-ytd{--gc:var(--c-ytd);--gt:var(--t-ytd)}
.ex-g{border-top:4px solid var(--gc,#c5d2e8)}.ex-g>header b{color:var(--gc)}
.ex-c>header .ex-ic,.ex-facts .ex-ic{background:var(--brand-soft);color:var(--brand);box-shadow:none}.ex-title .ex-ic{color:var(--brand)}
.ex-facts>div:nth-child(1) .ex-ic{background:var(--t-sales);color:var(--c-sales)}.ex-facts>div:nth-child(2) .ex-ic{background:var(--t-ytd);color:var(--c-ytd)}.ex-facts>div:nth-child(3) .ex-ic{background:var(--t-pct);color:var(--c-pct)}.ex-facts>div:nth-child(4) .ex-ic{background:var(--t-coll);color:var(--c-coll)}
.ex-seg{background:#e3eaf8}.ex-seg button.on{background:var(--brand);box-shadow:2px 2px 6px rgba(63,111,224,.4)}.ex-tag{background:var(--brand-soft);color:var(--brand-d)}
.ex-col i.s{background:linear-gradient(180deg,#6fa0f7,#3f7ff0)}.ex-col i.c{background:linear-gradient(180deg,#58d3a8,#12a678)}.ex-col.now>div{background:rgba(63,111,224,.08)}
.ex-wait{background:var(--t-day);color:#8a5a12;box-shadow:none;border:1px dashed #f3c88a}
.ex-delta.good{color:#0e8a63}.ex-delta.bad{color:#d14a3b}
.ex-t th{color:#5b6f94}.ex-t td.b{color:var(--c-sales)}
.fr-band{background:linear-gradient(90deg,#3f6fe0,#5b8cf0)}.fr-t th{background:#3f6fe0}.fr-t th.g,.fr-t th.gl{border-color:#86a8f2}.fr-t tr.tot td{background:#e2ebff;border-top-color:#3f6fe0}.fr-t tr.oth td{background:#f3f7ff}.fr h2{color:#2f58bd}
@media screen{
a{color:#2f62d8}.nav a{color:#3b4a66}.nav a.on{background:#fff;color:var(--brand-d)}.nav a.on::before{opacity:1}.mod>summary{color:#7a8bb0}
.btn.green{background:#12a678}.btn.green:hover{background:#0e8a63}.btn.red{color:#d14a3b}
th{background:#e6eeff;color:#3b4f7a}tr:hover td{background:#f1f5ff}
.cal-grid td.has{box-shadow:var(--up-s),inset 0 -3px 0 var(--c-coll)}
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea,.side select{background:#f1f5fd}
}
@media print{.ex-g{border-top:3px solid var(--gc,#c5d2e8)}.ex-k{border-top:2px solid var(--kc,#c5d2e8);background:#fff}.ex-tag{background:var(--brand-soft)!important;color:var(--brand-d)!important}
.fr-band{background:#3f6fe0!important}.fr-t th{background:#3f6fe0!important}.fr-t tr.tot td{background:#e2ebff!important}.fr-t tr.oth td{background:#f3f7ff!important}.fr h2{color:#2f58bd!important}.ex-head{border-bottom-color:#3f6fe0}.ex-wait{background:var(--t-day);border:1px dashed #f3c88a}}

/* ---------------- dashboard, period rows: the period is named in a solid block on the left (Daily, then MTD, then YTD) and its four boxes
   stand to the right of it. Every figure is written in full. */
.ex-rows{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}
.ex-row{display:grid;grid-template-columns:150px repeat(3,minmax(0,1fr));gap:14px;align-items:stretch;--gc:#1f3c88;--gd:#16306f}.ex-row.g-mtd{--gc:#1c7c8c;--gd:#136573}.ex-row.g-ytd{--gc:#5a4bb5;--gd:#473a98}
.ex-pl{border-radius:16px;background:linear-gradient(160deg,var(--gc),var(--gd));color:#fff;padding:16px 16px;display:flex;flex-direction:column;justify-content:center;box-shadow:var(--up-s)}
.ex-pl b{font-size:27px;font-weight:800;line-height:1.1;letter-spacing:.01em}.ex-pl small{font-size:12px;line-height:1.45;margin-top:6px;color:rgba(255,255,255,.88)}
.ex-row .ex-k{background:#fff;border:1px solid #dbe4f3;border-top:3px solid var(--kc,#c5d2e8);border-radius:14px;box-shadow:0 2px 8px rgba(120,140,180,.14);padding:12px 14px 10px}
.ex-kh{display:flex;align-items:center;gap:8px;margin-bottom:6px;min-height:28px}.ex-row .ex-k .ex-ic{width:28px;height:28px;flex:0 0 28px;margin:0}.ex-row .ex-k .ex-ic svg{width:15px;height:15px}
.ex-kh label{font-size:13px;white-space:nowrap}.ex-kh .ex-delta{margin:0 0 0 auto;font-size:11px;text-align:right;line-height:1.2}
.ex-row .ex-v{font-size:25px;letter-spacing:-.01em}.ex-row .ex-x{margin:1px 0 0;font-size:11px}
table.ex-cs{display:table;width:100%;border-collapse:collapse;border-top:1px solid #e3e9f4;margin-top:8px;padding:0;font-size:12.5px}
.ex-cs td{padding:4px 0 0;border:0;background:none!important;color:#55627c;white-space:nowrap}.ex-cs td.n{text-align:right;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.ex-cs td.p{text-align:right;width:42px;color:#8391aa;font-size:11.5px;font-variant-numeric:tabular-nums}
.ex-row .ex-wait{grid-column:2/-1;min-height:74px;border-radius:14px;font-size:13.5px}
.ex-t tr.tot td{font-weight:700;border-top:2px solid #b9c7e2;border-bottom:0;color:var(--ink)}.ex-t td:first-child{max-width:170px}.ex-two.one .ex-t td:first-child{max-width:460px}
@media screen and (max-width:1100px){.ex-row{grid-template-columns:118px repeat(3,minmax(0,1fr));gap:10px}.ex-row .ex-v{font-size:21px}}
@media screen and (max-width:820px){.ex-row{grid-template-columns:minmax(0,1fr)}.ex-pl{grid-row:auto;flex-direction:row;align-items:baseline;gap:10px;padding:10px 14px;justify-content:flex-start}.ex-pl small{margin:0}.ex-pl small br{display:none}.ex-row .ex-wait{grid-column:auto}.ex-row .ex-v{font-size:23px}}
@media print{.ex-rows{gap:5px;margin-bottom:8px}.ex-row{grid-template-columns:19mm repeat(3,minmax(0,1fr));gap:5px}.ex-pl{grid-row:auto;border-radius:7px;padding:5px 6px;background:var(--gc)!important}.ex-pl b{font-size:14px;color:#fff!important}.ex-pl small{font-size:7.2px;margin-top:3px;color:#fff!important}
.ex-row .ex-k{border-radius:7px;padding:4px 6px 4px;border:1px solid #d5dce7;border-top:2px solid var(--kc,#c5d2e8)}.ex-kh{gap:4px;margin-bottom:2px;min-height:0}.ex-row .ex-k .ex-ic{width:14px;height:14px;flex-basis:14px}.ex-row .ex-k .ex-ic svg{width:9px;height:9px}
.ex-kh label{font-size:8px}.ex-kh .ex-delta{font-size:6.6px}.ex-row .ex-v{font-size:13.5px}.ex-row .ex-x{font-size:6.8px}table.ex-cs{margin-top:3px;font-size:7.8px}.ex-cs td{padding:1.5px 0 0}.ex-cs td.p{width:8mm;font-size:7px}
.ex-row .ex-wait{grid-column:2/-1;min-height:12mm;font-size:9px}.ex table.ex-t{font-size:7.9px}.ex-t td:first-child{max-width:24mm}.ex-two.one .ex-t td:first-child{max-width:24mm}.ex-t tr.tot td{border-top:1.5px solid #b9c7e2}}

/* ---------------- print: no empty page. The report follows the dashboard directly; only the Collection part starts on a new page. */
@media print{.fr-band{break-before:auto;margin:10px 0 8px;break-after:avoid}.fr-band~.fr-band{break-before:page;margin-top:0}.ex-ins{margin-bottom:8px}.ex-two{break-inside:avoid}.fr{margin-top:6px}}

/* ---------------- report tables: the period tag beside each table title */
.fr h2 b{font-weight:700}.fr-p{font-style:normal;font-size:11.5px;font-weight:700;color:#fff;background:#1f3c88;border-radius:999px;padding:2px 10px;margin-left:8px;vertical-align:1px}.fr-p.p-mtd{background:#1c7c8c}.fr-p.p-ytd{background:#5a4bb5}
.fr-ps{font-style:normal;font-weight:400;font-size:11.5px;color:#6b7a94;margin-left:6px}.fr-t td.fr-none{text-align:center;color:#8591a4;padding:8px}
@media print{.fr-p{font-size:8px;padding:1px 6px;margin-left:5px;background:#1f3c88!important;color:#fff!important}.fr-p.p-mtd{background:#1c7c8c!important}.fr-p.p-ytd{background:#5a4bb5!important}.fr-ps{font-size:8px}}

/* ---------------- report pages in the same language as the dashboard: every table is its own card, quiet headings instead of filled
   spreadsheet headers, hairlines between rows only, the Total column and the total row carry the weight. */
.fr{background:none;border:0;padding:0;margin-top:26px;max-width:1180px}
.fr-band{background:none;color:var(--ink);padding:0 4px;margin:28px 0 14px;font-size:20px;font-weight:700;border-radius:0;display:flex;align-items:center;gap:12px;justify-content:flex-start}.fr-band:first-child{margin-top:0}
.fr-band b{font-weight:700}.fr-band span{margin-left:auto;font-size:12px;font-weight:400;color:var(--mut);opacity:1}.fr-band .ex-ic{width:34px;height:34px;flex:0 0 34px;background:var(--brand-soft);color:var(--brand);box-shadow:none}.fr-band .ex-ic svg{width:18px;height:18px}
.fr-sec{background:#fff;border:1px solid #e3e9f4;border-radius:18px;box-shadow:0 2px 10px rgba(120,140,180,.13);padding:16px 18px 12px;margin-bottom:16px}
.fr h2{margin:0 0 10px;font-size:15.5px;color:var(--ink);align-items:center}.fr h2 b{display:flex;align-items:center;flex-wrap:wrap;gap:2px}.fr h2 span{font-size:12px;color:var(--mut);background:#f1f5fd;border-radius:999px;padding:2px 10px}
.fr table.fr-t{border:0;font-size:12.5px}
.fr-t th{background:none;color:#5b6f94;font-weight:600;font-size:11.5px;padding:4px 8px 6px;border-bottom:1px solid #d5deee}.fr-t th small{opacity:1;color:#8391aa;font-size:10.5px}
.fr-t th.g{border-left:0;border-bottom:2px solid #c9d5ea;color:var(--ink);font-weight:700;font-size:12px;padding:2px 8px 5px}.fr-t th.g small{color:#8391aa;font-weight:400}.fr-t th.g-total{border-bottom-color:var(--brand);color:var(--brand-d)}
.fr-t tr.h2 th{font-size:11px;font-weight:600;padding-top:5px;color:#7a8aa8}.fr-t th.gl{border-left:0}
.fr-t td{padding:7px 8px;border-bottom:1px solid #eef2f9;background:none;color:#2b3852}.fr-t td.gl{border-left:1px solid #eef2f9}.fr-t td.b{color:var(--ink);font-weight:700}
.fr-t tbody tr:hover td,.fr-t tr:hover td{background:#f6f9ff}.fr-t tr:last-child td{border-bottom:0}
.fr-t td.k{color:#fff;text-align:center;padding-right:2px}.fr-t td.k::first-line{color:#7a8aa8}.fr-t td.k{color:#7a8aa8;font-size:11px;font-variant-numeric:tabular-nums}
.fr-t td.c{color:#8391aa;font-size:11.5px}.fr-t tr.oth td{background:none;color:#7a8aa8;font-style:italic}
.fr-t tr.tot td{background:#f3f6fd;border-top:2px solid #c9d5ea;border-bottom:0;font-weight:700;color:var(--ink)}.fr-t tr.tot td:first-child{border-radius:0 0 0 10px}.fr-t tr.tot td:last-child{border-radius:0 0 10px 0}.fr-t tr.tot td.gl{border-left-color:#e3e9f4}
.fr-t td.sh{background:linear-gradient(90deg,#dfe9ff var(--w,0%),transparent 0) no-repeat 8px 50%/calc(100% - 16px) 62%;font-weight:600}.fr-t tr:hover td.sh{background:linear-gradient(90deg,#d3e1ff var(--w,0%),transparent 0) no-repeat 8px 50%/calc(100% - 16px) 62%}
.fr-t td.fr-none{padding:14px}
@media(max-width:1000px){.fr-sec{overflow-x:auto;padding:12px}}
@media print{.fr{margin-top:8px}.fr-band{background:none!important;color:#22304a!important;font-size:13px;margin:10px 0 6px;padding:0;gap:6px}.fr-band~.fr-band{margin-top:0}.fr-band span{font-size:8px}.fr-band .ex-ic{width:18px;height:18px;flex-basis:18px}.fr-band .ex-ic svg{width:11px;height:11px}
.fr-sec{border:1px solid #d5dce9;border-radius:8px;padding:6px 8px 5px;margin-bottom:7px;box-shadow:none}.fr h2{font-size:10.5px;margin-bottom:4px;color:#22304a!important}.fr h2 span{font-size:8px;padding:1px 6px;background:#f1f5fd}
.fr table.fr-t,.fr table.fr-x{font-size:8.4px}.fr-t th{background:none!important;color:#5b6f94!important;font-size:7.8px;padding:2px 3px 3px}.fr-t th.g{color:#22304a!important;font-size:8.2px;padding:1px 3px 2px;border-bottom:1.5px solid #c9d5ea}.fr-t th.g-total{color:#2f58bd!important;border-bottom-color:#3f6fe0}
.fr-t tr.h2 th{font-size:7.4px;padding-top:2px}.fr-t th small{font-size:7px}.fr-t td{padding:2.5px 3px;border-color:#eef2f9}.fr-t td.k{font-size:7.4px}.fr-t td.c{font-size:7.6px}
.fr-t tr.tot td{background:#f3f6fd!important;border-top:1.5px solid #c9d5ea}.fr-t tr.oth td{background:none!important}.fr-t td.sh{background:linear-gradient(90deg,#dfe9ff var(--w,0%),transparent 0) no-repeat 3px 50%/calc(100% - 6px) 62%}}

/* print: collection follows on the same page too - no page is left nearly empty */
@media print{.fr-band,.fr-band~.fr-band{break-before:auto;justify-content:flex-start;margin:12px 0 6px}.fr-band:first-child{margin-top:4px}}
/* a table that continues on the next page never leaves only one or two lines behind */
@media print{.fr-t tbody tr:nth-child(-n+3),.fr-t thead tr{break-after:avoid}.fr-t tbody tr:nth-last-child(-n+3){break-before:avoid}}
/* ===== Daily flash report in the management layout: key figures, division performance (MTD, YTD), then the lists under their divisions */
.ex{max-width:1340px}
.pf{margin-bottom:22px}.pf-mtd{--gc:#1c7c8c;--gd:#136573}.pf-ytd{--gc:#5a4bb5;--gd:#473a98}
.pf-band{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;background:linear-gradient(90deg,var(--gc),var(--gd));color:#fff;border-radius:12px;padding:9px 16px;margin-bottom:12px}
.pf-band b{font-size:15px;font-weight:700;letter-spacing:.02em}.pf-band span{font-size:12.5px;color:rgba(255,255,255,.9)}
.pf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.pf-c{background:#fff;border:1px solid #dbe4f3;border-top:3px solid var(--c-sales);border-radius:14px;box-shadow:0 2px 8px rgba(120,140,180,.14);padding:12px 14px 12px;min-width:0}.pf-c.cs{border-top-color:var(--c-pct)}
.pf-c h3{font-size:13.5px;font-weight:700;color:var(--ink);margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pf-c dl{margin:0}.pf-c dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:4px 0;border-bottom:1px solid #edf1f7;font-size:13px}.pf-c dl>div.a{border-bottom:0}
.pf-c dt{color:#5f6c7f;white-space:nowrap}.pf-c dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink)}.pf-c dd.c{color:var(--c-coll)}
.pf-bar{display:block;height:5px;border-radius:9px;background:#e8edf6;margin-top:4px;overflow:hidden}.pf-bar i{display:block;height:100%;border-radius:9px;background:var(--c-coll)}
.bx-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;align-items:start}
.ex table.bx-t{width:100%;border-collapse:collapse;font-size:13px}
.bx-t th{background:none;color:#5b6f94;font-weight:600;font-size:11.5px;text-align:left;padding:2px 8px 6px;border-bottom:1px solid var(--line2);position:static;white-space:nowrap}.bx-t th.n{text-align:right}.bx-t th.c,.bx-t td.c{text-align:center}
.bx-t td{padding:5px 8px;border-bottom:1px solid #edf1f7;background:none}.bx-t tr:hover td{background:none}.bx-t td:first-child{padding-left:26px}.bx-t td.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.bx-t td.c{color:#7a8799;font-size:11.5px}
.bx-t tr.g td,.bx-t tr.g:hover td{font-weight:700;background:#eef3fd;border-top:1px solid #cfdbf3;border-bottom:1px solid #cfdbf3;color:var(--ink)}.bx-t tr.g td:first-child,.bx-t tr.tot td:first-child{padding-left:8px}
.bx-t tr.tot td,.bx-t tr.tot:hover td{font-weight:800;background:#dfe9ff;border-top:2px solid #9fb6ea;border-bottom:0;color:var(--ink)}
.bx-note{font-size:12px;color:#8591a4;margin-top:8px}
@media screen and (max-width:1100px){.pf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bx-two{grid-template-columns:minmax(0,1fr)}}
@media screen and (max-width:820px){.pf-grid{grid-template-columns:minmax(0,1fr)}}
@media print{
.pf{margin-bottom:9px;break-inside:avoid}.pf-band{border-radius:6px;padding:4px 9px;margin-bottom:5px;gap:8px;background:var(--gc)!important}.pf-band b{font-size:10.5px;color:#fff!important}.pf-band span{font-size:8.5px;color:#fff!important}
.pf-grid{gap:5px}.pf-c{border-radius:7px;padding:4px 7px 5px;border:1px solid #d5dce7;border-top:2px solid var(--c-sales)}.pf-c.cs{border-top-color:var(--c-pct)}.pf-c h3{font-size:8.8px;margin-bottom:2px}
.pf-c dl>div{font-size:8.2px;padding:1.4px 0}.pf-bar{height:2.5px;margin-top:2px}
.bx-two{gap:7px;margin-bottom:8px}.ex-c.bx{break-inside:auto}.ex table.bx-t{font-size:8.2px}.bx-t th{font-size:7.6px;padding:1px 4px 3px;background:none!important}.bx-t td{padding:2px 4px}.bx-t td:first-child{padding-left:12px}
.bx-t tr.g td:first-child,.bx-t tr.tot td:first-child{padding-left:4px}.bx-t td.c{font-size:7.4px}.bx-t tr{break-inside:avoid}.bx-t tr.g{break-after:avoid}.bx-t tr.tot{break-before:avoid}.bx-note{font-size:7.5px;margin-top:3px}}
.pf-c h3{white-space:normal;overflow:visible;line-height:1.25}
@media print{.pf-c h3{font-size:8.2px}}
@media print{.pf-c dl>div{padding:1px 0}.pf{margin-bottom:7px}.pf-band{margin-bottom:4px}}

@media print{.ex table.bx-t{font-size:7.6px}.bx-t th{font-size:7px}.bx-t td{padding:1.8px 3px}.bx-t td:first-child{padding-left:9px}.bx-t td.c{font-size:6.8px}}
.mg{margin-top:26px}.dt{margin-top:26px;--gc:#1f3c88;--gd:#16306f}.dt-mtd{--gc:#1c7c8c;--gd:#136573}.dt-ytd{--gc:#5a4bb5;--gd:#473a98}
@media print{.mg,.dt{margin-top:0;break-before:page}}
@media print{.mg{break-before:auto;margin-top:8px}}
/* the dashboard is page 1 of the print */
@media print{.ex-facts{grid-template-columns:repeat(4,minmax(0,1fr))!important;row-gap:0!important}.ex-facts>div:nth-child(3){border-left:1px solid var(--line2)!important;padding-left:8px!important}.ex-plot{height:24mm}
.ex table.ex-t{font-size:7.6px}.ex-t td{padding:2px 3px}.ex-rows{margin-bottom:6px}.ex-ins{margin-bottom:6px}.ex-two{margin-bottom:6px}.mg{margin-top:0}.mg .pf:first-child{break-before:auto}}
@media print{.ex-plot{height:19mm}.ex-row .ex-x{display:none}.ex-t td{padding:1.4px 3px}.ex-c{padding:5px 7px 6px}.ex-c>header{margin-bottom:3px}.ex-head{margin-bottom:6px}.ex-rows{gap:4px}}
/* ===== receivable: the dashboard line and the two top-15 lists */
.ex-row.g-rec,.rc{--gc:#b5563d;--gd:#93412c}.ex-k.k-rec{--kc:#b5563d;--kt:#fbe9e3}.ex-k.k-age{--kc:#b98a1f;--kt:#fbf1d6}.ex-k.k-over{--kc:#c0392b;--kt:#fbe4e1}.ex-k.k-over .ex-v{color:#c0392b}
.ex-cs.ag{margin-top:2px}.ex-cs.ag tr.late td{color:#c0392b;font-weight:700}.ex-delta:not(.good):not(.bad){color:#6e7b8f}
.rc{margin-top:22px}.rc-sum{margin-bottom:18px}.bx-t tr.pl td:first-child{padding-left:8px}.bx-t tr.sh td{color:#6e7b8f;font-size:12px;border-bottom:0}.bx-t td.b{font-weight:700}
@media print{.rc{margin-top:8px;break-inside:avoid}.rc-sum{margin-bottom:7px}.bx-t tr.pl td:first-child{padding-left:4px}.bx-t tr.sh td{font-size:7px}.rc .ex table.bx-t,.rc table.bx-t{font-size:8.2px}}
.ex-row.g-rec .ex-pl b{font-size:21px}
@media print{.ex-row.g-rec .ex-pl b{font-size:10.5px}.ex-cs.ag td{padding-top:.6px}}

/* ---------------- menu: categories that open like a drop-down, one at a time */
@media screen{
.side .mod{margin-top:4px}.side .mod>summary{padding:10px 12px;font-size:14px;font-weight:700;color:#3b4a66;border-radius:14px;gap:10px;justify-content:flex-start;transition:background .2s}
.side .mod>summary span{flex:1}.side .mod>summary:hover{background:var(--hover);color:var(--ink)}
.side .mod>summary::before{content:'';width:20px;height:20px;flex:0 0 20px;background:currentColor;opacity:.85;-webkit-mask:var(--ci) center/contain no-repeat;mask:var(--ci) center/contain no-repeat}
.side .mod>summary::after{order:3;margin-right:2px;transform:rotate(45deg)}.side .mod[open]>summary::after{transform:rotate(-135deg)}
.side .mod[open]>summary{background:#fff;color:var(--brand-d);box-shadow:var(--up-s)}
.side .mod>.nav{margin:6px 0 4px 21px;padding-left:9px;border-left:2px solid var(--line)}.side .mod[open]>.nav{animation:menuIn .28s ease-out}
.side .mod>.nav a{font-size:13.5px;padding:8px 10px}
@keyframes menuIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.side .mod.m-daily>summary{--ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 13h4v7H3zM10 9h4v11h-4zM17 4h4v16h-4z'/%3E%3C/svg%3E")}
.side .mod.m-analytics>summary{--ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3a9 9 0 1 0 9 9h-9zM15 3.5A9 9 0 0 1 20.5 9H15z'/%3E%3C/svg%3E")}
.side .mod.m-reports>summary{--ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h7l5 5v13H7zM14 3v5h5M10 13h6M10 17h4'/%3E%3C/svg%3E")}
.side .mod.m-accounts>summary{--ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h12a2 2 0 0 1 2 2v14H7a2 2 0 0 1-2-2zM5 18a2 2 0 0 1 2-2h12'/%3E%3C/svg%3E")}
.side .mod.m-purchasing>summary{--ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l2.5 11h10l2-8H6.5M9 20a1 1 0 1 0 0-.01M17 20a1 1 0 1 0 0-.01'/%3E%3C/svg%3E")}
.side .mod.m-team>summary{--ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM3 20c.5-3.5 3-5 6-5s5.5 1.5 6 5M16 5a3 3 0 0 1 0 6M18 15c1.8.6 2.7 2.2 3 5'/%3E%3C/svg%3E")}
.side .mod.m-settings>summary{--ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z'/%3E%3C/svg%3E")}
.nav a[href="/flash/calendar"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16v14H4zM4 10h16M8 3v4M16 3v4M8 14h2M12 14h2M16 14h0'/%3E%3C/svg%3E")}
.nav a[href="/flash/run-rate"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21a9 9 0 1 1 9-9M12 12l5-3M12 3v2M3 12h2M17 17l4 4'/%3E%3C/svg%3E")}
.nav a[href="/flash/map"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4 3 6v14l6-2 6 2 6-2V4l-6 2zM9 4v14M15 6v14'/%3E%3C/svg%3E")}
.nav a[href="/flash/follow-up"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM3 20c.5-3.5 3-5 6-5 1.2 0 2.3.2 3.2.7M17 13v4l2.5 1.5M17 21a4 4 0 1 0 0-8 4 4 0 0 0 0 8z'/%3E%3C/svg%3E")}
.nav a[href="/flash/receivable-alerts"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 2 20h20zM12 10v4M12 17v.01'/%3E%3C/svg%3E")}
.nav a[href="/flash/products"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 4 7v10l8 4 8-4V7zM4 7l8 4 8-4M12 11v10'/%3E%3C/svg%3E")}
.nav a[href="/flash/tv"]{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5h18v12H3zM8 21h8M12 17v4'/%3E%3C/svg%3E")}
}

/* ---------------- sales analytics pages (calendar, run-rate, map, follow-up, receivables, products) */
.ia{--s:#3f7ff0;--c:#12a678;--w:#f08c1a;--r:#e0564a;--v:#8a63e8;color:var(--ink)}
.ia .bar-date{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ia-k{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:18px}
.ia-k>div{background:#fff;border-radius:18px;padding:14px 18px;box-shadow:var(--up-s);border-top:4px solid var(--kc,var(--s));animation:iaUp .5s cubic-bezier(.2,.9,.3,1.1) both;animation-delay:calc(var(--n,0)*70ms)}
.ia-k small{display:block;font-size:13px;font-weight:700;color:var(--kc,var(--s))}.ia-k b{display:block;font-size:26px;margin:4px 0 2px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.ia-k i{font-style:normal;font-size:13px;color:var(--mut)}
.ia-card{background:#fff;border-radius:20px;padding:18px 20px;box-shadow:var(--up-s);margin-bottom:18px;animation:iaUp .55s cubic-bezier(.2,.9,.3,1.1) both}
.ia-card h3{margin:0 0 4px;font-size:17px}.ia-card .hint{margin:0 0 12px}
.ia-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ia-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media(max-width:1100px){.ia-two,.ia-three{grid-template-columns:minmax(0,1fr)}}
.ia-t{width:100%;border-collapse:collapse;font-size:14px}.ia-t th{background:none!important;text-align:left;font-size:12.5px;color:var(--mut)!important;font-weight:700;padding:8px 8px;border-bottom:2px solid var(--line)}
.ia-t td{padding:9px 8px;border-bottom:1px solid #edf1f8;font-variant-numeric:tabular-nums;vertical-align:middle}.ia-t .n{text-align:right;white-space:nowrap}.ia-t tr.tot td{font-weight:800;border-top:2px solid var(--ink);border-bottom:0}
.ia-t tr:hover td{background:#f5f8ff}
.ia-pill{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12.5px;font-weight:700;background:#eef2fb;color:#4a5a7a;white-space:nowrap}
.ia-pill.good{background:#dcf6ec;color:#0e8a63}.ia-pill.warn{background:#fff0d9;color:#a8650c}.ia-pill.bad{background:#ffe5e1;color:#c43d30}.ia-pill.blue{background:#e4eeff;color:#2f58bd}
.ia-seg{display:inline-flex;background:#e3eaf8;border-radius:12px;padding:3px;gap:2px}.ia-seg a,.ia-seg button{border:0;background:none;padding:7px 14px;border-radius:9px;font-weight:650;font-size:14px;color:#3b4a66;text-decoration:none;cursor:pointer}
.ia-seg .on{background:#fff;color:var(--brand-d);box-shadow:var(--up-s)}
.ia-mini{height:7px;border-radius:5px;background:#edf1f8;overflow:hidden;min-width:60px}.ia-mini i{display:block;height:100%;border-radius:5px;background:var(--bc,var(--s));transform-origin:left;animation:iaGrow .9s cubic-bezier(.2,.9,.3,1) both}
.ia-empty{padding:26px;text-align:center;color:var(--mut);font-size:15px}
@keyframes iaUp{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
@keyframes iaGrow{from{transform:scaleX(0)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.ia-k>div,.ia-card,.ia-mini i{animation:none}}

/* ---------------- daily flash report extras: trend lines, share menu (screen only) */
.fx-spw{margin-top:8px;line-height:0}.fx-sp{width:100%;height:38px;display:block}
.fx-sh{position:relative;display:inline-block}
.fx-menu{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px rgba(20,33,61,.18);padding:6px;min-width:230px;z-index:30;
  opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:all .18s}
.fx-menu.on{opacity:1;transform:none;pointer-events:auto}
.fx-menu button{display:block;width:100%;text-align:left;border:0;background:none;padding:10px 12px;border-radius:9px;font:inherit;font-size:14.5px;color:var(--ink);cursor:pointer}.fx-menu button:hover{background:#eef3fd}
.fx-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#14213d;color:#fff;padding:12px 18px;border-radius:12px;font-size:14.5px;box-shadow:0 12px 30px rgba(0,0,0,.25);opacity:0;transition:all .3s;z-index:60}
.fx-toast.on{opacity:1;transform:translate(-50%,0)}
@media print{.fx-spw,.fx-sh,.fx-toast{display:none!important}}
.fx-sp{clip-path:inset(0 100% 0 0);animation:fxReveal 1.3s cubic-bezier(.3,.8,.3,1) .35s forwards}@keyframes fxReveal{to{clip-path:inset(0 0 0 0)}}
@media (prefers-reduced-motion:reduce){.fx-sp{clip-path:none;animation:none}}
