.page-shell{min-height:100vh}body.modal-open{overflow:hidden}.topbar{background:color-mix(in srgb, var(--surface) 88%, #000 12%);border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;gap:12px;padding:14px 92px;display:flex;box-shadow:inset 0 -1px #ffffff08}.brand{align-items:center;gap:10px;display:flex}.brand-mark{color:#fff;background:#353243;border:1px solid #ffffff14;border-radius:12px;place-items:center;width:46px;height:46px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1a,0 6px 16px #1216231f}.brand-mark-screen,.brand-mark-plus{z-index:2;pointer-events:none;font-weight:800;position:relative}.brand-mark-screen{color:#f5f2ea;text-shadow:none;font-size:1.45rem}.brand-mark-plus{color:#8fb4ff;text-shadow:none;font-size:.95rem;position:absolute;bottom:7px;right:8px}.brand-mark-arrow{color:#d08a4d;pointer-events:none;opacity:.95;text-shadow:none;font-size:1.2rem;line-height:1;position:absolute;bottom:2px;right:2px}.brand-text strong{color:var(--brand);letter-spacing:.04em;text-transform:lowercase;font-size:1.45rem;line-height:1;display:block}.brand-text span{color:var(--text-secondary);font-size:.74rem}.theme-switcher{border:1px solid var(--border);background:color-mix(in srgb, var(--surface-soft) 82%, #000 18%);box-sizing:border-box;border-radius:999px;align-items:center;gap:3px;height:32px;padding:2px;display:inline-flex;box-shadow:inset 0 1px #ffffff0a}.theme-toggle{z-index:1;min-width:34px;height:26px;color:var(--text-secondary);box-sizing:border-box;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;margin:0;padding:0 7px;font-size:.95rem;font-weight:600;line-height:1;transition:transform .18s,background .18s,color .18s;display:inline-flex;position:relative}.theme-toggle span{line-height:1;display:block;transform:translateY(-.5px)}.theme-toggle.is-active{background:color-mix(in srgb, var(--surface-muted) 70%, var(--accent) 30%);color:var(--accent-contrast);box-shadow:inset 0 1px #ffffff14,0 1px 2px #00000029}.app-shell{width:min(1180px,100% - 240px);margin:0 auto;padding:18px 0 28px}.hero-grid{grid-template-columns:minmax(620px,1.42fr) minmax(320px,.9fr);align-items:start;gap:16px;display:grid}.side-stack{flex-direction:column;gap:14px;display:flex}.side-stack .history-card{order:2}.calculator-card,.result-card{background:var(--card-bg-strong);box-shadow:var(--shadow);border:0;border-radius:16px;animation:.32s ease-out both float-in;overflow:hidden}.card-header{padding:15px 18px 10px}.breadcrumbs{color:#6d89a6;margin-bottom:7px;font-size:.78rem}.card-header h1{margin:0;font-size:clamp(1.5rem,2.3vw,2.25rem);font-weight:500;line-height:1.04}.form-surface{background:var(--card-bg);border-top:1px solid #ffffff0a;border-radius:0 0 16px 16px;padding:0}.form-row{grid-template-columns:minmax(170px,236px) minmax(280px,420px);justify-content:center;align-items:center;gap:14px;padding:7px 14px;display:grid}.form-label{text-align:right;font-size:.88rem;line-height:1.25}.form-control{align-items:center;gap:8px;display:flex}.form-control input,.form-control select{background:color-mix(in srgb, var(--surface) 82%, var(--page-bg) 18%);width:100%;min-height:42px;color:var(--text-primary);font-variant-numeric:tabular-nums;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border-strong) 92%, transparent), inset 0 1px 0 #ffffff0d;border:1px solid #0000;border-radius:12px;padding:0 14px;font-size:.9rem;font-weight:400;transition:border-color .16s,box-shadow .16s,background .16s,transform .16s}.form-control input:focus,.form-control select:focus,.repayment-item input:focus,.repayment-item select:focus{border-color:color-mix(in srgb, var(--accent) 72%, white 28%);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent), inset 0 1px 0 #ffffff14;outline:none;transform:translateY(-1px)}.form-control.has-error input,.form-control.has-error select,.form-control.has-error .suffix,.form-control.has-error .currency-trigger{border-color:#e66a6a;box-shadow:0 0 0 3px #e66a6a1f}.form-control select,.repayment-item select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='12' viewBox='0 0 18 12' fill='none'%3E%3Cpath d='M2 2.25L9 9.25L16 2.25' stroke='%23738391' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px 10px;padding-right:42px}.grouped-control{grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;display:grid}.grouped-control-inline{grid-template-columns:minmax(0,1fr) auto}.narrow-select{width:112px}.currency-trigger{z-index:1;background:color-mix(in srgb, var(--surface) 86%, var(--page-bg) 14%);min-width:118px;min-height:42px;color:var(--text-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border-strong) 92%, transparent);touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:12px;align-items:center;gap:8px;padding:0 12px;font-weight:600;display:inline-flex;position:relative}.currency-row{align-items:start}.currency-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;padding:4px 0 2px;display:grid}.currency-option{z-index:1;background:color-mix(in srgb, var(--surface) 86%, var(--page-bg) 14%);min-height:42px;color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--border);touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:12px;align-items:center;gap:8px;padding:0 12px;display:flex;position:relative}.currency-option strong{min-width:42px}.currency-option.is-active{border-color:color-mix(in srgb, var(--accent) 62%, white 18%);background:color-mix(in srgb, var(--accent) 14%, var(--surface) 86%)}.suffix{background:color-mix(in srgb, var(--surface) 86%, var(--page-bg) 14%);min-width:58px;min-height:42px;color:var(--text-secondary);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border-strong) 92%, transparent);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;padding:0 12px;font-size:.88rem;font-weight:600;display:inline-flex}.payment-type-group{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.radio-option{align-items:center;gap:8px;font-size:.9rem;display:inline-flex}.radio-option input,input[type=radio]{appearance:none;aspect-ratio:1;border:1.5px solid color-mix(in srgb, var(--text-secondary) 70%, transparent);background:color-mix(in srgb, var(--surface) 88%, var(--page-bg) 12%);border-radius:50%;flex:none;width:26px;min-width:26px;height:26px;margin:0;padding:0;transition:border-color .16s,box-shadow .16s,background .16s,transform .16s;box-shadow:inset 0 0 0 1px #ffffff0a;min-height:26px!important;max-height:26px!important}.radio-option input:checked,input[type=radio]:checked{border-color:var(--accent);background:radial-gradient(circle at center, var(--accent) 0 38%, transparent 42% 100%), color-mix(in srgb, var(--surface) 88%, var(--page-bg) 12%)}.radio-option input:focus-visible,input[type=radio]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent), inset 0 0 0 1px #ffffff0a;outline:none}.advanced-toggle{z-index:1;background:color-mix(in srgb, var(--surface-soft) 82%, transparent);width:100%;min-height:52px;color:var(--text-secondary);touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:1px solid #ffffff0a;border-left:0;border-right:0;justify-content:center;align-items:center;gap:8px;font-size:.88rem;display:flex;position:relative}.advanced-toggle span{font-size:1.2rem;font-weight:300}.advanced-panel{border-bottom:1px solid var(--border);padding:10px 14px 8px}.advanced-head{color:var(--text-secondary);justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.82rem;display:flex}.logic-links{flex-direction:column;gap:8px;display:flex}.logic-link{z-index:1;width:fit-content;color:color-mix(in srgb, var(--accent) 64%, var(--text-secondary) 36%);touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:.9rem;display:inline-flex;position:relative}.repayment-section{background:color-mix(in srgb, var(--surface-soft) 92%, transparent);border:0;border-radius:16px;margin-top:10px;padding:12px;box-shadow:inset 0 0 0 1px #ffffff0a}.repayment-tabs{gap:12px;margin-bottom:8px;display:inline-flex}.repayment-tab{color:var(--text-secondary);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 0 6px;font-size:.9rem;font-weight:600}.repayment-tab.is-active{border-bottom-color:var(--accent-strong);color:var(--accent-strong)}.repayment-caption{color:var(--text-secondary);margin-bottom:8px;font-size:.8rem}.repayment-list{flex-direction:column;gap:10px;display:flex}.repayment-card{background:color-mix(in srgb, var(--surface) 90%, var(--page-bg) 10%);box-shadow:var(--shadow-soft);border:0;border-radius:14px;padding:12px}.modal-overlay{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#12101c85;justify-content:center;align-items:flex-start;padding:clamp(12px,3vh,28px) 18px;display:flex;position:fixed;inset:0;overflow:hidden}.repayment-modal{overscroll-behavior:contain;background:var(--card-bg-strong);border:0;border-radius:18px;width:min(860px,100%);max-height:min(920px,100dvh - clamp(24px,6vh,56px));animation:.22s ease-out both float-in;overflow:auto;box-shadow:0 20px 60px #091a2a3d}.repayment-modal-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 8px;display:flex}.repayment-modal-head h2{margin:4px 0 0;font-size:1.3rem;line-height:1.1}.repayment-modal-eyebrow{color:var(--text-secondary);letter-spacing:.03em;text-transform:uppercase;font-size:.78rem;font-weight:700}.modal-repayment-section{margin:0 16px 16px}.modal-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.modal-actions .primary-button,.modal-actions .ghost-button{width:100%;min-width:0}.repayment-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.repayment-card-head strong{font-size:.9rem}.repayment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;display:grid}.repayment-grid-regular{grid-template-columns:repeat(2,minmax(0,1fr))}.repayment-field{flex-direction:column;gap:6px;display:flex}.repayment-field>span{font-size:.82rem;font-weight:600}.repayment-field input,.repayment-field select{background:color-mix(in srgb, var(--surface) 86%, var(--page-bg) 14%);min-height:42px;color:var(--text-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border-strong) 92%, transparent);border:1px solid #0000;border-radius:12px;padding:0 12px;font-size:.88rem}.repayment-field.has-error input,.repayment-field.has-error select{border-color:#e66a6a;box-shadow:0 0 0 3px #e66a6a1f}.repayment-field.has-error>span{color:#e66a6a}.inline-group{gap:6px}.repayment-info{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-secondary);border-radius:14px;margin-bottom:10px;padding:10px 12px;font-size:.82rem;line-height:1.45}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:10px;display:grid}.check-option{color:var(--text-primary);align-items:center;gap:8px;font-size:.84rem;display:flex}.check-option input{width:18px;height:18px;accent-color:var(--accent)}.form-footer{justify-content:center;gap:16px;padding:14px 16px 16px;display:flex}.primary-button,.ghost-button{z-index:1;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:0;border-radius:12px;min-height:42px;padding:0 14px;font-weight:600;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;position:relative}.primary-button{background:linear-gradient(180deg, var(--accent) 0%, var(--accent-strong) 100%);color:var(--accent-contrast);box-shadow:inset 0 1px 0 #ffffff1f, 0 10px 20px color-mix(in srgb, var(--accent-strong) 26%, transparent);border:0}.ghost-button{background:color-mix(in srgb, var(--surface) 90%, var(--page-bg) 10%);color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--border);border:0}.calc-button{text-transform:uppercase;min-width:180px;font-size:.9rem}.primary-button:hover,.ghost-button:hover,.theme-toggle:hover{transform:translateY(-1px)}.icon-button{width:42px;min-width:42px;height:42px;color:var(--accent);flex:none;padding:0;font-size:1rem}.repayment-modal-head .icon-button:hover,.repayment-modal-head .icon-button:focus-visible{transform:none}.add-button{margin-top:8px}.primary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}.result-card{min-height:100%;margin-top:0;padding:14px;scroll-margin-top:16px}.history-card{min-height:auto}.history-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.history-list{flex-direction:column;gap:8px;display:flex}.history-item{z-index:1;background:color-mix(in srgb, var(--surface) 92%, var(--page-bg) 8%);color:var(--text-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border-strong) 90%, transparent), inset 0 1px 0 #ffffff14;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:14px;padding:11px;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative}.history-item.is-active,.history-item:hover{box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--accent) 44%, var(--border-strong)), 0 10px 24px #14182614;transform:translateY(-1px)}.history-item-head,.history-item-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.history-item-head{margin-bottom:6px}.history-item-head span,.history-item-meta{color:var(--text-secondary);font-size:.82rem}.history-item-main{font-variant-numeric:tabular-nums;margin-bottom:10px;font-size:.98rem;font-weight:700}.history-item-extra{color:var(--text-secondary);margin-top:8px;font-size:.76rem}.saved-repayments{border-top:1px solid #ffffff0d;margin-top:12px;padding-top:10px}.inline-repayments{margin-top:12px}.saved-repayment-list{flex-direction:column;gap:8px;display:flex}.saved-repayment-item{background:color-mix(in srgb, var(--surface) 92%, var(--page-bg) 8%);border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;display:flex;box-shadow:inset 0 0 0 1px #ffffff0d}.saved-repayment-item strong{margin-bottom:3px;font-size:.84rem;display:block}.saved-repayment-item p{color:var(--text-secondary);margin:0;font-size:.78rem}[data-theme=dark] .modal-overlay{background:#050c149e}.result-head{margin-bottom:14px}.result-head h2{margin:0 0 6px;font-size:1.45rem;font-weight:500}.result-head p,.result-placeholder{color:var(--text-secondary)}.meta-pills{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.meta-pill{background:color-mix(in srgb, var(--surface-soft) 84%, transparent);min-height:32px;color:var(--text-primary);font-variant-numeric:tabular-nums;border:0;border-radius:999px;align-items:center;padding:0 12px;font-size:.84rem;font-weight:600;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff0f}.result-visual{background:linear-gradient(180deg, color-mix(in srgb, var(--surface-soft) 88%, transparent) 0%, #ffffff05 100%);border:0;border-radius:18px;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:16px;margin-bottom:14px;padding:14px 16px;display:grid;box-shadow:inset 0 0 0 1px #ffffff0d}.viz-label{color:var(--text-secondary);margin-bottom:8px;font-size:.88rem;display:block}.viz-copy strong{font-variant-numeric:tabular-nums;margin-bottom:6px;font-size:1.6rem;font-weight:700;display:block}.viz-copy p{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.4}.viz-chart-block{flex-direction:column;align-items:center;gap:12px;display:flex}.viz-donut{--principal-color:var(--brand-secondary);--interest-color:var(--accent);background:conic-gradient(var(--principal-color) 0 var(--principal), var(--interest-color) var(--principal) 100%);border-radius:50%;place-items:center;width:142px;height:142px;display:grid}.viz-donut-center{background:color-mix(in srgb, var(--card-bg-strong) 86%, var(--page-bg) 14%);text-align:center;width:88px;height:88px;box-shadow:inset 0 0 0 1px var(--border);border-radius:50%;place-items:center;display:grid}.viz-donut-center strong{font-variant-numeric:tabular-nums;font-size:1.15rem}.viz-donut-center span{color:var(--text-secondary);font-size:.76rem}.viz-legend{flex-direction:column;gap:8px;width:100%;display:flex}.viz-legend div{padding-left:18px;position:relative}.legend-dot{border-radius:50%;width:9px;height:9px;position:absolute;top:7px;left:0}.legend-dot-principal{background:var(--brand-secondary)}.legend-dot-interest{background:var(--accent)}.viz-legend strong{font-variant-numeric:tabular-nums;font-size:.95rem;display:block}.viz-legend p{color:var(--text-secondary);margin:2px 0 0;font-size:.78rem}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.summary-card{background:color-mix(in srgb, var(--surface-soft) 84%, transparent);border:0;border-radius:18px;padding:14px;transition:transform .18s,border-color .18s,box-shadow .18s;box-shadow:inset 0 0 0 1px #ffffff0a}.summary-card span{color:var(--text-secondary);margin-bottom:6px;font-size:.88rem;display:block}.summary-card strong{font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.02em;margin-bottom:6px;font-size:1.28rem;font-weight:700;line-height:1.1;display:block}.summary-card p{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.35}.summary-card:hover{border-color:color-mix(in srgb, var(--accent) 28%, var(--border));box-shadow:var(--shadow-soft);transform:translateY(-2px)}.warning-box{color:#b87700;background:#f2a9001a;border:0;border-radius:14px;padding:10px 12px;font-size:.92rem;box-shadow:inset 0 0 0 1px #f2a9003d}.table-card{margin-top:18px;padding-bottom:10px}.table-wrap{background:color-mix(in srgb, var(--surface) 92%, var(--page-bg) 8%);border:0;border-radius:16px;overflow-x:auto;box-shadow:inset 0 0 0 1px #ffffff0d}.schedule-table{border-collapse:collapse;background:0 0;width:100%;min-width:920px}.schedule-table th,.schedule-table td{text-align:left;font-variant-numeric:tabular-nums;border-bottom:1px solid #ffffff0f;padding:8px 10px;font-size:.84rem}.schedule-table th{background:color-mix(in srgb, var(--surface-soft) 84%, transparent);color:var(--text-secondary);font-size:.76rem;font-weight:700}.table-toggle{color:color-mix(in srgb, var(--accent) 64%, var(--text-secondary) 36%);touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin-top:10px;font-size:.9rem}[data-theme=dark] .form-control input,[data-theme=dark] .form-control select,[data-theme=dark] .repayment-field input,[data-theme=dark] .repayment-field select,[data-theme=dark] .suffix{box-shadow:inset 0 0 0 1px #969eb46b,inset 0 1px #ffffff08}[data-theme=dark] .currency-trigger{box-shadow:inset 0 0 0 1px #969eb46b}[data-theme=dark] .form-control select,[data-theme=dark] .repayment-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='12' viewBox='0 0 18 12' fill='none'%3E%3Cpath d='M2 2.25L9 9.25L16 2.25' stroke='%23C0D0DC' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}[data-theme=dark] .advanced-toggle{background:color-mix(in srgb, var(--surface-soft) 78%, transparent);color:var(--text-secondary)}[data-theme=dark] .logic-link,[data-theme=dark] .table-toggle{color:color-mix(in srgb, var(--accent) 64%, var(--text-secondary) 36%)}[data-theme=dark] .summary-card:hover{box-shadow:0 12px 24px #00000029}@keyframes float-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=1100px){.app-shell{flex-direction:column;gap:16px;display:flex}.hero-grid{order:1;display:contents}.calculator-card{order:1}.side-stack{display:contents}.side-stack .result-card:not(.history-card){order:2}.table-card{order:3;margin-top:0}.side-stack .history-card{order:4;margin-top:0}.result-visual{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;justify-content:stretch;gap:12px}.form-label{text-align:left}.currency-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.repayment-grid,.repayment-grid-regular,.check-grid{grid-template-columns:1fr}}@media (width<=760px){body{font-size:16px}.topbar{flex-direction:column;align-items:flex-start;padding:14px 16px}.brand-text strong{font-size:1.35rem}.app-shell{width:min(100% - 16px,100%);padding:12px 0 24px}.card-header,.result-card{padding:14px 12px}.form-footer{flex-direction:column;gap:10px}.form-control input,.form-control select,.repayment-field input,.repayment-field select,.suffix,.currency-trigger,.currency-option,.primary-button,.ghost-button{min-height:50px;font-size:16px}.form-label,.repayment-field>span,.repayment-caption,.check-option,.logic-link,.table-toggle,.history-item-head span,.history-item-meta,.history-item-extra,.viz-label,.summary-card span,.summary-card p,.viz-copy p,.viz-legend p{font-size:16px}.summary-grid,.currency-grid,.grouped-control:not(.grouped-control-inline){grid-template-columns:1fr}.grouped-control-inline{grid-template-columns:minmax(0,1fr) auto}.narrow-select,.suffix,.currency-trigger{width:100%}.grouped-control-inline .suffix{width:auto;min-width:58px;padding-inline:14px}.payment-type-group{gap:4px}.radio-option{gap:8px;font-size:16px}.radio-option input,input[type=radio]{width:26px;min-width:26px;height:26px;min-height:26px;max-height:26px}.inline-group{gap:6px}.card-header h1{font-size:1.6rem}.modal-overlay{padding:8px}.repayment-modal{border-radius:18px;width:100%;max-height:calc(100dvh - 16px);overflow:auto;box-shadow:0 20px 60px #091a2a3d}.repayment-modal-head{z-index:2;background:var(--card-bg-strong);border-bottom:1px solid var(--border);padding:14px 14px 8px;position:sticky;top:0}.repayment-modal-head h2{font-size:1.08rem}.modal-repayment-section{margin:0;padding:12px 12px 16px}.modal-actions{box-shadow:none;flex-direction:column-reverse;gap:8px;padding-top:10px;position:sticky;bottom:0}.modal-actions .primary-button,.modal-actions .ghost-button{width:100%;box-shadow:none}.repayment-section{padding:10px}.repayment-grid,.repayment-grid-regular,.check-grid{grid-template-columns:1fr}.saved-repayment-item{align-items:flex-start}.saved-repayment-item .icon-button{flex:none}.history-item-head,.history-item-meta{flex-direction:column;align-items:flex-start}.result-visual{grid-template-columns:1fr;padding:12px}.viz-chart-block{align-items:flex-start}.schedule-table th,.schedule-table td{padding:7px 8px;font-size:16px}}@supports (-webkit-touch-callout:none){.form-control input,.form-control select,.repayment-field input,.repayment-field select,.currency-trigger,.suffix{font-size:16px}}:root{--page-bg:#f2f3f7;--card-bg:#eef0f5;--card-bg-strong:#fff;--surface:#fff;--surface-soft:#f6f7fb;--surface-muted:#ebeef4;--border:#6f768a2e;--border-strong:#68708552;--text-primary:#1f2430;--text-secondary:#687182;--accent:#4c8df6;--accent-strong:#2f6fe4;--accent-contrast:#fff;--brand:#25212d;--brand-secondary:#ff7b39;--shadow:0 20px 44px #14182614;--shadow-soft:0 10px 24px #1418260f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:SF Pro Text,SF Pro Display,Google Sans,Roboto,Helvetica Neue,Segoe UI,sans-serif;font-weight:400;line-height:1.45}[data-theme=dark]{--page-bg:#1c1b24;--card-bg:#25242d;--card-bg-strong:#201f28;--surface:#2b2a33;--surface-soft:#34323d;--surface-muted:#3f3c47;--border:#847e9433;--border-strong:#a19bb05c;--text-primary:#f3f2f7;--text-secondary:#bab6c2;--accent:#5ca3ff;--accent-strong:#3d86f4;--accent-contrast:#f9fbff;--brand:#f3f2f7;--brand-secondary:#fc6d26;--shadow:0 30px 90px #08080d57;--shadow-soft:0 14px 34px #08080d38;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background-color:var(--surface)}body{min-width:320px;min-height:100vh;color:var(--text-primary);background-color:var(--page-bg);background:radial-gradient(circle at top, #ffffff14, transparent 34%), linear-gradient(180deg, var(--surface) 0, var(--surface) 88px, var(--page-bg) 88px);margin:0;font-size:16px}button,input,select{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,[role=button],input,select,label{-webkit-user-select:none;user-select:none}input,select{-webkit-user-select:auto;user-select:auto}#root{background-color:#0000;min-height:100vh}
