:root{--floresta:#10392f;--floresta-2:#174638;--esmeralda:#237a5b;--dourado:#c4a162;--dourado-claro:#e3c890;--fundo:#f7f9f6;--papel:#fff;--grafite:#25312d;--texto-2:#4f5f57;--linha:#dfe7e0;--erro:#a8434a;--erro-fundo:#fbeeee;--ok-fundo:#e9f5ee;--aviso-fundo:#fbf4e6;--aviso-texto:#7a5a1f;--raio:14px;--sombra:0 8px 26px #10392f12;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--grafite);background:var(--fundo);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{background:var(--fundo);color:var(--grafite);margin:0}a{color:var(--esmeralda)}button,input,select{font:inherit}:focus-visible{outline:3px solid var(--dourado);outline-offset:2px}.layout{min-height:100vh;display:flex}.sidebar{background:var(--floresta);color:#eef3ef;border-top:3px solid var(--dourado);flex:0 0 248px;width:248px;height:100vh;padding:22px 14px;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:12px;padding:0 8px 26px;display:flex}.brand img{border-radius:12px;width:46px;height:46px}.brand-name{letter-spacing:-1px;color:#fff;font-size:24px;font-weight:760;line-height:1}.brand-name span{color:var(--dourado-claro)}.brand-sub{letter-spacing:1.4px;text-transform:uppercase;color:var(--dourado-claro);margin-top:5px;font-size:10px}.nav-label{letter-spacing:1.6px;text-transform:uppercase;color:#a9c2b3;margin:18px 0 6px;padding:0 10px;font-size:10px;font-weight:700}.nav-link{color:#e4ece6;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:520;text-decoration:none;display:flex}.nav-link:hover{color:#fff;background:#ffffff14}.nav-link.active{color:#fff;box-shadow:inset 3px 0 0 var(--dourado);background:#ffffff24;font-weight:680}.nav-tag{color:#c9d8cf;background:#ffffff1a;border-radius:99px;padding:1px 7px;font-size:10px}.page{flex:1;min-width:0}.topbar{background:var(--papel);border-bottom:1px solid var(--linha);justify-content:space-between;align-items:center;gap:12px;padding:16px 32px;display:flex}.topbar .menu-btn{display:none}.content{max-width:1180px;margin:0 auto;padding:28px 32px 56px}.eyebrow{letter-spacing:2px;text-transform:uppercase;color:#8a6a2f;font-size:11px;font-weight:760}h1{letter-spacing:-.6px;color:var(--floresta);margin:4px 0 6px;font-size:28px}h2{color:var(--floresta);margin:0 0 12px;font-size:17px}.lead{color:var(--texto-2);max-width:680px;margin:0 0 24px}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.card{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);box-shadow:var(--sombra);padding:20px 22px}.muted{color:var(--texto-2);font-size:13px}.btn{border:1px solid var(--linha);background:var(--papel);height:42px;color:var(--floresta);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:650;display:inline-flex}.btn:hover{background:#eef4ef}.btn.primary{background:var(--floresta);border-color:var(--floresta);color:#fff}.btn.primary:hover{background:var(--floresta-2)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.link{height:auto;color:var(--esmeralda);background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field label{color:var(--texto-2);font-size:13px;font-weight:650}.field input{height:44px;color:var(--grafite);background:#fff;border:1px solid #cad6cc;border-radius:10px;padding:0 12px}.field input:focus{border-color:var(--esmeralda);outline:2px solid #d4eadd}.alert{border-radius:10px;margin-bottom:14px;padding:11px 14px;font-size:14px}.alert.error{background:var(--erro-fundo);color:var(--erro);border:1px solid #efcfd1}.alert.ok{background:var(--ok-fundo);color:#1e5e43;border:1px solid #cbe5d6}.alert.warn{background:var(--aviso-fundo);color:var(--aviso-texto);border:1px solid #eedcb6}.status-row{border-bottom:1px solid #edf2ee;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:14px;display:flex}.status-row:last-child{border-bottom:0}.pill{white-space:nowrap;border-radius:99px;padding:3px 10px;font-size:12px;font-weight:700}.pill.ok{background:var(--ok-fundo);color:#1e5e43}.pill.wait{background:var(--aviso-fundo);color:var(--aviso-texto)}.pill.bad{background:var(--erro-fundo);color:var(--erro)}.alloc-row{grid-template-columns:1fr 110px;align-items:center;gap:12px;margin-bottom:10px;display:grid}.alloc-row input{text-align:right;border:1px solid #cad6cc;border-radius:9px;height:40px;padding:0 10px}.auth-wrap{background:linear-gradient(160deg,#f7f9f6 0%,#edf3ee 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--papel);border:1px solid var(--linha);width:100%;max-width:400px;box-shadow:var(--sombra);border-radius:18px;padding:32px 30px}.auth-card .logo{border-radius:18px;width:92px;height:92px;margin:0 auto 10px;display:block}.auth-card .title{text-align:center;color:var(--floresta);letter-spacing:-1px;margin:0;font-size:30px;font-weight:780}.auth-card .sub{text-align:center;color:var(--texto-2);margin:2px 0 24px;font-size:14px}@media (width<=860px){.layout{display:block}.sidebar{z-index:30;height:100vh;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-102%)}.sidebar.open{transform:none}.backdrop{z-index:20;background:#0a1e1873;position:fixed;inset:0}.topbar{padding:12px 16px}.topbar .menu-btn{display:inline-flex}.content{padding:20px 16px 40px}h1{font-size:24px}}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.card-head h2{margin:0}.actions{flex-wrap:wrap;gap:8px;display:flex}.btn.small{height:32px;padding:0 12px;font-size:13px}.kpi .kpi-num{color:var(--floresta);letter-spacing:-.5px;margin:6px 0 2px;font-size:24px;font-weight:780}.neg{color:var(--erro)!important}.pos{color:var(--esmeralda)}.pill.neutral{color:#3b4f63;background:#eef2f6}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--texto-2);border-bottom:1px solid var(--linha);white-space:nowrap;background:#f9fbf9;padding:10px;font-size:12px}.table td{vertical-align:top;color:var(--grafite);border-bottom:1px solid #edf2ee;padding:12px 10px}.table tr:last-child td{border-bottom:0}.row-cancelled td{color:#7b8680;-webkit-text-decoration:line-through #b9c2bc;text-decoration:line-through #b9c2bc}.row-cancelled td .muted{text-decoration:none}.money-input{text-align:right;width:150px;height:38px;color:var(--grafite);background:#fff;border:1px solid #cad6cc;border-radius:9px;padding:0 10px}.field select{height:44px;color:var(--grafite);background:#fff;border:1px solid #cad6cc;border-radius:10px;padding:0 10px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;display:grid}.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.filters select,.filters input[type=text],.filters input:not([type]){height:40px;color:var(--grafite);background:#fff;border:1px solid #cad6cc;border-radius:9px;padding:0 10px}.filters input:not([type]){flex:1;min-width:220px}.check{color:var(--texto-2);align-items:center;gap:6px;font-size:13px;display:inline-flex}.month-nav{background:var(--papel);border:1px solid var(--linha);color:var(--floresta);border-radius:12px;align-items:center;gap:12px;padding:6px 8px;display:inline-flex}.month-nav strong{text-align:center;min-width:150px}.modal-layer{z-index:50;background:#0a1e1880;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--papel);border-radius:16px;width:100%;max-width:620px;max-height:92vh;padding:24px;overflow:auto;box-shadow:0 30px 80px #0a1e184d}.modal-footer{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.list-row{border-bottom:1px solid #edf2ee;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;font-size:14px;display:flex}.list-row:last-child{border-bottom:0}@media (width<=860px){.form-grid{grid-template-columns:1fr}.modal{padding:18px}}.group-title{text-transform:uppercase;letter-spacing:1px;color:var(--texto-2);margin:6px 0 8px;font-size:13px}.soft-box{border:1px solid var(--linha);background:#f6f9f6;border-radius:12px;margin-top:6px;padding:12px 14px}
