:root{--primary-color:#21005E;--primary-color-light:#3d1a78;--text-color-dark:#2d3748;--text-color-medium:#4a5568;--text-color-light:#718096;--border-color:#e2e8f0;--background-color:#ffffff;--input-background:#f7fafc;--error-color:#e53e3e;--success-color:#38a169;--font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}body{font-family:var(--font-family);background-color:#f0f4f8;margin:0;padding:20px;display:flex;justify-content:center;align-items:flex-start;min-height:100vh;color:var(--text-color-dark)}.calculator-container{background-color:var(--background-color);padding:25px 30px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);width:100%;max-width:600px}.calculator-container h2{color:var(--primary-color);text-align:center;margin-top:0;margin-bottom:25px;font-size:1.8em}.input-group{margin-bottom:20px;position:relative}.input-group label{display:flex;align-items:center;font-weight:600;margin-bottom:8px;color:var(--text-color-medium);font-size:.95em}.input-field-container{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:0}.number-input-control{display:flex;align-items:center;border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.number-input-control input[type=number]{width:7em;padding:10px 8px;border:none;text-align:center}.input-unit-display{white-space:nowrap;text-align:center;font-size:.9em;background-color:var(--input-background);color:var(--text-color-light);-moz-appearance:textfield;appearance:textfield;flex-shrink:0}.number-input-control input[type=number]::-webkit-inner-spin-button,.number-input-control input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-input-control input[type=number]:focus{outline:0;box-shadow:inset 0 0 0 2px rgba(49,151,149,.2)}.number-input-control.invalid-control{border-color:var(--error-color);box-shadow:0 0 0 2px rgba(229,62,62,.2)}.number-input-control button{background-color:var(--input-background);color:var(--primary-color);border:none;width:36px;height:38px;font-size:1.2em;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.number-input-control button:hover{background-color:#e2e8f0}.number-input-control button:first-of-type{border-right:1px solid var(--border-color)}.number-input-control button:last-of-type{border-left:1px solid var(--border-color)}.number-input-control button:disabled{color:var(--text-color-light);cursor:not-allowed}.input-group.checkbox-group{display:flex;align-items:center;margin-top:25px}.input-group.checkbox-group input[type=checkbox]{margin-right:10px;width:18px;height:18px;accent-color:var(--primary-color)}.input-group.checkbox-group label{margin-bottom:0;font-weight:400}.input-group .checkbox-note{font-size:.85em;color:var(--text-color-light);margin-left:5px}.validation-message{display:none;font-size:.95em;color:var(--error-color);margin-top:4px;font-weight:500}.tooltip-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background-color:var(--text-color-light);color:#fff;font-size:.7em;font-weight:700;margin-left:8px;cursor:help;position:relative}.result-item,.results-header{justify-content:space-between}.tooltip-icon .tooltip-text{visibility:hidden;width:220px;background-color:var(--text-color-dark);color:#fff;text-align:center;border-radius:6px;padding:8px;position:absolute;z-index:1;bottom:125%;left:50%;margin-left:-110px;opacity:0;transition:opacity .3s;font-size:.9rem;font-weight:400;line-height:1.4}.tooltip-icon .tooltip-text::after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--text-color-dark) transparent transparent transparent}.tooltip-icon:hover .tooltip-text{visibility:visible;opacity:1}.results-container{margin-top:30px;padding-top:20px;border-top:1px solid var(--border-color);position:relative}.results-header{display:flex;align-items:center;margin-bottom:15px}.results-header h3{color:var(--text-color-dark);margin:0;font-size:1.4em}.copy-results-icon-button{background:0 0;border:none;color:var(--primary-color);cursor:pointer;padding:5px;font-size:1.3em;display:inline-flex;align-items:center;justify-content:center;transition:color .2s,transform .2s}.copy-results-icon-button:hover{color:var(--primary-color-light);transform:scale(1.1)}.copy-results-icon-button.copied{color:var(--success-color)}.copy-results-icon-button svg{width:20px;height:20px;fill:currentColor}.result-item{display:flex;align-items:flex-start;padding:8px 0;font-size:1em}.result-item span:first-child{color:var(--text-color-medium)}.result-item span:last-child{font-weight:600;color:var(--text-color-dark);text-align:right}.result-detail{display:block;font-size:.9em;color:var(--text-color-light);margin-top:2px;font-weight:400!important}.total-cost-container{margin-top:15px;padding:15px;background-color:#f3f0ff;border-radius:6px;border:1px solid #d4c4fb}.total-cost-container .total-label-value span:first-child{font-size:1.1em;font-weight:700;color:var(--primary-color)}.total-cost-container .total-label-value span:last-child{font-size:1.5em;font-weight:700;color:var(--primary-color)}.total-cost-container .total-label-value{display:flex;justify-content:space-between;align-items:center}.actions-container{margin-top:25px;display:flex;flex-direction:column;gap:10px}.action-button{background-color:var(--primary-color-light);color:#fff;border:none;padding:10px 15px;border-radius:5px;cursor:pointer;font-size:.95em;text-align:center;transition:background-color .2s;width:100%}.action-button:hover{background-color:var(--primary-color)}.calculation-details{display:none;margin-top:15px;padding:15px;background-color:#f9f9f9;border:1px solid var(--border-color);border-radius:6px;font-size:.95em;line-height:1.6}.calculation-details h4{margin-top:0;margin-bottom:15px;color:var(--primary-color);font-size:1.2em}.calculation-detail-item{display:flex;flex-wrap:wrap;align-items:baseline;margin-bottom:10px;gap:5px}.calculation-detail-item .detail-title{color:var(--text-color-medium);font-weight:700}.calculation-detail-item .detail-formula{font-family:"Courier New",Courier,monospace;background-color:#eef2f7;padding:4px 8px;border-radius:4px;color:var(--text-color-dark);word-break:break-all;font-size:.95em}@media (max-width:480px){body{padding:10px}.calculator-container h2{font-size:1.5em}.results-header h3{font-size:1.2em}.tooltip-icon .tooltip-text{width:180px;margin-left:-90px;font-size:.85rem}.input-field-container{flex-direction:column;align-items:flex-start;flex-direction:row;align-items:center;gap:4px;flex-wrap:nowrap;min-width:0}.input-unit-display{margin-top:5px;margin-left:0;font-size:.85em}.calculator-container{padding:12px 4px;max-width:100vw}.number-input-control{min-width:0}.number-input-control input[type=number]{width:4.5em;padding:8px 4px;font-size:.95em}.number-input-control button{width:28px;height:32px;font-size:1em}}