
:root{--nav:#0f203a;--nav2:#182d4c;--orange:#ff9f1a;--orange2:#ff7b00;--cream:#fff8ee;--bg:#f4f7fb;--line:#dfe6ef;--text:#101828;--muted:#667085}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}.app{display:flex;min-height:100vh}.sidebar{width:250px;background:var(--nav);color:#fff;position:fixed;inset:0 auto 0 0;overflow:auto;padding:14px}.brand{font-weight:800;font-size:19px;padding:14px 10px 20px}.brand small{display:block;font-size:11px;color:#b8c6d9;margin-top:5px}.menu-title{font-size:10px;text-transform:uppercase;color:#93a4bb;padding:15px 10px 7px}.nav a{display:block;padding:10px 12px;border-radius:9px;margin:2px 0;font-size:13px}.nav a:hover,.nav a.active{background:var(--orange);color:#111}.main{margin-left:250px;width:calc(100% - 250px)}.topbar{height:58px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 18px;position:sticky;top:0;z-index:10}.content{padding:18px}.head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.head h1{margin:0;font-size:25px}.sub{font-size:12px;color:var(--muted);margin-top:4px}.btn{display:inline-flex;align-items:center;gap:6px;background:var(--orange2);color:#fff;border:0;border-radius:9px;padding:10px 14px;font-weight:700;cursor:pointer}.btn.secondary{background:#fff;color:#111;border:1px solid #cfd8e3}.btn.danger{background:#d92d20}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:14px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric b{display:block;font-size:24px;margin-top:6px}.metric span{color:var(--muted);font-size:11px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field label,label{font-size:12px;font-weight:700}.field input,.field select,.field textarea,input,select,textarea{padding:10px;border:1px solid #cfd8e3;border-radius:8px;background:#fff}.field textarea{min-height:90px}.tablewrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px}.table{width:100%;border-collapse:collapse;font-size:12px}.table th{background:#7e2a08;color:#fff;text-align:left;padding:10px;white-space:nowrap}.table td{padding:10px;border-bottom:1px solid var(--line);vertical-align:top}.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:700;background:#eef2f6}.green{background:#dff6e8;color:#08783d}.yellow{background:#fff1bf;color:#815d00}.red{background:#fee4e2;color:#b42318}.notice{padding:12px;border-radius:9px;background:#fff3e8;border:1px solid #ffd1a6;margin-bottom:12px}.dropzone{border:2px dashed #f59b42;border-radius:14px;padding:28px;text-align:center;background:#fffaf4;cursor:pointer}.dropzone.drag{background:#fff0df;border-color:#ff7b00}.line-grid{display:grid;grid-template-columns:2fr 3fr .8fr 1fr .8fr 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.setup-body{display:grid;place-items:center;min-height:100vh;background:#f7f2ea}.setup-card{width:min(620px,92vw);background:#fff;padding:28px;border-radius:18px;box-shadow:0 12px 40px #0002}.layout-toggle{display:flex;gap:6px}.layout-toggle a{padding:7px 10px;border:1px solid #ccd5df;border-radius:8px;background:#fff;font-size:12px}.layout-toggle a.on{background:var(--orange);border-color:var(--orange);font-weight:700}.detail-only{display:none}body.detailed .detail-only{display:table-cell}body.detailed div.detail-only{display:block}@media(max-width:1000px){.sidebar{width:72px}.brand{font-size:0}.brand:before{content:'🐝';font-size:26px}.brand small,.menu-title,.nav a span{display:none}.main{margin-left:72px;width:calc(100% - 72px)}.cards,.grid,.grid2{grid-template-columns:1fr 1fr}.line-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.cards,.grid,.grid2{grid-template-columns:1fr}.content{padding:10px}}
/* Bee Accounting Professional UI — AdminLTE 4 compatible skin */
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}.sidebar{background:linear-gradient(180deg,#0b1d35 0%,#102844 100%);box-shadow:4px 0 18px rgba(16,24,40,.08)}.brand{letter-spacing:-.25px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:8px}.nav a{transition:.15s ease;border:1px solid transparent}.nav a:hover{background:rgba(255,159,26,.14);color:#fff;border-color:rgba(255,159,26,.22)}.nav a.active{background:linear-gradient(90deg,#ff8a00,#ffb11a);color:#1b1b1b;box-shadow:0 5px 14px rgba(255,139,0,.22)}.topbar{height:64px;box-shadow:0 2px 10px rgba(16,24,40,.04)}.content{max-width:1920px;margin:auto}.card,.tablewrap{box-shadow:0 1px 3px rgba(16,24,40,.04);border-color:#e8edf3}.card{border-radius:12px}.metric{position:relative;overflow:hidden}.metric:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#ff9417}.table th{background:#122b49;color:#fff;letter-spacing:.02em}.table tr:hover td{background:#fffaf3}.btn{border-radius:8px;box-shadow:none}.btn:hover{filter:brightness(.97)}.head h1{font-size:26px;letter-spacing:-.5px}.dropzone{background:linear-gradient(180deg,#fff,#fffaf4)}
@media print{.sidebar,.topbar,.btn,.layout-toggle{display:none!important}.main{margin:0!important;width:100%!important}.content{padding:0!important}.card,.tablewrap{box-shadow:none!important}}

/* v8 professional refinements */
:root{--bee-brown:#762607;--bee-orange:#ff7a00;--bee-cream:#fff8ef;--bee-navy:#0d2038}
.topbar{background:#fff9ef;border-bottom-color:#f4ddc5}
.brand{display:flex;align-items:center;gap:10px}
.brand:before{content:"";width:34px;height:34px;background:url("logo.svg") center/contain no-repeat;display:block;flex:0 0 auto}
.page-kicker{font-size:10px;color:#ff6b00;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.actionbar{display:flex;gap:8px;flex-wrap:wrap}
.smallbtn{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;border:1px solid #ccd6e2;border-radius:10px;background:#fff;color:#0b3ea8;font-weight:700}
.smallbtn.orange{border-color:#ff7a00;color:#ff7a00}
.smallbtn:hover{background:#f8fafc}
.register-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}
.searchbar{display:grid;grid-template-columns:1fr auto auto;gap:8px}
.searchbar input{width:100%}
.customer-name{font-weight:800}.muteline{font-size:10px;color:#7b8798;margin-top:3px}
.statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.statbox{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px;display:flex;align-items:center;gap:12px}
.staticon{width:34px;height:34px;border-radius:10px;background:#eef4ff;display:grid;place-items:center}
.statbox b{display:block;font-size:20px}.statbox small{font-size:10px;color:#607089;font-weight:700;text-transform:uppercase}
.form-shell{background:#fff;border:1px solid #eadfce;border-radius:16px;padding:16px}
.recon-shell{display:grid;grid-template-columns:minmax(520px,1fr) minmax(560px,1fr);gap:12px}
.recon-left,.recon-right{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}
.recon-toolbar{padding:10px;border-bottom:1px solid var(--line);display:flex;gap:8px;flex-wrap:wrap}
.recon-summary{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin:10px 0}
.recon-summary .card{padding:10px;margin:0}.recon-summary small{display:block;color:#7a8797;font-size:9px}.recon-summary b{font-size:12px}
.recon-list{max-height:620px;overflow:auto}.recon-list table{font-size:10px}.recon-list .table th,.recon-list .table td{padding:7px}
.recon-selected{padding:14px;border-bottom:1px solid var(--line);background:#fffaf4}
.recon-selected-grid{display:grid;grid-template-columns:1fr 1fr 2fr 1fr;gap:10px}
.match-tabs{display:flex;gap:7px;padding:10px;border-bottom:1px solid var(--line);flex-wrap:wrap}.match-tabs a{padding:7px 10px;border:1px solid #d6dde6;border-radius:8px;font-size:11px}.match-tabs a.on{background:#ff8a00;color:#fff;border-color:#ff8a00}
.match-panel{padding:12px}
.match-table{max-height:450px;overflow:auto}
.doc-preview{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;max-width:900px;margin:auto}
.doc-header{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start;border-bottom:1px solid #dfe6ef;padding-bottom:18px}.company-line{display:flex;gap:14px;align-items:flex-start}.company-logo{width:80px;height:80px;border:1px solid #dbe3ec;border-radius:10px;padding:8px}.doc-title{text-align:right;font-size:10px;letter-spacing:.2em}.doc-number{font-size:20px;font-weight:800;margin-top:6px}
.doc-info{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:22px 0}.info-box{border:1px solid #dbe3ec;border-radius:12px;padding:14px}
.doc-table{width:100%;border-collapse:collapse;font-size:12px}.doc-table th{background:#10213b;color:#fff;padding:9px;text-align:left}.doc-table td{padding:10px;border-bottom:1px solid #e4eaf0;vertical-align:top}
.doc-totals{width:330px;margin-left:auto;border:1px solid #dbe3ec;border-radius:12px;padding:12px}.doc-total-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dotted #dbe3ec}.doc-total-row:last-child{border-bottom:0;font-weight:800}
@media(max-width:700px){.recon-shell{grid-template-columns:1fr}.recon-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.statrow{grid-template-columns:1fr 1fr}.recon-summary{grid-template-columns:1fr 1fr}.recon-selected-grid{grid-template-columns:1fr 1fr}.doc-info{grid-template-columns:1fr}}

/* v9: preserve the earlier compact two-pane reconciliation experience */
.recon-shell{grid-template-columns:49% 51%;gap:10px}
.recon-left,.recon-right{min-width:0}
.recon-list{max-height:590px}
.recon-toolbar{position:sticky;top:0;background:#fff;z-index:2}
@media(max-width:700px){.recon-shell{grid-template-columns:1fr}}

/* v10 INVS panel visual shell */
:root{--ip-brown:#351606;--ip-brown2:#4b210c;--ip-orange:#ff7900;--ip-cream:#fff7eb;--ip-bg:#f4f7fb}
.sidebar{width:255px;background:linear-gradient(180deg,#351606,#421b08);padding:0 10px 16px;border-right:1px solid #6a2e10;box-shadow:4px 0 16px #2a130518}
.main{margin-left:255px;width:calc(100% - 255px)}
.brand{height:73px;margin:0 -10px 8px;padding:12px 12px;background:#2c1104;border-bottom:1px solid #633015;display:flex!important;align-items:center!important;gap:9px!important}
.brand:before{display:none!important}
.brand-mark{width:42px;height:42px;border-radius:9px;background:#fff;display:grid;place-items:center;overflow:hidden;flex:0 0 auto}
.brand-mark img{width:38px;height:38px}
.brand-copy strong{display:block;color:#fff;font-size:13px}.brand-copy small{display:block!important;color:#d6b69f!important;font-size:9px!important;margin-top:3px!important}
.menu-title{display:block!important;background:linear-gradient(180deg,#54250e,#482009);border:1px solid #6d3413;border-radius:9px;color:#fff!important;padding:10px 11px!important;margin:8px 0 4px!important;font-weight:800;font-size:11px!important;text-transform:none!important}
.nav a{padding:7px 12px 7px 17px!important;margin:1px 2px!important;border-radius:6px!important;color:#f5e7dc!important;font-size:10.5px!important}
.nav a:before{content:"⌑";color:#d48649;margin-right:7px}
.nav a.active{background:#65300f!important;border:1px solid #8b4315;color:#fff!important}
.topbar{height:56px;background:#fff7eb;border-bottom:1px solid #eed5bb;box-shadow:0 1px 3px #00000008}
.top-left-brand{display:flex;align-items:center}.top-left-brand img{width:210px;height:50px;object-fit:contain}
.top-pills{display:flex;align-items:center;gap:7px}
.top-pill{background:#fff;border:1px solid #f0b879;border-radius:9px;padding:7px 10px;font-size:9px;font-weight:700;white-space:nowrap}.top-pill.primary{background:#ff8a18;color:#fff;border-color:#ff8a18}
.sidebar-account{margin-top:10px;padding:11px;background:#54250e;border:1px solid #74401e;border-radius:10px;color:#fff;font-size:9px}.sidebar-account .who{display:flex;gap:8px;align-items:center;margin-bottom:8px}.sidebar-account .avatar{width:32px;height:32px;background:#fff1e4;color:#742c08;border-radius:8px;display:grid;place-items:center;font-weight:800}.sidebar-account .powered{margin-top:9px;padding:9px;background:#fff0d6;color:#712c08;border-radius:9px;text-align:center;font-weight:800}
.content{padding:13px 15px 22px}.head{padding:12px 14px;border-radius:12px}.head h1{font-size:17px}.card,.tablewrap,.form-shell,.recon-left,.recon-right{border-radius:11px}
.table{font-size:10.5px}.table th{background:linear-gradient(#7e2a08,#692105);padding:8px 9px;font-size:9px}.table td{padding:8px 9px}
.recon-shell{grid-template-columns:50% 50%;gap:8px}.recon-list{max-height:650px}.recon-summary{gap:6px}.recon-summary .card{padding:8px}.recon-summary small{font-size:8px}.recon-summary b{font-size:11px}
.statrow{gap:9px}.statbox{padding:12px}.statbox b{font-size:17px}
@media(max-width:1050px){.sidebar{width:220px}.main{margin-left:220px;width:calc(100% - 220px)}.top-pill{display:none}.recon-shell{grid-template-columns:1fr}}
@media(max-width:720px){.sidebar{position:relative;width:100%;height:auto}.main{margin-left:0;width:100%}.top-left-brand img{width:165px}}

/* v13 — Practical = landscape module navigation; Detailed = existing grouped sidebar */
.practical-group-title{
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#f06b00;
  margin:2px 0 7px;
}

/* v205 safe layout and register controls */
.bee-register-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0;padding:10px;border:1px solid #dbe4ef;border-radius:10px;background:#f8fafc}
.bee-register-search{flex:1 1 260px;min-width:180px}
.bee-register-size{width:auto;min-width:105px}
.bee-register-count{margin-left:auto;color:#526173;font-size:.9rem;font-variant-numeric:tabular-nums}
.bee-register-tools button:disabled{opacity:.45;cursor:not-allowed}
main table{font-variant-numeric:tabular-nums}
main th{position:sticky;top:0;z-index:1;background:#f6f8fb}
main td,main th{vertical-align:top}
@media(max-width:760px){
 .bee-register-tools{align-items:stretch}
 .bee-register-search,.bee-register-size{width:100%;flex-basis:100%}
 .bee-register-count{width:100%;margin-left:0}
 .tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
 main table{min-width:720px}
}
.practical-strip{
  display:flex;
  gap:8px;
  align-items:center;
  overflow-x:auto;
  white-space:nowrap;
  background:#12223d;
  padding:10px;
  border-radius:12px;
  margin:0 0 14px;
  box-shadow:0 2px 6px rgba(15,31,58,.08);
}
.practical-strip a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 13px;
  border:1px solid #365276;
  border-radius:8px;
  background:#1a3152;
  color:#fff;
  font-size:11px;
  font-weight:700;
}
.practical-strip a:hover{background:#244568;color:#fff}
.practical-strip a.on{
  background:#ff7a00;
  border-color:#ff7a00;
  color:#fff;
}
body.detailed .practical-strip,
body.detailed .practical-group-title{display:none!important}

/* In Practical mode, keep the grouped sidebar but visually compact it:
   the horizontal strip becomes the fast landscape navigation. */
body.practical .content{padding-top:11px}
body.practical .head{margin-bottom:10px}
body.practical .sidebar .nav a{font-size:10px}

/* Detailed remains exactly the grouped vertical navigation. */
@media(max-width:760px){
  .practical-strip{padding:8px;border-radius:10px}
  .practical-strip a{padding:7px 10px;font-size:10px}
}

/* ==========================================================
   v16 — Collapsible grouped sidebar + ORMS reference palette
   Wording/modules unchanged. Only palette and interaction.
   ========================================================== */
:root{
  --v16-navy:#0e2038;
  --v16-navy-2:#142842;
  --v16-navy-3:#1c3555;
  --v16-cream:#fff7eb;
  --v16-canvas:#f2f6fc;
  --v16-card:#ffffff;
  --v16-orange:#ff7a00;
  --v16-orange-soft:#fff0df;
  --v16-line:#d8e1ed;
  --v16-text:#10213b;
  --v16-muted:#63728a;
}

/* Main palette */
html,body{background:var(--v16-canvas)!important;color:var(--v16-text)}
.sidebar{
  background:var(--v16-navy)!important;
  border-right:1px solid #203957!important;
  box-shadow:4px 0 18px rgba(14,32,56,.12)!important;
}
.brand{
  background:var(--v16-navy)!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
}
.brand-copy strong{color:#fff!important}
.brand-copy small{color:#b8c6d9!important}

.topbar{
  background:var(--v16-cream)!important;
  border-bottom:1px solid #f3cfaa!important;
}
.content{background:var(--v16-canvas)!important}
.head,.card,.tablewrap,.form-shell,.recon-left,.recon-right,.statbox{
  background:var(--v16-card)!important;
  border-color:var(--v16-line)!important;
}
.head h1,.customer-name,.doc-number{color:var(--v16-text)!important}
.sub,.muteline{color:var(--v16-muted)!important}
.btn{background:var(--v16-orange)!important;border-color:var(--v16-orange)!important}
.btn.secondary{
  background:#fff!important;color:var(--v16-text)!important;border-color:#cbd6e4!important
}
.top-pill.primary{background:var(--v16-orange)!important;border-color:var(--v16-orange)!important}
.top-pill{background:#fff!important;color:var(--v16-text)!important;border-color:#efc592!important}
.practical-strip{background:var(--v16-navy)!important}
.practical-strip a{background:var(--v16-navy-2)!important;border-color:#395372!important}
.practical-strip a.on{background:var(--v16-orange)!important;border-color:var(--v16-orange)!important}
.table th{background:var(--v16-navy)!important;color:#fff!important}
input:focus,select:focus,textarea:focus{
  border-color:#ff9b40!important;
  box-shadow:0 0 0 3px rgba(255,122,0,.11)!important
}

/* Collapsible menu groups */
.side-group{margin:8px 0}
.side-group .menu-title{
  width:100%;
  appearance:none;
  cursor:pointer;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0!important;
  padding:11px 12px!important;
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  background:rgba(255,255,255,.035)!important;
  color:#fff!important;
  text-align:left;
  font-weight:800!important;
  font-size:11px!important;
  line-height:1.2;
}
.side-group .menu-title:hover{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.18)!important;
}
.side-group.is-open .menu-title{
  background:var(--v16-navy-2)!important;
  border-color:#2b4564!important;
}
.side-group:has(.nav a.active) .menu-title{
  background:var(--v16-navy-2)!important;
  border-color:rgba(255,122,0,.55)!important;
  box-shadow:inset 3px 0 0 var(--v16-orange);
}
.group-label{min-width:0}
.group-chevron{
  color:#c2cede;
  font-size:13px;
  transition:transform .18s ease;
  flex:0 0 auto;
}
.side-group.is-open .group-chevron{transform:rotate(180deg)}
.side-group-body{
  display:none;
  padding:5px 2px 1px;
}
.side-group.is-open .side-group-body{display:block}
.side-group-body a{
  color:#dbe5f1!important;
  padding:8px 11px 8px 18px!important;
  margin:1px 2px!important;
  border:1px solid transparent!important;
  border-radius:7px!important;
  background:transparent!important;
}
.side-group-body a:before{color:#7891ae!important}
.side-group-body a:hover{
  color:#fff!important;
  background:rgba(255,255,255,.065)!important;
}
.side-group-body a.active{
  background:var(--v16-orange)!important;
  color:#fff!important;
  border-color:var(--v16-orange)!important;
}
.side-group-body a.active:before{color:#fff!important}

/* Sidebar footer follows navy palette rather than brown */
.sidebar-account{
  background:var(--v16-navy-2)!important;
  border-color:#334c69!important;
}
.sidebar-account .who span{color:#bfcede!important}
.sidebar-account .powered{
  background:var(--v16-cream)!important;
  color:var(--v16-navy)!important
}

/* Soft orange indicators */
.page-kicker,.practical-group-title{color:#ef6500!important}
.notice{background:var(--v16-orange-soft)!important;border-color:#ffc387!important}

/* Preserve compact landscape behavior */
@media(max-width:1050px){
  .side-group .menu-title{font-size:10px!important}
}

/* v17 — financial number presentation and INVS-style bank statement */
.numcell,.numhead{text-align:right!important;white-space:nowrap;font-variant-numeric:tabular-nums}
.negative{color:#b42318!important;font-weight:800}
.table td.numcell{font-weight:700}
.recon-summary b,.statbox b,.metric b,.doc-total-row b{
  font-variant-numeric:tabular-nums;
}
.bank-amount-positive{color:#0a7a43;font-weight:800}
.bank-amount-negative{color:#c4322b;font-weight:800}

/* v18 — Bank Reconciliation: INVS workbench */
.invs-recon-title,.invs-statement-card{
 display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;
 border:1px solid var(--v16-line,#d8e1ed);border-radius:10px;padding:10px 12px;margin-bottom:8px
}
.invs-recon-title h1{font-size:16px;margin:0}.invs-statement-card{border-color:#e7d7c9}
.invs-recon-summary{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin-bottom:8px}
.invs-summary-box{background:#fff;border:1px solid #e2d9d1;border-radius:9px;padding:9px;min-height:57px}
.invs-summary-box small{display:block;color:#778399;font-size:8px;margin-bottom:5px}.invs-summary-box b{font-size:10px;font-variant-numeric:tabular-nums}
.redtext{color:#df2b2b!important}.greentext{color:#00934f!important}
.invs-recon-workbench{display:grid;grid-template-columns:49% 51%;gap:8px;align-items:start}
.invs-bank-pane,.invs-match-pane{background:#fff;border:1px solid #dfe5ec;border-radius:10px;overflow:hidden;min-width:0}
.invs-pane-head,.invs-suggest-head{display:flex;align-items:center;justify-content:space-between;padding:10px 11px;border-bottom:1px solid #e5eaf0}
.invs-bank-search{display:grid;grid-template-columns:1fr 145px auto;gap:7px;padding:9px}
.invs-status-tabs{display:flex;gap:6px;padding:0 9px 8px;overflow-x:auto}
.invs-status-tabs a{padding:6px 9px;border:1px solid #e2e6ec;border-radius:7px;font-size:9px;font-weight:700;white-space:nowrap;background:#fafafa}
.invs-status-tabs a.on{background:#fff4e8;border-color:#ff8a20;color:#e65e00}
.invs-bank-scroll{max-height:630px;overflow:auto;border-top:1px solid #e4e8ee}
.invs-bank-table{font-size:9px!important}.invs-bank-table th,.invs-bank-table td{padding:6px 7px!important}
.invs-bank-table tr.selected-line td{background:#fff4e9!important}
.invs-recon-actions{display:flex;gap:6px;padding:9px;border-bottom:1px solid #e3e8ee;overflow-x:auto}
.invs-recon-actions .btn{white-space:nowrap;font-size:9px;padding:7px 9px}
.invs-selected-box{margin:9px;border:1px solid #f0d5bd;border-radius:9px;background:#fffdfb}
.invs-selected-title{display:flex;justify-content:space-between;align-items:center;padding:9px 10px;border-bottom:1px solid #f1e1d2}
.invs-selected-grid{display:grid;grid-template-columns:1fr 1fr 2fr 1fr;gap:0}
.invs-selected-grid>div{padding:10px;border-right:1px solid #eee5dd;min-width:0}.invs-selected-grid>div:last-child{border-right:0}
.invs-selected-grid b{display:block;font-size:9px;white-space:normal}.invs-selected-grid small{display:block;color:#8894a5;font-size:8px;margin-top:5px}
.invs-running{padding:8px 10px;border-top:1px solid #f1e1d2;font-size:9px}
.invs-suggestions{margin-top:2px}.invs-suggest-scroll{max-height:410px;overflow:auto}
.invs-suggest-scroll .table{font-size:8.5px}.invs-suggest-scroll .table th,.invs-suggest-scroll .table td{padding:6px}
.invs-radio{width:22px;height:22px;border:1px solid #cbd4df;background:#fff;border-radius:50%;cursor:pointer}
.confidence{display:flex;align-items:center;gap:5px;min-width:75px}.confidence span{font-size:8px}.confidence{position:relative}
.confidence:after{content:"";display:block;width:45px;height:3px;background:#eceff3;border-radius:3px}
.confidence i{position:absolute;left:29px;bottom:5px;height:3px;max-width:45px;background:#f24941;border-radius:3px}
.invs-confidence-note{padding:7px 10px;border-top:1px solid #e6ebf0;font-size:8px;color:#657286;background:#fbfcfd}
.invs-resolve-box{margin:9px;border:1px solid #e0e5eb;border-radius:9px;padding:11px;background:#fff}
.invs-resolve-box h3{font-size:13px;margin:0 0 4px}
.invs-resolve-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.invs-quick-card{border:1px solid #e2e7ed;border-radius:8px;padding:10px}.invs-quick-card p{font-size:9px;color:#667489}
.invs-quick-card form{display:grid;gap:7px}
.invs-recon-footer{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:8px;align-items:center;margin-top:8px;padding:9px 11px;background:#fff;border:1px solid #dfe5ec;border-radius:10px}
.invs-recon-footer small{display:block;color:#788598;font-size:8px}.invs-recon-footer b{display:block;font-size:10px;margin-top:3px}
body.recon-wide .sidebar{display:none!important}body.recon-wide .main{margin-left:0!important;width:100%!important}
@media(max-width:1200px){.invs-recon-summary{grid-template-columns:repeat(4,1fr)}.invs-recon-workbench{grid-template-columns:1fr}.invs-selected-grid{grid-template-columns:1fr 1fr}.invs-resolve-grid{grid-template-columns:1fr}}
@media(max-width:700px){.invs-recon-summary{grid-template-columns:1fr 1fr}.invs-bank-search{grid-template-columns:1fr}.invs-recon-footer{grid-template-columns:1fr 1fr}.invs-recon-footer .btn{grid-column:1/-1}}

/* v19 — INVS-style expandable financial statements + ledger-validated reconciliation */
.gl-recon-note{margin:10px 0 14px;padding:10px 12px;border:1px solid #d7e2ea;border-radius:8px;background:#f8fbfd;font-size:13px;color:#435466}
.fs-sheet{padding:0;overflow:hidden;border:1px solid #d8e0e7;background:#fff}.fs-title-row{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:#0f2740;color:#fff}.fs-title-row span{font-size:12px;opacity:.85}.fs-section-title{padding:10px 18px;background:#eef3f6;border-top:1px solid #d8e0e7;border-bottom:1px solid #d8e0e7;font-weight:800;color:#24384c;text-transform:uppercase;font-size:12px;letter-spacing:.05em}.fs-account{border-bottom:1px solid #e5eaee;background:#fff}.fs-account summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:11px 18px;cursor:pointer}.fs-account summary::-webkit-details-marker{display:none}.fs-account summary:hover{background:#f8fbfd}.fs-label{display:flex;align-items:center;gap:8px}.fs-label small{font-size:11px;font-weight:400;color:#778899}.fs-chevron{font-size:22px;line-height:1;transition:transform .15s ease;color:#6f8294}.fs-account[open] .fs-chevron{transform:rotate(90deg)}.fs-amount{min-width:150px;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.fs-drill{padding:12px 18px 18px;background:#f7f9fb;border-top:1px dashed #d5dde5}.fs-drill-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:8px;font-size:12px}.fs-drill-head a{font-weight:700;text-decoration:none}.fs-detail-table{font-size:12px}.fs-total{display:flex;justify-content:space-between;gap:20px;padding:10px 18px;border-top:1px solid #dbe2e8;font-variant-numeric:tabular-nums}.fs-total.strong{font-weight:800;background:#f7fafc}.fs-total.gross{font-weight:900;background:#eaf4ee;border-top:2px solid #9bc5aa}.fs-total.net{font-weight:900;background:#0f2740;color:#fff;font-size:15px}.fs-total.balanced{background:#edf8f1;color:#17633a}.fs-total.warning{background:#fff4e9;color:#8a4f13}@media(max-width:800px){.fs-account summary,.fs-total,.fs-title-row{padding-left:12px;padding-right:12px}.fs-label{align-items:flex-start;flex-direction:column;gap:1px}.fs-chevron{display:none}.fs-amount{min-width:120px}.fs-drill{padding:10px}.fs-title-row{align-items:flex-start;flex-direction:column;gap:4px}}

/* v29 - MRA VAT 3 automatic return layout */
.vat3-filter{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.vat3-filter .field{min-width:160px}
.vat3-paper{max-width:980px;margin:18px auto;background:#fff;color:#111;border:1px solid #222;padding:0;font-family:Arial,Helvetica,sans-serif;box-shadow:0 10px 30px rgba(15,23,42,.08)}
.vat3-titlebar{display:grid;grid-template-columns:150px 1fr 190px;border-bottom:1px solid #222;min-height:112px}.vat3-titlebar>div{padding:14px;border-right:1px solid #222}.vat3-titlebar>div:last-child{border-right:0}.vat3-logo{font-size:44px;font-style:italic;font-weight:800;display:flex;align-items:center;justify-content:center}.vat3-titlebar h2{margin:8px 0 2px;text-align:center;font-size:20px}.vat3-titlebar b,.vat3-titlebar small{display:block;text-align:center}.vat3-office{font-size:12px;font-weight:700;text-align:center}
.vat3-period,.vat3-note,.vat3-proportion{padding:10px 14px;border-bottom:1px solid #222;font-size:13px}.vat3-note{font-size:12px}.vat3-company{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #222}.vat3-company>div{padding:9px 14px;border-right:1px solid #ddd}.vat3-company>div:nth-child(2n){border-right:0}.vat3-company .wide{grid-column:1/-1;border-top:1px solid #ddd;border-right:0}.vat3-company b{display:inline-block;min-width:190px;font-size:12px}.vat3-company span{font-weight:600}.vat3-proportion{display:flex;justify-content:space-between}
.vat3-table{width:100%;border-collapse:collapse;font-size:12px}.vat3-table th,.vat3-table td{border:1px solid #222;padding:7px 8px;vertical-align:middle}.vat3-table th{background:#f2f2f2;font-weight:800}.vat3-table td:first-child{width:48px;text-align:center;font-weight:700}.vat3-table td:nth-last-child(-n+2){width:150px;text-align:right;font-variant-numeric:tabular-nums}.vat3-table .shade,.vat3-table td.shade{background:#bdbdbd}.vat3-table .bold{font-weight:800}.vat3-table .section th{background:#dedede;text-align:left}.vat3-input{width:100%;border:0;background:transparent;text-align:right;font:inherit;padding:0;color:#111}
.vat3-declaration{border-top:1px solid #222;padding:14px}.vat3-declaration h3{margin:0 -14px 14px;padding:7px 14px;background:#ddd;border-bottom:1px solid #222}.vat3-sign{display:flex;gap:26px;justify-content:space-between;margin:18px 0;flex-wrap:wrap}.vat3-payboxes{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.vat3-payboxes>div{border:1px solid #222;border-radius:14px;padding:16px;text-align:center;min-height:120px}.vat3-actions{padding:16px;text-align:center;border-top:1px solid #ddd}.vat3-pagebreak{height:16px;background:#eef2f7;border-top:1px solid #222;border-bottom:1px solid #222}
@media print{.no-print,.sidebar,.topbar{display:none!important}.content,.main,.app-main{margin:0!important;padding:0!important;width:100%!important}.vat3-paper{max-width:none;margin:0;box-shadow:none;border:0}.vat3-pagebreak{page-break-before:always;height:0;border:0}.vat3-table{font-size:10.5px}.vat3-table th,.vat3-table td{padding:5px 6px}.vat3-titlebar{min-height:95px}}

/* v35 profile + editable invoice register */
.avatar.profile-photo{width:48px;height:48px;border-radius:12px;overflow:hidden;background:#fff;padding:0;display:flex;align-items:center;justify-content:center}
.avatar.profile-photo img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:760px){.avatar.profile-photo{width:42px;height:42px}}

/* v65 bank reconciliation enhancements */
#bank-bulk-form select,#gl-split-editor select,#gl-split-editor input{max-width:100%}
#gl-split-editor .table input{width:100%;min-width:90px}
#gl-split-editor .table select{min-width:220px}
.bank-multi{width:16px;height:16px}

/* v67 partial supplier-bank and credit-card reconciliation */
.table select{max-width:100%}
.card .notice{line-height:1.45}

.supplier-actions{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.supplier-actions form{margin:0;display:inline-block}.supplier-actions .smallbtn{font-family:inherit;cursor:pointer;white-space:nowrap}

/* v71 normal supplier invoice line editor */
#supplier-bill-lines input,#supplier-bill-lines select{width:100%;min-width:80px}
#supplier-bill-lines .line-product{min-width:220px}
#supplier-bill-lines td{vertical-align:middle}
#supplier-bill-lines .numcell{white-space:nowrap}

#supplier-bill-lines .line-expense{min-width:200px}#supplier-bill-lines select,#supplier-bill-lines input{max-width:100%}

#supplier-bank-focus .table td{vertical-align:middle}
#supplier-bank-focus form{margin:0}
#supplier-bank-focus input[type=number]{min-width:110px}


/* v79 — supplier OCR review layout */
.supplier-review-head{padding:5px 2px;font-size:10px;color:#5d6b7d}
.supplier-review-line{grid-template-columns:1.7fr 2.5fr .65fr 1fr 1.35fr .7fr auto}
.supplier-review-line select,.supplier-review-line input{min-width:0;width:100%}
#manual-supplier-lines input,#manual-supplier-lines select{width:100%;min-width:90px}

/* v79 — three navigation sizes, same Bee navy/orange palette */
.sidebar-view-controls{
  position:sticky;top:0;z-index:5;display:flex;gap:6px;justify-content:flex-end;
  padding:6px 2px 10px;background:linear-gradient(180deg,#0b1d35 70%,rgba(11,29,53,0));
}
.sidebar-view-controls button{
  width:30px;height:28px;border-radius:7px;border:1px solid #35506f;background:#132d4c;
  color:#e9f0f8;font-weight:800;cursor:pointer
}
.sidebar-view-controls button:hover{border-color:#ff8a20;color:#fff}
.sidebar-restore{
  display:none;position:fixed;left:10px;top:74px;z-index:1000;width:42px;height:42px;
  border-radius:10px;border:1px solid #d7e0ea;background:#102844;color:#fff;font-size:18px;
  box-shadow:0 4px 14px #0002;cursor:pointer
}

/* Wide = appealing two-column panel */
body.bee-sidebar-wide .sidebar{width:340px}
body.bee-sidebar-wide .main{margin-left:340px;width:calc(100% - 340px)}
body.bee-sidebar-wide .side-group-body{grid-template-columns:1fr 1fr;gap:2px 6px}
body.bee-sidebar-wide .side-group.is-open .side-group-body{display:grid}
body.bee-sidebar-wide .side-group-body a{padding:8px 9px 8px 14px!important;font-size:11px!important}

/* Compact = current one-column panel */
body.bee-sidebar-compact .sidebar{width:230px}
body.bee-sidebar-compact .main{margin-left:230px;width:calc(100% - 230px)}
body.bee-sidebar-compact .side-group.is-open .side-group-body{display:block}
body.bee-sidebar-compact .side-group-body a{font-size:11px!important}

/* Hidden = full immersion for invoice processing */
body.bee-sidebar-hidden .sidebar{transform:translateX(-105%);box-shadow:none}
body.bee-sidebar-hidden .main{margin-left:0!important;width:100%!important}
body.bee-sidebar-hidden .sidebar-restore{display:block}
body.bee-sidebar-hidden .content{max-width:none}
body.bee-sidebar-hidden .topbar{padding-left:62px}

.sidebar{transition:width .18s ease,transform .18s ease}
.main{transition:margin-left .18s ease,width .18s ease}

@media(max-width:1000px){
 body.bee-sidebar-wide .sidebar,body.bee-sidebar-compact .sidebar{width:230px!important}
 body.bee-sidebar-wide .main,body.bee-sidebar-compact .main{margin-left:230px!important;width:calc(100% - 230px)!important}
 body.bee-sidebar-wide .side-group.is-open .side-group-body{display:block}
}
@media(max-width:700px){
 body.bee-sidebar-wide .sidebar,body.bee-sidebar-compact .sidebar{width:210px!important}
 body.bee-sidebar-wide .main,body.bee-sidebar-compact .main{margin-left:210px!important;width:calc(100% - 210px)!important}
 .supplier-review-line,.supplier-review-head{grid-template-columns:1fr 1fr}
}


/* v80 — slimmer two-column navigation */
body.bee-sidebar-wide .sidebar{width:300px!important;padding-left:10px!important;padding-right:10px!important}
body.bee-sidebar-wide .main{margin-left:300px!important;width:calc(100% - 300px)!important}
body.bee-sidebar-wide .side-group-body{gap:1px 3px!important}
body.bee-sidebar-wide .side-group-body a{
  padding:7px 5px 7px 10px!important;
  font-size:10px!important;
  letter-spacing:-.08px;
}
body.bee-sidebar-wide .side-group .menu-title{padding:9px 10px!important}
@media(max-width:1000px){
 body.bee-sidebar-wide .sidebar{width:230px!important}
 body.bee-sidebar-wide .main{margin-left:230px!important;width:calc(100% - 230px)!important}
}

/* v81 — user-adjustable sidebar width */
:root{--bee-sidebar-width:285px}
body.bee-sidebar-wide .sidebar{width:var(--bee-sidebar-width)!important}
body.bee-sidebar-wide .main{margin-left:var(--bee-sidebar-width)!important;width:calc(100% - var(--bee-sidebar-width))!important}
.sidebar-view-controls{align-items:center;flex-wrap:nowrap}
.sidebar-width-control{display:flex;align-items:center;gap:3px;min-width:108px;flex:1}
.sidebar-width-control button{width:24px;height:24px;min-width:24px;padding:0}
.sidebar-width-control input[type=range]{width:70px;min-width:45px;accent-color:#ff8a20;cursor:ew-resize}
body.bee-sidebar-compact .sidebar-width-control{display:none}
body.bee-sidebar-hidden .sidebar-width-control{display:none}
@media(max-width:1000px){body.bee-sidebar-wide .sidebar-width-control{display:none}}

.cc-drop-zone{border:2px dashed rgba(255,138,32,.75);border-radius:14px;padding:22px 16px;text-align:center;cursor:pointer;background:rgba(255,255,255,.035);transition:.16s ease}
.cc-drop-zone.dragover,.cc-drop-zone:hover{border-style:solid;box-shadow:0 0 0 3px rgba(255,138,32,.12)}
.cc-drop-icon{font-size:34px}.cc-drop-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:12px}.cc-selected-file{font-size:12px;font-weight:700;margin-top:10px;word-break:break-word}

.vat-line-click{display:block;color:inherit;text-decoration:none;width:100%;height:100%;padding:2px 0}.vat-line-click:hover{text-decoration:underline}.vat3-table td:first-child .vat-line-click{font-weight:700;text-decoration:underline;text-underline-offset:2px}

/* v100: MRA VAT 3 whole-row drill-down */
.vat3-table tbody tr.vat-drill-row{cursor:pointer!important;transition:background .12s ease}
.vat3-table tbody tr.vat-drill-row:hover td{background:#fff3cd!important}
.vat3-table tbody tr.vat-drill-row:focus{outline:3px solid rgba(0,0,0,.22);outline-offset:-3px}
.vat3-table .vat-drill-number{text-decoration:underline;text-underline-offset:3px}
@media print{
 .vat3-table tbody tr.vat-drill-row{cursor:default!important}
 .vat3-table tbody tr.vat-drill-row:hover td{background:inherit!important}
 .vat3-table .vat-drill-number{text-decoration:none}
}

/* v178 — mobile navigation repair for Cave, Brondon and Public Test.
   Presentation only: no accounting/business data is changed. */
@media(max-width:760px){
  body.bee-sidebar-wide .sidebar,body.bee-sidebar-compact .sidebar,.sidebar{
    position:fixed!important;left:0!important;top:0!important;bottom:0!important;
    width:min(88vw,340px)!important;height:100dvh!important;z-index:3000!important;
    overflow-y:auto!important;overflow-x:hidden!important;padding:8px 10px 18px!important;
    transform:translateX(0);box-shadow:8px 0 30px rgba(0,0,0,.28)!important;
  }
  body.bee-sidebar-hidden .sidebar{transform:translateX(-105%)!important}
  body.bee-sidebar-wide .main,body.bee-sidebar-compact .main,.main{
    margin-left:0!important;width:100%!important;min-width:0!important
  }
  body.bee-sidebar-hidden .main{margin-left:0!important;width:100%!important}
  .brand{font-size:15px!important;padding:9px 6px 10px!important;display:flex!important}
  .brand:before{display:none!important;content:none!important}
  .brand-copy,.brand-copy strong,.brand-copy small{display:block!important}
  .menu-title,.side-group .menu-title{display:flex!important;font-size:13px!important;padding:12px!important}
  .group-label{display:block!important;white-space:normal!important}
  .side-group-body a,.nav a{display:block!important;font-size:13px!important;padding:11px 12px 11px 18px!important;line-height:1.25!important}
  .side-group-body a span,.nav a span{display:inline!important}
  .side-group.is-open .side-group-body{display:block!important}
  .sidebar-view-controls{position:sticky!important;top:0!important;z-index:20!important;background:#0e2038!important;padding:7px 2px!important}
  .sidebar-width-control{display:none!important}
  .sidebar-view-controls button{width:38px!important;height:36px!important;font-size:16px!important}
  .sidebar-account{font-size:11px!important}
  .sidebar-restore{display:none}
  body.bee-sidebar-hidden .sidebar-restore{display:block!important;top:12px!important;left:12px!important;z-index:3100!important}
  .topbar{height:auto!important;min-height:58px!important;padding:8px 10px 8px 62px!important;flex-wrap:wrap!important;gap:6px!important}
  .top-left-brand img{width:145px!important;max-width:42vw!important}
  .top-pills{display:flex!important;gap:5px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
  .layout-toggle a,.topbar .btn{padding:8px 10px!important;font-size:12px!important}
  .content{padding:9px!important}
  .demo-banner{font-size:12px!important;line-height:1.35!important;padding:9px!important;text-align:left!important}
}

/* v179 — MOBILE NESTED SUBMENU READABILITY FIX
   Applies to Cave, Brondon and Test UI only. No accounting data changes. */
@media (max-width: 760px){
  body.bee-sidebar-wide .sidebar,
  body.bee-sidebar-compact .sidebar,
  body:not(.bee-sidebar-hidden) .sidebar{
    width:min(88vw,360px)!important;
    max-width:min(88vw,360px)!important;
    min-width:280px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:10px!important;
  }
  body.bee-sidebar-wide .main,
  body.bee-sidebar-compact .main,
  body:not(.bee-sidebar-hidden) .main{
    margin-left:min(88vw,360px)!important;
    width:calc(100% - min(88vw,360px))!important;
  }
  .sidebar .side-group{display:block!important;width:100%!important;margin:0 0 9px!important;overflow:visible!important}
  .sidebar .side-group .menu-title,
  .sidebar .side-group-toggle{
    display:flex!important;width:100%!important;min-height:48px!important;align-items:center!important;
    justify-content:space-between!important;padding:11px 14px!important;font-size:14px!important;
    line-height:1.25!important;white-space:normal!important;text-align:left!important;
  }
  .sidebar .side-group .group-label{display:block!important;visibility:visible!important;opacity:1!important;width:auto!important;height:auto!important;overflow:visible!important;color:#fff!important;font-size:14px!important;line-height:1.25!important;white-space:normal!important}
  .sidebar .side-group .group-chevron{display:block!important;flex:0 0 auto!important;font-size:18px!important;margin-left:10px!important;color:#fff!important}
  .sidebar .side-group.is-open .side-group-body,
  body.bee-sidebar-wide .sidebar .side-group.is-open .side-group-body,
  body.bee-sidebar-compact .sidebar .side-group.is-open .side-group-body{
    display:flex!important;flex-direction:column!important;grid-template-columns:none!important;
    width:100%!important;gap:3px!important;padding:6px 5px 8px 9px!important;
  }
  .sidebar .side-group-body a,
  body.bee-sidebar-wide .sidebar .side-group-body a,
  body.bee-sidebar-compact .sidebar .side-group-body a{
    display:flex!important;width:100%!important;min-height:42px!important;align-items:center!important;
    padding:10px 12px!important;margin:0!important;font-size:13px!important;line-height:1.25!important;
    white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:normal!important;
    letter-spacing:0!important;color:#eaf2fb!important;border-radius:8px!important;
  }
  .sidebar .side-group-body a span{
    display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;max-width:none!important;
    height:auto!important;overflow:visible!important;white-space:normal!important;text-overflow:clip!important;
    font-size:13px!important;line-height:1.25!important;color:inherit!important;
  }
  .sidebar .side-group-body a::before{content:'›';display:inline-block!important;flex:0 0 14px!important;margin-right:6px!important;color:#ff8a20!important;font-size:18px!important;line-height:1!important}
  .sidebar .side-group-body a.active{background:#ff7900!important;color:#fff!important;font-weight:800!important}
  .sidebar-view-controls{position:relative!important;top:auto!important}
  .sidebar-width-control{display:none!important}
}

/* v180 — FINAL MOBILE DRAWER + FULL-WIDTH CONTENT FIX
   UI only. Cave/Brondon/Test accounting data is untouched. */
@media (max-width:760px){
  html,body{max-width:100%;overflow-x:hidden!important}
  .app{display:block!important;width:100%!important;min-width:0!important}

  /* Sidebar is an overlay drawer; it never consumes content width on phones. */
  body.bee-sidebar-wide .sidebar,
  body.bee-sidebar-compact .sidebar,
  .sidebar{
    position:fixed!important;left:0!important;top:0!important;bottom:0!important;
    width:min(86vw,360px)!important;max-width:min(86vw,360px)!important;min-width:0!important;
    height:100dvh!important;z-index:3000!important;overflow-y:auto!important;overflow-x:hidden!important;
    transform:translateX(0)!important;box-shadow:8px 0 30px rgba(0,0,0,.28)!important;
  }
  body.bee-sidebar-hidden .sidebar{transform:translateX(-105%)!important;box-shadow:none!important}

  body.bee-sidebar-wide .main,
  body.bee-sidebar-compact .main,
  body.bee-sidebar-hidden .main,
  .main{
    margin-left:0!important;width:100%!important;max-width:100%!important;min-width:0!important;
  }

  /* Always provide a clear mobile menu button when drawer is closed. */
  body.bee-sidebar-hidden .sidebar-restore{
    display:flex!important;align-items:center!important;justify-content:center!important;
    position:fixed!important;left:10px!important;top:10px!important;z-index:3100!important;
    width:44px!important;height:44px!important;border-radius:11px!important;font-size:21px!important;
  }
  body:not(.bee-sidebar-hidden) .sidebar-restore{display:none!important}

  .topbar{width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:8px 8px 8px 62px!important;gap:6px!important}
  .top-left-brand{min-width:0!important;flex:1 1 120px!important}
  .top-left-brand img{width:135px!important;max-width:100%!important;height:auto!important}
  .top-pills{flex:1 1 100%!important;width:100%!important;justify-content:flex-start!important;gap:5px!important}
  .top-pill{font-size:10px!important;padding:6px 7px!important;white-space:normal!important}
  .layout-toggle{display:flex!important;gap:4px!important}
  .layout-toggle a,.topbar .btn{font-size:11px!important;padding:7px 8px!important}

  .content{width:100%!important;max-width:100%!important;min-width:0!important;padding:8px!important;box-sizing:border-box!important}
  .content>*{max-width:100%!important;box-sizing:border-box!important}
  .demo-banner{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0 0 10px!important;padding:10px 12px!important;font-size:12px!important;line-height:1.45!important;text-align:left!important;word-break:break-word!important;overflow-wrap:anywhere!important}
  .demo-banner b{display:block!important;margin-top:4px!important;overflow-wrap:anywhere!important}

  /* Dashboard/action controls should use phone width instead of becoming narrow towers. */
  .content .btn,.content button,.content input[type=submit]{max-width:100%;white-space:normal}
  .content>.btn,.content>.smallbtn{width:100%!important;margin:4px 0!important;text-align:center!important}
  .card{width:100%!important;max-width:100%!important;min-width:0!important}
  .grid,.stats,.summary-grid{max-width:100%!important}

  /* Tables remain readable by scrolling horizontally, never by squeezing every column. */
  .tablewrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .tablewrap table,.table{min-width:720px!important;width:max-content!important;max-width:none!important}

  .demo-watermark{font-size:32px!important;left:-8%!important;top:52%!important}
}
/* v185 document builder polish */
.invoice-mode-panel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0;padding:14px;background:#fbfcfe;border:1px solid #dbe5f1;border-radius:12px}.doc-line-head{display:grid;grid-template-columns:34px 2fr 3fr .8fr 1fr .8fr auto;gap:8px;align-items:center;padding:8px 6px;margin-bottom:6px;border-top:1px solid #dbe5f1;border-bottom:1px solid #dbe5f1;color:#31445b;font-size:10px;font-weight:800;text-transform:uppercase}.doc-line-head span:first-child{text-align:center}@media(max-width:1000px){.invoice-mode-panel{grid-template-columns:1fr 1fr}.doc-line-head{display:none}}@media(max-width:650px){.invoice-mode-panel{grid-template-columns:1fr}}

/* v207 — VAT PDF audit breakdown */
.vat-print-breakdown{display:none}
@media print{
 .vat-print-breakdown{display:block!important;margin-top:14px}
 .vat-print-breakdown h2{font-size:16px;margin:0 0 6px}.vat-print-breakdown h3{font-size:12px;margin:14px 0 5px}
 .vat-print-detail{font-size:9px!important}.vat-print-detail th,.vat-print-detail td{padding:4px 5px!important}
 .vat-print-recon{margin-top:14px;break-inside:avoid}
}

/* v266 — conservative layout-only refinement
   No accounting, forms, values, workflows or print documents are changed. */
@media screen{
  .content{line-height:1.42}
  .head{gap:12px;flex-wrap:wrap;align-items:flex-start}
  .head>div:first-child{min-width:0;flex:1 1 320px}
  .head>.actionbar,.head>form{flex:0 1 auto}
  .sub{max-width:1100px;line-height:1.45}

  .card,.form-shell,.tablewrap{box-shadow:0 1px 2px rgba(16,24,40,.04),0 8px 22px rgba(16,24,40,.025)}
  .field input,.field select,.field textarea{width:100%;min-width:0}
  input,select,textarea,button,.btn,.smallbtn{font:inherit}
  input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{
    outline:3px solid rgba(255,128,0,.28);outline-offset:2px
  }

  .tablewrap{position:relative;scrollbar-gutter:stable}
  .table thead th,.table>tbody:first-child>tr:first-child>th{position:sticky;top:0;z-index:2}
  .table tbody tr:nth-child(even) td{background:#fcfdff}
  .table tbody tr:hover td{background:#fff7ed}
  .table td,.table th{line-height:1.35}
  .table td.numcell,.table th.numcell,.numcell{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
  .table td:last-child .actionbar{min-width:max-content}

  .actionbar{align-items:center}
  .smallbtn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;border-radius:7px}
  .badge{line-height:1.25;white-space:nowrap}
  .notice{line-height:1.5}
}

@media screen and (max-width:900px){
  .head>.actionbar{width:100%}
  .head>.actionbar .btn{flex:1 1 auto;justify-content:center}
  .grid,.grid2{gap:10px}
}

@media screen and (max-width:760px){
  .head{padding:11px!important}
  .head h1{font-size:18px!important;line-height:1.2}
  .sub{font-size:11px}
  .card,.form-shell{padding:12px!important}
  .actionbar{gap:6px}
  .actionbar .btn{min-height:40px}
  .tablewrap:after{content:'Swipe sideways to view all columns';display:block;position:sticky;left:0;padding:7px 10px;background:#fff8ee;border-top:1px solid #f3dcc5;color:#79512c;font-size:10px}
}
