*{box-sizing:border-box}body{color:#20312e;background:#f5f7f9;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}.boot{color:#78908a;align-content:center;place-items:center;gap:10px;min-height:100vh;display:grid}.boot svg{animation:.8s linear infinite spin}.login{background:radial-gradient(circle at 0 0,#dff4ec,#0000 42%),linear-gradient(140deg,#f7faf9,#edf3f1);place-items:center;min-height:100vh;padding:22px;display:grid}.login form{background:#fff;border:1px solid #dfe9e5;border-radius:24px;width:min(430px,100%);padding:30px;box-shadow:0 24px 70px #193e341f}.logo,.brand{color:#fff;background:#123b33;border-radius:14px;place-items:center;width:46px;height:46px;font-weight:900;display:grid}.login h1{margin:18px 0 6px}.login p{color:#71817c;line-height:1.55}.login label,.form label{color:#586b66;gap:6px;margin-top:13px;font-size:12px;font-weight:800;display:grid}.login input,.form input,.form textarea,.form select{background:#fff;border:1px solid #d8e2df;border-radius:10px;padding:11px}.login button,.panel header button,.welcome button,.form footer button:last-child{color:#fff;cursor:pointer;background:#123b33;border:0;border-radius:10px;padding:11px 15px;font-weight:850}.login>form>button{width:100%;margin-top:18px}.login>form>small{text-align:center;color:#90a09b;margin-top:16px;display:block}.login-error,.form-error,.alert{color:#b73551;background:#fff0f2;border-radius:9px;padding:10px}.portal{grid-template-columns:250px 1fr;min-height:100vh;display:grid}.portal aside{color:#fff;background:#123b33;flex-direction:column;height:100vh;padding:16px;display:flex;position:sticky;top:0}.portal aside header{align-items:center;gap:10px;display:flex}.portal aside header span,.portal aside footer span{gap:2px;display:grid}.portal aside small{color:#a9c2bb}.portal aside header button{color:#fff;background:0 0;border:0;margin-left:auto;display:none}.portal nav{gap:5px;margin-top:24px;display:grid}.portal nav button{color:#c7d7d2;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:11px;font-weight:750;display:flex}.portal nav button.active{color:#123b33;background:#fff}.portal nav svg{width:18px}.portal aside footer{border-top:1px solid #ffffff24;justify-content:space-between;align-items:center;margin-top:auto;padding-top:14px;display:flex}.portal aside footer button{color:#fff;background:0 0;border:0}.portal main{align-content:start;gap:15px;min-width:0;padding:22px;display:grid}.top{align-items:center;gap:12px;display:flex}.top>button{background:#fff;border:1px solid #dfe6e4;border-radius:10px;padding:9px}.top>button:first-child{display:none}.top div{margin-right:auto}.top h1{margin:0;font-size:25px}.top p{color:#82908c;margin:3px 0 0}.welcome{color:#fff;background:linear-gradient(120deg,#123b33,#245e51);border-radius:20px;justify-content:space-between;align-items:center;padding:22px;display:flex}.welcome small{color:#b8d6cd}.welcome h2{margin:5px 0}.welcome p{color:#cbe0da;margin:0}.welcome button{color:#123b33;background:#fff;align-items:center;gap:7px;display:flex}.kpis{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.kpis article{background:#fff;border:1px solid #e0e7e5;border-radius:15px;padding:16px}.kpis small{color:#7e8c88}.kpis b{margin-top:8px;font-size:22px;display:block}.panel{background:#fff;border:1px solid #e0e7e5;border-radius:16px;overflow:hidden}.panel>header{border-bottom:1px solid #edf1f0;justify-content:space-between;align-items:center;min-height:62px;padding:13px 16px;display:flex}.panel h2{margin:0;font-size:15px}.panel header button{align-items:center;gap:6px;display:flex}.table{overflow:auto}.table table{border-collapse:collapse;width:100%;font-size:12px}.table th{text-align:left;color:#788783;text-transform:uppercase;background:#fafcfb;padding:11px;font-size:10px}.table td{color:#596965;border-top:1px solid #eef2f1;padding:11px}.empty{text-align:center!important;padding:35px!important}.status{text-transform:uppercase;background:#eef1f0;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;display:inline-flex}.s-approved,.s-paid,.s-completed,.s-dispatched,.s-reviewed,.s-release,.s-verified{color:#127558;background:#e9f8f2}.s-rejected,.s-cancelled,.s-overdue,.s-fail{color:#bd3652;background:#fff0f2}.s-submitted,.s-reviewing,.s-confirmed,.s-unpaid,.s-partially_paid,.s-in_progress{color:#ac710c;background:#fff5df}.modal{z-index:100;background:#0e221d94;padding:20px;display:flex;position:fixed;inset:0;overflow:auto}.modal form{background:#fff;border-radius:18px;width:min(720px,100%);margin:auto;overflow:hidden}.modal form>header{border-bottom:1px solid #e8eeec;justify-content:space-between;padding:16px 18px;display:flex}.modal h2{margin:0}.modal header button{background:0 0;border:0}.form{grid-template-columns:1fr 1fr;gap:12px;padding:18px;display:grid}.form label{margin:0}.form textarea{min-height:90px}.form .wide,.form footer,.form-error{grid-column:1/-1}.form footer{border-top:1px solid #edf1f0;justify-content:flex-end;gap:8px;padding-top:14px;display:flex}.form footer button{background:#fff;border:1px solid #dce4e1;border-radius:9px;padding:10px 14px;font-weight:800}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=850px){.portal{grid-template-columns:1fr}.portal aside{z-index:80;width:250px;transition:all .2s;position:fixed;left:-270px}.portal aside.open{left:0}.portal aside header button,.top>button:first-child{display:block}.kpis{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.portal main{padding:14px}.kpis,.form{grid-template-columns:1fr}.welcome{gap:15px;display:grid}.form .wide,.form footer,.form-error{grid-column:auto}}
