:root{--ink:#172d38;--muted:#657781;--line:#dce5e9;--accent:#087e82;--paper:#f4f7f8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}a{color:#067a80}a:hover{color:#04575c}.sidebar{position:fixed;inset:0 auto 0 0;width:236px;background:#102f39;color:#dae7e9;padding:25px 18px;overflow:auto}.brand{display:block;color:white!important;font-size:25px;font-weight:700;letter-spacing:1px;margin-bottom:32px;text-decoration:none!important}.brand>span{display:inline-flex;align-items:center;justify-content:center;background:#15999a;border-radius:7px;width:38px;height:38px;margin-right:7px}.brand small{display:block;color:#a0bec3;font-size:10px;letter-spacing:2px;margin:10px 0 0 51px}.nav-heading{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#87a9af;margin:24px 10px 8px}.sidebar>a:not(.brand){display:block;border-radius:6px;padding:9px 12px;color:#dae7e9;text-decoration:none;font-size:13px}.sidebar>a:hover,.sidebar>a.active{background:#214751;color:white}.sidebar-bottom{font-size:12px;margin:35px 10px 0;color:#bfced2}.sidebar-bottom span{font-size:11px;color:#87a9af}.workspace{margin-left:236px;min-height:100vh}.topbar{background:white;border-bottom:1px solid var(--line);padding:18px 32px;display:flex;align-items:center;gap:14px}.topbar form{display:flex;gap:8px;align-items:center}.topbar select{min-width:220px}.user{margin-left:auto;font-size:13px;white-space:nowrap}.user span{display:block;font-size:11px;color:var(--muted)}main{padding:32px;max-width:1800px;margin:auto}.eyebrow{font-size:10px;letter-spacing:1.3px;color:var(--muted);margin:0 0 18px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}h1{font-size:28px;font-weight:650;margin:0 0 8px;letter-spacing:-.6px}h2{font-size:17px;font-weight:600;margin:0 0 20px}p{line-height:1.7}.page-heading p,.muted{color:var(--muted);font-size:13px;margin-bottom:0}.panel{background:white;border:1px solid var(--line);border-radius:9px;box-shadow:none;padding:24px;margin-bottom:22px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.metrics section{background:white;border:1px solid var(--line);padding:24px;border-radius:9px}.metrics span{font-size:12px;color:var(--muted)}.metrics strong{display:block;font-size:36px;font-weight:600;margin:12px 0 5px}.metrics small{color:var(--muted);font-size:11px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.steps a{color:var(--ink);text-decoration:none;padding:14px 0}.steps b{display:block;color:var(--accent);margin-bottom:18px;font-size:12px}.steps strong{display:block;margin-bottom:8px}.steps span{font-size:12px;color:var(--muted)}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fields label,.inline-form label{font-weight:500;font-size:12px}.fields .form-control,.inline-form .form-control{margin-top:7px}.form-control{border:1px solid #cddbe0;border-radius:5px;box-shadow:none;color:var(--ink);height:37px}.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 2px #087e8219}.btn{border-radius:5px;font-size:12px;padding:9px 15px;font-weight:500}.btn-primary{background:var(--accent);border-color:var(--accent)}.btn-primary:hover,.btn-primary:focus{background:#066569;border-color:#066569}.btn-default{border-color:#cfdbdf;color:var(--ink);background:white}.btn-sm{padding:5px 9px}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.inline-form{display:flex;align-items:flex-end;flex-wrap:wrap;gap:18px}.inline-form .check{padding-bottom:10px}.check{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:400;margin-right:20px}input[type=checkbox]{margin:0}.table{font-size:12px;margin-bottom:12px}.table>thead>tr>th{font-weight:600;color:#607580;background:#f7f9fa;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;padding:12px}.table>tbody>tr>td,.table>tfoot>tr>th{padding:11px 12px;border-top:1px solid #e9eef0;vertical-align:middle}.table-striped>tbody>tr:nth-of-type(odd){background:#fcfdfd}.amount,.money{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.badge-status{display:inline-block;border-radius:4px;padding:4px 7px;font-size:10px}.badge-status.open{background:#e5f5ed;color:#21704e}.badge-status.closed{background:#eceff2;color:#60717b}.badge-status.draft{background:#fff3d9;color:#8c6719}.table-scroll{overflow:auto}.journal-lines{margin-top:28px;min-width:780px}.journal-lines td:first-child{width:29%}.journal-lines td:nth-child(2){width:36%}.journal-lines .money{min-width:100px}.journal-summary{padding:15px;background:#f2f7f7;border-radius:5px;text-align:right;font-variant-numeric:tabular-nums}.journal-summary.unbalanced{color:#a14a20;background:#fff4ea}.empty{text-align:center;padding:60px 24px}.admin-card{padding:18px 24px;border:1px solid var(--line);background:white;margin:12px 0;border-radius:7px}.admin-card span{display:block;color:var(--muted);font-size:12px;margin-top:6px}footer{display:flex;justify-content:space-between;margin:20px 32px;padding:20px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}details summary{cursor:pointer;font-weight:500}details>form{margin-top:20px}pre{max-width:600px;white-space:pre-wrap;word-break:break-word}fieldset[disabled] .form-control{background:#f6f8f9;color:#4d626d}kbd{font-size:9px;margin-left:6px;background:#ffffff25;box-shadow:none}.tableviewer-scroll{overflow:auto}.tableviewer-toolbar-layout{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}.tableviewer-actions{display:flex;gap:8px}.tableviewer-filter-row .form-control{height:30px;min-width:65px;font-size:12px}.tableviewer-pagination{display:flex;gap:5px;align-items:center;margin-top:15px}.tableviewer-status{margin-top:10px}.tableviewer-row-selected{background:#dff1f1!important}.local-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 15px}.local-tools input{max-width:320px}.local-pager{display:flex;gap:12px;align-items:center;margin-top:18px}.local-pager span{font-size:12px;color:var(--muted)}.result{background:#f0f7f6!important}.modal .panel{margin-bottom:0}.modal label{font-size:12px}.tableviewer-sortable{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #087e82;outline-offset:3px}@media(max-width:1100px){.sidebar{width:205px}.workspace{margin-left:205px}main{padding:24px}.steps{grid-template-columns:repeat(2,1fr)}.topbar{padding:15px 24px}.topbar select{min-width:120px}.user{display:none}}@media(max-width:750px){.sidebar{position:static;width:auto;padding:14px;display:flex;flex-wrap:wrap;gap:4px}.brand{width:100%;margin:0}.brand small,.nav-heading,.sidebar-bottom{display:none}.sidebar>a:not(.brand){padding:6px 8px;font-size:11px}.workspace{margin-left:0}main{padding:20px 14px}.metrics,.fields{grid-template-columns:1fr}.page-heading{align-items:flex-start;flex-direction:column}.topbar{padding:12px;flex-wrap:wrap}.topbar form:last-child{margin-left:auto}.panel{padding:16px}.steps{grid-template-columns:1fr 1fr}h1{font-size:24px}footer{margin:10px 14px}footer span{display:none}}

/* MBS styling for the existing framework detail dialog. */
.gsx-master-modal .modal-dialog{width:640px;max-width:calc(100% - 32px);margin:8vh auto}
.gsx-master-modal .modal-content{border:1px solid #dce5e9;border-radius:14px;overflow:hidden;box-shadow:0 24px 80px #102f3933}
.gsx-master-modal .tabledetail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 28px 22px;border-bottom:1px solid var(--line);background:#fff}
.gsx-master-modal .tabledetail-title{font-size:22px;line-height:1.3;letter-spacing:-.4px;margin:0 0 8px;font-weight:650}
.gsx-master-modal .tabledetail-header p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.gsx-detail-close{flex:none;border:0;border-radius:7px;background:#f2f6f7;color:#657781;font-size:25px;line-height:30px;width:32px;height:32px;padding:0;cursor:pointer}
.gsx-detail-close:hover{background:#e4edef;color:var(--ink)}
.gsx-master-modal .tabledetail-body{padding:24px 28px}
.gsx-master-modal #detailform{margin:0}
.gsx-master-modal #detailform>.row,.gsx-master-modal #detailform>br{display:none}
.gsx-detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gsx-detail-fields.gsx-detail-single{grid-template-columns:1fr}
.gsx-detail-fields .form-group{margin:0;min-width:0}
.gsx-detail-fields label{display:block;font-weight:600;font-size:12px;margin:0 0 8px;color:#344e5a}
.gsx-detail-fields .form-control{height:42px;border-radius:7px;padding:10px 12px;font-size:14px}
.gsx-field-help{display:block;color:var(--muted);font-size:12px;margin-top:8px}
.gsx-detail-status{grid-column:1/-1;border-top:1px solid #edf1f3;padding-top:18px}
.gsx-detail-status label{display:flex;align-items:center;gap:10px;font-weight:400;margin:0}
.gsx-detail-status input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);margin:0}
.gsx-master-modal .tabledetail-footer{padding:18px 28px;border-top:1px solid var(--line);background:#f8fafb}
.gsx-master-modal .tabledetail-footer>div{display:flex;flex-direction:row-reverse;gap:10px}
.gsx-master-modal .tabledetail-footer .btn{padding:10px 18px;font-size:13px;border-radius:7px}
.gsx-master-modal #cancelbtn{border:1px solid #d5dfe4;background:white;color:#425a66}
@media(max-width:600px){.gsx-master-modal .modal-dialog{margin:20px auto}.gsx-master-modal .tabledetail-header,.gsx-master-modal .tabledetail-body{padding:20px}.gsx-master-modal .tabledetail-footer{padding:16px 20px}.gsx-detail-fields{grid-template-columns:1fr}}
