.lc-hero { padding-top: 34px; padding-bottom: 38px; }
.lc-hero h1 { font-size: clamp(2rem, 5vw, 3rem); }
.lc-hero .breadcrumbs { margin-bottom: 18px; }
.lc-shell { width: min(1120px, calc(100% - 40px)); margin: 0 auto; padding: 32px 0 64px; }
.lc-layout { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); align-items: start; gap: 24px; }
.lc-layout > * { min-width: 0; }
.lc-panel { min-width: 0; border: 1px solid #cfdee8; border-radius: 20px; padding: clamp(20px, 3vw, 30px); background: #fff; box-shadow: 0 10px 30px #082b4910; }
.lc-panel h2 { margin: 0 0 12px; font-size: 1.4rem; line-height: 1.5; }
.lc-intro, .lc-note { margin: 0 0 20px; color: #526576; line-height: 1.8; }
.lc-fields { min-width: 0; padding: 0; border: 0; margin: 0; }
.lc-fields > legend { margin-bottom: 16px; font-weight: 800; color: #173a55; }
.lc-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 16px; }
.lc-inputs label { display: flex; flex-direction: column; gap: 8px; color: #163752; font-weight: 750; min-width: 0; }
.lc-inputs input { width: 100%; min-height: 50px; border: 1px solid #9db9cd; border-radius: 10px; padding: 12px; font: inherit; font-size: 1.1rem; background: #f9fcff; color: #123752; }
.lc-inputs small { color: #536c7f; font-size: .83rem; font-weight: 400; line-height: 1.65; }
.lc-inputs input[aria-invalid] { border: 2px solid #aa2727; }
.lc-methods { display: grid; gap: 10px; margin: 22px 0; }
.lc-methods label { display: grid; grid-template-columns: 20px 1fr; gap: 10px; padding: 14px; border: 1px solid #c1d5e4; border-radius: 12px; cursor: pointer; }
.lc-methods label:has(input:checked) { border-color: #1688c9; background: #eef8ff; box-shadow: inset 3px 0 #1688c9; }
.lc-methods input { width: 18px; height: 18px; margin: 4px 0 0; accent-color: #087ebf; }
.lc-methods strong, .lc-methods small { display: block; }
.lc-methods small { margin-top: 4px; color: #526576; line-height: 1.6; }
.lc-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.lc-actions button { min-height: 48px; }
.lc-secondary { border: 1px solid #bed3e2; border-radius: 12px; background: #f6faff; color: #163752; padding: 10px 18px; font: inherit; font-weight: 700; cursor: pointer; }
.lc-shell :focus-visible { outline: 3px solid #ba8317; outline-offset: 3px; }
.lc-privacy { margin: 16px 0 0; font-size: .84rem; line-height: 1.7; color: #5b7081; }
.lc-error { margin: 18px 0 0; color: #a32222; font-weight: 700; }
.lc-pending { margin: 0; padding: 24px; border: 1px dashed #95b8d0; border-radius: 18px; color: #244b66; background: #eef8ff; line-height: 1.8; }
.lc-result { background: #fafdff; }
.lc-context { margin: 0 0 20px; font-size: .9rem; color: #526576; line-height: 1.8; }
.lc-payment { margin: 0; padding: 22px; color: #fff; border-radius: 16px; background: linear-gradient(120deg, #092a49, #0c5482); }
.lc-payment dt { color: #e1eff9; font-size: .95rem; }
.lc-payment dd { margin: 8px 0; font-size: clamp(1.9rem, 4vw, 2.7rem); font-weight: 850; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; line-height: 1.4; color: #ffcf61; }
.lc-payment dd small { font-size: 1rem; color: #fff; margin-left: 8px; }
.lc-payment p { font-size: .85rem; line-height: 1.7; margin: 0; color: #dceaf4; }
.lc-totals { margin: 22px 0 0; }
.lc-totals > div { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 12px 0; border-bottom: 1px solid #dce8f0; }
.lc-totals dt { color: #4e6577; }
.lc-totals dd { margin: 0; font-weight: 750; color: #173b56; text-align: right; font-variant-numeric: tabular-nums; }
.lc-totals .lc-grand-total { border: 0; padding-bottom: 0; }
.lc-grand-total dt, .lc-grand-total dd { color: #075e92; font-weight: 850; }
.lc-breakdown { margin: 22px 0 0; }
.lc-bar { display: flex; height: 10px; overflow: hidden; background: #d7e6f0; border-radius: 10px; }
#principal-bar { background: #157db5; }
#interest-bar { background: #efb43c; }
.lc-key { display: flex; gap: 18px; margin: 10px 0 4px; color: #35556b; font-size: .83rem; }
.lc-key span::before { content: ''; display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 6px; background: #157db5; }
.lc-key span + span::before { background: #efb43c; }
.lc-breakdown p { margin: 6px 0 0; color: #526576; font-size: .82rem; line-height: 1.7; }
.lc-schedule { margin-top: 22px; border-top: 1px solid #c5d9e8; padding-top: 18px; }
.lc-schedule summary { cursor: pointer; font-weight: 800; color: #14597e; }
.lc-scroll { overflow-x: auto; margin-top: 14px; border: 1px solid #cddfe9; border-radius: 10px; }
.lc-scroll table { width: 100%; border-collapse: collapse; font-size: .82rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.lc-scroll th, .lc-scroll td { padding: 10px; text-align: right; border-bottom: 1px solid #deebf3; }
.lc-scroll thead th { color: #fff; background: #164465; font-weight: 650; }
.lc-scroll tbody tr:nth-child(even) { background: #edf6fc; }
.lc-scroll caption { text-align: left; padding: 10px; color: #435f73; background: #f4f9fd; }
.lc-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 14px; font-size: .8rem; }
.lc-pagination button { min-height: 44px; font-size: .8rem; padding: 8px 12px; }
.lc-pagination button:disabled { opacity: .4; cursor: default; }
.lc-info { margin-top: 26px; }
.lc-info h2 { font-size: 1.25rem; }
.lc-info p, .lc-info li { color: #4c6476; font-size: .95rem; line-height: 1.9; }
.lc-info ul { padding-left: 1.3rem; }
.lc-info a { color: #056b9e; text-underline-offset: 3px; }
.lc-related { display: flex; gap: 12px 24px; flex-wrap: wrap; padding-top: 12px; border-top: 1px solid #dce8f0; }
.lc-shell [hidden] { display: none !important; }
@media (max-width: 850px) { .lc-layout { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 520px) { .lc-shell { width: calc(100% - 28px); padding-top: 20px; } .lc-inputs { grid-template-columns: 1fr; gap: 18px; } .lc-panel { padding: 20px; } .lc-hero { padding: 28px 20px; } .lc-actions button { flex: 1; } .lc-totals { font-size: .9rem; } }
