:root{
  --blue:#25609e;
  --navy:#143d75;
  --pale:#dce9fa;
  --line:#9eafc3;
  --bg:#d4d9e2;
  --panel:#f5f7fb;
  --text:#172c43;
  --green:#2b6733;
  --red:#ad3030;
  --gold:#f7d98b;
}
*{box-sizing:border-box}
html{font-size:15px}
body{margin:0;color:var(--text);font:15px/1.45 Tahoma,'Segoe UI',Arial,sans-serif;background:var(--bg)}
button,input,select,textarea{font:inherit}
a{color:#1b529a;text-decoration:none}
a:hover{text-decoration:underline}
button{cursor:pointer}
.app-shell{min-height:100dvh;display:flex;flex-direction:column;box-shadow:0 0 0 1px #8090aa inset}
.titlebar{color:#fff;padding:9px 13px;background:linear-gradient(180deg,#72a3e0 0%,#326eb8 12%,#10458e 68%,#1d5bb0 100%);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #174777;text-shadow:0 1px #124179;min-height:42px;gap:12px}
.titlebar strong{font-size:17px;letter-spacing:.2px}
.titlebar small,.title-sub{color:#e4f1ff;font-size:13px}
.win-buttons{display:flex;gap:4px;color:#fff}
.win-buttons span{display:inline-grid;place-items:center;min-width:22px;height:20px;border:1px solid #b3d4ff;background:linear-gradient(#74a5e1,#316bae);font-size:12px;border-radius:2px}

.toolbar{background:linear-gradient(#f7fafc,#dbe4ef);border-bottom:1px solid #a0b2c8;box-shadow:inset 0 1px #fff}
.shell-toolbar{display:flex;align-items:stretch;justify-content:space-between;gap:12px;padding:8px 10px;flex-wrap:wrap}
.toolbar-primary{display:flex;align-items:stretch;gap:7px;flex-wrap:wrap;flex:1 1 620px}
.toolbar-secondary{display:flex;align-items:center;gap:10px;flex:0 1 auto;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}
.tool-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:96px;min-height:78px;padding:8px 10px;border:1px solid #aebfd4;border-radius:4px;background:linear-gradient(#ffffff,#e5edf7);box-shadow:inset 0 1px #fff;color:#203851;white-space:nowrap;font-size:13px;font-weight:bold;text-align:center}
.tool-link:hover{background:linear-gradient(#fffaf0,#f5dfaa);border-color:#c39949;text-decoration:none}
.tool-link.active{background:linear-gradient(#fff5dd,#f1cf81);border-color:#b8872f;color:#17395e;box-shadow:inset 0 0 0 1px #fff3cf}
.toolbar-icon{font-size:28px;line-height:1}
.toolbar-label{line-height:1.2;white-space:normal}
.toolbar-user{min-width:210px;padding:8px 12px;border:1px solid #aebfd4;border-radius:4px;background:linear-gradient(#fefefe,#eaf1fa);box-shadow:inset 0 1px #fff;display:flex;flex-direction:column;justify-content:center}
.toolbar-user strong{font-size:14px;color:#173d6d}
.toolbar-user small{font-size:12px;color:#617892}
.toolbar-logout{margin:0}

.workspace{display:flex;flex:1;min-height:0;padding:10px}
.solo-toolbar-layout{display:block}
.main{flex:1;min-width:0;display:flex;flex-direction:column;background:#fbfcfe;border:1px solid #93a9c6;box-shadow:inset 0 0 0 1px #fff}
.full-main{width:100%}
.panel-caption{background:linear-gradient(#eef5ff,#d8e7fa);border-bottom:1px solid #b2c5df;padding:12px 15px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.panel-caption strong{font-size:17px;color:#183e75}
.panel-caption span{font-size:13px;color:#4e6684}
.page-content{padding:15px;display:flex;flex-direction:column;gap:14px;min-width:0;flex:1}
.statusbar{background:linear-gradient(#e8eff9,#d4e0f1);border-top:1px solid #a2b8d0;color:#496481;min-height:30px;padding:6px 10px;display:flex;justify-content:space-between;gap:10px;font-size:12px;flex-wrap:wrap}

.classic-panel{border:1px solid #9fb2ca;background:#fff;box-shadow:inset 0 0 0 1px #f2f7fd;min-width:0}
.classic-panel>.section-title{border:0;border-bottom:1px solid #9fb2ca;display:flex;justify-content:space-between;gap:5px}
.section-title,.pane-title{background:linear-gradient(#eff6ff,#c3d8f5);border:1px solid #a8c1e0;color:#214e84;font-weight:bold;padding:9px 11px}
.classic-panel>.section-title span{font-weight:normal;color:#416a97;font-size:12px}
.classic-panel>.hint,.classic-panel>.notice{margin:11px 13px}
.classic-panel>.table-wrap{margin:10px 12px 14px}

.quick-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.stat{background:linear-gradient(#fff,#eaf1fc);border:1px solid #a3bbd7;box-shadow:inset 0 0 0 1px #fff;padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.stat small{font-size:12px;letter-spacing:.4px;color:#506982}
.stat strong{font-size:24px;color:#163d6e;white-space:nowrap}
.stat.accent{background:linear-gradient(#eef8ee,#e1f0e3);border-color:#90b493}
.stat.accent strong{color:#286333}
.two-panels{display:grid;grid-template-columns:1.55fr 1fr;gap:14px;align-items:start}

.table-wrap{width:100%;overflow-x:auto;scrollbar-color:#bdcce0 transparent}
.data-table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:13px;background:#fff}
.data-table th{background:linear-gradient(#eff5fc,#d7e5f7);color:#223f62;border:1px solid #a8bdd8;text-align:left;font-weight:bold;position:relative;padding:9px 10px}
.data-table td{border:1px solid #c8d2df;padding:9px 10px;vertical-align:middle}
.data-table tr:nth-child(even) td{background:#f4f8fd}
.data-table tbody tr:hover td{background:#e6f1ff}
.data-table .num{text-align:right;font-variant-numeric:tabular-nums}
.data-table.compact td,.data-table.compact th{padding:7px 8px}
.data-table .subtotal td{background:#dce9f8!important;color:#153c6b;font-weight:bold}
.data-table .empty{text-align:center;color:#62738c;padding:26px}
.subtle{font-size:11px;display:block;color:#6c8099;margin-top:3px;max-width:480px;white-space:normal}
.summary-list{display:flex;flex-direction:column;padding:11px;gap:7px}
.summary-list a{display:flex;justify-content:space-between;gap:10px;background:#f4f8ff;border:1px solid #d3deec;padding:10px 11px}
.summary-list b{background:#e2ebfb;border:1px solid #a9c3e9;min-width:28px;text-align:center}
.hint{font-size:12px;color:#647589;line-height:1.65}
.notice{padding:11px;background:#edf4ff;border:1px solid #c5d7eb;font-size:13px}
.toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.btn{background:linear-gradient(#fff,#e3e8ef);border:1px solid #90a5c0;border-radius:2px;color:#203851;box-shadow:inset 0 1px #fff;padding:8px 12px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:34px;white-space:nowrap;font-size:13px}
.btn:hover{background:linear-gradient(#fff5d9,#f6daa2);border-color:#b89143;text-decoration:none;color:#2b3a50}
.btn.primary{color:#fff;background:linear-gradient(#4e90d4,#1d5698);border-color:#174c8c;text-shadow:0 1px #17416d}
.btn.primary:hover{background:linear-gradient(#669bda,#2761a7)}
.btn.danger{color:#84292b;background:linear-gradient(#fffbfb,#efdddd);border-color:#ba8b8b}
.inline-form{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;padding:10px 12px}
.mini-form{display:flex;gap:4px;flex-wrap:wrap}
.mini-form select{max-width:120px;min-width:90px}
.mini-form .btn{min-height:28px;padding:5px 8px}
.filter-bar{padding:11px;display:flex;gap:9px;align-items:end;flex-wrap:wrap;border-bottom:1px solid #e1e7f0}
.filter-bar input,.filter-bar select{max-width:260px}
.filter-bar label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#47617e}
.filter-bar label input,.filter-bar label select{min-width:140px}
.pager{padding:10px 12px;display:flex;justify-content:end;align-items:center;gap:9px;color:#586b80;flex-wrap:wrap}
.classic-form{padding:13px;display:flex;flex-direction:column;align-items:start;gap:12px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 14px;width:100%}
.form-grid .span2,.span2{grid-column:span 2}
.classic-form label,.login-inner label,.setup-content label{display:flex;flex-direction:column;font-size:13px;gap:6px;color:#3b5371;width:100%}
input,select,textarea{background:#fff;border:1px solid #9faec3;border-top-color:#8497ae;border-radius:1px;box-shadow:inset 1px 1px 1px #e8e8e8;color:#1b3048;min-width:0;padding:9px 10px;width:100%}
input:focus,select:focus,textarea:focus{border-color:#397dc6;outline:2px solid #d7e6fc;outline-offset:0}
input[readonly]{background:#e7ecf2;color:#516477}
.button-row{display:flex;gap:8px;flex-wrap:wrap}
.details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:10px}
.details-grid>div{border-bottom:1px solid #e5edf6;display:flex;flex-direction:column;gap:5px;padding:10px}
.details-grid small{color:#6e8093;font-size:12px}
.details-grid b{font-weight:600;overflow-wrap:anywhere}
.state,.tag{display:inline-block;white-space:nowrap;font-weight:600;font-size:12px;background:#eaf0f8;border:1px solid #acc2da;color:#345980;padding:4px 8px;border-radius:2px}
.state-paid{color:#296735;background:#e8f5e8;border-color:#a3d0ab}
.state-approved{color:#255b89;background:#eaf3ff}
.state-submitted,.tag.pending{color:#846016;background:#fff5d9;border-color:#e0c485}
.state-rejected{color:#a03939;background:#fbe9e9;border-color:#dfaaaa}
.state-draft{color:#57677c;background:#edf1f4}
.alert{border:1px solid;padding:11px 12px;line-height:1.55}
.alert.success{background:#e5f4e7;border-color:#9ac6a1;color:#236034}
.alert.warn{background:#fff8e4;border-color:#d7c091;color:#79591d}
.alert.error{background:#fcecec;border-color:#dba6a6;color:#922929}
.upload-form{border-top:1px dashed #c3d2e2;margin-top:8px}
.upload-form .form-grid{align-items:end}

.login-body,.setup-body{display:flex;justify-content:center;align-items:center;min-height:100dvh;padding:24px;background:repeating-linear-gradient(135deg,#dce5f2,#dce5f2 26px,#d4dfed 26px,#d4dfed 52px)}
.login-window,.setup-box{width:100%;max-width:460px;background:#f7f9fc;border:1px solid #7895b9;box-shadow:0 13px 35px #395a8338,0 0 0 2px #fff}
.login-inner{text-align:center;padding:26px 32px 28px}
.login-logo{height:62px;width:62px;background:linear-gradient(#5d95db,#245b9d);border:3px solid #fff;box-shadow:0 0 0 1px #9fb6d3;border-radius:5px;display:grid;place-items:center;margin:0 auto;color:#fff;font-size:34px}
.login-inner h1{font-size:22px;margin:15px 0 5px;color:#245084}
.login-inner p{font-size:13px;color:#5d7590;margin:0 0 20px;line-height:1.5}
.login-inner form{text-align:left;display:flex;flex-direction:column;gap:13px}
.login-inner small{display:block;color:#667b91;margin-top:20px}
.btn.full{display:flex;width:100%}
.setup-box{max-width:780px}
.setup-content{padding:22px 24px;max-height:86vh;overflow:auto}
.setup-content h2{margin-top:0}
.setup-content p{color:#566b82}
.setup-content fieldset{margin:0 0 15px;border:1px solid #b5c8de;padding:12px}
.setup-content legend{font-weight:bold;color:#2a5482;padding:0 8px}
.setup-content .form-grid{margin-top:3px}
.mobile-only,.menubar,.sidebar,.nav-link,.pane-title,.nav-user,.logout,.icon-button{display:none!important}

.print-body{background:#f1f3f7;font:12px Arial,sans-serif;color:#000}
.print-tools{max-width:1000px;margin:10px auto;display:flex;gap:9px}
.print-paper{max-width:1000px;min-height:1100px;background:white;margin:0 auto 30px;padding:25px 35px;box-shadow:0 8px 22px #aaa6}
.print-head{text-align:center;border-bottom:3px double #333;padding:7px 0 15px;margin-bottom:15px}
.print-head h2{font-size:15px;margin:4px}
.print-head h3{font-size:16px;margin:7px}
.print-head p{font-size:11px;margin:6px}
.print-body .data-table{white-space:normal;font-size:10px}
.print-body .data-table td,.print-body .data-table th{padding:5px;border-color:#555}
.print-body .table-wrap{overflow:visible}
.print-body .print-filter{font-size:11px}
.print-info{border-collapse:collapse;width:100%;margin:14px 0}
.print-info th,.print-info td{border:1px solid #777;padding:8px;text-align:left}
.signatures{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:20px;margin:45px 0 0;break-inside:avoid}
.signatures>div{min-height:130px}
.signatures p{margin:8px 0}
.sign-space{height:65px}

@media (max-width:1200px){
  .quick-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .two-panels{grid-template-columns:1fr}
  .stat strong{font-size:21px}
  .toolbar-user{min-width:180px}
}
@media (max-width:900px){
  html{font-size:14px}
  .title-sub,.win-buttons{display:none}
  .workspace{padding:7px}
  .panel-caption{padding:10px 12px}
  .page-content{padding:10px;gap:10px}
  .tool-link{min-width:82px;min-height:72px;padding:8px 8px;font-size:12px}
  .toolbar-icon{font-size:24px}
  .toolbar-secondary{flex:1 1 100%;justify-content:space-between}
  .toolbar-user{flex:1 1 auto}
  .form-grid{grid-template-columns:1fr}
  .form-grid .span2,.span2{grid-column:span 1}
  .details-grid{grid-template-columns:1fr}
  .details-grid .span2{grid-column:span 1}
}
@media (max-width:640px){
  .quick-stats{grid-template-columns:1fr 1fr;gap:8px}
  .stat{padding:11px;gap:6px}
  .stat strong{font-size:17px}
  .stat small{font-size:10px}
  .shell-toolbar{padding:7px}
  .toolbar-primary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;flex:1 1 100%}
  .tool-link{min-width:0;width:100%;min-height:76px}
  .toolbar-label{font-size:11px}
  .toolbar-secondary{gap:7px}
  .toolbar-user{min-width:0;padding:7px 9px}
  .data-table{font-size:12px}
  .data-table td,.data-table th{padding:7px}
  .statusbar{font-size:11px}
  .filter-bar label{width:100%}
  .filter-bar input,.filter-bar select{max-width:none}
  .login-inner{padding:22px 20px}
  .setup-content{padding:15px}
}
@media (max-width:430px){
  .toolbar-primary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .panel-caption strong{font-size:15px}
  .panel-caption span{font-size:12px}
  .quick-stats{grid-template-columns:1fr}
  .btn{width:100%}
  .toolbar-actions .btn{width:auto}
  .toolbar-secondary{flex-direction:column;align-items:stretch}
  .toolbar-logout .btn{width:100%}
  .statusbar>span:last-child{display:none}
}
@media print{
  @page{size:A4; margin:12mm}
  .print-body{background:white}
  .print-tools{display:none}
  .print-paper{box-shadow:none;max-width:none;min-height:0;padding:0;margin:0}
  .print-body .data-table{font-size:9px}
  .print-body .data-table th{position:static;background:#e7e7e7}
  .print-body tr{break-inside:avoid}
  .print-body .signatures{break-inside:avoid}
  .print-head{margin-bottom:12px}
}

/* --------------------------------------------------------------------------
   SIMKEU v1.1.1 — Fixed top-only Office 2003 navigation.
   This is loaded as style-v1.1.1.css to defeat cached styles from v1.0.x.
   -------------------------------------------------------------------------- */
.app-body{font-size:15px}
.app-body .app-title{min-height:50px;gap:12px;padding:8px 14px}
.titlebar-brand{display:flex;align-items:center;gap:9px;min-width:0;flex-wrap:wrap}
.app-body .titlebar-brand strong{font-size:18px;line-height:1.25}
.app-body .title-sub{font-size:13px;line-height:1.3}
.titlebar-session{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
.titlebar-user{display:flex;align-items:flex-end;flex-direction:column;min-width:0;line-height:1.25}
.titlebar-user strong{font-size:14px;font-weight:600;color:#fff;text-shadow:0 1px #124179;max-width:235px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.titlebar-user span{font-size:12px;color:#e4eeff}
.titlebar-logout{margin:0;display:block}
.titlebar-logout input[type=hidden]{display:none}
.titlebar-logout button{display:block;border:1px solid #bfd4f0;background:linear-gradient(#f9fcff,#e4ecf8);border-radius:3px;box-shadow:inset 0 1px #fff;color:#174171;font-size:13px;font-weight:bold;min-height:32px;white-space:nowrap;padding:5px 12px;text-shadow:none}
.titlebar-logout button:hover{background:linear-gradient(#fff4cf,#f2d387);border-color:#d6b267}

.app-body .shell-toolbar{display:block!important;width:100%;height:auto!important;min-height:0!important;margin:0;padding:8px 10px;border-top:1px solid #fff;border-bottom:1px solid #92a9c7;background:linear-gradient(180deg,#f5f8fd,#dbe7f5)}
.app-body .toolbar-primary{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr));align-items:stretch!important;justify-items:stretch!important;gap:8px!important;flex:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;float:none!important;clear:both}
.app-body .tool-link{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:6px!important;min-width:0!important;width:100%!important;max-width:none!important;min-height:81px!important;margin:0!important;padding:9px 5px!important;background:linear-gradient(#fff,#e5edf7);border:1px solid #aabfd8;border-radius:3px;color:#254466;box-shadow:inset 0 1px #fff,0 1px 1px #607b9b18;text-align:center;text-decoration:none!important}
.app-body .tool-link:hover,.app-body .tool-link:focus-visible{background:linear-gradient(#fff8e6,#f8dfaa);border-color:#b99047;outline-offset:2px}
.app-body .tool-link.active{background:linear-gradient(#fff5d5,#efce86);border-color:#ad812f;box-shadow:inset 0 0 0 1px #fff4d0;color:#153b67}
.app-body .toolbar-icon{display:block!important;flex:0 0 auto;width:33px!important;height:33px!important;color:#265da1;stroke-width:1.7;filter:drop-shadow(0 1px 0 #fff)}
.app-body .tool-link:nth-child(3n+2) .toolbar-icon{color:#368044}
.app-body .tool-link:nth-child(3n) .toolbar-icon{color:#af7020}
.app-body .toolbar-label{display:block!important;white-space:normal!important;font-size:13px!important;font-weight:700;line-height:1.22;overflow-wrap:normal}
.app-body .workspace{padding:9px!important;min-height:0!important;flex:1 1 auto}
.app-body .full-main{width:100%!important;min-width:0!important;margin:0!important}
.app-body .panel-caption strong{font-size:18px}
.app-body .panel-caption span{font-size:13px}
.app-body .section-title{font-size:15px}
.app-body .section-title span{font-size:13px}
.app-body .data-table{font-size:14px}
.app-body .data-table th,.app-body .data-table td{padding:9px 10px;line-height:1.4}
.app-body .data-table.compact th,.app-body .data-table.compact td{padding:8px 9px}
.app-body .table-wrap{max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.app-body .classic-form label,.app-body .filter-bar label{font-size:14px}
.app-body .btn{font-size:14px;min-height:36px}
.app-body .hint,.app-body .subtle{font-size:12px}
.app-body .state,.app-body .tag{font-size:12px}
@media (max-width:900px){
  .app-body .toolbar-primary{grid-template-columns:repeat(4,minmax(0,1fr))}
  .app-body .tool-link{min-height:78px!important}
  .app-body .toolbar-label{font-size:13px!important}
  .app-body .title-sub{display:inline}
}
@media (max-width:600px){
  .app-body .app-title{align-items:stretch;flex-direction:column;gap:7px;padding:10px 12px}
  .app-body .titlebar-brand{justify-content:space-between}
  .app-body .titlebar-brand strong{font-size:16px}
  .app-body .title-sub{font-size:12px}
  .app-body .titlebar-session{justify-content:space-between;gap:8px}
  .app-body .titlebar-user{align-items:flex-start}
  .app-body .titlebar-user strong{font-size:12px;max-width:235px}
  .app-body .titlebar-user span{font-size:11px}
  .app-body .shell-toolbar{padding:6px}
  .app-body .toolbar-primary{gap:6px!important}
  .app-body .tool-link{min-height:74px!important;padding:7px 3px!important}
  .app-body .toolbar-icon{width:30px!important;height:30px!important}
  .app-body .toolbar-label{font-size:12px!important}
  .app-body .workspace{padding:6px!important}
  .app-body .data-table{font-size:13px}
  .app-body .data-table th,.app-body .data-table td{padding:8px}
  .app-body .panel-caption strong{font-size:16px}
  .app-body .quick-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .app-body .stat strong{font-size:18px}
}
@media (max-width:430px){
  .app-body .toolbar-primary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .app-body .toolbar-label{font-size:12px!important}
  .app-body .quick-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .app-body .titlebar-brand{display:block}
  .app-body .title-sub{display:block;margin-top:2px}
}

/* ========================================================================
   SIMKEU v1.1.2 — Tabel lebih simetris, ruang tabel responsif.
   Hanya tampilan aplikasi; cetak tetap mengikuti format A4 sebelumnya.
   ======================================================================== */
.app-body .classic-panel{max-width:100%;min-width:0}
.app-body .classic-panel>.table-wrap{
  width:auto!important; max-width:calc(100% - 24px)!important;
  margin:10px 12px 14px!important; overflow-x:auto!important;
  border:1px solid #c4d3e5; border-radius:1px;
  background:#fff;
}
.app-body .table-wrap>.data-table{width:100%;margin:0;border-collapse:collapse;border-spacing:0}
.app-body .data-table th,.app-body .data-table td{vertical-align:middle;box-sizing:border-box;line-height:1.4}
.app-body .data-table th{font-weight:700;text-align:left;white-space:normal;background:linear-gradient(#edf5ff,#d5e4f7)}
.app-body .data-table th.num,.app-body .data-table td.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.app-body .data-table th:first-child,.app-body .data-table td:first-child{border-left:0}
.app-body .data-table th:last-child,.app-body .data-table td:last-child{border-right:0}
.app-body .data-table thead tr:first-child th{border-top:0}
.app-body .data-table .subtle{line-height:1.45;white-space:normal}
.app-body .data-table .empty{padding:23px 12px}
/* Four/five-column summaries stay fully aligned across the content width. */
.app-body .table-source-budget,.app-body .table-categories,.app-body .table-funds{table-layout:fixed}
.app-body .table-source-budget th:nth-child(1){width:19%}
.app-body .table-source-budget th:nth-child(2){width:29%}
.app-body .table-source-budget th:nth-child(3){width:29%}
.app-body .table-source-budget th:nth-child(4){width:23%}
.app-body .table-categories th:nth-child(1){width:7%}
.app-body .table-categories th:nth-child(2){width:63%}
.app-body .table-categories th:nth-child(3){width:12%}
.app-body .table-categories th:nth-child(4){width:18%}
.app-body .table-funds th:nth-child(1){width:17%}
.app-body .table-funds th:nth-child(n+2){width:20.75%}
.app-body .table-activity{min-width:700px}
/* Detailed registers retain readable widths and scroll WITHIN their panel. */
.app-body .table-rab-items{min-width:1190px}
.app-body .table-receipts{min-width:990px}
.app-body .table-expenses{min-width:1070px}
.app-body .table-cashbook{min-width:1070px}
.app-body .table-spj{min-width:1040px}
.app-body .table-rab-items th:nth-child(2),.app-body .table-rab-items td:nth-child(2){min-width:240px;white-space:normal}
.app-body .table-expenses th:nth-child(3),.app-body .table-expenses td:nth-child(3){min-width:230px;white-space:normal}
.app-body .table-receipts th:nth-child(5),.app-body .table-receipts td:nth-child(5){min-width:210px;white-space:normal}
.app-body .table-spj th:nth-child(3),.app-body .table-spj td:nth-child(3){min-width:220px;white-space:normal}
.app-body .table-cashbook th:nth-child(3),.app-body .table-cashbook td:nth-child(3){min-width:210px;white-space:normal}
.app-body .field-help{font-size:12px;color:#526e8d;line-height:1.55;display:block;font-weight:normal}
.app-body #expense-budget-item:disabled{background:#e9eff6;color:#657a93;cursor:not-allowed}
.app-body #expense-budget-item:not(:disabled){background:#fff}
@media(max-width:640px){
 .app-body .classic-panel>.table-wrap{max-width:calc(100% - 16px)!important;margin:8px 8px 12px!important}
 .app-body .table-categories{min-width:570px}
 .app-body .table-source-budget{min-width:480px}
 .app-body .table-funds{min-width:610px}
}
