.calc-wrapper{max-width:1080px;margin:0 auto;padding:32px;border:1px solid #e8e8e8;border-radius:16px;background:#fff}.calc-header{position:relative;text-align:center;margin-bottom:24px}.calc-header a{font-size:24px;position:absolute;left:0;top:50%;transform:translateY(-50%)}.calc-page{padding:48px 0 32px}.title{color:#444;font-size:24px;font-weight:700;line-height:1.2;margin-bottom:40px;text-align:center}.calc-description{color:#4b4b4b;font-size:15px;max-width:800px;margin:-16px auto 24px;line-height:1.6}.calc-title{font-size:18px;font-weight:700;margin:16px 0 24px}.field{background:#f5f5f5;border:1px solid #f5f5f5;border-radius:16px;padding:10px 14px;display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.field:hover{border:1px solid #000}.field:focus-within{background:#ececec}.calc-form{margin-bottom:24px}.btn-add{background:none;border:none;padding:4px 0;font-size:14px;color:var(--text-secondary);cursor:pointer;margin-bottom:6px}.btn-add:hover{color:var(--text-primary)}.checkbox-row{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-secondary);padding:4px 0;cursor:pointer}.prepayment-row{display:flex;flex-direction:column}.button-right{align-self:flex-end;margin-bottom:4px;background:none;border:none;color:#e53935;font-size:20px;cursor:pointer;padding:0;line-height:1}.field label{font-size:12px;color:var(--text-secondary);margin-bottom:6px}.field-row{display:flex;align-items:center;gap:8px}.field input:not([type=checkbox]):not([type=radio]),.field select{background:transparent;border:none;font-size:20px;color:var(--text-primary);padding:0;outline:none;width:100%}.field-row input{flex:1}.field-row select{border-left:1px solid #ddd;padding:0 4px;width:auto}.field--radio{flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px 20px;background:transparent}.field--radio label{color:var(--text-primary);margin-bottom:0}.result-arrow:before{content:"↓";font-size:20px;color:var(--text-muted)}.radio-option{display:flex;align-items:center;gap:8px;padding:8px 0;margin:8px 0;cursor:pointer;font-size:14px;color:var(--text-primary)}.result{display:flex;flex-direction:column;gap:10px;padding-top:20px;margin-top:16px;position:relative}.result-wrapper{max-width:1080px;margin:16px auto;padding:32px;border:1px solid #e8e8e8;border-radius:16px;background:#fff}.result-year{display:flex;flex-wrap:wrap;flex-direction:row;gap:12px 48px}.result-title{flex:0 0 100%;font-size:18px;color:var(--text-muted);position:relative;margin-bottom:10px}.result:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--border);box-shadow:0 2px 8px #00000014}.result-item{display:flex;flex-direction:column;gap:2px}.result-label{font-size:14px;color:var(--text-muted)}.result-value{font-size:24px;font-weight:700;color:var(--text-primary)}.result-value-sm{font-size:20px;font-weight:700;color:var(--text-primary)}.modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal-content{background:#fff;border-radius:12px;padding:24px;width:768px;max-height:85vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-secondary)}.modal-content table{width:100%;border-collapse:collapse;font-size:16px}.modal-content th{text-align:right;padding:8px 12px;font-weight:600;border-bottom:2px solid #e8e8e8;color:var(--text-secondary);font-size:12px}.modal-content td{text-align:right;padding:8px 12px;border-bottom:1px solid #f0f0f0}.modal-content td:first-child,.modal-content th:first-child{text-align:left}.modal-content tr:hover td{background:#f5f5f5}.btn-schedule{margin-top:16px;background:none;border:1px solid #e0e0e0;border-radius:8px;padding:8px 16px;font-size:14px;color:var(--text-secondary);cursor:pointer;transition:border-color .15s}.btn-schedule:hover{border-color:#aaa;color:#000}@media(min-width:1000px){.title{font-size:28px}.calc-description{text-align:center}.calc-title{font-size:24px}.calc-form{display:grid;grid-template-columns:repeat(3,1fr);column-gap:20px;row-gap:10px}.calc-form .field{margin-bottom:0}.field--full{grid-column:1 / -1}.field--span2{grid-column:span 2}.result{flex-direction:row;flex-wrap:wrap;row-gap:12px;column-gap:60px;align-items:center;padding-top:20px}.result-value{font-size:30px}.result-value-sm{font-size:24px}.result-arrow{align-self:center}.result-arrow:before{content:"→"}}
