*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:#f4f6f7;color:#172033}a{color:#6d625c;text-decoration:none}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:#fff;color:#26333a;border-right:1px solid #e2e6e8;padding:22px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:13px;align-items:center;color:#26333a;padding:6px 7px 24px}.brand img{width:48px;height:48px}.brand strong{font-size:21px;display:block}.brand strong{color:#7c736e}.brand small{color:#6b7f8c;display:block;margin-top:2px}.sidebar nav{display:grid;gap:5px}.nav-link{display:flex;align-items:center;gap:11px;color:#536578;border-left:3px solid transparent;padding:11px 12px;border-radius:10px;font-weight:650}.nav-link:hover,.nav-link.active{background:#f4f1ef;color:#7c736e;border-left-color:#7c736e;box-shadow:inset 3px 0 0 #7c736e}.nav-ico{width:23px;height:23px;display:grid;place-items:center}.nav-ico svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.side-footer{margin-top:auto;padding:18px 8px 4px;border-top:1px solid #e3e8ea;display:grid;gap:8px;font-size:13px}.side-footer span{color:#7a878f}.side-footer a{color:#5f5752;font-weight:700}.main{padding:0 30px 26px;min-width:0}.topbar{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar h1{margin:0;color:#5f5752;font-size:30px;letter-spacing:-.4px}.subtle{color:#71828d;font-size:13px;margin-top:4px}.user-chip{background:#fff;border:1px solid #dfe8ed;border-radius:999px;padding:9px 13px;font-weight:700;font-size:13px}.user-chip span{color:#7c8d97;font-weight:500;margin-left:5px}.grid{display:grid;gap:18px}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid #dfe8ed;border-radius:16px;padding:20px;box-shadow:0 8px 28px rgba(90,80,74,.05)}.card h2,.card h3{margin-top:0;color:#5f5752}.metric{font-size:30px;font-weight:800;color:#7c736e}.metric-label{color:#71828d;font-size:13px;margin-top:3px}.actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #cbd9e1;background:#fff;color:#17364a;border-radius:9px;padding:10px 14px;font-weight:750;font-size:14px;cursor:pointer}.btn:hover{border-color:#8fb0c0}.btn.primary{background:#7c736e;color:#fff;border-color:#7c736e}.btn.warn{background:#fff8ed;border-color:#f0c481;color:#8a5407}.btn.danger{background:#fff3f3;border-color:#e8b4b4;color:#9b2424}.table-wrap{overflow:auto;border:1px solid #e1e9ed;border-radius:12px}.table{width:100%;border-collapse:collapse;background:#fff}.table th{background:#f4f8fa;color:#566b78;font-size:12px;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:11px 12px;border-bottom:1px solid #dfe8ed}.table td{padding:12px;border-bottom:1px solid #edf2f4;vertical-align:top}.table tr:last-child td{border-bottom:0}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:750;background:#eaf1f5;color:#466271}.badge.ok{background:#e8f6ed;color:#24693c}.badge.warn{background:#fff3df;color:#8a5a0b}.badge.danger{background:#ffe9e9;color:#932b2b}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid .full{grid-column:1/-1}label{display:block;font-size:13px;font-weight:750;color:#506472}input,select,textarea{width:100%;margin-top:6px;border:1px solid #cad8df;border-radius:9px;padding:10px 11px;background:#fff;font:14px inherit;color:#172033}textarea{min-height:105px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:#7c736e;box-shadow:0 0 0 3px rgba(124,115,110,.10)}.alert{padding:13px 15px;border-radius:10px;margin-bottom:16px;border:1px solid}.alert.success{background:#eef9f1;border-color:#baddc3;color:#245f36}.alert.info{background:#eef6fa;border-color:#bfd6e1;color:#28536a}.alert.warning{background:#fff8eb;border-color:#ecd09b;color:#7a5614}.alert.danger{background:#fff1f1;border-color:#e9b8b8;color:#8f2424}.section-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:4px 0 15px}.section-head h2{margin:0;color:#5f5752}.muted{color:#768892}.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#7a8d97;font-weight:800}.notice{border-left:4px solid #f1a23a;background:#fff8ed;padding:13px 15px;border-radius:8px;color:#6d4d16}.footer{color:#80919b;font-size:12px;padding:25px 2px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#eaf3f7,#fafcfd 55%,#fff8ed)}.login-card{width:min(440px,100%);background:#fff;border:1px solid #dce7ec;border-radius:20px;padding:30px;box-shadow:0 24px 60px rgba(7,59,87,.12)}.login-brand{display:flex;gap:13px;align-items:center}.login-brand img{width:64px}.login-brand strong{display:block;color:#7c736e;font-size:23px}.login-brand small{color:#768892}.login-card h1{color:#5f5752;margin:30px 0 8px}.login-card .btn{width:100%;margin-top:20px}.center{text-align:center}.empty{padding:30px;text-align:center;color:#71828d}.interface-card{position:relative}.interface-card .provider{font-size:20px;font-weight:800;color:#5f5752}.interface-card p{color:#647986;line-height:1.5}.status-row{display:flex;justify-content:space-between;gap:10px;align-items:center}.payroll-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.payroll-summary>div{background:#f5f8fa;padding:13px;border-radius:10px}.payroll-summary strong{display:block;color:#7c736e;font-size:18px;margin-top:4px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.tab{padding:8px 11px;border-radius:8px;background:#eaf1f5;color:#466271;font-weight:700}.tab.active{background:#7c736e;color:#fff}@media(max-width:1050px){.grid.cols-4,.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{grid-template-columns:220px 1fr}.main{padding:0 20px 20px}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:relative;height:auto}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.side-footer{margin-top:18px}.main{padding:0 14px 18px}.topbar{min-height:82px}.grid.cols-4,.grid.cols-3,.grid.cols-2,.form-grid,.payroll-summary{grid-template-columns:1fr}.user-chip{display:none}}
