:root{--bmt:#205334;--bmt-2:#30673f;--bmt-3:#5d9455;--bmt-light:#7eaa62;--mint:#edf3ea;--mint-2:#dfe9db;--gold:#b79654;--gold-soft:#eee5d2;--ink:#1c3527;--muted:#6f7e73;--paper:#f8f6f0;--line:#e2e8df;--white:#fff;--shadow:0 18px 50px rgba(32,83,52,.11)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;color:var(--ink);background:var(--paper)}a{text-decoration:none}.bmt-shell{max-width:1180px}.public-header{height:82px;display:flex;align-items:center;background:rgba(251,250,245,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(32,83,52,.08);position:sticky;top:0;z-index:1000}.brand,.sidebar-brand{display:flex;align-items:center;gap:12px;color:var(--ink)}.brand img{width:54px;height:54px;object-fit:contain}.brand span,.sidebar-brand span{display:flex;flex-direction:column}.brand b,.sidebar-brand b{font-size:16px;letter-spacing:.02em}.brand small,.sidebar-brand small{font-size:10px;color:var(--muted)}.btn-primary-soft{background:linear-gradient(135deg,var(--bmt),var(--bmt-2));border:0;color:#fff!important;border-radius:12px;padding:.75rem 1rem;font-weight:700;box-shadow:0 9px 20px rgba(32,83,52,.18)}.btn-primary-soft:hover{filter:brightness(.97);transform:translateY(-1px)}.btn-ghost{color:var(--bmt);font-weight:700}.hero{padding:78px 0 72px;overflow:hidden;background:radial-gradient(circle at 78% 22%,rgba(201,166,70,.16),transparent 27%),radial-gradient(circle at 13% 5%,rgba(93,148,85,.14),transparent 30%),linear-gradient(180deg,#fbfaf5 0%,#f5f8f3 100%)}.eyebrow{display:inline-flex;gap:8px;align-items:center;background:var(--mint);border:1px solid var(--mint-2);color:var(--bmt);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.hero h1{font-size:clamp(2.4rem,5vw,4.6rem);font-weight:800;line-height:1.04;letter-spacing:-.05em;margin:22px 0 20px;max-width:800px}.hero h1 span{color:var(--bmt)}.hero p{font-size:1.08rem;line-height:1.8;color:var(--muted);max-width:720px}.btn-hero,.btn-hero-light{padding:14px 20px;border-radius:14px;font-weight:800}.btn-hero{color:#fff;background:linear-gradient(135deg,#205334,#3f7a48);border:none;box-shadow:0 14px 28px rgba(32,83,52,.18)}.btn-hero:hover{color:#fff}.btn-hero-light{border:1px solid var(--line);background:#fff;color:var(--ink)}.trust-row{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px;color:#536d5b;font-size:12px;font-weight:600}.trust-row i{color:var(--bmt-2);margin-right:4px}.hero-logo-card{position:relative;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(234,243,237,.86));border:1px solid #e5ece7;border-radius:32px;min-height:440px;box-shadow:var(--shadow);display:grid;place-items:center;overflow:hidden}.hero-logo-card:before{content:"";position:absolute;inset:16px;border:1px solid rgba(201,166,70,.28);border-radius:24px}.hero-logo-card img{width:76%;position:relative;z-index:2;filter:drop-shadow(0 14px 28px rgba(41,84,63,.11))}.light-sheen{position:absolute;width:320px;height:120px;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:rotate(-25deg);top:4%;left:-35%;animation:sheen 9s infinite ease-in-out}@keyframes sheen{0%,60%{left:-45%}85%,100%{left:125%}}.mini-metric{position:absolute;bottom:24px;right:24px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:16px;padding:12px 16px;display:flex;flex-direction:column;z-index:3}.mini-metric small{font-size:10px;color:var(--muted)}.mini-metric strong{font-size:22px;color:var(--bmt)}.product-section,.feature-section{padding:80px 0}.section-heading{max-width:680px;margin-bottom:34px}.section-heading>span,.page-head>div>span,.panel-title span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:var(--bmt-2)}.section-heading h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:800;letter-spacing:-.04em;margin:8px 0 12px}.section-heading p{color:var(--muted);line-height:1.7}.product-card,.feature-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;height:100%;box-shadow:0 10px 30px rgba(50,85,66,.05);transition:.2s}.product-card:hover,.feature-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.product-icon,.feature-card>i{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:var(--mint);color:var(--bmt);font-size:20px;margin-bottom:22px}.product-card>span{font-weight:800}.product-card h3{font-size:1.65rem;font-weight:800;margin:6px 0 0}.product-card small{color:var(--muted);font-size:11px}.product-card p,.feature-card p{color:var(--muted);line-height:1.7;margin:18px 0 0}.feature-section{background:#f4f7f1}.feature-card h3{font-size:1.1rem;font-weight:800}.opening-note{margin-top:24px;background:linear-gradient(135deg,#f9f2de,#fffaf0);border:1px solid #eadbb1;border-radius:18px;padding:18px 20px;display:flex;gap:14px;align-items:flex-start}.opening-note>i{color:var(--gold);font-size:20px;margin-top:2px}.opening-note div{display:flex;flex-direction:column;gap:3px}.opening-note span{color:#806f45;font-size:13px}.public-footer{padding:28px 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.public-footer b{color:var(--bmt)}.login-wrap{min-height:calc(100vh - 154px);display:grid;place-items:center;padding:55px 16px;background:radial-gradient(circle at 50% 0%,rgba(93,148,85,.16),transparent 32%)}.login-card{width:min(470px,100%);background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:var(--shadow)}.login-brand{display:flex;align-items:center;gap:16px;margin-bottom:26px}.login-brand img{width:76px;height:76px;object-fit:contain}.login-brand h1{font-size:1.35rem;font-weight:800;margin:0}.login-brand p{font-size:12px;color:var(--muted);margin:4px 0 0}.form-control,.form-select,.input-group-text{border-color:#dfe8e2;min-height:46px;border-radius:11px}.form-control:focus,.form-select:focus{border-color:#7eaa62;box-shadow:0 0 0 .2rem rgba(32,83,52,.10)}.back-home{display:block;text-align:center;color:var(--muted);font-size:12px;margin-top:18px}.app-body{background:#f7f7f3}.app-shell{display:flex;min-height:100vh}.sidebar{width:258px;background:linear-gradient(180deg,#205334 0%,#17472c 100%);color:#fff;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:1050;box-shadow:12px 0 34px rgba(37,78,58,.08)}.sidebar-brand{padding:18px 18px 16px;border-bottom:1px solid rgba(255,255,255,.08);color:#fff}.sidebar-brand img{width:48px;height:48px;object-fit:contain;background:rgba(255,255,255,.92);border-radius:13px;padding:3px}.sidebar-brand small{color:rgba(255,255,255,.62)}.side-nav{padding:14px 10px;overflow:auto;flex:1}.side-nav a,.sidebar-foot a{display:flex;align-items:center;gap:11px;color:rgba(255,255,255,.78);padding:10px 12px;border-radius:10px;margin:2px 0;font-size:13px;font-weight:600}.side-nav a:hover,.sidebar-foot a:hover{background:rgba(255,255,255,.09);color:#fff}.side-nav i,.sidebar-foot i{width:20px;text-align:center}.nav-label{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.45);padding:18px 12px 6px}.nav-badge{margin-left:auto;background:#c7d6a7;color:#205334;border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;font-size:10px}.sidebar-foot{padding:10px;border-top:1px solid rgba(255,255,255,.08)}.app-main{margin-left:258px;min-width:0;width:calc(100% - 258px)}.topbar{height:72px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:900}.topbar>div:first-of-type{display:flex;flex-direction:column}.topbar strong{font-size:13px}.topbar small{font-size:10px}.top-actions{display:flex;gap:8px}.icon-button{width:40px;height:40px;border:1px solid var(--line);background:#fff;color:var(--bmt);border-radius:11px;display:grid;place-items:center;position:relative}.icon-button b{position:absolute;right:-4px;top:-4px;min-width:18px;height:18px;border-radius:999px;background:#9ab46f;color:#fff;font-size:9px;display:grid;place-items:center}.mobile-menu{display:none;border:0;background:transparent;color:var(--bmt);font-size:20px}.app-content{padding:28px;max-width:1500px;margin:0 auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.page-head h1{font-size:1.75rem;font-weight:800;letter-spacing:-.03em;margin:4px 0 2px}.page-head p{margin:0;color:var(--muted);font-size:12px}.back-link{display:inline-flex;gap:6px;align-items:center;font-size:11px;color:var(--bmt);font-weight:700;margin-bottom:6px}.metric-card,.fund-card,.balance-card,.panel-card,.chat-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 24px rgba(47,81,64,.04)}.metric-card{padding:20px;display:grid;grid-template-columns:40px 1fr;gap:3px 12px}.metric-card>i{grid-row:1/3;width:40px;height:40px;display:grid;place-items:center;background:var(--mint);color:var(--bmt);border-radius:12px}.metric-card span{font-size:10px;color:var(--muted)}.metric-card strong{font-size:1.2rem}.fund-card{padding:18px;display:flex;align-items:center;gap:14px}.fund-card>i{width:44px;height:44px;display:grid;place-items:center;background:linear-gradient(135deg,var(--mint),#f5f8f3);color:var(--bmt);border-radius:13px}.fund-card div{display:flex;flex-direction:column}.fund-card span{font-size:10px;color:var(--muted)}.fund-card strong{font-size:1.05rem}.balance-card{padding:22px;display:block;color:var(--ink);height:100%;transition:.2s}.balance-card:hover{color:var(--ink);transform:translateY(-2px);box-shadow:var(--shadow)}.balance-card>div{display:flex;justify-content:space-between;gap:12px}.balance-card span{font-weight:800;color:var(--bmt)}.balance-card small{font-size:10px;color:var(--muted)}.balance-card h3{font-size:1.55rem;font-weight:800;margin:26px 0 16px}.balance-card em{font-style:normal;font-size:11px;color:var(--bmt-2);font-weight:700}.panel-card{padding:22px}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.panel-title h2,.panel-card>h2{font-size:1.08rem;font-weight:800;margin:3px 0 0}.panel-title>a{font-size:11px;color:var(--bmt);font-weight:700}.bmt-table{margin:0;vertical-align:middle}.bmt-table thead th{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#809087;border-bottom-color:#e7ece8;padding:11px 12px;white-space:nowrap}.bmt-table td{font-size:12px;padding:12px;border-bottom-color:#eef2ef}.bmt-table td small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.bmt-table td a{color:var(--bmt);font-weight:800}.form-card{max-width:900px}.form-label{font-size:11px;font-weight:700;color:#526b58}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.soft-check{display:flex;gap:10px;align-items:flex-start;background:#f5f8f3;border:1px solid var(--line);border-radius:13px;padding:12px 14px}.soft-check input{margin-top:4px}.soft-check span{display:flex;flex-direction:column}.soft-check b{font-size:12px}.soft-check small{font-size:10px;color:var(--muted)}.big-balance{display:flex;flex-direction:column;align-items:flex-end}.big-balance small{font-size:10px;color:var(--muted)}.big-balance strong{font-size:1.6rem;color:var(--bmt)}.status-pill{padding:8px 12px;border-radius:999px;background:var(--mint);color:var(--bmt);font-size:10px;font-weight:800}.status-paid{background:#e1f3e7}.status-rejected{background:#fae9e8;color:#a94742}.status-waiting_verification{background:#fff4d6;color:#8e6c13}.invoice-amount{padding:22px;background:linear-gradient(135deg,#edf3ea,#f7f9f5);border-radius:15px;display:flex;flex-direction:column;margin-bottom:22px}.invoice-amount small{color:var(--muted);font-size:10px}.invoice-amount strong{font-size:2rem;color:var(--bmt);font-weight:800}.invoice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0}.invoice-grid div{border-top:1px solid var(--line);padding-top:12px}.invoice-grid dt{font-size:9px;text-transform:uppercase;color:var(--muted)}.invoice-grid dd{font-size:12px;margin:4px 0 0}.proof-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.proof-row:last-child{border-bottom:0}.proof-row>div{display:grid;grid-template-columns:22px 1fr;align-items:center}.proof-row small{grid-column:2;font-size:9px;color:var(--muted)}.sticky-card{position:sticky;top:96px}.list-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:4px;font-size:11px}.notification-item{display:flex;gap:12px;align-items:flex-start;padding:15px 6px;border-bottom:1px solid var(--line)}.notification-item.unread{background:#f5f8f3}.notification-item input{margin-top:5px}.notification-dot{width:36px;height:36px;display:grid;place-items:center;background:var(--mint);color:var(--bmt);border-radius:11px;flex:0 0 auto}.notification-item strong{font-size:12px}.notification-item small{font-size:9px;color:var(--muted)}.notification-item p{font-size:11px;color:var(--muted);margin:3px 0}.notification-item a{font-size:10px;color:var(--bmt);font-weight:700}.thread-item{display:grid;grid-template-columns:42px 1fr 18px;gap:12px;align-items:center;padding:14px;border-bottom:1px solid var(--line);color:var(--ink)}.thread-item:hover{background:#f7faf8;color:var(--ink)}.thread-avatar{width:42px;height:42px;background:var(--mint);color:var(--bmt);display:grid;place-items:center;border-radius:12px}.thread-item strong{font-size:12px}.thread-item p{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:650px;margin:2px 0}.thread-item small{font-size:9px;color:#93a199}.chat-card{overflow:hidden}.chat-body{min-height:420px;max-height:62vh;overflow:auto;padding:20px;background:linear-gradient(180deg,#f7f8f4,#f4f7f1)}.chat-msg{display:flex;margin:10px 0}.chat-msg.mine{justify-content:flex-end}.chat-msg>div{max-width:min(620px,85%);background:#fff;border:1px solid var(--line);border-radius:15px 15px 15px 4px;padding:10px 13px;box-shadow:0 4px 14px rgba(47,81,64,.04)}.chat-msg.mine>div{background:var(--bmt);color:#fff;border-color:var(--bmt);border-radius:15px 15px 4px 15px}.chat-msg strong{font-size:9px}.chat-msg p{font-size:12px;white-space:normal;margin:3px 0}.chat-msg small{font-size:8px;opacity:.7}.chat-compose{padding:14px;background:#fff;border-top:1px solid var(--line)}.empty-state{text-align:center;padding:55px 20px;background:#fff;border:1px dashed #d9e5dd;border-radius:18px;color:var(--muted)}.empty-state i{font-size:30px;color:#8cab80;margin-bottom:10px}.empty-state h3{font-size:1rem;color:var(--ink);font-weight:800}.empty-state p{font-size:12px;margin:0}.empty-state.compact{padding:32px 20px}.sidebar-overlay{display:none}.alert{border-radius:12px;font-size:12px}@media(max-width:991.98px){.hero{padding-top:45px}.hero-logo-card{min-height:360px}.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:translateX(0)}.sidebar-overlay.show{display:block;position:fixed;inset:0;background:rgba(19,40,29,.35);z-index:1040}.app-main{margin-left:0;width:100%}.mobile-menu{display:block}.topbar{padding:0 18px}.app-content{padding:20px}.topbar>div:first-of-type{margin-right:auto;margin-left:12px}}@media(max-width:767.98px){.public-header{height:70px}.brand img{width:45px;height:45px}.brand small{display:none}.hero h1{font-size:2.45rem}.hero-logo-card{min-height:320px}.product-section,.feature-section{padding:55px 0}.page-head{align-items:flex-start;flex-direction:column}.big-balance{align-items:flex-start}.invoice-grid{grid-template-columns:1fr}.panel-card{padding:16px}.app-content{padding:16px}.thread-item p{max-width:230px}}
/* BMT MRBJ 2026 brand treatment: continuous green light gradient, no hard metallic border. */
.brand-mark{position:relative;display:block;width:54px;height:54px;overflow:hidden;border-radius:15px;flex:0 0 auto;background:#f8f6f0;box-shadow:0 8px 20px rgba(32,83,52,.18)}
.brand-mark img{position:absolute!important;width:120px!important;height:120px!important;max-width:none!important;left:50%;top:-22px;transform:translateX(-50%);object-fit:contain!important;filter:none!important}
.sidebar-brand .brand-mark{width:48px;height:48px;border-radius:13px;background:#f8f6f0;box-shadow:0 7px 18px rgba(0,0,0,.16)}
.sidebar-brand .brand-mark img{width:112px!important;height:112px!important;top:-20px}
.login-brand .brand-mark{width:76px;height:76px;border-radius:20px}
.login-brand .brand-mark img{width:170px!important;height:170px!important;top:-31px}
.hero-logo-card{background:radial-gradient(circle at 28% 18%,rgba(126,170,98,.20),transparent 30%),linear-gradient(145deg,rgba(255,255,255,.98),rgba(237,243,234,.92))}
.hero-logo-card:before{border-color:rgba(32,83,52,.10)}
.hero-logo-card img{width:82%;filter:drop-shadow(0 20px 32px rgba(32,83,52,.14))}
.sidebar-brand>img{display:none}
.panel-card,.metric-card,.fund-card,.balance-card,.chat-card{border-color:rgba(32,83,52,.10)}

/* =========================================================
   BMT MRBJ v2.2 UI refinement
   ========================================================= */
html,body{scrollbar-width:thin;scrollbar-color:rgba(32,83,52,.62) transparent}
*::-webkit-scrollbar{width:7px;height:7px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(126,170,98,.78),rgba(32,83,52,.78));border-radius:999px;border:2px solid transparent;background-clip:padding-box}
*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(93,148,85,.9),rgba(23,71,44,.9));border:1px solid transparent;background-clip:padding-box}
.side-nav,.chat-body,.table-responsive{scrollbar-width:thin;scrollbar-color:rgba(202,221,190,.55) transparent}
.side-nav::-webkit-scrollbar{width:5px}.side-nav::-webkit-scrollbar-thumb{background:rgba(220,235,211,.44);border-radius:999px}

