:root{--ink:#163047;--blue:#165f86;--soft:#f3f7fa;--line:#dbe5eb;--amber:#a75b00}*{box-sizing:border-box}body{margin:0;font:14px Inter,Arial,sans-serif;color:var(--ink);background:var(--soft)}button,input,select{font:inherit}button{border:1px solid #b7c9d4;background:#fff;padding:9px 12px;border-radius:7px;color:#14354c;cursor:pointer}button.primary{background:#126b7d;color:#fff;border-color:#126b7d}button:disabled{opacity:.5;cursor:not-allowed}.app{min-height:100vh;display:grid;grid-template-columns:235px 1fr}.app aside{background:#102e42;color:#dbe9f0;padding:25px 14px;display:flex;flex-direction:column;gap:6px}.brand{font-weight:800;font-size:21px;letter-spacing:.5px;color:#fff;margin:3px 10px 30px}.brand small{display:block;font-size:10px;letter-spacing:1.5px;color:#8fb5c5;margin-top:3px}.app aside p{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#7fabbf;margin:14px 10px 4px}.app aside button{border:0;background:transparent;color:#dbe9f0;text-align:left}.app aside button.active,.app aside button:hover{background:#1b516d;color:white}.app aside span{padding:8px 12px;color:#8ca7b5}.app aside footer{font-size:11px;line-height:1.45;color:#8ca7b5;padding:20px 10px;margin-top:auto}.app main{min-width:0}.app header{height:72px;background:#fff;border-bottom:1px solid var(--line);padding:12px 28px;display:flex;align-items:center;justify-content:space-between}.app header small,.heading small,.kpis small{font-size:10px;letter-spacing:1px;color:#68808e}.app header select{display:block;margin-top:3px;min-width:270px;padding:6px;border:1px solid var(--line);border-radius:5px}.app header>div:last-child{display:flex;gap:10px;align-items:center}.app #content{padding:28px;max-width:1600px}.heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.heading h1{font-size:28px;margin:5px 0}.heading p{margin:0;color:#607887}.actions{display:flex;gap:8px;align-items:center}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.kpis article,.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px}.kpis b{font-size:24px;display:block;margin-top:8px}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:15px}.toolbar input{padding:9px;border:1px solid var(--line);border-radius:6px;min-width:290px}.toolbar #sel{margin-left:auto;color:#607887}.table{overflow:auto}table{border-collapse:collapse;width:100%;min-width:920px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#597080;background:#f7fafb}th,td{border-bottom:1px solid var(--line);padding:11px 10px;vertical-align:top}td small{display:block;font-size:11px;color:#708593;margin-top:3px}.warn{color:var(--amber)}.empty{text-align:center;color:#718693;padding:35px!important}.link{padding:5px 8px}.hidden{display:none!important}#modal{position:fixed;inset:0;background:#102d4699;display:grid;place-items:center;padding:20px;z-index:5}#modal>form,#modal>section{max-width:1000px;width:100%;max-height:92vh;overflow:auto;background:white;padding:24px;border-radius:12px;box-shadow:0 18px 50px #102d4650}#modal h2{margin-top:0}.fields{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.fields label,.login label{display:grid;gap:5px;font-size:12px;font-weight:600}.fields input,.fields select,.login input{padding:9px;border:1px solid var(--line);border-radius:6px}.right{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.login{min-height:100vh;display:grid;place-items:center;background:#e8f0f4}.login form{background:#fff;width:390px;padding:36px;border-radius:12px;box-shadow:0 12px 40px #102d4622}.login .brand{color:#163047;margin:0 0 25px}.login .brand small{color:#3d849c}.login h1{font-size:25px}.login p{color:#607887;margin-bottom:24px}.login label{margin:12px 0}.login button{width:100%;background:#126b7d;color:white;margin-top:14px}.error{color:#ab2f26;margin-top:10px}#notice{position:fixed;right:22px;bottom:22px;padding:12px 16px;color:#fff;background:#17715f;border-radius:7px;box-shadow:0 6px 20px #0002;z-index:10}#notice.error{background:#b84035;color:#fff}@media(max-width:820px){.app{grid-template-columns:1fr}.app aside{flex-direction:row;overflow:auto;padding:12px;align-items:center}.app aside p,.app aside span,.app aside footer{display:none}.brand{margin:0 15px 0 0;white-space:nowrap}.app header{padding:10px 15px}.app #content{padding:18px}.heading{display:block}.actions{margin-top:14px}.kpis{grid-template-columns:repeat(2,1fr)}.fields{grid-template-columns:1fr}.app header select{min-width:180px}.app header b{display:none}.toolbar{flex-wrap:wrap}.toolbar input{min-width:0;width:100%}.toolbar #sel{margin-left:0}}
