:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;width:100%}#root{width:100%;height:100%}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.app{width:100%;max-width:none;margin:0;padding:2rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;box-sizing:border-box}.app h1{text-align:center;color:#2c3e50;margin-bottom:2rem;font-size:2.5rem;font-weight:700}.calculator-container{display:grid;gap:2rem;margin-bottom:2rem;width:100%;align-items:stretch}@media (min-width: 1921px){.calculator-container{grid-template-columns:280px 300px 1fr;gap:2rem}.chart-container{height:700px}}@media (min-width: 1441px) and (max-width: 1920px){.calculator-container{grid-template-columns:260px 280px 1fr;gap:2rem}.chart-container{height:600px}}@media (min-width: 1201px) and (max-width: 1440px){.calculator-container{grid-template-columns:240px 260px 1fr;gap:1.5rem}.chart-container{height:500px}}@media (min-width: 992px) and (max-width: 1200px){.calculator-container{grid-template-columns:220px 240px 1fr;gap:1.5rem}.chart-container{height:450px}}.input-section{background:#f8f9fa;padding:2rem;border-radius:12px;box-shadow:0 2px 10px #0000001a}.input-section h2{color:#2c3e50;margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.input-group{margin-bottom:1.5rem}.input-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#34495e;font-size:.9rem}.input-group input,.input-group select{width:100%;padding:.75rem;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#fff;box-sizing:border-box}.input-group input:focus,.input-group select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.input-group select:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.results-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 20px #00000026}.results-section h2{margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.results-summary{display:flex;flex-direction:column;gap:1rem}.result-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#ffffff1a;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.result-item.highlight{background:#fff3;border:1px solid rgba(255,255,255,.3)}.result-item .label{font-weight:500;opacity:.9}.result-item .value{font-weight:700;font-size:1.1rem}.chart-section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 10px #0000001a}.chart-section h2{color:#2c3e50;margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.chart-container{height:400px;width:100%;min-height:300px}.breakdown-section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 10px #0000001a}.breakdown-section h2{color:#2c3e50;margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.breakdown-table{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.table-header{display:contents}.table-header span{font-weight:700;color:#2c3e50;padding:1rem;background:#f8f9fa;border-radius:8px;text-align:center;font-size:.9rem}.table-row{display:contents}.table-row span{padding:.75rem;background:#fdfdfd;border-radius:6px;text-align:center;font-size:.9rem;border:1px solid #e1e8ed}.table-row:nth-child(2n) span{background:#f8f9fa}@media (min-width: 769px) and (max-width: 991px){.calculator-container{grid-template-columns:1fr 1fr;gap:1.5rem}.chart-section{grid-column:1 / -1}.input-section,.results-section,.chart-section,.breakdown-section{padding:1.8rem}.chart-container{height:400px}}@media (min-width: 481px) and (max-width: 768px){.app{padding:1.5rem}.app h1{font-size:2.2rem}.calculator-container{grid-template-columns:1fr;gap:1.5rem}.chart-section{grid-column:1}.input-section,.results-section,.chart-section,.breakdown-section{padding:1.8rem}.chart-container{height:350px}}@media (max-width: 480px){.app{padding:1rem}.app h1{font-size:1.8rem}.calculator-container{grid-template-columns:1fr;gap:1rem}.chart-section{grid-column:1}.input-section,.results-section,.chart-section,.breakdown-section{padding:1.2rem}.chart-container{height:280px}@media (max-width: 991px){.breakdown-table{grid-template-columns:1fr;gap:.5rem}.table-header{display:none}.table-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e1e8ed}.table-row span{background:#fff;position:relative;padding:.75rem;font-size:.9rem}.table-row span:nth-child(1):before{content:"年: ";font-weight:700}.table-row span:nth-child(2):before{content:"期首: ";font-weight:700}.table-row span:nth-child(3):before{content:"利息: ";font-weight:700}.table-row span:nth-child(4):before{content:"積立: ";font-weight:700}.table-row span:nth-child(5):before{content:"期末: ";font-weight:700}}.table-row span{padding:.5rem;font-size:.8rem}}
