*{box-sizing:border-box} :root{font-family:Tahoma,Arial,sans-serif;color:#163149;background:#f3f6fa;font-size:16px;--navy:#10273d;--teal:#087e83;--line:#dde5ed}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;background:var(--teal);color:white;border:0;padding:12px 20px;border-radius:10px}button:hover{filter:brightness(.93)}button:disabled{opacity:.5;cursor:wait}button.ghost{background:transparent;color:var(--teal);border:1px solid var(--line)}button.danger{background:#b33946}input,select,textarea{display:block;width:100%;padding:12px;border:1px solid #c9d6e2;border-radius:9px;background:white;color:#163149;margin-top:8px}textarea{min-height:105px;resize:vertical}label{display:block;font-size:14px;margin:16px 0;line-height:1.7}h1,h2,h3,p{line-height:1.8}h2{font-size:24px;margin:0 0 12px}h3{font-size:18px;margin:0 0 12px}p{color:#607487}a{color:var(--teal)}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-brand{background:var(--navy);color:white;padding:12vh 9%;display:flex;flex-direction:column;justify-content:center;border-bottom:12px solid #1bc0b7}.brand{font-size:25px;letter-spacing:3px;font-weight:bold;direction:ltr;text-align:right}.auth-brand h1{font-size:44px;margin-top:65px}.auth-brand p{color:#b6cedd}.auth-form{align-self:center;max-width:480px;width:100%;padding:38px;margin:auto}.auth-form form button{width:100%;margin:10px 0}.shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:#ccdde9;padding:32px 18px;position:sticky;top:0;height:100vh;overflow:auto}.sidebar .brand{font-size:22px;padding:6px 12px 30px}.sidebar button{display:block;text-align:right;width:100%;background:transparent;color:#c3d5e3;margin:5px 0;padding:13px 16px}.sidebar button.active{background:#1f465b;color:#6ee2d4;border-right:3px solid #44d2c4}.sidebar .section-label{font-size:13px;color:#87a3b9;padding:20px 16px 5px}.content{min-width:0}.topbar{height:86px;background:white;border-bottom:1px solid var(--line);padding:18px 36px;display:flex;justify-content:space-between;align-items:center;gap:12px}.topbar p{margin:0;font-size:14px}.workspace{padding:32px 36px;max-width:1500px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:25px}.heading p{margin:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:24px;margin-bottom:18px}.stat{border-top:3px solid #20a9a4}.stat strong{font-size:32px;display:block;margin:15px 0}.stat p{margin:0;font-size:14px}.welcome{background:var(--navy);color:white;border:0;display:flex;justify-content:space-between;align-items:center;gap:24px}.welcome p{color:#bed4e2}.welcome .big{font-size:42px;color:#56d9cc;white-space:nowrap}.badge{display:inline-block;padding:5px 10px;border-radius:6px;background:#e7f4f2;color:#14716e;font-size:13px;line-height:1.6}.badge.pending{background:#fff0d9;color:#8e5e18}.badge.rejected,.badge.failed{background:#fce8ec;color:#aa3048}.muted{color:#6c8091;font-size:14px}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.actions button{padding:9px 14px;font-size:14px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:right;font-size:14px}th,td{padding:14px 12px;border-bottom:1px solid var(--line);line-height:1.8}th{color:#64788a;background:#f7f9fc}tr:last-child td{border:0}.empty{text-align:center;padding:45px;color:#6a7e90}.split{display:flex;justify-content:space-between;gap:16px;align-items:center}.error{color:#a6263c;background:#ffedf0;padding:10px;border-radius:8px}.success{color:#12675a}.pill{background:#edf5f7;border-radius:8px;padding:9px 14px;font-size:14px}.timeline{border-right:2px solid #20aba2;padding:0 20px}.timeline p{margin:10px 0}.money{direction:ltr;display:inline-block;font-weight:bold}.file{display:block;margin:10px 0}.note{padding:12px 15px;background:#edf5f8;border-radius:8px;font-size:14px;line-height:1.9}dialog{border:0;border-radius:16px;width:min(600px,94vw);max-height:88vh;padding:26px;box-shadow:0 25px 100px #10273d40;color:#163149}dialog::backdrop{background:#10273d88}#toast{position:fixed;bottom:24px;left:24px;max-width:450px;z-index:10;background:#10273d;color:white;border-radius:10px;padding:16px 24px;display:none;line-height:1.8}.tabs{display:flex;gap:8px;margin:20px 0;flex-wrap:wrap}.tabs button{background:white;color:#527080;border:1px solid var(--line)}.tabs button.active{background:#e4f6f2;color:#057c77;border-color:#0b9d91}small{font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.progress{height:7px;background:#e4eaee;border-radius:8px;margin:14px 0;overflow:hidden}.progress span{display:block;height:100%;background:#1aaba1}button:focus-visible,a:focus-visible{outline:3px solid #33bab0;outline-offset:3px}@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;padding:14px;display:flex;gap:6px;flex-wrap:wrap}.sidebar .brand{width:100%;padding:8px}.sidebar button{width:auto;font-size:14px;margin:0;padding:9px}.sidebar .section-label{display:none}.topbar{height:auto;padding:18px}.workspace{padding:20px 16px}.grid,.grid.two{grid-template-columns:1fr}.auth{grid-template-columns:1fr}.auth-brand{padding:30px}.auth-brand h1{font-size:28px;margin:20px 0}.auth-brand p{margin:0}.heading{align-items:flex-start}.welcome .big{font-size:28px}.form-grid{grid-template-columns:1fr}}
@media(max-width:850px){.sidebar{flex-wrap:nowrap;overflow-x:auto;align-items:center;gap:8px}.sidebar .brand{width:auto;flex-shrink:0;font-size:17px}.sidebar button{white-space:nowrap;flex-shrink:0}.topbar .pill{font-size:12px}.welcome{flex-wrap:wrap}.heading{margin-bottom:18px}.card{padding:20px}.badge{white-space:nowrap}.auth-form{padding:26px}}

.deadline-calendar{max-width:380px;padding:12px;border:1px solid #c9d6e2;border-radius:12px;background:#fff;margin-top:8px}.calendar-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.calendar-head button{padding:7px;font-size:13px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.calendar-grid button{padding:8px 2px;background:#eaf5f4;color:#126765}.deadline-calendar[hidden]{display:none}