/* Keep the sidebar brand visually consistent in every interaction state. */
.sidebar-brand,.sidebar-brand:link,.sidebar-brand:visited,.sidebar-brand:hover,.sidebar-brand:focus,.sidebar-brand:active{color:#fff!important;text-decoration:none!important;outline:0}
.sidebar-brand .brand-copy b,.sidebar-brand:hover .brand-copy b,.sidebar-brand:focus .brand-copy b{color:#fff!important;text-decoration:none!important}
.sidebar-brand .brand-copy small,.sidebar-brand:hover .brand-copy small{color:rgba(255,255,255,.68)!important;text-decoration:none!important}
.sidebar-brand{min-height:82px;transition:background .2s ease,padding .25s ease}
.sidebar-brand:hover{background:rgba(255,255,255,.035)}

/* Desktop sidebar collapse. */
.app-main,.sidebar{transition:width .25s ease,margin-left .25s ease,transform .25s ease}
.desktop-sidebar-toggle{display:inline-grid;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--bmt);font-size:15px;box-shadow:0 5px 16px rgba(32,83,52,.04);transition:.2s ease}
.desktop-sidebar-toggle:hover{background:var(--mint);border-color:#cbdcc6;transform:translateY(-1px)}
.topbar-left{display:flex!important;flex-direction:row!important;align-items:center;gap:12px;min-width:0}
.welcome-copy{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.app-body.sidebar-collapsed .sidebar{width:78px}
.app-body.sidebar-collapsed .app-main{margin-left:78px;width:calc(100% - 78px)}
.app-body.sidebar-collapsed .sidebar-brand{justify-content:center;padding-left:10px;padding-right:10px}
.app-body.sidebar-collapsed .sidebar-brand .brand-copy,.app-body.sidebar-collapsed .side-nav a span,.app-body.sidebar-collapsed .sidebar-foot a span,.app-body.sidebar-collapsed .nav-label,.app-body.sidebar-collapsed .nav-badge{display:none}
.app-body.sidebar-collapsed .side-nav{padding-left:10px;padding-right:10px}
.app-body.sidebar-collapsed .side-nav a,.app-body.sidebar-collapsed .sidebar-foot a{justify-content:center;padding-left:10px;padding-right:10px;min-height:44px}
.app-body.sidebar-collapsed .side-nav i,.app-body.sidebar-collapsed .sidebar-foot i{width:auto;font-size:16px}
.app-body.sidebar-collapsed .sidebar-foot{padding:10px}

/* Navigation rhythm and active states. */
.side-nav a,.sidebar-foot a{min-height:42px;line-height:1.25;padding:10px 13px;border-radius:11px;transition:background .16s ease,color .16s ease,transform .16s ease}
.side-nav a.active,.sidebar-foot a.active{background:linear-gradient(135deg,rgba(186,215,169,.25),rgba(255,255,255,.12));color:#fff;box-shadow:inset 3px 0 0 #b9d69e}
.side-nav a:hover,.sidebar-foot a:hover{transform:translateX(1px)}
.nav-label{padding-top:17px;padding-bottom:7px}

/* Forms and controls: comfortable touch targets and consistent spacing. */
.form-control,.form-select,.input-group-text{min-height:46px;border-radius:12px;padding:.68rem .88rem;border-color:#dce6de;background-color:#fff;font-size:.9rem;line-height:1.35}
textarea.form-control{min-height:108px;line-height:1.55;padding:.8rem .9rem;resize:vertical}
.form-select{padding-right:2.4rem}
.input-group>.form-control,.input-group>.form-select{border-radius:0 12px 12px 0}.input-group>.input-group-text{border-radius:12px 0 0 12px;padding-left:.9rem;padding-right:.9rem;background:#f1f5ef;color:var(--bmt);font-weight:700}
.form-label{display:block;margin:0 0 .45rem;font-size:.78rem;font-weight:700;line-height:1.35;color:#466052}
.form-hint{display:block;margin-top:.45rem;font-size:.72rem;line-height:1.45}
.form-card{max-width:960px;padding:26px}.wide-form-card{max-width:1120px}
.form-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:26px;padding-top:20px}
.btn{border-radius:11px;min-height:42px;padding:.63rem 1rem;line-height:1.25;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:.15rem;white-space:normal}
.btn-sm{min-height:36px;padding:.48rem .78rem;font-size:.78rem;border-radius:9px}
.btn-primary-soft{padding:.68rem 1.05rem;box-shadow:0 9px 20px rgba(32,83,52,.14)}
.btn-primary-soft i,.btn-hero i{flex:0 0 auto}
.btn-light{border-color:#e1e7e2;background:#f8faf8;color:#375141}
.btn-light:hover{background:#eef4ed;color:var(--bmt)}
.form-section-title{display:flex;align-items:center;gap:12px;padding:0 0 18px;margin:0 0 20px;border-bottom:1px solid var(--line)}
.form-section-title>i{width:42px;height:42px;border-radius:12px;background:var(--mint);color:var(--bmt);display:grid;place-items:center}
.form-section-title>div{display:flex;flex-direction:column;gap:2px}.form-section-title strong{font-size:.96rem}.form-section-title small{font-size:.74rem;color:var(--muted)}
.compact-form{background:#f8faf7;border:1px solid #e3eae3;border-radius:15px;padding:16px}
.switch-row{display:inline-flex;align-items:center;gap:9px;min-height:36px;margin:0;cursor:pointer;font-size:.82rem;font-weight:700;color:#476253}
.switch-row input{width:18px;height:18px;accent-color:var(--bmt)}

/* Page header and cards. */
.app-content{padding:28px 30px 46px;width:100%}
.page-head{align-items:center;margin-bottom:22px}.page-head>div{min-width:0}.page-head h1{line-height:1.15}.page-head p{line-height:1.55;max-width:760px;margin-top:5px}
.panel-card{padding:23px}.panel-title{gap:14px}.panel-title>div{min-width:0}.panel-count{font-size:.75rem;color:var(--muted);white-space:nowrap}
.service-note{display:flex;align-items:flex-start;gap:12px;padding:15px 17px;border:1px solid #dfe8dd;border-radius:14px;background:linear-gradient(135deg,#f5f9f3,#fbfcfa)}
.service-note>i{width:34px;height:34px;display:grid;place-items:center;background:#e6f0e1;color:var(--bmt);border-radius:10px;flex:0 0 auto}.service-note>div{display:flex;flex-direction:column;gap:3px}.service-note strong{font-size:.82rem}.service-note span{font-size:.73rem;color:var(--muted);line-height:1.45}
.product-tabs{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:3px 1px 5px}
.product-tabs a,.product-tabs button{appearance:none;border:1px solid #dae5dc;background:#fff;color:#51685a;border-radius:12px;padding:10px 15px;min-height:42px;display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:800;white-space:nowrap;transition:.18s ease}
.product-tabs a:hover,.product-tabs button:hover{border-color:#bcd1b6;color:var(--bmt);background:#f7faf6}.product-tabs a.active,.product-tabs button.active{background:linear-gradient(135deg,var(--bmt),#326a42);border-color:var(--bmt);color:#fff;box-shadow:0 8px 20px rgba(32,83,52,.14)}
.admin-tab-panel{display:none}.admin-tab-panel.active{display:block}
.master-list{display:flex;flex-direction:column;gap:8px}.master-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e6ece6;border-radius:12px;background:#fff}.master-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.master-row strong{font-size:.78rem}.master-row small{font-size:.68rem;color:var(--muted)}.empty-inline{padding:16px;text-align:center;color:var(--muted);font-size:.75rem}.status-muted{background:#eef1ef;color:#7d8981}

/* Tables remain compact but readable. */
.table-responsive{border-radius:12px}.bmt-table{min-width:680px}.bmt-table thead th{padding:12px 13px}.bmt-table td{padding:13px;line-height:1.35}.bmt-table td strong{font-weight:800}.bmt-table td small{line-height:1.4;margin-top:4px}

/* Sembako cards and checkout. */
.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.shop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.shop-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:0 8px 24px rgba(47,81,64,.045)}.shop-card-media{aspect-ratio:4/3;background:#f1f5ef;display:grid;place-items:center;overflow:hidden;position:relative}.shop-card-media img{width:100%;height:100%;object-fit:cover}.shop-card-media .shop-placeholder{font-size:2rem;color:#8eaa85}.shop-stock-badge{position:absolute;left:10px;top:10px;background:#fff5d9;color:#826516;border:1px solid #f0dfa9;border-radius:999px;padding:5px 8px;font-size:.65rem;font-weight:800}.shop-card-body{padding:15px;display:flex;flex-direction:column;gap:8px;flex:1}.shop-card-title{font-size:.9rem;font-weight:800;line-height:1.35;margin:0}.shop-card-meta{font-size:.7rem;color:var(--muted)}.shop-card-price{font-size:1rem;font-weight:800;color:var(--bmt)}.shop-card-price s{font-size:.68rem;color:#9aa69f;font-weight:500;margin-right:5px}.shop-card .btn{margin-top:auto;width:100%}
.cart-summary{background:linear-gradient(145deg,#f6faf4,#fff);border:1px solid #dfe9dd;border-radius:16px;padding:18px}.summary-row{display:flex;justify-content:space-between;gap:14px;padding:8px 0;font-size:.8rem}.summary-row.total{border-top:1px solid var(--line);margin-top:7px;padding-top:14px;font-size:.95rem;font-weight:800}.category-chips{display:flex;gap:7px;flex-wrap:wrap}.category-chips span{padding:6px 9px;background:var(--mint);border-radius:999px;font-size:.7rem;color:var(--bmt);font-weight:700}.package-admin-card{height:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:11px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfcfa}.package-admin-card>i{width:40px;height:40px;display:grid;place-items:center;background:var(--mint);color:var(--bmt);border-radius:11px}.package-admin-card>div{display:flex;flex-direction:column;min-width:0}.package-admin-card strong{font-size:.8rem}.package-admin-card span{font-size:.8rem;color:var(--bmt);font-weight:800}.package-admin-card small{font-size:.68rem;color:var(--muted);line-height:1.4}.package-admin-card .btn{grid-column:3}.current-product-photo img{width:92px;height:72px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
.product-fee{display:flex;align-items:center;gap:7px;margin-top:16px;padding-top:13px;border-top:1px solid #eef1ed;color:#597062;font-size:.72rem}.product-fee i{color:var(--bmt)}.product-fee strong{color:var(--bmt)}

/* Bottom navigation is mobile-only. */
.mobile-bottom-nav{display:none}

@media (max-width:1199.98px){.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:991.98px){
  .desktop-sidebar-toggle{display:none}
  .mobile-menu{display:inline-grid;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:12px;background:#fff}
  .app-body.sidebar-collapsed .sidebar{width:258px}
  .app-body.sidebar-collapsed .app-main{margin-left:0;width:100%}
  .app-body.sidebar-collapsed .sidebar-brand{justify-content:flex-start;padding:18px 18px 16px}
  .app-body.sidebar-collapsed .sidebar-brand .brand-copy,.app-body.sidebar-collapsed .side-nav a span,.app-body.sidebar-collapsed .sidebar-foot a span,.app-body.sidebar-collapsed .nav-label,.app-body.sidebar-collapsed .nav-badge{display:flex}
  .app-body.sidebar-collapsed .side-nav a,.app-body.sidebar-collapsed .sidebar-foot a{justify-content:flex-start}
  .app-main{margin-left:0!important;width:100%!important}
  .topbar{padding:0 18px;height:68px}
  .app-content{padding:22px 18px 92px}
  .sidebar-overlay.show{display:block;position:fixed;inset:0;background:rgba(14,38,25,.38);backdrop-filter:blur(2px);z-index:1040}
  .mobile-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));height:66px;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border:1px solid rgba(32,83,52,.12);border-radius:18px;box-shadow:0 12px 38px rgba(24,61,38,.18);z-index:1030;padding:5px 7px}
  .mobile-bottom-nav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#708077;border-radius:13px;font-size:.59rem;font-weight:700;min-width:0;line-height:1.1}
  .mobile-bottom-nav a i{font-size:1rem}.mobile-bottom-nav a.active{color:var(--bmt);background:#eff5ec}.mobile-bottom-nav a b{position:absolute;top:3px;right:calc(50% - 19px);min-width:16px;height:16px;border-radius:999px;background:#789f60;color:#fff;font-size:.52rem;display:grid;place-items:center;padding:0 4px}
  
  .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767.98px){
  .topbar .welcome-copy{max-width:150px}.topbar .welcome-copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .top-actions{gap:5px}.icon-button{width:38px;height:38px}
  .page-head{align-items:flex-start;flex-direction:column;gap:14px}.page-head>.btn{width:100%}
  .panel-card{padding:17px}.form-card{padding:18px}.form-actions>*{flex:1 1 140px}
  .service-note{padding:13px}.product-tabs a,.product-tabs button{padding:9px 12px}
  .invoice-grid{grid-template-columns:1fr}
  .sticky-card{position:static}
}
@media (max-width:575.98px){
  .app-content{padding-left:13px;padding-right:13px}
  .topbar{padding:0 12px}.topbar-left{gap:8px}.welcome-copy small{display:none}.welcome-copy strong{font-size:.78rem}
  .shop-grid{grid-template-columns:1fr}
  .mobile-bottom-nav{left:7px;right:7px;bottom:max(7px,env(safe-area-inset-bottom));border-radius:16px}
  .mobile-bottom-nav a span{font-size:.56rem}
  
  .compact-form{padding:13px}.master-row{align-items:flex-start}.panel-title{align-items:flex-start}
}

/* Sembako Online */
.head-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.button-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;margin-left:6px;border-radius:999px;background:rgba(255,255,255,.2);font-size:.65rem}
.shop-hero-card{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(135deg,#eaf3e6,#fbfcf9);border:1px solid #dbe7d7;border-radius:18px;padding:18px 20px}.shop-hero-card>div{display:flex;align-items:center;gap:13px}.shop-hero-card>div>i{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:#fff;color:var(--bmt);box-shadow:0 5px 16px rgba(32,83,52,.07)}.shop-hero-card>div>div{display:flex;flex-direction:column;gap:2px}.shop-hero-card strong{font-size:.9rem}.shop-hero-card span{font-size:.73rem;color:var(--muted)}
.shop-filter-card{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:16px 18px}.shop-search{flex:1 1 430px}.shop-filter-card .category-chips{flex:1 1 320px;justify-content:flex-end}.category-chips a{padding:7px 10px;border:1px solid #dce6da;border-radius:999px;background:#fff;color:#617367;font-size:.7rem;font-weight:700;white-space:nowrap}.category-chips a:hover,.category-chips a.active{background:var(--bmt);border-color:var(--bmt);color:#fff}
.shop-product-card{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(32,83,52,.11);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(47,81,64,.045);transition:transform .18s ease,box-shadow .18s ease}.shop-product-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(32,83,52,.09)}.shop-product-image{position:relative;aspect-ratio:4/3;background:linear-gradient(145deg,#eef4eb,#f8faf7);display:grid;place-items:center;overflow:hidden}.shop-product-image>img{width:100%;height:100%;object-fit:cover}.shop-product-image>i{font-size:2rem;color:#7f9c78}.stock-tag{position:absolute;left:9px;top:9px;background:#fff3cd;border:1px solid #f0d98b;color:#806219;border-radius:999px;padding:5px 8px;font-size:.61rem;font-weight:800}.shop-product-body{padding:14px;display:flex;flex-direction:column;min-height:190px;gap:5px}.shop-product-body>small{font-size:.65rem;color:#819088}.shop-product-body h3{font-size:.88rem;line-height:1.35;font-weight:800;margin:1px 0;color:var(--ink)}.product-unit{font-size:.66rem;color:var(--muted)}.shop-price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;margin:5px 0 7px}.shop-price del{font-size:.65rem;color:#a3ada7}.shop-price strong{font-size:.95rem;color:var(--bmt)}.product-add-form{margin-top:auto}
.shop-cart-list{display:flex;flex-direction:column}.shop-cart-row{display:grid;grid-template-columns:62px minmax(0,1fr) 94px 120px 34px;align-items:center;gap:13px;padding:14px 0;border-bottom:1px solid var(--line)}.shop-cart-row:last-child{border-bottom:0}.cart-thumb{width:62px;height:62px;border-radius:12px;overflow:hidden;background:#eef4eb;display:grid;place-items:center;color:#789672}.cart-thumb img{width:100%;height:100%;object-fit:cover}.cart-copy{display:flex;flex-direction:column;min-width:0}.cart-copy strong{font-size:.8rem}.cart-copy small{font-size:.66rem;color:var(--muted);margin:2px 0}.cart-copy span{font-size:.74rem;color:var(--bmt);font-weight:700}.cart-qty label{display:block;font-size:.62rem;color:var(--muted);margin-bottom:4px}.cart-qty .form-control{min-height:38px;padding:.45rem .6rem}.cart-line-total{font-size:.78rem;text-align:right}.cart-remove{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#fff3f1;color:#a95148}.cart-remove:hover{background:#fce7e4;color:#8f382f}
.order-summary{display:flex;flex-direction:column;gap:1px}.order-summary>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;font-size:.78rem}.order-summary>small{font-size:.68rem;color:var(--muted);line-height:1.45;margin-top:5px}.order-summary hr{margin:8px 0;border-color:var(--line);opacity:1}.order-summary .grand{font-size:.95rem}.order-summary .grand strong{font-size:1.1rem;color:var(--bmt)}
.payment-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.payment-card{position:relative;cursor:pointer}.payment-card input{position:absolute;opacity:0;pointer-events:none}.payment-card>span{min-height:110px;border:1px solid #dfe7df;border-radius:15px;background:#fff;padding:16px;display:flex;flex-direction:column;gap:4px;transition:.18s ease}.payment-card>span>i{color:var(--bmt);font-size:1.15rem;margin-bottom:5px}.payment-card b{font-size:.82rem}.payment-card small{font-size:.68rem;color:var(--muted);line-height:1.4}.payment-card input:checked+span{border-color:#90b184;background:#f3f8f0;box-shadow:0 0 0 3px rgba(126,170,98,.11)}
.package-card{height:100%;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(47,81,64,.04)}.package-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:var(--mint);color:var(--bmt);margin-bottom:16px}.package-card>span{font-size:.65rem;color:var(--bmt);font-weight:800;text-transform:uppercase;letter-spacing:.07em}.package-card h3{font-size:1rem;font-weight:800;margin:5px 0}.package-card p{font-size:.73rem;color:var(--muted);line-height:1.5;flex:1}.package-card>strong{font-size:1.05rem;color:var(--bmt)}
.order-items{display:flex;flex-direction:column}.order-items>div{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.order-items>div>div{display:flex;flex-direction:column}.order-items strong{font-size:.78rem}.order-items small{font-size:.67rem;color:var(--muted);margin-top:3px}.bank-detail{display:flex;flex-direction:column;padding:14px;border:1px solid var(--line);border-radius:13px;background:#f7faf6}.bank-detail small{font-size:.66rem;color:var(--muted)}.bank-detail strong{font-size:.8rem;margin:4px 0}.bank-detail span{font-size:.7rem;color:#5f7165}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-grid>div{display:flex;flex-direction:column;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fafcf9}.detail-grid small{font-size:.63rem;color:var(--muted)}.detail-grid strong{font-size:.8rem;margin:3px 0}.detail-grid span{font-size:.68rem;color:#617368}
.status-pending_payment,.status-waiting_validation{background:#fff2ce;color:#816313}.status-processing{background:#e7f0ff;color:#315c93}.status-ready{background:#e4f4e8;color:#2e7441}.status-completed{background:#def0e2;color:#25673a}.status-cancelled,.status-rejected{background:#f9e5e3;color:#94473f}
@media(max-width:767.98px){.shop-hero-card{align-items:flex-start;flex-direction:column}.shop-hero-card>.btn{width:100%}.shop-filter-card .category-chips{justify-content:flex-start}.shop-cart-row{grid-template-columns:52px minmax(0,1fr) 78px 30px;gap:10px}.cart-thumb{width:52px;height:52px}.cart-line-total{grid-column:2/4;text-align:left;margin-top:-3px}.cart-remove{grid-column:4;grid-row:1}.payment-options{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.head-actions{width:100%}.head-actions .btn{flex:1}.shop-product-body{padding:12px;min-height:180px}.shop-product-body h3{font-size:.82rem}.shop-cart-row{grid-template-columns:46px minmax(0,1fr) 72px 28px}.cart-thumb{width:46px;height:46px}.cart-line-total{grid-column:2/4}.shop-filter-card{padding:13px}}

/* v2.3 interface refinements */
.sidebar-brand,.sidebar-brand:hover,.sidebar-brand:focus{color:#fff!important;text-decoration:none!important}
.sidebar-brand b,.sidebar-brand:hover b{color:#fff!important;text-decoration:none!important}
html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#6f9478 #eef2eb}
::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:#eef2eb;border-radius:999px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#85a78b,#315f43);border-radius:999px;border:1px solid #eef2eb}::-webkit-scrollbar-thumb:hover{background:#315f43}
.btn{min-height:42px;padding:.62rem 1.05rem;display:inline-flex;align-items:center;justify-content:center;gap:.25rem;border-radius:12px}.btn-sm{min-height:34px;padding:.4rem .7rem}.form-control,.form-select,.input-group-text{min-height:44px;padding:.62rem .8rem}.input-group-text{display:flex;align-items:center}.form-label{margin-bottom:.45rem}.form-actions{gap:.75rem;flex-wrap:wrap}.service-note span{line-height:1.55}.proof-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid #e8eee8}.proof-row:last-child{border-bottom:0}.proof-row small{display:block;margin-top:.25rem;color:#758276}.invoice-meta{display:grid;grid-template-columns:1fr 1.4fr;gap:.65rem 1rem;margin:0}.invoice-meta dt{color:#718073;font-weight:600}.invoice-meta dd{margin:0;text-align:right;font-weight:700;color:#183e2b}

/* v2.3.1 public landing safeguard */
.public-body{min-height:100vh;display:flex;flex-direction:column;background:var(--paper)}
.public-body>main{flex:1;min-width:0}
.public-header .brand{min-width:0;flex:0 1 auto;color:var(--ink)!important;text-decoration:none!important}
.public-header .brand:hover,.public-header .brand:focus{color:var(--ink)!important;text-decoration:none!important}
.public-header .brand-mark{width:54px;height:54px;flex:0 0 54px}
.public-header .brand-mark img{width:120px!important;height:120px!important;max-width:none!important}
.public-header nav{flex:0 0 auto}
.hero .hero-logo-card img{max-width:none}
.public-footer .bmt-shell{min-height:24px}
.public-footer span,.public-footer small{line-height:1.5}
@media(max-width:767.98px){
  .public-header .brand-mark{width:44px;height:44px;flex-basis:44px;border-radius:12px}
  .public-header .brand-mark img{width:100px!important;height:100px!important;top:-19px}
  .public-header .brand b{font-size:14px}
  .public-header .brand small{display:block;font-size:9px}
  .public-header .btn{min-height:38px;padding:.5rem .75rem}
  .public-header .btn span{display:none}
  .opening-note{align-items:flex-start;flex-wrap:wrap}
  .opening-note .btn{width:100%;margin-left:0!important;margin-top:6px}
}
