*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;color:#2d3748;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh;padding:2rem}.container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin:0 auto;max-width:800px;padding:2rem}h1{color:#2d3748;font-size:2rem;font-weight:700;margin-bottom:1.5rem}.input-group{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.75rem;position:relative}.input-group.invalid{animation:shake .5s;border-color:#fc8181}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}input,select{border:1px solid #e2e8f0;border-radius:8px;flex:1 1;font-size:1rem;padding:.75rem;transition:all .2s}input:focus,select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e126;outline:none}.input-group.invalid input,.input-group.invalid input:focus{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e26}.input-group.invalid select{border-color:#fc8181}.validation-message{bottom:-1.25rem;color:#e53e3e;display:none;font-size:.75rem;left:0;position:absolute}.input-group.invalid .validation-message{display:block}.button-group{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}button{background-color:#4299e1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .2s}button:hover{background-color:#3182ce}button.secondary{background-color:initial;border:1px solid #4299e1;color:#4299e1}button.secondary:hover{background-color:#ebf8ff}button.clean-all{background-color:initial;border:1px solid #e53e3e;color:#e53e3e}.error-message,button.clean-all:hover{background-color:#fff5f5;color:#c53030}.error-message{border:1px solid #feb2b2;border-radius:8px;margin-top:1rem;padding:1rem}.error-message ul{list-style:none}.success-message{background-color:#f0fff4;border:1px solid #9ae6b4;border-radius:8px;font-weight:600;margin-top:1.5rem;padding:1.5rem;text-align:center}.result{color:#276749;font-size:1.25rem;line-height:1.75}.result .title{color:#2f855a;font-size:1.25rem;margin-bottom:.75rem}.result .amount{font-size:1.5rem}.info-box{background-color:#ebf8ff;border:1px solid #bee3f8;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.info-box h2{color:#2b6cb0;font-size:1.25rem;margin-bottom:.5rem}.info-box p{color:#4a5568;margin-bottom:.5rem}.info-box ul{list-style:none;margin-bottom:.5rem;margin-left:1rem}.info-box ul li{margin-bottom:.25rem}.delete-button{align-items:center;background-color:initial;border:1px solid #e53e3e;border-radius:8px;color:#e53e3e;cursor:pointer;display:flex;height:2.5rem;justify-content:center;min-width:2.5rem;padding:.5rem;transition:all .2s;width:2.5rem}.delete-button:hover{background-color:#fff5f5;color:#c53030}.delete-button svg{height:1.25rem;width:1.25rem}.footer{border-top:1px solid #e2e8f0;color:#718096;font-size:.875rem;margin-top:2rem;padding-top:1.5rem;text-align:center}.footer .disclaimer{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;font-size:.75rem;line-height:1.5;margin-top:1rem;padding:1rem}.footer a{color:#4299e1;text-decoration:none;transition:color .2s}.footer a:hover{color:#2b6cb0;text-decoration:underline}.footer p{margin:.5rem 0}@media (max-width:768px){#root,.container{padding:1rem}h1{font-size:1.5rem;margin-bottom:1rem}.info-box{font-size:.875rem}.info-box h2{font-size:1.125rem}}@media (max-width:640px){.input-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:1rem;position:relative}.input-group>*{width:100%!important}select{background-color:#fff;background-size:1em;font-size:1rem;padding:.75rem 2.5rem .75rem .75rem}.delete-button{align-items:center;background-color:#fff5f5;display:flex;height:2.5rem;justify-content:center;margin-top:.5rem;min-width:auto;padding:.5rem;position:relative;width:100%}.delete-button:hover{background-color:#fed7d7}.validation-message{background:#fff5f5;border-radius:4px;margin-top:.25rem;padding:.5rem;position:static;text-align:center}.container{padding:1rem}.button-group{flex-direction:column;gap:.75rem}.button-group button{font-size:1rem;padding:1rem;width:100%}.success-message{margin-top:1rem;padding:1.25rem}.result{font-size:1.125rem}.result .amount{font-size:1.25rem}}select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1em;padding-right:2.5rem}.age-select,.category-select,.confederation-select,.month-select{flex:1 1;min-width:0}@media (max-width:640px){.input-group{gap:.5rem}select{background-size:.875em;font-size:.875rem;padding:.5rem 2rem .5rem .5rem}.age-select{width:calc(25% - .5rem)}.confederation-select{width:calc(35% - .5rem)}.category-select{width:calc(25% - .5rem)}.month-select{width:calc(15% - .5rem)}.delete-button{height:2rem;min-width:2rem;padding:.4rem;width:2rem}}.input-group label{color:#4a5568;font-size:.875rem;font-weight:500;margin-bottom:.25rem}