.rpi { margin:0; color:#172b3a; background:#eef2f6; background:linear-gradient(140deg,var(--rp-info-soft,#edf1f5),#f8fafc 65%); font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; min-height:100vh; }
.rpi *, .rpi *::before, .rpi *::after { box-sizing:border-box; }
.rpi [hidden] { display:none!important; }
.rpi-shell { max-width:760px; margin:0 auto; padding:36px 24px; }
.rpi-brand { display:flex; align-items:center; gap:14px; color:#172b3a; margin-bottom:26px; font-size:19px; font-weight:700; overflow-wrap:anywhere; }
.rpi-brand small { display:block; color:#526276; font-size:13px; font-weight:400; }
.rpi-brand-logo { display:block;max-width:140px;max-height:58px;object-fit:contain; }
.rpi-brand-mark { display:grid; place-items:center; flex:0 0 46px; height:46px; background:var(--rp-info-accent,#334155); color:#fff; border-radius:var(--rp-info-radius,12px); font-size:25px; }
.rpi-card { background:#fff; color:#172b3a; padding:40px; border:1px solid #ced7e1; border-radius:var(--rp-info-radius,12px); box-shadow:0 16px 55px #172b3a0d; }
.rpi .rpi-title { font-size:clamp(25px,4vw,34px); line-height:1.2; margin:16px 0 14px; letter-spacing:-.035em; color:#172b3a; overflow-wrap:anywhere; }
.rpi h2 { font-size:22px; line-height:1.3; color:#172b3a; }
.rpi-intro { color:#526276; margin:0 0 30px; }
.rpi-progress>div { height:5px; background:#e3e9ef; border-radius:4px; overflow:hidden; }
.rpi-progress span { display:block; height:100%; background:var(--rp-info-accent,#334155); transition:width .2s; }
.rpi-step-status { color:#526276; font-size:12px; letter-spacing:.04em; margin:9px 0 24px; }
.rpi-field { margin:28px 0; }
.rpi-field label { display:block; font-size:20px; font-weight:600; margin-bottom:12px; color:#172b3a; overflow-wrap:anywhere; }
.rpi-number { color:var(--rp-info-accent,#334155); font-size:13px; margin-right:10px; }
.rpi-field label small { display:block; color:#526276; font-size:12px; font-weight:400; margin-top:4px; }
.rpi input:not([type=checkbox]):not([type=hidden]), .rpi textarea, .rpi select { display:block; width:100%; min-height:52px; padding:12px 14px; font:inherit; border:1px solid #718095; border-radius:var(--rp-info-radius,12px); color:#172b3a; background:#fff; }
.rpi textarea { resize:vertical; }
.rpi input::placeholder, .rpi textarea::placeholder { color:#526276; opacity:1; }
.rpi a { color:#174f78; text-decoration:underline; text-underline-offset:3px; }
.rpi a:hover { color:#102f48; }
.rpi button { font:inherit; font-weight:600; cursor:pointer; min-height:48px; padding:11px 20px; border:2px solid transparent; border-radius:var(--rp-info-radius,12px); }
.rpi-primary { color:#fff; background:var(--rp-info-accent,#334155); }
.rpi-primary:hover { text-decoration:underline; text-underline-offset:4px; }
.rpi-secondary { color:#172b3a; background:#fff; border-color:#718095!important; }
.rpi-secondary:hover { background:#e8edf3; }
.rpi button:disabled { background:#e2e8f0; border-color:#718095; color:#48596b; cursor:default; opacity:1; text-decoration:none; }
.rpi :is(a,button,input,textarea,select):focus-visible { outline:3px solid #174f78; outline-offset:4px; }
.rpi :is(input,textarea,select)[aria-invalid=true] { border:2px solid #a51d2d; }
.rpi-controls { display:flex; justify-content:space-between; gap:12px; margin-top:30px; }
.rpi-consent { display:flex; gap:12px; font-size:14px; color:#334155; padding:20px 0; align-items:flex-start; }
.rpi-consent input { flex:0 0 20px; width:20px; height:20px; margin:2px 0 0; accent-color:var(--rp-info-accent,#334155); }
.rpi-note { color:#526276; font-size:12px; }
.rpi-feedback { color:#9b192a; font-size:14px; overflow-wrap:anywhere; }
.rpi-feedback:empty { margin:0; }
.rpi-preview { background:#edf2f7; color:#334155; font-size:13px; padding:10px 14px; border-radius:8px; }
.rpi-success>span { display:block; color:var(--rp-info-accent,#334155); font-size:40px; }
.rpi-footer { display:flex; gap:16px; justify-content:space-between; color:#526276; font-size:12px; margin-top:22px; flex-wrap:wrap; }
.rpi-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media(max-width:520px) { .rpi-shell{padding:24px 14px}.rpi-card{padding:24px 20px}.rpi-brand{font-size:17px}.rpi-review .rpi-primary{width:100%}.rpi-footer{gap:8px} }
@media(prefers-reduced-motion:reduce) { .rpi-progress span{transition:none} }

.rpi.rpi-dialog { min-height:0; width:min(780px,calc(100% - 32px)); max-width:780px; max-height:calc(100dvh - 32px); margin:auto; padding:0; border:1px solid #718095; border-radius:var(--rp-info-radius,12px); box-shadow:0 24px 90px #0005; overflow:auto; overscroll-behavior:contain; }
.rpi-dialog:not([open]) { display:none; }
.rpi-dialog::backdrop { background:rgba(15,23,42,.65); }
.rpi-dialog .rpi-shell { padding:12px 28px 26px; }
.rpi-dialog-toolbar { display:flex; justify-content:flex-end; position:sticky; top:0; z-index:2; padding:8px 12px; background:#eef2f6; color:#172b3a; border-bottom:1px solid #ced7e1; }
.rpi .rpi-close { color:#172b3a; background:#fff; border-color:#718095; min-height:44px; padding:6px 14px; }
.rpi .rpi-close:hover { background:#e8edf3; }
.rpi .rpi-text-close { background:transparent; color:#174f78; padding:0; font-size:12px; text-decoration:underline; min-height:44px; }
.rpi-context { color:#334155; background:#edf2f7; padding:10px 14px; font-size:14px; border-left:3px solid var(--rp-info-accent,#334155); overflow-wrap:anywhere; }
.rp-inquiry-launch { position:fixed; right:24px; bottom:86px; z-index:2147482000; display:inline-flex; align-items:center; gap:12px; max-width:calc(100% - 48px); padding:14px 20px; min-height:48px; border:2px solid #fff; border-radius:var(--rp-info-radius,12px); box-shadow:0 5px 24px #0003; color:#fff; background:var(--rp-info-accent,#334155); font:600 15px/1.4 system-ui,sans-serif; text-decoration:none; overflow-wrap:anywhere; }
.rp-inquiry-launch:hover { color:#fff; text-decoration:underline; }
.rp-inquiry-launch:focus-visible { outline:3px solid #174f78; outline-offset:3px; box-shadow:0 0 0 7px #fff,0 5px 24px #0003; }
.rp-inquiry-welcome-dismissed #overlay, .rp-inquiry-welcome-dismissed #overlay-background { display:none!important; }
body.rp-inquiry-modal-open { overflow:hidden!important; }
@media(max-width:520px) { .rpi.rpi-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.rpi-dialog .rpi-shell{padding:12px 12px 16px}.rpi-dialog .rpi-card{padding:22px 18px}.rp-inquiry-launch{right:14px;max-width:calc(100% - 28px);bottom:84px}.rpi-dialog .rpi-brand{margin-bottom:16px} }
/* Conversation layout; all native fields remain usable without JavaScript. */
.rpi-transcript { list-style:none;margin:18px 0;padding:0; }
.rpi-transcript li { margin:0 0 22px; }
.rpi-chat-question,.rpi-chat .rpi-question { background:#edf2f7;color:#23313c;border-radius:14px 14px 14px 3px;padding:14px 16px;max-width:92%;margin:0 0 12px;overflow-wrap:anywhere; }
.rpi-chat-answer { margin-left:32px;display:flex;gap:12px;align-items:flex-start;justify-content:space-between;padding:13px 16px;background:var(--rp-info-accent,#334155);color:#fff;border-radius:14px 14px 3px 14px;overflow-wrap:anywhere;white-space:pre-wrap; }
.rpi .rpi-chat-edit { background:transparent;color:#fff;min-height:32px;padding:2px 0;font-size:12px;flex:0 0 auto;text-decoration:underline;border:0; }
.rpi .rpi-chat-edit:hover { color:#fff;background:transparent; }
.rpi .rpi-chat-edit:focus-visible { outline:3px solid #fff;outline-offset:3px; }
.rpi-chat .rpi-field { margin-top:16px; }
.rpi-chat .rpi-field .rpi-question { display:block;font-size:18px;font-weight:600; }
.rpi-options,.rpi-multichoice { display:flex;flex-wrap:wrap;gap:10px;margin:16px 0; }
.rpi .rpi-option,.rpi .rpi-choice { background:#fff;color:#174f78;border:2px solid #174f78;border-radius:12px;padding:10px 16px;min-height:48px;font-size:15px;cursor:pointer;text-align:left; }
.rpi .rpi-option:hover,.rpi .rpi-choice:hover { background:#edf2f7;color:#102f48; }
.rpi .rpi-option[aria-pressed=true],.rpi .rpi-choice:has(input:checked) { color:#fff;background:#174f78;border-color:#174f78; }
.rpi .rpi-choice { display:flex;align-items:center;gap:9px;margin:0;font-weight:600; }
.rpi .rpi-choice input { width:18px;height:18px;flex:0 0 18px;accent-color:#174f78; }
.rpi .rpi-choice:focus-within { outline:3px solid #174f78;outline-offset:3px; }
.rpi .rpi-native-select { position:absolute;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;clip-path:inset(50%);overflow:hidden; }
@media(max-width:520px) { .rpi-chat-answer{margin-left:16px}.rpi-options .rpi-option{flex:1 1 100%}.rpi .rpi-choice{width:100%}.rpi-chat .rpi-question{max-width:100%} }

.rpi .rpi-question small { display:block;color:#526276;font-size:12px;font-weight:400;margin-top:4px; }
.rpi-chat .rpi-number { display:none; }
