:root{--bg:#eef3f7;--panel:#fff;--text:#17212b;--muted:#718191;--line:#d9e2ea;--blue:#2481cc;--green:#2d9d66;--red:#d34b4b}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}.hidden{display:none!important}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#17212b,#2481cc)}.card{width:min(390px,90vw);background:#fff;padding:32px;border-radius:14px;display:grid;gap:14px;box-shadow:0 20px 60px #0005}.logo{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#2481cc;color:white;font-size:23px;font-weight:800}.card h1{margin:0}.card p,.card small{color:var(--muted)}label{display:grid;gap:6px;color:#4d6174}input,textarea,select{border:1px solid var(--line);border-radius:7px;padding:10px;background:#fff}textarea{min-height:100px}.card button,.primary{border:0;border-radius:7px;background:var(--blue);color:white;padding:11px 16px;cursor:pointer}.error{color:var(--red)}.app{min-height:100vh;display:grid;grid-template-columns:240px 1fr}aside{background:#17212b;color:white;padding:22px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font-size:20px;margin-bottom:28px}nav{display:grid;gap:7px}nav button,.profile button,.tabs button{border:0;background:transparent;color:#cbd7e1;text-align:left;padding:11px;border-radius:7px;cursor:pointer}nav button.active,nav button:hover{background:#2481cc44;color:white}.profile{margin-top:auto;border-top:1px solid #ffffff22;padding-top:16px;display:grid;gap:5px}.profile small{color:#8da1b5}.profile button{padding-left:0}main{padding:28px;min-width:0}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}header h1{margin:4px 0}.view{display:none}.view.active{display:block}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.metrics article,.panel{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:18px;box-shadow:0 8px 22px #17212b0d}.metrics span{color:var(--muted)}.metrics b{display:block;font-size:25px;margin-top:10px}.chart{height:220px;display:flex;align-items:end;gap:10px}.bar{flex:1;background:linear-gradient(#63b9ef,#2481cc);min-height:8px;border-radius:6px 6px 0 0}.panel h2{margin-top:0}.form{max-width:760px;display:grid;gap:14px}.row,.inline{display:flex;gap:12px}.row>*{flex:1}.inline{margin-bottom:10px}.hint{color:var(--muted);font-size:13px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 9px;border-bottom:1px solid var(--line);white-space:nowrap}.badge{padding:4px 8px;border-radius:20px;font-size:12px;background:#e8eef3}.active-b{color:var(--green);background:#e7f7ee}.rejected-b{color:var(--red);background:#ffeded}.pending-b{color:#a76b09;background:#fff3d7}.table-wrap{overflow:auto}.tabs{display:flex;margin-bottom:10px}.tabs button{color:var(--blue);background:white;margin-right:8px}.action{border:0;border-radius:5px;padding:6px 9px;margin-right:5px;cursor:pointer}.ok{background:#e7f7ee;color:#18764a}.no{background:#ffeded;color:#a92e2e}#toast{position:fixed;right:25px;top:20px;background:#17212b;color:white;padding:12px 16px;border-radius:7px;display:none}@media(max-width:850px){.app{grid-template-columns:1fr}aside{min-height:auto}nav{grid-template-columns:repeat(3,1fr)}.profile{margin-top:16px}.metrics{grid-template-columns:repeat(2,1fr)}main{padding:16px}}@media(max-width:520px){.metrics{grid-template-columns:1fr}.row,.inline,header{flex-direction:column}nav{grid-template-columns:repeat(2,1fr)}}
