/* ---- 01-base.css ---- */
/* =====================================================================
   Pasargad Mizban — WHMCS client area theme (child of Twenty-One)
   Design tokens mirror pasargadmizban.com (Tailwind slate / blue / indigo)
   ===================================================================== */

@font-face { font-family: "IRANSansX"; src: url("../fonts/IRANSansX-Regular.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "IRANSansX"; src: url("../fonts/IRANSansX-Medium.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "IRANSansX"; src: url("../fonts/IRANSansX-DemiBold.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "IRANSansX"; src: url("../fonts/IRANSansX-Bold.woff2") format("woff2"); font-weight: 700 900; font-style: normal; font-display: swap; }

:root {
    --pm-font: "IRANSansX", Tahoma, "Segoe UI", sans-serif;

    /* page — body gradient of the main site: slate-950 → slate-900 → indigo-950 */
    --pm-bg-0: #020617;
    --pm-bg-1: #0f172a;
    --pm-bg-2: #1e1b4b;

    /* surfaces */
    --pm-surface: rgba(30, 41, 59, .62);          /* slate-800/60 */
    --pm-surface-2: rgba(15, 23, 42, .78);        /* slate-900/80 */
    --pm-surface-solid: #111b2f;
    --pm-surface-hover: rgba(51, 65, 85, .45);
    --pm-card-grad: linear-gradient(145deg, rgba(30, 41, 59, .78), rgba(15, 23, 42, .72));
    --pm-input-bg: rgba(2, 6, 23, .45);

    /* lines */
    --pm-border: rgba(51, 65, 85, .6);            /* slate-700/60 */
    --pm-border-soft: rgba(255, 255, 255, .08);
    --pm-border-accent: rgba(96, 165, 250, .4);

    /* text */
    --pm-text: #f1f5f9;                           /* slate-100 */
    --pm-text-2: #cbd5e1;                         /* slate-300 */
    --pm-muted: #94a3b8;                          /* slate-400 */
    --pm-faint: #64748b;                          /* slate-500 */

    /* brand */
    --pm-primary: #3b82f6;                        /* blue-500 */
    --pm-primary-600: #2563eb;
    --pm-primary-700: #1d4ed8;
    --pm-primary-400: #60a5fa;
    --pm-primary-300: #93c5fd;
    --pm-cyan: #22d3ee;
    --pm-primary-soft: rgba(30, 58, 138, .45);    /* blue-900/45 */
    --pm-grad: linear-gradient(to left, #2563eb, #3b82f6);
    --pm-grad-text: linear-gradient(to left, #60a5fa, #93c5fd, #3b82f6);

    /* status */
    --pm-success: #34d399;
    --pm-success-soft: rgba(16, 185, 129, .14);
    --pm-warning: #fbbf24;
    --pm-warning-soft: rgba(245, 158, 11, .14);
    --pm-danger: #f87171;
    --pm-danger-soft: rgba(239, 68, 68, .14);
    --pm-info: #38bdf8;
    --pm-info-soft: rgba(14, 165, 233, .14);

    /* shape */
    --pm-radius-sm: 8px;
    --pm-radius: 12px;
    --pm-radius-lg: 16px;
    --pm-radius-xl: 24px;
    --pm-shadow: 0 10px 30px -12px rgba(2, 6, 23, .7);
    --pm-shadow-blue: 0 10px 30px -12px rgba(30, 58, 138, .45);
    --pm-glow: 0 16px 48px rgba(59, 130, 246, .3);
    --pm-ring: 0 0 0 3px rgba(59, 130, 246, .3);
    --pm-header-h: 64px;
}

/* ---------- page ---------- */
html.pm-theme { scroll-padding-top: calc(var(--pm-header-h) + 16px); }

body.pm-body,
body.pm-body.primary-bg-color {
    font-family: var(--pm-font);
    color: var(--pm-text);
    background-color: var(--pm-bg-1);
    background-image: linear-gradient(to bottom right, var(--pm-bg-0), var(--pm-bg-1) 50%, var(--pm-bg-2));
    background-attachment: fixed;
    min-height: 100vh;
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
}

.pm-body button, .pm-body input, .pm-body select, .pm-body textarea, .pm-body optgroup,
.pm-body .tooltip, .pm-body .popover, .pm-body .btn, .pm-body .dropdown-menu,
.pm-body h1, .pm-body h2, .pm-body h3, .pm-body h4, .pm-body h5, .pm-body h6,
.pm-body .h1, .pm-body .h2, .pm-body .h3, .pm-body .h4, .pm-body .h5, .pm-body .h6 {
    font-family: var(--pm-font);
}

/* soft glows behind content, as on the main site hero */
.pm-bg-decor {
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        radial-gradient(600px 400px at 85% -5%, rgba(59, 130, 246, .18), transparent 70%),
        radial-gradient(500px 380px at 5% 30%, rgba(99, 102, 241, .12), transparent 70%),
        radial-gradient(700px 500px at 60% 110%, rgba(34, 211, 238, .08), transparent 70%);
}

.pm-body h1, .pm-body h2, .pm-body h3, .pm-body h4, .pm-body h5, .pm-body h6,
.pm-body .h1, .pm-body .h2, .pm-body .h3, .pm-body .h4, .pm-body .h5, .pm-body .h6 {
    color: #fff;
    font-weight: 700;
    line-height: 1.5;
}

.pm-body a { color: var(--pm-primary-400); transition: color .2s; }
.pm-body a:hover { color: var(--pm-primary-300); text-decoration: none; }
.pm-body .pm-link { color: var(--pm-primary-400); }
.pm-body hr { border-top-color: var(--pm-border); }
.pm-body ::selection { background: rgba(59, 130, 246, .35); color: #fff; }
.pm-body code { color: var(--pm-cyan); background: rgba(34, 211, 238, .08); padding: 1px 6px; border-radius: 6px; }
.pm-body pre { color: var(--pm-text-2); background: var(--pm-input-bg); border: 1px solid var(--pm-border); border-radius: var(--pm-radius); padding: 12px; }

.pm-body .text-muted, .pm-body small.text-muted { color: var(--pm-muted) !important; }
.pm-body .text-dark, .pm-body .text-body, .pm-body .text-black-50 { color: var(--pm-text) !important; }
.pm-body .text-primary { color: var(--pm-primary-400) !important; }
.pm-body .text-success { color: var(--pm-success) !important; }
.pm-body .text-danger { color: var(--pm-danger) !important; }
.pm-body .text-warning { color: var(--pm-warning) !important; }
.pm-body .text-info { color: var(--pm-info) !important; }
.pm-body .bg-white, .pm-body .bg-light { background-color: var(--pm-surface) !important; }
.pm-body .border, .pm-body .border-top, .pm-body .border-bottom,
.pm-body .border-left, .pm-body .border-right { border-color: var(--pm-border) !important; }

/* scrollbars */
.pm-body ::-webkit-scrollbar { width: 10px; height: 10px; }
.pm-body ::-webkit-scrollbar-track { background: var(--pm-bg-0); }
.pm-body ::-webkit-scrollbar-thumb { background: #1e293b; border-radius: 10px; border: 2px solid var(--pm-bg-0); }
.pm-body ::-webkit-scrollbar-thumb:hover { background: #334155; }

/* ---------- shared bits ---------- */
.pm-grad-text {
    background: var(--pm-grad-text);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.pm-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--pm-primary-400);
    font-size: .8rem;
    font-weight: 600;
    background: rgba(30, 58, 138, .5);
    border: 1px solid rgba(59, 130, 246, .2);
    border-radius: 999px;
    padding: 4px 14px;
    backdrop-filter: blur(4px);
}
.pm-pulse { font-size: 7px; color: var(--pm-success); animation: pm-pulse 2s ease-in-out infinite; }
@keyframes pm-pulse { 50% { opacity: .35; } }

@media (prefers-reduced-motion: reduce) {
    .pm-pulse { animation: none; }
    .pm-body * { transition: none !important; }
}

/* ---- 02-layout.css ---- */
/* ---------- container width = main site (1320px) ---------- */
@media (min-width: 1400px) {
    .pm-body .container { max-width: 1320px; }
}

/* =========================== HEADER =========================== */
.pm-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
    background: transparent;
    padding: 0;
    border: 0;
}
.pm-header-bar {
    position: relative;
    background: rgba(15, 23, 42, .8);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, .25);
    transition: background .3s, box-shadow .3s;
}
.pm-header-bar::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(to right, rgba(59, 130, 246, .05), transparent, rgba(59, 130, 246, .05));
}
.pm-header.pm-scrolled .pm-header-bar { background: rgba(2, 6, 23, .88); }
.pm-header-spacer { height: var(--pm-header-h); }

.pm-header-inner {
    min-height: var(--pm-header-h);
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: nowrap;
}

/* brand */
.pm-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
    text-decoration: none !important;
}
.pm-brand-mark {
    position: relative;
    width: 40px;
    height: 40px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: linear-gradient(to bottom right, #2563eb, #3b82f6);
    box-shadow: 0 10px 15px -3px rgba(59, 130, 246, .3);
}
.pm-brand-mark::after {
    content: "";
    position: absolute;
    inset: -4px;
    border-radius: 14px;
    background: rgba(59, 130, 246, .2);
    filter: blur(4px);
    z-index: -1;
}
.pm-brand-mark svg { width: 20px; height: 20px; }
.pm-brand-text { display: flex; flex-direction: column; line-height: 1.25; }
.pm-brand-text strong { color: #fff; font-size: 1.05rem; font-weight: 700; }
.pm-brand-text small { color: var(--pm-primary-400); font-size: .72rem; }

/* nav */
.pm-nav { flex: 1 1 auto; }
.pm-nav .navbar-nav { align-items: center; gap: 4px; }
.pm-nav .pm-nav-primary { margin-inline: auto; }
.pm-nav .nav-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--pm-text-2) !important;
    font-size: .875rem;
    font-weight: 500;
    padding: 8px 12px !important;
    border-radius: 10px;
    transition: color .2s, background .2s;
}
.pm-nav .nav-link:hover,
.pm-nav .show > .nav-link,
.pm-nav .active > .nav-link { color: #fff !important; background: rgba(255, 255, 255, .05); }
.pm-nav .nav-link::after { border-top-color: currentColor; vertical-align: middle; }
.pm-nav .nav-link .badge {
    background: var(--pm-primary-600);
    color: #fff;
    border-radius: 999px;
    font-size: .68rem;
    padding: 3px 7px;
}
.pm-nav .pm-nav-secondary .nav-link { color: var(--pm-muted) !important; }

/* header action buttons */
.pm-header-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}
.pm-icon-btn {
    position: relative;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--pm-text-2) !important;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 10px;
    padding: 0;
    cursor: pointer;
    transition: all .2s;
}
.pm-icon-btn:hover { color: #fff !important; border-color: var(--pm-border-accent); background: rgba(59, 130, 246, .1); }
.pm-icon-btn:focus { outline: none; box-shadow: var(--pm-ring); }
.pm-dot {
    position: absolute;
    top: -6px;
    inset-inline-end: -6px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--pm-grad);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 18px;
    text-align: center;
    box-shadow: 0 0 0 2px var(--pm-bg-1);
}
.pm-dot-empty { display: none; }

.pm-user-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 6px 0 14px;
    color: var(--pm-text) !important;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 999px;
    font-size: .85rem;
    max-width: 220px;
    transition: border-color .2s;
}
[dir="rtl"] .pm-user-chip { padding: 0 14px 0 6px; }
.pm-user-chip:hover { border-color: var(--pm-border-accent); }
.pm-avatar {
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--pm-grad);
    color: #fff;
    font-weight: 700;
    font-size: .85rem;
}
.pm-user-name { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

/* mobile menu */
.pm-nav-search { position: relative; margin: 12px 0; }
.pm-nav-search i { position: absolute; top: 50%; transform: translateY(-50%); inset-inline-start: 14px; color: var(--pm-muted); }
.pm-nav-search .form-control { padding-inline-start: 40px; }

@media (max-width: 1199.98px) {
    .pm-header-inner { flex-wrap: wrap; row-gap: 0; }
    .pm-brand { margin-inline-end: auto; }
    .pm-header-actions { order: 2; }
    .pm-nav {
        order: 3;
        flex-basis: 100%;
        max-height: calc(100vh - var(--pm-header-h));
        overflow-y: auto;
    }
    .pm-nav .navbar-nav { align-items: stretch; padding-bottom: 12px; }
    .pm-nav .pm-nav-primary { margin-inline: 0; }
    .pm-nav .pm-nav-secondary { border-top: 1px solid var(--pm-border-soft); padding-top: 8px; }
    .pm-nav .nav-link { width: 100%; padding: 10px 12px !important; }
    .pm-nav .dropdown-menu { position: static !important; transform: none !important; background: rgba(2, 6, 23, .35); box-shadow: none; margin: 0 0 6px; }
}
@media (max-width: 575.98px) {
    .pm-brand-text small { display: none; }
    .pm-header-actions .pm-btn-glow { padding: 8px 14px; }
}

/* ========================= PAGE HERO ========================= */
.pm-hero { padding: 40px 0 8px; }
.pm-hero h1 {
    font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem);
    font-weight: 700;
    color: #fff;
    margin: 12px 0 6px;
}
.pm-hero p { color: var(--pm-muted); margin: 0; max-width: 640px; }
.pm-hero-welcome { padding: 48px 0 16px; }
.pm-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }

