@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#101b2d;--navy2:#182842;--red:#ed1c24;--gold:#c7a66a;--ink:#182230;--muted:#758094;--line:#e5e9ef;--bg:#f4f6f9;--white:#fff;--green:#16845b;--shadow:0 12px 32px rgba(16,27,45,.07)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',sans-serif}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.035em;margin:0}h1{font-size:29px;font-weight:800}h2{font-size:17px;font-weight:800}p{line-height:1.6}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--gold);text-transform:uppercase;margin-bottom:9px}
.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;gap:32px;position:sticky;top:0;z-index:20;box-shadow:0 3px 15px rgba(16,27,45,.025)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;min-width:210px}.brand img{width:142px;max-height:36px;object-fit:contain}.brand span{font-size:9px;font-weight:800;letter-spacing:.13em;color:var(--muted);border-left:1px solid var(--line);padding-left:12px;white-space:nowrap}
.mainnav{display:flex;align-items:center;gap:6px;flex:1;height:100%}.mainnav>a,.navgroup>button{border:0;background:transparent;text-decoration:none;color:#586477;padding:12px 12px;border-radius:8px;font:600 12px 'DM Sans',sans-serif;cursor:pointer;white-space:nowrap}.mainnav>a:hover,.navgroup>button:hover,.mainnav>a.active{background:#f2f4f7;color:var(--navy)}.navgroup{position:relative}.dropdown{display:none;position:absolute;top:42px;left:0;background:#fff;min-width:200px;padding:8px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.navgroup:hover .dropdown,.navgroup:focus-within .dropdown{display:block}.dropdown a{display:block;padding:10px 12px;color:#485366;text-decoration:none;border-radius:7px;font-size:12px}.dropdown a:hover{background:#f5f6f8;color:var(--navy)}.userarea{position:relative}.profile-trigger{display:flex;align-items:center;gap:9px;background:none;border:0;cursor:pointer;text-align:left;font-weight:700;font-size:12px;color:var(--ink);white-space:nowrap}.profile-trigger small{display:block;font-size:10px;color:var(--muted);font-weight:500;margin-top:3px}.avatar{width:34px;height:34px;display:grid;place-items:center;background:var(--navy);color:#fff;border-radius:11px;font-weight:800}.profile-menu{display:none;position:absolute;right:0;top:46px;min-width:170px;padding:7px;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.profile-menu.show{display:block}.profile-menu a,.profile-menu button{display:block;width:100%;padding:10px;background:none;border:0;text-align:left;text-decoration:none;color:var(--ink);font:500 12px 'DM Sans';border-radius:7px;cursor:pointer}.profile-menu a:hover,.profile-menu button:hover{background:#f3f5f8}
.container{max-width:1480px;margin:0 auto;padding:32px 30px 50px;min-height:calc(100vh - 130px)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 25px}.page-heading p{margin:7px 0 0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:21px 22px;box-shadow:0 3px 14px rgba(16,27,45,.02);position:relative;overflow:hidden}.stat:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--gold)}.stat span{display:block;color:var(--muted);font-size:12px;font-weight:600}.stat strong{display:block;font:800 25px Manrope,sans-serif;letter-spacing:-.04em;margin:12px 0 7px}.stat small{color:#98a1af;font-size:11px}.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:24px;margin-bottom:22px;box-shadow:0 3px 14px rgba(16,27,45,.025)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.panel-head p{margin:5px 0 0;font-size:12px}.panel-head a{color:var(--navy);font-weight:700;text-decoration:none;font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#fff;border:1px solid #dbe0e7;color:var(--navy);padding:11px 15px;border-radius:9px;text-decoration:none;font:700 12px 'DM Sans';cursor:pointer;white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 12px #17253a0d}.btn.primary{background:var(--navy);border-color:var(--navy);color:white}.btn.primary:hover{background:#213653}.btn.full{width:100%;margin-top:7px;padding:13px}
.table-wrap{overflow:auto;width:100%}table{border-collapse:collapse;width:100%;font-size:12px;min-width:650px}th{text-align:left;color:#818b9a;font-size:10px;text-transform:uppercase;letter-spacing:.08em;background:#f8f9fb;font-weight:800}th,td{padding:13px 12px;border-bottom:1px solid #edf0f4;vertical-align:top}td{color:#364154}tbody tr:hover{background:#fbfcfd}tbody tr:last-child td{border-bottom:0}.empty{text-align:center;color:#98a1af;padding:28px}.filterbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:20px;padding:15px;background:#fff;border:1px solid var(--line);border-radius:12px}.filterbar label{min-width:150px;max-width:220px}.filterbar input{margin-top:6px}
label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:#566174}input,select,textarea{width:100%;border:1px solid #dfe4eb;border-radius:8px;background:#fff;padding:11px 12px;color:var(--ink);font:13px 'DM Sans';outline:none}input:focus,select:focus,textarea:focus{border-color:#8d9bb0;box-shadow:0 0 0 3px #1828420c}input[type=file]{padding:9px}label small{font-size:10px;color:var(--muted);font-weight:400}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.span-2{grid-column:span 2}.actions{display:flex;gap:9px;justify-content:flex-end;align-items:center}.notice-strip{display:flex;gap:20px;align-items:center;background:#f8f5ee;border:1px solid #e9dfc9;border-radius:12px;padding:17px 20px;color:#6e5b36;margin:18px 0}.notice-strip strong{white-space:nowrap;font-size:12px}.notice-strip span{font-size:12px;line-height:1.5}.alert{padding:13px 15px;border-radius:9px;margin:0 0 18px;font-size:12px}.alert.success{background:#e9f7ef;color:#176744;border:1px solid #c8ebd7}.alert.error{background:#fff0f0;color:#a62828;border:1px solid #f3cccc}.report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.report-tile{padding:17px;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:8px}.report-icon{width:30px;height:30px;background:#f4f0e7;color:#a4854c;display:grid;place-items:center;border-radius:9px}.report-tile strong{font-size:12px}.report-tile small{color:var(--muted);font-size:10px;line-height:1.5}.footer{border-top:1px solid var(--line);padding:19px 30px;display:flex;justify-content:space-between;gap:15px;color:#8992a0;font-size:10px;background:#fff}
.modal-backdrop{display:none;position:fixed;inset:0;background:rgba(9,18,31,.52);z-index:50;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(3px)}.modal-backdrop.open{display:flex}.modal{width:min(100%,470px);background:white;border-radius:16px;padding:24px;box-shadow:0 25px 90px #0003}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.modal-head h2{font-size:20px}.x{border:0;background:#f3f5f7;width:32px;height:32px;border-radius:8px;font-size:22px;cursor:pointer}.modal form{display:grid;gap:15px}.modal .actions{margin-top:5px}
.login-body{min-height:100vh;background:radial-gradient(ellipse at 15% 15%,#243a57 0,transparent 45%),linear-gradient(135deg,#0d1727,#14243a);display:grid;place-items:center;padding:30px}.login-shell{width:min(100%,1000px);display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}.login-brand img{width:min(100%,360px);height:auto;object-fit:contain;filter:brightness(0) invert(1)}.login-brand .eyebrow{margin-top:34px}.login-brand h1{color:white;font-size:38px}.login-brand p{color:#aebbd0;max-width:400px;font-size:14px}.login-card{background:white;border-radius:20px;padding:38px;box-shadow:0 30px 90px #0003}.login-card h2{font-size:25px}.login-card .muted{font-size:12px;margin:7px 0 24px}.login-card form{display:grid;gap:17px}.login-foot{border-top:1px solid var(--line);padding-top:17px;margin-top:25px;color:#98a1af;font-size:10px}
@media(max-width:1150px){.topbar{gap:12px;padding:0 16px}.brand{min-width:160px}.brand img{width:105px}.brand span{display:none}.mainnav>a,.navgroup>button{padding:10px 8px}.container{padding:24px 18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.topbar{height:auto;position:relative;flex-wrap:wrap;padding:14px;gap:12px}.brand{flex:1}.userarea{margin-left:auto}.mainnav{order:3;flex-basis:100%;overflow:visible;flex-wrap:wrap;gap:2px}.mainnav>a,.navgroup>button{font-size:11px;padding:9px 8px}.dropdown{z-index:25}.container{padding:22px 13px}.page-heading{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:16px}.stat strong{font-size:20px}.panel{padding:16px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.filterbar{align-items:stretch}.filterbar label{max-width:none;flex:1}.notice-strip{align-items:flex-start;flex-direction:column;gap:6px}.footer{padding:16px;flex-direction:column}.login-shell{grid-template-columns:1fr;gap:24px;max-width:470px}.login-brand{text-align:center}.login-brand img{width:230px}.login-brand .eyebrow{margin-top:16px}.login-brand h1{font-size:28px}.login-brand p{margin-left:auto;margin-right:auto}.login-card{padding:25px}.report-grid{grid-template-columns:1fr 1fr}}

@media print{.topbar,.footer,.filterbar,.btn,.profile-menu,.modal-backdrop{display:none!important}.container{max-width:none;padding:0}.panel,.stat{box-shadow:none;break-inside:avoid}body{background:#fff}.page-heading h1{font-size:22px}}

/* Enterprise navigation and transaction workspace refinement */
:root{--navy:#101b2d;--navy2:#192b45;--red:#ed1c24;--gold:#b99a61;--ink:#182230;--muted:#718096;--line:#e3e8ef;--bg:#f4f6fa;--shadow:0 18px 45px rgba(16,27,45,.10)}
body{background:#f4f6fa;color:#172337;font-size:13px}
.topbar{height:82px;padding:0 30px;gap:26px;display:flex;align-items:center;background:rgba(255,255,255,.98);border-bottom:1px solid #dfe5ed;box-shadow:0 4px 18px rgba(16,27,45,.045)}
.brand{min-width:240px;gap:15px;flex-shrink:0}.brand img{width:137px;max-height:40px}.brand-divider{height:34px;border-left:1px solid #e0e5ec;padding:0!important}.brand-product{font-size:9px!important;letter-spacing:.14em!important;line-height:1.5;color:#5f6e82!important;border:0!important;padding:0!important}.brand-product small{display:block;font-size:8px;color:#9aa5b4;font-weight:700;letter-spacing:.17em;margin-top:3px}
.mainnav{gap:4px;justify-content:center;min-width:0}.mainnav>a,.navgroup>button{display:flex;align-items:center;gap:8px;padding:12px 13px;border:1px solid transparent;border-radius:9px;font-size:12px;font-weight:700;color:#59677b;transition:background .15s,border-color .15s,color .15s}.mainnav>a:hover,.navgroup>button:hover,.mainnav>a.active,.navgroup.active-group>button{background:#f1f4f8;border-color:#e6ebf2;color:#14233a}.nav-symbol{font-size:14px;line-height:1;color:#8b97a8}.active .nav-symbol,.active-group .nav-symbol{color:#b99a61}.nav-chevron{font-size:10px;color:#96a1b0;margin-left:1px}
.navgroup{height:100%;display:flex;align-items:center}.dropdown{top:calc(100% - 12px);min-width:238px;padding:9px;border:1px solid #e1e7ef;border-radius:13px;box-shadow:0 20px 50px rgba(17,30,49,.15)}.dropdown-label,.profile-menu-head{padding:10px 11px 6px;color:#9aa5b4;font-size:9px;font-weight:800;letter-spacing:.15em}.dropdown a{padding:10px 11px;font-size:12px;font-weight:600;color:#435168}.dropdown a small{display:block;font-size:10px;font-weight:400;color:#929eaf;margin-top:4px}.dropdown a.current,.dropdown a:hover{background:#f2f5f8;color:#14233a}.dropdown a.current{box-shadow:inset 2px 0 #b99a61}
.userarea{flex-shrink:0;margin-left:auto}.profile-trigger{gap:10px;padding:5px 0 5px 8px}.avatar{width:38px;height:38px;border-radius:12px;background:#14233a;box-shadow:inset 0 -2px rgba(0,0,0,.12)}.profile-copy strong{display:block;font-size:12px;font-weight:800;max-width:125px;overflow:hidden;text-overflow:ellipsis}.profile-trigger small{font-size:10px;color:#8793a4}.profile-chevron{color:#8c98a8;font-size:11px}.profile-menu{top:54px;min-width:205px;padding:8px;border-radius:13px;box-shadow:0 20px 50px rgba(17,30,49,.15)}.profile-menu a,.profile-menu button{padding:11px;font-size:12px}.profile-menu .logout-link{color:#b4232d;border-top:1px solid #edf0f4;margin-top:5px;border-radius:0 0 7px 7px}
.container{max-width:1580px;padding:29px 32px 54px;min-height:calc(100vh - 145px)}.page-heading{margin-bottom:22px}.page-heading h1{font-size:30px;letter-spacing:-.045em;color:#14233a}.page-heading p{font-size:13px;color:#7b8799}.eyebrow{color:#a48a58;font-size:9px;letter-spacing:.18em}.transaction-heading{align-items:flex-end;margin-bottom:23px}.heading-meta{display:flex;align-items:center;gap:8px;color:#617086;background:#fff;border:1px solid #e1e7ef;border-radius:999px;padding:9px 13px;font-size:10px;font-weight:700;white-space:nowrap}.status-dot{width:7px;height:7px;border-radius:50%;background:#29966b;box-shadow:0 0 0 3px #e5f5ed}
.transaction-form{background:#fff;border:1px solid #e0e6ee;border-radius:17px;overflow:hidden;box-shadow:0 7px 24px rgba(18,34,56,.035)}.form-section{padding:23px 25px 25px;border-bottom:1px solid #edf0f5}.section-title{display:flex;align-items:flex-start;gap:13px;margin-bottom:20px}.section-number{display:grid;place-items:center;flex:0 0 31px;height:31px;border-radius:9px;background:#f4f0e7;color:#a58a55;font-size:10px;font-weight:800;letter-spacing:.04em}.section-title h2{font-size:14px;letter-spacing:-.02em;color:#1a2a41;margin:1px 0 5px}.section-title p{font-size:11px;color:#8a96a7;margin:0;line-height:1.5}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px 19px}.form-grid label{min-width:0;gap:8px;color:#526177;font-size:11px;font-weight:700}.form-grid input,.form-grid select,.form-grid textarea{min-height:43px;border:1px solid #dce3ec;border-radius:8px;padding:11px 12px;color:#233249;background:#fff;font-size:12px;transition:border-color .15s,box-shadow .15s}.form-grid input:hover,.form-grid select:hover,.form-grid textarea:hover{border-color:#bac5d4}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#8c9db3;box-shadow:0 0 0 3px rgba(38,62,91,.08)}.form-grid input[type=file]{padding:8px;font-size:11px}.form-grid .upload-field small{line-height:1.5}.form-grid textarea{resize:vertical;min-height:82px}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 25px;background:#fafbfd}.form-actions>div:first-child strong{display:block;color:#24334a;font-size:12px}.form-actions>div:first-child span{display:block;color:#8793a4;font-size:10px;margin-top:4px}.actions{gap:10px}.btn{min-height:40px;padding:11px 16px;border-radius:9px;font-size:11px;transition:all .15s}.btn.primary{background:#14233a;border-color:#14233a;box-shadow:0 4px 10px rgba(20,35,58,.12)}.btn.primary:hover{background:#233a5b;transform:translateY(-1px)}
.panel{border-radius:15px;border-color:#e1e7ef;box-shadow:0 5px 20px rgba(18,34,56,.03)}input,select,textarea{accent-color:#243b5b}.footer{padding:20px 32px;background:#fff;border-top-color:#e0e6ee}
@media(max-width:1250px){.topbar{padding:0 18px;gap:12px}.brand{min-width:190px}.brand img{width:115px}.brand-product{font-size:8px!important}.mainnav>a,.navgroup>button{padding:10px 9px;font-size:11px}.nav-symbol{display:none}.profile-copy strong{max-width:90px}.container{padding-left:22px;padding-right:22px}}
@media(max-width:980px){.topbar{height:auto;min-height:76px;flex-wrap:wrap;padding:13px 18px;gap:10px}.brand{min-width:0;flex:1}.userarea{margin-left:0}.mainnav{order:3;flex-basis:100%;justify-content:flex-start;flex-wrap:wrap;overflow:visible;height:auto;border-top:1px solid #edf0f4;padding-top:9px}.navgroup{height:auto}.dropdown{top:calc(100% + 2px)}.container{padding:22px 16px 40px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.brand img{width:105px}.brand-product{display:none}.brand-divider{display:none}.profile-copy{display:none}.mainnav{gap:3px}.mainnav>a,.navgroup>button{padding:9px 8px;font-size:10px}.container{padding:19px 11px 32px}.transaction-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:26px}.form-section{padding:19px 15px}.form-grid{grid-template-columns:1fr;gap:14px}.span-2{grid-column:span 1}.form-actions{align-items:stretch;flex-direction:column;padding:16px}.form-actions .actions{width:100%;justify-content:stretch}.form-actions .actions .btn{flex:1}.section-title{margin-bottom:16px}.dropdown{min-width:215px}.footer{padding:16px;flex-direction:column}}
@media print{.topbar,.footer,.form-actions,.heading-meta{display:none!important}.container{padding:0}.transaction-form,.form-section{box-shadow:none;border-color:#ddd}.form-section{break-inside:avoid}}

.required-mark{color:#c62828;font-weight:700;margin-left:3px}
label small{display:block;margin-top:6px;color:#6b7890;font-size:12px;line-height:1.45}
#accountNotes{width:100%;box-sizing:border-box}

.settlement-form{display:grid;gap:12px;min-width:260px;padding:14px;background:#f8fafc;border:1px solid #e0e6ef;border-radius:12px;margin-top:10px}
.settlement-form label{display:block}
.settlement-form input,.settlement-form select,.settlement-form textarea{width:100%;box-sizing:border-box;margin-top:5px}
details>summary{cursor:pointer;list-style:none}

/* Codevione simplified workspace refresh */
:root{--navy:#142238;--navy2:#223550;--gold:#b79a63;--bg:#f5f7fa;--line:#e4e9f0;--muted:#748197;--shadow:0 8px 26px rgba(20,34,56,.045)}
body{font-size:14px;background:#f5f7fa;color:#18263a}
.topbar{height:70px;padding:0 24px;gap:22px;box-shadow:0 1px 0 rgba(20,34,56,.03)}
.brand{min-width:205px;gap:12px}.brand img{width:130px;max-height:34px}.brand span{font-size:9px;line-height:1.55;letter-spacing:.12em}.brand-product small{display:block;font-size:8px;letter-spacing:.16em;margin-top:2px}
.mainnav{gap:3px}.mainnav>a,.navgroup>button{padding:11px 12px;border-radius:9px;font-size:12px;color:#526078}.mainnav>a.active,.navgroup.active-group>button{background:#edf1f6;color:#142238}.navgroup.active-group>button{box-shadow:inset 0 0 0 1px #e2e8f0}.dropdown{top:40px;min-width:220px;padding:8px}.dropdown a{font-size:12px;padding:10px 11px}.dropdown a small{display:block;color:#8792a4;font-size:10px;margin-top:3px}.dropdown-label{padding:9px 11px 5px;color:#9aa3b1;font-size:9px;font-weight:800;letter-spacing:.12em}.profile-trigger{gap:10px}.avatar{width:36px;height:36px;border-radius:12px}
.container{max-width:1440px;padding:27px 26px 44px}.page-heading{margin-bottom:20px}.page-heading h1{font-size:27px;letter-spacing:-.045em}.page-heading p{font-size:12px;color:#77849a;margin-top:5px}.eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:7px}
.panel,.form-section{border:1px solid #e3e8ef;border-radius:14px;box-shadow:0 3px 12px rgba(20,34,56,.018)}.panel{padding:21px;margin-bottom:17px}.panel-head{margin-bottom:13px}.panel-head h2,.panel>h2{font-size:16px}.panel-head p{font-size:11px}
.stats{gap:13px;margin-bottom:18px}.stat{padding:18px 20px;border-radius:13px}.stat:before{width:3px;background:#c4ab7b}.stat span{font-size:11px}.stat strong{font-size:23px;margin:10px 0 5px}.stat small{font-size:10px}
.btn{padding:10px 13px;border-radius:8px;font-size:11px;transition:background .15s,border-color .15s}.btn:hover{transform:none;box-shadow:0 3px 9px rgba(20,34,56,.07)}.btn.primary{background:#142238;border-color:#142238}.btn.danger{background:#fff7f7;color:#a93232;border-color:#f0d3d3}.btn.danger:hover{background:#ffeded}
.alert{font-size:12px;line-height:1.5;border-radius:10px}.alert.error{background:#fff4f3;border-color:#f1d4d1;color:#9d3029}
/* Transaction entry: essential fields first, optional settings tucked away */
.transaction-heading{align-items:center}.heading-meta{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #e2e8ef;background:#fff;border-radius:999px;font-size:10px;color:#6c7a8f;white-space:nowrap}.status-dot{width:7px;height:7px;border-radius:50%;background:#2b9a71;box-shadow:0 0 0 3px #e7f6ef}
.transaction-form{display:grid;gap:12px}.form-section{background:#fff;overflow:hidden}.section-title{display:flex;align-items:center;gap:12px;padding:17px 21px 12px}.section-number{display:grid;place-items:center;flex:0 0 30px;height:30px;background:#f3f0e8;color:#987b45;border-radius:9px;font-size:10px;font-weight:800}.section-title h2{font-size:14px;letter-spacing:-.02em}.section-title p{font-size:11px;margin:3px 0 0;color:#8a95a7;line-height:1.4}.form-section>.form-grid,.form-section>div.form-grid{padding:7px 21px 21px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px 17px}.form-grid label{font-size:11px;color:#526078;gap:6px}.form-grid input,.form-grid select,.form-grid textarea{border-color:#dfe5ed;border-radius:8px;padding:10px 11px;font-size:12px;min-height:39px}.form-grid textarea{min-height:78px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#91a1b8;box-shadow:0 0 0 3px rgba(20,34,56,.07)}.span-2{grid-column:span 2}.optional-details{border:1px solid #e7ebf1;border-radius:9px;background:#fbfcfd;min-width:0}.optional-details summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;color:#526078;font-size:11px;font-weight:700}.optional-details summary::-webkit-details-marker{display:none}.optional-details summary:after{content:'+';font-size:18px;line-height:1;color:#8a95a7;font-weight:400}.optional-details[open] summary:after{content:'−'}.optional-details summary span{margin-left:auto;color:#9aa4b3;font-size:9px;font-weight:500;background:#f0f3f6;padding:4px 7px;border-radius:999px}.details-grid{padding:12px!important;border-top:1px solid #e7ebf1;grid-template-columns:repeat(2,minmax(0,1fr))}.amount-help{font-size:10px;color:#8995a7;align-self:center}.partner-field{display:none}.partner-field.show{display:flex;flex-direction:column;gap:6px}.partner-field small{font-size:10px;color:#9a6c35}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:1px solid #e3e8ef;border-radius:13px;padding:15px 18px;box-shadow:0 3px 12px rgba(20,34,56,.018)}.form-actions>div:first-child{display:flex;flex-direction:column;gap:4px}.form-actions strong{font-size:12px}.form-actions span{font-size:10px;color:#8591a4}.form-actions .actions{gap:8px}
/* Keep registers readable; actions remain visible on wide screens and scroll on small screens */
.table-wrap{border-radius:9px}table{font-size:11px;min-width:700px}th{font-size:9px;background:#f7f9fb;color:#7f8a9b}th,td{padding:11px 10px}td{line-height:1.45}tbody tr:hover{background:#f8fafc}.table-wrap .btn{padding:7px 9px;font-size:10px}.filterbar{border-radius:11px;padding:13px;gap:10px}.filterbar label{font-size:10px}.filterbar input{margin-top:4px}
.footer{padding:16px 26px;font-size:10px}
@media(max-width:1150px){.topbar{padding:0 15px;gap:10px}.brand{min-width:145px}.brand img{width:108px}.mainnav>a,.navgroup>button{padding:10px 8px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.topbar{padding:12px;gap:10px}.brand{min-width:130px}.brand img{width:105px}.mainnav{gap:2px}.mainnav>a,.navgroup>button{padding:9px 7px}.container{padding:18px 12px 30px}.page-heading h1{font-size:24px}.panel{padding:15px}.section-title{padding:14px 14px 10px}.form-section>.form-grid,.form-section>div.form-grid{padding:7px 14px 15px}.form-grid{grid-template-columns:1fr;gap:13px}.span-2{grid-column:span 1}.details-grid{grid-template-columns:1fr}.form-actions{align-items:stretch;flex-direction:column}.form-actions .actions{justify-content:flex-end}.heading-meta{align-self:flex-start}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:14px}.stat strong{font-size:19px}}
@media print{.optional-details:not([open]){display:none}.form-actions,.heading-meta{display:none!important}}
/* Admin record maintenance */
.inline-edit{margin:10px 0;padding:14px;border:1px solid #e3e8ef;border-radius:10px;background:#fbfcfe;min-width:320px;max-width:820px;grid-template-columns:repeat(2,minmax(180px,1fr));}
.inline-edit label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#526078;}
.inline-edit input,.inline-edit select,.inline-edit textarea{width:100%;box-sizing:border-box;border:1px solid #dfe5ed;border-radius:7px;padding:8px;font:inherit;background:white;}
.inline-edit label:has(input[type=checkbox]){flex-direction:row;align-items:center;}
td details{margin-bottom:5px;} td form[style*="display:inline"]{margin:2px 2px 2px 0;}
@media(max-width:760px){.inline-edit{min-width:0;grid-template-columns:1fr;}}

/* Premium enterprise account management workspace */
.account-register{padding:25px 26px 20px;background:linear-gradient(180deg,#fff 0%,#fcfdff 100%);border:1px solid #dfe6ef;border-radius:17px;box-shadow:0 12px 34px rgba(22,38,61,.045)}
.account-register-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:19px!important;padding-bottom:17px;border-bottom:1px solid #edf0f5}
.account-register-head h2{font-size:19px!important;letter-spacing:-.035em;color:#142238;margin:4px 0 5px}
.account-register-head p{font-size:12px;color:#7c889a;margin:0}
.section-kicker{font-size:9px;font-weight:800;letter-spacing:.17em;color:#9a8050}
.record-count{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid #e5eaf1;background:#f8fafc;color:#59687e;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}
.record-count:before{content:"";width:6px;height:6px;border-radius:50%;background:#b79a63}
.account-table-wrap{border:1px solid #e8edf3;border-radius:12px;overflow-x:auto;background:#fff}
table.account-table{width:100%;min-width:1040px;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:12px}
.account-table thead th{background:#f7f9fc;color:#78859a;font-size:9px;font-weight:800;letter-spacing:.075em;text-transform:uppercase;padding:13px 12px;border-bottom:1px solid #e7ecf3;white-space:normal;line-height:1.4}
.account-table th:nth-child(1){width:17%}.account-table th:nth-child(2){width:7%}.account-table th:nth-child(3){width:9%}.account-table th:nth-child(4){width:12%}.account-table th:nth-child(5){width:12%}.account-table th:nth-child(6){width:12%}.account-table th:nth-child(7){width:10%}.account-table th:nth-child(8){width:8%}.account-table th:nth-child(9){width:13%}
.account-table td{padding:15px 12px;vertical-align:middle;border-bottom:1px solid #edf1f6;color:#526078;overflow-wrap:anywhere;line-height:1.45}
.account-table tbody tr:last-child td{border-bottom:0}.account-table tbody tr{transition:background .16s}.account-table tbody tr:hover{background:#fbfcfe}.account-table .account-name-cell{display:flex;align-items:center;gap:10px;min-width:0}.account-name-cell>div{min-width:0}.account-name-cell strong{display:block;color:#172941;font-size:12px;font-weight:750;overflow-wrap:anywhere}.account-name-cell small{display:block;margin-top:4px;color:#8c98aa;font-size:10px}
.account-type-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border:1px solid #e5eaf1;border-radius:10px;background:#f7f9fc;color:#8b754d;font-size:17px}
.type-pill,.ownership-pill,.status-pill{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:6px;padding:5px 7px;font-size:9px;font-weight:800;letter-spacing:.035em}
.type-pill{background:#f2f5f9;color:#5e6c80;border:1px solid #e8edf3}.ownership-pill.company{background:#edf5f1;color:#34765e;border:1px solid #dcece4}.ownership-pill.personal{background:#f7f1e7;color:#92703b;border:1px solid #eee2cd}
.masked-value{font-variant-numeric:tabular-nums;color:#68768b;font-size:11px}.balance-cell{font-weight:750;color:#172941!important;font-variant-numeric:tabular-nums;white-space:nowrap}
.status-pill{gap:6px;background:#edf7f1;color:#34765e;border:1px solid #dcefe4;font-weight:700;letter-spacing:0}.status-pill i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#39966c}.status-pill.inactive{background:#f2f4f7;color:#7e8999;border-color:#e4e8ed}.status-pill.inactive i{background:#a0a8b4}
.account-actions-cell{overflow:visible!important}.account-action-buttons{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;min-width:145px}.account-action-buttons .btn{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:7px 10px;border-radius:7px;font-size:10px;font-weight:750;white-space:nowrap}.account-edit-details{position:relative;flex:0 0 auto}.account-edit-details>summary{list-style:none;cursor:pointer}.account-edit-details>summary::-webkit-details-marker{display:none}.edit-account-btn{background:#fff;border:1px solid #dbe3ed;color:#233751}.edit-account-btn:before{content:"✎";font-size:12px;margin-right:5px;color:#8a744d}.edit-account-btn:hover{background:#f7f9fc;border-color:#bfcbd9}.account-deactivate-form{display:inline-flex;flex:0 0 auto;margin:0}.deactivate-account-btn{background:#fff;border:1px solid #edd8d8;color:#a04444}.deactivate-account-btn:before{content:"−";font-size:14px;margin-right:4px}.deactivate-account-btn:hover{background:#fff5f4;border-color:#e8c5c5}.inactive-label{font-size:10px;color:#8792a2;font-weight:700}
.account-inline-edit{position:relative;z-index:3;min-width:0;width:min(650px,calc(100vw - 80px));max-width:650px;margin:10px 0 4px;padding:16px;background:#fff;border:1px solid #dce4ee;border-radius:12px;box-shadow:0 14px 32px rgba(20,34,56,.12);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.account-inline-edit label{font-size:10px;font-weight:700;color:#5a687d}.account-inline-edit input,.account-inline-edit select,.account-inline-edit textarea{font-size:12px;min-height:36px;padding:8px 10px;border-color:#dce4ed;border-radius:7px}.account-inline-edit textarea{min-height:68px}.account-inline-edit button{justify-self:start}.account-inline-edit label:has(input[type=checkbox]){display:flex;align-items:center;gap:7px}
#cashbankForm{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 20px;padding-top:5px}#cashbankForm label{font-size:11px;font-weight:700;color:#59677b}#cashbankForm input,#cashbankForm select,#cashbankForm textarea{border:1px solid #dce4ed;border-radius:8px;background:#fff;min-height:41px;padding:10px 12px;font-size:12px;color:#1e2f46;transition:border-color .15s,box-shadow .15s}#cashbankForm input:focus,#cashbankForm select:focus,#cashbankForm textarea:focus{outline:none;border-color:#9cabc0;box-shadow:0 0 0 3px rgba(30,49,75,.07)}#cashbankForm #accountNotesWrap{grid-column:span 2}#cashbankForm .actions{grid-column:3;align-self:end;justify-content:flex-end;display:flex;align-items:flex-end}#cashbankForm .actions .btn{min-height:41px;padding:0 20px;font-size:11px;letter-spacing:.01em;border-radius:8px;box-shadow:0 5px 12px rgba(20,34,56,.1)}
@media(max-width:1000px){#cashbankForm{grid-template-columns:repeat(2,minmax(0,1fr))}#cashbankForm #accountNotesWrap{grid-column:span 2}#cashbankForm .actions{grid-column:span 2}.account-register{padding:20px}}
@media(max-width:650px){.account-register-head{align-items:flex-start;flex-direction:column}.account-register{padding:16px 12px}.account-inline-edit{width:calc(100vw - 52px);grid-template-columns:1fr}.account-inline-edit .span-2{grid-column:span 1}#cashbankForm{grid-template-columns:1fr}#cashbankForm #accountNotesWrap,#cashbankForm .actions{grid-column:span 1}}


/* Global compact icon-only row actions: consistent across all modules. */
.icon-action{display:inline-flex!important;align-items:center;justify-content:center;vertical-align:middle;width:32px;min-width:32px;height:32px;min-height:32px;padding:0!important;margin:0 3px 0 0!important;border-radius:8px!important;font-size:0!important;line-height:1!important;gap:0!important;box-shadow:none!important;transform:none!important;position:relative;text-decoration:none!important;flex:0 0 32px}
.icon-action::before{content:"";display:block;width:15px;height:15px;background:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.icon-action:hover{box-shadow:0 3px 10px rgba(16,27,45,.10)!important;transform:translateY(-1px)!important}
.icon-action:focus-visible{outline:2px solid #b99a5c;outline-offset:2px}
.icon-edit::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.12 2.12 0 0 1 3 3L8 18l-4 1 1-4Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.12 2.12 0 0 1 3 3L8 18l-4 1 1-4Z'/%3E%3C/svg%3E")}
.icon-deactivate::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='m19 6-1 14H6L5 6'/%3E%3Cpath d='M10 11v5M14 11v5'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='m19 6-1 14H6L5 6'/%3E%3Cpath d='M10 11v5M14 11v5'/%3E%3C/svg%3E")}
.icon-void::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m9 9 6 6M15 9l-6 6'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m9 9 6 6M15 9l-6 6'/%3E%3C/svg%3E")}
.icon-save::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12l6 6v10a2 2 0 0 1-2 2Z'/%3E%3Cpath d='M17 21v-8H7v8M7 3v5h8'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12l6 6v10a2 2 0 0 1-2 2Z'/%3E%3Cpath d='M17 21v-8H7v8M7 3v5h8'/%3E%3C/svg%3E")}
.icon-download::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='m7 10 5 5 5-5M12 15V3'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='m7 10 5 5 5-5M12 15V3'/%3E%3C/svg%3E")}
.icon-settle::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2v20M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2v20M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6'/%3E%3C/svg%3E")}
.icon-action.btn.primary{background:#f5f7fa;border-color:#dce3ec;color:#263851}.icon-action.btn.danger{background:#fff7f6;border-color:#f0d8d5;color:#b34b45}.icon-action-form{display:inline-flex;vertical-align:middle;margin:0 2px}.row-edit-details{display:inline-block;vertical-align:middle}.row-edit-details>summary{list-style:none;cursor:pointer}.row-edit-details>summary::-webkit-details-marker{display:none}.row-edit-details>summary::marker{content:""}.row-edit-details[open]{position:relative}.row-edit-details .inline-edit{z-index:6;position:absolute;right:0;top:38px;width:min(620px,calc(100vw - 50px));background:#fff;box-shadow:0 18px 45px rgba(16,27,45,.15);border:1px solid #dce4ed;border-radius:12px;padding:16px}.account-edit-details>summary.icon-action::before{content:""}.account-action-buttons{min-width:0!important;gap:5px!important}.account-action-buttons .icon-action{margin:0!important}.inline-edit .icon-save{justify-self:start}

/* GLOBAL PRODUCT RULE: every Edit action opens a centered modal, never inline editing. */
.row-edit-details[open],
.account-edit-details[open]{position:fixed!important;inset:0!important;z-index:10000!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:0!important;width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;margin:0!important;padding:22px!important;box-sizing:border-box!important;background:rgba(13,23,39,.52)!important;backdrop-filter:blur(3px);border:0!important;border-radius:0!important;}
.row-edit-details[open]>summary,
.account-edit-details[open]>summary{display:none!important;}
.row-edit-details[open]>.inline-edit,
.account-edit-details[open]>.inline-edit,
.settlement-details[open]>.settlement-form{position:relative!important;inset:auto!important;top:auto!important;right:auto!important;z-index:auto!important;width:min(760px,calc(100vw - 44px))!important;min-width:0!important;max-width:760px!important;max-height:min(82vh,900px)!important;overflow:auto!important;box-sizing:border-box!important;margin:0!important;padding:24px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;background:#fff!important;border:1px solid #e1e6ee!important;border-radius:16px!important;box-shadow:0 24px 80px rgba(7,17,32,.28)!important;}
.row-edit-details[open]>.inline-edit label,
.account-edit-details[open]>.inline-edit label{min-width:0;font-size:12px;font-weight:600;color:#47556b;}
.row-edit-details[open]>.inline-edit input,
.row-edit-details[open]>.inline-edit select,
.row-edit-details[open]>.inline-edit textarea,
.account-edit-details[open]>.inline-edit input,
.account-edit-details[open]>.inline-edit select,
.account-edit-details[open]>.inline-edit textarea{min-width:0;width:100%;box-sizing:border-box;min-height:40px;border:1px solid #d6deea;border-radius:8px;padding:9px 11px;font:inherit;color:#18283e;background:#fff;}
.row-edit-details[open]>.inline-edit .span-2,
.account-edit-details[open]>.inline-edit .span-2{grid-column:1/-1;}
.modal-form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;align-items:center;gap:9px;padding-top:14px;border-top:1px solid #edf0f5;margin-top:2px;}
.modal-form-actions .icon-action{margin:0!important;}
.modal-form-cancel{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #d8e0eb;border-radius:9px;background:#fff;color:#536176;cursor:pointer;}
.modal-form-cancel:hover{background:#f4f6f9;color:#18283e;}
.modal-form-cancel::before{content:"×";font-size:23px;line-height:1;font-weight:400;}
.row-edit-details[open]>.inline-edit .icon-save,
.account-edit-details[open]>.inline-edit .icon-save{justify-self:auto;}
@media(max-width:650px){.row-edit-details[open],.account-edit-details[open]{padding:12px!important}.row-edit-details[open]>.inline-edit,.account-edit-details[open]>.inline-edit,.settlement-details[open]>.settlement-form{width:calc(100vw - 24px)!important;max-height:88vh!important;padding:17px!important;grid-template-columns:1fr!important}.row-edit-details[open]>.inline-edit .span-2,.account-edit-details[open]>.inline-edit .span-2{grid-column:span 1}.modal-form-actions{grid-column:span 1}}

/* ================================================================
   RESPONSIVE LAYOUT SYSTEM — Codevione Internal Accounts
   Verified target widths: 1366x768, 1600x900, 1920x1080,
   tablets and narrow mobile screens. Keep overflow inside tables
   and dialogs; do not allow the document to scroll horizontally.
   ================================================================ */
html{max-width:100%;overflow-x:clip;scrollbar-gutter:stable}
body{width:100%;max-width:100%;overflow-x:clip}
img,svg,video,canvas{max-width:100%;height:auto}
.container{width:100%;min-width:0;min-height:calc(100vh - 126px);min-height:calc(100dvh - 126px);margin-inline:auto}
.container>*{min-width:0;max-width:100%}
.panel,.account-register,.transaction-form,.form-section,.panel-head,.page-heading,.form-actions,.filterbar,.notice-strip,.stats,.stat,.report-grid,.report-tile{min-width:0}
.form-grid,.details-grid,.transaction-form,.form-section form,.panel form{min-width:0}
.form-grid>* ,.details-grid>*{min-width:0;max-width:100%}
.form-grid input,.form-grid select,.form-grid textarea,.filterbar input,.filterbar select,.filterbar textarea{min-width:0;max-width:100%}
.table-wrap,.account-table-wrap,.table-responsive{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#cbd4e0 #f4f6f9}
.table-wrap table,.account-table-wrap table,.table-responsive table{max-width:none}
.table-wrap::-webkit-scrollbar,.account-table-wrap::-webkit-scrollbar,.table-responsive::-webkit-scrollbar{height:7px}
.table-wrap::-webkit-scrollbar-thumb,.account-table-wrap::-webkit-scrollbar-thumb,.table-responsive::-webkit-scrollbar-thumb{background:#cbd4e0;border-radius:99px}
.table-wrap::-webkit-scrollbar-track,.account-table-wrap::-webkit-scrollbar-track,.table-responsive::-webkit-scrollbar-track{background:#f4f6f9;border-radius:99px}
button,a,input,select,textarea{touch-action:manipulation}
button,a{overflow-wrap:anywhere}
.dropdown,.profile-menu{max-width:calc(100vw - 24px);max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain}
.modal-backdrop{overflow-y:auto;align-items:center;padding:clamp(10px,2.5vw,24px)}
.modal{min-width:0;max-width:100%;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
.row-edit-details[open],.account-edit-details[open]{height:100vh!important;height:100dvh!important;overflow-y:auto!important;overscroll-behavior:contain}
.row-edit-details[open]>.inline-edit,.account-edit-details[open]>.inline-edit,.settlement-details[open]>.settlement-form{max-height:calc(100vh - 44px)!important;max-height:calc(100dvh - 44px)!important;overflow-y:auto!important;overscroll-behavior:contain}

/* Wide desktop: use space without stretching content to unreadable widths. */
@media (min-width:1600px){
  .container{max-width:1640px;padding:30px 36px 40px}
  .topbar{padding-inline:32px;gap:24px}
  .panel{padding:24px}
  .form-section>.form-grid,.form-section>div.form-grid{padding-left:24px;padding-right:24px}
}

/* Standard desktop / 1366×768: compact vertical rhythm prevents needless scrolling. */
@media (min-width:1200px) and (max-width:1499px){
  .topbar{height:66px;padding-inline:18px;gap:12px}
  .brand{min-width:178px;gap:10px}
  .brand img{width:116px;max-height:31px}
  .mainnav{gap:2px}
  .mainnav>a,.navgroup>button{padding:9px 9px;font-size:11px;gap:6px}
  .userarea{flex-shrink:0}
  .avatar{width:34px;height:34px}
  .container{padding:22px 24px 30px;min-height:calc(100vh - 120px);min-height:calc(100dvh - 120px)}
  .page-heading{margin-bottom:16px}
  .page-heading h1{font-size:26px}
  .panel{padding:18px;margin-bottom:16px}
  .stat{padding:15px 17px}
  .stat strong{font-size:21px;margin:8px 0 4px}
  .form-section{padding-bottom:16px}
  .section-title{padding:13px 18px 9px;margin-bottom:0}
  .form-section>.form-grid,.form-section>div.form-grid{padding:7px 18px 16px}
  .form-grid{gap:12px 14px}
  .form-grid input,.form-grid select,.form-grid textarea{min-height:36px;padding:8px 10px}
  .form-grid textarea{min-height:64px}
  .form-actions{padding:12px 16px}
  th,td{padding:9px 9px}
  .footer{padding:13px 24px}
}

/* Laptop and tablet landscape: navigation becomes a dedicated second row. */
@media (min-width:761px) and (max-width:1199px){
  .topbar{height:auto;min-height:68px;flex-wrap:wrap;padding:11px 18px;gap:8px 14px;position:relative}
  .brand{min-width:0;flex:1 1 230px}
  .brand img{width:120px}
  .userarea{margin-left:auto;flex:0 0 auto}
  .mainnav{order:3;flex:1 0 100%;height:auto;min-width:0;flex-wrap:wrap;justify-content:flex-start;gap:3px;border-top:1px solid #edf0f4;padding-top:7px}
  .mainnav>a,.navgroup>button{padding:9px 10px;font-size:11px}
  .navgroup{height:auto}
  .dropdown{top:calc(100% + 3px);z-index:100}
  .container{padding:22px 18px 32px;min-height:calc(100vh - 150px);min-height:calc(100dvh - 150px)}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-register{padding:20px}
  .account-table{min-width:1000px}
}

/* Tablet portrait and mobile landscape. */
@media (max-width:760px){
  html{scrollbar-gutter:auto}
  .topbar{height:auto;min-height:0;position:relative;flex-wrap:wrap;padding:11px 12px;gap:9px}
  .brand{min-width:0;flex:1 1 130px;gap:8px}
  .brand img{width:105px;max-height:30px}
  .brand-product{display:none!important}
  .brand-divider{display:none!important}
  .userarea{margin-left:auto;flex:0 0 auto}
  .profile-copy,.profile-chevron{display:none!important}
  .mainnav{order:3;flex:1 0 100%;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:3px;height:auto;min-width:0;padding-top:8px;border-top:1px solid #edf0f4;overflow:visible}
  .mainnav>a,.navgroup>button{padding:9px 8px;font-size:10px;gap:5px;white-space:normal}
  .navgroup{height:auto;position:relative}
  .dropdown{top:calc(100% + 4px);left:0;min-width:min(220px,calc(100vw - 24px));z-index:200}
  .userarea .profile-menu{z-index:200}
  .container{padding:17px 12px 26px;min-height:calc(100vh - 170px);min-height:calc(100dvh - 170px)}
  .page-heading{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:16px}
  .page-heading h1{font-size:23px;line-height:1.2}
  .page-heading p{font-size:12px}
  .transaction-heading{align-items:flex-start}
  .heading-meta{white-space:normal;max-width:100%}
  .panel,.account-register{padding:14px 12px;border-radius:12px}
  .panel-head,.account-register-head{align-items:flex-start;flex-direction:column;gap:8px}
  .panel-head h2,.panel>h2{font-size:15px}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .stat{padding:12px 13px;border-radius:11px}
  .stat strong{font-size:18px;overflow-wrap:anywhere}
  .stat span{font-size:10px}
  .report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .report-tile{padding:12px}
  .form-grid,.form-section>.form-grid,.form-section>div.form-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .form-section>.form-grid,.form-section>div.form-grid{padding:8px 13px 15px}
  .form-section{border-radius:12px;padding-bottom:0}
  .section-title{padding:13px 13px 9px;gap:9px}
  .section-title h2{font-size:13px}
  .span-2,.details-grid>*{grid-column:1/-1}
  .details-grid{grid-template-columns:minmax(0,1fr)}
  .form-actions{align-items:stretch;flex-direction:column;gap:12px;padding:13px}
  .form-actions .actions{width:100%;justify-content:flex-end;flex-wrap:wrap}
  .form-actions .actions .btn{flex:0 1 auto}
  .filterbar{align-items:stretch;flex-direction:column;padding:12px;gap:10px}
  .filterbar label{min-width:0;max-width:none;width:100%}
  .notice-strip{align-items:flex-start;flex-direction:column;gap:7px;padding:13px}
  .table-wrap,.account-table-wrap,.table-responsive{max-width:calc(100vw - 50px)}
  .account-table{min-width:980px}
  .account-action-buttons{min-width:0;flex-wrap:wrap}
  .footer{padding:14px 12px;gap:7px;flex-direction:column;line-height:1.5}
  .login-body{padding:16px}
  .login-shell{grid-template-columns:minmax(0,1fr);gap:18px;max-width:460px}
  .login-brand{text-align:center}
  .login-brand img{width:min(220px,70vw)}
  .login-brand .eyebrow{margin-top:10px}
  .login-brand h1{font-size:27px}
  .login-brand p{margin-inline:auto}
  .login-card{padding:22px 18px;border-radius:15px}
  .modal-backdrop{padding:10px;align-items:center}
  .modal{width:100%;padding:18px;border-radius:13px}
  .row-edit-details[open],.account-edit-details[open]{padding:10px!important}
  .row-edit-details[open]>.inline-edit,.account-edit-details[open]>.inline-edit,.settlement-details[open]>.settlement-form{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;padding:15px!important;grid-template-columns:minmax(0,1fr)!important}
  .modal-form-actions{grid-column:1/-1;position:sticky;bottom:-15px;background:#fff;padding:12px 0 0}
}

@media (max-width:420px){
  .topbar{padding:10px}
  .avatar{width:32px;height:32px}
  .mainnav>a,.navgroup>button{padding:8px 7px;font-size:10px}
  .container{padding-inline:9px}
  .report-grid{grid-template-columns:minmax(0,1fr)}
  .stat{padding:13px}
  .panel,.account-register{padding:12px 10px}
  .table-wrap,.account-table-wrap,.table-responsive{max-width:calc(100vw - 38px)}
  .icon-action{width:30px;min-width:30px;height:30px;min-height:30px;flex-basis:30px}
  .modal{padding:15px}
}

@media (max-width:360px){.stats{grid-template-columns:minmax(0,1fr)}}

@media (max-height:800px) and (min-width:1200px){
  .container{padding-top:18px;padding-bottom:24px}
  .page-heading{margin-bottom:13px}
  .panel{margin-bottom:13px}
  .stat{padding-top:12px;padding-bottom:12px}
  .form-section>.form-grid,.form-section>div.form-grid{padding-bottom:12px}
  .section-title{padding-top:10px;padding-bottom:7px}
}

/* Shared user help document settings and header access */
.help-nav-link{color:#14233a!important;background:#fbf8f1!important;border-color:#eadfc9!important}.help-nav-link .nav-symbol{display:inline-grid;place-items:center;width:17px;height:17px;border:1px solid #b99a61;border-radius:50%;font-weight:800;color:#9b783b!important}.help-settings-panel{margin-top:18px}.help-current{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fafbfd;margin:12px 0 18px}.help-file-icon{display:grid;place-items:center;width:44px;height:48px;border-radius:8px;background:#14233a;color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em}.help-current-info{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}.help-current-info strong{overflow-wrap:anywhere;color:var(--ink);font-size:13px}.help-current-info small{color:var(--muted);font-size:11px}.help-upload-form{display:grid;gap:10px;max-width:720px}.help-upload-form input[type=file]{margin-top:7px}.help-upload-form>small{font-size:11px}.help-remove-form{margin-top:12px}.help-settings-panel .panel-head{align-items:flex-start}
@media(max-width:600px){.help-current{align-items:flex-start;flex-wrap:wrap}.help-current-info{flex-basis:calc(100% - 60px)}.help-current .btn{margin-left:58px}.help-nav-link{padding:9px 10px!important}}

/* Shared help guide: read-only modal viewer */
.help-nav-link{font:inherit;cursor:pointer;border:1px solid transparent}
.help-modal-backdrop{z-index:1200;padding:clamp(8px,2vw,24px)}
.help-reader-modal{width:min(1180px,100%);height:min(900px,94dvh);display:flex;flex-direction:column;background:#fff;border:1px solid #dce3ec;border-radius:16px;overflow:hidden;box-shadow:0 24px 80px #07172d40}
.help-reader-modal-head{flex:0 0 58px;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid #e6ebf2;background:#fff}
.help-reader-title{display:flex;align-items:center;gap:10px;min-width:0}.help-reader-title img{width:30px;height:30px;object-fit:contain}.help-reader-title div{display:flex;flex-direction:column;gap:3px;min-width:0}.help-reader-title strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.help-reader-title small{font-size:10px;color:var(--muted)}
.help-reader-modal>iframe{width:100%;height:100%;flex:1;min-height:0;border:0;background:#eef2f7}
@media(max-width:600px){.help-modal-backdrop{padding:0}.help-reader-modal{width:100%;height:100dvh;border-radius:0;border:0}.help-reader-modal-head{flex-basis:52px;min-height:52px;padding:7px 10px}.help-reader-title strong{max-width:72vw}}


/* Refined compact Help action and functional read-only reader modal */
.help-nav-link{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 12px!important;border:1px solid #dce3ec!important;border-radius:10px!important;background:#fff!important;color:#263851!important;font-size:12px!important;font-weight:650!important;line-height:1;box-shadow:0 1px 2px rgba(20,34,56,.04);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;cursor:pointer}
.help-nav-link svg{width:16px;height:16px;fill:none;stroke:#9a7b43;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 16px}
.help-nav-link:hover{background:#f8f5ee!important;border-color:#cdb98e!important;box-shadow:0 2px 7px rgba(20,34,56,.08)}
.help-nav-link:focus-visible,.help-close:focus-visible{outline:3px solid rgba(177,142,74,.35);outline-offset:2px}
.help-modal-backdrop{display:none;position:fixed;inset:0;align-items:center;justify-content:center;background:rgba(10,22,40,.62);backdrop-filter:blur(3px);z-index:2000}
.help-modal-backdrop.open{display:flex}
.help-reader-modal{position:relative;width:min(1180px,calc(100vw - 48px));height:min(900px,calc(100dvh - 48px));display:flex;flex-direction:column;background:#fff;border:1px solid #dce3ec;border-radius:16px;overflow:hidden;box-shadow:0 24px 80px rgba(7,23,45,.35)}
.help-reader-modal-head{flex:0 0 62px;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 16px;border-bottom:1px solid #e6ebf2;background:#fff}
.help-reader-title{display:flex;align-items:center;gap:11px;min-width:0}.help-reader-title img{width:32px;height:32px;object-fit:contain;flex:0 0 32px}.help-reader-title div{display:flex;flex-direction:column;gap:3px;min-width:0}.help-reader-title strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.help-reader-title small{font-size:10px;color:var(--muted)}
.help-reader-modal>iframe{width:100%;height:100%;flex:1;min-height:0;border:0;background:#eef2f7}
.help-close{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border:1px solid #e1e6ed;border-radius:9px;background:#fff;color:#506078;font-size:23px;line-height:1;cursor:pointer}.help-close:hover{background:#f4f6f9;color:#14233a}
@media(max-width:600px){.help-nav-link{height:32px;padding:0 9px!important;border-radius:8px!important;gap:5px;font-size:11px!important}.help-nav-link svg{width:15px;height:15px;flex-basis:15px}.help-modal-backdrop{padding:0}.help-reader-modal{width:100%;height:100dvh;border-radius:0;border:0}.help-reader-modal-head{flex-basis:54px;min-height:54px;padding:7px 10px}.help-reader-title strong{max-width:72vw}}

/* Help PDF reference mode: minimize to a persistent in-tab dock while using the application. */
.help-reader-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.help-minimize,.help-close{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dce3ec;border-radius:9px;background:#fff;color:#26364b;font-size:22px;line-height:1;cursor:pointer}
.help-minimize:hover,.help-close:hover{background:#f1f5f9;border-color:#b8c6d8}
.help-modal-backdrop.is-minimized{display:none!important}
.help-reference-dock{display:none;position:fixed;right:18px;bottom:18px;z-index:1199;align-items:center;gap:9px;padding:11px 14px;border:1px solid #cbd7e5;border-radius:12px;background:#fff;color:#172b46;box-shadow:0 10px 32px #07172d24;font:600 13px/1.2 inherit;cursor:pointer}
.help-reference-dock.visible{display:flex}
.help-reference-dock>span:first-child{font-size:18px;color:#b28b4b}
.help-dock-restore{margin-left:4px;color:#718096}
.help-reference-dock:hover{border-color:#b28b4b;box-shadow:0 12px 34px #07172d30}
@media(max-width:600px){.help-reference-dock{right:10px;bottom:10px;padding:10px 12px}.help-minimize,.help-close{width:32px;height:32px}}
