.im-app{--im-navy:#00243d;--im-blue:#4576a6;--im-blue-dark:#365f87;--im-white:#fff;--im-off:#fafafa;--im-gray-light:#d8d8d8;--im-gray-mid:#a6adb5;--im-gray-text:#53616d;background:var(--im-off);justify-content:center;align-items:center;min-height:100vh;padding:20px;font-family:"Source Sans 3",Source Sans Pro,system-ui,-apple-system,sans-serif;display:flex}.im-app,.im-app *{box-sizing:border-box}.im-app button,.im-app input{font:inherit}.im-app button{transition:background-color .16s,border-color .16s,color .16s,opacity .16s,transform .16s}.im-app button:active:not(:disabled){transform:translateY(1px)}.im-app :focus-visible{outline-offset:2px;outline:3px solid #4576a63d}.im-app input::placeholder{color:var(--im-gray-mid)}.im-card{background:var(--im-white);border-radius:16px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 2px 8px #00000014}.im-header{background:var(--im-navy);padding:20px 24px 18px}.im-header-row{align-items:center;gap:14px;display:flex}.im-logo{width:auto;height:22px;display:block}.im-header-rule{background:#ffffff52;flex:1;height:1px}.im-header-tag{color:#ffffffb8;letter-spacing:.16em;white-space:nowrap;font-size:10px;font-weight:600}.im-content{padding:32px 28px 28px}.im-pill{border:1px solid var(--im-blue);color:var(--im-blue);letter-spacing:.1em;text-transform:uppercase;border-radius:100px;align-items:center;padding:5px 13px;font-size:11px;font-weight:600;line-height:1.2;display:inline-flex}.im-title{color:var(--im-navy);letter-spacing:-.015em;margin:20px 0 12px;font-size:30px;font-weight:400;line-height:1.12}.im-title strong{font-weight:600}.im-lead{color:var(--im-gray-text);margin:0;font-size:15px;line-height:1.55}.im-section-label{color:var(--im-blue);letter-spacing:.16em;text-transform:uppercase;margin-bottom:9px;font-size:11px;font-weight:600}.im-steps{margin-top:26px}.im-steps-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.im-step{min-width:0;position:relative}.im-step-head{align-items:center;margin-bottom:8px;display:flex}.im-step-num{background:var(--im-off);border:1px solid var(--im-gray-light);color:var(--im-navy);letter-spacing:.06em;z-index:1;border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;font-weight:600;display:inline-flex}.im-step-num.is-last{background:var(--im-blue);border-color:var(--im-blue);color:var(--im-white)}.im-step-line{background:var(--im-gray-light);flex:1;height:1px}.im-step-text{color:var(--im-gray-text);margin:0;padding-right:3px;font-size:11px;line-height:1.35}.im-metric{border-bottom:1px solid var(--im-gray-light);border-top:1px solid var(--im-gray-light);align-items:center;gap:14px;margin:24px 0;padding:14px 0;display:flex}.im-metric strong{color:var(--im-navy);letter-spacing:-.01em;white-space:nowrap;font-size:22px;font-weight:600;line-height:1}.im-metric span{color:var(--im-gray-text);font-size:12px;line-height:1.4}.im-field-label{color:var(--im-navy);margin-bottom:5px;font-size:14px;font-weight:600;display:block}.im-field-help{color:var(--im-gray-text);margin:0 0 9px;font-size:12px;line-height:1.4}.im-input{background:var(--im-white);border:1px solid var(--im-gray-light);color:var(--im-navy);border-radius:12px;outline:none;width:100%;padding:14px 15px;font-size:16px;transition:border-color .16s,box-shadow .16s}.im-input.is-valid{border-color:var(--im-blue)}.im-error{color:#a4272c;background:#fdecec;border-radius:10px;margin:10px 0 0;padding:10px 12px;font-size:13px;line-height:1.4}.im-error-link{color:#a4272c;white-space:nowrap;font-weight:700;text-decoration:underline}.im-primary{background:var(--im-blue);color:var(--im-white);cursor:pointer;letter-spacing:.01em;border:none;border-radius:12px;width:100%;padding:15px 18px;font-size:16px;font-weight:600}.im-primary:hover:not(:disabled){background:var(--im-blue-dark)}.im-primary:disabled{background:var(--im-gray-light);color:var(--im-gray-text);cursor:not-allowed}.im-primary.is-loading{opacity:.72}.im-submit{margin-top:14px}.im-footnote{color:var(--im-gray-text);text-align:center;margin:10px 0 0;font-size:11px;line-height:1.45}.im-link-box{background:var(--im-off);border:1px solid var(--im-gray-light);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;display:flex}.im-link-text{color:var(--im-navy);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.im-copy-btn{color:var(--im-blue);cursor:pointer;background:0 0;border:0;flex:none;padding:4px 0;font-size:13px;font-weight:600}.im-feedback-slot{min-height:20px}.im-feedback{color:var(--im-blue);text-align:right;margin:6px 0 0;font-size:12px}.im-code-row{border-bottom:1px solid var(--im-gray-light);border-top:1px solid var(--im-gray-light);justify-content:space-between;align-items:center;gap:12px;margin:22px 0;padding:13px 0;display:flex}.im-code-label{color:var(--im-gray-text);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:600}.im-code-value{color:var(--im-navy);letter-spacing:.14em;font-size:18px;font-weight:600}.im-projection{background:var(--im-off);border-radius:16px;grid-template-columns:repeat(3,1fr);padding:16px 10px;display:grid}.im-projection-item{text-align:center;padding:0 6px}.im-projection-item+.im-projection-item{border-left:1px solid var(--im-gray-light)}.im-projection-value{color:var(--im-navy);font-size:19px;font-weight:600;line-height:1.2}.im-projection-item:last-child .im-projection-value{color:var(--im-blue)}.im-projection-caption{color:var(--im-gray-text);margin-top:4px;font-size:11px;line-height:1.3}.im-note{border-left:3px solid var(--im-blue);margin:20px 0;padding:2px 0 2px 13px}.im-note-label{color:var(--im-blue);letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:600;display:block}.im-note p{color:var(--im-gray-text);margin:0;font-size:12px;line-height:1.45}.im-secondary{border:1px solid var(--im-gray-light);color:var(--im-gray-text);cursor:pointer;background:0 0;border-radius:12px;width:100%;padding:12px 16px;font-size:13px;font-weight:600}.im-secondary:hover:not(:disabled){border-color:var(--im-blue);color:var(--im-navy)}@media (width<=460px){.im-app{align-items:stretch;padding:0}.im-card{border-radius:0;max-width:none;min-height:100vh}.im-content{padding:28px 22px 24px}}@media (prefers-reduced-motion:reduce){.im-app button{transition:none}}
