:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#18181b;background:#fafafa;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select{cursor:pointer}button{border:1px solid #0f766e;background:#0f766e;color:white;padding:11px 17px;border-radius:8px;font-weight:600}button:hover{filter:brightness(.95)}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #5eead4;outline-offset:2px}header{background:white;border-bottom:1px solid #e4e4e7;padding:20px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:18px}.brand a{color:#71717a;text-decoration:none;font-size:13px;padding-right:18px;border-right:1px solid #e4e4e7}.brand small{font-size:10px;letter-spacing:2px;color:#71717a}.brand h1{font-size:18px;margin:3px 0 0;letter-spacing:.5px}.mark{display:grid;place-items:center;width:42px;height:42px;background:#ecfdf5;color:#0f766e;border-radius:12px;font-size:25px}.badge{border:1px solid #d4d4d8;border-radius:20px;padding:7px 12px;font-size:11px;color:#52525b;background:white}main{max-width:1550px;margin:auto;padding:32px 4%}.intro,.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.intro{margin-bottom:25px}.eyebrow{font-size:10px!important;letter-spacing:1.7px;font-weight:700;color:#0f766e!important;margin:0 0 8px!important}h2{font-size:28px;letter-spacing:-.8px;margin:0 0 9px}p{color:#71717a;font-size:13px;line-height:1.5;margin:5px 0}h3{font-size:17px;margin:0 0 6px}.panel{border:1px solid #e4e4e7;border-radius:14px;background:white;margin-bottom:22px;padding:22px;box-shadow:0 1px 2px #00000004}.filters{display:flex;gap:16px;align-items:end}.filters label{display:grid;gap:7px;font-size:11px;color:#52525b;font-weight:600}.filters input,.filters select,.rates input{border:1px solid #e4e4e7;border-radius:7px;background:white;padding:10px;color:#18181b;min-height:40px}.search{flex:1}.muted{font-size:12px;color:#71717a;padding-bottom:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.metrics article{border:1px solid #e4e4e7;background:white;border-radius:12px;padding:21px;display:grid;gap:10px}.metrics span{font-size:12px;color:#52525b}.metrics strong{font-size:28px;letter-spacing:-1px}.metrics small{font-size:11px;color:#71717a}.metrics .featured{background:#0f766e;border-color:#0f766e;color:white}.featured span,.featured small{color:#ccfbf1}.tabs{display:flex;background:#f4f4f5;padding:4px;border-radius:8px}.tabs button{background:transparent;color:#71717a;border:0;font-size:12px;padding:9px 13px}.tabs .active{background:white;color:#0f766e;box-shadow:0 1px 4px #0001}.legend{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.legend span{font-size:10px;padding:5px 8px;border-radius:5px}.T{background:#ecfdf5;color:#047857}.F{background:#f4f4f5;color:#71717a}.P{background:#eff6ff;color:#2563eb}.A{background:#fff7ed;color:#c2410c}.V{background:#faf5ff;color:#9333ea}.U{background:#fffbeb;color:#a16207}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:11px}th,td{text-align:center;padding:10px 5px;border-bottom:1px solid #f0f0f2}th{color:#71717a;background:#fafafa;font-size:10px;font-weight:600}th:first-child,td:first-child{text-align:left;min-width:205px;position:sticky;left:0;background:white;z-index:1;padding-left:10px}td small{display:block;color:#a1a1aa;font-size:9px;margin-top:3px}td select{width:35px;border:0;border-radius:5px;padding:7px 1px;font-size:11px;appearance:none;text-align:center}td:last-child,th:last-child{padding-right:12px;text-align:right;font-weight:700;color:#0f766e}tfoot td{background:#f0fdfa!important;font-weight:700;padding:15px 10px}.note{color:#71717a;font-size:11px;line-height:1.6;margin-top:16px}.months{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;margin-top:22px}.month{border:1px solid #e4e4e7;border-radius:8px;padding:14px 7px;text-align:center;font-size:11px;background:#fafafa;color:#71717a}.month strong{display:block;font-size:11px;margin:11px 0}.month.selected{background:#f0fdfa;border-color:#5eead4;color:#0f766e}.month small{font-size:9px}.footer{font-size:11px;text-align:center;margin:25px 0}.rates{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.rate{border:1px solid #e4e4e7;padding:12px;border-radius:8px;font-size:11px}.rate label{display:inline-grid;width:48%;gap:5px;margin-top:10px}.rate input{width:100%}.secondary{background:white;color:#52525b;border-color:#e4e4e7}[hidden]{display:none!important}@media(max-width:1000px){.metrics{grid-template-columns:repeat(2,1fr)}.months{grid-template-columns:repeat(6,1fr)}.rates{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){header{padding:14px}.brand{gap:8px}.brand a{padding-right:8px}header>.badge{display:none}main{padding:22px 14px}.intro,.section-head{align-items:flex-start;flex-direction:column}h2{font-size:24px}.filters{flex-wrap:wrap}.filters label{flex:1;min-width:130px}.metrics{gap:10px}.metrics article{padding:16px}.metrics strong{font-size:23px}.panel{padding:16px}.months{grid-template-columns:repeat(3,1fr)}.rates{grid-template-columns:1fr}}

/* Cabeçalho compartilhando o padrão visual dos módulos do projeto. */
.app-header{display:block;padding:0;background:#fff;border-bottom:1px solid #e4e4e7}
.header-container{width:min(1550px,100%);margin:0 auto;padding:12px 4%;display:flex;align-items:center;justify-content:space-between;gap:16px}
.header-brand-block{display:flex;align-items:center;min-width:0;gap:12px}
.back-link{display:inline-flex;min-height:36px;align-items:center;gap:7px;border:1px solid #fde68a;border-radius:8px;background:#fffbeb;padding:0 11px;color:#b45309;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}
.back-link:hover{background:#fef3c7}
.back-link svg{width:16px;height:16px;flex:none}
.header-divider{width:1px;height:32px;background:#e4e4e7;flex:none}
.module-mark{display:grid;width:40px;height:40px;flex:none;place-items:center;border-radius:11px;background:#faf5ff;color:#7e22ce}
.module-mark svg{width:19px;height:19px}
.header-brand{margin:0;color:#71717a;font-size:12px;font-weight:500;line-height:1.5}
.app-header h1{margin:1px 0 0;font-size:18px;font-weight:600;letter-spacing:-.02em;line-height:1.3}
@media(max-width:600px){.header-container{padding:12px 14px;gap:10px;flex-wrap:wrap}.header-brand-block{gap:8px}.header-divider{display:none}.app-header h1{font-size:16px}.app-header .badge{font-size:10px;padding:5px 8px}}
