*{box-sizing:border-box}body{margin:0;background:#f2f6fc;color:#173052;font:15px 'Segoe UI',Arial,sans-serif}header{height:76px;background:#0954a7;color:white;display:flex;align-items:center;gap:25px;padding:0 25px}header strong{font-size:27px}header span{color:#d7eaff}.layout{display:flex;min-height:calc(100vh - 76px)}nav{background:#103765;width:224px;flex-shrink:0;padding-top:12px}nav button{display:block;width:100%;background:none;color:#fff;border:0;text-align:left;padding:17px;font-size:15px;cursor:pointer}nav button.active,nav button:hover{background:#1760aa}main{padding:26px;flex:1;min-width:0}h1{font-size:25px;margin:0 0 20px}h2{font-size:19px;margin:25px 0 12px}.filters,.panel,.stat,.carrier{background:#fff;border:1px solid #dce4ef;border-radius:11px;padding:17px}.filters{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-bottom:18px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat small{color:#52657d}.stat strong{display:block;font-size:25px;margin-top:9px}.carriers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.carrier{font-size:13px}.carrier strong{font-size:16px}.carrier p{margin:9px 0}.carrier .money{color:#075dba;font-weight:bold}label{display:block;font-weight:600;font-size:13px;margin-bottom:5px}input,select{width:100%;border:1px solid #cbd6e5;border-radius:7px;background:white;padding:10px;color:#163254;font:inherit}button{cursor:pointer}button.primary{background:#075bb8;color:white;border:0;border-radius:7px;padding:11px 20px;font-weight:bold}button.secondary{background:white;border:1px solid #b9c9dd;border-radius:7px;padding:10px 15px;color:#15416e}button.danger{color:#b21e32}.field{min-width:140px;flex:1}.formgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.formgrid .wide{grid-column:span 2}.actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.preview{background:#e9f2ff;border-radius:9px;padding:17px;margin-top:20px;font-size:18px;font-weight:bold}table{border-collapse:collapse;width:100%;background:white}th,td{text-align:left;border-bottom:1px solid #e5eaf1;padding:12px 10px}th{background:#e5edf7}table button{margin-right:7px}.scroll{overflow:auto}.days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-width:600px}.days label{font-weight:normal}.days input{width:auto;margin-right:8px}.hint{font-size:13px;color:#52657d;margin-top:12px}.notice{padding:11px;background:#fff6db;border-radius:7px;margin-bottom:15px}@media(max-width:1000px){.stats{grid-template-columns:repeat(2,1fr)}.carriers{grid-template-columns:repeat(2,1fr)}.formgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){header{height:auto;padding:15px;display:block}header span{display:block}.layout{display:block}nav{width:100%;display:flex;overflow:auto;padding:0}nav button{white-space:nowrap;padding:12px}main{padding:14px}.stats,.carriers,.formgrid{grid-template-columns:1fr}.formgrid .wide{grid-column:auto}.days{grid-template-columns:1fr}}

/* CF GESTÃO Web V1.1 — melhorias visuais, sem alterar a persistência */
:root{--navy:#0e2f58;--blue:#1159a9;--line:#dce6f3;--muted:#71829b}body{background:#f3f6fb;color:#172f51}header{height:78px;background:linear-gradient(100deg,#0a4d9c,#1266bc);box-shadow:0 3px 16px #103d6c19}header strong{letter-spacing:.3px;font-size:26px}header span{font-size:13px;opacity:.9}.layout{min-height:calc(100vh - 78px)}nav{background:linear-gradient(180deg,#123b6b,#0d2d52);width:230px;padding:18px 9px}nav button{border-radius:10px;padding:15px 14px;margin:3px 0;transition:background .15s ease;font-weight:500}nav button.active{background:#1c65b5;box-shadow:inset 3px 0 #a9d7ff;color:white}nav button:hover{background:#245d97}main{padding:30px 32px;max-width:1600px}h1{font-size:27px;letter-spacing:-.5px;margin:0 0 22px}h2{font-size:20px;letter-spacing:-.25px}.filters,.panel,.stat,.carrier{border:1px solid var(--line);border-radius:14px;box-shadow:0 4px 16px #193d6b08}.filters{padding:20px;gap:15px}.filters .field{min-width:150px}.filters button{min-height:43px}input,select{border-radius:9px;padding:11px 12px;outline-color:#1976d2}input:focus,select:focus{border-color:#287acb;box-shadow:0 0 0 3px #2c81d21a}button.primary{background:#1264bd;border-radius:9px;min-height:43px;box-shadow:0 3px 8px #1256a522}button.primary:hover{background:#0d4f9b}.stats{gap:15px}.stat{min-height:158px;padding:20px 21px;position:relative;overflow:hidden}.stat:before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:var(--accent)}.stat.income{--accent:#08a66b;--pale:#e3f8ee}.stat.expense{--accent:#ec6834;--pale:#fff0e9}.stat.profit{--accent:#1265d0;--pale:#e8f1ff}.stat.packages{--accent:#8749d8;--pale:#f3ebff}.stat-top{display:flex;align-items:center;gap:12px}.stat-icon{background:var(--pale);color:var(--accent);font-size:23px;font-weight:700;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:11px}.stat-label{font-size:14px;font-weight:600;color:#52677f}.stat strong{font-size:clamp(20px,2.1vw,30px);color:var(--accent);margin:15px 0 5px;letter-spacing:-.6px}.stat small{font-size:12px;color:#8795a8}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:28px 0 15px}.section-heading h2{margin:0 0 5px}.section-heading p{font-size:13px;color:#7a8aa0;margin:0}.section-count{color:#60748d;font-size:12px;background:#e8eef7;border-radius:20px;padding:7px 11px;white-space:nowrap}.carriers{gap:13px}.carrier{background:#fff!important;padding:18px 15px;min-height:245px;border-top:3px solid var(--brand)}.carrier-0{--brand:#f1b800;--soft:#fff6d4}.carrier-1{--brand:#ef4d67;--soft:#ffedf1}.carrier-2{--brand:#f08332;--soft:#fff0e4}.carrier-3{--brand:#2572df;--soft:#eaf2ff}.carrier-4{--brand:#e33f5a;--soft:#fff0f2}.carrier-heading{display:flex;align-items:center;gap:9px;margin-bottom:20px}.carrier-logo{background:var(--soft);color:var(--brand);font-weight:900;font-style:italic;padding:9px 7px;border-radius:8px;font-size:12px;white-space:nowrap}.carrier-name{font-size:13px;font-weight:700}.carrier-sub{color:#8190a3;font-size:12px}.carrier-profit{font-size:23px;font-weight:800;color:#008f62;letter-spacing:-.5px;margin:5px 0 14px;white-space:nowrap}.carrier-divider{height:1px;background:#e9eef5;margin-bottom:11px}.carrier-detail{display:flex;justify-content:space-between;gap:6px;margin:9px 0;font-size:12px}.carrier-detail span{color:#7d8ca1}.carrier-detail b{font-size:12px;white-space:nowrap}.carrier-footer{background:var(--soft);color:#506178;text-align:center;border-radius:7px;padding:7px;margin-top:13px;font-size:12px;font-weight:600}.panel{padding:22px}.preview{border:1px solid #c6dcf8}th{background:#eaf1f9;color:#274b74}td{font-variant-numeric:tabular-nums}@media(max-width:1250px){.carriers{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){nav{width:190px}main{padding:20px}.carriers{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){header{padding:16px;height:auto}nav{width:100%;padding:5px;gap:3px}nav button{margin:0;font-size:13px}main{padding:16px}.stats,.carriers{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:14px;min-height:145px}.stat strong{font-size:20px}.carrier{padding:12px;min-height:230px}.carrier-heading{flex-wrap:wrap}.carrier-profit{font-size:19px}.section-count{display:none}.filters .field{min-width:calc(50% - 10px)}}@media(max-width:390px){.carriers{grid-template-columns:1fr}}

/* Identificação das transportadoras nos relatórios e painel */
.company-label{display:inline-flex;align-items:center;gap:9px;vertical-align:middle;white-space:nowrap;font-weight:600}
.company-badge{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:48px;height:30px;padding:3px 7px;border-radius:7px;font-size:12px;font-weight:900;letter-spacing:-.35px;background:#f1f4f8;color:#16345a}
.company-badge-0{background:#ffe600;color:#333}
.company-badge-1{background:#ee3855;color:white}
.company-badge-2{background:#f47d29;color:white;font-style:italic}
.company-badge-3{background:#e8f2ff;color:#1863bf}
.company-badge-4{background:#e7334f;color:white}
.carrier-heading .company-label{white-space:normal;gap:7px;font-size:13px}
.carrier-heading .company-badge{min-width:42px}
@media(max-width:650px){.company-label{gap:5px}.company-badge{min-width:40px;padding:3px 5px;font-size:11px}}

/* CARDS - sexta transportadora */
.carrier-5{--brand:#167b78;--soft:#e3f5f2}
.company-badge-5{background:#167b78;color:#fff}

/* Livro auxiliar V1.6 */
.extra-stats{margin:10px 0 22px}.extra-income{color:#078354;font-weight:700}.extra-expense{color:#c44a27;font-weight:700}.panel .filters{box-shadow:none;padding:12px;margin-bottom:16px}
@media print {nav,.sidebar,.filters,.actions,button{display:none!important}body{background:white!important}.panel{box-shadow:none!important;break-inside:avoid}.scroll{overflow:visible!important}#app{width:100%!important;margin:0!important;padding:0!important}}

.cf-evolution{margin-top:14px}.cf-chart-legend{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;margin:12px 0}.cf-chart-legend span{display:flex;align-items:center;gap:7px;font-size:14px;color:#526174}.cf-chart-legend i{width:12px;height:12px;border-radius:50%;display:inline-block}.cf-chart-scroll{width:100%;overflow-x:auto}.cf-chart-scroll svg{display:block;width:100%;min-width:540px;height:auto}

/* V2.3 — projeção mensal responsiva */
.projection-stats{grid-template-columns:repeat(6,minmax(0,1fr))}.projection-stats .stat{padding:15px 12px;min-height:155px}.projection-stats .stat strong{font-size:clamp(16px,1.5vw,25px);overflow-wrap:anywhere}.projection-toolbar{display:flex;align-items:center;gap:12px;margin:12px 0 16px}.projection-toolbar label{margin:0}.projection-toolbar input{width:190px}.projection-progress{border:1px solid #dce6f3;border-radius:12px;padding:15px;margin-top:15px}.projection-progress-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.projection-track{height:12px;border-radius:10px;background:#e6edf6;overflow:hidden;margin-bottom:8px}.projection-track>div{height:100%;background:#0fa875}.projection-progress small{color:#52677f}@media(max-width:1200px){.projection-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.projection-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.projection-stats .stat strong{font-size:19px}.projection-toolbar{flex-wrap:wrap}}

.evolution-toolbar{display:flex;align-items:center;gap:12px;margin:12px 0}.evolution-toolbar select{max-width:190px;padding:9px;border:1px solid #d5e2f2;border-radius:8px;background:#fff}
