/* IMP Core UI: v5 tokens, light + dark (system preference). */
.imp-app{--imp-bg:#F6F7FB;--imp-card:#FFFFFF;--imp-ink:#0B1430;--imp-ink2:#4A5470;--imp-line:#DDE2EE;--imp-navy:#0B1A4A;--imp-red:#D42033;--imp-wa:#0E7A3E;--imp-ok:#137A3B;--imp-err:#B42318;--imp-warn-bg:#FFF4E5;--imp-warn-ink:#7A4100;
  color:var(--imp-ink);font:16px/1.55 Inter,system-ui,sans-serif;max-width:1100px;margin:0 auto}
/* Dark tokens apply only when the site itself switches to dark (html[data-imp-theme=dark]); the site is light today. */
html[data-imp-theme=dark] .imp-app{--imp-bg:#050A1C;--imp-card:#0E1530;--imp-ink:#F1F3F8;--imp-ink2:#A9B2C9;--imp-line:#26304F;--imp-navy:#C9D0E3;--imp-ok:#7BD89B;--imp-err:#FFB4AB;--imp-warn-bg:#33240A;--imp-warn-ink:#FFD08A}
/* Beat theme (Blocksy) button/input styles inside the tools. */
.imp-app button.imp-chip{background:var(--imp-card)!important;color:var(--imp-ink)!important;border:2px solid var(--imp-line)!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important}
.imp-app button.imp-chip[aria-pressed=true]{background:#0B1A4A!important;border-color:#0B1A4A!important;color:#FFFFFF!important}
.imp-app input.imp-input{background:var(--imp-card)!important;color:var(--imp-ink)!important;border:2px solid var(--imp-line)!important;box-shadow:none!important}
.imp-app input.imp-input.is-ok{border-color:var(--imp-ok)!important}.imp-app input.imp-input.is-err{border-color:var(--imp-err)!important}
.imp-app input.imp-input::placeholder{color:var(--imp-ink2)!important;opacity:1}
.imp-app .imp-btn{box-shadow:none!important;text-transform:none!important}
.imp-app button.imp-btn.imp-wa,.imp-app a.imp-btn.imp-wa{background:#0E7A3E!important;border-color:#0E7A3E!important;color:#FFFFFF!important}
.imp-app a.imp-btn.imp-main{background:#D42033!important;border-color:#D42033!important;color:#FFFFFF!important}
.imp-app button.imp-btn[disabled]{background:var(--imp-line)!important;border-color:var(--imp-line)!important;color:var(--imp-ink2)!important}
.imp-app[dir=rtl]{font-family:Cairo,system-ui,sans-serif;text-align:right}
.imp-app h3{font:600 17px Poppins,system-ui,sans-serif;margin:18px 0 8px}
.imp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;align-items:start}
.imp-card{background:var(--imp-card);border:1px solid var(--imp-line);border-radius:16px;padding:20px}
.imp-chips{display:flex;flex-wrap:wrap;gap:8px}
.imp-chip{min-height:44px;padding:0 14px;border-radius:999px;border:2px solid var(--imp-line);background:var(--imp-card);color:var(--imp-ink);font:500 14px Inter,system-ui,sans-serif;cursor:pointer}
.imp-chip[aria-pressed=true]{background:#0B1A4A;border-color:#0B1A4A;color:#FFFFFF}
.imp-chip:focus-visible,.imp-btn:focus-visible,.imp-input:focus-visible{outline:3px solid #FF6B7A;outline-offset:2px}
.imp-input{width:100%;box-sizing:border-box;min-height:50px;border-radius:12px;border:2px solid var(--imp-line);padding:0 12px;background:var(--imp-card);color:var(--imp-ink);font-size:17px}
.imp-mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;text-align:left}
.imp-input.is-ok{border-color:var(--imp-ok)}.imp-input.is-err{border-color:var(--imp-err)}
.imp-ok-ink{color:var(--imp-ok)}.imp-err-ink{color:var(--imp-err)}
.imp-small{font-size:13.5px;color:var(--imp-ink2);margin:6px 0}
.imp-strong{font:600 18px Poppins,system-ui,sans-serif}
.imp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:12px;border:2px solid #0B1A4A;background:transparent;color:var(--imp-ink);font:600 15px Poppins,system-ui,sans-serif;text-decoration:none;cursor:pointer;margin:8px 8px 0 0}
.imp-btn.imp-main{background:#D42033;border-color:#D42033;color:#FFFFFF}
.imp-btn.imp-wa{background:#0E7A3E;border-color:#0E7A3E;color:#FFFFFF}
.imp-btn[disabled]{background:var(--imp-line);border-color:var(--imp-line);color:var(--imp-ink2);cursor:not-allowed}
.imp-result{display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-items:center;margin:10px 0}
.imp-result.imp-best{border:2px solid #0B1A4A}
.imp-tag{margin-inline-start:8px;padding:2px 10px;border-radius:999px;background:var(--imp-bg);font-size:12px;font-weight:600}
.imp-price{font:700 20px Poppins,system-ui,sans-serif}
.imp-note{padding:12px 14px;border-radius:12px;background:var(--imp-bg);margin:10px 0}
.imp-warn{background:var(--imp-warn-bg);color:var(--imp-warn-ink)}
.imp-ok{background:#E8F5EC;color:#0E5A30}
.imp-consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--imp-ink2);margin:12px 0}
.imp-consent input{width:22px;height:22px;flex:0 0 22px;margin:0}
.imp-steps{list-style:none;padding:0;margin:12px 0;border:1px solid var(--imp-line);border-radius:14px;overflow:hidden}
.imp-steps li{padding:12px 16px;border-bottom:1px solid var(--imp-line);color:var(--imp-ink2)}
.imp-steps li.done{color:var(--imp-ok);font-weight:600}.imp-steps li.done::before{content:"✓ "}
.imp-steps li.now{color:var(--imp-ink);font-weight:700;background:var(--imp-bg)}
@media (prefers-reduced-motion:reduce){.imp-app *{transition:none!important;animation:none!important}}
.imp-app .imp-price-link{font:600 15px Poppins,system-ui,sans-serif;color:var(--imp-ink);text-decoration:underline}
