:root{color:#263044;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#263044;--muted:#697487;--line:#dce7f5;--panel:#ffffffe6;--blue:#4a90e2;--pink:#ff6f9f;--mint:#33b99f;--yellow:#f5b84b;--shadow:0 18px 50px #3f638f29;background:#f8fbff;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(120deg,#ffe6eeb3,#0000 34%),linear-gradient(220deg,#ccf7eba6,#0000 34%),#f8fbff;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.app-shell{width:min(1440px,100% - 32px);margin:0 auto;padding:24px 0 48px}.hero{background:linear-gradient(90deg,#fffffff5 0%,#ffffffe0 44%,#ffffff26 100%),#fff;border:2px solid #263044;border-radius:8px;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);align-items:center;min-height:520px;display:grid;position:relative;overflow:hidden;box-shadow:8px 8px #2630441a}.hero:before,.hero:after{content:"";pointer-events:none;position:absolute}.hero:before{border:1px dashed #26304433;border-radius:6px;inset:18px}.hero:after{background:repeating-linear-gradient(90deg,#ff6f9f 0 18px,#4a90e2 18px 36px,#33b99f 36px 54px);border:2px solid #263044;width:180px;height:12px;bottom:28px;left:42px}.hero__copy{z-index:1;padding:64px;position:relative}.brand-mark{background:#fff4b8;border:2px solid #263044;border-radius:999px;align-items:center;gap:8px;min-height:36px;padding:7px 12px;font-size:14px;font-weight:800;display:inline-flex;box-shadow:3px 3px #26304429}.hero h1{letter-spacing:0;max-width:650px;margin:26px 0 18px;font-size:clamp(40px,5vw,76px);line-height:1.02}.hero p{color:#4b5a70;max-width:610px;margin:0;font-size:18px;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.primary-action,.ghost-action{border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:800;text-decoration:none;display:inline-flex}.primary-action{color:#fff;background:#263044;border:2px solid #263044;padding:0 18px;box-shadow:4px 4px #ff6f9f73}.ghost-action{color:#263044;background:#fff;border:2px solid #263044;padding:0 16px;box-shadow:4px 4px #4a90e238}.hero__image{z-index:0;align-self:stretch;min-height:440px;position:relative}.hero__image img{object-fit:cover;object-position:center right;width:100%;height:100%;min-height:520px;display:block}.calculator-layout{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:20px;display:grid}.left-column,.right-column{align-content:start;gap:18px;display:grid}.right-column{width:100%}.tool-panel,.summary-block{background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:2px solid #263044;border-radius:8px;padding:18px}.panel-heading,.summary-block__head,.schedule-toolbar{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.eyebrow{color:#e75586;letter-spacing:0;margin:0 0 6px;font-size:12px;font-weight:900}.save-plan-button{color:#263044;white-space:nowrap;background:#fff4b8;border:2px solid #263044;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex;box-shadow:3px 3px #2630441f}.save-status{color:#536278;background:#f8fcff;border:2px solid #dce7f5;border-radius:8px;margin:-4px 0 16px;padding:10px 12px;font-size:13px;font-weight:800;line-height:1.45}.save-status--saved{color:#1e715d;background:#effcf7;border-color:#bde8d8}.save-status--error{color:#963a55;background:#fff2f5;border-color:#ffbdcb}h2{margin:0;font-size:22px;line-height:1.25}.segmented-control{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px;display:grid}.segmented-control button{border:2px solid var(--line);color:#58657b;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:44px;font-weight:800;display:flex}.segmented-control button.is-active{color:#263044;background:#dff6ff;border-color:#263044;box-shadow:3px 3px #26304424}.month-field{grid-template-columns:1fr 180px;align-items:center;gap:14px;margin-bottom:16px;display:grid}.month-field>span,label>span{color:#516071;align-items:center;gap:6px;margin-bottom:8px;font-size:14px;font-weight:800;display:inline-flex}.month-field input,input,select{color:#263044;background:#fff;border:2px solid #d9e5f4;border-radius:8px;outline:none;width:100%;min-height:42px;padding:0 12px}input:focus,select:focus{border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e229}.part-stack{gap:12px;display:grid}.original-summary{background:#f8fcff;border:2px solid #dce7f5;border-radius:8px;gap:8px;margin-top:12px;padding:10px;display:grid}.original-summary__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.original-summary__head strong{font-size:14px}.original-summary__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.original-summary__grid div{background:#fff;border:2px solid #e4edf8;border-radius:8px;gap:4px;min-height:58px;padding:8px;display:grid}.original-summary__grid span{color:#68758a;font-size:13px;font-weight:800}.original-summary__grid strong{word-break:break-word;font-size:16px;line-height:1.15}.part-card{background:#fff;border:2px solid #263044;border-radius:8px;padding:16px}.part-card--warm{box-shadow:4px 4px #ff6f9f33}.part-card--cool{box-shadow:4px 4px #33b99f33}.part-card__title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.part-card__title span{font-size:17px;font-weight:900}.part-card__title small{color:#536278;background:#f2f7ff;border-radius:999px;align-items:center;min-height:26px;padding:0 10px;font-weight:800;display:inline-flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.part-fields-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.input-with-unit{background:#fff;border:2px solid #d9e5f4;border-radius:8px;grid-template-columns:1fr auto;align-items:center;display:grid}.input-with-unit:focus-within{border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e229}.input-with-unit input{box-shadow:none;border:0}.input-with-unit em{color:#7a8798;padding:0 12px;font-style:normal;font-weight:800}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.summary-card{background:#fff;border:2px solid #263044;border-radius:8px;gap:6px;min-height:104px;padding:12px;display:grid}.summary-card--blue{box-shadow:4px 4px #4a90e242}.summary-card--pink{box-shadow:4px 4px #ff6f9f3d}.summary-card--green{box-shadow:4px 4px #33b99f3d}.summary-card--yellow{box-shadow:4px 4px #f5b84b4d}.summary-card__icon{background:#f3f8ff;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.summary-card span{color:#68758a;font-size:13px;font-weight:800}.summary-card strong{word-break:break-word;font-size:clamp(17px,1.8vw,23px);line-height:1.05}.paid-summary{background:#f8fcff;border:2px solid #dce7f5;border-radius:8px;gap:12px;margin-top:14px;padding:14px;display:grid}.paid-summary__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.paid-summary__head span{color:#e75586;font-size:12px;font-weight:900}.paid-summary__head strong{color:#526072;font-size:13px}.paid-summary__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.paid-summary__grid div{background:#fff;border:2px solid #e4edf8;border-radius:8px;gap:5px;min-height:68px;padding:12px;display:grid}.paid-summary__grid span{color:#68758a;font-size:13px;font-weight:800}.paid-summary__grid strong{word-break:break-word;font-size:18px;line-height:1.15}.remaining-summary-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.remaining-summary{background:#fff;border:2px solid #dce7f5;border-radius:8px;gap:8px;min-width:0;padding:12px;display:grid}.remaining-summary__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.remaining-summary__head span{color:#e75586;font-size:12px;font-weight:900}.remaining-summary__head strong{color:#526072;font-size:12px}.remaining-summary__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;display:grid}.remaining-summary__grid div{background:#f7fbff;border-radius:6px;gap:5px;min-width:0;min-height:58px;padding:8px;display:grid}.remaining-summary__grid span{color:#68758a;font-size:13px;font-weight:800}.remaining-summary__grid strong{word-break:break-word;font-size:16px;line-height:1.15}.period-chip,.table-count,.select-shell{color:#526072;white-space:nowrap;background:#fff;border:2px solid #dbe6f3;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.prepayment-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.prepayment-grid--combo{grid-template-columns:repeat(5,minmax(0,1fr))}.prepayment-estimate{background:#f8fcff;border:2px solid #dce7f5;border-radius:8px;gap:5px;min-height:64px;padding:12px;display:grid}.prepayment-estimate span{color:#68758a;font-size:13px;font-weight:800}.prepayment-estimate strong{color:#e75586;font-size:18px;line-height:1.2}.prepayment-empty{background:#f8fcff;border:2px dashed #cbd9eb;border-radius:8px;align-items:flex-start;gap:12px;padding:16px;display:flex}.prepayment-empty strong{margin-bottom:4px;font-size:16px;display:block}.prepayment-empty p{color:#68758a;margin:0;font-size:14px;line-height:1.6}.prepayment-list{gap:12px;display:grid}.prepayment-item{background:#fff;border:2px solid #263044;border-radius:8px;gap:12px;padding:14px;display:grid;box-shadow:4px 4px #4a90e229}.prepayment-item__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.prepayment-item__head strong{font-size:16px}.icon-button{color:#a33c5c;background:#fff2f5;border:2px solid #f2bfd0;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid}.add-prepayment-button{color:#263044;background:#fff4b8;border:2px solid #263044;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:42px;margin-top:12px;font-weight:900;display:inline-flex;box-shadow:3px 3px #2630441f}.alert{border-radius:8px;gap:10px;margin-top:14px;padding:12px 14px;font-size:14px;font-weight:700;display:flex}.alert p{margin:0}.alert--error,.alert--warning{color:#963a55;background:#fff2f5;border:2px solid #ffbdcb}.alert--success{color:#1e715d;background:#effcf7;border:2px solid #bde8d8}.prepayment-result{gap:14px;margin-top:18px;display:grid}.result-ribbon{background:#fff4b8;border:2px solid #263044;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:12px 14px;font-weight:900;display:flex;box-shadow:4px 4px #2630441f}.result-ribbon strong{font-size:22px}.schedule-panel{margin-top:18px}.schedule-toolbar{align-items:center}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.select-shell{border-radius:8px;position:relative}.select-shell select{min-height:30px;box-shadow:none;appearance:none;background:0 0;border:0;padding:0 18px 0 0;font-weight:800}.table-wrap{background:#fff;border:2px solid #dce7f5;border-radius:8px;max-height:620px;overflow:auto}table{border-collapse:separate;border-spacing:0;width:100%;min-width:1320px}th,td{text-align:right;white-space:nowrap;border-bottom:1px solid #e6edf7;padding:12px 14px}th{z-index:1;color:#526072;background:#eef8ff;font-size:13px;position:sticky;top:0}th:first-child,td:first-child,th:nth-child(2),td:nth-child(2),th:last-child,td:last-child{text-align:left}tbody tr:nth-child(2n){background:#fbfdff}tbody tr:hover{background:#fff8e5}@media (width<=1120px){.hero,.calculator-layout{grid-template-columns:1fr}.hero{min-height:auto}.hero__copy{padding:42px}.hero__image{order:-1;min-height:320px}.hero__image img{object-position:center;min-height:320px}}@media (width<=760px){.app-shell{width:min(100% - 20px,1440px);padding-top:10px}.hero__copy,.tool-panel,.summary-block{padding:16px}.hero h1{font-size:38px}.hero p{font-size:16px}.segmented-control,.form-grid,.prepayment-grid,.original-summary__grid,.summary-grid,.paid-summary__grid,.remaining-summary-row,.remaining-summary__grid,.part-fields-grid,.month-field{grid-template-columns:1fr}.schedule-toolbar,.panel-heading,.summary-block__head{flex-direction:column;align-items:stretch}.toolbar-actions{justify-content:flex-start}}