/* breadcrumb */
.pm-body .master-breadcrumb { background: transparent; padding: 14px 0 6px; }
.pm-body .master-breadcrumb .breadcrumb {
    display: inline-flex;
    flex-wrap: wrap;
    background: rgba(255, 255, 255, .03);
    border: 1px solid var(--pm-border-soft);
    border-radius: 999px;
    padding: 6px 16px;
    margin: 0;
    font-size: .8rem;
}
.pm-body .breadcrumb-item, .pm-body .breadcrumb-item a { color: var(--pm-muted); }
.pm-body .breadcrumb-item a:hover { color: #fff; }
.pm-body .breadcrumb-item.active { color: var(--pm-text-2); }
.pm-body .breadcrumb-item + .breadcrumb-item::before { color: var(--pm-faint); }

/* main body */
.pm-body #main-body { background: transparent; padding: 20px 0 64px; min-height: 50vh; }
.pm-body .primary-content { min-width: 0; }

/* =========================== FOOTER =========================== */
.pm-footer {
    position: relative;
    background: linear-gradient(to bottom, transparent, rgba(30, 27, 75, .2), rgba(23, 37, 84, .4)) !important;
    padding: 0 0 32px;
    color: var(--pm-muted);
    border: 0;
}
.pm-footer-card {
    background: linear-gradient(to bottom right, rgba(15, 23, 42, .9), rgba(30, 27, 75, .6), rgba(23, 37, 84, .6));
    border: 1px solid var(--pm-border-soft);
    border-radius: var(--pm-radius-xl);
    padding: 40px 36px 20px;
    backdrop-filter: blur(8px);
}
.pm-footer-about { margin: 18px 0 0; font-size: .875rem; line-height: 2; color: var(--pm-muted); }
.pm-footer-title {
    position: relative;
    color: #fff !important;
    font-size: .95rem;
    margin-bottom: 18px;
    padding-bottom: 10px;
}
.pm-footer-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    inset-inline-start: 0;
    width: 28px;
    height: 2px;
    border-radius: 2px;
    background: linear-gradient(to left, #3b82f6, #22d3ee);
}
.pm-footer-links { list-style: none; padding: 0; margin: 0; }
.pm-footer-links li { margin-bottom: 10px; font-size: .875rem; }
.pm-footer-links a { color: var(--pm-muted) !important; }
.pm-footer-links a:hover { color: #fff !important; }
.pm-footer-contact li { display: flex; gap: 10px; align-items: flex-start; }
.pm-footer-contact i { color: var(--pm-primary-400); margin-top: 6px; width: 14px; text-align: center; }
.pm-footer-bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 28px;
    padding-top: 18px;
    border-top: 1px solid var(--pm-border);
    font-size: .8rem;
}
.pm-footer .copyright { color: var(--pm-faint); }
.pm-footer .list-inline-item .btn { color: var(--pm-text-2); }
@media (max-width: 575.98px) { .pm-footer-card { padding: 28px 20px 16px; border-radius: var(--pm-radius-lg); } }

.pm-floating-admin { position: fixed; bottom: 16px; inset-inline-start: 16px; z-index: 1040; }

/* keep the footer at the bottom on short pages (login, empty lists) */
body.pm-body { display: flex; flex-direction: column; }
body.pm-body > * { flex-shrink: 0; }
.pm-body #main-body { flex: 1 0 auto; }

/* account dropdown in the header */
.pm-account .pm-user-chip { cursor: pointer; font-family: var(--pm-font); }
.pm-account .pm-caret { font-size: 10px; color: var(--pm-muted); transition: transform .2s; }
.pm-account.show .pm-caret { transform: rotate(180deg); }
.pm-avatar i { font-size: 13px; }
.pm-account .dropdown-menu { min-width: 15rem; margin-top: 8px; }
.pm-account-head { display: flex; flex-direction: column; padding: 8px 12px 10px; margin-bottom: 4px; border-bottom: 1px solid var(--pm-border); }
.pm-account-head strong { color: #fff; font-size: .9rem; }
.pm-account-head small { color: var(--pm-muted); font-size: .75rem; }

/* ---- 03-components.css ---- */
/* =========================== BUTTONS =========================== */
.pm-body .btn {
    font-weight: 500;
    font-size: .875rem;
    border-radius: 10px;
    padding: 8px 18px;
    transition: all .2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.pm-body .btn.btn-block { display: flex; }
.pm-body .btn-lg { font-size: 1rem; padding: 12px 24px; border-radius: 12px; }
.pm-body .btn-sm { font-size: .8rem; padding: 5px 12px; border-radius: 8px; }
.pm-body .btn-xs { font-size: .72rem; padding: 3px 8px; border-radius: 6px; }
.pm-body .btn:focus, .pm-body .btn.focus { box-shadow: var(--pm-ring) !important; }

.pm-body .btn-primary,
.pm-body .btn-info {
    color: #fff !important;
    background: linear-gradient(to right, #2563eb, #3b82f6);
    border: 1px solid rgba(96, 165, 250, .25);
}
.pm-body .btn-primary:hover, .pm-body .btn-primary:not(:disabled):not(.disabled):active,
.pm-body .btn-info:hover, .pm-body .btn-info:not(:disabled):not(.disabled):active {
    background: linear-gradient(to right, #1d4ed8, #2563eb);
    border-color: rgba(96, 165, 250, .45);
    box-shadow: var(--pm-glow);
    transform: translateY(-1px);
}
.pm-body .pm-btn-glow { box-shadow: var(--pm-glow); }

.pm-body .btn-default,
.pm-body .btn-secondary,
.pm-body .btn-light,
.pm-body .btn-outline-primary,
.pm-body .btn-outline-secondary,
.pm-body .btn-outline-default,
.pm-body .pm-btn-ghost {
    color: var(--pm-text-2) !important;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .12);
}
.pm-body .btn-default:hover, .pm-body .btn-secondary:hover, .pm-body .btn-light:hover,
.pm-body .btn-outline-primary:hover, .pm-body .btn-outline-secondary:hover,
.pm-body .btn-outline-default:hover, .pm-body .pm-btn-ghost:hover,
.pm-body .btn-default:not(:disabled):not(.disabled).active,
.pm-body .btn-default:not(:disabled):not(.disabled):active {
    color: #fff !important;
    background: rgba(59, 130, 246, .12);
    border-color: var(--pm-border-accent);
}

.pm-body .btn-success {
    color: #fff !important;
    background: linear-gradient(to right, #059669, #10b981);
    border: 1px solid rgba(52, 211, 153, .3);
}
.pm-body .btn-success:hover { background: linear-gradient(to right, #047857, #059669); box-shadow: 0 12px 32px rgba(16, 185, 129, .25); }
.pm-body .btn-danger {
    color: #fff !important;
    background: linear-gradient(to right, #dc2626, #ef4444);
    border: 1px solid rgba(248, 113, 113, .3);
}
.pm-body .btn-danger:hover { background: linear-gradient(to right, #b91c1c, #dc2626); }
.pm-body .btn-warning { color: #1c1917 !important; background: linear-gradient(to right, #f59e0b, #fbbf24); border: 1px solid rgba(251, 191, 36, .4); }
.pm-body .btn-outline-danger { color: var(--pm-danger) !important; border-color: rgba(248, 113, 113, .4); background: transparent; }
.pm-body .btn-outline-danger:hover { background: var(--pm-danger-soft); }
.pm-body .btn-outline-success { color: var(--pm-success) !important; border-color: rgba(52, 211, 153, .4); background: transparent; }
.pm-body .btn-link { color: var(--pm-primary-400) !important; background: none; border: 0; }
.pm-body .btn:disabled, .pm-body .btn.disabled { opacity: .5; transform: none; box-shadow: none; }
.pm-body .btn-group > .btn { transform: none !important; }

/* ============================ CARDS ============================ */
.pm-body .card,
.pm-body .panel,
.pm-body .well {
    color: var(--pm-text);
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    box-shadow: var(--pm-shadow-blue);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}
.pm-body .card { margin-bottom: 20px; overflow: hidden; }
.pm-body .card .card { box-shadow: none; backdrop-filter: none; background: rgba(2, 6, 23, .25); }
.pm-body .card-header,
.pm-body .panel-heading {
    color: #fff;
    background: rgba(255, 255, 255, .02);
    border-bottom: 1px solid var(--pm-border);
    padding: 14px 20px;
}
.pm-body .card-header:first-child { border-radius: 0; }
.pm-body .card-title, .pm-body .panel-title { color: #fff; font-size: 1rem; font-weight: 700; margin: 0; }
.pm-body .card-title i { color: var(--pm-primary-400); margin-inline-end: 6px; }
.pm-body .card-body, .pm-body .panel-body { padding: 20px; }
.pm-body .card-footer, .pm-body .panel-footer {
    background: rgba(2, 6, 23, .25);
    border-top: 1px solid var(--pm-border);
    color: var(--pm-muted);
    padding: 12px 20px;
}
.pm-body .card-footer:last-child { border-radius: 0; }

/* accent top border used by Twenty-One client home cards */
.pm-body [class*="card-accent-"] { border-top: 2px solid var(--pm-primary); }
.pm-body .card-accent-blue, .pm-body .card-accent-midnight-blue { border-top-color: #3b82f6; }
.pm-body .card-accent-teal, .pm-body .card-accent-turquoise { border-top-color: #22d3ee; }
.pm-body .card-accent-green, .pm-body .card-accent-emerald { border-top-color: #34d399; }
.pm-body .card-accent-red, .pm-body .card-accent-pomegranate { border-top-color: #f87171; }
.pm-body .card-accent-gold, .pm-body .card-accent-sun-flower, .pm-body .card-accent-orange { border-top-color: #fbbf24; }
.pm-body .card-accent-purple, .pm-body .card-accent-amethyst, .pm-body .card-accent-asbestos { border-top-color: #a78bfa; }

/* ============================ FORMS ============================ */
.pm-body label, .pm-body .form-control-label, .pm-body .col-form-label { color: var(--pm-text-2); font-size: .875rem; font-weight: 500; }
.pm-body .form-control,
.pm-body .custom-select,
.pm-body select.form-control,
.pm-body input[type="text"], .pm-body input[type="email"], .pm-body input[type="password"],
.pm-body input[type="number"], .pm-body input[type="tel"], .pm-body input[type="url"],
.pm-body input[type="search"], .pm-body textarea {
    color: var(--pm-text);
    background-color: var(--pm-input-bg);
    border: 1px solid var(--pm-border);
    border-radius: 10px;
    font-size: .9rem;
    transition: border-color .2s, box-shadow .2s;
}
.pm-body .form-control { height: calc(1.8em + 1rem + 2px); padding: .5rem .9rem; }
.pm-body textarea.form-control { height: auto; }
.pm-body .form-control-lg { height: calc(1.8em + 1.2rem + 2px); }
.pm-body .form-control-sm { height: calc(1.6em + .6rem + 2px); font-size: .8rem; }
.pm-body .form-control::placeholder, .pm-body textarea::placeholder { color: var(--pm-faint); }
.pm-body .form-control:focus,
.pm-body .custom-select:focus,
.pm-body input:focus, .pm-body textarea:focus, .pm-body select:focus {
    color: #fff;
    background-color: rgba(2, 6, 23, .6);
    border-color: var(--pm-primary);
    box-shadow: var(--pm-ring);
    outline: 0;
}
.pm-body .form-control:disabled, .pm-body .form-control[readonly] { background-color: rgba(51, 65, 85, .25); color: var(--pm-muted); }
.pm-body select option, .pm-body select optgroup { background: var(--pm-surface-solid); color: var(--pm-text); }
.pm-body .custom-select {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3e%3cpath fill='none' stroke='%2394a3b8' stroke-width='1.6' d='M1 1.5l5 5 5-5'/%3e%3c/svg%3e");
    background-size: 12px 8px;
}
.pm-body .form-text, .pm-body .help-block { color: var(--pm-muted); font-size: .8rem; }
.pm-body .is-invalid, .pm-body .has-error .form-control { border-color: var(--pm-danger) !important; }
.pm-body .invalid-feedback, .pm-body .has-error .help-block { color: var(--pm-danger); }
.pm-body .is-valid, .pm-body .has-success .form-control { border-color: var(--pm-success) !important; }

.pm-body .input-group-text {
    color: var(--pm-muted);
    background: rgba(255, 255, 255, .04);
    border: 1px solid var(--pm-border);
    border-radius: 10px;
}
.pm-body .input-group-merge .input-group-text { background: var(--pm-input-bg); }
.pm-body .input-group-merge .input-group-prepend .input-group-text { border-inline-end: 0; }
.pm-body .input-group-merge .form-control:not(:first-child) { border-inline-start: 0; }
.pm-body .input-group-merge .input-group-append .btn { border-color: var(--pm-border); background: var(--pm-input-bg); }
.pm-body .input-group:focus-within .input-group-text { border-color: var(--pm-primary); color: var(--pm-primary-400); }

.pm-body .custom-control-label::before { background-color: var(--pm-input-bg); border: 1px solid var(--pm-border); }
.pm-body .custom-control-input:checked ~ .custom-control-label::before { background: var(--pm-primary-600); border-color: var(--pm-primary-600); }
.pm-body .custom-control-input:focus ~ .custom-control-label::before { box-shadow: var(--pm-ring); }
.pm-body input[type="checkbox"], .pm-body input[type="radio"] { accent-color: var(--pm-primary); }

/* bootstrap-switch (used on many WHMCS forms) */
.pm-body .bootstrap-switch { border-color: var(--pm-border); background: var(--pm-input-bg); border-radius: 999px; }
.pm-body .bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-primary,
.pm-body .bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-success,
.pm-body .bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-info { background: var(--pm-primary-600); color: #fff; }
.pm-body .bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-default,
.pm-body .bootstrap-switch .bootstrap-switch-label { background: rgba(255, 255, 255, .06); color: var(--pm-text-2); }

/* intl-tel-input country list */
.pm-body .iti__country-list, .pm-body .intl-tel-input .country-list { background: var(--pm-surface-solid); border-color: var(--pm-border); color: var(--pm-text); }
.pm-body .iti__country.iti__highlight, .pm-body .intl-tel-input .country-list .country.highlight { background: rgba(59, 130, 246, .15); }
.pm-body .iti__dial-code { color: var(--pm-muted); }

/* ============================ TABLES ============================ */
.pm-body .table { color: var(--pm-text-2); margin-bottom: 0; }
.pm-body .table th, .pm-body .table td { border-color: var(--pm-border); vertical-align: middle; padding: 14px 16px; }
.pm-body .table thead th,
.pm-body .table-list > thead > tr > th {
    color: var(--pm-muted);
    font-size: .78rem;
    font-weight: 600;
    background: rgba(2, 6, 23, .35) !important;
    border-bottom: 1px solid var(--pm-border) !important;
    border-top: 0;
    white-space: nowrap;
}
.pm-body .table-list > thead > tr > th a, .pm-body .table-list > thead > tr > th a:hover { color: var(--pm-muted); }
.pm-body .table-list > tbody > tr > td { background: transparent !important; border-color: var(--pm-border); }
.pm-body .table-list > tbody > tr:hover > td,
.pm-body .table-hover tbody tr:hover { background: rgba(59, 130, 246, .06) !important; color: #fff; cursor: pointer; }
.pm-body .table-striped tbody tr:nth-of-type(odd) { background: rgba(255, 255, 255, .02); }
.pm-body .table-bordered, .pm-body .table-bordered th, .pm-body .table-bordered td { border-color: var(--pm-border); }
.pm-body .table-container, .pm-body .table-responsive {
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    overflow: auto;
    box-shadow: var(--pm-shadow-blue);
}
.pm-body .card .table-container, .pm-body .card .table-responsive { border: 0; border-radius: 0; box-shadow: none; background: transparent; }
.pm-body .table-list .text-domain, .pm-body .table-list strong { color: #fff; }
.pm-body .table-list .sorting::after, .pm-body .table-list .sorting_asc::after, .pm-body .table-list .sorting_desc::after { color: var(--pm-faint); }

/* DataTables chrome */
.pm-body .dataTables_wrapper .dataTables_info,
.pm-body .dataTables_wrapper .dataTables_length,
.pm-body .dataTables_wrapper .dataTables_filter { color: var(--pm-muted); padding: 12px 16px; font-size: .8rem; }
.pm-body .dataTables_wrapper .dataTables_filter input,
.pm-body .dataTables_wrapper .dataTables_length select {
    background-color: var(--pm-input-bg);
    color: var(--pm-text);
    border: 1px solid var(--pm-border);
    border-radius: 8px;
    padding: 4px 10px;
}
.pm-body .dataTables_wrapper .dataTables_paginate { padding: 8px 16px 14px; }

/* ============================ PAGINATION ============================ */
.pm-body .pagination { gap: 4px; flex-wrap: wrap; }
.pm-body .page-link {
    color: var(--pm-text-2);
    background: rgba(255, 255, 255, .04);
    border: 1px solid var(--pm-border) !important;
    border-radius: 8px !important;
    min-width: 36px;
    text-align: center;
    margin: 0 !important;
}
.pm-body .page-link:hover { color: #fff; background: rgba(59, 130, 246, .12); }
.pm-body .page-item.active .page-link { color: #fff; background: var(--pm-grad); border-color: transparent !important; }
.pm-body .page-item.disabled .page-link { color: var(--pm-faint); background: transparent; }

/* ============================ ALERTS ============================ */
.pm-body .alert {
    border-radius: var(--pm-radius);
    border: 1px solid;
    color: var(--pm-text);
    backdrop-filter: blur(8px);
    padding: 14px 18px;
}
.pm-body .alert a:not(.btn), .pm-body .alert .alert-link { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.pm-body .alert-info, .pm-body .alert-primary { background: rgba(30, 58, 138, .35); border-color: rgba(59, 130, 246, .35); }
.pm-body .alert-success { background: var(--pm-success-soft); border-color: rgba(52, 211, 153, .35); }
.pm-body .alert-warning { background: var(--pm-warning-soft); border-color: rgba(251, 191, 36, .35); }
.pm-body .alert-danger { background: var(--pm-danger-soft); border-color: rgba(248, 113, 113, .35); }
.pm-body .alert-secondary, .pm-body .alert-grey, .pm-body .alert-light { background: rgba(255, 255, 255, .04); border-color: var(--pm-border); }
.pm-body .alert .close { color: var(--pm-text-2); text-shadow: none; opacity: .8; }

/* ============================ BADGES / STATUS ============================ */
.pm-body .badge, .pm-body .label {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-weight: 600;
    font-size: .72rem;
    padding: 4px 10px;
    border-radius: 999px;
    border: 1px solid transparent;
    line-height: 1.4;
}
.pm-body .badge-primary, .pm-body .badge-info, .pm-body .label-primary, .pm-body .label-info { background: rgba(30, 58, 138, .5); color: var(--pm-primary-300); border-color: rgba(59, 130, 246, .3); }
.pm-body .badge-success, .pm-body .label-success { background: var(--pm-success-soft); color: var(--pm-success); border-color: rgba(52, 211, 153, .3); }
.pm-body .badge-warning, .pm-body .label-warning { background: var(--pm-warning-soft); color: var(--pm-warning); border-color: rgba(251, 191, 36, .3); }
.pm-body .badge-danger, .pm-body .label-danger { background: var(--pm-danger-soft); color: var(--pm-danger); border-color: rgba(248, 113, 113, .3); }
.pm-body .badge-secondary, .pm-body .badge-default, .pm-body .badge-light, .pm-body .label-default { background: rgba(148, 163, 184, .12); color: var(--pm-text-2); border-color: rgba(148, 163, 184, .25); }

/* WHMCS status labels: <span class="label status status-active"> */
.pm-body .label.status { background: rgba(148, 163, 184, .12); color: var(--pm-text-2); border-color: rgba(148, 163, 184, .25); }
.pm-body .label.status::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.pm-body .status-active, .pm-body .status-paid, .pm-body .status-completed, .pm-body .status-answered,
.pm-body .status-accepted, .pm-body .status-delivered { background: var(--pm-success-soft) !important; color: var(--pm-success) !important; border-color: rgba(52, 211, 153, .3) !important; }
.pm-body .status-pending, .pm-body .status-unpaid, .pm-body .status-customer-reply, .pm-body .status-payment-pending,
.pm-body .status-in-progress, .pm-body .status-onhold, .pm-body .status-pending-transfer, .pm-body .status-grace { background: var(--pm-warning-soft) !important; color: var(--pm-warning) !important; border-color: rgba(251, 191, 36, .3) !important; }
.pm-body .status-suspended, .pm-body .status-overdue, .pm-body .status-fraud, .pm-body .status-collections,
.pm-body .status-expired, .pm-body .status-redemption, .pm-body .status-dead { background: var(--pm-danger-soft) !important; color: var(--pm-danger) !important; border-color: rgba(248, 113, 113, .3) !important; }
.pm-body .status-open, .pm-body .status-draft, .pm-body .status-refunded { background: rgba(30, 58, 138, .45) !important; color: var(--pm-primary-300) !important; border-color: rgba(59, 130, 246, .3) !important; }
.pm-body .status-terminated, .pm-body .status-cancelled, .pm-body .status-closed, .pm-body .status-transferred-away { background: rgba(148, 163, 184, .1) !important; color: var(--pm-muted) !important; border-color: rgba(148, 163, 184, .2) !important; }

/* ============================ LIST GROUPS ============================ */
.pm-body .list-group-item {
    color: var(--pm-text-2);
    background: transparent;
    border-color: var(--pm-border);
    padding: 12px 20px;
}
.pm-body .list-group-item-action:hover, .pm-body .list-group-item-action:focus,
.pm-body a.list-group-item:hover { color: #fff; background: rgba(59, 130, 246, .08); }
.pm-body .list-group-item.active {
    color: #fff;
    background: linear-gradient(to left, rgba(37, 99, 235, .35), rgba(37, 99, 235, .12));
    border-color: var(--pm-border);
    box-shadow: inset -3px 0 0 var(--pm-primary);
}
[dir="ltr"] .pm-body .list-group-item.active, .pm-body[dir="ltr"] .list-group-item.active { box-shadow: inset 3px 0 0 var(--pm-primary); }
.pm-body .list-group-item.disabled { color: var(--pm-faint); background: transparent; }
.pm-body .list-group-item .badge { background: rgba(59, 130, 246, .15); color: var(--pm-primary-300); }

/* ============================ SIDEBAR ============================ */
.pm-body .sidebar .card-sidebar, .pm-body .card-sidebar { overflow: hidden; }
.pm-body .card-sidebar .card-header { padding: 14px 18px; }
.pm-body .card-sidebar .card-title { font-size: .9rem; }
.pm-body .card-sidebar .card-minimise { color: var(--pm-muted); }
.pm-body .card-sidebar .list-group-item { padding: 10px 18px; font-size: .875rem; }
.pm-body .card-sidebar .list-group-item i, .pm-body .card-sidebar .list-group-item .sidebar-menu-item-icon { color: var(--pm-primary-400); width: 18px; text-align: center; }
.pm-body .card-sidebar .card-body { font-size: .875rem; color: var(--pm-text-2); }
@media (max-width: 991.98px) { .pm-body .sidebar { margin-bottom: 8px; } }

/* ============================ DROPDOWNS / POPOVERS / MODALS ============================ */
.pm-body .dropdown-menu {
    background: rgba(15, 23, 42, .96);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: var(--pm-radius);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, .6);
    padding: 6px;
    min-width: 13rem;
    text-align: start;
}
.pm-body .dropdown-item {
    color: var(--pm-text-2);
    border-radius: 8px;
    padding: 8px 12px;
    font-size: .875rem;
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}
.pm-body .dropdown-item:hover, .pm-body .dropdown-item:focus { color: #fff; background: rgba(59, 130, 246, .12); }
.pm-body .dropdown-item.active, .pm-body .dropdown-item:active { color: #fff; background: rgba(37, 99, 235, .35); }
.pm-body .dropdown-item i { color: var(--pm-primary-400); width: 16px; text-align: center; }
.pm-body .dropdown-divider { border-top-color: var(--pm-border); margin: 6px 0; }
.pm-body .dropdown-header { color: var(--pm-faint); }

.pm-body .popover {
    background: rgba(15, 23, 42, .97);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: var(--pm-radius);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, .6);
    max-width: 340px;
}
.pm-body .popover-header { background: rgba(255, 255, 255, .03); color: #fff; border-bottom-color: var(--pm-border); }
.pm-body .popover-body { color: var(--pm-text-2); }
.pm-body .bs-popover-bottom > .arrow::after, .pm-body .bs-popover-auto[x-placement^="bottom"] > .arrow::after { border-bottom-color: rgba(15, 23, 42, .97); }
.pm-body .bs-popover-bottom > .arrow::before, .pm-body .bs-popover-auto[x-placement^="bottom"] > .arrow::before { border-bottom-color: rgba(255, 255, 255, .1); }
.pm-body .client-alerts { list-style: none; padding: 0; margin: 0; }
.pm-body .client-alerts li a { display: flex; gap: 10px; color: var(--pm-text-2); padding: 8px 4px; border-bottom: 1px solid var(--pm-border); }
.pm-body .client-alerts li:last-child a { border: 0; }
.pm-body .client-alerts li a:hover { color: #fff; }
.pm-body .client-alerts .fa-exclamation-circle { color: var(--pm-danger); }
.pm-body .client-alerts .fa-exclamation-triangle { color: var(--pm-warning); }
.pm-body .client-alerts .fa-info-circle { color: var(--pm-info); }
.pm-body .client-alerts .fa-check-circle { color: var(--pm-success); }

.pm-body .tooltip-inner { background: #020617; border: 1px solid var(--pm-border); border-radius: 8px; font-size: .78rem; padding: 6px 10px; }

.pm-body .modal-backdrop.show { opacity: .7; background: #020617; }
.pm-body .modal-content {
    color: var(--pm-text);
    background: linear-gradient(145deg, #131d33, #0c1426);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: var(--pm-radius-lg);
    box-shadow: 0 30px 60px -15px rgba(0, 0, 0, .7);
}
.pm-body .modal-header, .pm-body .modal-footer { border-color: var(--pm-border); }
.pm-body .modal-title { color: #fff; }
.pm-body .close { color: var(--pm-text-2); text-shadow: none; opacity: .8; }
.pm-body .close:hover { color: #fff; opacity: 1; }
.pm-body .modal-localisation .item-selector .item {
    display: block;
    margin-bottom: 8px;
    padding: 8px 12px;
    color: var(--pm-text-2);
    background: rgba(255, 255, 255, .03);
    border: 1px solid var(--pm-border);
    border-radius: 10px;
    text-align: center;
}
.pm-body .modal-localisation .item-selector .item:hover,
.pm-body .modal-localisation .item-selector .item.active { color: #fff; background: rgba(37, 99, 235, .3); border-color: var(--pm-border-accent); }
.pm-body .modal-localisation .modal-content { background: linear-gradient(145deg, #131d33, #0c1426); }

/* ============================ NAV TABS / PILLS ============================ */
.pm-body .nav-tabs { border-bottom: 1px solid var(--pm-border); gap: 4px; }
.pm-body .nav-tabs .nav-link {
    color: var(--pm-muted);
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: transparent;
    padding: 10px 16px;
}
.pm-body .nav-tabs .nav-link:hover { color: #fff; }
.pm-body .nav-tabs .nav-link.active, .pm-body .nav-tabs .nav-item.show .nav-link {
    color: #fff;
    background: transparent;
    border-bottom-color: var(--pm-primary);
}
.pm-body .nav-pills .nav-link { color: var(--pm-text-2); border-radius: 10px; }
.pm-body .nav-pills .nav-link.active { color: #fff; background: var(--pm-grad); }
.pm-body .tab-content { color: var(--pm-text-2); }

/* ============================ PROGRESS ============================ */
.pm-body .progress { background: rgba(255, 255, 255, .06); border-radius: 999px; height: 8px; }
.pm-body .progress-bar { background: linear-gradient(to left, #3b82f6, #22d3ee); border-radius: 999px; }
.pm-body .progress-bar.bg-success { background: linear-gradient(to left, #10b981, #34d399) !important; }
.pm-body .progress-bar.bg-warning { background: linear-gradient(to left, #f59e0b, #fbbf24) !important; }
.pm-body .progress-bar.bg-danger { background: linear-gradient(to left, #dc2626, #f87171) !important; }

/* full-page loading overlay */
.pm-body #fullpage-overlay { background: rgba(2, 6, 23, .8); backdrop-filter: blur(6px); color: var(--pm-text); }

/* ---- 04-pages.css ---- */
/* ============================ DASHBOARD TILES ============================ */
.pm-body .tiles { margin-bottom: 24px; }
.pm-body .tiles .row { margin: -8px; }
.pm-body .tiles .row > [class*="col"] { padding: 8px; }
.pm-body .tiles .tile {
    position: relative;
    display: block;
    height: 100%;
    padding: 20px 20px 22px;
    color: var(--pm-text);
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    box-shadow: var(--pm-shadow-blue);
    overflow: hidden;
    transition: transform .25s, border-color .25s, box-shadow .25s;
}
.pm-body .tiles .tile:hover {
    transform: translateY(-3px);
    border-color: rgba(96, 165, 250, .35);
    box-shadow: 0 16px 40px -12px rgba(59, 130, 246, .35);
}
.pm-body .tiles .tile i {
    position: static;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin-bottom: 14px;
    font-size: 1.1rem;
    color: var(--pm-primary-400);
    background: rgba(30, 58, 138, .5);
    border: 1px solid rgba(59, 130, 246, .25);
    border-radius: 12px;
    opacity: 1;
}
.pm-body .tiles .tile .stat { color: #fff; font-size: 2rem; font-weight: 700; line-height: 1.1; margin: 0; }
.pm-body .tiles .tile .title { color: var(--pm-muted); font-size: .85rem; font-weight: 500; text-transform: none; margin-top: 4px; }
.pm-body .tiles .tile .highlight {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    width: auto;
    background: var(--pm-grad) !important;
    opacity: .9;
}
.pm-body .tiles .tile .highlight.bg-color-green { background: linear-gradient(to left, #10b981, #34d399) !important; }
.pm-body .tiles .tile .highlight.bg-color-red { background: linear-gradient(to left, #dc2626, #f87171) !important; }
.pm-body .tiles .tile .highlight.bg-color-gold { background: linear-gradient(to left, #f59e0b, #fbbf24) !important; }
.pm-body .tiles .tile .highlight.bg-color-blue { background: linear-gradient(to left, #2563eb, #22d3ee) !important; }

/* WHMCS colour helpers */
.pm-body .bg-color-blue { background-color: var(--pm-primary) !important; }
.pm-body .bg-color-green { background-color: #10b981 !important; }
.pm-body .bg-color-red { background-color: #ef4444 !important; }
.pm-body .bg-color-gold { background-color: #f59e0b !important; }
.pm-body .bg-color-purple { background-color: #8b5cf6 !important; }

/* client home panels */
.pm-body .client-home-cards .card-header .card-title .btn { margin-top: -4px; }
.pm-body .client-home-cards .list-group-item { font-size: .875rem; }
.pm-body .client-home-cards .list-group-item .text-domain { color: #fff; }
.pm-body .client-home-cards .card-body p:last-child { margin-bottom: 0; }

/* ============================ PRODUCT DETAILS ============================ */
.pm-body .product-details .product-icon {
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    padding: 24px;
    margin-bottom: 16px;
}
.pm-body .product-details .product-icon .fa-stack .fa-circle { color: rgba(30, 58, 138, .7); }
.pm-body .product-details .product-icon .fa-inverse { color: var(--pm-primary-300); }
.pm-body .product-details .product-icon h3 { color: #fff; font-size: 1.15rem; margin-top: 12px; }
.pm-body .product-details .product-icon h4 { color: var(--pm-muted); font-size: .9rem; font-weight: 500; }
.pm-body .product-details h4, .pm-body .product-details-tab-container h4 { color: var(--pm-muted); font-size: .85rem; }
.pm-body .product-details-tab-container { background: var(--pm-card-grad); border: 1px solid var(--pm-border); border-top: 0; border-radius: 0 0 var(--pm-radius-lg) var(--pm-radius-lg); padding: 20px; }
.pm-body .module-client-area, .pm-body .module-client-area * { color: inherit; }

/* ============================ TICKETS ============================ */
.pm-body .ticket-reply {
    background: rgba(2, 6, 23, .3);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
    margin-bottom: 16px;
    overflow: hidden;
}
.pm-body .ticket-reply .posted-by,
.pm-body .ticket-reply .user {
    background: rgba(255, 255, 255, .03);
    border-bottom: 1px solid var(--pm-border);
    color: var(--pm-muted);
    padding: 10px 16px;
    font-size: .82rem;
}
.pm-body .ticket-reply .posted-by-name, .pm-body .ticket-reply .user .name { color: #fff; font-weight: 700; }
.pm-body .ticket-reply.staff { border-color: rgba(59, 130, 246, .35); }
.pm-body .ticket-reply.staff .posted-by, .pm-body .ticket-reply.staff .user { background: rgba(30, 58, 138, .35); }
.pm-body .ticket-reply .message, .pm-body .markdown-content { color: var(--pm-text-2); padding: 16px; line-height: 2; }
.pm-body .ticket-reply .attachments { border-top: 1px solid var(--pm-border); padding: 10px 16px; background: rgba(255, 255, 255, .02); }
.pm-body .ticket-reply .requestor-badge { margin-inline-start: 6px; }
.pm-body .ticket-subject { color: #fff; }

/* markdown editor (bootstrap-markdown) */
.pm-body .md-editor { border-color: var(--pm-border); border-radius: var(--pm-radius); background: var(--pm-input-bg); overflow: hidden; }
.pm-body .md-editor > .md-header, .pm-body .md-editor .md-footer { background: rgba(255, 255, 255, .03); border-color: var(--pm-border); }
.pm-body .md-editor > textarea { background: transparent; color: var(--pm-text); border-color: var(--pm-border); }
.pm-body .md-editor.active { border-color: var(--pm-primary); box-shadow: var(--pm-ring); }
.pm-body .md-editor .btn-default { background: transparent; border-color: transparent; }
.pm-body .md-editor .md-preview { background: transparent; color: var(--pm-text-2); }

/* ============================ KB / ANNOUNCEMENTS / DOWNLOADS ============================ */
.pm-body .kb-search, .pm-body .home-kb-search { position: relative; }
.pm-body .kb-article-title, .pm-body .announcement-single h3 a { color: #fff; }
.pm-body .kb-article-content, .pm-body .announcement-single article { color: var(--pm-text-2); line-height: 2.1; }
.pm-body .kb-category .list-group-item .badge { float: none; }

/* ============================ HOMEPAGE (logged out) ============================ */
.pm-body .home-domain-search { background: transparent; padding: 24px 0; }
.pm-body .home-domain-search .p-5, .pm-body .home-domain-search > .container > div { border-radius: var(--pm-radius-xl); }
.pm-body .action-icon-btns a {
    color: var(--pm-text-2);
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    transition: transform .25s, border-color .25s;
}
.pm-body .action-icon-btns a:hover { transform: translateY(-3px); border-color: rgba(96, 165, 250, .35); color: #fff; }
.pm-body .action-icon-btns .ico-container { background: rgba(30, 58, 138, .5); color: var(--pm-primary-300); border-radius: 14px; }
.pm-body .action-icon-btns a:hover .ico-container { background: var(--pm-grad); color: #fff; }
.pm-body .domain-checker-container, .pm-body .domain-search-container {
    background: linear-gradient(to bottom right, rgba(15, 23, 42, .9), rgba(30, 27, 75, .7), rgba(23, 37, 84, .7)) !important;
    border: 1px solid var(--pm-border-soft);
    border-radius: var(--pm-radius-xl);
}

/* ============================ LOGIN / AUTH ============================ */
.pm-auth {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    max-width: 960px;
    margin: 12px auto 24px;
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-xl);
    box-shadow: 0 30px 60px -20px rgba(2, 6, 23, .8);
    overflow: hidden;
    backdrop-filter: blur(20px);
}
.pm-auth-side {
    position: relative;
    padding: 48px 40px;
    background:
        radial-gradient(400px 260px at 20% 10%, rgba(59, 130, 246, .35), transparent 70%),
        radial-gradient(360px 260px at 90% 100%, rgba(34, 211, 238, .18), transparent 70%),
        linear-gradient(160deg, #1e3a8a 0%, #1e1b4b 60%, #0f172a 100%);
    border-inline-end: 1px solid var(--pm-border-soft);
    overflow: hidden;
}
.pm-auth-side::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .04) 1px, transparent 1px);
    background-size: 32px 32px;
    mask-image: linear-gradient(to bottom, #000, transparent 85%);
    -webkit-mask-image: linear-gradient(to bottom, #000, transparent 85%);
    pointer-events: none;
}
.pm-auth-side > * { position: relative; z-index: 1; }
.pm-auth-side h2 { font-size: 1.6rem; margin: 18px 0 10px; }
.pm-auth-side p { color: var(--pm-text-2); line-height: 2; }
.pm-auth-features { list-style: none; padding: 0; margin: 28px 0 0; }
.pm-auth-features li { display: flex; align-items: center; gap: 12px; color: var(--pm-text-2); margin-bottom: 14px; font-size: .9rem; }
.pm-auth-features i {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--pm-primary-300);
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 10px;
}
.pm-auth-form { padding: 48px 44px; }
.pm-auth-form .h3 { font-size: 1.4rem; margin-bottom: 6px; }
.pm-auth-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: center;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid var(--pm-border);
    color: var(--pm-muted);
    font-size: .875rem;
}
@media (max-width: 767.98px) {
    .pm-auth { grid-template-columns: 1fr; border-radius: var(--pm-radius-lg); }
    .pm-auth-side { padding: 28px 24px; border-inline-end: 0; border-bottom: 1px solid var(--pm-border-soft); }
    .pm-auth-side h2 { font-size: 1.3rem; }
    .pm-auth-features { display: none; }
    .pm-auth-form { padding: 28px 22px; }
}
/* other auth-ish pages rendered by Twenty-One in a centred card */
.pm-page-password-reset-container .card,
.pm-page-clientregister .card,
.pm-page-two-factor-challenge .card { border-radius: var(--pm-radius-xl); }

/* ============================ INVOICES / QUOTES LIST ============================ */
.pm-body .invoice-summary, .pm-body .invoice-container { color: var(--pm-text); }
.pm-body .text-price, .pm-body .amt { color: #fff; font-weight: 700; }

/* ============================ OPEN TICKET: department cards ============================ */
.pm-dept-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.pm-body .pm-dept {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    color: var(--pm-text-2);
    background: rgba(30, 41, 59, .35);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    transition: border-color .2s, transform .2s, background .2s;
}
.pm-body .pm-dept:hover { color: var(--pm-text-2); border-color: var(--pm-border-accent); background: rgba(30, 58, 138, .25); transform: translateY(-2px); }
.pm-dept-icon {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: var(--pm-primary-300);
    background: rgba(30, 58, 138, .5);
    border: 1px solid rgba(59, 130, 246, .25);
}
.pm-dept-body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.pm-dept-body strong { color: #fff; font-size: .95rem; }
.pm-dept-body small { color: var(--pm-muted); font-size: .8rem; line-height: 1.8; }
.pm-dept-go { color: var(--pm-faint); font-size: 12px; }
[dir="ltr"] .pm-dept-go { transform: scaleX(-1); }
.pm-body .pm-dept:hover .pm-dept-go { color: var(--pm-primary-400); }

/* ---- 05-cart.css ---- */
/* =====================================================================
   Order form (standard_cart). The order form loads its own stylesheet
   after ours, so every rule is prefixed with "body.pm-body" to win.
   ===================================================================== */
body.pm-body #order-standard_cart { color: var(--pm-text); }
body.pm-body #order-standard_cart .header-lined h1,
body.pm-body #order-standard_cart h1, body.pm-body #order-standard_cart h2,
body.pm-body #order-standard_cart h3 { color: #fff; }
body.pm-body #order-standard_cart .header-lined { border-bottom: 0; margin-bottom: 16px; }
body.pm-body #order-standard_cart .header-lined h1 { font-size: 1.5rem; }
body.pm-body #order-standard_cart .header-lined p { color: var(--pm-muted); }

body.pm-body #order-standard_cart .sub-heading { border-top: 1px solid var(--pm-border); margin: 28px 0 18px; }
body.pm-body #order-standard_cart .sub-heading span,
body.pm-body #order-standard_cart .sub-heading-borderless span {
    color: var(--pm-primary-300);
    background: var(--pm-bg-1);
    border: 1px solid rgba(59, 130, 246, .25);
    border-radius: 999px;
    padding: 2px 14px;
    font-size: .85rem;
}

/* product grid */
body.pm-body #order-standard_cart .products .product {
    display: flex;
    flex-direction: column;
    color: var(--pm-text-2);
    background: rgba(30, 41, 59, .25);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    padding: 0;
    margin-bottom: 20px;
    overflow: hidden;
    backdrop-filter: blur(6px);
    transition: border-color .3s, box-shadow .3s, transform .3s;
}
body.pm-body #order-standard_cart .products .product:hover {
    border-color: rgba(59, 130, 246, .5);
    box-shadow: 0 10px 30px -8px rgba(59, 130, 246, .25);
    transform: translateY(-3px);
}
body.pm-body #order-standard_cart .products .product header {
    background: linear-gradient(to bottom, rgba(30, 58, 138, .35), transparent);
    border-bottom: 1px solid var(--pm-border);
    padding: 16px 20px;
    margin: 0;
    color: #fff;
}
body.pm-body #order-standard_cart .products .product header span { color: #fff; font-size: 1.05rem; font-weight: 700; }
body.pm-body #order-standard_cart .products .product header .qty { color: var(--pm-muted); font-size: .75rem; }
body.pm-body #order-standard_cart .products .product div.product-desc {
    float: none;
    width: auto;
    padding: 16px 20px;
    font-size: .875rem;
    line-height: 2;
    color: var(--pm-text-2);
}
body.pm-body #order-standard_cart .products .product div.product-desc ul { padding-inline-start: 0; list-style: none; margin: 0; }
body.pm-body #order-standard_cart .products .product div.product-desc li { padding: 4px 0; border-bottom: 1px dashed rgba(51, 65, 85, .5); }
body.pm-body #order-standard_cart .products .product div.product-desc li:last-child { border-bottom: 0; }
body.pm-body #order-standard_cart .products .product div.product-desc .feature-value { color: #fff; font-weight: 600; }
body.pm-body #order-standard_cart .products .product footer {
    float: none;
    width: auto;
    margin-top: auto;
    padding: 16px 20px 20px;
    text-align: center;
    border-top: 1px solid var(--pm-border);
    background: rgba(2, 6, 23, .25);
}
body.pm-body #order-standard_cart .products .product .product-pricing { color: var(--pm-muted); font-size: .8rem; margin-bottom: 12px; }
body.pm-body #order-standard_cart .products .product .product-pricing .price {
    display: block;
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--pm-primary-400);
}
body.pm-body #order-standard_cart .products .product .btn-order-now { width: 100%; }

/* cart sidebar (categories) */
body.pm-body #order-standard_cart .cart-sidebar .card-sidebar,
body.pm-body .cart-sidebar .card { background: var(--pm-card-grad); }
body.pm-body #order-standard_cart .sidebar-collapsed .panel, body.pm-body .sidebar-collapsed .card { background: var(--pm-card-grad); }

/* product configuration */
body.pm-body #order-standard_cart .product-info {
    background: rgba(30, 58, 138, .2);
    border: 1px solid rgba(59, 130, 246, .25);
    border-radius: var(--pm-radius);
    color: var(--pm-text-2);
    padding: 16px 20px;
}
body.pm-body #order-standard_cart .product-info .product-title { color: #fff; }
body.pm-body #order-standard_cart .field-container {
    background: rgba(2, 6, 23, .25);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
    padding: 16px;
}
body.pm-body #order-standard_cart .panel-addon {
    background: rgba(30, 41, 59, .35);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
    color: var(--pm-text-2);
}
body.pm-body #order-standard_cart .panel-addon .panel-price,
body.pm-body #order-standard_cart .panel-addon .panel-add { background: rgba(2, 6, 23, .35); color: var(--pm-text); border-color: var(--pm-border); }
body.pm-body #order-standard_cart .panel-addon-selected { border-color: var(--pm-primary); }
body.pm-body #order-standard_cart .panel-addon-selected .panel-add { background: var(--pm-primary-600); color: #fff; }
body.pm-body #order-standard_cart .prepend-icon .field-icon { color: var(--pm-muted); }

/* order summary box */
body.pm-body #order-standard_cart .order-summary,
body.pm-body #orderSummary .order-summary {
    background: linear-gradient(145deg, rgba(30, 58, 138, .5), rgba(30, 27, 75, .55)) !important;
    border: 1px solid rgba(59, 130, 246, .3);
    border-radius: var(--pm-radius-lg);
    overflow: hidden;
}
body.pm-body #order-standard_cart .order-summary h2 { color: #fff; font-size: 1rem; padding: 14px; margin: 0; }
body.pm-body #order-standard_cart .summary-container {
    background: rgba(2, 6, 23, .55) !important;
    color: var(--pm-text-2);
    border-radius: 0;
    padding: 16px;
}
body.pm-body #order-standard_cart .summary-container .product-name { color: #fff; }
body.pm-body #order-standard_cart .summary-container .summary-totals,
body.pm-body #order-standard_cart .summary-container .bordered-totals { border-color: var(--pm-border); }
body.pm-body #order-standard_cart .total-due-today .amt,
body.pm-body #order-standard_cart .total-due-today span { color: var(--pm-primary-300); }
body.pm-body #order-standard_cart .order-summary .loader { color: #fff; }

/* view cart */
body.pm-body #order-standard_cart .view-cart-items-header {
    background: rgba(2, 6, 23, .5);
    color: var(--pm-muted);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius) var(--pm-radius) 0 0;
}
body.pm-body #order-standard_cart .view-cart-items {
    border: 1px solid var(--pm-border);
    border-top: 0;
    border-radius: 0 0 var(--pm-radius) var(--pm-radius);
    overflow: hidden;
}
body.pm-body #order-standard_cart .view-cart-items .item {
    background: rgba(30, 41, 59, .3);
    border-bottom: 1px solid var(--pm-border);
    color: var(--pm-text-2);
}
body.pm-body #order-standard_cart .view-cart-items .item:nth-child(even) { background: rgba(30, 41, 59, .18); }
body.pm-body #order-standard_cart .view-cart-items .item-title { color: #fff; }
body.pm-body #order-standard_cart .view-cart-items .item-group, body.pm-body #order-standard_cart .view-cart-items .item-domain { color: var(--pm-muted); }
body.pm-body #order-standard_cart .view-cart-items .item-price span:first-child { color: #fff; }
body.pm-body #order-standard_cart .view-cart-items .btn-remove-from-cart { color: var(--pm-danger); background: transparent; border: 0; }
body.pm-body #order-standard_cart .empty-cart { color: var(--pm-muted); }
body.pm-body #order-standard_cart .view-cart-empty { color: var(--pm-muted); background: transparent; }
body.pm-body #order-standard_cart .view-cart-tabs .nav-tabs { border-bottom-color: var(--pm-border); }
body.pm-body #order-standard_cart .view-cart-tabs .tab-content {
    background: rgba(2, 6, 23, .3);
    border: 1px solid var(--pm-border);
    border-top: 0;
    border-radius: 0 0 var(--pm-radius) var(--pm-radius);
    padding: 16px;
}

/* checkout */
body.pm-body #order-standard_cart .already-registered { color: var(--pm-text-2); background: rgba(255, 255, 255, .03); border: 1px solid var(--pm-border); border-radius: var(--pm-radius); }
body.pm-body #order-standard_cart .account-select-container .account {
    background: rgba(30, 41, 59, .3);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
    color: var(--pm-text-2);
}
body.pm-body #order-standard_cart .account-select-container .account.active { border-color: var(--pm-primary); background: rgba(30, 58, 138, .3); }
body.pm-body #order-standard_cart .cc-input-container,
body.pm-body #order-standard_cart .apply-credit-container,
body.pm-body #order-standard_cart .marketing-email-optin {
    background: rgba(2, 6, 23, .3);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
    color: var(--pm-text-2);
}
body.pm-body #order-standard_cart .checkout-security-msg { color: var(--pm-muted); background: transparent; }
body.pm-body #order-standard_cart .btn-checkout { font-size: 1rem; padding: 12px 28px; box-shadow: var(--pm-glow); }
body.pm-body #order-standard_cart .payment-methods label, body.pm-body #order-standard_cart .radio-inline { color: var(--pm-text-2); }

/* domains */
body.pm-body #order-standard_cart .domain-selection-options .option {
    background: rgba(30, 41, 59, .3);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
    color: var(--pm-text-2);
}
body.pm-body #order-standard_cart .domain-selection-options .option-selected { background: rgba(30, 58, 138, .35); border-color: var(--pm-primary); }
body.pm-body #order-standard_cart .domain-checker-container { padding: 24px; }
body.pm-body #order-standard_cart .domain-checker-bg { background: none; }
body.pm-body #order-standard_cart .domain-lookup-result, body.pm-body #order-standard_cart .spotlight-tlds .spotlight-tld,
body.pm-body #order-standard_cart .suggested-domains, body.pm-body #order-standard_cart .domain-pricing .tld-pricing-header div {
    background: rgba(30, 41, 59, .35);
    border-color: var(--pm-border);
    color: var(--pm-text-2);
}
body.pm-body #order-standard_cart .suggested-domains .panel-heading { background: rgba(2, 6, 23, .5); color: #fff; }
body.pm-body #order-standard_cart .suggested-domains .list-group-item { border-color: var(--pm-border); }
body.pm-body #order-standard_cart .domain-lookup-result .domain-available { color: var(--pm-success); }
body.pm-body #order-standard_cart .domain-lookup-result .domain-unavailable { color: var(--pm-danger); }
body.pm-body #order-standard_cart .tld-filters a { background: rgba(255, 255, 255, .05); color: var(--pm-text-2); border-radius: 999px; }
body.pm-body #order-standard_cart .tld-filters a.label-success { background: var(--pm-primary-600); color: #fff; }
body.pm-body #order-standard_cart .domain-pricing .tld-row { border-color: var(--pm-border); }
body.pm-body #order-standard_cart .domain-pricing .tld-row.highlighted { background: rgba(30, 58, 138, .3); }

/* order complete */
body.pm-body #order-standard_cart .order-confirmation { color: #fff; background: rgba(30, 58, 138, .3); border: 1px solid rgba(59, 130, 246, .35); border-radius: var(--pm-radius); }
body.pm-body #order-standard_cart .order-confirmation span { color: var(--pm-primary-300); }

/* store landing pages (/store/...) share the same product grid */
body.pm-body .landing-page, body.pm-body .landing-page .hero { background: transparent; color: var(--pm-text); }

/* ---- remaining Standard Cart light rules (harness/audit of standard_cart/css/style.css) ---- */
body.pm-body #order-standard_cart .field,
body.pm-body #order-standard_cart .form-control {
    color: var(--pm-text);
    background-color: var(--pm-input-bg);
    border: 1px solid var(--pm-border);
    border-radius: 10px;
    box-shadow: none;
}
body.pm-body #order-standard_cart .form-control:focus,
body.pm-body #order-standard_cart .field:focus { border-color: var(--pm-primary); box-shadow: var(--pm-ring); }
body.pm-body #order-standard_cart .field[disabled], body.pm-body #order-standard_cart .field[readonly],
body.pm-body #order-standard_cart .form-control[disabled], body.pm-body #order-standard_cart .form-control[readonly] { background-color: rgba(51, 65, 85, .25); color: var(--pm-muted); }
body.pm-body #order-standard_cart .panel-addon .panel-body label { color: var(--pm-text-2); }
body.pm-body #order-standard_cart .order-summary .summary-totals,
body.pm-body #order-standard_cart .order-summary .subtotal,
body.pm-body #order-standard_cart .order-summary .bordered-totals { border-color: var(--pm-border); color: var(--pm-text-2); }
body.pm-body #order-standard_cart .order-summary .btn-continue-shopping { color: var(--pm-primary-300); }
body.pm-body #order-standard_cart .view-cart-items .item-domain { color: var(--pm-muted); }
body.pm-body #order-standard_cart .btn-remove-from-cart:hover { color: #fff; }
body.pm-body #order-standard_cart .view-cart-tabs .nav-tabs a { color: var(--pm-muted); background: rgba(255, 255, 255, .03); border-color: var(--pm-border); }
body.pm-body #order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"],
body.pm-body #order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"],
body.pm-body #order-standard_cart .view-cart-tabs .nav-tabs a.active { color: #fff; background: rgba(37, 99, 235, .3); border-color: var(--pm-border); }
body.pm-body #order-standard_cart .view-cart-promotion-code,
body.pm-body #order-standard_cart .view-cart-gateway-checkout { background: rgba(2, 6, 23, .3); border: 1px solid var(--pm-border); border-radius: var(--pm-radius); color: var(--pm-text-2); }
body.pm-body #order-standard_cart .btn-link { color: var(--pm-primary-400) !important; }
body.pm-body #order-standard_cart .empty-cart .btn { color: var(--pm-danger) !important; background: transparent; border: 0; }
body.pm-body #order-standard_cart .domain-checker-advanced .multiselect,
body.pm-body #order-standard_cart .domain-checker-advanced label { color: var(--pm-text-2); background: var(--pm-input-bg); border-color: var(--pm-border); }
body.pm-body #order-standard_cart .domain-checker-available, body.pm-body .domain-checker-available { color: var(--pm-success); }
body.pm-body #order-standard_cart .transfer-eligible { color: var(--pm-success); }
body.pm-body #order-standard_cart .transfer-not-eligible { color: var(--pm-danger); }
body.pm-body div.domainresults div:not(.btn-group) { background: transparent; border-color: var(--pm-border); color: var(--pm-text-2); }
body.pm-body .domain-checker-container .input-group-box { background: rgba(2, 6, 23, .45); border: 1px solid var(--pm-border); border-radius: var(--pm-radius); }
body.pm-body .spotlight-tlds, body.pm-body .spotlight-tld { background: rgba(30, 41, 59, .35); border-color: var(--pm-border); color: var(--pm-text-2); }
body.pm-body .spotlight-tld-hot, body.pm-body .suggested-domains .promo.hot { background: linear-gradient(to left, #dc2626, #f97316); color: #fff; }
body.pm-body .suggested-domains .domain-lookup-suggestions-message,
body.pm-body .suggested-domains .domain-lookup-suggestions-loader { background: rgba(2, 6, 23, .4); color: var(--pm-muted); }
body.pm-body .domain-promo-box { background: var(--pm-card-grad); border: 1px solid var(--pm-border); border-radius: var(--pm-radius); color: var(--pm-text-2); }
body.pm-body .form-control.domain-renewals-filter, body.pm-body .form-control.service-renewals-filter { background: var(--pm-input-bg); border-color: var(--pm-border); color: var(--pm-text); }
body.pm-body .domain-renewals, body.pm-body .service-renewals, body.pm-body .addon-renewals > div { border-color: var(--pm-border); background: transparent; }
body.pm-body .domain-renewals .domain-renewal, body.pm-body .service-renewals .service-renewal,
body.pm-body .addon-renewals .service-renewal { background: rgba(30, 41, 59, .3); border-color: var(--pm-border); color: var(--pm-text-2); }
body.pm-body .domain-renewals .domain-renewal:nth-child(even), body.pm-body .service-renewals .service-renewal:nth-child(even) { background: rgba(30, 41, 59, .18); }
body.pm-body #order-standard_cart .addon-promo-container, body.pm-body #order-standard_cart .mc-promo,
body.pm-body #order-standard_cart .mc-promo .body { background: rgba(30, 41, 59, .35); border-color: var(--pm-border); color: var(--pm-text-2); }
body.pm-body #order-standard_cart .mc-promo .expander, body.pm-body #order-standard_cart .mc-promo .price { color: var(--pm-primary-300); }
body.pm-body #order-standard_cart .default-captcha { background: rgba(2, 6, 23, .3); border-color: var(--pm-border); color: var(--pm-text-2); }
body.pm-body #order-standard_cart .account-select-container { border-color: var(--pm-border); }
body.pm-body #order-standard_cart .account-select-container div.account { background: rgba(30, 41, 59, .3); border-color: var(--pm-border); color: var(--pm-text-2); }
body.pm-body #order-standard_cart .account-select-container div.account.active { background: rgba(30, 58, 138, .35); border-color: var(--pm-primary); }
body.pm-body #order-standard_cart .products .product header span { color: #fff; }
body.pm-body #order-standard_cart .order-summary .btn-checkout { display: flex; width: 100%; }
body.pm-body #order-standard_cart .order-summary .btn-continue-shopping { display: block; text-align: center; margin-top: 8px; }

/* ---- 06-rtl.css ---- */
/* =====================================================================
   RTL fixes for Twenty-One (Bootstrap 4 has no native RTL).
   Scoped to html[dir="rtl"], which header.tpl sets for Farsi/Arabic/Hebrew.
   Directional utilities (ml-*, text-right, float-left ...) are generated
   by build.mjs and appended after this file.
   ===================================================================== */
[dir="rtl"] body { text-align: right; }
[dir="rtl"] .pm-body input[type="email"], [dir="rtl"] .pm-body input[type="url"],
[dir="rtl"] .pm-body input[dir="ltr"] { text-align: left; }
[dir="rtl"] .pm-body input[type="email"]::placeholder,
[dir="rtl"] .pm-body input[dir="ltr"]::placeholder { text-align: right; }

/* lists */
[dir="rtl"] .pm-body ul, [dir="rtl"] .pm-body ol { padding-right: 2rem; padding-left: 0; }
[dir="rtl"] .pm-body .list-unstyled, [dir="rtl"] .pm-body .list-inline,
[dir="rtl"] .pm-body .navbar-nav, [dir="rtl"] .pm-body .nav, [dir="rtl"] .pm-body .pagination,
[dir="rtl"] .pm-body .list-group,
[dir="rtl"] .pm-body .pm-footer-links, [dir="rtl"] .pm-body .client-alerts,
[dir="rtl"] .pm-body .pm-auth-features, [dir="rtl"] .pm-body .dropdown-menu { padding-right: 0; }
[dir="rtl"] .pm-body .list-inline-item:not(:last-child) { margin-right: 0; margin-left: .5rem; }

/* breadcrumb separator */
[dir="rtl"] .pm-body .breadcrumb-item + .breadcrumb-item { padding-left: 0; padding-right: .5rem; }
[dir="rtl"] .pm-body .breadcrumb-item + .breadcrumb-item::before { float: right; padding-right: 0; padding-left: .5rem; content: "‹"; }

/* dropdowns */
[dir="rtl"] .pm-body .dropdown-menu { right: 0; left: auto; text-align: right; }
[dir="rtl"] .pm-body .dropdown-menu-right { right: auto; left: 0; }
[dir="rtl"] .pm-body .dropdown-toggle::after { margin-left: 0; margin-right: .255em; }

/* input groups: swap rounded corners */
[dir="rtl"] .pm-body .input-group > .form-control:not(:last-child),
[dir="rtl"] .pm-body .input-group > .custom-select:not(:last-child),
[dir="rtl"] .pm-body .input-group > .input-group-prepend > .btn,
[dir="rtl"] .pm-body .input-group > .input-group-prepend > .input-group-text,
[dir="rtl"] .pm-body .input-group > .input-group-append:not(:last-child) > .btn,
[dir="rtl"] .pm-body .input-group > .input-group-append:not(:last-child) > .input-group-text {
    border-radius: 0 10px 10px 0;
}
[dir="rtl"] .pm-body .input-group > .form-control:not(:first-child),
[dir="rtl"] .pm-body .input-group > .custom-select:not(:first-child),
[dir="rtl"] .pm-body .input-group > .input-group-append > .btn,
[dir="rtl"] .pm-body .input-group > .input-group-append > .input-group-text,
[dir="rtl"] .pm-body .input-group > .input-group-prepend:not(:first-child) > .btn,
[dir="rtl"] .pm-body .input-group > .input-group-prepend:not(:first-child) > .input-group-text {
    border-radius: 10px 0 0 10px;
}
[dir="rtl"] .pm-body .input-group > .form-control:not(:first-child):not(:last-child),
[dir="rtl"] .pm-body .input-group > .custom-select:not(:first-child):not(:last-child) { border-radius: 0; }
[dir="rtl"] .pm-body .input-group-prepend { margin-right: 0; margin-left: -1px; }
[dir="rtl"] .pm-body .input-group-append { margin-left: 0; margin-right: -1px; }

/* button groups */
[dir="rtl"] .pm-body .btn-group > .btn:not(:last-child):not(.dropdown-toggle) { border-radius: 0 10px 10px 0; }
[dir="rtl"] .pm-body .btn-group > .btn:not(:first-child) { border-radius: 10px 0 0 10px; margin-left: 0; margin-right: -1px; }
[dir="rtl"] .pm-body .btn-group > .btn:not(:first-child):not(:last-child) { border-radius: 0; }

/* custom controls */
[dir="rtl"] .pm-body .custom-control { padding-left: 0; padding-right: 1.5rem; }
[dir="rtl"] .pm-body .custom-control-label::before,
[dir="rtl"] .pm-body .custom-control-label::after { left: auto; right: -1.5rem; }
[dir="rtl"] .pm-body .custom-switch { padding-right: 2.25rem; }
[dir="rtl"] .pm-body .custom-switch .custom-control-label::before { right: -2.25rem; }
[dir="rtl"] .pm-body .custom-switch .custom-control-label::after { right: calc(-2.25rem + 2px); }
[dir="rtl"] .pm-body .form-check { padding-left: 0; padding-right: 1.25rem; }
[dir="rtl"] .pm-body .form-check-input { margin-left: 0; margin-right: -1.25rem; }
[dir="rtl"] .pm-body .form-check-inline { margin-right: 0; margin-left: .75rem; }
[dir="rtl"] .pm-body .form-check-inline .form-check-input { margin-right: 0; margin-left: .3125rem; }
[dir="rtl"] .pm-body .custom-select { padding-right: .9rem; padding-left: 2rem; background-position: left .75rem center; }
[dir="rtl"] .pm-body .custom-file-label::after { right: auto; left: 0; border-left: 0; border-right: inherit; }

/* modals / alerts */
[dir="rtl"] .pm-body .modal-header .close { margin: -1rem auto -1rem -1rem; }
[dir="rtl"] .pm-body .modal-localisation .close { float: left; }
[dir="rtl"] .pm-body .modal-footer > :not(:first-child) { margin-left: 0; margin-right: .25rem; }
[dir="rtl"] .pm-body .alert-dismissible { padding-right: 18px; padding-left: 4rem; }
[dir="rtl"] .pm-body .alert-dismissible .close { right: auto; left: 0; }

/* tables */
[dir="rtl"] .pm-body .table th, [dir="rtl"] .pm-body .table td { text-align: right; }
[dir="rtl"] .pm-body .table th.text-center, [dir="rtl"] .pm-body .table td.text-center { text-align: center; }
[dir="rtl"] .pm-body .dataTables_wrapper .dataTables_filter { text-align: left; }
[dir="rtl"] .pm-body .dataTables_wrapper .dataTables_filter input { margin-left: 0; margin-right: .5em; }
[dir="rtl"] .pm-body .dataTables_wrapper .dataTables_info { text-align: right; }
[dir="rtl"] .pm-body table.dataTable thead .sorting::after,
[dir="rtl"] .pm-body table.dataTable thead .sorting_asc::after,
[dir="rtl"] .pm-body table.dataTable thead .sorting_desc::after { right: auto; left: 8px; }
[dir="rtl"] .pm-body table.dataTable thead > tr > th.sorting,
[dir="rtl"] .pm-body table.dataTable thead > tr > th.sorting_asc,
[dir="rtl"] .pm-body table.dataTable thead > tr > th.sorting_desc { padding-right: 16px; padding-left: 30px; }

/* sidebar */
[dir="rtl"] .pm-body .card-sidebar .card-minimise { float: left !important; }
[dir="rtl"] .pm-body .list-group-item .badge.float-right,
[dir="rtl"] .pm-body .list-group-item .badge.pull-right { float: left !important; }

/* popovers */
[dir="rtl"] .pm-body .popover { text-align: right; }

/* order form */
[dir="rtl"] body.pm-body #order-standard_cart { text-align: right; }
[dir="rtl"] body.pm-body #order-standard_cart .text-right { text-align: left !important; }
[dir="rtl"] body.pm-body #order-standard_cart .text-left { text-align: right !important; }
[dir="rtl"] body.pm-body #order-standard_cart .pull-right, [dir="rtl"] body.pm-body #order-standard_cart .float-right { float: left !important; }
[dir="rtl"] body.pm-body #order-standard_cart .pull-left, [dir="rtl"] body.pm-body #order-standard_cart .float-left { float: right !important; }
[dir="rtl"] body.pm-body #order-standard_cart .summary-container .float-right { float: left !important; }
[dir="rtl"] body.pm-body #order-standard_cart .prepend-icon .field-icon { left: auto; right: 0; }
[dir="rtl"] body.pm-body #order-standard_cart .prepend-icon .field { padding-left: 12px; padding-right: 40px; }
[dir="rtl"] body.pm-body #order-standard_cart .view-cart-items .item-price { text-align: left; }
[dir="rtl"] body.pm-body #order-standard_cart .products .product header span { float: none; }
[dir="rtl"] body.pm-body #order-standard_cart .products .product header .qty { float: left; }

/* numbers, IPs, hostnames stay LTR inside RTL text */
[dir="rtl"] .pm-body .text-domain, [dir="rtl"] .pm-body .ip, [dir="rtl"] .pm-body code { unicode-bidi: plaintext; }

/* Twenty-One ticket list link and sidebar icon spacing */
[dir="rtl"] .pm-body .table-list > tbody > tr > td a.border-left { padding-left: 0; padding-right: 20px; }
[dir="rtl"] .pm-body .sidebar .sidebar-menu-item-icon-wrapper { margin-right: 0; margin-left: .25rem; }
[dir="rtl"] .pm-body .dataTables_wrapper .dataTables_filter,
[dir="rtl"] .pm-body .dataTables_wrapper .dataTables_paginate { float: left; }
[dir="rtl"] .pm-body .dataTables_wrapper .dataTables_length { float: right; }
[dir="rtl"] .pm-body .view-ticket .posted-by .requestor-badge { margin-left: 0; }

/* ---- 07-twentyone.css ---- */
/* =====================================================================
   Overrides for Twenty-One's own theme.css rules that paint light
   surfaces (found with harness/audit-css.mjs). Same specificity + later
   load order, or one step higher where Twenty-One uses element selectors.
   ===================================================================== */

/* chrome */
.pm-body .primary-bg-color, body.pm-body.primary-bg-color { background-color: var(--pm-bg-1); }
header.header.pm-header { background-color: transparent; }
.pm-body .master-breadcrumb { background-color: transparent; }
footer.footer.pm-footer { margin: 0; padding: 0 0 32px; color: var(--pm-muted); font-size: inherit; }
footer.footer.pm-footer .btn { line-height: 1.6; padding: 5px 12px; }
.pm-body a:not(.btn):not(.dropdown-item):not(.list-group-item):not(.nav-link):not(.page-link):hover { color: var(--pm-primary-300); }

/* sidebar */
.pm-body .sidebar .list-group-item { border-color: var(--pm-border); }
.pm-body .sidebar .list-group-item .badge {
    width: auto;
    min-width: 26px;
    justify-content: center;
    padding: 2px 8px;
    background: rgba(59, 130, 246, .15);
    color: var(--pm-primary-300);
    border: 1px solid rgba(59, 130, 246, .25);
}
.pm-body .sidebar .list-group-item.active,
.pm-body .sidebar .list-group-item.active:hover,
.pm-body .sidebar .list-group-item.active:focus {
    color: #fff;
    background: linear-gradient(to left, rgba(37, 99, 235, .35), rgba(37, 99, 235, .12));
    border-color: var(--pm-border);
}
.pm-body .sidebar .list-group-item > i.far.fa-circle,
.pm-body .sidebar .list-group-item .fa-circle,
.pm-body .sidebar .list-group-item .fa-dot-circle { color: var(--pm-faint); }
.pm-body .sidebar .list-group-item.active .fa-dot-circle { color: var(--pm-primary-400); }
.pm-body .sidebar .sidebar-menu-item-wrapper { align-items: center; gap: 8px; }
.pm-body .sidebar .sidebar-menu-item-icon-wrapper { margin: 0; width: 18px; text-align: center; }
.pm-body .sidebar .sidebar-menu-item-label { flex: 1 1 auto; min-width: 0; }
.pm-body .sidebar .sidebar-menu-item-badge { margin: 0; }
.pm-body .sidebar .card-title .badge { background: rgba(59, 130, 246, .15); color: var(--pm-primary-300); }
.pm-body .card-sidebar .card-header { cursor: pointer; }
.pm-body .card-sidebar .ticket-info .title { color: var(--pm-muted); font-size: .8rem; }
/* sidebar "mobile select" variant (bg-light card with a <select>) */
.pm-body .sidebar .card.bg-light { background: var(--pm-card-grad) !important; }

/* labels Twenty-One colours itself */
.pm-body .label-warning, .pm-body .label-danger { color: inherit; }
.pm-body .status-custom { color: #fff !important; }
.pm-body .requestor-badge, .pm-body [class*="requestor-type-"] {
    background: rgba(148, 163, 184, .14);
    color: var(--pm-text-2);
    border: 1px solid rgba(148, 163, 184, .25);
}
.pm-body .requestor-type-operator, .pm-body .requestor-type-staff { background: rgba(30, 58, 138, .5); color: var(--pm-primary-300); border-color: rgba(59, 130, 246, .3); }
.pm-body .requestor-type-owner { background: var(--pm-success-soft); color: var(--pm-success); border-color: rgba(52, 211, 153, .3); }

/* data tables */
.pm-body .dataTables_wrapper table.table-list {
    margin: 0 !important;
    border: 0;
    border-top: 1px solid var(--pm-border);
    border-bottom: 1px solid var(--pm-border);
    border-radius: 0;
}
.pm-body .dataTables_wrapper table.table-list thead th { border-bottom: 1px solid var(--pm-border) !important; font-weight: 600; }
.pm-body .dataTables_wrapper table.table-list thead th.sorting_asc,
.pm-body .dataTables_wrapper table.table-list thead th.sorting_desc { background-color: rgba(30, 58, 138, .35) !important; color: #fff; }
.pm-body table.table-list thead th { color: var(--pm-muted); background-color: rgba(2, 6, 23, .35); border-bottom-color: var(--pm-border); }
.pm-body .table-list > tbody > tr > td { background-color: transparent; }
.pm-body .table-list > tbody > tr:hover > td { background-color: rgba(59, 130, 246, .06); }
.pm-body .table-list > tbody > tr > td a.border-left { border-color: var(--pm-border) !important; color: var(--pm-text); }
.pm-body .table-list .ticket-number { color: var(--pm-primary-400); font-weight: 600; margin-inline-end: 6px; }
.pm-body .table-list .ticket-subject.unread { color: #fff; font-weight: 700; }
.pm-body .table-list .ticket-subject.unread::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--pm-primary); margin-inline-end: 6px; vertical-align: middle; }
.pm-body .table-list td a:not(.btn) { color: var(--pm-primary-400); }
.pm-body .table-list td strong { color: #fff; }
.pm-body .dataTables_wrapper .listtable { padding: 0; }
.pm-body .dataTables_wrapper .dataTables_filter label .form-control,
.pm-body .dataTables_wrapper .dataTables_filter input {
    background: var(--pm-input-bg) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3e%3ccircle cx='11' cy='11' r='7'/%3e%3cpath d='M21 21l-4.3-4.3'/%3e%3c/svg%3e") no-repeat right 12px center;
    background-size: 16px;
    padding: 8px 40px 8px 12px !important;
    min-width: 240px;
    border-radius: 10px;
}
[dir="ltr"] .pm-body .dataTables_wrapper .dataTables_filter input { background-position: left 12px center; padding: 8px 12px 8px 40px !important; }
.pm-body .dataTables_wrapper .dataTables_length select { padding: 4px 26px 4px 10px; height: auto; }
.pm-body .dataTables_wrapper .dataTables_paginate { padding: 12px 16px; }
.pm-body .pagination > li > a, .pm-body .pagination > li > span { color: var(--pm-text-2); }
.pm-body .pagination > .active > a, .pm-body .pagination > .active > span,
.pm-body .page-item.active .page-link { background: var(--pm-grad); border-color: transparent; color: #fff; }
.pm-body table.table-solid-bottom-border-light-gray { border-bottom-color: var(--pm-border); }
.pm-body .table-container #tableLoading { color: var(--pm-muted); padding: 24px 0; }

/* dashboard */
.pm-body .tiles .tile, .pm-body .tiles .tile:hover { border-color: var(--pm-border); }
.pm-body .tiles .tile:hover { border-color: rgba(96, 165, 250, .35); }
.pm-body .client-home-cards .card-header { background: rgba(255, 255, 255, .02); border-bottom-color: var(--pm-border); }
.pm-body .client-home-cards .card-header .btn { color: var(--pm-text-2) !important; background: rgba(255, 255, 255, .06) !important; border: 1px solid rgba(255, 255, 255, .12); }
.pm-body .client-home-cards .card-header .btn:hover { color: #fff !important; background: rgba(59, 130, 246, .2) !important; }
.pm-body .client-home-cards .list-group,
.pm-body .client-home-cards .list-group .list-group-item { background: transparent; border-color: var(--pm-border); }
.pm-body .client-home-cards .card-footer { border-top: 1px solid var(--pm-border); }
.pm-body .client-home-cards .card-footer:empty { display: none; }
.pm-body .client-home-cards .text-last-updated { color: var(--pm-faint); font-size: .78rem; }
.pm-body .action-icon-btns a, .pm-body .action-icon-btns a:hover { background: var(--pm-card-grad); color: var(--pm-text-2); }
.pm-body .home-domain-search .input-group-wrapper { background: var(--pm-input-bg); border: 1px solid var(--pm-border); border-radius: var(--pm-radius); }
.pm-body .home-domain-search .input-group-wrapper .advanced-input label { color: var(--pm-muted); }

/* verification banners */
.pm-body .verification-banner {
    color: var(--pm-text);
    background: rgba(245, 158, 11, .1);
    border-bottom: 1px solid rgba(251, 191, 36, .25);
    padding: 12px 0;
}
.pm-body .verification-banner .btn { padding: 4px 12px; }

/* responsive tabs used on product details / store */
.pm-body .responsive-tabs-sm { border-color: var(--pm-border); }
.pm-body .responsive-tabs-sm .nav-item { border-color: var(--pm-border); background: transparent; }
.pm-body .responsive-tabs-sm .nav-item a { color: var(--pm-muted); }
.pm-body .responsive-tabs-sm .nav-item a:hover { color: #fff; background: rgba(255, 255, 255, .04); }
.pm-body .responsive-tabs-sm .nav-item a.active { color: #fff; background: rgba(37, 99, 235, .25); border-color: var(--pm-border); }
.pm-body .responsive-tabs-sm-connector .channel,
.pm-body .responsive-tabs-sm-connector .bottom-border { background: var(--pm-border); border-color: var(--pm-border); }

/* product details */
.pm-body div.product-details div.product-icon { background: rgba(30, 58, 138, .25); border: 1px solid rgba(59, 130, 246, .25); color: var(--pm-primary-300); }
.pm-body div.product-details-tab-container { background: var(--pm-card-grad); border-color: var(--pm-border); color: var(--pm-text-2); }
.pm-body .product-details .text-muted, .pm-body .product-details-tab-container .text-muted { color: var(--pm-muted) !important; }
.pm-body .product-details-tab-container h4 { color: var(--pm-muted); font-size: .85rem; font-weight: 500; margin-bottom: 2px; }
.pm-body .product-details-tab-container .row > div { margin-bottom: 14px; }
.pm-body .product-status-pending { color: var(--pm-warning); }

/* ticket view */
.pm-body .view-ticket .card-body { border-color: var(--pm-border); background: transparent; }
.pm-body .view-ticket > .card-body:first-child { background: rgba(255, 255, 255, .02); border-bottom: 1px solid var(--pm-border); }
.pm-body .view-ticket > .card-body + .card-body { padding-top: 0; }
.pm-body .view-ticket > .card-body:nth-child(2) { padding-top: 20px; }
.pm-body .view-ticket .posted-by { background: rgba(255, 255, 255, .03); border-color: var(--pm-border); color: var(--pm-muted); display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.pm-body .view-ticket .posted-by .requestor-badge { margin-inline-start: auto; float: none !important; }
.pm-body .view-ticket .attachments { background: rgba(2, 6, 23, .3); border-color: var(--pm-border); }
.pm-body .view-ticket .attachment-list { padding: 0; margin: 10px 0 0; list-style: none; display: flex; flex-wrap: wrap; gap: 10px; }
.pm-body .view-ticket .attachment-list li { float: none; margin: 0; }
.pm-body .view-ticket .attachment-list li span {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid var(--pm-border);
    border-radius: 10px;
    padding: 8px 12px;
    width: auto;
    height: auto;
}
.pm-body .view-ticket .attachment-list li figure {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin: 0;
    background: rgba(30, 58, 138, .5);
    border: 0;
    border-radius: 8px;
    color: var(--pm-primary-300);
    font-size: 16px;
}
.pm-body .view-ticket .attachment-list li .caption { padding: 0; color: var(--pm-text-2); font-size: .82rem; }
.pm-body .ticket-reply .rating span.star::before,
.pm-body .ticket-reply .rating-done span.star::before { color: var(--pm-faint); }
.pm-body .ticket-reply .rating span.star:hover::before,
.pm-body .ticket-reply .rating span.star:hover ~ span.star::before,
.pm-body .ticket-reply .rating-done span.star.active::before { color: var(--pm-warning); }
.pm-body .ticket-reply .rating-done .rated { color: var(--pm-muted); }
.pm-body .ticketfeedbackstaffcont { background: rgba(255, 255, 255, .03); border: 1px solid var(--pm-border); border-radius: var(--pm-radius); }
.pm-body .ticket-actions .btn { margin-inline-start: 4px; }

/* markdown editor + rendered markdown */
.pm-body .md-editor,
.pm-body div.md-editor.active { border: 1px solid var(--pm-border); background: var(--pm-input-bg); border-radius: var(--pm-radius); }
.pm-body div.md-editor.active { border-color: var(--pm-primary); box-shadow: var(--pm-ring); }
.pm-body .md-editor > .btn-toolbar { background: rgba(255, 255, 255, .03); border-bottom: 1px solid var(--pm-border); padding: 6px; }
.pm-body .md-editor > .btn-toolbar .btn { color: var(--pm-muted) !important; background: transparent; border-color: transparent; padding: 4px 8px; }
.pm-body .md-editor > .btn-toolbar .btn:hover { color: #fff !important; background: rgba(255, 255, 255, .06); }
.pm-body .md-editor > .btn-toolbar .btn-primary { color: #fff !important; background: var(--pm-grad); }
.pm-body .md-editor > textarea.markdown-editor,
.pm-body .md-editor > .md-preview { background: transparent; color: var(--pm-text); border: 0; padding: 12px; }
.pm-body .md-editor .md-footer, .pm-body .markdown-editor-status { background: rgba(255, 255, 255, .02); color: var(--pm-muted); border-color: var(--pm-border); }
.pm-body .md-preview h1, .pm-body .markdown-content h1, .pm-body .md-preview h2, .pm-body .markdown-content h2,
.pm-body .md-preview h3, .pm-body .markdown-content h3, .pm-body .md-preview h4, .pm-body .markdown-content h4 { color: #fff; border-color: var(--pm-border); }
.pm-body .md-preview blockquote, .pm-body .markdown-content blockquote { color: var(--pm-text-2); border-color: var(--pm-primary); background: rgba(255, 255, 255, .03); }
.pm-body .md-preview table > thead > tr > th, .pm-body .markdown-content table > thead > tr > th { background: rgba(2, 6, 23, .4); color: var(--pm-text); border-color: var(--pm-border); }
.pm-body .md-preview table > tbody > tr > td, .pm-body .markdown-content table > tbody > tr > td { border-color: var(--pm-border); }

/* file inputs */
.pm-body .custom-file-label { color: var(--pm-muted); background: var(--pm-input-bg); border-color: var(--pm-border); border-radius: 10px; }
.pm-body .custom-file-label::after { color: var(--pm-text-2); background: rgba(255, 255, 255, .06); border-color: var(--pm-border); content: "انتخاب"; }
[dir="ltr"] .pm-body .custom-file-label::after { content: "Browse"; }
.pm-body .custom-file-input:focus ~ .custom-file-label { border-color: var(--pm-primary); box-shadow: var(--pm-ring); }

/* knowledgebase / announcements */
.pm-body .kb-category a, .pm-body .kb-article-item { color: var(--pm-text-2); border-radius: 10px; }
.pm-body .kb-category a:hover, .pm-body .kb-article-item:hover { background: rgba(59, 130, 246, .08); color: #fff; }
.pm-body .kb-article-item small { color: var(--pm-muted); }
.pm-body .announcements .announcement article {
    background: rgba(255, 255, 255, .03);
    border: 1px solid var(--pm-border);
    border-inline-start: 3px solid var(--pm-primary);
    border-radius: var(--pm-radius);
    color: var(--pm-text-2);
}

/* registration / checkout forms rendered by Twenty-One */
.pm-body #registration .sub-heading { border-color: var(--pm-border); }
.pm-body #registration .sub-heading span { background: var(--pm-bg-1); color: var(--pm-primary-300); border: 1px solid rgba(59, 130, 246, .25); border-radius: 999px; padding: 2px 14px; }
.pm-body #registration .field, .pm-body #registration .form-control { color: var(--pm-text); background-color: var(--pm-input-bg); border-color: var(--pm-border); }
.pm-body #registration .form-control:focus { border-color: var(--pm-primary); }
.pm-body #registration .field[disabled], .pm-body #registration .field[readonly],
.pm-body #registration .form-control[disabled], .pm-body #registration .form-control[readonly] { background-color: rgba(51, 65, 85, .25); }
.pm-body .select-account, .pm-body .select-account a { background: transparent; color: var(--pm-text-2); border-color: var(--pm-border); }
.pm-body .select-account a:hover { background: rgba(59, 130, 246, .08); color: #fff; }
.pm-body .continue-container, .pm-body .invite-box { background: rgba(255, 255, 255, .03); border-color: var(--pm-border); color: var(--pm-text-2); }

/* upgrade page */
.pm-body .upgrade .product-to-be-upgraded { background: rgba(30, 58, 138, .2); border-color: var(--pm-border); color: var(--pm-text-2); }
.pm-body .upgrade .products .product { background: var(--pm-card-grad); border-color: var(--pm-border); color: var(--pm-text-2); border-radius: var(--pm-radius-lg); overflow: hidden; }
.pm-body .upgrade .products .product .current, .pm-body .upgrade .products .product .recommended { background: var(--pm-grad); color: #fff; }
.pm-body .upgrade .products .product ul, .pm-body .upgrade .products .product ul li { border-color: var(--pm-border); background: transparent; color: var(--pm-text-2); }
.pm-body .upgrade .products .product ul li span { color: #fff; }
.pm-body .upgrade .products .product .footer { background: rgba(2, 6, 23, .3); border-color: var(--pm-border); }
.pm-body .upgrade .products .fa-check { color: var(--pm-success); }

/* store (Twenty-One store/*.tpl) & domain pricing */
.pm-body .store-order-container .store-domain-tabs li a { color: var(--pm-muted); background: rgba(255, 255, 255, .03); border-color: var(--pm-border); }
.pm-body .store-order-container .store-domain-tabs li.active a { color: #fff; background: rgba(37, 99, 235, .3); }
.pm-body .store-order-container .store-domain-tab-content { background: rgba(2, 6, 23, .3); border-color: var(--pm-border); }
.pm-body .promo-container { background: var(--pm-card-grad); border-color: var(--pm-border); color: var(--pm-text-2); }
.pm-body .domain-pricing .tld-row { border-color: var(--pm-border); }
.pm-body .domain-pricing .tld-row.highlighted { background: rgba(30, 58, 138, .3); }
.pm-body .domain-pricing .tld-pricing-header div,
.pm-body .domain-pricing .tld-pricing-header div:nth-child(odd) { background: rgba(2, 6, 23, .5); color: var(--pm-text); }

/* misc */
.pm-body .invoice-summary-table td.total-row { background: rgba(2, 6, 23, .4); }
.pm-body .auth3d-area, .pm-body .submit-3d { background: var(--pm-surface-solid); color: var(--pm-text); }
.pm-body .valid-feedback { color: var(--pm-success); }
.pm-body .card .card-body > .card-title { font-size: 1.05rem; margin-bottom: 14px; }
.pm-body .view-filter-btns .list-group-item.active { color: #fff; }

/* Twenty-One paints these with !important, so we have to as well */
.pm-body .md-editor > .btn-toolbar { background-color: rgba(255, 255, 255, .03) !important; }
.pm-body .md-editor > textarea.markdown-editor,
.pm-body .md-editor > .md-preview {
    background-color: transparent !important;
    color: var(--pm-text) !important;
    border-top: 1px solid var(--pm-border) !important;
    border-bottom: 1px solid var(--pm-border) !important;
}
.pm-body .markdown-editor-status { color: var(--pm-faint); }

/* product status block: dark card, coloured status strip */
.pm-body .product-status,
.pm-body .product-status-active, .pm-body .product-status-pending, .pm-body .product-status-suspended,
.pm-body .product-status-terminated, .pm-body .product-status-cancelled, .pm-body .product-status-fraud {
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    overflow: hidden;
}
.pm-body div.product-details .product-status div.product-icon { background: transparent; border: 0; border-radius: 0; }
.pm-body .product-status .product-status-text { color: #fff; font-weight: 700; letter-spacing: 0; padding: 8px; }
.pm-body .product-status-active .product-status-text { background: linear-gradient(to left, rgba(16, 185, 129, .55), rgba(16, 185, 129, .3)); }
.pm-body .product-status-pending .product-status-text { background: linear-gradient(to left, rgba(245, 158, 11, .55), rgba(245, 158, 11, .3)); }
.pm-body .product-status-suspended .product-status-text { background: linear-gradient(to left, rgba(59, 130, 246, .55), rgba(59, 130, 246, .3)); }
.pm-body .product-status-terminated .product-status-text,
.pm-body .product-status-cancelled .product-status-text { background: rgba(148, 163, 184, .25); }
.pm-body .product-status-fraud .product-status-text { background: rgba(239, 68, 68, .45); }

/* bootstrap-switch: every handle variant */
.pm-body .bootstrap-switch { direction: ltr; border: 1px solid var(--pm-border); background: var(--pm-input-bg); border-radius: 999px; }
.pm-body .bootstrap-switch .bootstrap-switch-handle-on,
.pm-body .bootstrap-switch .bootstrap-switch-handle-off { font-family: var(--pm-font); font-weight: 600; }
.pm-body .bootstrap-switch .bootstrap-switch-handle-on[class*="bootstrap-switch-"] { background: var(--pm-grad); color: #fff; }
.pm-body .bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-success { background: linear-gradient(to right, #059669, #10b981); }
.pm-body .bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-danger { background: linear-gradient(to right, #dc2626, #ef4444); }
.pm-body .bootstrap-switch .bootstrap-switch-handle-off[class*="bootstrap-switch-"] { background: rgba(255, 255, 255, .05); color: var(--pm-muted); }
.pm-body .bootstrap-switch .bootstrap-switch-label { background: #cbd5e1; border-radius: 999px; }
.pm-body .bootstrap-switch.bootstrap-switch-focused { border-color: var(--pm-primary); box-shadow: var(--pm-ring); }
.pm-body .card-footer.pm-empty { display: none; }

/* more Twenty-One / Standard Cart rules that use !important */
.pm-body .responsive-tabs-sm .nav-item { border-bottom-color: var(--pm-border) !important; }
.pm-body .responsive-tabs-sm .nav-item a.active { background-color: rgba(37, 99, 235, .3) !important; color: #fff; }
.pm-body .client-home-cards .list-group { border-top-color: var(--pm-border) !important; border-bottom-color: var(--pm-border) !important; }
.pm-body a.bg-light:hover, .pm-body a.bg-light:focus, .pm-body button.bg-light:hover, .pm-body button.bg-light:focus { background-color: rgba(59, 130, 246, .12) !important; }
body.pm-body .form-control.domain-renewals-filter, body.pm-body .form-control.service-renewals-filter { background-color: var(--pm-input-bg) !important; }
@media (max-width: 767.98px) {
    .pm-body .responsive-tabs-sm { width: 100%; background: var(--pm-card-grad); border: 1px solid var(--pm-border); border-radius: var(--pm-radius-lg) var(--pm-radius-lg) 0 0; overflow: hidden; }
    .pm-body .responsive-tabs-sm-connector { display: none; }
    .pm-body .product-details .btn-block + .btn-block, .pm-body .product-details .btn-block { margin-bottom: 8px; }
    .pm-body .responsive-tabs-sm .nav-item { margin: 0 !important; }
    .pm-body .responsive-tabs-sm .nav-item a { border-radius: 0 !important; padding: 12px 16px; }
}

/* ---- 08-mobile.css ---- */
/* =====================================================================
   Mobile. Tables become labelled cards (labels come from pasargad.js,
   which copies each <th> into its cells' data-label).
   ===================================================================== */

@media (max-width: 991.98px) {
    .pm-body #main-body { padding: 12px 0 40px; }
    .pm-hero { padding: 24px 0 4px; }
    .pm-hero-welcome { padding: 28px 0 8px; }
    .pm-body .sidebar .card-sidebar { margin-bottom: 12px !important; }
}

@media (max-width: 767.98px) {
    .pm-body .card-body, .pm-body .panel-body { padding: 16px; }
    .pm-body .card-header { padding: 12px 16px; }
    .pm-body .master-breadcrumb .breadcrumb { font-size: .75rem; padding: 5px 12px; }
    .pm-hero p { font-size: .9rem; }
    .pm-hero-actions .btn { flex: 1 1 auto; }

    /* ---------- list tables as cards ---------- */
    .pm-body .table-container, .pm-body .table-responsive { overflow: visible; }
    .pm-body .table-list,
    .pm-body .table-list tbody,
    .pm-body .table-list tr,
    .pm-body .table-list td { display: block; width: 100% !important; }
    .pm-body .table-list thead { display: none; }
    .pm-body .dataTables_wrapper table.table-list { border: 0; }
    .pm-body .table-list > tbody { padding: 4px 12px 0; }
    .pm-body .table-list > tbody > tr {
        position: relative;
        margin-bottom: 12px;
        padding: 12px 14px;
        background: rgba(30, 41, 59, .4);
        border: 1px solid var(--pm-border);
        border-radius: var(--pm-radius);
    }
    .pm-body .table-list > tbody > tr:hover > td { background: transparent; }
    .pm-body .table-list > tbody > tr:active { border-color: var(--pm-border-accent); }
    .pm-body .table-list > tbody > tr > td {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 6px 0 !important;
        border: 0 !important;
        text-align: start !important;
        font-size: .875rem;
    }
    .pm-body .table-list > tbody > tr > td::before {
        content: attr(data-label);
        flex-shrink: 0;
        color: var(--pm-muted);
        font-size: .78rem;
    }
    .pm-body .table-list > tbody > tr > td:not([data-label])::before,
    .pm-body .table-list > tbody > tr > td[data-label=""]::before { content: none; }
    .pm-body .table-list > tbody > tr > td > * { text-align: end; }
    .pm-body .table-list > tbody > tr > td.pm-td-main {
        display: block;
        padding: 0 0 8px !important;
        margin-bottom: 4px;
        border-bottom: 1px dashed var(--pm-border) !important;
        font-size: .95rem;
    }
    .pm-body .table-list > tbody > tr > td.pm-td-main::before { content: none; }
    .pm-body .table-list > tbody > tr > td.pm-td-main > * { text-align: start; }
    .pm-body .table-list > tbody > tr > td.pm-td-empty,
    .pm-body .table-list > tbody > tr > td.dataTables_empty::before { display: none; }
    .pm-body .table-list > tbody > tr > td.dataTables_empty { display: block; text-align: center !important; color: var(--pm-muted); }
    .pm-body .table-list > tbody > tr > td a.border-left { border: 0 !important; padding: 0 !important; }
    /* SSL badge / checkbox: small, pinned to the card's top corner */
    .pm-body .table-list > tbody > tr > td.pm-td-aside {
        position: absolute;
        top: 10px;
        inset-inline-end: 12px;
        width: auto !important;
        padding: 0 !important;
        font-size: 0;
    }
    .pm-body .table-list > tbody > tr > td.pm-td-aside::before { content: none; }
    .pm-body .table-list > tbody > tr > td.pm-td-aside img { width: 20px; height: auto; }
    .pm-body .table-list > tbody > tr:has(.pm-td-aside) > td.pm-td-main { padding-inline-end: 34px !important; }
    .pm-body .table-list td .w-hidden { display: none !important; }

    /* DataTables chrome */
    .pm-body .dataTables_wrapper .dataTables_filter { float: none; width: 100%; margin: 0; padding: 12px 12px 0; }
    .pm-body .dataTables_wrapper .dataTables_filter label { display: block; margin: 0; }
    .pm-body .dataTables_wrapper .dataTables_filter input { width: 100% !important; min-width: 0; margin: 0 !important; }
    .pm-body .dataTables_wrapper .dataTables_info { padding: 8px 12px !important; text-align: center !important; }
    .pm-body .dataTables_wrapper .dataTables_paginate,
    .pm-body .dataTables_wrapper .dataTables_length { float: none !important; text-align: center; padding: 8px 12px; }
    .pm-body .dataTables_wrapper .pagination { justify-content: center; }

    /* dashboard */
    .pm-body .tiles .tile { padding: 14px; }
    .pm-body .tiles .tile i { width: 36px; height: 36px; margin-bottom: 8px; font-size: .95rem; }
    .pm-body .tiles .tile .stat { font-size: 1.5rem; }
    .pm-body .client-home-cards .card-header .card-title { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
    .pm-body .client-home-cards .card-header .card-title .float-right { order: 2; margin-inline-start: auto; float: none !important; }

    /* ticket view */
    .pm-body .view-ticket .card-title { display: flex; flex-direction: column; gap: 10px; }
    .pm-body .view-ticket .ticket-actions { display: flex; gap: 8px; margin: 0 !important; float: none !important; }
    .pm-body .view-ticket .ticket-actions .btn { flex: 1; margin: 0; }
    .pm-body .view-ticket > .card-body { padding: 12px; }
    .pm-body .ticket-reply .message { padding: 12px !important; }
    .pm-body .ticket-reply .posted-by { font-size: .78rem; }

    /* forms: full-width primary actions */
    .pm-body form .form-group.text-center .btn,
    .pm-body form > .text-center > .btn { width: 100%; margin: 4px 0 !important; }
    .pm-body .btn-group-lg > .btn, .pm-body .btn-lg { font-size: .95rem; }

    /* product details */
    .pm-body div.product-details div.product-icon { padding: 20px; font-size: 44px; }
    .pm-body div.product-details-tab-container { padding: 14px; }

    /* modals */
    .pm-body .modal-dialog { margin: 12px; }

    /* order form */
    body.pm-body #order-standard_cart .products .product header { padding: 14px 16px; }
    body.pm-body #order-standard_cart .products .product div.product-desc { padding: 12px 16px; }
    body.pm-body #order-standard_cart .view-cart-items .item { padding: 12px; }
    body.pm-body #order-standard_cart .order-summary { margin-top: 16px; }
}

@media (max-width: 399.98px) {
    .pm-header-actions { gap: 6px; }
    .pm-icon-btn { width: 36px; height: 36px; }
    .pm-brand-mark { width: 36px; height: 36px; }
    .pm-brand-text strong { font-size: .95rem; }
}

/* ---- 09-compat.css ---- */
/* =====================================================================
   Compatibility fixes found on the live install (my.pasargadmizban.com).
   Its Twenty-One build differs slightly from the public repo, and third
   party addons inject their own light-coloured widgets.
   ===================================================================== */

/* Twenty-One paints every link inside header .navbar #444 — with the dark
   header that makes the dropdown menus unreadable. (0,3,x) beats its (0,2,2). */
header.header.pm-header .navbar a,
header.header.pm-header .navbar a:hover,
header.header.pm-header .navbar a:focus { color: inherit; }
.pm-header .dropdown-menu .dropdown-item { color: var(--pm-text-2); }
.pm-header .dropdown-menu .dropdown-item:hover,
.pm-header .dropdown-menu .dropdown-item:focus { color: #fff; background: rgba(59, 130, 246, .14); }
.pm-header .dropdown-menu .dropdown-item.active { color: #fff; background: rgba(37, 99, 235, .4); }
.pm-header .dropdown-menu .dropdown-item i { color: var(--pm-primary-400); }
.pm-header .pm-nav .nav-link,
.pm-header .pm-nav .nav-link:hover { color: var(--pm-text-2); }
.pm-header .pm-nav .nav-link:hover,
.pm-header .pm-nav .show > .nav-link,
.pm-header .pm-nav .active > .nav-link { color: #fff; }
.pm-header .pm-brand .pm-brand-text strong { color: #fff; }
.pm-header .pm-brand .pm-brand-text small { color: var(--pm-primary-400); }
.pm-header .pm-user-chip, .pm-header .pm-user-chip:hover { color: var(--pm-text); }

/* Dropdowns rendered outside our header (e.g. inside page content) */
.pm-body .dropdown-menu .dropdown-item { color: var(--pm-text-2); }
.pm-body .dropdown-menu .dropdown-item:hover,
.pm-body .dropdown-menu .dropdown-item:focus { color: #fff; }

/* Third-party widgets (promo popups, SMS-login button, …) bring their own
   light backgrounds: don't repaint their text, and keep our link colour off
   anything that is a button. */
.pm-body a.btn, .pm-body a[class*="btn-"], .pm-body a[class*="-btn"] { color: inherit; }
.pm-body .btn-primary, .pm-body .btn-success, .pm-body .btn-danger,
.pm-body .btn-info, .pm-body .btn-warning { color: #fff !important; }
.pm-body .btn-warning { color: #1c1917 !important; }
.pm-body [class^="spp-"], .pm-body [class*=" spp-"],
.pm-body [class^="spp-"] a, .pm-body [class*=" spp-"] a { color: inherit; }
/* the promo popup addon keeps its own colours entirely */

/* Our `.close` styling is for dark surfaces only — a light third-party modal
   keeps its own dark glyph. */
.pm-body .close { color: inherit; }
.pm-body .modal-content .close, .pm-body .alert .close, .pm-body .popover .close,
.pm-body .card .close { color: var(--pm-text-2); opacity: .85; }
.pm-body .modal-content .close:hover, .pm-body .alert .close:hover { color: #fff; opacity: 1; }

/* Bootstrap colours .dropdown-menu itself, and the "inherit" rule above would
   otherwise let that grey leak into the items. */
.pm-body .dropdown-menu { color: var(--pm-text-2); }
header.header.pm-header .navbar a { color: var(--pm-text-2); }
header.header.pm-header .navbar a:hover { color: #fff; }
header.header.pm-header .navbar .dropdown-menu .dropdown-item { color: var(--pm-text-2); }
header.header.pm-header .navbar .dropdown-menu .dropdown-item:hover,
header.header.pm-header .navbar .dropdown-menu .dropdown-item:focus { color: #fff; }
header.header.pm-header .navbar .pm-brand strong { color: #fff; }
header.header.pm-header .navbar .pm-brand small { color: var(--pm-primary-400); }

/* modal header/footer keep Twenty-One's light grey without this */
.pm-body .modal-content .modal-header,
.pm-body .modal-content .modal-footer { background: rgba(255, 255, 255, .03); }
.pm-body .modal-content .modal-body { background: transparent; }

/* labels and button-inner spans */
body.pm-body #order-standard_cart label,
body.pm-body #order-standard_cart .control-label,
body.pm-body .control-label { color: var(--pm-text-2); }
.pm-body .btn span, .pm-body .btn .text, .pm-body .btn i { color: inherit; }

/* Bootstrap's bare .btn is #212529; give every unstyled button a readable colour
   (our own .btn-* variants set theirs after this). */
.pm-body .btn { color: var(--pm-text-2); }
body.pm-body #order-standard_cart .product-recommendation,
body.pm-body .product-recommendation {
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
    color: var(--pm-text-2);
}
body.pm-body .product-recommendation .btn-add { background: var(--pm-grad); color: #fff; border: 0; }
body.pm-body .product-recommendation .price, body.pm-body .product-recommendation .headline { color: #fff; }

/* WHMCS hides elements with .w-hidden / .hidden (e.g. the cart's validation
   error box, extra file-upload rows). Our display rules (.alert{display:flex},
   .btn{display:inline-flex}) are more specific, so restore the hiding. */
.pm-body .w-hidden, .pm-body .hidden, .pm-body [hidden] { display: none !important; }

/* ---------- native <select> popups ----------
   Chrome paints the open option list with the select's own background-color.
   Ours was semi-transparent, so the popup composited to grey with unreadable
   text. Give selects an opaque background and tell the browser this is a dark
   UI so every native control (option list, scrollbars, date pickers) follows. */
html.pm-theme { color-scheme: dark; }
body.pm-body select,
body.pm-body select.form-control,
body.pm-body select.custom-select,
body.pm-body #order-standard_cart select,
body.pm-body #order-standard_cart select.form-control,
body.pm-body #order-standard_cart select.custom-select { background-color: #101b30; color: var(--pm-text); }
body.pm-body select:focus, body.pm-body select.custom-select:focus { background-color: #0c1526; }
.pm-body option,
.pm-body optgroup { background-color: #101b30; color: var(--pm-text); }
.pm-body option:checked,
.pm-body option:hover { background: var(--pm-primary-600); color: #fff; }
.pm-body option:disabled { color: var(--pm-faint); }

/* ---- 10-modern.css ---- */
/* =====================================================================
   Layout polish: rhythm, sticky sidebar, sticky table head, focus rings.
   Loaded last, so it also tunes rules from the files above.
   ===================================================================== */

/* ---------- vertical rhythm ---------- */
.pm-body #main-body { padding: 8px 0 72px; }
.pm-body .master-breadcrumb { padding: 18px 0 0; }
.pm-hero { padding: 14px 0 20px; }
.pm-hero-welcome { padding: 18px 0 24px; }
.pm-hero h1 { margin: 0 0 6px; letter-spacing: -.01em; }
.pm-hero + .master-breadcrumb { padding-top: 0; }
.pm-body .card { margin-bottom: 24px; }

/* the page title band gets a hairline under it so content starts cleanly */
.pm-hero::after {
    content: "";
    display: block;
    height: 1px;
    margin-top: 20px;
    background: linear-gradient(to left, transparent, var(--pm-border), transparent);
}
.pm-hero-welcome::after { display: none; }

/* ---------- sidebar sticks while the page scrolls ---------- */
@media (min-width: 992px) {
    .pm-body .col-lg-4.col-xl-3 > .sidebar:first-child,
    .pm-body .cart-sidebar {
        position: sticky;
        top: calc(var(--pm-header-h) + 16px);
    }
    .pm-body .col-lg-4.col-xl-3 > .sidebar:first-child { z-index: 2; }
}

/* ---------- cards ---------- */
.pm-body .card {
    position: relative;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}
/* hairline highlight along the top edge, like the cards on the main site */
.pm-body .card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 12%;
    right: 12%;
    height: 1px;
    background: linear-gradient(to left, transparent, rgba(255, 255, 255, .12), transparent);
    pointer-events: none;
}
.pm-body [class*="card-accent-"]::before { display: none; }
.pm-body .card-header { padding: 16px 20px; }
.pm-body .card-title { font-size: .98rem; letter-spacing: -.01em; }

/* interactive cards lift, static ones don't */
.pm-body a.list-group-item-action { transition: background .2s, color .2s; }

/* ---------- tables ---------- */
/* (no sticky <th>: the list tables are not inside a scroll container, so a
   sticky header would slide down over the first row.) */
.pm-body .table-list > tbody > tr > td { padding-top: 16px; padding-bottom: 16px; }
.pm-body .table-list > tbody > tr:last-child > td { border-bottom: 0; }
.pm-body .table-list .btn-sm { padding: 5px 14px; }

/* ---------- forms ---------- */
.pm-body .form-group { margin-bottom: 1.15rem; }
.pm-body label, .pm-body .form-control-label { margin-bottom: .4rem; }
.pm-body .form-control { height: calc(1.6em + 1.1rem + 2px); }
@media (max-width: 767.98px) {
    /* comfortable touch targets */
    .pm-body .form-control, .pm-body .custom-select { height: calc(1.6em + 1.4rem + 2px); font-size: 1rem; }
    .pm-body .btn { padding: 10px 18px; }
    .pm-body .btn-sm { padding: 7px 14px; }
}

/* ---------- accessibility ---------- */
.pm-body a:focus-visible,
.pm-body button:focus-visible,
.pm-body .btn:focus-visible,
.pm-body .list-group-item:focus-visible,
.pm-body .dropdown-item:focus-visible {
    outline: 2px solid var(--pm-primary-400);
    outline-offset: 2px;
    border-radius: 8px;
}
.pm-body .sr-only:focus { position: static; width: auto; height: auto; }

/* skip repeated blur layers inside cards (cheaper paint on mobile) */
@media (max-width: 767.98px) {
    .pm-body .card, .pm-body .tiles .tile, .pm-body .table-container {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
}

/* ---------- dashboard tiles: icon beside the number ---------- */
.pm-body .tiles .tile { display: flex; flex-direction: column; justify-content: center; padding: 18px 20px 20px; }
.pm-body .tiles .tile i { margin-bottom: 12px; }
.pm-body .tiles .tile .stat { font-size: 1.85rem; }
@media (min-width: 576px) {
    .pm-body .tiles .tile {
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-areas: "icon stat" "icon title";
        align-items: center;
        column-gap: 14px;
        row-gap: 0;
    }
    .pm-body .tiles .tile i { grid-area: icon; margin: 0; width: 48px; height: 48px; }
    .pm-body .tiles .tile .stat { grid-area: stat; align-self: end; }
    .pm-body .tiles .tile .title { grid-area: title; align-self: start; margin: 0; }
}

/* ---------- misc polish ---------- */
.pm-body .alert { display: flex; align-items: flex-start; gap: 10px; }
.pm-body .alert > i:first-child { margin-top: 5px; }
.pm-body .badge { vertical-align: middle; }
.pm-body hr { margin: 1.5rem 0; }
.pm-body .text-center .btn + .btn { margin-inline-start: 8px; }
.pm-body ::placeholder { opacity: 1; }

/* ---- 11-configure.css ---- */
/* =====================================================================
   Order form — "configure product" step.
   Twenty-One/Standard Cart stacks every configurable option in its own
   half-width float, so long radio lists make the page extremely tall and
   leave big holes. Here the options become a dense grid, choices become
   chips, and the quantity slider gets a dark skin.
   ===================================================================== */

/* ---------- configurable options: one dense grid ----------
   Standard Cart wraps every couple of options in their own .row, which is what
   makes the page so tall. `display: contents` dissolves those wrappers so all
   options share a single grid and pack together. */
body.pm-body #productConfigurableOptions,
body.pm-body .product-configurable-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 14px 22px;
    align-items: start;
    grid-auto-flow: dense;
}
body.pm-body #productConfigurableOptions > .row,
body.pm-body .product-configurable-options > .row { display: contents; }
body.pm-body #productConfigurableOptions [class*="col-"] {
    flex: none;
    width: auto;
    max-width: 100%;
    padding: 0;
}
/* sliders and anything explicitly full width keep the whole row */
body.pm-body #productConfigurableOptions .col-sm-12,
body.pm-body #productConfigurableOptions .col-md-12,
body.pm-body #productConfigurableOptions .col-12,
body.pm-body #productConfigurableOptions .pm-co-wide { grid-column: 1 / -1; }

body.pm-body #productConfigurableOptions .form-group {
    margin: 0;
    padding: 14px 16px;
    background: rgba(30, 41, 59, .3);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
}
body.pm-body #productConfigurableOptions .form-group > label:first-child {
    display: block;
    margin-bottom: 10px;
    color: #fff;
    font-size: .88rem;
    font-weight: 600;
}

/* ---------- radio / checkbox lists become chips ---------- */
body.pm-body #productConfigurableOptions .form-group br { display: none; }
body.pm-body #productConfigurableOptions .form-group label:not(:first-child) {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 8px;
    margin-inline-end: 8px;
    padding: 7px 14px;
    color: var(--pm-text-2);
    background: rgba(255, 255, 255, .04);
    border: 1px solid var(--pm-border);
    border-radius: 999px;
    font-size: .85rem;
    font-weight: 500;
    cursor: pointer;
    transition: border-color .2s, background .2s, color .2s;
}
body.pm-body #productConfigurableOptions .form-group label:not(:first-child):hover {
    color: #fff;
    border-color: var(--pm-border-accent);
    background: rgba(59, 130, 246, .1);
}
body.pm-body #productConfigurableOptions .form-group label input[type="radio"],
body.pm-body #productConfigurableOptions .form-group label input[type="checkbox"] { margin: 0; }
/* highlight the selected chip (ignored by browsers without :has, where the
   native radio/checkbox still shows the state) */
body.pm-body #productConfigurableOptions .form-group label:has(input:checked) {
    color: #fff;
    background: rgba(37, 99, 235, .3);
    border-color: var(--pm-primary);
}

/* ---------- quantity slider (ion.rangeSlider, sprite skin) ---------- */
.pm-body .irs { direction: ltr; font-family: var(--pm-font); }
.pm-body .irs-line, .pm-body .irs-line-left, .pm-body .irs-line-mid, .pm-body .irs-line-right {
    background: rgba(255, 255, 255, .08) !important;
    height: 6px;
    border-radius: 999px;
}
.pm-body .irs-bar, .pm-body .irs-bar-edge {
    background: linear-gradient(to right, #2563eb, #3b82f6) !important;
    height: 6px;
    border-radius: 999px;
}
.pm-body .irs-slider {
    width: 18px;
    height: 18px;
    top: 25px;
    background: #fff !important;
    border: 2px solid var(--pm-primary);
    border-radius: 50%;
    box-shadow: 0 2px 8px rgba(2, 6, 23, .6);
}
.pm-body .irs-min, .pm-body .irs-max {
    color: var(--pm-muted) !important;
    background: rgba(255, 255, 255, .06) !important;
    border-radius: 6px;
}
.pm-body .irs-from, .pm-body .irs-to, .pm-body .irs-single {
    color: #fff !important;
    background: var(--pm-primary-600) !important;
    border-radius: 6px;
    text-shadow: none;
}
.pm-body .irs-grid-pol { background: rgba(255, 255, 255, .16) !important; }
.pm-body .irs-grid-text { color: var(--pm-faint) !important; }
.pm-body .irs-shadow { background: var(--pm-primary) !important; }

/* ---------- custom fields, addons, summary ---------- */
body.pm-body #order-standard_cart .field-container { padding: 16px; }
body.pm-body #order-standard_cart .field-container > .form-group:last-child { margin-bottom: 0; }
body.pm-body #order-standard_cart .addon-products { row-gap: 14px; }
body.pm-body #order-standard_cart .panel-addon .panel-body { padding: 14px 16px; }
body.pm-body #order-standard_cart .panel-addon .panel-body label { font-weight: 600; color: #fff; }
body.pm-body #order-standard_cart .sub-heading { margin: 26px 0 14px; }
body.pm-body #order-standard_cart .product-info { margin-bottom: 18px; }

/* the summary follows the page while the options are configured */
@media (min-width: 992px) {
    body.pm-body #order-standard_cart .secondary-cart-sidebar {
        position: sticky;
        top: calc(var(--pm-header-h) + 16px);
        align-self: flex-start;
    }
}
body.pm-body #order-standard_cart #btnCompleteProductConfig { width: 100%; margin-top: 14px; }

@media (max-width: 575.98px) {
    body.pm-body #productConfigurableOptions { grid-template-columns: 1fr; gap: 12px; }
    body.pm-body #productConfigurableOptions .form-group { padding: 12px 14px; }
}

/* slightly denser chips so more fit per line */
body.pm-body #productConfigurableOptions .form-group label:not(:first-child) { padding: 6px 12px; font-size: .82rem; }
body.pm-body #productConfigurableOptions .form-group label input[type="radio"],
body.pm-body #productConfigurableOptions .form-group label input[type="checkbox"] { width: 14px; height: 14px; }

/* ---------- this install has a custom (light) order-form stylesheet ----------
   templates/orderforms/standard_cart/css/all.min.css was replaced with a light
   theme that also uses !important in places, so match it where needed. */
body.pm-body #order-standard_cart .order-summary h2 {
    background: rgba(2, 6, 23, .45) !important;
    color: #fff !important;
    border-bottom: 1px solid var(--pm-border);
}
body.pm-body #order-standard_cart .order-summary .total-due-today .amt { color: var(--pm-primary-300) !important; }
body.pm-body #order-standard_cart .apply-credit-container {
    background: rgba(30, 58, 138, .25) !important;
    border: 1px dashed rgba(59, 130, 246, .4) !important;
    color: var(--pm-text-2);
}
body.pm-body .days {
    background-color: rgba(30, 58, 138, .45) !important;
    color: var(--pm-primary-300) !important;
    border: 1px solid rgba(59, 130, 246, .3) !important;
}
body.pm-body #order-standard_cart .sub-heading span { background-color: var(--pm-bg-1) !important; color: var(--pm-primary-300); }
body.pm-body #order-standard_cart .product-info { background: rgba(30, 58, 138, .22) !important; border-color: rgba(59, 130, 246, .25); box-shadow: none; }
body.pm-body #order-standard_cart .product-info .product-title { color: #fff; }
body.pm-body #order-standard_cart .order-summary { background: linear-gradient(145deg, rgba(30, 58, 138, .5), rgba(30, 27, 75, .55)) !important; border-color: rgba(59, 130, 246, .3); box-shadow: var(--pm-shadow-blue); }
body.pm-body #order-standard_cart label, body.pm-body #order-standard_cart p.domain-renewal-desc { color: var(--pm-text-2); }
body.pm-body #order-standard_cart .panel-addon { border-color: var(--pm-border); box-shadow: none; }
body.pm-body #order-standard_cart .panel-addon-selected { border-color: var(--pm-primary); box-shadow: 0 0 0 2px rgba(59, 130, 246, .25); }
body.pm-body #order-standard_cart .panel-addon-selected .panel-add { background-color: var(--pm-primary-600); color: #fff; }

/* The custom order-form stylesheet removes the padding that compensates for
   Bootstrap's negative .row margins, which pushed the page 15px wide on phones. */
body.pm-body #order-standard_cart .row { margin-left: 0; margin-right: 0; }

/* =====================================================================
   Store product list (standard_cart products.tpl)
   The template closes and re-opens a .row after every two products, so the
   page can never show more than two per row. `display: contents` dissolves
   those rows into one grid that fills the available width.
   ===================================================================== */
body.pm-body #order-standard_cart .products.pm-stock-products {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
    margin: 10px 0 0;
}
body.pm-body #order-standard_cart .products.pm-stock-products > .row { display: contents; }
body.pm-body #order-standard_cart .products.pm-stock-products [class*="col-"] {
    flex: none;
    width: auto;
    max-width: 100%;
    padding: 0;
}
body.pm-body #order-standard_cart .products .product { margin: 0; height: 100%; }
body.pm-body #order-standard_cart .products .product header { padding: 14px 18px; }
body.pm-body #order-standard_cart .products .product header span { font-size: 1rem; }
body.pm-body #order-standard_cart .products .product div.product-desc { padding: 12px 18px; line-height: 1.9; font-size: .84rem; }
body.pm-body #order-standard_cart .products .product div.product-desc li { padding: 3px 0; }
body.pm-body #order-standard_cart .products .product footer { padding: 12px 18px 16px; }
body.pm-body #order-standard_cart .products .product .product-pricing { margin-bottom: 10px; font-size: .75rem; }
body.pm-body #order-standard_cart .products .product .product-pricing .price { font-size: 1.2rem; margin: 2px 0; }
body.pm-body #order-standard_cart .products .product .btn-order-now { padding: 9px 16px; }

/* category / action selectors above the list: a slim toolbar instead of two
   full-width cards (this install's order-form CSS no longer hides them) */
body.pm-body #order-standard_cart .sidebar-collapsed {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0 0 20px;
    padding: 0;
}
body.pm-body #order-standard_cart .sidebar-collapsed > .panel,
body.pm-body #order-standard_cart .sidebar-collapsed > .card {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1 1 260px;
    margin: 0;
    padding: 8px 12px;
    background: rgba(30, 41, 59, .35);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
}
body.pm-body #order-standard_cart .sidebar-collapsed .panel-heading,
body.pm-body #order-standard_cart .sidebar-collapsed .card-header {
    flex: none;
    padding: 0;
    margin: 0;
    background: transparent;
    border: 0;
    white-space: nowrap;
}
body.pm-body #order-standard_cart .sidebar-collapsed .panel-title { font-size: .85rem; color: var(--pm-muted); }
body.pm-body #order-standard_cart .sidebar-collapsed .panel-title i { color: var(--pm-primary-400); }
body.pm-body #order-standard_cart .sidebar-collapsed .panel-body,
body.pm-body #order-standard_cart .sidebar-collapsed .card-body { flex: 1 1 auto; padding: 0; min-width: 0; }
body.pm-body #order-standard_cart .sidebar-collapsed .panel-footer,
body.pm-body #order-standard_cart .sidebar-collapsed .card-footer { display: none; }

@media (max-width: 575.98px) {
    body.pm-body #order-standard_cart .products.pm-stock-products { grid-template-columns: 1fr; gap: 14px; }
    body.pm-body #order-standard_cart .sidebar-collapsed > .panel,
    body.pm-body #order-standard_cart .sidebar-collapsed > .card { flex-direction: column; align-items: stretch; gap: 6px; }
}
/* the category <select> sits in a bare <form>; make both fill the toolbar box */
body.pm-body #order-standard_cart .sidebar-collapsed form { width: 100%; margin: 0; }
body.pm-body #order-standard_cart .sidebar-collapsed select { width: 100%; }

/* ---- 12-store-custom.css ---- */
/* =====================================================================
   This install ships a customised products.tpl ("Ultra Soft SaaS Edition")
   whose styles live in an inline <style> inside the template — it loads
   after custom.css, so these rules re-theme it for the dark panel.
   Its design tokens are redefined on body (custom properties inherit from
   the nearest ancestor, so body beats the template's :root).
   ===================================================================== */
body.pm-body {
    --soft-bg: linear-gradient(145deg, rgba(30, 41, 59, .78), rgba(15, 23, 42, .72));
    --soft-shadow: 0 10px 30px -12px rgba(2, 6, 23, .7);
    --soft-shadow-hover: 0 18px 44px -14px rgba(59, 130, 246, .35);
    --soft-radius-card: 18px;
    --soft-radius-box: 14px;
    --soft-text-main: #fff;
    --soft-text-muted: var(--pm-muted);
    --soft-border: rgba(51, 65, 85, .6);
    --soft-primary: #2563eb;
}

body.pm-body .soft-product-card {
    border: 1px solid var(--pm-border);
    padding: 24px 20px;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}
body.pm-body .soft-product-card:hover { transform: translateY(-4px); border-color: rgba(59, 130, 246, .5); }

/* circular icons: tinted for a dark surface */
body.pm-body .soft-icon-wrapper { width: 58px; height: 58px; font-size: 22px; margin-bottom: 16px; border: 1px solid; }
body.pm-body .product-col:nth-child(4n+1) .soft-icon-wrapper { background: rgba(2, 132, 199, .18); color: #38bdf8; border-color: rgba(56, 189, 248, .3); }
body.pm-body .product-col:nth-child(4n+2) .soft-icon-wrapper { background: rgba(202, 138, 4, .18); color: #fbbf24; border-color: rgba(251, 191, 36, .3); }
body.pm-body .product-col:nth-child(4n+3) .soft-icon-wrapper { background: rgba(220, 38, 38, .18); color: #f87171; border-color: rgba(248, 113, 113, .3); }
body.pm-body .product-col:nth-child(4n+4) .soft-icon-wrapper { background: rgba(5, 150, 105, .18); color: #34d399; border-color: rgba(52, 211, 153, .3); }

body.pm-body .soft-card-header { margin-bottom: 14px; }
body.pm-body .soft-card-title { font-size: 1.05rem; color: #fff; }
body.pm-body .soft-qty-badge {
    background: rgba(148, 163, 184, .14);
    color: var(--pm-text-2);
    border: 1px solid rgba(148, 163, 184, .25);
}

/* feature rows */
body.pm-body .soft-features-list { margin-bottom: 18px; }
body.pm-body .soft-features-list li {
    padding: 9px 0;
    border-bottom: 1px dashed var(--pm-border);
    color: var(--pm-text-2);
    font-size: .82rem;
}
body.pm-body .soft-features-list .feature-value {
    color: #fff;
    background: rgba(255, 255, 255, .06);
    border: 1px solid var(--pm-border-soft);
    padding: 3px 9px;
}
body.pm-body .soft-card-desc > p { color: var(--pm-muted); font-size: .85rem; margin-bottom: 16px; }

/* price box */
body.pm-body .soft-pricing-box {
    background: rgba(2, 6, 23, .38);
    border: 1px solid var(--pm-border);
    padding: 14px;
    margin-bottom: 16px;
}
body.pm-body .soft-price-start, body.pm-body .soft-price-cycle { color: var(--pm-muted); }
body.pm-body .soft-price-amount { color: var(--pm-primary-300); font-size: 1.3rem; }
body.pm-body .soft-setup-fee { color: var(--pm-warning); }

/* order button */
body.pm-body .btn-soft-order {
    background: linear-gradient(to right, #2563eb, #3b82f6);
    color: #fff;
    padding: 12px 18px;
    border: 1px solid rgba(96, 165, 250, .25);
}
body.pm-body .btn-soft-order:hover {
    background: linear-gradient(to right, #1d4ed8, #2563eb);
    box-shadow: var(--pm-glow);
    transform: translateY(-2px);
}
body.pm-body .btn-soft-order .icon-circle { background: rgba(255, 255, 255, .18); }

/* page heading of the store */
body.pm-body #order-standard_cart .header-lined h1 { color: #fff; font-size: 1.6rem; }
body.pm-body #order-standard_cart .header-lined p { color: var(--pm-muted); }

/* the custom template uses its own grid (col-lg-4 …), so only tighten spacing */
body.pm-body #order-standard_cart .products.mt-5 { margin-top: 20px !important; }
body.pm-body #order-standard_cart .products .row { margin-left: -10px; margin-right: -10px; }
body.pm-body #order-standard_cart .product-col { padding-left: 10px; padding-right: 10px; }

@media (max-width: 575.98px) {
    body.pm-body .soft-product-card { padding: 18px 16px; }
    body.pm-body .soft-icon-wrapper { width: 48px; height: 48px; font-size: 18px; margin-bottom: 12px; }
    body.pm-body .soft-features-list li { padding: 7px 0; }
}

/* the template forces LTR on the price, which moves the currency word in front
   of the number ("تومان ۶۴۹,۰۰۰"); Persian prices read number-first */
body.pm-body .soft-price-amount { direction: rtl; }

/* =====================================================================
   configureproduct.tpl on this install is customised too ("Soft UI"),
   again with an inline <style> that loads after custom.css and leans on
   !important. Same treatment: dark surfaces, readable text.
   ===================================================================== */
body.pm-body .soft-page-header { border-bottom: 1px dashed var(--pm-border); margin-bottom: 1.6rem; padding-bottom: 1.2rem; }
body.pm-body .soft-page-title { color: #fff; font-size: 1.7rem; }
body.pm-body .soft-card {
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    box-shadow: var(--pm-shadow-blue);
    padding: 20px;
    margin-bottom: 18px;
}
body.pm-body .soft-section-title { color: #fff; font-size: 1rem; }
body.pm-body .soft-section-title i {
    color: var(--pm-primary-300);
    background: rgba(30, 58, 138, .5);
    border: 1px solid rgba(59, 130, 246, .25);
    padding: 8px;
    font-size: .9rem;
}

/* form fields (their rules are all !important) */
body.pm-body .soft-input,
body.pm-body select.soft-input,
body.pm-body textarea.soft-input {
    background-color: var(--pm-input-bg) !important;
    border: 1px solid var(--pm-border) !important;
    color: var(--pm-text) !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    box-shadow: none !important;
}
body.pm-body select.soft-input { background-color: #101b30 !important; }
body.pm-body .soft-input:focus {
    background-color: rgba(2, 6, 23, .6) !important;
    border-color: var(--pm-primary) !important;
    box-shadow: var(--pm-ring) !important;
}
body.pm-body .soft-input::placeholder { color: var(--pm-faint) !important; }
body.pm-body .soft-card label, body.pm-body .soft-page-header label { color: var(--pm-text-2); }

/* addon cards */
body.pm-body .soft-addon-card {
    background: rgba(30, 41, 59, .35);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius);
}
body.pm-body .soft-addon-card:hover { border-color: rgba(96, 165, 250, .45); box-shadow: 0 10px 25px -10px rgba(59, 130, 246, .3); transform: translateY(-3px); }
body.pm-body .panel-addon-selected .soft-addon-card { border-color: var(--pm-primary); background: rgba(30, 58, 138, .3); }
body.pm-body .soft-addon-body { color: var(--pm-text-2); padding: 16px; }
body.pm-body .soft-addon-body strong, body.pm-body .soft-addon-body b { color: #fff; }
body.pm-body .soft-addon-price {
    background: rgba(2, 6, 23, .4);
    color: #fff;
    border-top: 1px solid var(--pm-border);
}
body.pm-body .panel-addon-selected .soft-addon-price { background: rgba(37, 99, 235, .35); color: #fff; border-color: rgba(59, 130, 246, .35); }

/* submit button */
body.pm-body .soft-btn-submit {
    background: linear-gradient(to right, #2563eb, #3b82f6);
    border: 1px solid rgba(96, 165, 250, .25);
    border-radius: 12px;
    padding: 14px 22px;
    font-size: 1rem;
    box-shadow: var(--pm-glow);
}
body.pm-body .soft-btn-submit:hover { background: linear-gradient(to right, #1d4ed8, #2563eb); box-shadow: 0 16px 30px -10px rgba(59, 130, 246, .45); }

/* their stylesheet restyles every <label> on the page */
body.pm-body #order-standard_cart label { color: var(--pm-text-2); }

/* =====================================================================
   viewcart / checkout are customised as well ("Hyper Minimalist Cart"),
   with more tokens and a lot of !important.
   ===================================================================== */
body.pm-body {
    --soft-bg-alt: rgba(2, 6, 23, .35);
    --soft-success: #10b981;
    --soft-danger: #ef4444;
}
body.pm-body #order-standard_cart .soft-main-card,
body.pm-body .soft-summary-box {
    background: var(--pm-card-grad);
    border: 1px solid var(--pm-border);
    box-shadow: var(--pm-shadow-blue);
    padding: 24px;
}
body.pm-body .soft-summary-box { top: calc(var(--pm-header-h) + 16px); }
body.pm-body .soft-summary-box h2 { color: #fff; font-size: 1.15rem; margin-bottom: 18px; }
body.pm-body .soft-summary-box .subtotal,
body.pm-body .soft-summary-box .bordered-totals,
body.pm-body .soft-summary-box .recurring-totals { border-bottom: 1px dashed var(--pm-border); color: var(--pm-text-2); }
body.pm-body .soft-summary-box .total-due-today .amt { color: var(--pm-primary-300); direction: rtl; }
body.pm-body #order-standard_cart .header-lined { border-bottom: 1px solid var(--pm-border); }
body.pm-body #order-standard_cart .header-lined h1 { color: #fff; }

/* cart item rows */
body.pm-body .view-cart-items-header { border-bottom: 1px dashed var(--pm-border) !important; color: var(--pm-muted); }
body.pm-body .view-cart-items .item {
    background: rgba(30, 41, 59, .32) !important;
    border: 1px solid var(--pm-border) !important;
}
body.pm-body .view-cart-items .item:hover { background: rgba(30, 41, 59, .5) !important; box-shadow: var(--pm-shadow-blue); }
body.pm-body .view-cart-items .item-title { color: #fff !important; }
body.pm-body .view-cart-items .item-group,
body.pm-body .view-cart-items .item-domain { color: var(--pm-muted); }
body.pm-body .view-cart-items .item-price span { color: #fff; }

/* pill buttons */
body.pm-body .btn-soft-primary { background: linear-gradient(to right, #2563eb, #3b82f6) !important; color: #fff !important; }
body.pm-body .btn-soft-success { background: linear-gradient(to right, #059669, #10b981) !important; color: #fff !important; }
body.pm-body .btn-soft-danger { background: rgba(239, 68, 68, .16) !important; color: #fca5a5 !important; }
body.pm-body .btn-soft-danger:hover { background: rgba(239, 68, 68, .3) !important; color: #fff !important; }
body.pm-body .btn-soft-pill { box-shadow: none; }

/* their cart stylesheet restyles every .form-control on the page */
body.pm-body #order-standard_cart .form-control,
body.pm-body .soft-main-card .form-control,
body.pm-body .soft-summary-box .form-control { background: var(--pm-input-bg); border: 1px solid var(--pm-border); color: var(--pm-text); }
body.pm-body #order-standard_cart .form-control:focus { background: rgba(2, 6, 23, .6); border-color: var(--pm-primary); }
body.pm-body #order-standard_cart select.form-control { background-color: #101b30; }

/* alerts that the custom templates paint with inline style="" attributes */
body.pm-body #order-standard_cart .alert-warning[style] {
    background-color: rgba(245, 158, 11, .12) !important;
    border-color: rgba(251, 191, 36, .35) !important;
    color: var(--pm-text) !important;
}
body.pm-body #order-standard_cart .alert-info[style],
body.pm-body #order-standard_cart .alert-primary[style] {
    background-color: rgba(30, 58, 138, .35) !important;
    border-color: rgba(59, 130, 246, .35) !important;
    color: var(--pm-text) !important;
}
body.pm-body #order-standard_cart .alert-success[style] {
    background-color: var(--pm-success-soft) !important;
    border-color: rgba(52, 211, 153, .35) !important;
    color: var(--pm-text) !important;
}
body.pm-body #order-standard_cart .alert-danger[style] {
    background-color: var(--pm-danger-soft) !important;
    border-color: rgba(248, 113, 113, .35) !important;
    color: var(--pm-text) !important;
}
body.pm-body #order-standard_cart .alert[style] a { color: var(--pm-primary-300) !important; }

/* lightbox (image viewer shipped with Twenty-One) */
body.pm-body .lb-outerContainer, body.pm-body .lb-dataContainer { background: var(--pm-surface-solid); border-radius: var(--pm-radius); }
body.pm-body .lb-data .lb-caption, body.pm-body .lb-data .lb-number { color: var(--pm-text-2); }

/* "continue shopping" is painted light through an inline style attribute */
body.pm-body #order-standard_cart a.btn-light[style],
body.pm-body #order-standard_cart #continueShopping[style],
body.pm-body #order-standard_cart .btn-soft-pill.btn-light[style] {
    background: rgba(255, 255, 255, .06) !important;
    color: var(--pm-text-2) !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
}
body.pm-body #order-standard_cart a.btn-light[style]:hover { background: rgba(59, 130, 246, .14) !important; color: #fff !important; }

/* =====================================================================
   domainregister.tpl is customised as well ("Elegant Domain Register").
   ===================================================================== */
body.pm-body .header-lined-soft h1 { color: #fff; font-size: 1.7rem; }
body.pm-body .header-lined-soft p { color: var(--pm-muted); }
body.pm-body .soft-search-group {
    background: rgba(2, 6, 23, .45);
    border: 2px solid var(--pm-border);
    box-shadow: none;
}
body.pm-body .soft-search-group:focus-within { border-color: var(--pm-primary); box-shadow: var(--pm-ring); }
body.pm-body .soft-search-group input { color: var(--pm-text); font-size: 1.05rem; padding: 12px 20px; }
body.pm-body .soft-search-group input::placeholder { color: var(--pm-faint); }
body.pm-body .btn-search-soft {
    background: linear-gradient(to right, #2563eb, #3b82f6) !important;
    color: #fff !important;
    padding: 12px 32px !important;
}
body.pm-body .btn-search-soft:hover { background: linear-gradient(to right, #1d4ed8, #2563eb) !important; }

/* TLD pricing table */
body.pm-body .tld-pricing-wrap {
    background: rgba(2, 6, 23, .3);
    border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg);
    padding: 22px;
}
body.pm-body .tld-pricing-wrap h4, body.pm-body .tld-pricing-wrap h3 { color: #fff; }
body.pm-body .tld-filters .badge {
    background: rgba(255, 255, 255, .05);
    color: var(--pm-text-2);
    border: 1px solid var(--pm-border);
    padding: 7px 16px;
    font-size: .82rem;
}
body.pm-body .tld-filters .badge:hover,
body.pm-body .tld-filters .badge.active { background: var(--pm-primary-600); color: #fff; border-color: var(--pm-primary); }
body.pm-body .tld-row {
    background: rgba(30, 41, 59, .35);
    border: 1px solid var(--pm-border);
    color: var(--pm-text-2);
}
body.pm-body .tld-row:hover { background: rgba(30, 58, 138, .28); border-color: var(--pm-border-accent); }
body.pm-body .tld-column, body.pm-body .tld-row .tld-column { color: var(--pm-text-2); }
body.pm-body .tld-row strong, body.pm-body .tld-row b, body.pm-body .tld-column strong { color: #fff; }
body.pm-body .domain-checker-container .soft-main-card { padding: 30px 24px; }

/* promo box on the domain page + the product title inside a soft card */
body.pm-body .soft-promo-box {
    background: rgba(30, 58, 138, .22) !important;
    border: 1px solid rgba(59, 130, 246, .25) !important;
    color: var(--pm-text-2);
    border-radius: var(--pm-radius-lg);
}
body.pm-body .soft-promo-box h3, body.pm-body .soft-promo-box h4 { color: #fff; }
body.pm-body .soft-promo-box p, body.pm-body .soft-promo-box .text-muted { color: var(--pm-muted) !important; }
body.pm-body .soft-promo-box i { color: var(--pm-primary-400); }
body.pm-body .soft-promo-box .btn-outline-primary {
    color: var(--pm-primary-300) !important;
    border-color: rgba(96, 165, 250, .45) !important;
    background: transparent !important;
}
body.pm-body .soft-promo-box .btn-outline-primary:hover { background: rgba(59, 130, 246, .18) !important; color: #fff !important; }
body.pm-body .soft-card > h3, body.pm-body .soft-card h3.font-size-20 { color: var(--pm-primary-300); }

/* ---- generated: RTL utility flips ---- */
[dir="rtl"] .pm-body .border-left{border-left:0!important;border-right:1px solid var(--pm-border)!important}
[dir="rtl"] .pm-body .border-right{border-right:0!important;border-left:1px solid var(--pm-border)!important}
[dir="rtl"] .pm-body .rounded-left{border-radius:0 .25rem .25rem 0!important}
[dir="rtl"] .pm-body .rounded-right{border-radius:.25rem 0 0 .25rem!important}
[dir="rtl"] .pm-body .pull-left{float:right!important}
[dir="rtl"] .pm-body .pull-right{float:left!important}
[dir="rtl"] .pm-body .text-left{text-align:right!important}
[dir="rtl"] .pm-body .text-right{text-align:left!important}
[dir="rtl"] .pm-body .float-left{float:right!important}
[dir="rtl"] .pm-body .float-right{float:left!important}
[dir="rtl"] .pm-body .ml-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .mr-0{margin-right:0!important;margin-left:0!important}
[dir="rtl"] .pm-body .pl-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .pr-0{padding-right:0!important;padding-left:0!important}
[dir="rtl"] .pm-body .ml-1{margin-left:0!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .mr-1{margin-right:0!important;margin-left:.25rem!important}
[dir="rtl"] .pm-body .pl-1{padding-left:0!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .pr-1{padding-right:0!important;padding-left:.25rem!important}
[dir="rtl"] .pm-body .ml-n1{margin-left:0!important;margin-right:-.25rem!important}
[dir="rtl"] .pm-body .mr-n1{margin-right:0!important;margin-left:-.25rem!important}
[dir="rtl"] .pm-body .ml-2{margin-left:0!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .mr-2{margin-right:0!important;margin-left:.5rem!important}
[dir="rtl"] .pm-body .pl-2{padding-left:0!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .pr-2{padding-right:0!important;padding-left:.5rem!important}
[dir="rtl"] .pm-body .ml-n2{margin-left:0!important;margin-right:-.5rem!important}
[dir="rtl"] .pm-body .mr-n2{margin-right:0!important;margin-left:-.5rem!important}
[dir="rtl"] .pm-body .ml-3{margin-left:0!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .mr-3{margin-right:0!important;margin-left:1rem!important}
[dir="rtl"] .pm-body .pl-3{padding-left:0!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .pr-3{padding-right:0!important;padding-left:1rem!important}
[dir="rtl"] .pm-body .ml-n3{margin-left:0!important;margin-right:-1rem!important}
[dir="rtl"] .pm-body .mr-n3{margin-right:0!important;margin-left:-1rem!important}
[dir="rtl"] .pm-body .ml-4{margin-left:0!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .mr-4{margin-right:0!important;margin-left:1.5rem!important}
[dir="rtl"] .pm-body .pl-4{padding-left:0!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .pr-4{padding-right:0!important;padding-left:1.5rem!important}
[dir="rtl"] .pm-body .ml-n4{margin-left:0!important;margin-right:-1.5rem!important}
[dir="rtl"] .pm-body .mr-n4{margin-right:0!important;margin-left:-1.5rem!important}
[dir="rtl"] .pm-body .ml-5{margin-left:0!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .mr-5{margin-right:0!important;margin-left:3rem!important}
[dir="rtl"] .pm-body .pl-5{padding-left:0!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .pr-5{padding-right:0!important;padding-left:3rem!important}
[dir="rtl"] .pm-body .ml-n5{margin-left:0!important;margin-right:-3rem!important}
[dir="rtl"] .pm-body .mr-n5{margin-right:0!important;margin-left:-3rem!important}
[dir="rtl"] .pm-body .mx-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .px-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .mx-1{margin-left:.25rem!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .px-1{padding-left:.25rem!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .mx-2{margin-left:.5rem!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .px-2{padding-left:.5rem!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .mx-3{margin-left:1rem!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .px-3{padding-left:1rem!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .mx-4{margin-left:1.5rem!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .px-4{padding-left:1.5rem!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .mx-5{margin-left:3rem!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .px-5{padding-left:3rem!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .ml-auto{margin-left:0!important;margin-right:auto!important}
[dir="rtl"] .pm-body .mr-auto{margin-right:0!important;margin-left:auto!important}
[dir="rtl"] .pm-body .mx-auto{margin-left:auto!important;margin-right:auto!important}
[dir="rtl"] .pm-body .offset-0{margin-left:0;margin-right:0}
[dir="rtl"] .pm-body .offset-1{margin-left:0;margin-right:8.333333%}
[dir="rtl"] .pm-body .offset-2{margin-left:0;margin-right:16.666667%}
[dir="rtl"] .pm-body .offset-3{margin-left:0;margin-right:25%}
[dir="rtl"] .pm-body .offset-4{margin-left:0;margin-right:33.333333%}
[dir="rtl"] .pm-body .offset-5{margin-left:0;margin-right:41.666667%}
[dir="rtl"] .pm-body .offset-6{margin-left:0;margin-right:50%}
[dir="rtl"] .pm-body .offset-7{margin-left:0;margin-right:58.333333%}
[dir="rtl"] .pm-body .offset-8{margin-left:0;margin-right:66.666667%}
[dir="rtl"] .pm-body .offset-9{margin-left:0;margin-right:75%}
[dir="rtl"] .pm-body .offset-10{margin-left:0;margin-right:83.333333%}
[dir="rtl"] .pm-body .offset-11{margin-left:0;margin-right:91.666667%}
[dir="rtl"] .pm-body .dropdown-menu-right{right:auto;left:0}
[dir="rtl"] .pm-body .dropdown-menu-left{left:auto;right:0}
@media (min-width:576px){
[dir="rtl"] .pm-body .text-sm-left{text-align:right!important}
[dir="rtl"] .pm-body .text-sm-right{text-align:left!important}
[dir="rtl"] .pm-body .float-sm-left{float:right!important}
[dir="rtl"] .pm-body .float-sm-right{float:left!important}
[dir="rtl"] .pm-body .ml-sm-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .mr-sm-0{margin-right:0!important;margin-left:0!important}
[dir="rtl"] .pm-body .pl-sm-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .pr-sm-0{padding-right:0!important;padding-left:0!important}
[dir="rtl"] .pm-body .ml-sm-1{margin-left:0!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .mr-sm-1{margin-right:0!important;margin-left:.25rem!important}
[dir="rtl"] .pm-body .pl-sm-1{padding-left:0!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .pr-sm-1{padding-right:0!important;padding-left:.25rem!important}
[dir="rtl"] .pm-body .ml-sm-n1{margin-left:0!important;margin-right:-.25rem!important}
[dir="rtl"] .pm-body .mr-sm-n1{margin-right:0!important;margin-left:-.25rem!important}
[dir="rtl"] .pm-body .ml-sm-2{margin-left:0!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .mr-sm-2{margin-right:0!important;margin-left:.5rem!important}
[dir="rtl"] .pm-body .pl-sm-2{padding-left:0!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .pr-sm-2{padding-right:0!important;padding-left:.5rem!important}
[dir="rtl"] .pm-body .ml-sm-n2{margin-left:0!important;margin-right:-.5rem!important}
[dir="rtl"] .pm-body .mr-sm-n2{margin-right:0!important;margin-left:-.5rem!important}
[dir="rtl"] .pm-body .ml-sm-3{margin-left:0!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .mr-sm-3{margin-right:0!important;margin-left:1rem!important}
[dir="rtl"] .pm-body .pl-sm-3{padding-left:0!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .pr-sm-3{padding-right:0!important;padding-left:1rem!important}
[dir="rtl"] .pm-body .ml-sm-n3{margin-left:0!important;margin-right:-1rem!important}
[dir="rtl"] .pm-body .mr-sm-n3{margin-right:0!important;margin-left:-1rem!important}
[dir="rtl"] .pm-body .ml-sm-4{margin-left:0!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .mr-sm-4{margin-right:0!important;margin-left:1.5rem!important}
[dir="rtl"] .pm-body .pl-sm-4{padding-left:0!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .pr-sm-4{padding-right:0!important;padding-left:1.5rem!important}
[dir="rtl"] .pm-body .ml-sm-n4{margin-left:0!important;margin-right:-1.5rem!important}
[dir="rtl"] .pm-body .mr-sm-n4{margin-right:0!important;margin-left:-1.5rem!important}
[dir="rtl"] .pm-body .ml-sm-5{margin-left:0!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .mr-sm-5{margin-right:0!important;margin-left:3rem!important}
[dir="rtl"] .pm-body .pl-sm-5{padding-left:0!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .pr-sm-5{padding-right:0!important;padding-left:3rem!important}
[dir="rtl"] .pm-body .ml-sm-n5{margin-left:0!important;margin-right:-3rem!important}
[dir="rtl"] .pm-body .mr-sm-n5{margin-right:0!important;margin-left:-3rem!important}
[dir="rtl"] .pm-body .mx-sm-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .px-sm-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .mx-sm-1{margin-left:.25rem!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .px-sm-1{padding-left:.25rem!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .mx-sm-2{margin-left:.5rem!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .px-sm-2{padding-left:.5rem!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .mx-sm-3{margin-left:1rem!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .px-sm-3{padding-left:1rem!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .mx-sm-4{margin-left:1.5rem!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .px-sm-4{padding-left:1.5rem!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .mx-sm-5{margin-left:3rem!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .px-sm-5{padding-left:3rem!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .ml-sm-auto{margin-left:0!important;margin-right:auto!important}
[dir="rtl"] .pm-body .mr-sm-auto{margin-right:0!important;margin-left:auto!important}
[dir="rtl"] .pm-body .mx-sm-auto{margin-left:auto!important;margin-right:auto!important}
[dir="rtl"] .pm-body .offset-sm-0{margin-left:0;margin-right:0}
[dir="rtl"] .pm-body .offset-sm-1{margin-left:0;margin-right:8.333333%}
[dir="rtl"] .pm-body .offset-sm-2{margin-left:0;margin-right:16.666667%}
[dir="rtl"] .pm-body .offset-sm-3{margin-left:0;margin-right:25%}
[dir="rtl"] .pm-body .offset-sm-4{margin-left:0;margin-right:33.333333%}
[dir="rtl"] .pm-body .offset-sm-5{margin-left:0;margin-right:41.666667%}
[dir="rtl"] .pm-body .offset-sm-6{margin-left:0;margin-right:50%}
[dir="rtl"] .pm-body .offset-sm-7{margin-left:0;margin-right:58.333333%}
[dir="rtl"] .pm-body .offset-sm-8{margin-left:0;margin-right:66.666667%}
[dir="rtl"] .pm-body .offset-sm-9{margin-left:0;margin-right:75%}
[dir="rtl"] .pm-body .offset-sm-10{margin-left:0;margin-right:83.333333%}
[dir="rtl"] .pm-body .offset-sm-11{margin-left:0;margin-right:91.666667%}
[dir="rtl"] .pm-body .dropdown-menu-sm-right{right:auto;left:0}
[dir="rtl"] .pm-body .dropdown-menu-sm-left{left:auto;right:0}
}
@media (min-width:768px){
[dir="rtl"] .pm-body .text-md-left{text-align:right!important}
[dir="rtl"] .pm-body .text-md-right{text-align:left!important}
[dir="rtl"] .pm-body .float-md-left{float:right!important}
[dir="rtl"] .pm-body .float-md-right{float:left!important}
[dir="rtl"] .pm-body .ml-md-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .mr-md-0{margin-right:0!important;margin-left:0!important}
[dir="rtl"] .pm-body .pl-md-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .pr-md-0{padding-right:0!important;padding-left:0!important}
[dir="rtl"] .pm-body .ml-md-1{margin-left:0!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .mr-md-1{margin-right:0!important;margin-left:.25rem!important}
[dir="rtl"] .pm-body .pl-md-1{padding-left:0!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .pr-md-1{padding-right:0!important;padding-left:.25rem!important}
[dir="rtl"] .pm-body .ml-md-n1{margin-left:0!important;margin-right:-.25rem!important}
[dir="rtl"] .pm-body .mr-md-n1{margin-right:0!important;margin-left:-.25rem!important}
[dir="rtl"] .pm-body .ml-md-2{margin-left:0!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .mr-md-2{margin-right:0!important;margin-left:.5rem!important}
[dir="rtl"] .pm-body .pl-md-2{padding-left:0!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .pr-md-2{padding-right:0!important;padding-left:.5rem!important}
[dir="rtl"] .pm-body .ml-md-n2{margin-left:0!important;margin-right:-.5rem!important}
[dir="rtl"] .pm-body .mr-md-n2{margin-right:0!important;margin-left:-.5rem!important}
[dir="rtl"] .pm-body .ml-md-3{margin-left:0!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .mr-md-3{margin-right:0!important;margin-left:1rem!important}
[dir="rtl"] .pm-body .pl-md-3{padding-left:0!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .pr-md-3{padding-right:0!important;padding-left:1rem!important}
[dir="rtl"] .pm-body .ml-md-n3{margin-left:0!important;margin-right:-1rem!important}
[dir="rtl"] .pm-body .mr-md-n3{margin-right:0!important;margin-left:-1rem!important}
[dir="rtl"] .pm-body .ml-md-4{margin-left:0!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .mr-md-4{margin-right:0!important;margin-left:1.5rem!important}
[dir="rtl"] .pm-body .pl-md-4{padding-left:0!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .pr-md-4{padding-right:0!important;padding-left:1.5rem!important}
[dir="rtl"] .pm-body .ml-md-n4{margin-left:0!important;margin-right:-1.5rem!important}
[dir="rtl"] .pm-body .mr-md-n4{margin-right:0!important;margin-left:-1.5rem!important}
[dir="rtl"] .pm-body .ml-md-5{margin-left:0!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .mr-md-5{margin-right:0!important;margin-left:3rem!important}
[dir="rtl"] .pm-body .pl-md-5{padding-left:0!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .pr-md-5{padding-right:0!important;padding-left:3rem!important}
[dir="rtl"] .pm-body .ml-md-n5{margin-left:0!important;margin-right:-3rem!important}
[dir="rtl"] .pm-body .mr-md-n5{margin-right:0!important;margin-left:-3rem!important}
[dir="rtl"] .pm-body .mx-md-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .px-md-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .mx-md-1{margin-left:.25rem!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .px-md-1{padding-left:.25rem!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .mx-md-2{margin-left:.5rem!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .px-md-2{padding-left:.5rem!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .mx-md-3{margin-left:1rem!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .px-md-3{padding-left:1rem!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .mx-md-4{margin-left:1.5rem!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .px-md-4{padding-left:1.5rem!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .mx-md-5{margin-left:3rem!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .px-md-5{padding-left:3rem!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .ml-md-auto{margin-left:0!important;margin-right:auto!important}
[dir="rtl"] .pm-body .mr-md-auto{margin-right:0!important;margin-left:auto!important}
[dir="rtl"] .pm-body .mx-md-auto{margin-left:auto!important;margin-right:auto!important}
[dir="rtl"] .pm-body .offset-md-0{margin-left:0;margin-right:0}
[dir="rtl"] .pm-body .offset-md-1{margin-left:0;margin-right:8.333333%}
[dir="rtl"] .pm-body .offset-md-2{margin-left:0;margin-right:16.666667%}
[dir="rtl"] .pm-body .offset-md-3{margin-left:0;margin-right:25%}
[dir="rtl"] .pm-body .offset-md-4{margin-left:0;margin-right:33.333333%}
[dir="rtl"] .pm-body .offset-md-5{margin-left:0;margin-right:41.666667%}
[dir="rtl"] .pm-body .offset-md-6{margin-left:0;margin-right:50%}
[dir="rtl"] .pm-body .offset-md-7{margin-left:0;margin-right:58.333333%}
[dir="rtl"] .pm-body .offset-md-8{margin-left:0;margin-right:66.666667%}
[dir="rtl"] .pm-body .offset-md-9{margin-left:0;margin-right:75%}
[dir="rtl"] .pm-body .offset-md-10{margin-left:0;margin-right:83.333333%}
[dir="rtl"] .pm-body .offset-md-11{margin-left:0;margin-right:91.666667%}
[dir="rtl"] .pm-body .dropdown-menu-md-right{right:auto;left:0}
[dir="rtl"] .pm-body .dropdown-menu-md-left{left:auto;right:0}
}
@media (min-width:992px){
[dir="rtl"] .pm-body .text-lg-left{text-align:right!important}
[dir="rtl"] .pm-body .text-lg-right{text-align:left!important}
[dir="rtl"] .pm-body .float-lg-left{float:right!important}
[dir="rtl"] .pm-body .float-lg-right{float:left!important}
[dir="rtl"] .pm-body .ml-lg-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .mr-lg-0{margin-right:0!important;margin-left:0!important}
[dir="rtl"] .pm-body .pl-lg-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .pr-lg-0{padding-right:0!important;padding-left:0!important}
[dir="rtl"] .pm-body .ml-lg-1{margin-left:0!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .mr-lg-1{margin-right:0!important;margin-left:.25rem!important}
[dir="rtl"] .pm-body .pl-lg-1{padding-left:0!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .pr-lg-1{padding-right:0!important;padding-left:.25rem!important}
[dir="rtl"] .pm-body .ml-lg-n1{margin-left:0!important;margin-right:-.25rem!important}
[dir="rtl"] .pm-body .mr-lg-n1{margin-right:0!important;margin-left:-.25rem!important}
[dir="rtl"] .pm-body .ml-lg-2{margin-left:0!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .mr-lg-2{margin-right:0!important;margin-left:.5rem!important}
[dir="rtl"] .pm-body .pl-lg-2{padding-left:0!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .pr-lg-2{padding-right:0!important;padding-left:.5rem!important}
[dir="rtl"] .pm-body .ml-lg-n2{margin-left:0!important;margin-right:-.5rem!important}
[dir="rtl"] .pm-body .mr-lg-n2{margin-right:0!important;margin-left:-.5rem!important}
[dir="rtl"] .pm-body .ml-lg-3{margin-left:0!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .mr-lg-3{margin-right:0!important;margin-left:1rem!important}
[dir="rtl"] .pm-body .pl-lg-3{padding-left:0!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .pr-lg-3{padding-right:0!important;padding-left:1rem!important}
[dir="rtl"] .pm-body .ml-lg-n3{margin-left:0!important;margin-right:-1rem!important}
[dir="rtl"] .pm-body .mr-lg-n3{margin-right:0!important;margin-left:-1rem!important}
[dir="rtl"] .pm-body .ml-lg-4{margin-left:0!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .mr-lg-4{margin-right:0!important;margin-left:1.5rem!important}
[dir="rtl"] .pm-body .pl-lg-4{padding-left:0!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .pr-lg-4{padding-right:0!important;padding-left:1.5rem!important}
[dir="rtl"] .pm-body .ml-lg-n4{margin-left:0!important;margin-right:-1.5rem!important}
[dir="rtl"] .pm-body .mr-lg-n4{margin-right:0!important;margin-left:-1.5rem!important}
[dir="rtl"] .pm-body .ml-lg-5{margin-left:0!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .mr-lg-5{margin-right:0!important;margin-left:3rem!important}
[dir="rtl"] .pm-body .pl-lg-5{padding-left:0!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .pr-lg-5{padding-right:0!important;padding-left:3rem!important}
[dir="rtl"] .pm-body .ml-lg-n5{margin-left:0!important;margin-right:-3rem!important}
[dir="rtl"] .pm-body .mr-lg-n5{margin-right:0!important;margin-left:-3rem!important}
[dir="rtl"] .pm-body .mx-lg-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .px-lg-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .mx-lg-1{margin-left:.25rem!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .px-lg-1{padding-left:.25rem!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .mx-lg-2{margin-left:.5rem!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .px-lg-2{padding-left:.5rem!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .mx-lg-3{margin-left:1rem!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .px-lg-3{padding-left:1rem!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .mx-lg-4{margin-left:1.5rem!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .px-lg-4{padding-left:1.5rem!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .mx-lg-5{margin-left:3rem!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .px-lg-5{padding-left:3rem!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .ml-lg-auto{margin-left:0!important;margin-right:auto!important}
[dir="rtl"] .pm-body .mr-lg-auto{margin-right:0!important;margin-left:auto!important}
[dir="rtl"] .pm-body .mx-lg-auto{margin-left:auto!important;margin-right:auto!important}
[dir="rtl"] .pm-body .offset-lg-0{margin-left:0;margin-right:0}
[dir="rtl"] .pm-body .offset-lg-1{margin-left:0;margin-right:8.333333%}
[dir="rtl"] .pm-body .offset-lg-2{margin-left:0;margin-right:16.666667%}
[dir="rtl"] .pm-body .offset-lg-3{margin-left:0;margin-right:25%}
[dir="rtl"] .pm-body .offset-lg-4{margin-left:0;margin-right:33.333333%}
[dir="rtl"] .pm-body .offset-lg-5{margin-left:0;margin-right:41.666667%}
[dir="rtl"] .pm-body .offset-lg-6{margin-left:0;margin-right:50%}
[dir="rtl"] .pm-body .offset-lg-7{margin-left:0;margin-right:58.333333%}
[dir="rtl"] .pm-body .offset-lg-8{margin-left:0;margin-right:66.666667%}
[dir="rtl"] .pm-body .offset-lg-9{margin-left:0;margin-right:75%}
[dir="rtl"] .pm-body .offset-lg-10{margin-left:0;margin-right:83.333333%}
[dir="rtl"] .pm-body .offset-lg-11{margin-left:0;margin-right:91.666667%}
[dir="rtl"] .pm-body .dropdown-menu-lg-right{right:auto;left:0}
[dir="rtl"] .pm-body .dropdown-menu-lg-left{left:auto;right:0}
}
@media (min-width:1200px){
[dir="rtl"] .pm-body .text-xl-left{text-align:right!important}
[dir="rtl"] .pm-body .text-xl-right{text-align:left!important}
[dir="rtl"] .pm-body .float-xl-left{float:right!important}
[dir="rtl"] .pm-body .float-xl-right{float:left!important}
[dir="rtl"] .pm-body .ml-xl-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .mr-xl-0{margin-right:0!important;margin-left:0!important}
[dir="rtl"] .pm-body .pl-xl-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .pr-xl-0{padding-right:0!important;padding-left:0!important}
[dir="rtl"] .pm-body .ml-xl-1{margin-left:0!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .mr-xl-1{margin-right:0!important;margin-left:.25rem!important}
[dir="rtl"] .pm-body .pl-xl-1{padding-left:0!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .pr-xl-1{padding-right:0!important;padding-left:.25rem!important}
[dir="rtl"] .pm-body .ml-xl-n1{margin-left:0!important;margin-right:-.25rem!important}
[dir="rtl"] .pm-body .mr-xl-n1{margin-right:0!important;margin-left:-.25rem!important}
[dir="rtl"] .pm-body .ml-xl-2{margin-left:0!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .mr-xl-2{margin-right:0!important;margin-left:.5rem!important}
[dir="rtl"] .pm-body .pl-xl-2{padding-left:0!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .pr-xl-2{padding-right:0!important;padding-left:.5rem!important}
[dir="rtl"] .pm-body .ml-xl-n2{margin-left:0!important;margin-right:-.5rem!important}
[dir="rtl"] .pm-body .mr-xl-n2{margin-right:0!important;margin-left:-.5rem!important}
[dir="rtl"] .pm-body .ml-xl-3{margin-left:0!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .mr-xl-3{margin-right:0!important;margin-left:1rem!important}
[dir="rtl"] .pm-body .pl-xl-3{padding-left:0!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .pr-xl-3{padding-right:0!important;padding-left:1rem!important}
[dir="rtl"] .pm-body .ml-xl-n3{margin-left:0!important;margin-right:-1rem!important}
[dir="rtl"] .pm-body .mr-xl-n3{margin-right:0!important;margin-left:-1rem!important}
[dir="rtl"] .pm-body .ml-xl-4{margin-left:0!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .mr-xl-4{margin-right:0!important;margin-left:1.5rem!important}
[dir="rtl"] .pm-body .pl-xl-4{padding-left:0!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .pr-xl-4{padding-right:0!important;padding-left:1.5rem!important}
[dir="rtl"] .pm-body .ml-xl-n4{margin-left:0!important;margin-right:-1.5rem!important}
[dir="rtl"] .pm-body .mr-xl-n4{margin-right:0!important;margin-left:-1.5rem!important}
[dir="rtl"] .pm-body .ml-xl-5{margin-left:0!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .mr-xl-5{margin-right:0!important;margin-left:3rem!important}
[dir="rtl"] .pm-body .pl-xl-5{padding-left:0!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .pr-xl-5{padding-right:0!important;padding-left:3rem!important}
[dir="rtl"] .pm-body .ml-xl-n5{margin-left:0!important;margin-right:-3rem!important}
[dir="rtl"] .pm-body .mr-xl-n5{margin-right:0!important;margin-left:-3rem!important}
[dir="rtl"] .pm-body .mx-xl-0{margin-left:0!important;margin-right:0!important}
[dir="rtl"] .pm-body .px-xl-0{padding-left:0!important;padding-right:0!important}
[dir="rtl"] .pm-body .mx-xl-1{margin-left:.25rem!important;margin-right:.25rem!important}
[dir="rtl"] .pm-body .px-xl-1{padding-left:.25rem!important;padding-right:.25rem!important}
[dir="rtl"] .pm-body .mx-xl-2{margin-left:.5rem!important;margin-right:.5rem!important}
[dir="rtl"] .pm-body .px-xl-2{padding-left:.5rem!important;padding-right:.5rem!important}
[dir="rtl"] .pm-body .mx-xl-3{margin-left:1rem!important;margin-right:1rem!important}
[dir="rtl"] .pm-body .px-xl-3{padding-left:1rem!important;padding-right:1rem!important}
[dir="rtl"] .pm-body .mx-xl-4{margin-left:1.5rem!important;margin-right:1.5rem!important}
[dir="rtl"] .pm-body .px-xl-4{padding-left:1.5rem!important;padding-right:1.5rem!important}
[dir="rtl"] .pm-body .mx-xl-5{margin-left:3rem!important;margin-right:3rem!important}
[dir="rtl"] .pm-body .px-xl-5{padding-left:3rem!important;padding-right:3rem!important}
[dir="rtl"] .pm-body .ml-xl-auto{margin-left:0!important;margin-right:auto!important}
[dir="rtl"] .pm-body .mr-xl-auto{margin-right:0!important;margin-left:auto!important}
[dir="rtl"] .pm-body .mx-xl-auto{margin-left:auto!important;margin-right:auto!important}
[dir="rtl"] .pm-body .offset-xl-0{margin-left:0;margin-right:0}
[dir="rtl"] .pm-body .offset-xl-1{margin-left:0;margin-right:8.333333%}
[dir="rtl"] .pm-body .offset-xl-2{margin-left:0;margin-right:16.666667%}
[dir="rtl"] .pm-body .offset-xl-3{margin-left:0;margin-right:25%}
[dir="rtl"] .pm-body .offset-xl-4{margin-left:0;margin-right:33.333333%}
[dir="rtl"] .pm-body .offset-xl-5{margin-left:0;margin-right:41.666667%}
[dir="rtl"] .pm-body .offset-xl-6{margin-left:0;margin-right:50%}
[dir="rtl"] .pm-body .offset-xl-7{margin-left:0;margin-right:58.333333%}
[dir="rtl"] .pm-body .offset-xl-8{margin-left:0;margin-right:66.666667%}
[dir="rtl"] .pm-body .offset-xl-9{margin-left:0;margin-right:75%}
[dir="rtl"] .pm-body .offset-xl-10{margin-left:0;margin-right:83.333333%}
[dir="rtl"] .pm-body .offset-xl-11{margin-left:0;margin-right:91.666667%}
[dir="rtl"] .pm-body .dropdown-menu-xl-right{right:auto;left:0}
[dir="rtl"] .pm-body .dropdown-menu-xl-left{left:auto;right:0}
}
