@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{--ink:#172c3b;--muted:#475569;--accent:#06645f;--line:#cbd5df;--canvas:#eef2f6}
*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',sans-serif;background:var(--canvas);color:var(--ink);font-size:14px;-webkit-font-smoothing:antialiased}h1,h2,h3,.brand{font-family:Manrope,sans-serif}h1{letter-spacing:-.045em;line-height:1.2!important;font-weight:800!important}h2{letter-spacing:-.025em;font-weight:700!important}button,input,select,textarea{font:inherit}a,button,input,select,textarea,summary{transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #40bfb3;outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.app-shell{min-height:100vh;display:flex}.sidebar{width:252px;flex-shrink:0;background:#102c3a;color:#d6e3e8;padding:32px 20px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;border-right:1px solid #183947}.brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none;font-size:24px;font-weight:800;letter-spacing:-1px}.brand img{width:43px;height:43px}.brand-word span{color:#69d6c7}.brand-caption{font-size:9px;letter-spacing:2.2px;text-transform:uppercase;color:#8aa8b5;margin-top:4px;font-weight:600}.sidebar .brand{padding:0 12px}.nav-label{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:#829faa;font-weight:700;margin:45px 14px 15px}.nav-list{display:flex;flex-direction:column;gap:6px}.nav-link{display:flex;align-items:center;gap:12px;padding:13px 15px;border-radius:10px;color:#b5cbd4;font-size:13px;font-weight:500;position:relative}.nav-link:hover{background:#ffffff09;color:white}.nav-link.active{background:#214753;color:#fff;box-shadow:inset 3px 0 #6addcb}.nav-link.active .nav-dot{background:#6addcb}.nav-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#547583}.sidebar-note{margin:auto 12px 24px;padding-top:36px;font-size:11px;line-height:1.8;color:#8eacb8}.sidebar-note strong{color:#c1d5dc;display:block;font-size:12px}.user-panel{border-top:1px solid #ffffff12;padding:21px 12px 0}.user-name{color:#e7f0f3;font-weight:600;font-size:12px;overflow-wrap:anywhere}.user-email{font-size:10px;color:#8eacb8;margin-top:5px;overflow-wrap:anywhere}.logout{font-size:11px;color:#b1c9d2;margin-top:17px}.logout:hover{color:white}.main-area{flex:1;min-width:0}.topbar{height:80px;background:#ffffffd9;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 40px}.breadcrumb{font-size:12px;color:#81919b}.breadcrumb strong{color:#354e5c;font-weight:600}.breadcrumb span{margin:0 12px;color:#bac7cd}.topbar-meta{display:flex;gap:18px;align-items:center;font-size:11px;color:#7c8d97}.role-badge{background:#edf5f4;color:#13756c;border:1px solid #dcece8;border-radius:7px;padding:7px 11px;font-size:9px;letter-spacing:1px;font-weight:700}.page-content{max-width:1540px;margin:auto;padding:38px 40px 55px;animation:page-enter .28s ease-out}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:var(--accent);font-weight:700;margin-bottom:12px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;margin-bottom:30px}.page-heading h1{font-size:32px}.page-heading p{max-width:660px;font-size:13px;line-height:1.8;color:var(--muted);margin-top:10px}.page-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:7px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:0 3px 12px #19334503}.field{display:block;width:100%;min-height:44px;border:1px solid #dce5e9;border-radius:8px;padding:11px 13px;background:#fff;color:var(--ink);font-size:13px}.field:hover{border-color:#b1c8cd}.field:focus{outline:none;border-color:#168b83;box-shadow:0 0 0 3px #168b8315}.field::placeholder{color:#9aa8b2}.lab{display:block;font-size:11px;font-weight:600;color:#526774;margin-bottom:8px}.btn,.btn2{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:11px 16px;font-size:12px;font-weight:600;min-height:42px;line-height:1.4;text-decoration:none;white-space:normal}.btn{background:#087f79;color:white;border:1px solid #087f79;box-shadow:0 3px 6px #087f7914}.btn:hover{background:#076c67;border-color:#076c67;transform:translateY(-1px)}.btn2{background:#fff;color:#3e5664;border:1px solid #dce5e9}.btn2:hover{background:#f6f9fa;border-color:#aec7cb}.btn:active,.btn2:active{transform:translateY(0)}table{border-collapse:separate;border-spacing:0;width:100%}th{font-size:9px;font-weight:700;color:#82939d;letter-spacing:1px;text-transform:uppercase;text-align:left;padding:14px 12px;background:#f7f9fa;border-bottom:1px solid var(--line);white-space:nowrap}th:first-child{border-radius:7px 0 0 7px}th:last-child{border-radius:0 7px 7px 0}td{padding:17px 12px;border-bottom:1px solid #edf2f4;font-size:12px;line-height:1.6;font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:0}tr:hover td{background:#fafcfc}td[colspan]{padding:32px 12px;color:#82939d}.pill{display:inline-flex;align-items:center;padding:5px 9px;background:#eff5f5;color:#4b6e75;border:1px solid #e1eded;border-radius:6px;font-size:10px;font-weight:600;line-height:1.3}.notice{padding:14px 18px;border:1px solid;border-radius:10px;font-size:12px;line-height:1.7;margin-bottom:22px}.notice-success{color:#176953;background:#eff9f4;border-color:#d9eee2}.notice-error{color:#a33d45;background:#fff4f4;border-color:#f4dce0}.metric-card{position:relative;overflow:hidden;padding:24px}.metric-card:before{content:'';position:absolute;top:0;left:24px;right:24px;height:2px;background:#d6e7e8}.metric-card:first-child:before{background:#15998b}.metric-label{font-size:11px;color:#708591;font-weight:500}.metric-value{font-family:Manrope,sans-serif;font-size:27px;font-weight:800;letter-spacing:-1px;margin-top:17px;font-variant-numeric:tabular-nums}.metric-caption{font-size:10px;color:#94a4ae;margin-top:8px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.section-heading h2{font-size:15px}.section-subtitle{color:#82939d;font-size:11px;line-height:1.8;margin-bottom:20px}.document-list{list-style:none;padding:0;counter-reset:documents}.document-list li{counter-increment:documents;display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid #edf2f4}.document-list li:last-child{border:0}.document-list li:before{content:counter(documents,decimal-leading-zero);font-size:10px;color:#7c959e;background:#f2f6f7;border:1px solid #e5edef;border-radius:6px;padding:5px 7px;flex-shrink:0}.document-list li>div{flex:1;min-width:0;padding-top:3px}.document-list .pill{white-space:nowrap}.text-indigo-600,.text-indigo-700{color:#087f79!important}.text-indigo-800,.text-indigo-900{color:#285d60!important}.bg-indigo-50{background:#edf7f5!important}.border-indigo-100{border-color:#d9ece7!important}.text-3xl{font-size:30px!important}.text-2xl{letter-spacing:-.035em}.font-extrabold{font-weight:700}details>summary{list-style:none;padding:4px 0}details>summary:after{content:'+';float:right;color:#81939c;margin-left:12px}details[open]>summary:after{content:'?'}input[type=file]{font-size:11px;padding:8px}input::file-selector-button{border:0;background:#edf4f4;color:#28645f;border-radius:5px;padding:6px 9px;margin-right:8px}input[type=checkbox]{accent-color:#087f79}form.flex{flex-wrap:wrap}dl dd{overflow-wrap:anywhere}.auth-body{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-story{background:#102c3a;color:white;padding:56px 64px;display:flex;flex-direction:column;position:relative;overflow:hidden}.auth-story:after{content:'';position:absolute;width:520px;height:520px;bottom:-160px;right:-260px;border:1px solid #ffffff10;border-radius:50%;box-shadow:0 0 0 60px #ffffff03,0 0 0 120px #ffffff02;pointer-events:none}.auth-story-content{margin:auto 0;max-width:470px;padding:70px 0}.auth-story-content h1{font-size:46px;line-height:1.22!important;letter-spacing:-2px}.auth-story-content h1 span{color:#78d6c9}.auth-story-content p{font-size:14px;line-height:1.9;color:#a1bdc8;margin-top:24px;max-width:370px}.auth-footer{font-size:10px;color:#789ba9;letter-spacing:.4px}.auth-main{padding:48px;display:flex;align-items:center;justify-content:center}.auth-form{width:100%;max-width:370px}.auth-form h1{font-size:29px;margin-bottom:10px}.auth-intro{font-size:13px;line-height:1.7;color:#82939d;margin-bottom:30px}.auth-form .btn{width:100%;margin-top:14px}.auth-form label{display:block}.auth-switch{font-size:12px;color:#81919b;margin-top:28px}.auth-switch a{color:#087f79;font-weight:700}.auth-mobile-brand{display:none}.auth-form .lab{margin-bottom:8px}.auth-form .field{margin-top:8px}.auth-remember{display:flex!important;gap:8px;align-items:center;font-size:12px;color:#6c808c} @keyframes page-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.page-content{padding-top:46px}}@media(max-width:1100px){.sidebar{width:218px;padding:28px 14px}.topbar{padding:0 26px}.page-content{padding:30px 26px}.auth-story{padding:40px}.auth-story-content h1{font-size:38px}}@media(max-width:767px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:21px 20px}.sidebar .brand{padding:0}.brand img{width:36px;height:36px}.brand{font-size:22px}.brand-caption{display:none}.nav-label,.sidebar-note,.user-panel{display:none}.nav-list{flex-direction:row;overflow-x:auto;margin-top:22px;gap:7px;padding-bottom:3px}.nav-link{white-space:nowrap;padding:10px 12px;font-size:11px}.nav-dot{display:none}.topbar{height:62px;padding:0 20px}.breadcrumb{font-size:10px}.breadcrumb span{margin:0 6px}.topbar-meta{gap:8px}.topbar-date{display:none}.page-content{padding:26px 18px 40px}.page-heading{gap:15px;margin-bottom:24px}.page-heading h1,.text-3xl{font-size:26px!important}.card{padding:18px;border-radius:11px}.metric-value{font-size:24px}.auth-body{display:block;background:#f4f7f8}.auth-story{display:none}.auth-main{min-height:100vh;padding:30px 24px}.auth-mobile-brand{display:flex;color:#102c3a;margin-bottom:48px}.auth-mobile-brand .brand-word span{color:#087f79}.auth-form{max-width:400px}.document-list li>div{gap:8px}.topbar .mobile-logout{display:block}.page-actions{padding-top:0}th,td{padding-left:10px;padding-right:10px}table{min-width:440px}}@media(min-width:768px){.mobile-logout{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.sidebar,.topbar,.page-actions{display:none}.page-content{padding:0}.card{box-shadow:none;break-inside:avoid}}

.pill[data-status="paid"],.pill[data-status="approved"],.pill[data-status="disbursed"],.pill[data-status="active"],.pill[data-status="issued"],.pill.bg-green-50{color:#19705b;background:#edf8f2;border-color:#d8ecdf}.pill[data-status="pending"],.pill[data-status="partial"],.pill.bg-amber-50{color:#906821;background:#fcf7eb;border-color:#f0e6ce}.pill[data-status="rejected"]{color:#a94750;background:#fff2f3;border-color:#f3dfe2}.pill[data-status="submitted"]{color:#366b91;background:#edf5fc;border-color:#dce9f4}.pill[data-status="draft"],.pill[data-status="unverified"]{color:#74838d;background:#f4f6f8;border-color:#e7ecef}.auth-form .field{margin-top:8px}.auth-form input[type="email"]{font-weight:400}.auth-form input[type="password"]{font-weight:400}

