:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#333;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;padding:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#0e4370,#1a5ba3);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{width:100%;min-height:100vh}a{font-weight:500;color:#1f5fa0;text-decoration:none}a:hover{color:#0e4370}h1,h2,h3,h4,h5,h6{margin:0;padding:0}button{font-family:inherit}button:focus-visible{outline:2px solid #1f5fa0;outline-offset:2px}input:focus-visible{outline:2px solid #1f5fa0;outline-offset:2px}select:focus-visible{outline:2px solid #1f5fa0;outline-offset:2px}*{box-sizing:border-box}body{margin:0;padding:0;background:linear-gradient(135deg,#0e4370,#1a5ba3);min-height:100vh}.container{max-width:1300px;margin:30px auto;background:linear-gradient(135deg,#fff,#f5f9ff);color:#333;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0e43704d}h1{background:linear-gradient(135deg,#0e4370,#1f5fa0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;margin:0 0 40px;font-size:2.8em;font-weight:900;letter-spacing:-1px}.header-section{display:flex;align-items:center;justify-content:center;gap:30px;margin-bottom:40px;padding-bottom:30px;border-bottom:2px solid #e0e0e0}.logo{height:80px;width:auto;max-width:200px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(14,67,112,.15));transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.header-section h1{margin:0}h2{color:#0e4370;margin-top:40px;margin-bottom:25px;padding-bottom:15px;border-bottom:3px solid #1f5fa0;font-size:1.8em;font-weight:700}h3{color:#0e4370;font-size:1.4em;margin:20px 0 15px;font-weight:700}.form-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:25px;margin-bottom:40px;background:linear-gradient(135deg,#f0f7ff,#e8f1ff);padding:35px;border-radius:16px;border:2px solid #d4e5f7;box-shadow:0 4px 15px #0e43701a}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:700;margin-bottom:12px;color:#0e4370;font-size:.95em;text-transform:uppercase;letter-spacing:.5px}.form-group select{padding:14px 40px 14px 16px;border:2px solid #d4e5f7;border-radius:10px;font-size:1em;width:100%;background-color:#fff;color:#333;font-weight:600;cursor:pointer;transition:all .3s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%230e4370' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.form-group select option{color:#333;background-color:#fff;padding:10px;font-weight:500}.form-group select option:checked{background:linear-gradient(#0e4370,#0e4370);background-color:#0e4370;color:#fff}.form-group select:hover{border-color:#1f5fa0;box-shadow:0 2px 8px #1f5fa026}.form-group select:focus{outline:none;border-color:#1f5fa0;box-shadow:0 0 0 4px #1f5fa026;background-color:#fff}.form-group input{padding:14px 16px;border:2px solid #d4e5f7;border-radius:10px;font-size:1em;width:100%;background:#fff;color:#333;font-weight:600;transition:all .3s ease}.form-group input:hover{border-color:#1f5fa0;box-shadow:0 2px 8px #1f5fa026}.form-group input:focus{outline:none;border-color:#1f5fa0;box-shadow:0 0 0 4px #1f5fa026;background:#fafcff}.form-group input::placeholder{color:#999}button{padding:16px 32px;background:linear-gradient(135deg,#0e4370,#1f5fa0);color:#fff;border:none;border-radius:10px;font-size:1.05em;font-weight:700;cursor:pointer;transition:all .3s ease;grid-column:auto;box-shadow:0 6px 20px #0e43704d;text-transform:uppercase;letter-spacing:1px}button:hover{background:linear-gradient(135deg,#1f5fa0,#2a7bc4);box-shadow:0 8px 25px #0e437066;transform:translateY(-3px)}button:active{background:linear-gradient(135deg,#082950,#0e4370);transform:translateY(-1px);box-shadow:0 4px 15px #0e43704d}.resultado{background:linear-gradient(135deg,#f0f7ff,#e8f1ff);border:3px solid #1f5fa0;border-radius:16px;padding:40px;margin:40px 0;text-align:left;box-shadow:0 10px 30px #0e437033;animation:slideIn .4s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.info-box{background:#fff;border-left:5px solid #1f5fa0;padding:25px;border-radius:10px;margin-bottom:30px}.info-box p{margin:12px 0;font-size:1.05em;color:#333;display:flex;justify-content:space-between;align-items:center}.info-box p strong{color:#0e4370;font-weight:700;margin-right:15px}.info-box p span{color:#333;font-weight:600}.breakdown{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 12px #0e43701a}.breakdown h3{margin-top:0;border-bottom:2px solid #1f5fa0;padding-bottom:15px}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid #e0e8f0;font-size:1.05em;font-weight:600;color:#333}.breakdown-item:last-child{border-bottom:none}.breakdown-item span{color:#0e4370}.breakdown-item strong{color:#1f5fa0;font-weight:800;font-size:1.2em}.breakdown-item.total{background:linear-gradient(135deg,#0e4370,#1f5fa0);color:#fff;border-radius:10px;margin-top:20px;border-bottom:none}.breakdown-item.total span,.breakdown-item.total strong{color:#fff;font-weight:700}.info-section{background:linear-gradient(135deg,#f9fafc,#eef3f9);border:2px solid #d4e5f7;border-radius:16px;padding:30px;margin:40px 0}.info-section h2{margin-top:0}.info-section ul{list-style:none;padding:0;margin:20px 0}.info-section li{padding:12px 0 12px 30px;border-bottom:1px solid #d4e5f7;color:#333;font-size:.95em;position:relative}.info-section li:last-child{border-bottom:none}.info-section li:before{content:"✓";position:absolute;left:0;color:#1f5fa0;font-weight:700;font-size:1.2em}.info-section strong{color:#0e4370;font-weight:700}.tabela-referencia{margin-top:50px}.tabela-wrapper{overflow-x:auto;border:2px solid #d4e5f7;border-radius:16px;box-shadow:0 6px 20px #0e437026}table{width:100%;border-collapse:collapse;background:#fff}table thead{background:linear-gradient(135deg,#0e4370,#1f5fa0);color:#fff}table th{padding:18px 16px;text-align:center;font-weight:700;font-size:.95em;text-transform:uppercase;letter-spacing:.5px;border-right:1px solid rgba(255,255,255,.2)}table th:last-child{border-right:none}table td{padding:16px 14px;text-align:center;font-size:.95em;border-bottom:1px solid #e0e8f0;color:#333}table td strong{color:#0e4370;font-weight:700}table tbody tr{transition:all .2s ease}table tbody tr:hover{background-color:#f0f7ff;box-shadow:inset 0 0 10px #1f5fa01a}table tbody tr:nth-child(2n){background-color:#f9fafc}table tbody tr:nth-child(2n):hover{background-color:#f0f7ff}@media(max-width:1024px){.container{padding:30px}h1{font-size:2.2em}h2{font-size:1.5em}.form-container{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:25px;gap:20px}}@media(max-width:768px){.container{padding:20px;border-radius:16px;margin-top:15px;margin-bottom:15px}h1{font-size:1.8em;margin-bottom:30px}h2{font-size:1.3em}.form-container{grid-template-columns:1fr;padding:20px;gap:15px}button{padding:14px 24px;font-size:.95em;width:100%}.resultado{padding:25px;margin:30px 0}.info-box p{flex-direction:column;align-items:flex-start}.info-box p strong{margin-bottom:5px;margin-right:0}.breakdown-item{flex-direction:column;align-items:flex-start;padding:15px}.breakdown-item strong{margin-top:8px}table th,table td{padding:12px 8px;font-size:.85em}.info-section{padding:20px}.info-section li{padding-left:25px;font-size:.9em}}@media(max-width:480px){.container{padding:15px;border-radius:12px}h1{font-size:1.5em;margin-bottom:25px}.form-container{padding:15px;gap:12px}.form-group label{font-size:.85em}.form-group input,.form-group select{padding:12px 14px;font-size:.95em}button{padding:12px 20px;font-size:.9em;letter-spacing:.5px}.resultado{padding:20px;margin:20px 0}table th,table td{padding:10px 6px;font-size:.8em}}
