/* IPMYP SaaS Control Plane UI — intentionally aligned with the original toolkit variables. */
.ipmyp-saas-wrap{
  --ipmyp-ui-bg:#ffffff;--ipmyp-ui-surface:#ffffff;--ipmyp-ui-surface-alt:#f8fbff;--ipmyp-ui-border:#d9e3f0;--ipmyp-ui-border-strong:#c8d5e6;--ipmyp-ui-text:#0f172a;--ipmyp-ui-muted:#64748b;--ipmyp-ui-primary:#2d59df;--ipmyp-ui-primary-strong:#1e3a8a;--ipmyp-ui-primary-soft:#e8f0ff;--ipmyp-ui-danger:#dc2626;--ipmyp-ui-success:#16a34a;--ipmyp-ui-radius-xl:28px;--ipmyp-ui-radius-lg:22px;--ipmyp-ui-radius-md:16px;--ipmyp-ui-shadow:0 10px 28px rgba(15,23,42,.06);--ipmyp-ui-shadow-soft:0 8px 22px rgba(15,23,42,.04);
  color:var(--ipmyp-ui-text);font-family:inherit;direction:rtl;max-width:1290px;margin:18px auto;box-sizing:border-box
}
.ipmyp-saas-wrap *,.ipmyp-saas-wrap *:before,.ipmyp-saas-wrap *:after{box-sizing:border-box}
.ipmyp-saas-shell{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;align-items:start}
.ipmyp-saas-sidebar{position:sticky;top:24px;padding:16px;border-radius:var(--ipmyp-ui-radius-xl);border:1px solid var(--ipmyp-ui-border);background:linear-gradient(180deg,#fff 0%,#f5f9ff 100%);box-shadow:var(--ipmyp-ui-shadow)}
.ipmyp-saas-brand{padding:16px;border-radius:22px;background:linear-gradient(135deg,var(--ipmyp-ui-primary-strong),var(--ipmyp-ui-primary));color:#fff;text-align:center;box-shadow:0 14px 30px rgba(45,89,223,.18)}
.ipmyp-saas-brand span{display:block;font-size:11px;font-weight:900;opacity:.86}.ipmyp-saas-brand strong{display:block;font-size:21px;font-weight:950;line-height:1.35}
.ipmyp-saas-nav{display:flex;flex-direction:column;gap:8px;margin-top:14px}.ipmyp-saas-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border-radius:14px;border:1px solid transparent;color:#334155;text-decoration:none;font-size:13px;font-weight:850;background:transparent;transition:background .2s,border-color .2s,transform .15s}.ipmyp-saas-nav a:hover{background:#edf4ff;transform:translateY(-1px)}.ipmyp-saas-nav a.is-active{background:var(--ipmyp-ui-primary-soft);border-color:#bfd1ff;color:var(--ipmyp-ui-primary-strong)}
.ipmyp-saas-main{min-width:0}.ipmyp-saas-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:16px;border-radius:var(--ipmyp-ui-radius-xl);border:1px solid var(--ipmyp-ui-border);background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:var(--ipmyp-ui-shadow-soft)}
.ipmyp-saas-topbar h1,.ipmyp-saas-heading h2{margin:.2em 0 0;font-size:clamp(22px,2vw,30px);font-weight:950;color:var(--ipmyp-ui-text)}.ipmyp-saas-kicker,.ipmyp-saas-heading span{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;background:#edf4ff;border:1px solid #c9dafc;color:var(--ipmyp-ui-primary);font-size:11px;font-weight:900}.ipmyp-saas-user-chip{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--ipmyp-ui-border);font-size:12px;font-weight:850;color:#334155}
.ipmyp-saas-heading{text-align:center;padding:20px 16px;margin-bottom:14px;border-radius:var(--ipmyp-ui-radius-xl);border:1px solid var(--ipmyp-ui-border);background:linear-gradient(180deg,#fff 0%,#f5f9ff 100%);box-shadow:var(--ipmyp-ui-shadow)}.ipmyp-saas-heading p{margin:8px auto 0;max-width:680px;color:var(--ipmyp-ui-muted);font-size:13px;line-height:1.9}
.ipmyp-saas-card{padding:18px;border-radius:var(--ipmyp-ui-radius-xl);border:1px solid var(--ipmyp-ui-border);background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:var(--ipmyp-ui-shadow-soft);margin-bottom:14px}.ipmyp-saas-card h2,.ipmyp-saas-card h3{margin:0 0 10px;font-weight:950;color:var(--ipmyp-ui-text)}.ipmyp-saas-card p{margin:6px 0 12px;color:var(--ipmyp-ui-muted);font-size:13px;line-height:1.9}.ipmyp-saas-empty{text-align:center;max-width:640px;margin:28px auto;padding:28px}.ipmyp-saas-auth-card{max-width:520px;margin:28px auto;padding:24px;border-radius:var(--ipmyp-ui-radius-xl);border:1px solid var(--ipmyp-ui-border);background:linear-gradient(180deg,#fff 0%,#f5f9ff 100%);box-shadow:var(--ipmyp-ui-shadow);text-align:center}
.ipmyp-saas-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.ipmyp-saas-stat{padding:16px;border-radius:22px;border:1px solid var(--ipmyp-ui-border);background:#fff;box-shadow:var(--ipmyp-ui-shadow-soft);text-align:center}.ipmyp-saas-stat span{display:block;color:var(--ipmyp-ui-muted);font-size:12px;font-weight:800;margin-bottom:8px}.ipmyp-saas-stat strong{display:block;font-size:26px;font-weight:950;color:var(--ipmyp-ui-primary-strong)}
.ipmyp-saas-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ipmyp-saas-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ipmyp-saas-price-card{text-align:center}.ipmyp-saas-price{font-size:26px;font-weight:950;color:var(--ipmyp-ui-primary-strong);margin:8px 0}.ipmyp-saas-section-head{text-align:center;margin-bottom:10px}.ipmyp-saas-section-head h3{margin-bottom:4px}.ipmyp-saas-tool-card .jdt-dns-toolkit,.ipmyp-saas-tool-card .ipvj-lite-box{margin-top:10px;margin-bottom:0}
.ipmyp-saas-btn,.ipmyp-saas-wrap button.ipmyp-saas-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:0;border-radius:14px;background:var(--ipmyp-ui-primary);color:#fff!important;font-size:12px;font-weight:900;text-decoration:none;cursor:pointer;box-shadow:0 8px 16px rgba(45,89,223,.18);transition:transform .15s,opacity .2s}.ipmyp-saas-btn:hover{transform:translateY(-1px)}.ipmyp-saas-btn-light{background:#eff4fb!important;color:#2240a8!important;border:1px solid #c8d7f0!important;box-shadow:none!important}
.ipmyp-saas-form,.ipmyp-saas-otp-form{display:grid;gap:10px;text-align:right}.ipmyp-saas-form label,.ipmyp-saas-otp-form label,.ipmyp-saas-admin-form label{font-size:12px;font-weight:850;color:var(--ipmyp-ui-text)}.ipmyp-saas-form input,.ipmyp-saas-otp-form input,.ipmyp-saas-admin-form input[type="text"],.ipmyp-saas-admin-form input[type="password"],.ipmyp-saas-admin-form input[type="email"],.ipmyp-saas-admin-form input[type="url"],.ipmyp-saas-admin-form input[type="number"]{width:100%;min-height:46px;border:1px solid var(--ipmyp-ui-border-strong);border-radius:14px;background:#fff;color:var(--ipmyp-ui-text);padding:0 14px;font-size:13px;font-weight:750}.ipmyp-saas-form input:focus,.ipmyp-saas-otp-form input:focus,.ipmyp-saas-admin-form input:focus{outline:none;border-color:var(--ipmyp-ui-primary);box-shadow:0 0 0 3px rgba(45,89,223,.12)}.ipmyp-saas-otp-form.is-hidden{display:none}.ipmyp-saas-notice{min-height:24px;margin-top:10px;font-size:12px;font-weight:800;color:var(--ipmyp-ui-muted)}
.ipmyp-saas-alert{padding:12px 14px;margin-bottom:14px;border-radius:16px;border:1px solid var(--ipmyp-ui-border);background:#fff;font-size:13px;font-weight:800}.ipmyp-saas-alert.is-success{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.ipmyp-saas-alert.is-error{border-color:#fecaca;background:#fef2f2;color:#991b1b}.ipmyp-saas-secret{direction:ltr;text-align:left;padding:12px;border-radius:14px;background:#081633;color:#dbeafe;overflow:auto;margin-bottom:12px}.ipmyp-saas-secret code{color:#dbeafe;background:transparent}
.ipmyp-saas-table-wrap{width:100%;overflow:auto;border:1px solid var(--ipmyp-ui-border);border-radius:18px;background:#fff}.ipmyp-saas-table{width:100%;border-collapse:collapse;min-width:640px}.ipmyp-saas-table th,.ipmyp-saas-table td{padding:12px;border-bottom:1px solid #e6edf5;text-align:right;font-size:12px;vertical-align:top}.ipmyp-saas-table th{background:#f8fbff;font-weight:950;color:#334155}.ipmyp-saas-table tr:last-child td{border-bottom:0}.ipmyp-saas-table code{direction:ltr;display:inline-block}
.ipmyp-saas-admin{max-width:1290px}.ipmyp-saas-admin .ipmyp-saas-card{background:#fff}.ipmyp-saas-admin-form h2{border-top:1px solid #e6edf5;padding-top:18px;margin-top:18px}.ipmyp-saas-admin-form h2:first-child{border-top:0;padding-top:0;margin-top:0}.ipmyp-saas-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ipmyp-saas-admin-form p{margin:8px 0 12px}
html[data-color-mode="dark"] .ipmyp-saas-wrap,html[data-theme="dark"] .ipmyp-saas-wrap,html.ct-dark-mode .ipmyp-saas-wrap,body.dark .ipmyp-saas-wrap,.dark .ipmyp-saas-wrap{--ipmyp-ui-bg:#0a0e1a;--ipmyp-ui-surface:#111827;--ipmyp-ui-surface-alt:#1a2236;--ipmyp-ui-border:rgba(99,120,177,.20);--ipmyp-ui-border-strong:rgba(99,180,255,.46);--ipmyp-ui-text:#e2e8f0;--ipmyp-ui-muted:#94a3b8;--ipmyp-ui-primary:#3b82f6;--ipmyp-ui-primary-strong:#1d4ed8;--ipmyp-ui-primary-soft:rgba(59,130,246,.14);--ipmyp-ui-shadow:0 16px 42px rgba(0,0,0,.30);--ipmyp-ui-shadow-soft:0 10px 24px rgba(0,0,0,.22)}
@media(max-width:980px){.ipmyp-saas-shell{grid-template-columns:1fr}.ipmyp-saas-sidebar{position:static}.ipmyp-saas-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.ipmyp-saas-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ipmyp-saas-pricing-grid,.ipmyp-saas-grid-2,.ipmyp-saas-admin-grid{grid-template-columns:1fr}}
@media(max-width:560px){.ipmyp-saas-wrap{margin:12px auto}.ipmyp-saas-topbar{align-items:flex-start;flex-direction:column}.ipmyp-saas-nav{grid-template-columns:1fr}.ipmyp-saas-stats{grid-template-columns:1fr}.ipmyp-saas-card,.ipmyp-saas-sidebar,.ipmyp-saas-topbar{border-radius:22px;padding:14px}.ipmyp-saas-stat strong{font-size:23px}}
.ipmyp-saas-modal-backdrop{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.52);backdrop-filter:blur(8px)}
.ipmyp-saas-modal{width:min(94vw,460px);position:relative;text-align:center;border-radius:28px;border:1px solid var(--ipmyp-ui-border,#d9e3f0);background:linear-gradient(180deg,#fff 0%,#f5f9ff 100%);box-shadow:0 28px 80px rgba(2,6,23,.25);padding:26px;color:var(--ipmyp-ui-text,#0f172a);font-family:inherit}
.ipmyp-saas-modal-x{position:absolute;top:12px;left:12px;width:36px;height:36px;border:0;border-radius:999px;background:#eef4ff;color:#1e3a8a;font-size:24px;line-height:1;cursor:pointer}.ipmyp-saas-modal-badge{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 14px;border-radius:999px;background:#e8f0ff;border:1px solid #c9dafc;color:#2d59df;font-weight:950;font-size:12px}.ipmyp-saas-modal h3{margin:14px 0 8px;font-size:22px;font-weight:950}.ipmyp-saas-modal p{margin:0 auto 18px;color:#64748b;line-height:1.9;font-size:14px}.ipmyp-saas-modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.ipmyp-saas-modal-later{margin-top:12px;border:0;background:transparent;color:#64748b;font-weight:850;cursor:pointer}.ipmyp-saas-inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ipmyp-saas-link-btn{border:0;background:#eff4fb;color:#1e3a8a;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;cursor:pointer}.ipmyp-saas-link-btn.is-danger{background:#fef2f2;color:#991b1b}
.ipmyp-saas-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:6px 0 10px}.ipmyp-saas-scope-grid label{display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid var(--ipmyp-ui-border);border-radius:12px;background:#fff;font-size:12px}.ipmyp-saas-receipt{border-color:#bfdbfe;background:linear-gradient(180deg,#fff 0%,#eff6ff 100%)}@media(max-width:560px){.ipmyp-saas-scope-grid{grid-template-columns:1fr}}


.ipmyp-saas-cost-chips{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.75rem}.ipmyp-saas-cost-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(99,102,241,.18);background:rgba(99,102,241,.06);border-radius:999px;padding:.35rem .6rem;font-size:.86rem}.ipmyp-saas-cost-chip code{font-size:.82rem}.ipmyp-saas-stats-compact{margin-bottom:.5rem}.ipmyp-saas-tool-cost-hint{margin-top:.65rem;padding:.55rem .75rem;border-radius:.8rem;background:rgba(15,23,42,.055);font-size:.88rem;color:#334155}

.ipmyp-saas-onboarding{margin:10px 0 14px;padding:12px 14px;border-radius:16px;background:#f8fbff;border:1px solid var(--ipmyp-ui-border);text-align:initial}.ipmyp-saas-onboarding strong{display:block;margin-bottom:6px;color:var(--ipmyp-ui-primary-strong)}.ipmyp-saas-onboarding ol{margin:0 1.1rem;padding:0;color:var(--ipmyp-ui-muted);line-height:1.9;font-size:13px}.ipmyp-saas-api-ip-form textarea,.ipmyp-saas-form textarea{width:100%;min-height:72px;border:1px solid var(--ipmyp-ui-border-strong);border-radius:14px;background:#fff;color:var(--ipmyp-ui-text);padding:10px 12px;font-size:12px;font-family:inherit;resize:vertical}.ipmyp-saas-api-ip-form{min-width:260px}.ipmyp-saas-table .ipmyp-saas-api-ip-form{display:grid;grid-template-columns:1fr;gap:6px}.ipmyp-saas-receipt-note{font-size:12px;color:var(--ipmyp-ui-muted)}

.ipmyp-saas-cost-chip.is-available{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.ipmyp-saas-cost-chip.is-low-credit{border-color:#fde68a;background:#fffbeb;color:#92400e}.ipmyp-saas-cost-chip.is-locked{border-color:#fecaca;background:#fef2f2;color:#991b1b}

/* 5.12.10 SaaS admin polish — align SaaS admin with the premium toolkit admin. */
.ipmyp-saas-admin.jdt-admin-wrap{max-width:1320px;margin-top:18px}
.ipmyp-saas-admin .ipmyp-saas-card{border-radius:22px;border:1px solid #e5e7eb;background:#fff;box-shadow:0 10px 34px rgba(15,23,42,.05)}
.ipmyp-saas-admin .ipmyp-saas-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.ipmyp-saas-admin .ipmyp-saas-stat{border-radius:18px;border:1px solid #e5e7eb;background:#f8fafc;box-shadow:none}
.ipmyp-saas-admin h1{font-weight:900;color:#0f172a}
.ipmyp-saas-admin-hero{margin-bottom:18px}
.ipmyp-saas-admin-form input[type=text],.ipmyp-saas-admin-form input[type=url],.ipmyp-saas-admin-form input[type=email],.ipmyp-saas-admin-form input[type=password],.ipmyp-saas-admin-form input[type=number],.ipmyp-saas-admin-form select,.ipmyp-saas-admin-form textarea{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff}
.ipmyp-saas-admin-form label{font-weight:700;color:#334155}.ipmyp-saas-admin-form .description{display:block;margin-top:6px;color:#64748b;font-size:12px;line-height:1.7}
.ipmyp-saas-usage-strip{margin:12px 0 14px;padding:12px;border:1px solid #dbeafe;border-radius:18px;background:#f8fbff}.ipmyp-saas-usage-strip-bar,.ipmyp-saas-mini-meter{height:9px;border-radius:999px;background:#e2e8f0;overflow:hidden}.ipmyp-saas-usage-strip-bar span,.ipmyp-saas-mini-meter span{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#22c55e);transition:width .25s ease}.ipmyp-saas-usage-strip small{display:block;margin-top:7px;color:#64748b;font-size:11px}.ipmyp-saas-mini-meter{height:6px;margin-top:7px}.ipmyp-saas-tool-cost-hint{margin-top:10px;padding:10px 12px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;color:#334155;font-size:12px;line-height:1.7}.ipmyp-saas-muted{color:#64748b;font-size:12px;line-height:1.8}

/* 5.13.3 per-tool usage card polish */
.ipmyp-saas-quota-stats{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}
.ipmyp-saas-stat-tool strong{font-size:22px;line-height:1.35}
.ipmyp-saas-usage-strip{position:relative;overflow:hidden;padding:16px 18px;border-color:#bfdbfe;background:linear-gradient(135deg,#ffffff 0%,#f3f8ff 58%,#eef6ff 100%);box-shadow:0 12px 28px rgba(37,99,235,.07)}
.ipmyp-saas-usage-strip:before{content:"";position:absolute;inset:auto -32px -52px auto;width:150px;height:150px;border-radius:999px;background:rgba(45,89,223,.08);pointer-events:none}
.ipmyp-saas-usage-strip-bar{position:relative;height:11px;background:#dbe7f7;box-shadow:inset 0 1px 2px rgba(15,23,42,.08)}
.ipmyp-saas-usage-strip-bar span{background:linear-gradient(90deg,#2563eb 0%,#0ea5e9 52%,#22c55e 100%);box-shadow:0 0 16px rgba(37,99,235,.18)}
.ipmyp-saas-usage-strip.is-exhausted{border-color:#fecaca;background:linear-gradient(135deg,#fff 0%,#fff7ed 100%)}
.ipmyp-saas-usage-strip.is-exhausted .ipmyp-saas-usage-strip-bar span{background:linear-gradient(90deg,#f59e0b,#ef4444)}
.ipmyp-saas-usage-strip.is-unlimited .ipmyp-saas-usage-strip-bar span{width:100%!important;background:linear-gradient(90deg,#22c55e,#06b6d4)}
.ipmyp-saas-tool-cost-hint{border-color:#c7d9ff;background:linear-gradient(180deg,#fff 0%,#f6faff 100%);box-shadow:0 10px 22px rgba(37,99,235,.06)}
.ipmyp-saas-hint-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:stretch}
.ipmyp-saas-hint-grid span{display:block;padding:8px 10px;border:1px solid rgba(148,163,184,.25);border-radius:12px;background:#fff;color:#334155}
.ipmyp-saas-hint-grid b{display:block;margin-bottom:4px;color:#64748b;font-size:11px;font-weight:900}
.ipmyp-saas-mini-meter{height:7px;background:#dbe7f7}.ipmyp-saas-mini-meter span{background:linear-gradient(90deg,#2563eb,#22c55e)}
@media(max-width:980px){.ipmyp-saas-quota-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ipmyp-saas-hint-grid{grid-template-columns:1fr}}
@media(max-width:560px){.ipmyp-saas-quota-stats{grid-template-columns:1fr}}
/* 5.13.3 quota reconciliation + admin polish */
.ipmyp-saas-cost-card{background:linear-gradient(135deg,#ffffff 0%,#f7fbff 52%,#f2f7ff 100%);border-color:#d7e6ff}
.ipmyp-saas-stat-tool strong{font-size:clamp(16px,1.5vw,22px);letter-spacing:-.02em}
.ipmyp-saas-usage-strip small{position:relative;display:flex;align-items:center;gap:8px;font-weight:700;color:#475569}
.ipmyp-saas-usage-strip small:before{content:"";width:8px;height:8px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.12)}
.ipmyp-saas-usage-strip.is-exhausted small:before{background:#f97316;box-shadow:0 0 0 5px rgba(249,115,22,.13)}
.ipmyp-saas-admin-form input[type="text"],.ipmyp-saas-admin-form input[type="url"],.ipmyp-saas-admin-form input[type="email"],.ipmyp-saas-admin-form input[type="password"],.ipmyp-saas-admin-form input[type="number"],.ipmyp-saas-admin-form textarea,.ipmyp-saas-admin-form select{border-radius:12px;border:1px solid #cbd5e1;box-shadow:0 1px 2px rgba(15,23,42,.04);min-height:38px}
.ipmyp-saas-admin-form input:focus,.ipmyp-saas-admin-form textarea:focus,.ipmyp-saas-admin-form select:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12);outline:none}
.ipmyp-saas-table-wrap{border-radius:16px;border:1px solid #e2e8f0;overflow:auto;background:#fff}
.ipmyp-saas-table code{font-weight:900;color:#1e40af;background:#eff6ff;border-radius:8px;padding:3px 7px}
@media(max-width:720px){.ipmyp-saas-shell{grid-template-columns:1fr}.ipmyp-saas-sidebar{position:relative;top:auto}.ipmyp-saas-topbar{align-items:flex-start;flex-direction:column}}

/* 5.70.0 bugfix + UI polish: softer surfaces, clearer quota, safer contrast. */
.ipmyp-saas-wrap{
  --ipmyp-ui-bg:#f6f9ff;
  --ipmyp-ui-surface:#ffffff;
  --ipmyp-ui-surface-alt:#f4f8ff;
  --ipmyp-ui-border:#d8e4f5;
  --ipmyp-ui-border-strong:#b9cbe4;
  --ipmyp-ui-text:#0b1220;
  --ipmyp-ui-muted:#5b6b84;
  --ipmyp-ui-primary:#2457d6;
  --ipmyp-ui-primary-strong:#173a91;
  --ipmyp-ui-primary-soft:#e9f1ff;
  --ipmyp-ui-shadow:0 18px 48px rgba(15,23,42,.075);
  --ipmyp-ui-shadow-soft:0 10px 28px rgba(15,23,42,.055);
}
.ipmyp-saas-shell,.ipmyp-saas-main{isolation:isolate}
.ipmyp-saas-topbar,.ipmyp-saas-heading,.ipmyp-saas-card,.ipmyp-saas-sidebar,.ipmyp-saas-auth-card{
  border-color:rgba(132,160,205,.34);
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(247,251,255,.98) 100%);
  box-shadow:var(--ipmyp-ui-shadow-soft);
}
.ipmyp-saas-card:hover,.ipmyp-saas-stat:hover,.ipmyp-saas-price-card:hover{border-color:rgba(36,87,214,.32)}
.ipmyp-saas-brand{background:radial-gradient(circle at 18% 8%,rgba(255,255,255,.22),transparent 26%),linear-gradient(135deg,#173a91 0%,#2457d6 54%,#0ea5e9 100%)}
.ipmyp-saas-kicker,.ipmyp-saas-heading span,.ipmyp-saas-user-chip{letter-spacing:-.01em}
.ipmyp-saas-stat{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border-color:rgba(132,160,205,.32);
}
.ipmyp-saas-stat:after{content:"";position:absolute;inset:auto -30px -50px auto;width:120px;height:120px;border-radius:999px;background:rgba(36,87,214,.055);pointer-events:none}
.ipmyp-saas-stat span{color:#596b86}.ipmyp-saas-stat strong{letter-spacing:-.035em;color:#143782}
.ipmyp-saas-btn,.ipmyp-saas-wrap button.ipmyp-saas-btn{border-radius:15px;background:linear-gradient(135deg,#2457d6,#0f4cc9);box-shadow:0 12px 24px rgba(36,87,214,.22)}
.ipmyp-saas-btn-light{background:#f2f6ff!important;color:#173a91!important;border-color:#c9d8f2!important}
.ipmyp-saas-form input,.ipmyp-saas-otp-form input,.ipmyp-saas-admin-form input[type="text"],.ipmyp-saas-admin-form input[type="password"],.ipmyp-saas-admin-form input[type="email"],.ipmyp-saas-admin-form input[type="url"],.ipmyp-saas-admin-form input[type="number"],.ipmyp-saas-admin-form select,.ipmyp-saas-admin-form textarea{
  background:#fff;color:#0b1220;border-color:#c6d4e8;
}
.ipmyp-saas-table th{background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);color:#1e2f4d}
.ipmyp-saas-table td{color:#22304a}.ipmyp-saas-table tr:hover td{background:#fafcff}
.ipmyp-saas-usage-strip{
  border-color:#bcd3fb;
  background:radial-gradient(circle at 98% 0%,rgba(14,165,233,.12),transparent 26%),linear-gradient(135deg,#fff 0%,#f5f9ff 62%,#eef6ff 100%);
  box-shadow:0 16px 34px rgba(37,99,235,.085);
}
.ipmyp-saas-usage-strip-bar,.ipmyp-saas-mini-meter{background:#d7e4f5}.ipmyp-saas-usage-strip-bar span{background:linear-gradient(90deg,#2457d6,#0ea5e9,#16a34a)}
.ipmyp-saas-hint-grid span{background:rgba(255,255,255,.9);border-color:#d9e6f8;color:#1f2d44}.ipmyp-saas-hint-grid b{color:#667891}
.ipmyp-saas-tool-cost-hint{background:linear-gradient(180deg,#fff 0%,#f5f9ff 100%);border-color:#c8dcff;color:#24344e}
.ipmyp-saas-modal{background:radial-gradient(circle at 0 0,rgba(36,87,214,.08),transparent 30%),linear-gradient(180deg,#fff 0%,#f6faff 100%)}
.ipmyp-saas-modal p{color:#5b6b84}.ipmyp-saas-modal-later{color:#596b86}
.ipmyp-saas-alert.is-success{background:#f0fdf6;color:#14532d;border-color:#bbf7d0}.ipmyp-saas-alert.is-error{background:#fff5f5;color:#8f1d1d;border-color:#fecaca}
html[data-color-mode="dark"] .ipmyp-saas-wrap,html[data-theme="dark"] .ipmyp-saas-wrap,html.ct-dark-mode .ipmyp-saas-wrap,body.dark .ipmyp-saas-wrap,.dark .ipmyp-saas-wrap{
  --ipmyp-ui-bg:#07101f;--ipmyp-ui-surface:#0f172a;--ipmyp-ui-surface-alt:#111c32;--ipmyp-ui-border:rgba(148,163,184,.20);--ipmyp-ui-border-strong:rgba(147,197,253,.42);--ipmyp-ui-text:#e5eefb;--ipmyp-ui-muted:#9fb0c8;--ipmyp-ui-primary:#60a5fa;--ipmyp-ui-primary-strong:#93c5fd;--ipmyp-ui-primary-soft:rgba(96,165,250,.14)
}
html[data-color-mode="dark"] .ipmyp-saas-card,html[data-color-mode="dark"] .ipmyp-saas-topbar,html[data-color-mode="dark"] .ipmyp-saas-heading,html[data-color-mode="dark"] .ipmyp-saas-sidebar,html[data-color-mode="dark"] .ipmyp-saas-stat,
html[data-theme="dark"] .ipmyp-saas-card,html[data-theme="dark"] .ipmyp-saas-topbar,html[data-theme="dark"] .ipmyp-saas-heading,html[data-theme="dark"] .ipmyp-saas-sidebar,html[data-theme="dark"] .ipmyp-saas-stat,.dark .ipmyp-saas-card,.dark .ipmyp-saas-topbar,.dark .ipmyp-saas-heading,.dark .ipmyp-saas-sidebar,.dark .ipmyp-saas-stat{background:linear-gradient(180deg,#0f172a 0%,#111c32 100%);border-color:rgba(148,163,184,.22)}
html[data-color-mode="dark"] .ipmyp-saas-table-wrap,html[data-color-mode="dark"] .ipmyp-saas-table th,html[data-color-mode="dark"] .ipmyp-saas-table td,html[data-theme="dark"] .ipmyp-saas-table-wrap,html[data-theme="dark"] .ipmyp-saas-table th,html[data-theme="dark"] .ipmyp-saas-table td,.dark .ipmyp-saas-table-wrap,.dark .ipmyp-saas-table th,.dark .ipmyp-saas-table td{background:#0f172a;color:#e5eefb;border-color:rgba(148,163,184,.18)}
@media(max-width:560px){.ipmyp-saas-btn,.ipmyp-saas-wrap button.ipmyp-saas-btn{width:100%}.ipmyp-saas-modal-actions .ipmyp-saas-btn{width:auto;min-width:138px}}

/* 5.70.0 visual QA: align panel with Network Suite language, fix price contrast, captcha, admin users. */
.ipmyp-saas-wrap{
  --ipmyp-ui-primary:#2d59df;
  --ipmyp-ui-primary-strong:#1e3a8a;
  --ipmyp-ui-primary-soft:#e8f0ff;
  --ipmyp-ui-accent:#0ea5e9;
  --ipmyp-ui-console:#081633;
  --ipmyp-ui-console-text:#dbeafe;
}
.ipmyp-saas-wrap .ipmyp-saas-heading,
.ipmyp-saas-wrap .ipmyp-saas-topbar{
  background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%);
  border:1px solid #d9e3f0;
  box-shadow:0 10px 28px rgba(15,23,42,.06);
}
.ipmyp-saas-panel .ipmyp-saas-shell{
  gap:18px;
  align-items:start;
}
.ipmyp-saas-panel .ipmyp-saas-sidebar{
  border-radius:28px;
  border:1px solid #d9e3f0;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 10px 28px rgba(15,23,42,.06);
}
.ipmyp-saas-panel .ipmyp-saas-brand{
  border-radius:22px;
  padding:22px 18px;
  text-align:center;
  background:linear-gradient(135deg,#1e3a8a 0%,#2d59df 58%,#0ea5e9 100%);
  box-shadow:0 14px 30px rgba(45,89,223,.18);
}
.ipmyp-saas-panel .ipmyp-saas-nav a{
  border-radius:14px;
  min-height:44px;
  color:#334155;
  border:1px solid transparent;
  transition:transform .15s ease,border-color .2s ease,background .2s ease,color .2s ease;
}
.ipmyp-saas-panel .ipmyp-saas-nav a:hover{transform:translateY(-1px);background:#edf3ff;border-color:#bfd1ff;color:#1e40af}
.ipmyp-saas-panel .ipmyp-saas-nav a.is-active{background:#edf3ff;border-color:#bfd1ff;color:#1e40af;box-shadow:0 8px 18px rgba(45,89,223,.10)}
.ipmyp-saas-panel .ipmyp-saas-main{display:flex;flex-direction:column;gap:16px}
.ipmyp-saas-panel .ipmyp-saas-topbar{border-radius:28px;padding:24px}
.ipmyp-saas-card,.ipmyp-saas-price-card,.ipmyp-saas-auth-card{
  border-radius:24px;
  border:1px solid #d9e3f0;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 10px 28px rgba(15,23,42,.06);
}
.ipmyp-saas-price-card{text-align:center;overflow:hidden;position:relative}
.ipmyp-saas-price-card:before{content:"";position:absolute;inset:-80px auto auto -80px;width:180px;height:180px;border-radius:50%;background:rgba(45,89,223,.06);pointer-events:none}
.ipmyp-saas-price-card h3{font-size:26px;letter-spacing:-.03em;color:#0f172a}
.ipmyp-saas-price{color:#173a91!important;font-weight:950;letter-spacing:-.045em}
.ipmyp-saas-price-line{margin:8px 0 14px!important;color:#334155!important;font-weight:800!important}
.ipmyp-saas-btn-light.ipmyp-saas-yearly-btn,
.ipmyp-saas-yearly-btn{
  background:#edf4ff!important;
  color:#1e3a8a!important;
  border:1px solid #bfd1ff!important;
  opacity:1!important;
  text-shadow:none!important;
  box-shadow:0 8px 18px rgba(45,89,223,.08)!important;
}
.ipmyp-saas-btn-light.ipmyp-saas-yearly-btn:hover{background:#dfeaff!important;color:#173a91!important}
.ipmyp-saas-captcha{margin:12px 0;padding:12px;border:1px solid #d9e3f0;border-radius:18px;background:#f8fbff;text-align:center}
.ipmyp-saas-captcha label{display:block;margin-bottom:8px;font-weight:900;color:#0f172a}
.ipmyp-saas-captcha-row{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}
.ipmyp-saas-captcha-row img{width:180px;height:54px;border-radius:14px;border:1px solid #bfd1ff;background:#eff6ff}
.ipmyp-saas-captcha-row input[type=text]{max-width:120px;text-align:center;font-weight:900;letter-spacing:.08em}
.ipmyp-saas-captcha small{display:block;margin-top:8px;color:#64748b;font-weight:700}
.ipmyp-saas-plan-editor input,.ipmyp-saas-plan-editor textarea{width:100%;min-width:90px}
.ipmyp-saas-plan-description-row td{background:#f8fbff!important}
.ipmyp-saas-switch{display:inline-flex;align-items:center;justify-content:center}.ipmyp-saas-switch input{display:none!important}.ipmyp-saas-switch span{width:44px;height:24px;border-radius:999px;background:#cbd5e1;position:relative;display:inline-block;transition:.2s}.ipmyp-saas-switch span:before{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:.2s}.ipmyp-saas-switch input:checked+span{background:#2d59df}.ipmyp-saas-switch input:checked+span:before{left:23px}
.ipmyp-saas-admin-search{display:flex;gap:8px;margin:14px 0;align-items:center}.ipmyp-saas-admin-search input[type=search]{min-width:280px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff}
.ipmyp-saas-plan-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-weight:900;font-size:11px;background:#e2e8f0;color:#334155}.ipmyp-saas-plan-pill.is-pro{background:#dbeafe;color:#1d4ed8}.ipmyp-saas-plan-pill.is-premium{background:#eef2ff;color:#3730a3}.ipmyp-saas-plan-pill.is-free{background:#ecfdf5;color:#166534}
.ipmyp-saas-user-plan-form{display:grid;grid-template-columns:minmax(120px,1fr) 78px auto;gap:6px;align-items:center}.ipmyp-saas-user-plan-form select,.ipmyp-saas-user-plan-form input{min-height:34px;border:1px solid #cbd5e1;border-radius:10px;padding:4px 8px;background:#fff}
.ipmyp-saas-admin .jdt-admin-hero.ipmyp-saas-admin-hero{background:linear-gradient(135deg,#0f172a 0%,#1e3a8a 48%,#2d59df 100%);border-radius:24px;box-shadow:0 20px 50px rgba(15,23,42,.18)}
.ipmyp-saas-admin .ipmyp-saas-table th{font-weight:900}.ipmyp-saas-admin .ipmyp-saas-table td{vertical-align:middle}
@media(max-width:900px){.ipmyp-saas-user-plan-form{grid-template-columns:1fr}.ipmyp-saas-admin-search{flex-direction:column;align-items:stretch}.ipmyp-saas-admin-search input[type=search]{min-width:0;width:100%}}
@media(max-width:720px){.ipmyp-saas-panel .ipmyp-saas-shell{grid-template-columns:1fr}.ipmyp-saas-panel .ipmyp-saas-sidebar{position:relative;top:auto}.ipmyp-saas-panel .ipmyp-saas-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ipmyp-saas-panel .ipmyp-saas-topbar{padding:18px;border-radius:22px}}

/* 5.70.0 production polish: consolidated quota, pricing, captcha and admin-user UI. */
.ipmyp-saas-plan-note{margin:6px 0 12px;color:#475569;font-weight:800;font-size:13px;line-height:1.8}
.ipmyp-saas-price-actions{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:14px}.ipmyp-saas-price-actions form{margin:0}
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn,
.ipmyp-saas-wrap button.ipmyp-saas-btn.ipmyp-saas-btn-light.ipmyp-saas-yearly-btn,
.ipmyp-saas-wrap a.ipmyp-saas-btn.ipmyp-saas-btn-light.ipmyp-saas-yearly-btn,
.ipmyp-saas-price-card button.ipmyp-saas-yearly-btn{
  color:#102a66!important;
  background:linear-gradient(180deg,#ffffff 0%,#eaf2ff 100%)!important;
  border:1px solid #8fb0f2!important;
  opacity:1!important;
  text-shadow:none!important;
  filter:none!important;
  box-shadow:0 10px 24px rgba(30,64,175,.12)!important;
  font-weight:950!important;
}
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn span,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn strong,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn .ipmyp-saas-money{color:#102a66!important;text-shadow:none!important;opacity:1!important;font-weight:950!important}
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:hover,
.ipmyp-saas-price-card button.ipmyp-saas-yearly-btn:hover{color:#fff!important;background:linear-gradient(180deg,#2d59df 0%,#1d4ed8 100%)!important;border-color:#1d4ed8!important;box-shadow:0 14px 28px rgba(37,99,235,.22)!important}
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:hover span,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:hover strong,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:hover .ipmyp-saas-money{color:#fff!important}
.ipmyp-saas-captcha{margin:12px 0;padding:12px;border:1px solid #d9e3f0;border-radius:18px;background:#f8fbff;text-align:center}
.ipmyp-saas-captcha label{display:block;margin-bottom:8px;font-weight:900;color:#0f172a}
.ipmyp-saas-captcha-row{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}
.ipmyp-saas-captcha-row img{display:block;width:180px;height:54px;min-width:180px;min-height:54px;border-radius:14px;border:1px solid #bfd1ff;background:#eff6ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='54' viewBox='0 0 180 54'%3E%3Crect width='180' height='54' rx='14' fill='%23eff6ff'/%3E%3Ctext x='90' y='32' text-anchor='middle' font-family='Arial' font-size='12' fill='%231e3a8a'%3ECaptcha%3C/text%3E%3C/svg%3E") center/cover no-repeat;object-fit:contain;box-shadow:inset 0 0 0 1px rgba(37,99,235,.08),0 10px 24px rgba(15,23,42,.06)}
.ipmyp-saas-captcha-row input[type=text]{max-width:120px;text-align:center;font-weight:900;letter-spacing:.08em;background:#fff!important;border-color:#bfd1ff!important;color:#0f172a!important}
.ipmyp-saas-captcha small{display:block;margin-top:8px;color:#64748b;font-weight:700}
.ipmyp-saas-plan-editor input,.ipmyp-saas-plan-editor textarea{width:100%;min-width:90px}.ipmyp-saas-plan-description-row td{background:#f8fbff!important}
.ipmyp-saas-switch{display:inline-flex;align-items:center;justify-content:center}.ipmyp-saas-switch input{display:none!important}.ipmyp-saas-switch span{width:44px;height:24px;border-radius:999px;background:#cbd5e1;position:relative;display:inline-block;transition:.2s}.ipmyp-saas-switch span:before{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:.2s}.ipmyp-saas-switch input:checked+span{background:#2d59df}.ipmyp-saas-switch input:checked+span:before{left:23px}
.ipmyp-saas-admin-search{display:flex;gap:8px;margin:14px 0;align-items:center}.ipmyp-saas-admin-search input[type=search]{min-width:280px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff}
.ipmyp-saas-plan-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-weight:900;font-size:11px;background:#e2e8f0;color:#334155}.ipmyp-saas-plan-pill.is-pro{background:#dbeafe;color:#1d4ed8}.ipmyp-saas-plan-pill.is-premium{background:#eef2ff;color:#3730a3}.ipmyp-saas-plan-pill.is-free{background:#ecfdf5;color:#166534}
.ipmyp-saas-user-plan-form{display:grid;grid-template-columns:minmax(120px,1fr) 78px auto;gap:6px;align-items:center}.ipmyp-saas-user-plan-form select,.ipmyp-saas-user-plan-form input{min-height:34px;border:1px solid #cbd5e1;border-radius:10px;padding:4px 8px;background:#fff}.ipmyp-saas-user-plan-form .button-primary{background:#1d4ed8!important;border-color:#1d4ed8!important;color:#fff!important}
.ipmyp-saas-admin .jdt-admin-hero.ipmyp-saas-admin-hero{background:linear-gradient(135deg,#0f172a 0%,#1e3a8a 48%,#2d59df 100%);border-radius:24px;box-shadow:0 20px 50px rgba(15,23,42,.18)}.ipmyp-saas-admin .ipmyp-saas-table th{font-weight:900}.ipmyp-saas-admin .ipmyp-saas-table td{vertical-align:middle}.ipmyp-saas-admin .notice p{font-weight:700}.ipmyp-saas-admin .notice-error{border-left-color:#dc2626}.rtl .ipmyp-saas-admin .notice-error{border-right-color:#dc2626;border-left-color:#c3c4c7}
.ipmyp-saas-quota-editor th,.ipmyp-saas-quota-editor td{text-align:center;vertical-align:middle}.ipmyp-saas-quota-editor td:first-child,.ipmyp-saas-quota-editor th:first-child{text-align:left}.rtl .ipmyp-saas-quota-editor td:first-child,.rtl .ipmyp-saas-quota-editor th:first-child{text-align:right}.ipmyp-saas-quota-editor input[type=number]{border-radius:10px;border:1px solid #cbd8f0;background:#fff;font-weight:800;color:#0f172a}.ipmyp-saas-stat span[data-ipmyp-quota-remaining-label]{color:#173a91;font-weight:950}
@media(max-width:900px){.ipmyp-saas-user-plan-form{grid-template-columns:1fr}.ipmyp-saas-admin-search{flex-direction:column;align-items:stretch}.ipmyp-saas-admin-search input[type=search]{min-width:0;width:100%}}
@media(max-width:720px){.ipmyp-saas-panel .ipmyp-saas-shell{grid-template-columns:1fr}.ipmyp-saas-panel .ipmyp-saas-sidebar{position:relative;top:auto}.ipmyp-saas-panel .ipmyp-saas-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ipmyp-saas-panel .ipmyp-saas-topbar{padding:18px;border-radius:22px}}

/* 5.70.0: keep yearly plan buttons readable on hover/focus across themes. */
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:hover,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:focus,
.ipmyp-saas-wrap button.ipmyp-saas-btn.ipmyp-saas-btn-light.ipmyp-saas-yearly-btn:hover,
.ipmyp-saas-wrap button.ipmyp-saas-btn.ipmyp-saas-btn-light.ipmyp-saas-yearly-btn:focus,
.ipmyp-saas-price-card button.ipmyp-saas-yearly-btn:hover,
.ipmyp-saas-price-card button.ipmyp-saas-yearly-btn:focus{
  color:#0b2a6f!important;
  background:linear-gradient(180deg,#ffffff 0%,#dbeafe 100%)!important;
  border-color:#1d4ed8!important;
  box-shadow:0 16px 32px rgba(29,78,216,.24)!important;
  text-shadow:none!important;
}
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:hover span,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:hover strong,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:hover .ipmyp-saas-money,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:focus span,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:focus strong,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn:focus .ipmyp-saas-money{
  color:#0b2a6f!important;
  text-shadow:none!important;
}
/* 5.70.0: disabled tools are distinct from unlimited quota. */
.ipmyp-saas-usage-strip.is-locked{border-color:#fecaca;background:linear-gradient(135deg,#fff 0%,#fff1f2 100%)}
.ipmyp-saas-usage-strip.is-locked .ipmyp-saas-usage-strip-bar span{width:0!important;background:#ef4444}
.ipmyp-saas-usage-strip.is-locked small{color:#991b1b}
.ipmyp-saas-usage-strip.is-locked small:before{background:#ef4444;box-shadow:0 0 0 5px rgba(239,68,68,.13)}

/* 5.80.0: disabled tools are blocked in the toolkit UI, not only in the quota strip. */
.jdt-dns-toolkit .jdt-tool-icon-btn.is-locked,
.jdt-dns-toolkit .jdt-tool-icon-btn.is-disabled,
.jdt-dns-toolkit .jdt-tool-icon-btn[aria-disabled="true"]{
  opacity:.48;
  cursor:not-allowed!important;
  filter:saturate(.55);
  background:linear-gradient(180deg,#f8fafc 0%,#eef2f7 100%)!important;
  border-color:#d8e1ef!important;
  box-shadow:none!important;
}
.jdt-dns-toolkit .jdt-tool-icon-btn.is-locked:hover,
.jdt-dns-toolkit .jdt-tool-icon-btn.is-disabled:hover,
.jdt-dns-toolkit .jdt-tool-icon-btn[aria-disabled="true"]:hover{
  transform:none!important;
  box-shadow:none!important;
}
.jdt-dns-toolkit .jdt-tool-icon-btn.is-locked .jdt-tool-icon-label,
.jdt-dns-toolkit .jdt-tool-icon-btn.is-disabled .jdt-tool-icon-label,
.jdt-dns-toolkit .jdt-tool-icon-btn[aria-disabled="true"] .jdt-tool-icon-label{
  color:#64748b!important;
}
.jdt-dns-toolkit .jdt-tool-icon-btn.is-locked .jdt-tool-icon-glyph,
.jdt-dns-toolkit .jdt-tool-icon-btn.is-disabled .jdt-tool-icon-glyph,
.jdt-dns-toolkit .jdt-tool-icon-btn[aria-disabled="true"] .jdt-tool-icon-glyph{
  opacity:.75;
}

/* 5.90.0: show Free plan as a first-class pricing option. */
.ipmyp-saas-price-card.is-free-plan{border-color:rgba(22,101,52,.22);background:linear-gradient(180deg,#ffffff 0%,#f6fef9 100%)}
.ipmyp-saas-price-badge{display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px;padding:6px 12px;border-radius:999px;background:#dcfce7;color:#166534;font-weight:900;font-size:12px;border:1px solid #bbf7d0}
.ipmyp-saas-plan-features{list-style:none;margin:14px 0;padding:0;display:grid;gap:8px;text-align:initial;color:#475569;font-size:13px}
.ipmyp-saas-plan-features li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:14px;background:rgba(248,250,252,.82);border:1px solid rgba(203,213,225,.58)}
.ipmyp-saas-plan-features strong{color:#0f172a;font-weight:900;white-space:nowrap}
.ipmyp-saas-btn-static{cursor:default!important;box-shadow:none!important;background:#eef2ff!important;color:#1e3a8a!important;border:1px solid #c7d2fe!important}

/* 5.91.0: pricing cards have a badge for every visible plan and clearer daily limit wording. */
.ipmyp-saas-pricing-grid .ipmyp-saas-price-card{
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.ipmyp-saas-pricing-grid .ipmyp-saas-price-card .ipmyp-saas-price-badge{
  min-height:30px;
  align-self:center;
  margin-bottom:12px;
  min-width:118px;
}
.ipmyp-saas-price-card.is-plan-pro .ipmyp-saas-price-badge{
  background:#dbeafe;
  color:#1e3a8a;
  border-color:#bfdbfe;
}
.ipmyp-saas-price-card.is-plan-premium .ipmyp-saas-price-badge{
  background:#eef2ff;
  color:#3730a3;
  border-color:#c7d2fe;
}
.ipmyp-saas-pricing-grid .ipmyp-saas-price-card .ipmyp-saas-price-actions,
.ipmyp-saas-pricing-grid .ipmyp-saas-price-card > .ipmyp-saas-btn,
.ipmyp-saas-pricing-grid .ipmyp-saas-price-card > .ipmyp-saas-btn-static{
  margin-top:auto;
}

/* 5.95.0 SaaS UX Conversion + Premium Workspace */
.ipmyp-saas-header-actions{--ipmyp-h-primary:#2d59df;--ipmyp-h-primary-strong:#1e3a8a;--ipmyp-h-border:#d9e3f0;--ipmyp-h-muted:#64748b;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:100%;font-family:inherit;line-height:1.4}
.ipmyp-saas-header-actions a{text-decoration:none!important}
.ipmyp-saas-header-link,.ipmyp-saas-header-pill{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--ipmyp-h-border);background:#fff;color:#1e3a8a!important;font-size:12px;font-weight:900;box-shadow:0 8px 18px rgba(15,23,42,.05);transition:transform .15s ease,box-shadow .2s ease,background .2s ease}
.ipmyp-saas-header-link:hover,.ipmyp-saas-header-pill:hover{transform:translateY(-1px);box-shadow:0 12px 22px rgba(15,23,42,.08)}
.ipmyp-saas-header-link.is-primary{background:linear-gradient(135deg,var(--ipmyp-h-primary-strong),var(--ipmyp-h-primary));color:#fff!important;border-color:transparent;box-shadow:0 10px 22px rgba(45,89,223,.18)}
.ipmyp-saas-header-link.is-light{background:#f8fbff;color:#334155!important}.ipmyp-saas-header-pill{gap:8px;background:#f8fbff}.ipmyp-saas-header-pill span{color:var(--ipmyp-h-muted);font-size:10px;font-weight:900}.ipmyp-saas-header-pill strong{color:#0f172a;font-size:12px;font-weight:950}.ipmyp-saas-header-actions.is-compact .ipmyp-saas-header-pill span{display:none}
.ipmyp-saas-user-chip{gap:8px;flex-wrap:wrap}.ipmyp-saas-user-chip span{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eff6ff;color:#1e40af;font-size:10px;font-weight:950}.ipmyp-saas-user-chip strong{font-weight:950}.ipmyp-saas-user-chip a{color:#64748b!important;text-decoration:none!important;font-size:11px;font-weight:900}
.ipmyp-saas-guest-cta{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 16px;padding:16px;border:1px solid #cfe0ff;border-radius:24px;background:radial-gradient(circle at 8% 0%,rgba(45,89,223,.16),transparent 34%),linear-gradient(135deg,#ffffff 0%,#f4f8ff 58%,#eef5ff 100%);box-shadow:0 14px 30px rgba(37,99,235,.08)}
.ipmyp-saas-guest-cta:after{content:"";position:absolute;inset:auto -46px -64px auto;width:160px;height:160px;border-radius:999px;background:rgba(45,89,223,.08);pointer-events:none}.ipmyp-saas-guest-cta-copy{position:relative;z-index:1;min-width:0}.ipmyp-saas-guest-cta-copy span{display:inline-flex;margin-bottom:6px;padding:5px 10px;border-radius:999px;background:#dbeafe;color:#1e40af;font-size:10px;font-weight:950}.ipmyp-saas-guest-cta-copy strong{display:block;color:#0f172a;font-size:clamp(15px,1.3vw,19px);font-weight:950;line-height:1.55}.ipmyp-saas-guest-cta-copy p{margin:4px 0 0!important;color:#475569!important;font-size:12px!important;line-height:1.85!important}.ipmyp-saas-guest-cta-actions{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:0 0 auto}
.ipmyp-saas-coming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ipmyp-saas-coming-card{padding:16px;border-radius:22px;border:1px dashed #b8cdf8;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);text-align:initial;min-height:150px}.ipmyp-saas-coming-card span{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:10px;font-weight:950}.ipmyp-saas-coming-card h4{margin:10px 0 6px;color:#0f172a;font-weight:950}.ipmyp-saas-coming-card p{margin:0 0 10px!important;color:#64748b!important;font-size:12px!important;line-height:1.85!important}.ipmyp-saas-coming-card small{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eff6ff;color:#1e40af;font-weight:900}
.ipmyp-saas-api-docs pre{max-width:100%;overflow:auto;white-space:pre-wrap;word-break:break-word;border-radius:18px}.ipmyp-saas-secret{max-width:100%;white-space:normal}.ipmyp-saas-secret code{white-space:pre-wrap;word-break:break-all}.ipmyp-saas-api-ip-form textarea{min-width:0}.ipmyp-saas-tool-card{overflow:hidden}.ipmyp-saas-tool-card .jdt-dns-toolkit,.ipmyp-saas-tool-card .ipvj-lite-box{width:100%;max-width:100%}.ipmyp-saas-tool-card .jdt-dns-toolkit{box-sizing:border-box}
@media(max-width:980px){.ipmyp-saas-coming-grid{grid-template-columns:1fr}.ipmyp-saas-guest-cta{align-items:stretch;flex-direction:column}.ipmyp-saas-guest-cta-actions{justify-content:flex-start}.ipmyp-saas-header-actions{justify-content:center}.ipmyp-saas-header-link,.ipmyp-saas-header-pill{flex:1 1 auto}}
@media(max-width:640px){.ipmyp-saas-wrap{width:100%;max-width:100%;padding-inline:8px;margin:10px auto}.ipmyp-saas-panel{padding-inline:6px}.ipmyp-saas-card,.ipmyp-saas-sidebar,.ipmyp-saas-topbar{padding:12px;border-radius:20px}.ipmyp-saas-tool-card{padding-left:10px!important;padding-right:10px!important}.ipmyp-saas-tool-card .jdt-dns-toolkit,.ipmyp-saas-tool-card .ipvj-lite-box{margin-left:0!important;margin-right:0!important}.ipmyp-saas-header-actions{width:100%;gap:6px}.ipmyp-saas-header-link,.ipmyp-saas-header-pill{min-height:38px;padding-inline:10px;font-size:11px}.ipmyp-saas-guest-cta{padding:14px;border-radius:20px}.ipmyp-saas-guest-cta-actions{width:100%;display:grid;grid-template-columns:1fr;gap:8px}.ipmyp-saas-guest-cta-actions .ipmyp-saas-btn{width:100%}.ipmyp-saas-panel .ipmyp-saas-table-wrap{overflow:visible;border:0;background:transparent}.ipmyp-saas-panel .ipmyp-saas-table{min-width:0;border-collapse:separate;border-spacing:0 10px}.ipmyp-saas-panel .ipmyp-saas-table thead{display:none}.ipmyp-saas-panel .ipmyp-saas-table tr{display:block;border:1px solid #e2e8f0;border-radius:18px;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.04);overflow:hidden}.ipmyp-saas-panel .ipmyp-saas-table td{display:block;width:100%;border:0!important;padding:8px 10px;text-align:initial;word-break:break-word}.ipmyp-saas-panel .ipmyp-saas-table td code{white-space:pre-wrap;word-break:break-all}.ipmyp-saas-api-ip-form{display:grid!important;width:100%;min-width:0!important}.ipmyp-saas-api-ip-form textarea{width:100%;min-width:0}.ipmyp-saas-scope-grid{grid-template-columns:1fr!important}.ipmyp-saas-api-docs pre{font-size:11px;line-height:1.7;padding:12px}.ipmyp-saas-hint-grid{grid-template-columns:1fr!important}.jdt-dns-toolkit{max-width:100%!important}.jdt-dns-toolkit .jdt-shell,.jdt-dns-toolkit .jdt-card,.jdt-dns-toolkit .jdt-query-shell{max-width:100%!important}.jdt-dns-toolkit .jdt-query-shell .jdt-query{width:100%!important;min-width:0!important}.jdt-dns-toolkit .jdt-tool-icon-grid{gap:8px!important}}

/* 5.96.0: calmer header shortcut and tighter logged-in tool workspace. */
.ipmyp-saas-header-actions.is-single{display:inline-flex;width:auto;max-width:100%;justify-content:flex-end;flex-wrap:nowrap;gap:0}
.ipmyp-saas-header-actions.is-single .ipmyp-saas-header-link{flex:0 0 auto;min-width:128px;white-space:nowrap}
.ipmyp-saas-panel .ipmyp-saas-tool-card{padding:14px}
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{margin-top:8px}
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit .jdt-shell,.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:10px}
@media(max-width:640px){.ipmyp-saas-header-actions.is-single{width:auto;justify-content:flex-end}.ipmyp-saas-header-actions.is-single .ipmyp-saas-header-link{min-width:112px;min-height:38px;padding-inline:14px;font-size:11px}.ipmyp-saas-panel .ipmyp-saas-tool-card{padding:8px!important}.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit .jdt-shell,.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:8px!important}.ipmyp-saas-panel .ipmyp-saas-tool-card .ipmyp-saas-section-head{margin-bottom:6px}.ipmyp-saas-panel .ipmyp-saas-tool-card .ipmyp-saas-section-head p{margin-bottom:6px}}

/* 5.97.0: reports, billing polish and mobile workspace tuning. */
.ipmyp-saas-report-head{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(180deg,#fff 0%,#f5f9ff 100%)}
.ipmyp-saas-report-head p{margin:4px 0 0;color:var(--ipmyp-ui-muted);line-height:1.8}
.ipmyp-saas-report-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.ipmyp-saas-pill-soft,.ipmyp-saas-source-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#eef4ff;border:1px solid #dbe7ff;color:#1e40af;font-size:12px;font-weight:850;padding:7px 10px;white-space:nowrap}
.ipmyp-saas-status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:900;line-height:1;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;text-transform:capitalize}
.ipmyp-saas-status-badge.is-success{background:#ecfdf5;border-color:#bbf7d0;color:#047857}.ipmyp-saas-status-badge.is-warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.ipmyp-saas-status-badge.is-muted{background:#f8fafc;border-color:#e2e8f0;color:#475569}
.ipmyp-saas-report-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.ipmyp-saas-report-meta span{padding:10px 12px;border:1px solid var(--ipmyp-ui-border);border-radius:14px;background:#fff;color:var(--ipmyp-ui-muted);font-size:12px}.ipmyp-saas-report-meta strong{color:var(--ipmyp-ui-text)}
.ipmyp-saas-pagination{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;color:var(--ipmyp-ui-muted);font-size:12px;font-weight:800}
.ipmyp-saas-scope-grid label{position:relative;align-items:flex-start}.ipmyp-saas-scope-grid label span{display:flex;flex-direction:column;gap:4px;min-width:0}.ipmyp-saas-scope-grid label strong{font-size:12px;color:var(--ipmyp-ui-text);font-weight:900}.ipmyp-saas-scope-grid label code{font-size:11px;white-space:normal;word-break:break-all}.ipmyp-saas-scope-grid label.is-disabled{opacity:.66;background:#f8fafc}.ipmyp-saas-scope-grid label.is-disabled input{cursor:not-allowed}.ipmyp-saas-scope-grid label em{margin-inline-start:auto;font-style:normal;color:#64748b;background:#e2e8f0;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:900;white-space:nowrap}
.ipmyp-saas-billing-hero{background:radial-gradient(circle at top right,rgba(45,89,223,.12),transparent 34%),linear-gradient(180deg,#fff 0%,#f5f9ff 100%);border-color:#dbeafe}.ipmyp-saas-payments-card{background:#fff}.ipmyp-saas-payments-card .ipmyp-saas-table td,.ipmyp-saas-payments-card .ipmyp-saas-table th{vertical-align:middle}.ipmyp-saas-receipt{position:relative;overflow:hidden}.ipmyp-saas-receipt:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--ipmyp-ui-primary),#38bdf8)}
@media(max-width:640px){.ipmyp-saas-wrap{padding-inline:12px!important;margin:12px auto!important}.ipmyp-saas-panel{padding-inline:10px!important}.ipmyp-saas-panel .ipmyp-saas-card,.ipmyp-saas-panel .ipmyp-saas-sidebar,.ipmyp-saas-panel .ipmyp-saas-topbar{padding:14px;border-radius:22px}.ipmyp-saas-panel .ipmyp-saas-tool-card{padding:4px!important;border-radius:18px}.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit .jdt-shell,.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:4px!important}.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{margin-top:4px!important}.ipmyp-saas-panel .ipmyp-saas-tool-card .ipmyp-saas-section-head{padding:8px 8px 2px;margin-bottom:2px}.ipmyp-saas-panel .ipmyp-saas-tool-card .ipmyp-saas-section-head p{display:none}.ipmyp-saas-report-head{flex-direction:column;align-items:stretch}.ipmyp-saas-report-actions{display:grid;grid-template-columns:1fr;justify-content:stretch}.ipmyp-saas-report-actions .ipmyp-saas-btn{width:100%}.ipmyp-saas-report-meta{grid-template-columns:1fr}.ipmyp-saas-pagination{justify-content:space-between}.ipmyp-saas-payments-card .ipmyp-saas-table td,.ipmyp-saas-panel .ipmyp-saas-reports-table td{padding:9px 10px}.ipmyp-saas-scope-grid label{gap:8px;padding:10px}}


/* 5.98.1: reports reliability, browser-completed report persistence, and native tool embeds. */
.ipmyp-saas-wrap button.ipmyp-saas-btn.ipmyp-saas-btn-light,
.ipmyp-saas-wrap a.ipmyp-saas-btn.ipmyp-saas-btn-light,
.ipmyp-saas-receipt button.ipmyp-saas-btn.ipmyp-saas-btn-light,
.ipmyp-saas-receipt a.ipmyp-saas-btn.ipmyp-saas-btn-light{
  background:#f2f6ff!important;
  color:#173a91!important;
  border:1px solid #c9d8f2!important;
  text-shadow:none!important;
  box-shadow:none!important;
}
.ipmyp-saas-wrap button.ipmyp-saas-btn.ipmyp-saas-btn-light:hover,
.ipmyp-saas-wrap a.ipmyp-saas-btn.ipmyp-saas-btn-light:hover,
.ipmyp-saas-wrap button.ipmyp-saas-btn.ipmyp-saas-btn-light:focus,
.ipmyp-saas-wrap a.ipmyp-saas-btn.ipmyp-saas-btn-light:focus{
  background:#dfeaff!important;
  color:#0f2f7c!important;
  border-color:#aebff0!important;
}
.ipmyp-saas-link-btn{color:#173a91!important;font-weight:900;text-decoration:none!important}
.ipmyp-saas-link-btn:hover,.ipmyp-saas-link-btn:focus{color:#0f2f7c!important;text-decoration:underline!important}
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit .jdt-shell,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:14px!important}
@media(max-width:640px){
  .ipmyp-saas-wrap{padding-inline:16px!important;margin:12px auto!important}
  .ipmyp-saas-panel{padding-inline:12px!important}
  .ipmyp-saas-panel .ipmyp-saas-card:not(.ipmyp-saas-tool-card),
  .ipmyp-saas-panel .ipmyp-saas-sidebar,
  .ipmyp-saas-panel .ipmyp-saas-topbar{padding:15px!important;border-radius:22px}
  .ipmyp-saas-panel .ipmyp-saas-tool-card{padding:2px!important;border-radius:18px}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{margin-top:4px!important;margin-left:0!important;margin-right:0!important}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit .jdt-shell,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:15px!important}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipmyp-saas-section-head{padding:8px 6px 2px!important;margin-bottom:2px!important}
}

/* 5.98.1: logged-in panel tools show only the native tool boxes, without an extra enclosing SaaS card. */
.ipmyp-saas-panel .ipmyp-saas-tool-embed{margin:14px 0;max-width:100%;}
.ipmyp-saas-panel .ipmyp-saas-tool-embed .ipmyp-saas-guest-cta{margin-bottom:10px;}
.ipmyp-saas-panel .ipmyp-saas-tool-embed .jdt-dns-toolkit,
.ipmyp-saas-panel .ipmyp-saas-tool-embed .ipvj-lite-box{margin:0;width:100%;max-width:100%;}
@media(max-width:640px){.ipmyp-saas-panel .ipmyp-saas-tool-embed{margin:10px 0;}}

/* 5.98.3: keep native Lookup/IP tool cards unchanged; only reduce the outer panel gutter on mobile. */
@media(max-width:640px){
  .ipmyp-saas-panel .ipmyp-saas-tool-embed{
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* 5.98.3 production UI audit: unified visual language for public tools, SaaS panel and admin. */
:root,
.ipmyp-saas-wrap,
.jdt-dns-toolkit,
.ipvj-lite-box,
.jdt-admin-wrap{
  --ipmyp-ui-bg:#ffffff;
  --ipmyp-ui-surface:#ffffff;
  --ipmyp-ui-surface-alt:#f8fbff;
  --ipmyp-ui-surface-blue:#eef4ff;
  --ipmyp-ui-border:#d9e3f0;
  --ipmyp-ui-border-strong:#c7d5e8;
  --ipmyp-ui-text:#0f172a;
  --ipmyp-ui-muted:#64748b;
  --ipmyp-ui-primary:#2d59df;
  --ipmyp-ui-primary-strong:#1e3a8a;
  --ipmyp-ui-primary-soft:#e8f0ff;
  --ipmyp-ui-accent:#0ea5e9;
  --ipmyp-ui-success:#16a34a;
  --ipmyp-ui-danger:#dc2626;
  --ipmyp-ui-console:#071633;
  --ipmyp-ui-console-text:#dbeafe;
  --ipmyp-ui-radius-xl:28px;
  --ipmyp-ui-radius-lg:22px;
  --ipmyp-ui-radius-md:16px;
  --ipmyp-ui-radius-sm:14px;
  --ipmyp-ui-shadow:0 12px 30px rgba(15,23,42,.065);
  --ipmyp-ui-shadow-soft:0 8px 22px rgba(15,23,42,.045);
  --ipmyp-ui-focus:0 0 0 3px rgba(45,89,223,.13);
}
.jdt-dns-toolkit,
.ipvj-lite-box,
.ipmyp-saas-wrap{font-family:inherit;color:var(--ipmyp-ui-text);}
.jdt-dns-toolkit .jdt-shell,
.ipvj-lite-shell,
.ipmyp-saas-card,
.ipmyp-saas-sidebar,
.ipmyp-saas-topbar,
.ipmyp-saas-heading,
.ipmyp-saas-auth-card,
.ipmyp-saas-stat,
.ipmyp-saas-price-card,
.jdt-admin-card{
  border:1px solid var(--ipmyp-ui-border)!important;
  background:linear-gradient(180deg,#fff 0%,var(--ipmyp-ui-surface-alt) 100%)!important;
  box-shadow:var(--ipmyp-ui-shadow)!important;
  border-radius:var(--ipmyp-ui-radius-xl)!important;
}
.jdt-dns-toolkit .jdt-surface,
.ipvj-lite-panel,
.ipmyp-saas-brand,
.jdt-admin-hero,
.ipmyp-saas-admin .jdt-admin-hero.ipmyp-saas-admin-hero{
  background:linear-gradient(135deg,var(--ipmyp-ui-primary-strong) 0%,var(--ipmyp-ui-primary) 62%,var(--ipmyp-ui-accent) 100%)!important;
  color:#fff!important;
  border-radius:24px!important;
  box-shadow:0 14px 32px rgba(45,89,223,.20)!important;
}
.jdt-dns-toolkit .jdt-dns-form,
.jdt-dns-toolkit .jdt-result-wrap,
.ipvj-lite-section,
.ipvj-lite-card,
.ipmyp-saas-table-wrap,
.ipmyp-saas-coming-card,
.ipmyp-saas-guest-cta,
.ipmyp-saas-usage-strip,
.ipmyp-saas-tool-cost-hint,
.jdt-admin-metric,
.jdt-check-chip{
  border-color:var(--ipmyp-ui-border)!important;
  border-radius:var(--ipmyp-ui-radius-lg)!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  box-shadow:var(--ipmyp-ui-shadow-soft)!important;
}
.jdt-dns-toolkit .jdt-result,
.ipmyp-saas-secret,
.jdt-admin-card pre{
  background:var(--ipmyp-ui-console)!important;
  color:var(--ipmyp-ui-console-text)!important;
  border-radius:0 0 22px 22px!important;
}
.jdt-dns-toolkit .jdt-btn,
.ipvj-lite-btn,
.ipmyp-saas-btn,
.ipmyp-saas-wrap button.ipmyp-saas-btn,
.jdt-admin-submit .button-primary,
.wp-core-ui .jdt-admin-wrap .button-primary{
  background:linear-gradient(135deg,var(--ipmyp-ui-primary-strong),var(--ipmyp-ui-primary))!important;
  color:#fff!important;
  border:1px solid transparent!important;
  border-radius:var(--ipmyp-ui-radius-sm)!important;
  box-shadow:0 10px 22px rgba(45,89,223,.20)!important;
  font-weight:900!important;
  text-shadow:none!important;
}
.jdt-dns-toolkit .jdt-btn-secondary,
.jdt-dns-toolkit .jdt-chip-btn,
.ipmyp-saas-btn-light,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn,
.ipvj-lite-copy,
.wp-core-ui .jdt-admin-wrap .button:not(.button-primary){
  background:linear-gradient(180deg,#fff 0%,#eef4ff 100%)!important;
  color:#1e3a8a!important;
  border:1px solid #bfd1ff!important;
  border-radius:var(--ipmyp-ui-radius-sm)!important;
  box-shadow:0 8px 18px rgba(30,64,175,.08)!important;
  font-weight:900!important;
  text-shadow:none!important;
}
.jdt-dns-toolkit .jdt-btn-danger{background:linear-gradient(135deg,#b91c1c,#dc2626)!important;color:#fff!important;border-color:transparent!important;}
.jdt-dns-toolkit .jdt-query,
.jdt-dns-toolkit .jdt-tool,
.ipvj-lite-input,
.ipvj-lite-search-section input[type="text"].ipvj-lite-input,
.ipmyp-saas-form input,
.ipmyp-saas-otp-form input,
.ipmyp-saas-admin-form input[type="text"],
.ipmyp-saas-admin-form input[type="password"],
.ipmyp-saas-admin-form input[type="url"],
.ipmyp-saas-admin-form input[type="number"],
.ipmyp-saas-admin-form select,
.ipmyp-saas-admin-form textarea,
.jdt-admin-wrap input[type="text"],
.jdt-admin-wrap input[type="search"],
.jdt-admin-wrap input[type="url"],
.jdt-admin-wrap input[type="email"],
.jdt-admin-wrap input[type="password"],
.jdt-admin-wrap input[type="number"],
.jdt-admin-wrap select,
.jdt-admin-wrap textarea{
  border:1px solid var(--ipmyp-ui-border-strong)!important;
  border-radius:var(--ipmyp-ui-radius-sm)!important;
  background:#fff!important;
  color:var(--ipmyp-ui-text)!important;
  box-shadow:none!important;
}
.jdt-dns-toolkit .jdt-query:focus,
.jdt-dns-toolkit .jdt-tool:focus,
.ipvj-lite-input:focus,
.ipmyp-saas-form input:focus,
.ipmyp-saas-otp-form input:focus,
.ipmyp-saas-admin-form input:focus,
.jdt-admin-wrap input:focus,
.jdt-admin-wrap select:focus,
.jdt-admin-wrap textarea:focus{outline:none!important;border-color:var(--ipmyp-ui-primary)!important;box-shadow:var(--ipmyp-ui-focus)!important;}
.jdt-dns-toolkit .jdt-pill,
.ipmyp-saas-kicker,
.ipmyp-saas-heading span,
.ipmyp-saas-pill-soft,
.ipmyp-saas-source-badge,
.jdt-admin-badge.is-blue{
  background:var(--ipmyp-ui-primary-soft)!important;
  border:1px solid #c9dafc!important;
  color:var(--ipmyp-ui-primary-strong)!important;
  border-radius:999px!important;
  font-weight:900!important;
}
.jdt-dns-toolkit .jdt-help,
.ipvj-lite-status,
.ipmyp-saas-card p,
.ipmyp-saas-heading p,
.ipmyp-saas-report-head p,
.jdt-admin-card p{color:var(--ipmyp-ui-muted)!important;line-height:1.85;}
.jdt-dns-toolkit .jdt-result-header,
.ipmyp-saas-table th{
  background:linear-gradient(180deg,#fff 0%,#f1f6ff 100%)!important;
  border-color:#e6edf5!important;
}
.ipmyp-saas-table td,.ipmyp-saas-table th{border-color:#e6edf5!important;}
.ipmyp-saas-panel .ipmyp-saas-main{gap:14px;}
.ipmyp-saas-panel .ipmyp-saas-tool-card{overflow:visible!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipmyp-saas-section-head{margin-bottom:10px;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{margin-top:10px!important;margin-bottom:0!important;}
.ipmyp-saas-report-actions,.ipmyp-saas-price-actions,.ipmyp-saas-header-actions{gap:10px;}
.ipmyp-saas-status-badge.is-success,.jdt-admin-badge.is-green{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#047857!important;}
.ipmyp-saas-status-badge.is-warning,.jdt-admin-badge.is-warning{background:#fffbeb!important;border-color:#fde68a!important;color:#92400e!important;}
.ipmyp-saas-status-badge.is-muted,.jdt-admin-badge.is-neutral{background:#f8fafc!important;border-color:#e2e8f0!important;color:#475569!important;}
@media(max-width:640px){
  .ipmyp-saas-wrap{padding-inline:6px!important;margin:10px auto!important;}
  .ipmyp-saas-panel{padding-inline:4px!important;}
  .ipmyp-saas-panel .ipmyp-saas-shell{gap:10px!important;}
  .ipmyp-saas-panel .ipmyp-saas-main{gap:10px!important;}
  .ipmyp-saas-panel .ipmyp-saas-card,
  .ipmyp-saas-panel .ipmyp-saas-sidebar,
  .ipmyp-saas-panel .ipmyp-saas-topbar{padding:12px!important;border-radius:22px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card{padding:8px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;padding-inline:0!important;}
  .jdt-dns-toolkit .jdt-shell,.ipvj-lite-shell{border-radius:22px!important;}
  .jdt-dns-toolkit .jdt-surface,.ipvj-lite-panel{border-radius:20px!important;}
  .jdt-dns-toolkit .jdt-dns-form,.jdt-dns-toolkit .jdt-result-wrap,.ipvj-lite-section{border-radius:20px!important;}
  .jdt-dns-toolkit .jdt-actions,.jdt-dns-toolkit .jdt-result-actions,.ipvj-lite-row{gap:8px!important;}
}

/* 5.98.5: global side breathing room, unified bordered separation and report/payment card rows. */
.ipmyp-saas-wrap,
.jdt-dns-toolkit,
.ipvj-lite-box{
  width:100%;
  max-width:1290px;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:clamp(16px,3vw,30px)!important;
  padding-right:clamp(16px,3vw,30px)!important;
}
.ipmyp-saas-panel.ipmyp-saas-wrap{
  padding-left:clamp(18px,3vw,32px)!important;
  padding-right:clamp(18px,3vw,32px)!important;
}
.ipmyp-saas-auth-card,
.ipmyp-saas-heading,
.ipmyp-saas-price-card,
.ipmyp-saas-card,
.ipmyp-saas-sidebar,
.ipmyp-saas-topbar,
.ipmyp-saas-stat,
.ipmyp-saas-guest-cta,
.ipmyp-saas-usage-strip,
.ipmyp-saas-tool-cost-hint,
.jdt-dns-toolkit .jdt-shell,
.jdt-dns-toolkit .jdt-dns-form,
.jdt-dns-toolkit .jdt-result-wrap,
.ipvj-lite-section,
.ipvj-lite-card{
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
}
.ipmyp-saas-auth-card,
.ipmyp-saas-heading,
.ipmyp-saas-price-card,
.ipmyp-saas-card{
  padding:clamp(20px,2.4vw,28px)!important;
}
.ipmyp-saas-pricing-grid{gap:clamp(16px,2.2vw,24px)!important;}
.ipmyp-saas-shell{gap:clamp(18px,2.4vw,26px)!important;}
.ipmyp-saas-main{min-width:0;}
.ipmyp-saas-tool-card{padding:clamp(16px,2vw,22px)!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
  padding-left:0!important;
  padding-right:0!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit .jdt-shell,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
  padding:14px!important;
}
.ipmyp-saas-table-wrap{
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-radius:28px!important;
  padding:12px!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  box-shadow:var(--ipmyp-ui-shadow-soft,0 8px 22px rgba(15,23,42,.045))!important;
  overflow:auto;
}
.ipmyp-saas-payments-card .ipmyp-saas-table,
.ipmyp-saas-reports-table{
  border-collapse:separate!important;
  border-spacing:0 12px!important;
  min-width:720px;
}
.ipmyp-saas-payments-card .ipmyp-saas-table thead th,
.ipmyp-saas-reports-table thead th{
  border-bottom:0!important;
  padding:12px 14px!important;
}
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td,
.ipmyp-saas-reports-table tbody td{
  padding:14px 16px!important;
  background:#fff!important;
  border-top:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-bottom:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  vertical-align:middle!important;
}
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child,
.ipmyp-saas-reports-table tbody td:first-child{
  border-inline-start:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-start-start-radius:18px!important;
  border-end-start-radius:18px!important;
}
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child,
.ipmyp-saas-reports-table tbody td:last-child{
  border-inline-end:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-start-end-radius:18px!important;
  border-end-end-radius:18px!important;
}
.ipmyp-saas-report-detail .ipmyp-saas-report-meta span{
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-radius:18px!important;
  padding:12px 14px!important;
  background:#fff!important;
}
body:not(.logged-in) .ipvj-lite-box .ipvj-lite-shell{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
}
body:not(.logged-in) .ipvj-lite-box .ipvj-lite-section:first-of-type{
  margin-top:14px!important;
}
@media(max-width:980px){
  .ipmyp-saas-wrap,
  .jdt-dns-toolkit,
  .ipvj-lite-box{padding-left:18px!important;padding-right:18px!important;}
}
@media(max-width:640px){
  .ipmyp-saas-wrap,
  .jdt-dns-toolkit,
  .ipvj-lite-box,
  .ipmyp-saas-panel.ipmyp-saas-wrap{padding-left:14px!important;padding-right:14px!important;margin-top:10px!important;margin-bottom:10px!important;}
  .ipmyp-saas-card,
  .ipmyp-saas-auth-card,
  .ipmyp-saas-heading,
  .ipmyp-saas-price-card{padding:16px!important;border-radius:22px!important;}
  .ipmyp-saas-tool-card{padding:12px!important;}
  .ipmyp-saas-table-wrap{padding:10px!important;border-radius:22px!important;overflow:visible!important;}
  .ipmyp-saas-payments-card .ipmyp-saas-table,
  .ipmyp-saas-reports-table{min-width:0!important;border-spacing:0 10px!important;}
  .ipmyp-saas-panel .ipmyp-saas-table tbody td{padding:10px 12px!important;background:#fff!important;}
  .ipmyp-saas-panel .ipmyp-saas-table tbody tr{border-radius:18px!important;}
  body:not(.logged-in) .ipvj-lite-box .ipvj-lite-shell{padding:0!important;}
}


/* 5.98.6: guest IP viewer final shell removal, panel IP padding, report/payment card polish. */
.ipvj-lite-box{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell,
body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
}
.ipvj-lite-box > .ipvj-lite-shell:before,
.ipvj-lite-box > .ipvj-lite-shell:after{display:none!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
  padding:clamp(18px,2.2vw,24px)!important;
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  box-shadow:var(--ipmyp-ui-shadow-soft,0 8px 22px rgba(15,23,42,.045))!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-panel,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-section{padding:clamp(18px,2vw,24px)!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-card{padding:14px 16px!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-grid{gap:clamp(12px,1.5vw,18px)!important;}
.ipmyp-saas-panel .ipmyp-saas-table-wrap,
.ipmyp-saas-payments-card .ipmyp-saas-table-wrap{
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-radius:30px!important;
  padding:clamp(14px,1.8vw,20px)!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  box-shadow:var(--ipmyp-ui-shadow-soft,0 8px 22px rgba(15,23,42,.045))!important;
  overflow:auto!important;
}
.ipmyp-saas-panel .ipmyp-saas-reports-table,
.ipmyp-saas-payments-card .ipmyp-saas-table{
  border-collapse:separate!important;
  border-spacing:0 14px!important;
}
.ipmyp-saas-panel .ipmyp-saas-reports-table tbody td,
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td{
  padding:16px 18px!important;
  background:#fff!important;
  border-top:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-bottom:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
}
.ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child,
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child{
  border-inline-start:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-start-start-radius:20px!important;
  border-end-start-radius:20px!important;
}
.ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child,
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child{
  border-inline-end:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-start-end-radius:20px!important;
  border-end-end-radius:20px!important;
}
@media(max-width:640px){
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:16px!important;border-radius:24px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-panel,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-section{padding:16px!important;border-radius:22px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-card{padding:13px 14px!important;border-radius:18px!important;}
  .ipmyp-saas-panel .ipmyp-saas-table-wrap,
  .ipmyp-saas-payments-card .ipmyp-saas-table-wrap{
    border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
    border-radius:26px!important;
    padding:14px!important;
    background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
    overflow:visible!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table,
  .ipmyp-saas-payments-card .ipmyp-saas-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    border-spacing:0!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody{display:block!important;width:100%!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody tr{
    display:block!important;
    width:100%!important;
    margin:0 0 14px!important;
    padding:12px!important;
    border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 8px 18px rgba(15,23,42,.04)!important;
    overflow:hidden!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr:last-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody tr:last-child{margin-bottom:0!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td{
    display:block!important;
    width:100%!important;
    padding:11px 12px!important;
    border:0!important;
    border-bottom:1px solid #eef3f8!important;
    border-radius:0!important;
    background:#fff!important;
    line-height:1.75!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child{border-bottom:0!important;padding-bottom:4px!important;}
}

/* 5.98.7: IP Viewer simple border + reports/payments responsive card polish. */
.ipvj-lite-box{padding-left:clamp(16px,3vw,30px)!important;padding-right:clamp(16px,3vw,30px)!important;background:transparent!important;border:0!important;box-shadow:none!important;}
.ipvj-lite-box > .ipvj-lite-shell,body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:clamp(18px,2.2vw,24px)!important;border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;border-radius:var(--ipmyp-ui-radius-xl,28px)!important;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;box-shadow:none!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{padding-left:0!important;padding-right:0!important;}
.ipmyp-saas-panel .ipmyp-saas-card:has(.ipmyp-saas-reports-table),
.ipmyp-saas-payments-card{border-radius:30px!important;overflow:hidden!important;}
.ipmyp-saas-panel .ipmyp-saas-table-wrap,
.ipmyp-saas-payments-card .ipmyp-saas-table-wrap{border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;border-radius:26px!important;padding:18px!important;background:#fff!important;box-shadow:none!important;overflow:auto!important;}
.ipmyp-saas-panel .ipmyp-saas-reports-table,
.ipmyp-saas-payments-card .ipmyp-saas-table{border-collapse:separate!important;border-spacing:0 14px!important;min-width:720px!important;}
.ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr,
.ipmyp-saas-payments-card .ipmyp-saas-table tbody tr{background:#fff!important;}
.ipmyp-saas-panel .ipmyp-saas-reports-table tbody td,
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td{padding:16px 18px!important;background:#fff!important;border-top:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;border-bottom:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;vertical-align:middle!important;}
.ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child,
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child{border-inline-start:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;border-start-start-radius:20px!important;border-end-start-radius:20px!important;}
.ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child,
.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child{border-inline-end:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;border-start-end-radius:20px!important;border-end-end-radius:20px!important;}
@media(max-width:700px){
  .ipvj-lite-box{padding-left:14px!important;padding-right:14px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{padding-left:0!important;padding-right:0!important;}
  .ipvj-lite-box > .ipvj-lite-shell,body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:16px!important;border-radius:24px!important;}
  .ipmyp-saas-panel .ipmyp-saas-card:has(.ipmyp-saas-reports-table),.ipmyp-saas-payments-card{padding:14px!important;border-radius:26px!important;}
  .ipmyp-saas-panel .ipmyp-saas-table-wrap,.ipmyp-saas-payments-card .ipmyp-saas-table-wrap{padding:12px!important;border-radius:24px!important;overflow:visible!important;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table,.ipmyp-saas-payments-card .ipmyp-saas-table{display:block!important;width:100%!important;min-width:0!important;border-spacing:0!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table thead,.ipmyp-saas-payments-card .ipmyp-saas-table thead{display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody,.ipmyp-saas-payments-card .ipmyp-saas-table tbody{display:block!important;width:100%!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr,.ipmyp-saas-payments-card .ipmyp-saas-table tbody tr{display:flex!important;flex-direction:column!important;gap:10px!important;width:100%!important;margin:0 0 16px!important;padding:16px!important;border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 8px 18px rgba(15,23,42,.035)!important;overflow:hidden!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr:last-child,.ipmyp-saas-payments-card .ipmyp-saas-table tbody tr:last-child{margin-bottom:0!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td,.ipmyp-saas-payments-card .ipmyp-saas-table tbody td{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;padding:0!important;border:0!important;background:transparent!important;line-height:1.75!important;text-align:inherit!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td::before,.ipmyp-saas-payments-card .ipmyp-saas-table tbody td::before{flex:0 0 78px!important;color:#64748b!important;font-size:11px!important;font-weight:900!important;line-height:1.5!important;text-align:start!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(1)::before{content:"ابزار";}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(2)::before{content:"هدف";}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(3)::before{content:"منبع";}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(4)::before{content:"وضعیت";}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(5)::before{content:"خلاصه";}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(6)::before{content:"تاریخ";}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(7)::before{content:"جزئیات";}
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(1)::before{content:"فاکتور";}
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(2)::before{content:"شرح";}
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(3)::before{content:"مبلغ";}
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(4)::before{content:"وضعیت";}
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(5)::before{content:"پیگیری";}
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(6)::before{content:"تاریخ";}
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(7)::before{content:"رسید";}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child,.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child{font-size:16px!important;font-weight:900!important;color:#0f172a!important;padding-bottom:8px!important;border-bottom:1px solid #eef3f8!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child::before,.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child::before{content:""!important;display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child,.ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child{justify-content:flex-end!important;padding-top:8px!important;border-top:1px solid #eef3f8!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table .ipmyp-saas-link-btn,.ipmyp-saas-payments-card .ipmyp-saas-link-btn{min-width:112px!important;text-align:center!important;border-radius:14px!important;}
}

/* 5.98.8: unified IP viewer spacing and cleaner mobile report cards. */
.ipvj-lite-box{
  padding-left:0!important;
  padding-right:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell,
body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
  width:100%!important;
  max-width:1290px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:clamp(18px,2.2vw,24px)!important;
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-radius:var(--ipmyp-ui-radius-xl,28px)!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell:before,
.ipvj-lite-box > .ipvj-lite-shell:after{display:none!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{padding-left:0!important;padding-right:0!important;}

@media(max-width:700px){
  .ipvj-lite-box,
  body:not(.logged-in) .ipvj-lite-box,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
    padding-left:0!important;
    padding-right:0!important;
  }
  .ipvj-lite-box > .ipvj-lite-shell,
  body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
    padding:16px!important;
    border-radius:24px!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-card:has(.ipmyp-saas-reports-table),
  .ipmyp-saas-payments-card{
    padding:14px!important;
    border-radius:26px!important;
    overflow:hidden!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-table-wrap:has(.ipmyp-saas-reports-table),
  .ipmyp-saas-payments-card .ipmyp-saas-table-wrap{
    border:0!important;
    border-radius:0!important;
    padding:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table,
  .ipmyp-saas-payments-card .ipmyp-saas-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table thead,
  .ipmyp-saas-payments-card .ipmyp-saas-table thead{display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody{display:block!important;width:100%!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody tr{
    display:block!important;
    width:100%!important;
    margin:0 0 14px!important;
    padding:14px!important;
    border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 6px 16px rgba(15,23,42,.035)!important;
    overflow:hidden!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr:last-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody tr:last-child{margin-bottom:0!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td{
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    align-items:center!important;
    column-gap:10px!important;
    width:100%!important;
    min-height:0!important;
    padding:9px 0!important;
    border:0!important;
    border-bottom:1px solid #eef3f8!important;
    background:transparent!important;
    line-height:1.7!important;
    text-align:end!important;
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td::before{
    width:auto!important;
    flex:initial!important;
    color:#64748b!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.45!important;
    text-align:start!important;
    white-space:nowrap!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child{
    display:block!important;
    padding:0 0 12px!important;
    margin-bottom:2px!important;
    border-bottom:1px solid #eef3f8!important;
    font-size:17px!important;
    font-weight:950!important;
    color:#0f172a!important;
    text-align:start!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child::before{content:""!important;display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(5),
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(2){
    align-items:start!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child{
    display:block!important;
    padding:12px 0 0!important;
    border-bottom:0!important;
    text-align:stretch!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child::before{content:""!important;display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table .ipmyp-saas-link-btn,
  .ipmyp-saas-payments-card .ipmyp-saas-link-btn{
    width:100%!important;
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:14px!important;
  }
}
/* IP Viewer premium UI synced with DNS Toolkit */
:root{
  --ipmyp-ui-bg:#ffffff;
  --ipmyp-ui-surface:#f8fbff;
  --ipmyp-ui-surface-2:#eef4ff;
  --ipmyp-ui-border:#d9e3f0;
  --ipmyp-ui-border-strong:#c8d5e6;
  --ipmyp-ui-text:#0f172a;
  --ipmyp-ui-muted:#64748b;
  --ipmyp-ui-primary:#2d59df;
  --ipmyp-ui-primary-strong:#1e3a8a;
  --ipmyp-ui-primary-soft:#e8f0ff;
  --ipmyp-ui-radius-xl:28px;
  --ipmyp-ui-radius-lg:22px;
  --ipmyp-ui-radius-md:16px;
  --ipmyp-ui-radius-sm:14px;
  --ipmyp-ui-shadow:0 10px 28px rgba(15,23,42,.06);
  --ipmyp-ui-shadow-soft:0 8px 22px rgba(15,23,42,.04);
}
.ipvj-lite-box{max-width:1290px;margin:12px auto;color:var(--ipmyp-ui-text);font-family:inherit;direction:rtl;background:transparent;border:none;border-radius:18px;padding:0}
.ipvj-lite-box *,.ipvj-lite-box *::before,.ipvj-lite-box *::after{box-sizing:border-box}
.ipvj-lite-shell{padding:12px;border-radius:var(--ipmyp-ui-radius-xl);border:1px solid var(--ipmyp-ui-border);background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%);box-shadow:var(--ipmyp-ui-shadow)}
.ipvj-lite-panel{padding:18px;border-radius:var(--ipmyp-ui-radius-lg);background:linear-gradient(135deg,var(--ipmyp-ui-primary-strong) 0%,var(--ipmyp-ui-primary) 100%);box-shadow:0 14px 30px rgba(45,89,223,.18);color:#fff;text-align:center;min-height:108px}
.ipvj-lite-kicker{font-size:11px;font-weight:800;opacity:.86;margin-bottom:6px;letter-spacing:.02em}
.ipvj-lite-ip-wrap{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}
.ipvj-lite-ip{font-size:clamp(22px,2.4vw,32px);font-weight:900;color:#fff;word-break:break-all;line-height:1.2}
.ipvj-lite-copy{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:14px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.14);color:#fff;font-size:13px;font-weight:800;cursor:pointer;box-shadow:none;transition:transform .15s ease,opacity .2s ease,box-shadow .2s ease,background .2s ease;flex-shrink:0}
.ipvj-lite-copy:hover{background:rgba(255,255,255,.2);transform:translateY(-1px)}
.ipvj-lite-copy:focus-visible,.ipvj-lite-btn:focus-visible,.ipvj-lite-input:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(255,255,255,.18),0 0 0 5px rgba(45,89,223,.12)}
.ipvj-lite-copy-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.ipvj-lite-copy-icon svg{display:block;width:18px;height:18px;fill:currentColor}
.ipvj-lite-copy.is-copied .ipvj-lite-copy-text{content:""}
.ipvj-lite-section{margin-top:12px;padding:16px;border-radius:22px;border:1px solid var(--ipmyp-ui-border);background:#fff;box-shadow:var(--ipmyp-ui-shadow-soft)}
.ipvj-lite-header,.ipvj-lite-search-title{font-size:15px;font-weight:900;margin:0 0 10px;color:var(--ipmyp-ui-text);text-align:center}
.ipvj-lite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ipvj-lite-card{background:#f9fbff;border:1px solid var(--ipmyp-ui-border);border-radius:16px;padding:12px 14px;min-height:54px;box-shadow:0 4px 12px rgba(15,23,42,.03)}
.ipvj-lite-card.is-hidden{display:none}
.ipvj-lite-label{font-size:11px;color:var(--ipmyp-ui-muted);font-weight:700;line-height:1.4}
.ipvj-lite-value{font-size:13px;font-weight:800;margin-top:4px;word-break:break-word;color:var(--ipmyp-ui-text);line-height:1.55}
.ipvj-lite-search-section{border-radius:22px}
.ipvj-lite-row{display:flex;gap:10px;align-items:center}
.ipvj-lite-input,.ipvj-lite-search-section input[type="text"].ipvj-lite-input{flex:1;min-height:48px;padding:0 14px;border-radius:22px !important;-webkit-border-radius:22px !important;appearance:none;-webkit-appearance:none;border:1px solid var(--ipmyp-ui-border-strong);font-size:12px;font-weight:700;background:#fff;color:var(--ipmyp-ui-text);transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;overflow:hidden;background-clip:padding-box}
.ipvj-lite-input::placeholder{color:#94a3b8;font-weight:700}
.ipvj-lite-input:focus{border-color:var(--ipmyp-ui-primary);box-shadow:0 0 0 3px rgba(45,89,223,.12)}
.ipvj-lite-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:0;border-radius:14px;background:var(--ipmyp-ui-primary);color:#fff;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap;box-shadow:0 8px 16px rgba(45,89,223,.18);transition:transform .15s ease,opacity .2s ease,box-shadow .2s ease,background .2s ease}
.ipvj-lite-btn:hover{transform:translateY(-1px)}
.ipvj-lite-status{font-size:11px;color:var(--ipmyp-ui-muted);margin-top:8px;min-height:18px;text-align:center;line-height:1.8}
.ipvj-lite-map{border:1px solid var(--ipmyp-ui-border);border-radius:18px;overflow:hidden;background:#f8fbff}
.ipvj-lite-map-canvas{width:100%;height:260px;position:relative}
.ipvj-lite-map-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#f3f4f6 0,#e5e7eb 50%,#f3f4f6 100%);background-size:200% 100%;animation:ipvj-lite-shimmer 1.2s infinite}
.ipvj-lite-map.is-ready .ipvj-lite-map-skeleton{display:none}
.ipvj-lite-box.is-loading .ipvj-lite-btn{opacity:.75;pointer-events:none}
.ipvj-lite-box.is-only-ip .ipvj-lite-section{display:none}
@keyframes ipvj-lite-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
@media (max-width:640px){.ipvj-lite-shell{padding:10px}.ipvj-lite-panel,.ipvj-lite-section{padding:14px}.ipvj-lite-grid{grid-template-columns:1fr}.ipvj-lite-row{flex-direction:column}.ipvj-lite-btn{width:100%}.ipvj-lite-copy{width:100%}.ipvj-lite-map-canvas{height:220px}}

/* 3.2.9 stable radius fix */
.ipvj-lite-input,.ipvj-lite-search-section input[type="text"].ipvj-lite-input{border-radius:14px !important;-webkit-border-radius:14px !important;}

/* 5.10.1 bilingual IP Viewer: follow WordPress locale direction. */
.ipvj-lite-box[dir="ltr"],.ipvj-lite-box.is-ltr{direction:ltr;text-align:left}
.ipvj-lite-box[dir="rtl"],.ipvj-lite-box.is-rtl{direction:rtl;text-align:right}
.ipvj-lite-box[dir="ltr"] .ipvj-lite-card,.ipvj-lite-box[dir="ltr"] .ipvj-lite-status,.ipvj-lite-box[dir="ltr"] .ipvj-lite-input{text-align:left}
.ipvj-lite-box[dir="rtl"] .ipvj-lite-card,.ipvj-lite-box[dir="rtl"] .ipvj-lite-status,.ipvj-lite-box[dir="rtl"] .ipvj-lite-input{text-align:right}
.ipvj-lite-box[dir="ltr"] .ipvj-lite-input{direction:ltr}
.ipvj-lite-box[dir="rtl"] .ipvj-lite-input{direction:rtl}
.ipvj-lite-box[dir="ltr"] .ipvj-lite-ip-wrap{direction:ltr}
.ipvj-lite-box[dir="rtl"] .ipvj-lite-ip-wrap{direction:ltr}
.ipvj-lite-box[dir="ltr"] .ipvj-lite-copy-icon{order:0}
.ipvj-lite-box[dir="rtl"] .ipvj-lite-copy-icon{order:0}

/* 5.95.0 IP Viewer lead CTA + mobile spacing */
.ipvj-lite-cta{margin:12px 0 0}.ipvj-lite-cta .ipmyp-saas-btn{text-decoration:none!important}.ipvj-lite-box .ipmyp-saas-guest-cta{max-width:100%}
@media(max-width:640px){.ipvj-lite-box{width:100%;max-width:100%;margin:8px auto;padding:0}.ipvj-lite-shell{padding:8px;border-radius:22px}.ipvj-lite-panel{padding:14px;min-height:96px}.ipvj-lite-section{padding:12px;border-radius:18px}.ipvj-lite-row{gap:8px}.ipvj-lite-input,.ipvj-lite-search-section input[type="text"].ipvj-lite-input{width:100%;min-width:0;min-height:46px}.ipvj-lite-btn{width:100%}.ipvj-lite-card{padding:10px 12px}.ipvj-lite-cta{padding:14px!important;border-radius:18px!important}.ipvj-lite-cta .ipmyp-saas-guest-cta-actions{width:100%;display:grid;grid-template-columns:1fr}.ipvj-lite-cta .ipmyp-saas-btn{width:100%}}

/* 5.96.0: slightly more breathing room for standalone mobile IP Viewer. */
@media(max-width:640px){.ipvj-lite-box{padding-inline:4px}.ipvj-lite-shell{padding:10px}.ipvj-lite-panel{padding:15px}.ipvj-lite-section{padding:13px}}

/* 5.97.0: standalone mobile IP Viewer keeps a touch more page breathing room. */
@media(max-width:640px){.ipvj-lite-box{padding-inline:6px}.ipvj-lite-shell{padding:9px}.ipmyp-saas-panel .ipvj-lite-box{padding-inline:0}.ipmyp-saas-panel .ipvj-lite-shell{padding:4px}}

/* 5.98.3 production UI audit: unified visual language for public tools, SaaS panel and admin. */
:root,
.ipmyp-saas-wrap,
.jdt-dns-toolkit,
.ipvj-lite-box,
.jdt-admin-wrap{
  --ipmyp-ui-bg:#ffffff;
  --ipmyp-ui-surface:#ffffff;
  --ipmyp-ui-surface-alt:#f8fbff;
  --ipmyp-ui-surface-blue:#eef4ff;
  --ipmyp-ui-border:#d9e3f0;
  --ipmyp-ui-border-strong:#c7d5e8;
  --ipmyp-ui-text:#0f172a;
  --ipmyp-ui-muted:#64748b;
  --ipmyp-ui-primary:#2d59df;
  --ipmyp-ui-primary-strong:#1e3a8a;
  --ipmyp-ui-primary-soft:#e8f0ff;
  --ipmyp-ui-accent:#0ea5e9;
  --ipmyp-ui-success:#16a34a;
  --ipmyp-ui-danger:#dc2626;
  --ipmyp-ui-console:#071633;
  --ipmyp-ui-console-text:#dbeafe;
  --ipmyp-ui-radius-xl:28px;
  --ipmyp-ui-radius-lg:22px;
  --ipmyp-ui-radius-md:16px;
  --ipmyp-ui-radius-sm:14px;
  --ipmyp-ui-shadow:0 12px 30px rgba(15,23,42,.065);
  --ipmyp-ui-shadow-soft:0 8px 22px rgba(15,23,42,.045);
  --ipmyp-ui-focus:0 0 0 3px rgba(45,89,223,.13);
}
.jdt-dns-toolkit,
.ipvj-lite-box,
.ipmyp-saas-wrap{font-family:inherit;color:var(--ipmyp-ui-text);}
.jdt-dns-toolkit .jdt-shell,
.ipvj-lite-shell,
.ipmyp-saas-card,
.ipmyp-saas-sidebar,
.ipmyp-saas-topbar,
.ipmyp-saas-heading,
.ipmyp-saas-auth-card,
.ipmyp-saas-stat,
.ipmyp-saas-price-card,
.jdt-admin-card{
  border:1px solid var(--ipmyp-ui-border)!important;
  background:linear-gradient(180deg,#fff 0%,var(--ipmyp-ui-surface-alt) 100%)!important;
  box-shadow:var(--ipmyp-ui-shadow)!important;
  border-radius:var(--ipmyp-ui-radius-xl)!important;
}
.jdt-dns-toolkit .jdt-surface,
.ipvj-lite-panel,
.ipmyp-saas-brand,
.jdt-admin-hero,
.ipmyp-saas-admin .jdt-admin-hero.ipmyp-saas-admin-hero{
  background:linear-gradient(135deg,var(--ipmyp-ui-primary-strong) 0%,var(--ipmyp-ui-primary) 62%,var(--ipmyp-ui-accent) 100%)!important;
  color:#fff!important;
  border-radius:24px!important;
  box-shadow:0 14px 32px rgba(45,89,223,.20)!important;
}
.jdt-dns-toolkit .jdt-dns-form,
.jdt-dns-toolkit .jdt-result-wrap,
.ipvj-lite-section,
.ipvj-lite-card,
.ipmyp-saas-table-wrap,
.ipmyp-saas-coming-card,
.ipmyp-saas-guest-cta,
.ipmyp-saas-usage-strip,
.ipmyp-saas-tool-cost-hint,
.jdt-admin-metric,
.jdt-check-chip{
  border-color:var(--ipmyp-ui-border)!important;
  border-radius:var(--ipmyp-ui-radius-lg)!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  box-shadow:var(--ipmyp-ui-shadow-soft)!important;
}
.jdt-dns-toolkit .jdt-result,
.ipmyp-saas-secret,
.jdt-admin-card pre{
  background:var(--ipmyp-ui-console)!important;
  color:var(--ipmyp-ui-console-text)!important;
  border-radius:0 0 22px 22px!important;
}
.jdt-dns-toolkit .jdt-btn,
.ipvj-lite-btn,
.ipmyp-saas-btn,
.ipmyp-saas-wrap button.ipmyp-saas-btn,
.jdt-admin-submit .button-primary,
.wp-core-ui .jdt-admin-wrap .button-primary{
  background:linear-gradient(135deg,var(--ipmyp-ui-primary-strong),var(--ipmyp-ui-primary))!important;
  color:#fff!important;
  border:1px solid transparent!important;
  border-radius:var(--ipmyp-ui-radius-sm)!important;
  box-shadow:0 10px 22px rgba(45,89,223,.20)!important;
  font-weight:900!important;
  text-shadow:none!important;
}
.jdt-dns-toolkit .jdt-btn-secondary,
.jdt-dns-toolkit .jdt-chip-btn,
.ipmyp-saas-btn-light,
.ipmyp-saas-wrap .ipmyp-saas-yearly-btn,
.ipvj-lite-copy,
.wp-core-ui .jdt-admin-wrap .button:not(.button-primary){
  background:linear-gradient(180deg,#fff 0%,#eef4ff 100%)!important;
  color:#1e3a8a!important;
  border:1px solid #bfd1ff!important;
  border-radius:var(--ipmyp-ui-radius-sm)!important;
  box-shadow:0 8px 18px rgba(30,64,175,.08)!important;
  font-weight:900!important;
  text-shadow:none!important;
}
.jdt-dns-toolkit .jdt-btn-danger{background:linear-gradient(135deg,#b91c1c,#dc2626)!important;color:#fff!important;border-color:transparent!important;}
.jdt-dns-toolkit .jdt-query,
.jdt-dns-toolkit .jdt-tool,
.ipvj-lite-input,
.ipvj-lite-search-section input[type="text"].ipvj-lite-input,
.ipmyp-saas-form input,
.ipmyp-saas-otp-form input,
.ipmyp-saas-admin-form input[type="text"],
.ipmyp-saas-admin-form input[type="password"],
.ipmyp-saas-admin-form input[type="url"],
.ipmyp-saas-admin-form input[type="number"],
.ipmyp-saas-admin-form select,
.ipmyp-saas-admin-form textarea,
.jdt-admin-wrap input[type="text"],
.jdt-admin-wrap input[type="search"],
.jdt-admin-wrap input[type="url"],
.jdt-admin-wrap input[type="email"],
.jdt-admin-wrap input[type="password"],
.jdt-admin-wrap input[type="number"],
.jdt-admin-wrap select,
.jdt-admin-wrap textarea{
  border:1px solid var(--ipmyp-ui-border-strong)!important;
  border-radius:var(--ipmyp-ui-radius-sm)!important;
  background:#fff!important;
  color:var(--ipmyp-ui-text)!important;
  box-shadow:none!important;
}
.jdt-dns-toolkit .jdt-query:focus,
.jdt-dns-toolkit .jdt-tool:focus,
.ipvj-lite-input:focus,
.ipmyp-saas-form input:focus,
.ipmyp-saas-otp-form input:focus,
.ipmyp-saas-admin-form input:focus,
.jdt-admin-wrap input:focus,
.jdt-admin-wrap select:focus,
.jdt-admin-wrap textarea:focus{outline:none!important;border-color:var(--ipmyp-ui-primary)!important;box-shadow:var(--ipmyp-ui-focus)!important;}
.jdt-dns-toolkit .jdt-pill,
.ipmyp-saas-kicker,
.ipmyp-saas-heading span,
.ipmyp-saas-pill-soft,
.ipmyp-saas-source-badge,
.jdt-admin-badge.is-blue{
  background:var(--ipmyp-ui-primary-soft)!important;
  border:1px solid #c9dafc!important;
  color:var(--ipmyp-ui-primary-strong)!important;
  border-radius:999px!important;
  font-weight:900!important;
}
.jdt-dns-toolkit .jdt-help,
.ipvj-lite-status,
.ipmyp-saas-card p,
.ipmyp-saas-heading p,
.ipmyp-saas-report-head p,
.jdt-admin-card p{color:var(--ipmyp-ui-muted)!important;line-height:1.85;}
.jdt-dns-toolkit .jdt-result-header,
.ipmyp-saas-table th{
  background:linear-gradient(180deg,#fff 0%,#f1f6ff 100%)!important;
  border-color:#e6edf5!important;
}
.ipmyp-saas-table td,.ipmyp-saas-table th{border-color:#e6edf5!important;}
.ipmyp-saas-panel .ipmyp-saas-main{gap:14px;}
.ipmyp-saas-panel .ipmyp-saas-tool-card{overflow:visible!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipmyp-saas-section-head{margin-bottom:10px;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{margin-top:10px!important;margin-bottom:0!important;}
.ipmyp-saas-report-actions,.ipmyp-saas-price-actions,.ipmyp-saas-header-actions{gap:10px;}
.ipmyp-saas-status-badge.is-success,.jdt-admin-badge.is-green{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#047857!important;}
.ipmyp-saas-status-badge.is-warning,.jdt-admin-badge.is-warning{background:#fffbeb!important;border-color:#fde68a!important;color:#92400e!important;}
.ipmyp-saas-status-badge.is-muted,.jdt-admin-badge.is-neutral{background:#f8fafc!important;border-color:#e2e8f0!important;color:#475569!important;}
@media(max-width:640px){
  .ipmyp-saas-wrap{padding-inline:6px!important;margin:10px auto!important;}
  .ipmyp-saas-panel{padding-inline:4px!important;}
  .ipmyp-saas-panel .ipmyp-saas-shell{gap:10px!important;}
  .ipmyp-saas-panel .ipmyp-saas-main{gap:10px!important;}
  .ipmyp-saas-panel .ipmyp-saas-card,
  .ipmyp-saas-panel .ipmyp-saas-sidebar,
  .ipmyp-saas-panel .ipmyp-saas-topbar{padding:12px!important;border-radius:22px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card{padding:8px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;padding-inline:0!important;}
  .jdt-dns-toolkit .jdt-shell,.ipvj-lite-shell{border-radius:22px!important;}
  .jdt-dns-toolkit .jdt-surface,.ipvj-lite-panel{border-radius:20px!important;}
  .jdt-dns-toolkit .jdt-dns-form,.jdt-dns-toolkit .jdt-result-wrap,.ipvj-lite-section{border-radius:20px!important;}
  .jdt-dns-toolkit .jdt-actions,.jdt-dns-toolkit .jdt-result-actions,.ipvj-lite-row{gap:8px!important;}
}

/* 5.98.5: consistent guest/panel spacing and remove guest IP Viewer outer border only. */
.ipvj-lite-box{
  padding-left:clamp(16px,3vw,30px)!important;
  padding-right:clamp(16px,3vw,30px)!important;
}
.ipmyp-saas-panel .ipvj-lite-box{
  padding-left:0!important;
  padding-right:0!important;
}
.ipvj-lite-section,
.ipvj-lite-card{
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
}
body:not(.logged-in) .ipvj-lite-box .ipvj-lite-shell{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
}
@media(max-width:640px){
  .ipvj-lite-box{padding-left:14px!important;padding-right:14px!important;}
  .ipmyp-saas-panel .ipvj-lite-box{padding-left:0!important;padding-right:0!important;}
}


/* 5.98.6: remove standalone guest IP outer shell completely; keep rich inner sections. */
.ipvj-lite-box{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
}
.ipvj-lite-box > .ipvj-lite-shell:before,
.ipvj-lite-box > .ipvj-lite-shell:after{
  display:none!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
  padding-left:0!important;
  padding-right:0!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
  padding:clamp(18px,2.2vw,24px)!important;
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  box-shadow:var(--ipmyp-ui-shadow-soft,0 8px 22px rgba(15,23,42,.045))!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-panel,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-section{
  padding:clamp(18px,2vw,24px)!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-grid{
  gap:clamp(12px,1.5vw,18px)!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-card{
  padding:14px 16px!important;
}
@media(max-width:640px){
  .ipvj-lite-box > .ipvj-lite-shell{padding:0!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:16px!important;border-radius:24px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-panel,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-section{padding:16px!important;border-radius:22px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-card{padding:13px 14px!important;border-radius:18px!important;}
}

/* 5.98.7: simple unified border for guest and panel IP Viewer, matching lookup cards. */
.ipvj-lite-box{
  padding-left:clamp(16px,3vw,30px)!important;
  padding-right:clamp(16px,3vw,30px)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell,
body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
  padding:clamp(18px,2.2vw,24px)!important;
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-radius:var(--ipmyp-ui-radius-xl,28px)!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell:before,
.ipvj-lite-box > .ipvj-lite-shell:after{display:none!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{padding-left:0!important;padding-right:0!important;}
@media(max-width:640px){
  .ipvj-lite-box{padding-left:14px!important;padding-right:14px!important;}
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{padding-left:0!important;padding-right:0!important;}
  .ipvj-lite-box > .ipvj-lite-shell,
  body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{padding:16px!important;border-radius:24px!important;}
}

/* 5.98.8: unified IP viewer spacing and cleaner mobile report cards. */
.ipvj-lite-box{
  padding-left:0!important;
  padding-right:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell,
body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
  width:100%!important;
  max-width:1290px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:clamp(18px,2.2vw,24px)!important;
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-radius:var(--ipmyp-ui-radius-xl,28px)!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell:before,
.ipvj-lite-box > .ipvj-lite-shell:after{display:none!important;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{padding-left:0!important;padding-right:0!important;}

@media(max-width:700px){
  .ipvj-lite-box,
  body:not(.logged-in) .ipvj-lite-box,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
    padding-left:0!important;
    padding-right:0!important;
  }
  .ipvj-lite-box > .ipvj-lite-shell,
  body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
    padding:16px!important;
    border-radius:24px!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-card:has(.ipmyp-saas-reports-table),
  .ipmyp-saas-payments-card{
    padding:14px!important;
    border-radius:26px!important;
    overflow:hidden!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-table-wrap:has(.ipmyp-saas-reports-table),
  .ipmyp-saas-payments-card .ipmyp-saas-table-wrap{
    border:0!important;
    border-radius:0!important;
    padding:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table,
  .ipmyp-saas-payments-card .ipmyp-saas-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table thead,
  .ipmyp-saas-payments-card .ipmyp-saas-table thead{display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody{display:block!important;width:100%!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody tr{
    display:block!important;
    width:100%!important;
    margin:0 0 14px!important;
    padding:14px!important;
    border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 6px 16px rgba(15,23,42,.035)!important;
    overflow:hidden!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr:last-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody tr:last-child{margin-bottom:0!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td{
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    align-items:center!important;
    column-gap:10px!important;
    width:100%!important;
    min-height:0!important;
    padding:9px 0!important;
    border:0!important;
    border-bottom:1px solid #eef3f8!important;
    background:transparent!important;
    line-height:1.7!important;
    text-align:end!important;
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td::before{
    width:auto!important;
    flex:initial!important;
    color:#64748b!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.45!important;
    text-align:start!important;
    white-space:nowrap!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child{
    display:block!important;
    padding:0 0 12px!important;
    margin-bottom:2px!important;
    border-bottom:1px solid #eef3f8!important;
    font-size:17px!important;
    font-weight:950!important;
    color:#0f172a!important;
    text-align:start!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child::before{content:""!important;display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:nth-child(5),
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:nth-child(2){
    align-items:start!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child{
    display:block!important;
    padding:12px 0 0!important;
    border-bottom:0!important;
    text-align:stretch!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child::before{content:""!important;display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table .ipmyp-saas-link-btn,
  .ipmyp-saas-payments-card .ipmyp-saas-link-btn{
    width:100%!important;
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:14px!important;
  }
}

/* 5.98.9: final IP Viewer edge alignment + no mobile report inner guide lines. */
.ipvj-lite-box,
body:not(.logged-in) .ipvj-lite-box,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell,
body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  padding:clamp(14px,2vw,20px)!important;
  border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
  border-radius:var(--ipmyp-ui-radius-xl,28px)!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  box-shadow:none!important;
}
.ipvj-lite-box > .ipvj-lite-shell:before,
.ipvj-lite-box > .ipvj-lite-shell:after{display:none!important;content:none!important;}

@media(max-width:700px){
  .ipvj-lite-box,
  body:not(.logged-in) .ipvj-lite-box,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .ipvj-lite-box > .ipvj-lite-shell,
  body:not(.logged-in) .ipvj-lite-box > .ipvj-lite-shell,
  .ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-shell{
    padding:12px!important;
    border-radius:22px!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-card:has(.ipmyp-saas-reports-table),
  .ipmyp-saas-payments-card{
    padding:12px!important;
    border-radius:24px!important;
    overflow:hidden!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-table-wrap:has(.ipmyp-saas-reports-table),
  .ipmyp-saas-payments-card .ipmyp-saas-table-wrap{
    border:0!important;
    border-radius:0!important;
    padding:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table,
  .ipmyp-saas-payments-card .ipmyp-saas-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    border:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    background:transparent!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table thead,
  .ipmyp-saas-payments-card .ipmyp-saas-table thead{display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody{display:block!important;width:100%!important;border:0!important;background:transparent!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody tr{
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
    width:100%!important;
    margin:0 0 14px!important;
    padding:16px!important;
    border:1px solid var(--ipmyp-ui-border,#d9e3f0)!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 6px 16px rgba(15,23,42,.035)!important;
    overflow:hidden!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody tr:last-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody tr:last-child{margin-bottom:0!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td{
    display:grid!important;
    grid-template-columns:78px minmax(0,1fr)!important;
    align-items:start!important;
    column-gap:10px!important;
    width:100%!important;
    min-height:0!important;
    padding:3px 0!important;
    border:0!important;
    border-top:0!important;
    border-right:0!important;
    border-bottom:0!important;
    border-left:0!important;
    border-inline-start:0!important;
    border-inline-end:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    line-height:1.65!important;
    text-align:end!important;
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td::before{
    color:#64748b!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.55!important;
    text-align:start!important;
    white-space:nowrap!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child{
    display:block!important;
    padding:0 0 6px!important;
    margin:0 0 4px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    font-size:17px!important;
    font-weight:950!important;
    color:#0f172a!important;
    text-align:start!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:first-child::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:first-child::before{content:""!important;display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child{
    display:block!important;
    padding:8px 0 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    text-align:stretch!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-reports-table tbody td:last-child::before,
  .ipmyp-saas-payments-card .ipmyp-saas-table tbody td:last-child::before{content:""!important;display:none!important;}
  .ipmyp-saas-panel .ipmyp-saas-reports-table .ipmyp-saas-link-btn,
  .ipmyp-saas-payments-card .ipmyp-saas-link-btn{
    width:100%!important;
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:14px!important;
  }
}

/* 5.99.0: shared SaaS design shell. One layout vocabulary for guest tools, panel tools, IP Viewer, reports, pricing, login, billing and API keys. */
:root{
  --ipmyp-shell-max-width:1290px;
  --ipmyp-shell-gutter:clamp(12px,2vw,24px);
  --ipmyp-card-pad:clamp(14px,2vw,22px);
  --ipmyp-card-radius:24px;
  --ipmyp-card-border:#d9e3f0;
  --ipmyp-card-bg:#fff;
  --ipmyp-card-bg-soft:#f8fbff;
  --ipmyp-card-shadow:0 10px 28px rgba(15,23,42,.055);
}
.ipmyp-page-shell{width:100%;max-width:var(--ipmyp-shell-max-width);margin-inline:auto;padding-inline:var(--ipmyp-shell-gutter);box-sizing:border-box;}
.ipmyp-tool-shell{width:100%;max-width:100%;margin-inline:auto;box-sizing:border-box;}
.ipmyp-card{border:1px solid var(--ipmyp-card-border);border-radius:var(--ipmyp-card-radius);background:linear-gradient(180deg,var(--ipmyp-card-bg) 0%,var(--ipmyp-card-bg-soft) 100%);box-shadow:var(--ipmyp-card-shadow);box-sizing:border-box;overflow:hidden;}
.ipmyp-card-header{padding:var(--ipmyp-card-pad);border-bottom:1px solid var(--ipmyp-card-border);background:rgba(248,251,255,.72);}
.ipmyp-card-body{padding:var(--ipmyp-card-pad);}
.ipmyp-report-list{width:100%;max-width:100%;}
.ipmyp-report-card{padding:var(--ipmyp-card-pad);border-radius:var(--ipmyp-card-radius);}
.ipmyp-tool-shell .jdt-dns-toolkit,
.ipmyp-tool-shell .ipvj-lite-box,
.ipmyp-saas-tool-embed .jdt-dns-toolkit,
.ipmyp-saas-tool-embed .ipvj-lite-box,
body:not(.logged-in) .ipvj-lite-box:not(.is-only-ip){width:100%;max-width:100%;margin-inline:0;padding-inline:0;box-sizing:border-box;}
.ipmyp-tool-shell .jdt-shell,
.ipmyp-tool-shell .ipvj-lite-shell,
body:not(.logged-in) .ipvj-lite-box:not(.is-only-ip)>.ipvj-lite-shell{width:100%;max-width:100%;margin-inline:0;box-sizing:border-box;}
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box,
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit{width:100%;max-width:100%;margin-inline:0;padding-inline:0;}
.ipmyp-saas-user-credit-form{display:grid;grid-template-columns:minmax(70px,90px) minmax(120px,1fr) auto;gap:6px;margin-top:8px;align-items:center;}
.ipmyp-saas-user-credit-form input{min-height:30px;max-width:100%;}
@media(max-width:700px){
  .ipmyp-page-shell{padding-inline:12px;}
  .ipmyp-card,.ipmyp-report-card{border-radius:20px;}
  .ipmyp-card-header,.ipmyp-card-body,.ipmyp-report-card{padding:14px;}
  .ipmyp-saas-user-credit-form{grid-template-columns:1fr;}
}


/* 5.99.1: pixel-exact outer gutters for guest tools and SaaS panel.
   One source of truth for side distance on desktop and mobile; no negative margins. */
:root,
.ipmyp-saas-wrap,
.jdt-dns-toolkit,
.ipvj-lite-box{
  --ipmyp-shell-max-width:1290px;
  --ipmyp-shell-gutter:clamp(16px,2vw,24px);
  --ipmyp-shell-gutter-mobile:13px;
  --ipmyp-shell-gutter-tiny:11px;
  --ipmyp-card-pad:clamp(14px,2vw,22px);
}
.ipmyp-page-shell,
.ipmyp-saas-wrap.ipmyp-page-shell,
.ipmyp-public-tool-page-shell{
  width:100%!important;
  max-width:var(--ipmyp-shell-max-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-inline:auto!important;
  padding-left:var(--ipmyp-shell-gutter)!important;
  padding-right:var(--ipmyp-shell-gutter)!important;
  padding-inline:var(--ipmyp-shell-gutter)!important;
  box-sizing:border-box!important;
  overflow-x:clip!important;
}
.ipmyp-public-tool-page-shell{
  margin-top:18px!important;
  margin-bottom:18px!important;
}
.ipmyp-tool-shell,
.ipmyp-saas-panel .ipmyp-saas-tool-embed,
.ipmyp-saas-panel .ipmyp-saas-main,
.ipmyp-saas-panel .ipmyp-saas-shell,
.ipmyp-report-list{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  box-sizing:border-box!important;
}
.ipmyp-public-tool-page-shell .jdt-dns-toolkit,
.ipmyp-public-tool-page-shell .ipvj-lite-box,
.ipmyp-tool-shell .jdt-dns-toolkit,
.ipmyp-tool-shell .ipvj-lite-box,
.ipmyp-saas-tool-embed .jdt-dns-toolkit,
.ipmyp-saas-tool-embed .ipvj-lite-box,
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  padding-left:0!important;
  padding-right:0!important;
  padding-inline:0!important;
  box-sizing:border-box!important;
}
.ipmyp-card,
.ipmyp-saas-card,
.ipmyp-saas-sidebar,
.ipmyp-saas-topbar,
.ipmyp-saas-heading,
.jdt-shell,
.ipvj-lite-shell,
.ipmyp-report-card,
.ipmyp-saas-table-wrap{
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-embed{
  margin-top:14px!important;
  margin-bottom:14px!important;
}
.ipmyp-saas-panel .ipmyp-saas-tool-embed-lookup,
.ipmyp-saas-panel .ipmyp-saas-tool-embed-ip{
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
}
.ipmyp-saas-panel .ipmyp-saas-card:not(.ipmyp-saas-tool-card),
.ipmyp-saas-panel .ipmyp-saas-sidebar,
.ipmyp-saas-panel .ipmyp-saas-topbar,
.ipmyp-saas-panel .ipmyp-saas-heading,
.ipmyp-saas-panel .ipmyp-saas-payments-card,
.ipmyp-saas-panel .ipmyp-saas-report-head,
.ipmyp-saas-panel .ipmyp-saas-report-detail{
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
}
@media(max-width:700px){
  .ipmyp-page-shell,
  .ipmyp-saas-wrap.ipmyp-page-shell,
  .ipmyp-public-tool-page-shell{
    padding-left:var(--ipmyp-shell-gutter-mobile)!important;
    padding-right:var(--ipmyp-shell-gutter-mobile)!important;
    padding-inline:var(--ipmyp-shell-gutter-mobile)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    margin-inline:auto!important;
  }
  .ipmyp-saas-wrap,
  .ipmyp-saas-panel{
    padding-left:var(--ipmyp-shell-gutter-mobile)!important;
    padding-right:var(--ipmyp-shell-gutter-mobile)!important;
    padding-inline:var(--ipmyp-shell-gutter-mobile)!important;
  }
  .ipmyp-saas-panel.ipmyp-page-shell{
    padding-left:var(--ipmyp-shell-gutter-mobile)!important;
    padding-right:var(--ipmyp-shell-gutter-mobile)!important;
    padding-inline:var(--ipmyp-shell-gutter-mobile)!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-tool-embed,
  .ipmyp-saas-panel .ipmyp-saas-tool-embed-lookup,
  .ipmyp-saas-panel .ipmyp-saas-tool-embed-ip{
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
  }
  .ipmyp-saas-panel .ipmyp-saas-card:not(.ipmyp-saas-tool-card),
  .ipmyp-saas-panel .ipmyp-saas-sidebar,
  .ipmyp-saas-panel .ipmyp-saas-topbar{
    padding:14px!important;
  }
}
@media(max-width:380px){
  .ipmyp-page-shell,
  .ipmyp-saas-wrap.ipmyp-page-shell,
  .ipmyp-public-tool-page-shell,
  .ipmyp-saas-wrap,
  .ipmyp-saas-panel{
    padding-left:var(--ipmyp-shell-gutter-tiny)!important;
    padding-right:var(--ipmyp-shell-gutter-tiny)!important;
    padding-inline:var(--ipmyp-shell-gutter-tiny)!important;
  }
}

/* 5.99.5: single source of truth for every plugin layout shell.
   Guest lookup, guest IP, SaaS panel, reports, pricing, login, billing and API keys now share the same width and gutters.
   No guest-only wide mode, no viewport breakout, no transform centering, no negative margins. */
:root,
.ipmyp-saas-wrap,
.ipmyp-saas-panel,
.ipmyp-page-shell,
.ipmyp-public-tool-page-shell,
.jdt-dns-toolkit,
.ipvj-lite-box{
  --ipmyp-shell-max-width:1290px;
  --ipmyp-shell-gutter:clamp(16px,2vw,24px);
  --ipmyp-shell-gutter-mobile:13px;
  --ipmyp-shell-gutter-tiny:11px;
}
.ipmyp-page-shell,
.ipmyp-public-tool-page-shell,
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-lookup,
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip,
.ipmyp-saas-wrap.ipmyp-page-shell,
.ipmyp-saas-panel.ipmyp-page-shell{
  display:block!important;
  width:100%!important;
  max-width:var(--ipmyp-shell-max-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-inline:auto!important;
  padding-left:var(--ipmyp-shell-gutter)!important;
  padding-right:var(--ipmyp-shell-gutter)!important;
  padding-inline:var(--ipmyp-shell-gutter)!important;
  box-sizing:border-box!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  overflow-x:clip!important;
}
.ipmyp-tool-shell,
.ipmyp-tool-shell--guest,
.ipmyp-tool-shell--lookup,
.ipmyp-tool-shell--ip,
.ipmyp-saas-panel .ipmyp-saas-tool-embed,
.ipmyp-saas-panel .ipmyp-saas-main,
.ipmyp-saas-panel .ipmyp-saas-shell,
.ipmyp-report-list{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  padding-left:0!important;
  padding-right:0!important;
  padding-inline:0!important;
  box-sizing:border-box!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
.ipmyp-public-tool-page-shell .jdt-dns-toolkit,
.ipmyp-public-tool-page-shell .ipvj-lite-box,
.ipmyp-tool-shell .jdt-dns-toolkit,
.ipmyp-tool-shell .ipvj-lite-box,
.ipmyp-saas-tool-embed .jdt-dns-toolkit,
.ipmyp-saas-tool-embed .ipvj-lite-box,
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  padding-left:0!important;
  padding-right:0!important;
  padding-inline:0!important;
  box-sizing:border-box!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
.ipmyp-card,
.ipmyp-saas-card,
.ipmyp-saas-sidebar,
.ipmyp-saas-topbar,
.ipmyp-saas-heading,
.jdt-shell,
.ipvj-lite-shell,
.ipmyp-report-card,
.ipmyp-saas-table-wrap,
.ipmyp-saas-report-head,
.ipmyp-saas-report-detail,
.ipmyp-saas-payments-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  box-sizing:border-box!important;
}
@media (max-width:700px){
  .ipmyp-page-shell,
  .ipmyp-public-tool-page-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-lookup,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip,
  .ipmyp-saas-wrap.ipmyp-page-shell,
  .ipmyp-saas-panel.ipmyp-page-shell{
    padding-left:var(--ipmyp-shell-gutter-mobile)!important;
    padding-right:var(--ipmyp-shell-gutter-mobile)!important;
    padding-inline:var(--ipmyp-shell-gutter-mobile)!important;
  }
}
@media (max-width:380px){
  .ipmyp-page-shell,
  .ipmyp-public-tool-page-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-lookup,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip,
  .ipmyp-saas-wrap.ipmyp-page-shell,
  .ipmyp-saas-panel.ipmyp-page-shell{
    padding-left:var(--ipmyp-shell-gutter-tiny)!important;
    padding-right:var(--ipmyp-shell-gutter-tiny)!important;
    padding-inline:var(--ipmyp-shell-gutter-tiny)!important;
  }
}


/* 5.99.7: final unified shell width. Desktop uses exact 1290px shell with zero side gutter; mobile uses full viewport with 24px side margin. No guest-specific breakout. */
:root,
.ipmyp-saas-wrap,
.ipmyp-saas-panel,
.ipmyp-page-shell,
.ipmyp-public-tool-page-shell,
.jdt-dns-toolkit,
.ipvj-lite-box{
  --ipmyp-shell-max-width:1290px;
  --ipmyp-shell-gutter:0px;
  --ipmyp-shell-gutter-mobile:24px;
  --ipmyp-shell-gutter-tiny:24px;
}
.ipmyp-page-shell,
.ipmyp-public-tool-page-shell,
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-lookup,
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip,
.ipmyp-saas-wrap.ipmyp-page-shell,
.ipmyp-saas-panel.ipmyp-page-shell{
  display:block!important;
  width:100%!important;
  max-width:var(--ipmyp-shell-max-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-inline:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  padding-inline:0!important;
  box-sizing:border-box!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  overflow-x:clip!important;
}
.ipmyp-tool-shell,
.ipmyp-tool-shell--guest,
.ipmyp-tool-shell--lookup,
.ipmyp-tool-shell--ip,
.ipmyp-saas-panel .ipmyp-saas-tool-embed,
.ipmyp-saas-panel .ipmyp-saas-main,
.ipmyp-saas-panel .ipmyp-saas-shell,
.ipmyp-report-list{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  padding-left:0!important;
  padding-right:0!important;
  padding-inline:0!important;
  box-sizing:border-box!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
.ipmyp-public-tool-page-shell .jdt-dns-toolkit,
.ipmyp-public-tool-page-shell .ipvj-lite-box,
.ipmyp-tool-shell .jdt-dns-toolkit,
.ipmyp-tool-shell .ipvj-lite-box,
.ipmyp-saas-tool-embed .jdt-dns-toolkit,
.ipmyp-saas-tool-embed .ipvj-lite-box,
.ipmyp-saas-panel .ipmyp-saas-tool-card .jdt-dns-toolkit,
.ipmyp-saas-panel .ipmyp-saas-tool-card .ipvj-lite-box{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  padding-left:0!important;
  padding-right:0!important;
  padding-inline:0!important;
  box-sizing:border-box!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
.ipmyp-card,
.ipmyp-saas-card,
.ipmyp-saas-sidebar,
.ipmyp-saas-topbar,
.ipmyp-saas-heading,
.jdt-shell,
.ipvj-lite-shell,
.ipmyp-report-card,
.ipmyp-saas-table-wrap,
.ipmyp-saas-report-head,
.ipmyp-saas-report-detail,
.ipmyp-saas-payments-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  box-sizing:border-box!important;
}
@media (max-width:700px){
  .ipmyp-page-shell,
  .ipmyp-public-tool-page-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-lookup,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip,
  .ipmyp-saas-wrap.ipmyp-page-shell,
  .ipmyp-saas-panel.ipmyp-page-shell{
    width:100%!important;
    max-width:100%!important;
    padding-left:24px!important;
    padding-right:24px!important;
    padding-inline:24px!important;
  }
}
@media (max-width:380px){
  .ipmyp-page-shell,
  .ipmyp-public-tool-page-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-lookup,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip,
  .ipmyp-saas-wrap.ipmyp-page-shell,
  .ipmyp-saas-panel.ipmyp-page-shell{
    padding-left:24px!important;
    padding-right:24px!important;
    padding-inline:24px!important;
  }
}

/* 5.99.8: mobile guest IP viewer edge fix.
   The shared mobile page shell already provides the requested 24px gutter.
   Remove the extra inner IP viewer shell padding only for standalone guest IP on mobile. */
@media (max-width:700px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box{
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-shell{
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
  }
}

/* 5.99.9: canonical mobile guest IP edge fix.
   Applies to the standalone guest IP viewer even if older mobile IP rules load before it.
   Final visible edge = shared mobile shell gutter only; no extra IP viewer horizontal inset. */
@media (max-width:700px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip{
    width:100%!important;
    max-width:100%!important;
    padding-left:24px!important;
    padding-right:24px!important;
    padding-inline:24px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    margin-inline:auto!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip > .ipmyp-tool-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip > .ipmyp-tool-shell--ip,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-tool-shell--ip{
    width:100%!important;
    max-width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip,
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box,
  body:not(.logged-in) .ipvj-lite-box.is-only-ip{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell,
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell,
  body:not(.logged-in) .ipvj-lite-box.is-only-ip > .ipvj-lite-shell{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-panel,
  body:not(.logged-in) .ipvj-lite-box.is-only-ip .ipvj-lite-panel{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    box-sizing:border-box!important;
  }
}

/* 5.99.10: final mobile guest IP spacing.
   The visible standalone guest IP widget must have exactly 24px from viewport edges on mobile.
   This rule is scoped only to guest IP on mobile and overrides the previous 5.99.8/5.99.9 spacing attempts. */
@media (max-width:700px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    margin-inline-start:calc(50% - 50vw)!important;
    margin-inline-end:calc(50% - 50vw)!important;
    padding-left:24px!important;
    padding-right:24px!important;
    padding-inline:24px!important;
    box-sizing:border-box!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    overflow-x:clip!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip > .ipmyp-tool-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-tool-shell--ip,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-section{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    box-sizing:border-box!important;
  }
}
@media (max-width:380px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip{
    padding-left:24px!important;
    padding-right:24px!important;
    padding-inline:24px!important;
  }
}

/* 5.99.11: mobile guest IP outer-box padding.
   Keep the standalone guest IP widget exactly 24px from viewport edges on mobile,
   but restore suitable internal padding inside its own outer white box. */
@media (max-width:700px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    margin-inline-start:calc(50% - 50vw)!important;
    margin-inline-end:calc(50% - 50vw)!important;
    padding-left:24px!important;
    padding-right:24px!important;
    padding-inline:24px!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip > .ipmyp-tool-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-tool-shell--ip,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    padding:12px!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-section{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    box-sizing:border-box!important;
  }
}
@media (max-width:380px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip{
    padding-left:24px!important;
    padding-right:24px!important;
    padding-inline:24px!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell{
    padding:10px!important;
  }
}

/* 5.99.12: final mobile guest IP outer-box padding.
   Keep the page-to-screen gutter at 24px, and give the IP Viewer outer white shell
   real internal padding on all four sides so the blue header/card does not touch the box edge. */
@media (max-width:700px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip{
    padding-left:24px!important;
    padding-right:24px!important;
    padding-inline:24px!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-inline:0!important;
    box-sizing:border-box!important;
  }
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    padding:12px!important;
    box-sizing:border-box!important;
  }
}
@media (max-width:380px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell{
    padding:10px!important;
  }
}

/* 5.99.13: mobile guest IP internal visual padding - child margin fallback.
   The previous shell padding could be neutralized by legacy width/padding rules in some cascades.
   This applies the requested inner spacing directly to the IP Viewer child cards, only on mobile guest IP. */
@media (max-width:700px){
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell{
    padding:0!important;
    box-sizing:border-box!important;
  }
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-panel,
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-section{
    width:auto!important;
    max-width:none!important;
    margin-left:12px!important;
    margin-right:12px!important;
    margin-inline:12px!important;
    box-sizing:border-box!important;
  }
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-panel{
    margin-top:12px!important;
  }
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-section{
    margin-top:12px!important;
  }
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section:last-child,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section:last-child,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-section:last-child{
    margin-bottom:12px!important;
  }
}
@media (max-width:380px){
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-panel,
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-section{
    margin-left:10px!important;
    margin-right:10px!important;
    margin-inline:10px!important;
  }
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-panel,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-panel,
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-section{
    margin-top:10px!important;
  }
  body:not(.logged-in) .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section:last-child,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box.is-only-ip > .ipvj-lite-shell > .ipvj-lite-section:last-child,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-section:last-child{
    margin-bottom:10px!important;
  }
}

/* 5.99.14: guest CTA spacing + zero-shadow visual policy.
   Adds breathing room for guest CTA blocks and removes visible shadows across plugin UI. */
:root,
.ipmyp-saas-wrap,
.ipmyp-saas-panel,
.ipmyp-page-shell,
.ipmyp-public-tool-page-shell,
.jdt-dns-toolkit,
.ipvj-lite-box,
.jdt-admin-wrap,
.ipmyp-saas-admin{
  --ipmyp-ui-shadow:none!important;
  --ipmyp-ui-shadow-soft:none!important;
  --ipmyp-card-shadow:none!important;
}
.ipmyp-public-tool-page-shell .ipmyp-saas-guest-cta,
.ipmyp-public-tool-page-shell .ipvj-lite-cta.ipmyp-saas-guest-cta{
  width:auto!important;
  max-width:none!important;
  margin:16px 12px 0!important;
  padding:16px!important;
  box-sizing:border-box!important;
  border-radius:20px!important;
}
.ipmyp-public-tool-page-shell .ipmyp-saas-guest-cta-copy,
.ipmyp-public-tool-page-shell .ipmyp-saas-guest-cta-actions{
  min-width:0!important;
  box-sizing:border-box!important;
}
.ipmyp-public-tool-page-shell .ipmyp-saas-guest-cta-actions{
  gap:10px!important;
}
@media (max-width: 700px) {
    .ipmyp-public-tool-page-shell .ipmyp-saas-guest-cta, .ipmyp-public-tool-page-shell .ipvj-lite-cta.ipmyp-saas-guest-cta {
        margin: 0 !important;
        padding: 14px !important;
        border-radius: 18px !important;
    }
}
@media (max-width: 380px) {
    .ipmyp-public-tool-page-shell .ipmyp-saas-guest-cta, .ipmyp-public-tool-page-shell .ipvj-lite-cta.ipmyp-saas-guest-cta {
        margin: 0 !important;
        padding: 14px !important;
        border-radius: 18px !important;
    }
}
.ipmyp-saas-wrap,
.ipmyp-saas-wrap *,
.ipmyp-saas-panel,
.ipmyp-saas-panel *,
.ipmyp-page-shell,
.ipmyp-page-shell *,
.ipmyp-public-tool-page-shell,
.ipmyp-public-tool-page-shell *,
.jdt-dns-toolkit,
.jdt-dns-toolkit *,
.ipvj-lite-box,
.ipvj-lite-box *,
.jdt-admin-wrap,
.jdt-admin-wrap *,
.ipmyp-saas-admin,
.ipmyp-saas-admin *{
  box-shadow:none!important;
}

/* 5.99.15: guest IP CTA bottom spacing final.
   Keep the no-shadow policy and add breathing room below the IP Viewer guest CTA. */
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-cta.ipmyp-saas-guest-cta,
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer{
  margin-top:12px!important;
  margin-right:12px!important;
  margin-bottom:14px!important;
  margin-left:12px!important;
  margin-block:12px 14px!important;
  margin-inline:12px!important;
  padding:16px!important;
  box-sizing:border-box!important;
}
@media (max-width:700px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-cta.ipmyp-saas-guest-cta,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer{
    margin-top:12px!important;
    margin-right:12px!important;
    margin-bottom:12px!important;
    margin-left:12px!important;
    margin-block:12px!important;
    margin-inline:12px!important;
    padding:14px!important;
  }
}
@media (max-width:380px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-cta.ipmyp-saas-guest-cta,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer{
    margin:10px!important;
    padding:12px!important;
  }
}

/* 5.99.20: desktop public-tool CTA width alignment.
   Direct guest conversion CTA blocks inside public tool embeds must align with the tool card below.
   Mobile spacing is intentionally kept from the 5.99.15 gutter policy. */
@media (min-width:701px){
  .ipmyp-public-tool-page-shell .ipmyp-tool-shell > .ipmyp-saas-guest-cta{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-inline:0!important;
    box-sizing:border-box!important;
  }
}

/* 5.99.21: desktop IP Viewer guest CTA width parity.
   The CTA is nested inside the IP Viewer shell, so align it explicitly with neighboring IP Viewer sections. */
@media (min-width:701px){
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-cta.ipmyp-saas-guest-cta,
  .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box > .ipvj-lite-shell > .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer{
    display:flex!important;
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
    min-width:0!important;
    margin-left:12px!important;
    margin-right:12px!important;
    margin-inline:12px!important;
    box-sizing:border-box!important;
    align-self:stretch!important;
  }
}


/* 5.99.22: exact desktop width for guest CTA inside public IP viewer shell */
@media (min-width: 701px) {
    .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box>.ipvj-lite-shell>.ipvj-lite-cta.ipmyp-saas-guest-cta,
    .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box>.ipvj-lite-shell>.ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer {
        display: flex !important;
        width: calc(100% - 0px) !important;
        max-width: calc(100% - 0px) !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-inline: 0 !important;
        box-sizing: border-box !important;
        align-self: stretch !important;
    }
}

/* 5.99.24: exact generic + IP viewer mobile spacing for guest CTA */
@media (max-width: 700px) {
    .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box>.ipvj-lite-shell>.ipvj-lite-cta.ipmyp-saas-guest-cta,
    .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipvj-lite-box>.ipvj-lite-shell>.ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer {
        margin: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-inline: 0 !important;
        margin-block: 0 !important;
        padding: 14px !important;
        border-radius: 18px !important;
        box-sizing: border-box !important;
    }
}

/* 5.99.25: IP Viewer guest CTA is a standalone public-tool block, outside the viewer card. */
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-tool-shell--ip > .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer,
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-saas-tool-embed-ip > .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    margin-inline:0!important;
    margin-block:0!important;
    padding:16px!important;
    box-sizing:border-box!important;
    align-self:stretch!important;
}
@media (max-width:700px){
    .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-tool-shell--ip > .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer,
    .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-saas-tool-embed-ip > .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer{
        margin:0!important;
        margin-inline:0!important;
        margin-block:0!important;
        padding:14px!important;
        border-radius:18px!important;
    }
}

/* 5.99.26: IP Viewer guest CTA stays outside the viewer card, but is rendered below the IP display. */
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-tool-shell--ip > .ipvj-lite-box + .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer,
.ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-saas-tool-embed-ip > .ipvj-lite-box + .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-top:12px!important;
    margin-right:0!important;
    margin-bottom:0!important;
    margin-left:0!important;
    margin-block:12px 0!important;
    margin-inline:0!important;
    padding:16px!important;
    box-sizing:border-box!important;
    align-self:stretch!important;
}
@media (max-width:700px){
    .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-tool-shell--ip > .ipvj-lite-box + .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer,
    .ipmyp-public-tool-page-shell.ipmyp-public-tool-page-shell-ip .ipmyp-saas-tool-embed-ip > .ipvj-lite-box + .ipvj-lite-cta.ipmyp-saas-guest-cta.is-ip-viewer{
        margin-top:12px!important;
        margin-right:0!important;
        margin-bottom:0!important;
        margin-left:0!important;
        margin-block:12px 0!important;
        margin-inline:0!important;
        padding:14px!important;
        border-radius:18px!important;
    }
}


/* 5.99.53: English/LTR login alignment + Cloudflare Turnstile field stability. */
.ipmyp-saas-auth[dir="ltr"],
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-auth-card{
  direction:ltr!important;
  unicode-bidi:isolate!important;
}
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-auth-card{
  text-align:left!important;
}
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-auth-card .ipmyp-saas-kicker{
  margin-left:auto!important;
  margin-right:auto!important;
}
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-auth-card h2,
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-auth-card > p{
  direction:ltr!important;
  text-align:center!important;
  unicode-bidi:plaintext!important;
}
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-otp-form{
  direction:ltr!important;
  text-align:left!important;
}
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-otp-form label{
  text-align:left!important;
}
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-otp-form input{
  direction:ltr!important;
  text-align:left!important;
}
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-otp-form input[name="otp"],
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-otp-form input[name="captcha_answer"]{
  text-align:center!important;
}
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-notice{
  direction:ltr!important;
  text-align:left!important;
  unicode-bidi:plaintext!important;
}
.ipmyp-saas-turnstile,
.ipmyp-saas-turnstile *{
  box-sizing:border-box!important;
}
.ipmyp-saas-turnstile-row{
  min-height:66px;
  width:100%;
  overflow:hidden;
}
.ipmyp-saas-turnstile .cf-turnstile{
  max-width:100%;
  margin-inline:auto;
}
@media(max-width:420px){
  .ipmyp-saas-auth-card{padding:20px 16px!important;border-radius:24px!important;}
  .ipmyp-saas-turnstile-row{justify-content:flex-start!important;overflow-x:auto;overflow-y:hidden;padding-bottom:2px;}
  .ipmyp-saas-auth[dir="rtl"] .ipmyp-saas-turnstile-row{justify-content:flex-end!important;}
}


/* 5.99.54: center the auth badge on the Login/Signup card in both LTR and RTL. */
.ipmyp-saas-auth .ipmyp-saas-auth-card > .ipmyp-saas-kicker,
.ipmyp-saas-auth[dir="ltr"] .ipmyp-saas-auth-card > .ipmyp-saas-kicker,
.ipmyp-saas-auth[dir="rtl"] .ipmyp-saas-auth-card > .ipmyp-saas-kicker{
  display:flex!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0 auto 12px!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}
