:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;color:#333;background-color:#f5f7fa;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:2.5rem;line-height:1.2;font-weight:600}h2{font-size:1.75rem;line-height:1.3}h3{font-size:1.25rem;line-height:1.4}p{margin-bottom:1rem}:focus{outline:2px solid #4a6cf7;outline-offset:2px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#root{max-width:1280px;margin:0 auto;padding:1rem}@media (min-width: 576px){#root{padding:1.5rem}}@media (min-width: 768px){#root{padding:2rem}}.app-container{display:flex;flex-direction:column;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}header{text-align:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #eaeaea}header h1{color:#333;margin-bottom:.5rem;font-size:1.75rem}header p{color:#666;font-size:1rem}@media (min-width: 576px){header{margin-bottom:1.75rem;padding-bottom:1rem}header h1{font-size:2rem}header p{font-size:1.1rem}}@media (min-width: 768px){header{margin-bottom:2rem}}main{flex:1;display:flex;flex-direction:column;gap:1.25rem}.inputs-container{display:flex;flex-direction:column;gap:1.25rem}@media (min-width: 576px){main{gap:1.5rem}.inputs-container{gap:1.5rem}}@media (min-width: 768px){main{gap:2rem}.inputs-container{flex-direction:row;align-items:flex-start;gap:1.5rem}.inputs-container>div{flex:1;min-width:0}}@media (min-width: 992px){.inputs-container{gap:2rem}}.base-salary-input,.stock-grant-input,.company-benefits-input,.compensation-summary{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:1rem;width:100%;box-sizing:border-box;overflow-x:auto}h2{color:#333;margin-top:0;margin-bottom:1rem;border-bottom:1px solid #eaeaea;padding-bottom:.5rem;font-size:1.25rem}h3{color:#444;margin-top:.75rem;margin-bottom:.75rem;font-size:1.1rem}@media (min-width: 576px){.base-salary-input,.stock-grant-input,.company-benefits-input,.compensation-summary{padding:1.25rem}h2{margin-bottom:1.25rem;font-size:1.4rem}h3{margin-top:.875rem;margin-bottom:.875rem;font-size:1.15rem}}@media (min-width: 768px){.base-salary-input,.stock-grant-input,.company-benefits-input,.compensation-summary{padding:1.5rem}h2{margin-bottom:1.5rem;font-size:1.5rem}h3{margin-top:1rem;margin-bottom:1rem;font-size:1.2rem}}.input-group{margin-bottom:.875rem;display:flex;flex-direction:column}.input-group label{margin-bottom:.375rem;font-weight:500;color:#555;font-size:.9rem}input,select{padding:.625rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem;width:100%;box-sizing:border-box;-webkit-appearance:none}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.help-text{margin-top:.25rem;font-size:.8rem;color:#666;font-style:italic}button{background-color:#4a6cf7;color:#fff;border:none;border-radius:4px;padding:.625rem 1.25rem;font-size:.9rem;cursor:pointer;transition:background-color .2s;touch-action:manipulation}button:hover{background-color:#3a5ce5}button.remove-button{background-color:#e74c3c}button.remove-button:hover{background-color:#c0392b}@media (min-width: 576px){.input-group{margin-bottom:1rem}.input-group label{margin-bottom:.5rem;font-size:.95rem}input,select{padding:.7rem;font-size:.95rem}.help-text{font-size:.825rem}button{padding:.7rem 1.4rem;font-size:.95rem}}@media (min-width: 768px){input,select{padding:.75rem;font-size:1rem}.input-group label{font-size:1rem}.help-text{font-size:.85rem}button{padding:.75rem 1.5rem;font-size:1rem}}table{width:100%;border-collapse:collapse;margin-top:.75rem;font-size:.85rem}th,td{padding:.5rem;text-align:left;border-bottom:1px solid #eaeaea;white-space:nowrap}th{font-weight:600;color:#444;background-color:#f9f9f9}.salaries-list,.grants-list,.benefits-list,.compensation-summary{overflow-x:auto;-webkit-overflow-scrolling:touch}.scroll-indicator{display:none;text-align:center;font-size:.8rem;color:#666;padding:.5rem 0;font-style:italic;white-space:nowrap}@media (min-width: 576px){table{margin-top:.875rem;font-size:.9rem}th,td{padding:.625rem}}@media (min-width: 768px){table{margin-top:1rem;font-size:.95rem}th,td{padding:.75rem}}@media (min-width: 992px){table{font-size:1rem}}.example-section{margin-top:1rem;padding:1rem;background-color:#f0f4ff;border-radius:8px;border-left:4px solid #4a6cf7;font-size:.9rem}.example-section h3{color:#4a6cf7;margin-top:0;margin-bottom:.75rem;font-size:1.1rem}.example-section p{margin-bottom:.75rem}.example-section ul{margin-bottom:.75rem;padding-left:1.25rem}.example-section li{margin-bottom:.375rem}@media (min-width: 576px){.example-section{margin-top:1.25rem;padding:1.25rem;font-size:.95rem}.example-section h3{margin-bottom:.875rem;font-size:1.15rem}.example-section p,.example-section ul{margin-bottom:.875rem}.example-section li{margin-bottom:.425rem}}@media (min-width: 768px){.example-section{margin-top:1.5rem;padding:1.5rem;font-size:1rem}.example-section h3{margin-bottom:1rem;font-size:1.2rem}.example-section p,.example-section ul{margin-bottom:1rem}.example-section li{margin-bottom:.5rem}}.custom-vesting-inputs{margin-top:.75rem;padding:.75rem;background-color:#f9f9f9;border-radius:4px;border:1px solid #eaeaea}.custom-vesting-inputs h4{margin-top:0;margin-bottom:.375rem;color:#444;font-size:1rem}.custom-vesting-inputs p{margin-bottom:.75rem;font-size:.85rem;color:#666}.custom-vesting-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.75rem;margin-bottom:.75rem}.custom-vesting-year{display:flex;flex-direction:column}.custom-vesting-year label{margin-bottom:.375rem;font-weight:500;color:#555;font-size:.85rem}.percentage-input{display:flex;align-items:center}.percentage-input input{flex:1;padding-right:.375rem;font-size:.85rem}.percentage-input span{margin-left:.25rem;color:#555;font-size:.85rem}.vesting-total{margin-top:.75rem;padding-top:.375rem;border-top:1px solid #eaeaea;font-size:.9rem;color:#444}.error-message{color:#e53935;font-weight:500;font-size:.85rem}@media (min-width: 576px){.custom-vesting-inputs{margin-top:.875rem;padding:.875rem}.custom-vesting-inputs h4{margin-bottom:.425rem;font-size:1.05rem}.custom-vesting-inputs p{margin-bottom:.875rem;font-size:.875rem}.custom-vesting-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.875rem;margin-bottom:.875rem}.custom-vesting-year label{margin-bottom:.425rem;font-size:.9rem}.percentage-input input,.percentage-input span{font-size:.9rem}.vesting-total{margin-top:.875rem;padding-top:.425rem;font-size:.95rem}.error-message{font-size:.9rem}}@media (min-width: 768px){.custom-vesting-inputs{margin-top:1rem;padding:1rem}.custom-vesting-inputs h4{margin-bottom:.5rem;font-size:1.1rem}.custom-vesting-inputs p{margin-bottom:1rem;font-size:.9rem}.custom-vesting-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;margin-bottom:1rem}.custom-vesting-year label{margin-bottom:.5rem;font-size:.95rem}.percentage-input input{padding-right:.5rem;font-size:.95rem}.percentage-input span{font-size:.95rem}.vesting-total{margin-top:1rem;padding-top:.5rem;font-size:1rem}.error-message{font-size:.95rem}}footer{margin-top:1.5rem;padding-top:.75rem;border-top:1px solid #eaeaea;text-align:center;color:#666;font-size:.8rem}footer a{color:#4a6cf7;text-decoration:none;transition:color .2s}footer a:hover{color:#3a5ce5;text-decoration:underline}@media (min-width: 576px){footer{margin-top:1.75rem;padding-top:.875rem;font-size:.85rem}}@media (min-width: 768px){footer{margin-top:2rem;padding-top:1rem;font-size:.9rem}}.legend,.note{font-size:.8rem;margin:.75rem 0}.legend p,.note p{margin:.375rem 0}@media (min-width: 576px){.legend,.note{font-size:.85rem;margin:.875rem 0}.legend p,.note p{margin:.425rem 0}}@media (min-width: 768px){.legend,.note{font-size:.9rem;margin:1rem 0}.legend p,.note p{margin:.5rem 0}}.loading-component{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;width:100%;box-sizing:border-box;text-align:center;color:#666;font-size:.9rem;min-height:100px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.loading-component:after{content:"";position:absolute;bottom:0;left:0;height:2px;width:30%;background-color:#4a6cf7;animation:loading-bar 1.5s infinite ease-in-out}@keyframes loading-bar{0%{left:0;width:0}50%{left:10%;width:80%}to{left:100%;width:0}}
